0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

xilinx FPGA IOB约束使用以及注意事项

FPGA设计论坛 来源:未知 2025-01-16 11:02 次阅读

xilinx FPGA IOB约束使用以及注意事项

一、什么是IOB约束

在xilinx FPGA中,IOB是位于IO附近的寄存器,是FPGA上距离IO最近的寄存器,同时位置固定。当你输入或者输出采用了IOB约束,那么就可以保证从IO到达寄存器或者从寄存器到达IO之间的走线延迟最短,同时由于IO的位置是固定的,即存在于IO附近,所以每一次编译都不会造成输入或者输出的时序发生改变。

二、为什么要使用IOB约束

考虑一个场景,当你用FPGA写了一个spi模块,将时钟、片选和数据线绑定到FPGA的IO管脚,如果没有加IOB约束的话,综合工具在布局布线的时候直接将FPGA内部寄存器输出连到IO上,但是这样存在一定的问题,每次修改逻辑重新编译的时候,输出寄存器的位置有可能发生改变,那么从寄存器输出到IO之间的布线长度就会发生变化,造成寄存器输出到达IO之间的走线延迟发生改变,每一次编译都会使得spi的输出时序不确定。

为了解决这个问题,需要加入IOB约束,将模块输出端口的最后一级寄存器放在IOB上,这样最后一级输出的寄存器位置就固定下来了,每次编译都不会造成输出时序发生改变。

IOB约束使用方法如下:

1、在约束文件中加入下面约束:

set_property IOB true [get_ports {port_name}]

set_property IOB true [get_cells {cell_name}]

2、直接在代码中加约束,在寄存器前加入下面约束,需要注意的是,对于输入IOB约束,这里的寄存器是第一级寄存器,对于输出IOB约束,这里的寄存器是最后一级寄存器,且寄存器输出不能再作为组合逻辑输入。

(* IOB = "true" *) reg O_data;

三、IOB约束使用注意事项

对于输出IOB约束,在使用的时候有一些限制:

1、约束的端口必需是寄存器输出,这点比较好理解,因为IOB约束本质上是约束最后一级寄存器的位置,将最后一级寄存器的位置放在IOB上,而不是增加一级寄存器。所以你必须要是寄存器输出,才能进行IOB约束,这是前提。

2、最后一级寄存器的输出不能再作为输入反馈到内部逻辑中,必需是开路的。举个例子,比如如下代码:

always @ (posedge clk)

begin

if(cnt == 2'b1 || cnt == 2'b3)

spi_clk <= ~spi_clk;

else

spi_clk <= spi_clk;

end

上面描述了一个分频器,当计数器cnt为1和3的时候spi_clk翻转,那这个时候spi_clk就是一个输出又作为输入反馈到内部的寄存器,得到的综合结果如下图:

c697de12-d30f-11ef-9310-92fbcf53809c.png

由于需要将寄存器的输出作为输入其他逻辑的输入,这种情况下是无法将spi_clk寄存器放到IOB上的,因为IOB的输出直接对接IO,无法再作为输入反馈到内部逻辑。

所以可以将spi_clk输出再加一级寄存器,将加入的寄存器放到IOB上,相应的需要对时序做出一定的调整,和sip_clk有时序关系的都需要打一拍以保持同步。

c6b4293c-d30f-11ef-9310-92fbcf53809c.png

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1630

    文章

    21796

    浏览量

    605393
  • Xilinx
    +关注

    关注

    71

    文章

    2171

    浏览量

    121987

原文标题:xilinx FPGA IOB约束使用以及注意事项

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    相关推荐

    Xilinx FPGA管脚物理约束介绍

    引言:本文我们简单介绍下Xilinx FPGA管脚物理约束,包括位置(管脚)约束和电气约束
    发表于 07-25 10:13 5064次阅读

    FPGA的高速接口应用注意事项

    FPGA平台接地点接线到实验室大地。 综上所述,FPGA的高速接口应用需要综合考虑信号完整性、电源管理、接口标准化、布线与布局以及静电防护等方面。遵循这些注意事项将有助于确保
    发表于 05-27 16:02

    FPGA学习及设计中需要注意事项有哪些?

    想要做一名做FPGA的工程师 ,请问 FPGA学习及设计中需要注意事项有哪些?
    发表于 04-02 06:48

    FPGA仿真程序的设计方法,有什么注意事项

    FPGA仿真的方法有哪几种FPGA仿真程序的设计方法FPGA仿真的注意事项
    发表于 04-29 06:15

    FPGA在逻辑设计中有哪些注意事项

    请教各位,FPGA在逻辑设计中有哪些注意事项
    发表于 05-07 07:21

    FPGA设计的注意事项

    FPGA设计的注意事项 不管你是一名逻辑设计师、硬件工程师或系统工程师,甚或拥有所有这些头衔,只要你在任何一种高速和多协议的复杂系统中使
    发表于 04-10 08:34 921次阅读

    python字典类型的使用和注意事项

    字典类型在实际的python开发中,使用特别频繁,结合本人多年的工作经验,现将字典的使用以及字典使用注意事项总结如下:
    的头像 发表于 01-19 17:49 3573次阅读
    python字典类型的使用和<b class='flag-5'>注意事项</b>

    xilinx FPGAIOB使用教程说明

    xilinx FPGA的资源一般指IOB,CLB,BRAM,DCM,DSP五种资源。其中IOB就是input/output block,完成不同电气特性下对输入输出信号的的驱动和匹配要
    发表于 12-29 16:59 12次下载
    <b class='flag-5'>xilinx</b> <b class='flag-5'>FPGA</b>的<b class='flag-5'>IOB</b>使用教程说明

    简述Xilinx FPGA管脚物理约束解析

    引言:本文我们简单介绍下Xilinx FPGA管脚物理约束,包括位置(管脚)约束和电气约束
    的头像 发表于 04-27 10:36 4720次阅读
    简述<b class='flag-5'>Xilinx</b> <b class='flag-5'>FPGA</b>管脚物理<b class='flag-5'>约束</b>解析

    FPGA管脚调整的注意事项

    编程来校正信号的通信就可以了。在调整FPGA管脚之前必须熟悉几点注意事项FPGA管脚调整的注意事项 (1)如图12-1所示,当存在VRN/VRP管脚连接上/下拉电阻时,不可以调,V
    的头像 发表于 06-20 11:20 872次阅读

    安全光幕选型方法以及注意事项

    安全光幕选型方法以及注意事项
    的头像 发表于 06-28 14:35 943次阅读
    安全光幕选型方法<b class='flag-5'>以及</b><b class='flag-5'>注意事项</b>

    安全光幕选型方法以及注意事项

    安全光幕选型方法以及注意事项
    的头像 发表于 07-06 13:59 1036次阅读
    安全光幕选型方法<b class='flag-5'>以及</b><b class='flag-5'>注意事项</b>

    FPGA的有源电容器放电电路注意事项

    电子发烧友网站提供《FPGA的有源电容器放电电路注意事项.pdf》资料免费下载
    发表于 07-25 15:06 0次下载
    <b class='flag-5'>FPGA</b>的有源电容器放电电路<b class='flag-5'>注意事项</b>

    Xilinx FPGA约束设置基础

    LOC约束FPGA设计中最基本的布局约束和综合约束,能够定义基本设计单元在FPGA芯片中的位置,可实现绝对定位、范围定位
    发表于 04-26 17:05 1308次阅读
    <b class='flag-5'>Xilinx</b> <b class='flag-5'>FPGA</b>的<b class='flag-5'>约束</b>设置基础

    先进FPGA的电源设计注意事项(电源设计器121)

    电子发烧友网站提供《先进FPGA的电源设计注意事项(电源设计器121).pdf》资料免费下载
    发表于 08-26 09:27 0次下载
    先进<b class='flag-5'>FPGA</b>的电源设计<b class='flag-5'>注意事项</b>(电源设计器121)