Versal - 基础4(VD100+Versal IBERT)

1. 简介

在之前的一篇博文中,我分享了在 Zynq Ultrascale+ MPSoC 中使用 IBERT 的方法。

《Vivado - 集成眼图分析仪 + Serial I/O IBERT + 误码率_vivado ibert-CSDN博客》

本文进一步探讨 Versal 中使用 IBERT 的方法。

2. 硬件平台

芯片:XCVE2302-SFVA784-1LP-E-S,包含两个 GT Bank。

2.1 VD100

2.1.1 时钟梳理

按照原理图,确定 Clock Sources 和 Destinations。

Source:
------------------------------------------------------------------------
G4(SiT9121AI-2B1-33E156.250000) -> caps -> SFP_CLK_P(N) -> U2A(conn) ->|Destinations(XCVE2302-SFVA784-1LP-E-S)(U1):
---------------------------------------------------
|-> U24A.B9(104_CLK0_P) -> U1.H7(GTYP_REFCLKP0_104)
|-> U24A.B8(104_CLK0_N) -> U1.H6(GTYP_REFCLKN0_104)

2.1.2 SFP 连接器

1)实物图

  • SFP1,Bank 104,ch0
  • SFP2,Bank 104,ch1

2)Bank 104 原理图

2.2 建立工程

2.2.1 打开示例模板

与 Zynq MPSoC 不同,这里直接新建示例工程即可。

选择目录和器件: 

2.2.2 选择 GT Quad

IMPORTANT: The Versal IBERT example design retains the default link coupling value (AC coupling) provided by the Transceiver Wizard instances in this design. It is up to you, the user, to ensure that the link coupling mode set in the Transceiver Wizard IP instance(s) in this example design matches the link coupling mode used on your board to prevent potential damage to your device. For example, when using DC coupling on the link the internal AC coupling cap needs to be enabled.

重要提示:Versal IBERT 示例设计保留了该设计中收发器向导实例提供的默认链路耦合值(AC 耦合)。用户需要确保该示例设计中收发器向导 IP 实例设置的链路耦合模式与板上使用的链路耦合模式匹配,以防止设备潜在损坏。例如,当在链路上使用 DC 耦合时,需要启用内部 AC 耦合电容。

2.2.3 添加 SFP 使能

对应的管教绑定如下: 

set_property PACKAGE_PIN F23   [get_ports {CLK_IN_D_0_clk_p[0]}]
set_property IOSTANDARD LVDS15 [get_ports {CLK_IN_D_0_clk_p[0]}]set_property PACKAGE_PIN D26     [get_ports {sfp0_disable[0]}]
set_property IOSTANDARD LVCMOS15 [get_ports {sfp0_disable[0]}]set_property PACKAGE_PIN D25     [get_ports {sfp1_disable[0]}]
set_property IOSTANDARD LVCMOS15 [get_ports {sfp1_disable[0]}]

2.3 下载和调试

2.3.1 下载 PDI

下载 PDI 后,会出现 IBERT UI:

与 Zynq MPSoC 不同的是,Quad 中 4 个通道默认已建立连接。下图为 ZCU106 的 GUI:

2.3.2 创建 Links 并配置

2)默认 Status 已经建立连接。

可以观察到 PLL 已经锁定。

3)配置 Patterns 和回环模式

  • TX Pattern:PRBS 31
  • RX Pattern:PRBS 31
  • Loopback Mode:None(通过光纤物理回环)

可以看到 Status 状态变为 No link。

4)使能 SFP。

使能后,可以看到对应的 SFP 已经正常链接。 

2.4 链路扫描参数

SFP2 扫描结果如下:

SFP1 扫描结果如下: 

即使将 SFP1 的回环模式改为 Near-End PMA,也是类似这个结果。原因未知。

3. 其他

1)Warning

Warning: Starting in Vivado 2024.2, the Transceiver Wizard Subsystem IP will be the primary transceiver design tool for Versal devices. AMD IP and IPI support is limited in Vivado 2024.1. To use the Transceiver Wizard Subsystem properly in 2024.1, please refer to AR#000036251 

Versal GT wizard migration guide

Versal GT wizard migration guidehttps://adaptivesupport.amd.com/s/article/000036251?language=en_UShttps://adaptivesupport.amd.com/s/article/000036251?language=en_UShttps://adaptivesupport.amd.com/s/article/000036251?language=en_UShttps://adaptivesupport.amd.com/s/article/000036251?language=en_UShttps://adaptivesupport.amd.com/s/article/000036251?language=en_US从 Vivado 2024.1 开始,新的 Versal 自适应 SoC 收发器向导子系统 IP 将可供用户使用。在所有 Versal 器件的 IP 库中找到的这个新向导重新将收发器设计的重点放在 RTL 上,将更传统的 RTL 可实例化包装器与父 IP 所需的智能桥接起来,以干净、稳健地共享单个 GT Quad 或跨越多个 Quad。

4. 总结

本文分享在 VD100 板卡上进行眼图测量的示例。

Versal 与 MPSoC 的差异:

  • MPSoC 使用便捷性优于 Versal。
  • Versal 需要更多的配置才能工作。
  • Versal 中没有 MPSoC 中查找 Quad 的方法。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/894295.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《HelloGitHub》第 106 期

兴趣是最好的老师,HelloGitHub 让你对编程感兴趣! 简介 HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。 github.com/521xueweihan/HelloGitHub 这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Python、…

英语语法 第一天

I’m a student. 我是个学生 我是个新东方的学生 I’m a student of New Oriental School 我爱你 I love you 我在心中爱你 I love you in my heart. 这是一朵花 This is a flower 这是一朵在公园里的花 This is a flower in the park.(修饰部分在修饰词后面) 主干…

Day50:字典的合并

在 Python 中,字典是一个可变的数据类型,经常需要将多个字典合并成一个字典。合并字典的方式有多种,今天我们将学习几种常见的方法。 1. 使用 update() 方法合并字典 update() 方法可以用来将一个字典中的键值对添加到另一个字典中。如果目…

USB鼠标的数据格式

USB鼠标的数据格式由HID&#xff08;Human Interface Device&#xff09;协议定义&#xff0c;通常包含3个字节的标准数据&#xff0c;具体格式如下&#xff1a; 字节内容描述第1字节按键状态Bit 0: 左键按下&#xff08;1&#xff09;<br>Bit 1: 右键按下&#xff08;1…

为AI聊天工具添加一个知识系统 之79 详细设计之20 正则表达式 之7

本文要点 要点 “正则表达式” 本来是计算机科学计算机科学的一个概念。本项目将它推广&#xff08;扩张&#xff09;到认知科学的“认知范畴”概念&#xff0c; 聚合&#xff08;收敛&#xff09;到 神经科学 的“神经元”概念。 做法是&#xff1a;用reg 来系统化定义认知…

Spring RESTful API 设计与实现

Spring RESTful API的设计与实现极大地提升了开发效率和系统可维护性,通过遵循RESTful设计原则,使得API结构清晰、行为一致,便于扩展和维护。它在构建微服务架构中扮演着核心角色,支持松耦合的通信,同时通过标准的HTTP协议和数据格式增强了系统的互操作性。结合Spring Sec…

“新月之智”智能战术头盔系统(CITHS)

新月人物传记&#xff1a;人物传记之新月篇-CSDN博客 相关文章链接&#xff08;更新&#xff09;&#xff1a; 星际战争模拟系统&#xff1a;新月的编程之道-CSDN博客 新月智能护甲系统CMIA--未来战场的守护者-CSDN博客 目录 一、引言 二、智能头盔控制系统概述 三、系统架…

猿人学web 19题(js逆向)

这题直接点击翻页抓包&#xff0c;然后获取seesion ID请求即可 求和代码 import requestssession requests.Session() cookies {sessionid:eao9i00r8pt4xu6uzzx2k01ttqn51yc9} urlhttps://match.yuanrenxue.cn/api/match/19?page sum0 for i in range(1,6):response sess…

c语言:编译和链接(详解)

前言 要将编译和链接&#xff0c;就不得不提及编译器是如何运作的&#xff0c;虽然这部分知识是针对于要创造编译器和创作语言的人所需要清楚的&#xff0c;但作为c语言的学习者也需要了解一下&#xff0c;修炼内功&#xff0c;尤其是对于想学习c的人而言。 编译器的运作过程…

如何解决Unit sshd.service could not be found

出现 Unit sshd.service could not be found 错误时&#xff0c;通常是因为系统中未安装 OpenSSH 服务、服务名称不匹配或系统未使用 systemd 管理服务。以下是详细的解决方案&#xff1a; 一、确认 SSH 服务是否安装 1. 检查是否已安装 OpenSSH 服务器 不同 Linux 发行版的包…

积分和微分的区别

积分&#xff1a; 积分是由微小量求大量&#xff0c;由微观的数据求得整体的状况。运算是对总量求和。 微分&#xff1a; 微分是由大量求微小量&#xff0c;反应微观的状况&#xff0c;运算是伴随着求导。 峰值检测电路: 上图检测的误差主要来自与二极管的正向导通电压降&am…

OVS-DPDK

dpdk介绍及应用 DPDK介绍 DPDK&#xff08;Data Plane Development Kit&#xff09;是一组快速处理数据包的开发平台及接口。有intel主导开发&#xff0c;主要基于Linux系统&#xff0c;用于快速数据包处理的函 数库与驱动集合&#xff0c;可以极大提高数据处理性能和吞吐量&…

【Go语言圣经】第六节:方法

第六章&#xff1a;方法 6.1 方法声明 在函数声明时&#xff0c;在其名字之前放上一个变量&#xff0c;这就是声明了变量对应类型的一个方法&#xff0c;相当于为这种类型定义了一个独占的方法。 下例为 Point 类型声明了计算两个点之间距离的方法&#xff1a; package mai…

matlab的.mat文件怎么把表格中的值全部设置为空

在MATLAB中&#xff0c;如果您想要将.mat文件中的表格&#xff08;table&#xff09;中的所有值设置为空&#xff0c;您可以先加载该.mat文件&#xff0c;然后修改表格中的数据&#xff0c;最后保存修改后的表格。以下是一个具体的步骤示例&#xff1a; 加载.mat文件&#xff1…

亚博microros小车-原生ubuntu支持系列:18 Cartographer建图

Cartographer简介 Cartographer是Google开源的一个ROS系统支持的2D和3D SLAM&#xff08;simultaneous localization and mapping&#xff09;库。基于图优化&#xff08;多线程后端优化、cere构建的problem优化&#xff09;的方法建图算法。可以结合来自多个传感器&#xff0…

安卓(android)实现注册界面【Android移动开发基础案例教程(第2版)黑马程序员】

一、实验目的&#xff08;如果代码有错漏&#xff0c;可查看源码&#xff09; 1.掌握LinearLayout、RelativeLayout、FrameLayout等布局的综合使用。 2.掌握ImageView、TextView、EditText、CheckBox、Button、RadioGroup、RadioButton、ListView、RecyclerView等控件在项目中的…

Java进阶six junit单元测试,反射,注解,动态代理

前言 Java进阶课程的第六篇&#xff0c;也是最后一篇&#xff0c;junit单元测试,反射,注解,动态代理相关内容 包含知识点 junit单元测试 反射 1.内部类Student&#xff1a; 包含私有/公共字段和方法 包含默认构造器和私有构造器 2.获取Class对象的三种方式&#xff1a; .…

程序代码篇---Python随机数

文章目录 前言Python随机数函数random.random()random.randint(a,b)random.randrange(start,stop[,step])random.uniform(a,b)random.choice(sequence)random.sample(population,k)random.shuffle(x[,random])random.seed(aNone) 总结 前言 以上就是今天要讲的内容&#xff0c…

爬虫基础(四)线程 和 进程 及相关知识点

目录 一、线程和进程 &#xff08;1&#xff09;进程 &#xff08;2&#xff09;线程 &#xff08;3&#xff09;区别 二、串行、并发、并行 &#xff08;1&#xff09;串行 &#xff08;2&#xff09;并行 &#xff08;3&#xff09;并发 三、爬虫中的线程和进程 &am…

自签证书的dockerfile中from命令无法拉取镜像而docker的pull命令能拉取镜像

问题现象&#xff1a; docker pull images拉取镜像正常 dockerfile中的from命令拉取镜像就会报出证书错误。报错信息如下&#xff1a; [bjxtbwj-kvm-test-jenkins-6-243 ceshi_dockerfile]$ docker build . [] Building 0.4s (3/3) FINISHED …