View
221
Download
0
Tags:
Embed Size (px)
Citation preview
Dft & JTag course 2006
Automatic Verification of Timing Constraints
2
Today devices are challenging – million transistors & multiple gigahertz.
Unfortunately, the size and complexity of design constraints to build these designs are increasing exponentially.
One quarter of design projects undergo more than 10 iterations due to constraint issues .
Traditional design methods have largely ignored the design-constraint problem.
Introduction
Dft & JTag course 2006
Automatic Verification of Timing Constraints
3
Design constraints provide information on the design behavior and are usually
generated by the designer. The timing constraints can be false-paths (FP) or multi-cycle paths
(MCP) ,
Design Constraints
Dft & JTag course 2006
Automatic Verification of Timing Constraints
4
--The number of transistors on a chip increases approximately 58% per year, according to Moore's Law.
--The design productivity, facilitated by EDA tool improvements, grows only 21% per year .
The Design and Verification Gap
Dft & JTag course 2006
Automatic Verification of Timing Constraints
5
GOAL
Supplying an automatic way to verify the correctness of some timing constraints such as :
Multicycle paths
False paths
A step before jtag, RTL level.
Dft & JTag course 2006
Automatic Verification of Timing Constraints
6
• False paths (FP) and multi-cycle-paths (MCP) are timing exceptions that present a particularly difficult problem when trying to achieve timing closure in modern, high-performance designs.
• Typically, these exceptions, as well as all timing constraints, are considered late in the design cycle and are specified in response to timing problems during verification. For optimum timing results, all timing exceptions must be guaranteed to be correct.
MCP & FP
We want to minimize the delay of the device
Dft & JTag course 2006
Automatic Verification of Timing Constraints
7
• A multi-cycle path in a design is a register-to-register path through some combinational logic where if the source-register changes, the path will require N cycles (where N > 1) before the computation is propagated to the destination register.
-A finite-state machine controls the outputs such that the addition is driven out in one clock cycle, while the multiplication is driven out a cycle later, (needs 2 clk cycles)
What is Multi-Cycle Path
Dft & JTag course 2006
Automatic Verification of Timing Constraints
8
Example (MCP)
The circuit above takes the signals a_in and b_in and inputs them to both an adder and multiplier. A finite-state machine controls the outputs such that the addition is driven out in one clock cycle, while the multiplication is driven out a cycle later. In other words, it takes two cycles to produce the multiplication result.
Dft & JTag course 2006
Automatic Verification of Timing Constraints
9
- A false path is a path through a circuit that cannot be responsible for the circuit delay and no sequence of vectors result in the propagation of an event along the path.
- There are two types of false paths: synchronous and asynchronous. Synchronous false paths are correct when the logic path cannot execute. Asynchronous false paths are correct if the source and the target flops of the paths are from asynchronous clock domains. Furthermore, a valid synchronization scheme is required.
What is False Path
Dft & JTag course 2006
Automatic Verification of Timing Constraints
10
Example (Synchronous FP)
Notice the register muxReg that controls the two muxes in the design is one-hot, and as result there is no path from the input in1 to the output out2. Therefore this path may be ignored when performing timing analysis.
1
0
לא in1 שינוי ב out2מורגש ב
Dft & JTag course 2006
Automatic Verification of Timing Constraints
11
CLK ACLK A
CLK BCLK B
DD DADA DBDB
CLK ACLK A
DADA
CLK BCLK B
DBDB
Example (Asynchronous FP) Clock Domain Crossing Paths (CDC)Clock Domain Crossing Paths (CDC)
• Metastability Metastability
Dft & JTag course 2006
Automatic Verification of Timing Constraints
12
SynchronizersSynchronizers
Circuits that conditions CDC signals in order toCircuits that conditions CDC signals in order to reduce the probability of metastabilityreduce the probability of metastability
CLK ACLK A
CLK BCLK B
DD
DADA
CLK BCLK B
CLK ACLK A
CLK BCLK B
DD DADA DBDB
Dft & JTag course 2006
Automatic Verification of Timing Constraints
13
CDC SynchronizationSynchronizers
—Flip-flops in sequence reduce probability of metastability —2 D flip-flops is the most commonly used scheme —But leads to unpredictable delay in signal propagation
R1 R2clk_a
clk_b
data_in data_outsync
clk_b
syncR1.qR2.q 2דוגם אחרי
clk את הערך הנכון
Dft & JTag course 2006
Automatic Verification of Timing Constraints
14
SDC – Synopsys Design Constraints
• SDC file describes the “design intent” and surrounding constraints for synthesis, clocking, time, power, test and environmental and operating conditions.
This file includes the design constraints
Dft & JTag course 2006
Automatic Verification of Timing Constraints
15
Description of the problem• Textual mistakes . • Missing time-to-market
requirement . • No method exists fo ensuring valid
and consistent constraint formats in SDCs .
• difficult verification . • Critical Impact .
Dft & JTag course 2006
Automatic Verification of Timing Constraints
16
Description of the problem (cont)• Textual mistakes : Since the SDC files are entered in text format, it is
possible for the designer to make mistakes that causes the constraints to be inconsistent with the design. For example, the SDC files might reference a signal name that is not actually in the design.
• Missing time-to-market requirement :
It is essential to eliminate fundamental problems as early in the design cycle as possible. If a designer applies flawed constraints to a design, he may be unable to mitigate problems that surface later without making sweeping changes to the design, which results in the project’s missing its time-to-market goals.
Dft & JTag course 2006
Automatic Verification of Timing Constraints
17
Description of the problem (cont) • No method exists for ensuring valid and consistent
constraint formats in SDCs.
• difficult verification : The false-path and multi-cycle path
exceptions that SDCs specify are difficult to verify in the design context.
Dft & JTag course 2006
Automatic Verification of Timing Constraints
18
Description of the problem
• Critical Impact :
Incorrect timing constraints can leave chips with critical timing bugs that can cause recalls, re-spins, and redesigns, costing hundreds of thousands of dollars. Worse still, delays in getting to market and missed opportunities can be devastating.
Dft & JTag course 2006
Automatic Verification of Timing Constraints
19
Solution Automatic Verification of Timing Constraints
• Fortunately, Formal Verification can be used to analyze false path and multi-cycle path constraints and verify their correctness.
• SolidTC, a timing constraint verifier from Averant, applies formal verification technology to the problem of verifying timing constraints in complex, multi-million gate designs.
The automatic tool
Dft & JTag course 2006
Automatic Verification of Timing Constraints
20
Flow Through The Tool
It’s important to note this is a RTL too. When a path is reported as false, it is false under all delay assignments to gates and wires.
Dft & JTag course 2006
Automatic Verification of Timing Constraints
21
Conclusion
• Achieving timing closure is a critical factor in producing reliable, bug-free, high-performance designs. The key to this is thorough design verification, being sure not to inadvertently relax the design tests through the application of incorrect timing constraints.