标准单元库,包括版图库、符号库、电路逻辑库等。包含了组合逻辑、时序逻辑、功能单元和特殊类型单元。是集成电路芯片后端设计过程中的基础部分。运用预先设计好的优化的库单元进行自动逻辑综合和版图布局布线,可以极大地提高设计效率,加快产品进入市场的时间。
因此,有实力的集成电路设计公司及加工厂家都应该拥有自己的标准单元库,建立一套完整的与工艺线相对应的、内容丰富的、设计合理及参数正确的单元库已成为设计必要的条件[1]。
标准单元种类
从图1可以大致了解标准单元的种类。一般来说各种门电路,触发器及各种I/O单元是一个标准单元库所必须的配置,这些配置可以满足一个纯数字电路ASIC电路的设计需要,其他宏单元(含模拟宏单元)在许多工艺线往往有作为IP形式提供,所以也可以不完全纳入标准单元库中[2]。
图1 单元库种类
a)标准单元
标准单元包括反相器、与门、寄存器、选择器、全加器等多种基本单元,每一个标准单元对应着多个不同尺寸(W/L)、不同驱动能力的单元电路,而且不同驱动强度电路都是基本尺寸或最小尺寸的整倍数。 单元库的多样性可以有效提髙综合工具和自动布局布线工具的效率,同时也使得设计者可以更加自由地在性能、面积、功耗和成本之间进行优化。
为了实现工具的自动布局布线,建库时即在标准单元版图设计时有许多特殊的设计规则,大致如下:
1)所有单元都是等髙的矩形,或者髙度是基本高度的整数倍,以确保电路设计阶段不会使用其他非常规的尺寸。
2)为保证各单元与其他单元放置时不引起 DRC错误,所有版图要用预先定义的模板进行设计。
3)由于经典布线器采用基于网格的方法进行布线连接,这一方法可以简化布线工具的算法,减小计算机占用的内存资源。 因此所有单元的输人输出端口的位置、大小、形状都尽童满足网格间距的要求,以提高布线器的效率。
4)电源线和地线一般位于单元的上下边界,以便于连接共享,减小芯片面积。
b)模块单元
模块单元(block)包括各种规模的数字模块:RAM、ROM、COT、IP、电压比较器等,也包括模拟模块:运算放大器、ADC/DAC、锁相环、振荡器等。
模块单元的版图实现及其物理建库与标准单元相似。对于 RAM 或 ROM模块单元的建库,可以仿照标准单元的过程,先建立RAM或ROM基本单元,再根据比特(bit)长和字(word)长,用半自动化的方法自底向上堆砌生成版图。对于具有特殊要求的数字模块,如IP和COT 模块,则通过全定制的方法建立版图供建库使用。
c)I/O单元
芯片与印刷电路板通信的接口电路统称为 I/O 电路。它作为芯片与外界通信的接口必须具有较大的驱动能力,抵御静电放电的能力,抗噪声干扰的能力以及足够的带宽和过电保护功能。 I/O 的种类包括输入 1/0、输出 I/O、双向输人输出 I/O、供电 I/O 和接地 I/O。I/O的组成大致可分为三部分,即 PAD接口、信号缓冲电路和静电放电保护电路 ESD。
用途
标准单元库用来为逻辑综合及布局布线工具提供支持,导出以下文档用来进行支持:
GDSII文件:包含了单元的版图信息,用来合成最终的全芯片版图;
LEF文件:本文件是SOC ENCOUNTER环境下用于进行布局布线的文件,该文件为布局布线工具提供了工艺信息和各个单元的几何特性;
时序文件:时序文件用于Design Complier及其他数字综合工具进行门级综合,用于SOC ENCOUNTER等布局布线工具进行时序优化和调节。
电路逻辑和符号库:用于进行大规模的芯片电路设计。
设计流程
标准单元库的设计主要包括电路设计和版图设计记忆文档的提取。其中电路设计环节要确定库容量的确定和时序曲线的优化,在这一设计中要最终确定所需的单元类型和驱动能力,电路设计完毕后进行版图的设计,往往通过全定制的人工设计进行。不过也有一些自动化的工具进行,如CELLERITY和CLIP。
参考文献:
[1]罗静,陶建中,0.5um CMOS标准单元库建库流程技术研究,电子与封装,2006,33,23-27
[2]陈春章,数字集成电路物理设计,科学出版社,2008,39-41
原创文章,作者:kepupublish,如若转载,请注明出处:https://blog.ytso.com/167319.html