aurora协议学习之时钟补偿
来源:互联网 发布:linux tomcat安装 用户 编辑:程序博客网 时间:2024/04/27 06:25
时钟补偿
1.什么是时钟补偿?
时钟补偿序列由6组时钟补偿指令/CC/组成,至少每隔10000个字码组发送一次,而不顾当前是否有其他的数据包或者码组在传输。当发送时钟补偿序列时,Aurora核将自动中断数据传输。每发送10000个字节,时钟补偿序列在每个线路(lane)上加12个字节的额外开销。时钟补偿应用于系统收发端使用独立的参考时钟资源的情况,它允许收发端使用的参考时钟频率的不同最大为100PPM。在收发端使用同一的参考时钟频率的时候,不需要使用时钟补偿功能。此时,WARN_CC和DO_CC都应该接低。另外,CLK_CORRECT_USE属性应该被设为false。
2.时钟补偿接口
所有的aurora8B/10B核上都有一个时钟补偿接口,这个接口用于控制时钟补偿序列的发送。
两个重要的端口:
DO_CC:当DO_CC为高电平时,aurora核在所有的线路上发送CC序列;
WARN_CC:当WARN_CC为高电平时,aurora核将不应答UFC(用户流控)请求。
DO_CC需要每隔一个时钟补偿周期置为高电平。DO_CC高电平持续时间和间隔时间与GTP/GTX收发器数据接口Lane的宽度有关。
WARN_CC用于aurora核使用了UFC或者NFC的情形。在DO_CC置位为高之前使WARN_CC置位,阻止UFC信息离CC序列太近,以免UFC信息与CC序列重叠而导致数据损坏。需要提前预置WARN_CC的时钟周期数与通道的线路数目和线路的宽度有关。
在WARN_CC和DO_CC为高电平期间,NFC信息将不会被应答。
3.时钟补偿功能常见用法:
(1)将时钟补偿事件发生时刻安排在数据帧的外边。
(2)将时钟补偿事件安排在数据流的特殊时刻,以避免干扰数据流。
一般情况下,不建议用户自己编写时钟补偿逻辑。使用CORE Generator software生成aurora核时会伴随产生一个标准的时钟补偿模块standard_cc_module_i。
4.时钟补偿对数据传输的影响
由于需要进行时钟补偿,需要在发送10000个字节后插入时钟补偿序列(对于2bytes的线路,每隔5000个时钟周期,对于4bytes的线路,每隔2500个时钟周期),用户不能够连续发送和接收数据,因为在时钟补偿过程中,数据线路将被挂起6个时钟周期。
5. 标准时钟补偿模块standard_cc_module_i分析
输入端口:
RESET-->rst_cc_module_i-->!lane_up_reduce_i-->&tx_lane_up_i-->
(aurora_module_i模块输出管脚).TX_LANE_UP(tx_lane_up_i)
TX_LANE_UP为高电平,则表示线路准备好,可以开始数据传输;为低电平,则表示线路尚未准备好。
这里可以认为,RESET用来指示TX_LANE_UP的状态。
输出端口:
WARN_CC:直接与aurora核的WARN_CC端口相连;
DO_CC:直接与aurora核的DO_CC端口相连;
参考文档:
aurora_8b10b_ug353-5.2-userguide
aurora_8b10b_protocol_spec_sp002
- aurora协议学习之时钟补偿
- Aurora协议调研
- Aurora 框架学习记录
- Amazon Aurora 学习
- STM32F407学习之时钟
- stm32学习之时钟
- BLE 协议栈之RTC时钟
- BLE 协议栈之RTC时钟
- 学习笔记之---简单时钟
- msp430学习笔记之时钟
- STM32f4学习之路--时钟
- ARM学习之时钟体系结构
- Canvas学习之绘制时钟
- STM32学习之:时钟频率
- Kaldi学习笔记:跑Aurora语料库
- 第三十七天:Aurora框架的组件学习
- SRIO PCIE AURORA三种高速协议的区别
- 补偿
- Eclipse中添加Tomcat服务器报错:Cannot create a server using the selected type 导致不能点击next
- 命名空间迁移
- Beginning Auto Layout Tutorial in iOS 7: Part 1
- C++/C 获取当前系统时间
- 手把说教你把Vim改装成一个IDE变成环境(图文)
- aurora协议学习之时钟补偿
- PopupWindow的使用
- Android中AyncTask数据同步传递问题
- 关于QGis1.8二次开发的环境配置
- PAT-1002. A+B for Polynomials(Map)
- LINUX下的fork例子
- android 开发之ScrollView 截屏代码
- Android性能测试工具实现介绍
- Socket 编程基本流程