Example: biology

Verilog-2001 Quick Reference Guide - Sutherland HDL

ByStuart verilog HDLQ uick Reference Guidebased on the Verilog-2001 standard(IEEE Std 1364-2001)SutherlandHDLC opyright 2001, Sutherland HDL, Inc., all rights is granted by Sutherlaand HDL to download and/or printthe PDF document containing this Reference Guide for personal use only. The Reference guidemay not be used for commercial purposes or distributed in any form orby any means without obtaining express permission from HDLQ uick Reference Guidebased on the Verilog-2001 standard(IEEE Std 1364-2001)byStuart Sutherlandpublished bySutherland HDL, SW 92nd PlaceTualatin, OR 97062 (503) 1992, 1996, 2001 by Sutherland HDL, Inc.

Verilog HDL Quick Reference Guide 2 1.0 New Features In Verilog-2001 Verilog-2001, officially the “IEEE 1364-2001 Verilog Hardware Description Language”, adds several significant enhancements to the Verilog-1995 standard. • Attribute properties (page 4) • Generate blocks (page 21) • Configurations (page 43)

Tags:

  Language, Reference, Verilog

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Transcription of Verilog-2001 Quick Reference Guide - Sutherland HDL

1 ByStuart verilog HDLQ uick Reference Guidebased on the Verilog-2001 standard(IEEE Std 1364-2001)SutherlandHDLC opyright 2001, Sutherland HDL, Inc., all rights is granted by Sutherlaand HDL to download and/or printthe PDF document containing this Reference Guide for personal use only. The Reference guidemay not be used for commercial purposes or distributed in any form orby any means without obtaining express permission from HDLQ uick Reference Guidebased on the Verilog-2001 standard(IEEE Std 1364-2001)byStuart Sutherlandpublished bySutherland HDL, SW 92nd PlaceTualatin, OR 97062 (503) 1992, 1996, 2001 by Sutherland HDL, Inc.

2 09/2007 SutherlandHDLC opyright 1992, 1996, 2001 by Sutherland HDL, Inc. All rights reserved. No part of this book may be reproduced in any formor by any means without the express written permission of SutherlandHDL, HDL, SW 92nd PlaceTualatin, OR 97062-7225 Phone: (503) 692-0898 URL: : 1-930368-03-8 Ve r i l o g is a registered trademark of Cadence Design Systems,San Jose, HDL Quick Reference GuideTable of New Features In Verilog-2001 .. Reserved Keywords .. Concurrency .. Lexical Conventions .. Case Sensitivity .. White Space Characters.

3 Comments .. Attributes .. Identifiers (names) .. Hierarchical Path Names .. Hierarchy Scopes and Name Spaces .. Logic Values .. Logic Strengths .. Literal Real Numbers .. Literal Integer Numbers .. Module Definitions .. Module Items .. Port Declarations .. Data Type Declarations .. Net Data Types .. Variable Data Types .. Other Data Types .. Vector Bit Selects and Part Selects .. Array Selects .. Reading and Writing Arrays .. Module Instances .. Primitive Instances.

4 Generate Blocks .. Procedural Blocks .. Procedural Time Controls .. Sensitivity Lists .. Procedural Assignment Statements .. Procedural Programming Statements .. Continuous Assignments .. Operators .. Task Definitions .. Function Definitions .. Specify Blocks .. Pin-to-pin Path Delays .. Path Pulse (Glitch) Detection .. Timing Constraint Checks .. User Defined Primitives (UDPs) .. Common System Tasks and Functions .. Common Compiler Directives .. Configurations .. Synthesis Supported Constructs.

5 44 verilog HDL Quick Reference New Features In Verilog-2001 Verilog-2001 , officially the IEEE 1364-2001 verilog Hardware DescriptionLanguage , adds several significant enhancements to the verilog -1995 standard. Attribute properties (page 4) Generate blocks (page 21) Configurations (page 43) Combined port and data type declarations (page 8) ANSI C style port definitions (page 8) Arrays of net data types (page 11) Multidimensional arrays (page 11, 13) Variable initialization with declaration (page 13) Bit and part selects of array words (page 16) Indexed vector part selects (page 16) Explicit in-line parameter passing (page 17) Comma separated sensitive lists (page 24) Combinational logic sensitivity wild card (page 24)

6 Inferred nets with any continuous assignment (page 28) Power operator (page 29) Signed arithmetic extensions (page 7, 9, 11, 13, 29, 32, 38) ANSI C style task/function I/O definitions (page 31, 32) Re-entrant tasks (page 31) Recursive functions (page 32) Constant functions (page 32) On-detect pulse detection (page 34) Negative pulse detection (page 34) Negative timing constraints (page 35) New timing constraint checks (page 35) Enhanced file I/O (page 39) Enhanced testing of invocation options (page 39) Enhanced conditional compilation (page 41) Disabling of implicit net declarations (page 41)

7 Sutherland HDL, Reserved Keywordsalwaysandassignautomatic beginbufbufif0bufif1casecasexcasezcell cmosconfig deassigndefaultdefparamdesign disableedgeelseendendcaseendconfig endfunctionendgenerate endmoduleendprimitiveendspecifyendtablee ndtaskeventforforceforeverforkfunctionge nerate genvar highz0highz1ififnoneinitialinstance inoutinputintegerjoinlargeliblist localparam macromodulemediummodulenandnegedgenmosno rnotnoshowcancelled notif0notif1oroutputparameterpmosposedge primitivepull0pull1pulldownpulluppulsest yle_onevent pulsestyle_ondetect rcmosrealrealtimeregreleaserepeatrnmosrp mosrtranrtranif0rtranif1scalaredsignedsh owcancelled smallspecifyspecparamstrengthstrong0stro ng1supply0supply1tabletasktimetrantranif 0tranif1tritri0tri1triandtriortriregunsi gneduse vectoredwaitwandweak0weak1whilewireworxn orxor4 verilog HDL Quick Reference ConcurrencyThe following verilog HDL constructs are independent processes that areevaluated concurrently in simulation time.

8 Module instances primitive instances continuous assignments procedural Lexical Case SensitivityVerilog is case White Space Charactersblanks, tabs, newlines (carriage return), and Comments// begins a single line comment, terminated by a * begins a multi-line block comment, terminated by a */. Attributes(* begins an attribute, terminated by a *). An attribute specifies special properties of a verilog object or statement, foruse by specific software tools, such as synthesis. Attributes were added inVerilog-2001.

9 An attribute can appear as a prefix to a declaration, module items, statements,or port connections. An attribute can appear as a suffix to an operator or a call to a function. An attribute may be assigned a value. If no value is specified, the defaultvalue is 1. Multiple attributes can be specified as a comma-separated list. There are no standard attributes in the Verilog-2001 standard; Software toolsor other standards will define attributes as needed. Attribute Example(* full_case, parallel_case *) case (state) ..endcaseassign sum = a + (* CLA=1 *) b; indicates new reserved words that were added in the Verilog-2001 standard.

10 Sutherland HDL, Identifiers (names) Must begin with alphabetic or underscore characters a-z A-Z _ May contain the characters a-z A-Z 0-9 _ and $ May use any character by escaping with a backslash ( \ ) at the beginning ofthe identifier, and terminating with a white space. Identifiers created by an array of instances or a generate block may alsocontain the characters [ and ]. Hierarchical Path NamesA net, variable, task or function can be referenced anywhere in the designhierarchy using either a full or relative hierarchy path.


Related search queries