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. 延迟线
2.2.7.3. 初始条件和Hyper-Registers
Intel® Hyperflex™ 体系结构布线架构包括Hyper-Registers,以实现最高性能。然而,除非适当考虑,否则初始上电条件会限制Compiler将寄存器重新定时到Hyper-Registers的能力。使用单个复位信号(而不是依赖于初始条件)将设计置于已知的功能状态,直到所有接口都已上电,锁定和训练为止。
如果必须依赖初始条件,并且系统要求所有寄存器同步启动,那么建议使用时钟门控。由于Hyper-Registers缺少复位或使能信号,因此无法使用复位控制信号将它们初始化为一个特定值。 Intel® Stratix® 10 Hyper-Registers能够上电到0或者1。 Intel® Agilex™ Hyper-Registers在配置期间上电到1。当系统启动时,在配置后立即显示初始值,而无需显式复位。
ALM和Hyper-Registers的时钟门控
独立信号驱动 Intel® Hyperflex™ 体系结构FPGA中ALM寄存器和Hyper-Registers的内部时钟控制。在配置过程中,寄存器逐行变为有效(与器件范围相反)。此外,ALM寄存器时钟可以独立于Hyper-Register时钟进行使能。如果设计时钟是自由运行的,那么这可能会导致行之间以及ALM寄存器与Hyper-Registers之间的潜在竞争条件。这些条件可能导致初始条件的覆盖。为了避免这些情况的发生,需要在在所有时钟控制逻辑置低和所有寄存器有效之前对时钟进行门控。