FPGA I/O口时序约束讲解

时间:2025-04-28  作者:Diven  阅读:0

1 I/O口时序约束

FPGA I/O口时序约束讲解

前面讲解了时序约束的理论知识FPGA时序约束理论篇,本章讲解时序约束实际使用。

I/O口时序约束是FPGA中最基本的约束,也是不可缺少的约束,I/O约束包括管脚约束、电平约束和延迟约束。

管脚约束和电平约束

管脚约束即是指管脚分配,将硬件PCB板的引脚与FPGA设计的功能引脚匹配。对于使用XILINX芯片的用户来说,使用5系列的用户所使用开发环境为ISE,使用7系列的用户所使用开发环境为Vivado。

ISE中, 使用如下方式在UCF文件中对管脚进行约束:

NET "clk" LOC = AK18;

NET "clk" IOSTANDARD = LVTTL;

Vivado中, 使用如下方式在xdc文件中对管脚进行约束:

set_property-dICt{PACKAGE_PIN AK9 IOSTANDARD LVTTL}

[get_ports "SWITCH[0]"]

在Vivado里面,规定必须指定管脚电平,而ISE中可以不进行管脚电平定义。

延迟约束

延迟约束分为两种,一是输入延迟set_input_delay,一是输出延迟set_output_delay,分别用于input端和output端。

该约束所用的时钟源可以是时钟输入管脚,也可以是虚拟时钟(后续会讲到)。输入延迟set_input_delay

ISE中延迟约束设置为OFFSET=IN,Vivado中延迟约束设置为set_input_delay和set_output_delay。可以参考下图(注:该图引用于网络)。

从上图中可以得到:Tinputdelay = Tco + TD。

要满足图中的时序,则最大延迟为2ns,最小延迟为1ns。时序约束为:

create_clock -name sysclk -period 10 [get_ports clk]
set_input_delay 2 -max -clock sysclk [get_ports Data]
set_input_delay 1 -min -clock sysclk [get_ports Data]

注:get_ports为IO口引脚;

set_output_delay

set_output_delay的用法跟set_input_delay相似,可以参照set_input_delay的描述。

NOTE:延迟约束是让Vivado获取到的输入信号和输入时钟之间的延迟关系,并不是延迟输入信号,是固有属性。

猜您喜欢

防爆工具套装是专为在易燃易爆环境中作业而设计的专业工具组合。其主要作用是确保工作人员的安全,降低事故发生的风险。这些工具通常采用非火花材料制造,能够有效防止因工...
2016-01-25 00:00:00

防滑垫是常用的安全防护产品,其主要优势体现在多个方面。防滑垫能够有效减少意外滑倒的风险,特别是在潮湿或光滑的地面上,为家庭和公共场所提供了额外的安全保障。防滑垫...
2014-09-17 00:00:00

机器视觉系统利用机器代替人眼来做测量和判断,通过机器视觉产品将被摄取目标转换成图像信号,传送给专用的图像处理系统,根据像素分布和亮度、颜色等信息,转变成数字化信...
2018-06-11 09:45:00

气动砂磨机是应用于工业生产中的设备,其主要功能是对材料进行细磨和抛光。不同类型的气动砂磨机在设计和性能上存在一些显著的区别。根据动力源的不同,气动砂磨机可以分为...
2025-04-20 00:00:00


如果你在采用FPGA的电路板设计方面的经验很有限或根本没有,那么在新的项目中使用FPGA的前景就十分堪忧——特别是如果FPGA是一个有1000个引脚的大块头。继...
2019-01-21 11:28:00

剥线钳是常见的电工工具,应用于电缆和电线的剥皮作业。选择合适的剥线钳规格尺寸对于提高工作效率和确保安全非常重要。剥线钳的规格尺寸主要包括剥线范围、刀口宽度和手柄...
2024-05-12 00:00:00