[X]关闭

always中敏感信号疑惑~~·

文档创建者:诸葛小胖
浏览次数:8861
最后更新:2021-04-09
 
这段个5.5分频的代码:
module fenpin55 (clk_in,clr,clk_out);
input clk_in;
input clr;
output reg clk_out;
reg clk1;
wire clk2;
integer count;
xor  xor1(clk2,clk_in,clk1);
always@(posedge clk_out or negedge clr)
begin
   if (~clr)
      begin
            clk1<=1'b0;
      end
  else
           clk1<=~clk1;
end
always @(posedge clk2 or negedge clr )
begin
   if (~clr)
      begin
           count<=0;
           clk_out<=0;
      end
   else if(count==5)
       begin
           count<=0;
           clk_out<=1;
      end
        else
               begin
           count<=count+1;
           clk_out<=0;
      end
end
endmodule

这是仿真结果:
360截图20161017164456624.jpg

问题来了:在最后一个always语句中clk2作为敏感信号并未发生变化,但是输出信号clk_out却发生了变化。这究竟是发生了什么~~  求解答

360截图20161017164456624.jpg

发表评论已发布 9

温暖西城

发表于 2016-10-17 19:08:26 | 显示全部楼层

“output reg clk_out;”,“always@(posedge clk_out or negedge clr)”    always 语句用错了 ,always里面的是敏感信号,输入信号,中间某个信号,包括电平信号、上升沿信号等,但是不能是输出信号,你可以查下always的语句使用方法,然后再仿真。

诸葛小胖

发表于 2016-10-17 23:07:32 | 显示全部楼层

温暖西城 发表于 2016-10-17 19:08
“output reg clk_out;”,“always@(posedge clk_out or negedge clr)”    always 语句用错了 ,always里 ...

谢谢你回答我的问题。我把综合,布局布线都走了一边,没有错误。另外我查书并没有发现你说的这个规则,你说的好像是VHDL里面的规定,如果想要用输出信号作为敏感信号必须定义为buffer(类似于寄存器类型) 360截图20161017225104677.jpg


uisrc

发表于 2016-10-21 07:30:06 | 显示全部楼层

你这个时钟clk2 当counter=5的时候 clk_out输出1 是正确的,仿真结果是对的。不知道你有什么疑问
越努力越幸运!加油!

yongzhilv

发表于 2016-10-21 11:07:19 | 显示全部楼层

admin 发表于 2016-10-21 07:30
你这个时钟clk2 当counter=5的时候 clk_out输出1 是正确的,仿真结果是对的。不知道你有什么疑问

  第二个always中,当counter=5时,clk2作为敏感信号并没有上升沿,但是clk_out的值也发生了变化~~~~

yongzhilv

发表于 2016-10-21 12:34:27 | 显示全部楼层

yongzhilv 发表于 2016-10-21 11:07
第二个always中,当counter=5时,clk2作为敏感信号并没有上升沿,但是clk_out的值也发生了变化~~~~

求大身解答~~~~

uisrc

发表于 2016-10-21 14:41:29 | 显示全部楼层

CLK2 是从什么地方来的?

越努力越幸运!加油!

yongzhilv

发表于 2016-10-22 14:53:15 | 显示全部楼层

admin 发表于 2016-10-21 14:41
CLK2 是从什么地方来的?

是由clk1和clk_in异或得到的。你的意思是clk1,clk_in变化驱动了always语句?

車欠

发表于 2016-11-7 08:45:56 | 显示全部楼层


回复

使用道具 举报

兰兰的天

发表于 2021-4-9 21:43:44 | 显示全部楼层

我的回答能带给你的十一运夺金,不是很多条条框框的方法论,让你跟着做了就能变得幸运时时彩自信起来。我所讲的,是思维模式的变更,是经过反复实践与超级大乐透思考所造成的思想认知的改变。

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

本版积分规则