for-loop - 是否可以在结构 Verilog 中重复门?
问题描述
我将在 Verilog 中级联几个缓冲区。我的示例如下,我定义了 16 个缓冲区,它们在结构定义中级联:
BUFX12 BUF01(dummy_wire[1],N62878);
BUFX12 BUF02(dummy_wire[2],dummy_wire[1]);
BUFX12 BUF03(dummy_wire[3],dummy_wire[2]);
BUFX12 BUF04(dummy_wire[4],dummy_wire[3]);
BUFX12 BUF05(dummy_wire[5],dummy_wire[4]);
BUFX12 BUF06(dummy_wire[6],dummy_wire[5]);
BUFX12 BUF07(dummy_wire[7],dummy_wire[6]);
BUFX12 BUF08(dummy_wire[8],dummy_wire[7]);
BUFX12 BUF09(dummy_wire[9],dummy_wire[8]);
BUFX12 BUF10(dummy_wire[10],dummy_wire[9]);
BUFX12 BUF11(dummy_wire[11],dummy_wire[10]);
BUFX12 BUF12(dummy_wire[12],dummy_wire[11]);
BUFX12 BUF13(dummy_wire[13],dummy_wire[12]);
BUFX12 BUF14(dummy_wire[14],dummy_wire[13]);
BUFX12 BUF15(dummy_wire[15],dummy_wire[14]);
由于我要在我的测试设计中更改缓冲区的数量,我正在寻找诸如 for-loop 之类的语法来以自动格式实现以下结构,但我不知道正确的结构。我想知道它是否可能以及正确的语法是什么。此外,最好是实现具有实例名称。
解决方案
使用实例数组:
wire [15:1] other = {dummy_wire[14:1], N62878};
BUFX12 BUF [15:1] (dummy_wire, other);
推荐阅读
- python-3.x - 根据熊猫数据框中的选定列条件查找重复的行
- jquery - Jquery - resize() 上的单击事件无法正常工作
- javascript - 如何使用 Node Streams 和 Promise 避免内存泄漏
- dataset - 如何在 colab 中加载巨大的数据集以转换为 spacy JSON?
- c++ - 找不到重复案例时,“案例标签值已出现在此开关中”
- php - 通过php连接到sql server时未建立连接
- javascript - 使用 PrimeNG DynamicDialog 的 mouseenter mouseleave 问题
- qt - 在 Designer / Creator 中管理 QWidgets 的操作列表?
- javascript - 更改显示属性时,有序列表向左移动
- flutter - Flutter:无法使用 GradleUserHomeServices.createResourceSnapshotterCacheService() 创建 ResourceSnapshotterCacheService 类型的服务