[ip核][vivado]aurora

Xapp1193:

[ip核][vivado]aurora_第1张图片

[ip核][vivado]aurora_第2张图片[ip核][vivado]aurora_第3张图片

 discovered:1)并不是所有芯片都支持aurora.xc7z010就没有。

                    2)XDC文件的指令-允许未约束的引脚的存在:

                set_property BITSTREAM.General.UnconstrainedPins {Allow} [current_design]

PG046:

1.

    [ip核][vivado]aurora_第4张图片

2.[ip核][vivado]aurora_第5张图片


[ip核][vivado]aurora_第6张图片

[ip核][vivado]aurora_第7张图片

[ip核][vivado]aurora_第8张图片

3.

[ip核][vivado]aurora_第9张图片

[ip核][vivado]aurora_第10张图片

[ip核][vivado]aurora_第11张图片

4.

[ip核][vivado]aurora_第12张图片

[ip核][vivado]aurora_第13张图片

5.例子

[ip核][vivado]aurora_第14张图片

没看懂,上面是传递偶数个byte的情况下。

[ip核][vivado]aurora_第15张图片

[ip核][vivado]aurora_第16张图片---

上面是传递基数个byte的情况。

[ip核][vivado]aurora_第17张图片

[ip核][vivado]aurora_第18张图片

为何需要clock compensation?

[ip核][vivado]aurora_第19张图片

[ip核][vivado]aurora_第20张图片

这里陈述了RX端对数据的处理过程。

6.

[ip核][vivado]aurora_第21张图片

1)帧的长度过长,会因为时钟时钟补偿的原因导致效率下降。

2)剩下的没看懂。

7.

[ip核][vivado]aurora_第22张图片

[ip核][vivado]aurora_第23张图片

    数据来的时候,不读就丢了。

[ip核][vivado]aurora_第24张图片

  [ip核][vivado]aurora_第25张图片

上面这个exampleA是一个非常好的例子,注意关注每个动作的主语是谁。

aurora核控制ready信号来暂停data的传输,暂停时延续上一状态的data;

用户逻辑控制valid信号来暂停data的传输,暂停时不关心输出状态。

[ip核][vivado]aurora_第26张图片

这个valid是由aurora核控制的?

【根据上面的aurora核IO的描述来推断,是由aurora核来控制的,来判断了数据(m_axi_rx_tdata[0:(8n-1)])是否有效后决定】【rx端不能推迟数据(m_axi_rx_tdata[0:(8n-1)])的延迟传输(没有ready端在RX侧),故数据存不住就丢了】

8.

若需要使用UFC功能,需要在IP核配置中进行选择。

[ip核][vivado]aurora_第27张图片

[ip核][vivado]aurora_第28张图片

UFC指令由特定的格式要求。PG046中有例子。

没懂。

9.

[ip核][vivado]aurora_第29张图片

PG046中有例子。没懂。

10.使用aurora的IP核的注意事项:

    1).

[ip核][vivado]aurora_第30张图片

    要记得在发送侧和接收侧都加上fifo.

    2).


    重点关注关键路径。

    3).

    [ip核][vivado]aurora_第31张图片

    Aurora核的改动只能在自定义IP的UI中完成。

11.

[ip核][vivado]aurora_第32张图片

[ip核][vivado]aurora_第33张图片

这个位置的分配能决定时钟关键路径。

12.

IP核内置的例子学习:

    1).
[ip核][vivado]aurora_第34张图片

[ip核][vivado]aurora_第35张图片

  2).Testbench

[ip核][vivado]aurora_第36张图片

[ip核][vivado]aurora_第37张图片


ug058:

关于Aurora的一个测试模块的使用介绍。


pg046的二刷:

1、所谓的GTX transceivers 、GTH transceivers 都是基于GT原语(Gigabit transceivers primitives)的,之间区别在于最大传输速率不同。

2、Flow control can be used to reduce the rate of incoming data or to send brief, high-priority messages through the channel.
流控制可以用来降低速率,以及发送高优先级的命令。

3、Gaps between valid data bytes are automatically filled with idles to maintain lock and prevent excessive electromagnetic interference.

这里可能是使用tx端的valid信号进行控制的,tx的valid信号是Input,由用户逻辑控制。

4、The Aurora 8B/10B core detects single-bit and most multi-bit errors using 8B/10B coding rules.

可能是名字的来源

5、结构框图:

[ip核][vivado]aurora_第38张图片

作用总结:1)初始化每个Lane    2)编码、解码控制字    3)错误检测

作用总结:1)成帧    2)验证初始化

作用总结:1)搬运(Channel(接受自(光口的RX 脚)) -> Application(AXI4-Stream接口))    2)流控制

作用总结:1)搬运(Application(AXI4-Stream接口)->Channel(发送至(光口的TX 脚)))    2)流控制

6.延时(latency)

latency的构成(不包含TX和RX间的线路导致的时延):

[ip核][vivado]aurora_第39张图片


lantency实例演示:


[ip核][vivado]aurora_第40张图片


DRP接口:

Refer to the relevant UG transceiver guide for more information on DRP ports.

UltraScale FPGAs GTH Transceivers User Guide (UG576) [Ref 1] and 7 Series FPGAs GTX/GTH Transceivers User Guide (UG476) [Ref 3].

Reset接口:

    下降沿有效。

    IP核正常运行时,reset引脚必须都为高。

[ip核][vivado]aurora_第41张图片

这里能看到reset 和 gt-reset 的区别。

[ip核][vivado]aurora_第42张图片

[ip核][vivado]aurora_第43张图片

[ip核][vivado]aurora_第44张图片


Shared Logic :

自理解——因为aurora通讯中一定会有两块(loopback除外)ip core,一个用于发送,一个用于接收,所以就会有相同的逻辑单元,就出现了共享。

[ip核][vivado]aurora_第45张图片

[ip核][vivado]aurora_第46张图片

[ip核][vivado]aurora_第47张图片

[ip核][vivado]aurora_第48张图片

Power Down:

[ip核][vivado]aurora_第49张图片

IP核的UI选项:

[ip核][vivado]aurora_第50张图片

[ip核][vivado]aurora_第51张图片

[ip核][vivado]aurora_第52张图片

[ip核][vivado]aurora_第53张图片

所需约束:

    An example design XDC is created automatically when the core is generated from the Vivado design tools.

[ip核][vivado]aurora_第54张图片

[ip核][vivado]aurora_第55张图片

[ip核][vivado]aurora_第56张图片

自带的Example:

[ip核][vivado]aurora_第57张图片

[ip核][vivado]aurora_第58张图片

    单工模式下所需要做的更改:

    frame_GEN & frame_CHECK 的介绍:

[ip核][vivado]aurora_第59张图片

    使用这一例子时的注意事项:When using the example design on a board, be sure to edit the _
exdes.xdc file to supply the correct pins and clock constraints.
  例子中的I/O:

[ip核][vivado]aurora_第60张图片

    debug:    Select the Vivado Lab Tools check box on the Core Options tab of the Customize IP interface in the Vivado Integrated Design Environment (IDE) to include the ILA and VIO cores in the example design.

    Tesbench:

    1)双工:

[ip核][vivado]aurora_第61张图片

        过程描述:

        

        2)单工:

        [ip核][vivado]aurora_第62张图片

        过程描述:

    

你可能感兴趣的:(FPGA学习)