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

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
12
返回列表 发新帖
楼主: VINCENT-XIAO

[求助] verilog 模块之间数据共享问题?--拜年啦

[复制链接]
 楼主| 发表于 2015-3-7 19:14:52 | 显示全部楼层
回复 8# ALSIEJ


   Error: Can't place 98 pins with 3.3-V LVTTL I/O standard because Fitter has only 80 such free pins available for general purpose I/O placement。 像你说这样做,编译错误
发表于 2015-3-7 19:32:18 | 显示全部楼层
你也没有说清楚display_data0在bottom里到底有什么用
发表于 2015-3-7 19:44:44 | 显示全部楼层
的确是好论坛,要常来逛!!!!的确是好论坛,要常来逛
发表于 2015-3-7 19:45:58 | 显示全部楼层
的确是好论坛,要常来逛!!!!的确是好论坛,要常来逛
发表于 2015-3-7 21:33:31 | 显示全部楼层
天啦。。。。看来你真得好好学学verilog的模块化设计了。。。
给你个模块与模块间传递变量的例子,有3个模块,第1个是大顶层top,它的输入和输出才是引脚,第2个是加法器m1,第3个是判决器m2,m1需要把加法结果送给m2进行判决,然后输出一个比较结果。。看下面的代码:
顶层top:
module top
(
input [7:0] da1_i,
input [7:0] da2_i,
input [8:0] cmp,
output  res
);

wire [8:0] da_o;


m1 u_m1(
.da1_i(da1_i),
.da2_i(da2_i),
.da_o(da_o),
);



m2 u_m2(
.dat_o(dat_o),
.cmp(cmp),
.res(res)
);

endmodule

加法器模块m1 :


module m1(
input [7:0] da1_i,
input [7:0] da2_i,
output wire [8:0] dat_o
);

assign dat_o = {1'b0,da1_i} + {1'b0,da2_i};


endmodule


比较器模块m2 :


module m2(
input [8:0] dat_o,
input [8:0] cmp,
output wire res


assign res = (dat_o >= cmp) ? 1'b1 : 1'b0;
);
endmodule



上面的代码里,top里有2个模块m1和m2,它们之间有个wire变量da_o[8:0]在传递,你认为这会导致引脚不够的报错吗? 自己好好想想吧
发表于 2015-3-8 17:40:11 | 显示全部楼层
直接拉到输入输出接口上,在顶层例化 连接就可以了
发表于 2015-3-12 16:02:48 | 显示全部楼层
用input
发表于 2015-3-12 21:05:54 | 显示全部楼层
看看那 学洗一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-30 02:39 , Processed in 0.021819 second(s), 7 queries , Gzip On, Redis On.

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