0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

芯片项目之BUSMATRIX总线矩阵生成工具应用

sanyue7758 来源:处芯积律 2024-03-21 10:08 次阅读

在实际的芯片项目中,AMBA中AXI/AHB/APB BUSMATRIX总线矩阵被普遍应用。对于这些BUSMATRIX如果 自己手动写,会花费很多的工作量。通常我们对这些BUSMATRIX是通过工具进行配置和生成。

下面介绍一套BUSMATRIX总线矩阵生成工具 gen_abma.

gen_amba是一组用于生成AMBA总线Verilog-HDL的程序,其中包括AMBA AXI、AMBA AHB和AMBA APB。

gen_amba_axi:用于多主机和多从机的AMBA AXI总线生成器,支持AMBA AXI4和AXI3。

gen_amba_ahb:用于多主机和多从机的AMBA AHB总线生成器。

gen_amba_apb:用于生成AMBA AXI或AHB的AMBA APB总线桥接器生成器。

gen_amba_axi

它生成AMBA AXI switch

$ ./gen_amba_axi -h
[Usage] ./gen_amba_axi [options]
-M,--master=num   num of masters (default: 2)
-S,--slave=num    num of slaves  (default: 2)
-D,--module=str   module name (default: "amba_axi_mXsY")
-P,--prefix=str   prefix of module (default: none)
-O,--output=file  output file name (stdout if not given)
-3,--axi3         force to use AXI3 (AIX4 by default, if not given)
-g,--verbose=num  verbose level  (default: 0)
-v,--version      print version
-l,--license      print license message

-h print help message

'--prefix'选项用于在内部模块中使用前缀,这样可以通过防止多个定义模块的警告在同一设计中使用多个AXI总线。

'--axi3'选项强制生成AMBA AXI3,该选项使用'AxLENG[3:0]'、'AxLOCK[1:0]'和'WID[..]',而不使用'--axi3'选项时,'gen_amba_axi'生成AMBA AXI4。

df4f96ee-d576-11ee-a297-92fbcf53809c.png

gen_amba_ahb

这个产生AMBA AHB bus.

$ ./gen_amba_ahb -h
[Usage] ./gen_amba_ahb [options]
-T,--lite         AMBA AHB-lite
-M,--master=num   num of masters (default: 2)
-S,--slave=num    num of slaves  (default: 2)
-D,--module=str   module name (default: "amba_ahb_mXsY")
-P,--prefix=str   prefix of module
-O,--output=file  output file name (stdout if not given)
-g,--verbose=num  verbose level  (default: 0)
-v,--version      print version
-l,--license      print license message
-h                print help message

note: amba_ahb_lite_s? for -M 1

'--prefix'选项用于在内部模块中使用前缀,这使得可以在同一设计中使用多个AHB总线,通过防止多个定义模块的警告。

df6a2f4a-d576-11ee-a297-92fbcf53809c.png

gen_amba_apb

这个产生 AMBA AHB2APB或者AXI2APB

$ ./gen_amba_apb -h
[Usage] ./gen_amba_ahb [options]
-X|H,--axi|ahb    make "axi_to_apb" or "ahb_to_apb" (axi if not given)
-S,--slave=num    num of APB ports  (default: 2)
-D,--module=str   module name (default: "axi_to_apb_sX" or "ahb_to_apb_sX")
-P,--prefix=str   prefix of sub-module name (none if not given)
-O,--output=file  output file name (stdout if not given)
-g,--verbose=num  verbose level  (default: 0)
-v,--version      print version
-l,--license      print license message
-h                print help message

'--prefix'选项使用前缀为内部模块命名,从而可以在同一设计中使用多个APB总线,并防止多个定义模块的警告。

df7a9290-d576-11ee-a297-92fbcf53809c.png

尝试下效果

AXI BUSMATRIX 接口信息

df834cc8-d576-11ee-a297-92fbcf53809c.png

AXI内部部分状态机

dfa4bd2c-d576-11ee-a297-92fbcf53809c.png

AHB2APB接口信息

dfb588c8-d576-11ee-a297-92fbcf53809c.png

AHB2APB内部部分状态机

dfc470a4-d576-11ee-a297-92fbcf53809c.png

审核编辑:黄飞

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 总线
    +关注

    关注

    10

    文章

    2871

    浏览量

    88010
  • 状态机
    +关注

    关注

    2

    文章

    492

    浏览量

    27493
  • 桥接器
    +关注

    关注

    0

    文章

    77

    浏览量

    45351

原文标题:干货!介绍一套AMBA BUSMATRIX总线矩阵生成脚本工具!

文章出处:【微信号:处芯积律,微信公众号:处芯积律】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    用MCUXpresso调试其它工具生成项目

    用MCUXpresso调试其它工具生成项目
    的头像 发表于 10-31 16:42 510次阅读
    用MCUXpresso调试其它<b class='flag-5'>工具</b>链<b class='flag-5'>生成</b>的<b class='flag-5'>项目</b>

    什么是生成矩阵

    什么是生成矩阵生成矩阵的行向量{gi}  是线性无关的,是码字集合这个k 维线性子空间的基底。由此可见,任何一个码字都是行向量的线性组合。对于系统码来说,其
    发表于 05-30 16:05

    如何在这种总线矩阵键盘中确定总线的地址?

    请教!这种总线矩阵键盘如何确定总线地址?感谢!
    发表于 09-09 00:02

    AHB总线矩阵构成

    主系统由 32 位多层 AHB 总线矩阵构成,可实现以下部分的互连:● 八条主控总线:— Cortex™-M4F 内核 I 总线、D 总线
    发表于 08-05 07:51

    总线矩阵是如何对系统总线和DMA进行仲裁的

    STM32的中断源有哪些呢?总线矩阵是如何对系统总线和DMA进行仲裁的?
    发表于 11-08 08:45

    怎样使用CMSDK去生成总线矩阵

    LTS系统环境下展开介绍,可以是虚拟机,可以是WSL。第一步在终端中执行或者直接在cmsdk_busmatrix/文件夹下打开终端第二步进入xml文件夹,根据使用CMSDK搭建CortexM3SoC文章中
    发表于 07-06 11:14

    PrimeCell高性能矩阵(PL301)技术概述

    (PL301)技术参考手册。 IP的这种组合提供了对其他AMBA接口协议的支持,包括AHB-Lite和APB。 使用基于AMBA Designer图形用户界面(GUI)的配置工具来设计您的母线矩阵。 然后,您可以在以下位置生成
    发表于 08-22 06:22

    基于FF现场总线实现水箱系统动态矩阵控制

    针对FF现场总线中监控软件实现DMC算法的困难,提出利用Matlab7.0 OPC工具包实现与OPC服务器间通讯并实现DMC控制的方案,充分发挥了矩阵计算语言简洁、高效的优势;动态矩阵
    发表于 06-30 17:24 13次下载

    状态机代码生成工具

    状态机代码生成工具状态机代码生成工具状态机代码生成工具状态机代码
    发表于 11-19 15:12 9次下载

    LCD图形生成工具

    LCD图形生成工具
    发表于 12-01 16:44 13次下载

    Matlab系列数组(矩阵)的生成资料下载

    电子发烧友网为你提供Matlab系列数组(矩阵)的生成资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料、参考设计、用户指南、解决方案等资料,希望可以帮助到广大的电子工程师们。
    发表于 04-29 08:53 14次下载
    Matlab系列<b class='flag-5'>之</b>数组(<b class='flag-5'>矩阵</b>)的<b class='flag-5'>生成</b>资料下载

    芯片AES加密密钥生成工具

    芯片AES加密密钥生成工具前言:嵌入式单片机开发,为了防止别人将芯片内的代码读取出来通过反编译手段拿到源码,常用的手段是对芯片和烧录文件进行
    发表于 12-09 14:36 6次下载
    <b class='flag-5'>芯片</b>AES加密密钥<b class='flag-5'>生成</b><b class='flag-5'>工具</b>

    单片机编辑库四矩阵按键

    单片机编辑库一延时与led灯单片机编辑库二按键单片机编辑库三蜂鸣器单片机编辑库四矩阵按键之前为大家介绍了独立按键的原理和使用方法,这
    发表于 12-31 19:37 12次下载
    单片机编辑库四<b class='flag-5'>之</b><b class='flag-5'>矩阵</b>按键

    PyTorch教程21.3矩阵分解

    电子发烧友网站提供《PyTorch教程21.3矩阵分解.pdf》资料免费下载
    发表于 06-06 09:33 0次下载
    PyTorch教程21.3<b class='flag-5'>之</b><b class='flag-5'>矩阵</b>分解

    虚拟串口生成工具

    虚拟串口生成工具
    发表于 04-28 13:56 5次下载