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

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

3天内不再提示

如何用ChipScopy创建并运行link sweep

XILINX开发者社区 来源:XILINX开发者社区 作者:Simon Li 2022-07-10 15:45 次阅读

本文作者:赛灵思工程师 Simon Li

这个Demo将介绍如何用ChipScopy创建并运行link sweep。

搭建环境:

1. Python 3.8 安装和虚拟环境的创建,以及example的获取可以参考: Github-link

https://xilinx.github.io/chipscopy/2021.2/chipscopy_installation.html

2. 激活虚拟环境打开jupyter notebook:

b01cbb46-f79b-11ec-ba43-dac502259ad0.png

3. 打开Power shell通过运行以下命令打开jupyter notebook:

a. Change the directory to the installed python dir:

cd c:xilinxpython

b. Activate virtual environment, enter the following:

venvscriptsactivate

c: start jupyter

jupyter notebook

b0376fea-f79b-11ec-ba43-dac502259ad0.png

4. 以下link将会用默认浏览器打开

b0461c3e-f79b-11ec-ba43-dac502259ad0.png

5. 连接Type C到VCK190,连接bank105的Ch2/3到zSFP,开启电源

b05ce428-f79b-11ec-ba43-dac502259ad0.png

在ChipsCopy的例子里查看需要修改的代码:

(需要的附件请点击阅读原文进入官网文章进行下载)

b0968f34-f79b-11ec-ba43-dac502259ad0.png

1. 双击 the/chipscopy-examples/ibert/versal_gty/vck190_link_and_eye_scan.ipynb,

确认 从 aliases.py 导入需要ports。

b0a9b168-f79b-11ec-ba43-dac502259ad0.png

b0beac30-f79b-11ec-ba43-dac502259ad0.png

2. 如果aliases.py没有定义,也需要在aliases.py里加上。

b0dfd0cc-f79b-11ec-ba43-dac502259ad0.png

b0f1b47c-f79b-11ec-ba43-dac502259ad0.png

3. 最主要的Link sweep module, 请参考demo的 step 7。

Demo step by step:

Step 1. 初始化,单击run运行step 1

b1364402-f79b-11ec-ba43-dac502259ad0.png

Expected Output

b14d2406-f79b-11ec-ba43-dac502259ad0.png

Step 2. 创建一个local或者remote session:

b15eb59a-f79b-11ec-ba43-dac502259ad0.png

Note: 如果选择localhost, 可能看到以下错误。可以在HW manager里尝试连一下JTAG,然后再关掉hw_server。

b1884b76-f79b-11ec-ba43-dac502259ad0.png

b196237c-f79b-11ec-ba43-dac502259ad0.png

Expected output

b1a9724c-f79b-11ec-ba43-dac502259ad0.png

Step 3. 确保目录正确,并下载example design的PDI。

b1c7d7d2-f79b-11ec-ba43-dac502259ad0.png

Expected output

b1d88d34-f79b-11ec-ba43-dac502259ad0.png

Step 4. 找到并建立IBERT core。

b1e8d824-f79b-11ec-ba43-dac502259ad0.png

Expected output

b387bdd0-f79b-11ec-ba43-dac502259ad0.png

Step 5. 打印IBERT core的结构。

b39e77c8-f79b-11ec-ba43-dac502259ad0.png

b3ae641c-f79b-11ec-ba43-dac502259ad0.png

Step 6. 创建bank 105的CH2/CH3(外部光纤环回)。

b3cdb02e-f79b-11ec-ba43-dac502259ad0.png

Step 7.设置PRBS31,Loopback=None, 配置sweep parameters. 将scan plots按顺序画出并显示. 其中在scan plot的上方有一个Summary,可以看到相关参数设置以及扫描结果。

b3f13378-f79b-11ec-ba43-dac502259ad0.png

b421c27c-f79b-11ec-ba43-dac502259ad0.png

b44074c4-f79b-11ec-ba43-dac502259ad0.png

b45c0978-f79b-11ec-ba43-dac502259ad0.png

b470311e-f79b-11ec-ba43-dac502259ad0.png

b482a416-f79b-11ec-ba43-dac502259ad0.png

b48fdfaa-f79b-11ec-ba43-dac502259ad0.png

b4aa9480-f79b-11ec-ba43-dac502259ad0.png

Known issue: 横坐标的UI还不是 -0.5UI~0.5UI,BER 始终是1e-07,和设置还不一致。

审核编辑:汤梓红


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

    关注

    32

    文章

    1794

    浏览量

    131249
  • Link
    +关注

    关注

    0

    文章

    101

    浏览量

    26952
  • python
    +关注

    关注

    56

    文章

    4793

    浏览量

    84631

原文标题:开发者分享 | 如何用IBERT ChipsCopy做link sweep

文章出处:【微信号:gh_2d1c7e2d540e,微信公众号:XILINX开发者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    何用activex空间创建excel

    何用activex空间创建excel啊,小弟求助高手
    发表于 04-19 00:14

    何用labview创建SQLite数据库?

    何用labview创建SQLite数据库,谢谢
    发表于 01-22 17:19

    DM8168在程序运行后增加decode link解码的数量

    如何在link创建运行后增加decode link解码的数量? 1.DEC_LINK_CMD_
    发表于 06-21 10:19

    LabVIEW连接MicroSoft的ACCESS创建Microsoft Data Link文件

      为了在LabVIEW中使用数据库连接工具包与Mircrosoft的Access数据库通信,需要创建一个Microsoft DataLink文件。 Microsoft Data Link文件或者
    发表于 05-24 07:40

    何用android studio创建项目?

    何用android studio创建项目?
    发表于 03-02 07:54

    何用java映射创建java对象和调用java对象呢

    java是一种解析语言,java程序是通过java虚拟机解析.class的方式运行起来。因此,java中就存在java映射的概念。下面介绍如何用java映射创建java对象和调用java对象的方法
    发表于 04-11 14:43

    是否可以在主机运行时使用ST-Link V2创建软件中断呢?

    我正在使用 STM32411CC MCU 从 GPIO IDR 读取信号,对其进行处理,然后将其写入 GPIO ODR。中断例程是按需进行信号处理的合适方法。问题:如果没有可用的 GPIO 引脚,主机如何在运行创建中断?是否可以在运行
    发表于 12-26 08:09

    Potentiometer_Sweep电路设计

    Potentiometer Sweep电路设计
    发表于 01-11 17:54 0次下载

    PCB绘图案例【Circuit Simulation】Potentiometer_Sweep

    PCB绘图案例【Circuit Simulation】. Potentiometer Sweep
    发表于 02-16 11:52 0次下载

    如何批量生成36路link的2D眼图?

    运行一次IBERTsweep,然后在Tcl Console中看用了哪些指令 我在AC701上运行官方IBERT例程后,进行了一次sweep,然后Console中涉及的指令
    的头像 发表于 09-27 14:26 1876次阅读
    如何批量生成36路<b class='flag-5'>link</b>的2D眼图?

    LTC2058 Demo Circuit - Photovoltaic Module Sweep Measurement

    LTC2058 Demo Circuit - Photovoltaic Module Sweep Measurement
    发表于 02-01 09:12 0次下载
    LTC2058 Demo Circuit - Photovoltaic Module <b class='flag-5'>Sweep</b> Measurement

    C++创建链表输出

    使用C++代码创建一个链表输出。
    的头像 发表于 01-10 15:05 1179次阅读

    UltraEM®的Corner Sweep仿真实例

    UltraEM可以使用Corner Sweep来仿真工艺变化对器件结构造成的影响,具体包含三种仿真模式:MonteCarlo仿真、Perturbation仿真与Corner仿真。
    的头像 发表于 06-19 10:25 872次阅读
    UltraEM®的Corner <b class='flag-5'>Sweep</b>仿真实例

    Docker 教程:如何将Helix QAC作为容器创建运行

    在此 Docker 教程中,你将学习如何创建 Helix QAC 并将其作为容器化镜像运行。 Docker 的基本定义是一种开源和流行的操作系统级虚拟化(通常称为“容器化”)威廉希尔官方网站 ,它是轻量级的,可
    的头像 发表于 10-31 09:36 965次阅读
    Docker 教程:如何将Helix QAC作为容器<b class='flag-5'>创建</b><b class='flag-5'>并</b><b class='flag-5'>运行</b>

    oracle创建用户赋予权限

    Oracle是一种关系型数据库管理系统,用户在Oracle中起着重要的作用,它们用于管理和访问数据库中的数据。在Oracle中,我们可以通过创建用户赋予相应的权限来对数据库进行管理和控制。本文将
    的头像 发表于 11-17 14:28 2558次阅读