Xilinx FPGA IBUFDS差分输入缓冲器详解:从原理到实战
创作时间:
作者:
@小白创作中心
Xilinx FPGA IBUFDS差分输入缓冲器详解:从原理到实战
引用
CSDN
1.
https://m.blog.csdn.net/qq_45910789/article/details/141898475
本文是一篇关于Xilinx FPGA中IBUFDS差分输入缓冲器的使用指南。文章详细介绍了IBUFDS的使用说明、实例化代码模板,并通过具体的使用示例和仿真结果,帮助读者更好地理解和掌握这一重要组件的使用方法。
前言
本文主要参考资料《Xilinx 7 Series FPGA and Zynq-7000 All Programmable SoC Libraries Guide for HDL Designs》(UG768,v14.7,2013年10月2日)。
一、原语使用说明
IBUFDS是一个支持低压差分信号的输入缓冲器,用于接收差分信号对(如LVDS),并将其转换为单端信号输出。它可以用于时钟信号、数据总线信号等。
差分输入:
IBUFDS
接受两个差分信号(差分信号正输入I和差分信号负输入IB)作为输入,并将其转换为单端输出(单端输出信号O)。
端口示意图如下:
逻辑表和端口描述:
I:差分信号的正输入;
IB:差分信号的负输入;
O:单端输出信号
I和IB端口信号极性相反,说明差分信号对正常工作,输入的差分信号有效。输出端口O输出0/1。
二、原语实例化代码模版
打开Vivado左侧导航栏中的"Language Templates",搜索“IBUFDS”,找到可直接调用的原语模块实例化代码
参数说明:
DIFF_TERM用于配置IBUFDS(输入差分缓冲器)或其他差分输入缓冲器的差分终端。
- "TRUE":启用差分终端。这会自动在差分输入端添加终端电阻,以减少信号噪声、反射并提高信号完整性。适用于需要高信号质量的应用场景。
- "FALSE":不启用差分终端。默认情况下不会添加终端电阻,通常用于对信号质量要求不高的应用或外部电路已经处理了终端匹配的情况。
-TERMIBUF_LOW_PWR用于控制缓冲器的功耗模式。
- "TRUE":启用低功耗模式。可以减少IBUFDS缓冲器的功耗,但低功耗模式通常会略微降低性能,但在大多数情况下,这种性能降低是微不足道的。
- "FALSE":启用最高性能模式。选择这个选项会使IBUFDS缓冲器以最高的性能运行,但功耗会增加。这个模式适合对性能要求很高的应用场景。
-IOSTANDARD用于指定IBUFDS的输入/输出标准。IOSTANDARD决定了信号的电平标准、驱动能力和信号的电气特性。
- "DEFAULT":使用FPGA工具默认的I/O标准。如果没有特别的要求,可以使用默认值较为通用的标准。
- 特定标准:根据实际应用需要,选择具体的I/O标准。具体的标准决定了电压电平和信号的兼容性。例如,"LVCMOS33"、"LVDS_25"、"HSTL_I"等。常见的I/O标准有LVCMOS (Low Voltage CMOS),"LVCMOS33"(3.3V CMOS标准)、"LVCMOS25"(2.5V CMOS标准)、"LVCMOS18"(1.8V CMOS标准);LVDS (Low Voltage Differential Signaling):"LVDS_25"(2.5V LVDS标准)、"LVDS_33"(3.3V LVDS标准)
三、使用示例
1.设计文件代码
module example_ibufds (
input wire rx_sysref_p, // 差分信号正输入
input wire rx_sysref_n, // 差分信号负输入
output wire rx_sysref // 单端输出信号
);
// IBUFDS 实例化
IBUFDS #(
.DIFF_TERM ("TRUE" ), // 启用差分终端以提高信号质量
.IBUF_LOW_PWR("TRUE" ), // 启用低功耗模式
.IOSTANDARD ("LVDS_25") // 指定 LVDS 2.5V I/O 标准
) IBUFDS_inst0 (
.O (rx_sysref ), // 缓冲器输出
.I (rx_sysref_p), // 差分正输入
.IB(rx_sysref_n) // 差分负输入
);
endmodule
2.仿真文件代码
`timescale 1ns / 1ps
module tb_example_ibufds();
// 测试平台中的信号定义
reg rx_sysref_p; // 差分信号正输入
reg rx_sysref_n; // 差分信号负输入
wire rx_sysref; // 单端输出信号
// 实例化 example_ibufds 模块
example_ibufds uut (
.rx_sysref_p(rx_sysref_p),
.rx_sysref_n(rx_sysref_n),
.rx_sysref(rx_sysref)
);
// 初始块,用于生成测试信号
initial begin
// 初始化信号
rx_sysref_p = 0;
rx_sysref_n = 1;
// 生成差分信号
#10;
rx_sysref_p = 1;
rx_sysref_n = 0;
#10;
rx_sysref_p = 0;
rx_sysref_n = 1;
#10;
rx_sysref_p = 1;
rx_sysref_n = 0;
#10;
rx_sysref_p = 0;
rx_sysref_n = 0;
#10;
rx_sysref_p = 1;
rx_sysref_n = 1;
#10;
rx_sysref_p = 0;
rx_sysref_n = 1;
#10;
rx_sysref_p = 1;
rx_sysref_n = 0;
#10;
$stop; // 停止仿真
end
endmodule
3.仿真结果
由于原文中没有提供仿真结果的具体图片或描述,因此这里无法展示仿真结果。建议读者根据上述代码自行进行仿真,以验证IBUFDS的正确使用。
热门推荐
户用光伏并网申请流程指南
猫界社交不看毛色,白猫地位之说源于误解
猫咪行为里的个体心理学:从波粒二象性到社会兴趣
X染色体上的橘色基因:为何橘母猫如此稀有
张柏芝上海开唱谢霆锋传现身,经典曲目引发共鸣
张柏芝:唱演俱佳,用音乐点亮银幕经典
孩子早餐怎么吃才更健康更营养?这份白皮书里有答案
一日之计在于晨,这3种营养健康的早餐搭配,美味又能补充能量
早餐营养指南:告别三大误区,吃出元气满满的一天
肉炒莲藕萝卜丝的做法(美味又健康)
44岁张柏芝重返华伦天奴活动,逆龄美貌引热议
冬季毕棚沟:如何在欣赏雪景的同时做到环保?
四川毕棚沟冬日打卡指南:美到爆表!
毕棚沟徒步攻略:四姑娘山的绝美穿越
冬日仙境:毕棚沟&达古冰川游玩全攻略
毕棚沟的四季美景,你最期待哪一幕?
心智化技巧:父母情绪管理的关键
<奇幻变形记>定档2024,张柏芝古天乐联袂主演
张柏芝:用亲子阅读培养出连跳两级的学霸
珠三角“三季报”:分化的8万亿,谁领跑谁承压?
农村屋顶光伏到底靠不靠谱?真的能赚钱吗?看完你就知道了!
“制造基底+创新基因+数字基础” 粤港澳大湾区打造国际科技创新中心
内蒙古阿拉善百万千瓦光伏项目并网发电!
从药材到食材:化橘红正式列入药食同源目录
全长2285公里的京港澳高速公路,为何被誉为“华夏第一路”呢
中国史上最大规模!京港澳高速56座桥梁全拆,网友:为啥炸了重建
北京举办化橘红全球推介会,药食同源创新引关注
橘红养生正当时:多重功效与创新食用法详解
广东立法保护“南方人参”化橘红,千年贡品迎来发展新机遇
南充升钟湖:世界钓鱼城的垂钓天堂