在一次测试过程中发现,对一个信号不同步会出现采集错误。该项目类似于串口,那就拿串口来说吧
对串口进行仿真,我在testbench内将RX和TX连接起来,因为发送和接收都是基于本板的50M时钟,所以我认为
对rx没有必要进行同步处理,仿真结果也是对的。 实际测试时,我用杜邦线将RX和TX连接起来,结果,接收错误。
问题:对于串口自环测试,注意是同一个板子的自环测试,而不是两个设备之间。发送和接收用的是同一个时钟,
所以我认为rx相对于clk来说是同步信号,没有必要进行同步。事实证明,我的想法是错误的,不知道错误在哪里?
同一个板子,同一个时钟,同频同相,为什么好多教材都说rx是异步信号。
答案:rx和tx虽然在testbench里自环起来仿真没有问题,是因为发送出来的数据内部布线相移较少。所以能采集到。
但是外部硬连线,相移较大,具体相移多少,并不知道。但是同步传输相移是很少的。所以采集不到正确的数据。目前就这么理解。 |