仅对英特尔可见 — GUID: mtr1423187200069
Ixiasoft
2.4.2.1. 高速时钟域(High-Speed Clock Domains)
2.4.2.2. 重构环路(Restructuring Loops)
2.4.2.3. 控制信号反压(Control Signal Backpressure)
2.4.2.4. 使用FIFO状态信号的流程控制
2.4.2.5. 包含skid缓冲器的流程控制
2.4.2.6. Read-Modify-Write存储器
2.4.2.7. 计数器和累加器
2.4.2.8. 状态机
2.4.2.9. 储存器
2.4.2.10. DSP模块
2.4.2.11. 一般逻辑
2.4.2.12. 求模与除法
2.4.2.13. 复位
2.4.2.14. 硬件重用
2.4.2.15. 算法要求
2.4.2.16. FIFO
2.4.2.17. 三元加法器(Ternary Adders)
5.2.1. 不足的寄存器(insufficient Registers)
5.2.2. 短路径/长路径(short path/long path)
5.2.3. 快进限制(Fast Forward Limit)
5.2.4. 环路(loop)
5.2.5. 每个时钟域一个关键链
5.2.6. 相关时钟组中的关键链
5.2.7. 复杂的关键链
5.2.8. 延伸到可定位的节点
5.2.9. 域边界入口和域边界出口(Domain Boundary Entry and Domain Boundary Exit)
5.2.10. 包括双时钟存储器的关键链
5.2.11. 关键链比特和总线
5.2.12. 延迟线
仅对英特尔可见 — GUID: mtr1423187200069
Ixiasoft
7.2. 顶层设计考量
I/O约束
为了从寄存器重定时获得最大性能,将顶层包装在一个寄存器环中,并从.sdc文件中删除以下约束条件:
- set_input_delay
- set_output_delay
这些约束模拟模块外的外部延迟。为分析设计优化的效果,您可以在模块内使用所有可用的裕量(slack)。此技术有助于最大化模块级上的性能。当移到全芯片时序收敛时,替换这些约束。
复位
如果将复位生成(reset generation)从设计中删除,那么要通过与设计中的一个输入管脚的直接连接来提供一个替换信号。此配置可能会影响 Intel® Hyperflex™ 体系结构FPGA中的重定时能力。添加两个流水线级到您的复位信号。此技术使Compiler能够在复位输入与寄存器的第一级之间进行优化。
特殊模块
重定时不会自动改变一些组件,例如DSP和M20K模块。为了通过重定时实现更高的性能,您可以手动重编译这些模块。注意以下条件:
- DSP:注意流水线深度。更多的流水线阶段会导致更快的设计。如果DSP模块中的逻辑级限制了重定时,那么需要添加更多的流水线阶段。
- M20K:重定时非常依赖于寄存器的存在来移动逻辑。通过使用M20K模块,您可以通过寄存逻辑存储器两次来帮助Compiler:
- 一次直接在M20K模块内
- 一次在架构中,在模块的管脚上
寄存模块
寄存模块的所有输入和输出。此寄存器环模拟模块嵌入在完整设计中时被驱动的方式。此环也避免了与连接到输入/输出的寄存器相关联的重定时限制。Compiler现在能够更现实地重定时第一级和最后一级寄存器。