求FPGA高手解释:为什么以下在quartus2中编译后,逻辑单元为0且仿真没有结果?

modulebcd_decoder(i,y);input[3:0]i;output[7:0]y;reg[7:0]y;alwaysbegincase(i)4`b0000:y... module bcd_decoder(i,y);
input[3:0]i;
output[7:0]y;
reg[7:0]y;
always
begin
case(i)
4`b0000:y[7:0]=8`b11111100;
4`b0001:y[7:0]=8`b01100000;
4`b0010:y[7:0]=8`b11011010;
4`b0011:y[7:0]=8`b11110010;
4`b0100:y[7:0]=8`b01100110;
4`b0101:y[7:0]=8`b10110110;
4`b0110:y[7:0]=8`b10111110;
4`b0111:y[7:0]=8`b11100000;
4`b1000:y[7:0]=8`b11111110;
4`b1001:y[7:0]=8`b11110110;
4`b1010:y[7:0]=8`b11101110;
4`b1011:y[7:0]=8`b00111110;
4`b1100:y[7:0]=8`b10011100;
4`b1101:y[7:0]=8`b01111010;
4`b1110:y[7:0]=8`b10011110;
4`b1111:y[7:0]=8`b10001110;
default:y[7:0]=8`b11111111;
endcase
end
endmodule
编译确保已经通过了,就是没有逻辑单元,我试了一下二选一的选择器的设计,也没用到逻辑单元,但是仿真却是真确的,所以郁闷的是到底没有逻辑单元是不是个错误?
展开
 我来答
wanyiyiba
2010-12-20
知道答主
回答量:23
采纳率:0%
帮助的人:38.1万
展开全部
你确定在Quartus II中编译没有错误吗?你的字母b前的那个符号都不对,比如4`b0000中那个撇就不对,改正确之后就能编译通过了,应该是用了7个逻辑单元。
至于楼上那英文说的你没有时钟的问题,如果你不是时序逻辑,只是组合逻辑,没有时钟当然没有问题;那不是一个错误。按你这个代码来说,没有时钟,就是纯粹的组合逻辑。
ramlogo
2010-12-21 · TA获得超过172个赞
知道小有建树答主
回答量:230
采纳率:0%
帮助的人:186万
展开全部
of course it will not get any synthesized logic as no sensitive list with always statement.
a clock signal is necessary. try
input clock;
always@(posedge clock)
---------------------------------------
they are right, replace all of your ` with ' and you will get the result you expect.
btw, i have run your code on Quartus 9.1 sp1, and it DOES say "no clocks defined in design". so what it means is, at least you should use a register to store your result IN THIS DESIGN.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
故事郎
2010-12-20 · 超过12用户采纳过TA的回答
知道答主
回答量:53
采纳率:0%
帮助的人:0
展开全部
4'b和8'b中间哪个是单引号,不是TAB键上面那个`
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
星云战机
2010-12-20
知道答主
回答量:1
采纳率:0%
帮助的人:0
展开全部
楼上说得有道理,确保编译通过后,仿真前需要设置输入波形,仿真后才会有输出波形
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式