逻辑综合

Download Report

Transcript 逻辑综合

Slide 1

数字系统设计及VHDL实践

专题二

专用集成电路(ASIC)设计概述
主 讲 人:徐向民


位:电子信息学院


Slide 2

ASIC介绍
• ASIC:application-specific integrated
circuit,译为专用集成电路。
• ASIC的例子:玩具机器人芯片、卫星芯片、
工作站CPU中存储器与微处理器之间的接
口芯片、微处理器与其他逻辑单元作为一
个单位的芯片。


Slide 3

ASIC介绍
• ASIC类型:


Slide 4

ASIC介绍—全定制ASIC
• 全定制IC包括一些(也可能全部)定制的
逻辑单元和全部定制的掩膜层。微处理器
就是一个全定制IC。专门的全定制IC常为
特殊应用而设计,所以称为全定制ASIC。


Slide 5

ASIC介绍—半定制ASIC
• 基于标准单元的ASIC(cell-based IC,CBIC)。
采用预先设计好的标准逻辑,如与门、或门、多
路开关、触发器。
• 基于门阵列的ASIC。晶体管在硅圆片上是预先确
定的,门阵列上预先确定的晶体管图案即为基本
阵列。
通道式门阵列;
无通道门阵列;
结构式门阵列。


Slide 6

ASIC半定制与全定制
• 半定制集成电路设计方法:
设计者可以只完成硬件的逻辑门级结构描述,然后由
集成电路制造者用门阵列或者标准单元方法将逻辑门级结
构映射到版图,最后制造集成电路。

• 全定制集成电路设计方法:
设计者自行设计出集成电路的掩膜版图,由集成电
路制造者根据版图数据制造集成电路。


Slide 7

ASIC介绍—设计流程
下面是设计ASIC的设计流程:
1、设计输入:HDL或电路图输入把设计输入给
ASIC设计系统;

2、逻辑综合:采用HDL和逻辑综合工具产生网表;
3、系统划分:将大型系统划分为几个ASIC;
4、布图前仿真:检查设计功能是否正确;


Slide 8

ASIC介绍—设计流程
5、布图规划:在芯片上排列网表的模块;
6、布局:决定模块中单元的位置;
7、布线:单元与模块之间的连接;

8、提取:确定互连的电阻和电容;
9、布图后仿真:加上互连线负载后检查 设计能
否正常工作。


Slide 9

ASIC介绍—设计流程
• 设计流程说明:
上述的步骤1~4为逻辑设计部分(前端设计),
步骤5~9为物理设计部分(后端设计),其中有些
是重叠的,如系统划分可认为是逻辑设计也可认
为是物理设计。在执行系统划分的时候,必须既

考虑逻辑因素也考虑物理因素。


Slide 10

“自底向上”和“自顶向下”
系统级
算法级

寄存器级
逻辑门级
电路级,版图级…

传统:自底向上

现代:自顶向下


Slide 11

典型ASIC设计流程
系统设计

系统验证

算法设计

算法验证

RTL设计

RTL验证

前端流程

后端流程

逻辑综合
向foundry提交网表
后仿真

Foundry进行版图设计
Foundry返回最终网表
foundry流片


Slide 12

详细ASIC设计流程

1)结构及电气规定。
2)RTL级代码设计和仿真测试平台文件准备。
3)为具有存储单元的模块插入BIST(Design For test设计)。
4)为了验证设计功能,进行完全设计的动态仿真。
5)设计环境设置。包括使用的设计库和其他一些环境变量。
6)使用 Design Compiler工具,约束和综合设计,并且加入扫描链(或者
JTAG)。
7)使用 Design Compiler自带静态时序分析器,进行模块级静态时序分析。
8)使用 Formality工具,进行 RTL级和综合后门级网表的 Formal
Verification。
9)版图布局布线之前,使用PrimeTime工具进行整个设计的静态时 序分析。
10)将时序约束前标注到版图生成工具。


Slide 13

详细ASIC设计流程
11)时序驱动的单元布局,时钟树插入和全局布线。
12)将时钟树插入到DC的原始设计中。
13)使用 Formality,对综合后网表和插入时钟树网表进行
Formal Verification。
14)从全局布线后的版图中提取出估算的时间延时信息。
15)将估算的时间延时信息反标注到Design Compiler或者
Primetime。
16)在Primetime中进行静态时序分析。
17)在Design Compiler中进行设计优化。
18)设计的详细布线。


Slide 14

详细ASIC设计流程
19)从详细布线的设计中提取出实际时间延时信息。
20)将提取出的实际时间延时信息反标注到Design Compiler
或者Primetime中。
21)使用Primetime进行版图后的静态时序分析。
22)在 Design Compiler中进行设计优化(如果需要)。
23)进行版图后带时间信息的门级仿真。
24) LVS和DRC验证,然后流片。


Slide 15

典型FPGA应用设计流程
系统设计

系统验证

算法设计

算法验证

RTL设计

RTL验证

EDA工具辅助完


逻辑综合
布局布线

后仿真

数据流下载

硬件验证


Slide 16

ASIC介绍—ASIC单元库
• ASIC单元库是ASIC设计中的关键部分。对可编
程ASIC而言,FPGA公司以成套设计工具形式提
供逻辑单元库,通常用户没有其他选择;
对其他用户而言,用户有3种选择:
1、ASIC供应商提供单元库;
2、从第三方单元库供应商处购获单元库;
3、自行开发自己的单元库。


Slide 17

ASIC介绍—ASIC单元库
• ASIC的单元库的每个单元必须包括以下内容:
• 物理版图
• 行为级模型
• Verilog/VHDL模型
• 详细时序模型
• 测试策略
• 电路原理图

• 单元图符
• 连线-负载模型
• 布线模型


Slide 18

ASIC介绍—经济学
• 我们把ASIC本身看作产品,并分析其成本
组成:固定成本和可变成本。
• ASIC工艺对成本的影响:选择不同工艺类
型的单元和器件,要考虑到它们的成本。
• 产品成本:产品成本=产品固定成本+产品
可变成本×产品售出数量;


Slide 19

ASIC介绍—经济学
我们使用FPGA时,固定成本较低,使用MGA或
者CBIC元件时的固定成本较高并包含掩膜、仿真、
测试程序开发费用。
• ASIC固定成本:培训学习费用,设计ASIC的软
硬件费用,测试费用,编程费用,掩膜成本等等。
• ASIC可变成本:每两年连续推出新的工艺技术驱
使每门价格按每年30%速度下降;Moore定律。


Slide 20

ASIC库设计
• 库单元设计:库单元版图可由手工完成,
也可使用某种符号版图形式。
• 门阵列设计:门阵列库中每个逻辑单元是
预先设计好的,是采用确定的晶体管排列,
即门阵列基本单元进行设计的。
• 标准单元设计:标准单元都是具有同样高
度但不同宽度的矩形。
• 数据通路单元设计:数据通路触发器。


Slide 21

可编程ASIC
• 有两种可编程ASIC类型:可编程逻辑器件(PLD)
和现场可编程门阵列(FPGA)。
PLD:开始时只是作为能替代少量TTL的小器件

FPGA:IC芯片制造厂生产出未连接FPGA,由设
计者设计输入和仿真,接着,专用软件产生一串
二进制位,描述需要完成设计的外加的连接-配置
文件。然后,将计算机连接到芯片上并对芯片进
行编程,使其按照配置文件完成必要的连接。


Slide 22

可编程ASIC
所有的FPGA都有某些共同的要素。都有规则化的
基本逻辑单元阵列,并用可编程技术进行配置。芯片
输入和输出使用与基本逻辑单元不同的专用I/O逻辑单
元。可编程互联方式形成这两种逻辑单元之间的连接。
最后,设计者使用适合于各种编程技术和FPGA结构
的定制软件设计和实现可编程连接。FPGA中的可编

程技术决定了基本逻辑单元的类型和互联方式,由此
也决定了输入和输出电路的设计以及编程方式。


Slide 23

FPGA开发模式

计算机

下载电缆

目标板


Slide 24

表 可编程ASIC技术
Actel

Xilinx
LCA

Altera
EPLD

Xilinx
EPLD

Quicklogic

Cross- Atmel
point

Altera
FLEX

编程
技术

多晶-扩
散反熔
丝,
PLICE

可擦除
SRAM
ISP

UV-可擦

EPROM
EEPROM

UV-可擦

EPROM

金属-金属
反熔丝,
通孔连接

金属-多
晶硅反熔


可擦除
SRAM
ISP

可擦除
SRAM
ISP

编程
单元
大小

小,但
需要连
到金属
的接触

两个反
相器加
传输和
开关器
件。最


1个n沟
EPROM
器件。中


1个n沟
EPROM
器件。中


最小



两个反相
器加传输
和开关器
件。最大

两个反相
器加传输
和开关器
件。最大

工艺

特殊:
另加3层
掩膜的
CMOS

标准
CMOS

标准
EPROM

EEPRO
M

标准
EPROM

特殊:加
通孔连接
的CMOS

特殊:加
反熔丝的
CMOS

标准
CMOS

标准
CMOS

编程
方法

专门硬


PC卡,
PROM
或串口

ISP或
EPROM
编程器

EPROM
编程器

专门硬件

专门硬件

PC卡,
PROM或
串口

PC卡,
PROM或
串口


Slide 25

可编程ASIC逻辑单元
• 所有可编程ASIC或FPGA芯片都含有可以复制规则阵列的
基本逻辑单元。共有3种基本逻辑单元:
1)基于多路选择器的基本逻辑单元;
2)基于查找表的基本逻辑单元;
3)可编程阵列逻辑。
• Actel ACT
• Xilinx LCA
• Altera FLEX
• Altera MAX


Slide 26

可编程ASIC的输入输出(I/O)单元
• 所有可编程ASIC都含有某种输入/输出单元,用来驱动片
外逻辑信号、接收和调节外部信号以及处理诸如静电保护
类的事宜。

• DC输出
• AC输出
• DC输入

• AC输入
• 时钟输入
• 电源输入

• 其他I/O单元


Slide 27

可编程ASIC的互连
• 所有FPGA都包含某些类型的可编程互联连。
互连的结构和复杂程度主要取决于编程技

术及基本逻辑单元的结构。构筑互连的原
始材料是铝基金属。


Slide 28

可编程ASIC的互连
蓝色:逻辑单元

红色:连线资源
黄色:输入输出块


Slide 29

可编程ASIC设计软件
• 设计系统:完成设计输入—仿真器仿真—布局布
线—时序仿真。
• 逻辑综合:在FPGA设计中有两种方法实验逻辑
综合。
一是采取硬件描述,优化逻辑,接着产生网表,然后网表
通过软件将其映射成FPGA结构。

二是采用硬件描述对特定的FPGA结构直接优化逻辑。


Slide 30

低层次设计输入
• 设计输入的目的是描述一个微电子系统使其适合
于电子设计自动化EDA工具。电子系统过去是现
在大多仍是由现场元件构成(如TTLIC)。这些
电子系统的设计输入通常是画一张图,即一张原
理图。原理图展示了这些电路元件是如何连接起
来的,即描述了ASIC的连接特性。这种设计输入
方式成为原理图输入或原理图获取。用电路原理
图描述ASIC电路如同用建筑结构图描述一座建筑。


Slide 31

低层次设计输入
• 电路原理图是我们易于理解和使用的一种形式,
但是计算机只认识ASCII码和二进制码表示的原
理图,我们称之为网表。原理图输入工具的输出
就是这样一个包含了设计中所有元件及其互联信
息的网表文件。


Slide 32

低层次设计输入
• 近来大部分ASIC设计输入都用原理图输入。
随着ASIC电路的日益复杂,其他的一些设
计输入方式也正变得越来越普遍。目前可
选择的设计输入方式有图形方式。使用硬
件描述语言作为设计输入使我们能够通过
逻辑综合直接产生网表。


Slide 33

低层次设计输入
• 原理图输入是ASIC设计中最为通用的一种,有时
也是最实用的。HDL正在取代传统的门级原理图
输入,但是一些新的基于原理图输入的图形工具
现在正在被用来生成大量的HDL代码。

• ASIC设计的原理图输入工具类似于印刷电路板
PCB设计工具,如果认为ASIC的一个逻辑门和
PCB中的一个零件是等同的话,那么一个规模较
大的ASIC电路就包含成千上万个零件。


Slide 34

低层次设计输入
• 低层次设计语言
随着TTL让位于PLD,基于文本形式的设计
工具变得更为流行了,并且设计文件的形
式也成为事实上的标准。


Slide 35

ASIC设计工具软件
ASIC 设计的软件提供商主要有CADENCE、SYNOPSYS
和MENTOR 等公司。它们都能提供全定制集成电路设计环
境和工具、标准单元设计、综合、仿真、布局布线以及版图
验证等一整套软件。基于EDA平台的这些软件,可以完成
各种集成电路设计的全部流程,包括全定制集成电路设计流
程、数字电路自动化设计流程、模拟电路设计流程和FPGA
设计流程等等。下面就常见的工具软件进行一些归类和说明。
至于它们的使用方法请大家参阅相应手册,这里就不多着墨,
仅列提纲如下:


Slide 36

ASIC设计工具软件
(1)设计语言:VHDL、Verilog HDL、AHDL、System C 等等。
(2)各阶段典型软件:
• 输入及调试工具:Summit、Debussy、以及Xilinx、Altera 等开发
的套件。
• 仿真工具:Modsim、Verilog-XL、NC-Verilog、NC-VHDL、VSS、
Active HDL
• 综合器:Design Compiler、Physical Compiler、Ambit logic
synthesis
• 布局布线工具:Preview、Silicon Ensemble、Apollo 系列、STHspice
• 版图验证工具:Dracula、Diva、Cosmos SE
• 静态时序分析:Prime Time
• 测试:DFT Compiler


Slide 37

硬件描述语言--VHDL
• VHDL: Very-High-Speed Integrated
Circuit Hardware Description Language

• 诞生于1982年。1987年底,VHDL被IEEE
和 美国国防部确认为标准硬件描述语言 。
自IEEE公布了VHDL的标准版本,IEEE1076(简称87版)之后,各EDA公司相继推
出了自己的VHDL设计环境,或宣布自己的
设计工具可 以和VHDL接口。


Slide 38

硬件描述语言--VHDL
• 此后VHDL在电子设计领域得到了广泛的接受,并逐步取
代了原有的非标准的硬件描述语言。1993年,IEEE对
VHDL进行了修订, 从更高的抽象层次和系统描述能力上
扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准
的1076-1993版本,(简称93版)。现 在,VHDL和
Verilog作为IEEE的工业标准硬件描述语言,又得到众多
EDA公司的支持,在电子工程领域,已成为事实上的通用
硬件描述语言。


Slide 39

硬件描述语言—Verilog HDL
• Verilog 是由Gateway Design Automation公司
于大约1984年开发并将其作为一种仿真工具。
Gateway Design Automation公司后来被
Cadence Design Systems于1990年所购并。现
在 Cadence 对于 Gateway 公司的 Verilog 和
Verilog-XL 模拟器拥有全部的财产权。 Verilog
仿真器和工具都严格遵守IEEE标准。


Slide 40

数字集成系统设计与综合
• 集成电路设计过程:

硬件的高层次抽象描述
硬件的低层次物理描述

•把硬件的一种描述形式转换成另一种描述形式
采用手工方式
采用自动化的计算机辅助设计工具
设计

综合


Slide 41

数字集成系统设计与综合
设计层次

系统级
算法级

寄存器级
门级
版图级

行为域

结构域

自然语言描述
自然语言综合(设计)
算法描述
算法综合(设计)
数据流图描述
逻辑综合(设计)
逻辑图描述
版图综合(设计)
几何图形描述


Slide 42

数字集成系统设计与综合
综合的过程由两部分组成:
第一步:简单的转换。
第二步:优化。

综合器不可能找出硬件设计
的全部可能实现方式,从而
不可能得出最优的方案。

有经验的电路设计者直接在中间层次(寄存器传输级等)设计
的硬件质量要比综合器产生的好。
自动综合工具被广泛采用的原因:设计方案是否最优
并不重要,而设计成本和设计的可靠性(不出错误)是必
须最先考虑的因素。


Slide 43

逻辑综合
• 就像C语言编译器提供了C源程序与机器语
言之间的连接一样,逻辑综合器提供了硬
件描述语言HDL和网表之间的连接。
• 逻辑综合后将再次进行设计仿真,并和行
为级的仿真结果进行比较。逻辑综合产生
的结构模型可以生产任何类型的ASIC版图。


Slide 44

逻辑综合
• 设计人员用图形或文本的设计输入创建
HDL行为级模型,不包含任何逻辑单元的
引用,在描述HDL时,采用状态图、图形
化的数据通路描述、真值表、RAM/ROM模
板、门级原理图等。行为级HDL模型完成
后,逻辑综合器以及单元库(也称为目标
库)就要被应用来开始进一步的工作。


Slide 45

逻辑综合
• 逻辑综合器可能有几十万行的代码,我们
应该在实际的设计中简化输入(减小总线
宽度、简化代码或者进一步划分模块等),
我们可以通过观察单元的数目、类型与驱
动能力来了解逻辑综合器在干什么。
• 例如,如果在关键路径上存在大量驱动能
力很弱的单元,则通常暗示综合软件还有
一定的余地来提高这个电路的速度。


Slide 46

逻辑综合
• 通过用驱动能力大的单元来替代这些驱动能力弱
的单元。但是在有些情况下不是这样,有时驱动
能力强的单元反而会降低电路速度,因为增加大
的单元同时加大了负载电容,但却没有足够的驱
动来弥补,这就是我们为什么要进行逻辑综合度
量的原因。
• 理想情况下,物理设计和逻辑综合设计应该同时
完成,这样可以确保在布线完成后互联延迟的估
计值与实际值很吻合。


Slide 47

仿真
• 电子工程师们都习惯于使用原型来检验自己的设
计,比如使用已有连接孔的电路试验板,只要插
入互联先和IC就可以检验自己的设计。
• 对于ASIC电路来说,使用电路板是不现实的,作
为替代,ASIC设计工程师转而使用仿真作为一种
新型的等效的检验设计的方式。


Slide 48

仿真
• 仿真类型:
行为仿真
功能仿真
静态时序仿真
门级仿真
开关级仿真
晶体管级仿真(电路级仿真)
以上列表是从高层次到低层次的仿真排序(层次越高越抽
象,层次越低越具体)。从高层次到低层次的仿真的仿真
结果越来越准确,也越来越复杂和费时。


Slide 49

仿真
• 建立仿真模型可以有多种方式,一种方法就是将
系统的组合用有输入和输出的黑盒进行建模,这
种仿真类型通常称为行为仿真。行为仿真不包含
时序信息,仅仅告诉我们设计是否能工作。
• 功能仿真忽略时序,并把延迟设为固定值,进行
单位延迟仿真。
• 在行为仿真和功能仿真预测系统工作正确之后,
接下来就是检查时序性能。此时,系统被划分为
ASIC,并对每一个ASIC分别进行时序仿真。


Slide 50

仿真
• 有一类时序仿真器利用时序分析,计算每一条路
径的延迟,并以静态的方式进行逻辑分析,被称
之为静态时序分析。静态时序分析不需要建立一
组测试矢量。静态时序仿真是使用最多的仿真,
但是它可能产生虚假路径(不可能激活的关键路
径)。
• 门级仿真经常被用来检查ASIC性能。对于门级仿
真器,一个逻辑或逻辑单元用黑盒来模拟,一个
逻辑门或逻辑单元的函数变量是输入信号。


Slide 51

仿真
• 如果逻辑门的黑盒模型提供的时序仿真还不够精
确,可以进行更仔细的开关级仿真。开关级仿真
将晶体管模拟为开关(开或关)。开关级仿真比
门级仿真提供了更精确的时序预估,但不可能用
逻辑单元延迟作为模型参数。开关级仿真可以被
用来检验电路行为,而电路节点并非一直被驱动
或者是使用非互补逻辑。


Slide 52

仿真
• 最精确也是最复杂、最费时的仿真形式是
晶体管级仿真,使用晶体管级仿真器要求
有晶体管的模型,该模型提供晶体管的非
线性电压和电流特征。当我们需要了解电
路电压的模拟行为而不是数字行为时,我
们可采用晶体管级仿真。


Slide 53

仿真
• ASIC芯片设计的不同阶段都会用到仿真。
初期的布图前仿真包括了逻辑单元的延迟,
但不包括互联的延迟。逻辑综合完成之后
包含了电容估算,但是只有在版图设计之
后才有可能实现精确的布图后仿真。


Slide 54

测试
• 所有的ASIC产品都需要经过测试(可编程
ASIC在定制前有制作者进行测试,但它们
还需要再测试)。小规模或中规模模块中
的简单单元采用自动化技术测试,但诸如
RAM或乘法器之类的大模块需要规划其测
试策略。


Slide 55

测试
• ASIC的产品测试在制造过程中分2次进行:
• 第一次测试是在制造工艺完成后对硅圆片
进行测试或分类的时候对管芯进行测试;
• 第二次测试是对封装好的ASIC进行的,这
是ASIC产品递交用户前的最后测试。


Slide 56

测试
• 测试的重要性
产品质量是用缺陷水平来度量的,我们设
计的专用集成电路ASIC的缺陷水平需要靠
有效的测试手段来保证,相应地也决定了
ASIC产品的质量和市场前景。
如果不重视测试的作用,我们以后可能为
此付出高昂的代价。


Slide 57

测试
• 测试中的故障
ASIC制造是一个复杂的过程,需要经过上百道工
艺步骤。缺陷往往会引起故障。
制造中的任何问题都可能引起晶体管无法正常工
作或者是互联线的短路或者断路。

金属化过程中一般会产生2种常见的缺陷:金属刻
蚀不清、刻蚀过度使金属线断裂或电路开路。
故障一般分为物理故障和逻辑故障。


Slide 58

ASIC设计流程
系统规范说明

系统划分

逻辑设计与综合

版图验证

版图设计

综合后仿真

参数提取与
后仿真

制版、流片

芯片测试


Slide 59

自动版图设计过程
单元库
输入

逻辑划分

布图规划

布局

布线

人机交互

设计检验

输出


Slide 60

布图规划
• 布图规划:根据电路(门级)网表、估计的芯片的大体面积
和形状、各功能块的大体形状面积、功能块的数目、输入
/输出数目等,对设计的电路进行物理划分和预布局。先
进行初始规划(initialize floorplan),产生输入/输出行,
单元区行以及布线网格等,然后进行行调整、芯片面积调
整、布线网格调整,并进行预布局,初步确定各功能块的
形状面积及相对位置、I/O位置以及芯片形状尺寸,而且
可以从总体上考虑电源、地线、数据通道分布
(datapath plan)
• 总之,布图规划(Floor Plan) 就是在保证布线能够走通、
性能允许的前提下,如何最大限度的减少芯片面积。


Slide 61

自动布局
• 布局概念:按电路功能、性能、几何要求,放
置各部件。

• 目标:芯片面积最小、性能优化。
• 过程:初始布局、布局迭代改善。


Slide 62

自动布线
• 概念:满足工艺规则、布线层数限制、线宽、线间距限制
和各线网可靠绝缘等,根据电路的连接关系进行连线,
100%连通,使芯片面积最小。
• 包括总体布线、详细布线(通道布线)和特殊布线(时钟
布线和电源布线)。

• 布线质量评价:
– 布通率100%


布线面积最小



布线总长度最小



通孔数少



布线均匀


Slide 63

自动布线
• 自动设计很大程度受限于近似算法与版图结构,
可作人工调整;未布的单元、线、布线过密处

可作压缩处理。
• 布局布线算法的发展
– 时延驱动算法
0.18微米工艺:连线延迟与门延迟已经相当。对深亚微米电路,布
图优化目标由芯片面积最小调整到连线总延迟最小、性能优化,布
图中引入时延模型、时延分析。
– 多层布线算法


Slide 64

版图检查与验证
• 原因:人工介入、版图引入物理因素。
• 包括:DRC、ERC、LVS、后仿真。
版图

设计规则检查

网表与参数提取
原理图网表
版图网表

后仿真

电学规则检查

网表一致性检查


Slide 65

版图检查与验证
• DRC:设计规则检查(最小线宽、最小图形间距、最小
接触孔尺寸、栅和源漏区的最小交叠等)。
• ERC:检查电学规则,检测出没有电路意义的连接错误,
(短路、开路、孤立布线、非法器件等),介于设计规则
与行为级分析之间,不涉及电路行为。
• LVS:网表一致性检查。
– 概念:从版图提取出的电路网表与从原理图得到的网表进行比较,
检查两者是否一致。


Slide 66

后仿真
• 后仿真:考虑版图引入的寄生量的影响,进行后仿
真,保证版图能满足电路功能和性能的要求。
– 后仿真对象
• 参数提取程序提取出实际版图参数和寄生电阻、寄生电容等寄
生参数,进一步生成带寄生参数的器件级网表
• 提取得到寄生参数文件和单元延迟文件结合,通过延迟计算器
生成一个延迟文件,把该延迟文件反标(back-annotation)
到网表中

• 通过参数提取直接得到一个与路径延迟相关的延迟文件,进行
反标


Slide 67

物理综合
• 物理综合:
在传统的IC设计流程中,前端综合或时序分析时没有精确的线和CELL延
迟信息,这样就容易造成和布局后的时序不收敛。随着工艺的进步,线
延迟占主导地位,时序收敛问题越来越严重。根本的解决方法是前后端
的设计流程整合起来,物理综合就是在针对的这种情况。

• 主要功能:
1. 将RTL代码综合成已布局的门电路(关键功能)
2. 利用已存在的门级网表生成已布局的门电路
3. 采用内置的RTL性能原型设计(RPP)进行快速精确地实施可行性分析
4. 时钟树综合
5. 优化和精确的时序分析


Slide 68

新一代物理设计工具贯穿
物理综合和布线
• Synopsys推出新一代物理实现工具Galaxy IC Compiler,
它将物理综合、时钟树合成、布线、成品率最佳化与验收
(sign-off)相关性等功能整合在一起。该工具将代替
Synopsys的物理综合工具Physical Compiler和Astro布线
器。作为Synopsys Galaxy 设计平台的核心,与该平台中
的RTL综合工具Design Compiler一起,构成从RTL到
GDSII流程的全面解决方案。


Slide 69

新一代物理设计工具贯穿
物理综合和布线
•随着芯片设计的复杂度日益加剧,先进的芯片制造工艺与设计的变化,在
正确的时序验证与物理实现之间需要更紧密的连结。而且,成品率也不再
被视为后续流程而必须被纳入设计流程中。而在以前的设计工具中,布局、
时钟树合成与布线都是独立而不相关的步骤。这些挑战全都需要新的物理
设计工具加以解决。IC Compiler独特的架构能够消除彼此的间隔而统一物
理设计,利用Synopsys在综合、时序、布局、布线、光刻及验收上的核心
技术,再配合物理设计的创新作法,对物理设计提供从网表、到待试产、
直至GDSII产出的整套流程的最完整的支持。IC设计工程师可以在逻辑综合
以后使用IC Compiler,可以在单一步骤中同时实现布局、时钟树合成和布
线。通过Synopsys的Milkyway数据库,IC Compiler可以和PrimeTime静
态时序分析、Star-RC提取,以及其它工具进行通信。


Slide 70

ASIC逻辑综合
• ASIC逻辑综合是指在给定工艺库的基础上通过映射和优
化,将行为级描述的设计在一定的规约下转化为逻辑结构。
它是面向给定的设计约束,将高级的设计描述翻译和优化
到工艺库中的门级网表的自动化过程。
• 完成设计后,将设计的源程序导入Synopsys的Design
Compiler工具进行ASIC逻辑综合,综合后得到文件包括:
综合后的网表文件(一般为VERILOG格式)、时序信息
文件(SDF文件)。


Slide 71

ASIC版图自动布局布线设计


APR(Auto Place & Route,自动布局布线)是目前普
遍采用的芯片后端设计方法。使用EDA工具环境,快速、
自动地完成IP、逻辑门等的放置和物理连接。

• CADENCE公司的SE(Silicon Ensemble)是IC业内一
种较优秀的深亚微米自动布局布线工具,功能强大,操
作简单。在SE环境下,可以将综合生成的网表读入并与
工艺物理信息库及时序库配合,进行整个芯片的布局布
线。布局布线走通后,得到版图。


Slide 72

ASIC物理设计
• 在ASIC逻辑综合获得的网表通过了综合后的仿真之后,
即可进入ASIC物理设计阶段。ASIC物理设计包括平面布
图规划(floorplanning)、布局(placement)、以及布线
(rounting)等。ASIC 物理版图自动布局布线工具采用
Cadence 公司的Envisia Silicon Ensemble,简称SE。
SE完成APR的数据导出,比较有用的数据包括:GDS版
图数据(用于送到FOUNDRY厂商加工芯片)、Verilog
网表文件(用于后仿真)、SDF时延信息文件(用于后仿
真)。


Slide 73

ASIC的设计发展趋势
• 目前,芯片设计除了向更大规模、更高工艺技术的方向发
展外,还有两个明显的发展特征:一是向IP内核方向的发
展, 一是向SOC 的技术方向发展。下面分别简述之:
• IP 内核
IP 内核是指满足特定规范,并能在设计中复用的功能模
块。在IC 设计中,IP 内核复用可以有效地缩短产品开发
周期并降低成本。IP 内核可以在不同的硬件描述级别实
现,依据产品交付的方式,可分为三类IP 内核:软核
(Soft cores)、固核(Firm cores)和硬核(Hard cores)。


Slide 74

ASIC的设计发展趋势
• 软核通常以可综合的HDL 形式提供,因此具有较高的灵活
性,并与具体的实现工艺无关,其主要缺点是缺乏对时序、
面积和功耗的预见性。由于软核是以源代码的形式提供,尽
管源代码可以采用加密方法,但其知识产权保护问题不容忽
视。
• 硬核则以经过完全的布局布线的网表形式提供,这种硬核既
具有可预见性,同时还可以针对特定工艺或购买商进行功耗
和尺寸上的优化。尽管硬核由于缺乏灵活性而可移植性差,
但由于无须提供寄存器转移级(RTL)文件,因而更易于实现
IP 保护。


Slide 75

ASIC的设计发展趋势
固核则是软核和硬核的折衷。
目前常用的IP 内核主要有:
RISC:ARM、PPC、MIPS、SPARC 等
Controllers:USB、PCI、UART 等
Encryption:DES、AES 等
Multimedia:JPEG compressor、MPEG decoder 等
Networking:PHY、MAC、ATM switch 等
Memories:Specialized embedded memories、High
speed、Low power 等


Slide 76

SOC
• SOC 就是将系统的全部功能模块集成到单一半导体芯片上,包括CPU、
I/O 接口、存储器,以及一些重要的模拟集成电路等。功能模块化的系统
芯片具有易于增加新功能和缩短上市时间的显著特点,是ASIC设计业当
前、乃至可预见未来的主流设计方式。一个芯片如果包含了可编程处理
器、控制器、信号处理器和片上存储器等部分就是一个SOC 芯片。
• SOC技术的特点: ①半导体工艺技术的系统集成 ; ②软件系统和硬件系
统的集成。


Slide 77

SOC设计的关键技术
• 系统级芯片形成或产生过程包含以下三个
方面:
①基于单片集成系统的软硬件协同设计和验证;

②再利用逻辑面积技术使用和产能占有比例有效提高即开
发和研究IP核生成及复用技术,特别是大容量的存储模块
嵌入的重复应用等;
③超深亚微米(UDSM) 、纳米集成电路的设计理论和技术。


Slide 78

SOC设计的关键技术
•具体地说, SOC设计的关键技术主要包括总线架
构技术、IP核可复用技术、软硬件协同设计技术、
SOC验证技术、可测性设计技术、低功耗设计技
术、超深亚微米电路实现技术等, 此外还要做嵌
入式软件移植、开发研究, 是一门跨学科的新兴
研究领域。


Slide 79

SOC软硬件协同设计流程


Slide 80

SOC的发展重点
• 总线结构及互连技术,直接影响芯片总体性能发挥;
• 软、硬件的协同设计技术,主要解决硬件开发和软件开发同步进行问
题;
• IP可重用技术,如何对其进行测试和验证;
• 低功耗设计技术,主要研究多电压技术、功耗管理技术以及软件低功
耗利用技术等;
• 可测性设计方法学,研究eJTAG设计技术、批量生产测试问题;
• 超深亚微米实现技术,研究时序收敛、信号完整性、天线效应等。