Built-in Primitives
正式定义
内置原语提供了一种门和开关建模方法。
简化语法
对于and、nand、 or、nor、 xor、xnor、 buf、not
门(drive_strength)#(2delays)instance_name[range](list_of_ports);
对于bufif0、bufif1、 notif0、notif1
gate (drive_strength) #(3delays) instance_name[range] (list_of_ports);
对于nmos、pmos、 rnmos、rpmos、 cmos、rcmos、 rtranif0、rtranif1、 tranif0、tranif1
门#(3delays) instance_name[range] (list_of_ports);
对于tran , rtran
门 instance_name[范围] (list_of_ports);
pullup (pullup_strength) instance_name[range] (list_of_ports);
pulldown (pulldown_strength) instance_name[range] (list_of_ports);
描述
门或开关声明以确定门或开关类型的关键字开头,后跟强度和延迟声明、实例名称、范围以及到门或开关端口的连接列表。强度和延迟声明是可选的。实例的名称和范围也是可选的。各个门类型的实例化并不相同。
and, nand, or, nor, xor, xnor门
这些逻辑门(示例 1)的实例化可以包含零个、一个或两个延迟。强度声明应包含两个指定的强度 - strength1 和strength0(有关更多说明,请参阅强度 )。
这些门有一个输出和一个或多个输入。端口列表中的第一个端口是输出端口。
和 | 0 | 1个 | X | z |
0 | 0 | 0 | 0 | 0 |
1个 | 0 | 1个 | X | X |
X | 0 | X | X | X |
z | 0 | X | X | X |
与非 | 0 | 1个 | X | z |
0 | 1个 | 1个 | 1个 | 1个 |
1个 | 1个 | 0 | X | X |
X | 1个 | X | X | X |
z | 1个 | X | X | X |
表 1 逻辑门的真值表
buf 而不是门
这些逻辑门的实例化(示例 2)可以包含零个、一个或两个延迟。强度声明应包含两个指定的强度 - strength1 和strength0(有关更多说明,请参阅强度)。
这些门有一个输入和一个或多个输出。端口列表中的最后一个端口是输入端口。