1.ultraScale GTH核使用说明

这篇具有很好参考价值的文章主要介绍了1.ultraScale GTH核使用说明。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.如果按照默认配置

k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

1.1框图

k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

1.2.信号说明

1.2.1复位信号

gtwiz_reset_clk_freerun_in: 复位控制器辅助块的运行时钟,要启用此模块,必须提供此时钟(注意改时钟频率要和我们在ip核的Physical Resources 配置的一致)且不能以用户时钟为源。
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

gtwiz_reset_all_in:复位TX和RX的PLL和Datapath(Datapath=PMA+PCS)。
gtwiz_reset_tx_pll_and_datapath_in:复位TX的PLL和Datapath.
gtwiz_reset_tx_datapath_in:复位TX的Datapath.
gtwiz_reset_rx_pll_and_datapath_in:复位RX的PLL和Datapath.
gtwiz_reset_rx_datapath_in:复位RX的Datapath.
gtwiz_reset_tx_done_out:在完成TX的复位后拉高,与主通道TXUSERCLK2同步。
gtwiz_reset_rx_done_out:在完成RX的复位后拉高,与主通道RXUSERCLK2同步。
gtwiz_reset_rx_cdr_stable_out:标明RX原语的时钟和数据恢复(CDR)电路是稳定的。保留;不使用
txpmaresetdone_out[0:0]:如果是高电平,tx通道的pma部分复位完成
rxpmaresetdone_out[0:0]:如果是高电平,rx通道的pma部分复位完成
注意:
1.所以的复位信号都是高电平有效,且高电平时系统一直处在复位状态,只有拉低之后,系统才会完成复位。
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

2.gtwiz_reset_clk_freerun_in:这个信号手册上一直没有具体的介绍,也不知应该输入频率范围在什么之间,一般给一个板子上的时钟就行,不要高于给CPLL和QPLL的参考时钟频率大小

1.2.2时钟源信号

gtrefclk00_int[0:0]:外部输入的参考差分时钟经过ibufds后得到的单端时钟信号,作为cpll和qpll的可以选择的时钟源。在7系列器件中,一个quad可以选择相邻一个南北quad的参考时钟作为输入,ultra器件中则为相邻两个。
注意:该信号的时候时钟频率要和我们在IP核配置界面的actual reference clock一致
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

txoutclk_out:GT核为tx通道输出的时钟,可以来自PMA、PCS、配置分频,在多通道时由中间通道作为源产生
rxoutclk_out:这个是rx通道输出的时钟频率
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

txusrclk_in:提供给TX PCS的时钟,由txoutclk_out信号产生
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

txusrclk2_in:我们通过这个时钟来往gt核中发送数据
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

gtwiz_userclk_tx_active_in :标志txuserclk_in和txuserclk2_in信号是有效,高电平有效
(在由ip核产生的示例工程中,它是这么使用这个信号的,把这个输入信号当作为一个bufg的复位信号 )

     BUFG_GT bufg_gt_usrclk_inst 
        .CE      (1'b1),
        .CEMASK  (1'b0),
        .CLR     (gtwiz_userclk_tx_reset_in),
        .CLRMASK (1'b0),
        .DIV     (P_USRCLK_DIV),
        .I       (gtwiz_userclk_tx_srcclk_in),
        .O       (gtwiz_userclk_tx_usrclk_out)
      );)

k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

注意:其实txusrclk_in和txusrclk2_in是有关系的
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

其中,TX_DATA_WIDTH和TX_INT_DATA_WIDTH是GT核内部信号,在配置GT数据位宽与8b10b使能时已经确定,对应关系如下
TX_DATA_WIDTH:是我们可以配置的值,决定TX_DATA的位宽。但是其实在配置ip核的时候,我们是去配置TX_DATA的位宽,然后ip核去自动帮我们配置TX_DATA_WIDTH的值
TX_INT_DATAWIDTH:是我们可以配置的值,用来控制TX内部数据的宽度即Inter Data WIDTH。但是其实在配置ip核的时候,我们是去配置Inter Data WIDTH的位宽,然后ip核去自动帮我们配置TX_INT_DATAWIDTH的值
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

rx部分其实核tx部分是对应的,这里不过多阐述
gtwiz_userclk_rx_active_in:标志rxuserclk_in和rxuserclk2_in信号是有效,高电平有效
rxusrclk_in:提供给RX PCS的时钟
rxusrclk2_in:我们通过这个时钟来往gt核中接收数据

1.2.3数据发送接收信号

gthrxn_in[0:0]:这个就是RX通道接收外部信号的差分引脚
gthrxp_in[0:0]:这个就是RX通道接收外部信号的差分引脚
gthtxn_out[0:0]:这个就是TX通道发送信号的差分引脚
gthtxp_out[0:0]:这个就是TX通道发送信号的差分引脚
注意:这四个引脚理应在约束文件中进行管脚约束,但是这个约束已经在gt核中帮我们做了,只要在ip配置中选择好用哪个cahnel,ip就会自动帮我们把引脚连上

1.2.4输入数据信号

gtwiz_userdata_tx_in[31:0]:就是是我们把需要发送的数据输入到这个端口,在每一个 txusrclk2的上升沿更新
即我们把数据从gtwiz_userdata_tx_in[31:0]端口输入,经过TX通道,从gthtxn_out[0:0],gthtxp_out[0:0]差分引脚对把数据输出

1.2.5接收数据信号

gtwiz_userdata_rx_out[31:0]:就是接收到的数据,,在每一个 rxusrclk2的上升沿更新
即我们把数据从gthrxn_in[0:0],gthrxp_in[0:0]差分引脚接收数据,然后经过RX通道,从gtwiz_userdata_rx_out[31:0]把数据发送出去

1.2.6与qpll相关信号

qpll0outclk_out[0:0]:用于驱动TX/RX通路,就是下图的信号
qplloutrefclk_out[0:0]:可作为TXOUTCLK的源输出,就是下图的信号
因为ultraScale中有两个qpll,这里我们在ip核配置里用的qpll0

1.2.7与电源相关信号

gtpowergood_out[0:0]:拉高表示电源已经接上了,系统开始工作

2.如果把ip核配置为aurora 8b/10b模式

k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

2.1框图

这里只讲新增的几个信号,其余信号的功能在上面都讲过

2.2信号说明

2.2.1时钟信号

1.drp的时钟:这个时钟是给GT收发器动态调制功能的时钟(不用管干嘛的)官方推荐这个时钟直接给和gtwiz_reset_clk_freerun_in一样的时钟
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

2.2.2与8b/10b功能相关信号

1.rx8b/10en_in[0:0]:拉高就启动8b/10译码功能,拉低不启动
2.tx8b/10en_in[0:0]:拉高就启动8b/10译码功能,拉低不启动
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

3.txctrl0_in[15:0]:在8b/10b模式下无用,不用管
4.txctrl1_in[15:0]:在8b/10b模式下无用,不用管
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

5.txctrl2_in[7:0]:8B/10B表包含经常用于控制功能的特殊字符(K字符)。TXCTRL2端口用于指示TXDATA上的数据是K字符还是常规数据。如果相应的TXCTRL2位被驱动为高位,则8B/10B编码器会检查接收到的TXDATA字节以匹配任何K个字符。
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

6.rxctrrl0_out[15:0]:在8b/10b模式下无用,不用管。
7.rxctrlr1_out[15:0]:在8b/10b模式下无用,不用管。
(注意:rxctrrl0_out[15:0]、rxctrlr1_out[15:0]用于在8b/10b被旁路时填充用户数据的高位。)
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

8.rxctrl2_out[7:0]:RXCTRL2端口用于指示RXDATA上的数据是K字符还是常规数据。如果相应的RXCTRL2位被驱动为高位,发送的RXDATA字节相应的自节是K字符。
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

9.rxctrl3_out[7:0]:拉高表示在RXDATA上显示的相应字节不是8B/10B表中的有效字符。因为用户数据经过8b10b编码之后,只有限种10位的数据,如果rx接到的10位数据不是经过8b10b编码后的任一一种,那就把RXDATA对应位的rxctrl3_out[7:0]拉高
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

2.2.3与RX buffer相关信号

1.rxbufreset_in[0:0]:rxbuffer的复位信号。此端口被驱动为高,然后拉低以启动RX弹性缓冲区重置过程。在单个模式或顺序模式下,激活RXBUFRESET只会重置RX弹性缓冲区。

k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

2.rxbufstatus_out[2:0]:表示rxbuf此时的状态
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

2.2.4逗号检测功能

1.rxcommadeten_in[0:0] :开启逗号检测的功能
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

2.rxpcommaalignen[0:0]:高电平使能+1k码检测
3.rxmcommaalignen[0:0]:高电平使能-1k码检测
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

8B/10B编码方案中会有+1与-1两种状态,这就是所谓的极性偏差( running disparity,RD)。所以在检测K码时,K28.5就会有两种K码,所以K码对齐功能有MCOMMA和PCOMMA模式,也就是plus comma 和Minus Comma。把这两个信号拉高就表示,启动+1和-1的k码检测
4.rxbyteisaligned_out[0:0]:拉高表示信号已经对齐了.这时可以将ENPCOMMALIGN和ENMCOMMALIGN两个信号拉低,关闭K码对齐功能。
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

6.rxbyterealign_out[0:0]:RXBYTEREALIGN是状态信号,用来表示对齐的K码是否发生变化或者说现在是否在对齐状态,=1表示字节对齐边界没有改变,=0表示字节对齐边界改变了。所以当RXBYTEREALIGN为0时我们可以重新使能字节对齐
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

(这里给出文档中k码对齐的流程:
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

)
7.rxcommadet_out[0:0]:RXCOMMADET是个状态信号,当K码对齐模块检测到K码时该信号置一,该信号有效几个周期
k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件

8.rxclkcorcnt_out[1:0]:也是一个状态信号,时钟矫正端口

k码对齐,GT收发器,单片机,fpga开发,嵌入式硬件文章来源地址https://www.toymoban.com/news/detail-625028.html

到了这里,关于1.ultraScale GTH核使用说明的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 赛灵思7系列FPGA GT收发器中的RX均衡器

            串行信号经过传输媒介时,必然伴随着衰减或者扭曲。为了减少信号衰减带来的串行误码率,并且兼顾功耗与性能,GT收发器提供了两种信号改善方法:一种是LPM模式(low-power mode),另一种是DFE模式(判决反馈均衡器 Decision Feedback Equalizer )。         DFE模式

    2024年02月03日
    浏览(44)
  • FPGA GTH 实现QSFP光口通信(三)——单路数据对齐

    1. 背景介绍 2. IP核配置 3. 自环回测试 3.1 数据产生模块 3.2 数据对齐模块 3.3 接口信号使用分析 3.3.1  ZYNQ 7 平台上GTX接口的信号 3.3.2  UltraScale 平台上GTH接口的信号 4. 数据对齐信号说明 4.1 TXCTRL TXCTRL1 and TXCTRL0 TXCTRL2 4.2 RXCTRL RXCTRL0 RXCTRL1  RXCTRL2 RXCTRL3 RXCTRL0 and RXCTRL1 4.3 回环测试

    2024年04月28日
    浏览(31)
  • 【VxWorks】VxWorks系统详细介绍说明,环境搭建说明,使用场景,使用实例

    目录 1.VxWorks 概述 2.详细介绍 2.环境搭建说明 3.使用场景 4.使用实例         VxWorks 是一款实时操作系统(RTOS),广

    2024年02月15日
    浏览(39)
  • iotop命令使用说明及iotop输出排序操作说明

    iotop是一个用来显示实时的磁盘活动 的工具,可查看哪些程序、进程或线程占用io过多。 iotop监控 Linux 内核输出的 I/O 使用信息,并且显示一个系统中进程或线程的当前 I/O 使用情况。它显示每个进程/线程读写 I/O 带宽。它同样显示当等待换入和等待 I/O 的线程/进程花费的时

    2024年04月12日
    浏览(49)
  • valgrind基本功能介绍、基础使用方法说明 valgrind基本功能介绍、基础使用方法说明

    valgrind基本功能介绍、基础使用方法说明_valgrind使用方法_HNU Latecomer的博客-CSDN博客 拷贝效果不好,请看原文。 1、Valgrind概述 Valgrind是一套Linux下,开放源代码(GPL V2)的仿真调试工具的集合。 Valgrind由内核(core)以及基于内核的其他调试工具组成。内核类似于一个框架(f

    2024年02月07日
    浏览(59)
  • chatGPT使用说明,相关技巧,使用记录等等

    它的工作原理是基于自然语言处理技术和深度学习算法。当用户输入问题时,我会将问题分解成并进行语义分析,以 理解用户的意图 。接着,我会调用内部的知识库和外部资源,比如搜索引擎、数据库等,寻找与问题相关的答案,并通过 回答、提供链接、建议 等方式

    2024年02月03日
    浏览(51)
  • 超维空间M1无人机使用说明书——01、ROS机载电脑使用说明——远程连接

    1、SSH优缺点 优点:1、消耗网络资源 2、运行稳定 缺点:1、图形化界面卡顿 2、对新手不友好 2、可视化软件优缺点 优点:1、对新手友好 2、运图形化界面比ssh流畅 缺点:1、消耗网络资源 一、远程登录到无人机端的Jetson nano 步骤一、通过SSH 登录到ROS主控端 无人机上电后会默认发

    2024年01月22日
    浏览(67)
  • git仓库使用说明

    Git软件使用 1.先下载git相关软件 下载地址: Git - Downloading Package (git-scm.com) 下载其中一个安装 2.打开gitee网站,注册账号 3.打开个人中心,选择ssh公钥,查看如何生成公钥 4.生成公钥后,添加相应的公钥 具体仓库操作 1.第一次提交需要配置账号 或者直接通过终端修改 git con

    2024年01月20日
    浏览(35)
  • @Lazy注解使用说明

    在Spring框架中,@Lazy注解是一个重要的注解,用于控制bean的延迟加载。本文将详细介绍@Lazy注解的作用和使用场景,并提供示例以便更好地理解其用法。 作用 @Lazy注解主要用于控制Spring容器中的bean的加载时机。默认情况下,Spring容器在启动时会初始化所有的bean,这可能会导

    2024年02月06日
    浏览(47)
  • ModHeader插件使用说明

    当我们访问一个地址(请求某个服务器站点)时通常会带有请求头(Request Headers)和请求体(Request Body),当然有时候也不需要带请求体。 比如我们访问百度,利用开发者工具就可以看到请求头里的很多信息,比如, Upgrade-Insecure-Requests :是一个请求首部,用来向服务器端发

    2023年04月08日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包