Visible to Intel only — GUID: qye1730501623341
Ixiasoft
1.1.1. Timing Path and Clock Analysis
1.1.2. Clock Setup Analysis
1.1.3. Clock Hold Analysis
1.1.4. Recovery and Removal Analysis
1.1.5. Multicycle Path Analysis
1.1.6. Metastability Analysis
1.1.7. Timing Pessimism
1.1.8. Clock-As-Data Analysis
1.1.9. Multicorner Timing Analysis
1.1.10. Time Borrowing
2.1. Using Timing Constraints throughout the Design Flow
2.2. Timing Analysis Flow
2.3. Applying Timing Constraints
2.4. Timing Constraint Descriptions
2.5. Timing Report Descriptions
2.6. Scripting Timing Analysis
2.7. Using the Quartus® Prime Timing Analyzer Document Revision History
2.8. Quartus® Prime Pro Edition User Guide: Timing Analyzer Archive
2.4.4.5.1. Default Multicycle Analysis
2.4.4.5.2. End Multicycle Setup = 2 and End Multicycle Hold = 0
2.4.4.5.3. End Multicycle Setup = 2 and End Multicycle Hold = 1
2.4.4.5.4. Same Frequency Clocks with Destination Clock Offset
2.4.4.5.5. Destination Clock Frequency is a Multiple of the Source Clock Frequency
2.4.4.5.6. Destination Clock Frequency is a Multiple of the Source Clock Frequency with an Offset
2.4.4.5.7. Source Clock Frequency is a Multiple of the Destination Clock Frequency
2.4.4.5.8. Source Clock Frequency is a Multiple of the Destination Clock Frequency with an Offset
2.5.1. Report Fmax Summary
2.5.2. Report Timing
2.5.3. Report Timing By Source Files
2.5.4. Report Data Delay
2.5.5. Report Net Delay
2.5.6. Report Clocks and Clock Network
2.5.7. Report Clock Transfers
2.5.8. Report Metastability
2.5.9. Report CDC Viewer
2.5.10. Report Asynchronous CDC
2.5.11. Report Logic Depth
2.5.12. Report Neighbor Paths
2.5.13. Report Register Spread
2.5.14. Report Route Net of Interest
2.5.15. Report Retiming Restrictions
2.5.16. Report Register Statistics
2.5.17. Report Pipelining Information
2.5.18. Report Time Borrowing Data
2.5.19. Report Exceptions and Exceptions Reachability
2.5.20. Report Bottlenecks
2.5.21. Check Timing
2.5.22. Report SDC
3.1.1. CDC Timing Overview
3.1.2. Identifying CDC Timing Issues Using Design Assistant
3.1.3. Identifying CDC Timing Issues Using Timing Reports
3.1.4. Debug CDC Example 1—Incorrect SDC Definition
3.1.5. Debug CDC Example 2—Additional Logic in the Crossing
3.1.6. Debug CDC Example 3—CDC Depending on Two Simultaneous Clock Domains
Visible to Intel only — GUID: qye1730501623341
Ixiasoft
3.1.5.1. Resolve Violation: Combinational Logic Before Synchronizer Chain
The following steps describe how to resolve the CDC-50011 Combinational Logic Before Synchronizer Chain DRC violation that occurs for CDC Example 2:
Figure 229. Design Rule Violations In Design Assistant
- In the Design Assistant, click the CDC-50011 violation. The right pane displays each violation with the same topology. Each row includes the associated source and destination registers and clock domains.
Figure 230. CDC-50011 Details
- Right-click the CDC-50011 violation, then click Report Asynchronous CDC. The Report Asynchronous CDC report shows the topology under the Transfer Preceded by Combinational Logic category.
Figure 231. CDC Topology Under Transfer Preceded by Combinational Logic
- Click the CDC Statistics tab to confirm that the Compiler properly identifies the synchronizer and the two registers as sources for the synchronizer.
Figure 232. CDC Statistics Tab Identifies Synchronizer and Register Sources
- Click the Schematic View tab to identify the additional Comb Logic 0 logic block between the source registers and the first register of the synchronizer. The light green color indicates a false path.
Figure 233. Schematic View Showing Additional Logic and False Path
- Take corrective action to resolve the logic interfering with the CDC chain:
- Relocate any necessary logic upstream from the synchronizer.
- Add an additional register before the synchronizer. This extra register serves as a staging register to ensure that the data is properly synchronized and stable before entering the synchronizer. This prevents variable delays that could compromise the synchronizer's ability to mitigate metastability.
Figure 234. Schematic View Showing Relocation of Logic and Additional Register
- Modify the false path definition in the .sdc to reflect the addition of the new reg_clk1 register. Define the false path between reg_clk1 and the first register inside the synchronizer, as follows:
set_false_path -from [get_registers reg_clk1] -to \ [get_registers my_sync|sync_ff[0]]
- After modifying the false path, Report Asynchronous CDC reports this as a Compliant Transfer.
Figure 235. Compliant Transfer in Report Asynchronous CDC
- Verify the correct CDC topology in the CDC Statistics, SDC Statistics, and Schematic View tabs.
Figure 236. Schematic View Showing Correct Topology