问一下两块fpga直接通信的问题
时间:10-02
整理:3721RD
点击:
时钟不一样,a慢,b快,大约2倍的样子
然后我这么试,从a传8‘b11111111到b,再传回去,重复。然后发现有问题。
代码大概是这样的
if(rd_rdy_N==1) begin
state <= 1;
in_buf <= in; ***
if(in != 8'b11111111)
led1 <= 1;
end
然后在下一个state,
if(in_buf != 8'b11111111) led2 <= 1;
然后发现,led1灯常亮,led2灯灭了。查看结果,发现在满屏的FF里面会冒出个别几个别的东西。数据有错误
在然后改了一下。代码改动地方如下
in_buf <= in_L; ****
其中in_L是这么来的
always @ (posedge clk)
in_L <= in;
问题解决。
为什么会出现这样的问题?为什么这样就能解决呢?
异步时钟的传输问题,你怎么能直接采样呢,要同步,
