← 大疆FPGA逻辑岗B卷(19.08.06)

推荐答案 测试一下

FPGA相对于ASIC,优势时灵活可编程,不足是可实现的最高频率有限。请介绍一下在FPGA开发中典型的时序优化方法。

问答题 中等 经典问答问答题

参考答案

FPGA时序优化的核心是缩短关键路径延迟、减少时钟偏斜和减少组合逻辑级数。典型方法包括: 1. 流水线技术:在组合逻辑路径中插入寄存器,将长路径切割成多级短路径,降低关键路径的建立时间要求,但会引入额外延迟。 2. 寄存器平衡(Retiming):调整寄存器位置,使各路径的延迟均衡,例如将逻辑从慢路径移到快路径上。 3. 逻辑复制:对高扇出信号复制多份,分别驱动不同负载,减少布线延迟和扇出导致的延迟增量。 4. 减少组合逻辑级数:优化算法或使用查找表(LUT)结构,避免过深的逻辑链;利用进位链、DSP48等硬核实现算术运算。 5. 专用硬件资源替代:用BRAM实现大容量存储,用DSP块实现乘加操作,这些硬核延迟固定且远优于LUT+布线。 6. 时序约束优化:明确多周期路径、虚假路径,避免过度约束;设置合理的输入输出延迟,使工具能准确优化。 7. 时钟管理:使用PLL/DCM生成高速低抖动时钟;优先使用全局时钟网络;减少异步时钟域交叉。 8. 布局布线策略:使用区域约束(Pblock)将相关逻辑紧密放置;尝试不同算法(如探索式布线、时序优先)。 9. I/O时序优化:在IOB内插入寄存器,减少片外到片内的延迟。 10. 静态时序分析:迭代找出最差路径,针对性优化(如调整寄存器位置、增加寄存器级数)。 注意保持时间违例较少,通常通过调整寄存器级数或插入延迟修正。

涉及知识点

  • 流水线技术
  • 寄存器平衡(Retiming)
  • 逻辑复制与高扇出优化
  • 减少组合逻辑级数
  • 使用专用硬件资源(DSP/BRAM)
  • 时序约束与时钟管理
← 上一题
登录后反馈错题
下一题 →