找回密码
 注册
关于网站域名变更的通知
查看: 173|回复: 3
打印 上一主题 下一主题

FPGA编程技巧:输入输出偏移约束详解

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-6-17 10:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
1.   偏移约束的作用
8 \9 W! A# \: {- |( U6 J偏移约束(Offset Constraint)用来定义一个外部时钟引脚(Pad)和数据输入输出引脚之间的时序关系,这种时序关系也被称为器件上的Pad-to-Setup或Clock-to-Out路径。这些约束对与外部元器件相连的接口十分重要,在这里,需要解释两个术语:/ ~2 {) ~1 j! h9 r# L, ~% C3 l
-Pad-to-Setup:也被称为OFFSET IN BEFORE约束,是用来保证外部输入时钟和外部输入数据的时序满足FPGA内部触发器的建立时间要求的。如下图TIN_BEFORE约束使得FPGA在进行DATA_IN和CLK_SYS布线时努力保证DATA_IN相对于CLK_SYS的延时小于TIN_BEFORE。
9 n# m- Z" [6 a+ G  Q# W% f-Clock-to-Out:也被称为OFFSET OUT AFTER约束,是用来满足下游器件建立保持(setup/hold)要求或输出时钟和数据之间时序要求的。9 u& I$ Q! p9 P9 U6 e
OFFSET IN BEFORE 或OFFSET OUT AFTER约束允许用户指定外部输入或输出引脚相对于时钟边沿到内部数据的延时。
! A# w3 ?; b. ], E! e9 L ; G- }  n( w' U3 |: |  ?
Xilinx FPGA有三个层次的约束:' L) S$ ~4 ^, ?8 \2 d
-Global OFFSET:为所有输入或输出指定相对某个特定时钟的约束;
* ]! x) r0 M5 b) m. R- k3 w-Group OFFSET:为一组输入或者输出指定相对驱动他们的时钟的约束
/ B+ C! [* E. n, S8 u-Net-SPECific OFFSET:为某个特定的输入或者输出指定相对其驱动时钟的约束;
( D. z" `1 }. c1 s9 Z/ l9 |( Z; n" G6 Q0 r) r( t) [& }5 d" ~
在进行约束的详细讲解之前,必须明确两个概念:$ o& @+ f2 ~' Z0 s: O+ d
-建立时间setup time6 `! }' j. q% c; g' A1 W  b
指在触发器始终上升沿到来之前,数据必须保持稳定的时间,如果建立时间不够,数据将不能被打入触发器;8 t3 k3 h$ n. ~" r% [7 ?2 K
-保持时间hold time
# w9 P. L* N: x& O6 [: A- u指触发器的时钟上升沿到来之后数据必须稳定不变的时间,如果保持时间不够,数据不能被打入触发器;0 p4 R4 o1 I; j( v8 p2 W4 L+ V1 y
& a; x) K( `0 c0 B5 R
2.   OFFSET IN约束
/ F' R" S1 ?. p2 MOFFSET IN约束用来设定Pad-to-Setup时序要求。OFFSET IN是对数据时钟关系的一种说明。它当分析建立时间要求(data_delay+setup-clock_delay-clock_arrival要求满足约束条件)的时候,需要考虑时钟延时(clock delay)、时钟边沿(clock EDGE)、DLL/DCM引入的时钟相位。+ Y9 d. c6 u* W4 x
. O! ^- F! ~* i5 p: _2 ~
2.1.  OFFSET IN BEFORE 约束. H+ y- }5 i5 x6 v% e5 ^
OFFSET IN BEFORE约束限定了数据从引脚传播到同步元件并在同步元件建立起来的所需的时间。比如 “OFFSET = IN 2 ns BEFORE clock_pad”这个约束,限定数据必须在下一个时钟边沿到来之前2ns内读取,因此FPGA会规划使得数据相对时钟边沿的超前2ns之内。, S/ {) d6 O: P. S8 d
: n$ G6 ?; H* b. H7 o2 j

' X0 h$ P( E  v  t- h: b2.1.1.   VALID约束
5 V: X5 x' a( r  KOFFSET IN约束往往和VALID约束一起使用。OFFSET IN约束在建立时间分析中作为建立时间要求使用,而VALID约束在保持时间约束中作为保持时间要求使用。VALID约束指定了输入数据的持续时间。在默认情况下,FPGA指定VALID和OFFSET的值相等,也即FPGA在默认情况下认为保持时间为0。
( g: O  F$ G% b3 P' l- e+ P, M+ _2 O* k4 C: s9 v
& T2 t0 |6 m4 J3 x/ y( F& `3 R

FPGA编程技巧:输入输出偏移约束详解.pdf

305.14 KB, 下载次数: 1, 下载积分: 威望 -5

该用户从未签到

2#
发表于 2022-6-17 13:08 | 只看该作者
学习学习,支持支持。||ヽ(* ̄▽ ̄*)ノミ|Ю
  • TA的每日心情
    开心
    2025-7-25 15:22
  • 签到天数: 1136 天

    [LV.10]以坛为家III

    3#
    发表于 2022-6-17 13:31 | 只看该作者
    专业和深度,学习下

    该用户从未签到

    4#
    发表于 2022-6-17 14:09 | 只看该作者
    专业和深度,学习下
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-25 23:03 , Processed in 0.125000 second(s), 26 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表