在FPGA设计中,时序就是全部

当你的fpga设计不能满足时序要求时,原因也许并不明显。解决方案不仅仅依赖于使用fpga的实现工具来优化设计从而满足时序要求,也需要设计者具有明确目标和诊断/隔离时序问题的能力。设计者现在有一些小技巧和帮助来设置时钟;使用像synopsys synplify premier一样的工具正确地设置时序约束;然后调整参数使之满足赛灵思fpga设计性能的目标。
会有来自不同角度的挑战,包括:
? 更好的设计计划,例如完整的和精确的时序约束和时钟规范
? 节约时间的设计技术,例如为更好的性能结果,整合设计的各个部分而编写严谨的rtl代码,提出最高性能挑战,当你之后调整设计时减少迭代运行时间
? 综合和摆放以及路由时序的相关性,带来更好的时序质量的结果(qor)和时序收敛
让我更进一步地观察这三类中的技术,检验如何使用它们来达到时序目的。
第一步:更好的设计计划
最重要的就是确定正确且完整的设计约束。这些约束用于设计意图以及性能的目标和综合工具之间的通信。设计一旦综合完毕,这些约束和关键路径信息将被自动注释到vivado设计套件的摆放和路由(p&r)工具中,进一步确保满足时序。
第二步:rtl代码风格和关键路径调整
为了获得更好的时序,我们建议使用特定的代码风格来描述有限状态机、ram、数学/dsp功能、时钟树和移位寄存器。结果会提高时序qor,因为综合工具能够推断一个实现使用了fpga原语的构件。
此外,这些代码风格让你免于创建不必要的逻辑,例如可推测的锁存器、ram的读/写检查逻辑和打包进入dsp原语的逻辑。当需要更多这方面主题时,使用综合工具中的核生成器就成为值得考虑的关键点了。
第三步:获得最终的时序收敛
在综合、摆放和路由之后能够报告总体的时序信息。例如,synplify软件允许你使用tcl命令(report_timing)报告设计的具体部分。为了进一步提高时序qor,我们建议你关联综合之后和p&r之后的时序结果,具体是在时序关键路径上给定起点和终点的边界。
我们指出的方法会早早地截取时钟和约束设置问题,同时也提供多种技术来调整和关联你设计的时序以及拥有快速时序收敛的rtl
这篇博客改编自最近xcell journal上的文章“fpga设计中,时序就是全部”。关于该主题更多深层次的技术信息,见最近出版的xcell journal的这篇文章。点击这里在线阅读或下载pdf。
原文链接:
? copyright 2014 xilinx inc
如需转载,请注明出处

光纤接头怎么连接网线
注重科技创新 开展人工智能技术科研攻关
[译] [转] 特斯拉的Tabless电池到底有多“爆炸”?
英特尔20A、18A工艺流片,台积电面临挑战
2021中国工业互联网大会暨粤港澳大湾区数字经济大会强势来袭
在FPGA设计中,时序就是全部
三相倒顺开关的接线图和工作原理图
电路设计对数字地和模拟地隔离技巧解析
如何使用采用SPI Flash存储中文字符库的方法说明
光纤激光切割机的伺服伺服电机该如何维护
2023中国新一代人工智能科技产业发展报告
荣耀小K2儿童手表评测 回归儿童手表工具本质299元售价为父母减负
诺基亚9 PureView最新渲染图曝光,双面玻璃+金属中框设计
什么是 SHaaS(智能家居即服务),您为什么要关心?
在Allegro环境下运行SKILL的方法
探讨一下在UVM中典型的验证平台
西门子SCL语言编程系列-计算方差
教你如何通过边打游戏边学编程
通用型工业电源可采用高电压输入并产生从8个1A到2个4A的输出
三星将加大内存芯片资本支出并建新生产线