vivado时序约束学习系列:系统同步、源同步和自同步时序模型

文摘   2024-12-31 08:20   江苏  
一、系统同步

二、源同步

三、自同步

在系统设计中,尤其是通信链路中,常见的三种通信时序模型:系统同步、源同步和自同步。在通信原理中也介绍了各种同步方法,可以结合学习理解。

一、系统同步

在系统同步中,源端和目的端进行通信时候,共同使用同一个时钟,用于数据的发送和接收。当然,在接收端需要进行处理,消除传递过程中的延迟。下图是两个IC芯片之间的系统同步,在FPGA内部也存在这种系统同步设计架构,两个寄存器之间,共用一个时钟,时钟到达源端寄存器和目的寄存器之间的路径时间也是不同的,在时序系列文章中已经描述过了,此处为了方便大家对系统同步的理解。

二、源同步

源同步,在两个IC芯片进行通信时候,发送IC会伴随发送数据的时钟信号。接收IC则利用这个时钟进行数据接收。调节发送数据的输出时间,让时钟在数据单元的中间位置发送翻转,一般这种走线是需要严格等长设计的。其实,经典的示例有两种:一是RGMII的网口与phy芯片之间的通信,数据和时钟需要严格等长,调试过底层IOdelay的数值,为了确保双边沿采样时候数据稳定;另一个案例就是FPGA与DDR芯片之间的等长设计,FPGA会给DDR的提供转发时钟信号,硬件走线的时候需要保证FPGA IO到DDR bank IO之间严格等长,PCB走线的时候需要进行线路延迟的补偿。

三、自同步

自同步,发送侧产生的数据流中包括数据和时钟信息。从下图中可以看出,自同步包括并串转换、串并转换和时钟数据恢复。在数字通信中,发送方和接收方必须同步它们的时钟信号以正确地发送和接收数据。时钟恢复使示波器能够从接收到的信号中提取时钟,从而实现与传输数据的同步。高速串行接口传输数据时候,自同步很常见,比如USB/PCIe/SATA等。

FPGA实现高速串行接口数据,本质上都是利用底层Serdes硬Core来实现。SERDES是一种在发送端将并行数据转换为串行数据,并在接收端进行相反操作的设备。在这一过程中,时钟恢复发挥着至关重要的作用。在发送端,CDR(时钟数据恢复)技术首先被用来将数据进行8b/10b编码,然后以特定的速率发送出去。这一编码方法确保了数据线上0和1的数量平衡,减少了码间干扰,同时提供了丰富的数据边沿,这对于接收端锁定相位至关重要。接收端的CDR模块则负责从接收到的串行数据流中锁定相位,并按照恢复出的时钟对数据进行正确的位对齐和字对齐。



小灰灰的FPGA
努力成为一名FPGA全栈工程师,分享FPGA、嵌入式、硬件及软件知识,扩充自己的知识面,比如图像处理,通信协议以及数据处理等方向。
 最新文章