MOS管的数字电路性质

这里不管其MOS的原理以及MOS的特性曲线,我们取三种状态:高电平(1)、低电平(0)和不定态(x)(电位介于VDD和VSS之间)

  • PMOS: 当且仅当源级(S)为高电平,栅级(G)为低电平,MOS管导通漏极被拉高到VDD(1)
  • NMOS: 当且仅当源级(S)为低电平,栅级(G)为高电平,MOS管导通漏极被拉低到VSS(0)
  • 不定态:以上PMOS和NMOS没被满足时,MOS管处于不定态,漏极电位介于VDD和VSS之间(x)

这里不定态对于实际电路来说,存在噪声容限,记高电平输入的范围为 $V > V{IH}$ 只要超过这个门限IC就认为是高电平,但是这个上限不是无穷大,还需要考虑IC的物理电压上限,同理输出也是一样大于 $V{OH}$ 为高电平;那么相应地低电平也有输入和输出的也存在上限 $V{IL}$ 和 $V{OL}$ , 小于其则认为是低电平

但是我们使用 Logisim 没有这个噪声容限,也就导致了我们不能使用一些奇技淫巧构造一些电路,比如将PMOS的栅极和漏极短接,然后源级接低电平,这样在漏极会输出一个约小于VDD的电压,此时也是可以认为高电平的(上拉电阻),但是在 Logisim 中,这样构造的电路会输出不定态(x)!

在构造此类需要上拉或者下拉的电路时,可以使用MOS的互补(对偶)性质,当其中一个为x时只要在这根总线上有确定的高电平输出则认为高,反之则认为低(线与)

一些基本的门

NOT

这个是个简单的CMOS非门(反相器),当PMOS的Gate为低电平时,PMOS导通,输出为高电平,当NMOS的Gate为高电平时,NMOS导通,输出为低电平,由于输入只能是0或1,所以两个MOS管刚好互补(无论如何输出支路都有正确的信号),那输出的0/1就是确定的非门。

NAND

这里用两个CMOS组成简单的NAND门,注意这里的两个PMOS都是并联,也就意味则其中一个的Gate为低电平时,输出为高电平,当两个NMOS的Gate都为高电平时,输出为低电平,那么列真值表就是与非门。

NOR

这个是NOR门,和NAND门类似,此时两个NMOS是并联,当其中一个的Gate为高电平时,输出为低电平,当两个串联PMOS的Gate都为低电平时,输出为高电平,列真值表就是或非门。

那么与门和非门就是直接在后边加个反相器即可。

AND

OR

这里完成下一生一芯的 F3.2.3 实际上很简单,要求的构造个三输入的与非门,那么可以使用一个AND和一个NAND如下图 AND+NAND 但是这里很显然想到既然两个并联的PMOS和两串的NMOS可以构造2输入的NAND,那么三输入就是在原来基础上加一对CMOS即可,如下图 3inNAND 比直接用原来的简单电路组合少了4个MOS管

异或和同或

XOR1

这里我直接使用以上基础门拼出了异或,原理很简单:

当是这样使用的MOS管是不是太多了?于是我想到了用线与和线或。

OD1

这里我们先以NMOS为例,对于一个NMOS将源极接输入栅极接高,那么可以制造一个简单的缓冲门,但是当源极接高时,由于NMOS的导通压降,输出往往不是标准的高电平,那么此时输出需要并个上拉电阻,使其在输出高时是标准的高。

同理,我们将两个这样的Sync并联得到与门,原理就是上面说的线与

反之,我们将栅极接控制信号,源极接地,同时拉高输出,这时由于控制信号和输出的逻辑是反的,那么我们得到了非门。

OD2

同样的我们也可以使用PMOS构造一个缓冲门,与门和非门,但是图上这里并联了两个非门然后再使用线与,即 $F=(A’B’)’=A+B$ 就构造了或门

XOR2

由上面的上拉式构造,我们可以构造异或门,但是使用上拉和下拉电阻的工艺在设计时不方便实现,这里还是尽量使用全MOS管电路。我们继续思考如何用MOS管来做拉高和拉低。

ANDPullDown

我们来分析下这个电路,两个NOMS管串联,只有当两个栅极输入同时为高时,在第二级NOMS的漏极才能输出低,其他情况都是x,也就得到下面真值表:

A B F
0 0 x
0 1 x
1 0 x
1 1 0

这里不详细分析具体x在不同情况的值了,如果是在要分析则可以用 $V_{GS}$ 计算下

ANDPullUp

以及相应地,用PMOS构造一个上拉电路,当两个栅极输入同时为低时,在第二级PMOS的漏极才能输出高,其他情况都是x,也就得到下面真值表:

A B F
0 0 1
0 1 x
1 0 x
1 1 x

ORPullDown

同理我们将两个NMOS并联得到如下真值表:

A B F
0 0 x
0 1 0
1 0 0
1 1 0

ORPullUp

以及用两个PMOS并联得到如下真值表:

A B F
0 0 1
0 1 1
1 0 1
1 1 x

然后我们用这些电路和线与的原理构造以下结构的异或门:

XOR3

我们将两组串联的NMOS并联,并将输入A和B接到第一组串联的NOMS,将A’和B’接到第二组NMOS,这样当 $A=B=0$ 以及 $A’=B’=0$ 时都是拉低的,都是输出0,其余状态x。

然后我们使用两组并联的PMOS串联,将输入A和B接到第一组并联的PMOS,将A’和B’接到第二组PMOS,这样当 $A or B=1$ 以及 $A’ or B’=1$ 时都是拉高的,这两个并联组又有被串联(与操作),那么就是A或B其中一个为1时输出高,其余状态x。

我们用线与把这两个模块的输出连接起来,这样不定态就被抵消了,得到异或门。

同理,我们也可以按照此构造同或门:

XNOR1

只要将NMOS的串联组变成A和B’,另外一个变成A’和B,然后PMOS方面对偶即可。
已知该逻辑组合电路的逻辑表达式为

总结静态MOS电路

我们通过以上的电路大概可以感觉到,对于静态MOS只要构造其NMOS部分(下拉)或者PMOS部分(上拉)然后另外一边按照此规则:“串变并,并变串,每组连接不变” 对偶地构造出其相反的网路即可,这就是静态CMOS。

具体地,我们知道一条线上串联的器件就是与逻辑,同理并联的器件在干路上就是与逻辑,如下图:

CMOSNOR

这里PMOS在A=B=1是输出x,但是NMOS有输出0,那么我们用线与将两个输出连接起来,那么x就被消除了。

下面就是总结的静态CMOS电路网路构造的方法:

已知该逻辑组合电路的逻辑表达式为 $F = f(A, B, C, \cdots)$ ,且 $f$ 默认最简

  • 先利用若干个反相器,得到 $A, A’, B, B’, \cdots$ 两两互补的信号
  • 对于NMOS部分,我们需要将F取反得到其极大项(或与式POS),然后对于或与式的每一个极大项,将其对应的信号连接在若干个并联的NMOS上,这就处理了极大项内部的或逻辑,然后外部的与逻辑就是将这些串联NMOS组串起来,这样我们就得到了F的下拉部分
  • 同理,对于PMOS部分(上拉部分),最简单的方式就是按照上面的规则:“串变并,并变串,每组连接不变”,继续构造即可。这里再给出由F的极小项(与或式)构造上拉部分的步骤,对于每个极小项,由于PMOS的逻辑是反的,我们需要将极小项每个信号的取反部分连接在若干个并联的PMOS上,这就处理了极小项内部的与逻辑,然后外部的或逻辑就是将这些并联PMOS组串联起来,这样我们就得到了F的上拉部分
  • 最后直接将上拉部分和下拉部分用线与连接起来即可。

这里需要注意一点上述方法就是将函数 $f$ 的极小项(上拉)和极大项(下拉)单独处理,只需要管其极大项或者极小项内部逻辑是否正确表达即可,或逻辑就是MOS并联,与就是MOS串联

这里举个例子对于 $F=A’C+AB’+B’C$ 我们先将其化简为 $F=A’C+AB’$

  • 对于下拉部分,我们取反得到 $F’=(A+C’)(A’+B)=AB+A’C’+BC’=AB+A’C’$ ,即将A和B接到同一组串联的NMOS,另外A’和C’接到另一组串联的NMOS,然后这两组串联的NMOS组并联起来,得到下拉部分
  • 那么上拉部分直接将上拉的并联变成串联,串联变成并联,原来的连接不变即可
  • 最后将下拉和上拉用线与连接起来

注意这里没有利用到B’那么我们可以省两个MOS管

传输门

下面我们来看第四种异或门的实现方法:

XOR4

这里我们使用了一个传输门,传输门就是利用一对结构对称PMOS和NMOS构成的一个控制结构,将漏极和源极两两短接,漏极作为输出,那么就有三个控制信号(实际上是两个),两个MOS管的栅极接一对互补信号

  • 这里当PMOS导通时其栅极必然是低电位,同时NMOS上栅极信号互补即为高电位亦开启
    • 如果此时源极为高电平,PMOS导通,NMOS截止,输出为高电平
    • 反之如果源极为低电平,PMOS截止,NMOS导通,输出为低电平
  • 当PMOS的栅极为高电平时,PMOS不可能导通,同时NMOS的栅极为低电平,NMOS也不可能导通,此时无论源极电平如何,输出都为x

那么我们就得到了一个控制的结构,其控制信号可以控制另外一个信号的传输。

我们现在来分析下XOR4这个电路,首先A变成1时,传输门关闭,此时输出仅和下面那个反相器有关,又由于A=1,那么下面那个反相器工作输出由B的非决定,也即是

A B F
1 0 1
1 1 0

同理,当A=0时,传输门打开,此时输出仅由B决定,也就是

A B F
0 0 0
0 1 1

利用传输门和复用控制信号A,我们得到了一个非常精妙的异或门,仅仅使用了6个MOS管!!!

下面是一生一芯的F3.3.5,利用这个TG门设计一个同或门,这里也非常简单,毕竟异或和同或是互补的,那么我们依葫芦画瓢,利用A=1时开启传输门即可。

XNOR2

最后

以上就是我在完成一生一芯F3.2到F3.3的思考和笔记,也补充了我大二秋季学习数字电路时对MOS管的数电性质的理解,最后利用TG门和复用输入信号为控制信号,应该还有地方我没探索到,希望之后有时间补全吧!