仅对英特尔可见 — GUID: mwh1410383726085
Ixiasoft
2.5.1.1. Report Fmax Summary(报告Fmax汇总)
2.5.1.2. Report Timing(报告时序)
2.5.1.3. Report Timing By Source Files(按源文件报告时序)
2.5.1.4. Report Data Delay(报告数据延迟)
2.5.1.5. Report Net Delay(报告网络延迟)
2.5.1.6. Report Clocks and Clock Network(报告时钟和时钟网络)
2.5.1.7. Report Clock Transfers(报告时钟传输)
2.5.1.8. Report Metastability(报告亚稳定性)
2.5.1.9. Report CDC Viewer(报告CDC Viewer)
2.5.1.10. Report Asynchronous CDC(报告异步CDC)
2.5.1.11. Report Logic Depth(报告逻辑深度)
2.5.1.12. Report Neighbor Paths(报告相邻路径)
2.5.1.13. Report Register Spread
2.5.1.14. Report Route Net of Interest
2.5.1.15. Report Retiming Restrictions(报告重定时限制)
2.5.1.16. Report Register Statistics(报告寄存器统计)
2.5.1.17. Report Pipelining Information(报告流水线信息)
2.5.1.18. 报告时间借用数据
2.5.1.19. Report Exceptions and Exceptions Reachability(报告异常和异常可达性)
2.5.1.20. Report Bottlenecks(报告瓶颈)
仅对英特尔可见 — GUID: mwh1410383726085
Ixiasoft
2.6.5.5.1. Exclusive Clock Groups(独占时钟组)(-logically_exclusive或者-physically_exclusive)
您可以使用logically_exclusive选项来声明两个时钟在物理上同时处于活动状态,但这两个时钟不同时被使用(也就是说,时钟在逻辑上是互斥的)。physical_exclusive选项声明那些不能同时在物理上位于器件上的时钟。
如果您对同一个节点定义多个时钟,那么您可以使用时钟组分配(clock group assignments)和logically_exclusive选项将时钟声明为互斥的。此技术对于多路复用时钟很有用。
例如,考虑一个由100-MHz或者125-MHz时钟驱动的输入端口。您可以使用logically_exclusive选项来声明时钟是互斥的,并移除100-MHz与125-MHz时钟之间的时钟传输,如下图和示例SDC约束所示:
图 115. 内部时钟复用器到FPGA的同步路径
内部时钟复用器的SDC约束示例
# Create a clock on each port create_clock -name clk_100 -period 10 [get_ports clkA] create_clock -name clk_125 -period 8 [get_ports clkB] # Create derived clocks on the output of the mux create_generated_clock -name mux_100 -source [get_ports clkA] \ [get_pins clkmux|combout] create_generated_clock -name mux_125 -source [get_ports clkB] \ [get_pins clkmux|combout] -add # Set the two clocks as exclusive clocks set_clock_groups -logically_exclusive -group {mux_100} -group {mux_125}
图 116. 外部时钟复用器到FPGA的同步路径
外部时钟复用器的SDC约束示例
# Create virtual clocks for the external primary clocks create_clock -period 10 -name clkA create_clock -period 20 -name clkB # Create derived clocks on the port clk create_generated_clock -name mux_100 -master_clock clkA [get_ports clk] create_generated_clock -name mux_125 -master_clock clkB [get_ports clk] -add # Assume no clock network latency between the external clock sources & the \ clock mux output set_clock_latency -source 0 [get_clocks {mux_100 mux_125}] # Set the two clocks as exclusive clocks set_clock_groups -physically_exclusive -group mux_100 -group mux_125