Verilog例化自动连线实测可用版,以DW DMA集成为例介绍vim emacs 的配置方法

本文介绍了如何在Vim和Emacs中设置Verilog自动例化。通过下载和修改相关文件,如verilog_emacsauto.vim和verilog-mode,设置快捷键TA和TB,实现自动例化和清除例化结果的功能。
摘要由CSDN通过智能技术生成

vim、emacs进行verilog 自动例化的配置方法及步骤,具体建该贴的后面部分

自动连线之后的代码如下:

在这里插入图片描述

在这里插入图片描述

例化前的模版文件:

module dma_top(
          /*AUTOARG*/);

  /*AUTOINPUT*/

  /*AUTOOUTPUT*/

  /*AUTOWIRE*/

  /*DW_axi_dmac AUTO_TEMPLATE u_DW_axi_dmac (
   .dmac_core_clock(aclk),
   .dmac_core_resetn(aresetn),
   .hsel(hsel_s1),
   .hready(hready_resp_s1),
   .hrdata(hrdata_s1[]),
   .hresp(hresp_s1),
   .hready_resp(hready_resp_s1),
   );
   */

  DW_axi_dmac u_DW_axi_dmac_inst1( /*autoinst*/);

  /*DW_axi_x2h AUTO_TEMPLATE u_DW_axi_x2h (
   .mhclk(aclk),
   .mhresetn(aresetn),
   .aresetn(aresetn),
   .aw\(.*\) (aw_\1_s1[]),
   .ar\(.*\) (ar_\1_s1[]),
   .w\(.*\) (w_\1_s1[]),
   .r\(.*\) 
Verilog中,自动例化连线是指通过使用实例名连接不同模块的输入和输出端口,而无需手动逐一指定每个端口的连接。这种方式使得设计更加简洁和易于维护。 Verilog中的例化可以通过使用模块的实例名称来完成。假设有一个顶层模块,包含两个子模块moduleA和moduleB,我们可以通过自动例化连线将它们连接起来。 首先,我们需要实例化这两个子模块。在顶层模块中,使用以下代码将子模块实例化: module moduleA(); // 模块A的输入和输出端口声明 // ... endmodule module moduleB(); // 模块B的输入和输出端口声明 // ... endmodule module topLevelModule(); // 声明顶层模块的输入和输出端口 // 实例化模块A和模块B moduleA instA(); moduleB instB(); // 继续编写其他逻辑代码 endmodule 在实例化之后,我们可以通过使用实例名称和端口名称来连接各个模块的输入和输出端口。例如,如果模块A的输出信号与模块B的输入信号相连,可以使用以下代码将它们连接起来: moduleA instA(.outA(instB.inB)); 在这个例子中,通过使用实例名称instB和端口名称inB,将模块A的输出信号outA与模块B的输入信号inB连接在一起。 通过这种方式,我们可以方便地自动例化连线,减少了手动指定每个端口连接的工作量。这使得设计更容易理解和维护,同时也提高了代码的重用性和可扩展性。在大型项目中,自动例化连线是一个非常有用的Verilog设计技巧。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值