0
我正在尝试制作可合成的Verilog代码,它可以检测'x'或无效输入。基本上,x
不合成,所以我避免x
。我试图在每个时钟周期读取输入,如果是0
或1
,那么我将加载到一个新的寄存器中。这是代码;Verilog中可合成'X'或无效输入检测系统
[email protected](posedge clk)
begin
if(in & gate_check == 0 | in & gate_check == 1)
begin
load_input_8 <= {in,load_input_8[8:1]};
end
end
因此,我在检查输入数据的有效性后,将新输入加载到load_input_8
寄存器中。顺便说一下,gate_check
的值为1,即`gate_check = 1。
但是,这只是将1
的值存储到load_input_8
中。没有0
正在存储在load_input_8
。加载输入时电路也有奇怪的行为。这是模拟图片; 谢谢。
只有'in = 1'才能满足你的条件。 –
@Laleh,谢谢。问题解决了。 –