注:波特率为每秒传送的码元数,波特率=比特率×调制一个码元所需要的比特数。
这些参数在UART的接收端和发送端要保持一致。在信息传输通道中,携带数据信息的信号单元叫作码元,每秒钟通过信道传输的码元数称为码元传输速率,简称波特率。波特率是传输通道频宽的指标。若波特率为115200,则每秒传送115200个码元。这里,每个码元为一比特(一位),因此对应115200比特。假定FPGA内接收时钟的时钟周期为PERIOD,单位为纳秒(ns),那么每比特持续的时钟周期数可表示为CYCLES_PER_BIT=ceil (109/Baud_Rate/PERIOD)式中,Baud_Rate为波特率,ceil表示向上取整。依此公式可知,波特率为115200,时钟周期为100ns时,每比特将持续87个时钟周期。
先看UART接收器。输入端口包括时钟、串行输入数据(rx_si,由UART发送器提供)、并行输出数据(rx_byte,8位)和输出数据有效标记信号(rx_dv,高电平有效,持续一个时钟周期)。接收器接收的数据的波形如图8-14所示。这里以1位起始位、8位数据位和一位终止位为
例。起始位固定为0,终止位固定为1。假定波特率为115200,时钟周期为100ns,则
FPGA设计优化(3.6)
于 2024-03-18 20:24:36 首次发布
本文详细探讨了FPGA设计中的优化策略,包括UART接收器和发送器的状态编码方式(如二进制码、独热码、格雷码和约翰逊码)及其对资源的影响。此外,文章还讨论了扇出优化的重要性,特别是在高扇出网线可能导致布局布线压力和时序违例的情况下,如何使用Vivado工具进行扇出报告以辅助优化。
摘要由CSDN通过智能技术生成