Aurora、Chip2chip、Ethernet(二)

news2024/11/20 16:35:57

摘要:Aurora、Chip2chip、Ethernet共用一个gt时钟的正确的解决方案以及在实际实现以及在实现过程中遇到的其它的问题。

我在实际中遇到的困难如下:

现在需要将三个ip共用一对GT时钟,一个Ethernet IP,一个Ethernet IP(这个IP在block design中),一个aurora IP。现在还有一个以太网ip存在于blockdesign中,这个ip的gt和core在设置中并没有分离,并且我们暂时没有办法改动这部分。所以aurora需要gt时钟,在block design中的以太网同样需要gt时钟,现在只有一对gt时钟。在不改动block design里的Ethernet ip的情况下,有什么好的办法可以让三个IP共同使用一对gt时钟。

5. 正确的解决方法

同一个Quad里面,只能例化一个GT Common

不同的Quad,例化一个IBUFDS_GTE4,然后例化各自的GT Common

这些都是硬连接,不能随意更改连接的。

 按照图中的方法,其它的IP都可以连在经过了bufds的单端口上。那么需要如下改动:

 

 

在与xilinx FAE沟通中还提到了南北的概念:

 

 但是我看部分改与不改,并未对我的工程有什么实际影响,所以并没有深究。

6. 功能验证

6.1 Aurora功能验证

这个比较简单,因为通过aurora ip生成的example design里面提供了generator module和check module,所以直接用这两个模块再加上ILA进行数据产生和验证即可。

6.2 Chip2chip功能验证

这个同理,可以用generator module和check module验证是否成功连接,再配上寄存器,看看寄存器能否通过chip2chip正常读写,即可验证功能是否正常。需要注意,slave先启动,再启动master,这样两端的chip2chip才能够link上。

6.3 Ethernet回环验证

这是两块板子的以太网回环测试,并且生成用于serdes的以太网ip将gt剥离了出来,所以之前的测试内外回环的方法在这里并不适用。需要更改gt_loopback_in去验证内外回环。

 

 外回环我并没有按照图中的方法,而是直接修改了一端以太网的代码,另外一端不动,然后loopback设置成000,即可实现一端外回环的验证。修改的代码如下(需要改代码的这端需要注释掉xxx_ethernet_X_pkt_gen_mon):

 有几个改几个,下面同理:

 

在测试内外回环的时候,发现了一个问题:总有零个或一个Lane的内外回环是好的,其它的都是错误的,从返回的status状态得出这样的结论

原因:

1. 没有create_clock gt,所以vivado不分析gt的时钟,一些路径的时序没有建立好,从而导致数据乱掉。

2. 约束红色路径必须一条一条点到点进行约束,如果约束的时钟到时钟,也会让一些路径时序不分析,从而导致数据乱掉。

如图所示:

 

总结

学无止尽

参考文章:

https://china.xilinx.com/search/support-keyword-search.html

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

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

相关文章

每日学术速递1.29

CV - 计算机视觉 | ML - 机器学习 | RL - 强化学习 | NLP 自然语言处理 Subjects: cs.CV 1. Compact Transformer Tracker with Correlative Masked Modeling 标题:带有相关掩码建模的紧凑型变压器跟踪器 作者: Zikai Song, Run Luo, Junqing Yu, Y…

GLM国产大模型训练加速:性能最高提升3倍,显存节省1/3,低成本上手

作者|BBuf、谢子鹏、冯文 2017 年,Google 提出了 Transformer 架构,随后 BERT 、GPT、T5等预训练模型不断涌现,并在各项任务中都不断刷新 SOTA 纪录。去年,清华提出了 GLM 模型(https://github.com/THUDM…

一句话说明线程和进程

知识点: 1、一句话说明线程和进程 2、操作系统为什么需要进程 3、为什么要引入线程 4、一图说明线程和进程的关系 一、一句话说明线程和进程 进程:是指⼀个内存中运⾏的应⽤程序,比如QQ、微信、浏览器等;⼀个应⽤程序可以同时运⾏…

CAS 和 Synchronized优化过程以及常见的锁策略

目录 🐑今日良言:追星赶月莫停留,平芜尽处是春山 🐂一、锁策略 🐼二、CAS 🐭三、Synchronized 🐑今日良言:追星赶月莫停留,平芜尽处是春山 🐂一、锁策略 锁策略是实现锁的时候,考虑出现锁竞争了该怎么…

电驱系统电磁兼容基础知识及测试方法

电驱系统电磁兼容基础知识及测试方法 学习参考:驱动视界公众号、百度百科、《电动汽车电机驱动系统EMC研究综述》 1.背景 2.电磁干扰三要素 3.电波暗室与屏蔽室的原理 4.测试方法 5.如何看测试数据 6.工作中需要注意的EMC的几点问题 7.案例 1.背景 汽车工业发展…

docker安装db2

第一步:下载镜像 docker pull ibmcom/db2express-c:latest备注:docker images -a 可以查看已安装镜像; 第二步:启动镜像 docker run -d --name db2 -p 50000:50000 -e DB2INST1_PASSWORD[数据库密码] -e LICENSEaccept ibmcom…

玩转PPT 第1节 PPT制作理念学习笔记

ppt神器islide 第1节 初步接触强大的工具1 PPT大神的课程总结1.1 骨架篇1.2 色彩篇1.3 对齐篇1.4 对比篇1.5 修饰篇1.6 字体篇1.7 素材篇1.8 线条篇1.8.1 可以随意画线条,填充空白1.8.2 在字体上画线条,做成艺术字1.8.3 做对称线条,比如递进三…

Bluesky勒索软件深度技术分析

0 1、 背景介绍 勒索软件作为一种流行的木马,近年来已成为最为常见的安全威胁之一。与其他威胁不同,勒索软件先向受害者表明自己的身份,再通过加密的方式使用户数据资产或计算资源无法正常使用,而恢复数据资产的唯一方法通常是支…

收藏破万,谷歌联手哈佛发布首个炼丹指南:教你科学化「调参」

调参不能只靠直觉,也是一门大学问! 虽然算法工程师往往调侃自己是「调参侠」,但调参这件事可能真没想象中那么简单。 比如,你是不是经常会有疑惑到底该选择哪个优化器?一个batch放多少数据?超参数如何设置…

人工智能英文缩写怎么读,人工智能英文缩写大全

1、人工智能英文缩写是什么? AI。 人工智能,英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术以及应用系统的一门技术科学。“十三五”以来,我国高度重视人工智能的发展,国内科研机构也围绕人工智能…

【Pytorch项目实战】之机器翻译:编码器-解码器、注意力机制AM

文章目录机器翻译 - 中英文翻译算法一:编码器-解码器(Encoder - Decoder)算法二:注意力机制(Attention Model,AM)2.1为何要引入注意力机制?2.2注意力机制的语义向量表示C计算2.3每个…

2023年首更,警惕6本SCISSCI期刊被剔除

2023年1月17日,Web of Science核心期刊目录首次更新。此次SCIE & SSCI期刊目录更新,与上次更新(2022年12月)相比,共有6本期刊被剔除出SCIE & SSCI期刊目录,详情如下: 公众号“Unionpub…

Redis实战9-全局唯一ID

发布优惠券的时候,每个店铺都可以发布优惠券,当用户抢购的时候,优惠券表中的id如果使用数据库的自增长ID会存在以下问题: 1:id的规律太明显,容易被刷 2:当数据量很大的时候,会受到单表数据的限…

三、分布式id,lua脚本,分布式锁,消息队列

文章目录优惠卷秒杀1.redis实现分布式ID2.优惠券秒杀下单3.超卖问题4.lua脚本5.分布式锁6.redis stream消息队列实现异步秒杀7.redis消息队列list实现消息队列PubSub实现消息队列stream实现消息队列stream的消息队列-消费者组学习黑马点评项目整理总结:https://www.bilibili.co…

5 个用于自动化的杀手级 Python 脚本

Python 是一种功能强大的语言,广泛用于自动执行各种任务。无论您是开发人员、系统管理员,还是只是想通过自动化日常任务来节省时间的人,Python 都能满足您的需求。 这里有 5 个 Python 脚本,可以帮助您自动执行各种任务 文章目录…

Spring Boot之Swagger

文章目录零 项目源码一 Swagger简介二 Spring Boot集成Swagger2.1 环境准备2.2 配置Swagger2.3 配置文档信息2.4 配置扫描接口2.5 配置开关Swagger2.6 配置API分组2.7 配置实体类2.8 常用注解零 项目源码 Swagger源码免费下载 一 Swagger简介 Swagger官网swagger是一款可以根…

深入开源和金融技术世界,《新程序员005》来了!

亲爱的 CSDN 以及《新程序员》的读者朋友们,《新程序员005:开源深度指南 & 新金融背后的科技力量》正式与大家见面!现在,点击下方封面,即可订阅,立享电子书,纸质书将在春节后为大家寄出&…

9、循环语句

目录 一、while循环语句 二、do…while循环语句 三、for循环语句 1. for语句 2. foreach语句 一、while循环语句 while语句也称条件判断语句,它的循环方式为利用一个条件来控制是否要继续反复执行这个语句。 语法如下: 当条件表达式的返回值为真时…

【并发编程十三】c++原子操作(1)

【并发编程十三】c原子操作(1)一、改动序列1、改动序列2、预测执行二、原子操作及其类别1、原子操作2、非原子操作3、原子类型三、标准原子类型1、标准原子类型的两种实现方式2、原子操作的用途3、原子操作的宏四、操作std:atomic_flag1、简介2、使用说明…

jsp ssm宿舍报修换宿管理系统-宿管idea

目 录 1 1绪论 1 1.1 课题研究的背景 1 1.2 课题研究的意义 1 1.3 本文主要工作 1 2 关键技术介绍 3 2.1 JSP技术的简介 3 2.2 SSM框架 3 2.3 MYSQL数据库 4 2.4 MySQL环境配置 4 2.5 B/S架构 4 3 需求分析与可行性分析 5 3.1功能需求分析…