本文仅供学习,不作任何商业用途,严禁转载。绝大部分资料来自----数字集成电路——电路、系统与设计(第二版)及中国科学院段成华教授PPT
超大规模集成电路设计----CMOS组合逻辑门(六)
为什么要学习这一章:组合电路是进行逻辑计算的基础,在CMOS反相器的基础上探讨组合电路的种种特性是有必要的。标黄部分属于必须掌握的部分,黑体部分表示强调部分,有助于理解,对于普通字体部分,时间紧急的浏览者可以选择忽略,对于初学者,建议博文每部分都需要连贯阅读。
6.1 静态CMOS设计
6.1.1 互补CMOS

上面这就是互补CMOS逻辑,必须要有PDN和PUN。

NMOS是强0器件,PMOS是强1器件,NMOS传递1需要下降一个阈值电压,PMOS传递0需要增加一个阈值电压

==NMOS管串联表示与逻辑,并联表示或逻辑,所以对于NMOS管有串与并或,相应PMOS串或并与,但是要注意互补CMOS逻辑输出都是带非的。==比如下面这张图,NMOS是串联的,但是表示的是与非门。

下图表示的是这个逻辑表达式, F = D + A ⋅ ( B + C ) ‾ F=\overline{
{D+A\cdot(B+C)}} F=D+A⋅(B+C)

6.1.1.1 互补CMOS的静态特性

对于不同的输入其VTC曲线是不一样的,A=B=0时有两个上拉器件,所以VTC曲线偏右。
6.1.1.2 互补CMOS门的传播延时

假如不考虑内部电容,输入数据不同导致电阻不同导致传播延时不同。
A = 0 , B = 0 : t P L H = 0.69 ⋅ ( R p / 2 ) ⋅ C L \begin{aligned}A{=}&0,B=0{:}\\&t_{PLH}=0.69{\cdot}(R_{p}/2){\cdot}C_{L}\end{aligned} A=0,B=0:tPLH=0.69⋅(Rp/2)⋅CL
A = 1 , B = 0 o r A = 0 , B = 1 : t P L H = 0.69 ⋅ R p ⋅ C L . \begin{aligned}A=1,B=0&\mathrm{~or~}A=0,B=1:\\t_{PLH}&=0.69\cdot R_p\cdot C_L.\end{aligned} A=1,B=0tPLH or A=0,B=1:=0.69⋅Rp⋅CL.
A = 1 , B = 1 : t P H L = 0.69 ⋅ ( 2 R N ) ⋅ C L \begin{aligned}A=1,B=1&:\\t_{PHL}&=0.69\cdot(2R_{N})\cdot C_{L}\end{aligned} A=1,B=1tPHL:=0.69⋅(2RN)⋅CL
即使我们考虑了内部电容,可以想到传播延时仍然受到输入数据的控制。
6.1.1.3 确定互补CMOS门中晶体管尺寸
如何让这个与非门有着和最小的反相器同样的上拉和下拉时间。 即要求PDN和PUN都具有和最小反相器同样大小的等效导通电阻。最小反相器的大小是给定的(在考试里面就是出题人给定的,在实际中就是公式或者用户给定的。

在与非门的讨论里面我们假设最小反相器NMOS: W/L=1:1 PMOS: W/L=2:1。那么与非门的宽长比设计就如上图所示,PMOS是2:1,NMOS也是2:1。
确定或非门同理,想要延时和反相器一致,就得保证这个组合逻辑门与反相器电阻一致。
6.1.1.4 扇入与传播延时
我们知道输出由高变低是所有的NMOS都工作,NMOS的电容和电阻也都加在延时里面了,而输出由低变高是所有的PMOS管都往上拉,上拉的PMOS管越多,上拉电阻越小,所以我们会发现上图随着Fan-in的增加,变化剧烈的是tpHL,因为扇入越大,NMOS数量就越多,高变低延时就会增加!所以我们一般不设计4个输入口以上的门电路。

同时高变低延时是扇入的二次方函数关系,具体方程为 t p H L = 0.69 R N ( ( 1 + N ) N 2 C ) t_{pHL}=0.69R_{N}(\frac{(1+N)N}2C) tpHL=0.69RN(2(1+N)NC)
6.1.1.5 降低大扇入电路的延时
改变晶体管尺寸
加大晶体管尺寸,但是如果负载电容主要是intrinsic电容,即门本身的电容,则我们不应该再增大门了,这样即使减小了电阻也会增大电容.只有当负载以扇出为主时增大尺寸才有用.
逐级加大晶体管尺寸
t p H L = 0.69 ( R 1 ⋅ C 1 + ( R 1 + R 2 ) ⋅ C 2 + ( R 1 + R 2 + R 3 ) ⋅ C 3 + ( R 1 + R 2 + R 3 + R 4 ) ⋅ C L ) t_{pHL}=0.69(R_1\cdot C_1+(R_1+R_2)\cdot C_2+(R_1+R_2+R_3)\cdot C_3+(R_1+R_2+R_3+R_4)\cdot C_L) tpHL=0.69(R1⋅C1+(R1+R2)⋅C2+(R1+R2+R3)⋅C3+(R1+R2+R3+R4)⋅CL)从这个公式知道晶体管M1的电阻被算了四次,所以越往下,电阻应该越小越好,即门越大越好。

重新安排输入
简单来说就是哪个输入信号来的最慢就把这个信号放到离输出最近的地方,让其他先到的信号先把NMOS的门开起来,让开了的门电容先放电,等这个关键信号(也即最慢的信号)到了,其他电容已经放完了电,这个时候它再放就很快了。

重组逻辑结构
多输入延迟太大了,拆开来要快一点,要实现上面这种改变,可以利用逻辑表达式,加两次非即可拆开。

6.1.1.6 组合电路的性能优化
把反相器延时公式 t p = t p 0 ( 1 + C e x t γ C g ) = t p 0 ( 1 + f / γ ) t_p~=~t_{p0}(1+\frac{C_{ext}}{\gamma C_g})~=~t_{p0}(1+f/\gamma) tp = tp0(1+γCgCext) = tp0(1+f/γ)改写成 t p = t p 0 ( p + g f / γ ) t_p~=~t_{p0}(p+gf/\gamma) tp = tp0(p+gf/γ)
f f f为电气努力(electrical effort),也叫有效扇出,定义为外部负载与输入电容的比值。 p p p表示复合门和简单反相器的本征延时(空载延时)的比值。 p p p一般我们不是很关心,它与复合门本身的结构有关。常用 p p p值如下。

g g

本文围绕数字集成电路的CMOS设计展开,介绍了静态CMOS设计,包括互补CMOS、有比逻辑、传输管逻辑的特性、延时、功耗及优化方法;还阐述了动态CMOS设计的原理、信号完整性问题及解决办法,如多米诺逻辑等,同时补充了分支努力的计算。
最低0.47元/天 解锁文章
9418





