Xilinx Vivado器件分配管脚:LVDS差分电平信号如何分配管脚?

发布日期:2023-09-14

最近在把Quartus Prime 15.工程移植到Vivado 2019.1.还有很多地方需要改变。首先记住差异信号FPGA定义和配置收发管脚。LVDS以信号为例。

在7 Series FPGA & ZYNQ-7000 All Programmable SoC Library Guide for HDL Design(UG768)和7 Series FPGA SelectIO Resource(UG471)文档给出HDL管脚分配文件的方法:

用OBUFDS原语(Primitive)单端转差分输出可以用来实际使用这个原语FPGA IO Bank使用了一个LVDS发送器。

对应的,用IBUFDS差分信号可以接收原语,原语在IO Bank使用了一个LVDS接收器。

在Vivado环境中Flow Navigator --- PROJECT MANAGER --- Language Templates上述原语分别如下:

OBUFDS

OBUFDS #(

.IOSTANDARD("DEFAULT"), // Specify the output I/O standard

.SLEW("SLOW") // Specify the output slew rate

) OBUFDS_inst(

.O(O), // Diff_p output (connect directly to top-level port)

.OB(OB), // Diff_n output (connect directly to top-level port)

.I(I) // Buffer input

);

IBUFDS

IBUFDS #(

.DIFF_TERM("FALSE"), // Differential Termination

.IBUF_LOW_PWR("TRUE"), // Low power="TRUE", Highest performance="FALSE"

.IOSTANDARD("DEFAULT") // Specify the input I/O standard

) IBUFDS_inst(

.O(O), // Buffer output

.I(I), // Diff_p buffer input (connect directly to top-level port)

.IB(IB) // Diff_n buffer input (connect directly to top-level port)

);

只贴在上面Verilog版本,VHDL请自己实验版本。

从语法上看,上述原语例化LVDSI端口是输入发送器和接收器,IB端口是I的互补差分信号输入,O端口是输出,OB端口是O端口的互补差分输出。

在模块名和例化名之间,有一些由井号#领导的参数,与差分收发器具体实现相关参数,如具体参数IO电平规格(LVDS,DIFF_HSTL等等),输出差分信号的压摆率(高/低),接收器端内的负载电阻,降低接收器的能耗等参数。

***************************************************************************************************************************************************************************************

和Quartus环境差异IO配置相比,Xilinx在设计过程中需要HDL文件中添加了更多的东西,增加了严谨性,但失去了一定的便利性:)

xilinx Vivado详细介绍(2):创建工程、添加文件、综合、实现、管脚约束、生成比特流文件、烧写程序、硬件验证

xilinx Vivado详细介绍(2):创建工程.添加文件.综合.实现.管脚约束.生成比特流文件.烧写程序.硬件验证 Author:zhangxianhe 新建工程 打开Vivado软件,直接 ...

Xilinx Vivado详细介绍(1):创建项目,编写代码,模拟行为

Xilinx Vivado详细介绍介绍(1):创建工程.编写代码.行为仿真 Author:zhangxianhe 新建工程 打开Vivado点击欢迎界面的软件Create New Projec ...

控制分片分配Elasticsearch分片和副本的分配

ES集群中的索引可多个分片组成,每个分片可以有多个副本.通过将单个索引分成多个部分,我们可以处理不能在单个服务器上运行的大索引。简单地说,索引的大小太大,导致效率问题.不能运 ...

【分片重新分配】Elasticsearch通过reroute api分片重新分配

elasticsearch可以通过reroute api手动分配索引分片. 但是,如果你想完全手动,你必须先把它拿走cluster.routing.allocation.disable_allocation ...

Xilinx Vivado详细介绍(2):综合、实现、管脚分配、时钟设置、烧写

前一篇文章介绍了从新建工程到编写代码的行为模拟。本文继续介绍. 修改器件型号 新建工程时选择设备型号。如果新建工程后需要修改型号,可以选择菜单Tools - Project Setting ...

(Xilinx)FPGA中LVDS实现差异高速传输

https://wenku.baidu.com/view/24e8bad86f1aff00bed51ef8.html

Xilinx Vivado详细介绍(5):调用用户自定义包装IP核

Zedboard OLED Display Controller IP v1 介绍 Author:zhangxianhe 本文档提供了快速添加,连接和使用ZedboardOLED v1.0 IP内核的 ...

Xilinx Vivado使用详细介绍(4):Zedboard+vivado流水灯(加SDK)

Vivado zedboard一开始学流水灯 Author:zhangxianhe 环境:vivado 2016.3(已验证适用于2015年.4) 开发板:Zedboard version xc7z020 ...

随机推荐

enumerate()

今天我们学一个单词 enumerate 后面加括号 他不是单词,那是什么? 来看一下 enumerate() a = ('htc', 'oppo', 'vivo', 'huawei', 'mi' ...

notepad++快捷键大全

Ctrl C 复制 Ctrl X 剪切 Ctrl V 粘贴 Ctrl Z 撤消 Ctrl Y 恢复 Ctrl A 全选 Ctrl F 启动键搜索对话框 Ctrl H 查找/替换对话框 Ctrl D 复 ...

iOS10 升级兼容性备参考

最近提交的审核不合格,然后iOS10上运行崩溃 .然后需要处理崩溃的问题,晚上找,收集起来. 便于后续检查和使用. 以下参考链接特别有用: http://blog.csdn.net/gbking/ ...

RGB颜色查询对照表

RGB颜色查询对照表 RGB颜色对照表 #FFFFFF2015-02-05 #FFFFF0 #FFFFE0 #FFFF00 #FFFAFA #FFFAF0 #FFF ...

web前端之 CSS

CSS概述 CSS 指层叠样式表 (Cascading Style Sheets),说白了就是给html代码穿上漂亮的衣服,让页面看起来不错 CSS存在形式 1.设置标签属性,优先级较高 代码如下 ...

PHP跟踪浏览器上的调试方法和使用ChromePhp、FirePHP的简单介绍

之前用ThinkPHP时发现有个 trace 函数可以跟踪调试,感觉很有趣,在网上搜索类似的东西,发现ChromePhp ,以前没想过这样调试。PHP 感觉很方便,很有用. Thin ...

poj-2001(字典树)

问题:给你一堆字符串,我们定义一个字符串可以缩写成一个字符串(必须是原始字符串的前缀),问你每个字符串可以识别什么前缀,不能识别意思(ab,abc我们缩写成ab): 解题思路:可以用字典树解决,我 ...

Android studio 一个项目引入另一个项目作为Libary

1.在我们开发Android在项目中,有时需要引用一个项目作为另一个项目的工具,因此需要配置MyLibrary到MyApplication作为一个module. 在截图上直接步骤: 1. ...

mysql-5.7.24 在centos7安装

搭建环境:mysql5.7.24 CentOS-7-x86_64-DVD-1804.iso 桌面版 1. 进入官网:https://dev.mysql.com/downloads/mysql/ 该 ...

XILINX(赛灵思)热门型号