Padslogic User
Padslogic User
PADS 9.2
This document is for information and instruction purposes. Mentor Graphics reserves the right to make changes in specifications and other information contained in this publication without prior notice, and the reader should, in all cases, consult Mentor Graphics to determine whether any changes have been made. The terms and conditions governing the sale and licensing of Mentor Graphics products are set forth in written agreements between Mentor Graphics and its customers. No representation or other affirmation of fact contained in this publication shall be deemed to be a warranty or give rise to any liability of Mentor Graphics whatsoever. MENTOR GRAPHICS MAKES NO WARRANTY OF ANY KIND WITH REGARD TO THIS MATERIAL INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. MENTOR GRAPHICS SHALL NOT BE LIABLE FOR ANY INCIDENTAL, INDIRECT, SPECIAL, OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING BUT NOT LIMITED TO LOST PROFITS) ARISING OUT OF OR RELATED TO THIS PUBLICATION OR THE INFORMATION CONTAINED IN IT, EVEN IF MENTOR GRAPHICS CORPORATION HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. RESTRICTED RIGHTS LEGEND 03/97 U.S. Government Restricted Rights. The SOFTWARE and documentation have been developed entirely at private expense and are commercial computer software provided with restricted rights. Use, duplication or disclosure by the U.S. Government or a U.S. Government subcontractor is subject to the restrictions set forth in the license agreement provided with the software pursuant to DFARS 227.72023(a) or as set forth in subparagraph (c)(1) and (2) of the Commercial Computer Software - Restricted Rights clause at FAR 52.227-19, as applicable. Contractor/manufacturer is: Mentor Graphics Corporation 8005 S.W. Boeckman Road, Wilsonville, Oregon 97070-7777. Telephone: 503.685.7000 Toll-Free Telephone: 800.592.2210 Website: www.mentor.com SupportNet: supportnet.mentor.com/ Send Feedback on Documentation: supportnet.mentor.com/user/feedback_form.cfm
TRADEMARKS: The trademarks, logos and service marks ("Marks") used herein are the property of Mentor Graphics Corporation or other third parties. No one is permitted to use these Marks without the prior written consent of Mentor Graphics or the respective third-party owner. The use herein of a thirdparty Mark is not an attempt to indicate Mentor Graphics as a source of a product, but is intended to indicate a product from, or associated with, a particular third party. A current list of Mentor Graphics trademarks may be viewed at: www.mentor.com/terms_conditions/trademarks.cfm.
Table of Contents
Whats New . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter PADS Logic QuickStart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Step 1 - Start a New Design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Step 2 - Select the Sheet Size. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Step 3 - Add Parts and Connector Symbols. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding a Part . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding a Connector Symbol. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Step 4 - Add Buses. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Step 5 - Add Connections to Parts, Connectors, and Buses. . . . . . . . . . . . . . . . . . . . . . . . . . Step 6 - Add Off-Page Symbols. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Step 7 - Add Power and Ground Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Step 8 - Print the Schematic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Step 9 - Generate Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Step 10 - Create a Layout Netlist. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 1 Getting Started with PADS Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PADS Logic Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Starting PADS Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Start-up Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Checking for PADS Updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Check for Updates Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Customizing PADS Logic Default Settings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mouse Button Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Left Button Selecting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Right Button Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Middle Button Zoom and Pan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modeless Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Shortcut Keys. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using the Numeric Keypad to Control View. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 2 PADS Logic User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Project Explorer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Controlling the View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using the View Commands and Scroll Bars. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using the Middle Mouse Button. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using the Numeric Keypad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Saving and Restoring Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 31 31 31 32 32 32 33 33 34 34 35 35 35 37 37 38 38 41 41 42 43 43 43 44 44 46 48 49 49 51 51 51 52 52
Table of Contents
Chapter 3 Output Window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Status Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Macro Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Playing Back Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Debugging Macro Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Accessing Help on the Macro Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Basic Script Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Scripts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Running Scripts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Debugging Scripts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Accessing Help on the Basic Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Session Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Session Log. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Navigating Pages in the Status Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Filtering the Status Tab Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Searching Text in the Status Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Printing Session Log Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Displaying and Printing Reports. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Saving a Session Log to File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Clearing the Session Log Display. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Opening a File That is Already in Use. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 4 Customizing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Customizing the PADS Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Customizing Toolbars. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a Custom Toolbar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Custom Commands and Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a Custom Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Items to Toolbars and Menus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Moving Items on Toolbars and Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Removing Items from Toolbars and Menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Assigning Shortcut Keys to Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Customizing the Appearance of the Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Organizing Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Showing Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Hiding Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Detaching Windows from the Current View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attaching Windows to the Current View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
55 55 55 56 57 59 60 61 62 62 65 67 68 69 70 70 70 71 71 71 72 72 72 73 75 75 75 76 78 81 81 82 83 87 90 91 91 91 92 93
Chapter 5 PADS Logic File Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 File Operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 Creating a New File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
4
PADS Logic Users Guide, PADS 9.2
Table of Contents
File Save As . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Opening a File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Importing and Exporting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Archiving Your Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Archiver Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Archiver: Additional Files Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Archiver: Libraries Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 6 Design Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Schematic Editor Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Schematic Editor Design Tab Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Part Editor Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Preserving Reference Designators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Work Area and Grid Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Display Colors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Fonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Choosing Stroke Font or System Fonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Options Dialog Box - Text and Line Widths Tabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Converting Fonts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Font Replacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Automatic Font Replacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Manual Font Replacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Displaying Layer Information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing the Electrical Layer Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Associating Nets to Plane and Split/Mixed Plane Layers. . . . . . . . . . . . . . . . . . . . . . . . . . Defining the Routing Direction for Layers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Defining Layer and Substrate Thickness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reassigning Electrical Layer Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reassigning Deleted Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing to Increased Layer Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing to Default Layer Mode From Increased Layer Mode. . . . . . . . . . . . . . . . . . . . . Chapter 7 Managing Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Converting Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Library Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating New Library Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Library Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Library Items. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleting Library Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Copying Library Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . The Report Manager Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reporting on Parts in a Library. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reporting on Decals, Lines or Logic Symbols in a Library . . . . . . . . . . . . . . . . . . . . . . . .
102 102 103 108 109 111 112 115 115 115 119 122 124 125 126 127 127 129 130 130 131 131 132 132 132 134 134 135 135 136 136 136 139 139 139 140 141 141 141 142 143 143 144 146
Table of Contents
Importing Library Data From ASCII Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exporting Library Data to ASCII Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying the Library List and Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding a PADS Logic or OrCAD Library to the Library List . . . . . . . . . . . . . . . . . . . . . . Removing a Library from the Library List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing the Search Order. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sharing a Library Across a Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Controlling Library Search Access. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Protecting Library Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Attributes in the Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Attributes Assigned to Every Library Part. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Renaming Attributes Applied to Each Library Part . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleting Attributes From All Parts in Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Wildcards and Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Part Editor Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Display Colors Dialog Box in the Part Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Controlling Object Selection in the Decal Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Controlling Object Selection Using Preset Filter Settings . . . . . . . . . . . . . . . . . . . . . . . . . Controlling Object Selection Using the Selection Filter Dialog Box . . . . . . . . . . . . . . . . . Changing and Updating Library Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating New Parts from Existing Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Select Type of Editing Item Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Save Part and Gate Decals As Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Save the Part/Decal to the Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selecting Multiple Objects in the Decal Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Pin Decals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CAE Decals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Constructing the New CAE Decal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using the Decal Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Manually Construct the New Part. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a New CAE Decal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Single Gate Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Multigate Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Terminals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin Decal Browse Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing Objects in the Decal Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting a Pin Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting a Pin Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting a Pin Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Pin Swaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing a Pin Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing a Pin Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing a Pin Decal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing Sequence Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attribute Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Attribute Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Terminals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting the Origin for a Part . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Getting Gate Decals from the Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
147 147 148 149 149 150 150 150 150 151 152 152 153 153 155 155 158 158 158 158 159 159 160 160 161 161 162 162 163 164 165 165 167 168 168 169 169 170 170 171 172 173 173 174 174 175 175 176 176
Table of Contents
Assigning Pin Information to the CAE Decal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Saving a Modified Decal with a Different Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Part Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Part Information Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Viewing and Setting General Part Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing Logic Families . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Assigning PCB Decals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Assigning Gates to Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Assigning CAE Decals to Gates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Part Information - Pins tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Signal Pin Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Browsing Library Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Part Information - Pin Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Assigning Alternatives for Special Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Saving Part Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Library Management for Saved Part Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Saving a Modified Part Type with a Different Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a New Connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Browsing for Connectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a New Pin Decal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing Objects in the Decal Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Special Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Special Symbol Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Assigning Alternatives for Ground Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Assigning Alternatives for Off-page Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Assigning Alternatives for Power Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating New Special Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Select Pin Decal Dialog Box. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Browsing for Special Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating New Special Symbols from Existing Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Special Symbols in the Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 8 Design and Editing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Design Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verb Mode (Select Command First). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Object Select Mode (Select Object First) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Zooming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Duplicate Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Delete Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Move Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selecting Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selecting One Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selecting Several Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selecting All Objects in an Area. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
176 177 178 179 179 182 185 188 189 191 196 196 198 198 200 200 201 202 202 203 203 205 205 205 206 207 207 208 209 210 210 211 213 213 214 214 214 214 215 215 216 216 217 217 217 217
Table of Contents
Selecting All Objects on a Sheet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selecting an Object on All Sheets in a Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Controlling Selections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Filtering Object Selections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Filtering with the Selection Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Filtering with the Pop-up Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Filtering with the Selection Filter Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selection Filter Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selection List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Searching for an Object by Typing Information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selecting an Object with Area Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Signal Pin Nets Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Finding Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Working with Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheets Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a Custom Sheet Border . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding a Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing a Text String into a Field. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Fields. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing All Fields in the Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing the Fields in a 2D Line Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Step and Repeat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Duplicating Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Semiautomatic Step and Repeat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Working with Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Parts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Add Part from Library Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Connector Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Single Gate Parts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Multigate Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using Alphanumeric Prefixes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Part Text Visibility Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using Alternate Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Swapping Reference Designators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Saving Part Types to a Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Save Part Types to Library Dialog Box. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Save Off-page to Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . The Update From Library Function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Undoing an Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Updating a Schematic from the Library. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Updating Selected Part Types from the Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Updating Selected CAE Decals from the Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Updating Selected Pin Decals From the Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . The Compare/Update Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How to Read the Update Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Update from Library Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Update Selected Part Type from Library Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . Update Selected CAE Decals from Library Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . Update Selected Pin Decals from Library Dialog Box. . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
217 218 218 218 218 218 218 219 219 219 220 221 221 221 222 222 223 224 224 224 225 226 226 227 227 227 228 229 229 229 230 230 231 231 232 233 233 234 235 235 236 237 238 239 242 250 254 257 259
Table of Contents
Deleting a Part . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Working with Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Naming a Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Net Attributes Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Net Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Default Attributes for Nets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Power and Ground Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Working with Floating Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Enabling Floating Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Disabling Floating Connections and Running the Connections Report . . . . . . . . . . . . . . . Adding Floating Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing Floating Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Duplicating Floating Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Floating Connections When Deleting Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . Attaching Objects to Floating Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Off-Page References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing Off-Page Symbol Sheet Numbers Per Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing a Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Moving Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Splitting a Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Splitting Segments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Swapping Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Buses. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Choosing the Bus Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Naming Buses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Buses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Connections to Buses. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Nets to a Mixed Net Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Extending Buses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Moving Bus Segments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Splitting Buses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleting Bus Segments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleting Buses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleting Connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Detach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cut, Copy, and Paste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Copy as Bitmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Working with Non-electrical Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Drafting Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating 2D Line Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Moving Text. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Circles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Polygons or Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Rectangles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying 2D Line Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pulling Arcs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Combining 2D Lines and Text. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PADS Logic Users Guide, PADS 9.2
260 262 262 263 264 264 264 266 266 267 267 267 269 269 269 269 270 270 271 271 272 272 273 274 274 274 275 276 276 277 277 277 277 278 278 279 279 280 280 280 281 281 282 283 283 284 284 285 285
9
Table of Contents
Using Object Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using Verb Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Uncombining 2D Lines and Text. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exploding Combinations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Drafting Items to a Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding Drafting Items from a Library. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Working with Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a Group. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting the Origin of Groups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Groups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Duplicating an Existing Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Moving Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleting Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Saving Groups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pasting Groups from a File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connecting Automatically on Paste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rotate or Mirror a Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attributes Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Attributes in a Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Renaming Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleting Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Defining a Resistor Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Viewing or Changing Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Properties Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Drafting Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing the Reference Designator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing the Part Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing Part Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing the Visibility of Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing Part Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing PCB Decals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Assigning Unused Pins as Signal Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Part Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Part Attribute Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Part Type Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Get Decal from Library Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rename Part . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rename Gate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Reference Designator Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Pin Label Fonts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Net Name Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Buses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing the Name of a Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
285 286 286 287 287 287 288 288 288 289 289 290 290 290 291 291 292 292 292 293 293 294 294 294 295 295 296 296 297 297 298 299 299 299 299 300 301 302 302 303 304 304 304 305 305 306 307 308 308
Table of Contents
Changing the Bus Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Bus Nets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Bus Name Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Net Cross-Reference Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Hierarchical Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Hierarchical Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a Top-down Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a Bottom-Up Hierarchy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pushing Into the Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Popping Up the Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Hierarchical Symbol Wizard Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying a Hierarchical Symbol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Copying a Hierarchical Symbol. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleting a Hierarchical Symbol. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 9 Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Clearance Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Same Net Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing Routing Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . High-Speed Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rules Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rules Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rules Hierarchy Order of Precedence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Default Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Class Rules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Net Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conditional Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Differential Pairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Differential Pairs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Differential Pair Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Differential Pair Layer Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rules Report. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Import Rules from PCB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Export Rules to PCB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 10 Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Generating Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Unused Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Part Statistics Report. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Net Statistics Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Limits Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connectivity Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bill of Materials Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Report Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
308 309 310 310 311 311 312 313 314 315 315 315 317 318 318 319 319 320 322 322 327 329 329 329 330 330 331 332 333 333 333 335 335 336 336 337 337 337 338 338 338 339 339 339
11
Table of Contents
Unused Sample Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Part Statistics Sample Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Net Statistics Sample Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Limits Sample Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connectivity Sample Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bill of Materials Sample Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting up the Bill of Materials Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Clipboard View. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 11 Netlists and Annotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a Netlist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Forward and Backward Annotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Forward Annotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Backward Annotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Updating the PCB Layout from PADS Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Updating the Schematic From PCB Layout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selecting Design Files and Output Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ECO File Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Add a Pin to the Net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Add a Part . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Join Two Nets Together . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Delete a Part . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Delete a Pin from a Net. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Change a Component's Part Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Split a Net into Two Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rename a Part . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rename a Net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Swap a Gate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Swap Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attribute Level Backward Annotation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . New Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleted Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selecting Comparison Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Contents of the Differences Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Part Level Backward Annotation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Added Parts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changed Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleted Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reference Designator Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate Level Backward Annotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Net Level Backward Annotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Joined Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nets Created by Splitting an Existing Net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Renamed Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin Level Backward Annotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
340 341 342 343 344 345 345 346 346 348 349 349 350 351 351 352 354 355 357 357 357 358 358 358 359 359 359 359 360 360 360 360 360 361 363 365 365 366 366 366 366 366 366 367 367 367
12
Table of Contents
Swapped Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367 Pins Added to a Net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367 Pins Disconnected from a Net. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367 Chapter 12 Plotting and Printing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Printing and Plotting Output Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Previewing Your Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a PDF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Plotting Output. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting up Pen Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Up a Pen Plotter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding a New Pen Plotter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Up Photo Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Up a Photo Plotter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Advanced Photo Plotter Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Printing Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Printing to PDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PostScript Printing to a File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting the Printer to Print to a File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 13 Cross-probing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cross-probing Between PADS Products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cross-probing Between PADS Logic and PADS Layout. . . . . . . . . . . . . . . . . . . . . . . . . . Cross-probing Between PADS Logic and PADS Router . . . . . . . . . . . . . . . . . . . . . . . . . . PADS Layout Link . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Design Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selection Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Preferences Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ECO Names Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PADS Router Link. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PADS Router Document Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PADS Router Selection Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 14 OLE in PADS Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Inserting OLE Objects in PADS Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Inserting a New Embedded OLE Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Inserting an Existing File as an Embedded Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Inserting an Existing File as a Linked Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . How OLE Objects are Displayed. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Turning Off the Display of OLE Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selecting OLE Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Moving and Sizing OLE Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing an OLE Object's Icon or Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Converting an OLE Object to Another Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PADS Logic Users Guide, PADS 9.2
369 369 370 370 371 372 372 373 373 374 374 375 376 377 377 379 379 380 380 381 381 383 384 385 386 386 386 387 389 390 391 391 392 392 393 393 393 394 395
13
Table of Contents
Editing OLE Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cut, Copy, and Paste PADS Logic OLE Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Edit OLE Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Open, Edit, Convert OLE Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Editing an OLE Objects Content in PADS Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OLE and Print/Plot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deleting OLE Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Redrawing a Screen Containing OLE Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OLE and View Menu Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Changing the OLE Object Background Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Saving OLE Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 15 Using PADS Logic - Advanced Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Spice Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating an Analog Schematic for Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a SPICE Netlist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting up AC Analysis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting up DC Source Sweep Analysis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting up the SPICE Netlister . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting up Transient Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Applying Attributes to your Analog Design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Basic Scripting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Basic Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing the Sax Basic Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Basic Sample Scripts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing Licensed Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Installed Options Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Checking Licensing Options In and Out. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Viewing a License File or License Status. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . License File Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 16 Logic Automation Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OLE Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Object Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Automation Server Sample . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PADS Logic Automation Client Sample . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Code Samples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Running Code Sample in PADS Logic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Running Code Samples Outside of PADS Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Enhancing Sample Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Troubleshooting the Code Samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
395 396 396 398 399 401 401 401 402 402 402 403 403 403 404 405 405 406 407 407 407 408 408 409 412 412 412 413 414 415 415 416 417 417 417 419 420 421 422 423
Table of Contents
Application Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.ActiveDocument . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.DefaultFilePath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.FullName. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.ObjectType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.Parent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.ProgressBar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.StatusBarText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.CreateLibrary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.ExportLibraryItems. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.GetConfigParamInt (method) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.GetConfigParamString (method) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.GetLibraryItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.LockServer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.Measure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.OpenDocument (method) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.OpenDocumentNoLock (method). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.OpenTempDocument (method) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.Quit (method) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.RunMacro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.UnlockServer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.OpenDocument (event) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.ProgressChange. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application.Quit (event) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attribute Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attributes Collection Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attribute Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attribute.Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attribute.Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attribute.Parent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attribute.Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attributes.Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attributes.Count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attributes.Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attributes.Parent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attribute.Measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attributes.Add. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attributes.Delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component.Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component.Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component.Gates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PADS Logic Users Guide, PADS 9.2
426 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472
15
Table of Contents
Component.Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component.ObjectType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component.Parent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component.PartType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component.PartTypeLogic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component.PartTypeObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component.PCBDecal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component.Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component.Selected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component.UnusedGates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Component.Delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.ActiveSheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.ActiveView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.AncestorSheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Components. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.FullName. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Gates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.GridX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.GridY. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Parent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.PartTypes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Saved . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.ImportASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Activate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.ExportASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.ExportNetList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.GenerateECO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.GetColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.GetObjects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.ImportECO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.IntegrityTest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Save (method) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.SaveAs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.SaveAsNoLock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.SaveAsTemp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.SaveNoLock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.SaveTemp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.SelectObjects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.SetColor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.Save (event). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document.SelectionChange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
473 475 476 477 478 479 480 481 483 484 485 485 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 513 514 515 516 517 518 519 520 521 523 524 525
Table of Contents
Field Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Field.Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Field.Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Field.Parent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Field.Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fields Collection Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fields.Add. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fields.Delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fields.Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fields.Count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fields.Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fields.Parent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheets Collection Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.ChildSheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.Gates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.Parent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.ParentSheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheets.Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheets.Count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheets.Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheets.Parent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.PartTypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.Activate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.AddComponent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.AddGate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheet.GetObjects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheets.Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sheets.Delete. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.BottomRightX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.BottomRightY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.Parent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.PointerX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.PointerY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.TopLeftX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.TopLeftY. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.Pan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.Refresh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.SetExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.SetExtentsToAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View.SetExtentsToSheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PADS Logic Users Guide, PADS 9.2
526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575
17
Table of Contents
View.Change. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objects Collection Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objects.Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objects.Count . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objects.Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objects.ItemType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objects.Next . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objects.Parent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objects.Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objects.Merge. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objects.Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objects.Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objects.Select . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Objects.Sort. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measure Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measure.Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measure.Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measure.Normalize. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measure.Number. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measure.Prefix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measure.Parent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measure.Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measure.Unit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measure.Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Library Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LibraryItem Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Library.Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Library.FullName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Library.Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Library.ObjectType. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Library.Parent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Library.Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LibraryItem.Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LibraryItem.Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LibraryItem.Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LibraryItem.ObjectType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LibraryItem.Parent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LibraryItem.Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Library.GetLibraryItems. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Library.ImportLibraryItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Library.ImportLibraryItems2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Net Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Net.Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Net.Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Net.Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Net.ObjectType. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Net.Parent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Net.Pins. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Net.Selected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 601 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 616 617 618 619 620 621 622 623
Table of Contents
Net.Width . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PartType Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PartType.Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PartType.Components. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PartType.ECORegistered . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PartType.Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PartType.ObjectType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PartType.Parent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PartType.Selected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PartType.Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.AlphaNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.ElectricalType. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.FunctionName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.Gate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.GatePinName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.Name. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.Net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.ObjectType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.Parent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.PositionX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.PositionY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.Selected. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin.SwapClass. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.Component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.Number. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.ObjectType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.Parent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.Pins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.PositionX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.PositionY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.ReflectedX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.ReflectedY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.Rotated90 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.Selected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.Sheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.SwapClass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.Visibility. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.Delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gate.Move. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PlogDocumentColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PlogObjectType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PlogUnit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PADS Logic Users Guide, PADS 9.2
624 625 626 627 628 629 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 669 670 670 671 672 673
19
Table of Contents
PlogGridType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PlogPinElectricalType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PlogASCIIVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PlogNetListVersion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PlogGateVisibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PlogDefaultPosition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PlogMeasureFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PlogLibraryItemType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Optional Arguments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Variant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 18 Macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using Command Line Switches with Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Recording a Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Recording Log Files to a Specific File and Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Running a Macro When You Start the Program. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Introducing the Macro Language. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Numeric. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Logical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . String. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Double. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . * Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . + Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . / Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ^ Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . And Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Comparison Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mod Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Not Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Or Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Xor Operator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Close . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Do...Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . For-Next . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . If...Then...Else statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
674 675 676 677 678 679 680 681 681 681 682 683 683 683 683 684 684 684 685 685 685 686 687 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 701 703 704 705 706 707 709 711
20
Table of Contents
Input # . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Open . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Print # . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReDim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . While...Wend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Width # . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Asc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Atn. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chr. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CreateObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CurDir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DoEvents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Environ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Eof. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetObject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetTmpFileName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . InStr. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . InStrRev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Left . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Len . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MkDir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MoveFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MsgBox. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Right . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Spc. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Str . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Val. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Automation Support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dialog Box Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CheckBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CheckListBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ComboBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EditBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GridControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ListBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PushButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RadioBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SliderControl. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PADS Logic Users Guide, PADS 9.2
713 714 715 716 718 720 721 723 724 724 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 749 750 751 752 753 754 754 754 756 758 760 762 764 765 767 768 769
21
Table of Contents
SpinButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TabControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TreeItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TreeView. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Internal Macro Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dialog Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HelpContents Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HelpContentsItem Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HelpPane Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Main View Object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapter 19 SPICE Netlist Attribute Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Attribute Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A2D. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ABSTOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AC/DC/TRAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ACCT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AMPLITUDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BULK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CHGTOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CPTIME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CURRENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D2A. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DAMPING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ENDFREQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ENDVAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FREQ_CARRIER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FREQ_SIGNAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FREQUENCY. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GAIN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GENERATOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GMIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I1, I2, I3, ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . INCREMENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . INIT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . INITIAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . INPUTSOURCE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ITL1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ITL2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ITL4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ITL5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
770 771 772 774 776 776 787 792 797 797 803 803 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 840 841 842 843 844 845 846 847 848 849 850
22
Table of Contents
L ..................................................................... LABEL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LIBRARY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LIMPTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LIN/OCT/DEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LIST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MOD_INDEX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MODEL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NO_PINS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NODESET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NOECHO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NOISESOURCE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NOPAGE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NUMDGT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NUMPOINTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NUMRUN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OFFSET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OPTS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ORDER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OUTPUT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PARNAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PHASE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PINORDER. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PIVREL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PREFIX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PROBE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PULSED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RELTOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SOURCENAME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . STARTFREQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . STARTVAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TDELAY. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TEMP1, TEMP2, TEMP3, ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TFALL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TFINAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TI, T2, T3, ... T9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TNOM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TPERIOD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TPULWIDTH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V1, V2, V3, ..., V9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VALUE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VAMPLITUDE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VINITIAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VNTOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VOFFSET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VOLTAGE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VPULSED. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PADS Logic Users Guide, PADS 9.2
851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 872 873 874 875 876 877 878 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901
23
Table of Contents
W. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 902 WIDTH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 903 YMAX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 904 Chapter 20 Crash Detection, BMW and BLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Crash Detected Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BMW and BLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Session Playback Media With BMW. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Session Log Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Session Media Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Replaying Session Playback Media with BLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . The /BMW Command Line Switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Glossary Index Third-Party Information End-User License Agreement 905 905 907 907 911 911 912 912
24
Whats New
Want to know whats new in PADS 9.2? See the details of new enhancements, features, and functionality in the Release Highlights on SupportNet: English http://supportnet.mentor.com/docs/201005014/release_docs/PADS_rh.pdf Japanese http://supportnet.mentor.com/docs/201005014/release_docs/PADS_rh_ja.pdf For a list of defect fixes, see the Release Notes: http://supportnet.mentor.com/docs/201005014/release_docs/PADS_rn.pdf
25
List of Figures
Figure 1-1. Check for Updates Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 4-1. Window Dragging Graphic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 4-2. Docking a Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 4-3. Dragging a WindowArrow Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 4-4. Dragging and Docking a Window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 4-5. Dragging and Docking a WindowArrow Commands. . . . . . . . . . . . . . . . . . . Figure 4-6. Dragging a WindowTransparent Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 4-7. Window Embedded as a Tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 5-1. Archiver Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 5-2. Archiver: Additional Files Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 5-3. Archiver: Libraries Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 7-1. Library Manager Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 7-2. Parts Report in .lst Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 7-3. Parts Report in .csv Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 7-4. Library List Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 7-5. Manage Library Attributes Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 7-6. Display Colors Dialog Box in the Part Editor. . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 7-7. Part Information Dialog Box - General Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 7-8. Logic Families Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 7-9. Part Information for Part Dialog Box - PCB Decals tab. . . . . . . . . . . . . . . . . . . Figure 7-10. Part Information for Part Dialog Box - Pins Tab . . . . . . . . . . . . . . . . . . . . . . . Figure 8-1. Update from Library Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 8-2. Update Selected Part Type from Library Dialog Box. . . . . . . . . . . . . . . . . . . . . Figure 8-3. Update Selected CAE Decals from Library Dialog Box . . . . . . . . . . . . . . . . . . Figure 8-4. Update Selected Pin Decals from Library Dialog Box . . . . . . . . . . . . . . . . . . . . Figure 8-5. Hierarchical Symbol Wizard Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 9-1. Routing Rules Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 16-1. Object Hierarchy Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 16-2. Client Sample of Visual Basic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 16-3. Code Sample Pasted into Sax Basic Engine Dialog Box . . . . . . . . . . . . . . . . . Figure 16-4. Code Sample in Microsoft Excel 97 Basic Editor . . . . . . . . . . . . . . . . . . . . . . Figure 20-1. Crash Detected Dialog Box. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 93 94 95 95 96 97 97 110 112 113 140 145 146 149 151 156 180 183 185 191 250 254 257 259 316 323 416 419 421 422 906
26
List of Tables
Table 1-1. PADS Logic Command Line Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-2. Check for Updates Dialog Box contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-3. Left Mouse Button Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-4. Modeless Commands for Grid Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-5. Modeless Commands for Design and Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-6. Modeless Commands for Searching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-7. Modeless Commands for Angles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-8. Modeless Commands for Editing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-9. Modeless Commands for Drafting Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-10. Mouse Click Substitutes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-12. PADS Logic Control Key Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-11. Other Modeless Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-13. PADS Logic Function Key Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-14. Other PADS Logic Key Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 1-15. Numeric Keypad Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 2-1. Object Groups and Subgroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 3-1. Session Log Text Color Representations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 3-2. Status Tab Toolbar Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 3-3. Filter Submenu Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 3-4. Help Text Color Representations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 4-1. Expressions in Shortcut Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 4-2. Shortcut Key Expression Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 5-1. File Types Imported into the Current Schematic . . . . . . . . . . . . . . . . . . . . . . . . Table 5-2. File Types Opened as New Schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 5-3. ASCII File Formatting Sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 5-4. Archiver Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 5-5. Archiver: Additional Files Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 5-6. Archiver: Libraries Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 6-1. Backup File Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 6-2. Part Editor Options Saved and Set as Defaults . . . . . . . . . . . . . . . . . . . . . . . . . . Table 7-1. Listing of Library Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 7-2. Fields of the Report Manager Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 7-3. Import Library Data - ASCII File Extensions Applied to Items . . . . . . . . . . . . . Table 7-4. Export Library Data - ASCII File Extensions Applied to Items . . . . . . . . . . . . . Table 7-5. Filter Displayed Information With Wildcards and Expressions . . . . . . . . . . . . . Table 7-6. Wildcard and Expression Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 7-7. PADS Logic Part Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 7-8. Display Colors Dialog Box contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 7-9. CAE Decal Editing Mode - Text Entries In Working Area . . . . . . . . . . . . . . . . Table 7-10. Decal Editor - Editing Options Based on Selected Object . . . . . . . . . . . . . . . .
27
38 42 43 44 44 45 45 45 45 45 46 46 47 47 48 50 70 70 71 73 86 86 103 104 107 110 112 113 119 123 140 143 147 148 153 154 155 156 165 169
List of Tables
Table 7-11. Characters Used to Represent Pin Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 7-12. Part Statistic Categories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 7-13. Off-page Reference Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 7-14. Power Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 7-15. Ground Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 7-16. Topic List Regarding Assigning New Decal as Alternate Decal . . . . . . . . . . . Table 8-1. Search for Objects in PADS Logic Using These Options . . . . . . . . . . . . . . . . . . Table 8-2. Compared and Reported Part Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 8-3. Update Report Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 8-4. Update from Library Dialog Box Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 8-5. Update Selected Part Type from Library Dialog Box Controls . . . . . . . . . . . . . Table 8-6. Update Selected CAE Decals from Library Dialog Box Controls . . . . . . . . . . . Table 8-7. Update Selected Pin Decals from Library Dialog Box Controls . . . . . . . . . . . . . Table 8-8. Listing of Default Attributes for Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 8-9. Splitting Segments Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 8-10. Creating 2D Line Items - Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 8-11. Modify 2D Line Item Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 8-12. Modify 2D Line Item - Corner Option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 8-13. Hierarchical Symbol Wizard Dialog Box Contents . . . . . . . . . . . . . . . . . . . . . Table 9-1. Clearance Rules - Same Net - Edge-to-Edge Clearance Options . . . . . . . . . . . . Table 9-2. Clearance Rules - Other - Clearance Options . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 9-3. Same Net Matrix - Clearance Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 9-4. Routing Rules Dialog Box Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 9-5. High-Speed Rule Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 9-6. High-Speed Rules - Minimum/Maximum Values . . . . . . . . . . . . . . . . . . . . . . . . Table 9-7. Rule Hierarchy and Order of Precedence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 9-8. Rules Report Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 11-1. Choice Options of Design Features for Comparison . . . . . . . . . . . . . . . . . . . . . Table 11-2. Choice Options for Comparing Names of Design Elements . . . . . . . . . . . . . . . Table 11-3. Sections of the Difference Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 13-1. Design Tab Choices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 13-2. Document Tab Choices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 13-3. Selection Tab Choices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 13-4. Preferences Tab Choices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 13-5. ECO Names Tab Choices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 13-6. PADS Router Document Tab Choices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 13-7. PADS Router Selection Tab Choices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 15-1. Basic Script Editor Color Representations . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 15-2. Basic Sample Script Listing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 15-3. Basic Sample Scripts/RGL Reports Listing . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 15-4. Basic Sample Scripts/Advanced Listing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 17-1. Optional Argument Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-1. & Operator Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-2. + Operator Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-3. And Operator Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
171 180 205 205 206 211 221 241 246 251 255 258 260 265 272 281 284 285 316 320 321 322 324 327 328 329 335 361 362 363 382 383 384 385 386 386 387 409 410 411 411 681 685 691 696
28
List of Tables
Table 18-4. Comparison Operators and Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-5. Not Operator Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-6. Or Operator Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-7. Xor Operator Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-8. For-Next Statement Loop Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-9. Function Statement arglist Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-10. Print # Statement outputlist Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-11. Sub Statement arglist Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-12. Eof Function Returned Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-13. InStr Function Return Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-14. InStrRev Function Return Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-15. MsgBox buttons Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-16. MsgBox Return Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-17. CheckBox.State istate Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-18. CheckBox.Value istate Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-19. TreeItem.Select flag Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-20. TreeItem.Expand flag Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-21. MainView.MouseDown button Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-22. MainView.MouseEndDrag button Values . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-23. MainView.MouseMove button Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-24. MainView.MouseStartDrag button Values . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 18-25. MainView.MouseUp button Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 19-1. Generator Attribute - Possible Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 19-2. Order Attribute - Characters for Controlling Attribute Values . . . . . . . . . . . . . Table 19-3. Prefix Attribute - List of Prefixes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 20-1. Crash Detected Dialog Box Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table Glossary-1. Pass Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
697 699 700 701 707 710 716 722 736 740 741 747 748 756 756 772 772 807 808 809 810 811 837 870 878 906 917
29
List of Tables
30
31
3. Select the size you want from the Sheet Size list, and click OK. 4. To maximize the sheet size within your viewing area, click the Sheet button.
32
3. Select a connector symbol to add to the schematic and click Add. Tip: When it is attached to the pointer, you may notice that the symbol is facing the wrong direction for your application. If this is the case, before the symbol is placed, right-click and click Alternate. You will find that there are alternate representations for the symbol that were made direction specific. If you click Alternate again, you may find that there are representations that look graphically different. If you don't like the first style of connector, there may be others to choose from. 4. Click to place the connector symbol.
33
Tip: To remove the corner you just placed, press Backspace. To cancel the connection, press Esc. 3. End the connection by clicking at the end point of another pin on a part or connector. 4. If you create a connection that ends in a bus, in the Add Bus Net Name dialog box, select the net from the Net name list and click OK. The connection and its name remain selected in the design. If you are happy with the location of the net name label, click in empty space. If the net name label is not in the correct location, right-click and click Move. The label attaches to the pointer. Click to place the label.
34
35
36
Global (See Schematic Editor General Tab Options) Design (See Schematic Editor Design Tab Options)
Set up layers (See Setting Layers) Tip: This can be done in Logic or Layout.
2. Set up rules and constraints Decide which design rules you need (See Rules Setup) Set up design rules (See Setting Rules)
3. Place parts Locate parts in the library (See Managing Libraries) Place parts (See Working with Parts) Set attributes (See Attributes Overview)
37
4. Wire the schematic Connect the components (See Working with Connections) Edit the connections (See Changing a Connection) Name the connections (See Naming a Connection) Assign net constraints (design rules) (See Net Rules)
5. Prepare the Design for Layout Output a netlist (See Netlists and Annotation) Generate reports (See Reports) Compare files (keep designs in synch) (See Forward and Backward Annotation)
Start-up Options
You can use start-up options, known as command line switches, to control the initial PADS Logic configuration. Use command line switches to enable different options, to open a file, start macros, and record a PADS Logic session. You can type multiple command line options. You add start-up options to the following: PADS Logic program folder (See Adding Start-Up Options to a New PADS Logic Program Folder Item) PADS Logic shortcut icon (See Creating a New PADS Logic Desktop Shortcut Icon)
You can start the following command line options when you start PADS Logic: Table 1-1. PADS Logic Command Line Options Option file name Description Opens the specified design file when you start PADS Logic. Type the folder path and file name. Use quotation marks for directories or file names with spaces. Example: C:\PADS Projects\Samples\previewpart.sch Restriction: Do not use a forward slash ( / ) before the file name in the command line.
38
Table 1-1. PADS Logic Command Line Options (cont.) Option Description /BMW[initials] Opens the Basic Media Wizard. Use the Basic Media Wizard to start recording a session log or to convert the previous session log to media that can be replayed by Basic Log Test. To create session media files for the current PADS Logic session, use the BMW modeless command. To use the BMW command line switch, type /BMW or /BMWxx, where xx is your initials, in the command line. Note the capitalization. [] represents optional text. This option is associated with another modeless command, BLT. BLT is the Log Test; it finds and runs the session media created by BMW to play back a recorded PADS Logic session. For information, see Modeless Commands. /l /mmacro name /Mmacro file Opens the last file you had open when you start PADS Logic. Runs the specified macro in the default macro file. For example, to run the macro MyMacro, type /mMyMacro. Specifies the file to use as the default macro file. For example, to run the macro MyMacro contained in the file user1.mcr, type /Muser1.mcr /mMyMacro. Note the required capitalization. Starts PADS Logic without displaying the splash screen that includes copyright information. Starts a Basic script when you start PADS Logic. Use quotation marks for file names with spaces. Example: /sC:\MentorGraphics\<latest_release>PADS\SDD_HOME\Samples\ Scripts\Logic\Unsupported\Attributes to Excel.bas
/nc /sXXX
39
3. In a blank area on the right side of Windows Explorer, right-click, point to New, and then click Shortcut. 4. Browse to powerlogic.exe. Do not click Next. Example: PADS Logic is typically installed to C:\MentorGraphics\<latest_release>PADS\SDD_HOME\Programs\powerlogic.exe. 5. Click in the box, press End, press Spacebar, and then type the command line switch you want to use. Click Next. Example: To start PADS Logic with previewpart.sch, the command line should read: C:\MentorGraphics\<latest_release>PADS\SDD_HOME\Programs\powerlogic.exe C:\PADS Projects\Samples\previewpart.sch. Requirement: Enclose with double quotes ( ) each string that contains a space. Restriction: When specifying a file to start, do not use a / before the file name. Tip: You can specify multiple command line switches. 6. Type in the box the name of the program folder item to create, and then click Finish. 7. To start PADS Logic using the start-up options, close PADS Logic if it is running, and then click the new program folder item.
Getting Started with PADS Logic Check for Updates Dialog Box
5. To start PADS Logic using the start-up options, close PADS Logic if it is running, and then double-click the shortcut.
Requirement
An internet connection is required for the check.
41
Getting Started with PADS Logic Customizing PADS Logic Default Settings
Accessing
Help menu > Check for Updates Figure 1-1. Check for Updates Dialog Box
Table 1-2. Check for Updates Dialog Box contents Name Check for Updates button Disable Check for Updates functionality Description Manually checks for a new version of the PADS software. Determines if PADS automatically checks for a new version of the software. Click to stop PADS from automatically checking for a new version of the PADS products; click to clear to have PADS automatically check for a new version.
Related Topics
Checking for PADS Updates
5. Select default.txt from the list of files. Type the name in the File name area if it does not exist. 6. Click Save. This displays the ASCII Output dialog box. 7. In the ASCII Output dialog box, click Select All. Leave the output format at the current setting and click OK.
Drag Double-click
43
Modeless Commands
You can set or change some settings and functions at any time using a code letter for the command, entering the new value, and clicking Enter. This is called a Modeless Command. Modeless Commands usually apply to values that you change frequently during design. Use the Modeless Command G, for example, to change the grid setting. Type G, the new setting, and click Enter. Below is a summary of the Modeless Commands in PADS Logic: To show this help topic at any time while PADS Logic is running, type ? and click Enter. Tip: (X,Y) = coordinates; (s) = text; (n) = number. Table 1-4. Modeless Commands for Grid Settings Command G<n> GD<n> Description Sets the design grid, for example G50. Dot grid setting, for example GD100.
Table 1-5. Modeless Commands for Design and Hierarchy Command HI HO Q R<width> SH<sheet> Description Invokes Hierarchical Push. Invokes Hierarchical Pop. Invokes Quick Measure. Set minimum (Real) display width for paths. Select sheet name or number.
44
Table 1-5. Modeless Commands for Design and Hierarchy Command W<width> Description Set current line width.
Table 1-6. Modeless Commands for Searching Command S<string> S<n><n> SR<n><n> SRX<n> SRY<n> SX<n> SY<n> Description Search for named item (pin, part or net), for example SU1. Search absolute at <n> <n>, for example S1000 1000. Search relative X and Y, for example SR-200 100. Search relative X, for example SRX300. Search relative Y, for example SRY400. Absolute move to <n>, current Y, for example SX300. Absolute move to <n> current X, for example SY400. Table 1-7. Modeless Commands for Angles Command AA AD AO Description Any angle. Diagonal angle. Orthogonal angle. Table 1-8. Modeless Commands for Editing Command un re Description Undo Redo
Table 1-9. Modeless Commands for Drafting Objects Command HC HH HP HR Description Circle shape draw mode. Path shape draw mode. Polygon shape draw mode. Rectangle shape draw mode. Table 1-10. Mouse Click Substitutes Command M Description Activates pop-up for current mode (right mouse button).
45
Table 1-10. Mouse Click Substitutes Command Spacebar Description Activates a left mouse button click (to add corners, select items, complete etc.) at the current cursor location. Table 1-11. Other Modeless Commands Command Description ? Shows this help topic. Opens the Basic Media Wizard dialog box. BMW BMW ON Starts BMW session logging. BMW OFF Stops BMW session logging. BMW records session playback media for a problematic PADS Logic session. It can create playback media based on your last PADS Logic session or your current session. This playback media can be replayed using the BLT modeless command. BMW is also a command line option. See also: Crash Detection, BMW and BLT BLT Basic Log Test. Opens the Log Test Dialog Box. BLT finds and runs BMW session playback media. See also: Crash Detection, BMW and BLT View specified file (for example, F demo.eco). Runs Database Integrity Test.
F<name> I
Related Topics
Shortcut Keys
Shortcut Keys
For mouseless operation, use keyboard shortcuts to start commands for selected items and change some system settings. Following are the shortcut assignments for PADS Logic. Table 1-12. PADS Logic Control Key Shortcuts Shortcut Description Alt+Enter Properties Ctrl+A Ctrl+B Ctrl+C Ctrl+D Select All on Sheet View sheet Copy Redraw Shortcut Alt+Z Ctrl+Z Ctrl+Alt+C Ctrl+Alt+E Ctrl+Alt+F Description Zoom to selection Undo Display Colors Setup View Extents Filter
46
Table 1-12. PADS Logic Control Key Shortcuts (cont.) Shortcut Description Ctrl+E Ctrl+F Ctrl+J Ctrl+N Ctrl+O Ctrl+P Ctrl+Q Ctrl+R Ctrl+S Ctrl+V Ctrl+W Ctrl+X Ctrl+Y Flip selected on X axis Shortcut Ctrl+Alt+M Description Options Toggle menu bar Vertically justify text during move View Previous Status Window Options Cycle Alternate Gate Decals Move selected object(s) Ctrl+Alt+G Horizontally justify text Ctrl+Shift+J during move New file Open file Print/Plot Properties Rotate selected Save Paste View Zoom mode Cut Redo Ctrl+Alt+P Ctrl+Alt+S Ctrl+Enter Ctrl+Tab
Ctrl+PageDown Reset delta coordinates to measure from current position Shift+Ctrl+A Shift+Ctrl+D Shift+Ctrl+F Shift+Ctrl+P Ctrl+<drag> Select All on Schematic Draw Group while in Move Group Mode Flip selected on Y axis Record prompt windows toggle (macros) Duplicate
Table 1-13. PADS Logic Function Key Shortcuts Shortcut Description F1 F2 F8 Help Add Connection Mouse move compression (macros) Table 1-14. Other PADS Logic Key Shortcuts Shortcut Description Shortcut Description Properties Left mouse click Add Offpage while in Add Connection mode BackSpace Remove last connection Alt+Enter corner Esc Home Del Cancel command Sheet Delete Spacebar Alt+Spacebar Shortcut Description F9 F10 Absolute/Relative coordinates toggle (macros) End recording (macros)
47
Getting Started with PADS Logic Using the Numeric Keypad to Control View
Table 1-14. Other PADS Logic Key Shortcuts (cont.) Shortcut M Description Right mouse click Shortcut Ctrl+Spacebar Description Add Ground Symbol while in Add Connection mode
5 Pg Up Pg Dn Ins
48
Project Explorer
To open the Project Explorer, click the Project Explorer button. The Project Explorer shows a hierarchical structure for the objects in your design. It provides access to objects and rules. When you update your design, the hierarchical structure is automatically updated to reflect the changes you make. Tip: The Hierarchical structure is available only when a design is open. Restriction: The Project Explorer is not available in the Part Editor. In this topic: Object Types Selecting Objects in Project Explorer Zooming to Selection
Object Types Objects in the Project Explorer are placed in object groups. Object groups are of two types: primary and secondary as shown in the following table. Restrictions: You cannot remove or rename primary object groups.
49
Modification of secondary group items is only available in PADS Router. Table 2-1. Object Groups and Subgroups
Description Lists all parts on the sheet Lists all electrical layers, including plane layers and routing layers Lists all other layers except electrical Lists all components and pin pairs Lists all part decals in the design or all components that use the selected part decal Lists all nets in the design
Components
Part decals
PADS Logic PADS Layout PADS Router Net classes Matched length net groups Nets
Lists all nets belonging to net classes Lists all matched length net groups Lists all nets in the design
Matched length pin pair Lists all matched length pin groups pair groups Pin pair groups Lists all nets belonging to pin pair groups (containing pin pair rules) Lists all nets with conditional rules Lists all differential pairs Lists the via types used in the design Lists the CAE decals used in the design Lists the PCB decals used in the design
Conditional rules Differential pairs Via types CAE decals PCB decals PADS Router PADS Logic PADS Logic PADS Layout
50
Selecting Objects in Project Explorer You can select an object in the Project Explorer and have it automatically selected in the workspace. To select an item in the workspace: Right-click and click Allow Selection.
Zooming to Selection You can zoom to the item you select in the Project Explorer. To zoom to the selection: Right-click and click Zoom to Selection.
Click View menu > Redraw or the Refresh button on the toolbar to redraw the current view. Click View menu > Sheet or the Sheet button on the toolbar to display the entire sheet. Click View menu > Extents to resize the view to display all objects in the design. Use the scroll bars to pan the view.
To zoom in, click and hold the middle mouse button. Drag the cursor diagonally up. To adjust the bounding box, move the mouse. When you release the middle mouse button, the area within the bounding box displays. To zoom out, click and hold the middle mouse button. Drag the cursor diagonally down. This draws an inner box, representing the current view. Moving the cursor adjusts the outer box, which represents the new view. The relative size of the outer box to the inner box determines how far the view zooms out. Release the middle mouse button to complete the zoom out operation. To view the entire design, click and hold the middle mouse button, drag the cursor horizontally, and release.
52
7. Select a name from the View Name list and click Delete to remove it from the View Name list. Tip: Capture is not available while in the Part Editor.
53
54
If not currently displayed, click the Output Window button Use the Output window for displaying reports and session logs, macro editing and debugging, and custom programming and debugging. The Output window is located in the lower left section of the display window. You can dock or float the Output window. You can also open or close the Output window. The Output window has two tabs: Status Tab - Displays information on the current session. Macro Tab - Allows you to run, edit and debug macro scripts.
Related Topics "User Interface" chapter of the Routing Concepts Guide "Interface" chapter of the PADS Layout Concepts Guide
Status Tab
To display the Status tab, click the Output Window button and then click the Status tab. The Status tab displays information about the current session. It specifies the file name of the opened PCB file and the name of the test integrity file that is saved. It also reports routing statistics and messages when routing a board. If the Status tab is closed, and you get an error while autorouting - or performing other tasks - the Output window opens with the status tab active and the error appearing in red. The Output window reappears in its most recent state (floating or docked). Related Topics Managing Session Logs
Macro Tab
Click the Output Window button and then click the Macro tab.
55
You can edit, run, and debug macro scripts in the Macro tab. You can open multiple macros and nest macros using the macro editor. A macro is any combination of commands, keystrokes, and mouse clicks that you record to replay as a single action. You can record virtually any set of procedural steps for replay, thereby simplifying redundant activities, such as setting preferences and layer/display settings. The following topics describe using the Macro tab: Creating Macros Managing Macros Playing Back Macros Debugging Macro Scripts Accessing Help on the Macro Language
Related Topics Using Command Line Switches with Macros "Macros" in the "Programming" chapter of the Routing Concepts Guide
Creating Macros
You can create macros to simplify redundant activities. You can record any set of procedural steps for replay as a single action. You can also nest macros. Tip: Dialog box actions are recorded as results rather than actions, so when you replay, you don't see the dialog boxes in the replay process. Because of this you can't create a macro that stops on an open dialog box; it must follow through to some result or action. For example, you can create a macro that selects Open on the File menu, selects a file, and selects OK. The macro, when played back, opens a file. The following descriptions are included in this topic: Creating a New Macro Recording Mouse Movements Saving a Macro
56
3. You can click the Compress mouse moves and/or Relative mouse moves buttons. See Recording Mouse Movements for more information. 4. On the Macro tab toolbar, click the Record button. 5. Perform the keystrokes, commands, and mouse clicks to include in the macro. 6. On the Macro tab toolbar, click the Stop button. You can also script a macro instead of recording mouse actions.
Saving a Macro
1. Click the Save button. 2. In the standard Windows Save As dialog box, enter a filename, if desired, and click Save. Related Topics Using Command Line Switches with Macros "Macros" in the "Programming" chapter of the Routing Concepts Guide
Managing Macros
This following descriptions are included in this topic: Opening an Existing Macro File Viewing Multiple Open Macros Editing a Macro Saving the Macro
57
Editing a Macro
You can copy or cut selected text to the Clipboard. You can also paste the selection from the Clipboard into the text window. You can paste text from the Clipboard into other applications. You can also switch between open macros to edit multiple macros. To copy or cut and paste text in a macro: 1. Select the text you want to copy or cut. 2. On the Macro tab toolbar, click the Copy or Cut buttons. 3. On the Macro tab toolbar, click the Paste button. You will see that your selection has been pasted in the Output window at the insertion point. Alternative: Right-click in the Output window and click Copy, Cut, or Paste. If you chose Notepad as the default text editor, longer macro files may not be loaded because of size constraints in Notepad. To access large files using Edit, you must install an ASCII text editor with a suitable file size capacity. To change the default text editor: 1. Open the powerpcb.ini file in a text editor. 2. Modify the [GENERAL] section, specifying a new text editor executable name. Include the drive and folder if the new editor is not in your Windows folder. 3. Save the .ini file and close the text editor.
58
PADS Logic Users Guide, PADS 9.2
59
60
To play a single line of the macro: Right-click in the Macro tab and click Step Over. Alternative: On the Macro tab toolbar, click the Step over button. To perform a subroutine call on the current line: Right-click in the Macro tab and click Step Into. Alternative: On the Macro tab toolbar, click the Step into button. To return from the subroutine to the point from which it was called: Right-click in the Macro tab and click Step Out. Alternative: On the Macro tab toolbar, click the Step out button. To play back a macro to a point: Right-click in the Macro tab and click Step to Cursor. Alternative: On the Macro tab toolbar, click the Step to cursor button. To continue the execution from the current point: Right click in the Macro tab and click Run. Alternative: On the Macro tab toolbar, click the Run button.
61
The following topics describe using the Basic Editor: Managing Scripts Creating Scripts Running Scripts Debugging Scripts Accessing Help on the Macro Language
Related Topics Basic Scripting in the Programming chapter of the Routing Concepts Guide Basic Scripting in the Designing chapter of the PADS Layout Concepts Guide
Managing Scripts
The following descriptions are included in this topic: Opening an Existing Script Managing Open Scripts
o o o o
Editing a Script Editing a User Dialog Box Finding an Automation Statement Printing a Script Saving a Script Watching a Variable
Opening #uses Modules Closing an Open Script Closing all Open Scripts Viewing a Particular Script
62
The #uses modules called in the script appear as script sheets in the Basic Script Editor. They are assigned a numbered tab and you can edit or run them. Closing an Open Script In the Basic Script Editor, right-click and select Sheet > Close.
Alternatively, you can double-click the script's numbered tab in the gutter. Closing all Open Scripts In the Basic Script Editor, right-click and select Sheet > Close All.
Viewing a Particular Script If you have multiple scripts open, you can view a particular open script. You can have up to nine scripts open at the same time. To view a particular script: Right-click and select Sheet. Then click the script you want to view from the list of open scripts on the submenu. Alternatively, you can click the script's numbered tab in the gutter.
Editing a Script
You can copy or cut selected text from the Basic Script Editor to the Clipboard. You can also paste a selection from the Clipboard into the text window. You can also paste text from the Clipboard into other applications. To copy or cut and paste text in a script: 1. In the Basic Script Editor, select the text you want to copy or cut. 2. Right-click and click Edit > Copy or Cut.
63
3. Right-click and select Edit > Paste to paste the script text. Your selection is pasted in the Output window at the insertion point. Alternative: Click the Copy, Cut, and Paste buttons on the Basic Script Editor toolbar.
Printing a Script
To print a Basic script: 1. Open the script in the Basic Script Editor. 2. On toolbar, click the Print button.
Saving a Script
1. In the Basic Script Editor, click the Save button. 2. Enter a file name, if necessary, and then click Save.
Watching a Variable
Quick Watch shows the value of the expression under the cursor in the immediate window.
64
Alternative: In the Basic Script Editor, click the Quick Watch button. See also: Sax Basic Editor On Line Help (C:\MentorGraphics\<latest_release>PADS\SDD_HOME\Programs\sbe5_000.hlp) Related Topics Basic Scripting in the Programming chapter of the Routing Concepts Guide Basic Scripting in the Designing chapter of the PADS Layout Concepts Guide
Creating Scripts
You can create scripts to simplify redundant activities. The following descriptions are included in this topic: Creating a Script Inserting an Automation Statement
o o
Setting the Next Statement Showing the Next Statement Saving the Script
Using the Object and Procedure Lists Using the ActiveX Automation Members Dialog Box
Creating a Script
To create a script: 1. Tools menu > Basic Scripts > Basic Script Editor. In PADS Layout and PADS Logic, the SAX Basic Engine dialog box appears. 2. Click the New button.
65
2. Click the Procedure list and click a non-bold procedure to insert. The Procedure list shows all the procedures for the current object. Selecting a procedure that is not bold inserts the proper procedure definition for that procedure. The statement appears at the bottom of the script. Using the ActiveX Automation Members Dialog Box In the Basic Script Editor, right-click and click Debug > Browse.
Use the ActiveX Automation Members dialog box to select and insert a statement. This dialog box contains an extensive list of statements. Tip: If the pointer is on any line in the script other than the bottom line, the line is overwritten.
66
Running Scripts
You can run an existing script using Run. Run also resumes the playback of a paused script. When you run a script, you cannot use the mouse in the workspace. The following descriptions are included in this topic: Running a Script Pausing a Running Script Stopping a Running Script
Running a Script
To run a script: 1. In the Basic Script Editor, open a script file. 2. Right-click and click Macro > Run. Alternative: On the Basic Script Editor toolbar, click the Start/Resume button.
67
Debugging Scripts
When running a script, you can run it step-by-step or to a certain location in the script. To perform these debugging tasks, insert breakpoints in the script at the points at which you want the script to stop. This topic discusses the following: Setting or Removing the Breakpoints Debugging the Scripts Removing All Breakpoints in the Script Correcting Run-time Errors
To perform a subroutine call on the current line: On the Basic Script Editor toolbar, click the Step into button. Alternative: In the Basic Script Editor, right-click and click Debug > Step Into. To return from the subroutine to the point from which it was called: On the Basic Script Editor toolbar, click the Step out button.
68
To run a script to a point: In the Basic Script Editor, right-click and click Debug > Step to cursor.
To continue the execution from the current point: On the Basic Script Editor toolbar, click the Run button. Alternative: In the Basic Script Editor, right-click and click Macro> Run.
69
Session Log
A session log, which appears in the Status tab of the Output window, contains all program output for the current session, including names of open and saved files, integrity test results. The session log presents different types of information in different colors. Underlined items are links. Text colors representations are shown in the following table: Table 3-1. Session Log Text Color Representations Color Red Green Black Blue Meaning Errors Warnings Messages Links to files, Web pages, and database objects
70
Table 3-2. Status Tab Toolbar Buttons (cont.) Command Home Description Returns to the session log.
2. Click one of the submenu commands to filter the view. Check marks indicate which messages are turned on. Turn off message displays by clearing the check marks.
71
3. Click OK.
To print the report: 1. Right-click and click Print. Alternative: On the Status tab toolbar, click the Print button. 2. In the Windows standard Print dialog box change any Print dialog box options as needed. 3. Click OK.
72
Text colors represent the following: Table 3-4. Help Text Color Representations Color Blue Black Cyan Purple Red Green Meaning Basic Keywords User Variables Basic Functions Automation Objects or Members Errors Comments
73
74
Chapter 4 Customizing
You can customize the interface of PADS tools by: Customizing elements of the interface such as toolbars, menus, and shortcut keys. See Customizing the PADS Interface. Customizing the way windows of the interface are displayed. See Organizing Windows.
Your customizations are saved with your current workspace so that all of the changes you make to toolbars, menus, and shortcut keys are present when you work in that workspace again. Related Topics: Customizing Toolbars Creating a Custom Menu Customizing Shortcut Keys Customizing the Appearance of the Screen
Customizing Toolbars
Use the Toolbars and Menus tab on the Customize dialog box (Tools menu > Customize > Toolbars and Menus tab) to create custom toolbars and shortcut menus. Creating a Custom Toolbar
75
Tip: To create a custom main menu, use the Commands tab on the Customize dialog box. See Creating a Custom Menu. Related Topics Moving Items on Toolbars and Menus
4. Drag the toolbar to the place on the PADS interface where you want it. 5. To add items (commands) to your new toolbar, click the Commands tab. 6. In the Categories list, select a menu or toolbar name to display commands specific to that menu or toolbar. Or select All Commands. Restriction: If you are working in a special mode in PADS Layout or PADS Logic (for example, the Decal Editor in PADS Layout), some categories of commands are not available for customization. 7. In the Commands list, select the command you want and drag it to the toolbar. 8. When you have finished adding commands, click Close. Related Topics Deleting a Custom Toolbar Adding Items to Toolbars and Menus
76
77
2. In the Toolbars list, select a custom toolbar and click the Edit button. 3. In the Toolbar Name dialog box, type the new name and click OK. Related Topics Showing or Hiding a Toolbar Deleting a Custom Toolbar
To create a custom command from an existing command: 1. Tools menu > Customize > Commands tab. 2. In the Categories list, click a menu or toolbar name to display items (commands) specific to that menu or toolbar. Or click All Commands.
78
Tip: If you made macro commands (on the Macro Files tab) available as commands, the Categories list includes the Macro category and the Commands list includes the macros. For more information, see Creating Commands from Macro Command Files. 3. In the Commands list, select the command on which you want to base your custom command. Then click the New button. 4. In the Add Command dialog box, specify the properties of your new command: a. In the Command name box, type the name of the command. b. In the Arguments box, type arguments for the command. Use a space to separate arguments. If an argument contains a space, enclose the argument in quotation marks (). c. In the Description box, type a description of the custom command. d. If an image was associated with the original command, select Use Default Image to use that same image with your custom command. Select Select User-Defined Image to use a different image, edit an image, or create a new image. e. Click OK to close the Add commands dialog box and return to the Customize dialog box. 5. If you are finished with all customizations, click Close. Tip: To add the command to a toolbar or menu, click the command and drag it from the Commands list to the toolbar or menu.
79
Select Select User-defined Image, then select a image, edit an image, or create a new one. 8. Click OK to close the Add Command dialog box and return to the Customize dialog box.
80
2. In the Categories list, click a menu or toolbar name to display items (commands) specific to that menu or toolbar. Or click All Commands. 3. In the Commands list, select a command and click the Delete button. 4. Click Close. Related Topics Adding Items to Toolbars and Menus Creating Commands from Macro Command Files Resetting Toolbars to Defaults
4. Click your new menu to select it. Then right-click and select Button Appearance. 5. In the Button text field, type the name for the menu and click OK. Leave the Customize dialog box open. 6. To add items (commands) to your new menu, click the Commands tab. 7. In the Categories list, select a menu or toolbar name to display commands specific to that menu or toolbar. Or select All Commands. Restriction: If you are working in a special mode in PADS Layout or PADS Logic (for example, the Decal Editor in PADS Layout), some categories of commands are not available for customization. 8. In the Commands list, select the command you want and drag it to the menu. 9. When you have finished adding commands, click Close.
81
1. Tools menu > Customize > Commands tab. 2. In the Categories list, select a toolbar or menu name to display commands specific to that menu or toolbar. Or select All Commands. Restriction: If you are working in a special mode in PADS Layout or PADS Logic (for example, the Decal Editor in PADS Layout), some categories of commands are not available for customization. 3. In the Commands list, select the command you want and drag it to the toolbar or menu. Tip: To remove an item from a toolbar or menu (while the Customize dialog box is open), click the item and drag it outside the toolbar or menu. 4. When you have finished adding commands, click Close. Related Topics Creating a Custom Command Creating Commands from Macro Command Files Removing Items from Toolbars and Menus Moving Items on Toolbars and Menus
82
If the Customize dialog box is closed: Press and hold Alt. Then drag the item outside the toolbar or menu.
Tip: You can reset a toolbar or shortcut menu back to its default list of items. See Resetting Toolbars to Defaults. Related Topics Adding Items to Toolbars and Menus
83
To generate a report of available shortcut keys, see Listing Available Shortcut Keys. To create a shortcut key or reassign an existing shortcut, see Creating a New Shortcut Key. To assign a shortcut key to a macro command, Assigning Shortcut Keys to Macros. To delete an existing shortcut key, see Deleting a Shortcut Key. To reset all shortcut keys to their default settings, see Resetting Default Shortcut Keys.
6. Click OK to close the Assign shortcut dialog box. Result: The new shortcut appears in the Current shortcuts box on the Customize dialog box.
84
Exception: Some combinations, like Alt+Tab, are intercepted by Windows and thus are not available. Related Topics Creating Custom Commands and Menus Resetting Default Shortcut Keys Listing Available Shortcut Keys Resetting Default Shortcut Keys
85
Creating a New Shortcut Key Resetting Default Shortcut Keys Resetting Default Shortcut Keys
[!set] or [^set] \
The following table shows examples of regular expressions used in command arguments using the preview.pcb design, see Table 4-2. Table 4-2. Shortcut Key Expression Examples Shortcut key H A* H +?? H A?0 Result Highlights all nets starting with A, such as A00, A01, A02. Highlights all nets starting with +, having two digits or characters after 0, such as +5V. Highlights all nets starting with A, ending with 0, and with any character in between, such as A00 and A10.
86
Table 4-2. Shortcut Key Expression Examples (cont.) Shortcut key H [C-D]* H [!C-D]* Result Highlights all nets starting with C or D, such as CLKIN, D00. Highlights all nets not starting with C or D, such as A00, GND.
87
1. Tools menu > Customize > Macro Files tab. 2. In the Macro Command Files area, click the New button. 3. In the Open macro file dialog box, select the macro file you want. Then click Open. The PADS tool loads the macro and makes it available for use as a command (the check box to the left of the macro name is selected). Tip: To close the macro file or make it unavailable in the Customize dialog box, clear the check box next to the macro name. 4. To assign the macro to a shortcut key, click the Keyboard and Mouse tab. 5. In the Mode list, select All modes. 6. In the Commands area, double-click Macros to display a list of available macros. Then select the macro you want. 7. In the Current Shortcuts area, click the New button. The PADS tool displays the Assign shortcut dialog box. 8. Select one of the following types of shortcut: To assign shortcut keys, select Press new shortcut key(s), and then press the keys that you want to use. For detailed information about rules and restrictions for creating shortcut keys, see Rules and Restrictions for Key Sequences. Tip: As you enter the new shortcut, similar shortcuts appear in the Similar shortcuts assigned to other commands box. This helps you to avoid creating a new shortcut that conflicts with an existing shortcut. To create a mouse action, select or select a pointer event, and then select a combination of list box options, mouse button events, and modifier keys.
9. Click OK to close the Assign shortcut dialog box. Result: The new shortcut appears in the Current shortcuts box on the Customize dialog box.
3. In the Open macro file dialog box, select the macro file you want to use as a command. Then click Open. the PADS tool loads the macro and makes it available for use as a command (the check box to the left of the macro name is selected). Tip: To close the macro file, or make it unavailable in the Customize dialog box, clear the check box next to the macro name. 4. You can use the macro as you would any other command, for example, to create a Commands list for the Macros category.) Related Topics Adding Items to Toolbars and Menus Adding a Macro to a Menu
89
Tip: To show or hide a toolbar in the PADS interface, use the Toolbars and Menus tab. See Showing or Hiding a Toolbar. To customize display of menus: To change the way a menu is displayed, select an animation from the Menu animations list. For example, Unfold displays part of the menu and an arrow you can click to display the rest. To show shadows on menu items, select the Menu shadows check box. To display your recent menu selections before other menu items, select the Show recent commands first check box. If menus display recent commands first, you can display the full list of menu items after a delay. Select the Show full menus after delay check box. If you have a shortcut made up of a number of keys, you can delay its execution until you press the Enter key. Select the Wait until enter before executing long shortcut check box. To delete the record of commands youve used and restore the default set of commands to the menus and toolbars, click Reset my usage data. This option does not undo any explicit customizations you made.
Restriction: You cannot use the Alt key to resize the Sheets list.
Organizing Windows
You can customize the way windows appear in your workspace in the following ways: Showing Windows Hiding Windows Detaching Windows from the Current View Attaching Windows to the Current View Embedding Windows within Other Windows
Showing Windows
When you first start the application, several windows display. You can show, hide, and automatically hide any of the windows in the application. To open windows: On the View menu, click the name of the window you want to show.
Your choices may include Navigation Window, Output Window, Project Explorer, Help Window, Spreadsheet, and Shortcut Dialog.
Hiding Windows
When the application opens, several windows are open in addition to your workspace. You can close some of these windows or hide them automatically in order to maximize your design space.
Closing Windows
To close a visible window: 1. Move your pointer to the title bar of the window you want to hide. 2. Click the small downward pointing arrow 3. In the resulting menu, click Hide. Result: The window closes. on the right side of the window's title bar.
91
Result: The thumbtack picture changes to point sideways . A new bar appears on the side of the interface. The side on which the bar appears depends on the location of the window. For example, if the Project Explorer is located on the left side of the user interface, when you click the Auto Hide setting from the menu, the new bar appears on the left side of the interface. The new bar contains a tab that has the same name as the window. 3. Hover over the tab in the new bar. Result: The window reappears, covering the application. 4. Move the pointer away from the window. Result: The window minimizes to a tab. Tip: To turn off the Auto Hide feature, hover over the tab in the new bar so the window reappears. Then repeat steps 1-2 in reverse.
Result: The window detaches and you can move it to any part of the screen. Tip: To undo the floating, see Attaching Windows to the Current View.
92
Tip: A similar group of arrows appears in a group near the center of the screen. Ignore that group of arrows for this procedure. 2. While dragging the window, hover over one of the arrows on the edge of the user interface. For example, hover over the arrow on the left side of the user interface. Result: A transparent colored block appears along the side of the user interface to which you are pointing. This block indicates where the window will be docked when you release the mouse button. For example, if you hover over the arrow on the left side of the user interface, a block appears along the left side of the screen, as shown in Figure 4-2.
93
3. Release the mouse button while hovering over the arrow that indicates where you want to dock the window. Result: The window docks to the user interface, and the other windows in the user interface resize.
94
Tip: A similar group of arrows appears at the sides of the user interface. Ignore those arrows for this procedure. 2. While dragging the window, hover over one of the arrows. For example, hover over the left arrow. Result: A transparent colored block appears along the side of the window you are dragging, as shown in Figure 4-4. This block indicates where the window will be docked when you release the mouse button. For example, if you hover over the left arrow, a block appears along the left side of the Project Explorer. Figure 4-4. Dragging and Docking a Window
95
3. Release the mouse button while hovering over the arrow that indicates where you want to dock the window. Result: The window is embedded within another window, both sharing the space the original window occupied. Tip: To maximize your workspace, try setting these embedded windows to hide automatically. Ctrl+click the thumbtack in one of the window's title bars, and all of the windows within the original window frame hide automatically.
Tip: A similar group of arrows appears at the sides of the user interface. Ignore those arrows for this procedure. 2. While dragging the window, hover over the tab graphic. Result: A transparent colored block appears over the window you are dragging, as shown in Figure 4-6. This block indicates where the window will be docked when you release the mouse button. For example, if you hover over the tab in the Project Explorer window, a block appears over the Project Explorer.
96
3. Release the mouse button while hovering over the tab. Result: The window is embedded as a tab within a window, as shown in Figure 4-7. You can click each tab to access each window. Figure 4-7. Window Embedded as a Tab
Tip: To maximize your workspace, try setting these embedded windows to hide automatically. Ctrl+click the thumbtack in one of the window's title bars, and all of the windows within the original window frame hide automatically.
97
Result: When you start dragging, the tab automatically behaves like a window. 2. Release the mouse button. Make sure the pointer is not over any arrow graphics. Result: You now have a floating window. 3. Place the tab as you would any floating window. See also: Organizing Windows
99
100
101
File Save As
On the File menu, use Save or Save As to write design information to a file. The File Save As dialog box displays the schematic files contained in the default \PADS Projects folder. The list of displayed files includes those created in PowerLogic and PADS Logic. Restriction: Files opened by another user are locked to any edits. See Opening a File That is Already in Use. The name of the currently open design is displayed in the File Name text box at the bottom of the dialog box. Click Save to save the file. If the file name exists, a prompt is displayed to overwrite the existing file. The file name default is displayed for new designs. You can also save a file by clicking the Save button from the Toolbar. Related Topics Opening a File Importing Files Exporting Files
Opening a File
Use File > Open or the Open button to open a PADS Logic design file. Alternative: You can also open a file by dragging the file from Windows Explorer and dropping it into the PADS Logic window. Restriction: Files opened by another user are locked to any edits. See Opening a File That is Already in Use. To open a PowerLogic or PADS Logic schematic design: 1. On the toolbar, click the Open button. The File Open dialog box displays the schematic files contained in the default \PADS Projects folder. The list displays files according to the Files of type setting. 2. Select Schematic Files (*.sch) in the Files of type list. 3. Select a schematic file and then click Open to load the design into PADS Logic. Related Topics Creating a New File Importing Files Exporting Files
102
Importing Files
You can use the File > Import command to: Insert data from various formats into the current schematic. Translate schematics created with other tools, and open them as new PADS Logic schematics. Note: This function invokes a non-gui instance of the PADS Symbol and Schematic Translator to translate a single design, using the default mapping files located in C:\Mentor Graphics\ <pads_release> \SDD_HOME\Settings (cadstar2pl.cnv, orcad2pl.cnv, pcad2pl.cnv, and protel2pl.cnv). For information on more complex translations, such as translating only selected files from a .DDB container, or translating with special mappings, see the PADS Symbol and Schematic Translator Users Guide. File types whose data you can insert into the current schematic are: Table 5-1. File Types Imported into the Current Schematic File Type ASCII File Format (*.txt) Description PADS-format ASCII. The ASCII files you can import includes those created from PowerLogic and PADS Logic. Note: Beginning with PADS 9.0, die parts and flip chips are identified by the Special Purpose settings in the Part Type rather than being designated by the DIE and FLP logic families. When you import an ASCII file created by a previous PADS version, these Special Purpose settings are automatically set for parts having the logic family DIE or FLP. The parts family designation remains the same. OLE Import/Export (*.ole) PADS Logic allows you to embed files from other applications as OLE objects in your schematic using Edit/Insert New Object. Once you have an OLE object in your design, you can export the object as a singular item to an .ole file using File Export (see Exporting Files). You can then import the .ole file into other PADS Logic schematics.
103
Table 5-1. File Types Imported into the Current Schematic File Type ECO files (*eco) PADS .asc files Description Similar to PADS-format ASCII. Each type of data begins with a header line with a key word surrounded by asterisks (*). PADS Layout rules.
File types you can translate and open as new PADS Logic schematics are: Table 5-2. File Types Opened as New Schematics File Type CAD .csa files CADSTAR .scm files OrCAD .dsn files P-CAD .sch files Protel .sch files Protel .schdoc files Protel .prjpcb files Description CADSTAR Archive files (ASCII) CADSTAR Schematic files (binary) OrCAD Capture files P-CAD Schematic files (ASCII & binary) generated in P-CAD 2002 & newer Protel 99 Schematic files (ASCII & binary) Protel DXP/Altium Designer Schematic files (ASCII & binary) Protel combined design/schematic files
To import a file: 1. File > Import 2. In the displayed prompt, Click Yes to save the existing design before importing the file, or No to import the file immediately. 3. From the Files of type: drop-down list, select the type of file you want to import. 4. Select the file you want to import, then click Open. Import progress is reported in the Status bar, and logging messages and links to log files are displayed in the Output Window. Related Topics Exporting Files Opening a File Import Rules from PCB
104
Exporting Files
Use Export from the File menu to selectively extract design information from the open schematic file and save it in an ASCII format compatible with the previous or current software version. You can also use Export to create default start up conditions for PADS Logic. To save all or some of the open design in ASCII format: 1. File menu > Export. 2. From the Save as type: drop-down list, select the type of file you want to export to. 3. Type a name for the ASCII file in the File Name text box. The default is the name of the currently open design. 4. Click Save. This opens the ASCII Output Dialog Box. Use it to define what information is to be written to the ASCII file. PADS Logic enables you to embed files from other applications as OLE objects in your design using Insert New Object from the Edit menu. Once you have an OLE object in your design, you can export the object as a singular item to an .ole file. Note: Beginning with PADS 9.0, die parts and flip chips are identified by the Special Purpose settings in the Part Type rather than being designated by the DIE and FLP logic families. With this change, the following changes occur when you export a design to an ASCII file of a previous PADS version: The Special Purpose settings of any die parts and flip chips are cleared. Die parts and flip chips having a family designation other than DIE and FLP lose their die part or flip chip special purpose and become normal parts. Any normal parts that have the DIE or FLP family designation are treated as die parts or flip chips in the previous PADS version.
See also: Importing/Exporting OLE Objects Related Topics Importing Files Opening a File File Save As Export Rules to PCB
105
OLE Import
You can import an .ole file containing OLE objects into a PADS Logic schematic, and you can export an OLE object from a schematic to an .ole file. To import an .ole file: 1. On the File menu, click Import. 2. Select OLE (*.ole) as the file type. 3. Locate the file you want to open. 4. Click Open. The OLE objects import into the current schematic. OLE objects are placed on the sheet on which they were created. For example, if you originally placed an OLE object on Sheet 1 and a second object on Sheet 2, these OLE objects are placed on Sheets 1 and 2 when imported. If some of the OLE objects you want to import exist on sheets that do not exist in the current schematic, these objects are deleted. For example, you originally created OLE objects on Sheets 1, 2, and 3. The schematic you are importing the OLE objects into only has Sheets 1 and 2. The OLE objects from Sheet 3 are deleted.
OLE Export
Tip: Handles appear around the object when it is selected. To export an OLE object: 1. Select an OLE object and on the File menu, click Export. 2. In the File Export dialog box, select OLE (*.ole) as the file type. 3. Name the file and select a location in which to save the file. 4. Click Save. The .ole file is created and is available for import into other PADS Logic schematics. Tip: You can also import application files from other sources using Edit > Insert New Object. You cannot import an .ole file.
106
The second section, starting with *CAM, lists the default settings for the plot and printing outputs. Following this, all of the data for each sheet is grouped together in the *SHT* section. This data starts with *CAE*, listing the window zoom setting and cursor location for the sheet. Other sections are: Table 5-3. ASCII File Formatting Sections Option *TXT* *LINES* *CAEDECAL* *PARTTYPE* *BUSSES* *PART* Description Free text items in the sheet. 2D-line items, including library entry. Description of the CAE symbol decals for all parts in the sheet. Description of the part types that appear in the sheet. Description of buses in the sheet, including the name and location. List of all parts, including their attributes, that appear in the sheet. Gates and connector pins are each listed separately.
*OFFPAGE REFS* List of all off-page flags in the sheet. This includes power and ground symbols and bus connections. *TIE-DOTS* *CONNECTION* *NETNAMES* List of all tie-dots in the sheet. List of the connections in the sheet, with the signal name and path. List of all net names that are displayed in the schematic.
After all sheets are listed, the file ends with *END*.
107
ASCII Output
Use the File Export dialog box to define what information will be written to the ASCII file. 1. On the File menu, click Export. 2. Type a name for the output file, and then click Save. Tip: The filename and path appear at the bottom of the ASCII Output dialog box. 3. In the ASCII Output dialog box, select items in the Select Sections to Output area to appear in the ASCII file. Schematic ParamsDefault system settings from the Options tabs. Sheet ParamsSpecific sheet information such as window scale, centering, etc. TextFree text together with location, level, and size. Lines2D-line items. Plot ParamsInformation related to the CAM output settings and configurations generated using the Plot command. FieldsFields used in the schematic and their values. DecalsPart decals and their contents. Part TypesLibrary part attributes such as manufacturer, cost, and notes. PartsParts used in the schematic and their reference designators. ConnectionsAll connections on the schematic, including paths, tie-dots, and off-page flags. RulesClearance, routing, and others specified in Design Rules. 4. Click Select All to select all items, or click Unselect All to clear all selections. 5. In the PADS Logic Output Version area, select the appropriate version of the software you are using from the list. 6. Click OK.
Procedure
1. Open the schematic you want to archive.
108
2. File menu > Archive. 3. Select the files and folders you want in the Archiver dialog box. 4. Click OK.
Results
An archive folder that contains the design and/or schematic files, the libraries, and any additional files and folders youve indicated is created. Exception: If you chose to compress the files, the .zip file is the only file in this folder. If you chose to create a PDF, the file is created using the schematic name and placed in the archive folder. If you chose to compress the files using the zip format, a zip file is created in the following format:
<project_name>YYYYMMDDHHMMSS.zip
Where YYYY is the year, MM is the month, DD is the day, HH is the hour - in military time, MM is the minute, and SS is the second of the exact time you created the file. The file contains the same folder structure as the archive folder.
Accessing
File menu > Archive
109
Table 5-4. Archiver Dialog Box Name PCB Design Description Specifies the location and name of the PCB design you want to archive. To choose the file you want, type the location or click the Browse button. Select Create PDF to create a PDF file of the PCB design.
110
Table 5-4. Archiver Dialog Box (cont.) Name Schematic Description Specifies the location and name of the schematic file you want to archive. This is automatically populated with the information from the current design. To change the design, or if no design was opened, type the location or click the Browse button. Specifies to create a PDF file of the schematic file. Restriction: This is unavailable if the file you chose is different from the current design. Add libraries Specifies that you want to include libraries in the archive. AllAdd all of your libraries to the archive. SelectAdd only the libraries you specify. Click the Browse button to open the Archiver: Libraries dialog box. Specifies that you want to include other files and folders in your archive. Click the Browse button to open the Archiver: Additional Files dialog box. Specifies where you want the archive to be located. Type the path or click the Browse button. Tip: If you choose to compress the archive, the folder youve indictated must be empty. Specifies to create a zip file. The file will be in the following format:
<project_name>YYYYMMDDHHMMSS.zip
Additional files
Target folder
Where YYYY is the year, MM is the month, DD is the day, HH is the hour - in military time, MM is the minute, and SS is the second of the exact time you created the file.
Related Topics
Archiving Your Schematic
Accessing
File menu > Archive > Additional Files check box > Browse button
111
Table 5-5. Archiver: Additional Files Dialog Box Name Additional files list Add File button Add folder button Remove button Remove All button Description Lists the files and folders you want to include in your archive. Opens the Additional File dialog box where you can select individual files you want to add to the Additional files list. Opens the Browse for Folder dialog box where you can select an entire folder to add to the Additional files list. Removes the selected file or folder from the Additional files list. Removes all of the files and folders from the Additional files list.
Related Topics
Archiving Your Schematic
Accessing
File menu > Archive > Add libraries check box > Select > Browse button
112
Table 5-6. Archiver: Libraries Dialog Box Name Available libraries Description Lists all of the libraries available for you to add to the archive. Restriction: If your library is not listed in the Library Manager, it will not appear in this list. Moves the selected library from the Available libraries list to the Selected libraries list. Moves the selected library from the Selected libraries list to the Available libraries list. Moves all of the libraries from the Available libraries list to the Selected libraries list. Moves all of the libraries from the Selected libraries list to the Available libraries list.
Add >> button << Remove button Add all >> button << Remove all button
Related Topics
Archiving Your Schematic
113
114
Setting Options
Using the Options dialog box, you can preset options for commands in PADS Logic, setting up how those PADS Logic commands will work and overriding the default settings in the default.txt file. Setting options enables you to set up a working environment that suits your design and the way you work. You can set options for the Schematic Editor and for the Part Editor.
115
116
Type a value in mils in the Display Grid: box to specify a grid size for the Display grid, which is a visible guide for drawing lines, decals, connections, and more. The value must be from 10 to 9998 and a multiple of 2 (for example, 2, 4, 50, 100). Tips: The Display grid is independent of the system grid displayed on the status line. If the grid is not visible when the work area is redrawn, you probably have set an interval that is too small for display at all zoom levels. You will have to zoom in several times before the display grid becomes visible.
Select the Snap to Grid check box to snap an item or object to the grid during editing. See also: Work Area and Grid Settings
117
Example: A letter with a 0x20 code displays as a Latin capitol letter A with a grave accent in a design using Western encoding, and as a Cyrillic capital letter A in a design with Cyrillic encoding.
Procedure
1. Click Tools menu > Options > General tab. 2. In the Interval box, type the time in minutes between automatic backups to a file. 3. In the Number of backups box, type the quantity (1-9) of different backup files to create. Tip: Backup files are named <filename>#.sch, where # is a sequential number. For example, logic1.sch, logic2.sch, and so on. 4. Click Backup File to change the folder or name of the backup file. Result: The Backup File dialog box appears. Browse to the folder, type the file name, and then click Save. 5. Select Use design name in backup file name to use the design name instead of the product name as the file name. Example: preview_logic1.sch, preview_logic2.sch instead of logic1.sch, logic2.sch. 6. Select Create backup files in design directory to place all of your backup files in the same directory as the design. Tip: Click to clear if you want your backup files in one, common backup directory.
118
Results
Table 6-1. Backup File Creation If this is selected: Create backup files in design directory X X X Use design Name in backup file name in one common directory without the design name. X in the design directory using the design name. in the design directory without the design name. in one common directory using the design name. The Backup File is Saved
119
Select the Allow Floating Connections check box to create connections without terminations. Tip: Click to clear this check box to prevent creating additional Floating Connections. Disabling the option does not remove existing Floating Connections. See also: Working with Floating Connections
Select the Allow Named Subnets without Labels check box to allow deletion of net name labels in all cases except that of a power symbol connected to a net that overrides its default net name. When this box is checked, the current net name is not changed under any circumstances. When this box is cleared, you cannot delete labels tied to bus rippers or off-page symbols. You can delete net labels tied to component pins; this causes the net to be renamed to a system-generated name, but only if both the following conditions apply: The net is not connected to a bus or off-page symbol. The deleted label was the only label on the net.
Note: It is possible to have a named subnet without a label even if the Allow Named Subnets without Labels check box is unchecked. If you change the name of a subnet with a system net name in the Net Properties dialog box, and click OK without checking the Net Labels check box, the result will be a named subnet without a label. Set the Allow overwriting of attribute values in design with blank values from library check box to specify how design attribute values should be handled by operations that change design part types, such as Update From Library, Update Selected Part Type from Library, Change Type (in the Part Type Properties dialog), ECO Import, and automated operations. Select the check box to allow the value of an attribute in the design to be overwritten by a blank value from the library or other update source. Clear it to prevent overwriting these values.
121
Tip: To include a part that is both non-ECO registered and non-electrical in a netlist, select the check boxes in both Part areas. Select the Include in ECO to PCB check box to include a part in the ECO file that is forwarded to the PCB. Tip: To include a part that is both non-ECO registered and non-electrical in a Forward ECO to PCB, select the check boxes in both Part areas. Select the Include in BOM report check box to include a part in the Bill of Materials (BOM) report. Tip: To include a part that is both non-ECO registered and non-electrical in a BOM report, select the check boxes in both Part areas.
122
Table 6-2 lists the options that are saved and set as defaults. Table 6-2. Part Editor Options Saved and Set as Defaults From the Options Dialog From the Options Dialog From Setup menu > Fonts General Tab Text Tab Dialog Design grid Labels and Text grid Display grid Snap to Grid Font, style and size of: Pin Number Pin Name Ref-Des Part Type Attr Label 1 Attr Label 2 Current font mode (system or stroke)
123
If you want rotate a cross shape diagonally, so that it resembles an x, select the Diagonal check box.
Select the Snap to Grid check box to snap an item or object to the grid during editing. See also: Work Area and Grid Settings
124
reference designators and generates an error report containing the renamed parts. The report displays in the default text editor. To restart numbering of the reference designators or to use available reference designator numbers, clear the Preserve Ref Des on Paste check box in the Options > Design Tab. If you turn off this option and paste a group into a new design, reference designation starts at the first number; for example, U1. See also: Schematic Editor Design Tab Options.
Display Grid
PADS Logic uses a dot grid as a drafting aid. You can set this field of white dots called the display grid to match your design grid, or set it at larger multiples of the design grid. Use the General tab in the Options dialog box to set the display grid or use the GD Modeless Commands. If you do not want to display the display grid, set it to 10.
125
4. Click the color box of an object to change the color. Tip: Two color box columns appear next to the items in the Titles area. Box indicates the color of the box that is drawn around the text item. This box serves two purposes: it indicates the exact size of the text item when it is plotted, thereby helping you avoid overlaps while moving the item; and it provides visibility of the text item at very small zoom levels. 5. To make an item invisible, set it to the background color. Do not set the foreground color and background color to the same color. Tips: The color selection for displaying items or making them invisible does not affect plotting of the schematic. Background sets the color of the work area surface. Foreground sets the color of the dot grid and highlights.
6. To save your color assignments to a file, click Save. Type the configuration name in the Save Configuration dialog box. Tips: PADS Logic saves configuration files in the C:\MentorGraphics\<latest_release>PADS\SDD_HOME\Settings folder with a .ccf extension. The configuration names also appear at the bottom of the Setup menu.
PADS Logic Users Guide, PADS 9.2
126
To modify an existing configuration with the current color settings, click Save. The current configuration filename appears in the Save Configurations dialog box. You can overwrite the settings in this file, or specify a different .ccf file, and click OK.
7. To change the default palette, complete the modifications to the Selected Color area and click Save. Type default in the Save configuration dialog box to override the existing default configuration, and click OK. Related Topics Display Colors Dialog Box in the Part Editor
Setting Fonts
You can set up your designs to use stroke font or the system fonts that ship with the Windows operating system. The system fonts installed on your system are available for use. Restriction: If the schematic uses fonts or character sets that are not installed on your system, a font substitution process begins automatically when the file is loaded. During this process, you are asked to select fonts to substitute for those that are missing from your system. Use the Fonts dialog box to set up or change the fonts to be used in your design. Tasks you can perform are the following: Choosing Stroke Font or System Fonts Options Dialog Box - Text and Line Widths Tabs Converting Fonts Managing Font Replacement
Stroke Font
Use the Fonts dialog box to set or change the font type in your design. 1. On the Setup menu, click Fonts. 2. In the Fonts dialog box, click Stroke to use stroke font in your design. 3. Click Yes when asked to verify that you want to change to stroke font. Tips: Once you confirm your selection, all text in your design changes to the new font type.
127
You cannot undo the change once you switch font types in your schematic. To revert to a prior font, you must change it to that type. Size and width of text characters in stroke font are specified in mils; points are used exclusively for system fonts. Bold, underline, and italic font styles cannot be assigned to stroke font. Graphical symbols and special characters, such as arrows, check boxes, and bullets are not available in stroke font. Other symbols such as mathematical, technical, and geometrical symbols, plus arrows and dingbat blocks are not available in stroke font.
System Fonts
1. On the Setup menu, click Fonts. 2. In the Fonts dialog box, click System to use system fonts in your design. Restriction: Be sure the non-ASCII symbols, such as +/-, ohm, and degrees are available on your system for the fonts you select. If the character sets you select are not available, a blank space or blank text box appears where the symbols should be. In this case, select character sets or fonts that are available on your system, and the symbols will display in your schematic. Tips: The default font and style in use are displayed in the Default Font area. If you change to system fonts, a verification message displays, asking for confirmation that you want to change to system fonts. Once you click OK, all fonts in your design change to the new selection. You cannot undo the change once you switch font styles in your schematic. To revert to a prior font, you must change it to a new font. Non-letter symbols, such as ampersand (&), pound sign (#), and copyright (), registered trademark () and trademark () symbols, as well as the Euro, Pound, Yen, and Cent are supported in system fonts.
3. Select the name of the font you want to use from the list. The fonts in use are shown at the top of the list. 4. Click the button for the font style you want: B for bold, I for Italic, or U for Underlined. Tips: You can select any combination of these styles. For example, you can select Bold and Italic or Italic and Underlined. By default, the style is regularneither bold, italic, nor underlined.
128
Related Topics
Setting Fonts
Text Tab
Setting Stroke Font Options
1. On the Tools menu, click Options and then click the Text tab. 2. To change the size or width of a text item, select a text Type and click the Edit button. Then type a new value in mils in the size and/or width lists. Tip: You must select a type and click the Edit button for each attribute you want to change; you cannot edit both size and width simultaneously.
3. To change the style, select the check boxes in the B, I, or U columns. 4. To change the text size, select the Size box for the type you want to change, click the Edit button, and type a new value. Tip: System font sizes are whole point sizes.
129
Related Topics
Setting Fonts
Converting Fonts
As described in this topic, you can convert fonts in your designs: From stroke font to system fonts From system fonts to stroke font
Example: A stroke font text string with a size of 125 mils becomes a system font text string with a size of 9 points. However, a text string with a size of 100 is rounded to 7 points (97 mils).
Related Topics
Setting Fonts
130
Tip: If the schematic uses fonts or character sets that are not installed on your system, empty boxes appear where you expect to find text or symbols. Once font replacement process completes, the symbols display properly. There are two types of font replacement: Automatic Font Replacement Manual Font Replacement
Tip: You can select some fonts for automatic replacement, and select others for manual replacement.
Related Topics
Setting Fonts
131
Setting Layers
Use the Layers Setup dialog box to do the following: Displaying Layer Information Changing the Number of Electrical Layers Associating Nets to Plane and Split/Mixed Plane Layers Defining the Routing Direction for Layers Defining Layer and Substrate Thickness Reassigning Electrical Layer Data Reassigning Deleted Layers Changing to Increased Layer Mode Changing to Default Layer Mode From Increased Layer Mode
LevelDisplays the layer number. Layer one and the last electrical layer are used for components and routing and are automatically assigned as component layers for the top and bottom of the board. When you add additional electrical layers, the last electrical layer becomes the new bottom layer. Layers in the list below the last electrical layer are nonelectrical or documentation layers. Apply text or drafting lines for specific purposes like assembly drawings or solder or paste mask output to these layers. TypeIdentifies the layer type. Layer types include Component and No Plane (CM), Routing and No Plane (RT), Routing and CAM Plane (PL), Component and CAM Plane (CP), Component and Split/Mixed Plane (CX), and Routing and Split/Mixed Plane (RX). DirectionIdentifies the specified routing direction. Routing direction can be Horizontal (H), Vertical (V), Any (A), 45 (/), or -45 (\). NameThe name of the layer that defines its function. You can assign a unique name to each layer to identify it. This name appears in the Name column of the Layers list and in the Layer list in the standard toolbar. The selected layer is displayed in the Name box beneath the table.
132
2. Select the layer to change. 3. To change the layer to a placement layer, click Component. Tip: You can set the top and bottom layers as component layers, indicating they will be used for placement. You cannot set inner layers as Component layers. 4. To change the layer to a routing layer, click Routing. All electrical layers can be set to routing, plane, or split/mixed plane layers. When a layer is selected as a plane or split/mixed plane layer, use Assign Nets to assign which nets to connect to it.
133
134
135
Tip: The New column of the # of Electrical Layers area displays the new layer number after reassignment. 5. Click OK to return to the Layers Setup dialog box.
136
To decrease the maximum number of layers: 1. On the Setup menu, click Layer Definition. 2. Click Max Layers. A dialog box appears telling you that the maximum number of layers will be decreased to 30, and that layer numbers for all non-electrical layers will be decreased by 100. Tip: If you cannot change to default layer mode, the Max Layers button is unavailable in the Layers Setup dialog box. 3. Click OK.
137
138
Managing Libraries
Use the Library Manager to perform operations associated with editing and copying the contents of libraries.
Accessing
On the File menu, click Library.
139
Library Types
Libraries store decal and part type attributes and attribute labels, but they do not store attribute values. A library can contain four kinds of items: Table 7-1. Listing of Library Types Library Type Decal Part Lines Logic Item The graphical representation of the part when it is drawn. It is often referred to as the footprint. Data about a part, such as a 74LS02, including logic family, attributes, pins, and gates. General graphical data you can store in the library, such as a company logo, to use in any design file. The graphical representation of a schematic part, such as a NOR gate. This section functions as a part list reader only. Use PADS Logic to create and modify Logic decals (sometimes called CAE Decals).
140
4. Click New. Tip: The New button is unavailable if you selected a read-only library.
141
3. In the Filter area, click the button for the type of item you want to modify. Decals - The Edit button is unavailable. The currently assigned PCB decal appears and you can only copy or delete it. Use the Library Manager in the PCB design program to modify the PCB decal. Parts - You will enter the Part Editor. Click the Edit Electrical button. The Part Information dialog box appears so you can define a new part. See also: Part Editor Operations, Part Information Dialog Box Lines - The Edit button is unavailable. Any 2D drafting items appear, for example, drawing formats, title blocks, etc. and you can only copy or delete them. Tip: To add new drafting items to the library, create and combine the items in PADS Logic, then right-click and click Save to Library. See also: Working with Non-electrical Objects Logic - You will enter the Part Editor.
4. To search the selected library (or libraries) for a specific part or item name, type a wildcard or expression in the Filter box and click Apply. Tip: Type * to view all parts or items in the selected libraries. 5. Select the item from the Part Types or the CAE Decals list. (This list name is dependent on the button you selected earlier in the filter area.) 6. Click Edit. Tip: The Edit button is unavailable if you selected a read-only library.
142
Selected attributes
Include >>
143
Table 7-2. Fields of the Report Manager Dialog Box (cont.) Field or Button << Exclude Description Excludes the selected attributes from the report (moves the attributes from the Selected attributes list back to the Available attributes list). Select one or more attributes on the Selected attributes list and click << Exclude. Moves a selected attribute up or down on the Selected attributes list. List order determines the order in which columns appear in the report. Specifies the part types to include in the report. Type a part type name in the field or use wildcards (*) to specify a group of part types. For example: * Specifies all part types in the library. +5* Specifies all part types that begin with the characters +5, such as +5volt and +5LS07. Filters the part types. Lists part types included in the report (as determined by the Part Filter). Generates the report and lets you save it either in lst for viewing or printing or in csv format for use with MS Excel. Cancels the operation and closes the dialog box.
4. When you have the list of parts you want to report on, click List to File. 5. In the Report Manager dialog box, specify the part attributes you want to include in the report. In the Available attributes list, click an attribute to select it. The click Include>>. The attributes appear in the Selected attributes list. To remove attributes from the Selected attributes list, select them and click Exclude>>. 6. Optionally, you can refine the list of parts to report on. In the Part Filter field, type a part name in the field or use wildcards (*) to specify a group of parts. Then click Apply. 7. Click Run. 8. In the Library List File dialog box, select a folder and file format for the report. You can select either of two formats: Library List format (lst): Information is formatted in columns for viewing or printing. (See Figure 7-2.) Comma-separated values format (csv): format recognized by MS Excel. (See Figure 7-3.)
9. Click Save. 10. In the Report Manager dialog box, click Close. Result The Report Manager generates the report and displays a link to it in the Output window. To view or print the report, click the link. Notepad opens and displays the report. Figure 7-2. Parts Report in .lst Format
145
Related Topics The Report Manager Dialog Box Reporting on Decals, Lines or Logic Symbols in a Library Managing Libraries
146
Managing Libraries
Note: Beginning with PADS 9.0, die parts and flip chips are identified by the Special Purpose settings in the Part Type rather than being designated by the DIE and FLP logic families. When you import an ASCII file created by a previous PADS version, these Special Purpose settings are automatically set for parts having the logic family DIE or FLP. The parts family designation remains the same.
147
6. Click Export. 7. Select the folder to which you want to export the file from the Save In list. 8. Type the name in the File Name box and click Save. The following table lists the extension to use for each item: Table 7-4. Export Library Data - ASCII File Extensions Applied to Items Item Decal Part Lines CAE Decal Extension .d .p .l .c
Note: Beginning with PADS 9.0, die parts and flip chips are identified by the Special Purpose settings in the Part Type rather than being designated by the DIE and FLP logic families. With this change, the following changes occur in a design when you export it to an ASCII file of a previous PADS version: The Special Purpose settings of any die parts and flip chips are cleared. Die parts and flip chips having a family designation other than DIE and FLP lose their die part or flip chip special purpose and become normal parts. Any normal parts that have the DIE or FLP family designation are treated as die parts or flip chips in the previous PADS version.
Accessing
On the File menu, click Library and in the Library Manager, click Manage Lib. List.
148
149
150
Accessing
On the File menu, click Library and in the Library Manager dialog box, click Attr Manager. Figure 7-5. Manage Library Attributes Dialog Box
Tip: This dialog box does not manage attributes in the current design. Use the Manage Schematic Attributes dialog box to manage attributes in an open design file. When you add an attribute in this dialog box, each part in the current library folder is updated to contain the new attribute. See also: Attributes Overview In this topic: Creating Attributes Assigned to Every Library Part Renaming Attributes Applied to Each Library Part Deleting Attributes From All Parts in Library
151
152
Click Browse Lib Attr to select an attribute already defined in the library. Select an attribute name from this dialog box and then click OK. 7. Click Rename Attrs to rename the attribute and remove it from the Attributes Selected for Rename list box. 8. Click Close. Tip: Click Remove or Remove All to place the selected attributes back into the Attributes in Library list and keep the current name.
[!set] or [^set]
153
Table 7-5. Filter Displayed Information With Wildcards and Expressions Expression: \ Use to: Match a special syntactic character exactly, suppressing the special character's syntactic significance. Tip: The following characters need the \ before them: `[]*?!^-\'
Table 7-6. Wildcard and Expression Examples Expression: 74* 74?? 74??08 *08 *08* Results in all items that: start with 74: 7404, 74LS04, 74622. start with 74 followed by any two characters: 7404, 74T2, 74TP. start with 74, followed by any two characters, and end with 08: 74LS08, 74HC08, 744608. start with any number of characters and end with 08: 2146108, 5408, 54HCT08, 744608. start with any number of characters, followed by 08, and end with any number of characters: 5408, 5408BE, 54HCT08AE, 74ABT08CE2, 941M70839. start with 5 or 7 with any number of characters after: 54HCT244, 5968BAE4, 74ACT44. start with 5 or 6 or 7 followed by any number of characters: 54LS08, 6225BE, 69TF77, 74ALS02. start with 5 or 7, followed by 4HCT, and end with any two characters: 54HCT04, 54HCT74, 74HCT27, 74HCT84. start with 74A, followed by C or H, and end with any number of characters: 74AC244, 74AHCT27. start with 74A, followed by any character except the letters C through H, and end with any number of characters: 74ABT44, 74ALS244, 74ABF365. start with the character \, followed by any number of characters, and end with 08: \LS08, \HCT08, \ABT08.
154
Logic or The CAE decal is the logic symbol that appears on the schematic, for example, a CAE Decal NAND gate. See also: Creating a New CAE Decal PCB Decal The graphical representation of the part when it is drawn in the PCB design program. It is often referred to as the footprint. Assigning a PCB Decal is optional and only required if you are passing a netlist to PADS Layout or Perform.
Related Topics Changing and Updating Library Parts Creating Single Gate Parts Creating Multigate Parts Creating New Parts from Existing Parts Creating a New Connector Creating a New CAE Decal Creating a New Pin Decal Special Symbols
155
This dialog box is similar to the one used in the schematic editor, with check boxes to display text items.
Accessing
In the Part Editor, on the Setup menu, click Display Colors. Figure 7-6. Display Colors Dialog Box in the Part Editor
Table 7-8. Display Colors Dialog Box contents Name Selected Color Palette Description Select a color in this area to apply to tiles in the Names area. Click to open the Color dialog box where you can specify new colors or customize colors that appear in the Selected Color area. Click Default Palette to restore the default color settings in the Selected Color area. Tip: Refer to the Microsoft Windows User's Guide for more information about changing the Color Palette.
Default Palette
156
Table 7-8. Display Colors Dialog Box contents Name Background Description Apply a color to this color tile to change the background color or work area surface in the Part Editor workspace. Tips: To make an item invisible, set it to the background color. The color selection for displaying items or making them invisible does not affect plotting of the schematic. Apply a color to this color tile to change the color of objects that you select in the workspace. Apply a color to objects in the Items area to change the color of that object in the workspace. Tip: Some of the items have a color setting in the Box column. Box indicates the color of the box that is drawn around the text item. This box serves two purposes: it indicates the exact size of the text item when it is plotted, thereby helping you avoid overlaps while moving the item; and it provides visibility of the text item at very small zoom levels. To make a text string visible in the part editor, select the check box beside the string type in the Names area. Restrictions: This area is only available when editing a CAE decal, pin decal, or when editing the graphics of individual connector, or off-page type symbols. When editing a CAE decal - Sheet Number is unavailable. When editing a pin decal - Reference Designator, PartType Name, Attribute Labels, and Sheet Number are unavailable. When editing the pin decal of an off-page, power or ground symbol - only Netnames and Sheet Number are available. When editing the graphics of a single connector pin only Ref Designator, Part-Type Name, and Attribute Labels are available.
Selections Items
Names
To change colors of design items: 1. In the Selected Color area, select a color tile. 2. In the Names area, click the color tile of an object to apply the color.
157
The Selection Filter Dialog Box appears. 2. Select one or more the following items: Pins, Labels, 2D Lines, or Text. To select all of these options, click Anything. To clear all of the options, click Nothing. 3. Click Close. Related Topics Selecting Multiple Objects in the Decal Editor
158
To make a copy of the CAE Decal: 1. In the Part Editor, click the Open button. 2. In the Select Type of Editing Item Dialog Box, click CAE Decal and then click OK. The Get Gate Decal from Library dialog box displays. 3. In the Items box, type a wildcard or expression to filter the symbols, and click Apply. 4. Click OK. You enter the Decal Editor and the decal appears. 5. Modify the decal as required. 6. On the File menu, select Save As. The Save Item to Library dialog box displays. 7. Type a name for the new CAE decal and select a library folder. 8. Click OK. 9. On the File menu, select Exit Part Editor. Making a copy of the part uses the same process as making a copy of the CAE decal, except you select Part Type instead of selecting CAE Decal from the Select type of editing item dialog box. Change both the CAE decal and the electrical information, then save it as a new part. Tip: You can rename a modified decal that you accessed through the part type. See also: Saving Part Types
159
New from the File menu. You can modify the existing symbols or add new symbols. Refer to the Special Symbols topic for additional information. Off PageClick Off Page to modify the off-page reference symbols. PADS Logic allows only one part definition in the library for off-page reference symbols, so this option grays when you select New from the File menu. You can modify the existing symbols or add new symbols. Refer to the Special Symbols topic for additional information. Part TypeClick Part Type to create or modify an existing part. Pin DecalClick Pin Decal to create or modify a pin decal, the information and appearance of a terminal pin. A number of different pin decals are provided. PowerClick Power to modify an existing off-page reference symbol. PADS Logic allows only one part definition in the library for power symbols, so this option grays when you select New from the File menu. You can modify the existing symbols or add new symbols. Refer to the Special Symbols topic for additional information.
160
4. Click OK. 5. On the File menu, click Exit Part Editor. Tip: A checking routine is executed when you save a part. Resolve all errors before exiting the Part Editor; parts with errors cannot be added to the schematic.
Tip: When moving multiple objects in the Decal Editor, right-click to access the Rotate 90, X Mirror, and Y Mirror commands.
AssignMoves a decal from the Unassigned Decals list box to the Pin Decals list. Select a decal, then click Assign. Pin DecalsLists the pin decals that are displayed in the dialog boxes that access pin decals, for example, the Pin Decal Browse dialog box. You can display up to 100 pin decals. FilterSearches the chosen library (or libraries) for a specific part or item name, or names that match a wildcard or expression. Use the Library drop-down list to select specific library directories or the All Libraries setting. Type * to view all parts or items in the chosen libraries. Click Apply to search the libraries and display the search results. Preview AreaDisplays the pin decal highlighted in the Unassigned Decals area or the Pin Decals area.
161
UnassignMoves a decal from the Pin Decals list box to the Unassigned Decals list box. Select a decal, then click Unassign. Unassigned DecalsLists the available pin decals in the selected library or all libraries.
CAE Decals
The following section describes using CAE Decals, otherwise known as schematic symbols or logic decals.
162
163
Result: The Decal Wizard creates a rectangle of the correct size, adds the pins, and creates place holders for the sequence number, pin number, pin type, and swap information. Tip: Use the Part Editor Drafting toolbar to modify the basic information created by the decal wizard. You can add additional terminals, change the pin decal, or change the pin sequence number.
7. In the Increment options area, choose what to increment by clicking either Increment prefix or Increment suffix. 8. In the Step value box, type a positive or negative number to increase or decrease the pin numbers with consecutive or stepped values. 9. If using alphanumerics, you can select the Use JEDEC pin numbering check box to ensure legal alphanumeric values are used. 10. Click OK. 11. Select each pin or pin text in ascending sequence to assign a number. You can click twice on a pin to skip a number. Use the Change Pin Number button in the Editing Toolbar within the Part Editor to change a pin number if necessary. 12. Use the other options of the Design toolbar to modify the pin numbers and add pin names, pin swapping information, pin type, etc. 13. On the File menu, select Return to Part. Click Yes when the keep changes to gate message appears.
164
The steps required to create a new CAE decal are: 1. Construct the new CAE decal for the part manually or with PADS-Logics Decal Wizard automatic part creation tool. Use the Decal Wizard to create the outline and add terminals. Optionally, use the Part Editor Drafting Toolbar to add additional terminals, change the pin decal, or change the pin sequence number. Optionally, add additional attribute labels. See the Creating Attribute Labels topic for more information.
165
See also: Creating Multigate Parts 1. In the Part Editor, on the Edit menu, select CAE Decal Editor, or click the Edit Gate Decal button on the toolbar. 2. Click OK when prompted to create a decal for the new part. Four text entries are displayed in the working area: U999 is the default space reserved for the reference designator in the schematic. Part Name is the default location of the part type name in the schematic. *Free Label 1 is the default location for the first displayed attribute. *Free Label 2 is the default location for the second displayed attribute. See also: Attribute Labels The steps required to create a single gate part are: 1. Construct the new CAE decal for the part manually or with the automatic part creation tool in the Decal Wizard. 2. Use the Decal Wizard to create the outline and add terminals. 3. Within the Part Editor, use the Editing Toolbar to modify the pin numbers created by the decal wizard and add pin names, gate swapping information, etc. 4. On the File menu, select Complete. 5. Assign electrical information to the part. 6. Click the Edit Electrical button from the toolbar. The Part Information Dialog Box appears. 7. In the Part Statistics area, use Pin Count to indicate the total number of pins in the part. This is mandatory if there are signal pins in the part that were not added when you created the CAE decal in the steps above. 8. Optionally, click the Decals button to assign the PCB decal. The pin count for the assigned PCB decal must be equal to or greater than the electrical description. 9. Select a Logic Family from the list. See also: Viewing and Setting General Part Information 10. Optionally, select the Signal Pins tab and assign power and ground signal information. 11. Optionally, select the Attributes tab and assign bill of material and part list information. 12. Click OK. The Part Editor displays the CAE Decal. 13. Save the part to the library.
166
167
Adding Terminals
A terminal consists of a pin decal and a series of text strings that define the terminal's number, swap data, etc. To add a new terminal: 1. On the Decal Editing Toolbar, click the Add Terminal button. 2. In the Pin Decal Browse dialog box, select a decal, then click OK. The pin decal attaches to the cursor. 3. Move the cursor into position and click to anchor the pin. Before placing the terminal, you can use the pop-up menu to modify the orientation of the terminal and modify terminal information, including the pin number, pin name, pin type, and swap class. After a terminal is placed, a new terminal, identical to the first, is attached to the cursor for placement. If you defined a pin number or pin name, these are automatically incremented to the next number and name for the new terminal. If you assigned pin type and swap class, the values are copied to the new terminal. 4. When finished, right-click and click Cancel.
168
3. In the Increment options area, choose what to increment by clicking either Increment prefix or Increment suffix. 4. In the Step value box, type a positive or negative number to increase or decrease the pin numbers with consecutive or stepped values. 5. If using alphanumerics, you can select the Use JEDEC pin numbering check box to ensure legal alphanumeric values are used.
PADS Logic Users Guide, PADS 9.2
169
6. Click OK. 7. Select each pin or pin text in ascending sequence to assign a number. You can click twice on a pin to skip a number. Use the Change Pin Number button in the Editing Toolbar within the Part Editor to change a pin number if necessary. 8. Right-click and click Cancel when finished.
170
6. Click the Set Pin Type button. The Pin Type information window appears. 7. Select a pin type from the drop-down list box. The characters that represent the pin type are listed below. 8. Click OK. Table 7-11. Characters Used to Represent Pin Types Letter B C G L O P S T U Z Represents this pin type Bidirectional Pin Open Collector Pin Ground Pin Load Pin Or-Tieable Source Pin Power Pin Source Pin Tristate Pin Undefined Terminator Pin
171
8. Click OK.
172
173
Attribute Labels
Attribute Labels are placeholders for attributes within a CAE Decal. When you add an attribute to a part, it is placed in this reserved location. PADS Logic lets you create an unlimited number of attribute labels. See also: Attributes Overview Use attribute labels to customize attribute locations in the design. You can create and place attribute labels so that when a part is added to a design, assigned attributes are less likely to exist where a connection or other design information exists. You can also specify a unique justification or orientation for the label. Tips: If you add an attribute and do not have an available attribute label, the attribute is added just below the insertion point of the part. Additional attributes are added below the last one. Attribute labels do not display in the Schematic Editor or the Part Editor. You must be viewing a decal to view an attribute label. Use Display Colors to control the display of attribute labels when creating or edit a decal. See also: Setting Display Colors You can create an attribute label with a specific name; one that matches the actual attribute's name. This makes placement of specific attribute information easier. You can also use a generic attribute label name, or free label, for any attribute assigned to the part. The name used is *Free Label N, where N is the number of the label. As you add attributes, they are placed at either the location that matches the attribute name, if specified, or the first available free label location.
174
3. Optionally, set the text size, width, or justification. 4. Click OK. See also: Setting Display Colors
Modifying Terminals
Use the Terminal Properties dialog box to view or modify the properties of the terminals selected in the Decal Editor. 1. To change the pin decal for all the terminals selected in the Decal Editor, click Change Decal. 2. In the Pin Decal Browse dialog box, select a pin decal, and then click OK. 3. To change the terminal number, type the new value in the Number box. Tip: If multiple terminals in the Decal Editor are selected, this option is unavailable. 4. To change the terminal name, type the new name in the Name box. Tip: If multiple terminals in the Decal Editor are selected, this option is unavailable. 5. To change the swap class value, type a new value in the Swap class box. Tip: If the values of the terminals differ, this text box is blank. 6. Click OK.
175
Alphabetic and numeric values can be used in either box. For example, A1 or 1A. For a single numeric, use either Prefix or Suffix box, and void the other box.
5. In the Increment options area, choose what to increment by clicking either Increment prefix or Increment suffix. 6. In the Step value box, type a positive or negative number to increase or decrease the pin numbers with consecutive or stepped values. 7. If using alphanumerics, you can select the Use JEDEC pin numbering check box to ensure legal alphanumeric values are used. 8. Click OK. 9. Select each pin or pin text in ascending sequence to assign a number. You can click twice on a pin to skip a number. Use Change Pin Number to change a pin number if necessary. Refer to the Terminal Toolbox topic for additional information. Any alternate CAE decals are assigned the same pin numbers. 10. Set other pin information such as pin type and pin swapping, as needed. 11. Click Complete. 12. Repeat the steps for the other gates.
177
Part Types
The following topics describe how to work with part information which is a collection of the electrical and attribute informatin of a part as opposed to the graphical.
178
You can perform the following actions in the Part Information dialog box: Viewing and Setting General Part Information - General tab Assigning PCB Decals to library parts - PCB Decals tab Assigning Gates to Parts - Gates tab Part Information - Pins tab Managing Attributes - Attributes tab Part Information - Pin Mapping tab Assigning Alternatives for Special Symbols - Connector tab
Related Topics Managing Libraries Modifying the Library List and Order
Accessing
In the Part Editor, click the Edit Electrical button and in the Part Information for Part dialog box, click the General tab.
179
In this topic: Viewing Part Statistics Setting the Logic Family Setting General Part Information
Decal
180
Table 7-12. Part Statistic Categories Category Gate Count Signal Pin Count Description Displays how many gates exist in the part. Displays the number of signal pins in the part.
2. Select the Special Purpose check box, then select the appropriate radio button to identify the part as one of the following types: ConnectorIn contrast to other part types, connectors do not require a prefix list, or gate definitions. Restrictions:
PADS Logic Users Guide, PADS 9.2
181
This check box is automatically selected when you create or modify connectors. It is unavailable if you open a part other than a connector.
This check box is unavailable when the part already has gate or pin assignments. The Gate Decals tab is unavailable when the Connector check box is selected. Some Pins tab controls not applicable to connector parts are disabled.
Note: Beginning with PADS 9.0, die parts and flip chips are identified by the Special Purpose settings in the Part Type rather than by the DIE and FLP logic families. With this change, any reference designator (logic family) can be assigned to a die part or flip chip. 3. To allow a part to be passed between the design and schematic file for forward and backward annotation, click ECO Registered Part. By default, all existing part types in your design are ECO registered. Tip: Typically you do not select this check box for non-electrical parts. For example, if you create and add a mounting hole to your design in the layout software, you would not need the part (mounting hole) to pass back to your schematic when you perform a backward annotation of the design. 4. To apply the part information edits to other parts in the library, type prefixes and wildcards into the Prefix List box matching the names of the other parts to update. Examples: Question mark ? in a prefix acts as a wildcard for one character. The prefix ?4 is the equivalent of 54 or 74. If you type \02 as the suffix, the edits are applied to all parts ending in 02.
Warning: The contents of the Prefix List box are applied when you click OK or Save As on other tabs in the Part Information dialog box. 5. You can check the part for missing or inconsistent information while the Part Information dialog box is open. Click the Check Part button. 6. Click OK.
182
Accessing
In the Part Editor, click the Edit Electrical button and in the Part Information for Part dialog box, on the General tab, click Families. Figure 7-8. Logic Families Dialog Box
In this topic: Adding a Logic Family Changing the Name or Prefix of a Logic Family Deleting a Logic Family
Adding a Logic Family To add a new logic family: 1. In the Part Editor, open a Part Type, and click the Edit Electrical button. 2. In the Part Information dialog box, click the General tab and then click the Families button. 3. In the Logic Families dialog box, click Add. A new entry is opened in the Logic Families list. 4. In the Family text box, type the new logic family name. 5. Click in the Prefix text box, and type the prefix you want to use for the new family. You can specify an alphabetic prefix or an alphanumeric prefix. The maximum length for the prefix is six characters. The last character must be an alphabetic character. 6. Click OK. Changing the Name or Prefix of a Logic Family To change the name or prefix of an existing logic family: 1. In the Part Editor, open a Part Type, and click the Edit Electrical button.
183
2. In the Part Information dialog box, click the General tab and then click the Families button. 3. In the Logic Families dialog box, select the logic family from the list. 4. In the Family text box, type the name of the new family. 5. In the Prefix text box, type the new prefix to associate with the new family. 6. Click OK. Deleting a Logic Family To delete a logic family: 1. In the Part Editor, open a Part Type, and click the Edit Electrical button. 2. In the Part Information dialog box, click the General tab and then click the Families button. 3. In the Logic Families dialog box, select the logic family from the list. 4. Click the Delete button. 5. Click OK. Related Topics Part Information Dialog Box
184
Accessing
In the Part Editor, click Edit Electrical, and in the Part Information for Part dialog box, click the PCB Decals tab. Figure 7-9. Part Information for Part Dialog Box - PCB Decals tab
In this topic: Assigning an Existing Decal Assigning a New Decal Unassigning a Decal Changing the Default Decal Resetting the Tab Data
Assigning an Existing Decal You can assign up to sixteen PCB decals to a part. To assign decals to a part: 1. Open a Part Type.
185
2. On the toolbar in the Part Editor, click the Edit Electrical button and then, in the Part Information dialog box, click the PCB Decals tab. 3. In the Library drop-down list, select the library from which you want to assign decals. The available decals from the selected library appear in the Unassigned Decals list box. 4. To filter the contents of the Unassigned Decals list use any of the following: a. Type wildcards and expressions into the Filter box. Tip: Type asterisk * in the Filter box to display all decals. b. Type a number in the Pin Count box, and then click Apply. Tip: Delete all numbers in the Pin Count box to display all decals. This box is always available as a filter to allow decals of differing pin counts to be assigned. c. Click the Show only Decals with pin numbers matching Part Type check box to filter out decals that do not have pin numbers matching existing gate and signal pins on the Pins tab, or the physical pin numbers on the Pin Mapping tab. 5. Select a decal name from the Unassigned Decals list box. 6. Click Assign. The selected decal is assigned to the part and moved to the Assigned Decals list box. Tip: As a shortcut, double-click on a decal name to assign it to the part. Restrictions: You must assign a decal with enough pins for all the defined gate pins and signal pins on the Pins tab. Only decals with sequential numerical pin numbers can be used with pin mapping.
7. To assign additional decals to the part, repeat Steps 4 and 5 above. 8. You can check the part for missing or inconsistent information while the Part Information dialog box is open. Click the Check Part button. Result: Even if you dont click the Check Part button, when you exit the tab, the assigned decals are checked to ensure they contain physical pin numbers for all the gate and signal pins defined in the Pins tab. Assigning a New Decal You may, on occasion, want to specify a decal that doesn't exist in the library yet, but may exist in another PCB designer's library, or may be created later. To assign a new decal name: 1. Open a Part Type. 2. On the toolbar in the Part Editor, click the Edit Electrical button and then in the Part Information dialog box, click the PCB Decals tab.
186
3. Click Assign New. 4. In the New PCB Decal dialog box, type a name and click OK. The name is added to the end of the Assigned Decals list. Unassigning a Decal You can unassign a decal from a part. To unassign a decal: 1. Open a Part Type. 2. On the toolbar in the Part Editor, click the Edit Electrical button and then in the Part Information dialog box, click the PCB Decals tab. 3. Select a decal name from the Assigned Decals list box. 4. Click Unassign. The decal is unassigned from the part, and moved to the Unassigned Decals list box. Tip: As a shortcut, double-click on a decal name to assign it to the part. Changing the Default Decal The first decal listed in the Assigned Decals list box is the default decal used when you add the part to Layout. You can make any decal in the Assigned Decals list the default decal by moving it to the top of the list. To make a decal the default decal: 1. Open a Part Type. 2. On the toolbar in the Part Editor, click the Edit Electrical button and then in the Part Information dialog box, click the PCB Decals tab. 3. Select the decal in the Assigned Decals list. 4. Click Up until the decal is at the top of the list. The decal becomes the default decal. Resetting the Tab Data You may sometimes want to discard changes you have made in the current session with the PCB Decals tab, and return the Tab's data to its original state. To reset the data in the tab to what it was when you opened the tab: 1. Open a Part Type. 2. On the toolbar in the Part Editor, click the Edit Electrical button and then in the Part Information dialog box, click the PCB Decals tab. 3. Click Reset. Tip: Reset only resets the current tab.
187
Gate Decal and Alternates For each gate, you can enter the CAE Decal name which is the name of the logic symbol that is used to display the part in the schematic. Alternate decal assignments must have the same number of pins. One primary and three alternate decals may be defined for each gate. Assigning a CAE Decal is optional in PADS Layout, but required in PADS Logic. Gate and Pin Swap Information If at least one decal is assigned to a part, you can enter or modify its gate information. This includes enabling or disabling swaps for gates within a part or between similar parts. This information lets PADS Logic know which gates it can substitute for connection length minimization after placement. To gate swap, assign a number to the gate on the Gates tab. Gates with like numbers can swap within the part, or to other similar parts. A value of one (1) indicates that the gate is swappable with gates of the same part type in the schematic database. If a part contains more than one type of swappable gate, then identify the second type with the number 2, the third type with 3, etc. The number 0 indicates that no swapping can occur. Assigning Gates to a Part 1. Open a Part Type, click the Edit Electrical button on the toolbar and then click the Gates tab. 2. To add a gate to the part, click Add. Result: The gate appears in the Gate list. The first gate is automatically designated A, the second gate B, and so forth. Tip: When you select a gate, the Pins list shows the number of pins for the selected gate.
188
3. To swap gates with the same Swap ID number, select the gate and click Edit. Then type a value between 1 and 100 in the Swap column. Tip: To disable swap for the gate, type a value of 0. 4. To define Logic decals for the gate, select the cell under CAE Decal 1 and click Edit. Then type a decal name in the CAE Decal box or click the "..." Browse button to search for a decal from a library. The Browse button opens the Assign Decal to Gate dialog box. Tip: You can define up to 4 alternates; you do not have to define alternates. See also: Assigning CAE Decals to Gates 5. To remove the selected gate from the Gates list, click Delete. The gates following the removed gate are automatically renamed in sequential order. Tip: If you delete a gate, the pins information in the Pins tab is reset. You can add a gate and move the pins from one gate to the other on the Pins tab to retain pin information before you delete the gate. 6. To return the options on the tab to the original settings when the tab first appeared, click Reset. When you do so, it resets only the current tab. Tip: Gate pins are added on the Pins tab. See Part Information - Pins tab.
189
You can assign up to four decals. Assigned decals must have the same number of pins. The first decal is the default decal, the decal used when you add a part to the schematic.
6. To change the order, select the decal in the Assigned Decals list and click Up or Down. 7. To remove a decal from the gate, select it from the Assigned Decals list and click Unassign. 8. To assign a decal name of a nonexistent decal in the library, click Assign New. The Assign New Gate Decal dialog box appears. Tip: You can specify a decal that does not exist in your library, but may exist in another designer's library, or that you may create later.
190
Accessing
In the Part Editor, click the Edit Electrical button, and in the Part Information for Part dialog box, click the Pins tab. Figure 7-10. Part Information for Part Dialog Box - Pins Tab
Tip: To undo all changes for this tab only, click Reset. In this topic: Adding One or More Pins to a Part Editing Pin Data Sorting Table Data Renumbering Pins Deleting Pins
191
Error Checking
Adding One or More Pins to a Part You can add pins to a part using several methods. You can add all pins automatically by assigning a decal. You can add a single pin to the part, add a series of pins, and paste pins from a database; or you can import pins using a comma separate value (CSV) file.
Adding a Single Pin
On the Pins tab of the Part Information dialog box, click the Add Pin button.
Requirement: You must add a pin number to make the pin valid, and then change any other fields as needed. If this is the first pin to be added it takes the default of belonging to Gate-A. If pins already exist, the new pin takes the Pin Group of the currently selected pin.
Adding a Series of Pins
1. On the Pins tab of the Part Information dialog box, click the Add Pins button. 2. In the Add Pins dialog box, type the number of pins to add in the Number of pins box. Tip: Total pins for the part can not exceed 32,767. 3. In the Start pin number area, type values in the Prefix and/or Suffix boxes. A preview of pin numbers based on your input is displayed below the boxes. Tips: Alphabetic and numeric values can be used in either box. For example, A1 or 1A. If you type alphanumerics and the decal uses numerics, you must use the Pin Mapping tab to map the alphanumerics onto the decal. For a single numeric, use either the Prefix or Suffix box, and void the other box.
4. In the Increment options area, choose what to increment by clicking either Increment prefix or Increment suffix. 5. In the Step value box, type a positive or negative number by which to increase or decrease the pin numbers with consecutive or stepped values. 6. If using alphanumerics, you can select the Use JEDEC pin numbering check box to ensure that legal alphanumeric values are used.
Assigning a Decal
When you assign a decal on the PCB Decals tab, the pin numbers from the decal are automatically populated into the Pins tab table. PCB Decal pin numbers can be alphanumeric or numeric and the pin numbers in the PCB Decal must match the pin numbers listed in the Pins tab table.
192
You can copy selected table data from the Pins tab or from Microsoft Excel and paste it into the Pins table. The selected cell in the table is the paste origin. Data is pasted below and to the right of the paste origin. 1. If you are copying from Excel, select data and use the Excel Copy command. If you are copying from the Pins tab, select data and click the Pins tab Copy button. 2. Click the Paste button to paste the data into the table starting at the paste origin. Restriction: When the pasted data includes either Pin Group or Pin Number data, extra pin rows are added automatically, otherwise the paste will fail if the number of rows and columns in the pasted data does not match those available in the table below and to the right of the paste origin.
Importing Pins Using a CSV File
You can import data from a comma separated value file. 1. Click the Import CSV button. 2. In the File Open dialog box, browse and select the CSV file. 3. Click Open to begin the import. The entire contents of the Pins tab table is replaced with the data of the CSV file. Requirement: CSV field names must correspond to the column headers in the Pins tab table. Only the first two characters of the header must match. For example, Pi for the Pin Group column. Gate or Ga are acceptable alternatives to the Pin Group header. Tip: A sample CSV file is located in your \PADS projects\Samples folder. Editing Pin Data You can click a cell in the row of the pin you are editing to edit the cell contents, or select one or more cells of the same column and click the Edit button. 1. Click the Pin Group cell and choose gate, signal pin, or unused pin from the list. Gates listed in the Pin Group cell list are added using the Gates tab. Signal pins require a signal name in the Name cell. See Assigning a Signal Pin, Assigning an Unused Pin 2. Click the Number cell and type a pin number for the pin. The Number cell must contain at least 1 character and can contain up to 15 characters. Requirement: The pin number must match the PCB decal. For example, alphanumeric to alphanumeric. Tip: Pin numbers can be either numeric or alphanumeric. Prior to PADS2007, alphanumeric pin numbers were not legal on the PCB decal but overlaid the numeric decal numbers, and were stored within the Part Type. You can continue to keep numeric
193
PCB decals and use the Pin Mapping tab to overlay different pin numbers onto the numeric PCB decal pin numbers. See Part Information - Pin Mapping 3. Click the Name cell and type a pin signal or function name. For example, Clock or CLK. A pin name is not required. The Name column is not used for unused pins. Restriction: Gate pin names can contain up to 40 characters, while signal pin names can contain up to 47. All alphanumeric characters are accepted. In signal pin names, you cannot use special characters such as question marks ?, curly braces {}, asterisks *, periods ., commas , , or spaces. But in gate pin names, you can use any character except a space. 4. Click the Type cell and choose a pin type from the list. The type column is only used with gate pins. 5. Click the Swap cell and type a swap number, or use the up/down arrows. Tip: You swap pins within gates to uncross connections and facilitate routing. Pins with like numbers can swap within a gate. Type 0 to disable swapping. 6. Click the Sequence (Seq.) cell and type the gate sequence number. The sequence number determines the mapping of CAE gate pins to PCB decal pins. The sequence is automatically shared with alternate CAE decals. For example, the sequence number shows how pin numbers appear on the CAE gate decal; therefore, in Gate A, sequence number 1 could be pin 1, but in Gate B, sequence number 1 would be pin 4. Exception: When editing pin data for connectors, only the Pin Group and Number columns are relevant. Data entered in other columns is rejected. Connectors dont have gates, so the Pin Group column just indicates whether a pin is a connector pin or an unused pin.
Assigning a Signal Pin
Assign signal names to implicit pinspins which are not displayed on any gate in the schematic. Typically, ground and power pins are the only implicit pins. You are not required to use Signal Pins. Instead, you can add power and ground pins to a gate or create a separate gate for power and/or ground pins. For the parts in the libraries shipped with PADS Logic, the standard ground signal name is GND. The standard power signal name is +5V.
Assigning an Unused Pin
You can assign a pin to be an unused pin. An unused pin is a pin that is defined in a PCB decal but has no electrical function in the part type. The unused pin information is not saved in the part type, but is derived automatically based on the number of assigned gate and signal pins to the number of pins in the assigned PCB decal. Sorting Table Data You can sort the columns by ascending order. Double-click a column header to sort the column.
194
Renumbering Pins You can renumber pins in the Pin tab table. 1. Select one or more cells in the Number column. 2. Click the Renumber button. In the Renumber Pins dialog box, the Number of pins box displays the number of pins selected for renumbering. 3. In the Start pin number area, type values in the Prefix and/or Suffix boxes. A preview of pin numbers based on your input is displayed below the boxes. Tips: Alphabetic and numeric values can be used in either box. For example, A1 or 1A. For a single numeric, use either the Prefix or Suffix box, and void the other box.
4. In the Increment options area, choose what to increment by clicking either Increment prefix or Increment suffix. 5. In the Step value box, type a positive or negative number by which to increase or decrease the pin numbers with consecutive or stepped values. 6. If using alphanumerics, you can select the Use JEDEC pin numbering check box to ensure that legal alphanumeric values are used. Deleting Pins You can delete pins in the Pin table. Select one or more cells in the Pin column you want to delete and then click the Delete Pins button.
Error Checking When you click Check Part, OK, or Save As, or when you click a different tab, validation occurs and checks for the following error conditions: Empty pin numbers, pin numbers with embedded spaces, duplicated Pin numbers or special characters such as question marks ?, curly braces {}, asterisks *, periods ., commas , , or spaces. Empty, duplicated, or non-sequential sequence numbers within a single gate. Non-empty Type cells for signal pins or unused pins, or empty Type cells for gate pins. Pin names with illegal characters for gate pins, net names with illegal characters for signal pins, empty name for signal pins. Blank pin names are permitted for gate pins. Empty pin swap for gate pins, non-empty pin swap for signal and unused pins. Pin swap values for gate pins outside of the range 0 to 100.
195
Managing Attributes
Use the Attributes tab in the Part Information dialog box to add an attribute to a part. See also: Attributes Overview In this topic: Adding an Attribute Modifying an Attribute Pasting Attribute Information Deleting an Attribute Setting Default Attributes Adding an Attribute from the Attribute Library Resetting the Attribute List
Adding an Attribute 1. In the Part Editor, open a Part Type, and click the Edit Electrical button. 2. In the Part Information dialog box, click the Attributes tab. 3. Click Add. 4. Type an attribute name in the Attribute column. 5. Type an attribute value in the Value column. Modifying an Attribute 6. In the Part Editor, open a Part Type, and click the Edit Electrical button. 7. In the Part Information dialog box, click the Attributes tab. 8. Double-click an attribute from the Attribute multi-column list box, or select the attribute and click Edit. 9. Type a new attribute name or value in the appropriate text box. Tip: Modifying attributes in the Attributes tab modifies the attribute only in the part being edited. Use the Manage Schematic Attributes dialog box and the Library Manager dialog box to manage attributes design-wide or in all libraries.
196
Pasting Attribute Information You can copy selected table data from the Attribute tab or from Microsoft Excel and paste it into the Attributes table. The selected cell in the table is the paste origin. Data is pasted below and to the right of the paste origin. 1. In Excel, select data and use the Copy command in Excel. Or on the Attributes tab, select data and click the Attributes tab Copy button. Click the Paste button to paste the data into the table starting at the paste origin. Deleting an Attribute 1. In the Part Editor, open a Part Type, and click the Edit Electrical button. 2. In the Part Information dialog box, click the Attributes tab. 3. Select an attribute. 4. Click Delete. Setting Default Attributes You can save a set of attributes as default attributes to be added automatically each time a new part is created. 1. In the Part Editor, open a Part Type, and click the Edit Electrical button. 2. In the Part Information dialog box, click the Attributes tab. 3. Add all desired default attributes to the list of attributes for a part. 4. Click Save As Default. Restriction: Values are not saved along with the default attributes. Tip: When the default attribute list is created, it is saved in a defaultattribute.txt file that is shared between PADS Logic and PADS Layout. Adding an Attribute from the Attribute Library You can search through all other attribute lists in the library for attributes to add to your current list. In the Part Editor, open a Part Type, and click the Edit Electrical button. In the Part Information dialog box, click the Attributes tab. Click Browse Lib. Attr to search for an attribute.
197
Resetting the Attribute List In the Part Editor, open a Part Type, and click the Edit Electrical button. In the Part Information dialog box, click the Attributes tab. Click the Reset button to undo all changes made in the current editing session (returns the attribute list to before the tab was accessed).
Selecting an Attribute You can filter the Attributes in library list to reduce the list to selective categories of attributes. 1. In the Filter list, select a category of attributes to match your search. 2. Select an attribute from the list. 3. Click OK. Tip: The Attributes in library list includes part type and decal attributes. Refreshing the List of Attributes If the list of libraries ever changes, click Refresh to see an updated list of current attributes used in the libraries. Click Refresh to update the Attributes in library list.
198
Requirements: On the General tab, select the Define mapping of Part Type pin numbers to PCB Decal check box to make the Pin Mapping tab available. On the PCB Decals tab, assign a decal with sequential numerical pin numbers to use the Pin Mapping tab. The decal determines the number of pins in the part.
Tip: To undo all changes for this tab only, click Reset. Mapping Alphanumeric Pin Numbers to Numeric Decals 1. In the decal list above the preview window, select the assigned decal to which you want to map alphanumeric pins. 2. Map the pins using one of the following methods a. In the Unmapped Pins list, select one or more alphanumerics. Select one or the starting row in the Part Type column if you have a consecutive list to map. Click Map. b. Select a cell in the Part Type column and click the Edit button, or simply doubleclick the cell. c. Select an alphanumeric in the Unmapped Pins list and double click the pin in the decal preview window to map the alphanumeric to the pin. The next row in the Unmapped Pins list becomes the next selected alphanumeric for mapping. In the preview window, you can click and drag to define a zoom box, or use Shift+click or Shift+right-click to zoom in or out by a factor of two. You can zoom in up to 16X the original scale. The preview window will only zoom out to fit the decal entirely in the view.
d. Click Copy Map to copy both columns of the mapping table. Paste the mapping table into Excel. Make mass edits. Copy the data from Excel and click Paste Map on the Pin Mapping tab. Restrictions: Copy Map and Paste Map only work with the whole pin mapping table and not selective rows. 3. Repeat as necessary. 4. Click OK. Unmapping Pins 5. Select a Decal pin number. 6. Click Unmap. Checking the part You can check to ensure the information entered in the Part Information dialog box is correct.
199
Click the Check Part button to check for missing or inconsistent information entered in the Part Information dialog box.
200
1. On the File menu, click Save. 2. Type a name in the Name of Part text box. 3. Select a library location from the Library drop-down list box. To change the name of the associated decal, select the decal from the CAE Decal column of the Names of Decals multicolumn list box and click Edit. Type a new name for the decal. 4. Click OK. If the part type already exists, the message Part Type item exists. Overwrite item Y/N? appears. Click Yes to overwrite the part or No to cancel the save. If you modified the part using Edit Part/Hierarchical Symbol to enter the Part Editor, the message Update all parts of Part Type appears. Click Yes to update parts on the schematic with the revised library version or No to leave the schematic version of the part unchanged.
Related Topics Save Part and Gate Decals As Dialog Box Saving a Modified Decal with a Different Name Saving a Modified Part Type with a Different Name
201
202
8. Select the Attributes tab to assign attribute information. See the Managing Attributes topic for more information. 9. Click OK to close the Part Information dialog box. The connector symbols display in the Part Editor. 10. On the File menu, click Save As. 11. Enter a name and library folder location. 12. Click OK. 13. On the File menu, click Exit Part Editor.
203
When you create a new Pin Decal, PADS Logic automatically creates the necessary text strings for the associated pin information. You only need to specify the 2D lines that represent the terminal pin, then reposition the text strings. To create a new pin decal: 1. In the Part Editor, click the New button. The Select Type of Editing Item dialog box appears. 2. Select Pin Decal. 3. Click OK. Four text entries are displayed in the working area: #E is a placeholder for the pin number. PNAME is a placeholder for the pin name. NETNAME is a placeholder for the net name. #0:TYP=U SWP=0 are placeholders for the sequence number, pin type and swap class.
4. Use the Create 2D Line button in the Design toolbar to create the pin decal. 5. Reposition the text strings, if necessary. 6. On the File menu, select Save. The Save Item to Library dialog box appears. 7. Enter a name and library location for the new pin decal. 8. Click OK. Tip: To control which decals are displayed in the Pin Decal List, use the Pin List Manager. See Managing Pin Decals.
204
Special Symbols
Special Symbols in PADS Logic include power symbols, ground symbols, and off-page reference symbols. PADS Logic allows only one part definition in the library for Special Symbols. For this reason, the options for these types gray when you select New on the File menu. You can modify the existing symbols or add new symbols. See also: Creating New Special Symbols, Creating New Special Symbols from Existing Symbols Related Topics Managing Special Symbols in the Library
205
Table 7-15. Ground Symbols Symbol GND AGND CHGND Description Standard ground Analog ground Chassis ground
206
207
4. Click Add. This creates a new entry for the symbol. Adding a New Power Symbol Follow the procedure in Creating New Special Symbols. Using an Existing Power Symbol 1. In the Part Editor, on the toolbar, click the Open button. 2. In the Special Symbol column, click the button to the right of the newly created text box. The Browse for Special Symbol dialog box appears. 3. To filter the symbols, type a wildcard or expression in the Items box, and click Apply. 4. Select a symbol decal. 5. Click OK. 6. In the Assign Alternatives for Power Part dialog box, select the text box under Pin Type. 7. Click Edit. 8. Select a pin type from the drop-down list box. This is normally set to Power. 9. Select and edit the text boxes for the Signal Name and Width. 10. Click OK.
208
5. Click Add. A new entry is created. 6. Type a name for the new symbol and enter the appropriate information. Tip: For left side off-page references, select Source, for right side, select Load. 7. Click OK. 8. On the Edit menu, click Gate, or click the Edit Gate Decal button. The Select Pin Decal dialog box appears. 9. Select the new symbol name and then click OK to create the new symbol. 10. Click the Decal Editing Toolbar button and use the Create 2D Line button to create the symbol. Tip: The net connection point is the origin. 11. Reposition the text strings as required. 12. On the File menu, click Return to Part, and then click Yes to keep the gate changes. The new symbol and existing symbols are displayed. 13. On the File menu, click Save. 14. On the File menu, click Exit Part Editor. Tip: For PADS Logic to recognize the new special symbol, perform the instructions in The Update From Library Function.
209
210
Tip: Edit is gray if the Library list is set to All Libraries and the library name is listed before the library in the CAE Decals list. Double-click on the symbol to enter the library and then click Edit. 10. Minimize the Library Manager dialog box or move it to one side. 11. Modify the graphics and rearrange the text strings as required. 12. Click the Save button. You can close the library manager dialog box or use it for another operation. Refer to the following topics for information on assigning the new decal as an alternate decal: Table 7-16. Topic List Regarding Assigning New Decal as Alternate Decal Alternate symbols Off-page symbols Power symbols Ground symbols Topic to see Assigning Alternatives for Off-page Parts Assigning Alternatives for Power Parts Assigning Alternatives for Ground Symbols
211
212
Design Operations
When you start PADS Logic or select New from the File menu, a drawing format is automatically added to the work area. See Schematic Editor Design Tab Options for information about changing the default drawing format. Also use Preferences to set the default working grid, display grid, text size, etc. To add new design information: On the toolbar, click the Design toolbar button Add and edit parts from libraries Create hierarchical symbols Add connections Swap pins and reference designators Define bus structures Create and edit non-electrical information; text, charts, notes, etc.
213
Modes of Operation
The following topics describe the modes of operation that allow you to edit designs in PADS Logic: Editing Basics Duplicate Mode Delete Mode Move Mode
Editing Basics
Most design work involves editing the databaseadding, modifying, and deleting items. This topic describes the modes of operation in PADS Logic that enable you to edit your designs. PADS Logic has two basic modes of operation: Object Select Mode (Select Object First), and Verb Mode (Select Command First). In addition to these operational modes, PADS Logic has Zoom mode. Zooming overrides all other modes until you specify another mode.
2. Then select an object. When you move the cursor off the toolbar, a small V appears on the cursor to show that PADS Logic is in Verb mode. 3. To exit Verb mode, on the Design toolbar, click the Select button.
214
3. Right-click and click a command. 4. Click a command from a menu. 5. Click a button.
Zooming
The Zoom button is a toggle. To zoom into the view: 1. On the standard toolbar, click Zoom to enter zoom mode. 2. Point to the new view center and click. To zoom out from the view: 1. On the standard toolbar, click Zoom to enter zoom mode. 2. Point to the new view center and right-click. To specify the zoom area: Press and hold the left button and drag diagonally upward to zoom in, diagonally downward to zoom out.
Duplicate Mode
Use Duplicate Mode to replicate existing parts, text, and drafting objects. When you copy parts, PADS Logic automatically increments the reference designator and gate modifier. To copy an object: 1. On the toolbar, click the Duplicate mode button. 2. Select the item to copy. A duplicate of the item follows the cursor movement. 3. Optionally, and depending on the available options for the selected item, you can adjust the orientation and other settings from the pop-up menu before placement. Position the item and indicate its location to complete the copy. 4. When you finish placing copies of this item, right-click and click Cancel. PADS Logic remains in duplicate mode until you select another mode or the Select button from the toolbar.
215
Related Topics Working with Parts Working with Non-electrical Objects Step and Repeat
Delete Mode
Use Delete mode to completely remove parts, connections, unconnected buses, text, drafting objects, and hierarchical symbols from the design. If you delete a part with connections, PADS Logic also deletes the connections. Tip: If you are in Object Select Mode (Select Object First), you can delete a part without deleting the connections. 1. On the toolbar, click the Delete mode button. 2. Select the object to delete. PADS Logic remains in Delete mode until you select another mode or the Select button from the standard toolbar.
Move Mode
Use Move Mode to adjust the position of existing parts, connections, text, and drafting objects. To move an object: 1. On the toolbar, click the Move mode button. 2. Select the object to move. The object follows the cursor movement. Tip: Optionally, and depending on the available options for the selected object, you can adjust the orientation and other settings from the pop-up menu before placement. Position the object and indicate its location to complete the move. PADS Logic remains in move mode until you select another mode or the Select button from the toolbar.
216
Selecting Objects
See also: Searching for an Object by Typing Information In this topic: Selecting One Object Selecting Several Objects Selecting All Objects in an Area Selecting All Objects on a Sheet Selecting an Object on All Sheets in a Schematic
217
Controlling Selections
Sometimes you cannot easily select the object you want because several objects exist at the same location. To control what information you select, use the Selection Filter Dialog Box. See also: Selection List
218
3. Click Close. Related Topics Filtering Object Selections Object Select Mode (Select Object First)
Selection List
The Selection list, located on the right-hand side of the Selection toolbar, provides an efficient means of searching and selecting particular objects in your design. There are two ways to use the Selection list: Searching for an Object by Typing Information Selecting an Object with Area Selection
219
2. In the list box of the Selection List toolbar, type information about the object. For example, type the part name, gate name, part type name, net name, or pin name of the object you want, and then press Enter. Result: The workspace pans to the object and the object is selected. Tips: The Selection List supports wildcards and expressions. You can search for several objects; separate entries by commas.
220
RefreshUpdates the list of signal pin nets (in the Select Nets list box) to include any recently created signal pin nets. For example, when you add part 7400 to an empty design, you create two signal pin nets: GND and +5V. Selecting Refresh includes the new signal pin nets in the Select Nets list box. Select NetsSelecting nets in this list box selects signal pin nets within the schematic across all components and sheets. Using the pop-up menu, you can perform object mode commands on the selected signal pin nets.
Finding Objects
You can search for objects in PADS Logic using the following: Table 8-1. Search for Objects in PADS Logic Using These Options Option Modeless Commands Selection Toolbar Description Use keystrokes to quickly locate specific objects or types of objects. Controls which types of objects you can select, locates specific objects from a multiple selection, or moves between sheets in the schematic.
Selection Filter Dialog Controls types of objects you can select. Enables you to easily select Box the object you want even when several objects exist at the same location. Controlling the View Changes the perspective and size of the work area.
221
222
Adding a Field
Fields are used as placeholders for data that might change in a document. You can add fields to a schematic or any 2D line object. If you selected a 2D line object, the added field is automatically combined with it upon placement. There are two types of fields: system and user. You cannot modify system fields; the value is derived from the system. User fields are custom fields you create. There are no limitations to the name or value strings of user fields. User fields are available only in the schematic in which they are created. To add a field: 1. Select nothing or a 2D line object, right-click and click Add Field. 2. In the Name list, select a system field or type a custom field name. 3. In the Value box, type the value you want displayed. Exception: The Value box is unavailable for system fields since the value is derived from your system. 4. To place the field at a precise X,Y coordinate location, type the value in the X and Y boxes. Tip: If this is blank when you click OK, the field attaches to the pointer until you click to indicate the location. 5. In the Rotation list, select the degree of rotation you want. Tip: Rotation can be 0 or 90 degrees. 6. In the Size box, type the font size you want. Stroke font sizes must be between 10 and 1000 mils; system font sizes must be between 1 and 72 points. 7. For stroke font, in the Line Width box, type the line width. 8. For system fonts, select the font you want to use in the Font list. You can also click a system font style you want applied: B for Bold, I for Italic, or U for Underlined. 9. To set the Justification, click the Horizontal and Vertical options you want. Alternative: You can set justification by selecting the text. Then right-click and click Justify Horizontally, and then click Left, Center, or Right; and right-click and click Justify Vertically, and then click Up, Center, or Down. 10. Click OK. Related Topics Combining 2D Lines and Text
223
Managing Fields
Use the Fields dialog box to manage multiple fields. You can manage the fields in the entire schematic or in a 2D line object.
224
To add a field to the list for later use: 1. In the User area, click Add. 2. Type a name in the Name column. 3. Type a value in the Value column. 4. To delete a field from the schematic, select the field name and click Delete. 5. To edit the name or value of a field, select the Name or Value you want to edit and click Edit. Restriction: You cannot delete a system field from the schematic.
225
Duplicating Connections
When duplicating connections, only connections with valid start and end points remain after the Step and Repeat operation; even if invalid connections appear during Preview. A duplicated connection can start on a component pin or on another connection segment. A duplicated connection can end on a component pin, a connection segment, or a bus segment. PADS Logic automatically assigns new bus netnames to bus segment copies. The new netname is based on the original bus segment netname, plus one. For example, if you make a duplicate of bus segment D00, the duplicate is assigned the netname D01. See also:
226
Adding Parts
Use the Add Part from Library dialog box to load a part from a library into the current schematic drawing. PADS Logic automatically assigns a reference designator when you add the part. Refer to the Adding Single Gate Parts and Adding Multigate Parts topics for additional information. Refer to the Duplicate Mode topic for information on adding parts by making copies of parts that already exist in the schematic. To add a part from the library: 1. On the Design Toolbar, click the Add Part button. 2. Select a part in the Items list or select a part from the Part Name drop-down list box in the Add Part from Library Dialog Box. Tip: Use the filter to locate the part. Use the wildcard convention, with or without leading characters, to expand or narrow the filter. Click Apply to activate the filter. 3. Click Add Part. The part attaches to and follows the cursor movement. Optionally, you can rotate or mirror the item before you indicate its location. Right-click and click Rotate 90, X Mirror and Y Mirror as often as needed to set the correct
PADS Logic Users Guide, PADS 9.2
227
orientation of the item. Click Alternate to place an alternate symbol, if available. Click Next Type to select a different gate in the part, if available. 4. Indicate the part location. After you place one part, another instance attaches to the cursor. 5. When you are done adding the part(s), right-click and click Cancel. Related Topics Using Alternate Symbols Adding Connector Pins
Rotate 90
Toggles between a rotation of 90 degrees counterclockwise and the original orientation.
3. Scroll through the Parts list box to find a part type. Tips: The Parts list box displays the parts that matched the search filter settings. The symbol of a selected part displays in the preview area to the left of the list box.
228
4. In the Part Name drop-down list, either type the full part name or select a recently used part. Tip: The sixteen most recently used parts are available in the Part Name drop-down list box. You can clear this buffer by removing the entries in the powerlogic.ini file, under the [Last Added Parts] heading.
229
230
This PartUpdates a part or all associated gates of a part. All Part This TypeUpdates all matching gates or parts in the design. 9. Click OK. Tip: When using object mode selection, with multiple parts selected, check boxes may be in an intermediate state (checked, yet dimmed) because some selected parts have the check box turned on and others have it turned off. You can turn the check box on or off and update all selected parts.
231
1. Select the first component. 2. Right-click and click Swap Ref. Des. 3. Select another component to complete the swap. To swap reference designators (selecting both parts first): 1. Using Ctrl+click, select the component reference designators you want to swap. 2. Right-click and click Swap Ref. Des. to complete the swap.
232
different values for the same attribute name, only the attribute name with a blank value is saved to the library.
233
You can compare or update the following categories of items: Part types CAE decals Pin decals Ground symbols Power symbols Off-page symbols
You can compare or update: All of any or all of these categories. Selected part types, CAE decals, and pin decals. You cannot compare/update selected ground, power, or off-page symbols.
Caution Since the only link between library and schematic content for an item is the items name, updating can have unforeseen and unintended consequences. When part types or gates are replaced globally in a schematic, they are replaced without regard to any local editing of the item; edited instances of parts or gates are replaced with the common instance from the library. The undesirable consequences of such changes could range from minor, like a repositioned label, to catastrophic, like deleted pins or disconnected nets. To prevent such unintended consequences, the update function always prompts you before updating any item in the schematic that has a newer timestamp than its counterpart in the library. To prepare yourself to respond to these prompts, before updating you should: 1. Generate a comparison report (using the Generate comparison report button in the Update From Library dialog box). 2. In the comparison report, locate the status messages identifying items whose timestamps are newer than in the library.
234
3. Determine and write down what your response will be to each prompt when it occurs during the update. You may also want to update a copy of the schematic, and check/test the updated copy for unwanted changes or behavior.
Related Topics
The Compare/Update Process Updating a Schematic from the Library Updating Selected CAE Decals from the Library How to Read the Update Report Updating Selected Part Types from the Library Updating Selected Pin Decals From the Library
Undoing an Update
The update process creates an undo checkpoint before it begins the update. So you can undo any update (whether completed, cancelled, or failed) to the last-saved checkpoint using Edit menu > Undo.
Procedure
1. Tools Menu > Options >Design tab 2. In the Options area, set the Allow overwriting of attribute values in design with blank values from library check box as appropriate. 3. File Menu > Library > Manage Lib. List button 4. Set the library list order that UFL will use when searching the libraries for items matching the items in the design. (See General Compare/Update Rules.) 5. Tools Menu > Update from Library
PADS Logic Users Guide, PADS 9.2
235
6. Modify the settings in the Update from Library Dialog Box as appropriate. 7. Click OK. Results Tips: When the comparison or update operation is completed, the update report is opened for you to view, and a link to the report file is written to the Output Window.
Related Topics
The Compare/Update Process Updating a Schematic from the Library How to Read the Update Report Update from Library Dialog Box
Updating Selected Part Types from the Library Updating Selected CAE Decals from the Library Updating Selected Pin Decals From the Library
Restriction
All parts having the same part type as a selected part are updated, but attributes are updated only for the parts actually selected.
Procedure
1. Tools Menu > Options >Design tab 2. In the Options area, set the Allow overwriting of attribute values in design with blank values from library check box as appropriate. 3. File Menu > Library > Manage Lib. List button 4. Set the library list order that UFL will use when searching the libraries for items matching the items in the design. (See General Compare/Update Rules.) 5. In the Schematic Editor, with nothing selected, Right-click > Select Parts (or Select Gates). 6. Select the parts whose part types you want to compare/update. Tip: If you want to update all but a few part types, select all the parts/gates, then in Step 8 deselect the part types you dont want to update.
236
7. Right-click > Update selected > Part Type 8. Modify the settings in the Update Selected Part Type from Library Dialog Box as appropriate. 9. Click OK. Results When the comparison or update operation is completed, the update report is opened for you to view, and a link to the report file is written to the Output Window.
Related Topics
The Compare/Update Process Updating a Schematic from the Library Updating Selected Pin Decals From the Library How to Read the Update Report Updating Selected CAE Decals from the Library
Procedure
1. File Menu > Library > Manage Lib. List button 2. Set the library list order that UFL will use when searching the libraries for items matching the items in the design. (See General Compare/Update Rules.) 3. In the Schematic Editor, with nothing selected, Right-click > Select Parts (or Select Gates). 4. Select the parts/gates whose CAE decals you want to compare/update. Tip: If you want to update all but a few CAE decals, select all the parts/gates, then in Step 6 deselect the decals you dont want to update.
PADS Logic Users Guide, PADS 9.2
237
5. Right-click > Update selected > CAE Decal 6. Modify the settings in the Update Selected CAE Decals from Library Dialog Box as appropriate. 7. Click OK. Results When the comparison or update operation is completed, the update report is opened for you to view, and a link to the report file is written to the Output Window.
Related Topics
The Compare/Update Process Update Selected CAE Decals from Library Dialog Box How to Read the Update Report Updating a Schematic from the Library
Updating Selected Part Types from the Library Updating Selected Pin Decals From the Library
238
4. Select the pins you want to compare/update. Tip: If you want to update all but a few pin decals, select all the parts/gates, then in Step 6 deselect the decals you dont want to update. 5. Right-click > Update Selected Pin Decal 6. Modify the settings in the Update Selected Pin Decals from Library Dialog Box as appropriate. 7. Click OK. Results When the comparison or update operation is completed, the update report is opened for you to view, and a link to the report file is written to the Output Window.
Related Topics
The Compare/Update Process Update Selected Pin Decals from Library Dialog Box How to Read the Update Report Updating a Schematic from the Library
Updating Selected Part Types from the Library Updating Selected CAE Decals from the Library
Timestamp in schematic is older If the timestamp in the schematic is older than the timestamp in the library, the item in the schematic is always compared/updated. Timestamps are the same If the timestamps in the library and schematic are the same, comparison/update of the item depends on the setting of the Include items with identical time stamp check box in the Update from Library Dialog Box. If this check box is cleared, no comparison/update is made; if the check box is selected, all items are compared/updated regardless of timestamps. Timestamp in schematic is newer If the timestamp in the schematic is newer than the timestamp in the library: When you are comparing, a status message is written to the report. When you are updating, a status message is written to the update report, and you are prompted to choose whether to update the schematic or not.
What is updated When an item is updated, the content from the library replaces the entire content of the item in the schematic.
Skipped Updates
There are 3 situations in which the update of an item is skipped. These are: When an item in the design is newer than the equivalent item in the library, and you reply No to the <item> in the schematic has a more recent time stamp than in the library. OK to overwrite the version in the schematic? prompt. When a newer item in the library has fewer pins than the equivalent older item in the design. When the number of GND, POWER or OFF symbols in the library is fewer than the number of available symbols in the design.
Older Schematics
Schematics of PADS versions prior to 2005 SPac2 do not have timestamps. When one of these is opened, the timestamps on all part types, decals, pin decals, and off-page, power & ground symbols are set to zero. To determine if the content of the part types and decals in the schematic is in sync with the library, compare the schematic and library with the Hide identical results check box selected.
1. Schematics of PADS versions prior to 2005 SPac2 do not have timestamps. See Older Schematics on page 240 for information on how to handle these schematics.
240
What is Compared
Table 8-2 lists the content compared and reported for each item selected for comparison or update. Table 8-2. Compared and Reported Part Structures Item Timestamps Part Type For each gate: For each gate pin: Item Component What is Compared & Reported See General Compare/Update Rules on page 239. Logic Family, Number of gates, Number of connector pins, Number of Signal pins, List of attribute names Number of CAE Decals, CAE Decal names, Number of electrical pins on gate, Gate swap class. Pin number (alphanumeric if defined), Pin name, Pin type, Pin swap class Value string Note: There can be attributes in the library that are just placeholders, with blank values that must be set for each individual part in the schematic. Any attribute in the library with a blank value is considered to be such a placeholder, and update of corresponding attributes in the schematic is controlled by the Allow overwriting of attribute values in design with blank values from library check box in the Designs tab of the Options dialog box is set. See Schematic Editor Design Tab Options. The parts assigned PCB Decal name is on the list of PCB Decal alternates for the Library part type. If it is not, a warning is written to the report, but the decal assignment is not updated. For connectors: Number of pins in the PCB Decal assigned to each connector part is equal to the number of connector pins defined for the part type. Number of pins in the PCB Decal assigned to each normal part is equal to or greater than the highest electrical pin number used in the gates defined for the Library part type. Restriction: Pin counts cannot be updated in the schematic. Pin count differences are flagged as warnings in the update report.
For each signal pin: Pin Number (alphanumeric if defined), Net name For each attribute:
CAE Decals
241
Table 8-2. Compared and Reported Part Structures Item Item Component Gate Decal details: What is Compared & Reported Number of attribute labels, attribute label name, number of text, number of terminals. Restrictions: CAE Decal graphics are not compared. Details of text items are not compared. Pin decal name assigned to each terminal. Restriction: If terminal pin counts differ, the decal cannot be updated in the schematic separately from the part types. Pin Decal name. Update notes: Because default pin name and pin number label locations are hard-wired in the CAE decal when it is created, the locations of pin names and numbers in the schematic are unaffected when a Pin decal is updated. Pin decals do provide a default location for net names on the schematic, but the actual used net name locations are stored separately and therefore net name locations are not affected by an update. Symbol name, type, Signal Pin name Symbol name, type
Terminal details:
Pin Decals
The report consists of 4 sections: Report header informationGeneral information about the report itself. Example:
242
Report OptionsA list of options selected for this operation in the Update from Library dialog box. Example:
243
Report SummaryA tabular listing of compared part pypes, CAE decals, off-page symbols, ground symbols, and power symbols, showing the comparison results and update status for the package as a whole. Example:
244
Report Details Complete comparison and update details for all compared packages. Example:
245
Table 8-3 lists and describes the messages returned for compared/updated items in the Update Report. Table 8-3. Update Report Messages Message Report Section Refers to: CAE decal Gate Means CAE decal exists in design but not in library. Gate exists in design but not in library. Gate exists in design but not in library. Package exists in design but not in library. Pin decal exists in design but not in library. Operation was cancelled by user. Operation was cancelled by user. No items selected or item(s) unavailable. Cannot compare because CAE decal terminal count differs in design and library. Operation was cancelled by user. All compared item content is the same in the design and the library. The following items are not compared: CAE Decal graphics Details of CAE Decal text items
Cannot get CAE DECAL Details from Library !!! Cannot get GATE from Library !!! Cannot get GATE from Library - Comparison Skipped Cannot get PACKAGE from Library !!! Details
Details
Gate
Details
Package Pin decal Item update Compare operation Compare operation Compare operation
Cannot get PIN DECAL Details from Library !!! CANCELLED COMPARE CANCELLED COMPARE ERROR COMPARE SKIPPED Summary Summary & Details Details Details
Details Summary
246
Table 8-3. Update Report Messages Message CONTENT UPDATED Report Section Details Refers to: Item update status Means Content in the design updated with content from library. CAE decal terminal count in design differs from count in library. Item content in design differs from content in library. Timestamps in design and library differ. Update has failed due to an unspecified error. Item in library not found in design. Timestamp in design newer than in library. CAE Decals check box selected in dialog box but no CAE decal found in design. Either: Pin decal selected in dialog box not found in design, or Pin decals check box selected but no pins selected. Gate pin assigned in design is not assigned in library. The PCB Decal assigned to the part in the design is not in the set of decals assigned to the part in the library.
Details
CAE decal
Different
Item content
Pin Decal timestamp Item update status Item status Timestamp in design
In library : Not in design Details Newer than library Summary & Details
CAE decal
Details
Pin decal
Not assigned
Details
Gate pin
Details
Compared item
247
Table 8-3. Update Report Messages Message Not in design Report Section Summary Refers to: Off page, PWR and GND symbols Compared item Timestamp in design Update or Compare operation Update or Compare operation Timestamp in design Item content in design SKIPPED Summary Item update Means The symbol exists in the library, but is not used in the design. Item in design not found in library. Timestamp in design older than in library. Operation was cancelled by user. Operation cancelled by user. Timestamps in design and library are equal. Item content is the same in design and library. User has replied No to the <item> in the schematic has a more recent time stamp than in the library. OK to overwrite the version in the schematic? prompt. Operation cancelled by user. Operation was cancelled by user. An error occurred in the update process and the update failed. Explains cause of an Update failure.
Not in library Older than library Operation cancelled by USER !!! PERFORMED UNDO OPERATION Same as library
STOPPED
Summary
UPDATE MESSAGE
Details
Item update
248
Table 8-3. Update Report Messages Message UPDATE SKIPPED Report Section Details Refers to: Item update Means User has replied No to the <item> in the schematic has a more recent time stamp than in the library. OK to overwrite the version in the schematic? prompt. Operation cancelled by user. PCB Decal in the library has fewer pins than in the design.
Details Details
Related Topics
The Update From Library Function The Compare/Update Process
249
250
Table 8-4. Update from Library Dialog Box Controls Control Mode areaChoose compare or update mode. Generate comparison report Update design from library Select this check box to compare library and schematic items and generate a report file. Select this check box to compare library and schematic items, update the schematic from the library, and generate a report file. Timestamps are assigned and updated in the PADS Logic Library routines, but it is possible for items with identical timestamps to have different content in the library and schematic if the item is edited outside the Library routines. For example, if you export a schematic to an ascii file, manually edit a part type in the ascii file, and import the schematic back into PADS Logic, the timestamp of the part type will be unchanged, but the content will be different. Use this check box to specify whether to compare/update items whose timestamps are the same in the library and schematic. Items with identical timestamps are not compared or updated unless this check box is selected. Select Summary and details or Summary only. Select Hide identical results to see only the differences between library and design items in the report. Description
Report Filtering areaSpecify what you want to see in the report. Summary and details Summary only Hide identical results
251
Table 8-4. Update from Library Dialog Box Controls Control Part types and attributes Description Select this check box to include part types and their attributes in the comparison or update. Tips: Attributes dont have timestamps, so they cant be updated independently of their part types. If a schematic attributes corresponding attribute in the library is a placeholder attribute (with a blank value), it will be updated only if the Allow overwriting of attribute values in design with blank values from library check box in the Designs tab of the Options dialog box is set. See Schematic Editor Design Tab Options. Use this check box to specify what you want to do with attributes that are found in the schematic but not in the library: Select the check box to keep these attributes in the updated parts. Clear it to remove them from the updated parts. Use this check box to specify what you want to do with attributes that are found in the library but not in the schematic. Select the check box to add these attributes to the updated parts. Clear it to not add them to the updated parts. Use this check box to specify what you want to do with attributes that are found in both the schematic and the library. Select the check box to update the parts with the library versions. Clear it to leave the part attributes as they are (that is, do not update them). Select the attribute properties you want to preserve in the schematic when updating the attributes from the library. Items areaSpecify the items you want to compare or update.
252
Table 8-4. Update from Library Dialog Box Controls Control CAE Decals Description Select this check box to include CAE decals in the comparison/update. Tips: If you want to update CAE decal assignments in the part types, you must also select Part types and attributes. Pin decals are updated as part of a CAE decal update, so when this check box is selected, Pin Decals is automatically selected also. Select this check box to include pin decals in the comparison/update. Tips: Only the decal is updated; pin names and numbers are not changed. Pin decals are updated as part of a CAE decal update, so when CAE Decals is selected, this check box is automatically selected and unavailable. Select the pins you want to compare or update. Tip: Because all pin decals are compared/updated as part of a CAE decal update, these check boxes are unavailable and ignored when CAE Decals is selected. Select this check box to include off-page symbols in the comparison/update. Select this check box to include ground symbols in the comparison/update. Select this check box to include power symbols in the comparison/update.
Pin Decals
Related Topics
The Update From Library Function The Compare/Update Process How to Read the Update Report Updating a Schematic from the Library
253
254
Table 8-5. Update Selected Part Type from Library Dialog Box Controls Control Mode areaChoose compare or update mode. Generate comparison report Update design from library Select this check box to compare library and schematic part types and generate a report file. Select this check box to compare library and schematic part types, update the schematic from the library, and generate a report file. Restriction: All parts having the same part type as a selected part are updated, but attributes are updated only for the parts actually selected. Timestamps are assigned and updated in the PADS Logic Library routines, but it is possible for items with identical timestamps to have different content in the library and schematic if the item is edited outside the Library routines. For example, if you export a schematic to an ascii file, manually edit a part type in the ascii file, and import the schematic back into PADS Logic, the timestamp of the part type will be unchanged, but the content will be different. Use this check box to specify whether to compare/update items whose timestamps are the same in the library and schematic. Items with identical timestamps are not compared or updated unless this check box is selected. Select Summary and details or Summary only. Select Hide identical results to see only the differences between library and design items in the report. This will shorten the report. Description
Report Filtering areaSpecify what you want to see in the report. Summary and details Summary only Hide identical results
255
Table 8-5. Update Selected Part Type from Library Dialog Box Controls Control Part types and attributes Description Make sure that this check box is selected. Tips: Attributes dont have timestamps, so they cant be updated independently of their part types. If a schematic attributes corresponding attribute in the library is a placeholder attribute (with a blank value), it will be updated only if the Allow overwriting of attribute values in design with blank values from library check box in the Designs tab of the Options dialog box is set. See Schematic Editor Design Tab Options. Use this check box to specify what you want to do with attributes that are found in the schematic but not in the library: Select the check box to keep these attributes in the updated parts. Clear it to remove them from the updated parts. Use this check box to specify what you want to do with attributes that are found in the library but not in the schematic. Select the check box to add these attributes to the updated parts. Clear it to not add them to the updated parts. Use this check box to specify what you want to do with attributes that are found in both the schematic and the library. Select the check box to update the parts with the library versions. Clear it to leave the part attributes as they are (that is, do not update them). Select the attribute properties you want to preserve in the schematic when updating the attributes from the library. Items areaSpecify the items you want to compare or update.
256
Related Topics
The Update From Library Function The Compare/Update Process How to Read the Update Report Updating Selected Part Types from the Library
Accessing
Select a part > Right-click > Update selected > CAE Decal Figure 8-3. Update Selected CAE Decals from Library Dialog Box
257
Table 8-6. Update Selected CAE Decals from Library Dialog Box Controls Control Mode areaChoose compare or update mode. Generate comparison report Update design from library Select this check box to compare library and design CAE decals and generate a report file. Select this check box to compare library and schematic CAE decals, update the schematic from the library, and generate a report file Tips: This procedure updates the pin assignments in the selected CAE decals, but doesnt update the pin decals themselves. Use one of the procedures in Updating Selected Pin Decals From the Library to update the pin decals geometries. As a corollary, if, for instance, CAE decal X is updated to use PINB instead of PINA, it uses the version of PINB geometry currently in the schematic. If there is no PINB in the schematic, it is installed from the library. Timestamps are assigned and updated in the PADS Logic Library routines, but it is possible for items with identical timestamps to have different content in the library and schematic if the item is edited outside the Library routines. For example, if you export a schematic to an ascii file, manually edit a CAE decal in the ascii file, and import the schematic back into PADS Logic, the timestamp of the decal will be unchanged, but the content will be different. Use this check box to specify whether to compare/update items whose timestamps are the same in the library and schematic. Items with identical timestamps are not compared or updated unless this check box is selected. Select Summary and details or Summary only. Select Hide identical results to see only the differences between library and schematic items in the report. This will shorten the report. Description
Report Filtering areaSpecify what you want to see in the report. Summary and details Summary only Hide identical results
258
Related Topics
The Update From Library Function The Compare/Update Process How to Read the Update Report Updating Selected CAE Decals from the Library
Accessing
Select a pin > Right-click > Update Selected Pin Decal Figure 8-4. Update Selected Pin Decals from Library Dialog Box
259
Table 8-7. Update Selected Pin Decals from Library Dialog Box Controls Control Mode areaChoose compare or update mode. Generate comparison report Update design from library Select this check box to compare library and schematic pin decals and generate a report file. Select this check box to compare library and schematic pin decals, update the schematic from the library, and generate a report file. Timestamps are assigned and updated in the PADS Logic Library routines, but it is possible for items with identical timestamps to have different content in the library and schematic if the item is edited outside the Library routines. For example, if you export a schematic to an ascii file, manually edit a pin decal in the ascii file, and import the schematic back into PADS Logic, the timestamp of the decal will be unchanged, but the content will be different. Use this check box to specify whether to compare/update items whose timestamps are the same in the library and schematic. Items with identical timestamps are not compared or updated unless this check box is selected. Select Summary and details or Summary only. Select Hide identical results to see only the differences between library and schematic items in the report. This will shorten the report. Description
Report Filtering areaSpecify what you want to see in the report. Summary and details Summary only Hide identical results
Related Topics
The Update From Library Function The Compare/Update Process How to Read the Update Report Updating Selected Pin Decals From the Library
Deleting a Part
When deleting a part that was selected in object mode, you can delete the part only, or the part and its connections.
260
To delete the part only: 1. Select a part. 2. If you want to keep connections attached to the part, right-click and click Preserve Connections to enable it. Preserve Connections is enabled by default. Tip: Preserve Connections is enabled when a check mark appears next to it in the menu. 3. Right-click and click Delete. Result: Connections are left at their original locations. To delete the part and its connections: 1. Select a part. 2. If you want to remove connections attached to the part, right-click and click Preserve Connections to disable it. Preserve Connections is enabled by default. Tip: Preserve Connections is disabled when a check mark does not appear next to it in the menu. 3. Right-click and click Delete. Result: The part and connections are deleted. Related Topics Object Select Mode (Select Object First) Adding Off-Page References Working with Floating Connections
261
Adding Connections
When you add connections, they must have start and end points that are electrically meaningful. Start a connection on either a symbol pin or another connection. End a connection on a symbol pin, another connection, a bus, an off-page reference, or a ground or power symbol. PADS Logic prevents you from starting or ending a connection just anywhere in the database unless you enable Floating Connections. See also: Working with Floating Connections To add a new connection: 1. Click the Add Connection button. 2. Indicate the starting point of the connection. The connection follows the cursor movement. Right-click and click Angle to specify diagonal segments in the connection. 3. Indicate corners as needed. Right-click and click Del Corner to back up to the previous corner if necessary. 4. A connection cannot end in open space. Locate the cursor and double-click to end the connection. To end a connection with a power, ground, or off-page reference symbol, select the appropriate symbol from the pop-up menu during the last step of this procedure. If you end the connection on a bus, see the remaining steps in the Adding Connections to Buses topic. Tip: Special Symbols in PADS Logic include power symbols, ground symbols, and off-page reference symbols. For more information, see Special Symbols.
262
PADS Logic Users Guide, PADS 9.2
When you end a connection at another connection, PADS Logic places a tie dot at the junction. The resulting net name is the name of the added connection, not the existing connection, unless you assign a name to the existing connection. To assign a fixed net name to a connection, you must first add the connection and then select a segment that is directly attached to a part type pin. Then, you can select the net, right-click and click Properties, and enter the new net name in the Net Properties dialog box. Tip: If you select and move a visible net name, with snap to grid enabled, the new net name snaps to the Labels and Text grid. To set the labels and text grid, use the Design tab in the Options dialog box. See Schematic Editor Design Tab Options. Related Topics Adding Power and Ground Connections Adding Off-Page References
Naming a Connection
When you add a connection, PADS Logic automatically assigns a name with the format $$$nnnn, where nnnn is a random number. You can specify a different net name to replace the assigned name. To modify the net name for a connection: 1. Select a connection segment. 2. Right-click and click Properties. 3. Type a new net name in the Net Name box. Tips: The Net Name Label check box is only available when you select a connection segment that enters or exits a part. Clearing the Net Name Label check box removes the visible label. The net and all subnets retain the net name.
To place a bar over the net name, precede the text with the \ character. To place a bar over only a portion of text, enclose that section with the \ character. For example, typing MAIN_\CLK\ places a bar over CLK. Tip: The \ character factors into the 47 character limit for the net name. Related Topics Modifying Nets
263
264
Tip: Some values in the Description and use column are case-sensitive and must be written as such. Table 8-8. Listing of Default Attributes for Nets Attributes HyperLynx.Frequency Type Frequency (Measure) Description and Use Lists the working frequency for nets in BoardSim simulations. Range: 0 Hz-1000 GHz Units: Hz kHz MHz GHz (casesensitive) Lists the percent of time the signal is in high state. Used for BoardSim simulations. Range: 0%-100% Lists the signal type. Used in BoardSim simulations. Values (case-insensitive): One of, Clock, Strobe, Data, Address, Power Supply, Analog High Speed, Analog Low Speed, Do Not Analyze Lists the part model in the file used for BoardSim simulations. Values: Text (model name) Lists the part model file in the file used for BoardSim simulations. Values: Text (filename) Lists the specific pin for the model in the above attribute, if applicable. Used in BoardSim simulations. Values: Text (pin name or number) Identifies nets as Ground and Power nets. Values: Yes or No (case-insensitive) Describes the voltage of the net. Range: -100kV-100kV (-100,000-100,000V) Units: nV uV mV V kV (case-sensitive) Indicates the ID of the probe in the test fixture. Values: (integer) 0-2000 (all exact limits are allowed; for example, both 0 and 2000 are acceptable)
HyperLynx.Duty Cycle
Percentage (Measure)
List
Free Text
Free Text
Free Text
PowerGround Voltage
Yes/No Measure
265
266
In this topic: Enabling Floating Connections Disabling Floating Connections and Running the Connections Report Adding Floating Connections Editing Floating Connections Duplicating Floating Connections Creating Floating Connections When Deleting Objects Attaching Objects to Floating Connections
267
receive Unconnected Markers instead of off-page symbols. Net stubs added through an ECO Import to existing parts will continue to receive off-page symbols.
268
269
Changing a Connection
Use Move to change a connection from one end point to another, without deleting the rest of the connection. 1. Select the connection at any point on the segment entering or exiting the part, or where it enters another connection. 2. Right-click and click Move. The connection follows the cursor movement. Right-click and click Angle to specify diagonal segments in the connection. 3. Indicate corners as needed or right-click and click Add Corner. Right-click and click Del Corner to back up to the previous corner if necessary. 4. A connection cannot end in open space. Locate the cursor and double-click to end the connection or right-click and click Complete. To end a connection with a power, ground, or off-page reference symbol, right-click and click the appropriate symbol during the last step of this procedure. Related Topics Adding Connections Adding Power and Ground Connections Adding Off-Page References
Moving Connections
When you move a part, existing part connections follow the part movement. After part repositioning, you might need to move connections to improve the flow. You can reposition a connection segment that is not a connection end point, or you can reconnect a segment end point. Refer to the Changing a Connection topic for information on disconnecting from a part or connection and reconnecting to another part or connection. Related Topics Working with Floating Connections
271
Splitting a Connection
You can split a connection to create new corners or a 90-degree turn. Exception: You can not split segments which enter or exit a part. To split a segment: 1. Select a segment, right-click and click Move. 2. Right-click and click Split Segment. Move the cursor to define the segment length. 3. Right-click and click Swap Corner to define the end point in the opposite direction. 4. Indicate the end point of the new segment to complete the split.
Splitting Segments
Split converts a line segment into two separate segments, joined by a third segment perpendicular to the original segment. All line segments in a 2D line must have the same line width and style. If you need to create a 2D element with more than one line width or style, create two separate 2D lines and use the Combine command to join them. 1. On the Design Toolbar, click the Modify 2D Line button. 2. Select the line to split. 3. Right-click and click Split. The new and divided segments follow the cursor movement. You can right-click and click one of the following when splitting a segment: Table 8-9. Splitting Segments Options Option Swap Corner Del Corner Width Description Selects the other corner or line segment created by the split. Deletes the current corner. Changes the line width of the item.
Solid Style and Dotted Style Changes the line style to a solid or a dashed line. You cannot specify dotted lines for circles or arcs. Orthogonal Diagonal Any Angle Moves are made in 90-degree increments. Moves are made in 45-degree increments. Moves are made at any angle.
4. Indicate the end point of the new segment to complete the split.
272
Swapping Pins
To swap two part pins, you can use the Swap Pins button in the Design toolbar or Swap Pins on the pop-up menu. PADS Logic swaps the pin number, name, and terminal of the pins you select. You can also swap pins when you place a part using Mirror X and Mirror Y on the pop-up menu. This is often useful for improving the flow of the schematic. To swap pins using the Swap Pins button (Verb mode): 1. On the Design Toolbar, click the Swap Pins button. 2. Select the first pin number. 3. Select the pin number to swap with the first selected pin. 4. If the pin types you select do not match, the message Warning, pin swap types don't match message appears. Click Yes to continue. Click No to cancel the swap. Tip: The message Keep connections tied to same electrical pin? may also appear. Click Yes to preserve the connections with the pin numbers. Click No to reconnect to the renumbered pins. To use the pop-up menu to swap pins, you can either select one pin at a time or select both pins at once: To swap pins (selecting one pin at a time): 1. Select the first pin number. 2. Right-click and click Swap Pins. 3. Select another pin number to complete the swap. 4. If the pin types you select do not match, the message Warning, pin swap types don't match message appears. Click Yes to continue. Click No to cancel the swap. Tip: The message Keep connections tied to same electrical pin? may also appear. Click Yes to preserve the connections with the pin numbers. Click No to reconnect to the renumbered pins. To swap pins (selecting both pins first): 1. Using Ctrl+click, select the pins you want to swap. 2. Right-click and click Swap Pins. If the message Swap connected pin? appears, click Yes to continue. Click No to cancel the swap. 3. If the pin types you select do not match, the message Warning, pin swap types don't match message appears. Click Yes to continue. Click No to cancel the swap.
273
Tip: The message Keep connections tied to same electrical pin? may also appear. Click Yes to preserve the connections with the pin numbers. Click No to reconnect to the renumbered pins.
Managing Buses
In this topic: Choosing the Bus Type Naming Buses Adding Buses Adding Connections to Buses Adding Nets to a Mixed Net Bus Extending Buses Moving Bus Segments Splitting Buses Deleting Bus Segments Deleting Buses
Naming Buses
PADS Logic defines a bus that appears on the same sheet, or any other sheet, with an identical name as the same bus. Rules for naming bit format and mixed net buses differ as follows:
274
nets DD00, DD01,...DD15 to connect to the bus; whereas DD[0:15] allows nets DD0, DD1, DD2,...DD15. The sheet number also displays with the bus name if the Show Off-Page Reference option is on in the Design Tab of the Options dialog box. See also: Schematic Editor Design Tab Options The total bit format bus name - including the prefix, brackets and colon - cannot exceed 47 characters. The bit numbers must be in the range of 0 to 32767 and cannot contain alphabetic characters.
Adding Buses
To add a bus: 1. Click the Add Bus button. 2. Indicate the starting point. The bus follows the pointer movement. 3. Indicate bus corners as needed, or right-click and click Add Corner. Tip: To back up to the previous corner, right-click and click Del Corner. 4. Double-click to end the bus in open space or right-click and click Complete. 5. In the Add Bus dialog box, in the Bus Name box, type a new name for the bus, or select a bus name from the list. Restriction: The Rename area is available only in Query mode. 6. Select the Bus Type. The bus type determines which bus names appear in the Bus Name list. 7. Select the Add Bus Name Label check box to add the bus name as a label to the bus at the end of the bus closest to where you selected it. Tips: A bus can have two labels, one on each end. The check box is unavailable when the end of the selected bus has a label. A bus label is not required.
275
To delete a bus label, select the label in the schematic and click the Delete button on the standard toolbar.
8. If the bus is a mixed net bus, add the bus names in the Bus Nets area. Tip: To rotate the text before you place it, right-click and click Rotate, then indicate the name location.
3. In the Start text box, type the starting bit number for a sequence of nets. 4. In the End text box, type the ending bit number for a sequence of nets. 5. To add an individual net to the bus, type the net name in the Prefix/Name text box. Do not type Start and End values for a single net that is not sequenced by bit number. 6. Click Edit to modify a selected cell in the Bus Nets list. 7. Click Delete to remove a net from the Bus nets list. 8. Click Down to moves the selected row down one position in the Bus Nets list. Tip: The order in which nets appear in the Bus Nets list box determines the default order for naming nets as they are connected to a bus. 9. Click Up to move the selected row up one position in the Bus Nets list.
276
Extending Buses
To extend a bus segment: 1. Click the Extend Bus button. 2. Select either end point of the bus. The end segment follows the pointer movement. 3. Click to indicate corners as needed for the extension or right-click and click Add Corner. 4. Double-click to indicate the new end point or right-click and click Complete. You cannot use the Extend Bus command to shorten a bus segment. To shorten a bus, delete the long segment, then use Extend Bus to redefine that segment. Alternately, you could use the Group command to shorten the bus segment. See also: Working with Groups
Splitting Buses
To create new corners or a 90-degree turn in the bus: 1. Click the Split Bus button. 2. Select the bus segment. The new and divided segments follow the pointer movement. 3. Move the pointer to define the segment length. To define the end point in the opposite direction, right-click and click Swap Corner. 4. Indicate the end point of the new segment and click to complete the split.
277
Deleting Buses
When deleting a bus that was selected in object mode, you can delete the bus only or the bus and its connections. See also: Object Select Mode (Select Object First) To delete the bus only: 1. Select a bus. 2. If you want to keep connections attached to the bus, right-click and click Preserve Connections to enable it. Preserve Connections is enabled by default. Tip: Preserve Connections is enabled when a check mark appears next to it in the menu. 3. Right-click and click Delete. Result: Connections are left at their original locations. To delete the bus and its connections: 1. Select a bus. 2. If you want to remove connections attached to the bus, right-click and click Preserve Connections to disable it. Preserve Connections is enabled by default. Tip: Preserve Connections is disabled when a check mark does not appear next to it in the menu. 3. Right-click and click Delete. Result: The bus and connections are deleted.
Deleting Connections
You can delete connections. But when deleted connections are subnets, results differ. Select a connection, right-click and click Delete. When a subnet with a system assigned name is split into two subnets by deleting a connection, one of the subnets is automatically assigned a new system name. When a subnet with a user assigned name is split into two subnets by deleting a connection, both new subnets retain the user assigned name, even if there is no visible net name label. When subnets are joined and both have user assigned names, the user is prompted to select one of the names for the combined net, even if there are no visible net name labels.
278
When a system named subnet is joined with a user named subnet, the combined subnet automatically inherits the user assigned name. When two system named subnets are joined, the combined subnet inherits the name of one of the subnets.
Detach
Use the detach command to free a gate, part, group of components, or group selection from any attached nets. To detach the objects: 1. Make a selection. 2. Right-click and click Detach. Result: All nets are detached. Nets are given unconnected markers or off-page symbols, depending on the Floating Connections preference. Warning: A group selection with Preserve by Boundary enabled detaches nets at the boundary and not at net terminations. The Net is split into two instances. Named nets retain their original names on both sides of the split. Related Topics Working with Floating Connections Working with Groups
Connections that extend outside a selection are assigned off-page symbols at the break point. Restriction: PADS Logic only maintains one cut or copy in the paste buffer. To copy objects: On the Edit menu, click Copy to copy a group and place a copy into the Windows paste buffer.
279
Restriction: PADS Logic only maintains one cut or copy in the paste buffer. To paste objects: On the Edit menu click Paste to place a copy anywhere in the design.
Copy as Bitmap
The Copy as Bitmap command lets you define a rectangular area to copy graphics information to the paste buffer as a bitmap image. Once copied, you can, for example switch to Microsoft Word and use the Edit/Paste command to insert the bitmap into a document. To create a bitmap: 1. On the Edit menu, click Copy as Bitmap. 2. Drag the cursor over the area to copy. Result: All items in the rectangle including the background, dot grid, color, etc., are copied. 3. Open the application in which to place the bitmap and use the Paste command to place the image.
Drafting Operations
Use the drafting commands to create lines, arcs, text, and all other items not generally associated with connectivity.
280
To add new drafting objects: On the toolbar, click the Design Toolbar button. Create new text strings. Create 2D lines. Modify 2D lines. Combine drafting objects. Get parts from a library. Save parts to a library.
Adding Text
Free text is text not belonging to another object. All alpha, numeric, and special characters on the keyboard are valid. The maximum text string length is 72 characters including spaces. Tip: To add a text entry with a bar over the characters, precede the text with the \ character. To place a bar over only a portion of text, enclose that section with the \ character. For example, typing \READ\WRITE places a bar over READ. 1. On the Design Toolbar, click the Add Text button.
281
2. Type the text string you want. 3. To place the field at a precise X,Y coordinate location, type the value in the X and Y boxes. Tip: If this is blank when you click OK, the field attaches to the pointer until you click to indicate the location. 4. In the Rotation box, select the degree of rotation from the Rotation list. Tip: Rotation can be 0 or 90 degrees. 5. For stroke font, in the Line Width box, type the line width. 6. In the Size box, type the size (in mils for stroke font, in points for system fonts). Tip: Type a stroke font size between 10 and 1000 mils or a system font size between 1 and 72 points. 7. For system fonts, select the font you want to use. You can also click a font style: B for bold, I for Italic, or U for Underlined. 8. In the Justification area, set the horizontal and vertical justification of the text. 9. If you combined the selected text string with a drafting object, right-click the text string and click Properties. Then select Parent to display the Drafting Properties dialog box to modify the drafting object. 10. Click OK. Related Topics Combining 2D Lines and Text
Moving Text
When you add a part to the schematic, all of the text associated with the symbol (reference designator, part name, pin number, attributes, etc.) appears in a predefined location. You can move the text to make room for other parts or connections or to make the schematic more readable. To move a text string: 1. On the Design Toolbar, click the Move mode button. 2. Select the text string. It attaches to the cursor. 3. Move the cursor and indicate a new position for the text. While moving text, you can modify the string using commands in the pop-up menu. The commands listed in the pop-up menu are based on the type of text being moved.
282
Tips: You can move a pin number a maximum of one inch from its pin terminal. If you select and move a visible net name, with snap to grid enabled, the new net name snaps to the Labels and Text grid. To set the labels and text grid, use the Design tab in the Options dialog box. See Schematic Editor Design Tab Options.
Adding Circles
To add circles: 1. On the Design Toolbar, click Create 2D Line, right-click and click Circle. 2. Indicate the center point of the circle. A circle outline follows the cursor movement. 3. Indicate the radius length to end the circle addition.
283
Adding Rectangles
To add rectangles: 1. On the Design toolbar, click the Create 2D Line button, right-click and click Rectangle. 2. Indicate one corner of the rectangle. A box outline follows the cursor movement. 3. Indicate the diagonally opposite corner at which to end the rectangle.
Solid Style and Dotted Style Changes the line style to a solid or a dashed line. You cannot specify dotted lines for circles or arcs. Orthogonal Diagonal Any Angle Moves are made in 90-degree increments. Moves are made in 45-degree increments. Moves are made at any angle.
284
If you choose a corner, the pop-up menu uses most of the options as selected segments, plus the following: Table 8-12. Modify 2D Line Item - Corner Option Option Del Corner Description Deletes the corner. A line segment is created between the corner's original end points.
3. Reposition the cursor and indicate a new location for the item.
Pulling Arcs
Pull Arc moves the selected line segment to create an arc, as the cursor is moved. Horizontal lines move in the vertical direction. Vertical lines move in the horizontal direction. Diagonal lines move in all directions, unless anchored by a line at the end of the diagonal. If an existing arc is selected, its end points remain fixed and the arc chord follows the cursor. Use the Pull Arc command to convert a drafting segment or corner into an arc. The starting points of the drafting segment become the start and stop angle for the new arc. 1. On the Design Toolbar, click the Modify 2D Line button. 2. Select the line for arc conversion. 3. Right-click and click Pull Arc. An arc follows the cursor movement. 4. Indicate the arc to end the conversion.
285
Tip: When you select a 2D line item from the combination for move, duplicate, etc., all items are selected for the operation. Selecting text first will not select the whole group.
286
Exploding Combinations
Use Explode to separate all objects from a combination. To explode a combination (using object mode): 1. Select a 2D line item from the group. 2. Right-click and click Explode. The combination is no longer combined, and objects are separated. Tip: In object mode, you can only explode a combination if it contains text items. Use the verb mode method (below) to explode a combination that does not have text items. To explode a combination (using verb mode): 1. On the Design Toolbar, click the Combine/Uncombine button. 2. Right-click and click Explode and select the item to explode. 3. Right-click and click Complete.
287
5. Optionally, you can rotate or mirror the item before you indicate its location. Right-click and click Rotate, Mirror X, or Mirror Y as often as needed to set the correct orientation of the item. 6. Indicate the item location. PADS Logic searches only active libraries with the Lines parameter checked for the 2D element.
Creating Groups
A group is a collection of objects on the schematic. By default, connections that extend outside the group are clipped so they stop at the boundary used to define the group. Once you select a group, you can move it, copy it to the paste buffer, delete it, duplicate it, or save it to a file for use in another design. Tip: A group differs from a combination, which consists only of 2D lines or 2D lines and text. See also: Combining 2D Lines and Text This topic discusses: Creating a Group Setting the Origin of Groups
Creating a Group
To create a group: 1. Set the selection filter to the objects you want to select. See also: Selection Filter Dialog Box 2. Area select the objects in the group. Alternative: Ctrl+click to select all objects to include in the group. Result: The included objects are highlighted.
288
3. To preserve connections that extend outside the group boundary, right-click and click Preserve by Boundary. 4. To preserve single pin nets that remain after you delete a part or bus, right-click and click Preserve Connections. 5. As needed, Ctrl+click objects in the group to remove them, or Ctrl+click objects outside the group to add them to the group. Result: The included objects are highlighted.
Managing Groups
Once you create a group, you can save it, delete it, move it, or reuse it. This topic discusses: Duplicating an Existing Group Moving Groups Deleting Groups Saving Groups Pasting Groups from a File Connecting Automatically on Paste Rotate or Mirror a Group
289
Moving Groups
Use the Move command to move a group to any location on the sheet with the Move command. To move a group: 1. Select a group, right-click and click Move. 2. Move the cursor to the new group location and click to place it. Tip: You can set PADS Logic to display only the group's outline during move operations. See also: Creating Groups
Deleting Groups
When deleting a group, you can delete or retain the connections that are outside the group boundary. To delete a group: 1. Select a group, right-click > Delete. 2. To preserve connections that extend outside the group boundary, right-click and click Preserve by Boundary. Tips: Preserve by Boundary must be checked to use this capability. Otherwise, the feature is disabled.
290
When you preserve connections outside the group boundary, the connections are automatically assigned off-page symbols upon deletion. Unnamed connections are uniquely named with a $$$ prefix.
3. To preserve single pin nets that remain after you delete a part or bus, right-click and click Preserve Connections. See also: Detach, Working with Floating Connections
Saving Groups
You can save the contents of a group for use on other schematic sheets or a different design. Saved groups are stored in the \PADS Projects folder with a .grp extension. To save a group: 1. Select a group, right-click and click Save to File. 2. In the File Name area, type a name. 3. Click Save.
Tip: To control renaming of reference designators, use the Preserve Reference Designators on Paste option check box in the Design Tab to control renaming of reference designators. To paste a group into a design: 1. On the Edit menu, click Paste From File. 2. In the Load Group File dialog box, select the group to paste. 3. Click Open. The group attaches to the cursor. 4. Move the pointer to the location for the group, and click to place it. Tip: If the design contains parts with the same reference designation as those in the group, a report is generated. See also: Preserving Reference Designators
291
Restriction: The group must consist of mixed items. The commands are not available if only components are selected. Related Topics Creating Groups
Attributes Overview
Attributes enable you to associate information with a schematic symbol. Attributes are made of two parts: an attribute name, and its corresponding value. For example, you can create an attribute named Part Description and assign its value as Hex Inverter. You can create an attribute that is assigned to every part in the library, every part in the open design, a part type, or to only one part in the design. To add an attribute to all parts in a library, create the attribute in the Manage Library Attributes dialog box. See also: Managing Attributes in the Library To add an attribute to every part in the open design, create the attribute in the Managing Schematic Attributes dialog box. See also: Managing Attributes in a Schematic To add an attribute to a specific part, create the attribute using the Attributes tab while editing the part. See also: Managing Attributes
292
To add an attribute to a part on the schematic without updating the part type, use the Part Attributes dialog box. See also: Modifying Part Attributes and Defining a Resistor Value
To display attributes in the schematic after creating them, use the visibility controls. See also: Part Text Visibility Dialog Box To create placeholders in CAE Decals so that attributes are placed in a predefined locations, use attribute labels. See also: Attribute Labels
Creating Attributes
To create a new attribute and automatically assign it to every part in a design: 1. On the Edit menu, click Attribute Manager. 2. In the Manage Schematic Attributes dialog box, click Add Attr. 3. In the Add New Attribute dialog box, type a name for the attribute in the Attribute Name text box. Or Click Browse Lib Attr to select an attribute already defined in the library. Select an attribute name from this dialog box and then click OK. 4. Type a value for the attribute in the Attribute Value text box. 5. Click Close.
293
Renaming Attributes
To rename an existing attribute and apply the change to each part in the design: 1. On the Edit menu, click Attribute Manager. 2. In the Manage Schematic Attributes dialog box, select one or more attributes in the Attributes in Schematic list. 3. Click Add. The attributes are added to the Attributes Selected for Rename list. 4. Select the attribute in the New Name column and click Edit New Name. 5. Type a name for the attribute in the Attribute Name text box. Or Click Browse Lib Attr to select an attribute already defined in the library. Select an attribute name from this dialog box, and then click OK. 6. Click Rename Attrs to rename the attribute and remove it from the Attributes Selected for Rename list box. 7. Click Close. Tip: Click Remove or Remove All to place the selected attributes back into the Attributes in Schematic list and keep the current name.
Deleting Attributes
To delete an attribute from all parts in the design: 1. On the Edit menu, click Attribute Manager. 2. Select one or more attributes in the Attributes in Schematic list. 3. Click Delete Attrs. 4. Click Close.
294
Properties Mode
Use this mode to get information on and modify objects in PADS Logic. When you select an object in Properties Mode, a dialog box or information window is displayed. On the toolbar, click the Properties mode button.
Use this mode for modifying the following object types: Text - See Modifying Text Reference Designators - See Modifying Reference Designator Labels Drafting Shapes - See Modifying Drafting Objects Parts and Part Information - See Modifying Parts Pin Information - See Modifying Pins Net Names - See Modifying Nets Bus Information - See Modifying Buses Hierarchical Components - See Modifying Hierarchical Components
295
6. Select the Mirror by X or Mirror by Y check boxes to mirror the selected drafting object in the X (horizontal) or Y (vertical) direction.
Modifying Fields
Use the Field Properties dialog box to modify a field name or change its text size, orientation, or justification. 1. Select a field, right-click and click Properties. 2. In the Field Properties dialog box, the Name box displays the selected Field string. Modify the existing string, select a new one, or type a new text string. 3. In the Value box, type the value you want displayed. Exception: The Value box is unavailable for system fields since the value is derived from your system. 4. To place the field at a precise X,Y coordinate location, type the value in the X and Y boxes. Tip: If this is blank when you click OK, the field attaches to the pointer until you click to indicate the location.
296
5. In the Rotation list, select the degree of rotation you want. Tip: Rotation can be 0 or 90 degrees. 6. In the Size box, type the font size you want. Stroke font sizes must be between 10 and 1000 mils; system font sizes must be between 1 and 72 points. 7. For stroke font, in the Line Width box, type the line width. 8. For system fonts, select the font you want to use in the Font list. You can also click a system font style you want applied: B for Bold, I for Italic, or U for Underlined. 9. To set the Justification, click the Horizontal and Vertical options you want. 10. Click OK.
Modifying Parts
Use the Part Properties dialog box to create and edit part attributes. You can also define signal pins and control the visibility of attributes assigned to the part. Tip: This dialog box contains several sub-dialog boxes. Before using any of these sub-dialog boxes, changes made in open dialog box must be applied to the design. In this topic: Changing the Reference Designator Changing the Part Type Changing Part Information Changing the Visibility of Text Changing Part Attributes Changing PCB Decals Assigning Unused Pins as Signal Pins
297
9. Set how attributes are updated in the Attributes area. Update attributes common to design and libraryUpdates parts having common attributes with the attribute values contained in the new part. Preserve attributes in design not present in libraryRetains attributes that exist in the current part even though they do not exist in the new part. 10. Set how parts are updated in the Apply update to area. This GateOnly updates the selected gate. This PartOnly updates a part or all associated gates of a part. All Parts This TypeUpdates all matching gates and/or parts in the design. Tips:
298
You can update the part definition in the schematic with a modified version in the library. Select the same part name, then click All Parts This Type in the Apply Update to Area. If you change a part type to one with fewer pins, the connections going to the missing pins are not deleted. They are attached to automatically generated off-page symbols. You are notified of all disconnected pins.
299
3. In the PCB Decal Assignment dialog box, in the Assigned in Schematic box, type a new decal name for a decal you plan to create later in the PCB design. Tip: The Assigned in Schematic box displays the name of the currently selected decal as it is assigned to the schematic from the current library. 4. Select the No specific PCB Decal check box to remove the assigned decal. The default decal assigned to the part type is used when the netlist is imported to PADS Layout; no decal assignment appears in the netlist. 5. In the Alternates in Library list, select a decal from the current part type definition in the library. 6. Click Assign to assign the decal to the part. Tip: The preview window displays the currently selected decal. 7. Click the Browse button to search a library for a decal. See also: Get Decal from Library Dialog Box 8. Set how parts are updated in the Apply update to area. This PartOnly updates the selected part. All Parts This TypeUpdates all matching parts in the design with the new decal. 9. Click OK.
300
2. Click Add to add the unused pin to the Signal Pins list. 3. Assign a signal name in the Signal Pins area. 4. To modify the signal name of the pin, select the pin in the Signal Pins list and click Edit. 5. To move the pin to the Unused Pins list, select the pin in the Signal Pins list and then click Remove. 6. Set the update settings in the Apply update to area. This PartUpdates the selected part only. All Part This TypeUpdates all parts of the same type. 7. Click OK.
301
302
5. In the Size box, type the size in mils for the height of the stroke font (from the top of the tallest character to the bottom of the lowest character), or in points for system fonts. Tip: Type a stroke font size between 10 and 1000 mils or a system font size between 1 and 72 points. 6. For stroke font, in the Line Width box, type the width of the line used to create the characters. 7. For system fonts, select the font you want to use. You can also click a system font style you want applied: B for Bold, I for Italic, or U for Underlined. 8. To set the Justification, click the Horizontal and Vertical options you want. 9. Click OK.
3. Scroll through the Decals list box to find and select a decal. Tips: The Decals list box displays the decals that matched the search filter settings. The selected decal displays in the preview area to the left of the list box.
4. Click OK to exit the dialog box. You return to the PCB Decal Assignment dialog box.
303
Rename Part
Use Rename Part to change the reference designator for the selected part or gate. All gates are renamed if you change the reference designator of one gate of a multi-gated part. You are prevented from assigning an already used reference designator. 1. Select a part, right-click and click Properties. 2. Click Rename Part from the Part Properties dialog box. An information window displays. 3. Type the new part reference designator information. 4. Click OK.
Rename Gate
Use Rename Gate to change the reference designator of the selected gate. You are prevented from assigning an already used reference designator or an unused gate of a part with a different part type. 1. Select a part, right-click and click Properties. 2. Click Rename Gate from the Part Properties dialog box. An information window displays. 3. Type the new gate reference designator information. 4. Click OK.
Tip: Type a stroke font size between 10 and 1000 mils or a system font size between 1 and 72 points. 6. For stroke font, in the Line Width box, type the width of the line used to create the characters. 7. For system fonts, select the font you want to use. You can also click a font style you want applied: B for Bold, I for Italic, or U for Underlined. 8. To set the Justification, click the Horizontal and Vertical options you want. 9. Click OK.
Modifying Pins
Use the Pin Properties dialog box to view pin information, to modify parts and nets to which the selected pin is connected, and also to set font settings for pin number and pin name labels. 1. Select a pin, right-click and click Properties. 2. In the Pin Properties dialog box, click Part/Gate to change part or gate attribute information. See also: Modifying Parts 3. Click Net to modify the net name and attributes of a named net. Tip: To modify the net name or attributes of a $$$ named net, use the Query Mode button to select a net near a pin to change it from a $$$ named net. See also: Modifying Nets 4. Click Font to open the Pin Label Fonts dialog box where you set font preferences. See also: Modifying Pin Label Fonts 5. Click OK.
305
Type a stroke font size between 10 and 1000 mils or a system font size between 1 and 72 points. For system fonts, select the font you want to use. You can also click a font style if you want one: B for bold, I for italic, or U for underlined.
4. Click OK.
Modifying Nets
Use the Net Properties dialog box to access net specific properties. 1. Select a net, right-click and click Properties. Tip: Select the connection segment where it enters or exits a part. Selecting any other segment of the connection will not allow net name labels to be added. 2. Type a new name in the Net Name box or select an existing name from the list. Tips: If you select a name from the list, the message Net <netname> already exists - OK to combine nets (Y/N)? appears. Click Yes to combine the nets, or click No to enter a different net name. If you delete all visible net name labels, the net and all subnets retain the net name. Net names do not revert to a generated $$$nnnn system number. You must rename the net. If you attempt to combine a named and an unnamed net, the resulting net will always take the name of the named net. Any similar attribute names will always take their values from the named net. The Connectivity Report identifies subnets tied together without a visible net name by flagging them as missing an off-page symbol.
3. In the Rename area, click This Instance to apply the new net name to the selected connection or click All Instances to apply the new net name to all instances of this connection. Tip: Selecting This Instance will cause the net to be split into two separate nets. 4. Select the Net Name Label check box to add a visible label to the selected net segment. Requirement: You must select the connection segment where it enters or exits a part, or the Net Name Label check box will be unavailable. Tip: Clearing the Net Name Label check box removes the visible label. The net and all subnets retain the net name. 5. Click Statistics to display connection information in the default text editor.
306
6. Click Attributes to open the Net Attributes dialog box and modify the net attributes. See also: Creating Net Attributes 7. Click Rules to open the Net Rules dialog box and modify the net rules. See also: Net Rules 8. Click OK. Result: The new net name is placed over the connection segment. Tip: Use Move Mode to adjust the placement of the net name text.
4. In the Rename area, click This Instance to apply the new net name to the selected connection or click All Instances to apply the new net name to all instances of this connection. Tip: Selecting This Instance will cause the current segment of the net to take the new net name and be split from the other instances. 5. In the Rotation box, select the degree of rotation from the Rotation list. Tip: Rotation can be 0 or 90 degrees.
307
6. In the Size box, type the size in mils for the height of the stroke font (from the top of the tallest character to the bottom of the lowest character), or in points for system fonts. Tip: Type a stroke font size between 10 and 1000 mils or a system font size between 1 and 72 points. 7. For stroke font, in the Line Width box, type the width of the line used to create the characters. 8. For system fonts, select the font you want to use. You can also click a system font style you want applied: B for Bold, I for Italic, or U for Underlined. 9. To set the Justification, click the Horizontal and Vertical options you want. 10. Click OK.
Modifying Buses
Use the Bus Properties dialog box to do the following tasks: Changing the Name of a Bus Changing the Bus Type Managing Bus Nets
308
Tip: If you change the bus type from bit format to mixed net bus, the bus name changes to just the prefix. The bus name prefix and bit range are added to the Bus Nets list box. Restriction: You can change a mixed net bus to a bit format bus only if all of the connected nets conform to the bit sequenced names, which you define in the Bus Name text box. Before you can change a mixed net bus to a bit format bus, you must delete the bus nets from the Bus Nets list box.
4. In the Start column, type the starting bit number for a sequence of nets. 5. In the End column, type the ending bit number for a sequence of nets. Tip: To add an individual net to the bus, type the net name in the Prefix/Name column. Do not type Start and End values for a single net that is not sequenced by bit number. 6. Click Edit to modify a selected cell in the Bus Nets list. 7. Click Delete to remove a net from the Bus nets list. 8. Click Down to move the selected row down one position in the Bus Nets list. Tip: The order in which nets appear in the Bus Nets list determines the default order for naming nets as they are connected to a bus. 9. Click Up to move the selected row up one position in the Bus Nets list. Related Topics Managing Buses Modifying Bus Name Labels
309
310
Modifying Text
Use the Text Properties dialog box to modify free text or change its size, orientation or justification. 1. Select text, right-click and click Properties. 2. In the Text Properties dialog box, the Text box displays the selected text string. Modify the existing text string, or type a new text string. 3. In the X,Y location boxes, type new values to move the text string to a specified location. 4. In the Rotation box, select the degree of rotation from the Rotation list. Tip: Rotation can be 0 or 90 degrees. 5. For stroke font, in the Line Width box, type the line width. 6. In the Size box, type the size (in mils for stroke font, in points for system fonts). Tip: Type a stroke font size between 10 and 1000 mils or a system font size between 1 and 72 points. 7. For system fonts, select the font you want to use. You can also click a font style: B for bold, I for Italic, or U for Underlined. 8. In the Justification area, set the horizontal and vertical justification of the text. 9. If you combined the selected text string with a drafting object, click Parent to display the Drafting Objects Properties dialog box to modify the drafting object. 10. Click OK. Related Topics Modifying Drafting Objects Combining 2D Lines and Text
311
1. Select a hierarchical component, right-click and click Properties. 2. In the Hierarchical Component Properties dialog box, type a new name in the Name box to rename the hierarchical component. 3. Select the Visibility check box to the right of the Name box to display the name on top of the hierarchical component in the schematic. 4. Click Numbered to assign the hierarchical component the next available sheet number. The assigned sheet number is displayed in the field above this option. 5. Click Unnumbered to remove a sheet number assignment from a hierarchical component. 6. In the Associated Sheet area, select the Visibility check box to display the sheet number in the schematic. 7. Click OK.
Hierarchical Design
PADS Logic supports hierarchical design where you can create symbols to represent entire subschematics and show system interactivity at a higher level. You can create hierarchy from either the top-down or the bottom-up: Top-downYou define a hierarchical symbol and then the underlying logic. Bottom-upYou create a schematic, then define the hierarchical symbol for the schematic.
You can also assign or unassign hierarchical connections in the Hierarchical Component properties dialog box. Level 0 is the top design level that contains the design contents. Numbered sheets from sheet 1 to 1024 represent the design contents. A PADS Logic design cannot exceed a total number of 1024 hierarchical and numbered sheets. You can navigate the hierarchy with the Push Hierarchy and Pop Hierarchy commands on the View menu. When a hierarchical symbol is copied, any existing underlying schematic content is also copied. PADS Logic updates the reference designator names of the underlying symbols. There is a oneto-one correspondence between hierarchy symbols and a schematic sheet. The underlying logic for duplicated hierarchical symbols is stored as a unique sheet, and can be edited without affecting the logic of other hierarchical symbols. Even though you copy a hierarchical symbol, its underlying schematics can be completely different from the copied symbols underlying schematics.
312
The following topics further describe working with a hierarchical design: Creating a Top-down Hierarchy Creating a Bottom-Up Hierarchy Pushing Into the Hierarchy Popping Up the Hierarchy Hierarchical Symbol Wizard Dialog Box Modifying a Hierarchical Symbol Copying a Hierarchical Symbol Deleting a Hierarchical Symbol
Procedure
1. On the Design Toolbar, click the New Hierarchical Symbol button. 2. In the Hierarchical Symbol Wizard dialog box, in the Hierarchical Sheet area, type the symbol name in the Sheet Name text box. 3. Select your preferred Pin Decal for both input and output pins from the appropriate drop-down list boxes. 4. Specify the Pin Count for both input and output pins. The Preview area displays the symbol outline. 5. Click OK. The hierarchical symbol appears in the Part Editor window. Tip: Because the symbol is a hierarchical one, it has no pin numbers. The pin name associated with pins of the hierarchical symbol identify the net name of the connection that is tied to the pin. All pins on a hierarchical symbol must have a pin name. You cannot complete the hierarchical symbol until you assign a name to each pin. 6. In the Part Editor, double-click each pin to open the Terminal Properties dialog box where you name the selected pin. You must name each pin of the symbol. 7. On the File menu, select Complete. This closes the Part Editor, and the new symbol attaches to the cursor. 8. Move the cursor to a desired location and click to place the symbol in the schematic.
PADS Logic Users Guide, PADS 9.2
313
You can navigate this hierarchy with the View menu > Push Hierarchy, and View menu > Pop Hierarchy commands. Related Topics Creating a Bottom-Up Hierarchy
Procedure
1. Switch to the sheet to which you want to add the hierarchical symbol. If needed, add a new schematic sheet to the sheet set using Setup menu > Sheets. 2. On the Design Toolbar, click the New Hierarchical Symbol button. 3. On the Hierarchical Symbol Wizard dialog box, select an existing sheet from the Sheet Number drop-down list box in the Hierarchical Sheet section. 4. Type a name for the symbol in the Sheet Name text box. 5. Select your preferred Pin Decal for both input and output pins from the appropriate drop-down list box. The Preview area displays the symbol outline. The number of input/output pins on the symbol is automatically set from the number and type of offsheet reference symbols on the underlying schematic sheet and the pin count boxes are unavailable for editing. 6. Click OK. The hierarchical symbol appears in the Part Editor window. An input or output pin is located on the symbol to match each off-page reference on the underlying schematic sheet. 7. On the File menu, click Complete. This closes the Part Editor, and the new symbol attaches to the cursor. 8. Move the cursor to a desired location and click to place the symbol in the schematic. You can navigate this hierarchy with the View menu > Push Hierarchy and View menu > Pop Hierarchy commands. Related Topics Creating a Top-down Hierarchy
314
Procedure
1. On the View menu, click Push Hierarchy. 2. Select the hierarchical symbol. Alternative: You can select the hierarchical symbol, right-click and click Push Hierarchy. Tip: If there is no underlying schematic representation of the selected symbol, a blank sheet appears.
Procedure
In a hierarchical sub-schematic, on the View menu, click Pop Hierarchy. Tip: In the Sheets list on the main toolbar, a sub-schematic is displayed with an indented icon.
Accessing
Design Toolbar > New Hierarchical Symbol button.
315
Table 8-13. Hierarchical Symbol Wizard Dialog Box Contents Name Preview window Pin Parameters area Description Displays the symbol outline before the symbol appears in the Part Editor. Display is based on the current settings. Pin LengthSets the distance from the terminal connection point and the decal outline. This option does not adjust the length of the pin decal. Pin SpacingSpecifies the spacing between adjacent pins. Box WidthSets the width of the decal outline. Pin decals are moved left or right to accommodate the box width. Min Box Hgt.Sets the minimum height of the decal outline. If you enter a value larger than needed to accommodate the number of input or output pins, space is added to the bottom of the decal. Tip: Type values or use the arrow buttons. Pin DecalSpecifies the type of pin decal. Pin CountSpecifes the number of input pins for a hierarchical symbol of a new sheet during top-down design. Tip: Type values or use the arrow buttons. Pin DecalSpecifies the type of pin decal. Pin CountSpecifes the number of output pins for a hierarchical symbol of a new sheet during top-down design. Tip: Type values or use the arrow buttons.
316
Table 8-13. Hierarchical Symbol Wizard Dialog Box Contents Name Hierarchical Sheet area Description Sheet NumberLists the sheets in the set or lists only the <New Sheet> option for top-down design. Restriction: For bottom-up design, this list never displays the current sheet since you can place the symbol that represents the current sheet on the current sheet. Sheet NameSpecifies the name of the hiearchical symbol. Restrictions: Sheet Name has a maximum of 37 characters. You can only use the first 32 characters for the textual portion of the name, the remaining five are reserved for the numeric potion.
317
Procedure
1. Select the symbol in the design. 2. Ctrl+drag a copy. 3. In the warning prompt, click Yes. The symbol copy attaches to the cursor. 4. Click the place the symbol. Related Topics Hierarchical Symbol Wizard Dialog Box Modifying a Hierarchical Symbol Deleting a Hierarchical Symbol
318
Chapter 9 Rules
The following topics describe Rules usage: Setting Rules Clearance Rules Same Net Matrix Editing Routing Rules High-Speed Rules Rules Setup Default Rules Class Rules Net Rules Conditional Rules Differential Pairs Differential Pair Layer Hierarchy Rules Report Import Rules from PCB Export Rules to PCB
Setting Rules
Design Rules enable you to assign general routing constraints for your design, such as trace width and spacing. An option in the netlist report lets you pass established design rules along with the connectivity and parts information to PADS Logic. On the Setup menu, click Design Rules.
Rule Categories
Design rules are separated into three categories: Clearance RulesSpecifies minimum allowable airgap between various object types in the design; trace to trace, via to trace, etc. Editing Routing RulesAssigns or prohibits via types, specifies length minimization types, or allows or prohibits routing. High-Speed RulesSpecifies minimum and maximum parameters for advanced design rules such as parallelism, delay, capacitance, and others.
Information for each category is entered and edited in a separate dialog box that you can access through the Design Rules command from the Setup menu.
319
Clearance Rules
Use the Clearance Rules dialog box to define the spacing permitted between objects. When objects are imported, the On-line DRC and Verify Design programs use these rules to check and report clearance violations. Tip: You can use the Conditional Rules dialog box to save a clearance configuration as a set, to apply to a selected item only when it comes in contact with different level of the hierarchical order. To define clearance rules: 1. On the Setup menu, click Design Rules, click a rule hierarchy, then click Clearance. 2. In the Same Net area, define edge-to-edge clearance values between items that are in the same net: Table 9-1. Clearance Rules - Same Net - Edge-to-Edge Clearance Options Clearance SMD to Via SMD to Corner Via to Via Pad to Corner Trace to Corner Description Minimum spacing between a surface mount pad and escape via. Minimum spacing between a surface mount pad and the first trace bend point. Minimum spacing between two vias in the same net. Minimum spacing between a through hole pad and the first trace bend point. Minimum spacing between a trace and the bend point of another trace; for example, when a trace splits at a T-junction and one of the two traces has a bend point.
Tips: To define the minimum spacing between any two objects, type the value in the corresponding text box. To define the same spacing value for all text boxes in one matrix column, press the button above the column. Type a value and click OK. To define the same spacing value for all text boxes in one matrix row, press the button in the left column. Type a value and click OK. To define the same spacing value for all text boxes in the matrix, press the All button. Type a value and click OK.
3. In the Trace Width area, type values in the text boxes to restrict the trace width to a range of values. Tips:
320
PADS Logic Users Guide, PADS 9.2
In the Recommended box, type is the width you want to assign to the trace when routing begins. In the Minimum and Maximum boxes, values are respected by routing routines that must use trace width to achieve some high-speed routing functions, such as impedance matching.
4. In the Clearance area, use the Clearance matrix to define edge-to-edge clearances between two object types: To define the minimum spacing between any two objects, type the value in the appropriate text box. To define the same spacing value for all text boxes in one matrix column, press the button above the column and type a value. To define the same spacing value for all text boxes in one matrix row, press the button in the left column and type a value. To define the same spacing value for all text boxes in the matrix, press the All button and type a value.
5. In the Other area, optionally set other clearance values, which include: Table 9-2. Clearance Rules - Other - Clearance Options Clearance Drill to Drill Body to Body Description The minimum edge-to-edge spacing between two drill holes. The minimum edge-to-edge spacing between two component bodies.
6. Click OK, or optionally click Delete to remove this set of Clearance rules from your rules hierarchy. Tip: You cannot delete the Default Clearance rules.
321
Accessing
Setup menu > Design Rules > (rules level button) > Routing Select a net, right-click and click Show Rules, then click the Routing button.
322
323
Table 9-4. Routing Rules Dialog Box Contents Name Topology Type Description Specify the topology type to determine the pin-to-pin order when routing the net or moving a part. When routing interactively, a ratsnest guides you as you route from pin to pin. To specify the topology type, click one of the following options: ProtectedDo not change the order of the connectivity in the net. Tip: This option disables length minimization. MinimizedOrder the net by the shortest distance between pins. Net reorder or reconnect is permitted. Serial sourceOrder the net in a series order from source pins to load pins to a terminator. Parallel sourceSame as "Serial source" except order the net with parallel branches for each source-toload connection. Mid-drivenDivide the net into two branches and order each branch in a source to load to terminator order. Vias can share copper with another object.
Restriction: This rule is used only in PADS Router, although you can define this rule in PADS Logic, PADS Layout, or PADS Router.
324
Table 9-4. Routing Rules Dialog Box Contents Name Trace Description Traces can share copper with another object.
Restriction: This rule is used only in PADS Router, although you can define this rule in PADS Logic, PADS Layout, or PADS Router. Priority Assign priority from 0 to 100. Nets with higher priority are routed first. Restriction: PADS Router does not use the priority value. This rule applies only to SPECCTRA. Enables the autorouter to route nets. Unroute existing traces and reroute the nets. Tip: Enable this option to rip up traces while DRC Warn or Prevent is enabled. Move unprotected traces aside to create room for new traces. Tip: Enable this option to shove traces while DRC Warn or Prevent is enabled. Move protected traces aside to make room for new traces. Lists layers, not already in the Selected Layers list, that can be made available for routing. Click to move a selected layer from the Available Layers list to the Selected layers list. Click to move a selected layer from the Selected Layers list to the Available layers list.
Allow Shove
Allow Shove Protected Layer biasing Available Layers Add >> << Remove
325
Table 9-4. Routing Rules Dialog Box Contents Name Selected layers Vias Use Vias already defined in Select the check box to suppress the via biasing in PADS PCB Layout design Logic. Clear the check box to specify via biasing for routing. Tips: If vias exist in PADS Logic that dont exist in PADS Layout, you are prompted to create those vias before importing the netlist into PADS Layout. Since there is no Pad Stacks Properties facility for creating vias in PADS Logic you can only specify the names of via and you must create those vias in PADS Layout. Since only Default, Net, and Class rules are available in PADS Logic, any control of vias at higher levels of the rules hierarchy must be done in PADS Layout. Available vias Via Definition Lists the vias, not already in the Selected Vias list that are available for routing. Click to open the Via Setup dialog box to Add, Delete, or Rename vias available for routing. Since there is no Pad Stacks Properties facility for creating vias in PADS Logic, any vias added must be created in PADS Layout before importing the netlist in PADS Layout. Click to move a selected via from the Available Vias list to the Selected Vias list. Click to move a selected via from the Selected Vias list to the Available Vias list. Lists the vias, that have been selected from all the available vias, to be available for routing. Click to give the autorouter unrestricted use of vias during autorouting. Click to restrict the number of vias the autorouter can add to nets during autorouting. In the box, type the maximum number of vias between 0 and 50000. The autorouter considers this to be a hard rule. Interactive routing and design verification check this rule. Tip: An insufficient maximum number of vias might increase autorouting runtime and reduce completion rates. Description Lists the layers, that have been selected from all the available design layers, to be available for routing.
Add >> << Remove Selected Vias Maximum number of vias Unlimited vias Maximum of
326
Table 9-4. Routing Rules Dialog Box Contents Name Delete Description Click to remove the current set of routing rules from the rules hierarchy for the selected nets. Restriction: The Delete button is unavailable for the default set of routing rules. You cannot delete the Default Routing rules.
High-Speed Rules
Use the Hi Speed Rules dialog box to define rules for Parallelism, Tandem, Shielding, Routed Length, Stub Length, Delay, Capacitance, Impedance, and Matched Length. Tips: When imported into PADS, the EDC (Electrodynamic Checking) routine checks to see if rules are met correctly after routing (except shielding and matched length). You can use the Conditional Rules dialog box to save a high speed configuration as a set, or to apply for a selected item only when it comes in contact with different level of the hierarchical order.
To define high-speed rules: 1. On the Setup menu, click Design Rules, click a rule level, then click Hi Speed. 2. In the Parallelism area, type a value for length and gap in the parallelism boxes to restrict the distance that traces in different nets on the same layer can run together. 3. Type a value for length and gap in the tandem boxes to restrict the distance that traces in different nets on different layers can run together. Table 9-5. High-Speed Rule Options Option Parallelism Tandem Tips: These values determine the distance and standoff against the specific item and everything else in the design. To set a narrower check, use Conditional Rules to define specific Source and Against items. Length defines the maximum allowable parallel/tandem distance. Description Restricts the distance that traces in different nets on the same layer can run together. Restricts the distance that traces in different nets on different layers can run together.
327
Gap defines the minimum gap between traces below which the parallel/tandem rules apply.
4. Click Aggressor to specify if a net is an aggressor, or source of interference, during parallel/tandem checks. 5. In the Rules area, type minimum and maximum values for: Table 9-6. High-Speed Rules - Minimum/Maximum Values Rule Length Stub Length Delay Capacitance Impedance Description Defines a minimum and maximum length. Specifies a maximum stub length. The stub length is the distance from a T-point to the end of the route. Defines a minimum and maximum delay time in nanoseconds. Defines a minimum and maximum capacitance in picofarads. Defines a minimum and maximum impedance in ohms.
Tips: These text boxes restrict the trace width to a range of values. Recommended is the width you want to assign to the trace when routing begins. The Minimum and Maximum values are respected by routing routines which must use trace width to achieve some high-speed routing functions, such as impedance matching. 6. Some routers can arrange certain nets as shielding others if requested; the Net in the Use Net list box is routed up and down both sides of a selected net to provide protection from interference. In the Shielding area, click Shield to invoke the shielding rules. Tips: You can only assign nets associated with plane layers in the Layer Definition dialog box to shield other nets. If there are no plane layers, the Shield area is grayed out. If your router supports shielding, you can specify the shield gap value and net to use as the shield in the Gap and Use Net text boxes.
7. Optionally, in the Matching area, select the Match Length check box to invoke the matching rule, and type a tolerance value. Tips: Length Matching is a same length requirement parameter you can pass on to autorouters that support it. This rule specifies the maximum difference allowed between the shortest length and longest length in the matched length group.
8. Click OK, or click Delete to remove this set of High Speed rules from your rules hierarchy.
328
Rules Setup
Use the Rules dialog box to enter item-to-item Clearance rules, routing guidelines, and values for the optional High Speed checking commands. You can also indicate the unit of measure for passing rules to PADS Logic: mils, metric, or inches. 1. On the Setup menu, click Design Rules. 2. Select the rules hierarchy level for which you want to set or modify rules. Tip: When you specify one of the hierarchical levels listed below, you can access the Clearance, Routing, or High Speed forms. 3. Click the appropriate button to define rules for a particular level in the hierarchy. 4. In the Units list box, select Mils, Metric, or Inches. 5. Optionally, click the Report button to access the Rules Report dialog box where you can select a default report of a report for some or all of the rules you have defined.
Rules Hierarchy
In the rules hierarchy, certain rules have precedence over other rules in the hierarchical rules order. For example, a net rule overrides a class rule, and a class rule overrides a default rule. Table 9-7. Rule Hierarchy and Order of Precedence Rules Precedence Description Rules that apply to an object if there are no other individually defined rules. Rules for a collection of nets, called a class, which needs identical rules. Highest Rules for a specific net. Default Rules Least Class Rules Net Rules
329
3. Class 4. Class with Level 5. Net 6. Net with Level 7. Class against Class 8. Class against Class with Level 9. Net against Class 10. Net against Class with Level 11. Net against Net 12. Net against Net with Level See also: Default Rules, Class Rules, Net Rules, Rules Report
Default Rules
Use the Default Rules dialog box to define rules which apply to all objects that are not included in any other rule within the hierarchy. On the Setup menu, click Design Rules, then click Default. To define default Clearance, Routing, or High Speed rules, click the appropriate button. Click the Report button to produce a rules report.
Class Rules
Use the Class Rules dialog box to define rules that apply to a collection of nets known as a net class and to multiple net classes. 1. On the Setup menu, click Design Rules, then click Class. 2. In the Class Name list box, select a class name, or specify a new name for which you want to apply rules. Tip: The Class list box defines net classes by name and parenthetically notes the rules that apply, if any, to the class. 3. In the Nets area, add or remove selected nets from the net class as follows:
330
Select a class in the list box to display nets in the Available and Selected list boxes, or click the Add button to create a new class. To assign nets to a class, select the net(s) in the Available list box and click Add.
PADS Logic Users Guide, PADS 9.2
Tip: A net can only belong to one net class. The Available list box only contains nets that do not belong to a net class. 4. To delete nets from the class, select the net(s) in the Selected list box and click Remove. 5. Optionally, click Rename to change the class name for the selected class. 6. Optionally, select the Show Classes with Rules check box to list only classes with at least one set of rule definitions. 7. For each class, click the appropriate button to define Clearance, Routing, or High Speed rules for a net class. Tip: When you select a class name, an icon appears below each rule type to indicate the hierarchy level where the rule is defined for that class. For example, a class with only Clearance rules defined would have a class icon below the Clearance icon and Default icons below the Routing and High Speed icons. 8. In the corresponding Rules dialog box that displays, supply values for the rules you want to apply, and click OK to return to the Class Rules dialog box. 9. When you have finished defining all class rules, click OK.
Net Rules
Use the Net Rules dialog box to define rules that apply to a single net or multiple nets. 1. On the Setup menu, click Design Rules, the click Net. 2. Select the net(s) for which you want to define Clearance, Routing, and High Speed rules. Tip: When you select a net name, an icon appears below each rule type to indicate the hierarchy level where the rule is defined for that net. For example, a net with both Clearance and High Speed rules defined would have net icons below the Clearance and HiSpeed icons and a Default icon below the Routing icon. 3. Optionally, select the Show Nets with Rules check box to list only those nets with at least one set of rule definitions. 4. Optionally, click the Report button to view a rules report. 5. Click the Default button to restore the net rules back to the default rules.
331
Conditional Rules
Once you set up Clearance rules for a group in the hierarchical order, the rules are applied to all other objects. Use the Conditional Rule Setup dialog box to apply a third overriding set of rules that apply only when the item meets other specific levels of the hierarchical order. Tips: You can use a layer as an against object, where rules you set for an object such as a net apply only when the net is routed on that layer. You can further refine this to use another net as an against object and specify a layer to which the rules to apply. If these two nets meet on this layer, they must adhere to this clearance. You define these relationships by making conditional rule sets.
To set up conditional rules: 1. On the Setup menu, click Design Rules, then click Conditional Rules. 2. In the Source Rule Object area, select Classes, Nets, or All to specify both classes and nets. Then specify the object(s) against which the rule is checked. 3. In the Against Rule Object area, select Classes, Nets, or Layer. Then specify the object(s) against which the rule is checked. Tip: Click the Layer button to use a layer as an against object or to apply an item-toitem rule on a specific layer. 4. Optionally, in the Define Conditional Objects area, in the Apply to Layer area, select a layer on which you want rules checked. 5. In the Existing Rule Sets list box, select the rule set to define the appropriate values for specific Clearance or High Speed definition of the selected rule set. 6. After you create a rule set, in the Current Rule Set area, define the Clearance or High Speed values. 7. Select Clearance to enter the minimum clearance gap you want the source and against items to maintain from each other. Click Matrix to enter more item-specific standoffs. 8. Select High Speed to enter clearance values for parallel and tandem checking for the condition. The source-against entries are used as the victim-aggressor designations for crosstalk conditions checking. 9. Click Create to compile the new rule set parameters and adds a description to the Existing Rule Sets list box, or click Delete to removes the selected rule set from the Existing Rule Sets list box. Related Topics Clearance Rules
332
High-Speed Rules
Differential Pairs
Use the Differential Pairs dialog box to identify nets or pin pairs that behave electrically as differential pairs, and to define differential pair design rules. This topic shows you how to do the following: Creating Differential Pairs Setting Differential Pair Properties
Tip: While you can define these rules in PADS Logic, they are used only in PADS Router.
333
5. To set the width and gap per layer, click Add, click in the Layer cell in the newly added row, and select the layer for which to set width and gap values. Then type Width and Gap values in the appropriate cells. Tips: Setting the differential pair width and gap per layer allows you to better control impedance. The gap rule cancels any other rule defining a clearance between the differential pairs. Therefore, the gap is the minimal clearance and must be provided when possible. If you select multiple differential pairs, and a layer setting doesn't belong to all of the selected pairs, the Layer column will be unavailable. If you select multiple differential pairs that have the same layer setting, but the Width and Gap values do not match, the Width and Gap cells will appear empty. You can, however, type a new value, and the new will be applied to all selected differential pairs when click OK or Apply.
See also: Differential Pair Layer Hierarchy 6. Click Restrict layer changes during autorouting to force the pair to be routed on a single layer. This setting does not restrict layer changes when routing interactively. 7. Click Allow pair to split around obstacles to allow routing around an obstacle in the controlled gap area by temporarily exceeding the pair routing gap. This setting applies to autorouting and does not restrict splitting around obstacles when routing interactively. 8. Type the maximum number of obstacles to route around in the Maximum number of obstacles box. Tip: Obstacles in the start zone or end zone are not counted. 9. Type the maximum spacing allowed between traces around obstacles in the Maximum obstacle size box. The size applies to the obstacle's longest horizontal or vertical dimension. Tip: Obstacle size in the start zone or end zone is not checked. 10. Click OK.
334
Rules Report
Use the Rules Report dialog box to produce a report of some or all of the rules you have defined. By default, a complete report of all rules is reported. On the Setup menu, click Design Rules, the click Report.
You can produce reports for the following: Table 9-8. Rules Report Types Report Type Rule types Description Displays the specified rules for the specified nets and classes. Click any combination of buttons, including Differential Pairs, to report net pairs. Displays the specified rules for every net or selected nets. Click All Nets or select specific nets in the list box. Displays the specified rules for every class or selected classes. Click All Classes or select specific net classes in the list box. Click Rule Sets to display all rules in the current hierarchy that are unique from the default rules. Click Rule Values to display all rules in the current hierarchy level, even if the values are the same as the default rules. Displays the default rules for the specified nets and classes.
Default Rules
335
336
Chapter 10 Reports
The following topics describe reports usage: Generating Reports Setting up the Bill of Materials Report
Generating Reports
Use the Reports dialog box to produce any of six different types of reports on the current schematic. You can save these reports as text files on your hard disk or output them to a printer. 1. On the File menu, click Report. 2. In the Reports dialog box, select each report you want to generate. PADS Logic directs all reports, except the netlist report, padsnet.asc, into a single text file, report.rep. Unused Report Part Statistics Report Net Statistics Report Limits Report Connectivity Report Bill of Materials Report
3. To specify or modify the report characteristics of the Bill of Materials report, click Setup. See also: Setting up the Bill of Materials Report 4. Click OK. The reports are generated and the dialog box closes.
Unused Report
The Unused report lists all unused gates and pins in the schematic. Use this report for trouble shooting and to maximize part usage. The Unused report first lists unused parts and gates, followed by a list of unused pins on each part. See also: Unused Sample Report.
337
Limits Report
The Limits report indicates the maximum number of each PADS Logic data item (parts, nets, text) your system will allow, as well as the current count of each of these items in the schematic. This limit varies depending on the amount of virtual memory that is available. The report has two parts. The first is a list of items whose limits are common to the entire schematic. The second is a count, for each schematic sheet, of the items whose limits apply for each sheet. You should periodically run a Limits report to ensure that you are not approaching the systems limit for any item. If you exceed the Maximum No. of Items for any item, you cannot continue adding those items to the schematic. The solution is to split the design into multiple schematics, run separate netlists for each schematic, then merge the netlists using a text editor. See also: Limits Sample Report
338
Connectivity Report
The Connectivity report lists the X,Y coordinate location and sheet number of all off-page, ground, and power symbols in the schematic. Tip: Use the report to quickly locate an off-page symbol using the S (Search) modeless command. An error message appears when a net contains only one off-page reference. Subnets tied together without a visible net name are identified by flagging them as missing an off-page symbol. See also: Connectivity Sample Report
Report Examples
This topic shows examples of the following reports: Unused Sample Report Part Statistics Sample Report Net Statistics Sample Report Limits Sample Report Connectivity Sample Report Bill of Materials Sample Report
339
340
341
342
343
344
345
Attributes
Use the Attributes tab to modify the Attribute content, the corresponding column headings, and column width of the report. The attribute order in the content list determines the column arrangement in the BOM report. There is a limit of 12 attributes in the Bill of Materials report. 1. On the File menu, click Reports and then click the Bill of Materials check box. 2. In the Reports dialog box, click Setup to specify or modify the Bill of Materials report characteristics. 3. Click the Attributes tab. 4. To add a new attribute to the list, click Add and select an attribute from the list in the Part Attribute column, Tip: You can list up to twelve attribute names. Each attribute defines a column in the BOM report. 5. In the Field Header column, specify the column heading for each attribute in the report. You can specify any character except the colon ( : ). 6. In the Width column, type an integer between 1 and 200 that represents the number of characters across the column for each attribute in the report. Tip: PADS Logic reserves a space to separate columns. Therefore, the actual column width is one character less than the specified number. 7. To move an attribute up a row, select the attribute to move and click Up. 8. To move an attribute down a row, select the attribute to move and click Down. 9. To edit an attribute, select the box to edit and click Edit. Restriction: You cannot edit the part attribute name, but you can select a new attribute to replace the one currently listed. 10. To remove an attribute from the report, select the row and click Remove. 11. To restore the default content from the .ini file, click Reset. 12. Click OK.
Format
Use the Format tab to modify the output format of the Bill of Material report. The default settings originate from the .ini file. 1. On the File menu, click Reports and then click the Bill of Materials check box.
346
PADS Logic Users Guide, PADS 9.2
2. In the Reports dialog box, click Setup to specify or modify the Bill of Materials report characteristics. 3. Click the Format tab. 4. Select the type of delimiter you want to distinguish the report columns. Separator - places a vertical bar between report fields Tab - separates columns with a tab spacing Comma - places a comma character between report fields Custom - specify any character as a delimiter 5. Type a report title in the Report Title box. Tip: The variable %j is replaced by the file name and %d is replaced by the date. 6. Select the Combine Value/Tolerance checkbox to combine the Value and Tolerance attributes of a part in the part name. Example: The 1/4 watt resistor would have a part type name of R1/4W or R1/4W.4.7K,+/-5%. PADS Logic evaluates parts that have either a different Value or Tolerance attribute as different part types. 7. Select the Separate Ref Designator check box to combine entry any parts that have identical attribute values that only differ by their reference designators into a single report. This reduces the BOM report size. Example: If U1 through U10, U12, and U16 to U18 are all identical parts, then PADS Logic generates one entry with the reference designator column containing the string: U1-10 U12 U16-18. When turned on, parts always appear on separate lines. 8. Select an attribute in which to sort the report list in the Sort By list. Tip: Select None to sort by Part Type. 9. Select the output file format from the File Format list. 10. To save report format settings for the current design to a specified file so you can create different format configurations for different designs, click Save As and type a filename the Save Scheme dialog box. PADS Logic saves BOM format settings files in the \PADS Projects folder with a .rep extension. Tip: Click Delete to remove the selected setting file from the list. 11. To restore the default content from the .ini file, click Reset. 12. Click OK.
347
Clipboard View
Use the Clipboard View tab to preview the Bill of Materials report format and copy any selected lines of the file to a Windows clipboard. The default view orders the attributes by the sort field you specified on the Format tab. 1. On the File menu, click Reports and then click the Bill of Materials check box. 2. In the Reports dialog box, click Setup to specify or modify the Bill of Materials report characteristics. 3. Click the Clipboard View tab. 4. To sort rows by an attribute other than the one you set on the Format tab, click the heading area of the attribute you want to sort. To sort the same column in reverse order, click again. 5. To include the column header information in the report, select the Include table header check box. 6. Select the rows you want to copy to the clipboard and click Copy. Tip: Click Select All to select the entire table. 7. Click OK.
348
349
file is displayed in a Notepad window. No errors file is generated if no errors are found. The following are reported in the errors report file: Library issues Single or zero pin nets Totally floating connections or subnets Unnamed dangling connections (one end floating) Power and Ground symbols used on nets whose name is different from the default name on the symbol Multiple subnet nets where one or more subnets is missing an off-page symbol Single subnet nets with an off-page symbol (lonely subnet warning) User named subnets that have no visible net name label
350
Related Topics Updating the PCB Layout from PADS Logic Updating the Schematic From PCB Layout ECO File Format Attribute Level Backward Annotation Selecting Comparison Options Contents of the Differences Report Selecting Design Files and Output Options Part Level Backward Annotation Gate Level Backward Annotation Net Level Backward Annotation Pin Level Backward Annotation
Forward Annotation
If PADS Logic and PADS Layout are on the same computer, you can perform forward annotation using ECO To PCB on the Design tab of the PADS Layout Link dialog box. ECO To PCB compares the PADS Logic schematic in memory to the current PADS Layout design, and then automatically updates the PADS Layout design with the resulting ECO file. If PADS Logic and PADS Layout are not on the same computer, you can use the Compare/ECO dialog box to compare the design versions and create the ECO file, and then import the ECO file into PADS Layout. For information, see the Importing Files topic in PADS Layout Help.
Backward Annotation
If PADS Logic and PADS Layout are on the same computer, you can perform backward annotation using ECO From PCB on the Design tab of the PADS Layout Link dialog box. ECO From PCB compares the PADS Logic schematic in memory to the current PADS Layout design, and then automatically updates the PADS Logic design with the resulting ECO file. If PADS Logic and PADS Layout are not on the same computer, in PADS Logic create a PADS-format ASCII netlist file (.asc), in PADS Layout compare the design to the schematic netlist file (.asc), and then in PADS Logic import the ECO file. Related Topics Creating a Netlist Comparing and Updating Designs Updating the PCB Layout from PADS Logic
351
Netlists and Annotation Updating the PCB Layout from PADS Logic
Logic.rep
Restriction: Transferring non ECO registered parts and non-electrical parts is constrained. See Schematic Editor Design Tab Options for details. You can compare designs in any of the following forms: Schematic in memory Binary schematic file (.sch) PADS-format ASCII file (.asc)
For example, you can compare the new schematic in memory to the PADS-format ASCII file representing the original PCB layout that you want to update. Tip: If PADS Logic and PADS Layout are on the same computer, you can update the PCB layout using ECO To PCB on the Design tab of the PADS Layout Link dialog box. To compare design versions and create an ECO file and/or Differences Report file:
352
PADS Logic Users Guide, PADS 9.2
Netlists and Annotation Updating the PCB Layout from PADS Logic
1. Tools menu > Compare/ECO 2. In the Compare/ECO dialog box, click the Documents tab, and select the designs to compare and the files you want to create, as described in Selecting Design Files and Output Options. 3. Click the Comparison tab, and select the options you want to use for design comparison, as described in Selecting Comparison Options. 4. Click Run to compare the designs. PADS Logic writes the output files to the \PADS Projects folder. Tip: In addition to the files listed above, messages or errors that occur during comparison are also written to logic_session.log and logic.err in the \PADS Projects folder. The following are reported in the errors report file: Library issues Single or zero pin nets Totally floating connections or subnets Unnamed dangling connections (one end floating) Power and Ground symbols used on nets whose name is different from the default name on the symbol Multiple subnet nets where one or more subnets is missing an off-page symbol Single subnet nets with an off-page symbol (lonely subnet warning) User named subnets that have no visible net name label
5. Start the PCB layout tool and import the ECO file. Related Topics Forward and Backward Annotation Cross-probing Between PADS Products
353
Tip: Design Rule changes are not supported by ECO backward annotation. To update the schematic with changes made in the PCB layout tool: 1. Create an ECO file with the PCB layout tool. For information about creating an ECO file with PADS Layout, see Comparing and Updating Designs. 2. Start PADS Logic and open the schematic that you want to update. 3. Tools Menu > Options >Design tab 4. Set the Allow overwriting of attribute values in design with blank values from library attributes check box appropriately to allow or prevent overwriting of non-blank attribute values with blank (placeholder) values from the library. 5. File menu > Import 6. In the File Import dialog box, in the Files of type field, select ECO Files (*.eco). Then in File name field, select the ECO file you want to import. 7. Click Open. If no errors occur, the schematic is updated. If errors occur, the schematic is not updated, and the errors, along with a link to the ECO Import errors file, are written to the Output window. Related Topics Forward and Backward Annotation
354
Tip: The original design cannot have the same file name as the new design. 2. In the New Schematic Design with Changes area, specify the design containing the changes you want to place into the original design. Do one of the following: Select Use Current Schematic Design to use the schematic in memory as the new design. Clear Use Current Schematic Design, and then type or browse to the new design file. The new design file format can be binary (.sch) or PADS-format ASCII (.asc).
Tip: The new design cannot have the same file name as the original design. 3. If you want to create a report file containing a description of the differences between the two design versions, select Generate Differences Report. The report file is named Logic.rep and is written to the \PADS Projects folder. 4. If you want to create an ECO file, select Generate ECO File, and then type or browse to the ECO file. The ECO file contains ECO commands that describe the changes needed to update the original design to match the new design. 5. Click the Comparison tab to specify additional options or click Run to compare the designs. Tip: If there are errors, an error report is created and is written to the \PADS Projects folder. A link to the file is added in the Output Window. The following are reported in the errors report file: Library issues Single or zero pin nets
355
Totally floating connections or subnets Unnamed dangling connections (one end floating) Power and Ground symbols used on nets whose name is different from the default name on the symbol Multiple subnet nets where one or more subnets is missing an off-page symbol Single subnet nets with an off-page symbol (lonely subnet warning) User named subnets that have no visible net name label
Restriction: Transferring non ECO registered parts and non-electrical parts is constrained. See Schematic Editor Design Tab Options for details. Related Topics Updating the PCB Layout from PADS Logic Contents of the Differences Report
356
These are the available ECO commands: Add a Pin to the Net Add a Part Join Two Nets Together Delete a Part Delete a Pin from a Net Change a Component's Part Type Split a Net into Two Nets Rename a Part Rename a Net Swap a Gate Swap Pins
A line indicating the net to which the pin is added follows this line:
*SIGNAL* netname 10
where netname is the net to add the pins to and 10 is the trace width to associate with the connections. If the net name does not currently exist in the design it will be added. This is followed by the pin(s) to add to the net as shown below:
ref1.pin1 ref2.pin2
Add a Part
The command is:
*PART*
357
where refdes is the part reference name and parttype is the part type name. When parts are added in the PCB, they will be placed at system origin of 0,0. If a board outline is present, the parts are instead placed at the lower left corner of its box.
where OLDNET0 and OLDNET1 are the names of the nets to combine. The new combined net uses the name OLDNET1. A connection is added between the nets using two random pins in the selected nets. The trace width of the added connection is the same as that of a connection in the first net (OLDNET0).
Delete a Part
The command is:
*DELPART*
where refdes is the part reference name to delete and parttype is the part type name. (The part type name is not required.) If all pins of the part to be deleted have not already been disconnected from the connection nets in the design, an error is reported.
This is followed by a list of pins to delete from each net, in the form:
refdes.pinnumber signame
where refdes is the part reference name, pinnumber is the pin number to disconnect, and signame is the net of which the pin is currently part.
358
where refdes is the reference name of the part to change, oldparttype is the old part type, and newparttype is the new part type.
two lines follow, listing the new signal names and the pins:
*SIGNAL* oldsigname ref1.pin1 ref2.pin2 *SIGNAL* newsigname1 ref3.pin3 ref4.pin4
where the pins following the *SIGNAL* statement are in the first net, and those following the second line are in the second net.
Rename a Part
The command is:
*RENPART*
where oldrefdes is the old name and newrefdes is the new name. To facilitate the renaming operation, duplicate name checking is not run until after all rename information has been read. This allows the above rename list to run without a conflict. If any error is encountered, no parts in the list are renamed.
Rename a Net
The command is:
*RENNET* RENAME NET
359
where oldname is the old net name and newname is the new net name.
Swap a Gate
The command is:
*SWPGATE* GATE1 GATE2
Swap Pins
The command is:
*SWPPINS* REFDES PIN1.PIN2
New Attributes
A new attribute in a part updates all parts of the same type. If the attribute name does not exist, it is added with the assigned value. An error is created if the part does not exist. Tip: Unsupported attribute types, such as net or net class, are ignored.
Deleted Attributes
Deleting an attribute for a part-type deletes the attribute on all parts of that type in the design. An error message is generated if the part or attribute name does not exist. If the attribute command specifies an object type not supported for general attributes, such as net or net class, the attribute command is ignored.
360
361
2. Select how you want to compare the names of design elements. Table 11-2. Choice Options for Comparing Names of Design Elements Option Means Compare Net Names and Compare differences using reference designators and net Reference Designators. names. Best used to minimize changes to routed traces. Selecting this Rename as Necessary. option may result in the positional swapping of parts. For example, if routed trace changes are minimized when R1 and R12 are swapped, simultaneously rename R12 to R1 and R1 to R12, and then reconnect R1 and R12 to the original nets. Compare Net Names and Reference Designators. Prefer to Add or Delete Parts Instead of Renaming. Compare Connectivity and Topology (not names). Rename as Necessary. Compare differences using reference designators and net names on the basis that few reference designators have been renamed and nets have not been renamed. Best used to minimize the positional swapping of parts, and the design disruption that may result. Compare differences without using reference designators or net names. Compare differences using pin names, part type names, and so on. Best used to compare designs when parts and nets have been renamed and minimal interconnect changes have been performed.
3. If you want the design comparison to exclude the unused pins net in the original design, select Ignore the Unused Pins Net and type the name of the unused pins net. Specify a net name of 47 characters or less. Use any alphanumeric characters except curly braces {}. asterisks *, or spaces. The unused pins net contains pins that have no logical net association. An unused pins net may be created when routing with SPECCTRA or with other tools in the PCB design process. Tip: If you clear this option and you update the PCB layout from PADS Logic, the unused pins net may be deleted. 4. If you have not already done so, click the Documents tab to select design files to compare and files output from the comparison. See also: Selecting Design Files and Output Options 5. Click Run to compare the designs. PADS Logic performs the comparison and creates the output files. Related Topics Updating the PCB Layout from PADS Logic
362
Net differences
This section lists any connected pins in the old design that are missing or Unmatched net pins in old connected to other nets in the old design. These pins are deleted from nets during the ECO process. This list provides net names in the old design design followed by unmatched pins in the net. If the net does not exist in the new design, all pins in the net are listed. Unmatched net pins in new design This section lists any connected pins in the new design that are missing or connected to other nets in the old design. These pins are added to nets during the ECO process. This list provides net names in the new design followed by unmatched pins in the net. If the net does not exist in the old design, all pins in the net are listed. This section of the report lists each object under the headings: Attribute Name, Old Value, and New Value. Subheadings, including object type, object name in old design, and object name in new design appear for each object in the list if different. Attribute differences are included only for objects that exist in both the old and new design. If an attribute is missing in either design, the value is listed as <no attr>. If the attribute exists, but has no value, it is listed as <no value>.
Attribute differences
363
Table 11-3. Sections of the Difference Report (cont.) Option Rules differences Description This section reports each object or object pair that has rules differences. Each object or object pair has three columns of information (Object Type, Object Name, and Rule Type) and a subheading that lists Rule Name, Old Value, and New Value. If a rule set is missing on an object in either the old or new design, then the old or new values of all missing rule entries are listed as <no rule>. The following example shows a high-speed rule change for net $$$1963 that changes the maximum length and minimum impedance rules.
NET $$$1963 HIGH_SPEED MAX_LENGTH 50000 MIN_IMPEDANCE 50.0 20000 70.0
This section reports the names of net classes that: Do not exist in one design or the other. (Classes that do not exist in the Original Design appear at the end of the section.) Match but have different names This section reports nets that are not in the Original Design and are added in the New Design. (The net class in the New Design has nets either not included in the Original Design or are included in different net classes in the Original Design.) This section lists: Each net class that has added nets in the New Design and the names of the added nets All of the nets in the net class if the net class is new (does not exist in the Original Design) This section reports nets that are in the Original Design but have been removed from the New Design. (The net class in the Original Design has nets either not included in the New Design or included in different net classes in the New Design.) This section lists: Each net class in the old design from which nets were removed and the names of those removed nets All of the nets in the net class if the net class does not exist in the New Design
Pin-pair group This section lists pin-pair groups that: differences Do not exist in one design or the other. (Pin-pair groups that do not exist in the Original Design appear at the end of the section.) Match but have different names.
364
Table 11-3. Sections of the Difference Report (cont.) Option Removed group pinpairs Description This section reports pin-pairs that are in the Original Design but removed from the New Design. (The pin-pair group in the Original Design has pinpairs either not included in the New Design or included in different groups in the New Design.) This section lists: Each group in the old design from which pin-pairs were removed and the names of its removed pin-pairs All of the pin-pairs in the group if the group does not exist in the New Design This section reports pin-pairs in the New Design that are not in the Original Design. (The pin-pair group in the New Design has pin-pairs either not included in the Original Design or included in different groups in the Original Design.) An ECO operation adds these pin-pairs. This section lists: Each group with added pin-pairs in the New Design and the names of added pin-pairs All of the pin-pairs in the group if the group is new (does not exist in the Original Design)
Added Parts
A new sheet is created and all new parts are added to the sheet. Parts are placed on a grid so that parts of a medium size do not overlap. No attempt is made to avoid overlapping of larger parts. An error message is generated if the reference designator of the newly added part already exists or if the part does not exist in the Library. Tip: The part is not added to the schematic if the reference designator already exists. If the part contains Signal Pins, these pins are included in the add pin function. Backward annotation does not currently support signal pins so an error message is created.
365
Changed Parts
If the changed part is a multigate part, all gates are updated to the new part type. An error message is generated if the new part does not exist in the design or in the Library, or if the gate or pin count is incompatible.
Deleted Parts
If the deleted part is a multigate part, all gates are deleted. An error message is generated if the part is still connected to a net or the part does not exist.
Joined Nets
The first net is renamed to be the same name as the second net.
366
Renamed Nets
All subnets of the old net on all sheets are renamed. If any of the subnets contain Power or Ground symbols without netnames, netnames are added to these symbols. An error message is created if the new net already exists.
Swapped Pins
PADS Logic creates an offpage symbol at each swapped pin.
367
368
5. In the scaling boxes, type the plot size to actual size ratio. Example: A 2 to 1 scaling results in a printout or plot that is twice the actual size. Tip: The Preview area graphically shows the position, orientation, justification, and scaling of the output. 6. In the Items area, select the check boxes for the items you want to include in your output. 7. In the Selected Color area, click a color tile, then in the Items area, click the tile to the right of the item to change its color. 8. Select the Plot Jobname check box to output the schematic name, time, and date. 9. Select the Print Window check box to print the displayed window.
PADS Logic Users Guide, PADS 9.2
369
Creating a PDF
You can create an intelligent PDF of your schematic, choosing which sheets you want to share and show to others in your organization. You can create the PDF in full-color or black and white, with hyperlinks to part attributes, and with search capabilities, making it easy to locate parts and nets. Once you locate a net, you can find other instances of it through the entire schematic, even when the net is on a different page. You can also create a black and white, nonsearchable PDF of your schematic. Requirement: To search a PDF, you must substitute the Stroke font with a System font. See also: Printing to PDF Tip: Adobe Acrobat Distiller is not required on your system to create a PDF. To create a PDF: 1. On the File menu, click Create PDF. 2. In the File Create PDF file dialog box, type the name of the PDF and then click Save. Tip: The default name of the file is the name of the schematic with a PDF extension. 3. In the Create PDF dialog box, in the Sheets to PDF list, select the schematic sheets you do not want to include in the PDF, and then click Remove. Tip: By default, all schematic sheets are selected for PDF creation.
370
4. To automatically open the resulting PDF, select the View PDF after creation check box. 5. To replace a stroke font in your schematic with a system font in the PDF, select the Replace stroke font with check box, and then select a font from the list. Use the Font style buttons to add Bold, Italic, or Underline styles. Restrictions: You can only search a PDF if you replace the Stroke font with a System font. There is no font size control. Text heights are already set for each text item in the design. The height will be converted to the nearest point size in the PDF.
6. To be able to view part attributes such as the reference designator and the part type in the PDF, select the Create hyperlinks that will display part attributes check box. Result: In the resulting PDF, you will see yellow boxes around each part. If you click inside the box, you will get a listing of the part attributes. 7. To enable finding the next instance of a net or bus in the PDF, select the Create hyperlinks that will pan through nets check box. Restriction: If the net name is not visible in the schematic, you will not be able to pan through the nets. Result: In the resulting PDF, you will see blue boxes around each net name and bus name. If you click inside the box, you will pan to the next instance of that net or bus. 8. To create hyperlinks on parts, net names, and buses without their yellow and blue boxes, clear the Visible rectangle around objects with hyperlinks check box. Result: In the resulting PDF, the hyperlinks will be invisible. 9. In the Color Scheme area, click the scheme of your choice. Tip: The colors used in the Color on Black or Color on White schemes are the same colors currently used in your schematic. The Black on White scheme shows all currently visible items in the schematic in black. 10. Click OK.
Plotting Output
You can output your designs to pen plotters or photo plotters. To set up plotting and send your output to a plotter: 1. On the File menu, click Plot. 2. Click Pen Plot or Photo Plot. 3. Set up output options.
PADS Logic Users Guide, PADS 9.2
371
4. Set up the pen plotter or photo plotter. 5. Preview your output. 6. Click Run. Tips: The Summary area lists the numbered available sheets you can plot, and the items contained in the sheets. The File Prefix box lists the prefix name of the file you want to plot.
372
1. In the Pen Plotter Setup dialog box, click Advanced. 2. Type the name of a different pen plotter you want to use. Exception: Do not reuse one of the existing, supplied device names. 3. Click the interface language the plotter uses: HPGL or HGML. 4. Set the plotter resolution by providing a scaling ratio. Type a number in the Multiplier and Divisor boxes. The ratio defined is the scale factor to convert from mils (0.001 in) to plotter units. Example: Most Hewlett-Packard plotters have a resolution of 0.025 mm or 1/40 mm. This means that a distance of one inch (1000 mils) is 1016 plotter units (25.4 X 40). So a ratio of 1016 to 1000 would be defined. The ratio actually used is 254 to 250 which is the same as 1016 to 1000. 5. Select the Origin at Center check box if the origin of the plotter is at the center of the paper. Clear this check box if the origin is in the lower left corner or other location. 6. Click OK to return to the Pen Plot Setup dialog box. 7. Click OK to return to the Plot dialog box. Related Topics Setting Up Photo Plots
373
4. Set the shape for a selected D-code. Select the Same Aperture for Flashes/Lines check box to draw lines and flashed items with the same aperture. Round and square shapes for lines will be gray. If you clear this check box, then you can click either Flash (to set a flash aperture) or Line (to set a draw aperture). In the Width box, type a diameter for round shapes. This box is unavailable if a width is not appropriate for the specified shape.
5. In the Aperture Count box, type the maximum aperture count. 6. Select the Augment on-the-fly check box to add apertures to the D-code list when photo plots are run if any newly created lines were added to the schematic. When you open the Photo Plotter Setup dialog box, the necessary apertures will be present.
374
Click None to retain leading and training zeros. Click Leading to suppress zeros before the decimal point. Click Trailing to suppress zeros after the decimal point.
6. Define how to draw arcs and circles: Click None if your photo plotter does not support circular interpolation. Arcs and circles are drawn as small straight-line segments. Click Quadrant if your photo plotter does not support full, 360-degree circular interpolation. Click Full if your photo plotter supports full, 360-degree circular interpolation.
7. To set the plotting size, click a Plotting size button, or click Other to define a custom size. If you click Other, type the X and Y dimensions to use. 8. Select the Suppress Repeated Coords check box to eliminate repeated coordinates from the output file. 9. Click OK to return to the Photo Plotter Setup dialog box. 10. Click OK to return to the Plot dialog box. Related Topics Setting up Pen Plots
Printing Output
To set up printing and send your output to a printer: 1. On the toolbar, click the Print button. 2. Select the name of the printer to which you want to print. 3. Set up print options. 4. Click Network to display the Connect to Printer dialog box. 5. Preview your output. 6. Click OK to send the output to the printer. Related Topics Printing to PDF PostScript Printing to a File
375
Printing to PDF
You can print your schematic sheets to a single PDF. The resulting PDF is a non-searchable, black and white image of your schematic. To create a color PDF that is searchable, see the Creating a PDF topic. Restriction: You must have Acrobat Distiller installed before you can print to PDF. To print to PDF: 1. On the toolbar, click the Print button. 2. In the Print dialog box, select Acrobat Distiller in the Printer name list. 3. Click OK. Related Topics Creating a PDF Plotting Output Printing Output
376
2. Select the PostScript printer you want to use, then right-click and click Properties. 3. Click the Ports tab. 4. In the Port column, select the Print to File check box. Tip: This procedure works with local printers. If you are using network printers, you may not have access rights to select or change the port information. 5. Click OK. Related Topics Printing to PDF Plotting Output Printing Output
377
378
Chapter 13 Cross-probing
The following topics describe cross-probing: Cross-probing Between PADS Products PADS Layout Link Design Tab Document Tab Selection Tab Preferences Tab ECO Names Tab PADS Router Link PADS Router Document Tab PADS Router Selection Tab
For instructions to cross-probe between PADS products, see the following sections in this topic: Cross-probing Between PADS Logic and PADS Layout Cross-probing Between PADS Logic and PADS Router
379
2. On the Connect to PADS Layout dialog box, click one of the following tabs, and then set an option or perform a task: Selection TabManages the selections sent to, and received from, PADS Layout. Design TabAutomates the ECO, File Compare, and other functions using the link to PADS Layout. Document TabAllows you to open a file or create a new file in PADS Layout. This tab also displays the name of the PADS Layout design in memory to which PADS Logic is connected. Preferences TabManages attribute, decal, and unused pins net options for design comparison and ECO functions on the Design tab ECO Names TabManages name comparison options for design comparison and ECO functions on the Design tab. 3. Proceed with cross-probing.
380
2. On the Connect to PADS Router dialog box, click one of the following tabs, and then set an option or perform a task: PADS Router Selection TabManages the selections sent to and received from PADS Router. PADS Router Document TabAllows you to open a file or create a new file in PADS Router. This tab also displays the name of the PADS Router file in memory to which PADS Logic is connected. 3. Proceed with cross-probing.
Design Tab
PADS Layout Link (Tools menu > PADS Layout), lets you not only cross-probe between PADS Logic and PADS Layout but also: Export a netlist to PADS Layout Compare the netlist of the schematic to the layout design Forward and backward annotate
381
Use the Design tab of PADS Layout Link to specify the operation you want to perform. Table 13-1. Design Tab Choices Dialog Box Item Send Netlist Function Exports a netlist with rules from the current PADS Logic schematic to the current PADS Layout design. If no errors are found in the netlist, PADS Layout is updated. If errors are found in the netlist, the error report file is displayed in a Notepad window, a link to the error file is displayed in the Output Window, and you are asked whether you want to continue. If you click Yes, PADS Layout is updated. If you click no, the operation is cancelled and PADS Layout is not updated. Includes design rules in the exported netlist. Tip: Before sending the netlist, run a connectivity report to check for possible connectivity errors. For information, see Connectivity Report. Compares the netlist in the current PADS Logic schematic to the netlist in the current PADS Layout design. If no errors are found in either of the netlists, any differences are reported in the default text editor. If errors are found in either of the netlists, the error report file is displayed in a Notepad window, a link to the error file is displayed in the Output Window, and you are asked whether you want to continue. If you click Yes, the comparison operation continues. If you click no, the operation is cancelled. See also: Preferences Tab, ECO Names Tab ECO To PCB button Compares the netlist in the current PADS Logic schematic to the part and netlist in the current PADS Layout design. If no errors are found in either of the netlists, the PADS Layout design is updated. Tip: Overwriting of non-blank attribute values with blank attribute values from the ECO file is allowed/prevented by the Allow overwriting of attribute values in design with blank values from library check box in the Design tab of the Options dialog box. If errors are found in either of the netlists, the error report file is displayed in a Notepad window, a link to the error file is displayed in the Output Window, and you are asked whether you want to continue. If you click Yes, the PADS Layout design is updated. If you click No, the operation is cancelled, and PADS Layout is not updated. See also: Preferences Tab, ECO Names Tab
382
Table 13-1. Design Tab Choices (cont.) Dialog Box Item ECO From PCB button Function Compares the netlist in the current PADS Logic schematic to the part and netlist in the current PADS Layout design. If no errors are found in either of the netlists, the PADS Logic schematic is updated. Tip: Overwriting of non-blank attribute values with blank attribute values from the ECO file is allowed/prevented by the Allow overwriting of attribute values in design with blank values from library attributes check box in the Design tab of the Options dialog box. If errors are found in either of the netlists, the error report file is displayed in a Notepad window, a link to the error file is displayed in the Output Window, and you are asked whether you want to continue. If you click Yes, the PADS Logic schematic is updated. If you click No, the operation is cancelled, and PADS Logic is not updated. See also: Preferences Tab, ECO Names Tab Includes design rules in the comparison that occurs when you select Compare PCB, ECO to PCB, or ECO from PCB.
Show Net List errors Specifies to open the Net List errors report once it has been generated. report check box The file name is padsnet.err. Tip: If you click to clear, you can still open the file from the Output window. Disconnect button Breaks the OLE connection between PADS Logic and PADS Layout.
Document Tab
The Document tab allows you to open a file or create a new file within PADS Layout. The name of the .pcb file to which PADS Logic is connected also appears in this tab. Table 13-2. Document Tab Choices Dialog Box Item New Open Disconnect Function Creates a new file within PADS Layout. PADS Logic automatically connects to this file. Allows you to locate and open an existing PADS Layout file. PADS Logic automatically connects to this file. Breaks the OLE connection between PADS Logic and PADS Layout.
383
Selection Tab
Manages the selections sent to and received from PADS Layout. Table 13-3. Selection Tab Choices Dialog Box Item Sent Selection Receive Selections Function Contains a list of PADS Layout items corresponding to the objects selected in PADS Logic. Enables PADS Logic to automatically locate the item corresponding to the PADS Layout selection. When Receive Selections is selected, the PADS Logic items corresponding to the items selected in PADS Layout are listed in the Selection list on the Selection toolbar. Breaks the connection between PADS Logic and PADS Layout.
Disconnect
384
Preferences Tab
The ECO Names tab manages options for the compare and ECO functions in the Design tab. Table 13-4. Preferences Tab Choices Dialog Box Item Ignore Unused Pins Net Function Select this option if you want to ignore the unused pins net in the original design and preserve the existing unused pins net in the design you're updating. If you clear this option, the unused pins net may be deleted. The unused pins net contains pins that have no logical net association. An unused pins net may be created when routing with SPECCTRA or with other tools in the PCB design process. If you select Ignore Unused Pins Net, type the name of the unused pins net. The maximum netname length is 47 characters. You can use any alphanumeric characters except curly braces { }, asterisks *, or spaces. The default name is NOT_CONNECTED. Controls whether part attributes are included in the netlist. PADS Logic evaluates parts that have different attributes as different part types. Therefore, if you select Include Part Attributes when you generate the netlist, you must also select Include Part Attributes when you perform an ECO comparison. Otherwise the comparison considers the part types to be different and reports errors. Controls whether net attributes are included in the netlist. PADS Logic checks net names on the schematic against the PADS Layout design. Therefore, if you select Include Net Attributes when you generate the netlist, you must also select Include Net Attributes when you perform an ECO comparison. Otherwise the comparison considers the net types to be different and reports errors.
Net Name
Compare PCB Decal Compares PCB decal assignments between the schematic in PADS Assignments Logic and the design in PADS Layout. Updates decal assignments in PADS Layout.
385
386
Table 13-6. PADS Router Document Tab Choices (cont.) Dialog Box Item Open Disconnect Function Allows you to locate and open an existing PADS Router file. PADS Logic automatically connects to this file. Breaks the OLE connection between PADS Logic and PADS Router.
Disconnect
387
388
389
The following topics describe OLE in PADS Logic: Inserting OLE Objects in PADS Logic How OLE Objects are Displayed Selecting OLE Objects Moving and Sizing OLE Objects Changing an OLE Object's Icon or Label Converting an OLE Object to Another Type Editing OLE Objects OLE and Print/Plot Deleting OLE Objects Redrawing a Screen Containing OLE Objects OLE and View Menu Commands Changing the OLE Object Background Color Saving OLE Objects
Restriction: Insertion of PADS Logic, Layout or Router files as OLE objects in other files (including other PADS files) is not supported. Any PADS Logic, Layout or Router file inserted in another file will not behave properly and cannot be edited within the container application (Visual Editing). There are three ways of inserting an OLE object in a PADS Logic schematic: Insert a new (empty) embedded object, and then create the object's content. For instance, insert a new Word document, then edit it with Word from within the schematic. Insert a copy of an existing application or file as an embedded object. Embedded objects are not updated when the original file is updated. Insert a link to an existing application or file as a linked object. Linked objects are updated whenever the file they link to is updated.
The following sections of this topic describe how to insert OLE objects in a PADS schematic: Inserting a New Embedded OLE Object
390
Inserting an Existing File as an Embedded Object Inserting an Existing File as a Linked Object
4. To display the new object in the schematic as an icon, check the Display As Icon check box. The icon that will be displayed appears beneath the check box. Uncheck the check box to display the entire object; for example, to display the actual Word document instead of a Word icon. 5. Click OK. The application associated with the object type you selected opens, and you can edit the new object's content: 6. If the application is an OLE Linking and Embedding Server, it opens inside PADS Logic, but runs in the background. The application's toolbar takes over PADS Logic's toolbar. You can then work with the source application as you would if it was started outside PADS Logic. This is called Visual Editing. Click outside the object, and the PADS Logic toolbar takes over again. You can continue to design in PADS Logic. The application continues to run in the background; therefore, you can click on the object and work in the source application at any time. If the application associated with the object is not an OLE Linking and Embedding Server, the application opens in a new window. 7. When you are finished editing, close the object. You can reopen the object at any time by double-clicking on it.
391
1. On the Edit menu, click Insert New Object. 2. From the Insert Object dialog box, select Create from File. 3. In the File edit box, type the pathname of the file to insert, or click the Browse button to search for the file. 4. Uncheck the Link checkbox to insert the OLE object as an embedded object. 5. To display the object as an icon in the schematic, check the Display As Icon check box. The icon that will be displayed appears beneath the check box. Uncheck the check box to display the entire object; for example, to display the actual Word document instead of a Word icon. 6. Click OK. The object is inserted in the schematic.
392
If the source application is not installed and registered on your system, then PADS Logic can only display the inserted OLE object as an icon. It cannot open or display the OLE object as it would appear in the source application. PADS Logic also displays the OLE object as an icon if the object is an application.
Tip: To select PADS Logic items under an OLE object, move the OLE object. When you select an OLE object: A pop-up menu is available that lists all the commands you can apply to the OLE object. Click the right mouse button when the object is selected to open the pop-up menu. The object is selected just as a non-text object in Word is selected, using a rectangular area with sizing handles to indicate that it is selected. OLE objects do not use the PADS Logic method of highlighting to indicate selection state.
393
To Move an OLE Object: 1. Select the object. 2. Click and hold the left mouse button. 3. Move the cursor to move the object. 4. Release the mouse button once the object is in the correct location. To Size an OLE Object: 1. Select the object. 2. Click and hold the left mouse button on one of the sizing handles. 3. Move the cursor; the object changes size according to the cursor movements. 4. Release the mouse button when the object is sized correctly.
394
The following sections of this topic describe how to edit an objects link: Changing a Linked OLE Object's Source File Breaking the Link to a Linked OLE Object's Source File Setting the Update Mode For a Linked OLE Object Manually Updating a Linked OLE Object
396
1. On the Edit menu, click Links. 2. From the list in the Links dialog box, select the object whose source file you want to change. 3. Click the Change Source button. 4. In the Change Source dialog box, browse for and select the new source file for the object, and click Open. The object is linked to the new source file.
397
1. On the Edit menu, click Links. 2. From the list in the Links dialog box, select the object you want to update. 3. Click the Update button; the object is updated. Related Topics Open, Edit, Convert OLE Objects Cut, Copy, and Paste PADS Logic OLE Objects In-place Visual Editing
398
399
Click File > Update Document. This forces a redraw of the object. Set a preference for PADS Logic OLE objects in the Global tab of the Options dialog box, see Schematic Editor Design Tab Options. When you select the Update on Redraw check box, the object in the container application will update whenever you perform a redraw in the separate editing window. For best performance clear this option.
To return to the container application, select File > Exit and Return to <host>. Tip: If you want to save the object you edit in the separate window, you can select Save Copy As from the File menu. The object is really a copy of the original, and this command lets you save this copy. You cannot open other files, create new files, or save original designs in the separate window. Related Topics Open, Edit, Convert OLE Objects Edit OLE Links Editing OLE Objects Cut, Copy, and Paste PADS Logic OLE Objects
400
401
402
Spice Simulation
The following topics describe Spice simulation: Creating an Analog Schematic for Simulation Creating a SPICE Netlist Setting up AC Analysis Setting up DC Source Sweep Analysis Setting up the SPICE Netlister Setting up Transient Analysis
403
Tip: Only complete schematic sheets can be simulated. 4. If the design is hierarchical, select the Include Subsheets check box to include any underlying hierarchy. 5. In the Output Formats box, select the target SPICE software.
404
6. Click Simulation Setup to change or enable the default simulation values. Tip: Your simulation values are saved for future SPICE netlisting. See also: Setting up the SPICE Netlister 7. Click OK to create the SPICE netlist. Result: An output window displays the resulting netlist. All warnings, errors, and comments during netlisting are embedded in the final netlist. You can edit the netlist before starting simulation. Related Topics Creating an Analog Schematic for Simulation
Setting up AC Analysis
As part of setting up your SPICE netlister, you can set options specifically for an AC analysis. 1. On the Tools menu, click SPICE Netlist. 2. In the SPICEnet dialog box, click Simulation Setup. 3. In the Simulation Setup dialog box, click AC Analysis. 4. In the Interval area, type the number of points and then select your choice of variation: Decade, Octave, or Linear. 5. In the Frequency area, type a Starting and Ending frequency. Tip: Your simulation setup values are saved for future SPICE netlisting. For more information on AC Analysis, see the Help in your SPICE simulator. Related Topics Setting up the SPICE Netlister
405
5. In the Start box, type the starting voltage for the sweep. 6. In the Stop box, type the stopping voltage for the sweep. 7. In the Step box, type the incrementing values for the sweep. Tip: Your simulation setup values are saved for future SPICE netlisting. For more information on DC Source Sweep Analysis, see the Help in your SPICE simulator. Related Topics Setting up the SPICE Netlister
Tip: Your simulation setup values are saved for future SPICE netlisting. For more information on Simulation Setup, see the Help in your SPICE simulator. Related Topics Creating a SPICE Netlist Setting up AC Analysis Setting up DC Source Sweep Analysis Setting up Transient Analysis
406
Basic Scripting
The following topics describe how to do basic scripting with PADS Logic: Managing Basic Scripts Managing the Sax Basic Engine Basic Sample Scripts
407
408
There are four types of scripts: scripts, code modules, object modules, and class modules. You can create a script that calls another script. For example, ScriptA can call ScriptB. You can also create a script that runs a series of scripts, or a "master" script. For example:
'$Include: "scriptA.bas" '$Include: "scriptB.bas" '$Include: "scriptC.bas" Sub Main Call scriptA Call scriptB Call scriptC End Sub
Editor Colors
The Basic Script Editor displays source code using different colors. The color is contextsensitive: when you place the cursor on the text and press F1, the correct help file opens to the correct help topic. For example, if the cursor is on a PADS Logic Automation Object (purple) when you press F1, the Automation Server On-line Help appears. The text colors represent: Table 15-1. Basic Script Editor Color Representations Color Blue Black Cyan Purple Red Green Represents Basic Keywords User Variables Basic Functions PADS Logic Automation Objects or Members Errors Comments
409
Demonstrates a simple dialog box using the Basic dialog editor. Demonstrates a standard dialog box using the Basic dialog box editor. Demonstrates a complex dialog box using the Basic dialog box editor. Provides a "real life" example. Lists all design files in the default files directory. Selecting a file from the list will open that file in PADS Logic. Lists all components and nets. Allows you to enter a number of pins. All parts with that number of pins are selected.
410
Bill of Materials.BAS Modeless Attributes.BAS Modeless Qm Part.BAS Modeless Visibility.BAS PADS Net List Without Rules.BAS
411
Table 15-4. Basic Sample Scripts/Advanced Listing (cont.) Script file name PADS Logic Script Wizard.BAS Sheet Hierarchy to Excel.BAS Description Generates a Wizard dialog box, which you use to create a Basic report. Creates a sheet hierarchy report in Excel, which allows you to cross-probe between PADS Logic objects and the Excel cells containing the object names.
To use the Installed Options dialog box: Use the Options tab to display the status of your licensing options. If you are using floating licensing, use this tab to view or control the availability of different options from the floating license server (that is, to get status and enable or disable different options). If you are using node-locked licensing, you generally use this tab to verify the list of licensing options tied to your hardware key. Use the License File tab to select and then view license file information, either the actual license file (for node-locked licensing) or the feature usage status associated with a server license (for floating licensing).
412
Tip: For node-locked licensing, all of the licensed options are automatically enabled. For floating licensing, the first person to take a license controls the available options. To enable all license options: Select the Check Out All Available Options check box to enable all license options.
To disable options or enable individual options: 1. Clear the Check Out All Available Options check box to allow the enabling or disabling of individual license options. 2. Click Select All to enable all available options. 3. Click Select None to disable all available options. This is helpful if you want to start with no options in place. Then you can enable only those options you want. 4. Select options by selecting the check boxes to the left of the options in the Options list. 5. Click OK. Tips: If you can check out the option, the Status is Available. If you can not check out the option, either because it is not part of your PADS Logic package or because the licenses are already in use, the Status is Not Available. When the options are Not Available, you will not be able to access the options in PADS Logic (that is, the feature will be grayed out).
Related Topics Installed Options Dialog Box Viewing a License File or License Status License File Definition
413
2. Click View. The bottom portion of the screen displays the contents of the selected file.
Options
The lines in the following example license file show the available options. Your license file may differ from this one, depending on the options you purchased.
INCREMENT viewdraw040 mgcld \
Controls entry into the program and provides access to the basic PADS Logic schematic functions. This feature is not listed on the Installed Options dialog.
INCREMENT plogpdf mgcld \
414
OLE Background
The fundamental question OLE addresses: How can a system be designed such that binary components from different vendors - written in different parts of the world at different times and using different programming languages - are guaranteed to interoperate? Dr. Dobbss Journal, January 1995. Technically, OLE stands for Object Linking and Embedding, but that is now an insufficient title. Today, OLE is a continuously growing set of features (including Object Linking and Embedding, Automation, Compound Documents, Editing, ActiveX, DCOM, etc.) based on Microsoft's version of a framework allowing heterogeneous applications to communicate with each other. Automation is a feature of OLE that defines a protocol for applications to share their data and functionality with any other application using that same protocol. Automation involves a server and a client. A server is the entity that makes available some data and functionality. A client, also called the controller, is the entity that uses the server's data and functionality. Different people at different organizations can author servers and clients at different times, using different development tools and languages. The only required commonality is that they use the same Automation communication protocol. PADS Logic is an Automation server because it makes some data (its database) and some functionality (such as opening design files and selecting objects) available to other applications. A client, such as Excel, can access PADS Logic's data and functionality using the Automation protocol. The Automation implementation in PADS Logic allows third party companies and users to: Integrate their products with PADS Logic.
415
Expand PADS Logic's set of functionality. Customize existing PADS Logic features. Automate PADS Logic tasks using standard scripting languages (such as Basic).
Object Hierarchy
The following figure shows the Object Hierarchy: Figure 16-1. Object Hierarchy Diagram
416
Tips:
You need to install the proper development tool on your system to properly run these samples. In other words, to run the Microsoft Excel version of any of the sample, install Excel on your system. To run the Visual Basic version, install Visual Basic on your system. To run the Visual C++ version, install Visual C++ on your system. If you encounter difficulty with one of the samples or with your own client application, see the Troubleshooting topic, which provides hints on common Automation problems.
Troubleshooting
If a sample doesn't work as described, check the following: Make sure that only one instance of PADS Logic is running. By definition a server is unique. Several instances of the same server may create confusion for clients. Exiting and restarting PADS Logic may help in some cases because PADS Logic selfregisters as an Automation server upon start up. Make sure that you don't have another instance of PADS Logic running in the background, using the Task Manager. Make sure to disconnect all clients from PADS Logic before exiting the client application. You may need to reboot the machine if the above doesn't help.
417
Goal To introduce the basics of writing a PADS Logic Automation client application using Microsoft Visual C++ 5.0 (with MFC), Microsoft Visual Basic 5.0, and Microsoft Excel 97. One sample is provided for each of these applications. Each version of this sample demonstrates, in the respective programming language, how to: Tips The source code for this sample is in the C:\PADS Projects\Samples\Scripts\Logic\AutomationClient folder, if you installed the OLE samples during PADS Logic installation (Typical). The code is well commented, and you may use it when developing your own client application. Make sure you copy the OLE sample from the distribution CD to your hard drive before running the sample. To run the sample client, start PADS Logic and open a Schematic file. Prepare the communication between your client and the PADS Logic Automation Server. Prepare a pointer to PADS Logic's top level Automation object. Connect and disconnect from PADS Logic, regardless of whether PADS Logic is running or not. Access simple data from PADS Logic. Add client notifications, also called client callbacks, to notify the client when something changes in PADS Logic. Access the PADS Logic database components and retrieve detailed information about each component. Add full-duplex cross-probing and demonstrate the server locking mechanism to improve Automation performance.
Specification The client sample is a dialog box that can connect and disconnect at runtime from the PADS Logic server. It can connect to an existing, running instance or a new instance of PADS Logic. An example of the Visual Basic version appears in Figure 16-2. The Visual C++ version of this sample looks almost identical. The Excel 97 version is different because Excel is primarily an application, not a development environment. The Excel version of this sample outputs information in an Excel worksheet. The client sample allows selection cross-probing between the client and the server; the list of selected objects in PADS Logic matches the list of selected items in the Client list box at all
418
times, and vice-versa. The selection cross-probing supports multiple selection. If you doubleclick an item in the list box, extended information about the object appears in a dialog box. The client refreshes its values automatically, matching the selected components in PADS Logic at all times. Similarly, a user selection change in the client changes the PADS Logic selection list. Figure 16-2. Client Sample of Visual Basic
Code Samples
Many topics in this Help file provide Basic code samples to illustrate how to use Automation properties, methods, or events. You can run code samples as described in either of the following topics: Running Code Sample in PADS Logic on page 420 Running Code Samples Outside of PADS Logic on page 421
419
See the topic Enhancing Sample Code on page 422 and the topic Troubleshooting the Code Samples on page 423 for more information on running code samples. Disclaimer The code samples in the PADS Logic Automation Server Help are freeware. Mentor Graphics provides these samples as a courtesy to its users. Freeware is provided as is and Mentor Graphics makes no warranties with respect to freeware, either expressly or implied, including any implied warranties of merchantability or fitness for a particular purpose.
420
Figure 16-3. Code Sample Pasted into Sax Basic Engine Dialog Box
421
5. Add code to the end of the sample to disconnect the application from PADS Logic. The following graphic shows the code sample for the Application.ActiveDocument property pasted and modified in the Microsoft Excel 97 Basic editor. See the host application help files for more information. Figure 16-4. Code Sample in Microsoft Excel 97 Basic Editor
Disclaimer The code samples in the PADS Logic Automation Server Help are freeware. Mentor Graphics provides these samples as a courtesy to its users. Freeware is provided as is and Mentor Graphics makes no warranties with respect to freeware, either expressly or implied, including any implied warranties of merchantability or fitness for a particular purpose.
422
Common mistakes include forgetting to import PADS Logic references and forgetting to prefix PADS Logic Automation constants. Disclaimer The code samples in the PADS Logic Automation Server Help are freeware. Mentor Graphics provides these samples as a courtesy to its users. Freeware is provided as is and Mentor Graphics makes no warranties with respect to freeware, either expressly or implied, including any implied warranties of merchantability or fitness for a particular purpose.
423
424
425
Automation Constants The following list identifies the Automation Constants: PlogObjectType PlogUnit PlogGridType PlogPinElectricalType PlogASCIIVersion PlogNetListVersion PlogGateVisibility PlogDefaultPosition PlogMeasureFormat PlogLibraryItemType
Application Object
The Application object is the root-level object in the PADS Logic Automation Server object hierarchy, and represents the entire PADS Logic application. This object is usually the first object an Automation client connects to, before accessing any PADS Logic object, property, or method.
Application Properties
The following list identifies the Application Properties: Application.ActiveDocument Application.Application Application.DefaultFilePath Application.FullName Application.Libraries Application.Name Application.ObjectType Application.Parent Application.ProgressBar Application.StatusBarText Application.Version Application.Visible
Application Methods
The following list identifies the Application Methods: Application.CreateLibrary Application.ExportLibraryItems Application.GetConfigParamInt (method) Application.GetConfigParamString (method) Application.GetLibraryItems Application.LockServer Application.Measure Application.OpenDocument (method) Application.OpenDocumentNoLock (method) Application.OpenTempDocument (method) Application.Quit (method) Application.RunMacro Application.UnlockServer
PADS Logic Users Guide, PADS 9.2
426
Application Events
The following list identifies the Application Events: Application.OpenDocument (event) Application.ProgressChange Application.Quit (event)
427
Application.ActiveDocument
This property returns the active PADS Logic document. Prototype ActiveDocument As Document Arguments None Comments The active document represents the open schematic. Sample The following sample code retrieves the name of the open schematic using the Document.Name property. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "You are working with " & ActiveDocument.Name End Sub
428
Application.Application
This property returns the PADS Logic Application object. Prototype Application As Application Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is normally used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications. Use the property to quickly identify the application to which the object belongs.
429
Application.DefaultFilePath
This property sets or returns the path that PADS Logic use to open schematic files. Prototype DefaultFilePath As String Arguments None Comments This property checks the FileDir folder entry in the powerlogic.ini file. When you set this property to a new value, the .ini file entry also changes. For example, C:\MentorGraphics\<latest_release>PADS\SDD_HOME\Programs is the path when you install PADS Logic using the default installation settings. Sample The following sample code changes the PADS Logic default file path and notifies the client of this change. See Code Samples on page 419 for more information on running this sample.
Sub Main oldPath = DefaultFilePath DefaultFilePath = "C:\TEMP" MsgBox "The default file path used to be " & oldPath & " and it was just changed to " & DefaultFilePath End Sub
430
Application.FullName
This property returns the filename of the PADS Logic application, including its path. Prototype FullName As String Arguments None Comments For example, this function can return the string C:\MentorGraphics\latest_releasePADS\SDD_HOME\Programs\PowerLogic.exe. Sample The following sample code displays the common name and the actual .exe name of PADS Logic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Hi, my name is " & Name & " and I am located in " & FullName End Sub
431
Application.Libraries
This property returns the collection of available libraries, or a specific library. Prototype Libraries as Collection Libraries(name as String) as Library Object Arguments Argument name Comments None Sample This sample displays the number of available libraries. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Number of libraries: " & Libraries.Count End Sub
432
Application.Name
This property returns the name of the PADS Logic application. Prototype Name As String Arguments None Comments For example, in PADS Logic this property returns the string PowerLogic. This property is the default property for the Application object. Sample The following sample code displays the common name, the version, and the actual .exe name for PADS Logic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Hi, my name is " & Name & " version " & Version & " and I am located in " & FullName End Sub
433
Application.ObjectType
This property returns the type of this object. Prototype ObjectType As PlogObjectType Arguments None Comments None Sample The following sample tests the ObjectType property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set items = GetLibraryItems() For Each item In items If item.ObjectType <> plogObjectTypeLibraryItem Then MsgBox "Test failed" End If Next item End Sub
434
Application.Parent
This property returns the parent of the object. Prototype Parent As Application.Application Arguments None Comments None
435
Application.ProgressBar
This property sets or returns current value of the Progress Bar, in percentages. Prototype ProgressBar As Integer Arguments None Comments This property allows you to retrieve current progress of long batch process running in PADS Logic, or to show progress of long Basic scripts. Set the value greater than 0 or less than 100 to deactivate the Progress Bar. Use this property with Application.StatusBarText. Sample The following sample demonstrates this property. See Code Samples on page 419 for more information on running this sample.
Sub Main StatusBarText = "My Batch Process ..." 'show progress text For i = 0 to 100 ProgressBar = i Next ProgressBar = -1 'deactivate progress bar StatusBarText = "" 'hide progress text End Sub
436
Application.StatusBarText
This property sets or returns the text displayed on PADS Logic Status Bar. Prototype StatusBarText As String Arguments None Comments To set the PADS Logic Status Bar text to nothing, set this property to an empty string ( ). Sample The following sample displays a message on PADS Logic Status Bar. See Code Samples on page 419 for more information on running this sample.
Sub Main StatusBarText = "Cool! I can even print my own messages in here!" End Sub
437
Application.Version
This property returns the PADS Logic version. Prototype Version As String Arguments None Comments This property returns the application version as a string with the following format: <major>. <minor>, for example 3.0. Sample The following sample displays application name and version. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Hi, my name is " & Name & " version " & Version End Sub
438
Application.Visible
This property sets or returns whether PADS Logic is visible. Prototype Visible As Boolean Arguments None Comments This property is usually used in the following cases: When an Automation client starts the PADS Logic Automation server using an asynchronous OLE Automation call, such as the Basic function CreateObject. The Automation server always starts as invisible (this is a client/server rule). You can, therefore, use this property to make PADS Logic visible if needed. When a client attempts to shut down PADS Logic (see Application.Quit (method)), by making PADS Layout invisible, disconnecting from it, and letting the server shut down appropriately. When a client needs to make the server window the active window, making it appear on top of other application windows.
Sample
The following sample makes PADS Logic invisible, waits a second, and then makes it visible again. See Code Samples on page 419 for more information on running this sample.
Sub Main Visible = False Wait 1 Visible = True End Sub
439
Application.CreateLibrary
This method returns a specific library or a collection of available libraries. Prototype Libraries as Collection Libraries(Name as String) as Library Arguments Argument name Comments None Sample The following sample displays the number of available libraries. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Number of libraries: " & Libraries.Count End Sub
440
Application.ExportLibraryItems
This method generates a PADS-format ASCII file from the library items. Prototype ExportLibraryItems (filename as String, items as Collection) Arguments Argument filename items Comments Up to four files can be generated. Sample This sample subroutine exports library items beginning with R from a library to a specified file. See Code Samples on page 419 for more information on running this sample.
Sub Main Set coll = GetLibraryItems(, "R*") ExportLibraryItems("C:\sample", coll) End Sub
Description Name of the file to which to export the library item. Do not specify an extension. Optional. Collection of items to export. If omitted, all items from the collection are exported.
441
Application.GetConfigParamInt (method)
This method retrieves the integer value from the specified parameter and section in the powerlogic.ini file. Prototype GetConfigParamInt( sectionName as String, paramName as String, defaultValue as Integer) as Integer Arguments Argument sectionName paramName defaultValue Return Values The parameter value or default value. Sample
MsgBox Application.GetConfigParamInt("general", " Object Selector Filter", 0)
Description Name of the section containing the parameter name. Name of the parameter whose associated integer vlaue is to be retrieved. If parameter name cannot be found the default value is returned.
442
Application.GetConfigParamString (method)
This method retrieves the string from the specified parameter and section in the powerlogic.ini file. Prototype GetConfigParamString( sectionName as String, paramName as String, defaultValue as String) as String Arguments Argument sectionName paramName defaultValue Return Values The parameter value or default value. Sample
MsgBox Application.GetConfigParamString("directories", " FileDir", " C:\PADS Projects\")
Description Name of the section containing the parameter name. Name of the parameter whose associated string is to be retrieved. If parameter name cannot be found the default value is returned.
443
Application.GetLibraryItems
This method returns the collection of library items in all available libraries, a collection of all items of a given type, or a specific item. Prototype GetLibraryItems (type as PlogLibraryItemType, name as String) as LibraryItem Object Arguments Argument type name Comments None Sample This sample displays the number of available library items. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Number of library items: " & GetLibraryItems().Count End Sub
Description Type of item(s) to retrieve. Optional; default value is plogLibraryItemTypeAll. Name of the item to retrieve. Optional; may include wildcards, ranges, lists.
444
Application.LockServer
This method locks the PADS Logic Automation server. Prototype LockServer() Arguments None Comments To speed OLE call processing, use this function when your client makes many OLE calls to the PADS Logic server. Warning: Never forget to unlock a locked server. The server locking mechanism speeds up processing by a factor of 2 to 8 times the access time of the OLE server method or property calls. The server locking mechanism is dangerous because it disables many internal background tasks in the server, such as memory cleanup and visual updates. These server tasks must be performed regularly, but are disabled so that OLE incoming calls can be processed quickly. You typically lock the server when your client needs to make more than hundreds of consecutive calls to the server. Do not keep the server locked for too long (not more than a few minutes). It is not necessary to lock the server when your client needs to make just a few OLE calls; speed does not greatly improve in this case. Sample The following sample code shows how to use this method. See Code Samples on page 419 for more information on running this sample.
Sub Main LockServer ' Do something lengthy, which makes many calls to the PADS Logic Automation server UnlockServer End Sub
445
Application.Measure
This method creates and returns measure value object. Prototype Measure(Value As Variant, [DefaultUnit As String = ""]) As Measure Arguments Argument Value DefaultUnit Comments This property parses string value such as 100pF and creates special object from which you can extract additional information such as real value, unit name, or quantity name. If the Value parameter contains unit information then DefaultUnit parameter is ignored. If the Value parameter does not contain unit information and DefaultUnit is empty then a new Measure of Size/Dimension is created, and Value parameter will be interpreted by default as a number in current PADS Logic design units (mils). If the parser cannot recognize measure in the Value parameter, it creates a dummy Measure Object with the Measure.Value property equal to 0.0 and the Measure.Text property equal to the Value parameter. Notice that there is a difference between Measure (100, pF) and Measure (100pF). Though both versions represent the same physical measure 100pF, the first one stores exact text representation without units. Sample The following sample adds a measure type attribute to part C1 assuming that it exists in open design. See Code Samples on page 419 for more information on running this sample.
Sub Main Set C1 = ActiveDocument.Components("C1") C1.Attributes.Add "Capacitance", Measure("500pF") MsgBox C1.Attributes("Capacitance") 'displays 500pF End Sub
Description String or number representing a measure value including optional prefix and optional physical unit. [Optional] String that contains default prefix and/or physical unit.
446
Application.OpenDocument (method)
This method opens a PADS Logic schematic file. Prototype OpenDocument(filename As String) As Document Arguments Argument filename Return Values If the function succeeds, the return value is the newly opened Document Object. If the function fails, the return value is Nothing. Comments If filename does not contain the full path to the file, PADS Logic uses the path specified by the Application.DefaultFilePath property to locate the file. If filename is Nothing, or is an empty string, a new blank schematic file is created. If the file specified by filename cannot be found or cannot be opened, the return value is current document. This method does not check if the currently opened file was saved or not. It is the client's responsibility to use the Document.Saved property to check if the open schematic needs to be saved. This method generates an Exception if a PADS Logic failure has occurred while processing it. Sample The following sample code opens DEMO.SCH, assuming that it exists in the folder specified in the Application.DefaultFilePath property. The sample then displays the name of the opened file. See Code Samples on page 419 for more information on running this sample.
Sub Main OpenDocument(DefaultFilePath & "\Samples\DEMO.SCH") MsgBox ActiveDocument.FullName & " has just been opened." End Sub
447
Application.OpenDocumentNoLock (method)
This method opens a PADS Logic schematic file without file locking. Prototype OpenDocumentNoLock(filename As String) As Document Arguments Argument filename Return Values If the function succeeds, the return value is the newly opened Document. If the function fails, the return value is the current document. Description Name of the file to open.
448
Application.OpenTempDocument (method)
This method works in the same way as OpenDocumentNoLock but additionally doesnt add a filename to the MRU (Most Recently Used) list. This method is mainly intended for macro tests. Prototype OpenTempDocument(filename As String) As Document Arguments Argument filename Return Values If the function succeeds, the return value is the newly opened Document. If the function fails, the return value is current document. Description Name of the file to open.
449
Application.Quit (method)
This method shuts down PADS Logic. Prototype Quit () Arguments None Comments Warning: Do not use this method. Microsoft requires that all Automation Application objects implement this method. However, calling this method violates some important client/server rules: A server cannot shut down until all clients have disconnected from it. Since it is, by definition, not possible for a client to call the Quit method (or any other server method) after it disconnects from the server, it is therefore not possible for a client to shut down a server. A client cannot know if other clients are connected to the server. It, therefore, should not shut down a server. A server has its own shutdown management process: when the last client disconnects from the server, the server automatically shuts down only if its Graphical User Interface (GUI) is not active (not visible). Otherwise, the server remains active.
To force a PADS Logic shutdown, an Automation client needs to make PADS Logic invisible using the Application.Visible property, and then disconnect from it. If no other clients are connected to PADS Logic at that time, PADS Logic automatically shuts down. If an Automation client is a Basic script running in the Sax Basic Engine, it can never successfully shut down the PADS Logic Automation server. See Also Application.Quit (event)
450
Application.RunMacro
This method runs a PADS Logic macro. Prototype RunMacro(filename As String, macroname As String) Arguments Argument filename macroname Comments If filename does not contain the full path to the file, PADS Logic uses the path specified by the Application.DefaultFilePath property to locate the file. If filename is Empty, or is an empty string, the current default PADS Logic macro file is used. If macroname is Empty, or not a valid macro name, nothing is performed. This method generates an Exception if a PADS Logic failure has occurred while processing it. Sample The following sample code runs the PADS Logic macro MACRO1, recorded in the macro file MACROS.MCR, assuming that the macro exists in the folder specified by the Application.DefaultFilePath property. See Code Samples on page 419 for more information on running this sample.
Sub Main RunMacro(DefaultFilePath & "\MACROS.MCR", "MACRO1") End Sub
Description Name of the macro file to use. Name of the macro to run.
451
Application.UnlockServer
This method unlocks the PADS Logic Automation server. Prototype UnlockServer() Arguments None Return Values None Sample The following sample code shows how to use this method. See Code Samples on page 419 for more information on running this sample.
Sub Main LockServer ' Do something lengthy, which makes many calls to the PADS Logic Automation server UnlockServer End Sub
452
Application.OpenDocument (event)
This event occurs after the program opens a new document. Prototype Application_OpenDocument (Doc As Document) Arguments Argument Doc Comments This event occurs after PADS Logic opens a new document. See Also Application.OpenDocument (method) Description Document object that was opened.
453
Application.ProgressChange
This event occurs after the status bar value is changed. Prototype Application_ProgressChange Arguments None Comments This event occurs after the Progress Bar value is changed.
454
Application.Quit (event)
This event shuts down the program. Prototype Application_Quit () Arguments None Comments This event occurs before PADS Logic exits.
455
Attribute Objects
Attributes Collection Object
The Attributes collection object is a collection of attributes of a PADS Logic Component Object (using the Component.Attributes property). Attributes Properties Attributes.Application Attributes.Count Attributes.Item Attributes.Parent
456
Attribute Object
The Attribute object represents an attribute of a PADS Logic Component Object (part). This object is usually retrieved from the Attributes Collection Object. Application Properties Attribute.Application Attribute.Name Attribute.Parent Attribute.Value
457
Attribute.Application
This property returns the PADS Logic Application object. Prototype Application As Application Object Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is normally used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications. Use the property to quickly identify the application to which the object belongs.
458
Attribute.Name
This property returns the name of the attribute. Prototype Name As String Arguments None Comments None Sample The following sample code lists all attributes for component U1 and places that list in a custom dialog box. This sample uses the UserDialog Editor in the Sax Basic Engine in PADS Logic. See Sax Basic Editor On-line Help for more information. See Code Samples on page 419 for more information on running this sample.
Dim ListAttrs$(10000) Sub Main index = 0 For Each nextAttr In ActiveDocument.Components("U1").Attributes ListAttrs$(index) = nextAttr.Name index = index + 1 Next nextAttr ' This piece of code is automatically generated by the PADS Logic Basic Dialog Editor. Begin Dialog UserDialog 180,238,"U1 Attributes" ' %GRID:10,7,1,1 ListBox 10,7,160,203,ListAttrs(),.ListBox1 OKButton 10,210,160,21 End Dialog Dim dlg As UserDialog Dialog dlg End Sub
459
Attribute.Parent
This property returns the parent of the object. Prototype Parent As Document Object Arguments None Comments PADS Logic supports attributes for components and nets only; therefore, the parent can only be a component or a net.
460
Attribute.Value
This property sets or returns the value of the attribute. Prototype Value As Variant Arguments None Comments This is a default property. The value of an attribute may be of type Boolean, Byte, Single, Integer, PortInt, Long, Double, String, or Measure object. This property generates an Exception if there is a type mismatch between the value type and the type of the attribute. Sample The following sample code changes the COST attribute of all LED components to US$3.99, in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main For Each nextComp In ActiveDocument.Components If nextComp.PartType = "LED" Then ' avoid exceptions generated when that attribute does not exist if nextComp.Attributes("COST") is Nothing Then nextComp.Attributes("COST").Value = 3.99 End If End If Next nextComp End Sub
461
Attributes.Application
This property returns the PADS Logic Application object. Prototype Application As Application Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is normally used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications. Use the property to quickly identify the application to which the object belongs.
462
Attributes.Count
This property returns the number of attributes. Prototype Count As Long Arguments None Comments None Sample The following sample code retrieves the number of attributes for the part with name U1. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Part U1 attribute count is " & ActiveDocument.Components("U1").Attributes.Count End Sub
463
Attributes.Item
This property returns an attribute, given its index or its name. Prototype Item(index As Long) As Attribute Item(name As String) As Attribute Arguments Argument index name Comments This is the default member of the Attributes collection object. This property generates an Exception if the index or name argument is not valid. Sample The following samples show two different methods for iterating through all attributes of a Component object in the open schematic. The second method is generally preferred because it is cleaner and faster. See Code Samples on page 419 for more information on running this sample.
' Method 1: Use the Object.Item property Sub Main Set attrs = ActiveDocument.Components("U1").Attributes For I=1 To attrs.Count Set thisAttr = attrs.Item(I) ' Do something with the attribute thisAttr Next I End Sub ' Method 2: Do not use the Object.Item property (preferred method) Sub Main For Each nextAttr in ActiveDocument.Components("U1").Attributes ' Do something with the attribute nextAttr Next nextAttr End Sub
Description Index (in the collection) of the attribute to retrieve. Name of the attribute to retrieve.
464
Attributes.Parent
This property returns the parent of the object. Prototype Parent As Document Arguments None Comments None
465
Attribute.Measure
This method creates and returns measure value object. Prototype Measure As Application.Measure Arguments None Comments This property parses attribute string value such as 100pF and creates special object from which you can extract additional information such as real value, unit name, quantity name, etc. If the internal parser cannot recognize measure in the attribute, it creates a dummy Application.Measure object with the Measure.Value property equal to 0.0 and the Measure.Text property equal to Attribute.Value property. Sample The following sample shows a quantity name of the capacitor's Value attribute (Capacitance) of part C1 assuming that it exists in open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main Set C1 = ActiveDocument.Components("C1") MsgBox C1.Attributes("Value").Measure.Name 'shows "Capacitance" End Sub
466
Attributes.Add
This method adds a new attribute. Prototype Add(name As String, [value As Variant]) As Attribute Objects Arguments Argument Description name value Return Values The new attribute packaged as Attribute Objects. Comments PADS Logic supports only string attributes value, so any other type is converted to String type. This property generates an Exception if the name argument is already an existing attribute or if it is not a valid attribute name. Sample The following sample code adds several attributes of different types to component U1 and net +5V, assuming they exist in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main With ActiveDocument.Components("U1").Attributes ' Ignore exceptions generated when that attribute already exists On Error Resume Next .Add("COST", 12.99) .Add("HEIGHT", 120) .Add("COMMENT", "TO DO: Get spec sheet") End With ActiveDocument.Nets("+5V").Attributes.Add "Voltage", Measure("5V") End Sub
Name of the new attribute. [Optional] Value of the new attribute. The attribute may be of type Boolean, Byte, Single, Integer, PortInt, Long, Double, String, or Measure object.
467
Attributes.Delete
This method deletes an attribute. Prototype Delete(index As Long) Delete(name As String) Arguments Argument index name Return Values None Comments This property generates an Exception in the following cases: Sample The following sample code deletes the COST attribute of all components in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main For Each nextComp In ActiveDocument.Components ' Ignore exceptions generated when that attribute does not exist On Error Resume Next nextComp.Attributes.Delete("COST") Next nextComp End Sub
Description Index (in the collection) of the attribute to delete. Name of the attribute to delete.
If the name argument is not an existing attribute. If the name argument is not a valid attribute to delete. If the index argument is higher than the number of existing attributes.
468
Component Object
The Component object represents a physical part that exists in the open schematic. The Component object consists of one or more visible or unused Gate objects. The following buttons present lists of the properties and methods in the Component object. Component Properties Component.Application Component.Gates Component.Name Component.ObjectType Component.Parent Component.PartType Component.PartTypeLogic Component.PartTypeObject Component.PCBDecal Component.Pins Component.Selected Component.UnusedGates
469
Component.Application
This property returns the PADS Logic Application object. Prototype Application As Application Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is normally used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications. Use the property to quickly identify the application to which the object belongs.
470
Component.Attributes
This property returns the collection of all attributes of the component. Prototype Attributes As Attributes Attributes(name As String) As Attribute Arguments Argument name Comments When an existing attribute name is passed to this property, it returns that component Attribute object. Otherwise, it returns the collection of all component attributes in an Attributes Collection Object. Sample The following sample code retrieves the number of attributes for component U1, assuming it exists in the open schematic, using theAttributes.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set attrs = ActiveDocument.Components("U1").Attributes MsgBox "There are " & attrs.Count & " attribute(s) in component U1." End Sub
471
Component.Gates
This property returns object collection of used gates in this component. Prototype Gates As Objects Gates(name As String) As Gate Arguments Argument name Comments The property returns only used gates of the part. When an existing gate name is passed to this property, it returns that Gate Object. Otherwise, it returns the collection of all used gates in the component in an Objects Collection Object. Sample The following sample iterates through all used gates in the component U1. See Code Samples on page 419 for more information on running this sample.
Sub Main For Each nextGate In ActiveDocument.Components("U1").Gates 'Do something with gate Next End Sub
472
Component.Name
This property returns the name of the component. Prototype Name As String Arguments None Comments For example, this property returns the string U1 for component U1. This property is the default property for the Component object. Sample The following sample code retrieves all components in the open schematic and places that list in a custom dialog list box. When a component is selected in the list box, the sample selects that component in PADS Logic. This sample uses the UserDialog Editor in the Sax Basic Engine in PADS Logic. See Sax Basic Editor On-line Help for more information. See Code Samples on page 419 for more information on running this sample.
Dim ListComps$(10000) Sub Main index = 0 For Each nextComp In ActiveDocument.Components ListComps$(index) = nextComp.Name index = index + 1 Next nextComp ' This piece of code is automatically generated by the PADS Logic Basic Dialog Editor. Begin Dialog UserDialog 180,238,"Parts",.CallbackFunc ' %GRID:10,7,1,1 ListBox 10,7,160,203,ListComps(),.ListBox1 OKButton 10,210,160,21 End Dialog Dim dlg As UserDialog Dialog dlg End Sub
The following function is automatically called by the system when something has happened in the dialog; it is used to easily process user actions.
Function CallbackFunc%(DlgItem$, Action%, SuppValue%) Select Case Action% Case 2 ' Value changing or button pressed If DlgItem$ = "ListBox1" Then ActiveDocument.SelectObjects(plogObjectTypeAll, , False) 'get part by name Set comp = ActiveDocument.Components(ListComps(SuppValue%)) 'select part comp.Selected = True 'activate sheet where first gate of the part is located
473
Automation Server Reference Component.Name comp.Gates(1).Sheet.Activate End If End Select End Function
474
Component.ObjectType
This property returns the type of the object. Prototype ObjectType As PlogObjectType Arguments None Comments This property returns PlogObjectType. All PADS Logic database objects in the PADS Logic Automation server implement this property to compensate for the lack of a Basic equivalent for the Visual C++ QueryInterface function. This property is generally used: To identify the kind of PADS Logic database objects in a heterogeneous Objects Collection Object. When implementing a generic routine that depends on the type of the PADS Logic database object passed as an argument. For example:
Sub DoSomething(dbObject As Object) Select Case dbObject.ObjectType Case plogObjectTypeComponent ' Do something specific to component objects Case plogObjectTypeNet ' Do something specific to net objects Case plogObjectTypePin ' Do something specific to pin objects Case plogObjectTypeGate ' Do something specific to gate objects Case Else MsgBox "Not a PADS Logic database object" End Select End Sub
475
Component.Parent
This property returns the parent of the object. Prototype Parent As Document Arguments None Comments None
476
Component.PartType
This property returns the part type of the component. Prototype PartType As String Arguments None Sample The following sample code retrieves the part type of component U1, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "The part type of U1 is " & ActiveDocument.Components("U1").PartType End Sub
477
Component.PartTypeLogic
This property returns the logic family of the part type of the component. Prototype PartTypeLogic As String Arguments None Comments None Sample The following sample code retrieves the logic family of the part type for component U1, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "The Logic family of U1 is " & ActiveDocument.Components("U1").PartTypeLogic End Sub
478
Component.PartTypeObject
This property returns the part type object of this component. Prototype PartTypeObject As PartType Arguments None Comments None Sample The following sample code retrieves the part type object for component U1, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "The part type of U1 is " & ActiveDocument.Components("U1").PartTypeObject.Name End Sub
479
Component.PCBDecal
This property returns the PCB decal of the component. Prototype PCBDecal As String Arguments None Comments None Sample The following sample code retrieves the current decal for component C1, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "C1 PCB decal is " & ActiveDocument.Components("C1").PCBDecal End Sub
480
Component.Pins
This property returns the collection of all pins of the component. Prototype Pins As Objects Pins(name As String) As Pin Arguments Argument name Comments Returns all pins of the component including: Visible used gate pins (pins of used gates). Invisible signal pins (do not belong to any gate, but are associated with some signal). Invisible unused gate pins (belong to unused gate). Invisible unused part pins (do not belong to any gate and are not associated with any signal). Description Name of an existing pin.
When an existing pin name is passed to this property, it returns that Pin Object. Otherwise, it returns the collection of all pins of the component in an Objects Collection Object. Sample The following sample calculates the number of all types of pins in part U1.
Sub Main SigPins = 0 AllPins = 0 UsedGatePins = 0 UnusedGatePins = 0 UnusedPartPins = 0 UnconnectedPins = 0 Set U1 = ActiveDocument.Components("U1") 'get total pin count AllPins = U1.Pins.Count For Each p In U1.Pins If p.Gate Is Nothing Then 'if pin does not belong to any gate If p.Net Is Nothing Then 'if pin is unconnected then it is unused UnusedPartPins = UnusedPartPins + 1 Else SigPins = SigPins + 1 'otherwise it is a signal pin End If Else If p.Gate.Sheet Is Nothing Then 'if pin belongs to gate but gate is not installed UnusedGatePins = UnusedGatePins + 1
481
Automation Server Reference Component.Pins Else UsedGatePins = UsedGatePins + 1 End If End If 'if pin is not connected If p.Net Is Nothing Then UnconnectedPins = UnconnectedPins + 1 End If Next MsgBox "Total Pin Count is " & AllPins & vbCr & _ "Signal Pin Count is " & SigPins & vbCr & _ "Used Gate Pin Count is " & UsedGatePins & vbCr & _ "Unused Gate Pin Count is " & UnusedGatePins & vbCr & _ "Unused Part Pin Count is " & UnusedPartPins & vbCr & _ vbCr & _ "Unconnected Pin Count is " & UnconnectedPins, _ "Pin Info of U1 part" End Sub
482
Component.Selected
This property sets or returns whether the component is selected. Prototype Selected As Boolean Arguments None Comments The component is considered selected when one or more of its gates is selected. You can also select a PADS Logic database object using the Document.SelectObjects or Objects.Select methods. Sample The following sample code selects component U1 only, assuming it exists in the open schematic, and activates the sheet on which it resides. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.SelectObjects(,,False) ActiveDocument.Components("U1").Selected = True ActiveDocument.Components("U1").Gates(1).Sheet.Activate End Sub
483
Component.UnusedGates
This property returns the object collection of all unused gates in this component. Prototype UnusedGates As Objects UnusedGates(name As String) As Gate Arguments Argument name Comments The property returns only unused gates of the part. When an existing gate name is passed to this property, it returns that Gate Object. Otherwise, it returns the collection of all unused gates of the component in an Objects Collection Object. Sample The following sample retrieves the total number of gates in component U1. See Code Samples on page 419 for more information on running this sample.
Sub Main Set u1 = ActiveDocument.Components("U1") MsgBox "Total gate count of part U1 is " & (u1.Gates.Count + u1.UnusedGates.Count) End Sub
484
Component.Delete
This method deletes this part (all its gates) from the schematic. Prototype Delete Arguments None Comments None Sample The following sample deletes the part U1 from the schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.Components("U1").Delete End Sub
Document Object
The Document object represents a schematic file that is currently open in PADS Logic. This object is usually retrieved using the Application.ActiveDocument property.
485
Document Properties Document.ActiveSheet Document.ActiveView Document.AncestorSheets Document.Application Document.Components Document.Fields Document.FullName Document.Gates Document.GridX Document.GridY Document.Name Document.Nets Document.Parent Document.PartTypes Document.Path Document.Pins Document.Saved Document.Sheets
Document Methods Document.Activate Document.ExportASCII Document.ExportNetList Document.GenerateECO Document.GetColor Document.GetObjects Document.ImportASCII Document.ImportECO Document.IntegrityTest Document.Save (method) Document.SaveAs Document.SaveAsNoLock Document.SaveAsTemp Document.SaveNoLock Document.SaveTemp Document.SelectObjects Document.SetColor
486
Document.ActiveSheet
This property returns the active sheet in this document. Prototype ActiveSheet As Sheet Arguments None Comments None Sample The following sample retrieves the name of active sheet. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Active Sheet is " & ActiveDocument.ActiveSheet.Name End Sub
487
Document.ActiveView
This property returns the active PADS Logic view. Prototype ActiveView As View Arguments None Comments The active view represents the main view of the active sheet in the open schematic. Sample The following sample code pans the current PADS Logic view to the origin of the active sheet (using the View.Pan method). See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.ActiveView.Pan(0,0) End Sub
488
Document.AncestorSheets
This property returns a collection of sheets in this document that are not child sheets of any other sheet. Prototype AncestorSheets As Sheets AncestorSheets(name As String) As Sheet Arguments name Name of an existing sheet. Comments When an existing sheet with name is passed to this property, this property returns that sheet packaged as a Sheet Object. Otherwise, this property returns the collection of root sheets existing in the open schematic, packaged as a Sheets Collection Object. Sample The following sample retrieves the total number of ancestor sheets in the active document. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Number of ancestor sheets is " & ActiveDocument.AncestorSheets.Count End Sub
489
Document.Application
This property returns the PADS Logic Application object. Prototype Application As Application Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is normally used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications. Use the property to quickly identify the application to which the object belongs.
490
Document.Components
This property returns the collection of all components. Prototype Components As Objects Components(name As String) As Component Arguments Argument name Comments When an existing component name is passed to this property, it returns that Component Object. Otherwise, this property returns the collection of all components in an Objects Collection Object. Sample 1 The following sample code retrieves the number of components in the open schematic using the Objects.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set comps = ActiveDocument.Components MsgBox "There are " & comps.Count & " part(s) in " & ActiveDocument.Name End Sub
Sample 2 The following sample code retrieves the number of pins of component U1, assuming it exists in the open schematic, using the Component.Pins and Objects.Count properties. See Code Samples on page 419 for more information on running this sample.
Sub Main Set compU1 = ActiveDocument.Components("U1") MsgBox "Component " & compU1.Name & " has " & compU1.Pins.Count & " pin(s)." End Sub
491
Document.Fields
This property returns the collection of fields. Prototype Fields As Objects Arguments None Comments None Sample The following sample retrieves the number of fields in the document. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "The number of fields in this document is " & ActiveDocument.Fields.Count() End Sub
492
Document.FullName
This property returns the filename of the document, including its path. Prototype FullName As String Arguments None Comments None Sample The following sample retrieves the name and location of the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Hi, you are using " & ActiveDocument.FullName & " located in " & ActiveDocument.Path End Sub
493
Document.Gates
This property returns the collection of all gates. Prototype Gates As Objects Gates(name As String) As Gate Arguments Argument name Comments When an existing gate name is passed to this property, it returns that Gate Object. If the gate name does not exist, this property returns the collection of all gates in an Objects Collection Object. Sample The following sample code retrieves the number of gates in the open schematic using the Objects.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set gates = ActiveDocument.Gates MsgBox "There are " & gates.Count & " gate(s) in " & ActiveDocument.Name End Sub
494
Document.GridX
This property sets or returns the X grid of the document. Prototype GridX([type As PlogGridType = plogGridDesign], [unit As PlogUnit]) As Double Arguments Argument type unit Sample The following sample code sets the display grid of the open schematic to the same value as the design grid. See Code Samples on page 419 for more information on running this sample.
Sub Main curGridX = ActiveDocument.GridX curGridY = ActiveDocument.GridY ActiveDocument.GridX(plogGridDisplay) = curGridX ActiveDocument.GridY(plogGridDisplay) = curGridY End Sub
Description [Optional] Type of grid to set or return. [Optional] Unit in which the grid value is set or returned.
Tip: You cannot assign different values for GridX and GridY. The property is not writable for GridY, so GridY takes on the value assigned to GridX. See Also Document.GridY
495
Document.GridY
This property sets or returns the Y grid of the document. Prototype GridY([type As PlogGridType = plogGridDesign], [unit AsPlogUnit]) As Double Arguments Argument Description type: unit: Sample The following sample code sets the display grid of the open schematic to the same value as the design grid. See Code Samples on page 419 for more information on running this sample.
Sub Main curGridX = ActiveDocument.GridX curGridY = ActiveDocument.GridY ActiveDocument.GridX(plogGridDisplay) = curGridX ActiveDocument.GridY(plogGridDisplay) = curGridY End Sub
[Optional] Type of grid to set or return. [Optional] Unit in which the grid value is set or returned.
Tip: You cannot assign different values for GridX and GridY. The property is not writable for GridY, so GridY takes on the value assigned to GridX. See Also Document.GridX
496
Document.Name
This property returns the name of the document. Prototype Name As String Arguments None Comments For example, if the current schematic file is \My Documents\PADS Projects\Samples\demo.sch, this function returns the string demo.sch. This property is the default property for the Document object. Sample The following sample code retrieves the name and location of the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Hi, you are using " & ActiveDocument.Name & " located in " & ActiveDocument.Path End Sub
497
Document.Nets
This property returns the collection of all nets. Prototype Nets As Objects Nets(name As String) As Net Arguments Argument name Comments When an existing net name is passed to this property, it returns that Net Object. If the net name does not exist, this property returns the collection of all nets in an Objects Collection Object. Sample 1 The following sample code retrieves the number of nets in the open schematic using the Objects.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set nets = ActiveDocument.Nets MsgBox "There are " & Nets.Count & " net(s) in " & ActiveDocument.Name End Sub
Sample 2 The following sample code retrieves the number of pins connected to net VCC, assuming it exists in the open schematic, using the Net.Pins and Objects.Count properties. See Code Samples on page 419 for more information on running this sample.
Sub Main Set netVCC = ActiveDocument.Nets("VCC") MsgBox "Net " & netVCC.Name & " connects " & netVCC.Pins.Count & " pin(s)." End Sub
498
Document.Parent
This property returns the parent of the object. Prototype Parent As Application Arguments None Comments None
499
Document.PartTypes
This property returns the collection of all part types. Prototype PartTypes As Objects PartTypes(name As String) As PartType Arguments Argument name Comments When an existing part type name is passed to this property, it returns that PartType object. Otherwise, this property returns the collection of all part types in an Objects Collection Object. Sample The following sample code retrieves the number of part types in the open schematic using the Objects.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set pkgs = ActiveDocument.PartTypes MsgBox "There are " & pkgs.Count & " part type(s) in " & ActiveDocument.Name End Sub
500
Document.Path
This property returns the path of the document. Prototype Path As String Arguments None Comments None Sample The following sample code retrieves the name and path of the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Hi, you are using " & ActiveDocument.Name & " located in " & ActiveDocument.Path End Sub
501
Document.Pins
This property returns the collection of all pins. Prototype Pins As Objects Pins(name As String) As Pin Arguments Argument name Comments When an existing pin name is passed to this property, it returns that Pin Object. Otherwise, it returns the collection of all pins in an Objects Collection Object. Sample The following sample code retrieves the number of pins in the open schematic using the Objects.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set pins = ActiveDocument.Pins MsgBox "There are " & Pins.Count & " pin(s) in " & ActiveDocument.Name End Sub
502
Document.Saved
This property sets or returns whether the document is saved. Prototype Saved As Boolean Arguments None Comments This property is usually used just before opening a new schematic in PADS Logic, using the Application.OpenDocument (method), to ensure that the message Save old file before reloading? does not occur. Sample The following sample code sets the saved status of the open schematic to True, then opens demo.sch, assuming that it exists in the folder pointed by the Application.DefaultFilePath property. It then retrieves the name of the newly opened schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.Saved = True OpenDocument(DefaultFilePath & "\DEMO.SCH") MsgBox ActiveDocument.FullName & " has just been opened." End Sub
503
Document.Sheets
This property returns the collection of all sheets. Prototype Sheets As Sheets Sheets(name As String) As Sheet Arguments Argument name Comments When an existing sheet with name is passed to this property, it returns that sheet packaged as a Sheet Object. Otherwise, it returns the collection of all sheets existing in the open schematic, packaged as a Sheets Collection Object. Sample The following sample code retrieves the number of sheets in the open schematic using the Sheets.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set shts = ActiveDocument.Sheets MsgBox "There are " & shts.Count & " sheet(s) in " & ActiveDocument.Name End Sub
504
Document.ImportASCII
This method imports a PADS Logic ASCII file. Prototype ImportASCII(name As String) Arguments Argument name Comments The function fails and generates an Exception if the specified file name does not exist or its format is incorrect. Sample The following sample code imports the specified file (demo.txt) to the current schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.ImportASCII(DefaultFilePath & "\demo.txt") End Sub
505
Document.Activate
This method activates the window associated with the document. Prototype Activate () Arguments None Return Values None Comments This is a Microsoft requirement. However, since PADS Logic is a SDI (Single Document Interface) server application, this function has no effect.
506
Document.ExportASCII
This method generates a PADS Logic ASCII file from the current schematic. Prototype ExportASCII(path As String) Arguments Argument path Comments None Sample The following sample creates an ASCII file from active document. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.ExportASCII DefaultFilePath & "\ascii.txt" End Sub
507
Document.ExportNetList
This method generates PADS-format netlist from the current schematic. Prototype ExportNetList(path As String, [ver As PlogNetListVersion]) Arguments Argument path ver Return Values None Comments If the specified file name does not exist the function creates new file. If the file name does exist, this method overwrites the existing file. This property generates an Exception if the function failed. Sample The following sample code creates a netlist file with the specified name (padsnet.asc). See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.ExportNetList(DefaultFilePath & "\padsnet.asc") End Sub
Description Name of the file to which to export the netlist. [Optional] Version in which to export (for backward compatibility).
508
Document.GenerateECO
This method compares the open schematic with specified netlist or other schematic and generates ECO file. Prototype GenerateECO(fileToComp As String, path As String) Arguments Argument fileToComp path Return Values None Comments None Sample The following sample code compares PADS-format netlist file (padsnet.asc) and creates an ECO file with the specified name (eco2pcb.eco). See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.GenerateECO(DefaultFilePath & "\padsnet.asc", DefaultFilePath & "\eco2pcb.eco") End Sub
Description Name of the schematic or netlist file to compare with the open schematic. Name of the resulting ECO file.
509
Document.GetColor
This method returns the color of the specified document element. Prototype GetColor(colorType as PlogDocumentColor) as Integer Arguments Argument colorType Return Values The index of the color in the palette. Sample This sample also includes the SetColor method.
doc msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg = = = = = = = = = = = = = = = = = = = = = = = Application.ActiveDocument "" msg & doc.GetColor(plogDocumentColorBackground) & ", " msg & doc.GetColor(plogDocumentColorSelection) & ", " msg & doc.GetColor(plogDocumentColorConnection) & ", " msg & doc.GetColor(plogDocumentColorBus) & ", " msg & doc.GetColor(plogDocumentColorLine) & ", " msg & doc.GetColor(plogDocumentColorPart) & ", " msg & doc.GetColor(plogDocumentColorHierarchicalComp) & ", " msg & doc.GetColor(plogDocumentColorText) & ", " msg & doc.GetColor(plogDocumentColorTextBox) & ", " msg & doc.GetColor(plogDocumentColorRefDes) & ", " msg & doc.GetColor(plogDocumentColorRefDesBox) & ", " msg & doc.GetColor(plogDocumentColorPartType) & ", " msg & doc.GetColor(plogDocumentColorPartTypeBox) & ", " msg & doc.GetColor(plogDocumentColorPartText) & ", " msg & doc.GetColor(plogDocumentColorPartTextBox) & ", " msg & doc.GetColor(plogDocumentColorPinNumber) & ", " msg & doc.GetColor(plogDocumentColorPinNumberBox) & ", " msg & doc.GetColor(plogDocumentColorNetName) & ", " msg & doc.GetColor(plogDocumentColorNetNameBox) & ", " msg & doc.GetColor(plogDocumentColorField) & ", " msg & doc.GetColor(plogDocumentColorFieldBox)
MsgBox msg curr_bkg_color = doc.GetColor(plogDocumentColorBackground) doc.SetColor(plogDocumentColorBackground, 2) MsgBox "Press any key" doc.SetColor(plogDocumentColorBackground, curr_bkg_color)
510
Document.GetObjects
This method returns a collection of PADS Logic database objects. Prototype GetObjects([type As PlogObjectType = plogObjectTypeAll], [value As String], [selected As Boolean = False]) As Objects Arguments Argument type name selected Return Values The returned object is an Objects Collection Object. If no objects satisfy the request, the returned collection is empty. Comments All arguments to this method are optional, which means that it can be called with no argument at all, or with any combination of arguments. See samples below for more information. Name argument supports wildcarding (U*), lists of items delimited by comma (U1, U2, R1), ranges specified by two object names and the dash character (U1 - U10, U12, R1 R20). Dash must be surrounded by spaces since the dash is a legal symbol in an object name. Only one wildcard per name is allowed and you cannot specify wildcards in a range. You can pass name such as U*, R*, C1 C100 but you cannot pass name such as U*1* or C1* C10*. To get all objects of the same type, use the corresponding object Document property instead of this method. For example, to get all gates in the open schematic, use Document.Gates instead of Document.GetObjects(plogObjectTypeGate). This property generates an Exception if the type argument is not a valid PADS Logic database object type. Sample The following sample code shows different ways to use this method, displaying the number of objects retrieved for each way, using the Objects.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Dim objs As Object ' Ex1: Get all objects of all types Set objs = ActiveDocument.GetObjects MsgBox "Ex1: " & objs.Count & " objects." ' Ex2: Get all selected objects of all types
Description [Optional] Type of PADS Logic database object to get. [Optional] Value or name of the object(s) to get. [Optional] True to get selected objects only. False to get all objects.
511
Automation Server Reference Document.GetObjects Set objs = ActiveDocument.GetObjects(,,True) MsgBox "Ex2: " & objs.Count & " selected objects." ' Ex3: Get all net objects Set objs = ActiveDocument.GetObjects(plogObjectTypeNet) MsgBox "Ex3: " & objs.Count & " net objects." ' Ex4: Get all net objects of name "VCC" (there is at least 1 of course) Set objs = ActiveDocument.GetObjects(plogObjectTypeNet, "VCC") MsgBox "Ex4: " & objs.Count & " VCC net objects." ' Ex5: Get all part objects which names begin with U Set objs = ActiveDocument.GetObjects(plogObjectTypeComponent, "U*") MsgBox "Ex3: " & objs.Count & " U* part objects." End Sub
See Also Document.SelectObjects, Document.Components, Document.Gates, Document.Nets, Document.Pins, Document.PartTypes, Sheet.GetObjects, Sheet.Components, Sheet.Gates, Sheet.Nets, Sheet.PartTypes
512
Document.ImportECO
This method imports an ECO file. Prototype ImportECO(name As String) Arguments Argument name Comments The function fails and generates an Exception if the specified file name does not exist or its format is incorrect. Sample The following sample code imports the specified ECO file (eco2sch.eco) to the current schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.ImportECO(DefaultFilePath & "\eco2sch.eco") End Sub
513
Document.IntegrityTest
This method runs the integrity test. Prototype IntegrityTest() as Boolean Arguments None Return Values TRUE if the test passed without errors, FALSE in other cases.
514
Document.Save (method)
This method saves the document. Prototype Save Arguments None Comments None Sample The following sample code saves, if needed, the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main If ActiveDocument.Saved = False Then ActiveDocument.Save End Sub
515
Document.SaveAs
This method saves the document under a new name. Prototype Save(name As String) Arguments Argument name Sample The following sample code creates a custom backup of the open schematic. If the schematic file name is XXX.SCH, the backup file is saved in the same folder with the name XXX (Backup on 12-28-1998 4h40).SCH. See Code Samples on page 419 for more information on running this sample.
Sub Main curSchematicName = ActiveDocument.FullName theDate = Month(Date) & "-" & Day(Date) & "-" & Year(Date) & " at " & Hour(Now) & "h" & Minute(Now) bakSchematicName = Left$(curSchematicName, Len(curSchematicName)-4) & " (Backup on " & theDate & ").sch" ActiveDocument.SaveAs(bakSchematicName) OpenDocument(curSchematicName) End Sub
516
Document.SaveAsNoLock
This method saves the document with a new name and releases the file lock. Prototype SaveAsNoLock(filename as String) Arguments Argument filename Return Values This method generates an exception if a PADS Logic security failure occurs during processing. Description New name for the file.
517
Document.SaveAsTemp
This method works in the same way as SaveAsNoLock but additionally it doesnt add the filename to the MRU (Most Recently Used) list. This method is mainly intended for macro tests. Prototype SaveAsTemp(filename as String) Arguments Argument filename Return Values This method generates an exception if a PADS Logic security failure occurs during processing. Description New name for the file.
518
Document.SaveNoLock
This method saves the document and releases the file lock. Prototype SaveNoLock Arguments None Return Values This method generates an exception if a PADS Logic security failure occurs during processing.
519
Document.SaveTemp
This method works in the same way as SaveNoLock but additionally it doesnt add the filename to the MRU (Most Recently Used) list. This method is mainly intended for macro tests. Prototype SaveTemp Arguments None Return Values This method generates an exception if a PADS Logic security failure occurs during processing.
520
Document.SelectObjects
This method selects or deselects PADS Logic database objects. Prototype SelectObjects([type As PlogObjectType = plogObjectTypeAll], [name As String], [select As Boolean = True]) Arguments Argument type name select Comments All arguments to this method are optional, which means that it can be called with no argument at all, or with any combination of arguments. See samples below for more information. Name argument supports wildcarding (U*), lists of items delimited by comma (U1, U2, R1), ranges specified by two object names and the dash character (U1 - U10, U12, R1 R20). Dash must be surrounded by spaces since the dash is a legal symbol in an object name. Only one wildcard per name is allowed and you cannot specify wildcards in a range. You can pass name such as U*, R*, C1 C100 but you cannot pass name such as U*1* or C1* C10*. This property generates an Exception if the type argument is not a valid PADS Logic database object type. Sample The following sample code shows different ways to use this method, displaying the number of objects selected for each way, using the Document.GetObjects method and the Objects.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Dim objs As Object ' Ex1: Select all objects of all types ActiveDocument.SelectObjects Set objs = ActiveDocument.GetObjects(,,True) MsgBox "Ex1: " & objs.Count & " selected objects (all)." ' Ex2: Unselelect all objects of all types ActiveDocument.SelectObjects(,,False) Set objs = ActiveDocument.GetObjects(,,True) MsgBox "Ex2: " & objs.Count & " selected objects (none)." ' Ex3: Select all net objects ActiveDocument.SelectObjects(plogObjectTypeNet) Set objs = ActiveDocument.GetObjects(,,True) MsgBox "Ex3: " & objs.Count & " selected objects (all nets)." ' Ex4: Unselect net VCC ActiveDocument.SelectObjects(plogObjectTypeNet, "VCC", False)
Description [Optional] Type of PADS Logic database object to select/deselect. [Optional] Value or name of the object(s) to select/deselect. [Optional] True to select. False to deselect.
521
Automation Server Reference Document.SelectObjects Set objs = ActiveDocument.GetObjects(,,True) MsgBox "Ex4: " & objs.Count & " selected objects (all nets except VCC)." ' Ex5: Select only part objects which names begin with U ActiveDocument.SelectObjects(,,False) ActiveDocument.SelectObjects(plogObjectTypeComponent, "U*") Set objs = ActiveDocument.GetObjects(,,True) MsgBox "Ex5: " & objs.Count & " selected U* part objects." End Sub
522
Document.SetColor
This method sets the color for the specified document element. Prototype SetColor(colorType as PlogDocumentColor, colorIndex as Integer) Arguments Argument colorType colorIndex Sample This sample also includes the GetColor method.
doc msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg msg = = = = = = = = = = = = = = = = = = = = = = = Application.ActiveDocument "" msg & doc.GetColor(plogDocumentColorBackground) & ", " msg & doc.GetColor(plogDocumentColorSelection) & ", " msg & doc.GetColor(plogDocumentColorConnection) & ", " msg & doc.GetColor(plogDocumentColorBus) & ", " msg & doc.GetColor(plogDocumentColorLine) & ", " msg & doc.GetColor(plogDocumentColorPart) & ", " msg & doc.GetColor(plogDocumentColorHierarchicalComp) & ", " msg & doc.GetColor(plogDocumentColorText) & ", " msg & doc.GetColor(plogDocumentColorTextBox) & ", " msg & doc.GetColor(plogDocumentColorRefDes) & ", " msg & doc.GetColor(plogDocumentColorRefDesBox) & ", " msg & doc.GetColor(plogDocumentColorPartType) & ", " msg & doc.GetColor(plogDocumentColorPartTypeBox) & ", " msg & doc.GetColor(plogDocumentColorPartText) & ", " msg & doc.GetColor(plogDocumentColorPartTextBox) & ", " msg & doc.GetColor(plogDocumentColorPinNumber) & ", " msg & doc.GetColor(plogDocumentColorPinNumberBox) & ", " msg & doc.GetColor(plogDocumentColorNetName) & ", " msg & doc.GetColor(plogDocumentColorNetNameBox) & ", " msg & doc.GetColor(plogDocumentColorField) & ", " msg & doc.GetColor(plogDocumentColorFieldBox)
Description Specifies the document element. The index of the color in the palette. Must be between 0 and 31.
MsgBox msg curr_bkg_color = doc.GetColor(plogDocumentColorBackground) doc.SetColor(plogDocumentColorBackground, 2) MsgBox "Press any key" doc.SetColor(plogDocumentColorBackground, curr_bkg_color)
523
Document.Save (event)
This event occurs after the document is saved. Prototype Document_Save () Arguments None Comments This event occurs after the document has been saved. See Also Document.Save (method), Document.SaveAs
524
Document.SelectionChange
This event occurs when the current selection changes. Prototype Document_SelectionChange () Arguments None Comments This event occurs when the current selection changes. See Also Document.SelectObjects, Objects.Select
525
Field Object
The Field object contains properties required by the operating system for a schematic file. This object enables you to retrieve information for the field name, value, and parent. Field Properties Field.Application Field.Name Field.Parent Field.Value
526
Field.Application
This property returns the Application object. Prototype Application As PADS Logic.Application Arguments None Comments This property identifies the object as an Automation object. This is a Microsoft-required property. Sample The following sample code retrieves the name of the application using the first field in the collection. See Code Samples on page 419 for more information on running this sample.
MsgBox ActiveDocument.Fields(1).Application.Name
527
Field.Name
This property returns the name of the field object. Prototype Name As String Arguments None Comments This is a Microsoft-required property. Sample The following sample code retrieves the name of the first field in the fields collection. See Code Samples on page 419 for more information on running this sample.
MsgBox ActiveDocument.Fields(1).Name
528
Field.Parent
This property returns the parent of a field. The parent is the current Document object. Prototype Parent As Object Arguments None Comments This is a Microsoft-required property. Sample The following sample code retrieves the name of the parent object using the first field in the collection. See Code Samples on page 419 for more information on running this sample.
MsgBox ActiveDocument.Fields(1).Parent.Name
529
Field.Value
This default property sets or returns the value of an Application field. Prototype Value As Variant Arguments None Comments This property enables you to view or set the value of an Application field. Tip: You can neither delete nor change the value of a system field. When you perform an operation on a field, it affects all field labels that refer to the field in the current schematic. Sample 1 The following sample code sets the value of a field. Tip: The FieldName field should exist in the document.
ActiveDocument.Fields ("FieldName").Value = "FieldValue"
See Code Samples on page 419 for more information on running these samples. Sample 2 The following sample code sets the value of a field, using the default Value property.
ActiveDocument.Fields ("FieldName") = "FieldValue"
530
531
Fields.Add
This method adds a new field to the collection of fields in the current Document and returns a new field object. Prototype Add(name As String, value As Variant) As PADS Logic.Field Arguments Argument Value Comments This method generates an Exception if the name argument is an existing field or if it is not a valid field name. Sample The following sample code adds a new field to a document. See Code Samples on page 419 for more information on running this sample.
ActiveDocument.Fields.Add "FieldName","StringValue"
532
Fields.Delete
This method deletes the field, by index, from the fields collection. Prototype Delete(index As Variant) As PADS Logic.Field Arguments Argument Description Index A required variant, which can have one of two values: The string name of a field A number with a value from one to the value of the collection's Count property
Comments This method generates an Exception if the index argument is outside the limits, if it is not a valid index name, or if it points to a system field. Sample The following sample code deletes the field by its name. See Code Samples on page 419 for more information on running this sample.
ActiveDocument.Fields.Delete("FieldName")
533
Fields.Application
This property returns the Application object. Prototype Application As PADS Logic.Application Arguments None Comments This property identifies the object as an Automation object. This is a Microsoft-required property. Sample The following sample code retrieves the name of the application using the fields collection object. See Code Samples on page 419 for more information on running this sample.
MsgBox ActiveDocument.Fields.Application.Name
534
Fields.Count
This property returns the number of fields in the fields collection of the current Document. Prototype Count As Long Arguments None Comments This property returns the number of fields in the fields collection of the current Document. This is a Microsoft-required property. Sample The following sample code displays the number of fields in the document. See Code Samples on page 419 for more information on running this sample.
MsgBox ActiveDocument.Fields.Count
535
Fields.Item
This default property returns a member of a fields collection. The member can be returned either by its position or its name. Prototype Item as PADS Logic.Field Arguments Argument Index Value Description A required variant, which can have one of two values The string name of a field A number with a value from one to the value of the collection's Count property
Comments This property returns a member of a fields collection in a schematic. This is a Microsoftrequired property for collection objects. Tip: You can neither delete nor change the value of a system field. Sample 1 The following sample code displays the value of the given field in an open schematic. See Code Samples on page 419 for more information on running this sample.
MsgBox ActiveDocument.Fields.Item ("FieldName").Value
Sample 2 The following sample displays the value of the given field, using the default item property. See Code Samples on page 419 for more information on running this sample.
MsgBox ActiveDocument.Fields("AttrName").Value
536
Fields.Parent
This property returns the parent Application of the fields collection object. Prototype Parent As Object Arguments None Comments This property returns the parent of the fields collection object. The parent object is a document. This is a Microsoft-required property. Sample The following sample code retrieves the name of the parent of the fields collection object. (The parent of the fields collection object is the current document.) See Code Samples on page 419 for more information on running this sample.
ActiveDocument.Fields.Parent.Name
537
538
Sheet Object
The Sheet object represents a single PADS Logic schematic sheet. This object is usually retrieved from the Sheets Collection Object. Sheet Properties Sheet.Application Sheet.ChildSheets Sheet.Components Sheet.Gates Sheet.Name Sheet.Nets Sheet.Parent Sheet.ParentSheet Sheet.PartTypes Sheet.Pins
539
Sheet.Application
This property returns the PADS Logic Application object. Prototype Application As Application Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is usually used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications, to quickly identify the application to which the object belongs.
540
Sheet.ChildSheets
This property returns the collection of child sheets in this sheet. Prototype ChildSheets As Sheets ChildSheets(name As String) As Sheet Arguments Argument name Comments When an existing sheet with name is passed to this property, it returns that sheet packaged as a Sheet Object. Otherwise, it returns the collection of all child sheets, packaged as a Sheets Collection Object. Sample The following sample code retrieves the number of child sheets for the active sheet using the Sheets.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set shts = ActiveDocument.ActiveSheet.ChildSheets MsgBox "There are " & shts.Count & " child sheet(s) in the " & ActiveDocument.ActiveSheet.Name End Sub
541
Sheet.Components
This property returns the collection of all components in this sheet. Prototype Components As Objects Components(name As String) As Component Arguments Argument name Comments When an existing component name is passed to this property, it returns that Component Object. Otherwise, it returns the collection of all components in an Objects Collection Object. Sample 1 The following sample code retrieves the number of components in active sheet using the Objects.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set comps = ActiveDocument.ActiveSheet.Components MsgBox "There are " & comps.Count & " part(s) in the sheet " & ActiveDocument.ActiveSheet.Name End Sub
Sample 2 The following sample code retrieves the number of pins of component U1, assuming it exists in active sheet, using the Component.Pins and Objects.Count properties. See Code Samples on page 419 for more information on running this sample.
Sub Main Set compU1 = ActiveDocument.ActiveSheet.Components("U1") MsgBox "Component " & compU1.Name & " has " & compU1.Pins.Count & " pin(s)." End Sub
542
Sheet.Gates
This property returns the collection of all gates in this sheet. Prototype Gates As Objects Gates(name As String) As Gate Arguments Argument name Comments When an existing gate name is passed to this property, it returns that Gate Object. Otherwise, it returns the collection of all gates in an Objects Collection Object. Sample The following sample code retrieves the number of gates in the active sheet using the Objects.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set gates = ActiveDocument.ActiveSheet.Gates MsgBox "There are " & gates.Count & " gate(s) in the sheet " & ActiveDocument.ActiveSheet.Name End Sub
543
Sheet.Name
This property returns or sets the name of the sheet. Prototype Name As String Arguments None Comments This property is the default property for the Sheet object. Sample The following sample code retrieves the name of the active sheet. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Hi, you are using " & ActiveDocument.ActiveSheet.Name End Sub
544
Sheet.Nets
This property returns the collection of all nets in this sheet. Prototype Nets As Objects Nets(name As String) As Net Arguments Argument name Comments When an existing net name is passed to this property, it returns that Net Object. Otherwise, it returns the collection of all nets in anObjects Collection Object. Sample 1 The following sample code retrieves the number of nets in the active sheet using the Objects.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set nets = ActiveDocument.ActiveSheet.Nets MsgBox "There are " & nets.Count & " net(s) in the sheet " & ActiveDocument.ActiveSheet.Name End Sub
Sample 2 The following sample code retrieves the number of pins connected to net VCC, assuming it exists in the active sheet, using the Net.Pins and Objects.Count properties. See Code Samples on page 419 for more information on running this sample.
Sub Main Set netVCC = ActiveDocument.ActiveSheet.Nets("VCC") MsgBox "Net " & netVCC.Name & " connects " & netVCC.Pins.Count & " pin(s)." End Sub
545
Sheet.Parent
This property returns the parent of the object. Prototype Parent As Application Arguments None Comments None
546
Sheet.ParentSheet
This property returns the parent sheet of this sheet. Prototype Parent As Application Arguments None Comments If this sheet is an ancestor, the return value is Nothing. Sample The following sample retrieves the name of the parent sheet for the active sheet. See Code Samples on page 419 for more information on running this sample.
Sub Main If Not ActiveDocument.ActiveSheet.ParentSheet Is Nothing Then MsgBox ActiveDocument.ActiveSheet.ParentSheet Else MsgBox "Sheet " & ActiveDocument.ActiveSheet.Name & " is ancestor" End If End Sub
547
Sheet.Pins
This property returns the collection of all pins in this sheet. Prototype Pins As Objects Pins(name As String) As Pin Arguments Argument name Comments When an existing pin name is passed to this property, it returns that Pin Object. Otherwise, it returns the collection of all pins in anObjects Collection Object. Sample 1 The following sample code retrieves the number of pins in the active sheet using the Objects.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set pins = ActiveDocument.ActiveSheet.Pins MsgBox "There are " & Pins.Count & " pin(s) in the sheet " & ActiveDocument.ActiveSheet.Name End Sub
548
Sheets.Application
This property returns the PADS Logic Application object. Prototype Application As Application Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is normally used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications. Use the property to quickly identify the application to which the object belongs.
549
Sheets.Count
This property returns the number of sheets. Prototype Count As Long Arguments None Comments None Sample The following sample code retrieves the number of sheets in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main Set shts = ActiveDocument.Sheets MsgBox "There are " & shts.Count & " sheet(s) in " & ActiveDocument.Name End Sub
550
Sheets.Item
This property returns a sheet given its index or its name. Prototype Item(index As Long) As Sheet Item(name As String) As Sheet Arguments Argument Description index name Comments This is the default member of the Sheets collection object. This property generates an Exception if the index or name argument is not valid. Sample The following sample code shows two different methods for iterating through all sheets in the open schematic. The second method is generally preferred because it is cleaner and faster. See Code Samples on page 419 for more information on running this sample.
' Method 1: Use the Object.Item property Sub Main Set shts = ActiveDocument.Sheets for I=1 To shts.Count Set thisSht = shts.Item(I) ' Do something with the sheet Next I End Sub ' Method 2: Do not use the Object.Item property (preferred method) Sub Main for Each nextSht in ActiveDocument.Sheets ' Do something with the sheet Next nextSht End Sub
Index (in the collection) of the sheet to retrieve. Name of the sheet to retrieve.
551
Sheets.Parent
This property returns the parent of the object. Prototype Parent As Document Arguments None Comments None
552
Sheet.PartTypes
This property returns the collection of all part types in this sheet. Prototype PartTypes As Objects PartTypes(name As String) As PartType Arguments Argument name Comments When an existing part type name is passed to this property, it returns that PartType Object. Otherwise, this property returns the collection of all part types in an Objects Collection Object. Sample The following sample code retrieves the number of part types in the current sheet of an open schematic using the Objects.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set pkgs = ActiveDocument.ActiveSheet.PartTypes MsgBox "There are " & pkgs.Count & " part type(s) in the current sheet of " & ActiveDocument.Name End Sub
553
Sheet.Activate
This method activates the specified sheet. Prototype Activate Arguments None Comments None Sample The following sample activates the first sheet in the active document. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.Sheets(1).Activate End Sub
554
Sheet.AddComponent
This method adds a new part (all its gates) to the active sheet, and returns new part object. Prototype AddComponent (PartType As String, [RefDes As String], [PositionX As Double = PlogDefaultPositionX], [PositionY As Double = plogDefaultPositionX], [DeltaX As Double = plogDefaultPositionX], [DeltaY As Double = plogDefaultPositionX], [Unit As PlogUnit]) As Component Arguments Argument Description PartType: RefDes: PositionX: PositionY: DeltaX: DeltaY: Unit: Return Values New part object packaged as Component. Comments This property generates an Exception if the arguments are not valid. Sample The following sample adds a new component to the active sheet and selects it. See Code Samples on page 419 for more information on running this sample.
Sub Main Set comp = ActiveDocument.ActiveSheet.AddComponent("7402", "U2") Comp.Selected = True End Sub
Required part type name. [Optional] Name of the part to which this Gate belongs. If RefDes is not specified, the next reference designator is used. [Optional] x-coordinate of the new gate. If PositionX is not specified, an xcoordinate is selected within the current sheet view. [Optional] y-coordinate of the new gate. If PositionY is not specified, a ycoordinate is selected within the current sheet view. [Optional] x-coordinate increment between gates. If DeltaX is not specified, it is calculated automatically. [Optional] y-coordinate increment between gates. If DeltaY is not specified, it is calculated automatically. [Optional] Unit in which the position is given. If Unit is not specified, the current unit is used.
555
Sheet.AddGate
This method adds a new gate to the active sheet, and returns a new gate object. Prototype AddGate(PartType As String, [RefDes As String], [GateIndex As Long], [PositionX As Double = PlogDefaultPositionX], [PositionY As Double = plogDefaultPositionY], [Unit As PlogUnit]) As Gate Arguments Argument Description PartType RefDes GateIndex PositionX PositionY Unit Return Values New gate object packaged as Gate. Comments This property generates an Exception if the arguments are not valid. Sample The following sample adds the first unused gate of the part to the active sheet and selects it. See Code Samples on page 419 for more information on running this sample.
Sub Main Set part = ActiveDocument.Components("U1") Set sht = ActiveDocument.ActiveSheet For Each gt in part.UnusedGates Set newGate = sht.AddGate(part.PartType, part.Name, gt.Number) newGate.Selected = True Exit For Next End Sub
Required part type name. [Optional] Name of the part to which this Gate belongs. If RefDes is not specified, the next available reference designator is used [Optional] Gate index in the part. If GateIndex is not specified, the next available gate index is used. [Optional] x-coordinate of the new Gate. If PositionX is not specified, an xcoordinate is selected within the current sheet view. [Optional] y-coordinate of the new Gate. If PositionY is not specified, a ycoordinate is selected within the current sheet view. [Optional] Unit in which the position is given. If Unit is not specified, the current unit is used.
Sheet.GetObjects
This method returns a collection of PADS Logic database objects in this sheet. Prototype GetObjects([type As PlogObjectType = plogObjectTypeAll], [name As String], [selected As Boolean = False]) As Objects Arguments Argument type name selected Return Values The returned object is an Objects Collection Object. If no objects satisfy the request, the returned collection is empty. Comments All arguments to this method are optional, which means that it can be called with no argument at all, or with any combination of arguments. See samples below for more information. Name argument supports wildcarding (U*), lists of items delimited by comma (U1, U2, R1), ranges specified by two object names and the dash character (U1 - U10, U12, R1 R20). Dash must be surrounded by spaces since the dash is a legal symbol in an object name. Only one wildcard per name is allowed and you cannot specify wildcards in a range. You can pass name such as U*, R*, C1 C100 but you cannot pass name such as U*1* or C1* C10*. To get all objects of the same type, use the object Sheet property. For example, to get all gates in a sheet, use Sheet.Gates instead of Sheet.GetObjects (PlogObjectType). This property generates an Exception if the type argument is not a valid PADS Logic database object type. Sample The following sample code shows different ways to use this method, retrieving the number of objects for each way using the Objects.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Dim objs As Object ' Ex1: Get all objects of all types Set objs = ActiveDocument.ActiveSheet.GetObjects MsgBox "Ex1: " & objs.Count & " objects." ' Ex2: Get all selected objects of all types Set objs = ActiveDocument.ActiveSheet.GetObjects(,,True)
Description [Optional] Type of PADS Logic database object to get. [Optional] Value or name of the object(s) to get. [Optional] True to get selected objects only. False to get all objects.
557
Automation Server Reference Sheet.GetObjects MsgBox "Ex2: " & objs.Count & " selected objects." ' Ex3: Get all net objects Set objs = ActiveDocument.ActiveSheet.GetObjects(plogObjectTypeNet) MsgBox "Ex3: " & objs.Count & " net objects." ' Ex4: Get all net objects of name "VCC" (there is at least 1 of course) Set objs = ActiveDocument.ActiveSheet.GetObjects(plogObjectTypeNet, "VCC") MsgBox "Ex4: " & objs.Count & " VCC net objects." ' Ex5: Get all part objects which names begin with U Set objs = ActiveDocument.ActiveSheet.GetObjects(plogObjectTypeComponent, "U*") MsgBox "Ex3: " & objs.Count & " U* part objects." End Sub
See Also Document.SelectObjects, Document.Components, Document.Gates, Document.Nets, Document.Pins, Document.PartTypes, Document.GetObjects, Sheet.Components, Sheet.Gates, Sheet.Nets, Sheet.Pins, Sheet.PartTypes
558
Sheets.Add
This method adds a new sheet to the schematic. Prototype Add As Sheet Arguments None Return Values The new sheet packaged as a Sheet Object. See Also Sheets.Delete
559
Sheets.Delete
This method deletes a sheet. Prototype Delete(index As Long) Delete(name As String) Arguments Argument index name Comments This property generates an Exception in the following cases: Sample The following sample code deletes sheet MYSHEET from the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.Sheets.Delete("MYSHEET") End Sub
Description Index (in the collection) of the sheet to delete. Name of the sheet to delete.
If the name argument is not an existing sheet. If the name argument is not a valid sheet to delete. If the index argument is higher than the number of existing sheets.
560
View Object
The View object represents the current PADS Logic view window, showing the active sheet in the open schematic. This object is usually retrieved using the Document.ActiveView property. View Properties View.Application View.BottomRightX View.BottomRightY View.Name View.Parent View.PointerX View.PointerY View.TopLeftX View.TopLeftY
561
View.Application
This property returns the PADS Logic Application object. Prototype Application As Application Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is normally used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications. Use the property to quickly identify the application to which the object belongs.
562
View.BottomRightX
This property returns the X value of the lower right corner of the view. Prototype BottomRightX([unit As PlogUnit]) As Double Arguments Argument unit Comments None Sample The following sample code retrieves the coordinates of the current view in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main x0 = Format$(ActiveDocument.ActiveView.TopLeftX, "Fixed") y0 = Format$(ActiveDocument.ActiveView.TopLeftY, "Fixed") x1 = Format$(ActiveDocument.ActiveView.BottomRightX, "Fixed") y1 = Format$(ActiveDocument.ActiveView.BottomRightY, "Fixed") MsgBox "View is (" & x0 & ", " & y0 & ") - (" & x1 & ", " & y1 & ") End Sub
563
View.BottomRightY
This property returns the Y value of the lower right corner of the view. Prototype BottomRightY([unit As PlogUnit]) As Double Arguments Argument unit Comments None Sample The following sample code retrieves the coordinates of the current view in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main x0 = Format$(ActiveDocument.ActiveView.TopLeftX, "Fixed") y0 = Format$(ActiveDocument.ActiveView.TopLeftY, "Fixed") x1 = Format$(ActiveDocument.ActiveView.BottomRightX, "Fixed") y1 = Format$(ActiveDocument.ActiveView.BottomRightY, "Fixed") MsgBox "View is (" & x0 & ", " & y0 & ") - (" & x1 & ", " & y1 & ") End Sub
564
View.Name
This property returns the name of the view. Prototype Name As String Arguments None Comments For example, in PADS Logic this function returns the string Current View. This property is the default property for the View object. Sample The following sample code retrieves the name of the current view. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox ActiveDocument.ActiveView.Name End Sub
565
View.Parent
This property returns the parent of the object. Prototype Parent As Document Arguments None Comments None
566
View.PointerX
This property returns the pointer's X position. Prototype PointerX (unit as PlogUnit) as Double Argument Argument unit Sample This sample also contains the PointerY property.
' load preview.sch Application.ModelessCommand("s") DlgModelessCmd.Command = "s U5-A" DlgModelessCmd.OnOk() doc = Application.ActiveDocument view = doc.ActiveView MsgBox view.PointerX & ", " & view.PointerY
Description [Optional] Unit in which the value is returned. This optional argument is plogUnitCurrent by default.
567
View.PointerY
This property returns the pointer's Y position. Prototype PointerY (unit as PlogUnit) as Double Argument Argument unit Sample This sample also contains the PointerX property.
' load preview.sch Application.ModelessCommand("s") DlgModelessCmd.Command = "s U5-A" DlgModelessCmd.OnOk() doc = Application.ActiveDocument view = doc.ActiveView MsgBox view.PointerX & ", " & view.PointerY
Description [Optional] Unit in which the value is returned. This optional argument is plogUnitCurrent by default.
568
View.TopLeftX
This property returns the x-coordinate of the upper left corner of the view. Prototype TopLeftX([unit As PlogUnit]) As Double Arguments Argument unit Comments None Sample The following sample code retrieves the coordinates of the current view of the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main x0 = Format$(ActiveDocument.ActiveView.TopLeftX, "Fixed") y0 = Format$(ActiveDocument.ActiveView.TopLeftY, "Fixed") x1 = Format$(ActiveDocument.ActiveView.BottomRightX, "Fixed") y1 = Format$(ActiveDocument.ActiveView.BottomRightY, "Fixed") MsgBox "View is (" & x0 & ", " & y0 & ") - (" & x1 & ", " & y1 & ") End Sub
569
View.TopLeftY
This property returns the y-coordinate of the upper left corner of the view. Prototype TopLeftY([unit As PlogUnit]) As Double Arguments Argument unit Comments None Sample The following sample code retrieves the coordinates of the current view of the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main x0 = Format$(ActiveDocument.ActiveView.TopLeftX, "Fixed") y0 = Format$(ActiveDocument.ActiveView.TopLeftY, "Fixed") x1 = Format$(ActiveDocument.ActiveView.BottomRightX, "Fixed") y1 = Format$(ActiveDocument.ActiveView.BottomRightY, "Fixed") MsgBox "View is (" & x0 & ", " & y0 & ") - (" & x1 & ", " & y1 & ") End Sub
570
View.Pan
This method pans the view to a specified location. Prototype Pan(x As Double, y As Double, [unit As PlogUnit]) Arguments Argument x y unit Comments None Sample The following sample code centers the view to the location of the first gate of the component U1, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main x = ActiveDocument.Components("U1").Gate(1).PositionX y = ActiveDocument.Components("U1").Gate(1).PositionY ActiveDocument.ActiveView.Pan(x,y) End Sub
Description x-coordinate of the point to which to pan. y-coordinate of the point to which to pan. [Optional] Unit in which the X and Y values are given.
571
View.Refresh
This method refreshes the view. Prototype Refresh Arguments None Comments None Sample The following sample code redraws the PADS Logic workspace. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.ActiveView.Refresh End Sub
572
View.SetExtents
This method sets the view extents. Prototype SetExtents(tlx As Double, tly As Double, brx As Double, bry As Double, [unit As PlogUnit]) Arguments Argument tlx tly brx bry unit Comments None Sample The following sample code sets the view to the extents of all pins connected to first net in the active sheet. See Code Samples on page 419 for more information on running this sample.
Sub Main xMin = 100000000.0 yMin = 100000000.0 xMax = -100000000.0 yMax = -100000000.0 ActiveDocument.ActiveSheet.Net(1).Selected =True for Each nextPin In ActiveDocument.ActiveSheet.Net(1).Pin 'ensure pin is visible i.e. belongs to gate If Not nextPin.Gate Is Nothing Then 'ensure gate is used If Not nextPin.Gate.Sheet Is Nothing Then If nextPin.PositionX < xMin Then xMin = nextPin.PositionX If nextPin.PositionX > xMax Then xMax = nextPin.PositionX If nextPin.PositionY < yMin Then yMin = nextPin.PositionY If nextPin.PositionY > yMax Then yMax = nextPin.PositionY End If End If Next nextPin ActiveDocument.ActiveView.SetExtents(xMin, yMin, xMax, yMax) End Sub
Description x-coordinate of the top left corner of the new view. y-coordinate of the top left corner of the new view x-coordinate of the bottom right corner of the new view. y-coordinate of the bottom right corner of the new view [Optional] Unit in which the tlx, tly, brx, and bry values are given.
573
View.SetExtentsToAll
This method sets the view extents to all objects in the schematic. Prototype SetExtentsToAll () Arguments None Comments None Sample The following sample code sets the view extents to all objects in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.ActiveView.SetExtentsToAll End Sub
574
View.SetExtentsToSheet
This method sets the view extents to the active sheet extents. Prototype SetExtentsToSheet () Arguments None Comments None Sample The following sample code sets the view extents to the active sheet. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.ActiveView.SetExtentsToSheet End Sub
575
View.Change
This event occurs when the current view changes. Prototype View_Change () Arguments None Comments This event occurs after the current view changes or active sheet changes. See Also View.Pan, View.SetExtents, View.SetExtentsToSheet, View.SetExtentsToAll
576
577
Objects.Application
This property returns the PADS Logic Application object. Prototype Application As Application Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is normally used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications. Use the property to quickly identify the application to which the object belongs.
578
Objects.Count
This property returns the number of objects in the collection. Prototype Count As Long Arguments None Comments None Sample The following sample code retrieves the number of selected items in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main Set selectedObjects = ActiveDocument.GetObjects(,,True) MsgBox "There are " & selectedObjects.Count & " selected object(s)." End Sub
579
Objects.Item
This property returns the object given its index or its name. Prototype Item(index As Long) As Object Item(name As String) As Object Arguments Argument index name Comments This is the default member of the Objects collection object. This property generates an Exception if the index or name argument is not valid. Sample The following samples show two different methods for iterating through all PADS Logic database objects contained in the open schematic using Component Object. The second method is generally preferred because it is cleaner and faster. See Code Samples on page 419 for more information on running this sample.
' Method 1: Use the Object.Item property Sub Main Set comps = ActiveDocument.Components for I=1 To comps.Count Set thisComp = comps.Item(I) ' Do something with the component thisComp Next I End Sub ' Method 2: Do not use the Object.Item property (preferred method) Sub Main for Each nextComp in ActiveDocument.Components ' Do something with the component nextComp Next nextComp End Sub
Description Index (in the collection) of the object to retrieve. Name of the object to retrieve.
580
Objects.ItemType
This property returns the type of an object given its index index. Prototype ItemType(index As Long) As PlogObjectType ItemType(name As String) As PlogObjectType Arguments Argument index name Comments This property generates an Exception if the index or name argument is not valid. See Also Objects.Item Description Index of the object in the collection to query. Name of the object to retrieve.
581
Objects.Next
This property returns the index of the next object of type type after the index index. Prototype Next(index As long, type As PlogObjectType) As Long Arguments Argument index type Comments This property generates an Exception if the index argument is not valid. If Index = zero (0), this function returns the index of the first item of the given type. If the item is not found, the return value is zero (0). Description Index of the object in the collection to query. Type of the object to query.
582
Objects.Parent
This property returns the parent of the object. Prototype Parent As Document Arguments None Comments None
583
Objects.Add
This method adds an object to the collection. Prototype Add(object As object) Arguments Argument object Comments This property generates an Exception if the object argument is not a PADS Logic database object. Sample The following sample code creates a collection of all U* parts in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main 'Create empty collection Set UComps = ActiveDocument.GetObjects(plogObjectTypeUnknown) for Each nextComp In ActiveDocument.Components If Left(nextComp.Name, 1) = "U" Then UComps.Add(nextComp) Next nextComp MsgBox "There are " & UComps.Count & " U* parts" End Sub
Description Object to add to the collection. It must be a PADS Logic data object such as Component, Net, Pin, or Gate.
584
Objects.Merge
This method merges two object collections. Prototype Merge(objects As Objects) Arguments Argument objects Comments This method adds all objects in the objects collection object to the current object collection. Description The collection with objects to merge with the current object collection.
585
Objects.Remove
This method removes an object from the collection. Prototype Remove(index As Long) Remove(name As String) Arguments Argument index name Comments This property generates an Exception if the index or name argument is not valid. See Also Objects.Add Description Index of the object to remove. Name of the object to remove.
586
Objects.Reset
This method resets the object collection. Prototype Reset() Arguments None Comments None See Also Objects.Remove
587
Objects.Select
This method selects or deselects all objects in the collection. Prototype Select([bselect As Boolean = True]) Arguments Argument bSelect Comments None Sample The following sample code quickly selects all gates in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.Gates.Select End Sub
588
Objects.Sort
This method sorts objects in the collection by object name. Prototype Sort () Arguments None Comments None Sample The following sample creates collection of pins, sorts them by name, and displays them in a list box. See Code Samples on page 419 for more information on running this sample.
Dim ListPins$(10000) Sub Main Set Objs = ActiveDocument.Pins Objs.Sort index = 0 for Each nextPin In Objs ListPins$(index) = nextPin.Name index = index + 1 Next nextPin ' This piece of code is automatically generated by the PADS Logic Basic Dialog Editor. Begin Dialog UserDialog 180,238,"All Pins Sorted " ' %GRID:10,7,1,1 ListBox 10,7,160,203,ListPins(),.ListBox1 OKButton 10,210,160,21 End Dialog Dim dlg As UserDialog Dialog dlg End Sub
589
Measure Object
The Measure object provides an access to the internal PADS Logic unit parser. The Measure object can be either constructed from Application object (see Application.Measure method) or obtained from the object (see Attribute.Measure property). From the measure object, you can extract information about real value and unit. Measure Properties Measure.Application Measure.Name Measure.Number Measure.Parent Measure.Prefix Measure.Text Measure.Unit Measure.Value
590
Measure.Application
This property returns the PADS Logic Application object. Prototype Application As Application Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is normally used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications. Use the property to quickly identify the application to which the object belongs.
591
Measure.Name
This property returns the name of the quantity represented by the measure. Prototype Name As String Arguments None Comments This property returns the name of a quantity represented by the measure object, for example Capacitance for measure 10pF, Voltage for 5V. Sample The following sample code shows the quantity name of the 10pF measure (the Capacitance). See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox Measure("10pF").Quantity End Sub
592
Measure.Normalize
This method normalizes the text value of the measure and returns a new text. Prototype Normalize As String Arguments None Comments This method selects appropriate unit prefix and appends a unit if it is missed. For example it converts text of the time measure from 5e-9 to 5ns. Sample The following sample normalizes a capacitance measure. See Code Samples on page 419 for more information on running this sample.
Sub Main Set Cap = Measure(2e-10, "F") MsgBox Cap.Normalize ' shows 200pF End Sub
593
Measure.Number
This property returns the number to combine with prefix and unit. Prototype Number As Double Arguments None Comments This property returns the left numeric part of the measure. You can format this number before output using standard methods available in programming language you use for creating a client. Use this property with Measure.Prefix and Measure.Unit. Sample The following sample outputs formatted measure (keeping three digits after point) using standard VB formatting. See Code Samples on page 419 for more information on running this sample.
Sub Main Set Cap = Measure (1.12345e-12, "F") MsgBox Format(Cap.Number, "#.###") & Cap.Prefix & Cap.Unit End Sub
594
Measure.Prefix
This property returns the unit prefix to combine with number and unit. Prototype Prefix([Format As PlogMeasureFormat = plogMeasureFormatStandard]) As String Arguments Argument Format Comments This property returns the prefix currently used in the measure. Use this property with Measure.Number and Measure.Unit. Possible Format values: Sample See sample for Measure.Number See Also Measure.Number, Measure.Unit plogMeasureFormatStandardto return standard prefix representation (e.g., p for Pico, k for Kilo) plogMeasureFormatCurrentto return prefix in format currently used in this Measure value plogMeasureFormatShortto return short prefix (e.g., p for Pico, k for Kilo) plogMeasureFormatLongto return short unit name (e.g., Pico, Kilo, Mega) Description [Optional] Parameter that indicates format of the prefix representation.
595
Measure.Parent
This property returns the PADS Logic Application object. Prototype Parent As Application Arguments None Comments None
596
Measure.Text
This property sets or returns the exact text value of the measure. Prototype Text As String Arguments None Comments This property defines custom format of a measure. Text value consists of number followed by optional prefix and unit. Text value always matches Attribute.Value property if an attribute represents a measure Sample The following sample code demonstrates the difference between Measure.Text, Measure.Value and Attribute.Value properties. See Code Samples on page 419 for more information on running this sample.
Sub Main Set C1 = ActiveDocument.Components("C1") Set Cap = Measure("500pF") C1.Attributes.Add "Capacitance", Cap MsgBox Cap 'displays 0.0000000005 (the default Value property) MsgBox Cap.Value 'displays 0.0000000005 MsgBox Cap.Text 'displays 500pF MsgBox C1.Attributes("Capacitance") 'displays 500pF MsgBox C1.Attributes("Capacitance").Value 'displays 500pF (long form) End Sub
597
Measure.Unit
This property returns the physical unit name of the measure. Prototype Unit([Format As PlogMeasureFormat = plogMeasureFormatStandard]) As String Arguments Argument Format Comments This property returns the name of the physical unit without prefix. Possible Format values: Sample See sample for Measure.Number See Also Measure.Number, Measure.Prefix plogMeasureFormatStandardto return standard unit representation (e.g., F for Capacitance) plogMeasureFormatCurrentto return unit in format currently used in this Measure value plogMeasureFormatShortto return short unit name (e.g., F for Capacitance) plogMeasureFormatLongto return short unit name (e.g., Farad for Capacitance) Description Optional parameter that indicates the format of the unit representation.
598
Measure.Value
This property sets or returns the real value of the measure. Prototype Value As Double Arguments None Comments This property returns floating-point number for a measure taking into account unit prefix. For example, 10000 for 10K or 2e-10 for 200pF. This is a default property, so it can be omitted in Basic scripts. If you set new Value then Measure gets automatically normalized (See Normalize method). Sample The following sample demonstrates how to work with measures. See Code Samples on page 419 for more information on running this sample.
Sub Main '1 Compare two existing measure attributes (.Value call may be omitted) Set U1_Val = ActiveDocument.Components("U1").Attributes("Value").Measure.Value Set U2_Val = ActiveDocument.Components("U2").Attributes("Value").Measure.Value Set U1_Quantity = ActiveDocument.Components("U1").Attributes("Value").Measure.Name Set U2_Quantity = ActiveDocument.Components("U2").Attributes("Value").Measure.Name If U1_Quantity <> U2_Quantity then MsgBox "Cannot compare values with different physical units" ElseIf U1_Val < U2_Val then MsgBox "U1 value is less than U2 value" ElseIf U1_Val > U2_Val then MsgBox "U1 value is greater than U2 value" Else MsgBox "U1 value is equal to U2 value" End If '2 - Check that the Resistor's Value is in range between 100K and 10M Set R1_Val = ActiveDocument.Components("R1").Attributes("Value").Measure If R1_Val >= Measure("100k") And R1_Val <= Measure("10M") And R1_Val.Name = "Resistence" Then MsgBox "Resistor Is In Range [100k, 10M] End If '3 Calculate total thermal dessipation for all parts 'make sure attribute exists for all parts For Each part In ActiveDocument.Components If part.Attributes("Thermal.Dissipation") Is Nothing Then Part.Attributes.Add "Thermal.Dissipation", Measure("10mW") End If Next
599
Automation Server Reference Measure.Value Dim Total As Measure 'declare Total as Measure object explicitly! Set Total = Measure("0mW") 'create Measure to accamulate the total For Each part In ActiveDocument.Components Total = Total + part.Attributes("Thermal.Dissipation").Measure Next MsgBox "Total Thermal Dissipation = " & Total.Text End Sub
600
Library Object
The Library object represents a library included in the library list. Library Properties Library.Application Library.FullName Library.Name Library.ObjectType Library.Parent Library.Path
LibraryItem Object
The LibraryItem object represents an item existing in a particular part library. LibraryItem Properties LibraryItem.Application LibraryItem.Library LibraryItem.Name LibraryItem.ObjectType LibraryItem.Parent LibraryItem.Type
601
Library.Application
This property returns the Application object. Prototype Application As Application Arguments None Comments This is a Microsoft-required property.
602
Library.FullName
This property returns the full name of library files, including path and name. Prototype FullName As String Arguments None Comments None Sample The following sample displays a message box showing the name of the first available library. See Code Samples on page 419 for more information on running this sample.
Sub Main for Each lib In Libraries MsgBox "The full name of the first available library is " & lib.FullName Exit For Next lib End Sub
603
Library.Name
This default property returns the Library's name. Prototype Name As String Arguments None Comments This is a Microsoft-required property. Sample The following sample displays a message box showing the name of the first available library. See Code Samples on page 419 for more information on running this sample.
Sub Main for Each lib In Libraries MsgBox "The name of the first available library is " & lib.Name Exit For Next lib End Sub
604
Library.ObjectType
This property returns the type of this object. Prototype ObjectType As PlogObjectType Arguments None Comments None Sample The following sample tests the ObjectType property. See Code Samples on page 419 for more information on running this sample.
Sub Main for Each lib In Libraries If lib.ObjectType <> plogObjectTypeLibrary Then MsgBox "Test failed" End If Next lib End Sub
605
Library.Parent
This property returns the parent of this object. Prototype Parent As Application Arguments None Comments This is a Microsoft-required property.
606
Library.Path
This property returns the path to the Library. Prototype Path As String Arguments None Comments None Sample The following sample displays a message box showing the name of the first available library. See Code Samples on page 419 for more information on running this sample.
Sub Main for Each lib In Libraries MsgBox "The path to the first available library is " & lib.Path Exit For Next lib End Sub
607
LibraryItem.Application
This property returns the Application object. Prototype Application As Application Arguments None Comments This is a Microsoft-required property.
608
LibraryItem.Library
This property returns a library to the Library Item to which it belongs. Prototype Library As Object Arguments None Comments None Sample The following sample code displays the name of the library to which an item belongs. See Code Samples on page 419 for more information on running this sample.
Sub Main Set items = GetLibraryItems() for Each item In items MsgBox "The item " & item & " belongs to " & item.Library & " library" Exit For Next item End Sub
609
LibraryItem.Name
This default property returns the Library Item's name. Prototype Name As String Arguments None Comments This is a Microsoft-required property. Sample The following sample displays a message box showing the name of the first item in the available libraries. See Code Samples on page 419 for more information on running this sample.
Sub Main Set items = GetLibraryItems() for Each item In items MsgBox "The first item name is " & item.Name Exit For Next item End Sub
610
LibraryItem.ObjectType
This property returns the object type. Prototype ObjectType As PlogObjectType Arguments None Comments None Sample The following sample tests the ObjectType property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set items = GetLibraryItems() for Each item In items If item.ObjectType <> plogObjectTypeLibraryItem Then MsgBox "Test failed" End If Next item End Sub
611
LibraryItem.Parent
This property returns the parent of this object. Prototype Parent As Application Arguments None Comments This is a Microsoft-required property. The Parent property of a LibraryItem object always returns Application.
612
LibraryItem.Type
This property returns the LibraryItem object type. Prototype Type as PlogLibraryItemType Arguments None Comments None Sample The following sample displays the type of a library item. See Code Samples on page 419 for more information on running this sample.
Sub Main Set items = GetLibraryItems() for Each item In items Select Case item.Type Case plogLibraryItemTypePartType MsgBox "Item type: PartType" Case plogLibraryItemType MsgBox "Item type: Decal" Case plogLibraryItemType MsgBox "Item type: LogicDrawing" Case plogLibraryItemType MsgBox "Item type: Drawing" End Select Exit For Next item End Sub
613
Library.GetLibraryItems
This method returns an object collection of all items in this library, or a specified item. Prototype GetLibraryItems (Type as PlogLibraryItemType, Name as String) As Collection Arguments Argument Name Type Comments None Sample This sample displays the number of items in a library. See Code Samples on page 419 for more information on running this sample.
Sub Main for Each lib In Libraries count = lib.GetLibraryItems(plogLibraryItemTypeDecal, "DIP*").Count MsgBox "Library " & lib.Name & " has " & count & " DIP decals" Exit For Next lib End Sub
Description Name of a LibraryItem object to retrieve. May contain wildcards, lists, and ranges. Optional; if omitted, matches any name. [Optional]. Parameter specifying the type of object to retrieve. It is plogLibraryItemTypeAll by default.
614
Library.ImportLibraryItems
This method reads library items from PADS-format ASCII file(s) and returns a collection of the most recently imported items. Prototype ImportLibraryItems (Filename as String) as Collection Arguments Argument Name Comments None Sample This sample imports library items from a file, and displays the number of imported items. See Code Samples on page 419 for more information on running this sample.
Sub Main for Each lib In Libraries Set coll = lib.ImportLibraryItems("C:\sample") MsgBox coll.Count & " items are successfully imported" Exit For Next lib End Sub
615
Library.ImportLibraryItems2
This method reads library items from PowerPCB or PADS Layout format ASCII files. Prototype ImportLibraryItems2 (Filename as String, ImportOption as PcbImportLibMode) as Collection Arguments Argument Filename ImportOption Return Values Returns the collection of just imported items. Comments If ImportOption is pcbImportLibModePrompt, then the Application object fires the OverwriteLibraryItemPrompt event. The client application must process this event to specify whether the existing library item should be overwritten. Description Name of the file from which to import library items. specifies the preference for overwriting existing items.
Net Object
The Net object represents a physical net that exists in the open schematic. Net Properties Net.Application Net.Attributes Net.Name Net.ObjectType Net.Parent Net.Pins Net.Selected Net.Width
616
Net.Application
This property returns the PADS Logic Application object. Prototype Application As Application Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is normally used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications. Use the property to quickly identify the application to which the object belongs.
617
Net.Attributes
This property returns the collection of all attributes of the net. Prototype Attributes As Attributes Attributes(name As String) As Attribute Arguments Argument name Comments When an existing attribute name is passed to this property, it returns that component Attribute object. Otherwise, it returns the collection of all net attributes in an Attributes Collection Object. Sample The following sample code retrieves the number of attributes for net GND, assuming it exists in the open schematic, using the Attributes.Count property. See Code Samples on page 419 for more information on running this sample.
Sub Main Set attrs = ActiveDocument.Nets("GND").Attributes MsgBox "There are " & attrs.Count & " attribute(s) in net GND." End Sub
618
Net.Name
This property returns the name of the net. Prototype Name As String Arguments None Comments For example, this property returns the string GND for net GND. This property is the default property for the Net object. Sample The following sample code retrieves all nets in the open schematic and places that list in a custom dialog box. When a net is selected in the list box, the sample selects that net in PADS Logic. This sample uses the UserDialog Editor in the Sax Basic Engine in PADS Logic. See Sax Basic Editor On-line Help for more information. See Code Samples on page 419 for more information on running this sample.
Dim ListNets$(10000) Sub Main index = 0 for Each nextNet In ActiveDocument.Nets ListNets$(index) = nextNet.Name index = index + 1 Next nextNet ' This piece of code is automatically generated by the PADS Logic Basic Dialog Editor. Begin Dialog UserDialog 180,238,"Nets",.CallbackFunc ' %GRID:10,7,1,1 ListBox 10,7,160,203,ListNets(),.ListBox1 OKButton 10,210,160,21 End Dialog Dim dlg As UserDialog Dialog dlg End Sub ' The following function is automatically called by the system when something has happened ' in the dialog; it is used to easily process user actions. Function CallbackFunc%(DlgItem$, Action%, SuppValue%) Select Case Action% Case 2 ' Value changing or button pressed If DlgItem$ = "ListBox1" Then ActiveDocument.SelectObjects(plogObjectTypeAll, , False) ActiveDocument.SelectObjects(plogObjectTypeNet, ListNets(SuppValue%)) End If End Select End Function
619
Net.ObjectType
This property returns the type of the object. Prototype ObjectType As PlogObjectType Arguments None Comments This property returns PlogObjectTypeNet. All PADS Logic database objects in the PADS Logic Automation server implement this property to compensate for the lack of a Basic equivalent for the Visual C++ QueryInterface function. This property is generally used: To identify the kind of PADS Logic database objects in a heterogeneous Objects Collection Object. When implementing a generic routine that depends on the type of the PADS Logic database object passed as an argument. For example:
Sub DoSomething(dbObject As Object) Select Case dbObject.ObjectType Case plogObjectTypeComponent ' Do something specific to component objects Case plogObjectTypeNet ' Do something specific to net objects Case plogObjectTypePin ' Do something specific to pin objects Case plogObjectTypeGate ' Do something specific to gate objects Case Else MsgBox "Not a PADS Logic database object" End Select End Sub
620
Net.Parent
This property returns the parent of the object. Prototype Parent As Document Arguments None Comments None
621
Net.Pins
This property returns the collection of all pins connected to the net. Prototype Pins As Objects Pins(name As String) As Pin Arguments Argument name Comments When an existing pin name is passed to this property, it returns that Pin Object. Otherwise, it returns the collection of all pins connected to the net in an Objects Collection Object. Sample The following sample code retrieves the number of pins connected to net GND, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "GND connects " & ActiveDocument.Nets("GND").Pins.Count & " pins." End Sub
622
Net.Selected
This property sets or returns whether the net is selected. Prototype Selected As Boolean Arguments None Comments You can also select a PADS Logic database object using the Document.SelectObjects or Objects.Select methods. Sample The following sample code selects net GND only, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.SelectObjects(,,False) ActiveDocument.Nets("GND").Selected = True End Sub
623
Net.Width
This property returns the width of the specified net. Prototype Width([Unit As PlogUnit]) As Double Arguments Argument Unit Comments None Sample The following sample code retrieves the width of net GND, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Width of GND net is " & ActiveDocument.Nets("GND").Width End Sub
624
PartType Object
The PartType object represents a part type (package) of a physical part that exists in the open schematic. PartType Properties PartType.Application PartType.Components PartType.ECORegistered PartType.Logic PartType.Name PartType.ObjectType PartType.Parent PartType.Selected
625
PartType.Application
This property returns the PADS Logic Application object. Prototype Application As Application Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is normally used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications. Use the property to quickly identify the application to which the object belongs.
626
PartType.Components
This property returns an object collection of all components of this part type. Prototype Components As Objects Components (name As String) As Component Arguments Argument name Comments When an existing pin name is passed to this property, it returns that Component Object. Otherwise, it returns the collection of all components of the part type as Objects Collection Object. Sample The following sample displays total number of 7400 parts.
Sub Main MsgBox Str(ActiveDocument.PartTypes("7400").Components.Count) End Sub
627
PartType.ECORegistered
This property sets or returns the ECO Registration status for the PartType. Prototype Selected As Boolean Arguments None Comments None Sample
The following sample code sets the ECO registration status to unregistered for the Part Type "87C256" if it exists, then checks to see if it is registered displays a message box indicating that it is either ECO registered or not. Sub Main ActiveDocument.PartTypes("87C256").ECORegistered = False If ActiveDocument.PartTypes("87C256").ECORegistered Then MsgBox "Part 87C256 is ECO Registered." Else MsgBox "Part 87C256 is not ECO Registered." End If End Sub
628
PartType.Name
This property returns the name of the part type. Prototype Name As String Arguments None Comments For example, this property returns the string 7402 for part type 7402. This property is the default property for the Component object. Sample The following sample code retrieves all part types in the open schematic and places that list in a custom dialog list box. When a part type is selected in the list box, the sample selects all parts of that part type in PADS Logic. This sample uses the UserDialog Editor in the Sax Basic Engine in PADS Logic. See Sax Basic Editor On-line Help for more information. See Code Samples on page 419 for more information on running this sample.
Dim ListPkgs$(10000) Sub Main index = 0 for Each nextPkg In ActiveDocument.PartTypes ListPkgs$(index) = nextPkg.Name index = index + 1 Next nextPkg ' This piece of code is automatically generated by the PADS Logic Basic Dialog Editor. Begin Dialog UserDialog 180,238,"Part Types",.CallbackFunc ' %GRID:10,7,1,1 ListBox 10,7,160,203,ListPkgs(),.ListBox1 OKButton 10,210,160,21 End Dialog Dim dlg As UserDialog Dialog dlg End Sub ' The following function is automatically called by the system when something has happened ' in the dialog; it is used to easily process user actions. Function CallbackFunc%(DlgItem$, Action%, SuppValue%) Select Case Action% Case 2 ' Value changing or button pressed If DlgItem$ = "ListBox1" Then ActiveDocument.SelectObjects(plogObjectTypeAll, , False) 'get part by name Set pkg = ActiveDocument.PartTypes(ListPkgs(SuppValue%)) 'select part pkg.Selected = True 'activate sheet where first gate of the part is located
629
Automation Server Reference PartType.Name pkg.Components(1).Gates(1).Sheet.Activate End If End Select End Function
630
PartType.ObjectType
This property returns the type of the object. Prototype ObjectType As PlogObjectType Arguments None Comments This property returns PlogObjectTypePartType. All PADS Logic database objects in the PADS Logic Automation server implement this property to compensate for the lack of a Basic equivalent for the Visual C++ QueryInterface function. This property is generally used: To identify the kind of PADS Logic database objects in a heterogeneous Objects Collection Object. When implementing a generic routine that depends on the type of the PADS Logic database object passed as an argument. For example:
Sub DoSomething(dbObject As Object) Select Case dbObject.ObjectType Case plogObjectTypeComponent ' Do something specific to component objects Case plogObjectTypeNet ' Do something specific to net objects Case plogObjectTypePin ' Do something specific to pin objects Case plogObjectTypeGate ' Do something specific to gate objects Case plogObjectTypePartType ' Do something specific to part type objects Case Else MsgBox "Not a PADS Logic database object" End Select End Sub
631
PartType.Parent
This property returns the parent of the object. Prototype Parent As Document Arguments None Comments None
632
PartType.Selected
This property sets or returns whether the components of the part type are selected. Prototype Selected As Boolean Arguments None Comments The part type is considered selected when one or more components of this part type is selected. You can also select a PADS Logic database object using the Document.SelectObjects or Objects.Select methods. Sample The following sample code selects part type 7400 only, assuming it exists in the open schematic, and activates the sheet on which it resides. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.SelectObjects(,,False) ActiveDocument.PartTypes("7400").Selected = True ActiveDocument.PartTypes("7400").Components(1).Gates(1).Sheet.Activate End Sub
633
PartType.Logic
This property returns the logic family of the part type. Prototype Logic As String Arguments None Comments None Sample The following sample code retrieves the logic family of the part type 7400, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "The Logic family of 7400 is " & ActiveDocument.PartTypes("7400").Logic End Sub
634
Pin Object
The Pin object represents a physical pin that exists in the open schematic. Pin Properties Pin.AlphaNumber Pin.Application Pin.Component Pin.ElectricalType Pin.FunctionName Pin.Gate Pin.GatePinName Pin.Name Pin.Net Pin.ObjectType Pin.Parent Pin.PositionX Pin.PositionY Pin.Selected Pin.SwapClass
635
Pin.AlphaNumber
This property returns the alphanumeric of the pin. Prototype Alpha Number As String Arguments None Comments None Sample The following sample code retrieves the alphanumeric pin number for pin U1.1, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main Set U1_1 = ActiveDocument.Pins("U1.1") MsgBox "Pin U1.1 has pin number " & U1_1.AlphaNumber & " in component " & U1_1.Component.Name End Sub
636
Pin.Application
This property returns the PADS Logic Application object. Prototype Application As Application Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is normally used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications. Use the property to quickly identify the application to which the object belongs.
637
Pin.Component
This property returns the component to which the pin belongs. Prototype Component As Component Arguments None Comments None Sample The following sample code displays the component to which pin U1.1 belongs, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Pin U1.1 belongs to component " & ActiveDocument.Pins("U1.1").Component.Name End Sub
638
Pin.ElectricalType
This property returns the gate type of the pin. Prototype ElectricalType As PlogPinElectricalType Arguments None Comments None Sample The following sample code retrieves the electrical type of pin U1, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Pin U1.1 has type " & ElectricalTypeName(ActiveDocument.Pins("U1.1").ElectricalType) End Sub Function ElectricalTypeName(theType As Long) As String Select Case theType Case plogElectricalTypeUnknown ElectricalTypeName = "unknown" Case plogElectricalTypeSource ElectricalTypeName = "source" Case plogElectricalTypeBidirectional ElectricalTypeName = "bidirectional" Case plogElectricalTypeOpenCollector ElectricalTypeName = "open collector" Case plogElectricalTypeOrTieableSource ElectricalTypeName = "tiable source" Case plogElectricalTypeTristate ElectricalTypeName = "tristate" Case plogElectricalTypeLoad ElectricalTypeName = "load" Case plogElectricalTypeTerminator ElectricalTypeName = "terminator" Case plogElectricalTypePower ElectricalTypeName = "power" Case plogElectricalTypeGround ElectricalTypeName = "ground" Case Else ElectricalTypeName = "unknown" End Select End Function
639
Pin.FunctionName
This property returns the function name of the pin. Prototype FunctionName As String Arguments None Comments None Sample The following sample code retrieves the function name of pin U1, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Pin U1.1 function name is " & ActiveDocument.Pins("U1.1").FunctionName End Sub
640
Pin.Gate
This property returns the gate to which the pin belongs. Prototype Gate As Gate Arguments None Comments This property returns Nothing if the pin does not belong to any gate. Sample The following sample code retrieves the gate to which pin U1.1 belongs, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main Set U1_1 = ActiveDocument.Pins("U1.1") If U1_1.Gate Is Nothing Then MsgBox "Pin U1.1 does not belong to any gate" Else MsgBox "Pin U1.1 belongs to gate " & U1_1.Gate.Name End If End Sub
641
Pin.GatePinName
This property returns the name of this pin through its gate. Prototype GatePinName As String Arguments None Comments This property returns the name consisting of Gate name and local Pin name. For example, U1B.1, U2-B.A. If a pin does not belong to any gate, the return value matches Pin.Name. Sample The following sample code retrieves the gate pin name for pin U1.1, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Pin U1.1 has gate pin name " & ActiveDocument.Pins("U1.1").GatePinName End Sub
642
Pin.Name
This property returns the name of the pin. Prototype Name As String Arguments None Comments For example, this property returns the string U1.1 for pin U1.1. This property is the default property for the Pin object. Sample The following sample code lists all pins, by name, in a custom dialog box. When a pin is selected in the list box, the sample selects that pin in PADS Logic as well. This sample uses the UserDialog Editor in the Sax Basic Engine in PADS Logic. See Sax Basic Editor On-line Help for more information. See Code Samples on page 419 for more information on running this sample.
Dim ListPins$(10000) Sub Main index = 0 for Each nextPin In ActiveDocument.Pins ListPins$(index) = nextPin.Name index = index + 1 Next nextPin ' This piece of code is automatically generated by the PADS Logic Basic Dialog Editor. Begin Dialog UserDialog 180,238,"Pins",.CallbackFunc ' %GRID:10,7,1,1 ListBox 10,7,160,203,ListPins(),.ListBox1 OKButton 10,210,160,21 End Dialog Dim dlg As UserDialog Dialog dlg End Sub ' The following function is automatically called by the system when something has happened ' in the dialog; it is used to easily process user actions. Function CallbackFunc%(DlgItem$, Action%, SuppValue%) Select Case Action% Case 2 ' Value changing or button pressed If DlgItem$ = "ListBox1" Then ActiveDocument.SelectObjects(plogObjectTypeAll, , False) ActiveDocument.SelectObjects(plogObjectTypePin, ListPins(SuppValue%)) End If End Select End Function
643
Pin.Net
This property returns the net connected to the pin. Prototype Net As Net Arguments None Comments This property returns Nothing if the pin is not connected. Sample The following sample code retrieves the net connected to pin U1.1, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main MsgBox "Pin U1.1 is connected to net " & ActiveDocument.Pins("U1.1").Net.Name End Sub
644
Pin.ObjectType
This property returns the type of the object. Prototype ObjectType As PlogObjectType Arguments None Comments This property returns PlogObjectTypePin. All PADS Logic database objects in the PADS Logic Automation server implement this property to compensate for the lack of a Basic equivalent for the Visual C++ QueryInterface function. This property is generally used: To identify the kind of PADS Logic database objects in a heterogeneous Objects Collection Object. When implementing a generic routine that depends on the type of the PADS Logic database object passed as an argument. For example:
Sub DoSomething(dbObject As Object) Select Case dbObject.ObjectType Case plogObjectTypeComponent ' Do something specific to component objects Case plogObjectTypeNet ' Do something specific to net objects Case plogObjectTypePin ' Do something specific to pin objects Case plogObjectTypeGate ' Do something specific to gate objects Case Else MsgBox "Not a PADS Logic database object" End Select End Sub
645
Pin.Parent
This property returns the parent of the object. Prototype Parent As Document Arguments None Comments None
646
Pin.PositionX
This property returns the x-coordinate of the pin. Prototype PositionX([unit As PlogUnit]) As Double Arguments Argument unit Comments This property generates an Exception if the pin is unused or signal. Sample The following sample code retrieves the coordinates of pin U1.1, assuming it exists in the open schematic, in current design units. See Code Samples on page 419 for more information on running this sample.
Sub Main Set pinU1_1 = ActiveDocument.Pins("U1.1") MsgBox "U1.1 position is (" & pinU1_1.PositionX & ", " & pinU1_1.PositionY & ")" End Sub
647
Pin.PositionY
This property returns the y-coordinate of the pin. Prototype PositionY([unit As PlogUnit]) As Double Arguments Argument unit Comments This property generates an Exception if the pin is unused or signal. Sample The following sample code retrieves the coordinates of pin U1.1, assuming it exists in the open schematic, in current design units. See Code Samples on page 419 for more information on running this sample.
Sub Main Set pinU1_1 = ActiveDocument.Pins("U1.1") MsgBox "U1.1 position is (" & pinU1_1.PositionX & ", " & pinU1_1.PositionY & ")" End Sub
648
Pin.Selected
This property sets or returns whether the pin is selected. Prototype Selected As Boolean Arguments None Comments You can also select a PADS Logic database object using theDocument.SelectObjects or Objects.Select methods. Sample The following sample code selects pin U1.1 only, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.SelectObjects(,,False) ActiveDocument.Pins("U1.1").Selected = True End Sub
649
Pin.SwapClass
This property returns the Swap Class of this pin. Prototype SwapClass As Long Arguments None Comments None Sample The following sample code retrieves the swap class of the pin U1.1, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main Set U1_1 = ActiveDocument.Pins("U1.1") MsgBox "Pin U1.1 has swap class " & U1_1.SwapClass End Sub
650
Gate Object
The Gate object represents a physical gate that exists in the open schematic. Gates can be used or unused. If the gate is unused, its Sheet property is Nothing. The following button presents a list of the properties in the Gate object. Gate Properties Gate.Application Gate.Component Gate.Name Gate.Number Gate.ObjectType Gate.Parent Gate.Pins Gate.PositionX Gate.PositionY Gate.ReflectedX Gate.ReflectedY Gate.Rotated90 Gate.Selected Gate.Sheet Gate.SwapClass Gate.Visibility
651
Gate.Application
This property returns the PADS Logic Application object. Prototype Application As Application Arguments None Comments This property identifies the object as a PADS Logic Automation object. All Automation server applications have an Application object and all Automation objects have an Application property. This property is normally used in large Automation client applications that handle large volumes of objects from different sources, such as different Automation server applications. Use the property to quickly identify the application to which the object belongs.
652
Gate.Component
This property returns the component of which the gate is a part. Prototype Component As Component Arguments None Sample The following sample code retrieves the component of which the gate U6-A is a part, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main OpenDocument DefaultFilePath & "\preview.sch" MsgBox "Gate U6-A belongs to component " & ActiveDocument.Gates("U6A").Component.Name End Sub
653
Gate.Name
This property returns the name of the gate. Prototype Name As String Arguments None Comments This property is the default property for the Gate object. Sample The following sample code retrieves all gates, by name, for the active sheet and lists them in a custom dialog box. When a gate is selected in the list box, the sample selects that gate in PADS Logic. This sample uses the UserDialog Editor in the Sax Basic Engine in PADS Logic. See Sax Basic Editor On-line Help for more information. See Code Samples on page 419 for more information on running this sample.
Dim ListGates$(10000) Sub Main index = 0 for Each nextGate In ActiveDocument.ActiveSheet.Gates ListGates$(index) = nextGate.Name index = index + 1 Next nextGate ' This piece of code is automatically generated by the PADS Logic Basic Dialog Editor. Begin Dialog UserDialog 180,238,"Gates",.CallbackFunc ' %GRID:10,7,1,1 ListBox 10,7,160,203,ListGates(),.ListBox1 OKButton 10,210,160,21 End Dialog Dim dlg As UserDialog Dialog dlg End Sub ' The following function is automatically called by the system when something has happened ' in the dialog; it is used to easily process user actions. Function CallbackFunc%(DlgItem$, Action%, SuppValue%) Select Case Action% Case 2 ' Value changing or button pressed If DlgItem$ = "ListBox1" Then ActiveDocument.SelectObjects(plogObjectTypeAll, , False) ActiveDocument.SelectObjects(plogObjectTypeGate, ListGates(SuppValue%)) End If End Select End Function
654
Gate.Number
This property returns the index of this gate in the part. Prototype Number As Long Arguments None Comments U1-A gate is index number 1; U1-B is index number 2; and so forth. Sample The following sample code retrieves the index of gate U6-A, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main OpenDocument DefaultFilePath & "\preview.sch" Set U6A = ActiveDocument.Gates("U6-A") MsgBox "Gate U6-A has gate index " & U6A.Number & " in component " & U6A.Component.Name End Sub
655
Gate.ObjectType
This property returns the type of the object. Prototype ObjectType As PlogObjectType Arguments None Comments This property returns PlogObjectTypeGate. All PADS Logic database objects in the PADS Logic Automation server implement this property to compensate for the lack of a Basic equivalent for the Visual C++ QueryInterface function. This property is generally used: To identify the kind of PADS Logic database objects in a heterogeneous Objects Collection Object. When implementing a generic routine that depends on the type of the PADS Logic database object passed as an argument. For example:
Sub DoSomething(dbObject As Object) Select Case dbObject.ObjectType Case plogObjectTypeComponent ' Do something specific to component objects Case plogObjectTypeNet ' Do something specific to net objects Case plogObjectTypePin ' Do something specific to pin objects Case plogObjectTypeGate ' Do something specific to gate objects Case Else MsgBox "Not a PADS Logic database object" End Select End Sub
656
Gate.Parent
This property returns the parent of the object. Prototype Parent As Document Arguments None Comments None
657
Gate.Pins
This property returns the collection of all pin for the gate. Prototype Pins As Objects Pin(name As String) As Pin Arguments Argument name Comments When an existing pin name is passed to this property, it returns that Pin Object. Otherwise, it returns the collection of all pins of the gate in an Objects Collection Object. Sample The following sample retrieves the total number of pins in gate U6-A. See Code Samples on page 419 for more information on running this sample.
Sub Main OpenDocument DefaultFilePath & "\preview.sch" MsgBox "Total pin count in the gate U6A is " & ActiveDocument.Gates("U6A").Pins.Count End Sub
658
Gate.PositionX
This property returns the x-coordinate of the component. Prototype PositionX([unit As PlogUnit]) As Double Arguments Argument unit Comments None Sample The following sample code retrieves the location of gate U6-A in current design units. See Code Samples on page 419 for more information on running this sample.
Sub Main OpenDocument DefaultFilePath & "\preview.sch" Set U6A = ActiveDocument.Gates("U6-A") MsgBox "U6-A position is (" & U6A.PositionX & ", " & U6A.PositionY & ")" End Sub
659
Gate.PositionY
This property returns the y-coordinate of the component. Prototype PositionY([unit As PlogUnit]) As Double Arguments Argument unit Comments None Sample The following sample code retrieves the location of gate U6-A in current design units. See Code Samples on page 419 for more information on running this sample.
Sub Main OpenDocument DefaultFilePath & "\preview.sch" Set U6A = ActiveDocument.Gates("U6-A") MsgBox "U6-A position is (" & U6A.PositionX & ", " & U6A.PositionY & ")" End Sub
660
Gate.ReflectedX
This property sets mirroring or returns whether the gate is mirrored along the X axis. Prototype ReflectedX As Boolean Arguments None Comments This property generates an Exception if gate is unused. Sample The following sample rotates and mirrors gate U6-A. See Code Samples on page 419 for more information on running this sample.
Sub Main OpenDocument DefaultFilePath & "\preview.sch" Set U6A = ActiveDocument.Gates("U6-A") U6A.ReflectedX = True U6A.ReflectedY = True U6A.Rotated90 = True End Sub
661
Gate.ReflectedY
This property sets mirroring or returns whether the gate is mirrored along the Y axis. Prototype ReflectedY As Boolean Arguments None Comments This property generates an Exception if gate is unused. Sample The following sample rotates and mirrors gate U6-A. See Code Samples on page 419 for more information on running this sample.
Sub Main OpenDocument DefaultFilePath & "\preview.sch" Set U6A = ActiveDocument.Gates("U6-A") U6A.ReflectedX = True U6A.ReflectedY = True U6A.Rotated90 = True End Sub
662
Gate.Rotated90
This property sets rotation or returns whether the gate is rotated. Prototype Rotated90 As Boolean Arguments None Comments This property generates an Exception if the gate is unused. Sample The following sample rotates and mirrors gate U6-A. See Code Samples on page 419 for more information on running this sample.
Sub Main OpenDocument DefaultFilePath & "\preview.sch" Set U6A = ActiveDocument.Gates("U6-A") U6A.ReflectedX = True U6A.ReflectedY = True U6A.Rotated90 = True End Sub
663
Gate.Selected
This property sets or returns whether the gate is selected. Prototype Selected As Boolean Arguments None Comments You can also select a PADS Logic database object using the Document.SelectObjects or Objects.Select methods. Sample The following sample code selects a gate, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main ActiveDocument.SelectObjects(,,False) ActiveDocument.Gates("U1-A").Selected = True End Sub
664
Gate.Sheet
This property returns the sheet on which the gate is located. Prototype Sheet As Sheet Arguments None Comments If the gate is unused, the return value is Nothing. You can check the Gate for unused status using this property. Sample The following sample retrieves the first gate of component U1 and retrieves the name of sheet on which the gate is located. See Code Samples on page 419 for more information on running this sample.
Sub Main Set gate = ActiveDocument.Components("U1").Gate(1) If gate.Sheet Is Nothing then MsgBox "This Gate is Unused!" Else MsgBox "First gate of part U1 is located in sheet " & gate.Sheet End If End Sub
665
Gate.SwapClass
This property returns the Swap Class of this gate. Prototype SwapClass As Long Arguments None Comments None Sample The following sample code retrieves the swap class of gate U6-A, assuming it exists in the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main OpenDocument DefaultFilePath & "\preview.sch" Set U6A = ActiveDocument.Gates("U6-A") MsgBox "Gate U1-A has swap class " & U6A.SwapClass End Sub
666
Gate.Visibility
This property sets visibility or returns whether the gate is visible. Prototype Visibility([Item As PlogGateVisibility = plogAttrVisibility], [AttrName As String = " "]) As Boolean PlogGateVisibility items. Possible values are: plogAttrVisibility = 0 plogAttrNameVisibility = 1 plogRefDesVisibility = 2 plogPartTypeVisibility = 3 plogPinNumberVisibility = 4 plogPinNameVisibility = 5 plogPCBDecalVisibility = 6 plogPCBDecalNameVisibility = 7
Arguments Argument Item AttrName Comments This function does not redraw the gate. Use the View.Refresh method to update the screen. Sample The following sample code sets the visibility of gate U6-A. See Code Samples on page 419 for more information on running this sample.
Sub Main OpenDocument DefaultFilePath & "\preview.sch" Set U6A = ActiveDocument.Gates("U6-A") 'Show attribute "MFG #1" if it exists If Not U6A.Component.Attributes("MFG #1") Is Nothing Then U6A.Visibility(,"MFG #1") = True End If U6A.Visibility(plogRefDesVisibility) = False 'Hide reference designator ActiveDocument.ActiveView.Refresh End Sub
Description [Optional] Visibility item. By default, it specifies the visibility of the attribute specified in AttrName. [Optional] Attribute name. It can be used with items plogAttrVisibility and plogAttrNameVisibility. It should be omitted for other items.
667
668
Gate.Delete
This method deletes this gate from the schematic. Prototype Delete Arguments None Comments None Sample The following sample deletes gate U6-A from the open schematic. See Code Samples on page 419 for more information on running this sample.
Sub Main OpenDocument DefaultFilePath & "\preview.sch" ActiveDocument.Gates("U6-A").Delete End Sub
669
Gate.Move
This method moves this gate to new location. Prototype Move(x As Double, y As Double, [unit As PlogUnit]) Arguments Argument x yy unit Comments This property generates an Exception if the arguments are not valid. Sample The following sample code moves all gates to the left on the current design grid. See Code Samples on page 419 for more information on running this sample.
Sub Main For Each nextGate In ActiveDocument.ActiveSheet.Gate nextGate.Move nextGate.PositionX ActiveDocument.GridX, nextGate.PositionY Next nextGate End Sub
Description X-coordinate of the new component position. Y-coordinate of the new component position. [Optional] Unit in which the x and y coordinates are given.
Constants
670
PlogDocumentColor
Possible values are: plogDocumentColorBackground plogDocumentColorSelection plogDocumentColorConnection plogDocumentColorBus plogDocumentColorLine plogDocumentColorPart plogDocumentColorHierarchicalComp plogDocumentColorText plogDocumentColorTextBox plogDocumentColorRefDes plogDocumentColorRefDesBox plogDocumentColorPartType plogDocumentColorPartTypeBox plogDocumentColorPartText plogDocumentColorPartTextBox plogDocumentColorPinNumber plogDocumentColorPinNumberBox plogDocumentColorNetName plogDocumentColorNetNameBox plogDocumentColorField plogDocumentColorFieldBox = 0, = 1, = 2, = 3, = 4, = 5, = 6, = 7, = 8, = 9, = 10, = 11, = 12, = 13, = 14, = 15, = 16, = 17, = 18, = 19, = 20,
671
PlogObjectType
PADS Logic database object type. Possible values are: plogObjectTypeUnknown = 0 The server may return this value to indicate an invalid object. The client may use this value when trying to work with empty object collections. plogObjectTypeComponent = 1 plogObjectTypeNet = 2 plogObjectTypePin = 3 plogObjectTypeGate = 4 plogObjectTypePartType = 8 plogObjectTypeLibrary = 18 plogObjectTypeLibraryItem = 19 plogObjectTypeApplication = 20 plogObjectTypeAll = 9999 All PADS Logic Automation database object types, including the Component, Net, Pin, Gate, and PartType objects.
672
PlogUnit
PADS Logic unit types. Possible values are: Unit types plogUnitCurrent = 0 plogUnitDatabase = 1 plogUnitMils = 2 plogUnitInch = 3 plogUnitMetric = 4 plogUnitDrawArea = 99 Description Current unit in use in the PADS Logic. Internal PADS Logic database unit. Mils unit (1/1000th of an inch). Inch unit. Metric unit (1/1000th of a meter). Internal PADS Logic workspace unit. Never use this value.
673
PlogGridType
PADS Logic grid type. Possible values are: Grid types plogGridNone = 0 plogGridDesign = 1 plogGridDisplay = 3 plogGridAll = 9999 Description None. PADS Logic design grid. PADS Logic display grid. All PADS Logic grids.
674
PlogPinElectricalType
PADS Logic gate electrical types. Possible values are: plogElectricalTypeUnknown = 0 plogElectricalTypeSource = 1 plogElectricalTypeBidirectional = 2 plogElectricalTypeOpenCollector = 3 plogElectricalTypeOrTieableSource = 4 plogElectricalTypeTristate = 5 plogElectricalTypeLoad = 6 plogElectricalTypeTerminator = 7 plogElectricalTypePower = 8 plogElectricalTypeGround = 9
675
PlogASCIIVersion
PADS Logic ASCII versions. Possible values are: plogASCIIVerCurrent = 0 plogASCIIVer1_2 = 1 plogASCIIVer3_0 = 2 plogASCIIVer3_5 = 3
676
PlogNetListVersion
PADS Logic/PADS Layout netlist versions. Possible values are: plogPowerPCBNetListVerCurrent = 0 plogPowerPCBNetListVer2_1 = 2 plogPowerPCBNetListVer3_0 = 3 plogPowerPCBNetListVer3_5 = 4
677
PlogGateVisibility
PADS Logic gate visibility items. Possible values are: plogAttrVisibility = 0 plogAttrNameVisibility = 1 plogRefDesVisibility = 2 plogPartTypeVisibility = 3 plogPinNumberVisibility = 4 plogPinNameVisibility = 5 plogPCBDecalVisibility = 6 plogPCBDecalNameVisibility = 7
678
PlogDefaultPosition
PADS Logic default position coordinates. Possible values are: plogDefaultPositionX = &H80000000 plogDefaultPositionY = &H80000000
679
PlogMeasureFormat
PADS Logic default position coordinates. Possible values are: plogMeasureFormatStandard = 0 plogMeasureFormatCurrent = 1 plogMeasureFormatShort = 2 plogMeasureFormatLong = 3
680
PlogLibraryItemType
PADS Logic library item types. Possible values are: plogLibraryItemTypePartType = 0 plogLibraryItemTypeDecal = 1 plogLibraryItemTypeLogicDrawing = 2 plogLibraryItemTypeDrawing = 3 plogLibraryItemTypeAll = 9999
Optional Arguments
An optional argument is an argument to a property or a method that can be omitted because a default value is used in PADS Logic. The default value is the value that is statistically most used or one that is most representative for that argument. For example, if the method M([arg1], [arg2]) has both arg1 and arg2 arguments set as optional, you can call the method M in four different ways as shown below: Table 17-1. Optional Argument Examples Argument Examples M() M(<value1>) M(, <value2>) M(<value1>, <value2>) Description The default values of both arg1 and arg2 are passed. Arg1s <value1> and arg2s default value are passed. Arg1s default value and arg2s <value2> are passed. Both arg1s <value1> and arg2s <value2> are passed.
Exception
An Automation exception is special notification from the PADS Logic server that signals the Automation client of an error. For example, if a Basic script is trying to delete an attribute that doesn't exist, PADS Logic generates an exception. When the script receives the exception, the following occurs: If an exception handler is implemented using the Basic On Error statement, the flow of execution of the client code is rerouted to the exception handler. If an exception handler in not implemented, the client's default handler is called. In all Basic interpreters, the default handler is a break point at the line that generated the exception.
681
Variant
A Variant is a data type that can contain or represent any kind of data, such as a Boolean value, an Integer value, a Long value, a Double value, a String value, or an Array. The Variant data type is used in PADS Logic Automation in two different situations: When the argument of a property or method is a data that can be represented as different values and value types. For example, a specific object, in a collection of objects, is referenced by its index in the collection (a Long value) or by its name (a String value). When the argument or the return value of a property or a method is a complex type, not explicitly defined by PADS Logic Basic object. For example, an array of points is represented as a Variant.
682
Chapter 18 Macro
Using Command Line Switches with Macros
Using command line switches, you can record your session, load and run a macro, or record a macro to a specific file and location when you start the program. The following descriptions are included in this topic: Recording a Session Recording Log Files to a Specific File and Location Running a Macro When You Start the Program
Recording a Session
1. In the Start menu, navigate to the shortcut for PADS Logic. 2. Right-click the shortcut and click Properties. 3. Click the Shortcut tab and click in the Target box. 4. At the end of the existing shortcut, type: -log. Make sure to type a space between "powerlogic.exe" and the "-log" command. 5. Click OK. When you run the program, a log is created.
683
Variables
The macro engine of this program supports variables, which can either be Null or contain values of the following types:
684
PADS Logic Users Guide, PADS 9.2
Macro Variables
Value types are converted to each other according to these rules, see Table 18-1. Table 18-1. & Operator Arguments From...To... Null Logical Numeric String Logical False None False if 0, True if not 0 Converted to Numeric first Numeric 0 0 if False, 1 if True None If the beginning of the string can be interpreted as a number, then the value of the number is used. Otherwise it is 0. String Empty string 0 if False, 1 if True String representation of the numeric value None
Numeric
The Numeric value represents a floating-point number. Note: The Numeric and String value types are interchangeable; they automatically convert into one another upon assignment.
Logical
The Logical value can be True or False.
String
The String value represents a character string. Note: The Numeric and String value types are interchangeable; they automatically convert into one another upon assignment. Related Topics Str function
685
Macro Variables
Double
Represents numeric value. The double and string types are interchangeable; that is, they automatically convert into one another upon assignment.
686
Macro Expressions
Object
Objects represent complex entities that are handled through an interface consisting of methods and properties. Objects are different from Numeric and String value types. Objects may be of two types: Syntax The syntax for both object types is the same:
Object.Method arg1, ..., argn var = Object.Method( arg1, ..., argn )
Macro objects: Internal objects that are handled using the macro engine vocabularies, and may or may not have the Automation interface. Automation objects: Internal or external objects that are handled using Automation.
Expressions
The macro engine of this program uses either of the following expressions: Numeric: Any expression that can be evaluated as a number. Elements of a numeric expression can include any combination of keywords, variables, constants, and operators that result in a number. String: Any expression that evaluates a sequence of adjacent characters. Elements of a string expression can include a string, a string literal, or a string variable.
687
Macro Operators
Operators
The Macro engine of this program uses the following operators: & Operator * Operator + Operator / Operator - Operator ^ Operator = Operator And Operator Comparison Operators Mod Operator Not Operator Or Operator Xor Operator
688
& Operator
Forces string concatenation of two expressions. Syntax
result = expression1 & expression2
Arguments The & operator has these arguments: result expression1 Required Any numeric variable Required Any expression When the expression is not a string, it is converted to a string. Required Any expression When the expression is not a string, it is converted to a string.
expression2
Example
S = "abc" & "123"
689
Macro * Operator
* Operator
Multiplies two numbers. Syntax
result = number1 * number2
Arguments The * operator has these arguments:: result number1 Required Any numeric variable Required Any expression. If the expression value is not numeric, it is converted to a numeric value. Required Any expression. If the expression value is not numeric, it is converted to a numeric value.
number2
Example
X = y * z
690
Macro + Operator
+ Operator
Sums two numbers. Syntax
result = expression1 + expression2
Arguments The + operator syntax has these arguments: result expression1 expression2 Required Any numeric variable Required Any expression Required Any expression
Note: When you use the + operator, you may not be able to determine whether addition or string concatenation will occur. To force string concatenation, use the & operator instead. This will eliminate ambiguity and provide self-documenting code. Table 18-2 describes the behavior of the + operator for the three combinations of types. Table 18-2. + Operator Behavior Arguments Both expressions are numeric Both expressions are string One expression is numeric and the other is a string Example
X = y + z
691
Macro / Operator
/ Operator
Divides one number by a second number and returns a floating-point result. Syntax
result = number1 / number2
Arguments The / operator has these arguments: result number1 Required Any numeric variable Required Any expression. If the expression value is not numeric, it is converted to a numeric value. Required Any expression. If the expression value is not numeric, it is converted to a numeric value.
number2
Example
x = y/z
692
Macro - Operator
- Operator
Finds the difference between two numbers or indicates the negative value of a numeric expression. Syntax 1
result = number1 - number2
The - operator is the arithmetic subtraction operator, which finds the difference between two numbers. Syntax 2
-number
The - operator is the unary negation operator which indicates the negative value of an expression. Arguments The - operator has these arguments: result number1 Required Any numeric variable Required Any expression. If the expression value is not numeric, it is converted to a numeric value. Required Any expression. If the expression value is not numeric, it is converted to a numeric value.
number2
Example 1
x = y - z
Example 2
-x
693
Macro = Operator
= Operator
Assigns a value to a variable or property. Syntax variable = value Arguments The = operator has these arguments: variable Value Can only be a variable or a writable property. Can be a simple scalar variable or an element of an array. Any numeric expression, string expression, literal, or constant
Example
a = 1
694
Macro ^ Operator
^ Operator
Raises a number to the power of an exponent. Syntax
result = number ^ exponent
Arguments The ^ operator has these arguments: result number exponent Required Any numeric variable Required Any expression Required Any numeric expression A number can be negative only if the exponent is an integer.
When more than one exponentiation is performed in a single expression, the ^ operator is evaluated as it is encountered from left to right. Example
x = y ^ z
695
And Operator
Performs a logical conjunction of two expressions. Syntax result = expression1 And expression2 Arguments The And operator has these arguments: result expression1 Required Any numeric variable Required Any expression. If the expression value is not logical, it is converted to a logical value. Required Any expression. If the expression value is not logical, it is converted to a logical value.
expression2
Table 18-3 illustrates how the result is determine. Table 18-3. And Operator Results If expression1 is True True False False Example
a = b And c
And expression2 is The result is True False True False True False False False
696
Comparison Operators
Compare expressions. Syntax
result = expression1 comparisonoperator expression2
Arguments Comparison operators have these arguments: result expression1 expression2 comparisonoperator Required Any variable Required Any expression Required Any expression Required Can be any comparison operator. For more information, see Table 18-4 below.
Table 18-4 lists the comparison operators and the conditions that determine whether result is True, False, or Null. Table 18-4. Comparison Operators and Results Comparison Operator < (Less than) <= (Less than or equal to) > (Greater than) = (Equal to) <> (Not equal to) Example
b = 1 > 2
False if expression1 >= expression2 expression1 <= expression2 expression1 <> expression2
>= (Greater than or equal to) expression1 >= expression2 expression1 < expression2 expression1 <> expression2 expression1 = expression2
697
Mod Operator
Divides one number by a second number and returns only the remainder. The modulus (remainder) operator rounds floating-point numbers to integers. Syntax
result = number1 Mod number2
Arguments The Mod operator has these arguments: result number1 number2 Required Any numeric variable Required Any numeric expression Required Any numeric expression
Example
x = y Mod z
698
Not Operator
Performs a logical negation on an expression. Syntax
result = Not expression
Arguments The Not operator has these arguments: result expression Required Any numeric variable Required Any expression. If the expression value is not logical, it is converted to a logical value.
Table 18-5 illustrates how result is determined: Table 18-5. Not Operator Results If expression is Then result is True False Example
x = Not y
False True
699
Macro Or Operator
Or Operator
Performs a logical disjunction on two expressions. Syntax
result = expression1 Or expression2
Arguments The Or operator has these arguments: result expression1 Required Any numeric variable Required Any expression. If the expression value is not logical, it is converted to a logical value. Required Any expression. If the expression value is not logical, it is converted to a logical value.
expression2
Table 18-6 illustrates how result is determined: Table 18-6. Or Operator Results If expression1 is And expression2 is Then result is True True False False Example
x = y Or z
700
Xor Operator
Performs a logical exclusion on two expressions. Syntax
[result =] expression1 Xor expression2
Arguments The Xor operator has these arguments: result expression1 Optional Any numeric variable Required Any expression. If the expression value is not logical, it is converted to a logical value. Required Any expression. If the expression value is not logical, it is converted to a logical value.
expression2
Table 18-7 illustrates how result is determined:: Table 18-7. Xor Operator Results If expression1 is And expression2 is Then result is True True False False Example
x = y Xor z
Statements
The macro engine of this program supports the following VBScript and other statements: Call Close Dim Do...Loop For-Next
701
Macro Statements
Function If...Then...Else statement Input # Modal Open Print # ReDim Set Sub While...Wend Width #
702
Macro Call
Call
Transfers control to a sub procedure or function procedure. Syntax
[Call] name [argumentlist]
When you specify the Call keyword to call a procedure that requires arguments, you must enclose argumentlist in parentheses. See example below. Arguments The Call statement has these arguments: Call Optional keyword You are not required to use the Call keyword when calling a procedure. If you omit the Call keyword, you must also omit the parentheses around argumentlist. If you use either the Call syntax to call any intrinsic or user-defined function, the function's return value is discarded. Required Name of the procedure to call Optional Comma-delimited list of variables, arrays, or expressions to pass to the procedure.
name argumentlist
Example
Call MyProc(0)
703
Macro Close
Close
Concludes input/output (I/O) to a file opened using the Open statement. When you close files that were opened for Output or Append, the final buffer of output is written to the operating system buffer for that file; All buffer space associated with the closed file is released; and the association of a file with its file number ends. Syntax
Close [filenumberlist]
Arguments The Close statement has this argument: filenumberlist Optional Can be one or more file numbers using the following syntax, where filenumber is any valid file number:
[[#]filenumber] [, [#]filenumber] . . .
If you omit filenumberlist, all active files opened by the Open statement are closed. Example
close #1
704
Macro Dim
Dim
Declares variables and allocates storage space. Syntax
Dim varname[([subscripts])] [,varname[([subscripts])]] . . .
Arguments The Dim statement has these arguments: varname Required The variable name follows standard variable-naming conventions Optional Dimensions of an array variable The subscripts argument uses the following syntax:
[lower To] upper [, [lower To] upper] . . .
subscripts
When not explicitly stated, the lower bound is zero. You can also use the Dim statement, with empty parentheses, to declare a dynamic array. After declaring a dynamic array, use the ReDim statement to define the number of dimensions and elements in the array. Example
Dim x(10), y(20)
705
Macro Do...Loop
Do...Loop
Repeats a block of statements while a condition is True or until a condition becomes True. Syntax 1
Do [{While | Until} condition] [statements] [Exit Do] [statements] Loop
Syntax 2
Do [statements] [Exit Do] [statements] Loop [{While | Until} condition]
Arguments The Do Loop statement has these arguments: condition Optional One or more of the following two types of expressions: A numeric expression that evaluates to True or False A string expression that evaluates to True or False When condition is Null, condition is treated as False. statements One or more statements that are repeated while, or until, condition is True
You may place any number of Exit Do statements anywhere in the DoLoop statement as an alternative way to exit a Do Loop statement. Exit Do is often used after evaluating some condition, in which case the Exit Do statement transfers control to the statement immediately following the Loop. When used within nested Do Loop statements, Exit Do transfers control to the loop that is nested one level above the loop where Exit Do occurs. Example
Do while i < 10 i = i + 1 loop
706
Macro For-Next
For-Next
Repeats a group of statements a specified number of times. Syntax
For counter = start To end [Step step] [statements] [Exit For] [statements] Next [counter]
Arguments The For-Next statement has these arguments: counter Required Numeric variable used as a loop counter. Counter cannot be a Boolean element or an array element. Required Initial value of counter Required Final value of counter Optional The number by which counter is incremented each time control passes through the loop. If not specified, step defaults to one. Optional One or more statements between For and Next that are executed the counter-specified number of times
statements
The step argument can be either positive or negative. The value of step determines loop processing as described in Table 18-8. Table 18-8. For-Next Statement Loop Counter Value Negative Loop executes if counter >= end Positive or zero counter <= end
After all statements in the loop execute, step is added to counter. At this point, either the statements in the loop execute again (based on the same test that caused the loop to execute initially), or the loop is exited and execution continues with the statement following the Next statement.
707
Macro For-Next
You can place any number of Exit For statements anywhere in the loop as alternative ways to exit. Exit For is often used after evaluating a condition to transfer control to the statement immediately following Next. You can nest For-Next statements by placing one For-Next statement within another. Give each statement a unique variable name as its counter. The following construct is correct:
For A = 1 To 10 For B = 2 To 20 For C = 3 To 30 ... Next C Next B Next A
Example
for i = 0 to 10 step 2 s = sti next i
708
Macro Function
Function
Declares the name, arguments, and code that form the body of a Function procedure. Like a sub procedure, a function procedure is a separate procedure that can take arguments, perform a series of statements, and change the values of its arguments. However, unlike a sub procedure, a function procedure can be used on the right side of an expression in the same way you use any intrinsic function, such as Sqr, Cos, or Chr, when you want to use the value returned by the function. There are two categories of variables you can use in function procedures: Explicitly declared variables within the procedure: These variables are always local to the procedure and use the Dim statement or the equivalent. The values of local variables in a function are not preserved between calls to the procedure. Not explicitly declared variables within the procedure: These variables are also local, unless they are explicitly declared at some higher level outside the procedure.
Syntax
Function name [(arglist)] [statements] [name = expression] [Exit Function] [statements] [name = expression] End Function
The Exit Function statement causes an immediate exit from a function procedure. Program execution continues with the statement that follows the statement that called the function procedure. You can add any number of Exit Function statements in a function procedure. Arguments The Function statement has these arguments: name Required Name of the function procedure Follows standard variable-naming conventions. To return a value from a function, assign a value to the function name. You can assign values to function names anywhere in the procedure. If no value is assigned to name, the procedure returns an empty value. Optional List of variables representing arguments that are passed to the function procedure when the procedure is called. Use commas to separate multiple variables.
arglist
709
Macro Function
statements
Optional Any group of statements to execute within the body of the function procedure. Return value of the function procedure.
expression
Table 18-9 describes the arglist syntax elements: Table 18-9. Function Statement arglist Syntax Part ByVal ByRef Description Indicates that the argument is passed by value. Indicates that the argument is passed by reference.
Varname Name of the variable representing the argument. Follows standard variable naming conventions. You cannot define a function procedure inside any other procedure such as a sub procedure or another function procedure. For specific information about calling a function procedure, see the Call statement. Example The following example shows how to assign a return value to a function named Example. In this case, False is assigned to the name to indicate that a certain condition is not met.
Function Example() ... ' Value not found. Return False. If ConditionNotMet Then Example = False Exit Function End If ... Example = True End Function
710
If...Then...Else statement
May execute a group of statements, based on the value of an expression. Syntax
If condition Then [statements] [Else [elsestatements]]
Block Syntax
If condition Then [statements] [ElseIf condition-n Then [elseifstatements]] ... [Else [elsestatements]] End If
Arguments The If...Then...Else statement has these arguments:: condition Required Any expression. If the expression is not Logical, it is converted to Logical. Optional in block form; required in single-line form that has no Else clause One or more statements separated by colons; executed when condition is True. Optional Any logical expression. If the expression is not Logical, it is converted into a Logical expression. Optional One or more statements executed when associated conditionn is True Optional One or more statements executed when no previous condition or when condition-n is True
statements
condition-n
elseifstatements
elsestatements
You can use the single-line syntax for short, simple tests. For more structure and flexibility use the block syntax. The block syntax can also be easier to read, maintain, and debug. With the single-line syntax, you can execute multiple statements as the result of an If...Then decision. All statements must be on the same line and separated by colons, as in the following statement:
If A > 10 Then A = A + 1 : B = B + A : C = C + B
711
A block If statement must be the first statement on a line. The Else, ElseIf, and End If parts of the statement can be preceded by only a line number or a line label. The block If statement must end with an End If statement. To determine whether or not a statement is a block If statement, examine what follows the Then keyword. If anything other than a comment appears after Then on the same line, the statement is treated as a single-line If statement. The Else and ElseIf clauses are both optional. You can have as many ElseIf clauses as you want in a block If statement, but none can appear after an Else clause. Block If statements can be nested. During the execution of a block If statement, condition is tested. When condition is True, the statements following Then are executed. When condition is False, any ElseIf condition is evaluated in turn. When a True condition is found, the statements immediately following the associated Then are executed. If none of the ElseIf conditions are True (or if there are no ElseIf clauses), the statements following Else are executed. After executing the statements following Then or Else, execution continues with the statement following End If. Examples
If x < y then x = y
and
If x < y then x = y End if
712
Macro Input #
Input #
Reads data from an open text file and assigns the data to variables. Use this statement only with files opened in Input mode. When read, string or numeric data is assigned to variables without modification. Syntax
Input #filenumber, varlist
Arguments The Input # statement has these arguments: filenumber varlist Required Can be any valid file number Required Can be a comma-delimited list of variables that are assigned values read from the file. This cannot be an array or object variable. However, you may use variables that describe an element of an array.
713
Macro Modal
Modal
Opens access to a variable. While a modal dialog is open in a PADS macro, access to all variables outside the open dialog is blockedonly controls within the open dialog are accessible. To make a variable accessible in the context of any open modal dialog, declare it modal at the beginning of the macro file. Syntax
modal variablename
Arguments The modal keyword has these arguments: variablename Required The name of the variable you want to make accessible.
Example
modal docname
714
Macro Open
Open
Enables input and output to a file. You must open a file before performing any I/O operation on it. Open allocates an I/O buffer for the file and determines the mode of access to use with the buffer. If the file is already opened by another process and the specified type of access is not allowed, the Open operation fails and an error occurs. Syntax
Open pathname For mode [Access access] [lock] As [#]filenumber [Len=reclength]
Arguments The Open statement has these arguments: pathname Required String expression that specifies a filename. May also include folder and drive names. Required Keyword specifying the file access mode: Append, Binary, Input, Output, or Random. If mode is unspecified, the file is opened for Random access. Optional Keyword specifying the operations permitted on the open file: Read, Write, or Read Write Optional Keyword specifying the operations restricted on the open file by other processes: Shared, Lock Read, Lock Write, and Lock Read Write
mode
access
lock
If the file specified by pathname does not exist, it is created when a file is opened for Append, Binary, Output, or Random access modes. Example
Open "C:\data.txt" for read as #1
715
Macro Print #
Print #
Writes formatted data to a sequential file. Syntax
Print # filenumber, [outputlist]
Arguments The Print # statement has these arguments: filenumber outputlist Required Any valid file number Optional An expression or list of expressions to print. Nothing is written to the file when outputlist is empty. However, when outputlist is Null, Null is written to the file.
If you omit outputlist and include only a list separator after filenumber, a blank line prints to the file. You can separate multiple expressions with either a space or a semicolon. A space has the same effect as a semicolon. Example
print #1, a, b, c
Table 18-10 describes the outputlist syntax elements: Table 18-10. Print # Statement outputlist Syntax Setting Spc(n) Tab(n) Description Inserts space characters in the output, where n is the number of spaces to insert. Positions the insertion point at an absolute column number, where n is the column number. Use Tab with no argument to position the insertion point at the beginning of the next print zone. Because Print # writes an image of the data to the file, you must delimit the data so it prints correctly. If you use Tab with no arguments to move the print position to the next print zone, Print # also writes the spaces between print fields to the file.
716
Macro Print #
Table 18-10. Print # Statement outputlist Syntax expression Numeric or string expressions to print. You can separate multiple expressions with either a space or a semicolon. charpos Specifies the insertion point for the next character. If you omit charpos, the next character prints on the next line. Use a semicolon to position the insertion point immediately after the last displayed character.
Data written with Print # is usually read from a file with Input #. Example
Print #1, a, Spc(3), b
717
Macro ReDim
ReDim
Reallocates storage space for dynamic array variables. Use ReDim to size a dynamic array that has already been declared using the Dim statement with empty parentheses (without dimension subscripts). You can use ReDim repeatedly to change the number of elements and dimensions in an array. Note: If you re-declare a dimension for an array variable whose size was explicitly specified in a Dim statement, an error occurs. Syntax
ReDim [Preserve] varname(subscripts) [, varname(subscripts)] . . .
Arguments The ReDim statement has these arguments: Preserve Optional Keyword used to preserve the data in an existing array when you change the size of the last dimension Required Name of the variable; follows standard variable-naming conventions Required Dimensions of an array variable The subscripts argument uses the following syntax:
[lower To] upper [,[lower To] upper] . . .
varname
subscripts
When not explicitly stated, lower bound is zero. Note: If you make an array smaller than it was, any data in the eliminated elements is lost. When using Preserve you can resize only the last array dimension and you cannot change the number of dimensions. For example, if your array has only one dimension, you can resize that dimension because it is the last and only dimension. However, if your array has two or more dimensions, you can change the size of only the last dimension while preserving the contents of the array. The following example shows how you can increase the size of the last dimension of a dynamic array without erasing existing data contained in the array:
ReDim X(10, 10, 10) . . . ReDim Preserve X(10, 10, 15)
718
Macro ReDim
When you use Preserve you can change the size of the array only by changing the upper bound. Changing the lower bound causes an error. Example
ReDim x(150)
719
Macro Set
Set
Assigns an object reference to a variable or property. Syntax
Set objectvar = {objectexpression | Nothing}
Arguments The Set statement has these arguments: objectvar Required Name of the variable, or property; follows standard variablenaming conventions Required Expression, which consists of the name of an object, another declared variable of the same object type, or a function or method that returns an object of the same object type Optional Discontinues association of objectvar with any specific object. Assigning Nothing to objectvar releases all the system and memory resources associated with the previously referenced object when no other variable refers to it.
objectexpression
Nothing
To be valid, objectvar must be of the same object type as the object being assigned to it. The Dim and ReDim statements declare only the variable name, which refers to an object. No actual object is referred to unless the Set statement assigns a specific object. When you use Set to assign an object reference to a variable, a reference to the object is created - not a copy of the object. More than one object variable can refer to the same object. Because such variables are references to the object rather than copies of the object, any change in the object is reflected in all variables that refer to it. Example
Set obj = application
720
Macro Sub
Sub
Declares the name, arguments, and code that form the body of a sub procedure. Like a function procedure, a sub procedure is a separate procedure that can take arguments, perform a series of statements, and change the value of its arguments. However, unlike a function procedure, which returns a value, a sub procedure cannot be used in an expression. There are two categories of variables you can use in sub statements: Explicitly declared variables within the procedure: These variables are always local to the procedure and use the Dim statement or the equivalent. The value of local variables in a Sub procedure is not preserved between calls to the procedure. Not explicitly declared variables within the procedure: These variables are also local, unless they are explicitly declared at some higher level outside the procedure.
Syntax
Arguments The Sub statement has these arguments: name Required The Sub procedure name Follows standard variable-naming conventions. Optional List of variables representing arguments that are passed to the sub procedure when the sub procedure is called. Use commas to separate multiple variables. Any group of statements to execute within the body of the sub procedure. The Exit Sub statement causes an immediate exit from a sub procedure. Program execution continues with the statement following the statement that called the sub procedure. Any number of Exit Sub statements can appear anywhere in a sub procedure.
arglist
statements
721
Macro Sub
Table 18-11 describes the arglist syntax elements:: Table 18-11. Sub Statement arglist Syntax Part ByVal ByRef varname Description Indicates that the argument is passed by value. Indicates that the argument is passed by reference. Name of the variable representing the argument. Follows standard variable-naming conventions.
Note: You cannot define a sub procedure inside any other procedure such as a function or another sub procedure. For specific information about calling sub procedures, see the Call statement. Related Topics Statements
722
Macro While...Wend
While...Wend
Executes a series of statements as long as a given condition is True. Syntax
While condition [statements] Wend
Arguments The While Wend statement has these arguments: condition Required Any expression. If the expression is not Logical, it is converted to a Logical type. Optional One or more statements executed while condition is True
statements
If condition is True, all statements are executed until the Wend statement is encountered. Control then returns to the While statement and condition is again checked. If condition is still True, the process is repeated. If condition is not True, execution resumes with the statement following the Wend statement. You can nest WhileWend statements to any level. Each Wend matches the most recent While statement. Example
While i < 10 i = i + 1 Wend
723
Macro Width #
Width #
Assigns an output line width to a file opened using the Open statement. Syntax
Width #filenumber, width
Arguments The Width # statement has these arguments: filenumber width Required Any valid file number Required Numeric expression in the range 0 to 255, inclusive. Indicates how many characters appear on a line before a new line starts. If width equals 0, there is no limit to the length of a line. The default value for width is 0.
Example
Width #2, 100
Functions
The macro engine of this program currently supports the following embedded functions: Asc Atn Chr Command Cos CreateObject CurDir Dir DoEvents Environ
724
Macro Functions
Environ Eof Exp GetObject GetTmpFileName InStr InStrRev Left Len Mid MkDir MoveFile MsgBox Right Sin Spc Str Tab Val
725
Macro Asc
Asc
This function returns an integer representing the character code that corresponds to the first letter in a string. Syntax
Asc(string)
Arguments The Atn function has this argument: string Required Any valid string expression If the string contains no characters, a run-time error occurs.
Example
i = Asc("abc")
726
Macro Atn
Atn
This function returns a Double specifying the arctangent of a number. The range of the result is - pi/2 to pi/2 radians. To convert degrees to radians, multiply degrees by pi/180. To convert radians to degrees, multiply radians by 180/pi. The Atn function takes the ratio of two sides of a right triangle and returns the corresponding angle in radians. The ratio is the length of the side opposite the angle divided by the length of the side adjacent to the angle. Atn is the inverse trigonometric function of Tan, which takes an angle as its argument and returns the ratio of two sides of a right triangle. Do not confuse Atn with cotangent, which is the inverse of a tangent (1/tangent). Syntax
Atn(number)
Arguments The Atn function has this argument: number Required Any expression. If the expression is not Logical, it is converted to a Logical type.
Example
f = Atn(2)
727
Macro Chr
Chr
This function returns a string containing the character associated with the specified character code. Syntax
Chr(charcode)
Arguments The Chr function has this argument: charcode Required A long that identifies a character. Values from 0 to 31 are standard, nonprintable ASCII codes. For example, Chr(10) returns a linefeed character. The normal range for charcode is 0 to 255, inclusive.
Example
c = chr(64)
728
Macro Command
Command
This function returns the command line used to start the program, including the path to the executable file and any subsequent arguments. Syntax
Command
When you launch the program from the command line, the command line is available to Macro scripts. Example Assuming that the program is launched by the following command:
BlazeRouter log:logfile.log preview.pcb
729
Macro Cos
Cos
This function returns a Double specifying the cosine of an angle. The Cos function takes an angle and returns the ratio of the length of the side adjacent to the angle divided by the length of the hypotenuse. The result lies in the range -1 to 1. To convert degrees to radians, multiply degrees by pi/180. To convert radians to degrees, multiply radians by 180/pi. Syntax
Cos(number)
Arguments The Cos function has this argument number Required A double or any valid numeric expression expressing an angle in radians
Example
x = Cos(1.57)
730
Macro CreateObject
CreateObject
This function creates and returns a reference to an ActiveX object. Syntax
CreateObject(class,[servername])
Arguments The CreateObject function syntax has these arguments: class Required String The application name and the class of the object to create Optional String The name of the network server where the object will be created If the remote server does not exist or is unavailable, a runtime error occurs.
servername
The class argument uses the syntax appname.objecttype and has these elements: appname Required String The name of the application providing the object Required String The type or class of object to create
objecttype
To create an ActiveX object, assign the object returned by CreateObject to an object variable. Use CreateObject when there is no current instance of the object. If an instance of the object is already running, a new instance is started, and an object of the specified type is created. To use the current instance, or to start the application and have it load a file, use the GetObject function. If an object has registered itself as a single-instance object, only one instance of the object is created, no matter how many times CreateObject is executed. Example
set obj = CreateObject("PowerPCB.Application")
731
Macro CurDir
CurDir
This function returns a variant string representing the current path. Syntax
CurDir [(drive)]
Argument The CurDir function has this argument: drive Optional Any string expression that specifies an existing drive. If no drive is specified or if drive is a zero-length string (" "), CurDir returns the path for the current drive.
Example
s = CurDir("d:")
732
Macro Dir
Dir
This function returns a string representing the name of a file or folder that matches a specified pattern, file attribute, or drive volume label. Syntax
Dir(pathname)
Arguments The Dir function has this argument: pathname Optional String expression that specifies a file name. May also include folder and drive names. A zero-length string ("") is returned if pathname is not found.
Dir supports the use of multiple character (*) and single character (?) wildcards to specify multiple files. Examples To get the first file in the c: drive root:
Dir("C:\*.*")
733
Macro DoEvents
DoEvents
This function passes control to the operating system. The operating system returns control after it finishes processing the events in its queue. Syntax
DoEvents()
DoEvents may be useful if the macro is performing long calculations. Inserting DoEvents calls every second or more may prevent the accumulation of unprocessed events in the queue.
734
Macro Environ
Environ
This function returns the string associated with an operating system environment variable. Syntax
Environ [(envstring)]
Arguments The Environ function has this argument: Envstring Optional String expression containing the name of an environment variable
If envstring can't be found in the environment-string table, a zero-length string ("") is returned. Environ returns the text assigned to the specified envstring; that is, the text which follows the equal sign (=) in the environment-string table for that environment variable. Example
s = Environ ("path")
735
Macro Eof
Eof
This function returns an integer, which represents the Boolean value True when the end of a file opened for random or sequential input has been reached. Use the Eof function to avoid the error generated by attempting to get input after the end of a file. Table 18-12 lists the Eof function returned values: Table 18-12. Eof Function Returned Values Condition Before end of file is reached After end of file is reached File opened for random access and Get statement is able to read an entire record File opened for random access and Get statement is not able to read an entire record Eof function returns False True False True
File opened for binary access and Get statement is able to read an False entire record File opened for binary access and Get statement is not able to read True an entire record File opened for output Syntax
Eof [(filenumber)]
True
Arguments The Eof function has this argument: filenumber Optional An integer containing any valid file number
Example
If Eof (1) then ....
736
Macro Exp
Exp
This function returns a Double specifying e (the base of natural logarithms) raised to a power. The constant e is approximately 2.718282. Note: The Exp function complements the Log function and may be referred to as the antilogarithm. Syntax
Exp(number)
Arguments The Exp function has this argument: number Required A double or any valid numeric expression. When the value of number exceeds 709.782712893, an error occurs.
Example
x = exp(y)
737
Macro GetObject
GetObject
This function returns a reference to an object provided by an ActiveX component. Syntax
GetObject([pathname] [, class])
Arguments The GetObject function has these arguments: pathname Optional Variant string The full path (folder, and drive) and name of the file containing the object to retrieve. If pathname is omitted, class is required. Optional Variant string A string representing the class of the object
class
The class argument uses the syntax appname.objecttype, which has these elements: appname Required Variant string The name of the application providing the object Required Variant string Type or class of object to create
objecttype
Use the GetObject function to access an ActiveX object from a file and assign the object to an object variable. Use the Set statement to assign the object returned by the GetObject function to the object variable. Example
obj = GetObject(, "PowerPCB.Application")
738
Macro GetTmpFileName
GetTmpFileName
This function returns a string specifying a new file name guaranteed to be unique in the folder identified by the string argument. Syntax
GetTmpFileName(string)
Arguments The GetTmpFileName function has this argument: string Required A string expression
Example
s = GetTmpFileName("d:\tmp")
739
Macro InStr
InStr
This function returns the position of the first occurrence of one string within another string. Syntax
InStr([start, ]string1, string2)
Arguments The InStr function has these arguments: start Optional Numeric expression that sets the starting position for each search When start is omitted, the search begins at the first character position. Required String expression to search Required String expression to find
string1 string2
Return Values Table 18-13. InStr Function Return Values If string1 is zero-length string2 is zero-length string2 is not found string2 is found within string1 start > string Example
i = InStr(1,"cbc","c")
740
Macro InStrRev
InStrRev
This function returns the position of an occurrence of one string within another, from the end of the string. Syntax
InStrRev(string1, string2, [start])
Arguments The InStrRev function has these arguments: string1 string2 start Required String expression being searched Required String expression to find Optional Numeric expression that sets the starting position for each search If omitted, the search begins at the last character position.
Return Values Table 18-14. InStrRev Function Return Values If string1 is zero-length string2 is zero-length string2 is not found string2 is found within string1 start > Len(string2) Example: The following sample code returns "4."
InStrRev("abcdbc", "bc")
741
Macro Left
Left
This function returns a specified number of characters from the left side of a string. Syntax
Left(string, length)
Arguments The Left function has these arguments: string Required A string expression from which the characters from the left side are returned A numeric expression indicating the number of characters to return If length is 0, Left returns a zero-length string (" "). If length is greater than or equal to the number of characters in the string, Left returns the entire string.
length
742
Macro Len
Len
This function returns the number of characters in a string (the length of the string). Syntax
Len(string)
Arguments The Len function has this argument: string Required Any valid string expression
743
Macro Mid
Mid
This function returns a specified number of characters from a string. Syntax
Mid (string, start, [length])
Arguments The Mid function has these arguments: string start Required A string expression from which the characters are returned Required The character position in string at which the part to return begins. If start is greater than the number of characters in string, Mid returns a zero-length string (" "). Optional The number of characters to return. If omitted, when there are less characters in the string (including the character at start), than length, Mid returns all of the characters from the start position to the end of the string.
length
744
Macro MkDir
MkDir
This function creates a new folder. Syntax
MkDir (path)
Arguments The MkDir function has this argument: path Required A string expression that identifies the folder to create. The path may include the drive. When no drive is specified, MkDir creates the new folder on the current drive.
Example
MkDir ("D:\newdir")
745
Macro MoveFile
MoveFile
This function moves the file identified by path1 argument to the location specified in path2. Syntax
MoveFile(path1, path2)
Arguments The MoveFile function has these arguments: path1 path2 Required A string expression Required A string expression
Example
MoveFile("C:\data.bin","D:\")
746
Macro MsgBox
MsgBox
This function displays a message in a dialog box, waits for the user to click a button, and returns an integer indicating which button the user clicked. Syntax
MsgBox(prompt [, buttons] [, title])
Arguments The MsgBox function has these arguments: prompt Required String expression displays as the message in the dialog box The maximum length of prompt is 1024 characters, depending on the width of the characters used. If prompt consists of more than one line, you can separate the lines using a carriage return character (Chr(13)), a linefeed character (Chr(10)), or carriage return - linefeed character combination (Chr(13) & Chr(10)) between each line. Optional Numeric expression which is the sum of values specifying the number and type of buttons to display, the icon style to use, and the identity of the default button. The default value for buttons is 0. Optional String expression that displays in the title bar of the dialog box. The default value for title is the application name.
buttons
title
Settings The buttons argument settings are: Table 18-15. MsgBox buttons Settings Constant mbOKOnly mbOKCancel mbAbortRetryIgnore mbYesNoCancel mbYesNo Value 0 1 2 3 4 Description Display OK button only. Display OK and Cancel* buttons. Display Abort, Retry, and Ignore buttons. Display Yes, No, and Cancel* buttons. Display Yes and No buttons.
747
Macro MsgBox
Table 18-15. MsgBox buttons Settings mbRetryCancel mbCritical mbQuestion mbExclamation mbInformation mbDefaultButton1 mbDefaultButton2 mbDefaultButton3 5 16 32 48 64 0 256 512 Display Retry and Cancel* buttons. Display Critical Message icon. Display Warning Query icon. Display Warning Message icon. Display Information Message icon. First button is default. Second button is default. Third button is default.
The first group of values (0-5) describes the number and type of buttons to display in the dialog box The second group of values (16, 32, 48, 64) describes the icon style The third group of values (0, 256, 512) shows which button is the default.
When adding numbers to create a final value for the buttons argument, use only one number from each group. Return Values Table 18-16. MsgBox Return Values Constant mbOK mbCancel mbAbort mbRetry mbIgnore mbYes mbNo Value 1 2 3 4 5 6 7 Description OK Cancel* Abort Retry Ignore Yes No
*If the dialog box displays a Cancel button, pressing Esc has the same effect as clicking Cancel. Example
MsgBox("Hello",mbOK, "This is a message box")
748
Macro Right
Right
This function returns a specified number of characters from the right side of a string. Syntax
Right(string, length)
Arguments The Right function has these arguments: string Required A string expression from which the characters on the right side are returned A numeric expression indicating how many characters to return If length is 0, Right returns a zero-length string (" "). If length is greater than or equal to the number of characters in the string, Right returns the entire string.
length
749
Macro Sin
Sin
This function returns a Double specifying the sine of an angle. The Sin function takes an angle and returns the ratio of two sides of a right triangle. The ratio is the length of the side opposite the angle divided by the length of the hypotenuse. The result lies in the range -1 to 1. To convert degrees to radians, multiply degrees by pi/180. To convert radians to degrees, multiply radians by 180/pi. Syntax
Sin(number)
Arguments The Sin function has this argument: number Required Any expression that expresses an angle in radians. If the expression is not numeric, it is converted to a Numeric type.
Example
x = sin(y)
750
Macro Spc
Spc
This function is used with the Print # statement or the Print method to position output. Syntax
Spc(n)
Arguments The Spc function has this argument: n Required The number of spaces to insert before displaying or printing the next expression in a list
If n is less than the output line width, the next print position immediately follows the number of spaces printed. If n is greater than the output line width, Spc calculates the next print position using the formula:
currentprintposition + (n Mod width)
For example, if the current print position is 24, the output line width is 80, and you specify Spc(90), the next print will start at position 34 (current print position + the remainder of 90/80). If the difference between the current print position and the output line width is less than n (or n Mod width), the Spc function skips to the beginning of the next line and generates spaces equal to n - (width - currentprintposition). Example
Spc(3)
751
Macro Str
Str
This function returns a string representation of a number. Syntax
Str(number)
Arguments The Str function has the following argument: number Required Any expression. If the expression is not numeric, it is converted to a Numeric type.
When numbers are converted to strings, a leading space is always reserved for the sign of number. If number is positive, the returned string contains a leading space and the plus sign is implied. Example
x = Str(324)
752
Macro Tab
Tab
This function is used with the Print # statement or the Print method to position output. Syntax
Tab[(n)]
Arguments The Tab function has this argument: n Optional The column number to move to before displaying or printing the next expression in a list
If n is omitted, Tab moves the insertion point to the beginning of the next print zone. This allows you to use Tab instead of a comma whenever you use the comma as a decimal separator. If the current print position on the current line is greater than n, Tab skips to the nth column on the next output line. If n is less than 1, Tab moves the print position to column 1. If n is greater than the output line width, Tab calculates the next print position using the formula:
n Mod width
For example, if width is 80 and you specify Tab(90), the next print will start at column 10 (the remainder of 90/80). If n is less than the current print position, printing begins on the next line at the calculated print position. If the calculated print position is greater than the current print position, printing begins at the calculated print position on the same line. The leftmost print position on an output line is always 1. When you use theb statement to print to files, the rightmost print position is the current width of the output file, which you can set using the Width # statement. Example
Tab(2)
753
Macro Val
Val
This function returns the numbers contained in a string as a numeric value of the appropriate type. Syntax
Val(string)
Argument The Val function has this argument: string Required Any valid string expression
The Val function stops reading the string at the first character it can't recognize as part of a number. However, the function recognizes the radix prefixes &O (for octal) and &H (for hexadecimal). Blanks, tabs, and linefeed characters are stripped from the argument. The Val function recognizes only the period (.) as a valid decimal separator. Example
i=Val("123")
Automation Support
The macro engine in the program supports Automation through its automation objects. After an object is created using CreateObject( ) or connected to using GetObject( ), the object's methods may be called using the usual syntax.
Object.Method arg1, ..., argn var = Object.Method( arg1, ..., argn ) var = Object.Property Object.Property = expression
754
ComboBox EditBox GridControl ListBox PushButton RadioBox SliderControl SpinButton TabControl TreeItem TreeView
755
Macro CheckBox
CheckBox
This control represents a check box on a dialog box. You can reference a particular check box using the Control method of a dialog box. The CheckBox object uses the State and Property methods.
State
This method sets the state of the check box. Syntax
checkbox.State(iState)
Arguments State has this argument: iState Required A numeric expression, representing the check box state to set
iState may have one of the following values: Table 18-17. CheckBox.State istate Values Value 0, or False 1, or True 2 Description Unchecked Checked Indeterminate
Value Property
This method returns or sets the state of the check box control. Syntax
checkbox.Value[=iState]
Arguments The Value Property has this argument: iState Required A numeric expression, representing the check box state to set
iState may have one of the following values:: Table 18-18. CheckBox.Value istate Values Value
756
Description
PADS Logic Users Guide, PADS 9.2
Macro CheckBox
Table 18-18. CheckBox.Value istate Values 0, or False 1, or True 2 Unchecked Checked Indeterminate
757
Macro CheckListBox
CheckListBox
This control represents a check list box on a dialog box.
State
This method sets the selection state of the check list box. Syntax
CheckListBox.State(string)
Arguments The State method has this argument: string Required Any valid string expression, containing the list of items to select
SetCheck
This method sets the check state of the check list box. Syntax
CheckListBox.SetCheck(string)
Arguments The SetCheck method has this argument: string Required A string expression, containing the list of the items to check. All the items that do not appear in the list are not checked.
ListCount Property
This method returns the number of items in the check list box. Syntax
CheckListBox.ListCount
SelCount Property
This method returns the number of selected items in the check list box. Syntax
CheckListBox.SelCount
758
Macro CheckListBox
Selected Property
This method returns or sets the selection status of an item in the check list box. This property is an array of Boolean values with the same number of items as the List property. Syntax
CheckListBox.Selected(index)[=boolean]
Check Property
This method returns or sets the checked status of an item in a check list box. This property is an array of Boolean values with the same number of items as the list property. Syntax
CheckListBox.Check(index)[=boolean]
Text Property
This method returns the text of the item currently selected in the check list box. Syntax
CheckListBox.Text
759
Macro ComboBox
ComboBox
This control represents a combo box on a dialog box.
Select
This method sets the selection state of the combo box. Syntax
ComboBox.Select(string)
Arguments The Select method has this argument: string Required A string expression, containing a string to select in the combo box
Example
ActiveLayer.Select("Top")
Edit
This method sets the edit state of the combo box. Syntax
ComboBox.Edit(string)
The Edit method has this argument: string Required A string expression, containing a string to insert into the edit box of the combo box
Text Property
This method returns or sets the combo box text. Syntax
ComboBox.Text[=string]
Arguments The Text method has this argument: string Required A string expression, containing the text to set into the combo box
760
Macro ComboBox
List Property
This method returns or sets the items contained in the combo box list. This list is a string array in which each element is a list item. Syntax
ComboBox.List(index)
SelStart Property
This method returns or sets the starting point of the selected text. If no text is selected, this method indicates the position of the insertion point. Syntax
ComboBox.SelStart[=index]
SelLength Property
This method returns or sets the number of characters selected. Syntax
ComboBox.SelLength[=number]
SelText Property
This method returns or sets the string containing the currently selected text. If no characters are selected, this method returns a zero length string (""). Syntax
ComboBox.SelText[=string]
Arguments The argument is a string expression, containing the text to set into the edit box.
761
Macro EditBox
EditBox
This control represents an edit box on a dialog box. You can use the Control method of a dialog box to reference a particular edit box.
State
This method sets the state of the edit box. Syntax
EditBox.State(string)
Arguments State has this argument: string Required A string expression of the text to display in the edit box
Text Property
This method returns or sets the edit box text. Syntax
EditBox.Text[=string]
The string argument is a string expression, containing the text to set into the edit box.
SelStart Property
This method returns or sets the starting point of selected text. If no text is selected this method indicates the position of the insertion point. Syntax
EditBox.SelStart[=index]
SelLength Property
This method returns or sets the number of characters selected. Syntax
EditBox.SelLength[=number]
SelText Property
This method returns or sets the string containing the currently selected text. If no characters are selected this method returns a zero length string ("").
762
Macro EditBox
Syntax
EditBox.SelText[=string]
Arguments The SelText method has this argument: string A string expression, containing the text to set into the edit box
763
Macro GridControl
GridControl
This control represents a grid control on a dialog box. You can use the control method to reference a particular grid control.
764
Macro ListBox
ListBox
This control represents a list box on a dialog box.
State
This method sets the selection state of the list box. Syntax
ListBox.State(string)
Arguments The State method has this argument: string Required A string expression, containing the item numbers to select. All the items that do not appear in the list are not selected.
List Property
This method returns the items contained in a dialog box list portion. The list is a string array in which each element is a list item. Syntax
ListBox.List
ListCount Property
This method returns the number of items in the list box. Syntax
ListBox.ListCount
SelCount Property
This method returns the number of selected items in a list box. Syntax
ListBox.SelCount
Selected Property
This method returns or sets the selection status of an item in a list box. This property is an array of Boolean values with the same number of items as the list property.
765
Macro ListBox
Syntax
ListBox.Selected(index) [=boolean]
Text Property
This method returns the currently selected (focused) item's text in a list box. Syntax
ListBox.Text
766
Macro PushButton
PushButton
This control represents a push button (also called a command button) on a dialog box.
Click
This method emulates pressing a push button. Syntax
button.Click()
Example
dlg.control("OK").click()
767
Macro RadioBox
RadioBox
This control represents an option button on a dialog box.
State
This method checks the state of the option button. Syntax
RadioBox.State(iState)
Arguments The State method has this argument: iState Required A numeric expression, representing the position of an option button to check. -1 means that no button is selected.
Value Property
This method returns or checks the state of the option button. Syntax
RadioBox.Value[=iState]
Arguments Value Property has this argument: iState Required A numeric expression, representing the position of an option button to check. -1 means that no button is selected.
768
Macro SliderControl
SliderControl
This control represents a slider control on a dialog box.
State
This method sets the state of the slider. Syntax
SliderControl.State(iState)
Value Property
This method returns or sets the current slider position. Syntax
Slider.Value[=val]
Arguments Value Property has this argument: val Required A numeric expression
769
Macro SpinButton
SpinButton
This control represents a spin button on a dialog box.
State
This method sets the state of the spin button. Syntax
SpinButton.State(iState)
770
Macro TabControl
TabControl
This control represents a tab on a dialog box.
State
This method sets the selection state of the tab. Syntax
TabControl.State(iState)
Arguments State has this argument: iState Required A numeric expression, which represents the position of a tab.
Example
dlg.Control("Tab").State(3)
Value Property
This method returns or sets the current tab position. Syntax
TabControl.Value[=tab]
Arguments Value Property has this argument: tab Required Either a numeric expression representing the tab position or a string expression representing the tab caption
771
Macro TreeItem
TreeItem
This control represents a tree item on a dialog box.
Select
This method sets the selection state of the tree item. Syntax
TreeItem.Select(flag)
Arguments The Select method has this argument: flag Required A numeric expression
flag may have one of the following values: Table 18-19. TreeItem.Select flag Values Value 0, or False 1, or True Example
item.Select(true)
Expand
This method sets the expand state of the tree item. Syntax
TreeItem.Expand(flag)
flag may have one of the following values: Table 18-20. TreeItem.Expand flag Values Value Description
772
Macro TreeItem
Collapse Expand
Focus
This method sets the tree item focus to the item. Syntax
TreeItem.Focus()
Example
item.Focus(1)
773
Macro TreeView
TreeView
This control represents a Tree View on a dialog box.
Item
This method returns a TreeItem object. Syntax
TreeView.Item(itemname)
Arguments Item has this argument: itemname Required A string expression representing the name of the item
Example
item = tree.Item("Net Objects\Nets\end")
BeginDrag
This method emulates dragging selected items off the tree. Syntax
TreeView.BeginDrag(itemname)
Arguments BeginDrag has this argument: itemname Required A string expression representing the name of the item to drag
Copy
This method copies the selected item to the Clipboard. Syntax
TreeView.Copy(itemname)
Arguments Copy has this argument: itemname Required A string expression representing the name of the item to copy
774
Macro TreeView
Drop
This method emulates dropping the dragged items onto an item. Syntax
TreeView.Drop(itemname)
Arguments The Drop method has this argument: itemname Required A string expression representing the name of the item onto which to drop the dragged items
Example
tree.Drop("Net Objects\Net classes")
Paste
This method pastes the contents of the Clipboard into the selected branch. Syntax
TreeView.Paste(itemname)
Arguments Paste has this argument: itemname Required A string expression representing the name of the item to paste
CreateNewItem
This method creates a new item in the selected branch. This method returns a TreeItem object that corresponds to the created item. Syntax
TreeView.CreateNewItem(itemname)
Arguments CreateNewItem has this argument: itemname Required A string expression representing the name of the item to create
775
Application Object
This object represents applications of the program. The object has the following methods: CreateNewDocument ExecuteCommand Help HelpContents HelpPane OpenCustomizeDialog OpenDocument OpenOptionsDialog OpenPropertiesDialog Quit RunMacro
776
Macro CreateNewDocument
CreateNewDocument
This method creates an empty document. Syntax
Application.CreateNewDocument
777
Macro ExecuteCommand
ExecuteCommand
This method executes one of the commands of the program. Syntax
Application.ExecuteCommand(command, [arg1,...])
Argument The ExecuteCommand method has these arguments: command arg1,... Required A string expression representing a PADS product command Optional Represents optional arguments that are passed to command
Example1
Application.ExecuteCommand("ID_VIEW_BOARD")
Example2
Application.ExecuteCommand("Open", "C:\PADS Projects\preview.pcb")
778
Macro Help
Help
This method invokes the Help. Syntax
Application.Help()
779
Macro HelpContents
HelpContents
This method returns the Help contents in the Help Contents window. Syntax
Application.HelpContents
Example
Set var = Application.HelpContents
780
Macro HelpPane
HelpPane
This method returns the Help window. Syntax
Application.HelpPane
Example
Set var = Application.HelpPane
781
Macro OpenCustomizeDialog
OpenCustomizeDialog
This method opens the Customize modal dialog box. Syntax
Application.OpenCustomizeDialog()
782
Macro OpenDocument
OpenDocument
This method opens an existing document identified by the path argument. Syntax
Application.OpenDocument(path)
Argument The OpenDocument method has this argument: path Required A string expression containing the path of the document to open
Example
Application.OpenDocument("C:\PADS Projects\preview.pcb") \
783
Macro OpenOptionsDialog
OpenOptionsDialog
This method opens the Options modeless dialog box. Syntax
Application.OpenOptionsDialog()
784
Macro OpenPropertiesDialog
OpenPropertiesDialog
This method opens the Properties modeless dialog box. Syntax
Application.OpenPropertiesDialog()
785
Macro Quit
Quit
This method exits the application. Syntax
Application.Quit()
786
Macro RunMacro
RunMacro
This method executes one of the program commands. Syntax
Application.RunMacro(path[, function [, arg1, ...]])
Arguments The RunMacro method has these arguments: path function Required A string expression containing the file path of the macro to run Optional Name of a function or a sub in the macro file to be called. If the function is specified, RunMacro returns what the function returns. If the function is not specified, or it is a sub, which returns nothing, RunMacro returns nothing. Optional Arguments that are passed onto function
arg1,...
Example
Application.RunMacro("C:\PADS Projects\mymacro.mcr") Var = Application.RunMacro(C:\PADS Projects\mymacro.mcr, myfunction, 1, 2, 3)
Dialog Objects
A dialog object represents a dialog box. This object has the following methods: Control Focus HelpPane OpenHelpPane CloseHelpPane ShowHelpFor
787
Macro Focus
Focus
This method sets focus to a dialog box control. Syntax
Dialog.Focus(controlname)
Arguments The Focus method has this argument: controlname Required A string expression representing the name of the control
788
Macro Control
Control
This method returns a dialog box control. Syntax
Dialog.Control(controlname)
Arguments Control has this argument: controlname Required A string expression representing the name of the control
789
Macro CloseHelpPane
CloseHelpPane
This method closes the open help pane in a dialog box. Syntax
Dialog.CloseHelpPane
Example
Dialog.CloseHelpPane
790
Macro OpenHelpPane
OpenHelpPane
This method displays the help pane for the dialog box. Syntax
Dialog.OpenHelpPane
Example
Dialog.OpenHelpPane
791
Macro ShowHelpFor
ShowHelpFor
This method displays help for the specified control. Syntax
Dialog.ShowHelpFor(controlname)
Arguments The ShowHelpFor method has this argument: controlname Required The name of the control
Document Object
The Document object represents any currently loaded design. This object has the following methods: Print PrintSetup RepeatLastAction Save SaveAs
792
Macro Print
Print
This method prints the document. Syntax
Document.Print()
793
Macro PrintSetup
PrintSetup
This method opens the Print Setup dialog box. Syntax
Document.PrintSetup()
794
Macro RepeatLastAction
RepeatLastAction
This method repeats the last action performed during the current session. Syntax
Document.RepeatLastAction()
795
Macro Save
Save
This method saves the document, if it has been modified. Syntax
Document.Save()
796
Macro SaveAs
SaveAs
This method saves the document to a user-defined name or path location. Syntax
Document.SaveAs(path)
The SaveAs method has this argument: path Required A string expression representing the path to which to save the document
HelpContents Object
The HelpContents object represents the Help Contents window.
Item
The Item property finds the location of the Help contents item in the contents tree. Syntax
Application.HelpContents.Item (path)
Example
Set item = Application.HelpContents.Item("File Operations\To Restore Files")
HelpContentsItem Object
This object finds the name of the Help Contents item. The HelpContentsItem object has the following properties and one method (Select): Location Name Select SubItem SubItemCount
797
Macro SaveAs
798
Macro Location
Location
This property returns the location of the item. Syntax
Item.Location
Example In this example, the item_loc variable is assigned a value of "its:C:\Program Files\Mentor Graphics\PADS\<latest_release> \Documentation\Router\BlazeRouter.chm:: /fileops/To_Restore_Files.htm".
Set item = Application.HelpContents.Item("File Operations\To Restore Files") item_loc = item.Location
799
Macro Name
Name
This property returns the name of the item. Syntax
Item.Name
Example In this example, the item_name variable is assigned the value of "To Restore Files."
Set item = Application.HelpContents.Item("File Operations\To Restore Files") item_name = item.Name
800
Macro Select
Select
This method selects the item. Syntax
Item.Select
Example
Set item = Application.HelpContents.Item("File Operations").SubItem(3) item.Select
801
Macro SubItem
SubItem
This property returns a sub item of the item by its position. The required integer pos argument is the zero-based serial number of a sub item in the tree branch that the item represents. Syntax
Item.SubItem(pos)
Example In this example, the item_name variable is assigned value of "To Restore Files".
Set item = Application.HelpContents.Item("File Operations").SubItem(3) item_name = item.Name
802
Macro SubItemCount
SubItemCount
This property returns the number of sub items within the item. Syntax
Item.SubItemCount
HelpPane Object
This object represents the Help window. Document The Document property displays the HTML document in the Help window. This property uses the Document Object Model (DOM). For the full description of the HTMLDocument interface, see the Microsoft Software Developers Network (MSDN) documentation. The following are the most useful properties that the Macro engine uses: title Sets or retrieves the title of the document. This property displays the document title in the title bar of the document window. Also, it identifies the contents of the document. Sets or retrieves the Uniform Resource Locator (URL) for the current document.
URL
803
Macro SubItemCount
804
Macro ActiveLayer
ActiveLayer
This method displays the Active Layer combo box. Syntax
MainView.ActiveLayer
Example
set layerCombo = MainView.ActiveLayer
805
Macro ToggleFullScreen
ToggleFullScreen
This method turns the Full Screen mode on. Syntax
MainView.ToggleFullScreen()
806
Macro MouseDown
MouseDown
This method emulates pressing a mouse button. Syntax
MainView.MouseDown(x, y, button)
Arguments The MouseDown method has these arguments: x Required Any numeric expression X-coordinate of pointer Required Any numeric expression Y-coordinate of pointer Required String expression Pressed button, if any
button
The button argument may contain one or more of the following values and modifiers: Table 18-21. MainView.MouseDown button Values Value Description L M R C S A Left mouse button pressed Middle mouse button pressed Right mouse button pressed Ctrl button pressed (modifier) Shift button pressed (modifier) Alt button pressed (modifier)
807
Macro MouseEndDrag
MouseEndDrag
This method emulates ending a mouse drag operation. Syntax
MainView.MouseEndDrag(x, y, button)
Arguments The Mouse End Drag method has these arguments: x Required Any numeric expression X-coordinate of pointer Required Any numeric expression Y-coordinate of pointer Required String expression Pressed button, if any
button
The button argument may contain one or more of the following values and modifiers: Table 18-22. MainView.MouseEndDrag button Values Value L M R C S A Description Left mouse button pressed Middle mouse button pressed Right mouse button pressed Ctrl button pressed (modifier) Shift button pressed (modifier) Alt button pressed (modifier)
808
Macro MouseMove
MouseMove
This method emulates moving the mouse. Syntax
MainView.MouseMove(x, y, button)
Arguments The Mouse Move method has these arguments: x Required Any numeric expression X-coordinate of pointer Required Any numeric expression Y-coordinate of pointer Required String expression + indicates relative mode Pressed button, if any
button
The button argument may contain one or more of the following values and modifiers: Table 18-23. MainView.MouseMove button Values Value L M R C S A Example
MainView.MouseMove(300,350,"+L")
Description Left mouse button pressed Middle mouse button pressed Right mouse button pressed Ctrl button pressed (modifier) Shift button pressed (modifier) Alt button pressed (modifier)
809
Macro MouseStartDrag
MouseStartDrag
This method emulates starting a mouse drag operation. Syntax
MainView.MouseStartDrag(x, y, button)
Arguments The MouseStartDrag method has these arguments: x Required Any numeric expression X-coordinate of pointer Required Any numeric expression Y-coordinate of pointer Required String expression Pressed button, if any
button
The button argument may contain one or more of the following values and modifiers: Table 18-24. MainView.MouseStartDrag button Values Value L M R C S A Description Left mouse button pressed Middle mouse button pressed Right mouse button pressed Ctrl button pressed (modifier) Shift button pressed (modifier) Alt button pressed (modifier)
810
Macro MouseUp
MouseUp
This method emulates releasing a mouse button. Syntax
MainView.MouseUp(x, y, button)
The MouseUp method has these arguments: x Required Any numeric expression X-coordinate of pointer Required Any numeric expression Y-coordinate of pointer Required String expression Pressed button, if any
button
The button argument may contain one or more of the following values and modifiers: Table 18-25. MainView.MouseUp button Values Value L M R C S A Description Left mouse button pressed Middle mouse button pressed Right mouse button pressed Ctrl button pressed (modifier) Shift button pressed (modifier) Alt button pressed (modifier)
811
Macro Print
Print
This method prints the current view. Syntax
MainView.Print()
812
Macro PrintPreview
PrintPreview
This method turns the Print Preview mode on. Syntax
MainView.PrintPreview()
813
Macro PrintPreview
814
815
STARTFREQ TEMP1, TEMP2, TEMP3, ... TI, T2, T3, ... T9 TPULWIDTH VAMPLITUDE VOFFSET W
STARTVAL TFALL TNOM V1, V2, V3, ..., V9 VINITIAL VOLTAGE WIDTH
Attribute Descriptions
The following topics briefly describe each analog attribute.
816
A2D
Purpose The A2D net attribute specifies a model name (to represent an absent interface component) on an analogtodigital signal connection in ViewSim/AD. Placement On the schematic, attached to a net segment. Example A2D=TTLADMOD specifies the TTLADMOD interface component.
817
ABSTOL
Purpose The ABSTOL attribute on the OPTIONS analog report generator sets the accuracy, in amps, of current measurements. Placement On the symbol. Default The default attribute is ABSTOL=1pa. Example ABSTOL=1E6A indicates that current measurements are accurate to within 1 micro amp. ABSTOL=1E12A indicates that current measurements are accurate to within 1 pico amp.
818
AC/DC/TRAN
Purpose The AC/DC/TRAN attribute defines what type of analysis (DC, AC, transient) is being done when the MonteCarlo analysis is run. Placement On the symbol. Attribute Value Use one of the following keywords in the value field: Keyword AC DC TRAN Example AC/DC/TRAN=AC indicates that an AC analysis is to be performed each time simulation is run. Definition AC analysis DC analysis Transient analysis
819
ACCT
Purpose The ACCT on the OPTIONS analog report generator outputs a summary of the analysis. Placement On the symbol. Attribute Value Do not use an attribute value (or equal sign character) when specifying this attribute.
820
AD
Purpose The AD attribute defines the size of the drain area in a FET. Placement On the symbol. The ORDER Attribute You must identify this attribute in the ORDER attribute for interpretation. Example AD=2u indicates a drain area of 2 microns.
821
AMPLITUDE
Purpose The AMPLITUDE attribute sets maximum voltage or current swing on the SFFM and ISFFM analog symbols and the maximum current swing on the ISIN symbol. Placement On the symbol. Attribute Value The value of this attribute is substituted for amp in the waveform formula. Refer to the waveform formula under I and V in the PSpice Help file. Example AMPLITUDE=100E-3A indicates a maximum current swing of 100 milliamps.
822
AS
Purpose The AS attribute defines the size of the source area of a FET. Placement On the symbol. The ORDER Attribute You must identify this attribute in the ORDER attribute for interpretation. Example AS=1u indicates a source area of 1 micron.
823
BULK
Purpose The BULK attribute is attached to a 3pin FET symbol. It specifies where the fourth pin or bulk substrate of a fourpin transistor will be connected. This attribute must be used to include all of the transistor pins in the simulation file. Placement On the symbol.
824
CHGTOL
Purpose The CHGTOL attribute reports the best accuracy, in coulombs, of charges on the OPTIONS analog report generator. For more information, refer to the HSpice or PSpice Help files. Placement On the symbol. Default The default attribute is CHGTOL=.01pC. Example CHGTOL=1E3C indicates that measurements of charge are accurate to within 1 millicoulomb. CHGTOL=1E6C indicates that measurements of charge are accurate to within 1 microcoulomb.
825
CPTIME
Purpose The CPTIME attribute on the OPTIONS analog report generator provides the time, in seconds, allowed for this run. For more information, refer to the HSpice or PSpice Help files. Placement On the symbol. Default The default attribute is CPTIME=1E6. Example CPTIME=3600 indicates that this run can take up to one hour to complete.
826
CURRENT
Purpose The CURRENT attribute specifies the number of amps present on the IDC analog symbol. Placement On the symbol. The ORDER Attribute You must identify this attribute in the ORDER attribute for interpretation. Example CURRENT=25E-3 indicates that there are 25 milliamps present on the IDC component. The VOLTAGE Attribute Use the VOLTAGE attribute on the DC component.
827
D2A
Purpose The D2A net attribute specifies a model name (to represent an absent interface component) on an digitaltoanalog signal connection in The Simulator/AD. Placement On the schematic, attached to a net segment. Example D2A=TTLDAMOD specifies the TTLDAMOD interface component.
828
DAMPING
The DAMPING attribute specifies the damping factor of the waveform on the SIN and ISIN analog symbols. Placement On the symbol. Attribute Value The value of this attribute is substituted for df in the waveform formula. Refer to the waveform formula under I and V in the PSpice Help file. The ORDER Attribute You must identify this attribute in the ORDER attribute for interpretation. Example DAMPING=1 indicates a damping factor of 1.
829
DC
Purpose The DC attribute indicates the amount of voltage across the AMMETER or UAMMETER symbol. Placement On the symbol Example DC=15 indicates that there are 15 volts across this component. Measuring Current If you are using a METER type symbol to measure current (such as, AMMETER or UAMMETER), specify the DC and PROBE attributes as follows: DC=0 PROBE=I
830
ENDFREQ
Purpose The ENDFREQ attribute specifies the final frequency of a frequency sweep on the BODEPLOT analog report generator. Placement On the symbol. Attribute Value The attribute value must be greater than the value of the STARTFREQ attribute. Example ENDFREQ=100MEGHz indicates a final sweep frequency of 100 Megahertz.
831
ENDVAL
Purpose The ENDVAL attribute specifies the end point of the sweep on the SWEEP analog report generator. Placement On the symbol. Attribute Value Because the sweep can be in either direction, the value of ENDVAL can be greater or less than the value of the STARTVAL attribute. Example ENDVAL=5mA indicates an end sweep current of 5 milliamps.
832
FREQ_CARRIER
Purpose The FREQ_CARRIER attribute specifies the carrier frequency of the waveform on the SFFM and ISFFM analog symbols. For more information, refer to the HSpice or PSpice Help file. Placement On the symbol. Attribute Value The value of this attribute is substituted for fc in the waveform formula. Refer to the waveform formula under I and V in the PSpice Help file. Example FREQ_CARRIER=101MEGHz indicates a carrier frequency of 101 Megahertz.
833
FREQ_SIGNAL
Purpose The FREQ_SIGNAL attribute specifies the modulation frequency of the waveform on the SFFM and ISFFM analog symbols. For more information, refer to the HSpice or PSpice Help file. Placement On the symbol. Attribute Value The value of this attribute is substituted for fm in the waveform formula. Refer to the waveform formula under I and V in the PSpice Help file. Example FREQ_SIGNAL=20KHz indicates a modulation frequency of 20 Kilohertz.
834
FREQUENCY
Purpose The FREQUENCY attribute specifies the frequency of the waveform on the SIN and ISIN analog symbols. For more information, refer to the HSpice or PSpice Help file. Placement On the symbol. Attribute Value The value of this attribute is substituted for freq in the waveform formula. Refer to the waveform formula under I and V in the PSpice Help file. Example FREQUENCY=5MEGHz indicates a frequency of 5 Megahertz.
835
GAIN
Purpose The GAIN attribute specifies the amplification caused by the CCCS, VCVS, VCCS, and CCVS analog components. Placement On the symbol. Example GAIN=3E3 indicates that this component multiplies a circuit parameter by 0.003.
836
GENERATOR
Purpose The GENERATOR attribute identifies the type of analog analysis that you wish to perform on the analog circuit. The attribute value identifies the Spice statement that the analog netlister will insert into the Spice circuit file, *.cir. Notes All analog test instruments require the GENERATOR attribute as well as the CLASS and PREFIX attributes. PowerWorks comes supplied with symbols for each analysis type. These symbols possess the appropriate GENERATOR attribute value. Placement On the test instrument symbol. Attribute Value The GENERATOR attribute accepts the following values: NOTE: Precede each value with a period (for example, .SENS, not SENS). The GENERATOR attribute can accept multiple values. For example:
GENERATOR = .AC, .DC, .FOUR
Table 19-1. Generator Attribute - Possible Values Attribute Value Instrument Name .AC Bodeplot Symbol Name BODEPLOT.1 Analysis Description Sweeps each independent AC source in a design through a series of frequencies and calculates the frequency response of the circuit at each of the swept frequencies. Common Simulation Data Format; this is ViewSpice specific; it causes ViewSpice to produce an ASCII file which contains all voltages and currents in a circuit; analyzes voltage, current, reliability. Sweeps a circuits input source through a series of voltages or currents and calculates the bias point of the circuit at each of the specified voltages or currents.
.CSDF\PROBE
CSDF
CSDF.1
.DC
DC Sweep
SWEEP.1
837
Table 19-1. Generator Attribute - Possible Values (cont.) Attribute Value Instrument Name .FOUR Fourier Symbol Name FOURIER.1 Analysis Description Performs a decomposition into Fourier components of the result of a transient analysis. Note that this is not the same as the FFT (Fast Fourier Transform) performed by ViewTrace. Indicates that one or more ViewSpice or HSPICE models are defined in an external library. Loads the bias point file saved with SAVEBIAS. This is specific to ViewSpice. Calculates the effects of device tolerances on the designs performance; also simulates the manufacture of multiple copies of the design. This is specific to ViewSpice. Estimates the input and output noise of a circuit. Calculates the operating conditions of devices in the design and lists these calculations in the simulation output file. Lets you set parameters to control how a specified analysis is run or how its results appear.
.LIB
Library
LIB.1
.LOADBIAS
LBIAS.1
.MC
MC.1
.NOISE .OP
NOISE.1 OP.1
.OPTIONS
Options
OPTIONS.1
.PARAM
.PARAM
.SAVEBIAS
SBIAS.1
Saves bias points at specified times into a specified file. This is specific to ViewSpice.
.SENS
SENSITIVITY. Calculates the small signal sensitivity of 1 each node voltage to each of the active devices in the design. STEP.1 Resimulates the circuit with different parameter values. Useful for running multiple transient or AC analyses. This is specific to ViewSpice.
.STEP
838
Table 19-1. Generator Attribute - Possible Values (cont.) Attribute Value Instrument Name .TEMP Symbol Name Analysis Description Sets the circuit to a specific Centigrade temperature so an analysis can calculate how the circuit operates at that temperature. Calculates small signal gain, input impedance and output impedance of a circuit with respect to the circuits bias point. Also called transient analysis; generates visual and text reports about the circuits operation over a specified period of time. Does sensitivity and worst case analysis of the circuit by making a number of runs, varying one parameter per run. The sensitivity of the output is calculated for each varied parameter and a final run is done with all parameters varied to produce a worst case. This is specific to PSpice.
Temperature TEMP.1
.TF
Transfer Function
TRANSFCT.1
.TRAN
.WCASE
Example GENERATOR=.TRAN indicates that you want to include transient analysis information as part of your analog simulation input.
839
GMIN
Purpose The GMIN attribute on the OPTIONS analog report generator specifies the minimum conductance, in mhos, used for any branch. For more information, refer to the HSpice or PSpice Help file. Placement On the symbol. Example GMIN=3 indicates a minimum conductance of 3 mhos.
840
841
IC
Purpose The IC attribute sets up initial conditions on nets and analog components. You can assign an initial voltage to a node, or you can assign initial conditions across a circuit element. For more information, refer to the HSpice or PSpice Help file. Placement On the schematic, attached to a net or component. The ORDER Attribute You must identify this attribute in the ORDER attribute for interpretation.
842
INCREMENT
Purpose The INCREMENT attribute specifies the interval during the sweep at which analyses are taken on the SWEEP analog report generator. Placement On the symbol. Attribute Value The attribute value must be greater than 0. Example INCREMENT=.1V indicates an analysis of the circuit is made each time source voltage is changed by 0.1 volts.
843
INIT
Purpose The INIT attribute on the OSCILLOSCOPE analog report generator instructs the simulator to use specified initial conditions. For more information, refer to the HSpice or PSpice Help file. Placement On the symbol. Attribute Value The attribute value is INIT=UIC.
844
INITIAL
Purpose The INITIAL attribute specifies the starting current of the waveform on the IPULSE analog symbol. Placement On the symbol. The ORDER Attribute You must identify this attribute in the ORDER attribute for interpretation. Example INITIAL=1E6 indicates that the initial value of the IPULSE component is one microamp.
845
INPUTSOURCE
Purpose The INPUTSOURCE attribute specifies the REFDES or label name of the input source component against which gain is measured on the XFERFUNC analog report generator. For more information, refer to the HSpice or PSpice Help files. Placement On the symbol. Example INPUTSOURCE=VIN indicates that gain is to be measured against the component VIN.
846
ITL1
Purpose The ITL1 attribute on the OPTIONS analog report generator specifies the total number of times that the system can perform DC or BIAS POINT analysis iterations if the circuit does not contain a NODESET attribute. For more information, refer to the HSpice or PSpice Help files. Placement On the symbol. Default The default attribute value is ITL1=100. Example ITL1=300. This increase changes the limit of iterations and can help to achieve DC convergence if a failure occurs.
847
ITL2
Purpose The ITL2 attribute on the OPTIONS analog report generator specifies the maximum number of times that, with a NODESET attribute present, the system can perform DC or BIAS POINT analysis iterations. For more information, refer to the HSpice or PSpice Help file. Placement On the symbol. Default The default attribute value is ITL2=20. Example ITL2=50 indicates that, with a NODESET attribute present, the system can perform DC or BIAS POINT analysis up to 50 times.
848
ITL4
Purpose The ITL4 attribute on the OPTIONS analog report generator specifies the maximum number of iteration times transient analysis will be performed for any one point in analysis. For more information, refer to the HSpice or PSpice Help file. Placement On the symbol. Default The default attribute value is ITL4=10.
849
ITL5
Purpose The ITL5 attribute on the OPTIONS analog report generator specifies the maximum number of iteration times that transient analysis will be performed for all points in analysis. For more information, refer to the HSpice or PSpice Help file. Placement On the symbol. Default The default attribute value is ITL5=5000. Example ITL5=100 indicates that transient analysis can be performed 100 times. ITL5=0 indicates that there is no limit on the number of times transient analysis can be performed.
850
L
Purpose The L attribute defines the length of an analog FET channel in meters. Placement On the symbol. The ORDER Attribute You must identify this attribute in the ORDER attribute for interpretation. Example L=5u indicates that the channel is 5 microns long.
851
LABEL
Purpose The LABEL attribute specifies a unique name you want to assign to this analog source component in order to differentiate it from similar components in a project schematic. Attaching a LABEL attribute to a component has the same effect as creating a label for the component using the Add > Label command. Placement On the symbol. Example The attribute LABEL=VIN assigns the name VIN to this component instance of the symbol, just as if you had attached a label of VIN to the component instance.
852
LIBRARY
You can only place the LIBRARY attribute on the LIB symbol. The LIBRARY attribute identifies the Spice model library that the LIB symbol is meant to represent.
853
LIMPTS
Purpose The LIMPTS attribute on the OPTIONS analog report generator specifies the maximum number of data points allowed in any analysis. Placement On the symbol. Example LIMPTS=2000 indicates that a maximum of 2000 points in any print table or plot can be included in an analysis.
854
LIN/OCT/DEC
Purpose The LIN/OCT/DEC attribute specifies the type of sweep to be performed on the BODEPLOT analog report generator. Placement On the symbol. Attribute Value Use one of the following keywords in the value field to define sweep type: Keyword DEC LIN OCT Example LIN/OCT/DEC=DEC indicates that simulation results are measured in decades. Definition Decade Linear Octave
855
LIST
Purpose The LIST attribute on the OPTIONS analog report generator directs the system to output a summary of components. For more information, refer to the HSpice or PSpice Help file. Placement On the symbol. Attribute Value Do not use an attribute value (or equal sign character) when specifying this attribute.
856
MOD_INDEX
Purpose The MOD_INDEX attribute specifies the multiplier of modulated frequency on SFFM and ISFFM analog symbols. Placement On the symbol. Attribute Value The value of this attribute is substituted for mod in the waveform formula. Refer to the waveform formula under I and V in the PSpice Help file. Example MOD_INDEX=1 indicates a modulated frequency of 1.
857
MODEL
Device Types RAM, ROM Analog Purpose The MODEL attribute defines which model file the system uses to simulate this component. Simulation .mod files are stored in the Analog Models subdirectory. Analog Placement On the symbol. Analog Example MODEL=Q2N3904 tells the system to simulate this component using the q2n3904.
858
NO_PINS
Purpose The NO_PINS attribute overrides a symbols PINORDER attribute. Using the NO_PINS attributes allows you use the ORDER attribute instead of the PINORDER attribute to determine analog component pin order. Placement On the symbol. Attribute Value The NO_PINS attribute accepts 1 or TRUE as its value. The PINORDER and ORDER Attributes Normally, the PINORDER attribute controls the default sequence. You can also use the ORDER attribute to specify pin sequence. If you specify the NO_PINS attribute on the symbol, this overrides the PINORDER attribute and the system uses the pin sequence in the ORDER attribute.
859
NODE
Purpose The NODE attribute on the OPTIONS analog report generator directs the system to output a list or a table of nets. For more information, refer to the HSpice or PSpice Help file. Placement On the symbol. Attribute Value Do not use an attribute value (or equal sign character) when specifying this attribute.
860
NODESET
Purpose The NODESET attribute defines what voltage you think is present on the net. The simulator uses your estimate as an initial condition for determining the actual voltage on the net during calculation of the bias point. For more information, refer to the HSpice or PSpice Help file. Placement On the schematic, attached to a net. Example NODESET=3 tells the simulator to guess the initial voltage as 3 volts. This adds the following line in the .cir file: .NODESET V([net_name])=nV
861
NOECHO
Purpose The NOECHO attribute on the OPTIONS analog report generator directs the system not to list the input file. For more information, refer to the PSpice Help file. Placement On the symbol. Attribute Value Do not use an attribute value (or equal sign character) when specifying this attribute. Example This attribute adds the following line in the .cir file: .OPTIONS NOECHO
862
NOISESOURCE
Purpose The NOISESOURCE attribute specifies the REFDES or label name of the input signal and noise source component against which noise is measured on the NOISE analog report generator. Placement On the symbol. Example NOISESOURCE=VIN indicates that noise is to be measured against the amount of noise at the component VIN.
863
NOPAGE
Purpose The NOPAGE attribute on the OPTIONS analog report generator directs the system not to paginate, or print a header/banner for each major section of output. Placement On the symbol. Attribute Value Do not use an attribute value (or equal sign character) when specifying this attribute.
864
NUMDGT
Purpose The NUMDGT attribute on the OPTIONS analog report generator specifies the number of significant digits printed in each column in a table (each column corresponds to one output variable). Placement On the symbol. Example NUMDGT=6 indicates that each output variable is precise to 6 digits.
865
NUMPOINTS
Purpose The NUMPOINTS attribute specifies the number of data points in each sweep analysis on the BODEPLOT analog report generator. Placement On the symbol. The LIN/OCT/DEC Attribute The LIN/OCT/DEC attribute specifies the sweep type that simulation results are measured in. Example NUMPOINTS=10 indicates that each sweep analysis contains 10 data points per octave if the LIN/OCT/DEC=OCT attribute exists.
866
NUMRUN
Purpose The NUMRUN attribute on the MC analog report generator specifies the number of times the DC, AC, or transient analysis is run during a Monte Carlo analysis. Placement On the symbol. Example NUMRUN=10 indicates that, in addition to nominal simulation, 10 passes of DC, AC, or transient analysis are to be run.
867
OFFSET
Purpose The OFFSET attribute specifies the location on the Y axis at which the DC voltage or current is measured on the SFFM and ISFFM analog symbols. This attribute is also used to specify the location on the Y axis at which the current is measured on the ISIN analog symbol. Placement On the symbol. Attribute Value The value of this attribute is substituted for voff in the waveform formula. Refer to the waveform formula under I and V in the PSpice Help file. Example OFFSET=50mA indicates that the power generated by this component is measured around the Y axis that corresponds to 50 milliamps.
868
OPTS
Purpose The OPTS attribute on the OPTIONS analog report generator lists the values of all of the options. For more information, refer to the HSpice Help file. Placement On the symbol. Attribute Value Do not use an attribute value (or equal sign character) when specifying this attribute.
869
ORDER
Purpose The ORDER attribute specifies what information is included in the simulation file and how the information is formatted. The simulation file includes only those attributes listed in the value field of the ORDER attribute. Use the ORDER attribute in your design only where necessary. For example, attach ORDER to a symbol to include the symbol definition in the simulation file. Placement On the symbol. Attribute Value You can alter the way that attributes are entered into the simulation file by placing one of the following characters at the end of the attributes name keyword in the ORDER attribute: Table 19-2. Order Attribute - Characters for Controlling Attribute Values Character $ = & Definition Only the attribute value is entered The entire attribute is entered Inserts the SPICE name of the referenced component, where the reference is by internal name. SPICE name of the referenced component, where the reference is by internal name. Writes the name or number of the net connected to that pin. See the .MC report generator for some examples. This can be used with the attribute NO_PINS = TRUE, which disables default output of node numbers after the component name. Defines literals which are always available as output
It is not necessary to insert spaces in between items listed in the ORDER attribute unless you want the spaces to appear in the SPICE input file. This is because spaces are read as part of the attribute string. For example:
ORDER=K1$ K2$K3$" V("K4$")"
Where K1=1, K2=2, K3=3, and K4=4, this produces in the SPICE input file:
1 23 V(4)
Special Case Keywords The SPICE Netlister recognizes two special case keywords: NOT4ECAD and WL. When it finds the keyword NOT4ECAD within an element: for Dracula: it removes this element from the deck.
870
When the SPICE Netlister finds the keyword WL=wval/lval, two parameters are created: W=wval and L=lval. The WL_SPLIT parameter set in the wspice.cfg file enables this feature. Example With the BULK=VDD and MODEL=PSS attributes, the ORDER=BULK$MODEL= attribute causes the following entry in the simulation file:
VDD MODEL=PSS
871
OUT
Purpose The OUT attribute specifies the number of characters per line of text in a print table on the WIDTH analog report generator. Placement On the symbol. Attribute Value Use 80 or 132 in the value field to specify 80 or 132 characters, respectively. Example OUT=80 (default value) indicates that 80 characters are allowed in each line of a print table.
872
OUTPUT
Purpose The OUTPUT attribute specifies how much output information is generated from MonteCarlo analysis on the MC analog report generator. For more information, refer to the HSpice or PSpice Help file. Placement On the symbol. Example OUTPUT=ALL indicates that all of the output from every MonteCarlo analysis should be generated.
873
PARNAM
Purpose The PARNAM is used by the SPICE Netlister to allow you to pass parameters through a hierarchical netlist. The PARNAM attribute references the components .SUBCKT line in the hierarchical netlist and adds the desired parameter to the subcircuit call. The following conditions apply to the PARMAN attribute: You do not need to use the PARNAM attribute to generate a hierarchical netlist. The PARNAM attribute simply adds additional information to the .cir file. If you are creating a flat netlist the SPICE Netlister ignores the PARNAM attribute. The PARNAM attribute takes as its value the parameters you want to pass. The parameters must be defined in the format acceptable to the analog simulator you intend to use. Placement On the schematic, attached to a component. Example If an analog symbol intended to be simulated using SPICE and possessed the following attributes:
REFDES = X1 | Assume two nodes named In and OUT PARNAM = PARAMS: @W=1.0U @L=1.0U ORDER = PARAMS: @W= @L= W = 5.0U L = 5.0U
The Spice Netlister would produce the following subcircuit calls in the .cir file:
.SUBCIT FOO IN OUT PARAMS: W=1.0U L=1.0U X1 IN OUT FOO PARAMS: W=5.0u L=5.0U
If an analog symbol intended to be simulated using HSpice possessed the following attributes:
REFDES = X1 | Assume two nodes named In and OUT PARNAM = @W=1.0U @L=1.0U ORDER = @W= @L= W = 5.0U L = 5.0U
The Spice Netlister would produce the following subcircuit calls in the .cir file:
.SUBCIT FOO IN OUT W=1.0U L=1
874
PHASE
Purpose The PHASE attribute specifies relative phase, in degrees, of multiple waveforms on AC, IAC, SIN, and ISIN analog symbols. Placement On the symbol. Attribute Value The value of this attribute is substituted for phase in the waveform formula. Refer to the waveform formula under I and V in the PSpice Help file. Example PHASE=90 indicates a phase of 90 degrees.
875
PINORDER
Purpose The PINORDER attribute determines the order in which nets attached to exact pins are listed in the SPICE netlist. Only those nets attached to exact pins (pins defined in the pinorder attribute) are listed in the SPICE netlist. Separators for pins in this attribute value are: " ,\t\n" Placement On the symbol. Attribute Value The attribute value is the pin name label, not the pin number. Additional Information Normally, the PINORDER attribute controls the default sequence. You can also use the ORDER attribute to specify pin sequence. If you specify the NO_PINS attribute on the symbol, this overrides the PINORDER attribute and the system uses the pin sequence in the ORDER attribute.
876
PIVREL
Purpose The PIVREL attribute on the OPTIONS analog report generator specifies the relative magnitude required for pivot in the matrix solution. Placement On the symbol. Additional Information For more information, refer to the Spice Help file or a math text book for the subjects: Solutions to systems of equations Gaussian elimination Partial pivoting
877
PREFIX
Purpose The PREFIX attribute value is used by the SPICE Netlister to uniquely identify each analog component in a SPICE compatible format. The SPICE Netlister prefixes each components PREFIX attribute value to its REFDES attribute value and writes the entire string to the .cir file. The .cir is used as input to ViewSpice the analog simulator. This attribute is required for all analog symbols. Placement On the symbol. Attribute Value The following prefixes are defaults for the corresponding types of components: Table 19-3. Prefix Attribute - List of Prefixes Keyword B C D E F G H I J K L M O Q R S T V W Definition Gallium arsenide field effect transistor Capacitor Diode Voltagecontrolled voltage source Currentcontrolled current source Voltagecontrolled current source Currentcontrolled voltage source Independent current source Junction field effect transistor Transformer Inductor Metaloxide silicon field effect transistor Digital output Bipolar transistor Resistor Voltagecontrolled switch Transmission line Independent voltage source Subcircuit
878
Refer to appropriate simulator documentation to determine which prefix to use in the value field of this attribute. Example For example is a component has a REFDES = U2 and a PREFIX = R the component is written into the .cir file as RU2 which tells the simulator that component U2 is a resistor.
879
PROBE
Purpose The PROBE attribute specifies if the analog component is measuring current (I) or voltage (V). Placement On the schematic, attached to a net or symbol. Attribute Value Use I or V in the value field to specify current or voltage, respectively. Attach any of the following keyword suffixes to the letter I or V to precisely define measurement: Keyword DB M P Duplicate Attributes You cannot attach the same attribute to an object more than once, except for the PROBE attribute on components and net/bus segments. Example PROBE=IP indicates that current phase is being measured. The DC Attribute If you are using a METER type symbol to measure current (such as AMMETER or UAMMETER), specify 0 for the DC attribute value. Definition Decibel Magnitude Phase
880
PULSED
Purpose The PULSED attribute specifies the maximum current swing of the IPULSE analog symbol. Placement On the symbol.
881
RELTOL
Purpose The RELTOL attribute on the OPTIONS analog report generator specifies relative accuracy of voltage and current measurements. Placement On the symbol. Default The default attribute value is RELTOL=0.001. Example RELTOL=.001 indicates that relative voltage and current measurements are accurate to 0.1%.
882
SOURCENAME
Purpose The SOURCENAME attribute specifies the REFDES or label name of the component that is the source of the circuit being swept on the SWEEP analog report generator. Placement On the symbol. Example SOURCENAME=VIN indicates that a DC sweep analysis is made by varying the value of the component VIN.
883
STARTFREQ
Purpose The STARTFREQ attribute specifies the initial frequency of a frequency sweep on the BODEPLOT analog report generator. Placement On the symbol. Attribute Value Value must be greater than 0 and less than the value of the attribute. Example STARTFREQ=15KHz indicates a starting sweep frequency of 15 kilohertz.
884
STARTVAL
Purpose The STARTVAL attribute specifies the initial voltage or current of the sweep on the SWEEP analog report generator. Placement On the symbol. Attribute Value The sweep can be in either direction; therefore, the value of STARTVAL can be negative or positive. Example STARTVAL=2.5V indicates a starting sweep voltage of negative 2.5 volts.
885
TDELAY
Purpose The TDELAY attribute specifies the time it takes a PULSE, IPULSE, SIN, and ISIN component to begin a regular waveform. Placement On the symbol. Attribute Value The value of this attribute is substituted for td in the waveform formula. Refer to the waveform formula under I and V in the PSpice Help file. Example TDELAY=10ns indicates that the start of a regular waveform is delayed by 10 nanoseconds.
886
887
TFALL
Purpose The TFALL attribute specifies the time it takes to transition from PULSED to INITIAL or VPULSED to VINITIAL on the IPULSE and PULSE analog symbols. Placement On the symbol. Attribute Value The value of this attribute is substituted for tf in the waveform formula. Refer to the waveform formula under I and V in the PSpice Help file. Example TFALL=10ns indicates a transition time of 10 nanoseconds on the PULSE and IPULSE analog symbols.
888
TFINAL
Purpose The TFINAL attribute on the TRANS analog report generator specifies the total time for which simulation results are measured. Placement On the symbol. Example TFINAL=100ns indicates that simulation results will be measured for 100 nanoseconds on the TRANS analog report generator.
889
890
TNOM
Purpose The TNOM attribute specifies the default temperature, in centigrade degrees, on the OPTIONS analog report generator. Placement On the symbol. Example TNOM=25 indicates a default temperature of 25 degrees, centigrade.
891
TPERIOD
Purpose The TPERIOD attribute specifies the length of time of one complete waveform cycle on the PULSE and IPULSE analog symbols. Placement On the symbol. Example TPERIOD=50ns indicates a 20 Megahertz waveform.
892
TPULWIDTH
Purpose The TPULWIDTH attribute specifies length of time the pulse is active on PULSE and IPULSE analog symbols. Placement On the symbol. Attribute Value The value of this attribute is substituted for pw in the waveform formula. Refer to the waveform formula under I and V in the PSpice Help file. Example TPULWIDTH=20ns indicates an active pulse width of 20 nanoseconds.
893
894
VALUE
Analog Purpose In addition to using the VALUE attribute to specify R, L, or C values, the VALUE attribute specifies relative smallsignal amplitude on AC and IAC analog symbols. Analog Placement On the symbol. Analog Example Attached to an AC component, VALUE=5 indicates a smallsignal amplitude of 5 volts. Analog Example 2 Attached to an R component, VALUE=5.1K indicates a 5.1K ohms resistance value.
895
VAMPLITUDE
Purpose The VAMPLITUDE attribute specifies maximum voltage swing on the SIN analog symbol. Placement On the symbol. Attribute Value The value of this attribute is substituted for vampl in the waveform formula. Refer to the waveform formula under I and V in the PSpice Help file. Example VAMPLITUDE=100E3 indicates a maximum voltage swing of 100 millivolts.
896
VINITIAL
Purpose The VINITIAL attribute specifies the starting voltage of the waveform on the PULSE analog symbol. Placement On the symbol. Example VINITIAL=5V indicates a starting voltage of 5 volts.
897
VNTOL
Purpose The VNTOL attribute on the OPTIONS analog report generator specifies the best accuracy, in volts, of voltage measurements. For more information, refer to the HSpice or PSpice Help file. Placement On the symbol. Default The default attribute value is VNTOL=1uV. Example VNTOL=1uV indicates that voltage measurements are accurate to within 1 micro volt.
898
VOFFSET
Purpose The VOFFSET attribute specifies the Y axis point at which DC voltage is measured on the SIN analog symbol. Placement On the symbol. Attribute Value The value of this attribute is substituted for the voff parameter in the waveform formula. Refer to the waveform formula under I and V in the PSpice Help file. Example VOFFSET=50mV indicates that the waveform is measured around the Y axis point that corresponds to 50 millivolts.
899
VOLTAGE
Purpose The VOLTAGE attribute specifies voltage across the DC analog component. Placement On the symbol. The ORDER Attribute You must identify this attribute in the ORDER attribute for interpretation. The CURRENT Attribute Use the CURRENT attribute on the IDC analog component. The VPULSED Attribute If the design contains conflicting attribute values, simulation results will be unspecified. For example, the value of the VPULSED attribute must agree with the value of the VOLTAGE attribute if both attributes are used in a design. Example VOLTAGE=5V indicates that there are 5 volts across this DC component.
900
VPULSED
Purpose The VPULSED attribute specifies the maximum voltage swing of the PULSE analog symbol when it is ON. Placement On the symbol. The VOLTAGE Attribute If the design contains conflicting attribute values, simulation results will be unspecified. For example, the value of the VPULSED attribute must agree with the value of the VOLTAGE attribute if both attributes are used in a design. Example VPULSED=5V indicates a maximum voltage swing of 5 volts.
901
W
Purpose The W attribute defines the width of an analog FET channel in meters. Placement On the symbol. The ORDER Attribute You must identify this attribute in the ORDER attribute for interpretation. Example W=3u indicates that the channel is 3 microns wide.
902
WIDTH
Purpose The WIDTH attribute on the OPTIONS analog report generator specifies the number of characters per line of text in a print table. Use 80 or 132 in the value field to specify 80 or 132 characters, respectively. Placement On the symbol. Example WIDTH=80 indicates that each line in a print table can contain 80 characters.
903
YMAX
Purpose The YMAX attribute specifies maximum allowable deviation of MonteCarlo results in the Y direction on the MC analog report generator. Placement On the symbol. Example YMAX=5 indicates that maximum deviation in the Y direction is 5.
904
Accessing
This dialog box is inaccessible unless the software crashes and crash detection is enabled in the software .ini file.
905
Table 20-1. Crash Detected Dialog Box Contents Name Comments box Description You can describe what you were doing when the error occurred or anything else you can think of that might help when investigating the crash. You can include BMW data and your project files. This will allow customer support to play back what you were doing in your design that led up to the crash. This check box is unavailable if the BMW feature is not enabled. See also: BMW and BLT
906
Table 20-1. Crash Detected Dialog Box Contents Name Save button Description You must click the Save button if you want to create a report file. When you click the Save button, you are prompted with a Save As dialog box. The file that is created is called a PADS Dump File and is compressed in the .zip format. This is the file that you must send to customer support. It will include the report, the BMW data and the project files.
907
The following table specifies which of the procedures described below you must use to create session playback media. Was logging enabled? Yes No Yes No Did the PADS tool crash? Then use this procedure. No No Yes Yes Creating Session Playback Media For a Normal Session Creating Session Playback Media For a Normal Session Automatically Creating Session Playback Media for a Crashed Session Manually Creating Session Playback Media For a Crashed Session
908
This procedure does not give useful results if any additional instance of the PADS tool ran concurrently (for any period) with the previous (crashed) session.
909
To automatically create session playback media from the previous session: 1. Start the PADS tool. 2. Type the modeless command BMW ON and press Enter to enable session logging. Logging remains enabled for this and all future sessions until you disable it with the BMW OFF command. Tip: You must enable session logging before you open the file. 3. Open the file in which you encountered the problematical behavior. 4. Perform the series of actions that produced the problematical behavior. The series of actions, as well as changes to the board or to the configuration, are stored in the Session Log Files for the current session. 5. After the crash, restart the PADS tool. A dialog box is displayed asking if you want to save media files for the crashed session. Click Yes to create the Session Media Files.
910
Tip: These files are dynamic; each time you start a session, the current session log files are renamed as the previous session log files, and new current session log files are created. The contents of the old previous session log files are lost. Whenever you elect to create session media files for a session, the appropriate set of these log files is saved in a permanent location, as described in Session Media Files. Note: You may see a log file named <pads_tool>_Session.log listed in the \PADS Projects folder. This file is unrelated to the session playback media created by BMW.
The session media folder is named <month><day><initials><sequential letter>, where: <month><day> is the date. <initials> are letters you type in the Media Wizard dialog box to personalize the media files. <sequential letter> is a letter automatically assigned to sequence the directories created on a specific date.
Example: \PADS Projects\0530jsb represents a session media folder created on May 30, using the initials js, and that was the second session media folder created on that day.
911
Crash Detection, BMW and BLT Replaying Session Playback Media with BLT
When creating the session playback media, the following files are written to the session media folder: <folder_name>.log <folder_name>.reg <folder_name>.ini <folder_name><sl>.pcb (if needed) <folder_name><sl>.sch (if needed) Where <sl> is a sequential letter for multiple files. The session log The program-specific settings in the Windows registry The configuration file (.ini file) Files related to <folder_name>.log. These files are automatically renamed and added to the session media folder.
912
Glossary
Glossary
A
absolute coordinates Distances measured from the origin (0,0 coordinate) of the design area. accelerator keys Key sequences used to invoke commands and change system settings without using the mouse. Accelerator keys are called shortcut keys in the PADS product documentation. accessible nets Nets for which you can define test points. DFT Audit analyzes all nets. If DFT Audit determines that test probes can access them, the nets are accessible (also called adaptable). accordion A trace pattern resembling a signal wave that adds length to traces. The trace patterns are contiguous and do not include layer changes.
accordion gap The gap of an accordion sets the pitch between chords. The gap is a user-definable number multiplied by the same net trace-to-corner clearance. Tip: If the same-net trace-to-corner distance equals zero, then Trace Width is used for the gap calculation.
913
Glossary
acid trap An acid trap is a location where acid gets trapped in an area due to the surface tension of the etching. This acid causes over-etching, which hurts yield. active component The active substituted component in an assembly variant. Active means that this substitution of the component is used in the current variant. See also: default.asc active layer The design layer to which new information is added. You select the active layer by choosing the layer in the Layer list on the standard toolbar. You can also do this by using the L modeless command. ACTM# The 16-digit number found on your security key. adaptable nets See accessible nets adhesive A substance used to attach the bodies of devices to a PC board. aggressor nets When using the Electrodynamic Checking program (EDC), a net or pin pair that is considered a source of interference. align To reposition placed parts to match the alignment of another part. alignment tool A small, temporary marker at each location where dimensioning occurs. alpha pins Pins with descriptive letters that are substituted for pin numbers. For example, GND for the ground pin. Alphanumeric pin assignments are made in the Library Manager's part type editor. alphanumeric pins Pins with alphanumeric pin numbers. An alphanumeric name consists of a prefix and suffix. The prefix or the suffix can contain either alpha letters or numeric numbers. For example, A1, 1A, or even DATA07 (consists of the prefix DATA and the suffix 07). amplitude The amplitude of an accordion sets the accordion height (for horizontal accordions) or accordion width (for vertical accordions). The amplitude is a user-definable number, multiplied by the same net trace-to-corner clearance.
914
Glossary
Tip: If the same-net trace-to-corner distance equals zero, then Trace Width is used for the amplitude calculation.
See also: accordion, gap (accordion) analog circuit A design composed of discrete components such as capacitors, resistors, and diodes. angstrom 1/10,000 of a micrometer (10-4um). annotation (forward and backward) Forward annotation refers to the process of updating the design file to match the schematic file. Backward annotation refers to updating the schematic file to match the design file. annular pad A pad shape that enables you to specify an inside and an outside diameter. This creates a donut shape because the inner hole was used to center the drill bit when boards were hand-drilled on a drill press. Though obsolete, the annular pad is still offered for special circumstances. antipad For plane layers, a slightly oversized pad diameter that plots as a clearance for through-hole pins that should not connect to the plane. any-angle coupling trace Part of a route that connects SBP fanouts to serpentine routes. aperture A uniquely shaped window or hole that is attached to an aperture wheel on a photoplotting machine. aperture table A table that matches the line widths necessary to print your design with the plotter setup. PADS Layout can prepare the table automatically, or you can prepare it manually. Artwork for printed circuit manufacturing is created by exposing clear film to light that is passed though the aperture. Although the aperture wheel has been made obsolete by laser plotters, an aperture table is still necessary to drive laser plotters.
915
Glossary
apl.dcr A setup file for Novell network security. application-specific integrated circuit An IC designed to meet a specific customer requirement. area select A method for selecting an object or a group of objects. If you enable area select by clicking Filter on the Edit menu, a selection rectangle is created and all items within the rectangle are selected. array A group of items, such as bonding pads, that are arranged in rows and columns. artwork Clear film with darkened areas representing pads and connecting traces, and used for manufacturing a printed circuit board. Each layer of a design has its own unique artwork, such as silkscreen and solder mask. .asc The file extension used to identify a proprietary PADS-format ASCII file. ASCII format A translation format that uses ASCII text to define the PCB design. ASCII format is widely used to list the parts and connections in a design, to import and export design items, and to check the design for binary corruption. ASIC An acronym for application-specific integrated circuit. assembly drawing A final design document that provides the part name, type, and orientation for each device on a printed circuit board. An assembly drawing is used for assembly of the final product. assembly variant A specific manufacturing configuration of a PCB. Assembly variants specify which components are used, which are not used, and which are substituted with a different decal part type. Several assembly variants can exist for a single PCB. associating copper Copper combined with the terminals in the PCB Decal Editor. attribute groups A group of structured attributes. For example, the DFT group includes the following attributes: 1. DFT.Nail Count Per Net DFT.Nail Number DFT.Nail Diameter
916
Glossary
attributes Attributes contain information you have associated with an object in your design. Attributes contain the types of part information that can be included in the parts library description and exported to a parts list. Examples are part manufacturer, package type, order number, and so on. Auto Dimensioning tab The tab on the Options dialog box that determines the appearance of newly created dimensions. automation A way for heterogeneous applications to communicate with each other. PADS products make some data, such as the database in use, and some functionality, such as opening files or selecting objects, available to other applications. autorouter pass types Pass types are part of an autorouting strategy that determines how the autorouter routes a design. Table Glossary-1. Pass Types Pass Center Fanout Miters Optimize Patterns Description Places traces equidistant from component pins or vias and each other to evenly distribute any available space in the channel. Places vias for inaccessible SMD component pins and routes from the vias to the pins. Converts all route corners of a specified angle to diagonal corners. Analyzes each trace and tries to improve the quality of the route pattern by removing extra segments, reducing via usage, and shortening trace lengths. Searches for groups of unrouted connections that can be completed using typical C routing patterns, Z routing patterns, and memory patterns and then routes them. Sequentially routes each unroute until all connections are attempted. Analyzes the testability of the design, determines which nets require testing, adjusts the routes, and inserts test points to improve testability. Adjusts the length of length-controlled traces. The Tune pass tunes all routed traces with length rules, and automatically adjusts length-controlled traces to meet design rules.
axial lead A connection pin that protrudes straight out from the component body and bends at 90 degrees for insertion into the PC board. An axial lead is usually associated with discrete components such as resistors, capacitors, or diodes.
B
backward annotate Update a schematic file to match its design file.
PADS Layout Users Guide and Reference Manual, PADS 9.2
917
Glossary
ball bonding A bonding technique that provides increased contact between a gold wire and a chip bond pad. This method uses thermal compression to melt gold wire to form a ball. ball grid array A packaging method that uses a substrate to interconnect one or more die to an array of solder alloy spheres. base option The Base Option, in Assembly Variants, contains all of the common components in all of the existing variants; in other words, it contains a filtered database. If you uninstall or substitute components in a variant, they are removed from the Base Option. Therefore, the Base Option, because it contains only installed options, is also a subset of the raw database. You can use the Base Option to view all of the items in all of the variants, or the base of all variants. The Base Option always exists; you cannot delete it. base part When making a union, the part type of the first selected part. Base parts can either be left in position and joined by secondary parts, or repositioned to imitate the first selected prototype part. baseline dimensioning A type of dimensioning in which a series of dimensions have a common start point, such as datum dimensioning. basic units A basic unit is the smallest unit of measurement in a PADS database. All values in the database are stored in binary format basic unit and are converted to the current user units (mils, mm, or inches) for screen display. If you need to reimport the information to .pcb format, export in basic units. Conversions are: 1. 1 mil=38100 basic units 2. 1 millimeter = 1500000 basic units BGA An acronym for ball grid array. BGA fanout A single-segment fanout that connects BGA array pads to BGA vias. This single-segment fanout always ends in a via. BGA/PGA decals A full matrix decal for BGAs and PGAs, including staggered array patterns. biased pin pair A layer biased pin pair is any pin pair with a design rule specifying a layer bias to one or more, but not all, electrical routing layers.
918
Glossary
blind via A via that connects an outer layer to one or more inner layers, without passing through all other layers of a printed circuit board. bmp An image file that can be pasted into documents or other programs such as Microsoft Word. PADS products use the Copy Bitmap command to capture these as screen images. board markings Designers usually include identification information on a board. These may include the board part number, the assembly part number, the company name, the product name, the revision level, the serial number, the copyright notice, an anti-static symbol, warning messages, UL labels, test labels and many other types of information. This information may be in ink on the silkscreen layers, in copper on the top and/or bottom layer or some combination of the two. These are typically referred to as board markings. Tips: Add text to an electrical layer and it will be created in copper. Add text to a Fabrication, Assembly, and Documentation Layer and it will be created during the silkscreen process. Use the Text command to add board markings to your design.
See also: Adding Free Text board outline The actual shape of the printed circuit board, defined by line segments and arcs. The board outline is entered on layer 0 and displayed on all layers. bonding pads Metallization areas placed around the perimeter of the integrated circuit die, to which aluminum or gold wires connect the die to the component package. bounding rectangle The smallest rectangle that encloses all nontext graphics on all layers. breakpoint marker A small brown dot in the Output window gutter that indicates a breakpoint in a script or macro. bumped chip A die or chip that has been specifically processed with buffer metals over the I/O pads, followed by an addition of solder or gold bumps to provide bonding areas for direct chip attachment onto a substrate. buried via A via that only connects two inner layers.
919
Glossary
bus A series of connections that share a common use, such as memory array or data array, and are usually routed parallel to each other. bus routing Routing two or more pin pairs simultaneously and in close proximity to each other in neat, flowing patterns.
C
C routing pattern A collection of routes that form a pattern resembling the letter C.
CAD An acronym for Computer-Aided Design or Computer-Aided Drafting. CAE An acronym for Computer-Aided Engineering. CAE Decal The graphical representation of schematic symbols in PADS products. CAM An acronym for Computer-Aided Manufacturing. CAM document A combination of plot type and output device you create and save with the design. For example, you can include "Silkscreen Top, Photoplot" and "Silkscreen Top, Laser Printer" on your CAM Documents List and run them selectively when needed. CAMDir The powerpcb.ini file entry that enables you to specify the CAM master folder for creating CAM output. capacitance The ratio of charge within a trace that is a factor of the trace length and signal delay. CBGA An acronym for ceramic ball grid array.
920
Glossary
CBP An acronym for chip bond pad. center pass An autorouting pass that places traces equidistant from component pins or vias and each other to evenly distribute any available space in the channel. CGA An acronym for column grid array. chamfered A rectangle with the square corners cut off in order to create beveled edges on the corners. chamfered path A solid filled copper that, like a trace, acts as a conductor connecting pins and vias similar to a trace. But unlike a trace, which is created with a round aperture producing rounded outside corners, chamfered path copper allows for sharp specific outlines with a filled interior. When creating a chamfered path, you set options to create shapes with square or chamfered corners. The copper created by chamfered path has a Solid Copper property which overrides the Copper Hatch Grid and Drafting Line Width settings to make it a solid fill. Clearance rules for the chamfered path copper are also changed to match the clearance rules of a trace. checking Verifying the design meets previously defined rules, such as clearance and connectivity. chip An integrated circuit without packaging. A chip is also called a die. chip bond pad Interconnect areas on the die on which wire bonds are connected to the substrate. chip carrier A square or rectangular IC package, with I/O connections on four sides. chip on board The packaging configuration in which a chip is bonded directly to a circuit board or substrate. Chip Scale Package A packaging configuration in which the dimension of the substrate is 1.2 times larger than the die.
921
Glossary
See also: accordion,amplitude, gap (accordion) clam shell fixing A test fixture that tests both the top and bottom side of the PCB. class A collection of nets with a common set of design rules. clearance The measured space between routed objects such as trace-to-trace, trace-to-pad, or pad-to-pad. closed cluster Clusters that you cannot delete or replace during automatic cluster creation. cluster In Cluster Placement, a group of parts that must be placed close to each other. CMOS An acronym for Complementary Metal Oxide Semiconductor. COB An acronym for Chip On Board. coefficient of thermal expansion A quantity used to determine the length change of a material due to temperature change. Thermal expansion differences between the die and substrate must be considered for quality assurance. collapse To relocate the members of a cluster from their current placement to the center of the cluster. column grid array Similar to a ball grid array, but columns are used to improve the stresses of different thermal expansion between the board and the component. Com port Abbreviation for communications port. This port provides a connection between your computer and peripheral devices, such as plotters, modems, and other computers.
922
Glossary
combine Joining lines, or lines and text, together as one selectable object. component side The top or front side of a printed circuit board where devices are normally mounted. composite fanout A fanout from a pin that is common to two subnets. Often created by autorouting operations. Composite fanouts provide access to component pins that may otherwise be inaccessible. See also: fanout, subnets composite rule trace A trace that is attached to a pin (typically an SMD) shared by two subnets. This type of trace is typically created by autorouting operations. See also: composite fanout, subnets conditional rules Rules placed on a signal that apply only if the signal is routed near another specified signal. Conditional rules are also known as against rules. conductor A material that causes heat or electrical current flow. For printed circuit design, a conductor is a piece of metal that connects pins of components together. connected islands A maximum set of subnet items already connected by a trace, copper unroute, or jumper. See also: subnets, subnet connections Points of connectivity, such as a pin pair or a net. connector A unique component used to connect a portion of a printed circuit board with other devices. container application An application that can incorporate embedded or linked items into its own documents. The documents managed by a container application must be able to store and display both OLE components, and data created by the application itself. A container application must also allow users to insert new items or edit existing items. When you insert objects into a PADS product, the PADS product is the container application. When you insert a PADS file into another application, the other application is the container application.
923
Glossary
controlled gap area The part of the differential pair where the traces are drawn routed in parallel and separated by the pair routing gap. The controlled gap zone area starts at the gathering point and ends at the split point.
See also: gathering point, pair routing gap, split point controlled gap length For a differential pair, the ratio of the controlled gap area routing length to the overall routing length, in percentage. See also: differential pairs controlled length net A net that has length rules, or contains pin pairs that have length rules. The following high-speed rules are net length rules: Minimum/maximum length Matched length Differential pairs
converting database The process that converts a non-native file, such as an .asc file or a .dxf file, to a PADS native format, or .pcb, file. copper connectivity Means unroutes are always connected to a copper at some point in the copper outline. A copper outline can include arcs. The following graphic illustrates how copper connects to a net.
See also: coppers, overlapping coppers copper pour The process which draws a copper area with insulation areas around traces and pins that pass through the copper, but are not attached or connected to the copper.
924
Glossary
coppers Polygons on an electrical layer representing an area of the PCB to fill with metal. When a copper is assigned to a net, it is joined to the net with a trace or via. Coppers are obstacles to net objects unless the copper and the net belong to the same net. See also: overlapping coppers, copper connectivity copy route The duplication of a trace or series of traces, using copy and paste. corner Point where a trace or line changes direction. The Selection Filter enables or disables picking geometric or route corners. cost Reduces usage of a layer. The higher the cost, the less a layer is used for routing. cross-probing Uses a link between PADS programs to reflect, in one PADS application, selections made in another PADS application. cross-reference file A file that maps design objects between two environments, such as PADS Layout and DxDesigner. CSP An acronym for chip scale package. CTE An acronym for coefficient of thermal expansion. It is also referred to as TCE. cutouts A closed polygon in a copper, copper pour, or board outline. In a copper or copper pour, a cutout results in a void area. See also: overlapping cutouts cycle picking To sequentially select objects in the vicinity of the selection point using the Tab key.
D
dangling route Dangling routes are stubs or spurs off of traces that are not tied to any pin by a ratsnest. See also partial route. database units The use of mils, metric, or inches within a design.
925
Glossary
datum dimensioning A style of dimensioning in which all dimensions are measured from a common starting point. The origin extension line is marked as zero, with each dimension reflecting the measurement from that point. See also: Creating Baseline Dimensions D-codes Specific numbers assigned to photoplot machine apertures for program identification. D-CODES are included in the aperture table. decal The physical representation, or footprint, of a part. decal copper Open, closed, or associated copper produced within the physical representation of a component. decal text Documentation text produced within the physical representation of a component. default component The original component, before being replaced in the current assembly variant. The default component is always in the raw database, but not necessarily in the Base Option. See also: active component default layer mode A layer mode in which a design can consist of up to 30 electrical layers, or a combination of electrical and nonelectrical layers. You change from default layer mode to increased layer mode by clicking the Max Layers button in the Layers Setup dialog box. default.asc The ASCII file accessed for new file creation. This file provides startup design information such as grid sizes, default colors, or other information. default.cam A file usually found in the C:\MentorGraphics\<latest_release>PADS\SDD_HOME\Programs folder that contains default apertures, speed and feed settings, and drill symbols for CAM output. This file must exist in the same folder as specified by the UserDir variable in the powerpcb.ini file. See also: increased layer mode defaults Conditions or options that are set when the PADS product starts. delay The time it takes for a signal to travel through a trace.
926
Glossary
delete To remove information from a design. design area The actual work area where a design is created. design on the fly To use ECO Operations to create a new design without first providing a netlist or parts list. design rules Established spacing and general routing constraints for electrical properties, or conductors, which are verified by clicking Verify Design from the Tools menu. Design tab The Options tab that controls design conditions, general routing conditions, and certain display and part movement method settings. devicesn.dat A file usually found in the C:\MentorGraphics\<latest_release>PADS\SDD_HOME\Programs folder that contains CAM printer and plotter driver data. This file must exist in the same folder specified by the UserDir powerpcb.ini variable. DFM An acronym for Design for Manufacturing. DFT Audit DFT Audit analyzes every net for accessibility (adaptability) and creates a board report that identifies all inaccessible (non-adaptable) nets. dice The plural of die. die A single square or rectangular piece of semiconductor material into which a specific electrical circuit has been fabricated. die bonding To attach the semiconductor die to the package substrate with epoxy adhesives, gold eutectic, or solder alloy. It is also referred to as Die Attachment. die flag Metal shapes placed under a die for thermal management and/or electrical connection; also referred to as a flower pattern. die side of CBP The side of the die on which the CBP lies. Usually the die side of the CBP is the same as its fanout side, but in some cases more complex patterns of wire bond fanout may mean that the two sides are not the same.
927
Glossary
Die Wizard This feature creates die part definitions parametrically or imports the die description using GDSII or formatted ASCII files. The Die Wizard replaces Component IQ by providing die capture directly in the Advanced Packaging Toolkit layout editor. This eliminates the need to transfer .ciq files. dielectric A non-conductor of current; an insulator. dielectric constant A value given for manufacturing materials, such as FR-4, to describe electrical characteristics. differential pairs A group of two nets or two pin pairs routed side-by-side and separated by the pair routing gap for as much of the overall length as practical. A differential pair typically transmits two electrical signals that are driven 180 degrees out of phase from each other. See also: pair routing gap DIP An acronym for Dual In-line Package. DisableCaching A powerpcb.ini file entry that, when set at 1, shuts off graphics optimization and, when set at 0, enables graphics optimization. discrete device A device that contains one circuit element. For example, a resistor or toggle switch. disperse A command that is active on several levels of Cluster Placement. When selected, it clears the board of all parts or clusters that are not glued down, and arranges them around the outside of the board outline according to decal type. dispersion routes Partial routes, ending in vias, which tie surface mount components to plane layers. do file The SPECCTRA router ASCII setup file that contains user-defined router commands to initiate batch routing. documentation layers Layers higher than the electrical layers in a PADS Layout database that contain text and lines to illustrate assembly, annotation, and provide instructions for manufacturing. double-click Two mouse clicks, in immediate succession, that usually initiate an edit action or complete the current action.
928
Glossary
double-sided board A printed circuit board made up of two routing layers, and which has no internal layers. double-sided die A die that has substrate bond pads on one side, and a BGA grid array on the other side. The two sides are connected through vias. See also: single-sided die drafting operations Any operation that involves adding nonelectrical information, not associated with placement or routing, to a design. Drafting tab A Options tab that controls text settings, default line width, reference designator settings, and hatch setup. drawn pads Photoplot pads, usually finger pads, that are produced by opening the aperture and moving the board, with the aperture remaining open, to produce a pad shape. DRC An acronym for Design Rules Check. drill chart A diagram, produced on a drill drawing, that shows drill symbols matched with drill hole sizes. This is also referred to as a drill legend. drill oversize A factor applied to plated through holes for DRC purposes to account for drill oversizing during the PCB fabrication process. drill pairs Primarily for buried and blind vias, drill pairs define which layers are to be drilled and plated together during the fabrication process. drill symbols Unique symbols on a drill drawing plot that represent the various drill hole locations and sizes. drill.dat A user-definable ASCII file that determines settings for NC Drill output format options. This file must exist in the same folder specified by the UserDir variable in the powerpcb.ini. DXF An acronym for Data eXchange Format, a standard ASCII format for sharing graphics database files between different environments.
929
Glossary
dxfset.dat A file that contains the information for drill size and library name equivalents in basic units for the DXF Setup dialog box. dynamic route To create a route using the Dynamic Route tool, which automatically creates turns and pushes other routes aside in order to complete the connection.
E
ecad hint.map A user-defined text file that you create, edit, and maintain. This file enables the replacement of approximated parts from PADS Layout, with geometrically accurate components previously modeled in Pro/ENGINEER. This file must exist in either the current working folder or in the Pro/ENGINEER software loadpoint\text folder. ECO An acronym for Engineering Change Order. ECO mode A mode that PADS Layout enters when the ECO toolbar is open. Changes that affect the connection list or parts list are recorded in a file for backward annotation. See also: ECO ECO Options The setup choices available for the ECO output file, such as the name and other parameters. You can set ECO Options using the Tools menu or by clicking the ECO Options button on the ECO toolbar. ECO registration of attributes Only ECO-registered attributes, set on the Objects tab of the Attribute Properties dialog box, can be added, deleted, or changed during the ECO process. Via attributes are not registered attributes and cannot be added, deleted, or changed during the ECO process. You can modify ECO-registered attributes only in ECO mode. Non-ECO-registered attributes are never recorded in an .eco file during ECO operations. To compare ECO-registered attributes, use the Compare Only ECO Registered Attributes option on the Comparison tab in the Compare/ECO Tools dialog box. EDA An acronym for Electronic Design Automation. EDC An acronym for Electrodynamic Checking. edge One side of a polygon.
930
Glossary
edge die The two or three rows of dice along the outer circumference of a wafer. edges The Selection Filter preference that enables or disables selection of geometric segments. editing Any action that modifies a design. electrical layers Layers enabled for routing that are checked by DRC. embedded objects An object, including all of its data and the information needed to manage the object, that is contained within the framework of, and is a part of, the container application document. See also: linked objects EnableMacroLanguage The powerpcb.ini file entry that, when equal to one, enables loading of all macro parameters on startup and, when equal to zero, disables loading of macro parameters upon startup. end no via The mode initiated in the routing shortcut menus that, while routing, ends a partial route without a via. end via The mode initiated in the routing shortcut menus that, while routing, ends a partial route with a via. end zone The part of the differential pair between the split point and destination pins.
Tip: The labels in the above graphic correspond to routing that starts at the left-hand set of pins and ends at the right-hand set of pins. The label positions are reversed if the routing starts at the right-hand set of pins. See also: differential pairs, split point ending layer The finishing layer for a drill pair or via definition. Enter information about ending layer in the Pad Stacks Properties dialog box.
931
Glossary
engineering change order (ECO) operations Any processes that modify the connection list or parts list. entry angle The angle at which a route enters a pad. Esc To use the Escape or Cancel keys to stop a current action. estimated total length The trace length monitor calculates estimated length as the combined total of routed length (Rt), plus the routed length for the entire netincluding overlapping segments (Nt), plus the unrouted length (U1) of the trace being routed. Tip: Overlapping segments are counted only once.
See also: routed length, unrouted length eutectic solder A tin/lead alloy (63% tin, 37% lead) that melts at optimum temperatures. export The translation command used to convert a design file into PADS-format ASCII or DXF. extended rules Clearance, routing, and high-speed rules consisting of classes (one or more nets), groups (one or more pin pairs), individual pin pairs, decals, components and differential pairs. Without the Extended Rules option, you can assign rules on the net level only. extension lines Lines extending from the points being measured. extents The limits of the x and y coordinate area that is occupied by all items within a design. This includes information external to the board outline, such as dimensions or fabrication notes.
932
Glossary
F
Fabless A semiconductor company that subcontracts wafer manufacturing because it does not have its own wafer manufacturing facility. fabrication With semiconductor manufacturing, the front-end process of making devices in semiconductor wafers only, not the package assembly or back-end stages. fanout A segment of trace or copper shape added to SMD pads to facilitate routing. A fanout typically consists of one or more trace segments connecting a component pad to a via, allowing the signal on an outer layer to connect to one or more internal signal layers or planes. A specialized repeated pattern is often necessary to break out multiple pads on the same component far enough from the component to allow easy routing. Use fanouts to: allow on-grid access by autorouters that cannot handle off-grid pads. make routing easier, and ensure connections are made. connect SMD pins to an inner plane layer using vias. connect an SMD pad to an inner signal layer where more routing space is available.
fanout pass An autorouting pass that places vias for inaccessible SMD component pins and routes, from the vias to the pins. fanout side of CBP The side of the SBP Guide to which the CBP should be wire bonded. Usually the fanout side of the CBP is the same as its die side, but in some cases more complex patterns of wire bond fanout may mean that the two sides are not the same. FCBGA An acronym for flip chip ball grid array. feature size The smallest line width or spacing between lines or features on a semiconductor die. feed-through hole A drilled and plated hole that passes conductivity from one layer to another. This is also called a via. fiducials Fiducials are alignment marks, a type of target, used for calibration before placing objects. There are at least three types of fiducials: Panel fiducialsused to align an entire panel of boards.
PADS Layout Users Guide and Reference Manual, PADS 9.2
933
Glossary
Board fiducialsused to align components on a specific board (on or off a panel). Fiducials are (typically) round solid targets placed near three corners of each board on each side of the board that will receive components. The pick and place system scans the board for these targets (shiny circles approximately .040" in diameter) and uses them to align the machine before it starts placing parts. Component fiducialsused for close tolerance placement of high pin-count components with fine pitch leads. The footprint (PCB decal) of a fine pitch component will typically contain two component fiducials at opposite corners of the footprint. This allows the pick and place machine to align the fine pitch component exactly on the footprint.
field upgrade Programming options on your security key by entering in a key unlock code using plicense.exe or equivalent. file sharing Multiple users accessing the same file or files through a network. file.dir The powerpcb.ini file entry that specifies the default location of your design files. filter A settings dialog box within that controls which types of objects can be selected. find The PADS command that locates, and optionally selects, an object or group of objects in the database. finger pad One of many long pads placed in a series to represent an edge connector. flashed pads Pads produced on a photoplotter by opening the aperture momentarily, without moving the board, to produce a pad shape. flat pack A component package where the leads extend away from the component and remain on a parallel plane with the base of the component. flip The command that moves the selected items to the opposite side of the board. flip chip An IC designed for face-down mounting by means of controlled-collapse solder pillars on a device's I/O bonding pads.
934
Glossary
floating license A method of licensing where a central security server manages a pool of licenses for use by a large number of clients. floating toolbars Toolbars you can undock from the sides of the application window and place anywhere on screen. flood To fill a previously defined copper pour area. flower pattern Metal shapes placed under a die for thermal management and/or electrical connection; also referred to as a die flag. A ceramic, surface-mounted hermetic package. FlushUndoBeyondSize The powerpcb.ini file entry that determines the maximum size of the undo buffer before PADS Layout removes previous commands from the undo buffer to make room for the current command. If adding the current command causes the undo buffer to exceed this maximum size, PADS Layout removes previous commands until the undo buffer can store the current command. follow route The connections or pin pairs that are part of the bus routing, and which are routed following the guide route's path. footprint The arrangement of pads for a given part decal. For example, the footprint of a fourteen DIP is two rows of seven pads, spaced 100 mils in the Y direction, and 300 mils in the X direction. forward annotate Update a design file using data from a schematic. FR-4 An acronym for Fire Retardant Number Four, an epoxy-resin substrate material used in laminate applications. free copper Open or closed copper that is not associated to other copper or pads. free disk space The physical amount of space available on your hard drive that is available for use by programs.
G
gap (accordion) The gap of an accordion sets the pitch between chords. The gap is a user-definable number multiplied by the same net trace-to-corner clearance.
935
Glossary
Tip: If the same-net trace-to-corner distance equals zero, then Trace Width is used for the gap calculation.
See also: accordion, amplitude, pair routing gap gate An element of an electronic circuit whereby one or more signals are input, with one output being dependent on the state of the input(s) and the type of logic used to interpret the input. Pin swapping involves exchanging like inputs Gate swapping involves exchanging the entire element for a like element. gate array An IC consisting of a regular arrangement of gates that are interconnected to provide custom functions. gathering point The point near the source pins where differential pair traces can start to be routed together at the pair routing gap.
Tip: The labels in the above graphic correspond to routing that starts at the left-hand set of pins and ends at the right-hand set of pins. The label positions are reversed if the routing starts at the right-hand set of pins. See also: differential pairs GDI memory Memory reserved for Windows devices and graphics. Gerber The language used to drive a photoplot machine. This language is an ASCII file with instructions for selecting an aperture, moving the light source, and turning the light source on and off.
936
Glossary
Global tab A Options tab that includes settings that affect an entire design, such as units of measurement and pointer size. Glue Anchors component(s) in their current location so they cannot be moved grab bars The two vertical or horizontal bars to the left or top of the window. graphics cache The PADS setting used to optimize graphics. This is handled by the DisableCaching entry in the powerpcb.ini and powerlogic.ini files. green dot The status indicator located in the upper left corner of the workspace. It is green when the system is idle or ready for operation. It is red when the workspace cannot receive user input, such as when producing CAM drawings. grid A division of the workspace into measurement steps to facilitate accurate spacing between placed parts and routed lines. Also refers to the display; small white dots locating the measurement steps ground plane A design layer completely filled with copper, except for clearances around nonconnected pads and vias. group A collection of pin pairs that share common design rules. grow An cluster placement feature that adds additional parts to an existing cluster. guard band A shape that attaches to the end of a trace during routing operations to denote an online design rule error. gui An acronym for Graphical User Interface. The GUI includes such things as menus and commands that allow for interaction between the user and the software program. guide route A route segment that is used for the first connection and that is the lead for laying down two or more pin pairs simultaneously in neat flowing patterns.
937
Glossary
H
hard and soft rules PADS Layout can pass hard or soft rules to PADS Router. A hard rule is one that PADS Router cannot violate, which may lead to incomplete routes. A soft rule is one that is respected as hard whenever possible, except when honoring the rule results in an incomplete trace. Some same net rules are hard while other same net rules are soft. Hard same net rules are same net SMD to via, and via to via. PADS Router cannot violate these rules. Soft rules are the first corner rules: pad to corner, SMD to corner, and trace to corner. PADS Router violates these rules only if all attempts to honor the rules fail. Soft first corner rules apply only to round pads. You can control whether a rule is hard or soft using the Pad Entry Quality check boxes on the Routing tab of the Options dialog box in PADS Layout or the Options dialog box in PADS Router. hard breakout Use of associated copper within a surface mount decal to simulate a dispersion route. The disadvantage to this method is that routing channels will possibly be blocked. hatch A copper fill pattern that uses horizontal and vertical lines at a specified width and spacing. hatch outline The outline of a copper pour shape after it has been flooded to differentiate it from the pour outline as originally drawn. When you draw the pour outline and then flood the shape, the outline often changes to accomodate the design rules. You can toggle between the pour outline and the hatch outline using the shortcut modeless command PO, or switch between these two Display modes in the Drafting Options. HDI An acronym for High Density Interconnect. heat sink An assembly that serves to dissipate, carry away, or radiate heat into the surrounding atmosphere. high density interconnect A class of packaging involving boards, substrates, and components using extremely small trace and spacing dimensions. highlight A user-defined color, usually white, used to denote that an object is selected. high-speed checking Using the Electrodynamic Checking utility. A simulator-type check that finds traces that may run parallel to each other close enough, and for a long enough distance, to cause cross talk.
938
Glossary
hole plating A fabrication process where solder flows through a drilled hole to connect the pads on either side of the hole, to provide connectivity between two or more layers. HPGL An acronym for Hewlett Packard Graphics Language, a standard pen plotter interface language.
I
IC (Integrated Circuit) An acronym for Integrated Circuit. IDF Intermediate Data Format. An industry standard format used for exchanging data between electrical and mechanical design systems. IMAPS An acronym for International Microelectronics and Packaging Society. impedance Resistance to the flow of current in a trace. Measured in ohms. in circuit testing An exhaustive and thorough test of a PCB in final production that tests nets and unused pins for such things as correct voltage, correct parts, or bridging. Test point placement is critical for in circuit testing. inaccessible nets Nets for which you cannot define test points. DFT Audit analyzes all nets. If DFT Audit determines that test probes cannot access them, the nets are inaccessible (also called nonadaptable). increased layer mode A layer mode in which a design can consist of more than the default of 30 layers up to a maximum of 250 layers. The maximum number of electrical layers is 64, and the maximum number of non-electrical layers is 186. See also: delay INI file An ASCII file, with the .ini file name extension, that contains startup parameters. An INI file for Windows might contain the following information: graphics drivers, mouse drivers, fonts, and so on. An INI file for programs might contain the following information: folder structure, display colors, default editors, and so on.
939
Glossary
inner layers Design layers other than those on the top or bottom of a printer circuit board. Inner layers may be routing layers, plane layers, or a combination of both. installed options PADS product features that you have bought and installed as part of the software package. instruction pointer A small yellow arrow in the Output window gutter that indicates the current line in a script or macro. insulator A material used to inhibit heat or electrical properties, such as current flow. integrity check A database check runs whenever a .job, .dxf, or .asc file loads. You can also initiate an integrity check while you are working by typing the "I" modeless command, then pressing Enter. intensity A value assigned to objects such as vias to weigh decisions made during the autorouting process in PADS Router. The higher the intensity, the less the item is used. For example, set a high intensity for via usage to minimize the amount of vias added to the design. interconnect A conductive connection between two or more circuit elements. IPC An acronym for Interprocess Communications within the PADS product. irregular trace length Sections or segments of differential pair traces not routed at the pair routing gap. See also: differential pairs islands Small, isolated sections of copper pour that are not attached to anything.
J
JEDEC An acronym for Joint Electron Device Engineering Council. Joint Electron Device Engineering Council JEDEC is the semiconductor engineering standardization body of the Electronic Industries Alliance, a trade association that represents all areas of the electronics industry. jumper A physical part used to cross over traces on most one layer PCB designs. Jumpers can be 0 Ohm resistors or wires stretched between jumper pads.
940
Glossary
K
keepout areas Areas that automatically ban objects. Depending on the keepout Properties, these areas may be set to prevent: placement of components, components that exceed a specified height, component drill holes, traces and copper, copper pours and plane areas, vias and jumpers, and test points. keyview.exe An executable file used to list the options programmed into your key. When you run keyview.exe, it creates a file named keyview.txt that contains a listing of your key options.
L
Latium rules Latium rules include: component clearance rules component routing rules differential pair rules via at SMD rules
layer biased net A layer biased net is any net with a design rule specifying a layer bias to one or more, but not all, electrical routing layers layer pair The assignment of two routing layers to switch between using the Layer Toggle command. On two layer boards, the toggle is automatically set between 1 (top) and 2 (bottom). layer toggle To switch between layer pairs while routing. layers A standard CAD database feature that separates graphical information into sheets of similar information such as dimensions, construction lines, or text. For PCB applications, this allows the various fabrication layers to be created and output separately. Layout.rep The error report file that is created by the database integrity test and which is written to the \PADS Projects folder. LCC An acronym for Leadless Chip Carrier. lead frame A sheet metal framework that is etched to form an array of metal traces.
941
Glossary
lead pitch The sum of the lead width and lead spacing. lead spacing The distance between a component's adjacent leads. Leadless Chip Carrier (LCC) Ceramic IC package with no physical lead. There are only pads on the bottom of the package around the edges. length matching A same-length requirement where the entered value represents a minimum/maximum length tolerance for nets belonging to the same class. length minimization A routing feature that configures unroutes to the shortest available distances, or in a specific topology, to facilitate high speed routing. LGA An acronym for land grid array. LibDir The powerpcb.ini file entry that specifies the location of your library files. libraries The collection of part types, part decals, and drawn items included with a PADS product or created by the user. Library Manager The PADS feature that provides access to, and allows for modifying, the library of parts. linked objects When an object is linked, a presentation of the object and link to the source is contained within the framework of, and is a part of, the container application document. The object is linked to its source, and the source continues to physically reside wherever it was initially created. Therefore, the file that contains the object is smaller than if the object were and embedded object. See also: embedded objects. Whenever you open the file that contains the linked object, the object checks the source to see if it changed since you last saved the file. If the source changed, then the linked object automatically updates. LogCompressionMode A powerpcb.ini file entry that controls recorded mouse movements in a log file. When set to one, the default, recording of compressed mouse movement is enabled. When set to zero, recording of all mouse movement is enabled.
942
Glossary
logic family The assignment of an electrical type by name, such as CAP (capacitor) or RES (resistor), to indicate the appropriate reference designator prefix such as C or R. LOGMode A powerpcb.ini file entry for online macro recording to a log file. When set to 0, the default, recording is disabled. When set to one, macro recording is enabled, and the next.log file is created. loop A pin pair that contains a route that branches off the original route, then branches back into the same route to form a loop. loop routing Used to create a loop in an existing route. LPT port A parallel printer port, usually referred to as LPT1 or LPT2.
M
macro Internal objects that are handled using the macro engine vocabularies, and may or may not have the automation interface. Manhattan distance (delta x + delta y) Used to approximate unrouted net length for BoardSim. Add a percentage multiplier to account for indirect routing paths. masking The inhibiting of electrical interference between two traces on different layers due to separation by a ground or power plane. material condition There are three material conditions when creating component decals. They are Maximum (providing the most robust solder joint), Nominal (providing a general purpose solder joint) and Minimum (providing the least possible solder joint for very dense designs). MCM An acronym for multichip module.
943
Glossary
memory pattern A collection of routes between memory devices that form a distinctly repeatable pattern.
menufile.dat The file containing the structure and text of all lists and shortcut menus. The menufile.dat file must be located in the same folder as powerpcb.exe. micrometer One-millionth (10-6) of a meter; about 40 millionths of an inch. Micrometer is synonymous with micron. micron A term used for micrometer. One-millionth (10^-6) of a meter; 25.4 microns = 1 mil. minimum geometry The smallest line width or spacing between lines or features on a semiconductor die. miter A diagonal segment or arc that replaces a corner. miters pass An autorouting pass that converts all 90 degree route corners to diagonal corners. mixed plane layer A plane layer that contains obstacles other than pads, such as routes, copper, or text. modeless command A command invoked through the keyboard. Commands include display options, design settings, and mouse click substitutions. See also: chamfered modify To change information for a selected object. moir Target-shaped objects located in the corners of finished artwork that are used to properly align each layer to others for design verification and fabrication.
944
Glossary
monolithic device A device whose circuitry is completely contained on a single die or chip. mounted side The side of the printed circuit board, either front or back, on which components are mounted. mounting holes Many (but not all) boards have mounting holes. Mounting holes are typically located around the perimeter of a board (most often in the corners). They are drilled holes, used to mount a printed circuit board to the finished product (for example, a mother board mounted to the computer casing), or used to attach bolt-on components to the printed circuit board (for example, stiffeners and ejector tabs). There are two types of mounting holes: plated and non-plated. Plated mounting holes have copper inside the hole and usually have a large annular ring of copper on both sides of the board connected by this copper cylinder (plating) inside the hole. These holes are typically connected to the GROUND bus or plane on the board and provide a method for grounding the board circuitry to the enclosure (for shielding purposes). The mounting hole ring diameter is usually slightly larger than the diameter of the head of the screw that will be used to fasten the board to the mounting device within the enclosure. Non-plated mounting holes are used for the same purpose, the only difference being that they are not internally plated and do not have a copper ring, therefore they are not used for grounding the board to the enclosure. Tips: Plated mounting holes cannot be used as tooling holes as the thickness of the copper plating can vary and violate the close tolerance required by a tooling hole. Non-plated mounting holes can sometimes work double duty as tooling holes because there is no internal plating, therefore the tolerance of the hole size can be more closely controlled and fit within the requirements of a tooling hole. Use the Decal Editor and the Pad Stacks dialog box to create tooling holes. Save the single-terminal object as a part to the library for reuse.
See also: Creating Terminals, Editing Pad Stacks multichip module A package with multiple dice that is 20% or more silicon, has 100 or more I/O on a substrate, and four or more layers. multilayer PC board A design that contains routing and/or plane layers, in addition to those on the front and back side.
N
nail diameter The diameter of the test probe.
945
Glossary
NC drill An abbreviation for numerical control drill. This technology involves producing an output file containing the x-y location and drill size for each hole, then feeding this information into a machine for automated hole drilling. negative A photographically produced reverse image of a plane layer. This allows cleared areas, or airgaps, to be created using normal drawing techniques. When reversed, all areas not drawn for clearance become the actual planes. nested embedding Nested embedding occurs when you insert an object using OLE into another object. For example, inserting a PADS Logic schematic into your PADS Layout Design or inserting a Microsoft Word document into a schematic. nested macros Macros called from other macros. net All pin pairs composing one individual signal. Nets contain at least one subnet, but may contain more than one. See also: subnets net class A collection of nets with a common set of design rules. net length rules Rules that control a net's or pin pair's routing length. The following high-speed rules are examples of net length rules: minimum/maximum length, matched length, and differential pairs. The phrase controlled length net refers to nets that have length rules, or nets with pin pairs that have length rules. net name A specific name given to a net to describe its function; for example, GND, PWR, or DATA0. Tip: The maximum net name length is 47 characters. You can use any alphanumeric characters except { } * and space. netlist A point-to-point connection list for each signal in a design, providing the reference designator (part name) and pin number. netlist file A PADS ASCII file containing all of the nets in a design, including all component pins that make up the nets. The file may also contain a list of all parts in a design, and/or the settings that control the substrate bond pad numbers and functions for newly created substrate bond pads.
946
Glossary
netlist.fmt The ASCII setup file for the report format that produces a netlist without pin information. network security Use of one security key, programmed with multiple options, for network use with one or more systems at a time. next.ini A file produced in the C:\MentorGraphics\<latest_release>PADS\SDD_HOME\Programs folder when the powerpcb.ini entry LOGMode is equal to one. The next.ini file is a copy of your powerpcb.ini file at the time next.log is written. next.log A file produced in the C:\MentorGraphics\<latest_release>PADS\SDD_HOME\Programs folder when the powerpcb.ini entry LOGMode is equal to one. The next.log file records all activities within a PADS Layout session so that they can be replayed to reproduce a series of steps or used to illustrate a problem. NLM A type of file used by a Novell network. For example, the ssisrvr.nlm file is the PADS Layout network security NLM. node A point along a trace where traces join other traces (T junction), where traces transition to other layers, or where traces end at pins, vias, or floating end points. Specifically, a node can be any pin, via, copper, trace junction, virtual point, or trace end. See also: virtual point
node-locked A license for a specific Host ID. non ECO registered parts These parts are found in the schematic and layout design. Parts not selected as an ECO Registered Part on the General tab of the Part Information dialog box are non ECO registered parts. A schematic non ECO registered part is required in the schematic but has no place in the layout of the circuit board. For example, a chip socket shown in the schematic for inventory tracking in the bill of materials.
947
Glossary
A layout non ECO registered part is required in the layout design but has no place in the schematic. For example, a plated and grounded mounting hole.
non electrical parts Parts with no pins. For example, a mounting screw shown in the schematic for inventory tracking in the bill of materials. non plated holes Pads that are not reflowed with solder, usually reserved for mounting holes. Nonplated holes are not drilled with an oversize to accommodate the solder flow. To determine plating status, in PADS Layout, use the Pad Stacks Properties dialog box. In PADS Router, use the Pad Stack tab in the Pin Properties dialog box. nrus.exe A program used with Novell network security used to track the total number of network security options, the available network security options, and the network security options in use. nudge A placement feature that relocates parts in order to make room for new parts being placed. Movement is based on previously defined clearance rules.
O
object One discrete item in the design. For example, an object may be a route segment, a part, a drawing line, or a via. object mode Start a command by selecting one or more objects and then selecting the command to perform on them. See also: verb mode obstacles Objects that block routing. Obstacles can be protected pins, vias, traces, keepouts, board outlines, and hatch outlines. Exception: Although hatch outlines are obstacles, when you interactively route, autoroute, or edit traces, hatch outlines are removed from the design so routing can complete. Visible copper pour hatch outlines, copper pour outlines, and plane area outlines are not obstacles to interactive routing, autorouting, or route editing. odd pad shape A pad that requires a special aperture, or plot sequence, to create. offline plot A plot that is sent to a file before it is copied to a printer or plotter for processing.
948
Glossary
offset The distance by which rectangular or oval pads are moved away from the electrical center of the pad stack. offset pads Rectangular or oval pads moved off the electrical center of the pad stack to facilitate identification/selection, or for a special design consideration. one pin nets A net that contains only one pin. Also called single pin net. In PADS products, a net must have a minimum of two pins. online DRC A PADS feature that actively checks established-design rules during routing or placement operations. online plot A plot sent directly to a printer or plot. open cluster Clusters that you can delete or replace during automatic cluster creation. optimization Rearranging placed parts and/or swapping pins and gates on parts in order to minimize trace lengths and reduce the number of vias required for routing. optimize pass An autorouting pass that analyzes each route and tries to improve the quality of the route pattern by removing extra segments, reducing via usage, and shortening routed trace lengths. This pass includes glossing and smoothing processes. overlapping coppers Overlapping coppers are combined into one copper area, with possible cutouts.
949
Glossary
overlapping cutouts Overlapping cutouts are combined into one cutout area.
See also: cutouts overlapping segments Multiple trace segments stacked on top of one another on one layer.
P
package The protective container for an electronic component with terminals to provide electrical access to the die components inside. pad entry The point where a trace entering or exiting a pin first crosses the edge of a pad. pad entry angle The command in PADS Layout and Router that establishes the angle at which a trace enters a pad. This may be orthogonal (90 degrees), diagonal (45 degrees), or any angle. pad function The die signal name to which the component bond pad is connected. pad number The number of the component bond pad. pad oversize On plane layers, pads that are larger than normal, to generate proper clearances when the image of the pad is printed in a negative format. Note: Pad oversize is measured from the center of the pad, not the perimeter. For example, if you have a 3 mil oversize, the measurement is actually1.5 mils in each direction from the center of the pad. pad stacks The combination of pads, drills, and pastes, for example, on a pin or via, for each layer of a design, stacked directly on top of one another.
950
Glossary
pagesfile_sys The Windows NT swap file that allows virtual memory to be written to disk. pair routing gap The fixed edge-to-edge clearance between the traces in the controlled gap area for a differential pair.
See also: controlled gap area, differential pairs paired layer The start and end layers used by the layer toggle command when changing layers while routing. It defines the default layers to use when you make layer changes. palette A user-definable color chart in the Display Colors dialog box. pan Up and down or side-to-side movement of the screen without zoom or redraw. Use the scroll bars or postage stamp to pan. panning Moving the view horizontally or vertically without changing the size of the design on your screen. parallel port A printer port, usually referred to as LPT1 or LPT2. parallelism Traces on the same layer that are checked for running parallel to each other. The traces are subject to crosstalk if they run parallel to each other too long and the gap between them is too short. parasitic An undesirable stray capacitance, inductive coupling, resistance leakage, or undesired transistor actions. parent object The object to which individual design elements, such as lines, arcs, or corners, belong. part decal The physical representation of a part, or footprint, assigned to the part type.
951
Glossary
part list An output listing of all parts belonging to the same design. This normally includes the reference designation, part name, and part type, and total number of each type. part name The text for each part that indicates the reference designator. part outline width The line width of 2D line shapes, created in the PCB Decal Editor, that represent silkscreen or documentation data within a part decal. The shapes do not include text, reference designators, or copper with the decal. partial route Partial routes are uncompleted routes where the ratsnest flightline is still visible. This occurs when you click End while routing or bus routing, or when you delete a trace segment. See also dangling route. partial via A via that does not travel through all of the board's electrical layers. The blind via and buried via are both types of partial vias. parts1.fmt An ASCII part list format file for the report file generator that consists of a reference designator, part type, and logic type. parts2.fmt An ASCII part list format file for the report file generator that consists of a part type, reference designator, and part description. paste A substance used to attach each pin of a surface mount device to a PC board. paste mask An artwork layer with a paste location for all pads of surface mount components. patterns pass An autorouting pass that searches for, and routes, groups of unrouted connections that can be completed using a typical C routing pattern, Z routing pattern, and memory pattern. PBGA An acronym for plastic ball grid array. PDF configuration A set of PDF Configuration dialog box control settings. A PDF configuration can be saved as a .pdc file and reused to create PDF documents for multiple designs. PGA An acronym for pin grid array.
952
Glossary
photoplotting Using a machine to create printed circuit board fabrication artwork. The machine creates artwork by exposing clear film to light or by rasterizing an image onto clear film. physical design reuse A collection of design objects that you want to reuse, which are associated with one another. The collection of objects can be saved to a file. physical design reuse elements The objects that compose the reuse. They can include components, routes, vias, text items, and other elements. pick and place An automatic printed circuit board assembly machine, driven by outputting the part type, location, and orientation of suitable parts from a design. pin The through-hole or surface mount terminal that represents a connection to a part. Pins are also referred to as pads in pad stacks. pin array/pin grid array A package with pins distributed over much or all of the bottom surface of the package in rows and columns. For more information, see Pin Wizards Dialog Box, BGA/PGA Tab. See also: pin types pin number Within a component, the numeric or alphanumeric designation that distinguishes pins from each other. In the Status bar, pins are identified using the following format:
Pin:[Component name].[Pin number].[Pin type]
For example:
Pin:Y1.N.Nonelectrical
See also: pin types pin pair The combination of a trace or unroute, and the pins on either side. A net can contain one or more pin pairs. pin pair group A collection of pin pairs that share common design rules. pin type A designation that indicates the electrical characteristics of the pin such as Source (S), Load (L), Terminator (Z), and Undefined (U). For example, U1.1.S may appear on the status bar.
953
Glossary
pin types Pins and pin pairs can be identified by one of the following pin types: Source Bidirectional Open Collector Or-Tieable Source Tristate Load Terminator Power Ground Nonelectrical
Pin types make up the last portion of the pin identifier in the Status bar. For example: Pin:U10.C.Open Collector See also: pin number placement check prints Generate a CAM Assembly drawing to make a placement check print. After the PCB Designer receives a schematic and a netlist from an Engineer, they (typically) place the components onto the board in a manner that best suits the routing of the board. Sometimes, the placement better suits the intentions of the Board Designer than the Engineer, so before routing proceeds, the Engineer will request to see a set of Placement Check Prints. Placement Check Prints show the placement of all components on both sides of the board, so the Engineer can review the locations and confirm the Designer has correctly placed the components. These Placement Check Prints typically require agreement from both the Designer and the Engineer before routing can proceed. placement operations Operations where parts are relocated or added to a design in order to optimize an existing placement. plane hatch outline The outline of a plane shape after it has been flooded to differentiate it from the plane pour outline as originally drawn or the plane indicators outline. When you draw the plane pour outline and then flood the shape, the outline often changes to accomodate the design rules. You can switch plane display modes using the shortcut modeless commands SPD, SPI, and SPO. Or, switch between the Mixed plane display modes in the Split/Mixed Plane Options.
954
Glossary
plane indicators outline The outline of a plane shape after it has been flooded and then changed to Plane thermal indicators display mode to differentiate it from the plane pour outline as originally drawn or the plane hatch outline after it has been flooded. When you enable this display mode, the active layer must be set to the plane layer in order to see the thermal indicators.Setting the active layer to a CAM plane layer also displays the thermals of the CAM plane. You can switch plane display modes using the shortcut modeless commands SPD, SPI, and SPO. Or, switch between the Mixed plane display modes in the Split/Mixed Plane Options. Restriction: After you change active layers, you will need to redraw the view to see the new layers thermal indicators if you do not have the Active layer comes to front option enabled. plane layers A design layer where the entire surface is covered by copper, except for information not connected to the plane. plane nets Nets assigned to plane layers. plane pour outline The outline of a plane shape after it has been drawn to differentiate it from the plane hatch outline after it has been flooded or the plane indicators outline. You can switch plane display modes using the shortcut modeless commands SPD, SPI, and SPO. Or, switch between the Mixed plane display modes in the Split/Mixed Plane Options. plastic ball grid array A surface mount package with an array of solder sphere-shaped interconnects arranged across the bottom surface of the package substrate. plastic leaded chip carrier A common surface mount package with leads on all four sides, used as a socket for devices that cannot withstand the heat of the reflow process, and/or to allow for easy component replacement. plated holes Drilled holes that have copper covering the inside surface of the hole, and which are connected to a pad on each side. Plated holes pass connectivity from one layer to others. plating tail A route that connects BGA vias to a plating bar or bus bar. PLCC An acronym for plastic leaded chip carrier. plicense.exe The program used to verify and program your security key during a field upgrade process. polar decal A single-radius, circular pattern decal with through-hole pins.
955
Glossary
polar SMD decal A single-radius, circular pattern decal with SMD rectangular or finger pads. polygon A closed shape consisting of three or more line segments. positive An image of a plane layer where cleared areas, or airgaps, are created using normal drawing techniques. When reversed to create a negative, all areas not drawn for clearance become the actual planes. pour outline The outline of a copper pour shape after it has been drawn to differentiate it from the hatch outline after it has been flooded. You can toggle between the pour outline and the hatch outline using the shortcut modeless command PO, or switch between these two Display modes in the Drafting Options. power plane The plane layer where power supplied to the printed circuit board is dispersed to the proper pins of each component requiring a power source. powerpcb.ini The PADS Layout initialization file for default settings. powerpcb.mdb The PADS Layout message file that contains error messages, prompts, and other miscellaneous text strings. This file must be located in the same folder as powerpcb.exe. powerpcb.reg A file that defines all Registry keys required for the proper registration of PADS Layout OLE components. In addition, other programs acting as clients access the PADS Layout Automation Server through this Registry file. The installation program automatically creates this file and saves it in the same folder as powerpcb.exe. If errors occur in the Registry, or if this file is corrupted, you can restore the contents of the file. preferred routing direction In the main GUI combo box, the Horizontal [H] or Vertical [V] designation next to a routing layer name. This designation indicates optimal direction for routing completion and can be set by the user or the system. prepreg A resin pre-impregnated sheet used to bond substrate laminate-pair layers together when a multilayer board is pressed together. preset files Library IQ files that allow you to save the preference settings you have established for a die design and use them in other designs. The Bond Pad Preferences files have a .pre file extension.
956
PADS Layout Users Guide and Reference Manual, PADS 9.2
Glossary
preview of CBP assignments A preview that displays the substrate bond pads and wire bonds created when component bond pads are assigned to rings. This preview appears in the work area when the Assign CBPs to Rings dialog box is active. preview of SBP guides A real-time preview that displays any changes made to the number, geometry, or location of SBP guides. This preview appears in the work area when the Wire Bond Wizard dialog box is active. well as in the design in which you place the reuse. See also: private nets primary objects Primary object groups in the Object View tab of the Project Explorer contain non-removable design elements shown in a high-level object hierarchy. Primary objects are: 1. layers 2. components 3. part decals 4. net objects (including nets and pin pairs) 5. via types private nets Nets that are contained completely within a physical design reuse. See also: public nets probing The testing of individual IC dice using very fine probes to temporarily connect each to a test computer, in order to verify operation. properties A set of dialog boxes used to view or edit information about the selected object. protect Glues the routes and attached vias and prevents the autorouter from modifying them in any way. protected routes Traces that are placed in a protected state by Route Protection. This means that they cannot be moved or modified. protected traces Traces placed in a protected state (cannot be moved or modified). protected unroutes Unrouted connections, or the unrouted portion of a partial route, that are placed in a protected state by the Route Protection feature. This means that they cannot be routed, moved, or modified.
957
Glossary
public nets Nets that are partially contained within a physical design reuse. Public nets exist in the reuse, as preferred routing direction In the main GUI combo box, the Horizontal [H] or Vertical [V] designation next to a routing layer name. This designation indicates optimal direction for routing completion and can be set by the user or the system. pulling an arc Creating an arc from an existing line segment, where the diameter is derived from the line length.
Q
QFP An acronym for quad flat package - a surface mount IC with leads on each four sides. quad A square-shaped IC with pads on each of its four sides. Quick Filter Settings The shortcut menu selections available when no items are selected. These choices set the selection filter for commonly used tasks, allow quick access to the Find command, and Select All items as specified by the Selection Filter. quick measure command The Q modeless command which attaches a measurement line to the pointer and displays dx, dy and hypotenuse information, depending on pointer movement.
R
radial lead A discrete part with pins that protrude straight down and do not extend beyond the perimeter of the component body. An example of this is a capacitor. RAM An acronym for Random Access Memory. The volatile (on chip rather than on disk) memory area available to the system for program operation. range select To select a series of geometric or route segments by first clicking on the start segment, then pressing and holding Shift and right-clicking on the end segment. ratsnest A term used to describe the display of all of the unrouted connections in a design. Also known as air lines or unroutes.
958
Glossary
raw database The raw database contains all components in the open database, regardless of assembly variants. When created, new assembly variants are based on the raw database, meaning that until you uninstall or substitute, a new assembly variant includes every component in the raw database. read-only attribute An attribute whose value cannot be changed in PADS product dialog boxes. You can, however, modify attribute properties and the Attribute Dictionary entry, and can modify the attribute value in the library. real width To display traces at their specified width, as opposed to displaying them as one pixel centerlines. real-time redraw A feature that enables active regeneration of objects in the display any time the screen is redrawn. When you disable real-time redraw, regeneration occurs in the background, and the display is refreshed all at once after the background regeneration process is completed. Screen regeneration is quickest when real-time redraw is disabled. record locking Allowing two or more users to access the same library component at one time. However, only one user has access to save the component. recover Resolving an installation or operational issue, or salvaging a corrupt database by executing a specified series of steps. redo Repeats actions which have been undone. redraw Refreshes the display of the current screen image and the cursor. reference designator A name assigned to each of a design's parts in order to distinguish them from other parts of the same type. A reference designator is usually in the form of a letter that represents the part type, followed by a number. For example, C2 may represent the second capacitor in the design. relative coordinates Coordinates that are based on a start point instead of the system origin. rename To assign a different name to a part or net. reroute Specifying that a trace, or a portion of a trace, follow a path different than the one currently being taken.
959
Glossary
restricted layer Layers that are either disabled for routing or have been disallowed by layer biasing rules. When a layer is restricted, routing is not permitted on the layer. Layers can be restricted for specific objects, such as a net or a pin pair. restricted via A via that is not permitted for use in the Routing Rules of PADS Layout or Via Biasing properties in PADS Router at any level of the rule hierarchy. reuse See preview of CBP assignments. reuse definition The master copy of the physical design reuse that is saved to a file. The saved version of the physical design reuse is the version you should use in other designs. All resulting instances of the physical design reuse are based on this file. reuse type A name that identifies the type of reuse being created. A reuse type is equivalent to a library part type. ring geometry The shape of the die flag ring. The following shapes, or ring geometries, are supported: rectangle, rounded rectangle, chamfered rectangle, and arced shape. romansim.fnt The default file that contains definitions for the graphics for the PADS stroke font, used to display text in PADS products when system fonts are not in use. rotate The command that rotates by 90 degrees a component or object around its axis or selection point. route To create a metal etch trace of a specified width between pads. route loops A pin pair that contains a route that branches off the original route, then branches back into the same route to form a loop. route pass The autorouting pass that is the core pass that performs the majority of autorouting. During this pass, PADS Router attempts to sequentially route each unroute until all connections are attempted. The Route pass contains serial, rip up and retry, push and shove, and touch and cross processes. routed length The trace length monitor calculates routed length as the cumulative length of the trace. This value always starts at zero unless you start routing from the end point of a partially routed trace,
960
Glossary
in which case the routed length includes the partially routed trace length. If the trace has branches, then the length is calculated from the branch point. See also: estimated total length, unrouted length routes A series of traces that represents routed connectivity. routing angle The angle applied to adjacent segments as new corners are added to traces. For example, an orthogonal routing angle means adjacent segments will be created at 90-degree angles to each other. routing order The order in which the autorouter routes components, nets, and net classes. routing pass types There are several pass types, each of which is designed to complete a specific task. Each pass may use more than one algorithm and may also perform a number of subpasses. The following pass types are supported: center pass fanout miters pass optimize pass patterns pass route pass test point tune pass
routing strategy The collective information PADS Router uses to autoroute a design. This information includes which pass types PADS Router should perform, whether to protect the resulting traces, and what intensity to assign to objects. ru.cfg A configuration file used by the nrus.exe program for Novell network security support. rule values The values of any item, regardless of its default rules or rules set assignments. rules An established set of conditions for a given net or design. rules set A specific set of user-assigned nondefault rules such as pin pair, groups, or classes.
961
Glossary
S
same net checking Checks clearances between objects along the same net, as specified in the Clearance Rules dialog box. Object to object checking includes: Pad edge to pad edge.
This check prevents solder bridging during board manufacturing caused by acute angles between conductive objects such as the acute angle between pad and trace shown below.
same net rules Specifying conditional settings, such as spacing, for connections belonging to the same signal name or net, rather than against other nets. SBP An acronym for Substrate Bond Pad. SBP fanout A single-segment fanout that connects SBPs to any-angle coupling traces. SBP guide The virtual snap line along which substrate bond pads are aligned during wire bond fanout generation. Each SBP guide determines the alignment of the substrate bond pads that are associated with the SBP ring aligned with this SBP guide.
962
Glossary
SBP ring A set of substrate bond pads aligned along an SBP guide. A substrate bond pad belongs to the ring on which it is aligned. In creating a wire bond fanout, you assign each component bond pad to a specific SBP ring. scribe line or saw line The separation between adjacent dies on the wafer. This path is used as the cutting area in sawing a wafer into the individual dies. search To locate specified information. One search method is to use the Find command. secondary objects Secondary object groups break primary objects into a more detailed hierarchy. You can add individual items to and remove individual items from secondary groups. Secondary objects include: 1. net class 2. pin pair group 3. conditional rule 4. matched length net group 5. matched length pin pair group 6. differential pair seed A part used by Cluster Placement, during cluster building, to search outward for other parts to add to the cluster. segment A single drafting line, path, or trace, defined by a beginning x/y coordinate and an ending x/y coordinate. segmentation fault The termination of a PADS product due to a system crash or illegal instruction executed. Select All The Edit menu command that lets you select all items of a type specified in the Selection Filter. This option is also accessible from the shortcut menu when nothing is selected. select mode Point to the object and click the left mouse button. Select the command to perform on the object. selecting To highlight an object for editing, moving, viewing properties, or deleting.
963
Glossary
selection filter The dialog box inhibiting or enabling the selection of specific items. serpentine route A route that connects an any-angle coupling trace and a BGA pad, forming a snake-like pattern as it travels through the BGA. session log Information on the current session that appears in the Status tab of the Output window. shape The Selection Filter setting that enables or disables selection of an entire geometric object, not just its individual segments. shared libraries Libraries that can be accessed by more than one user across a network. shielding Specifying that one net be routed around another to provide protection from interference. shortcut keys A key sequence that starts a command directly from the keyboard and without navigating through menus. shortcut menu A menu listing the possible actions to perform, based on the selected object. shoulder The part of the differential pair trace between the source pin and the gathering point, or between the split point and the destination pin.
See also: differential pairs, gathering point, split point signal Voltage or current that is transferred between component pins by an electrical conductor. signal pins Pins that have a signal net, such as GND, assigned by the schematic capture program PADS Logic during part type creation. silkscreen An artwork layer containing the reference designator and component outline of all parts, used for the final board fabrication process. single-sided board A design where all pads, routing, and parts are placed on one side of the board.
964
Glossary
single-sided die A die that has substrate bond pads and a BGA grid array on the same side of the die. See also: documentation layers sizing handles Small, black squares that appear at the corners and along the sides of a rectangular area that surrounds a selected nontext object. sketch route A PADS Layout command that reroutes existing traces by allowing you to draw a new route path using the pointer. slice Another term for wafer. slotted holes Oval holes in a printed circuit board, which may be plated or non-plated. SMD An acronym for Surface Mounted Device: the pin of a component that is attached to the PCB only on an outer surface and does not require drilled holes for component mounting. smoothing A command that automatically removes unneeded corners and segments and centers trace patterns between route obstacles. SMT An acronym for Surface Mount Technology. snap modes Various modes, available during dimensioning, that force the pointer to pick points based on of the following parameters: intersection, any point on a line, any point in space, entire segments, the center point of an arc, and so on. soft rules Rules that are respected as hard whenever possible, except when honoring it results in a failure to complete a trace. SOIC An acronym for Small-Outline Integrated Circuit. solder A metal alloy used to attach each pin of a device to a printed circuit board. solder dam A small amount of solder mask used to limit molten solder from spreading further onto solderable conductors, in an area where solder mask is purposefully absent.
965
Glossary
solder mask The artwork layer for a nonconductive material that covers the entire board, except for pad locations. The solder mask provides a protective covering and prevents shorts during wave and reflow solder processes. solder mask reliefs Some components have large areas that need to dissipate heat. Others have large metalized areas (that are not pins) that need to be soldered to the board. In order to expose the copper area beneath these parts for soldering, the solder mask layer must have a cutout representing these areas. These cutouts are called solder mask reliefs. When the distance between pads of a fine pitch component is too small, the webs or fingers of solder mask between pads can break and wander on the board surface. To prevent this, a solder mask relief is applied to entire pad areas of a component. This is commonly called gang relief. solder side The back or bottom side of a printed circuit board. Solder side is named for the post assembly process, where the board is run through a special bath to solder all pins. source A pin type that indicates a signal radiating from the pin. SPECCTRA The product name for the Cadence Design Systems autorouter. special symbols Alternate decals that you specify as connectors. You can associate a logical pin type with each alternate to provide a graphical indication of the connector pin function in a schematic. spider bonding A method of connecting an integrated circuit die to its package leads. A lead frame is placed over the chip and all connections are made by just one operation of a bonding machine. TAB methods use this approach to interconnection. spin The PADS command that rotates a component or object around its axis or selection point. split The command that creates a new corner at the pick point of the selected trace, allowing it to be rerouted. split plane A solid copper plane layer divided into two or more sections in order to isolate electrical signals from each other.
966
Glossary
split point The point near the destination pins where differential pair traces are no longer routed together and where the traces are routed individually to completion.
See also: differential pairs, pair routing gap ssiact.exe A program used to recommend set statement settings to properly adjust port access times for a security key. stackup The metal and dielectric layers used to implement the body of a printed circuit board. A signal metal layer carries signal traces. A plane metal layer is tied to a DC voltage. A dielectric layer is made from non-conducting material and separates two metal layers or coats the board surface. start zone The part of the differential pair between the source pins and gathering point.
See also: differential pairs, gathering point starting layer The first layer in a drill pair or via definition. step-by-step mode A mode in which the debugger runs a single line of code at a time. stitching vias Any SMD via, through-hole via, or partial via added to nets (on traces or within plane areas) in a repetitive manner. You can add these vias, also called free vias, for various purposes, including current and thermal needs. For example, you can place stitching vias in a plane area to provide conduction between two plane areas. You must assign stitching vias to a net, but they do not have to have traces attached to them. strategy A set of options that defines how a board should be autorouted.
967
Glossary
strong Places cluster members as close together as possible during placement operations. The minimum distance for placement is the same as the distance for part clearances in Design Rules. structured attributes Attributes that are related to each other by the prefix in their name. For example, the DFT attributes such as DFT.Nail Count Per Net, DFT.Nail Number, and DFT.Nail Diameter are structured attributes. Together, these structured attributes make an attribute group. stub A trace that enters another to create a T-junction. Stub lengths can be checked by the EDC program. submicron Dimensions smaller than one micron. subnet A collection of all traces and vias connecting two pins. Subnets are joined only through their common component pins and not through other nodes, such as a trace junctions, vias, or virtual points. Subnets help to avoid errors or confusion caused when pin pairs of a net have unique, rather than common, design rules. See also: node, subnet, connected islands, virtual point One subnet in a net
subnets If a net has at least one pin pair with a unique design rule, such as a trace width difference, the net is automatically divided into subnets. If two pin pairs having the same rules are separated by at least one pin pair with different rules, the pin pairs are considered separate subnets. Therefore, subnets are islands of pin pairs that form an unbroken fragment within the net, where each fragment has uniform rules. See also: subnet, connected islands Multiple subnets in a net
968
Glossary
substrate A material between copper laminate layers that comprise a laminate pair, or a laminate set in the case of completed multilayer boards. substrate bond pads Copper areas on the substrate to which a die's wire bonds are connected. surface mount device Pads are glued to the board rather than inserted. swap file The file created when a program runs out of RAM memory and writes memory to disk. swapping A placement optimization process that exchanges pins, gates, or entire parts. The product .ini file entry that specifies the path for the PADS product configuration files. system attribute An attribute that is set by, used by, and critical to a PADS product, an external program, or Automation script (such as Sax Basic). You cannot modify the properties of a system attribute or modify the Attribute Dictionary entry for a system attribute. system toolbars System toolbars are specific to the PADS programs. They feature several system toolbars, such as standard, routing, selection filter. SystemDir The product .ini file entry that specifies the path for the PADS product configuration files.
T
T junction A trace that branches into another. TAB An acronym for source. tacks Small, diamond-shaped objects that anchor traces to their current location. Tacks are automatically generated under certain conditions and may also be manually added to a selected trace. tandem traces Traces on different layers that are checked for running parallel to each other. The traces are subject to crosstalk if they run parallel to each other too long and the gap between them is too short.
969
Glossary
Tape Automated Bonding (TAB) A packaging method where silicon chips are joined to patterned metal traces, or leads, on polymer tape to form inner lead bonds which are attached to the next level of the assembly, typically a substrate or board. Tape Ball Grid Array (TBGA) A TAB packaging method in which tape automated bonding leads are replaced by a ball grid array. TBGA An acronym for Tape Ball Grid Array (TBGA). teardrop A triangle shape that provides a smooth transition from a trace to a pad. terminal The electrical center of a pin, as defined in the part decal. terminator A pin type for high-speed circuit configurations that indicates a terminating resistor to match impedance of the trace. Terminators are used to reduce signal reflections that cause poor circuit performance. test point A test point is a group of objects that serve as a contact between the electrical element of the board and the probe of the testing device. A test point can also be a point on a node of a net, component pin, or via. Test points can also be a point on an unused component pin, such as a component pin that is not incorporated into any net. When the via or pin is flagged as a test point, and Show Test Points is checked on the Routing tab of the Options dialog box, an arrow is drawn on it in the design:
test point pass This autorouting pass analyzes the testability of the design, determines which nets require testing, adjusts the routes, and inserts test points to improve testability. You can select whether to add test points during routing or after routing. See also: The "To Assign Test Points During Routing," "To Assign Test Points After Routing," and "Using Automatic Test Point Placement" topics in the PADS Router Help for more information. testpnts.fmt An ASCII file containing information about test points, including the test point name, the signal name, and the x/y coordinates. The report file generator creates this file.
970
Glossary
thermal A multi-spoke connection of a through hole pin pad, via, or surface mount pad to a plane area or copper pour area. thermal compression bonding A method of wire bonding that does not use an intermediary metal or melting, but rather the flow of materials resulting from the combination of heat and pressure. It is also referred to as thermocompression bonding. thermal relief A spoke-shaped pattern that connects a via or pin, in the same net as the copper pour, to the surrounding copper. Thermal reliefs provide good pin soldering by preventing heat from dissipating throughout the plane layer. thick-film process A hybrid microelectronic process where conductors, insulators, and passive components are screened from special pastes onto the substrate. thin-film process The use of deposited films of conductive or insulating material, which may be patterned to form electronic components and conductors on a substrate or used as insulation material between successive layers of components. through holes Although there are non-plated through holes, this term is used interchangeably with plated through holes. It indicates that the hole has internal plating. There are two basic types of components that can be placed on a circuit board: Surface Mount Technology (SMT) where the parts are soldered to the surface of the board, and through hole (TH) components, where the components have wire leads that are soldered into plated holes that go through the board (sometime written as thru-holes). through-hole via A via that passes through all electrical layers of the PCB design (as opposed to a partial via). This is sometimes also called a through via. tooling holes Every board requires at least two tooling holes that the blank board manufacturer uses for layer alignment purposes during the manufacturing process. If you don't include them in the design, the manufacturer will add them to the board. Tooling holes are typically .125" non-plated holes with a tolerance of +/-.002". If the board is so small that the tooling holes won't fit, the manufacturer will add them to an area outside of the board outline. (These would typically get removed after final assembly.) There are two types of tooling holes: board tooling holes and panel tooling holes. Most boards are manufactured by stepping and repeating the single board image onto a larger panel so that multiple boards can be processed on a single panel. So, the board tooling holes are used for alignment purposes for individual boards, while the panel tooling holes are used for alignment of the entire panel during the manufacturing and assembly processes.
PADS Layout Users Guide and Reference Manual, PADS 9.2
971
Glossary
Tip: Use the Decal Editor and the Pad Stacks dialog box to create tooling holes. Save the singleterminal object as a part to the library for reuse. See also: Creating Terminals, Editing Pad Stacks ToolTips ToolTips appear below buttons and provide a command name or description for the buttons. topology The pattern of the trace and the order in which to connect pins in a net. total length The current routed length plus the total Manhattan length for remaining unroutes of the associated net or pin pair. Total length is reported for pin pairs when all the following are true: length rules are defined for the pin pair, the associated net is a high-speed net, and copper sharing is disabled. If pin pair rules are reported, the estimated total length of the pin pair is shown; otherwise, total length for nets is reported. trace A line segment that represents physical etch. A trace can appear as a single pixel line or as a double line to indicate its actual width. trace corner The vertex at which two trace segments are joined. A trace corner can also be the end point of a partially routed trace. The trace segments may be in line.
trace paths A continuous sequence of trace segments in the same trace on the same layer. Paths start and end at nodes, and cannot pass through a node.
972
Glossary
trace segment One section of a trace. A trace segment has one starting point and one ending point. A trace segment can be arced.
Trace segments are contiguous when they are joined end to end, in one continuous path, and belong to the same trace.
transparent layers The mode that displays layers in a see-through mode so you can view multiple objects stacked upon each another. This is the modeless command T. TrueLayer The default mode of operation in PADS Layout whereby an object on a documentation layer moves with a component if the component is moved from one side of the board to the other. For example, when you place a component on the top layer of the board, the reference designator of that component is visible on the Silkscreen Top layer (the documentation layer associated with the top layer of the board). Moving the component to the bottom side of the board automatically moves the reference designator for the component to the Silkscreen bottom layer. TrueLayer also correctly plots paste masks of documentation-level pad shapes in CAM. The layer that the definitions move to is set in the Component Layer Associations dialog box. By default, TrueLayer mode is enabled. To disable it, use the /NTL command-line switch. See Start-up Options. TTL Acronym for Transistor-Transistor Logic. tune pass This autorouting pass adjusts the length of length-controlled traces. The pass examines trace lengths for only completely routed nets or pin pairs. The pass analyzes the current length of each net or pin pair if length rules and length control are enabled, based on the following conditions:
973
Glossary
If the cumulative length of the adjacent trace segments is within the range of minimum and maximum trace length, the tune pass skips the trace and does not adjust it. If the trace is longer than the maximum trace length, the tune pass rips it up and places it in a queue for routing. If the trace length is less than the minimum trace length, the tune pass changes the length by adding accordion patterns.
U
ultrasonic bonding A wire bonding technique that uses ultrasonic energy and pressure to form the bond without heat. underfill Material injected under the die to ensure interconnect reliability against cross-reference file mismatch between the die and the substrate in a flip chip configuration. undo A command that allows you to remove the effects of the last command invoked. UndoMemorySize The powerpcb.ini file entry that limits the maximum size of the buffer that is used to store ECO operations for Undo. unions Parts assigned to each other in fixed relative positions using Cluster Placement. These positions are maintained whenever a union is moved in Cluster Placement. A common example is the relationship between bypass capacitors and ICs. units of measure A commonly used set of measurements. unroute To convert a trace back into a connection. unrouted length The trace length monitor calculates unrouted length as the distance from the end point of the current trace segment (attached to the pointer) to its destination. The unroute length calculation depends on the current routing angle:
Routing mode: The calculation: Orthogonal Diagonal Any Angle Manhattan Length The length of the shortest diagonal path between unroute ends Point-to-point distance
974
Glossary
The unrouted length is recalculated as the unroute dynamically reconnects to connection points. The routing angle also effects this calculation. See also: routed length, estimated total length unroutes Thin, straight segments joining pins or coppers to indicate connectivity. Also called a link. unused pins Pins that are not connected to a net. UserDir An .ini file setting that specifies the path for PADS product configuration files.
V
verb mode Start a command by attaching a command to the pointer and then selecting objects to which you apply the command. You can enter verb mode by selecting a command when no objects are selected. A small V attaches to the pointer to show that the selected command is active. The command remains attached to the pointer until you cancel verb mode. See also: object mode vertex A single point in the work area, defined by x and y coordinates. via A drilled and plated hole that passes conductivity from one layer to another. via pair A pair of vias used to change the routing layer for a differential pair when routing the controlled gap area. See also: via, differential pairs victim net Nets that are interfered with by those tagged as aggressor nets during High-Speed or Electrodynamic Checking. virtual memory Writing memory areas to disk in the form of a swap file when RAM is filled. The size of the swap file is based on the free disk space or the limits imposed by the operating system. virtual point A point along a trace segment that identifies a change in design rules, usually between trace rules and component rules. Virtual points are inserted into nets automatically when necessary, usually during autorouting operations. You cannot create, position, or otherwise edit a virtual point. See also: subnets
PADS Layout Users Guide and Reference Manual, PADS 9.2
975
Glossary
Visual Basic Visual Basic is a simple scripting language developed by the Microsoft Corporation in the late 1980s to provide users with a unified language in Windows 95 and Windows NT. More and more Windows applications like PADS Logic include Visual Basic capabilities, such as Word and Excel, to allow users to customize these applications using a standard scripting language. visual editing Visual Editing occurs when the source application for a linked or embedded OLE object opens within the container application.
W
wafer A thin disk of semiconductor material (usually silicon) on which many separate chips can be fabricated. wafer sort The electrical testing of each die on the wafer while still in wafer form. WB An acronym for wire bond. wedge bonding A form of thermal compression wire bonding where the bond shapes the wire into a wedge shape. width The thickness of a trace or line. wire bond Fine wires, usually aluminum or gold, connecting the bonding pads on a die to the component package. Wire Bond Editor The Wire Bond Editor opens (explodes) a selected die part, so you can move, add, delete, and edit individual component bond pads and wire bonds in addition to substrate bond pads. You can also edit the die size. wire bond fanout A pattern of wires (typically gold) that arc out from component bond pads to substrate bond pads to provide connectivity between the die pins and the substrate package pins. Wire Bond Wizard A BGA toolbox feature that creates and places substrate bond pads and generates an automatic wire bond fanout between component bond pads and substrate bond pads. wire bonder The machine that connects wires between the chip bond pads and the substrate bond pads.
976
Glossary
wire bonding The process of electrically connecting a chip to the next level package with fine wires. The wires are either gold or aluminum. workspace The actual work area where a design is created.
X
There are no terms in this section.
Y
yield The ratio of the number of acceptable units to the maximum number possible.
Z
Z routing pattern A collection of routes that form a pattern resembling the letter Z.
zoom Modifying the view to make objects appear larger or smaller. Zooming in or out affects the amount of what can be viewed in the work area. See also: protect
977
Glossary
978
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Index
- operator, 693
Index
Symbols
&\, 689, 714 * operator, 690 + operator, 691 / operator, 692 ^ operator, 695
Numerics
2D Lines and Text, 284 combining, 285 exploding, 287 modifying, 284 uncombining, 286
A
A2D, 817 ABSTOL, 818 AC/DC/TRAN, 819 accelerator keys, 46 ACCT, 820 Activate method, 506, 554 ActiveDocument property, 428 ActiveLayer, 805 ActiveLayer combo box, 805 ActiveSheet property, 487 ActiveView property, 488 ActiveX component, 738 ActiveX object, 731 AD Attribute, 821 Add method, 467 AddComponent method, 555 AddGate method, 556 adding, 227 add drafting item from library, 287 add drafting item to library, 287 attribute labels, 175 buses, 274 circles, 283 connections, 262
PADS Logic Users Guide, PADS 9.2
connections to buses, 274 connector pins, 229 fields, 223 floating connections, 266 multigate parts, 229 nets to a mixed net bus, 274 off-page references, 270 parts, 227 polygons or paths, 283 power and ground connections, 266 rectangles, 284 single gate parts, 229 terminals, 168 text, 281 allocating storage space, 705 AlphaNumber property, 636 alphanumeric pin names, 198 alternate symbol command, 231 AMPLITUDE, 822 Analog Attributes, 815 And operator, 696 annotation, 350 antilogarithm, 737 Application object, 426, 428, 434, 441, 444, 453 ActiveDocument property, 428 Application property, 429 CreateLibrary property, 440 DefaultFilePath property, 430 ExportLibraryItems method, 441 FullName property, 431 GetLibraryItems method, 444 LockServer method, 445 Measure method, 446 Name property, 433 ObjectType property, 434 OpenDocument method, 443, 447, 448, 449, 517, 518, 519, 520 Parent property, 435 ProgressBar property, 436
979
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
ProgressChange event, 454 Quit event, 455 Quit method, 450 RunMacro method, 451 StatusBarText property, 437 UnlockServer method, 452 Version property, 438 Visible property, 439 Application object methods, 776 CreateNewDocument, 777 ExecuteCommand, 778 Help, 779 HelpContents, 780 OpenCustomizeDialog, 782 OpenDocument, 783 OpenOptionsDialog, 784 OpenPropertiesDialog, 785 Quit, 786 RunMacro, 787 Application property, 429, 458, 462, 470, 489, 540, 549, 562, 578, 591, 602, 608, 617, 626, 637, 652 arctangent, 727 arithmetic subtraction operator, 693 AS Attribute, 823 Asc, 726 ASCII, 106 file format, 106 output, 108 saving formats, 108 assign alternatives for Off-page Part dialog box, 207 Power Part dialog box, 207 Assign Decal to Gate dialog box, 189 assigning ground parts, 206 assigning value, 694 Atn, 727 attaching floating connections, 266 Attribute name visibility, 667 Attribute object, 457 Application property, 458 Measure property, 466 Name property, 459 Parent property, 460 Value property, 461 Attribute Visibility, 667 attributes, 175, 264, 292 adding from the library, 198 adding to a part, 196 attribute labels, 174 attribute level backward annotation, 360 Attributes tab--Part Information dialog box, 196 creating labels for, 175 default for nets, 264 managing in a schematic, 293 managing in the library, 151 of nets, 264 overview, 292 part, 301 setting visibility for, 230 supported defaults for nets, 264 Attributes Collection object, 456, 467 Add method, 467 Application property, 462 Count property, 463 Delete method, 468 Item property, 464 Parent property, 465 Attributes property, 471, 618 automation client sample, 417 automation server, 415 application object, 426 attribute object, 457 attributes collection object, 456 component object, 469 document object, 485 gate object, 651 library object, 601 libraryitem object, 601 measure object, 590 net object, 616 object hierarchy, 416 objects collection object, 577 OLE Background, 415 parttype object, 625 pin object, 635 sample, 417 sheet object, 539
980
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
sheets collection object, 538 troubleshooting client samples, 417
C
CAE decal, 155 Call statement, 703 Change event, 576 Change Icon dialog box, 394 changing, 271 a connection, 271 and updating library parts, 158 bus name labels, 310 buses, 308 fields, 224 net cross-reference labels, 310 net names, 306 objects in the Decal Editor, 169 part attribute labels, 302 part attributes, 301 part type labels, 302 pin label fonts, 305 pins, 305 reference designator labels, 304 text, 311 character code, 728 Asc, 726 Chr, 728 characters for pin types, 170 CheckBox, 756 checking for software updates, 41 CheckListBox, 758 CHGTOL, 825 ChildSheets property, 541 choosing bus type, 274 Chr, 728 clearance rules, 320 Close, 704 Close statement, 704 code samples, 419 enhancing, 422 running, 419 troubleshooting client samples, 417 troubleshooting code samples, 423 color, 126 setting display colors, 126 combining 2D lines and text, 285
B
backward annotate from PADS-Layout, 354 attribute level, 360 gate level, 366 net level, 366 part level, 365 pin level, 367 Basic language, 69 basic scripting, 408 managing, 408 sample scripts, 409 Sax Basic Engine, 408 Basic scripts editor for, 62 Basic tab, 62 begin drag, 774 bill of materials report, 337, 345 attributes tab, 345 clipboard view, 345 format tab, 345 BlazeRouter, 386 document tab, 386 OLE connection, 386 selection tab, 387 BOM report, 337 BottomRightX property, 563 BottomRightY property, 564 boundary, 288 preserve by boundary, 288 browse, 203 for Connector dialog box, 203 for Special Symbols dialog box, 210 browsing library attributes, 198 BULK, 824 bus name labels modifying, 310 querying and modifying, 310 buses, 274 managing, 274 modifying, 308 querying and modifying, 308
981
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
ComboBox, 760 command, 729 command line, 729 comparing expressions, 697 comparison operators, 697 component object, 469 Application property, 470 Attributes property, 471 Delete method, 485 Gates property, 472 Name property, 473 ObjectType property, 475 Parent property, 476 PartType property, 477 PartTypeLogic property, 478 PartTypeObject property, 479 PCBDecal property, 480 Pins property, 481 Selected property, 483 UnusedGates property, 484 Component property, 542, 627, 638, 653 concatenation, 691 conditional rules, 332 connections, 262 adding connections, 262 adding connections to a bus, 274 adding off-page references, 270 adding power and ground connections, 266 changing a connection, 271 modifying a netname, 306 moving connections, 271 naming connections, 263 splitting, 272 swapping pins, 273 swapping reference designators, 231 connectivity report, 337 connectors, 202 adding connector pins, 229 creating, 202 constant e, 737 constants, 671, 672, 681 plogASCIIVersion, 676 plogDefaultPosition, 679 plogGateVisibility, 667, 678 plogGridType, 674 plogLibraryItemType, 681 plogMeasureFormat, 680 plogNetListVersion, 677 plogObjectType, 672 plogPinElectricalType, 675 plogUnit, 673 Control, 789 controlling hierarchical component access, 311 controlling selections, 218 object selection in the Decal Editor, 158 controlling the view, 51 saving and restoring views, 52 using middle mouse button, 51 using scroll bars, 51 using the numeric keypad, 48 using view commands, 51 Convert dialog box, 395 Converting fonts, 130 converting OLE objects, 398 copy mode, 215 copying, 215 a hierarchical symbol, 318 as bitmap, 280 copy and paste commands, 279 copy and paste OLE objects, 396 groups, 289 Cos, 730 cosine, 730 Count property, 463, 550, 579 CPTIME, 826 CreateLibrary property, 440 CreateNewDocument, 777 CreateObject, 731 Creating macros, 56 scripts, 65 creating, 175, 281 2D line items, 281 a netlist, 349 attribute labels, 175 attributes in a schematic, 293 attributes in the library, 151 CAE decals, 165 connectors, 202 floating connections, 266
982
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
ground symbols, 206 groups, 288 hierarchical symbols, 315 hierarchy--bottom-up, 314 hierarchy--top-down, 313 multigate parts, 167 net attributes, 264 new parts from existing parts, 159 new special symbols from existing symbols, 210 PDFs, 370, 376 pin decals, 203 schematics, 213 single gate parts, 165 special symbols, 208 creating objects, 731 Creating Terminals, 945, 972 cross-probing, 381, 386 between PADS products, 379 OLE PADS-Layout connection, 381 CurDir, 732 CURRENT, 827 current path, 732 custom fields, 223 customize modal dialog box, 782 customizing menus, 78 shortcut keys, 84 toolbars, 76 cut, 279 copy and paste commands, 279 copy and paste OLE objects, 396 listing, 146 decals, 200 declares variables, 705 decreasing maximum layer number, 132 default, 264 attributes for nets, 264 rules, 330 default layer mode, 132 DefaultFilePath property, 430 defining a resistor value, 294 Delete method, 468, 485, 669 delete mode, 216 deleting, 77, 216 a hierarchical symbol, 318 attributes from a schematic, 293 attributes from the library, 151 bus segments, 274 buses, 274 groups, 289 OLE objects, 401 design rules, 330 clearance rules, 320 conditional rules, 332 default rules, 330 defining net, 331 defining net class, 330 differential pair, 333 high-speed, 327 report, 335 routing, 322 setting, 319 setup icons, 329 designing, 213 editing options, 119 editing preferences, 119 operations, 213 dialog box control, 789 dialog box message, 747 dialog objects, 787 CloseHelpPane, 790 Control, 789 Focus, 788 OpenHelpPane, 791 ShowHelpFor, 792 difference, 693
D
D2A, 828 dangling connections, 266 DC, 830 Debugging, 60, 68 Decal Editor, 158, 161, 169, 205 changing objects, 169 controlling object selection, 158 editing objects, 205 modifying terminals, 175 selecting multiple objects, 161 Decal Wizard dialog box, 163 Decals
PADS Logic Users Guide, PADS 9.2
983
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Dim, 705 Dir, 733 directory, 733 disabling floating connections, 266 display colors, 126 setting, 126 display-formatted data, 716 displaying, 292 groups during a move or copy, 292 OLE objects, 392 Displaying a document, 803 divide, 692, 698 dividing numbers, 692, 698 Do...Loop statement, 706 document, 792 document object, 485 Activate method, 506 ActiveSheet property, 487 ActiveView property, 488 AncestorSheets property, 489 Application property, 490 Components property, 491 ExportASCII method, 507 ExportNetList method, 508 Fields property, 492 Fullname property, 493 Gates property, 494 GenerateECO method, 509 GetObjects method, 511 GridX property, 495 GridY property, 496 ImportASCII method, 505 ImportECO method, 513 Name property, 497 Nets property, 498 Parent property, 499 PartTypes property, 500 Path property, 501 Pins property, 502 Save event, 524 Save method, 515 SaveAs method, 516 Saved property, 503 SelectionChange event, 525 SelectObjects method, 521 Sheets property, 504 Document tab--BlazeRouter, 386 DoEvents, 734 double, 686 down arrow on pin, 970 down arrow on via, 970 drafting objects modifying, 296 querying and modifying, 296 drafting operations, 287 add drafting item from library, 287 add drafting item to library, 287 drop, 774 duplicating floating connections, 266 groups, 289
E
e (the base of natural logarithms), 737 ECO, 357 backward from PCB, 354 file format, 357 forward and backward annotation, 350 forward to PCB, 352 Edit, 760 EditBox, 762 editing, 214 basics of, 214 buses, 308 design options, 119 design preference, 119 drafting objects, 296 floating connections, 266 global options, 116, 123 global preferences, 116, 123 hierarchical symbols, 317 logic families, 182 net names, 306 objects in the Decal Editor, 205 off-page symbol sheet numbers, 270 OLE links, 396 OLE objects, 395 PADS Logic OLE objects, 399 part attributes, 301 part editor operations, 155 part signal pins, 297
PADS Logic Users Guide, PADS 9.2
984
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
parts and part information, 297 Query mode, 295 text, 311 electrical layers, 132 ElectricalType property, 639 embedding, 389 and linking objects, 390 OLE, 389 empty document, 777 enabling floating connections, 266 end of file, 736 ENDFREQENDFREQ, 831 ENDVAL, 832 enhancing sample code, 422 Environ, 735 environment variable, 735 EOF, 736 equal to, 697 Events (automation) Application.OpenDocument, 453 Application.ProgressChange, 454 Application.Quit, 455 Document.Save, 524 Document.SelectionChange, 525 View.Change, 576 execute statements, 723 ExecuteCommand, 778 Exit Do statement, 706 Exit For statement, 707 exiting the application, 786 Exp, 737 expand, 772 exploding combinations, 287 exponent, 695 exponentiation, 695 ExportASCII method, 507 ExportLibraryItems method, 441 ExportNetList method, 508 expressions, 687 expressions and wildcards, 153 extending buses, 274 changing, 224 creating from text string, 224 managing, 224 querying, 296 querying and modifying, 296 Fields property, 492 file format--ASCII, 106 file I/O, 715 file input/output, 715 file operations, 101, 102 export, 105 import, 103 new, 101 OLE import/export, 105 open, 102 save as, 102 File output, 377 PostScript printing, 377 filter, 219 wildcards and expressions, 153 finding objects, 219, 221 floating connections, 266 adding, 266 attaching, 266 creating, 266 disabling, 266 duplicating, 266 editing, 266 enabling, 266 Focus, 788 TreeItem, 772 folder, 733 Dir, 733 MkDir, 745 Font size, 127 setup, 127 Font usage, 130 Fonts, 127 converting, 130 setting up, 127 setting up size, 127 setting up style, 127 used in schematics, 127 For-Next statement, 707 forward annotate to PCB, 352
F
Fields, 223 adding, 223
PADS Logic Users Guide, PADS 9.2
985
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
FREQ_CARRIER, 833 FREQ_SIGNAL, 834 FREQUENCY, 835 full screen mode, 806 FullName property, 431, 493, 603 FullScreen, 806 FunctionName property, 640 global tab -- options, 116, 123 global tab -- preferences, 116, 123 GMIN, 840 greater than, 697 greater than or equal to, 697 grid settings and work area, 125 GridControl, 764 GridX property, 495 GridY property, 496 ground symbols, 206 group operations, 288 boundary, 288 creating a group, 288 deleting, 289 displaying during move and copy, 292 duplicating, 289 moving, 289 overview, 288 preserve by boundary, 288 preserving reference designators when pasting, 124 reusing, 289 saving, 289 setting the origin, 288 group select mode, 214
G
GAIN, 836 gate level backward annotation, 366 gate object, 651 Application property, 652 Component property, 653 Delete method, 669 Move method, 670 Name property, 654 Number property, 655 ObjectType property, 656 Parent property, 657 Pins property, 658 PositionX property, 659 PositionY property, 660 ReflectedX property, 661 ReflectedY property, 662 Rotated90 property, 663 Selected property, 664 Sheet property, 665 SwapClass property, 666 Visibility, 667 Gate property, 641 GatePinName property, 642 Gates property, 472, 494, 543 Gates tab--Part Information dialog box, 188 General tab--Part Information dialog box, 179 GenerateECO method, 509 generating reports, 337 GENERATOR, 837 Get Decal from Library dialog box, 303 Get Gate Decal from Library dialog box, 176 Get Part Type from Library dialog box, 228 GetLibraryItems method, 444, 614 GetObject, 738 CreateObject, 731 GetObjects method, 511, 557 GetTmpFileName, 739
986
H
Help, 779 on Basic language, 69 on Macro language, 61 Help Contents item, 797 Help window, 803 HelpContents Object, 797 HelpContentsItem Object, 797 HelpPane, 781 HelpPane Object, 803 hierarchical components modifying, 311 querying, 311 querying and modifying, 311 hierarchical design copying a hierarchical symbol, 318 creating a bottom-up hierarchy, 314 creating a hierarchical symbol, 315 creating a top-down hierarchy, 313 deleting a hierarchical symbol, 318
PADS Logic Users Guide, PADS 9.2
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
modifying a hierarchical symbol, 317 popping up the hierarchy, 315 pushing into the hierarchy, 315 high-speed rules, 327 using the numeric keypad, 48
L
L, 851 LABEL, 852 labels attribute, 175 bus names, 310 net cross-references, 310 part attribute, 302 part type, 302 reference designators, 304 layer modes (default), 132 layers, 132 electrical, 132 plane, 132 setting, 132 thickness, 132 layers setup, 132 Left function, 742 Len function, 743 less than, 697 less than or equal to, 697 libraries reporting parts in, 144 LIBRARY, 853 library, 139 add drafting item from library, 287 add drafting item to library, 287 changing and updating library parts, 158 library list dialog box, 148 library manager, 139 managing attributes, 292 managing attributes in, 151 modifying the library list order, 148 Library Manager Report Manager, 144 library object, 601, 602, 603, 604, 605, 606, 607, 614, 615 Application property, 602 FullName property, 603 GetLibraryItems method, 614 ImportLibraryItems method, 615 ImportLibraryItems2 method, 616 Name property, 604 ObjectType property, 605
987
I
I/O, 704 I1, 841 I2 I3 ..., 841 IC, 842 If...Then...Else statement, 711 ImportASCII method, 505 ImportECO method, 513 ImportLibraryItems method, 615 ImportLibraryItems2 method, 616 increasing maximum layer number, 132 INCREMENT, 843 INIT, 844 INITIAL, 845 input/output, 704 INPUTSOURCE, 846 Insert Object dialog box, 390 create from file, 390 create new, 390 InStr, 740 InStrRev function, 741 internal macro objects, 776 Item property, 464, 551, 580 item, method, 774 Item.Location, 799 Item.Name, 800 Item.Select, 801 ItemType property, 581 ITL2, 848 ITL4, 849 ITL5, 850
J
job limits report, 337
K
keyboard commands, 46 modeless commands, 44 shortcut keys, 46
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Parent property, 606 Path property, 607 Library property, 609 libraryitem object, 601, 608, 609, 610, 611, 612, 613 Application property, 608 Library property, 609 Name property, 610 ObjectType property, 611 Parent property, 612 Type property, 613 License Files, 413, 414 limits report, 337 LIMPTS, 854 LIN/OCT/DEC, 855 Lines listing, 146 linking and embedding, 390 objects in PADS Logic, 390 OLE in PADS Logic, 389 LIST, 856 list box, 765 list property, 760 ComboBox, 760 List box, 765 ListBox, 765 ListCount property, 758 CheckListBox, 758 ListBox, 765 loading a design, 102 Location, 799 LockServer method, 445 logic decals, 200 Logic Family dialog box, 182 Logic property, 634 Logic symbols listing, 146 logical conjunction, 696 logical disjunction, 700 logical exclusion, 701 logical negation, 699 creating, 56 debugging, 60 managing, 57 playing back, 59 macros creating commands from commands creating from macro files, 88 creating shortcut keys for, 87 MainView, 803 Managing macros, 57 scripts, 62 session logs, 70 managing, 408 attributes in a schematic, 293 attributes in the library, 151 buses, 274 fields, 224 special symbols in the library, 211 maximum layer number, 132 Measure method, 446 measure object, 590 Application property, 591 Name property, 592 Normalize method, 593 Number property, 594 Parent property, 596 Prefix property, 595 Text property, 597 Unit property, 598 Value property, 599 Measure property, 466 menu items creating, 78 menus creating commands for, 78 customizing, 88 removing items from, 83 Merge method, 585 merging nets, 306 message, 747 Methods (automation), 441, 444, 614, 615 Application.ExportLibraryItems, 441 Application.GetLibraryItems, 444
M
macro language introduction, 683 Macro tab, Output window, 55 Macros, 57
988
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Application.LockServer, 445 Application.Measure, 446 Application.OpenDocument, 443, 447, 448, 449, 517, 518, 519, 520 Application.Quit, 450 Application.RunMacro, 451 Application.UnlockServer, 452 Attributes.Add, 467 Attributes.Delete, 468 Component.Delete, 485 Document.ExportASCII, 507 Document.ExportNetList, 508 Document.GenerateECO, 509 Document.GetObjects, 511 Document.ImportASCII, 505 Document.ImportECO, 513 Document.Save, 515 Document.SaveAs, 516 Document.SelectObjects, 521 Gate.Delete, 669 Gate.Move, 670 Library.GetLibraryItems, 614 Library.ImportLibraryItems, 615 Library.ImportLibraryItems2, 616 Objects.Add, 584 Objects.Merge, 585 Objects.Remove, 586 Objects.Reset, 587 Objects.Select, 588 Objects.Sort, 589 Sheet.Activate, 554 Sheet.AddComponent, 555 Sheet.AddGate, 556 Sheet.GetObjects, 557 Sheets.Add, 559 View.Pan, 571 View.Refresh, 572 View.SetExtents, 573 View.SetExtentsToAll, 574 View.SetExtentsToSheet, 575 Mid function, 744 MkDir, 745 Mod, 698 MOD_INDEX, 857 MODEL, 858 modeless commands, 44 lists and use of, 44 modes, 216 delete, 216 group, 214 object select, 214 verb, 214 modifying, 284 2D line items, 284 bus name labels, 310 buses, 308 drafting objects, 281, 296 fields, 296 groups, 288 hierarchical components, 311 hierarchical symbol, 317 library list order, 148 logic families, 182 net cross-reference labels, 310 net name labels, 307 nets, 306 number of electrical layers, 132 part atrtribute labels, 302 part type labels, 302 parts, 297 pin label fonts, 305 pins, 305 reference designator labels, 304 terminals, 175 text, 311 modulus operator, 698 mouse button operations, 43 mouse button press, 807 mouse button release, 811 mouse down, 807 mouse drag operation, 809 MouseEndDrag, 808 MouseStartDrag, 810 mouse end drag, 808 mouse move, 809 mouse movement, 809 mouse start drag, 810 mouse up, 811 MouseDown, 807 MouseEndDrag, 808
989
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
MouseMove, 809 MouseStartDrag, 810 MouseUp, 811 move file, 746 Move method, 670 MoveFile, 746 moving, 216 and sizing OLE objects, 393 bus segments, 274 connections, 271 groups, 289 move mode, 216 text, 282 MsgBox, 747 multiply, 690 Net property, 644 net statistics report, 337 net-cross reference labels modifying, 310 querying, 310 querying and modifying, 310 netlist, 349 creating a new, 349 nets modifying, 306 querying, 306 querying and modifying, 306 Nets property, 498, 545 new directory, 745 new filename, 739 new folder, 745 Next property, 582 NO_PINS, 859 NODE, 860 NODESET, 861 NOECHO, 862 NOISESOURCE, 863 NOPAGE, 864 Normalize property, 593 not equal to, 697 Not operator, 699 Number property, 594, 655 NUMDGT, 865 numeric expression, 687 numeric keypad, 48 numeric value, 686 NUMPOINTS, 866 NUMRUN, 867
N
Name, 800 Name property, 433, 459, 473, 497, 544, 565, 592, 604, 610, 619, 629, 643, 654 naming, 263 a connection, 263 buses, 274 nets, 306 negative value, 693 net assignments plane layer, 132 net attributes, 264 creating, 264 default, 264 on signal pins, 221 overview, 264 net level backward annotation, 366 net name labels modifying, 307 querying, 307 querying and modifying, 307 net object, 616 Application property, 617 Attributes property, 618 Name property, 619 ObjectType property, 620 Parent property, 621 Pins property, 622 Selected property, 623 Width property, 624
990
O
object, 687 object hierarchy, 416 object operations, 214 editing, 214 finding, 219, 221 object select mode, 214 selecting, 217, 219 selecting OLE, 393 object reference, 720 objects collection object, 577 Add method, 584
PADS Logic Users Guide, PADS 9.2
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Application property, 578 Count property, 579 Item property, 580 ItemType property, 581 Merge method, 585 Next property, 582 Parent property, 583 Remove method, 586 Reset method, 587 Select method, 588 Sort method, 589 ObjectType property, 434, 475, 605, 611, 620, 631, 645, 656 off-page list report, 337 OFFSET, 868 OLE, 415 BlazeRouter Document tab, 386 BlazeRouter Selection tab, 387 compare PCB, 381 copying and pasting objects, 396 cross-probing between PADS products, 379 design tab, 381 document tab, 383 edit OLE links, 396 ignore unused pins net, 385 importing and exporting, 105 in PADS Logic, 389 including attributes, 385 link and embed objects, 390 linking and embedding methods of, 389 OLE background, 415 PADS-Layout connection, 381 Preferences tab, 385 printing and plotting, 401 receiving rules from PCB, 381 receiving selections, 384 Router connection, 386 Selection tab, 384 sending a netlist, 381 sending rules to PCB, 381 sending selections, 384 specific editing commands, 398 synchronizing with PCB, 381 visual editing, 399 OLE ECO Names Tab, 386 Open statement, 704, 715 OpenCustomizeDialog, 782 OpenDocument, 783 Application, 776 OpenDocument event, 453 OpenDocument method, 443, 447, 448, 449, 517, 518, 519, 520 OpenOptionsDialog, 784 OpenPropertiesDialog, 785 operator, 688, 689, 714 - operator, 693 &\, 689, 714 * operator, 690 + operator, 691 / operator, 692 = operator, 694 ^ operator, 695 And operator, 696 comparison operators, 697 Mod operator, 698 Not operator, 699 Or operator, 700 Xor operator, 701 Options, 369 editing, 119 editing design, 119 pen plot, 369 photo plot, 369 Options dialog box Global tab, 116, 123 Options modeless dialog box, 784 OPTS, 869 Or operator, 700 ORDER, 870 origin setting for a group, 288 setting for a part, 176 OUT, 872 OUTPUT, 873 Output window Macro tab, 55 Status tab, 55 overview
991
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
OLE in PADS Logic, 389 Part Editor operations, 155 query mode, 295 Pin Decal Browse dialog box, 168 saving a modified decal with a different name, 177 saving a modified part type with a different name, 202 saving part types, 200 select pin decal dialog box, 209 Select Type of Editing Item dialog box, 159 setting the origin for a part, 176 special symbol naming conventions, 205 special symbols, 205 updating off-page from library, 234 updating pins from library, 235, 236, 237, 238, 239, 249 Part Information dialog box, 179 Attributes tab, 196 Gates tab, 188 General tab, 179 PCB Decals tab, 185 Signal Pins tab, 191 part level backward annotation, 365 part operations, 227 adding parts, 227 copy mode, 215 defining a resistor value, 294 delete mode, 216 library manager, 139 modifying, 297 moving text, 282 rename gate, 304 rename part, 304 swapping pins, 273 swapping reference designators, 231 part statitstics report, 337 Part Text Visibility dialog box, 230 part type labels editing, 302 modifying, 302 querying, 302 querying and modifying, 302 Part type visibility, 667 parts modifying, 297 querying, 297 querying and modifying, 297
P
PADS Logic connection with PADS-Layout, 381 connection with Router, 386 cross-probing with PADS products, 379 PADS Logic QuickStart, 31 Pan method, 571 Parent property, 435, 460, 465, 476, 499, 546, 547, 552, 566, 583, 596, 606, 612, 621, 632, 646, 657 PARNAM, 874 part - save to library, 232 part attribute labels modifying, 302 querying, 302 querying and modifying, 302 part attributes editing, 301 Part Editor operations, 155 alternatives for special symbols, 200 assign alternatives for off page, 207 assign alternatives for power part, 207 assigning alphanumeric names to pin, 198 assigning alternatives for ground parts, 206 changing and updating library parts, 158 creating a new CAE decal, 165 creating a new connector, 202 creating multigate parts, 167 creating new parts from existing parts, 159 creating new special symbols, 208 creating new special symbols from existing symbols, 210 creating single gate parts, 165 Decal Wizard dialog box, 163 editing logic families, 182 Get Gate Decal from Library dialog box, 176 managing special symbols in the library, 211 modifying the library list order, 148 overview, 155 Part Information dialog box, 179
992
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
reporting on, 144 PartType object, 625 Application property, 626 Components property, 627 Logic property, 634 Name property, 629 ObjectType property, 631 Parent property, 632 Selected property, 633 PartType property, 477 PartTypeLogic property, 478 PartTypeObject property, 479 Passing control to the operating system, 734 paste, 279 copy and paste and OLE objects, 396 copy and paste commands, 279 groups, 289 Path property, 501, 607 pathname, 733 PCB decal name visibility, 667 PCB decal visibility, 667 PCB decals changing for a part, 297 PCB Decals tab--Part Information dialog box, 185 PCBDecal property, 480 PDF, 370, 376 creating, 370 printing to, 376 Pen Plot, 372 options, 369 setup, 372 Pen Plots, 371, 372 setup, 372 PHASE, 875 Photo plot, 373 options, 369 setup, 373 Photo plots, 371 pin down arrow, 970 Pin Decal Browse dialog box, 168 pin label fonts modifying, 305 querying, 305 querying and modifying, 305 pin level backward annotation, 367 Pin name visibility, 667 Pin number visibility, 667 pin object, 635 AlphaNumber property, 636 Application property, 637 Component property, 638 ElectricalType property, 639 FunctionName property, 640 Gate property, 641 GatePinName property, 642 Name property, 643 Net property, 644 ObjectType property, 645 Parent property, 646 PositionX property, 647 PositionY property, 648 Selected property, 649 SwapClass property, 650 pin swapping, 273 pin type letter representations, 170 pins alphanumeric names, 198 modifying, 305 properties, 305 querying, 305 querying and modifying, 305 Pins property, 481, 502, 548, 622, 658 PIVREL, 876, 877 plane layer net assignments, 132 plogASCIIVersion, 676 plogDefaultPosition, 679 plogGateVisibility, 667, 678 plogGridType, 674 plogLibraryItemType, 681 plogMeasureFormat, 680 plogNetListVersion, 677 plogObjectType, 672 plogPinElectricalType, 675 plogUnit, 673 Plots, 371 pen, 372 photo, 373 types of, 371
993
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
plotting, 372, 373 pen, 372 photo, 373 setting up pen plots, 372 setting up photo plots, 373 popping up the hierarchy, 315 position output, 751 PositionX property, 647, 659 PositionY property, 648, 660 PostScript printing, 377 PostScript printing to a file, 377 power of an exponent, 695 preferences editing design, 119 editing global, 116, 123 Preferences dialog box Global tab, 116, 123 PREFIX, 878 Prefix property, 595 preserve connections, 119 bus, 274 Print, 812 Print Document, 793 print current view, 812 print document, 793 print preview mode, 813 Print Setup dialog box, 794 Print statement, 716 printing, 375, 377 overview, 375 PostScript, 377 setup, 375 to PDF, 376 PrintPreview, 813 PrintSetup, 794 document, 792 PROBE, 880 ProgressBar property, 436 ProgressChange event, 454 properties bus name labels, 310 buses, 308 drafting objectgs, 296 fields, 296 net cross-reference labels, 310 nets, 306 part attribute labels, 302 part type labels, 302 parts, 297 pins, 305 reference designator labels, 304 terminals, 175 text, 311 Properties (automation), 434, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613 AlphsNumber property, 636 Application.ActiveDocument, 428 Application.Application, 429 Application.CreateLibrary, 440 Application.DefaultFilePath, 430 Application.FullName, 431 Application.Name, 433 Application.ObjectType, 434 Application.Parent, 435 Application.ProgressBar, 436 Application.StatusBarText, 437 Application.Version, 438 Application.Visible, 439 Attribute.Application, 458 Attribute.Measure, 466 Attribute.Name, 459 Attribute.Parent, 460 Attribute.Unit, 598 Attribute.Value, 461 Attributes.Application, 462 Attributes.Count, 463 Attributes.Item, 464 Attributes.Parent, 465 Component.Application, 470 Component.Attributes, 471 Component.Gates, 472 Component.Name, 473 Component.ObjectType, 475 Component.Parent, 476 Component.PartType, 477 Component.PartTypeLogic, 478 Component.PartTypeObject, 479 Component.PCBDecal, 480 Component.Pins, 481
994
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Component.Selected, 483 Component.UnusedGates, 484 Document.Activate, 506 Document.ActiveSheet, 487 Document.ActiveView, 488 Document.Application, 489, 490 Document.Components, 491 Document.Fields, 492 Document.Fullname, 493 Document.Gates, 494 Document.GridX, 495 Document.GridY, 496 Document.Name, 497 Document.Nets, 498 Document.Parent, 499 Document.PartTypes, 500 Document.Path, 501 Document.Pins, 502 Document.Saved, 503 Document.Sheets, 504 Gate.Application, 652 Gate.Component, 653 Gate.Name, 654 Gate.Number, 655 Gate.ObjectType, 656 Gate.Parent, 657 Gate.Pins, 658 Gate.PositionX, 659 Gate.PositionY, 660 Gate.ReflectedX, 661 Gate.ReflectedY, 662 Gate.Rotated90, 663 Gate.Selected, 664 Gate.Sheet, 665 Gate.SwapClass, 666 Gate.Visibility, 667 ibraryitem.library, 609 Library.Application, 602 Library.FullName, 603 Library.Name, 604 Library.ObjectType, 605 Library.Parent, 606 Library.Path, 607 LibraryItem.Application, 608 LibraryItem.Name, 610 LibraryItem.ObjectType, 611 LibraryItem.Parent, 612 LibraryItem.Type, 613 Measure.Application, 591 Measure.Name, 592 Measure.Normalize, 593 Measure.Number, 594 Measure.Parent, 596 Measure.Prefix, 595 Measure.Text, 597 Measure.Value, 599 Net.Application, 617 Net.Attributes, 618 Net.Name, 619 Net.ObjectType, 620 Net.Parent, 621 Net.Pins, 622 Net.Selected, 623 Net.Width, 624 Objects.Application, 578 Objects.Count, 579 Objects.Item, 580 Objects.ItemType, 581 Objects.Next, 582 Objects.Parent, 583 PartType.Application, 626 PartType.Components, 627 PartType.Logic, 634 PartType.Name, 629 PartType.ObjectType, 631 PartType.Parent, 632 PartType.Selected, 633 Pin.Application, 637 Pin.Component, 638 Pin.ElectricalType, 639 Pin.FunctionName, 640 Pin.Gate, 641 Pin.GatePinName, 642 Pin.Name, 643 Pin.ObjectType, 645 Pin.Parent, 646 Pin.PositionX, 647 Pin.PositionY, 648 Pin.Selected, 649 Pin.SwapClass, 650
995
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Sheet.Application, 540 Sheet.ChildSheets, 541 Sheet.Components, 542 Sheet.Gates, 543 Sheet.Name, 544 Sheet.Nets, 545 Sheet.Parent, 546 Sheet.ParentSheet, 547 Sheet.Pins, 548 Sheets.Application, 549 Sheets.Count, 550 Sheets.Item, 551 Sheets.Parent, 552 View.Application, 562 View.BottomRightX, 563 View.BottomRightY, 564 View.Name, 565 View.Parent, 566 View.TopLeftX, 569 View.TopLeftY, 570 Properties modeless dialog box, 785 pulling arcs, 285 PULSED, 881 push button, 767 PushButton, 767 pushing into the hierarchy, 315 Query/Modify mode, 295 querying, 295 and making modifications, 295 bus name labels, 310 buses, 308 drafting objects, 296 editing, 214 editing options, 119 editing preferences, 119 fields, 296 global options, 116, 123 global preferences, 116, 123 hierarchical components, 311 logic families, 182 modifying, 214 net cross-reference labels, 310 net name labels, 307 part attribute labels, 302 part type labels, 302 parts, 297 pin label fonts, 305 pins, 305 reference designator labels, 304 terminals, 175 text, 311 querying and modifying bus name labels, 310 buses, 308 drafting objects, 296 fields, 296 hierarchical components, 311 net cross-reference labels, 310 net name labels, 307 pin label fonts, 305 pins, 305 reference designator labels, 304 terminals, 175 text, 311 QuickStart, PADS Logic, 31 Quit, 786 Quit event, 455 Quit method, 450
Q
query mode, 214 Query/Modify bus name labels, 310 buses, 308 drafting objects, 296 fields, 296 hierarchical components, 311 net cross-reference labels, 310 net name labels, 307 nets, 306 part attribute labels, 302 part type labels, 302 parts, 297 pin label fonts, 305 pins, 305 reference designator labels, 304 terminals, 175 text, 311
996
R
radio box, 768 RadioBox, 768
PADS Logic Users Guide, PADS 9.2
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
ReDim statement, 718 Ref des visibility, 667 reference designator swapping, 231 reference designators changing for a part, 297 labels, 304 reference designators labels querying, 304 querying and modifying, 304 ReflectedX property, 661 ReflectedY property, 662 Refresh method, 572 registry, 417 RELTOL, 882 Remove method, 586 rename, 304 a gate, 304 a part, 304 renaming attributes in a schematic, 293 attributes in the library, 151 repeating the last action, 795 RepeatLastAction, 795 Report Manager, 143 reports, 337 bill of materials, 337, 345 connectivity, 337 generating, 337 limits, 337 net statistics report, 337 off-page list report, 337 part statistics report, 337 unused, 337 Reset method, 587 resistors, 294 defining a value for, 294 Retrieving Uniform Resource Locator, 803 Right function, 749 Rotated90 property, 663 Router, 386 cross-probing with PADS Logic, 379 OLE connection, 386 rules, 330 clearance, 320 conditional, 332 default, 330 RunMacro method, 451
S
sample code, 419 enhancing, 422 running, 419 troubleshooting client samples, 417 troubleshooting sample code, 423 sample scripts, 409 Save, 796 save, 515 Save event, 524 Save method, 515 SaveAs method, 516 Saved property, 503 save document, 796 save document to new location, 797 save view, 52 SaveAs, 797 saving, 102, 200, 233 a modified decal with a different name, 177 a modified part type with a different name, 202 and restoring views, 52 ASCII output, 108 groups, 289 off-page to library, 233 OLE objects, 402 part types, 200 save as, 102 Save Part Types to Library dialog box, 233 Sax Basic Engine, 408 scripting, 408 basic, 408 Scripts, 62 creating, 65 debugging, 68 managing, 62 running, 67 searching for objects, 219, 221 SelCount property, 758 CheckListBox, 758 ListBox, 765 Select, 760, 801 ComboBox, 760
997
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
TreeItem, 772 select, 588 Select method, 588 Selected property, 483, 623, 633, 649 SelectionChange event, 525 SelectObjects method, 521 Selected property, 664, 758, 765 CheckListBox, 758 ListBox, 765 selecting, 43, 217 control of, 218 controlling object selection in the Decal Editor, 158 groups, 289 multiple objects in the Decal Editor, 161, 219 objects, 217, 219 OLE objects, 393 Select Pin Decal dialog box, 209 Select Type of Editing Item dialog box, 159 Signal Pin Nets dialog box, 221 using the mouse, 43 Selecting Comparison Options, 361 Selecting Design Files and Output Options, 355 Selection Filter dialog box, 219 Selection tab--BlazeRouter, 387 SelLength property, 760 ComboBox, 760 EditBox, 762 SelStart property, 760 ComboBox, 760 EditBox, 762 SelText property, 760 ComboBox, 760 EditBox, 762 Session logs, 70 set check, 758 Set statement, 720 SetCheck, 758 SetExtents method, 573 SetExtentsToAll method, 574 SetExtentsToSheet method, 575 setting display colors, 126 fonts, 127 layers, 132 pen plots, 372 photo plot, 373 rules, 319 the origin for a part, 176 sheet object, 539, 553 Activate method, 554 AddComponent method, 555 AddGate method, 556 Application property, 540 ChildSheets property, 541 Components property, 542 Gates property, 543 GetObjects method, 557 Name property, 544 Nets property, 545 Parent property, 546 ParentSheet property, 547 PartType property, 553 Pins property, 548 Sheet property, 665 sheets collection object, 538 Add method, 559 Application property, 549 Count property, 550 Item property, 551 Parent property, 552 Sheets dialog box, 222 Sheets property, 504 shortcut keys, 46 assigning macros to, 87 creating, 84 use of expressions in, 86 signal pin nets, 196 Signal Pin Nets dialog box, 221 signal pins assigning to a part, 297 Signal Pins tab--Part Information dialog box, 191 Sin, 750 sine, 750 SliderControl, 769 software checking for updates, 41
998
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Sort method, 589 SOURCENAME, 883 space, 751 Spc, 751 special symbols, 200, 205 creating, 208 naming conventions, 205 overview, 205 SpinButton, 770 splitting, 272 a connection, 272 buses, 274 segments, 272 STARTFREQ, 884 STARTVAL, 885 state, 758 CheckBox, 756 CheckListBox, 758 EditBox, 762 ListBox, 765 RadioBox, 768 SliderControl, 769 SpinButton, 770 Tab control, 771 TreeItem, 772 statements, 701 Call, 703 Close, 704 Dim, 705 Do...Loop, 706 For-Next, 707 Function, 709 If...Then...Else, 711 Input, 713 Open, 715 Print, 716 ReDim, 718 Set, 720 Sub, 721 While...Wend, 723 Width#, 724 Status tab, Output window, 55 StatusBarText property, 437 Step and Repeat dialog box, 226 Str, 752 string, 752 str, 752 string expression, 687 string concatenation, 689, 714 string expression, 687 SubItem, 802 SubItemCount, 803 subtraction operator, 693 sum, 691 SwapClass property, 650, 666 swapping, 273 pins, 273 reference designators, 231 system fields, 223 System fonts, 127 selecting, 127
T
T1, 890 T2, 890 T3, 890 T4, 890 T5, 890 T6, 890 T7, 890 T8, 890 T9, 890 Tab, 753 TabControl, 771 TDELAY, 886 TEMP, 887 TEMP2, 887 TEMP3, 887 temporary filename, 739 terminals modifying, 175 querying, 175 querying and modifying, 175 text, 285, 286 changing to field, 224 combining, 285 exploding, 287 modifying, 311 querying, 311 querying and modifying, 311 uncombining, 286
999
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
visibility settings, 230 text properties, 281 Text property, 597 text property, 758 CheckListBox, 758 ComboBox, 760 EditBox, 762 ListBox, 765 TFALL, 888 TFINAL, 889 TNOM, 891 toolbars, 77 creation of, 76 removing buttons from, 83 renaming, 77 resetting, 78 showing or hiding, 77 TopLeftX property, 569 TopLeftY property, 570 TPERIOD, 892 TPULWIDTH, 893 transfering control, 703 TreeItem, 772 TreeView, 774 troubleshooting, 417, 423 automation client samples, 417 code samples, 423 Type property, 613 Val, 754 VALUE, 895 value, 754 Value property, 461, 599 value property, 768, 769, 771 RadioBox, 768 SliderControl, 769 TabControl, 771 VAMPLITUDE, 896 variables Logical, 685 Numeric, 685 Object, 687 String, 685 verb mode, 214 version checking for updates, 41 Version property, 438 via down arrow, 970 view object Application property, 562 BottomRightX property, 563 BottomRightY property, 564 Change event, 576 Name property, 565 Pan method, 571 Parent property, 566 Refresh method, 572 SetExtents method, 573 SetExtentsToAll method, 574 SetExtentsToSheet method, 575 TopLeftX property, 569 TopLeftY property, 570 VINITIAL, 897 Visibility property, 667 visibility settings for text, 230 Visible property, 439 VNTOL, 898 VOFFSET, 899 VOLTAGE, 900 VPULSED, 901
U
unary negation operator, 693 uncombining 2D lines and text, 286 Unit property, 598 UnlockServer method, 452 unused report, 337 UnusedGates property, 484 updates checking for new, 41 updating, 234 off-page from library, 234 pins from library, 235, 236, 237, 238, 239, 249 user fields, 223
V
V1... V9, 894
1000
W
W, 902 While, 723
PADS Logic Users Guide, PADS 9.2
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
While Wend statement, 723 While...Wend statement, 723 WIDTH, 903 Width #, 753 Width # statement, 724 Width property, 624 wildcards and expressions, 153 work area and grid settings, 125
X
Xor operator, 701
Y
YMAX, 904
Z
zoom operations, 51 controlling the view, 51 using the numeric keypad, 48
1001
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
1002
Third-Party Information
This section provides information on open source and third-party software that may be included in the PADS Logic product. This software application may include JPEG Image Compression version 6b third-party software, which is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. JPEG Image Compression version 6b may be subject to the following copyrights: 1991-1998, Thomas G. Lane. All Rights Reserved. In plain English: 1. We don't promise that this software works. (But if you find any bugs, please let us know!) 2. You can use this software for whatever you want. You don't have to pay us. 3. You may not pretend that you wrote this software. If you use it in a program, you must acknowledge somewhere in your documentation that you've used the IJG code. In legalese: The authors make NO WARRANTY or representation, either express or implied, with respect to this software, its quality, accuracy, merchantability, or fitness for a particular purpose. This software is provided "AS IS", and you, its user, assume the entire risk as to its quality and accuracy. This software is copyright 1991-1998, Thomas G. Lane. All Rights Reserved except as specified below. Permission is hereby granted to use, copy, modify, and distribute this software (or portions thereof) for any purpose, without fee, subject to these conditions: (1) If any part of the source code for this software is distributed, then this README file must be included, with this copyright and no-warranty notice unaltered; and any additions, deletions, or changes to the original files must be clearly indicated in accompanying documentation. (2) If only executable code is distributed, then the accompanying documentation must state that "this software is based in part on the work of the Independent JPEG Group". (3) Permission for use of this software is granted only if the user accepts full responsibility for any undesirable consequences; the authors accept NO LIABILITY for damages of any kind. These conditions apply to any software derived from or based on the IJG code, not just to the unmodified library. If you use our work, you ought to acknowledge us. Permission is NOT granted for the use of any IJG author's name or company name in advertising or publicity relating to this software or products derived from it. This software may be referred to only as "the Independent JPEG Group's software". We specifically permit and encourage the use of this software as the basis of commercial products, provided that all warranty or liability claims are assumed by the product vendor. 1991 by the Massachusetts Institute of Technology Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of M.I.T. not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. M.I.T. makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. This software application may include Boost version 1.38.0 third-party software. Boost version 1.38.0 is distributed under the terms of the Boost Software License version 1.0 and is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the license for the specific language governingrights and limitations under the license. You can view a copy of the license at: <install_folder>/docs/legal/ boost_1.0.pdf. Portions of this software may be subject to the Boost Artistic License. You can view a copy of the Boost Artistic License at: <install_folder>/docs/legal/ boost_artistic_2000.pdf. Boost version 1.38.0 may be subject to the following copyrights:
2002-2003, Trustees of Indiana University. 2000-2001, University of Notre Dame. All rights reserved. Indiana University has the exclusive rights to license this product under the following license. Software License, Version 1.0 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * All redistributions of source code must retain the above copyright notice, the list of authors in the original source code, this list of conditions and the disclaimer listed in this license; * All redistributions in binary form must reproduce the above copyright notice, this list of conditions and the disclaimer listed in this license in the documentation and/or other materials provided with the distribution; * Any documentation included with all redistributions must include the following acknowledgement: "This product includes software developed at the University of Notre Dame and the Pervasive Technology Labs at Indiana University. For technical information contact Andrew Lumsdaine at the Pervasive Technology Labs at Indiana University. For administrative and license questions contact the Advanced Research and Technology Institute at 351 West 10th Street. Indianapolis, Indiana 46202, phone 317-278-4100, fax 317-274-5902." Alternatively, this acknowledgement may appear in the software itself, and wherever such third-party acknowledgments normally appear. * The name Indiana University, the University of Notre Dame or "Caramel" shall not be used to endorse or promote products derived from this software without prior written permission from Indiana University. For written permission, please contact Indiana University Advanced Research & Technology Institute. * Products derived from this software may not be called "Caramel", nor may Indiana University, the University of Notre Dame or "Caramel" appear in their name, without prior written permission of Indiana University Advanced Research & Technology Institute. Indiana University provides no reassurances that the source code provided does not infringe the patent or any other intellectual property rights of any other entity. Indiana University disclaims any liability to any recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. LICENSEE UNDERSTANDS THAT SOFTWARE IS PROVIDED "AS IS" FOR WHICH NO WARRANTIES AS TO CAPABILITIES OR ACCURACY ARE MADE. INDIANA UNIVERSITY GIVES NO WARRANTIES AND MAKES NO REPRESENTATION THAT SOFTWARE IS FREE OF INFRINGEMENT OF THIRD PARTY PATENT, COPYRIGHT, OR OTHER PROPRIETARY RIGHTS. INDIANA UNIVERSITY MAKES NO WARRANTIES THAT SOFTWARE IS FREE FROM "BUGS", "VIRUSES", "TROJAN HORSES", "TRAP DOORS", "WORMS", OR OTHER HARMFUL CODE. LICENSEE ASSUMES THE ENTIRE RISK AS TO THE PERFORMANCE OF SOFTWARE AND/OR ASSOCIATED MATERIALS, AND TO THE PERFORMANCE AND VALIDITY OF INFORMATION GENERATED USING SOFTWARE. 2001-2003 William E. Kempf Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. William E. Kempf makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. 1994, 2002 Hewlett-Packard Company Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. Hewlett-Packard Company makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.
1996, 1997, 1998, 1999 Silicon Graphics Computer Systems, Inc. Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. Silicon Graphics makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. The Loki Library 2001 by Andrei Alexandrescu This code accompanies the book: Alexandrescu, Andrei. "Modern C++ Design: Generic Programming and Design Patterns Applied". 2001. Addison-Wesley Permission to use, copy, modify, distribute and sell this software for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. The author or Addison-Welsey Longman make no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. 2002-2003 David Moore, William E. Kempf Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. William E. Kempf makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. 2001 Ronald Garcia Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appears in all copies and that both that copyright notice and this permission notice appear in supporting documentation. Ronald Garcia makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. 2001 Jeremy Siek Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appears in all copies and that both that copyright notice and this permission notice appear in supporting documentation. Silicon Graphics makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. 2002 CrystalClear Software, Inc. Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. CrystalClear Software makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. 1998, 2002-2006 Kiyoshi Matsui <[email protected]> All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 2000 Jeremy Siek, Lie-Quan Lee, and Andrew Lumsdaine Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appears in all copies and that both that copyright notice and this permission notice appear in supporting documentation. We make no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. 2005 JongSoo Park Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appears in all copies and that both that copyright notice and this permission notice appear in supporting documentation. Jeremy Siek makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. 2006 Michael Drexl Permission to use, copy, modify, and distribute this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appears in all copies and that both that copyright notice and this permission notice appear in supporting documentation. Michael Drexl makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. 1991 Massachusetts Institute of Technology Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of M.I.T. not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. M.I.T. makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. 2001, 2002 Indiana University 2000, 2001 University of Notre Dame du Lac 2000 Jeremy Siek, Lie-Quan Lee, Andrew Lumsdaine 1996-1999 Silicon Graphics Computer Systems, Inc. 1994 Hewlett-Packard Company This product includes software developed at the University of Notre Dame and the Pervasive Technology Labs at Indiana University. For technical information contact Andrew Lumsdaine at the Pervasive Technology Labs at Indiana University. For administrative and license questions contact the Advanced Research and Technology Institute at 351 West 10th Street. Indianapolis, Indiana 46202, phone 317-278-4100, fax 317-274-5902. Some concepts based on versions from the MTL draft manual and Boost Graph and Property Map documentation, the SGI Standard Template Library documentation and the Hewlett-Packard STL, under the following license: Permission to use, copy, modify, distribute and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appears in all copies and that both that copyright notice and this permission notice appear in supporting documentation. Silicon Graphics makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. Fri Aug 15 16:29:47 EDT 1997 Harwell-Boeing File I/O in C V. 1.0 National Institute of Standards and Technology, MD. K.A. Remington NOTICE Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted provided that the above copyright notice appear in all copies and that both the copyright notice and this permission notice appear in supporting documentation.
Neither the Author nor the Institution (National Institute of Standards and Technology) make any representations about the suitability of this software for any purpose. This software is provided "as is" without expressed or implied warranty. This software application may include ActivePerl version 5.8.8.822 (ActivePerl) third-party software. ActivePerl is subject to the terms of the ActivePerl Community License, version 2.1 and is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the license for the specific language governing rights and limitations under the license. You can view a copy of the license at: <your_Mentor_Graphics_documentation_directory>/legal/activeperl_community_ 2.1.pdf. Portions of this software may be subject to either (1) the GNU General Public License v 2.1 or later, (2) the Perl Artistic License, 1997, or (3) the Perl Artistic License 2.0, at our election. In all instances, we elect the Perl Artistic License option, either the 1997 version, or the 2.0 version, as allowed by the individual copyright holders. Portions of this software may be subject to the Perl Artistic License, 1997. You can view a copy of this License at: <your_Mentor_Graphics_documentation_directory>/legal/ perl_artistic_1997.pdf. Portions of this software may be subject to the Perl Artistic License 2.0. You can view a copy of this License at: <your_Mentor_Graphics_documentation_directory>/legal/ perl_artistic_2.0.pdf. ActivePerl may be subject to the following copyrights: 1989, 1993 The Regents of the University of California. All rights reserved. This code is derived from software contributed to Berkeley by Guido van Rossum. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 1987 by Digital Equipment Corporation, Maynard, Massachusetts, and the Massachusetts Institute of Technology, Cambridge, Massachusetts. All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the names of Digital or MIT not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 1985, 1986, 1987, 1989, 1991 by the Massachusetts Institute of Technology Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this
permission notice appear in supporting documentation, and that the name of M.I.T. not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. M.I.T. makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.
END-USER LICENSE AGREEMENT (Agreement) This is a legal agreement concerning the use of Software (as defined in Section 2) between the company acquiring the license (Customer), and the Mentor Graphics entity that issued the corresponding quotation or, if no quotation was issued, the applicable local Mentor Graphics entity (Mentor Graphics). Except for license agreements related to the subject matter of this license agreement which are physically signed by Customer and an authorized representative of Mentor Graphics, this Agreement and the applicable quotation contain the parties' entire understanding relating to the subject matter and supersede all prior or contemporaneous agreements. If Customer does not agree to these terms and conditions, promptly return or, if received electronically, certify destruction of Software and all accompanying items within five days after receipt of Software and receive a full refund of any license fee paid.
1. ORDERS, FEES AND PAYMENT. 1.1. To the extent Customer (or if and as agreed by Mentor Graphics, Customers appointed third party buying agent) places and Mentor Graphics accepts purchase orders pursuant to this Agreement (Order(s)), each Order will constitute a contract between Customer and Mentor Graphics, which shall be governed solely and exclusively by the terms and conditions of this Agreement, any applicable addenda and the applicable quotation, whether or not these documents are referenced on the Order. Any additional or conflicting terms and conditions appearing on an Order will not be effective unless agreed in writing by an authorized representative of Customer and Mentor Graphics. 1.2. Amounts invoiced will be paid, in the currency specified on the applicable invoice, within 30 days from the date of such invoice. Any past due invoices will be subject to the imposition of interest charges in the amount of one and one-half percent per month or the applicable legal rate currently in effect, whichever is lower. Prices do not include freight, insurance, customs duties, taxes or other similar charges, which Mentor Graphics will invoice separately. Unless provided with a certificate of exemption, Mentor Graphics will invoice Customer for all applicable taxes. Customer will make all payments free and clear of, and without reduction for, any withholding or other taxes; any such taxes imposed on payments by Customer hereunder will be Customers sole responsibility. Notwithstanding anything to the contrary, if Customer appoints a third party to place purchase orders and/or make payments on Customers behalf, Customer shall be liable for payment under such orders in the event of default by the third party. 1.3. All products are delivered FCA factory (Incoterms 2000) except Software delivered electronically, which shall be deemed delivered when made available to Customer for download. Mentor Graphics retains a security interest in all products delivered under this Agreement, to secure payment of the purchase price of such products, and Customer agrees to sign any documents that Mentor Graphics determines to be necessary or convenient for use in filing or perfecting such security interest. Mentor Graphics delivery of Software by electronic means is subject to Customers provision of both a primary and an alternate e-mail address. 2. GRANT OF LICENSE. The software installed, downloaded, or otherwise acquired by Customer under this Agreement, including any updates, modifications, revisions, copies, documentation and design data (Software) are copyrighted, trade secret and confidential information of Mentor Graphics or its licensors, who maintain exclusive title to all Software and retain all rights not expressly granted by this Agreement. Mentor Graphics grants to Customer, subject to payment of applicable license fees, a nontransferable, nonexclusive license to use Software solely: (a) in machine-readable, object-code form; (b) for Customers internal business purposes; (c) for the term; and (d) on the computer hardware and at the site authorized by Mentor Graphics. A site is restricted to a one-half mile (800 meter) radius. Customer may have Software temporarily used by an employee for telecommuting purposes from locations other than a Customer office, such as the employee's residence, an airport or hotel, provided that such employee's primary place of employment is the site where the Software is authorized for use. Mentor Graphics standard policies and programs, which vary depending on Software, license fees paid or services purchased, apply to the following: (a) relocation of Software; (b) use of Software, which may be limited, for example, to execution of a single session by a single user on the authorized hardware or for a restricted period of time (such limitations may be technically implemented through the use of authorization codes or similar devices); and (c) support services provided, including eligibility to receive telephone support, updates, modifications, and revisions. For the avoidance of doubt, if Customer requests any change or enhancement to Software, whether in the course of receiving support or consulting services, evaluating Software or
otherwise, any inventions, product improvements, modifications or developments made by Mentor Graphics (at Mentor Graphics sole discretion) will be the exclusive property of Mentor Graphics. 3. ESC SOFTWARE. If Customer purchases a license to use development or prototyping tools of Mentor Graphics Embedded Software Channel (ESC), Mentor Graphics grants to Customer a nontransferable, nonexclusive license to reproduce and distribute executable files created using ESC compilers, including the ESC run-time libraries distributed with ESC C and C++ compiler Software that are linked into a composite program as an integral part of Customers compiled computer program, provided that Customer distributes these files only in conjunction with Customers compiled computer program. Mentor Graphics does NOT grant Customer any right to duplicate, incorporate or embed copies of Mentor Graphics real-time operating systems or other embedded software products into Customers products or applications without first signing or otherwise agreeing to a separate agreement with Mentor Graphics for such purpose. BETA CODE. 4.1. Portions or all of certain Software may contain code for experimental testing and evaluation (Beta Code), which may not be used without Mentor Graphics explicit authorization. Upon Mentor Graphics authorization, Mentor Graphics grants to Customer a temporary, nontransferable, nonexclusive license for experimental use to test and evaluate the Beta Code without charge for a limited period of time specified by Mentor Graphics. This grant and Customers use of the Beta Code shall not be construed as marketing or offering to sell a license to the Beta Code, which Mentor Graphics may choose not to release commercially in any form. 4.2. If Mentor Graphics authorizes Customer to use the Beta Code, Customer agrees to evaluate and test the Beta Code under normal conditions as directed by Mentor Graphics. Customer will contact Mentor Graphics periodically during Customers use of the Beta Code to discuss any malfunctions or suggested improvements. Upon completion of Customers evaluation and testing, Customer will send to Mentor Graphics a written evaluation of the Beta Code, including its strengths, weaknesses and recommended improvements. 4.3. Customer agrees that any written evaluations and all inventions, product improvements, modifications or developments that Mentor Graphics conceived or made during or subsequent to this Agreement, including those based partly or wholly on Customers feedback, will be the exclusive property of Mentor Graphics. Mentor Graphics will have exclusive rights, title and interest in all such property. The provisions of this Subsection 4.3 shall survive termination of this Agreement. 5. RESTRICTIONS ON USE. 5.1. Customer may copy Software only as reasonably necessary to support the authorized use. Each copy must include all notices and legends embedded in Software and affixed to its medium and container as received from Mentor Graphics. All copies shall remain the property of Mentor Graphics or its licensors. Customer shall maintain a record of the number and primary location of all copies of Software, including copies merged with other software, and shall make those records available to Mentor Graphics upon request. Customer shall not make Software available in any form to any person other than Customers employees and on-site contractors, excluding Mentor Graphics competitors, whose job performance requires access and who are under obligations of confidentiality. Customer shall take appropriate action to protect the confidentiality of Software and ensure that any person permitted access does not disclose or use it except as permitted by this Agreement. Log files, data files, rule files and script files generated by or for the Software (collectively Files) constitute and/or include confidential information of Mentor Graphics. Customer may share Files with third parties excluding Mentor Graphics competitors provided that the confidentiality of such Files is protected by written agreement at least as well as Customer protects other information of a similar nature or importance, but in any case with at least reasonable care. Standard Verification Rule Format (SVRF) and Tcl Verification Format (TVF) mean Mentor Graphics proprietary syntaxes for expressing process rules. Customer may use Files containing SVRF or TVF only with Mentor Graphics products. Under no circumstances shall Customer use Software or allow its use for the purpose of developing, enhancing or marketing any product that is in any way competitive with Software, or disclose to any third party the results of, or information pertaining to, any benchmark. Except as otherwise permitted for purposes of interoperability as specified by applicable and mandatory local law, Customer shall not reverse-assemble, reverse-compile, reverseengineer or in any way derive from Software any source code. 5.2. Customer may not sublicense, assign or otherwise transfer Software, this Agreement or the rights under it, whether by operation of law or otherwise (attempted transfer), without Mentor Graphics prior written consent and payment of Mentor Graphics then-current applicable transfer charges. Any attempted transfer without Mentor Graphics prior written consent shall be a material breach of this Agreement and may, at Mentor Graphics option, result in the immediate termination of the Agreement and licenses granted under this Agreement. The terms of this Agreement, including without limitation the licensing and assignment provisions, shall be binding upon Customers permitted successors in interest and assigns. 5.3. The provisions of this Section 5 shall survive the termination of this Agreement. 6. SUPPORT SERVICES. To the extent Customer purchases support services for Software, Mentor Graphics will provide Customer with available updates and technical support for the Software which are made generally available by Mentor Graphics as part of such services in accordance with Mentor Graphics then current End-User Software Support Terms located at http://supportnet.mentor.com/about/legal/.
4.
7.
LIMITED WARRANTY. 7.1. Mentor Graphics warrants that during the warranty period its standard, generally supported Software, when properly installed, will substantially conform to the functional specifications set forth in the applicable user manual. Mentor Graphics does not warrant that Software will meet Customers requirements or that operation of Software will be uninterrupted or error free. The warranty period is 90 days starting on the 15th day after delivery or upon installation, whichever first occurs. Customer must notify Mentor Graphics in writing of any nonconformity within the warranty period. For the avoidance of doubt, this warranty applies only to the initial shipment of Software under the applicable Order and does not renew or reset, by way of example, with the delivery of (a) Software updates or (b) authorization codes or alternate Software under a transaction involving Software re-mix. This warranty shall not be valid if Software has been subject to misuse, unauthorized modification or improper installation. MENTOR GRAPHICS ENTIRE LIABILITY AND CUSTOMERS EXCLUSIVE REMEDY SHALL BE, AT MENTOR GRAPHICS OPTION, EITHER (A) REFUND OF THE PRICE PAID UPON RETURN OF SOFTWARE TO MENTOR GRAPHICS OR (B) MODIFICATION OR REPLACEMENT OF SOFTWARE THAT DOES NOT MEET THIS LIMITED WARRANTY, PROVIDED CUSTOMER HAS OTHERWISE COMPLIED WITH THIS AGREEMENT. MENTOR GRAPHICS MAKES NO WARRANTIES WITH RESPECT TO: (A) SERVICES; (B) SOFTWARE WHICH IS LICENSED AT NO COST; OR (C) BETA CODE; ALL OF WHICH ARE PROVIDED AS IS. 7.2. THE WARRANTIES SET FORTH IN THIS SECTION 7 ARE EXCLUSIVE. NEITHER MENTOR GRAPHICS NOR ITS LICENSORS MAKE ANY OTHER WARRANTIES EXPRESS, IMPLIED OR STATUTORY, WITH RESPECT TO SOFTWARE OR OTHER MATERIAL PROVIDED UNDER THIS AGREEMENT. MENTOR GRAPHICS AND ITS LICENSORS SPECIFICALLY DISCLAIM ALL IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT OF INTELLECTUAL PROPERTY.
8.
LIMITATION OF LIABILITY. EXCEPT WHERE THIS EXCLUSION OR RESTRICTION OF LIABILITY WOULD BE VOID OR INEFFECTIVE UNDER APPLICABLE LAW, IN NO EVENT SHALL MENTOR GRAPHICS OR ITS LICENSORS BE LIABLE FOR INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES (INCLUDING LOST PROFITS OR SAVINGS) WHETHER BASED ON CONTRACT, TORT OR ANY OTHER LEGAL THEORY, EVEN IF MENTOR GRAPHICS OR ITS LICENSORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN NO EVENT SHALL MENTOR GRAPHICS OR ITS LICENSORS LIABILITY UNDER THIS AGREEMENT EXCEED THE AMOUNT PAID BY CUSTOMER FOR THE SOFTWARE OR SERVICE GIVING RISE TO THE CLAIM. IN THE CASE WHERE NO AMOUNT WAS PAID, MENTOR GRAPHICS AND ITS LICENSORS SHALL HAVE NO LIABILITY FOR ANY DAMAGES WHATSOEVER. THE PROVISIONS OF THIS SECTION 8 SHALL SURVIVE THE TERMINATION OF THIS AGREEMENT. LIFE ENDANGERING APPLICATIONS. NEITHER MENTOR GRAPHICS NOR ITS LICENSORS SHALL BE LIABLE FOR ANY DAMAGES RESULTING FROM OR IN CONNECTION WITH THE USE OF SOFTWARE IN ANY APPLICATION WHERE THE FAILURE OR INACCURACY OF THE SOFTWARE MIGHT RESULT IN DEATH OR PERSONAL INJURY. THE PROVISIONS OF THIS SECTION 9 SHALL SURVIVE THE TERMINATION OF THIS AGREEMENT.
9.
10. INDEMNIFICATION. CUSTOMER AGREES TO INDEMNIFY AND HOLD HARMLESS MENTOR GRAPHICS AND ITS LICENSORS FROM ANY CLAIMS, LOSS, COST, DAMAGE, EXPENSE OR LIABILITY, INCLUDING ATTORNEYS FEES, ARISING OUT OF OR IN CONNECTION WITH CUSTOMERS USE OF SOFTWARE AS DESCRIBED IN SECTION 9. THE PROVISIONS OF THIS SECTION 10 SHALL SURVIVE THE TERMINATION OF THIS AGREEMENT. 11. INFRINGEMENT. 11.1. Mentor Graphics will defend or settle, at its option and expense, any action brought against Customer in the United States, Canada, Japan, or member state of the European Union which alleges that any standard, generally supported Software product infringes a patent or copyright or misappropriates a trade secret in such jurisdiction. Mentor Graphics will pay any costs and damages finally awarded against Customer that are attributable to the action. Customer understands and agrees that as conditions to Mentor Graphics obligations under this section Customer must: (a) notify Mentor Graphics promptly in writing of the action; (b) provide Mentor Graphics all reasonable information and assistance to settle or defend the action; and (c) grant Mentor Graphics sole authority and control of the defense or settlement of the action. 11.2. If a claim is made under Subsection 11.1 Mentor Graphics may, at its option and expense, (a) replace or modify Software so that it becomes noninfringing, or (b) procure for Customer the right to continue using Software, or (c) require the return of Software and refund to Customer any license fee paid, less a reasonable allowance for use. 11.3. Mentor Graphics has no liability to Customer if the claim is based upon: (a) the combination of Software with any product not furnished by Mentor Graphics; (b) the modification of Software other than by Mentor Graphics; (c) the use of other than a current unaltered release of Software; (d) the use of Software as part of an infringing process; (e) a product that Customer makes, uses, or sells; (f) any Beta Code; (g) any Software provided by Mentor Graphics licensors who do not provide such indemnification to Mentor Graphics customers; or (h) infringement by Customer that is deemed willful. In the case of (h), Customer shall reimburse Mentor Graphics for its reasonable attorney fees and other costs related to the action. 11.4. THIS SECTION IS SUBJECT TO SECTION 8 ABOVE AND STATES THE ENTIRE LIABILITY OF MENTOR GRAPHICS AND ITS LICENSORS AND CUSTOMERS SOLE AND EXCLUSIVE REMEDY WITH RESPECT TO ANY ALLEGED PATENT OR COPYRIGHT INFRINGEMENT OR TRADE SECRET MISAPPROPRIATION BY ANY SOFTWARE LICENSED UNDER THIS AGREEMENT.
12. TERM. 12.1. This Agreement remains effective until expiration or termination. This Agreement will immediately terminate upon notice if you exceed the scope of license granted or otherwise fail to comply with the provisions of Sections 2, 3, or 5. For any other material breach under this Agreement, Mentor Graphics may terminate this Agreement upon 30 days written notice if you are in material breach and fail to cure such breach within the 30 day notice period. If a Software license was provided for limited term use, such license will automatically terminate at the end of the authorized term. 12.2. Mentor Graphics may terminate this Agreement immediately upon notice in the event Customer is insolvent or subject to a petition for (a) the appointment of an administrator, receiver or similar appointee; or (b) winding up, dissolution or bankruptcy. 12.3. Upon termination of this Agreement or any Software license under this Agreement, Customer shall ensure that all use of the affected Software ceases, and shall return it to Mentor Graphics or certify its deletion and destruction, including all copies, to Mentor Graphics reasonable satisfaction. 12.4. Termination of this Agreement or any Software license granted hereunder will not affect Customers obligation to pay for products shipped or licenses granted prior to the termination, which amounts shall immediately be payable at the date of termination. 13. EXPORT. Software is subject to regulation by local laws and United States government agencies, which prohibit export or diversion of certain products, information about the products, and direct products of the products to certain countries and certain persons. Customer agrees that it will not export Software or a direct product of Software in any manner without first obtaining all necessary approval from appropriate local and United States government agencies. 14. U.S. GOVERNMENT LICENSE RIGHTS. Software was developed entirely at private expense. All Software is commercial computer software within the meaning of the applicable acquisition regulations. Accordingly, pursuant to US FAR 48 CFR 12.212 and DFAR 48 CFR 227.7202, use, duplication and disclosure of the Software by or for the U.S. Government or a U.S. Government subcontractor is subject solely to the terms and conditions set forth in this Agreement, except for provisions which are contrary to applicable mandatory federal laws. 15. THIRD PARTY BENEFICIARY. Mentor Graphics Corporation, Mentor Graphics (Ireland) Limited, Microsoft Corporation and other licensors may be third party beneficiaries of this Agreement with the right to enforce the obligations set forth herein. 16. REVIEW OF LICENSE USAGE. Customer will monitor the access to and use of Software. With prior written notice and during Customers normal business hours, Mentor Graphics may engage an internationally recognized accounting firm to review Customers software monitoring system and records deemed relevant by the internationally recognized accounting firm to confirm Customers compliance with the terms of this Agreement or U.S. or other local export laws. Such review may include FLEXlm or FLEXnet (or successor product) report log files that Customer shall capture and provide at Mentor Graphics request. Customer shall make records available in electronic format and shall fully cooperate with data gathering to support the license review. Mentor Graphics shall bear the expense of any such review unless a material non-compliance is revealed. Mentor Graphics shall treat as confidential information all information gained as a result of any request or review and shall only use or disclose such information as required by law or to enforce its rights under this Agreement. The provisions of this section shall survive the termination of this Agreement. 17. CONTROLLING LAW, JURISDICTION AND DISPUTE RESOLUTION. The owners of the Mentor Graphics intellectual property rights licensed under this Agreement are located in Ireland and the United States. To promote consistency around the world, disputes shall be resolved as follows: This Agreement shall be governed by and construed under the laws of the State of Oregon, USA, if Customer is located in North or South America, and the laws of Ireland if Customer is located outside of North or South America. All disputes arising out of or in relation to this Agreement shall be submitted to the exclusive jurisdiction of Portland, Oregon when the laws of Oregon apply, or Dublin, Ireland when the laws of Ireland apply. Notwithstanding the foregoing, all disputes in Asia (except for Japan) arising out of or in relation to this Agreement shall be resolved by arbitration in Singapore before a single arbitrator to be appointed by the Chairman of the Singapore International Arbitration Centre (SIAC) to be conducted in the English language, in accordance with the Arbitration Rules of the SIAC in effect at the time of the dispute, which rules are deemed to be incorporated by reference in this section. This section shall not restrict Mentor Graphics right to bring an action against Customer in the jurisdiction where Customers place of business is located. The United Nations Convention on Contracts for the International Sale of Goods does not apply to this Agreement. 18. SEVERABILITY. If any provision of this Agreement is held by a court of competent jurisdiction to be void, invalid, unenforceable or illegal, such provision shall be severed from this Agreement and the remaining provisions will remain in full force and effect. 19. MISCELLANEOUS. This Agreement contains the parties entire understanding relating to its subject matter and supersedes all prior or contemporaneous agreements, including but not limited to any purchase order terms and conditions. Some Software may contain code distributed under a third party license agreement that may provide additional rights to Customer. Please see the applicable Software documentation for details. This Agreement may only be modified in writing by authorized representatives of the parties. All notices required or authorized under this Agreement must be in writing and shall be sent to the person who signs this Agreement, at the address specified below. Waiver of terms or excuse of breach must be in writing and shall not constitute subsequent consent, waiver or excuse. Rev. 090402, Part No. 239301