Shopping Cart

No products in the cart.

IEEE IEC 61691 4 2004

$224.79

IEC 61691-4 Ed.1 (IEEE Std 1364(TM)-2001): Behavioural Languages – Part 4: Verilog(C) Hardware Description Language

Published By Publication Date Number of Pages
IEEE 2004 862
Guaranteed Safe Checkout
Category:

If you have any questions, feel free to reach out to our online customer service team by clicking on the bottom right corner. We’re here to assist you 24/7.
Email:[email protected]

New IEEE Standard – Inactive – Withdrawn. The Verilog(R) Hardware Description Language (HDL) is defined in this standard. Verilog HDL is a formal notation intended for use in all phases of the creation of electronic systems. Because it is both machine readable and human readable, it supports the development, verification, synthesis, and testing of hardware designs; the communication of hardware design data; and the maintenance, modification, and procurement of hardware. The primary audiences for this standard are the implementors of tools supporting the language and advanced users of the language.

PDF Catalog

PDF Pages PDF Title
4 CONTENTS
21 Foreword
25 IEEE Introduction
27 1. Overview
1.1 Objectives of this standard
1.2 Conventions used in this standard
28 1.3 Syntactic description
1.4 Contents of this standard
30 1.5 Header file listings
31 1.6 Examples
1.7 Prerequisites
32 2. Lexical conventions
2.1 Lexical tokens
2.2 White space
2.3 Comments
2.4 Operators
2.5 Numbers
36 2.6 Strings
38 2.7 Identifiers, keywords, and system names
40 2.8 Attributes
46 3. Data types
3.1 Value set
3.2 Nets and variables
49 3.3 Vectors
50 3.4 Strengths
51 3.5 Implicit declarations
3.6 Net initialization
3.7 Net types
57 3.8 regs
3.9 Integers, reals, times, and realtimes
59 3.10 Arrays
60 3.11 Parameters
64 3.12 Name spaces
66 4. Expressions
4.1 Operators
78 4.2 Operands
83 4.3 Minimum, typical, and maximum delay expressions
85 4.4 Expression bit lengths
88 4.5 Signed expressions
90 5. Scheduling semantics
5.1 Execution of a model
5.2 Event simulation
5.3 The stratified event queue
91 5.4 The Verilog simulation reference model
92 5.5 Race conditions
5.6 Scheduling implication of assignments
95 6. Assignments
6.1 Continuous assignments
99 6.2 Procedural assignments
101 7. Gate and switch level modeling
7.1 Gate and switch declaration syntax
107 7.2 and, nand, nor, or, xor, and xnor gates
108 7.3 buf and not gates
109 7.4 bufif1, bufif0, notif1, and notif0 gates
110 7.5 MOS switches
112 7.6 Bidirectional pass switches
7.7 CMOS switches
113 7.8 pullup and pulldown sources
114 7.9 Logic strength modeling
115 7.10 Strengths and values of combined signals
128 7.11 Strength reduction by nonresistive devices
7.12 Strength reduction by resistive devices
7.13 Strengths of net types
129 7.14 Gate and net delays
133 8. User-defined primitives (UDPs)
8.1 UDP definition
137 8.2 Combinational UDPs
138 8.3 Level-sensitive sequential UDPs
8.4 Edge-sensitive sequential UDPs
139 8.5 Sequential UDP initialization
141 8.6 UDP instances
142 8.7 Mixing level-sensitive and edge-sensitive descriptions
143 8.8 Level-sensitive dominance
144 9. Behavioral modeling
9.1 Behavioral model overview
145 9.2 Procedural assignments
150 9.3 Procedural continuous assignments
153 9.4 Conditional statement
156 9.5 Case statement
160 9.6 Looping statements
162 9.7 Procedural timing controls
172 9.8 Block statements
175 9.9 Structured procedures
178 10. Tasks and functions
10.1 Distinctions between tasks and functions
10.2 Tasks and task enabling
183 10.3 Functions and function calling
189 11. Disabling of named blocks and tasks
192 12. Hierarchical structures
12.1 Modules
206 12.2 Overriding module parameter values
211 12.3 Ports
219 12.4 Hierarchical names
222 12.5 Upwards name referencing
224 12.6 Scope rules
226 13. Configuring the contents of a design
13.1 Introduction
227 13.2 Libraries
229 13.3 Configurations
233 13.4 Using libraries and configs
234 13.5 Configuration examples
236 13.6 Displaying library binding information
13.7 Library mapping examples
238 14. Specify blocks
14.1 Specify block declaration
239 14.2 Module path declarations
249 14.3 Assigning delays to module paths
253 14.4 Mixing module path delays and distributed delays
254 14.5 Driving wired logic
255 14.6 Detailed control of pulse filtering behavior
264 15. Timing checks
15.1 Overview
267 15.2 Timing checks using a stability window
275 15.3 Timing checks for clock and control signals
285 15.4 Edge-control specifiers
286 15.5 Notifiers: user-defined responses to timing violations
292 15.6 Enabling timing checks with conditioned events
293 15.7 Vector signals in timing checks
294 15.8 Negative timing checks
296 16. Backannotation using the Standard Delay Format (SDF)
16.1 The SDF annotator
16.2 Mapping of SDF constructs to Verilog
301 16.3 Multiple annotations
302 16.4 Multiple SDF files
16.5 Pulse limit annotation
303 16.6 SDF to Verilog delay value mapping
304 17. System tasks and functions
17.1 Display system tasks
313 17.2 File input-output system tasks and functions
324 17.3 Timescale system tasks
328 17.4 Simulation control system tasks
329 17.5 PLA modeling system tasks
333 17.6 Stochastic analysis tasks
335 17.7 Simulation time system functions
337 17.8 Conversion functions
338 17.9 Probabilistic distribution functions
347 17.10 Command line input
351 18. Value change dump (VCD) files
18.1 Creating the four state value change dump file
356 18.2 Format of the four state VCD file
366 18.3 Creating the extended value change dump file
370 18.4 Format of the extended VCD file
377 19. Compiler directives
19.1 `celldefine and `endcelldefine
19.2 `default_nettype
378 19.3 `define and `undef
380 19.4 `ifdef, `else, `elsif, `endif, `ifndef
384 19.5 `include
19.6 `resetall
385 19.7 `line
19.8 `timescale
387 19.9 `unconnected_drive and `nounconnected_drive
388 20. PLI overview
20.1 PLI purpose and history (informative)
20.2 User-defined system task or function names
389 20.3 User-defined system task or function types
20.4 Overriding built-in system task and function names
20.5 User-supplied PLI applications
20.6 PLI interface mechanism
390 20.7 User-defined system task and function arguments
20.8 PLI include files
20.9 PLI Memory Restrictions
391 21. PLI TF and ACC interface mechanism
21.1 User-supplied PLI applications
392 21.2 Associating PLI applications to a class and system task/function name
393 21.3 PLI application arguments
395 22. Using ACC routines
22.1 ACC routine definition
22.2 The handle data type
396 22.3 Using ACC routines
22.4 List of ACC routines by major category
402 22.5 Accessible objects
410 22.6 ACC routine types and fulltypes
413 22.7 Error handling
415 22.8 Reading and writing delay values
421 22.9 String handling
423 22.10 Using VCL ACC routines
430 23. ACC routine definitions
605 24. Using TF routines
24.1 TF routine definition
24.2 TF routine system task/function arguments
24.3 Reading and writing system task/function argument values
607 24.4 Value change detection
24.5 Simulation time
24.6 Simulation synchronization
608 24.7 Instances of user-defined tasks or functions
24.8 Module and scope instance names
24.9 Saving information from one system TF call to the next
24.10 Displaying output messages
24.11 Stopping and finishing
609 25. TF routine definitions
685 26. Using VPI routines
26.1 VPI system tasks and functions
26.2 The VPI interface
687 26.3 VPI object classifications
690 26.4 List of VPI routines by functional category
692 26.5 Key to data model diagrams
726 27. VPI routine definitions
787 Annex A (normative) Formal syntax definition
812 Annex B (normative) List of keywords
814 Annex C (informative) System tasks and functions
821 Annex D (informative) Compiler directives
823 Annex E (normative) acc_user.h
832 Annex F (normative) veriuser.h
840 Annex G (normative) vpi_user.h
854 Annex H (informative) Bibliography
855 Annex I (informative) List of Participants
IEEE IEC 61691 4 2004
$224.79