第五章 数字 ASIC 设计特点
5.1 信号的分类
静态同步 ASIC 中的所有信号可以分为以下三种:时钟、控制信号
和数据。
1. 简单的时钟信号用于控制所有的边缘敏感触发器; 不受任何其
他信号的控制。
2. 控制信号,如“允许”和“复位”,用于使电路元件初始化、
使之保持在当前状态、在几个输入信号间作出选择或使信号通到另外的
输出端。若干控制信号可以全部来自同一个允许产生器,但受到状态计
数器的控制。
3. 数据信号中含有数据,它可以是一些单独的比特,也可以是总
线中的并行数据。
5.2 驱动能力、绝对扇出和相对扇出
从概念上讲,一片 ASIC 由若
干功能单元(部件或门)组成,每
一单元有一个或多个输入信号,
并产生一个或多个输出信号。从
电性能看,每一输出信号受一定
强度的驱动,即具有一定的驱动
能力,它决定于此部件的晶体管
结构。类似地,每一输入端在驱
动它的部件(或外部输入端)上加
了一定的负载。像驱动能力一样,
图 5-1 驱动 4 个反相器的反相器
负载也取决于部件的晶体管结
构。
图 5-2 驱动能力为 4 的反相器
通常,单位负载和单位驱动
能力是由一个反相器(图 4-3)产
生的。反相器的输出定义为具有
单位驱动能力,而其输入则定义
为在驱动它的任何电路上加有一
单位负载。
每一个输出端驱动一个或多
个其他部件的输入端,或连接到外部输出端。原先, “扇出”一词指从
一个输出端引出的这种连接的数目, 但是现在它应该计算加到每一连接
线上的等效单位负载数目。由被
驱动部件和外部输出加成的负载
总和是驱动部件输出端的“绝对
扇出”。图 5-1 示出一个驱动其他
4 个反相器的反相器,4 个反相器
均是单位负载。这样,它给出的
绝对扇出为 4。
图 5-3 驱动 12 个反相器的缓冲器
通常,“扇入”一词仍保持其
原来含意,即连接到一部件上的
输入端数目。例如,一个 3 输入
端“与”门具有的扇入为 3。
有些 CMOS 部件的驱动能力小于 1,这时常使用反相缓冲器增强这
种部件的驱动能力。图 5-2 示出一缓冲器,它等效于 4 个反相器并联。
此部件的驱动能力为 4(并且作为负载也等于 4)。
图 5-3 给出一个驱动能力为 4 的缓冲器,它连接了 12 个反相器,
给出绝对扇出为 12。另外一个很 有用的概念是相对扇出——绝对扇出
和驱动能力之比。图 5-3 中电路结点的相对扇出为 3。
电路中任一结点处的相对扇出为:
限制。然而,结点的相对扇出
基本上是两部分延迟之和:
ASIC 设计中许多门级模拟
送延迟是由于栅极下面的
电电压低和驱动输入的上升时间
驱动能力
绝对扇出
相对扇出 =
不像 TTL 电路,CMOS 的扇出没有固定的
决定着它的若干特性,特别是决定其电路延迟。ASIC 性能要求给予相
对扇出一个上限,它和生产工艺过程有关,通常在8至16之间。
5.3 电路延迟
CMOS 电路中的延迟
惰性延迟传送延迟电路延迟 = +
程序就是根据这一简单模型设计
的。
传
耗尽层充电和放电需要时间产生
的。它取决于栅的类型,供电电
压,温度和工艺过程参数。通常,
温度愈高则载流子的迁移率愈
低、电阻愈高,故延迟愈长。供
图 5-4 电路延迟
长也使传送延迟增加。某些设计工具中的模拟程序的编写可以使其运行
于不同的状态,即慢(高温度,低供电电压)、快(低温度,高供电电压)
和标准三种状态。ASIC 工厂有时要求设计者在慢和快状态下对电路做
模拟后再提交生产。
惰性延迟产 生的主要原因是输出电路的电容和驱动门的内阻抗。 惰
总延迟=传送延迟十(单位负载的惰性延迟 x 相对扇出)
性延迟长的影响除使总电路延迟增大外, 还使上升时间和下降时
间增
扇入的影响
4-6 和图 5-5 可
性延迟和传送延迟一样,也受环境变化的影响,但是它正比于结点的相
对扇出。在图 5-4 中给出总延迟和惰性延迟、传送延迟及相对扇出的关
系。相应的公式为:
惰
大。
5.4
在选择门的时候,要考
虑扇入的影响。一个门的扇
入和其驱动能力之间有一
定关系。例如,让我们考虑
图 4-6 和图 5-5 中的电路。
图中给出了 2 输入端和 3 输
入端“与非”门的晶体管电
路结构。
比较图
图 5-5 3 输入端“与非”门
以看出,—个 2 输入端与非
门作为负载,从正电源向源极消耗电流的能力和一反相器的能力相同。
若两个输入都是逻辑 0,因为有两个 p 型晶体管的并联电阻,故从低至
高的源阻抗是基本反相器的一
半。然而,它的两个输入由逻辑
0 变为逻辑 1 时,两个串联 n 型
管导通,其导通电阻是反相器的
两倍,使输出端高电位下降速度
比反相器也慢一倍,即自高向低
过渡有两 倍的延迟。
”门的 n 型管的通过电流能力(至基
比较图 4-6 和图 5-5 可见,
从第三个 n 型晶体管来的另一串
联电阻进一步降低 3 输入端“与非
本反相器的三分之一)。
图 5-6 3 输入端“或非”门
图 4-7 和图 5-6 示出 2 输入端“或非”门和 3 输入端“或非”门的
结构。因为 p 型载流子的迁移率较低,因此这些门与其“与非”门等效
电路相比,性能较低。为了得到高性能电路,建议:和或非门相比,优
先选用:与非门。
5.5 边缘缓慢
在基本反相器中,电流与输入电压的关系示于图 4-4。由图可见,
当输入电压在高和低之间变化时,将有一大电流出现。所以若边缘平缓
将使大瞬态电流出现时间拖长。
当信号是一个加到边缘敏感部件的时钟时, 上升时间长的后果更为
严重。制造硅片时,工艺过程尽量保持稳定不变。然而,有些工艺过程
的条件限制使硅片各部位之间必然有所不同。工厂通常使最好的器件不
是在硅片中心生成,而是形成环状。
这样的环状布局可以使成品率最
高,并减小参数的散布,但是片上
的各个门的门限电压仍有变化。
在同步系统中,边缘缓慢加上
门限电压有差别以及本地引入的噪
声,将使时钟线上产生不同的延迟,
结果将出现我们不希望有的所谓
“时钟歪斜”现象。时钟歪斜是指
有效时钟边缘不在同一时刻出现,当用上升缓慢的边缘触发不同的边缘
敏感部件时就可能发生这种情况(见图 5-7)。
图 5-7 时钟歪斜
时钟歪斜是同步系统中最严重的问题之—。 若歪斜的程度大于从边
缘敏感存储器的输出到下一级输入的延迟时间,则其影响将变得很明
显。它能使移存器中的数据丢失,使同步计数器发生错误。时钟歪斜可
以由适当的时钟缓冲使之减小, 或者在边缘敏感器件的输出和其馈给的
任何边缘敏感输入端之间加入一定的延迟。
5.6 时钟缓冲
同步系统中时钟(及其他全局控制线,如复位线)必然负载很重。这
样有可能导致电路延迟和时钟歪
斜不能容忍。克服这个问题的方法
有二:线形缓冲和树形缓冲。
图 5-8 线形缓冲
5.6.1 线形缓冲
线形缓冲(图 5-8)在信号线上
使用一串缓冲器,使驱动强度逐步
增大。每一缓冲器的驱动强度
(它通常和负载一样)分配,应
使每一结点的相对扇出相同。
例如,图 5-9 示出一个反相器,
它驱动的负载等价于64个反相
器,而同样的负载可以通过一
串中间缓冲器来驱动。在每一
中间结点,相对扇出为 4。理论上最佳相对扇出为 e(2.71828…),它
使总延迟最小。
图 5-9 负载等价于 64
表面上看来,似乎不用缓冲器要比用缓冲器的方案更快,因为后者
层次更多。然而,应用传送延迟和惰性延迟的计算公式(按每单位负载
标称 1ns 传送延迟和 1ns 惰性延迟计算),可以得出下列结果:
1. 不用缓冲器的电路:
总延迟=1 十 64×1=65ns
2. 用上例的线形缓冲电路:
总延迟=(1 十 4×1)十(1 十 4×1)十(1 十 4×1)
=15ns
所以, 采用缓冲器时的总延
迟小很多,并且上升时间也更快。
图 5-10 反相器并联
ASIC 工厂为此目的而在其数
据库中设置有大功率的缓冲器,
或者容许反相器并联使用,以得
到所要求的驱动强度(见图
5-10)。
5.6.2 树形缓冲
超过一定的绝对负载量之
后,通过线形缓冲增加驱动能力
的优点不再存在。这是由于在
ASIC 中的线条宽度有时有限,电
流大时在线上会产生大的电压
降。在这种情况下,用树形缓冲
较好;
图 5-11 树形缓冲
使用树形缓冲时,时钟电路分成若干分支,每一分支的驱动强度按
几何级数增长。在图 5-11 中示出这种方案。在实际设计中,通常使每
一分支驱动某一局部电路中的各部件。在这个局部电路内有一缓冲器,
缓冲器常由一反相器和由其驱动的功率缓冲器组成。 这样做的另一个好
处是,可以保持信号的符号不变,以及在分文点处呈现一单位负载。
值得指出的是,这种时钟
分配方案的各个分支在各级之
间应该具有相同的相对扇出
(图 5-12),因为不平衡的分支
是时钟歪斜的最大来源。由于
布线电容通常是一结点上总负
载的重要组成部分,在设计好
版图后应当再次校核相对扇
出。许多种 ASIC CAD 工具中都
有扇出程序,它可以用来进行
最后的仲裁。
图 5-12 具有相同的相对扇出
5.7 传 输 门
MOS晶体管构成的门是对称的,源极和漏极可以互换。例如在p型晶
体管中,若门的V
t
(门限电压)低于源或漏的电压,则沟道将导通。同样
地,当门的VT高于源或漏的电 压则n型沟道导通。 MOS晶体管可以用作
为与电源隔离的开关。然而,由于门限电 压的偏置,一个p型晶体管不
可能把一个负载电容拉向比V
t
更近于正电源;对于。型晶体管,也不可
能使之更近于地。因此,传输门通常由一对晶体管组成,一个p型和一
个n型的(见图 4-13)。
图 5-13 用传输门实现的 D 型触发器
传输门有许多用途,包括
多路选择器、总线驱动器,甚
至做成 D 型触发器。与用逻辑
门做的同类电路相比,这种结
构通常更小并且速度更快.图
5-13 给出一个用传输门实现的
D 型触发器。
传输门 的使用有许多规则,设计者不能违背这些规则去使用这种
门。这些规则原则上是产生于传输门的双向性质:它在两个方向的导通
性同样好;传输门内部结点有可能处于浮动状态;在传输门串联过多时,
驱动能力有可能下降。从这一考虑出发,可以导出使用传输门的一些条
件。
5.7.1 由传输门的双向性产生的条件
打开一个传输门的时候在驱动电路中能够产生一个短暂的尖峰, 此
类峰或假信号是由于所谓“电荷共享”现象产生的。当传输门驱动一高
扇出结点时这一问题特别严重。 见图 5-14。 若线上有一边缘敏感部件(图
5-15),或者有任何异步清除(图 5-16),则这可能产生严重后果。然而,
使用门控的时钟和异步清除都是不好的设计方法, 后面有几章要讨论如
何避免使用这些设计方法。
5.7.2 三态缓冲器的演变
为了防
止电荷共享现象及传输门串联过多,正确的方
法是用反相缓冲器驱动传输门(图 5-17)。从这
一电路结构可以导出一个真正的三态缓冲器的
电路,如图 5-18 至 5-20 所示。在图 5-19 中点
a 和 b 之间的连线可以断开。虽然电路变了,但
其功能末变,从而得到图 5-20。
图 5-15 有一边缘敏感部件时的电
路
图 5-14 电荷共享现象
图 5-17 反相缓冲器驱动传输门
图 5-16 有任何异步清除时的电路
和加缓冲器的传输门相比,这个
电路有两个优点:①面积在一定程度
上小了些;②因为在“反相器”沟道
中没有电流,故输入状态改变不再产
生电流尖峰。同样的电路也常作为外
部三态驱动器。三态驱动器压焊盘通
常作为基本的数据库部件,或者作为
门阵的部件提供给设计者,而设计者
通常不能自己用基本的门组成这种
性能的部件。
图 5-18 反相缓冲器驱动传输门
电路
5.8 三态缓冲器用于总线
控制
三态部件允许在 ASIC 中支持含
有多个数据发送器的总线系统(图
5-21),这样就产生了共享通信资源
的管理问题。这时,总线不容许浮动
或处于高阻抗,并且绝对不能有两个
或多个数据发送器同时接入引起的
竞争。浮动的总线可能位于中间电
压,它将使总线上任一接收器的 n 型
和 p 型晶体管都导通(见图 4-4 中
CMOS 反相器的电流特性),这将导致接收器通道中电流过大。这就违反
了 CMOS 设计的一般规则——绝不使输入端浮动。争夺总线也是同样严
图 5-19 传输门的演变
图 5-20 三态缓冲驱动器
重的问题。若两个数据发
送器同时试图使总线上一
根线取相反的逻辑值,则
这将使结点上出现不确定
值,并且在两个数据发送
器中的电流过大。由此引
起的问题,上面已经提到过。
图 5-21 多个数据发送器的总线系统
5.8.1 译码器用于总线数据发送器选择
使数据 发送器不受本
地控制是十分重要的。使
用译码器选择总线数据发
送器就消除了总线浮动或
竞争的可能性,在任一时
间只可能选择一个数据发
送器。按照这一原理设计
的典型总线访问系统示于
图 5-22。
图 5-22 典型总线访问系统
图 5-23 译码器状态相“或”
通常, 总线控制译码
器是一个n至 2
n
译码器,因
此,从此译码器引出的信
号线数目应当是大于或等
于总线上数据发送器数目
的 2 的整数幂。总线应当
经常处于“允许”状态,
这可以用将不用的译码器状态
和有效状态相“或”的办法满
足,如图 5-23 所示。
图 5-24 总线上的电容性负载
5.8.2 降低总线负载
若一 总线上有大量的数据
发送器和接收器,则在任一数
据发送器上的电容性负载可能
使性能降低到不能接受的程
度。见图 5-24。
图 5-25 总线的分接
总线上的电容性负载有三
个来源:
接收器的输入电容;
总线布线的电容;
其他数据发送器的电容
(即使它们处于高阻(断)状态)。
增大总线数据发送器的驱
动强度可以克服输入电容和布
线电容问题,但是其他数据发送
器的电容也随着驱动强度而增
大,导致驱动强度反而下降。 另
外还产生一个缺点,即三态驱动
器功率增大要求占用芯片面积
也增大。 解决负载大的问题第一步是把数据发送器和接收器分开接在总
线的两部分上,如图 5-25 所示。数据发送器还可以进一步用访问总线
图 5-26 总线的三态缓冲器分组
图 5-27 通过多路选择器树访问总线
的三态缓冲器分组,如图 5-26 所示。在极端情况下,可以通过多路选
择器树访问总线(图 5-27)。这要求将译码器改进以满足对总线的限制
条件,各控制位分开控制多路选择器树的各级。这样改进的译码器适合
用于控制分段的总线和多路选择器树。
5.9 电 源
ASIC 由一芯片构成,芯片上面有一实现电路功能的区域,以及四
周的压焊盘环,见图 5-28。压焊 盘环可以为硅片提供电源和与外部信
号连接的通路。输入压焊盘必须具有防止外部输入过压的功能,输出压
焊盘必须向外部电路提供足够的电流。此外,在压焊盘环中还有辅助测
试电路。
图 5-28 ASIC 上的电源线和地线
在大多数 ASIC 中, 电
源由两条同心导线引入,
后者构成电源框架。若有
大量的输出压焊盘,并且
载有大电流或同时开关,
则电源框架有可能过载。
结果在地线或电源线上产
生尖峰,引起电路错误或
性能下降,特别是对于混
合(模拟和数字)电路更是
如此。
为了解决这个问题。通常需要插入额外的电源和地线压焊盘。典型
情况是,每 8 个同时开关的输出增加一脚。另一种可以采用的设计原则
是,若可能的话,顺序改变输出,以避免电源出现冲击。例如,这种方
法可以用于控制 7 段显示译码器。