Tito Orlandi Lo studio della letteratura copta, 1992-1996. Questa ...
introduction-to-questa-autocheck-covercheck,-and-formal-connectivity-checking.pdf
-
Upload
stacy-mcmahon -
Category
Documents
-
view
341 -
download
34
Transcript of introduction-to-questa-autocheck-covercheck,-and-formal-connectivity-checking.pdf
-
Chris Rockwood
Introduction toQuesta AutoCheck, CoverCheck, and Formal Connectivity Checking
Verification TechnologistDesign Verification Technology Division
April 2014
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Agenda
Questa AutoCheck Automatic formal checks for common design issues
Questa CoverCheck Formal analysis to improve code coverage Also targets SVA covergroups (new in 10.3 release)
Connectivity Checking with Questa Formal Exhaustive validation of SoC connectivity
2
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Questa PlatformMentor Graphics Functional Verification Solutions
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
A broad arsenal of verification solutions
Seamless integration of formal and simulation
Common compilers
Common GUI features
Unified Coverage Database
3
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Property Checking
Automated Applications
Fully Automatic
Assertion GenerationReset and X-StatesImprove CoverageAutomatic ChecksCDC Verification
Questa Formal-based TechnologiesA full range of formal solutions
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
I/F ProtocolsControl LogicData IntegrityPost-Silicon Debug
ConnectivityRegister Map ChecksDesign Constraints
HigherEffort
LowEffort
4
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Property Checking
Automated Applications
Fully Automatic
Assertion GenerationReset and X-StatesImprove CoverageAutomatic ChecksCDC Verification
Questa Formal-based TechnologiesA full range of formal solutions
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
I/F ProtocolsControl LogicData IntegrityPost-Silicon Debug
ConnectivityRegister Map ChecksDesign Constraints
HigherEffort
LowEffort
4
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Agenda
Questa AutoCheck Automatic formal checks for common design issues
Questa CoverCheck Formal analysis to improve code coverage Also targets SVA covergroups (new in 10.3 release)
Connectivity Checking with Questa Formal Exhaustive validation of SoC connectivity
5
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Property Checking
Automated Applications
Fully Automatic
Assertion GenerationReset and X-StatesImprove CoverageAutomatic ChecksCDC Verification
Questa Formal-based TechnologiesA full range of formal solutions
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
I/F ProtocolsControl LogicData IntegrityPost-Silicon Debug
ConnectivityRegister Map ChecksDesign Constraints
HigherEffort
LowEffort
6
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Automatic ChecksEasy-to-use, predefined checks for common problems
Push-button functional verificationfor checks such as:
Initialization Checks- Uninitialized registers- X propagation/reachability
Functional Issue Checks - Combinational loops- Case statement checks- Arithmetic checks - Bus checks- FSM checksCoverage Reachability Checks- Unreachable Logic- Unreachable FSM state- Unreachable FSM transition- Register stuck at constant
Verilog, VHDL,SystemVerilog
RTL
Verilog, VHDL,SystemVerilog
7
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Automatic ChecksEasy-to-use, predefined checks for common problems
Push-button functional verificationfor checks such as:
Initialization Checks- Uninitialized registers- X propagation/reachability
Functional Issue Checks - Combinational loops- Case statement checks- Arithmetic checks - Bus checks- FSM checksCoverage Reachability Checks- Unreachable Logic- Unreachable FSM state- Unreachable FSM transition- Register stuck at constant
Synthesized Netlist
Formal Netlist
Includes design functionality, design configurations, operating conditions, and initialization sequence
Verilog, VHDL,SystemVerilog
RTL
Verilog, VHDL,SystemVerilog
No testbenchNo assertionsNo constraints (initially)
Assumptions optional
7
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Finding Bugs with Simulation
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies8
Timeline
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Finding Bugs with Simulation
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies8
Develop RTL
RTL
Timeline
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Finding Bugs with Simulation
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies8
Develop RTL
Develop testbench RTLTestbench
Timeline
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Finding Bugs with Simulation
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies8
Develop RTL
Develop testbench
Run simulationSimulate
RTLTestbench
Timeline
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Finding Bugs with Simulation
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies8
Develop RTL
Develop testbench
Run simulation
Measure results
Simulate
RTLTestbench
Coverage
Timeline
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Finding Bugs with Simulation
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies8
Develop RTL
Develop testbench
Run simulation
Measure results
Bug?
Simulate
RTLTestbench
CoverageAnalyze results Analyze
Timeline
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Finding Bugs with Simulation
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies8
Develop RTL
Develop testbench
Run simulation
Measure results
Bug?
Simulate
RTLTestbench
CoverageAnalyze results Analyze
Time to find bugs can be too longSimulation cannot find all bugs
Timeline
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Finding Bugs with Questa AutoCheck
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies9
Timeline
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Finding Bugs with Questa AutoCheck
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies9
Develop RTL
RTL
Timeline
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Finding Bugs with Questa AutoCheck
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies9
Develop RTL
Run AutoCheckAutoCheck
RTL
Timeline
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Finding Bugs with Questa AutoCheck
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies9
Develop RTL
Run AutoCheck
Bug?
AutoCheck
RTL
Analyze results
Timeline
Analyze
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Finding Bugs with Questa AutoCheck
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies9
Develop RTL
Run AutoCheck
Bug?
AutoCheck
RTL
Analyze results
Timeline
Analyze
You can useAutoCheck
as soon as you have your RTL
code
You can useAutoCheck
as soon as you have your RTL
code
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Finding Bugs with Questa AutoCheck
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies9
Develop RTL
Run AutoCheck
Bug?
AutoCheck
RTL
Analyze results
Shortest time to find bugsFinds bugs that simulation misses!
Timeline
Analyze
You can useAutoCheck
as soon as you have your RTL
code
You can useAutoCheck
as soon as you have your RTL
code
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Questa AutoCheck
Questa
Automated design checking for: Common design errors Coverage closure issues The functional impact of Xs
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies10
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Questa AutoCheck
No testbench required You can use it whenever you have RTL available for your
block/chip and BEFORE you simulate
Questa
Automated design checking for: Common design errors Coverage closure issues The functional impact of Xs
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies10
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Questa AutoCheck
No testbench required You can use it whenever you have RTL available for your
block/chip and BEFORE you simulate
No need to write assertions Assertions are automatically generated by Questa AutoCheck and
used/proved under the hood
Questa
Automated design checking for: Common design errors Coverage closure issues The functional impact of Xs
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies10
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Questa AutoCheck
No testbench required You can use it whenever you have RTL available for your
block/chip and BEFORE you simulate
No need to write assertions Assertions are automatically generated by Questa AutoCheck and
used/proved under the hood
Easy to run
Questa
Automated design checking for: Common design errors Coverage closure issues The functional impact of Xs
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies10
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Arithmetic and Bus Checks
Clear reporting of violations
Easy debugging Show waveforms Source code view
Arithmetic checks Overflow checks Division by 0 checks
Various bus checks Multiple drivers active No driver active
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies11
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Arithmetic and Bus Checks
Clear reporting of violations
Easy debugging Show waveforms Source code view
Arithmetic checks Overflow checks Division by 0 checks
Various bus checks Multiple drivers active No driver active
Overflow happens here
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies11
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Combinational Feedback Loop Check
Combinational feedback loops (CFLs) may simulate at the RTL level without problems
Bad behavior only shows in simulation with back-annotated timing or ultimately in silicon
Easy to debug Schematic view spans modules Direct link to source code
Finds CFLs early Saves debug time later Prevent respins Checks sequential control logic
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies12
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Combinational Feedback Loop Check
Combinational feedback loops (CFLs) may simulate at the RTL level without problems
Bad behavior only shows in simulation with back-annotated timing or ultimately in silicon
Easy to debug Schematic view spans modules Direct link to source code
Finds CFLs early Saves debug time later Prevent respins Checks sequential control logic
Loops can span multiple levels of logic and modules
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies12
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Example: Dead Code
Sometimes dead code is due to a complex functional bug in the design and should be resolved
Example: AutoCheck will find this; most lint tools wont:always @(posedge clk or negedge rstn)
if (!rstn) en1
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Example: Dead Code
Sometimes dead code is due to a complex functional bug in the design and should be resolved
Example: AutoCheck will find this; most lint tools wont:always @(posedge clk or negedge rstn)
if (!rstn) en1
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Example: FSM Deadlock with Dead Code
Sometimes checks are related
Simple FSM Deadlock conditions due to incorrect structure can be found by lint tools and Questa AutoCheck
More complex sequential logic causing FSM Deadlock and Dead Code can only be found by Questa AutoCheck
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Complex Sequential
Logic
case (cstate)3'b001: if (en)
nstate
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Example: FSM Deadlock with Dead Code
Sometimes checks are related
Simple FSM Deadlock conditions due to incorrect structure can be found by lint tools and Questa AutoCheck
More complex sequential logic causing FSM Deadlock and Dead Code can only be found by Questa AutoCheck
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Complex Sequential
Logic
case (cstate)3'b001: if (en)
nstate
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Example: FSM Deadlock with Dead Code
Sometimes checks are related
Simple FSM Deadlock conditions due to incorrect structure can be found by lint tools and Questa AutoCheck
More complex sequential logic causing FSM Deadlock and Dead Code can only be found by Questa AutoCheck
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Complex Sequential
Logic
case (cstate)3'b001: if (en)
nstate
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Example: FSM Deadlock with Dead Code
Sometimes checks are related
Simple FSM Deadlock conditions due to incorrect structure can be found by lint tools and Questa AutoCheck
More complex sequential logic causing FSM Deadlock and Dead Code can only be found by Questa AutoCheck
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Complex Sequential
Logic
case (cstate)3'b001: if (en)
nstate
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Example: FSM Unreachable State/Transition
Lint finds simple case; only AutoCheck finds complex caseprocess (clk,rstn) begin
if (rstn = '0') then start
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Example: FSM Unreachable State/Transition
Lint finds simple case; only AutoCheck finds complex caseprocess (clk,rstn) begin
if (rstn = '0') then start
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Example: FSM Unreachable State/Transition
Lint finds simple case; only AutoCheck finds complex caseprocess (clk,rstn) begin
if (rstn = '0') then start
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Example: FSM Unreachable State/Transition
Lint finds simple case; only AutoCheck finds complex caseprocess (clk,rstn) begin
if (rstn = '0') then start
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Other Miscellaneous Design Checks
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies16
Various register checks Multiply-driven signals Stuck-at checks
Clock-in-data checks
Undriven logic checks
Illegal range checks
Case statement checks
and other RTL, structural, and formal checks!
Develop RTL
Run AutoCheck
Bug?
Analyze results
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Other Miscellaneous Design Checks
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies16
Various register checks Multiply-driven signals Stuck-at checks
Clock-in-data checks
Undriven logic checks
Illegal range checks
Case statement checks
and other RTL, structural, and formal checks!
AutoCheck finds design problems early
Develop RTL
Run AutoCheck
Bug?
Analyze results
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
AutoCheck: Intuitive Debug
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies17
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
AutoCheck: Intuitive Debug
Select Category
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies17
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
AutoCheck: Intuitive Debug
Select Category
RMB choose menu item to show source/schematic/
FSM/waveforms
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies17
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Conclusion
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies18
Simulation alone is not enough It takes too long to find bugs Not all bugs will be found in simulation
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Conclusion
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies18
Simulation alone is not enough It takes too long to find bugs Not all bugs will be found in simulation
Questa
Automated design checking for: Common design errors Coverage closure issues The functional impact of Xs
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Conclusion
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies18
Simulation alone is not enough It takes too long to find bugs Not all bugs will be found in simulation
Questa
Automated design checking for: Common design errors Coverage closure issues The functional impact of Xs
The shortest time to find bugsFinds critical bugs that simulation cant find
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Agenda
Questa AutoCheck Automatic formal checks for common design issues
Questa CoverCheck Formal analysis to improve code coverage Also targets SVA covergroups (new in 10.3 release)
Connectivity Checking with Questa Formal Exhaustive validation of SoC connectivity
19
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Property Checking
Automated Applications
Fully Automatic
Assertion GenerationReset and X-StatesImprove CoverageAutomatic ChecksCDC Verification
Questa Formal-based TechnologiesA full range of formal solutions
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
I/F ProtocolsControl LogicData IntegrityPost-Silicon Debug
ConnectivityRegister Map ChecksDesign Constraints
HigherEffort
LowEffort
20
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Automatic Checks: CoverCheckEasy-to-use predefined checks for common problems
Push-button functional verification for checks such as:
Initialization Checks- Uninitialized registers- X propagation/reachability
Functional Issue Checks - Combinational loops- Arithmetic checks - Bus checks- Coverage Reachability Checks- Statement- Branch- Condition- Expression- FSM- Toggle- Covergroups (New in 10.3)
Verilog, VHDL,SystemVerilog
RTL
Verilog, VHDL,SystemVerilog
21
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Automatic Checks: CoverCheckEasy-to-use predefined checks for common problems
Push-button functional verification for checks such as:
Initialization Checks- Uninitialized registers- X propagation/reachability
Functional Issue Checks - Combinational loops- Arithmetic checks - Bus checks- Coverage Reachability Checks- Statement- Branch- Condition- Expression- FSM- Toggle- Covergroups (New in 10.3)
Synthesized Netlist
Formal Netlist
Includes design functionality, design configurations, operating conditions, and initialization sequence
Verilog, VHDL,SystemVerilog
RTL
Verilog, VHDL,SystemVerilog
No testbenchNo assertionsNo constraints (initially)
Assumptions optional
21
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Coverage Metrics
Basic: Code/FSM/Assertion Coverage Checks that all RTL has been exercised Checks that all assertions have been exercised
Semi-automated: Transaction/Structural Coverage Checks that all types of transactions have occurred Ensures that the tests have sufficiently stressed the design
Advanced: Functional Coverage Checks that all requirements for the design have been tested Does the design work in all scenarios?
All of these coverage types are measured and tracked to determine when verification is complete and the chip is ready to tape out or go into the lab
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies22
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Coverage Metric Holes
Code/FSM/Assertion Coverage Functional dead code and unreachable FSM states/transitions Unreachable covergroup bins Modes of the design that create dead code Time can be wasted trying to hit these holes!
Transaction/Structural Coverage Testbench doesnt stress the design enough Incomplete functional models dont exercise all transactions
Functional Coverage Incomplete specification or planning; lack of knowledge or time
Proper test planning can mitigate these challenges
Making use of static verification techniques such as Questa CoverCheck can minimize time to closure
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies23
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Code Coverage: Statement (s)
Counts the execution of each statement on a line Even if multiple statements
Example:always @(posedge clk or negedge rstn)
reg
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Code Coverage: Statement (s)
Counts the execution of each statement on a line Even if multiple statements
Example:always @(posedge clk or negedge rstn)
reg
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Code Coverage: Branch (b)
Counts the execution of each conditional if/then/else and case statement All true and false branches are considered Each (if/else if/else | case) element counts as a branch
Example (if statement):if (!rstn)
q
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Code Coverage: Branch (b)
Counts the execution of each conditional if/then/else and case statement All true and false branches are considered Each (if/else if/else | case) element counts as a branch
Example (if statement):if (!rstn)
q
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Code Coverage: Condition (c)
Analyzes decisions made in if and ternary statements Considered an extension of branch coverage
Example:if (ce && we)
1 0/1
Report style based on Focused Expression CoverageEnabled Coverage Active Hits Misses % Covered
---------------- ------ ---- ------ ---------
FEC Condition Terms 16 13 3 81.2
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies26
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Code Coverage: Condition (c)
Analyzes decisions made in if and ternary statements Considered an extension of branch coverage
Example:if (ce && we)
1 0/1
Report style based on Focused Expression CoverageEnabled Coverage Active Hits Misses % Covered
---------------- ------ ---- ------ ---------
FEC Condition Terms 16 13 3 81.2
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
All FEC conditions must be hit:
ce = 0,1; we = 0,1
ce is uncovered:
Never hit 0
26
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Code Coverage: Expression (e)
Analyzes expressions on the right hand side of an assignment
Example:wire C = A && B
1 0/1
Report style based on Focused Expression CoverageEnabled Coverage Active Hits Misses % Covered
---------------- ------ ---- ------ ---------
FEC Condition Terms 25 14 11 56.0
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies27
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Code Coverage: Expression (e)
Analyzes expressions on the right hand side of an assignment
Example:wire C = A && B
1 0/1
Report style based on Focused Expression CoverageEnabled Coverage Active Hits Misses % Covered
---------------- ------ ---- ------ ---------
FEC Condition Terms 25 14 11 56.0
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
All FEC conditions must be hit:
A = 0,1; B = 0,1
A is uncovered:Never hit 0
27
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Code Coverage: Toggle (t)
Counts each time a logic node transitions from one state to another
Example:reg FF_A;
always @(posedge clk)
FF_A
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Code Coverage: Toggle (t)
Counts each time a logic node transitions from one state to another
Example:reg FF_A;
always @(posedge clk)
FF_A
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Code Coverage: FSM (f)
Counts the states and transitions of each FSM Example:
FSM States: S1; S2; S3
FSM Transitions: S1 S1; S1 S2;
S2 S3; S2 S1; S3 S1
Report style based on FSM States and TransitionsEnabled Coverage Active Hits Misses % Covered
---------------- ------ ---- ------ ---------
States 3 3 0 100.0
Transitions 5 4 1 80.0
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies29
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Code Coverage: FSM (f)
Counts the states and transitions of each FSM Example:
FSM States: S1; S2; S3
FSM Transitions: S1 S1; S1 S2;
S2 S3; S2 S1; S3 S1
Report style based on FSM States and TransitionsEnabled Coverage Active Hits Misses % Covered
---------------- ------ ---- ------ ---------
States 3 3 0 100.0
Transitions 5 4 1 80.0
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
All states and transitions must be hit
This transition not exercised (uncovered)
29
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Typical Coverage Closure Methods
Fix design issues that prevent coverage from being achieved
Run more vectors to hit missing coverage Directed tests Constrained-random tests Intelligent testbench generation (e.g., Questa inFact) Spend a lot of time analyzing and applying new vectors
Add exclusions by hand Sometimes the simulator can add automated exclusions
Use an automated flow to generate exclusions for coverage elements that are impossible to hit
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies30
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Checks for Coverage Exclusions
Coverage Model
31 Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Checks for Coverage Exclusions
Branch Unreachable if/else and case branches
Coverage Model
31 Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Checks for Coverage Exclusions
Branch Unreachable if/else and case branches
Condition/Expression Unreachable FEC conditions
Coverage Model
31 Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Checks for Coverage Exclusions
Branch Unreachable if/else and case branches
Condition/Expression Unreachable FEC conditions
Statement Unreachable lines of code
Coverage Model
31 Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Checks for Coverage Exclusions
Branch Unreachable if/else and case branches
Condition/Expression Unreachable FEC conditions
Statement Unreachable lines of code
Toggle Unreachable register transitions
Coverage Model
31 Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Checks for Coverage Exclusions
Branch Unreachable if/else and case branches
Condition/Expression Unreachable FEC conditions
Statement Unreachable lines of code
Toggle Unreachable register transitions
FSM Unreachable FSM states and transitions
Coverage Model
31 Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Checks for Coverage Exclusions
Branch Unreachable if/else and case branches
Condition/Expression Unreachable FEC conditions
Statement Unreachable lines of code
Toggle Unreachable register transitions
FSM Unreachable FSM states and transitions
Covergroups (new in 10.3) Unreachable covergroup bins
Coverage Model
31 Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Checks for Coverage Exclusions
Branch Unreachable if/else and case branches
Condition/Expression Unreachable FEC conditions
Statement Unreachable lines of code
Toggle Unreachable register transitions
FSM Unreachable FSM states and transitions
Covergroups (new in 10.3) Unreachable covergroup bins
Unreachable items are automatically excludedfrom your coverage model
Coverage Model
31 Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
CoverCheck Example Statement Coverage
Dead code easily slips into the design Especially after changes are made
Dead code often identifies incorrect assumptions Can lead to critical bugs due to differing interpretation of design
requirements
May synthesize into logic that is not needed
32 Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
CoverCheck Example Statement Coverage
Dead code easily slips into the design Especially after changes are made
Dead code often identifies incorrect assumptions Can lead to critical bugs due to differing interpretation of design
requirements
May synthesize into logic that is not neededreg [1:0] R;always @* begin
if (a) R = 2'b00;else if (b) R = 2'b01;else R = 2'b11;
end
R can never be 2b10
32 Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
CoverCheck Example Statement Coverage
Dead code easily slips into the design Especially after changes are made
Dead code often identifies incorrect assumptions Can lead to critical bugs due to differing interpretation of design
requirements
May synthesize into logic that is not neededreg [1:0] R;always @* begin
if (a) R = 2'b00;else if (b) R = 2'b01;else R = 2'b11;
end
reg T;always @* beginT = 1'bX;case (R)2'b00: T = 1'b0;2'b01: T = 1'b1;2'b10: T = 1'b1;2'b11: T = 1'b0;endcase
endR can never be 2b10 Hence, this statement can never be reached
32 Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
RTLCoverCheck
Questa CoverCheck: Before SimulationUse formal analysis as a stand-alone tool to target coverage
33
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Simulation
Coverage Exclusions
TB
RTLCoverCheck
Questa CoverCheck: Before SimulationUse formal analysis as a stand-alone tool to target coverage
CoverageResults
33
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Simulation
Coverage Exclusions
TB
RTLCoverCheck
Questa CoverCheck: Before SimulationUse formal analysis as a stand-alone tool to target coverage
CoverageResults
33
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Simulation
Coverage Exclusions
TB
RTLCoverCheck
Questa CoverCheck: Before SimulationUse formal analysis as a stand-alone tool to target coverage
CoverageResults
This flow can be inefficientbecause all coverage itemsin the RTL code are targetedby CoverCheck, which iscomputationally expensive
33
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
RTLSimulation
Questa CoverCheck: After SimulationUse formal analysis to improve simulation results
TB
34
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
RTLSimulation
Questa CoverCheck: After SimulationUse formal analysis to improve simulation results
CoverageResults
TB
34
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
RTLSimulation
Questa CoverCheck: After SimulationUse formal analysis to improve simulation results
CoverageResults
CoverCheck
TB
34
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Coverage Exclusions
RTLSimulation
Questa CoverCheck: After SimulationUse formal analysis to improve simulation results
CoverageResults
CoverCheck
TB
34
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Coverage Exclusions
RTLSimulation
Questa CoverCheck: After SimulationUse formal analysis to improve simulation results
CoverageResults
CoverCheck
TB
This flow is optimal becauseonly the coverage items thatwere not hit in simulationare targeted by CoverCheck
34
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
CoverCheck Results in qverify GUI
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies35
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
CoverCheck Results in qverify GUI
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies35
Unreachable FSM stateDouble-click or RMB, Show FSM to
visualize
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
CoverCheck Results: Covergroups
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies36
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
CoverCheck Results: Covergroups
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies36
Covergroup results in separate tab
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Example: Generated Exclusion File
ex.do#
# Generated Exclusion File
#
coverage exclude -du work.pci_wb_slave -srcfile /project/design/rtl/vlog/pci_wb_slave.v
-linerange 757 -item s 1 -comment "CoverCheck:Statement"
coverage exclude -du work.pci_wb_slave_unit -srcfile project/design/rtl/vlog/pci_wb_slave_unit.v
-fecexprrow 703 2 -item 1 -comment "CoverCheck:Expression"
coverage exclude -du work.pci_wb_slave -srcfile /project/design/rtl/vlog/pci_wb_slave.v
-feccondrow 886 1 -item 1 -comment "CoverCheck:Condition"
coverage exclude -du work.pci_conf_space -togglenode pci_ba0_bit31_12\[12\] -trans 10
-comment "CoverCheck:Toggle"
coverage exclude -du work.pci_wb_slave -fstate c_state S_CONF_READ
-comment "CoverCheck:FSM"
coverage exclude -cvgpath {/SYSTEM/bridge32_top/bridge/i_pci_target_unit/.../cp/auto[0]}
-comment "CoverCheck:Coverbin"
...
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies37
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Example: Generated Exclusion File
ex.do#
# Generated Exclusion File
#
coverage exclude -du work.pci_wb_slave -srcfile /project/design/rtl/vlog/pci_wb_slave.v
-linerange 757 -item s 1 -comment "CoverCheck:Statement"
coverage exclude -du work.pci_wb_slave_unit -srcfile project/design/rtl/vlog/pci_wb_slave_unit.v
-fecexprrow 703 2 -item 1 -comment "CoverCheck:Expression"
coverage exclude -du work.pci_wb_slave -srcfile /project/design/rtl/vlog/pci_wb_slave.v
-feccondrow 886 1 -item 1 -comment "CoverCheck:Condition"
coverage exclude -du work.pci_conf_space -togglenode pci_ba0_bit31_12\[12\] -trans 10
-comment "CoverCheck:Toggle"
coverage exclude -du work.pci_wb_slave -fstate c_state S_CONF_READ
-comment "CoverCheck:FSM"
coverage exclude -cvgpath {/SYSTEM/bridge32_top/bridge/i_pci_target_unit/.../cp/auto[0]}
-comment "CoverCheck:Coverbin"
...
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies37
New in 10.3
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Exclude Coverage After Simulation
Simulation has been previously run and a sim.ucdb exists Apply the exclude file to the UCDB with vsim
Read in the old .ucdb, apply the exclusions, write out a new .ucdb Example:> vsim -c -viewcov sim.ucdb \
-do do ex.do; \coverage save sim_w_excludes.ucdb; exit
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies38
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Exclude Coverage After Simulation
Simulation has been previously run and a sim.ucdb exists Apply the exclude file to the UCDB with vsim
Read in the old .ucdb, apply the exclusions, write out a new .ucdb Example:> vsim -c -viewcov sim.ucdb \
-do do ex.do; \coverage save sim_w_excludes.ucdb; exit
Apply the exclusions
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies38
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Simulation Coverage Before/After ExclusionsCoverage Report Summary by design unit:Design Unit: work.pci_target32_sm
Enabled Coverage Active Hits Misses % Covered---------------- ------ ---- ------ ---------Stmts 98 93 5 94.8Branches 22 21 1 95.4FEC Condition Terms 0 0 0 100.0FEC Expression Terms 186 57 129 30.6FSMs 90.0
States 3 3 0 100.0Transitions 5 4 1 80.0
Toggle Bins 106 76 30 71.6
TOTAL COVERGROUP COVERAGE: 43.7% COVERGROUP TYPES: 4
Total Coverage By Design Unit (filtered view): 46.7%
Design Unit: work.pci_target32_sm
Enabled Coverage Active Hits Misses % Covered---------------- ------ ---- ------ ---------Stmts 93 93 0 100.0Branches 21 21 0 100.0FEC Condition Terms 0 0 0 100.0FEC Expression Terms 186 58 128 31.1FSMs 90.0
States 3 3 0 100.0Transitions 5 4 1 80.0
Toggle Bins 106 76 30 71.6
TOTAL COVERGROUP COVERAGE: 59.8% COVERGROUP TYPES: 4
Total Coverage By Design Unit (filtered view): 51.3%
Original Run
With exclusions
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies39
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
CoverCheck Success at Rockwell Collins
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies40
CoverCheck was evaluated and purchased last year This purchase was outside the normal contract renewal cycle CoverCheck was new in 2013, not part of the old Questa Formal
First design used for evaluation was not an ideal application In-house design; had gone through requirements-based
verification, so code coverage misses were very small Only 3 unreachable coverage items were found
Evaluation on third-party IP was dramatically more successful Not all functions of DDR3 and PCIe IP blocks are used
Some inputs tied to 0/1; some registers set to fixed values Code coverage was only 55% when CoverCheck was first used
6% improvement within hours (vs. 2 weeks using manual exclusions) Thousands of exclusions generated within days (vs. months)
CoverCheck is ideally suited for some designs Is your design one of them?
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Questa CoverCheck Benefits
Save project time that would have been spent manually reviewing the coverage holes
Schedule predictability
Automatically eliminate code that was never meant to be exercised
Tune measurement to the relevant modes of operation
Improved metrics
Witness waveforms eliminate danger of ignoring coverage holes that are reachable
Complexity measurement guides design for verification
Improved design quality
Manually generated waivers have to be maintained as the code changes
Elimination of waiver rot
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies41
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Agenda
Questa AutoCheck Automatic formal checks for common design issues
Questa CoverCheck Formal analysis to improve code coverage Also targets SVA covergroups (new in 10.3 release)
Connectivity Checking with Questa Formal Exhaustive validation of SoC connectivity
42
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Property Checking
Automated Applications
Fully Automatic
Assertion GenerationReset and X-StatesImprove CoverageAutomatic ChecksCDC Verification
Questa Formal-based TechnologiesA full range of formal solutions
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
I/F ProtocolsControl LogicData IntegrityPost-Silicon Debug
ConnectivityRegister Map ChecksDesign Constraints
HigherEffort
LowEffort
43
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
SoC Connectivity Validation
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies44
Main Clock Domain
SubClock
Domain
SubClock
Domain
CPU
AMBAAHB/AXIArbiter
Bridge
AMBAAPB
UART
SlaveIF
GPIO
SlaveIF
PCIExpress
PHY
Bridge
MemoryDMA
MasterIF
CustomCore
PHY
SlaveIF
Protocol
PHY
MasterIF
Ethernet
PHY
MasterIF
USB
PHY
SlaveIFMasterIF
CPU
MasterIF
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
SoC Connectivity Validation
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies44
Main Clock Domain
SubClock
Domain
SubClock
Domain
CPU
AMBAAHB/AXIArbiter
Bridge
AMBAAPB
UART
SlaveIF
GPIO
SlaveIF
PCIExpress
PHY
Bridge
MemoryDMA
MasterIF
CustomCore
PHY
SlaveIF
Protocol
PHY
MasterIF
Ethernet
PHY
MasterIF
USB
PHY
SlaveIFMasterIF
CPU
MasterIF
Pin-constrained I/O pad muxing On-chip bus connectivity
Application
Check bus and I/O pad connections Check all modes of operation
Objective
100s to 1000s of connections Tedious to check in simulation
Challenge
Considers all modes of operation Able to catch corner-case scenarios
Benefit of Formal
Approach
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
SoC Connectivity Validation
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies44
Main Clock Domain
SubClock
Domain
SubClock
Domain
CPU
AMBAAHB/AXIArbiter
Bridge
AMBAAPB
UART
SlaveIF
GPIO
SlaveIF
PCIExpress
PHY
Bridge
MemoryDMA
MasterIF
CustomCore
PHY
SlaveIF
Protocol
PHY
MasterIF
Ethernet
PHY
MasterIF
USB
PHY
SlaveIFMasterIF
CPU
MasterIF
Pin-constrained I/O pad muxing On-chip bus connectivity
Application
Check bus and I/O pad connections Check all modes of operation
Objective
100s to 1000s of connections Tedious to check in simulation
Challenge
Considers all modes of operation Able to catch corner-case scenarios
Benefit of Formal
Approach
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
SoC Connectivity Validation
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies44
Main Clock Domain
SubClock
Domain
SubClock
Domain
CPU
AMBAAHB/AXIArbiter
Bridge
AMBAAPB
UART
SlaveIF
GPIO
SlaveIF
PCIExpress
PHY
Bridge
MemoryDMA
MasterIF
CustomCore
PHY
SlaveIF
Protocol
PHY
MasterIF
Ethernet
PHY
MasterIF
USB
PHY
SlaveIFMasterIF
CPU
MasterIF
Pin-constrained I/O pad muxing On-chip bus connectivity
Application
Check bus and I/O pad connections Check all modes of operation
Objective
100s to 1000s of connections Tedious to check in simulation
Challenge
Considers all modes of operation Able to catch corner-case scenarios
Benefit of Formal
Approach
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
SoC Connectivity Validation
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies44
Main Clock Domain
SubClock
Domain
SubClock
Domain
CPU
AMBAAHB/AXIArbiter
Bridge
AMBAAPB
UART
SlaveIF
GPIO
SlaveIF
PCIExpress
PHY
Bridge
MemoryDMA
MasterIF
CustomCore
PHY
SlaveIF
Protocol
PHY
MasterIF
Ethernet
PHY
MasterIF
USB
PHY
SlaveIFMasterIF
CPU
MasterIF
Pin-constrained I/O pad muxing On-chip bus connectivity
Application
Check bus and I/O pad connections Check all modes of operation
Objective
100s to 1000s of connections Tedious to check in simulation
Challenge
Considers all modes of operation Able to catch corner-case scenarios
Benefit of Formal
Approach
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Connectivity Applications
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies45
Pin-constrained I/O pads (pin multiplexing)
On-chip bus connectivity in SoC designs
Power rails
DFT and related test logic
Memory-related signals
Pure combinational logic functions
SoC/ASIC/FPGA designs all have applications
Other
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
ConnectivityCheck in Questa FormalEasily, quickly and thoroughly verify connectivity
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies46
Courtesy of Mark Handover
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
ConnectivityCheck in Questa FormalEasily, quickly and thoroughly verify connectivity
Create Connectivity spec (.csv, .tsv)
Checker Keyword Source Destination Condition Delay
connect Signal 1 Signal 2
connect_dly Signal 1 Signal 2 Delay Value
cond Signal 1 Signal 2 Condition Signal
cond_dly Signal 1 Signal 2 Condition Signal Delay Value
Mutex Signal 1
tied_high Signal 1
tied_low Signal 1
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies46
Courtesy of Mark Handover
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
ConnectivityCheck in Questa FormalEasily, quickly and thoroughly verify connectivity
Create Connectivity spec (.csv, .tsv)
Checker Keyword Source Destination Condition Delay
connect Signal 1 Signal 2
connect_dly Signal 1 Signal 2 Delay Value
cond Signal 1 Signal 2 Condition Signal
cond_dly Signal 1 Signal 2 Condition Signal Delay Value
Mutex Signal 1
tied_high Signal 1
tied_low Signal 1
Auto-generateassertions and
testplan
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies46
Courtesy of Mark Handover
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
ConnectivityCheck in Questa FormalEasily, quickly and thoroughly verify connectivity
Create Connectivity spec (.csv, .tsv)
Exhaustively Check Connectivity No testbench needed 14 automatically generated check types
+ coverage + testplan
Checker Keyword Source Destination Condition Delay
connect Signal 1 Signal 2
connect_dly Signal 1 Signal 2 Delay Value
cond Signal 1 Signal 2 Condition Signal
cond_dly Signal 1 Signal 2 Condition Signal Delay Value
Mutex Signal 1
tied_high Signal 1
tied_low Signal 1
RTLRTLRTL
QuestaFormalQuestaFormalQuestaFormal
Auto-generateassertions and
testplan
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies46
Courtesy of Mark Handover
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
ConnectivityCheck in Questa FormalEasily, quickly and thoroughly verify connectivity
Create Connectivity spec (.csv, .tsv)
Exhaustively Check Connectivity No testbench needed 14 automatically generated check types
+ coverage + testplan
Faster than using simulation cycles
Checker Keyword Source Destination Condition Delay
connect Signal 1 Signal 2
connect_dly Signal 1 Signal 2 Delay Value
cond Signal 1 Signal 2 Condition Signal
cond_dly Signal 1 Signal 2 Condition Signal Delay Value
Mutex Signal 1
tied_high Signal 1
tied_low Signal 1
RTLRTLRTL
QuestaFormalQuestaFormalQuestaFormal
Auto-generateassertions and
testplan
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
Questa VM
46
Courtesy of Mark Handover
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Types of Connectivity Bugs
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies47
Source connected to the wrong destination Directly or conditionally
Source connected to destination with scrambled bits Directly or conditionally
Breaks in connectivity due to design function Directly or conditionally
Connections to incorrect logic levels
Coverage to check whether bits of a connection are stuck
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Connectivity Validation: Problem/Solution
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies48
Problem: Old methods are no longer adequate Manual checking
Not feasible any more; designs are too large and complex Simulation
Takes time to set up a test suite Connectivity is usually tested indirectly, not directly Not exhaustive
Solution: A semi-automated formal verification flow
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Connectivity Validation: Problem/Solution
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies48
Problem: Old methods are no longer adequate Manual checking
Not feasible any more; designs are too large and complex Simulation
Takes time to set up a test suite Connectivity is usually tested indirectly, not directly Not exhaustive
Solution: A semi-automated formal verification flow Define connectivity in a common format (usually a spreadsheet)
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Connectivity Validation: Problem/Solution
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies48
Problem: Old methods are no longer adequate Manual checking
Not feasible any more; designs are too large and complex Simulation
Takes time to set up a test suite Connectivity is usually tested indirectly, not directly Not exhaustive
Solution: A semi-automated formal verification flow Define connectivity in a common format (usually a spreadsheet) Automatically translate specified connections into properties
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Connectivity Validation: Problem/Solution
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies48
Problem: Old methods are no longer adequate Manual checking
Not feasible any more; designs are too large and complex Simulation
Takes time to set up a test suite Connectivity is usually tested indirectly, not directly Not exhaustive
Solution: A semi-automated formal verification flow Define connectivity in a common format (usually a spreadsheet) Automatically translate specified connections into properties Connect properties to design with minimal effort by the user
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Connectivity Validation: Problem/Solution
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies48
Problem: Old methods are no longer adequate Manual checking
Not feasible any more; designs are too large and complex Simulation
Takes time to set up a test suite Connectivity is usually tested indirectly, not directly Not exhaustive
Solution: A semi-automated formal verification flow Define connectivity in a common format (usually a spreadsheet) Automatically translate specified connections into properties Connect properties to design with minimal effort by the user Run formal analysis
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Connectivity Validation: Problem/Solution
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies48
Problem: Old methods are no longer adequate Manual checking
Not feasible any more; designs are too large and complex Simulation
Takes time to set up a test suite Connectivity is usually tested indirectly, not directly Not exhaustive
Solution: A semi-automated formal verification flow Define connectivity in a common format (usually a spreadsheet) Automatically translate specified connections into properties Connect properties to design with minimal effort by the user Run formal analysis View and debug results
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Connectivity Check TypesPoint to Point Connectivity
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies49
connect Direct connect
connect_dly Connect with delay
connect_inv All signals inverted
connect_allsame All 0s or all 1s
src[N:0] dest[N:0]
src[N:0] dest[N:0]
src[N:0] dest[N:0]
src[N:0] dest[M:0]
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Connectivity Check TypesConditional Point to Point Connectivity
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies50
cond Direct connect
cond_dly Connect with delay
cond_inv All signals inverted
cond_allsame All 0s or all 1s
dest[N:0]src[N:0]
conditionally
dest[N:0]src[N:0]
conditionally
dest[N:0]src[N:0]
conditionally
dest[M:0]src[N:0]
conditionally
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Connectivity Check TypesSpecific Connectivity
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies51
mutex
cond_mutex
tied_high
cond_tied_high
tied_low
cond_tied_low
src[N:0]
cond
00010src[N:0]00010
src[N:0]
cond
src[N:0]
src[N:0]
cond
src[N:0]
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Connectivity Check TypesCoverage
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies52
Coverage Important to ensure absence of stuck bits on connections
Example Consider the check:
if cond is true, then src is connected to dest
This checks the conditional connection between src and dest But will be proven even if cond is stuck high
Cover properties are used to ensure all bits can toggle
cond |-> src == dest
cover property ( @($global_clock) $rose(cond[i]) ); cover property ( @($global_clock) $fell(cond[i]) );
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Questa Formal Connectivity Flow
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies53
RTL
formalcompile
work
qconnect_checkConnectivity Table
(.tsv/.csv)qconnect_checkers.sv
qconnect_bind.sv
vlog/vcom
formalverify
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Questa Formal Connectivity Flow
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies53
RTL
formalcompile
work
qconnect_checkConnectivity Table
(.tsv/.csv)qconnect_checkers.sv
qconnect_bind.sv
vlog/vcom
formalverify
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Connectivity Specification Format
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies54
Table header names and type names guide the script Signal names for src/dest/cond must use SV top-down hierarchical references, can be constant Verilog values Condition can be a signal or expression, delay is number of clock cycles Comment with # and white spaces are permitted
type src dest cond delayconnect signal signal
connect_dly signal signal N
connect_inv signal signal
connect_allsame signal signal
cond signal signal signal/expression
cond_dly signal signal signal/expression N
cond_inv signal signal signal/expression
cond_allsame signal signal signal/expression
mutex signal
cond_mutex signal signal/expression
tied_high signal
cond_tied_high signal signal/expression
tied_low signal
cond_tied_low signal signal/expression
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Questa Formal Connectivity Flow
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies55
RTL
formalcompile
work
qconnect_checkConnectivity Table
(.tsv/.csv)qconnect_checkers.sv
qconnect_bind.sv
vlog/vcom
formalverify
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Questa Formal Connectivity Flow
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies55
RTL
formalcompile
work
qconnect_checkConnectivity Table
(.tsv/.csv)qconnect_checkers.sv
qconnect_bind.sv
vlog/vcom
formalverify
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Debug Connectivity Results in Questa Formal
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies56
qverify log_conn/formal_verify.db
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Debug Connectivity Results in Questa Formal
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies56
qverify log_conn/formal_verify.db
View Source (with annotation)
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Debug Connectivity Results in Questa Formal
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies56
qverify log_conn/formal_verify.db
View Waveforms
View Source (with annotation)
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Debug Connectivity Results in Questa Formal
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies56
qverify log_conn/formal_verify.db
View Schematics
View Waveforms
View Source (with annotation)
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential
Property Checking
Automated Applications
Fully Automatic
Assertion GenerationReset and X-StatesImprove CoverageAutomatic ChecksCDC Verification
Questa Formal-based TechnologiesA full range of formal solutions
Rockwell Collins Technology Day 2014 | Questa Formal-based Technologies
I/F ProtocolsControl LogicData IntegrityPost-Silicon Debug
ConnectivityRegister Map ChecksDesign Constraints
HigherEffort
LowEffort
57
-
www.mentor.com 2014 Mentor Graphics Corp. Company Confidential