FPGA的建立时间和保持时间分别是什么?违例会有什么后果?

浏览量:10
时间: 2026-10-29 23:06:27

FPGA设计面试中非常高频的时序基础题,必须讲清采样沿前后两个不同的稳定窗口,并能联系静态时序分析。

面试回答的核心

建立时间是有效采样时钟沿到来前数据需要稳定的最短时间;保持时间是该时钟沿之后数据还需稳定的最短时间。违反任一要求都可能使触发器采样不可靠。

D触发器时钟采样边沿附近setup和hold时间窗口的时序示意图
建立时间位于采样边沿之前,保持时间位于采样边沿之后;判断STA报告时应分别分析两种约束。

01先用一句话解释两个时间窗口

以边沿触发的D触发器为例,建立时间tsetup要求D在采样时钟沿之前的一段时间稳定,保持时间thold要求D在该沿之后继续稳定。若数据恰好在禁止变化窗口内跳变,可能出现亚稳态或捕获错误。

02Setup违例通常怎样处理

建立时间违例常与组合逻辑链过长、布线延迟、时钟频率过高或约束不合理有关。可考虑流水线、简化逻辑、改善布局或合理调整时钟频率;应先确认时钟、输入输出与跨时钟域约束有效,不能只靠“忽略这条路径”。

03Hold违例为什么不能单靠降频率解决

保持时间关注同一采样沿附近的数据过早到达,与时钟周期增大不是一回事。通常需根据工具报告和时钟偏斜,在过快数据路径上增加适当延迟或由布局布线器进行hold修复。盲目加大延迟也可能损害setup裕量。

04面试参考回答

“setup是时钟沿前必须稳定多久,hold是时钟沿后必须保持多久。两者都影响触发器可靠采样。我会看STA中的起点、终点、数据路径与时钟偏斜,分别定位最长路径和过短路径,并在修改后同时复查setup/hold。”

面试常见失分点

把setup和hold都解释成“数据要保持一段时间”不够精确。尤其不能说“降低时钟频率就一定能修复hold违例”。

追问

为什么在FPGA综合通过之后,还必须看布局布线后的静态时序分析报告?


声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。仅供学习交流使用,不构成商业目的。版权归原作者所有,如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时删除。侵权投诉
相关推荐HOT
LNA低噪声放大器PCB布局关键要点

LNA低噪声放大器PCB布局关键要点射频工程师面试专题 · 从噪声系数到稳定性的布局设计全解析分类:射频电路 经验级别:2-4年 难度:中高级 题型:原理+实践... 详情>>

2026-08-11 17:47:21
FPGA状态机怎么设计?三段式和一段式有什么区别?FPGA面试

一句话答案状态机分三段式(现态寄存器+次态组合+输出组合)和一段式(全写在一个 always),推荐三段式:时序清晰、易综合、时序收敛好;输出用寄存器输出避免毛... 详情>>

2026-09-16 10:02:04
中间继电器的工作原理及作用详解

中间继电器是一种常见的电气元件,广泛应用于各种电路中,其作用是将信号放大或转换为另一种形式。在了解中间继电器的工作原理和作用之前,我们先来了解一下什么是继电器。... 详情>>

2023-09-09 14:36:37
嵌入式工程师面试项目经验怎么讲?3种结构让你讲出技术深度

分类:嵌入式工程师面试准备经验级别:基础难度:基础题型:面试准备/项目表达📖 本文概述嵌入式工程师面试中,项目经验是决定能否拿到offer的关键。很多人讲项目... 详情>>

2026-08-08 16:44:40
试解释根文件目录中/bin和/sbin及/usr/bin和/usr/sbin的区别?

用户和管理员必备的二进制文件,就会放在/bin。系统管理员必备,但是一般用户根本不会用到的二进制文件,就会放在/sbin。相对而言,不是用户必备 的二进制文... 详情>>

2024-03-27 15:20:53
开班信息