在线咨询 切换到宽版
eetop公众号 创芯大讲堂 创芯人才网

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜帖子
查看: 7501|回复: 10

[求助] 例化相同的模块

[复制链接]
发表于 2017-6-22 13:18:32 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
我想例化64个相同的模块,这个怎么办?可以用FOR吗?
发表于 2017-6-22 13:48:10 | 显示全部楼层
好像可以用python写个脚本,不过我也不会,坐等高手
回复 支持 反对

使用道具 举报

发表于 2017-6-22 13:54:27 | 显示全部楼层
1. 据我所示,没法用循环的。
2. 可以用C、perl等,打印出相应的verilog代码,再贴回去。
回复 支持 反对

使用道具 举报

发表于 2017-6-22 16:52:21 | 显示全部楼层
回复 2# 2740710202

使用generate(genvar,label)
#转自,http://www.cnblogs.com/fbi888/archive/2013/11/27/3445178.html

generate_loop

generate_loop
回复 支持 反对

使用道具 举报

发表于 2017-6-22 17:12:57 | 显示全部楼层
本帖最后由 harry_hust 于 2017-6-22 17:37 编辑

可以用for语句产生啊,for就是用来干这些循环的事情。
只是要注意一点的是端口信号不能增量命名,但是可以通过把信号定义成 wire [data_width-1:0] signals [63:0] 这样的形式。
忘了还有一点是模块命名,可以直接用 {string, i} 这种形式进行字符连接。
还是举个例子吧,这个我也没试过,不知道能不能综合。



   

        

                
  1. wire [data_width-1:0] data_in [63:0] ;wire [data_width-1:0] data_out [63:0] ;
  2. for(i=0; i<64, i++) begin
  3.    basemodule {“basemodule_inst”,i}
  4.       (
  5.          .din    (data_in[64*i]),
  6.          .dout  (data_out[64*i]),
  7.       );
  8. end
            

   

    复制代码
回复 支持 反对

使用道具 举报

发表于 2017-6-22 17:22:57 | 显示全部楼层
回复 1# 谁枫而飘
   

    parameter SIZE = 5;
    input [SIZE-1 : 0] sig;
    input [SIZE-1 : 0] sig_in;
    output [SIZE-1 : 0] sig_o;
    genvar i
    generate
        for (i=0;i<SIZE;i=i+1)
        begin: TAG
             module_test inst_ (.a(sig),.b(sig_in),.c(sig_o));
        end
    endgenerate
回复 支持 反对

使用道具 举报

发表于 2017-6-22 17:28:13 | 显示全部楼层
回复 6# sdlyyuxi
漏了变量
module_test inst_ (.a(sig\[i\]),.b(sig_in\[i\]),.c(sig_o\[i\]));
回复 支持 反对

使用道具 举报

发表于 2017-6-22 19:25:28 | 显示全部楼层
这种循环生成,反而会产生问题
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-6-23 08:43:42 | 显示全部楼层
刚刚去实践了下,用generate for可以综合
回复 支持 反对

使用道具 举报

发表于 2017-6-23 09:50:50 | 显示全部楼层
两种办法,generate 或者实例数组,看情况使用
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条


手机版| 小黑屋| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-8-31 13:35 , Processed in 0.022780 second(s), 5 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表