FPGA设计心得(13)aurora的线速率及其用户时钟之间的关系?

长话短说

由于工作很忙,所以一直没有时间来胡乱写写,需要注意的是文章内容不涉及任何秘密,纯粹来源自公开的数据手册以及Xilinx工具及其网站,文章内容严谨性以及真实性纯粹本人妄自理解,爱信不信!
周末半夜抽空记录下需要速记的东西,所以就长话短说!

aurora的用户时钟频率是多少?

在定制aurora IP核的时候,我们需要选择各种时钟的频率,包括GT参考时钟,INIT时钟以及DRP时钟,其中GT参考时钟是来自于专用的MGT bank上的专用端口,其他就没有必要。
在这里插入图片描述
从GT参考时钟开始,通过一系列的时钟管理单元,例如PLL,MMCM等,可以衍生出一系列的时钟供Transceiver以及aurora协议使用,今天的主角是十分重要的,用户逻辑侧时钟USER_CLK!
它等于多少?
从上面的定制页面可以看出,我们的线速率选择的是3.125Gbps,看起来很高了,其实看单位也就是bit而已!除以8,变成390.625MBps,这时候是字节了,如果传输的数据具有32bit呢?也就是4字节?那么线速率可以转换位97.65625MQBps,其中的QB就是QUAD Bytes(也就是双字,DW),如果使用一个时钟去传输这样的32bit数据,一个时钟传输一个数据,需要一个90多M的时钟就够了!
注意,上面说的是在没有编码的情况下,算出来的时钟,但是高速串口进行数据传输时,都是会编码的,8B/10B编码,那么传输32bit数据,编码后就得40bit了。线速率为3.125Gbps,那么如果一个并行用户时钟传输一个数据,需要一个78.125M的时钟就行了。

为了验证,就上面的定制页面,生成一个例子程序,进行仿真,如下:

在这里插入图片描述
对用户时钟进行测量,12.8ns时钟,频率不就是78.125M吗?
验证无误!

下面给出结论,如果采用8B/10B编码,用户时钟为线速率除以编码后的用户数据位宽。
编码前的位宽可以在IP的定制页面选择:

在这里插入图片描述
在算上编码,就很容易得出编码后的位宽!

aurora的用户时钟的来源?

为了得到auroa的用户时钟来源?我们就aurora的例子程序扒一扒!
从用户逻辑模块开始,一层一层追溯它的来源:

在这里插入图片描述

从user_clk_i,到USER_CLK,再到GT_CLK,再到txoutclk_out,最终追溯到原语GTXE2_CHANNEL中的TXOUTCLK;
当然接收模块的用户时钟来源于RXOUTCLK;

在这里插入图片描述

用户时钟也不是一直都有的,需要链路通路才行!

在这里插入图片描述

总结

很简单地聊几句,最后,我认为直到USER_CLK和线速率之间的关系是很重要的,有助于我们选择线速率。知晓了用户时钟和位宽,可以验证用户逻辑设计符不符合需求,例如总线转换,这样的速率是快了还是慢了,这对于设计有时候还是必要信息(异步转换需要跨时钟),快了可能不要紧,慢了就得加线速率,有的时候甚至需要多通道!

  • 16
    点赞
  • 87
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
### 回答1: Aurora是一种高速串行数据传输协议,适用于高速通信和存储应用。Aurora时钟配置指的是设置Aurora接口中的时钟频率。 6664b速率中的6664表示Aurora接口中的每个时钟周期内传输的bit数,b代表bit。在Aurora中,bit率和时钟频率是通过传输速率时钟频率两个参数来确定的。 在Aurora接口中,传输速率是指每秒传输的数据bit数。而时钟频率是指时钟信号的频率,用来同步数据传输。时钟频率与传输速率直接相关,传输速率等于每个时钟周期内传输的bit数乘以时钟频率。 因此,根据6664b速率,表示每个时钟周期内传输6664个bit,具体的传输速率需要根据时钟频率来确定。如果设定时钟频率为1GHz,则传输速率为6664Mbps(每秒传输6664兆bit)。 Aurora 时钟配置 6664b 速率意味着设置Aurora接口的时钟频率为1GHz,以实现6664bps的数据传输速率。这样配置后,Aurora接口将每个时钟周期传输6664个bit,以满足高速的数据传输需求。 ### 回答2: Aurora 时钟配置 6664b 是指使用Aurora协议进行通信时的时钟速率。根据这个配置,时钟速率为6664b。具体来说,这是指在Aurora通信中的每一个比特(bit)的传输速率为6664个每秒。 Aurora协议是一种高速串行通信协议,通常用于数据传输,特别是在芯片、板卡和模块之间的高速通信中。它是一个基于差分传输和流控制的通信协议,能够提供高可靠性和高带宽的数据传输。 在Aurora通信中,时钟配置是非常重要的。时钟速率决定了通信的带宽和数据传输的速度。较高的时钟速率可以提供更大的带宽和传输速度,但同时也需要更高的系统资源和支持硬件。 因此,Aurora 时钟配置 6664b 表示在Aurora通信中使用的时钟速率为6664b。根据这个配置,每秒可以传输6664个比特的数据。这个速率可能根据具体的应用和系统需求进行选择和调整,以平衡带宽需求和硬件资源的限制。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李锐博恩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值