数字IC秋招面试专题(五)逻辑式如何转换为晶体管电路
在面试中经常会要求画出某一个逻辑表达式的管级电路,之前一直通过公式的死记硬背;最近重新理解了一下。
如果要明白管级电路为什么按特定转换办法。先要理解pmos和nmos。
- 为什么pmos总是作为上管,nmos总是作为下管。
一、pmos和nmos
因为P管电流从S->D,而管子导通的条件是VGS>VTH;
- 如果p管作为下管,那么D极接地,S极电压在管子关断和导通时变化,无法确定。如果p管做下管,那么G区的控制逻辑会相对复杂。
- 如果p管作为上管,那么S接VCC,VGS电压确定,便于控制管子开关。
- nmos也同理分析,所以p管适合做上管,n管适合做下管。
明白上述原因后,就可以理解输出的高电平由上管决定,低电平由下管决定。为了保证在某一时刻,输出只能为高电平或低电平,需要结合上管和下管同时来完成逻辑,当上管导通时,下管必然关断。
比如非门,如下图,一个P管和一个N管串联后,中点输出的就是反逻辑。

- 当A=1时,上管关断,下管导通,输出为0;
- 当A=0时,上管导通,下管关断,输出为1。
同理,如果使用上述方式来构建与逻辑,或逻辑,电路将是以下形式。
从上图可以看出,虽然完成了与、或逻辑的电路实现,但由于其特性:
- P管作为上管,低电平导通,但是输出高电平;
- N管作为下管,高电平导通,但是输出低电平。
这就使得管级电路搭建的逻辑式都是反逻辑,比如四管搭建的是与非门、或非门,而与门、或门需要在其输出上再添加一个两管的非门。
二、管级电路的转换
前文已经分析了上管负责控制高电平,下管负责控制低电平;
而与逻辑需要所有输入为1才为1;或逻辑输入有1就为1.
另一方面,如前文所描述,管级电路逻辑都是先实现反逻辑,再加非门实现正逻辑。
只要使用下文提到的四步法,就可以用MOS管搭建任意逻辑的电路。
举个例子:D=AB+C;分析这个逻辑式如果转换
- 首先需要对整个式子按摩尔公式求反:D=(((AB)+C)‘)’
- 先画上管,与为并联,或为串联
- 下管为相应的并串转换
- 最后对整体结果取反即可
下面我们看一下分步电路:
这是完成了AB的逻辑;后续还需要完成+C逻辑:
完成上管的基本逻辑后需要对应完成下管逻辑,做法一致,但是与或逻辑相反。
最后由于要整体取反,所以在最后输出在加上一个反相器(这里是否需要取反要根据具体情况)
根据这样做法就能很快速将逻辑式转换为CMOS电路。