0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在工程的XDC文件里加入GT位置约束

FPGA技术江湖 来源:XILINX开发者社区 作者:XILINX开发者社区 2022-03-18 11:10 次阅读

Step 1

首先,打开最新版本的Vivado(当前为2021.2):

1. 新建一个Vivado工程,将器件直接选定为board – VPK120。

2. 接着新加入一个以太网IP core,选好自己所需要的IP配置,本文以MRMAC IP为例,并在以太网IP的GT配置那页,选择GTM和156.25MHz时钟

3. 然后就可以右键点击IP,选择Open IP Example Design…

Step 2

例子工程产生完毕之后,在工程的XDC文件里加入GT位置约束和参考时钟位置约束,示例如下:

set_property PACKAGE_PIN AF45 [get_ports gt_ref_clk_p]

set_property PACKAGE_PIN BG52 [get_ports {gt_rxp_in[0]}]

1. 这个参考时钟是VPK120板上自带的,可进行配置,产生不同频率的参考时钟。

2. 另外,VPK120板上有2个QSFP-DD光模块插槽,此处GT的(管脚)位置约束,正是为了将GT选在其中一个光模块插槽上面,方便之后的硬件上面连接使用。

Step 3

等该例子工程跑完综合,实现,并产生bit文件之后,请将PDI文件加载到你的VPK120里面:

1. 工程上板之后,接下来第一步,我们要利用IP内部自带的in-system IBERT,先确认链路是否畅通,能正常工作。点击Serial I/O Link这一页里面的create links,将Quad_203里的4路GT全部添加为New Links。

a.全部设为Near-End PCS(如果外部光模块和光纤已经都接上了,此处可选None;建议先做Near-End PCS,再做None)。

b.TX和RX Pattern,全部设为PRBS31(一般8B10B数据应用选择PRBS7,而64B66B数据则选PRBS31)。

c.分别做下整个的TX Reset和RX Reset。

d.检查PLL锁定,线速率和TX/RXUSERCLK频率正确,Bits增加,Errors保持,以及BER不断减小,即可确认链路工作正常。

84087cf4-a668-11ec-952b-dac502259ad0.png

e.如果PLL无法锁定,请确认参考时钟频率是否已经设置正确,以及之前添加的GT和时钟位置约束是否已经正确起效。

f.如果PLL锁定,线速率也正确,但是误码不断增加,尤其是在loopback关闭的模式中,请先按照GT的调试过程,如调节TX预加重等,调好板上SI,确保没有误码。

2. 链路OK之后,将TX/RX Pattern改回User Design,并依次做一下TX Reset和RX Reset。然后我们就可以通过读取MRMAC内部寄存器,确认以太网的link是否已经能成功连接,起来工作了。

a.打开xsdb,然后connect。

b.再ta 1,选择Versal xcvp1202。

c.最后就可以读取MRMAC寄存器状态了,下面给出了一组读写寄存器的示例,在做了简单的复位后,直接读了下以太网的RX状态。

d.这里提供的是一组读写寄存器命令的示例,请按照自己的IP配置,读写相应的寄存器。寄存器具体定义,可以在mrmac_registers.csv文件里面找到(注意下面地址经过十六进制和十进制的转换)。

mwr -force 2752053252 0x00000FFF
mwr -force 2752053256 0x40000A24
mwr -force 2752053264 0x00000033
mwr -force 2752053260 0x00000C03
mwr -force 2752053456 0x00000000
mwr -force 2752057552 0x00000000
mwr -force 2752061648 0x00000000
mwr -force 2752065744 0x00000000
mwr -force 2752053252 0x00000000
mwr -force 2752053292 0x00000001
mwr -force 2752512000 0x00000F02
mwr -force 2752512000 0x00000002
mrd -force 2752577544
mwr -force 2752055108 0xFFFFFFFF
mwr -force 2752059204 0xFFFFFFFF
mwr -force 2752063300 0xFFFFFFFF
mwr -force 2752067396 0xFFFFFFFF
mrd -force 2752055108
mrd -force 2752059204
mrd -force 2752063300
mrd -force 2752067396

e.最后,可以得到正确结果如下,说明MRMAC已经link up了:

xsdb% mrd -force 2752055108

A4090744: 00010007

原文标题:如何在VPK120上实现MRMAC以太网IP

文章出处:【微信公众号:FPGA技术江湖】欢迎添加关注!文章转载请注明出处。

审核编辑:彭菁

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 以太网
    +关注

    关注

    40

    文章

    5419

    浏览量

    171596
  • 光模块
    +关注

    关注

    77

    文章

    1261

    浏览量

    58990
  • Vivado
    +关注

    关注

    19

    文章

    812

    浏览量

    66470

原文标题:如何在VPK120上实现MRMAC以太网IP

文章出处:【微信号:HXSLH1010101010,微信公众号:FPGA技术江湖】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    无法在XDC文件中设置maxdelay约束

    XDC文件中设置maxdelay约束。 (摘自ug911:MAXDELAY:Vivado Design Suite在XDC中不支持此约束。)
    发表于 10-25 15:17

    关于XDC约束文件,你需要知道的几点

    Constraints)之外,还加入了XILINX FPGA特有的位置物理约束等特性。以下是在实际使用中,经历过一些经验教训后,体会的几点我们在组织XDC
    发表于 02-08 02:10 5211次阅读

    FPGA设计约束技巧之XDC约束之I/O篇(下)

    XDC中的I/O约束虽然形式简单,但整体思路和约束方法却与UCF大相径庭。加之FPGA的应用特性决定了其在接口上有多种构建和实现方式,所以从UCF到XDC的转换过程中,最具挑战的可以说
    发表于 11-17 19:01 7393次阅读
    FPGA设计<b class='flag-5'>约束</b>技巧之<b class='flag-5'>XDC</b><b class='flag-5'>约束</b>之I/O篇(下)

    XDC的时钟约束及优势

    Xilinx©的新一代设计套件 Vivado 中引入了全新的约束文件 XDC,在很多规则和技巧上都跟上一代产品 ISE 中支持的 UCF 大不相同,给使用者带来许多额外挑战。Xilinx 工具专家
    发表于 11-18 03:59 3601次阅读

    XDC约束及物理约束的介绍

    观看视频,了解和学习有关XDC约束,包括时序,以及物理约束相关知识。
    的头像 发表于 01-07 07:10 6202次阅读
    <b class='flag-5'>XDC</b><b class='flag-5'>约束</b>及物理<b class='flag-5'>约束</b>的介绍

    XDC时钟约束的三种基本语法

    XDC 是 Xilinx Design Constraints 的简写,但其基础语法来源于业界统一的约束规范SDC。XDC 在本质上就是 Tcl 语言,但其仅支持基本的 Tcl 语法如变量、列表
    的头像 发表于 01-30 17:29 9654次阅读

    Vivado IDE全面了解XDC文件约束顺序

    Vivado IDE约束管理器将任何已编辑的约束保存回XDC文件中的原始位置,但不会保存在Tcl脚本中。 任何新
    的头像 发表于 11-13 10:53 4174次阅读
    Vivado IDE全面了解<b class='flag-5'>XDC</b><b class='flag-5'>文件</b>的<b class='flag-5'>约束</b>顺序

    Vivado中XDC文件约束顺序

    很对人在使用Vivado时喜欢使用多个约束文件对整个工程进行约束,同时Vivado允许设计者使用一个或多个约束
    的头像 发表于 10-13 16:56 6896次阅读

    Vivado设计约束功能概述

    XDC约束可以用一个或多个XDC文件,也可以用Tcl脚本实现;XDC文件或Tcl脚本都要
    的头像 发表于 06-30 11:27 3767次阅读

    XDC约束技巧之时钟篇

    Xilinx的新一代设计套件Vivado中引入了全新的约束文件 XDC,在很多规则和技巧上都跟上一代产品 ISE 中支持的 UCF 大不相同,给使用者带来许多额外挑战。Xilinx 工具专家告诉你,其实用好
    的头像 发表于 03-28 09:51 2500次阅读

    XDC约束技巧之CDC篇

    上一篇《XDC 约束技巧之时钟篇》介绍了 XDC 的优势以及基本语法,详细说明了如何根据时钟结构和设计要求来创建合适的时钟约束。我们知道 XDC
    的头像 发表于 04-03 11:41 2060次阅读

    XDC约束技巧之I/O篇(上)

    XDC 约束技巧之时钟篇》中曾对 I/O 约束做过简要概括,相比较而言,XDC 中的 I/O 约束虽然形式简单,但整体思路和
    的头像 发表于 04-06 09:53 1338次阅读

    XDC约束技巧之I/O篇(下)

    继《XDC 约束技巧之 I/O 篇(上)》详细描述了如何设置 Input 接口 约束后,我们接着来聊聊怎样设置 Output 接口约束,并分析 UCF 与
    的头像 发表于 04-10 11:00 1121次阅读

    何在Vivado中添加时序约束呢?

    今天介绍一下,如何在Vivado中添加时序约束,Vivado添加约束的方法有3种:xdc文件、时序约束
    的头像 发表于 06-26 15:21 4123次阅读
    如<b class='flag-5'>何在</b>Vivado中添加时序<b class='flag-5'>约束</b>呢?

    SMT32的HEX文件里加入固件版本的方法

    SMT32的HEX文件里加入固件版本的方法
    的头像 发表于 09-18 15:34 684次阅读
    SMT32的HEX<b class='flag-5'>文件</b><b class='flag-5'>里加入</b>固件版本的方法