关键词:门延迟,D触发器门延迟类型前两节中所介绍的门级电路都是没有延迟的,实际门级电路都是有延迟的。Verilog中允许用户使用门延迟,来定义输入到其输出信号的传输延迟。门延迟类型主要有以下3种。上升延迟在门的输入发生变化时,门的输出从0,x,z变化为1所需要的转变时间,称为上升延迟。下降延迟在门的输入发生变化时,门的输出从1,x,z变化为0所需要的转变时间,称为下降延迟。关断延迟关断延迟是指门的输出从0,1,x变化为高阻态z所需要的转变时间。门输出从0,1,z变化到x所需要的转变时间并没有被明确的定义,但是它所需要的时间可以由其他延迟类型确定,即为以上3种延迟值中最小的那个延迟。门延迟可以在
关键词:门延迟,D触发器门延迟类型前两节中所介绍的门级电路都是没有延迟的,实际门级电路都是有延迟的。Verilog中允许用户使用门延迟,来定义输入到其输出信号的传输延迟。门延迟类型主要有以下3种。上升延迟在门的输入发生变化时,门的输出从0,x,z变化为1所需要的转变时间,称为上升延迟。下降延迟在门的输入发生变化时,门的输出从1,x,z变化为0所需要的转变时间,称为下降延迟。关断延迟关断延迟是指门的输出从0,1,x变化为高阻态z所需要的转变时间。门输出从0,1,z变化到x所需要的转变时间并没有被明确的定义,但是它所需要的时间可以由其他延迟类型确定,即为以上3种延迟值中最小的那个延迟。门延迟可以在
门级建模中介绍的内置门单元,例如and,or,nor等,均属于Verilog自带的一整套标准原语,即通常所说的内置原语。此外,Verilog还为用户提供了自己编写原语的能力,这种原语就是用户自定义原语(UserDefinedPrimitive,简称UDP)。在UDP中,不能调用其他module或primitive,调用方式和门级原语完全相同。UDP类型主要有以下2种,后面将逐一介绍。组合逻辑UDP:输出仅取决于输入信号的组合逻辑。时序逻辑UDP:下一个输出值不但取决于当前输入值,还取决于当前的内部状态。UDP定义UDP的定义不依赖于模块定义,因此可以出现在模块定义外,也可以单独在文件里定义。U
门级建模中介绍的内置门单元,例如and,or,nor等,均属于Verilog自带的一整套标准原语,即通常所说的内置原语。此外,Verilog还为用户提供了自己编写原语的能力,这种原语就是用户自定义原语(UserDefinedPrimitive,简称UDP)。在UDP中,不能调用其他module或primitive,调用方式和门级原语完全相同。UDP类型主要有以下2种,后面将逐一介绍。组合逻辑UDP:输出仅取决于输入信号的组合逻辑。时序逻辑UDP:下一个输出值不但取决于当前输入值,还取决于当前的内部状态。UDP定义UDP的定义不依赖于模块定义,因此可以出现在模块定义外,也可以单独在文件里定义。U
与非门实例组合逻辑UDP中,状态表规定了不同的输入组合和相对应的输出值,没有指定的任意组合输出值为x。一个简单的与非门UDP可以表示如下:primitivenand_my(out,a,b); output out; input a,b; table //a b : out; 0 0 : 1; 0 1 : 1; 1 0 : 1; 1 1 : 0; endtableendprimitive如上一节所阐述,端口列表和声明部分可以改为:primitivenand_my( output out,
与非门实例组合逻辑UDP中,状态表规定了不同的输入组合和相对应的输出值,没有指定的任意组合输出值为x。一个简单的与非门UDP可以表示如下:primitivenand_my(out,a,b); output out; input a,b; table //a b : out; 0 0 : 1; 0 1 : 1; 1 0 : 1; 1 1 : 0; endtableendprimitive如上一节所阐述,端口列表和声明部分可以改为:primitivenand_my( output out,