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…...
告别手改脚本!用CANoe Panel面板做个变量控制台,测试效率翻倍
告别手改脚本!用CANoe Panel面板打造智能变量控制台 在车载网络测试领域,效率提升往往隐藏在那些被忽视的日常操作细节中。当测试工程师频繁打开CAPL脚本修改超时阈值、调整诊断ID或切换测试模式时,不仅打断了工作流,更在团队协作…...
基于WPF开发桌面AI助手:架构设计与实现详解
1. 项目概述:一个开源的WPF桌面AI助手 最近在GitHub上看到一个挺有意思的项目,叫“MayDay-wpf/AIBotPublic”。光看名字,可能有点摸不着头脑,但点进去研究一下,你会发现这其实是一个用WPF(Windows Present…...
OpenCore Legacy Patcher终极指南:让老Mac免费运行最新macOS的完整教程
OpenCore Legacy Patcher终极指南:让老Mac免费运行最新macOS的完整教程 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher OpenCore Legacy Patcher是…...
构建动态技能图谱:从数据模型到自动化可视化的完整实践
1. 项目概述:一个技能图谱的诞生最近在GitHub上看到一个挺有意思的项目,叫dortort/skills。乍一看,这只是一个个人仓库,但点进去你会发现,它远不止是一个简单的代码集合。它更像是一张动态的、可视化的个人技能地图&am…...
如何免费高效优化电脑性能:UXTU终极调优指南
如何免费高效优化电脑性能:UXTU终极调优指南 【免费下载链接】Universal-x86-Tuning-Utility Unlock the full potential of your Intel/AMD based device. 项目地址: https://gitcode.com/gh_mirrors/un/Universal-x86-Tuning-Utility Universal x86 Tuning…...
Apache Burr框架:构建可观测有状态数据应用的核心原理与实践
1. 项目概述:一个用于构建和评估数据产品的Python框架如果你正在处理数据密集型应用,比如推荐系统、个性化广告或者任何需要根据用户行为实时调整策略的场景,你肯定遇到过这样的困境:模型训练和离线评估做得再好,一旦上…...
开源技能安全仪表盘:从架构解析到CI/CD集成的DevSecOps实践
1. 项目概述:一个面向技能开发者的安全仪表盘最近在折腾一些智能设备上的技能开发,发现一个挺普遍但容易被忽视的问题:我们花大量时间在功能实现和用户体验上,但技能本身的安全性评估,往往只能等到上线后,通…...
Nixtla时间序列预测生态:从统计模型到深度学习的统一实践
1. 项目概述:时间序列预测的“瑞士军刀”如果你正在处理时间序列数据,无论是销售预测、服务器监控、还是能源消耗分析,那么你很可能听说过或正在使用一些经典的库,比如statsmodels、prophet,或者更现代的深度学习框架。…...
CI/CD安全最佳实践:保护软件交付流程
CI/CD安全最佳实践:保护软件交付流程 一、CI/CD安全最佳实践概述 1.1 CI/CD安全最佳实践的定义 CI/CD安全最佳实践是指在持续集成和持续部署流程中实施的安全策略和措施。它涵盖代码提交、构建、测试、部署等各个阶段的安全防护。 1.2 CI/CD安全最佳实践的价值 安全…...
基于RAG与向量数据库的智能信息管理系统(IIMS)架构与实现
1. 项目概述:当AI成为你的“第二大脑”最近在折腾一个挺有意思的项目,叫“IIMS-By-AI”。乍一看这个标题,可能有点摸不着头脑,但拆解一下就能明白它的野心:IntelligentInformationManagementSystem, By AI。…...
