请教各位给指教一下,看看下面的代码,具体的电路是什么
always @(posedge clk or negedge rst_n)
begin
if(~rst_n)
arb_flag <= 1'b0 ;
else
case(rtmp)
2'b10 : flag <= 1'b0;
2'b01 : flag <= 1'b1;
default: ;
endcase
end
小弟觉得应该是一个选择器后面接一个d触发器,可是选择器的默认是空的,有可能在默认的情况下,保存复位状态的值或者其他两种状态的一种? 不知小弟的理解对不?
这种电路的写法对不对,或者应该怎么写。
在组合逻辑电路中,各种状况应该详细的写清楚,不应该缺省某个状态。而在时序电路中,就像上面的电路,我觉得应该是一点组合电路加上一个d触发器,d触发器前面这段电路也应该明白的写清楚各个状态时什么值? 不知道小弟的理解对不对? 请教各位给指教一下啊。
flag 和 arb_flag不是同一个信号。你这个主要是对flag赋值吧。可以考虑reset下flag啊
小编的arb_flag和flag应该是同一个变量,是手误吧
暂且当成是小编的手误来理解。
复位状态下flag为0,复位状态结束后,由于选择位不确定所以flag也会是不确定状态
你这段代码对应的电路是一个四选1的mux和d触发器。
mux四个个输入端分别为1,0,dff的输出端,dff的输出端
mux的输出为dff的数据输入端
不知道你是不是要实现这么个电路,所以无法告诉你该怎么写。
同意楼上的分析!
是我的笔误,都是同一个信号。
always @(posedge clk or negedge rst_n)
begin
if(~rst_n)
flag <= 2'b0 ;
else
case(rtmp)
2'b10 : flag <= 2'b00;
2'b01 : flag <= 2'b01;
default: flag <= 2'b10;
endcase
end
这个是一个选择器后面接了一个D触发器
那么下面的是什么电路?
always @(posedge clk or negedge rst_n)
begin
if(~rst_n)
flag <= 1'b0 ;
else
case(rtmp)
2'b10 : flag <= 1'b0;
2'b01 : flag <= 1'b1;
default: ;
endcase
end
是我的笔误,是同一个信号,小编,看看我给楼下的那个回复,帮我在分析一下啊,请教了。谢谢。
Q环回到D,或者变成Clock Gating Enable。
2個例子不同在,一個default會給值,另一個維持不變
