第八章 ASIC的版图设计实现方法对于大规模、超大规模专用集成电路来说, 其实现方法可归纳为两大类:①版图设计法, ②器件编程法。
版图设计法包括版图的全定制设计、半定制设计和定制设计, 适用于大批量的专用集成电路设计实现, 由本章介绍。
下章介绍ASIC的器件编程实现方法, 包括ROM系列、PAL、GAL系列和FPGA系列的器件编程,适用于中小批量或样片的ASIC设计实现。
§ 8-1 全定制设计方法(Full-Custom Design Approach)全定制设计适用于对设计质量本身有着最严格要求的芯片, 比如要求有最小信号延迟、最小芯片面积, 最佳设计结果, 而对相应在设计周期、设计成本上所付出的代价却可以在所不惜。
这种设计方法主要以人工设计为主, 计算机作为绘图与规则验证的工具而起辅助作用。
对所得版图的每一部分, 设计者将进行反复的比较、权衡、调整、修改: 对元器件, 要有最佳尺寸; 对拓扑结构, 要有最合理的布局; 对连线, 要寻找到最短路径, ... 。
这样精益求精, 不断完善, 以期把每个器件和内连接都安排得最紧凑、最适当。
在获得最佳芯片性能的同时, 也因为芯片面积最小而大大降低每片电路的生产成本, 以低价位而占领市场。
目前, 产量浩大的通用集成电路从成本与性能考虑而采用全定制设计方法。
其它设计方法中最底层的单元器件(如标准单元法中的库单元、门阵列法中的宏单元), 因其性能和面积的要求而采用全定制设计方法。
模拟电路因其复杂而无规则的电路形式(相对于数字电路而言)在技术上只适宜于采用全定制设计方法。
简单、规模较小而又有一定批量的专用电路, 在设计者力所能及的情况下( 时间与正确性的把握) , 也建议采用全定制设计方法。
图8-1是一个由全定制设计方法设计的模拟集成电路的版图(7640电路)需要给予解释的是, 对于大规模、超大规模集成电路, 全定制的设计方法似乎是不可思议的。
事实上, 这确实需要许多人年的艰苦努力: 将一个庞大的电路系统按功能分解为若干个模块和更多个子模块, 具有丰富经验积累的设计人员分工合作, 每人负责一个部分108的设计, 最后拼接完成。
即使对于每个人负责的子模块电路, 也要充分利用电路的规则性和重复性进行设计。
比如寄存器可由一排D触发器构成, 只要精心设计好一只D触发器的版图, 就可以利用计算机图形软件中的复制功能, 拉出一排D触发器也就是一个寄存器的版图了。
当然,每个D触发器还要考虑彼此之间版图的偶合度问题。
全定制设计的方法, 要求CAD系统提供完整的检查和验证功能。
因为设计人员不可避免地会造成版图上的某些错误,需要通过自动的CAD工具加以发现并纠正。
这些工具包括设计规则检查(DRC)、电连接性检查( ERC )、版图与电路图一致性检查( LVS ) 等等。
图8-1一个由全定制方法设计的模拟集成电路的版图(7640电路)§ 8-2 半定制设计方法(Semi-Custom Design Approach)数字电路主要是由晶体管和连接线两大部分组成。
晶体管除了数量多少有差别外,每一只管子的基本构造都是相同的。
不同的电路实际上应该说是由晶体管的不同连接方式产生的。
设想这样的情况: 假如先将一定数量的晶体管制作好, 按一定的规则排成阵列, 形成可称之为“母片”或“基片”的半成品,然后用不同的连线方式来形成不同的具体电路。
由于半成品母片是事先作好并批量生产的,因此,这样的方法一定能大大加快专用电路的设计速度,降低设计成本。
半定制的设计方法与名称正是由此而来。
半定制主要有门阵列(Gate Array)和门海(Sea of Gate)两种形式。
§ 8-2-1门阵列109110 数字电路的基本逻辑单元与其说是晶体管不如说是逻辑门。
因此, 若先将单个的晶体管排成一定的逻辑门形式, 再将这些逻辑门排成一定的阵列, 阵列中留有规则的布线通道负责门与门之间的连接, 如图8-2所示,这就构成了所谓的“门阵列母片”形式。
当然, 母片四周还要有I/O压焊块负责将来芯片内部与外部的通信。
图8-2 门阵列母片结构作为门阵列母片基本单元的那些大小、形状完全相同的门单元(CELL), 其实还远远不是真正的逻辑门, 它们只是一组组靠得比较近的晶体管而已。
因为基本单元内部构成真正逻辑门的连接关系(可称之为“内连线”)还并不存在, 它们在工艺上将与那些在布线通道内负责门与门之间连接的“外连线”一道制作完成。
为了方便设计者, 实际的门阵列CAD系统不但提供各种规格的门阵列母片,还将各种具有相应配套工艺参数的逻辑门的内连线也保存起来, 形成“宏单元库”。
比如对应于2 m 工艺的某种门阵列母片的宏单元库, 内部有“与门”、“或门”、“非门”、“与非门”、“或非门”、“异或门”、“传输门”、“三态门”等等逻辑门的连接关系版图。
作为用111户或设计者, 只须设计并输入电路图, 选择相应的工艺并确定合适的母片, CAD 系统就会根据布局需要到宏单元库中调用相应的逻辑门(内连线版图)布置到相应的CELL 上,形成一个个完整的逻辑门, 最后按某种布线算法完成整个电路门与门之间外连线的连接工作。
经过验证, 版图设计工作即告完成。
各种逻辑门逻辑功能不同, 需要的晶体管数也是不一样的, 如“非门”需要两个管子, 而两输入“与门”需要六个管子, 两输入“与非门”需要四个管子,…这就有了不同的门阵列母片单元形式和不同大小的宏单元。
常用的CMOS 门阵列母片单元形式分为四管单元和六管单元两种。
四管单元的母片是针对两输入“与非门”、“或非门”而优化设计的。
对于三输入“与非门”和两输入“与门”、“或门”, 由于需要六只管子故只能采用两个单元来加以实现。
这样, 两个单元的八只管子中就有两只管子的面积是被浪费掉的。
采用六管单元的母片可以支持上述三输入端的“与非门”, 但对于倒相器、两输入端的“与非门”等同样会产生无用晶体管。
图8-3 CMOS 门阵列四管单元母片的单元版图图8-3是一个CMOS 门阵列四管单元母片的单元版图。
图中两对CMOS 管,一对栅极相连, 一对栅极断开。
利用这一特点可方便地实现“三态门”等的内部连接, 见图8-4。
该“三态门”对应的电路可参见图3 - 5。
图8-4 “三态门”的宏单元版图F F V DDGNDP 阱EEA读者不妨在图8-3所示的四管单元母片的单元版图上, 自行练习各种“与非门”、“或非门”、“传输门”、“非门”之类基本逻辑门的宏单元版图绘制。
用CMOS双金属层布线门阵列的方法实现专用集成电路, 一般需要12块掩膜板, 其中8块用来完成通用的半成品“母片”, 另4块用来实现用户的专用连线。
这些掩膜板是:1、P阱 (或N阱)2、有源区 (制作MOS晶体管的区域)3、N-场注入 ( 调整P型MOS管场区的杂质浓度,减小寄生效应 )4、P-场注入 ( 调整N型MOS管场区的杂质浓度,减小寄生效应 )5、多晶硅栅 ( MOS管的栅极或称门极 )6、N+注入 ( 形成N型MOS管的源漏区 )7、P+注入 ( 形成P型MOS管的源漏区 )8、压焊块 ( 输入、输出引线压焊盘 )以上8块掩膜板用作通用的母片部分9、引线孔 ( 金属铝与硅片的接触孔 )10、一铝 ( 第一层金属连线 )11、通孔 ( 两层金属铝线之间的接触孔 )12、二铝 ( 第二层金属连线 )以上四块掩膜板用作专用的连线部分(包括逻辑门内部的内连线和门与门之间的外连线)。
图8-5是CMOS门阵列母片的横截面图。
图8-5 CMOS门阵列母片的横截面图§ 8-2-2门海门海比门阵更具优越性一些。
门阵每一布线通道的布线容量是一定的, 比如16根或18根。
当所要实现的电路连线多寡不均时, 给自动布线带来了难度: 或者通道很空, 造成浪费;或者通道很挤, 甚至布不下、布不通。
为解决这一问题, 门海概念应运而生。
门海也是母片结构,但它的母片中没有布线通道, 全部都由基本单元组成。
这些基本单112元统一以横行或者竖排为单位, 要么接受宏单元库中的内连线构成基本逻辑门, 要么接受外连线起布线通道的作用。
也就是说, 布线可以在基本单元的上面进行。
这样,如果某处一条单元的宽度用来布线还有困难的话, 与其相邻的那条单元也可继续用来充当布线通道, 不会出现因通道饱和而溢出的问题。
相反,在连线稀疏的地方, 几条单元连着作逻辑门而不作通道, 大大增加了布局布线的灵活性。
但这也给布图软件的设计带来了更大的难度。
总之,“母片机制”是半定制门阵列与门海概念与技术的核心, 其优点和缺点都是与生俱来并十分明显的。
其优点是使专用集成电路的实现周期缩短(只需最后四步工艺), 生产成本降低(母片由于有通用性可大批量生产); 其缺点也表现在以下两个方面:1、芯片面积大, 有效利用率低(一般只有70%)。
这由三个方面的原因引起:⑴事先做好的母片虽有各种规格, 但不可能刚好满足电路的实际门数需要,一般都要选得略大一些。
⑵由于是规则通道的规则布线, 即使是门海, 布线区的宽度也只能成倍增减。
这样, 一部分走线较少的通道区域的面积就会浪费。
见图8-6。
⑶宏单元中冗余晶体管的存在。
图8-6 母片结构中的规则布线2、I/O管腿的数量选择不够灵活。
对于一定规格的母片, 其芯片四周I/O压焊块的个数往往是一定的, 对于内部单元多而输入/输出管腿少或内部单元少而输入/输出管腿多的专用电路, 就较难选择到合适的母113片。
因此, 半定制的ASIC设计方法, 适应于那些对设计周期要求紧, 成本低, 批量又不大的电路设计, 以时间快而抢占市场。
§ 8-3 定制设计方法(Custom Design Approach)从版图的角度来讲,全定制的设计方法芯片面积利用率高, 几乎没有无用区,也就是说没有冗余度, 但布图规则性差, 只能用手工设计, 无法实现机器的自动布局布线。
而半定制的母片法则刚好相反, 器件规则排列, 特定的通道使自动布线软件易于实现, 但芯片上无用的管芯或区域太多, 芯片面积过大。
定制的设计方法应该说在一定程度上吸收或结合了这两者的优点而克服了这两者的缺点,因此很受广大版图设计者的欢迎。
与半定制的“母片法”相对, 定制设计方法也常称为“单元法”,包括标准单元法和通用单元法。
§ 8-3-1标准单元法( Standerd Cell Method )标准单元法有一个商业名称,即多元胞法( Polycell )。
它先将电路设计中可能会遇到的所有基本逻辑单元的版图, 按照最佳设计的原则, 遵照一定的外形尺寸要求, 精心绘制好并存入单元库中。
实际设计ASIC电路时, 只需从单元库中调出所要的元件版图, 再按照一定的拼接规则拼接, 留出规则而宽度可调的布线通道, 即可顺利地完成整个版图的设计工作了。