Verilog HDL门时延
发布时间:2008/5/28 0:00:00 访问次数:1631
可以使用门时延定义门从任何输入到其输出的信号传输时延。门时延可以在门自身实例语句中定义。带有时延定义的门实例语句的语法如下:
gate_type [delay][instance_name](terminal_list);
时延规定了门时延,即从门的任意输入到输出的传输时延。当没有强调门时延时,缺省的时延值为0。
门时延由三类时延值组成:
1) 上升时延
2) 下降时延
3) 截止时延
门时延定义可以包含0个、1个、2个或3个时延值。下表为不同个数时延值说明条件下,各种具体的时延取值情形。
无时延 1个时延(d) 2个时延(d1, d2) 3个时延 (da, db, dc)
上升 0 d d1 da
下降 0 d d2 db
to_x 0 d min① (d1, d2) min (da, db, dc)
截止 0 d min (d1, d2) dc
① min 是minimum 的缩写词。
注意转换到x的时延(to_x)不但被显式地定义,还可以通过其它定义的值决定。
下面是一些具体实例。注意verilog hdl模型中的所有时延都以单位时间表示。单位时间与实际时间的关联可以通过`timescale编译器指令实现。在下面的实例中,
not n1 (qbar, q);
因为没有定义时延,门时延为0。下面的门实例中,
nand #6 (out, in1, in2);
所有时延均为6,即上升时延和下降时延都是6。因为输出决不会是高阻态,截止时延不适用于与非门。转换到x的时延也是6。
and #(3,5) (out, in1, in2, in3);
在这个实例中,上升时延被定义为3,下降时延为5,转换到x的时延是3和5中间的最小值,即3。在下面的实例中,
notif1 #(2,8,6) (dout, din1, din2);
上升时延为2,下降时延为8,截止时延为6,转换到x的时延是2、8和6中的最小值,即2。
对多输入门(例如与门和非门)和多输出门(缓冲门和非门)总共只能够定义2个时延(因为输出决不会是z)。三态门共有3个时延,并且上拉、下拉电阻实例门不能有任何时延。
min:typ:max时延形式
门延迟也可采用min:typ:max形式定义。形式如下:
minimum: typical: maximum
最小值、典型值和最大值必须是常数表达式。下面是在实例中使用这种形式的实例。
nand #(2:3:4, 5:6:7) (pout, pin1, pin2);
选择使用哪种时延通常作为模拟运行中的一个选项。例如,如果执行最大时延模拟,与非门单元使用上升时延4和下降时延7。
程序块也能够定义门时延。
gate_type [delay][instance_name](terminal_list);
时延规定了门时延,即从门的任意输入到输出的传输时延。当没有强调门时延时,缺省的时延值为0。
门时延由三类时延值组成:
1) 上升时延
2) 下降时延
3) 截止时延
门时延定义可以包含0个、1个、2个或3个时延值。下表为不同个数时延值说明条件下,各种具体的时延取值情形。
无时延 1个时延(d) 2个时延(d1, d2) 3个时延 (da, db, dc)
上升 0 d d1 da
下降 0 d d2 db
to_x 0 d min① (d1, d2) min (da, db, dc)
截止 0 d min (d1, d2) dc
① min 是minimum 的缩写词。
注意转换到x的时延(to_x)不但被显式地定义,还可以通过其它定义的值决定。
下面是一些具体实例。注意verilog hdl模型中的所有时延都以单位时间表示。单位时间与实际时间的关联可以通过`timescale编译器指令实现。在下面的实例中,
not n1 (qbar, q);
因为没有定义时延,门时延为0。下面的门实例中,
nand #6 (out, in1, in2);
所有时延均为6,即上升时延和下降时延都是6。因为输出决不会是高阻态,截止时延不适用于与非门。转换到x的时延也是6。
and #(3,5) (out, in1, in2, in3);
在这个实例中,上升时延被定义为3,下降时延为5,转换到x的时延是3和5中间的最小值,即3。在下面的实例中,
notif1 #(2,8,6) (dout, din1, din2);
上升时延为2,下降时延为8,截止时延为6,转换到x的时延是2、8和6中的最小值,即2。
对多输入门(例如与门和非门)和多输出门(缓冲门和非门)总共只能够定义2个时延(因为输出决不会是z)。三态门共有3个时延,并且上拉、下拉电阻实例门不能有任何时延。
min:typ:max时延形式
门延迟也可采用min:typ:max形式定义。形式如下:
minimum: typical: maximum
最小值、典型值和最大值必须是常数表达式。下面是在实例中使用这种形式的实例。
nand #(2:3:4, 5:6:7) (pout, pin1, pin2);
选择使用哪种时延通常作为模拟运行中的一个选项。例如,如果执行最大时延模拟,与非门单元使用上升时延4和下降时延7。
程序块也能够定义门时延。
可以使用门时延定义门从任何输入到其输出的信号传输时延。门时延可以在门自身实例语句中定义。带有时延定义的门实例语句的语法如下:
gate_type [delay][instance_name](terminal_list);
时延规定了门时延,即从门的任意输入到输出的传输时延。当没有强调门时延时,缺省的时延值为0。
门时延由三类时延值组成:
1) 上升时延
2) 下降时延
3) 截止时延
门时延定义可以包含0个、1个、2个或3个时延值。下表为不同个数时延值说明条件下,各种具体的时延取值情形。
无时延 1个时延(d) 2个时延(d1, d2) 3个时延 (da, db, dc)
上升 0 d d1 da
下降 0 d d2 db
to_x 0 d min① (d1, d2) min (da, db, dc)
截止 0 d min (d1, d2) dc
① min 是minimum 的缩写词。
注意转换到x的时延(to_x)不但被显式地定义,还可以通过其它定义的值决定。
下面是一些具体实例。注意verilog hdl模型中的所有时延都以单位时间表示。单位时间与实际时间的关联可以通过`timescale编译器指令实现。在下面的实例中,
not n1 (qbar, q);
因为没有定义时延,门时延为0。下面的门实例中,
nand #6 (out, in1, in2);
所有时延均为6,即上升时延和下降时延都是6。因为输出决不会是高阻态,截止时延不适用于与非门。转换到x的时延也是6。
and #(3,5) (out, in1, in2, in3);
在这个实例中,上升时延被定义为3,下降时延为5,转换到x的时延是3和5中间的最小值,即3。在下面的实例中,
notif1 #(2,8,6) (dout, din1, din2);
上升时延为2,下降时延为8,截止时延为6,转换到x的时延是2、8和6中的最小值,即2。
对多输入门(例如与门和非门)和多输出门(缓冲门和非门)总共只能够定义2个时延(因为输出决不会是z)。三态门共有3个时延,并且上拉、下拉电阻实例门不能有任何时延。
min:typ:max时延形式
门延迟也可采用min:typ:max形式定义。形式如下:
minimum: typical: maximum
最小值、典型值和最大值必须是常数表达式。下面是在实例中使用这种形式的实例。
nand #(2:3:4, 5:6:7) (pout, pin1, pin2);
选择使用哪种时延通常作为模拟运行中的一个选项。例如,如果执行最大时延模拟,与非门单元使用上升时延4和下降时延7。
程序块也能够定义门时延。
gate_type [delay][instance_name](terminal_list);
时延规定了门时延,即从门的任意输入到输出的传输时延。当没有强调门时延时,缺省的时延值为0。
门时延由三类时延值组成:
1) 上升时延
2) 下降时延
3) 截止时延
门时延定义可以包含0个、1个、2个或3个时延值。下表为不同个数时延值说明条件下,各种具体的时延取值情形。
无时延 1个时延(d) 2个时延(d1, d2) 3个时延 (da, db, dc)
上升 0 d d1 da
下降 0 d d2 db
to_x 0 d min① (d1, d2) min (da, db, dc)
截止 0 d min (d1, d2) dc
① min 是minimum 的缩写词。
注意转换到x的时延(to_x)不但被显式地定义,还可以通过其它定义的值决定。
下面是一些具体实例。注意verilog hdl模型中的所有时延都以单位时间表示。单位时间与实际时间的关联可以通过`timescale编译器指令实现。在下面的实例中,
not n1 (qbar, q);
因为没有定义时延,门时延为0。下面的门实例中,
nand #6 (out, in1, in2);
所有时延均为6,即上升时延和下降时延都是6。因为输出决不会是高阻态,截止时延不适用于与非门。转换到x的时延也是6。
and #(3,5) (out, in1, in2, in3);
在这个实例中,上升时延被定义为3,下降时延为5,转换到x的时延是3和5中间的最小值,即3。在下面的实例中,
notif1 #(2,8,6) (dout, din1, din2);
上升时延为2,下降时延为8,截止时延为6,转换到x的时延是2、8和6中的最小值,即2。
对多输入门(例如与门和非门)和多输出门(缓冲门和非门)总共只能够定义2个时延(因为输出决不会是z)。三态门共有3个时延,并且上拉、下拉电阻实例门不能有任何时延。
min:typ:max时延形式
门延迟也可采用min:typ:max形式定义。形式如下:
minimum: typical: maximum
最小值、典型值和最大值必须是常数表达式。下面是在实例中使用这种形式的实例。
nand #(2:3:4, 5:6:7) (pout, pin1, pin2);
选择使用哪种时延通常作为模拟运行中的一个选项。例如,如果执行最大时延模拟,与非门单元使用上升时延4和下降时延7。
程序块也能够定义门时延。
上一篇:Verilog HDL的三态门
上一篇:Verilog HDL实例数组