在实际的芯片项目中,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。
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总线,通过防止多个定义模块的警告。
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总线,并防止多个定义模块的警告。
尝试下效果
AXI内部部分状态机
AHB2APB接口信息
AHB2APB内部部分状态机
审核编辑:黄飞
-
总线
+关注
关注
10文章
2878浏览量
88053 -
状态机
+关注
关注
2文章
492浏览量
27529 -
桥接器
+关注
关注
0文章
77浏览量
45356
原文标题:干货!介绍一套AMBA BUSMATRIX总线矩阵生成脚本工具!
文章出处:【微信号:处芯积律,微信公众号:处芯积律】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论