📅  最后修改于: 2021-01-11 14:58:32             🧑  作者: Mango
建模的开关级别提供了逻辑和模拟晶体管抽象级别之间的抽象级别。它描述了传输门的互连,传输门是各个MOS和CMOS晶体管的抽象。
开关级晶体管被建模为导通或截止,导通或不导通。互连所承载的值从模拟电压或电流的整个范围抽象为少量离散值。这些值称为信号强度。
Verilog还提供对晶体管级建模的支持。但是,由于电路的复杂性要求设计人员转移到更高的抽象级别,而不是使用开关级别的建模,因此设计人员很少使用这些天。
通常,使用具有模拟输入和输出信号值的晶体管模型在硬件结构中将晶体管级建模称为模型。
另一方面,门级建模是指对这两种建模方案之间具有数字输入和输出信号值的机翼门模型进行硬件结构建模,称为开关级建模。
晶体管仅表现出数字行为,并且其输入处于晶体管级,并且输出信号值仅限于数字值。
Verilog使用4值逻辑值系统,因此Verilog开关输入和输出信号可以采用4个0、1,Z和X逻辑值中的任何一个。
对于每个组,开关是单向或双向的,并且是电阻性或非电阻性的,那些通过正门(例如NMOS晶体管)导通的原语和通过负门(例如PMOS晶体管)导通的原语。
可以使用关键字nmos和pmos定义两种类型的MOS开关。
在Verilog中,nmos和pmos开关如下所示:
nmos n1(out, data, control); // instantiate a nmos switch
pmos p1(out, data, control); // instantiate a pmos switch
由于开关是Verilog原语(例如逻辑门),因此实例的名称是可选的。因此,可以在不分配实例名称的情况下实例化开关。
nmos (out, data , control); // instantiate nmos switch ; no instance name
pmos (out, data, control); // instantiate pmos switch; no instance name
输出信号的值由数据和控制信号的值确定。
数据和控制信号的某些组合会导致门输出到1或0或z值,而不偏爱任何一个值。符号L代表0或Z; H代表1或z。
因此,nmos开关在其控制信号为1时导通。如果控制信号为0,则输出呈现高阻抗值。同样,如果控制信号为0,则pmos开关导通。
CMOS开关使用cmos关键字声明。可以使用nmos和pmos设备对cmos设备建模。 CMOS开关的实例如下所示,例如:
cmos cl(out, data, ncontrol, pcontrol); //instantiate cmos gate
or
cmos (out, data, ncontrol, pcontrol); //no instance name given
ncontrol和pcontrol通常彼此互补。当ncontrol信号为1且pcontrol信号为0时,开关导通。如果ncontrol为0且pcontrol为1,则开关的输出为高阻抗值。
cmos门实质上是两个门的组合:一个nmos和一个pmos 。因此,上面显示的cmos实例等效于以下实例。
nmos (out, data, ncontrol); //instantiate a nmos switch
pmos (out, data, pcontrol); //instantiate a pmos switch
NMOS,PMOS和CMOS栅极从漏极传导至源极。使设备在两个方向上都能导通很重要。
在这种情况下,设备任一侧的信号都可以是驱动器信号。为此提供了双向开关。
三个关键字用于定义双向开关,例如:
1. tran: tran开关用作两个信号inout1和inout2之间的缓冲区。 inout1或inout2均可作为驱动器信号。
module des (input io1, ctrl, output io2);
tran (io1, io2);
endmodule
2. tranif0:仅当控制信号为逻辑0时,tranif0开关才连接两个信号inout1和inout2。如果控制信号为逻辑1,则非驱动器信号将获得高阻抗值z。驱动器信号保留来自其驱动器的值。
module des (input io1, ctrl, output io2);
tranif0 (io1, io2, ctrl);
endmodule
3. Tranif1:如果控制信号为逻辑1,则tranif1开关导通。
module des (input io1, ctrl, output io2);
tranif1 (io1, io2, ctrl);
endmodule
当信号通过电阻开关时,它们会降低信号强度。常规开关可保持输入到输出信号的强度水平。