最近浏览文章发现了一个非常棒的开源AMBA代码生成工具:GitHub - adki/gen_amba_2021: AMBA bus generator including AXI4, AXI3, AHB, and APB
此代码生成工具不仅可以轻松生成APB、AHB、AXI的master2slave的verilog代码,并且可以定义master和slave的数量,还能生成AXI-to-APB bridge 代码、AHB-to-APB bridge 代码、AXI-to-APB bridge 代码。大家可以通过GitHub网址下载,也可以关注公众号“IC小鸽”回复关键字“gen_amba”获取下载链接。
1.解压文件夹
将文件上传到linux系统文件中,使用unzip gen_amba_2021-main.zip文件得到文件夹gen_amba_2021-main,进入文件gen_amba_2021-main后,可以看到存在如下文件夹
gen_amba_axi:生效axi相关代码的文件
gen_amba_ahb:生效ahb相关代码的文件
gen_amba_apb:生效apb相关代码的文件
2.进入文件夹gen_amba_axi,执行命令make all生效相关脚本文件
3.通过./gen_amba_axi -h获取命令
从下图可以看到
-M,表示master口数量
-S,表示slave口数量
-D,表示指定模块名称
-O,表示输出文件名称
-3表示AXI3版本,不指定时默认AXI4
4.使用gen_amba_axi产生verilog代码
使用命令./gen_amba_axi -M 2 -S 4 -D amba_axi_m2s4 -O amba_axi_m2s4.v产生verilog代码文件amba_axi_m2s4.v,其中模块名为amba_axi_m2s4,代码实现了2个master端口、4个slave端口,符合axi4总线协议。
5.工具详细说明
在文件夹gen_amba_2021-main的doc目录下gen_amba_20210710.pdf详细描述了工具如何使用,建议阅读。
作者: IC小鸽
文章来源:IC小鸽
推荐阅读
- PCIe学习(一)
- PCIe 6.0为什么需要14-bit tag
- 地表最强gVim编写Verilog插件
- I在SOC验证环境中,C代码是怎么被执行起来的?
- SystemVerilog Interface Class的妙用
更多IC设计干货请关注IC设计专栏。欢迎添加极术小姐姐微信(id:aijishu20)加入技术交流群,请备注研究方向。