AURORA 学习记录

 

目录

1、IP核的创建

1、GT refclk

2、INIT clk 

3、DRP clk (动态配置端口)

 2、stream接口的时序图

1、时序图

2、接口说明

3、复位操作

1、reset复位介绍

2、gt_reset复位介绍

3、正常上电复位顺序

4、用户操作全双工复位

4、例子工程的分析

1、打开例子工程

2、例子设计的框图

 3、主要模块简介

 4、AURORA IP核主要接口说明

 5、调试总结

1、关于bank共用时钟的问题

2、channel_up拉不高的问题


1、IP核的创建

 

 说明:

1、GT refclk

适用于驱动高速收发器里面的GTXE2_COMMON/ GTHE2_COMMON和GTXE2_CHANNEL/GTHE2_CHANNEL。

2、INIT clk 

上电初始化阶段来驱动一些逻辑

3、DRP clk (动态配置端口)

 大概意思就是所可以动态改变这些模块GTXE2_COMMON/ GTHE2_COMMON和GTXE2_CHANNEL/GTHE2_CHANNEL的配置参数

 

 共享逻辑的选择,共享的PLL是包含在IP核中还是包含在例子工程中

 2、stream接口的时序图

 stream接口操作非常简单,推荐使用该接口,是一种数据流的模式

1、时序图

2、接口说明

s_axi_tx_data input                要发送的数据,送给ip核
s_axi_tx_validinput表示发送的数据有效标志
s_axi_tx_treadyoutputIP核告诉用户准备好了,可以开始发送数据
m_axi_rx_tdataoutputip核接收到的数据输出给用户侧
m_axi_rx_validoutputip核数据数据的有效标志
userinputip核数据给用户侧,发送数据需要在该时钟域中操作
resetinputip的输出复位

3、复位操作

 因为本次章节是采用双工模式,所以只介绍双工复位模式的讲解

1、reset复位介绍

由上图可只,reset复位只是针对通道复位(channel_up),至少需要保持6个user_clk的高电平,channel_up才会拉低。

2、gt_reset复位介绍

 gt_reset是对user_clk进行复位,在gt_reset保持至少6个init_clk时钟周期的时候,过一段时间会复位user_clk时钟,最后channel_up会拉低。

3、正常上电复位顺序

 ip核正常上电过程先是gt_reset和reset都是高电平,过一段时间先是拉低gt_reset,等待一段时间reset才会拉低。

4、用户操作全双工复位

 当用户想复位IP核,可以按照上图时序去操作,首先是先拉高reset信号,保持128个(user_clk)时钟周期之后,在拉高gt_reset,在时钟intit_clk下保持1秒或者26位的计数器值,在拉低gt_reset,最后在拉低reset。

注意:gt_rest复位是在init_clk时钟域下的,reset是在user_clk时钟域下的,在操作复位的时候需要考虑不同时钟域的逻辑操作。

4、例子工程的分析

1、打开例子工程

选中AURORA   ip核,右键选中 open ip example design ,打开例子工程。

等待打开例子工程,你会看到如下模块,工程中有很多外围的控制接口,我们可以不用在意其是什么意思,我们只需提取我们有用的模块。

2、例子设计的框图

它的仿真模型就是如下图,由两个模块互相发送

 3、主要模块简介

1、时钟模块

 2、内部复位模块

3、配置COMMON PORT配置参数

 4、AURORA IP核主要接口说明

channel_upoutputuser_clk信号拉高表示通道初始化完成,IP核准备好可以传输数据
lane_upoutputuser_clk代表链路初始化成功,每一bit代表一条链路
resetinputasync直接复位IP核,必须在user_clk时钟域下至少拉高6个时钟周期,复位才会有效果
gt_resetinputasync这个复位信号会控制PCS和PCM电路,它是通过debouncer电路直接与顶层相连,这个信号是至少拉高6个init_clk时钟,才有效
init_clk_ininput当gt_reset拉高以后会使user_clk复位,所以init_clk是非常有用的
loopback
inputuser
一般设置成000,正常收发模式
000 : Normal operation
001 : Near-End PCS Loopback
010 : Near-End PMA Loopback
011 : Reserved
100 : Far-End PMA Loopback
101 : Reserved
110 : Far-End PCS Loopback
关于DRP不做过多的讲解,如果没用到可以直接将一些输入端口置零

 5、调试总结

1、关于bank共用时钟的问题

在设计过程中,如果需要用到多通道的光纤,可以考虑公用参考时钟,相邻的bank可以公用一组时钟。

 

2、channel_up拉不高的问题

  1. 在上板调试的时候必须要正确接好光纤线,channel_up才会拉高。如果没有接光纤线,channel_up是不会拉高的
  2. 在使用复位的过程一定要正确按照官方给的时序操作来,正确控制好reset和gt_reset的时序关系

 本篇是来记录在工作学习过程出现的问题,如果有误还望指正!更详细的说明可以参考XILINX官方文档pg046

  • 5
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值