Reduce Design Iterations and Verification Time Kent Moffat




















- Slides: 20
Reduce Design Iterations and Verification Time Kent Moffat Design. Analyst Product Manager Mentor Graphics
Design Checking: Evaluating RTL code to determine if any violations exist based on a set of coding rules Moffat 2 S 204/MAPLD 2004
What Problems Do Design Checkers Solve? n Verification consumes 50 -70% of FPGA design cycles — n Design reuse is essential to meet FPGA design schedule constraints — Moffat Design checking finds and fixes errors earlier in the design process to reduce costly verification and other downstream tool iterations later Design checking helps ensure adherence to HDL coding guidelines essential for efficient reuse 3 S 204/MAPLD 2004
Early Checking Design Flow Group Rule Policies HDL Design Checker Corp Rule Policies Specific Vendor Policies Simulation Moffat Synthesis 4 P&R S 204/MAPLD 2004
Design Checking Tenets Encapsulate Knowledge • Best Practices • Reuse Techniques • Known Issues Apply Knowledge • Understand Design Issues • Detect & Fix Issues HDL Checking Tool Share Knowledge • Team Access • Issue Reports Moffat 5 S 204/MAPLD 2004
Checker Evolution ? Dynamic Static PSL Predictive Analysis Rules Style Semantics Syntax System. C Push as much checking as possible to the specification phase VHDL The beginning Verilog C Today’s Focus Moffat 6 S 204/MAPLD 2004
Why Focus on Static Checks? High Static Checkers Ease of Use Performance # of Users Use Frequency Interfaced Engines Low Syntax Style Language Static Rules Gate-Level Engine Driven Checks Moffat 7 S 204/MAPLD 2004
How Fast is Fast Enough? Design Ethernet Leon u. P Pico. Java Micro. Sparc § § § Lines Sec Rules 9, 823 14, 860 60, 751 139, 080 9 10 80 290 160 160 Checks/Sec 174, 631 237, 769 121, 502 76, 734 Tests run on a PC: 2 GHz Pentium 4, RAM 1 G, Windows 2000 Used same set of rules in each test including § HDL syntax and semantics § Reuse Methodology Manual ruleset Checks/Sec = (Lines * Rules) /Sec (Lines include comments) Moffat 8 S 204/MAPLD 2004
What Types of Checks can be Performed? n n n Moffat Standard language & syntax checks Good coding practices Format & readability Downstream tool checks Portability/reuse checks Cross-language compatibility 9 S 204/MAPLD 2004
Example Rule Categories n Allow n Assignments n Clocks & Resets n Complexity n Conditions n Configurations n Declarations n Directives n FSM n Gates HDL Syntax & Semantics n n Instances Moffat 10 S 204/MAPLD 2004 n Labels n Naming n Order n Partitioning n Race Conditions n Ranges n Registers n Sensitivity n Style n Subprograms n VITAL
Reuse Methodology Manual Examples Moffat 11 S 204/MAPLD 2004
Value of Early Detection n Reuse Cost $ n Cost of error detection increases further downstream Cost is multiplied if code must be edited and re-verified for subsequent designs Time = $ Specification Simulation $ Synthesis Problem $ Cost = [(Tfix + Treiterate) * Cost. Engineer] + Tmarket Moffat 12 S 204/MAPLD 2004 P&R $$ …
Understanding the Process Results Table 2 Add Rulesets to Policy 3 Run from: n Text Editor n Graphical Editors Policy n Design browser n Shell level Policy 4 1 Define Ruleset Rule Set Graphics Checker Source Parameterized Base Rules Reports Moffat 13 S 204/MAPLD 2004
Building Custom Rulesets Moffat 14 S 204/MAPLD 2004 n Create ruleset(s) n Use search to find a base rule n Access online help n Drag & drop base rulesets & rules into your own rulesets n Change rule parameters n Create policies that contain rulesets n Disable rules n Lock down & share rules with the team
Examining Results § Group, filter, & sort results § View only what you want § Save the views § See the code fragment & Msg. § Cross reference § View message & rule help § Disable rules § High-level summary § Totals rolled up through groups § Expand, collapse, & cross-ref Moffat 15 S 204/MAPLD 2004
Analyze Results within Text Editor n Code Browser indicates errors & warnings n Violation report provides navigation n Code lines highlighted n Hover help for each violation n Step through errors n Show rule/rule help n Rerun analysis Moffat 16 S 204/MAPLD 2004
View Reports n Export Summary report as CSV, TSV, or HTML n Export Result Table as CSV, TSV, or HTML n Export rules used in ASCII Moffat 17 S 204/MAPLD 2004
Assisted Violation Correction n If a tool knows exactly what the problem is & how to fix it, then …. n A good percentage of rule violations fit this scenario The tool should have modes of correction: “do it”, step through & change, etc. n Moffat 18 S 204/MAPLD 2004
Challenges and Limitations n Mapping desired design rules into checking tool Not always obvious match — Custom rule creation may be necessary — n Tradeoff between run-time tool performance and depth of analysis Must be fast to be used frequently — Deep analysis takes longer — n Moffat Some rule violations are not detectable by static analysis techniques 19 S 204/MAPLD 2004
Summary Moffat n HDL design checking tools save design time by identifying errors earlier to avoid costly iterations downstream n Design checkers help ensure that HDL code is reusable from the start n Key to frequent usage is high runtime performance and interactivity 20 S 204/MAPLD 2004