jujiaqi 发表于 2010-9-20 21:55:14

刚看了一贴,想到了一个问题 : 如果寄存器变量p位宽为8,那么always@(posedge p) 如何触

刚看了一贴,想到了一个问题 : 如果寄存器变量p位宽为8,那么always@(posedge p) 如何触发?
是不是只有p中的p起作用?

rlogin 发表于 2010-9-21 07:40:20

关注

akuei2 发表于 2010-9-21 08:03:09

寄存器变化触发
always @ ( p )


寄存器莫一位变化触发
always @ ( p )

sdmmqy 发表于 2010-9-21 08:36:48

不管verilog,vhdl,都是硬件描述语言,你如果学过数字电路,而且现在想不出这个电路是什么样的,那么很可能这个方案是错的.就是说没这个硬件.
和单片机的c语言不一样,那是设计语言,这是描述语言.vhdl的综合器都很笨,他只认识它懂得语言

Jigsaw 发表于 2010-9-21 08:59:18

楼主先用Modelsim仿真看看能不能通过?
应该不行,换成电平触发是肯定可以的

只是这样做有意义吗,还是楼主无意中想到这个问题?

sytu_xww 发表于 2010-9-21 09:24:27

回复【楼主位】jujiaqi
刚看了一贴,想到了一个问题 : 如果寄存器变量p位宽为8,那么always@(posedge p) 如何触发?
是不是只有p中的p起作用?
-----------------------------------------------------------------------

的确没有意义啊,实际中不会用的东西还是不要花太多的时间去纠结了。

jujiaqi 发表于 2010-9-21 11:55:35

谢谢大家关注,刚才用quartus试了一下,果然是只有最低位起作用,其它位都是悬空的

module TEST(clk,out);
inputclk;
output out;
reg    out;

always@( posedge clk )
      begin
        out <= out + 8'd1;
        end
endmodule

http://cache.amobbs.com/bbs_upload782111/files_33/ourdev_584604XEJCHZ.jpg
(原文件名:QQ截图未命名.jpg)

akuei2 发表于 2010-9-21 14:26:21

always@( posedge clk )
    ......

always@( posedge clk )
    ......

always@( posedge clk )
    ......

always@( posedge clk )
    ......

always@( posedge clk )
    ......

always@( posedge clk )
    ......

always@( posedge clk )
    ......

always@( posedge clk )
    ......

============================

( ⊙ o ⊙ )啊!
页: [1]
查看完整版本: 刚看了一贴,想到了一个问题 : 如果寄存器变量p位宽为8,那么always@(posedge p) 如何触