2013-3-1 1
第七章 半定制设计模式
2013-3-1 2
§ 1 引 言
? 按版图设计自动化程度分,
手工设计
半自动设计
全自动设计
? 按版图结构及制造方法分,
半定制( semi-custom)
全定制( full-custom)
2013-3-1 3
§ 2 门阵列、宏单元阵列及门海
一, 门阵列设计模式 (gate array )
门阵列设计模式又称为母片 ( master
slice) 法 。 它预先设计和制造好各种规
模的母片, 如 1000门, 3000门, 5000门,
10000门 …… 母片上除其金属连线及引
线孔以外的各层图形均是固定不变的,
且以阵列形式排列 。
2013-3-1 4
? 母片结构
2013-3-1 5
? 基本单元
在门阵列母片中,一个基本单元是以三
对或五对管子组成,基本单元的高度,
宽度都是相等的,并按行排列。
2013-3-1 6
? 单元库中存放的信息,
NAND3
电路图
逻辑图
版图:孔, 引线
电路参数,
扇入, 扇出
门延迟时间
2013-3-1 7
? 单元库
单元库中存有上百种不同功能的单元电路,这
些单元作为系统设计的基础,可以重复使用。
它是由 Foundry提供的。
? 门阵列的生产制造可以分为两个相对独
立的过程,
第一个过程是母片的制造, 同时提供与之配套
的单元库 。
第二个过程是根据用户所要实现的电路,完成
母片上电路单元的布局及单元间连线。然后对
这部分金属线及引线孔的图形进行制版、流片。
2013-3-1 8
? 门阵列的设计流程 在书 P74,图 4.10中给出。
? 门阵列设计的优点,
( 1) 事先制备母片, 使设计周期缩短 。
( 2) 母片及库单元都是事先设计好, 并经
过验证 。 因此, 正确性得到保证 。
( 3) 门阵列模式非常规范, 自动化程度高 。
( 4) 价格低, 适合于小批量的 ASIC设计 。
2013-3-1 9
? 门阵列设计的缺点,
( 1)芯片利用率低,70%左右。
( 2)不够灵活,对设计限制太多。
( 3)布通率不能做到 100%布通,要人工
解决剩线问题。
2013-3-1 10
二, 宏单元阵列模式 ( macro-cell array)
为了提高门阵列的芯片利用率, 一种改进
的结构是去掉垂直方向的走线通道, 跨越
单元行的线可以利用空闲栅来完成 。
2013-3-1 11
三, 门海设计模式 ( sea of gates)
门海设计模式进一步改进了宏单元阵列的版图结
构, 取消了水平方向的走线通道, 成为一种无通
道 ( channel-less) 的门阵列, 它仍然保留了半定
制设计法的优点:母片预制 。
2013-3-1 12
§ 3 标准单元设计模式
( Standard Cell Design Style)
标准单元设计与门阵列设计的最大区
别是它没有母片。但是,它有单元库,
版图中晶体管的排列是规则的,在制
造时,需要从头开始制版。
2013-3-1 13
? 标准单元设计模式
A
B
C
D
A B CD B
B A B B C
D C A B C D
VDD GND
单元库
空单元
走线道
第一层金属 第二层金属
压焊块
2013-3-1 14
? 标准单元设计方法
* 标准单元中的基本单元是等高的并按
行排列
* 行与行之间留有水平布线通道
* 单元行之间的垂直方向有垂直走线道、
内部走线道。
* 电源、地线水平规则排列。
2013-3-1 15
? 单元库
单元库中存有 100~200种单元电路
* 单元名、逻辑图、电路图、电路参数、
物理版图。
* 单元的逻辑功能、电学性能及几何设计
规则等都是经过验证和分析的。
* 单元物理版图包括各层图形。
* I/O单元的设计。
2013-3-1 16
? 输入保护单元
2013-3-1 17
? 输出驱动单元
2013-3-1 18
? 去掉金属铝
2013-3-1 19
? 标准单元模式的优点
( 1) 比门阵列更加灵活的布图方式 。
( 2) 可以解决布通率问题, 达到 100%布通
率 。
( 3) 单元库预先设计, 可以提高布图效率 。
( 4) 标准单元设计模式, 由于其自动化程度
高, 设计周期短, 设计效率高 。 十分适用
于 ASIC的设计, 是目前应用最广泛的设计
方法之一 。
2013-3-1 20
? 标准单元的改进
* 增加了布线层数 ( 3~8层 ) 和采用, 跨单
元布线, ( over-cell routing) 技术 。
* 允许出现双高的单元 。
* 单元引线端的位置也可以任意, 不一定
要在单元的上下边界上, 这样有利于提
高芯片的利用率 。
* 含有大模块的标准单元, 给自动布图算
法带来了一定难度 。
* 无通道的标准单元 。
2013-3-1 21
? 标准单元布图模式存在的问题
* 当工艺更新之后,标准单元库要随之
更新,这是一项十分繁重的工作。
* 为了解决人工设计单元库的费时问题,
设计重用( Reuse) 技术可用于解决单
元库的更新问题。
* 混合模式的标准单元布图算法研究。
2013-3-1 22
§ 4 现场可编程门阵列( FPGA)
现场可编程门阵列 ( Field Programmable
Gate Array) 是一种可编程器件, 它是近
几年迅速发展起来的, 用于 ASIC设计的
一种新方法 。
FPGA提供了用户可编程和自己制造的能
力, 极大地缩短了设计和制造时间 。
2013-3-1 23
? FPGA设计方法
一个 FPGA芯片由若干个可编程的逻辑
模块组成,它们既可以排列成如门阵
列那样的块阵列,也可以排列成如宏
单元阵列那样的行模式。也可以排列
成如门海那样的无通道的模阵列。这
些逻辑模块可用一个可编程的布线网
络进行互连。一个典型的 FPGA逻辑
模块比门电路复杂,但比标准单元模
式中的单元简单。
2013-3-1 24
? FPGA设计例子
D
2013-3-1 25
? 布尔表达式
P1 P2 P3 P4
A B D B C E D E F D E G
0 0 0 0 0 0 0 0 1 0 0 0
0 1 1 0 1 1 0 1 1 0 1 0
1 0 1 1 0 1 1 0 1 1 0 0
1 1 0 1 1 1 1 1 0 1 1 1
2013-3-1 26
? FPGA结构
A
B
C
F
G
VDD
GND
B1 B2 B3
B10 B1 1 B12
B4 B5 B 6
B7 B8 B9
2013-3-1 27
未编程半成品
系统 /逻辑设计
模拟验证
布图
编程文件
母片
在 IC 工厂,
母片
在用户现场,
未编程半成品
掩膜编程
测试, 划片, 封装
用户产品
编程器现场编

测试检验
用户产品
2013-3-1 28
标准单元布图流程
Netlist Library
Technology constraints
Global & Slot Placement
Grg Generation
Resource Estimation
Special Routing
2013-3-1 29
Cross Point Assignment
Layer Assignment
Detailed Area Routing
End
Initial Steiner Tree
Global Routing
2013-3-1 30
? 标准单元布局
问题描述,
输入, 1 单元库(包括时延信息);
2 互连信息;
3 约束条件(芯片高度 /行数、区域限制、
行方向、障碍、时延、功耗等);
输出, 单元位置。
目标, 在满足所有约束的条件下优化芯片面积和
拥挤度。
2013-3-1 31
标准单元总体布局结果
2013-3-1 32
标准单元详细布局
总体布局结果 详细布局结果
(a) (b)
2013-3-1 33
标准单元详细布局结果
2013-3-1 34
? 布线拥挤区的不可预见性和总体布线结果对布
线顺序的依赖性是总体布线算法面临的两大主
要问题。
? 算法目标,
- 减小线网布线顺序对总体布线结果的影响
- 加强对布线拥挤区域的预测,避开拥挤区域
- 引入时延、高频串扰、功耗等优化目标
- 提高布线算法效率,降低其时间 /空间复杂度
总体布线中要解决的关键问题
2013-3-1 35
总体布线图( GRG)
P A D
T i l e 分割线
T i l e
G R G 边 单元行
G R G
节点
2013-3-1 36
1
12
2
3 3
4
4
4
5 5
6
6
7
8
9
7 8
9
1
2
总体布线图及总体布线示意图
2013-3-1 37
标准单元总体布线结果
2013-3-1 38
总体布线结果显示
2013-3-1 39
标准单元详细布线
引脚 通孔
轨道

上边
下边 干 狗腿
2013-3-1 40
HVH模式 VHV模式
Track 1
Track 2
Track 3
Track 1
Track 2
各种通道布线模型
2013-3-1 41
通道布线实例
2013-3-1 42
开关盒布线实例
2013-3-1 43
有网格区域布线实例
2013-3-1 44
无网格布线结果
2013-3-1 45
无网格布线结果(局部)