Diva® Reference
Product Version 5.0 June 30, 2005 1990-2005 Cadence Design Systems, Inc. All rights reserved. Printed in the United States of America. Cadence Design Systems, Inc., 555 River Oaks Parkway, San Jose, CA 95134, USA Trademarks: Trademarks and service marks of Cadence Design Systems, Inc. (Cadence) contained in this document are attributed to Cadence with the appropriate symbol. For queries regarding Cadence’s trademarks, contact the corporate legal department at the address shown above or call 1-800-862-4522. All other trademarks are the property of their respective holders. Restricted Print Permission: This publication is protected by copyright and any unauthorized use of this publication may violate copyright, trademark, and other laws. Except as specified in this permission statement, this publication may not be copied, reproduced, modified, published, uploaded, posted, transmitted, or distributed in any way, without prior written permission from Cadence. This statement grants you permission to print one (1) hard copy of this publication subject to the following conditions: 1. The publication may be used solely for personal, informational, and noncommercial purposes; 2. The publication may not be modified in any way; 3. Any copy of the publication or portion thereof must include all original copyright, trademark, and other proprietary notices and this permission statement; and 4. Cadence reserves the right to revoke this authorization at any time, and any such use shall be discontinued immediately upon written notice from Cadence. Disclaimer: Information in this publication is subject to change without notice and does not represent a commitment on the part of Cadence. The information contained herein is the proprietary and confidential information of Cadence or its licensors, and is supplied subject to, and may be used only by Cadence’s customer in accordance with, a written agreement between Cadence and its customer. Except as may be explicitly set forth in such agreement, Cadence does not make, and expressly disclaims, any representations or warranties as to the completeness, accuracy or usefulness of the information contained in this document. Cadence does not warrant that use of such information will not infringe any third party rights, nor does Cadence assume any liability for damages or costs of any kind that may result from use of such information. Restricted Rights: Use, duplication, or disclosure by the Government is subject to restrictions as set forth in FAR52.227-14 and DFAR252.227-7013 et seq. or its successor. Diva Reference
Contents
Preface ...... 17 Related Documents ...... 17 Typographic and Syntax Conventions ...... 18 SKILL Syntax Examples ...... 19
1 Introducing Diva Verification...... 21 Diva Verification Tool Set ...... 21 Diva Verification Programs ...... 23 Diva Verification Product Flow ...... 23 Prerequisites for Diva Verification ...... 25 Design Framework II ...... 25 Simulation Environment ...... 25 Verification Rule File ...... 25 Using Diva Verification ...... 27 About the Mouse ...... 27 Using the Verify Menu ...... 28 Using Forms ...... 29
2 Running Diva Verification ...... 33 Interactive Mode ...... 35 Batch Mode ...... 38 Remote Mode ...... 39 Controlling Diva Verification ...... 43 Controlling Run Modes Using Properties ...... 44 Creating a Log File ...... 46 Using Checkpoints ...... 48 Conditional Execution of Rules ...... 50 Default ivIf Switch Values ...... 54
June 30, 2005 3 Product Version 5.0 Diva Reference
Rules File Example ...... 55 Controlling SKILL Access ...... 58 Special Procedures ...... 61 Controlling Properties and Variables ...... 62 Storing Temporary Files ...... 63 Including and Excluding Cells ...... 64 Macro Cell Mode ...... 66
3 Executing Diva Verification Using SKILL Commands ...... 71 ivConcICe ...... 72 ivCreatePCells ...... 75 ivDRC ...... 77 ivERC ...... 81 ivExtract ...... 83 ivLVS ...... 87 ivRestart ...... 91 EivVerify ...... 93
4 Writing Diva Verification Rules ...... 99 Introduction ...... 99 Creating a Verification Rules File ...... 99 Grouping Commands ...... 100 Nesting Commands ...... 100 Compiling and Optimizing Commands ...... 101 Using Wildcards ...... 102 Sample Verification Rules File ...... 103 ERC and LVS Verification Rules ...... 107 Sample ERC Rules File ...... 108 Sample LVS Rules Files ...... 109 Sample CMOS Rules File ...... 109 Sample Bipolar Rules File ...... 111 Creating a Run-Specific File ...... 112 changeLabel ...... 114
June 30, 2005 4 Product Version 5.0 Diva Reference
drcLogFile ...... 116 drcZeroHalo ...... 118 globalLabel ...... 119 groundNet ...... 121 joinableNet ...... 123 layerText ...... 125 macroCellFile ...... 127 macroCellFunc ...... 129 includeValueFunc ...... 131 verifyArea ...... 132 Sample Run-Specific File ...... 133 Writing Rules for the Diva and Assura Products ...... 133
5 Layer Processing Concepts ...... 137 Layers ...... 137 Shapes ...... 139 Edge Boolean Commands ...... 142 Invalid Graphics Data ...... 144 Exclusive Selection ...... 145 Data Integrity Checks ...... 147 dubiousData ...... 148 offGrid ...... 150 Logical Commands ...... 152 geomAnd ...... 153 geomAndNot ...... 155 geomCat ...... 157 geomNot ...... 158 geomOr ...... 159 geomXor ...... 161 Relational Selection Commands ...... 163 geomAvoiding ...... 164 geomButting ...... 166 geomButtOnly ...... 170 geomButtOrCoin ...... 173
June 30, 2005 5 Product Version 5.0 Diva Reference
geomButtOrOver ...... 177 geomCoincident ...... 180 geomCoinOnly ...... 183 geomEnclose ...... 186 geomInside ...... 190 geomLineEnd ...... 192 geomNodeRelate ...... 197 geomOutside ...... 198 geomOverlap ...... 200 geomStraddle ...... 204 Sizing Commands ...... 208 geomGrow ...... 209 geomSize ...... 210 geomSizeAnd ...... 214 geomSizeAndNot ...... 215 geomSizeInTub ...... 216 geomStretch ...... 224 geomWidth ...... 226 General Selection Commands ...... 227 geomContactCheck ...... 228 geomGetAdjacentEdge ...... 230 geomGetAngledEdge ...... 232 geomGetByLayer ...... 236 geomGetEdge ...... 239 geomGetHoled ...... 242 geomGetLength ...... 243 geomGetMacro ...... 245 geomGetNet ...... 247 geomGetNon45 ...... 249 geomGetNon90 ...... 250 geomGetNonRectangle ...... 251 geomGetPolygon ...... 252 geomGetPurpose ...... 253 geomGetRectangle ...... 255 geomGetTexted ...... 257 geomGetUnHoled ...... 259
June 30, 2005 6 Product Version 5.0 Diva Reference
geomGetUnTexted ...... 260 geomGetVertex ...... 262 geomSepInside ...... 264 geomSepOutside ...... 266 Generation Commands ...... 268 geomArrayShapes ...... 269 geomBkgnd ...... 271 geomEmpty ...... 272 geomExtent ...... 273 geomGetBBox ...... 274 geomHoles ...... 276 geomNoHoles ...... 279 Layer Storage and Removal ...... 280 copyGraphics ...... 281 errorLayer ...... 282 geomErase ...... 283 saveDerived ...... 285
6 Connectivity Extraction Concepts...... 289 How Connections Are Formed ...... 289 Methodology ...... 289 Limitations ...... 290 Labeling ...... 290 Connectivity Commands ...... 294 geomConnect ...... 295 geomStamp ...... 300
7 DRC Overview ...... 303 Modes of Operation ...... 303 Area Halo Processing ...... 308 DRC Limitations ...... 309 How DRC Performs Checks ...... 313 Looking Through the Wall ...... 316
June 30, 2005 7 Product Version 5.0 Diva Reference
Check Conjunction ...... 318 Alignment and Registration ...... 318 Cell-Based Options ...... 323 Checking Commands ...... 324 checkAllLayers ...... 325 checkLayer ...... 326 drcAntenna (old syntax) ...... 328 drcAntenna (new syntax) ...... 333 drc(coverage) ...... 340 geomGetCoverage ...... 343 drc ...... 345 Checks ...... 348 area ...... 349 enc ...... 350 notch ...... 352 ovlp ...... 353 sep ...... 354 sepNotch ...... 356 width ...... 357 Check Modifiers ...... 359 app ...... 360 diffNet ...... 362 length, lengtha, lengthb ...... 363 notParallel ...... 365 only_perp ...... 366 opposite, oppositeA, oppositeB ...... 367 parallel ...... 369 sameNet ...... 370 shielded, shieldedA, shieldedB ...... 371 with_perp ...... 373 Output Modifiers ...... 374 edge, edgea, edgeb ...... 375 fig, figa, figb ...... 378 wholeEdge, wholeEdgea, wholeEdgeb ...... 380 Alignment and Registration Modifiers ...... 381 normalGrow ...... 382
June 30, 2005 8 Product Version 5.0 Diva Reference
squareGrow ...... 383 Other Modifiers ...... 385 message ...... 386 raw ...... 387
8 Models of Device Extraction...... 389 Flat Mode ...... 389 Macro Cell Mode ...... 389 Full Hierarchical Mode ...... 390 Incremental Hierarchical Mode ...... 393 Device Recognition ...... 394 Using Device Recognition ...... 394 Device Recognition Polygons ...... 395 Processing Pins ...... 397 Device Extraction Commands ...... 399 extractDevice ...... 400 extractMOS ...... 405 Data Storage ...... 407 saveInterconnect ...... 408 saveProperty ...... 410 saveRecognition ...... 411
9 Extracting Parameters (LPE) ...... 413 Introduction ...... 413 Measurement Process ...... 414 Measurement Commands ...... 414 NULL Measurements ...... 416 Measurement Optimization ...... 417 Parameter Measurement Reference Commands ...... 418 calculateParameter ...... 419 measureParameter ...... 424 Data Storage ...... 430 nameParameter ...... 431
June 30, 2005 9 Product Version 5.0 Diva Reference
saveParameter ...... 432
10 Extracting Parasitics (LPE) ...... 433 Introduction ...... 433 Netlisting Parasitics ...... 434 Measurement ...... 435 Measurement Operators ...... 436 NULL Measurements ...... 438 Measurement Optimization ...... 438 Parasitic Measurement Commands ...... 440 calculateParasitic ...... 441 complexParasitic ...... 445 measureFringe ...... 453 measureParasitic ...... 460 multiLevelParasitic ...... 469 Data Storage ...... 479 attachParasitic ...... 480 saveParasitic ...... 484
11 Extracting Parasitic Resistance (PRE) ...... 487 Introduction ...... 487 What Is Parasitic Resistance Extraction? ...... 487 How Do I Invoke It? ...... 487 What Are the Results? ...... 487 The Extraction Process ...... 489 Preconnect ...... 490 Postconnect ...... 490 Resistor Formation ...... 490 Contact Resistance ...... 492 Current Flow ...... 492 Edge Resistance ...... 492 Area Resistance ...... 493 Device Terminals ...... 494
June 30, 2005 10 Product Version 5.0 Diva Reference
Bend Resistance ...... 496 Transition Resistance ...... 497 Network Reduction ...... 497 Cross Coupling and Fringe Capacitance ...... 498 Resistor Body Capacitance ...... 502 R-C Models ...... 502 Netlisting R-C Models ...... 503 Multiple Layer Extraction ...... 504 Unexpected Results ...... 505 A Simple Approach ...... 507 A Better Approach to get More Accurate Results ...... 507 Using Shorts to Reduce Large Contact Array Resistor Networks ...... 508 Command Reference ...... 508 measureResistance ...... 509
12 Checking Electrical Rules (ERC) ...... 517 Introduction ...... 517 Prerequisites ...... 518 Program Functionality ...... 518 Program Output ...... 520 ERC Functions ...... 521 Reducing Networks ...... 521 Consolidating and Testing Parameters ...... 527 ERC Commands ...... 533 oneWayPath ...... 534 setGround ...... 535 setInput ...... 536 setOutput ...... 537 setPower ...... 538 twoWayPath ...... 539 Tracing and Connectivity Commands ...... 539 checkConnected ...... 540 checkDeviceNetCount ...... 541 checkFanOut ...... 543
June 30, 2005 11 Product Version 5.0 Diva Reference
checkFloatingDevices ...... 545 checkFloatingNets ...... 546 checkNotConnected ...... 547 checkOneNetDevices ...... 548 checkOneTerminalNets ...... 549 checkPullDown ...... 550 checkPullUp ...... 551 checkPullUpAndDown ...... 552 Gates and Parameters Commands ...... 552 displayFeedBackLoops ...... 553 displayGateErrors ...... 554 reduceDevice ...... 555 testDeviceProperty ...... 559 testGateProperty ...... 560
13 Comparing Layout to Schematic (LVS) ...... 561 Introduction ...... 561 Prerequisites ...... 562 Capabilities ...... 562 Backannotation ...... 563 Verification Rules Functions ...... 563 Permutating Devices ...... 563 Ignoring Device Terminals ...... 569 Ignoring Extraneous Devices ...... 570 Removing Unwanted Devices ...... 572 Parameter Analysis ...... 572 Device Fixing ...... 580 Correspondence Points ...... 582 Network Terminal Processing ...... 583 Comparing Macro Cell ...... 585 Output Files ...... 586 Error Files ...... 586 Working and Information Files ...... 587 LVS Ambiguity File ...... 587
June 30, 2005 12 Product Version 5.0 Diva Reference
Displaying Errors ...... 588 Unmatched Nets ...... 588 Merged Nets ...... 588 Unmatched Instances ...... 588 Unmatched Parameters ...... 589 Unmatched Terminals ...... 589 Pruned Nets ...... 590 Pruned Instances ...... 590 LVS Verification Rules Commands ...... 591 compareDeviceProperty ...... 592 ignoreTerminal ...... 593 lvsOption ...... 594 parameterMatchDegree ...... 596 parameterMatchType ...... 598 permuteDevice ...... 600 pruneDevice ...... 603 removeDevice ...... 605 Backannotation (lvsbx) ...... 606
14 Verify Menu Commands ...... 609 Introduction ...... 609 DRC Command ...... 610 Extract Command ...... 616 ConcICe Command ...... 620 ERC Command ...... 623 LVS Command ...... 630 Inherited Connections for LVS in Diva Verification ...... 645 Probe Command ...... 646 Markers Command ...... 650
15 Short Locator ...... 653 Shorts ...... 653 Prerequisites ...... 653
June 30, 2005 13 Product Version 5.0 Diva Reference
How Short Location Works ...... 654 Short Locator Form ...... 658 Running Extraction ...... 659 Using Shorts ...... 662 Adding Short Locator Labels ...... 664 Deleting Short Locator Labels ...... 665 Saving or Restoring the Run ...... 665
A What’s New In Diva ...... 1 4/2005 ...... 1 2/2005 ...... 1 2/2005 ...... 1 1/2005 ...... 2 12/2004 ...... 2 5/2004 ...... 2 3/2004 ...... 3 2/2004 ...... 3 12/2003 ...... 3 10/2003 ...... 3 6/2003 ...... 3 4/2003 ...... 4 12/2002 ...... 4 11/2002 ...... 4 10/2002 ...... 4 7/2002 ...... 4 5/2002 ...... 5
B Translating Dracula Files...... 7 Dracula To Diva Verification Translator: DraculaToDiva ...... 7 Running DraculaToDiva ...... 7 What Happens During Translation? ...... 8 Dracula To Diva Verification Command Correspondence ...... 8 SQUARE Check ...... 19
June 30, 2005 14 Product Version 5.0 Diva Reference
Checking Philosophy ...... 19 Translation Pitfalls ...... 21
C Improving Hierarchical DRC Performance...... 23 Assigning the hdrc boundary Layer ...... 23 How the hdrc boundary Layer Works ...... 23 Hierarchical DRC Switch Names ...... 24 Rules File Example ...... 25
D Simulation and Environment Control ...... 27 Directories and Files ...... 27 Variables ...... 29 Control Input ...... 29 Setting Up the Netlister ...... 30
E Application Techniques ...... 41 Bipolar Processing ...... 41 General Technique ...... 41 npn Transistor ...... 45 pnp Transistor ...... 46 Resistor Terminal Recognition ...... 49 Extraction Device Library Entries ...... 51 Substrate, Background, and Ground ...... 54 Concepts ...... 54 Relationships ...... 54
Index...... 57
June 30, 2005 15 Product Version 5.0 Diva Reference
June 30, 2005 16 Product Version 5.0 Diva Reference
Preface
This manual assumes that you are familiar with the development and design of integrated circuits. It contains reference information about the following Diva® verification products: Design Rule Checker (DRC) Layout Parasitic Extractor (LPE) Parasitic Resistance Extractor (PRE) Electrical Rules Checker (ERC) Layout Versus Schematic program (LVS)
In addition, Diva has a remote verification capability that lets you run jobs on a remote machine. This renders the local stations free to perform other tasks.
The preface discusses the following: Related Documents Typographic and Syntax Conventions
Related Documents
Diva is often used with other Cadence products to find and correct design errors. The following manuals give you more information about the tools associated with Diva. To learn more about the Open Simulation System, read the Open Simulation System Reference. To learn more information about editing and loading technology files, read the Technology File and Display Resource File User Guide. To learn more about parameterized cells, see Virtuoso Layout Editor User Guide. To learn more about other menus on the menu banner, read the Virtuoso Layout Editor User Guide. To learn more about other PDRACULA commands, read the Dracula Reference manual.
June 30, 2005 17 Product Version 5.0 Diva Reference Preface