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 并配置
1)创建 Links 的方法与 Zynq 一致:

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_US
https://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 的方法。

相关文章:
Versal - 基础4(VD100+Versal IBERT)
1. 简介 在之前的一篇博文中,我分享了在 Zynq Ultrascale MPSoC 中使用 IBERT 的方法。 《Vivado - 集成眼图分析仪 Serial I/O IBERT 误码率_vivado ibert-CSDN博客》 本文进一步探讨 Versal 中使用 IBERT 的方法。 2. 硬件平台 芯片:XCVE2302-SF…...
vue2和vue3路由封装及区别
Vue 2 和 Vue 3 在路由封装方面有一些区别,主要体现在 Vue Router 版本的升级(Vue Router 3 -> Vue Router 4)上。下面我们来对比一下 Vue 2 和 Vue 3 在路由封装上的主要区别,并提供相应的代码示例。 1. Vue 2 路由封装&#…...
Windows 系统下使用 Ollama 离线部署 DeepSeek - R1 模型指南
引言 随着人工智能技术的飞速发展,各类大语言模型层出不穷。DeepSeek - R1 凭借其出色的语言理解和生成能力,受到了广泛关注。而 Ollama 作为一款便捷的模型管理和部署工具,能够帮助我们轻松地在本地环境中部署和使用模型。本文将详细介绍如…...
性能测试网络风险诊断有哪些?
目录 一、网络定位分析手段 二、sar命令 三、netstat命令 以下是几种常见的网络风险诊断方法 网络连通性检查 带宽与延迟测量 丢包率分析 网络拓扑结构审查 安全设备影响评估 协议层面上的优化 负载均衡器效能检验 云化服务架构下的特殊考量 系统应用之间的交换&am…...
八股文 (一)
文章目录 项目地址一、前端1.1 大文件上传,预览1.2 首页性能优化1.2 流量染色,灰度发布1.3 Websock心跳机制,大数据实时数据优化1.4 Gpu 加速 fps优化1.5 echarts包大小优化和组件封装1.6 前端监控系统1.7 超大虚拟列表卡顿1. 实现2. 相关问题(1) 什么是虚拟化列表,为什么要…...
TVM调度原语完全指南:从入门到微架构级优化
调度原语 在TVM的抽象体系中,调度(Schedule)是对计算过程的时空重塑。每一个原语都是改变计算次序、数据流向或并行策略的手术刀。其核心作用可归纳为: 优化目标 max ( 计算密度 内存延迟 指令开销 ) \text{优化目标} \max…...
c语言进阶(简单的函数 数组 指针 预处理 文件 结构体)
c语言补充 格式 void函数头 {} 中的是函数体 sum函数名 () 参数表 #include <stdio.h>void sum(int begin, int end) {int i;int sum 0;for (i begin ; i < end ; i) {sum i;}printf("%d到%d的和是%d\n", begin, end, sum); …...
终极版已激活!绿话纯净,打开即用!!!
今天我想和大家聊聊一个非常实用的工具——视频转换大师最终版。 视频转换大师终极版,堪称一款全能型的视频制作神器,集视频转换与编辑功能于一体。它搭载的视频增强器技术,能够最大限度地保留原始视频质量,甚至还能实现质量的进…...
Vue.js 什么是 Composition API?
Vue.js 什么是 Composition API? 今天我们来聊聊 Vue 3 引入的一个重要特性:组合式 API(Composition API)。如果你曾在开发复杂的 Vue 组件时感到代码难以维护,那么组合式 API 可能正是你需要的工具。 什么是组合式 …...
MySQL高可用
一、mysql路由 1.利用路由器的连接路由特性,用户可以编写应用程序来连接到路由器,并令路由器使用响应的路由策略来处理连接来使其连接到正确的mysql数据库服务器 2.mysql route的部署方式 需要在所有数据库主机之外再打开一台主机mysql-router 配置mysql…...
30.Word:设计并制作新年贺卡以及标签【30】
目录 NO1.2 NO3邮件合并-信函 NO4邮件合并-标签 NO1.2 另存为/F12:考生文件夹:Word.docx布局→页面设置对话框→页边距:上下左右→纸张:宽度/高度(先调页边距🆗)设计→页面颜色→填充效果→…...
Flink2支持提交StreamGraph到Flink集群
最近研究Flink源码的时候,发现Flink已经支持提交StreamGraph到集群了,替换掉了原来的提交JobGraph。 新增ExecutionPlan接口,将JobGraph和StreamGraph作为实现。 Flink集群Dispatcher也进行了修改,从JobGraph改成了接口Executio…...
大模型本地化部署(Ollama + Open-WebUI)
文章目录 环境准备下载Ollama模型下载下载Open-WebUI 本地化部署的Web图形化界面本地模型联网查询安装 Docker安装 SearXNG本地模型联网查询 环境准备 下载Ollama 下载地址:Ollama网址 安装完成后,命令行里执行命令 ollama -v查看是否安装成功。安装成…...
C++哈希(链地址法)(二)详解
文章目录 1.开放地址法1.1key不能取模的问题1.1.1将字符串转为整型1.1.2将日期类转为整型 2.哈希函数2.1乘法散列法(了解)2.2全域散列法(了解) 3.处理哈希冲突3.1线性探测(挨着找)3.2二次探测(跳…...
IME关于输入法横屏全屏显示问题-Android14
IME关于输入法横屏全屏显示问题-Android14 1、输入法全屏模式updateFullscreenMode1.1 全屏模式判断1.2 全屏模式布局设置 2、应用侧关闭输入法全屏模式2.1 调用输入法的应用设置flag2.2 继承InputMethodService.java的输入法应用覆盖onEvaluateFullscreenMode方法 InputMethod…...
网络工程师 (11)软件生命周期与开发模型
一、软件生命周期 前言 软件生命周期,也称为软件开发周期或软件开发生命周期,是指从软件项目的启动到软件不再被使用为止的整个期间。这个过程可以细分为多个阶段,每个阶段都有其特定的目标、任务和产出物。 1. 问题定义与需求分析 问题定义…...
【人工智能】基于Python的机器翻译系统,从RNN到Transformer的演进与实现
《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 机器翻译(Machine Translation, MT)作为自然语言处理领域的重要应用之一,近年来受到了广泛的关注。在本篇文章中,我们将详细探讨如何使…...
网络工程师 (12)软件开发与测试
一、软件设计 (一)定义与目的 软件设计是从软件需求出发,设计软件的整体结构、功能模块、实现算法及编写代码的过程,旨在确定系统如何完成预定任务。其目标是确保目标系统能够抽象、普遍地完成预定任务,并为后续的软件…...
3.Spring-事务
一、隔离级别: 脏读: 一个事务访问到另外一个事务未提交的数据。 不可重复读: 事务内多次查询相同条件返回的结果不同。 幻读: 一个事务在前后两次查询同一个范围的时候,后一次查询看到了前一次查询没有看到的行。 二…...
Python字典详解:从入门到实践
Python字典详解:从入门到实践 字典(Dictionary)是Python中最重要且最常用的数据结构之一。本文将深入讲解字典的特性、操作方法和实际应用案例。 1. 字典简介 字典是可变的、无序的键值对集合,使用{}创建。每个元素由key: valu…...
Ubuntu系统下交叉编译openssl
一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机:Ubuntu 20.04.6 LTSHost:ARM32位交叉编译器:arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...
LOOI机器人的技术实现解析:从手势识别到边缘检测
LOOI机器人作为一款创新的AI硬件产品,通过将智能手机转变为具有情感交互能力的桌面机器人,展示了前沿AI技术与传统硬件设计的完美结合。作为AI与玩具领域的专家,我将全面解析LOOI的技术实现架构,特别是其手势识别、物体识别和环境…...
FFmpeg avformat_open_input函数分析
函数内部的总体流程如下: avformat_open_input 精简后的代码如下: int avformat_open_input(AVFormatContext **ps, const char *filename,ff_const59 AVInputFormat *fmt, AVDictionary **options) {AVFormatContext *s *ps;int i, ret 0;AVDictio…...
[拓扑优化] 1.概述
常见的拓扑优化方法有:均匀化法、变密度法、渐进结构优化法、水平集法、移动可变形组件法等。 常见的数值计算方法有:有限元法、有限差分法、边界元法、离散元法、无网格法、扩展有限元法、等几何分析等。 将上述数值计算方法与拓扑优化方法结合&#…...
【Ftrace 专栏】Ftrace 参考博文
ftrace、perf、bcc、bpftrace、ply、simple_perf的使用Ftrace 基本用法Linux 利用 ftrace 分析内核调用如何利用ftrace精确跟踪特定进程调度信息使用 ftrace 进行追踪延迟Linux-培训笔记-ftracehttps://www.kernel.org/doc/html/v4.18/trace/events.htmlhttps://blog.csdn.net/…...
Linux中INADDR_ANY详解
在Linux网络编程中,INADDR_ANY 是一个特殊的IPv4地址常量(定义在 <netinet/in.h> 头文件中),用于表示绑定到所有可用网络接口的地址。它是服务器程序中的常见用法,允许套接字监听所有本地IP地址上的连接请求。 关…...
河北对口计算机高考MySQL笔记(完结版)(2026高考)持续更新~~~~
MySQL 基础概念 数据(Data):文本,数字,图片,视频,音频等多种表现形式,能够被计算机存储和处理。 **数据库(Data Base—简称DB):**存储数据的仓库…...
Flask和Django,你怎么选?
Flask 和 Django 是 Python 两大最流行的 Web 框架,但它们的设计哲学、目标和适用场景有显著区别。以下是详细的对比: 核心区别:哲学与定位 Django: 定位: "全栈式" Web 框架。奉行"开箱即用"的理念。 哲学: "包含…...
