AD9162数据链路lanes与FPGA高速BANK引脚交叉相连导致vivado编译失败

news2024/9/25 23:21:13
  1. 问题概述

对AD9162芯片进行功能开发时,发现AD9162的链路lanes与FPGA的高速BANK引脚存在交叉相连的情况,按照实际的引脚连接关系进行约束后,vivado编译失败。

  1. 问题阐述及原因分析
    1. 问题详情阐述

板卡对AD9162芯片进行功能开发时,发现硬件电路的设计结果存在AD9162数据链路与FPGA高速BANK引脚交叉相连的问题,示意图如图3‑1,若根据图示的引脚连接关系进行管脚约束,vivado无法通过编译,图3‑2是报错结果截图。

31  板卡AD9162数据链路与FPGA高速BANK引脚的硬件连接关系图

32  vivado编译失败截图

    1. 原因分析

根据图3‑2的报错结果,将提示内容中的约束语句加入到XDC文件中,依然无法完成编译。AD9162的数据链路lanes与FPGA端高速BANK引脚交叉约束导致这一问题。

  1. 解决方法

将lane2与F4、lane5与E2进行约束,如图4‑1,编译通过。但这会导致FPGA输出给GSM019的数据存在混乱的问题,为此本报告提供3种解决方法。

41  数据链路与FPGA高速BANK引脚的软件连接关系图

    1. 修改AD9162数据链路选择寄存器

AD9162的寄存器0x308、0x309、0x30A、0x30B用于配置lane0~lane7数据链路的选择,如图4‑2。由于在xdc中替换lane2与lane5对应的FPGA引脚,因此为解决这两路数据交错的问题,可以在GSM019的寄存器配置环节中往0x309的bit[2:0]写入3b101、往寄存器0x30A的bit[5:3]写入3b010,即将lane2与lane5的数据来源替换。

42  GSM019数据选择寄存器

    1. 修改数据拼接方式

若不修改AD9162的数据选择寄存器,可以通过修改数据拼接方式的方法来解决数据混乱的问题。以复信号的数据拼接方式为例,如图4‑3,按照原数据拼接格式,lane2与lane5的原数据为蓝色框,我们通过将代码修改为红色框的内容即可替换lane2与lane5数据。

43  修改数据拼接方式代码截图

    1. 修改JESD204B IP核数据对应关系

另外,还可以通过修改JESD204B IP核数据的对应关系来解决数据混乱问题。具体为:按图红色框将JESD204B IP核输出的gt2_txdata与gt5_txdata、gt2_txcharisk与gt5tx_charisk进行互换。

44  修改JESD204B IP核数据对应关系

  1. 实验结果
    1. 修改GSM019寄存器数据链路选择寄存器实验
  1. 按照4.1节提供的解决方法对AD9162寄存器的配置代码进行修改,并编译工程;
  2. 使用射频信号线连接安捷伦与DAC模拟输出口,板卡上电;
  3. 将bit文件下载至板卡中,并在vio界面控制DDS的信号频率,观察频谱仪上的信号频率;
  4. 频谱仪上显示的信号频点与控制DDC输出的信号频点一致,实验通过,并拍照或截图记录。

51  修改AD9162数据选择寄存器的结果(1313MHz0dBm

52  修改AD9162数据选择寄存器的结果(1050MHz0dBm

    1. 修改数据拼接方式实验
  1. 按照4.2节提供的解决方法对数据拼接代码进行修改,并编译工程;
  2. 使用射频信号线连接安捷伦与DAC模拟输出口,板卡上电;
  3. 将bit文件下载至板卡中,并在vio界面控制DDS的信号频率,观察频谱仪上的信号频率;
  4. 频谱仪上显示的信号频点与控制DDC输出的信号频点一致,实验通过,并拍照或截图记录。

53  修改数据拼接方式的结果(1310MHz0dBm

54  修改数据拼接方式的结果(1110MHz0dBm

    1. 修改JESD204B IP核数据对应关系实验
  1. 按照4.3节介绍的解决方法修改JESD204B IP核数据对应关系的代码,并编译工程,使用射频信号线连接安捷伦与DAC模拟输出口,板卡上电;
  2. 将bit文件下载至板卡中,并在vio界面控制DDS的信号频率,观察频谱仪上的信号频率;
  3. 频谱仪上显示的信号频点与控制DDC输出的信号频点一致,实验通过,并拍照或截图记录。

55  修改JESD204B IP核数据对应关系的结果(1310MHz0dBm

56  修改JESD204B IP核数据对应关系的结果(1110MHz0dBm

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

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

相关文章

高并发业务下的库存扣减技术方案设计

扣减库存需要查询库存是否足够: 足够就占用库存不够则返回库存不足(这里不区分库存可用、占用、已消耗等状态,统一成扣减库存数量,简化场景) 并发场景,若 查询库存和扣减库存不具备原子性,就可能超卖&…

node.js使用express框架实现api接口开发(从零开始,超简单可直接复制)

目录 一、效果图 二、实现 1、引入express框架依赖 2、 新建启动文件(/server/index.js) 3、新建接口函数文件(/server/router.js) 一、效果图 二、实现 1、引入express框架依赖 在项目文件夹根目录下,打开控制台…

ShenNiusModularity:一款基于 .NET Core 框架研发的自媒体内容管理系统

项目介绍 ShenNiusModularity是一款基于 .NET Core 框架研发的、开源、免费的自媒体内容管理系统。项目秉承大道至简的原则开发,坚持业务模块最低复杂度复用,代码方面追求简单、高效、实用。适合小白入门进阶,同样适用老手上路干活。 项目包…

Python青少年简明教程:字符串

Python青少年简明教程:字符串 字符串(string)是用于表示文本的数据类型。它是不可变的序列类型,即一旦创建,字符串中的字符就无法改变。 下面对Python中字符串的详细介绍,包括字符串的创建、操作和常见方法…

MySQL 集群技术全攻略:从搭建到优化(下)

目录 四.mysql高可用之组复制 (MGR) 1.组复制流程 2.组复制单主和多主模式 3.实现mysql组复制 五.mysql-router(mysql路由) 1.Mysql route的部署方式 六.mysql高可用之MHA 1.MHA架构图 2.为什么要用MHA? 3.MHA 的组成 4.什么是 MH…

网络 (tcp)

客户端 /*************************************************************************> File Name: client.c> Author: yas> Mail: rage_yashotmail.com> Created Time: Thu 22 Aug 2024 04:04:26 PM CST******************************************************…

从零开始学习SLAM六(单应矩阵)

本文参考:计算机视觉life 概念 单应性(homography)是指两个平面之间的一种保直线性的对应关系。如果一个平面上的点集经过某种变换后,在另一个平面上形成的新点集仍然保持原来的线性特性(如共线的点仍然共线&#xf…

一起搭WPF界面之View的简单设计一

一起搭WPF界面之View的简单设计一 1 前言2 界面预期设想3 基础的实现步骤3.1 界面划分3.1.1 基础框架代码:3.1.2 实现效果 4 界面花样设计4.1 花样设计4.2 界面源代码4.3 错误提醒4.3.1 错误14.3.2 错误2 总结 1 前言 基于上一篇的window、Gird、Border的简单介绍&…

XSS LABS - Level 13 过关思路

关注这个靶场的其他相关笔记:XSS - LABS —— 靶场笔记合集-CSDN博客 0x01:过关流程 进入靶场,老样子,右击,查看页面源码,找找不同: 可以看到,本关又多了一个新字段 t_cook&#xf…

关于 Vue/React 的 cli 中运用 webpack 打包的原理简单解析

webpack、webpack-cli的打包 关于 webpack 对前端工程中进行资源文件进行打包处理的过程中,运用到的核心插件主要是 webpack 和 webpack-cli,在 react 和 vue 对于打包各自工程中的 cli 则是进行了自定义的构建,专门用于项目打包的 …

【MySQL-25】万字总结<锁>——(全局锁&行级锁&表级锁)【共享锁,排他锁】【间隙锁,临键锁】【表锁,元数据锁,意向锁】

前言 大家好吖,欢迎来到 YY 滴MySQL系列 ,热烈欢迎! 本章主要内容面向接触过C的老铁 主要内容含: 欢迎订阅 YY滴C专栏!更多干货持续更新!以下是传送门! YY的《C》专栏YY的《C11》专栏YY的《Lin…

Bytebase 2.22.2 - 允许在工作空间为群组分配角色

🚀 新功能 允许在工作空间给群组分配角色。 支持禁用邮箱密码登录,仅允许 SSO 登录的设置项。 新增 Postgres SQL 审核规则:禁止在列上设置会变化的默认值。 🔔 重大变更 下线项目内的变更历史页面;所有变更历史仍可…

Phoenix

Apache Phoenix 是一个开源的关系数据库层,运行在 Apache HBase 之上,旨在为 HBase 提供 SQL 查询能力和优化的存储引擎。它允许用户使用标准的 SQL 查询和事务语义来管理 HBase 中的数据,并且可以与现有的大数据生态系统无缝集成。Phoenix 通…

IOS开发 铃声制作(库乐队)

IOS开发,实现铃声制作功能。 在IOS端,要设置铃声都是通过库乐队来制作的。 先看一下库乐队中铃声的文件结构。下面是弄的一个示例的文件,文件信息如下: 我们右击文件,点击显示包内容如下: 能看到一个aiff格…

解决ssl certificates updated-生成环境中的实例

应原来小伙伴的要求,生产环境出错了,是harbor的ssl cert过期了,也因为使用的是免费的ssl证书,现在无法正常使用harbor,所以贴来了2023年1月曾经搭建的文档,希望能解决问题。^v^. -------------------------…

25 filedialog组件

Tkinter filedialog 组件使用指南 Tkinter 的 filedialog 组件提供了一个图形界面,用于打开和保存文件。它允许用户通过标准的文件选择对话框来选择文件,非常适合需要文件操作的GUI应用程序。以下是对 filedialog 组件的详细说明和一个使用案例。 file…

爆改YOLOv8 |YOLOv8融合SEAM注意力机制

1,本文介绍 SEAM(Spatially Enhanced Attention Module)是一个注意力网络模块,旨在解决面部遮挡导致的响应损失问题。通过使用深度可分离卷积和残差连接的组合,SEAM模块增强未遮挡面部的响应。深度可分离卷积在每个通…

Xshell 连接 Ubuntu 服务器失败问题(Connection failed)

目录 Xshell 连接 Ubuntu 服务器失败问题(Connection failed) 1.查看Ubuntu中是否安装 sshd 2.在Ubuntu中安装sshd 3.需要打开Ubuntu中新安装的sshd 4.在检查Ubuntu中sshd是否安装成功 5.临时关闭Ubuntu中的防火墙 6.Xshell 连接 Ubuntu 服务器成…

认知杂谈24

今天分享 有人说的一段争议性的话 I I 《人生逆袭的关键:开窍带来的转变》 在女人的生活里啊,最宝贝的东西可不是那些金银首饰啥的,也不只是那些起起落落的经历,更不是偶尔碰到的贵人帮忙。真正无价的,是在某个瞬间…

构建buildroot根文件系统

目录 1.确定gcc工具版本2.下载Buildroot源码并编译2.1 下载Buildroot源码2.2 配置Buildroot2.2.1 配置 Target options2.2.2 配置交叉编译工具链2.2.3 配置 System configuration2.2.4 配置 Filesystem images2.2.5 禁止编译 Linux 内核和 uboot2.2.6 编译Buildroot源码2.2.7 查…