Verilog Quickstart: A Practical Guide to Simulation and Synthesis in Verilog, 3rd Edition

Chapters 2 and 3 briefly introduced the built-in primitives. This appendix will briefly describe each of the built-in primitives and the options when instantiating them. The delay and strength options for primitive instances will be explained.
The and primitive can have two or more inputs, and has one output. When all of the inputs are "1" then the output is "1".
| 0 | 1 | x | z | |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 1 | x | x |
| x | 0 | x | x | x |
| z | 0 | x | x | x |
The nand primitive can have two or more inputs, and has one output. When all of the inputs are "1" then the output is "0".
| 0 | 1 | x | z | |
|---|---|---|---|---|
| 0 | 1 | 1 | 1 | 1 |
| 1 | 1 | 0 | x | x |
| x | 1 | x | x | x |
| z | 1 | x | x | x |
The or primitive can have two or more inputs, and has one output. When any of the inputs is "1" then the output is "1".
| 0 | 1 | x | z | |
|---|---|---|---|---|
| 0 | 0 | 1 | x | x |
| 1 | 1 | 1 | 1 | 1 |
| x | x | 1 | x | x |
| z | x | 1 | x | x |
The nor primitive can have two or more inputs, and has one output. When any...