Download presentation
Presentation is loading. Please wait.
1
数字系统设计及VHDL实践 专题二 专用集成电路(ASIC)设计概述 主 讲 人:徐向民 单 位:电子信息学院
2
ASIC介绍 ASIC:application-specific integrated circuit,译为专用集成电路。
ASIC的例子:玩具机器人芯片、卫星芯片、工作站CPU中存储器与微处理器之间的接口芯片、微处理器与其他逻辑单元作为一个单位的芯片。
3
ASIC介绍 ASIC类型:
4
ASIC介绍—全定制ASIC 全定制IC包括一些(也可能全部)定制的逻辑单元和全部定制的掩膜层。微处理器就是一个全定制IC。专门的全定制IC常为特殊应用而设计,所以称为全定制ASIC。
5
ASIC介绍—半定制ASIC 基于标准单元的ASIC(cell-based IC,CBIC)。采用预先设计好的标准逻辑,如与门、或门、多路开关、触发器。 基于门阵列的ASIC。晶体管在硅圆片上是预先确定的,门阵列上预先确定的晶体管图案即为基本阵列。 通道式门阵列; 无通道门阵列; 结构式门阵列。
6
ASIC半定制与全定制 半定制集成电路设计方法: 全定制集成电路设计方法:
设计者可以只完成硬件的逻辑门级结构描述,然后由集成电路制造者用门阵列或者标准单元方法将逻辑门级结构映射到版图,最后制造集成电路。 全定制集成电路设计方法: 设计者自行设计出集成电路的掩膜版图,由集成电路制造者根据版图数据制造集成电路。
7
ASIC介绍—设计流程 下面是设计ASIC的设计流程: 1、设计输入:HDL或电路图输入把设计输入给ASIC设计系统;
4、布图前仿真:检查设计功能是否正确;
8
ASIC介绍—设计流程 5、布图规划:在芯片上排列网表的模块; 6、布局:决定模块中单元的位置; 7、布线:单元与模块之间的连接;
8、提取:确定互连的电阻和电容; 9、布图后仿真:加上互连线负载后检查 设计能否正常工作。
9
ASIC介绍—设计流程 设计流程说明: 上述的步骤1~4为逻辑设计部分(前端设计),步骤5~9为物理设计部分(后端设计),其中有些是重叠的,如系统划分可认为是逻辑设计也可认为是物理设计。在执行系统划分的时候,必须既考虑逻辑因素也考虑物理因素。
10
“自底向上”和“自顶向下” 系统级 算法级 寄存器级 逻辑门级 电路级,版图级… 现代:自顶向下 传统:自底向上
11
典型ASIC设计流程 系统设计 系统验证 算法设计 算法验证 后端流程 RTL设计 RTL验证 逻辑综合 前端流程 向foundry提交网表
后仿真 foundry流片
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)将时序约束前标注到版图生成工具。
13
详细ASIC设计流程 11)时序驱动的单元布局,时钟树插入和全局布线。 12)将时钟树插入到DC的原始设计中。 13)使用 Formality,对综合后网表和插入时钟树网表进行Formal Verification。 14)从全局布线后的版图中提取出估算的时间延时信息。 15)将估算的时间延时信息反标注到Design Compiler或者 Primetime。 16)在Primetime中进行静态时序分析。 17)在Design Compiler中进行设计优化。 18)设计的详细布线。
14
详细ASIC设计流程 19)从详细布线的设计中提取出实际时间延时信息。 20)将提取出的实际时间延时信息反标注到Design Compiler或者Primetime中。 21)使用Primetime进行版图后的静态时序分析。 22)在 Design Compiler中进行设计优化(如果需要)。 23)进行版图后带时间信息的门级仿真。 24) LVS和DRC验证,然后流片。
15
典型FPGA应用设计流程 系统设计 系统验证 算法设计 算法验证 EDA工具辅助完成 RTL设计 RTL验证 逻辑综合 布局布线 后仿真
数据流下载 硬件验证
16
ASIC介绍—ASIC单元库 ASIC单元库是ASIC设计中的关键部分。对可编程ASIC而言,FPGA公司以成套设计工具形式提供逻辑单元库,通常用户没有其他选择; 对其他用户而言,用户有3种选择: 1、ASIC供应商提供单元库; 2、从第三方单元库供应商处购获单元库; 3、自行开发自己的单元库。
17
ASIC介绍—ASIC单元库 ASIC的单元库的每个单元必须包括以下内容: 物理版图 行为级模型 Verilog/VHDL模型 详细时序模型
测试策略 电路原理图 单元图符 连线-负载模型 布线模型
18
ASIC介绍—经济学 我们把ASIC本身看作产品,并分析其成本组成:固定成本和可变成本。
产品成本:产品成本=产品固定成本+产品可变成本×产品售出数量;
19
ASIC介绍—经济学 我们使用FPGA时,固定成本较低,使用MGA或者CBIC元件时的固定成本较高并包含掩膜、仿真、测试程序开发费用。
ASIC固定成本:培训学习费用,设计ASIC的软硬件费用,测试费用,编程费用,掩膜成本等等。 ASIC可变成本:每两年连续推出新的工艺技术驱使每门价格按每年30%速度下降;Moore定律。
20
ASIC库设计 库单元设计:库单元版图可由手工完成,也可使用某种符号版图形式。
门阵列设计:门阵列库中每个逻辑单元是预先设计好的,是采用确定的晶体管排列,即门阵列基本单元进行设计的。 标准单元设计:标准单元都是具有同样高度但不同宽度的矩形。 数据通路单元设计:数据通路触发器。
21
可编程ASIC 有两种可编程ASIC类型:可编程逻辑器件(PLD)和现场可编程门阵列(FPGA)。
PLD:开始时只是作为能替代少量TTL的小器件 FPGA:IC芯片制造厂生产出未连接FPGA,由设计者设计输入和仿真,接着,专用软件产生一串二进制位,描述需要完成设计的外加的连接-配置文件。然后,将计算机连接到芯片上并对芯片进行编程,使其按照配置文件完成必要的连接。
22
可编程ASIC 所有的FPGA都有某些共同的要素。都有规则化的基本逻辑单元阵列,并用可编程技术进行配置。芯片输入和输出使用与基本逻辑单元不同的专用I/O逻辑单元。可编程互联方式形成这两种逻辑单元之间的连接。最后,设计者使用适合于各种编程技术和FPGA结构的定制软件设计和实现可编程连接。FPGA中的可编程技术决定了基本逻辑单元的类型和互联方式,由此也决定了输入和输出电路的设计以及编程方式。
23
FPGA开发模式 计算机 下载电缆 目标板
24
表 可编程ASIC技术 Actel Xilinx LCA Altera EPLD Xilinx Quick-logic
Cross-point Atmel FLEX 编程技术 多晶-扩散反熔丝,PLICE 可擦除SRAM ISP UV-可擦除EPROM EEPRO-M 金属-金属反熔丝,通孔连接 金属-多晶硅反熔丝 可擦除SRAM ISP 编程单元大小 小,但需要连到金属的接触 两个反相器加传输和开关器件。最大 1个n沟EPROM器件。中等 最小 小 工艺 特殊:另加3层掩膜的CMOS 标准CMOS 标准EPROM和EEPROM 标准EPROM 特殊:加通孔连接的CMOS 特殊:加反熔丝的CMOS 编程方法 专门硬件 PC卡,PROM或串口 ISP或EPROM编程器 EPROM编程器
25
可编程ASIC逻辑单元 所有可编程ASIC或FPGA芯片都含有可以复制规则阵列的基本逻辑单元。共有3种基本逻辑单元:
1)基于多路选择器的基本逻辑单元; 2)基于查找表的基本逻辑单元; 3)可编程阵列逻辑。 Actel ACT Xilinx LCA Altera FLEX Altera MAX
26
可编程ASIC的输入输出(I/O)单元 所有可编程ASIC都含有某种输入/输出单元,用来驱动片外逻辑信号、接收和调节外部信号以及处理诸如静电保护类的事宜。 DC输出 AC输出 DC输入 AC输入 时钟输入 电源输入 其他I/O单元
27
可编程ASIC的互连 所有FPGA都包含某些类型的可编程互联连。互连的结构和复杂程度主要取决于编程技术及基本逻辑单元的结构。构筑互连的原始材料是铝基金属。
28
可编程ASIC的互连 蓝色:逻辑单元 红色:连线资源 黄色:输入输出块
29
可编程ASIC设计软件 设计系统:完成设计输入—仿真器仿真—布局布线—时序仿真。 逻辑综合:在FPGA设计中有两种方法实验逻辑综合。
30
低层次设计输入 设计输入的目的是描述一个微电子系统使其适合于电子设计自动化EDA工具。电子系统过去是现在大多仍是由现场元件构成(如TTLIC)。这些电子系统的设计输入通常是画一张图,即一张原理图。原理图展示了这些电路元件是如何连接起来的,即描述了ASIC的连接特性。这种设计输入方式成为原理图输入或原理图获取。用电路原理图描述ASIC电路如同用建筑结构图描述一座建筑。
31
低层次设计输入 电路原理图是我们易于理解和使用的一种形式,但是计算机只认识ASCII码和二进制码表示的原理图,我们称之为网表。原理图输入工具的输出就是这样一个包含了设计中所有元件及其互联信息的网表文件。
32
低层次设计输入 近来大部分ASIC设计输入都用原理图输入。随着ASIC电路的日益复杂,其他的一些设计输入方式也正变得越来越普遍。目前可选择的设计输入方式有图形方式。使用硬件描述语言作为设计输入使我们能够通过逻辑综合直接产生网表。
33
低层次设计输入 原理图输入是ASIC设计中最为通用的一种,有时也是最实用的。HDL正在取代传统的门级原理图输入,但是一些新的基于原理图输入的图形工具现在正在被用来生成大量的HDL代码。 ASIC设计的原理图输入工具类似于印刷电路板PCB设计工具,如果认为ASIC的一个逻辑门和PCB中的一个零件是等同的话,那么一个规模较大的ASIC电路就包含成千上万个零件。
34
低层次设计输入 低层次设计语言 随着TTL让位于PLD,基于文本形式的设计工具变得更为流行了,并且设计文件的形式也成为事实上的标准。
35
ASIC设计工具软件 ASIC 设计的软件提供商主要有CADENCE、SYNOPSYS 和MENTOR 等公司。它们都能提供全定制集成电路设计环境和工具、标准单元设计、综合、仿真、布局布线以及版图验证等一整套软件。基于EDA平台的这些软件,可以完成各种集成电路设计的全部流程,包括全定制集成电路设计流程、数字电路自动化设计流程、模拟电路设计流程和FPGA 设计流程等等。下面就常见的工具软件进行一些归类和说明。至于它们的使用方法请大家参阅相应手册,这里就不多着墨,仅列提纲如下:
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 系列、ST-Hspice 版图验证工具:Dracula、Diva、Cosmos SE 静态时序分析:Prime Time 测试:DFT Compiler
37
硬件描述语言--VHDL VHDL: Very-High-Speed Integrated Circuit Hardware Description Language 诞生于1982年。1987年底,VHDL被IEEE和 美国国防部确认为标准硬件描述语言 。自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可 以和VHDL接口。
38
硬件描述语言--VHDL 此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了修订, 从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的 版本,(简称93版)。现 在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。
39
硬件描述语言—Verilog HDL Verilog 是由Gateway Design Automation公司于大约1984年开发并将其作为一种仿真工具。Gateway Design Automation公司后来被 Cadence Design Systems于1990年所购并。现在 Cadence 对于 Gateway 公司的 Verilog 和 Verilog-XL 模拟器拥有全部的财产权。 Verilog仿真器和工具都严格遵守IEEE标准。
40
把硬件的一种描述形式转换成另一种描述形式
数字集成系统设计与综合 集成电路设计过程: 硬件的高层次抽象描述 硬件的低层次物理描述 把硬件的一种描述形式转换成另一种描述形式 采用手工方式 采用自动化的计算机辅助设计工具 设计 综合
41
数字集成系统设计与综合 设计层次 行为域 结构域 系统级 自然语言描述 自然语言综合(设计) 算法级 算法描述 算法综合(设计) 寄存器级
数据流图描述 逻辑综合(设计) 门级 逻辑图描述 版图综合(设计) 版图级 几何图形描述
42
综合器不可能找出硬件设计的全部可能实现方式,从而不可能得出最优的方案。
数字集成系统设计与综合 综合的过程由两部分组成: 第一步:简单的转换。 第二步:优化。 综合器不可能找出硬件设计的全部可能实现方式,从而不可能得出最优的方案。 有经验的电路设计者直接在中间层次(寄存器传输级等)设计 的硬件质量要比综合器产生的好。 自动综合工具被广泛采用的原因:设计方案是否最优 并不重要,而设计成本和设计的可靠性(不出错误)是必 须最先考虑的因素。
43
逻辑综合 就像C语言编译器提供了C源程序与机器语言之间的连接一样,逻辑综合器提供了硬件描述语言HDL和网表之间的连接。
逻辑综合后将再次进行设计仿真,并和行为级的仿真结果进行比较。逻辑综合产生的结构模型可以生产任何类型的ASIC版图。
44
逻辑综合 设计人员用图形或文本的设计输入创建HDL行为级模型,不包含任何逻辑单元的引用,在描述HDL时,采用状态图、图形化的数据通路描述、真值表、RAM/ROM模板、门级原理图等。行为级HDL模型完成后,逻辑综合器以及单元库(也称为目标库)就要被应用来开始进一步的工作。
45
逻辑综合 逻辑综合器可能有几十万行的代码,我们应该在实际的设计中简化输入(减小总线宽度、简化代码或者进一步划分模块等),我们可以通过观察单元的数目、类型与驱动能力来了解逻辑综合器在干什么。 例如,如果在关键路径上存在大量驱动能力很弱的单元,则通常暗示综合软件还有一定的余地来提高这个电路的速度。
46
逻辑综合 通过用驱动能力大的单元来替代这些驱动能力弱的单元。但是在有些情况下不是这样,有时驱动能力强的单元反而会降低电路速度,因为增加大的单元同时加大了负载电容,但却没有足够的驱动来弥补,这就是我们为什么要进行逻辑综合度量的原因。 理想情况下,物理设计和逻辑综合设计应该同时完成,这样可以确保在布线完成后互联延迟的估计值与实际值很吻合。
47
仿真 电子工程师们都习惯于使用原型来检验自己的设计,比如使用已有连接孔的电路试验板,只要插入互联先和IC就可以检验自己的设计。
对于ASIC电路来说,使用电路板是不现实的,作为替代,ASIC设计工程师转而使用仿真作为一种新型的等效的检验设计的方式。
48
仿真 仿真类型: 行为仿真 功能仿真 静态时序仿真 门级仿真 开关级仿真 晶体管级仿真(电路级仿真)
以上列表是从高层次到低层次的仿真排序(层次越高越抽象,层次越低越具体)。从高层次到低层次的仿真的仿真结果越来越准确,也越来越复杂和费时。
49
仿真 建立仿真模型可以有多种方式,一种方法就是将系统的组合用有输入和输出的黑盒进行建模,这种仿真类型通常称为行为仿真。行为仿真不包含时序信息,仅仅告诉我们设计是否能工作。 功能仿真忽略时序,并把延迟设为固定值,进行单位延迟仿真。 在行为仿真和功能仿真预测系统工作正确之后,接下来就是检查时序性能。此时,系统被划分为ASIC,并对每一个ASIC分别进行时序仿真。
50
仿真 有一类时序仿真器利用时序分析,计算每一条路径的延迟,并以静态的方式进行逻辑分析,被称之为静态时序分析。静态时序分析不需要建立一组测试矢量。静态时序仿真是使用最多的仿真,但是它可能产生虚假路径(不可能激活的关键路径)。 门级仿真经常被用来检查ASIC性能。对于门级仿真器,一个逻辑或逻辑单元用黑盒来模拟,一个逻辑门或逻辑单元的函数变量是输入信号。
51
仿真 如果逻辑门的黑盒模型提供的时序仿真还不够精确,可以进行更仔细的开关级仿真。开关级仿真将晶体管模拟为开关(开或关)。开关级仿真比门级仿真提供了更精确的时序预估,但不可能用逻辑单元延迟作为模型参数。开关级仿真可以被用来检验电路行为,而电路节点并非一直被驱动或者是使用非互补逻辑。
52
仿真 最精确也是最复杂、最费时的仿真形式是晶体管级仿真,使用晶体管级仿真器要求有晶体管的模型,该模型提供晶体管的非线性电压和电流特征。当我们需要了解电路电压的模拟行为而不是数字行为时,我们可采用晶体管级仿真。
53
仿真 ASIC芯片设计的不同阶段都会用到仿真。初期的布图前仿真包括了逻辑单元的延迟,但不包括互联的延迟。逻辑综合完成之后包含了电容估算,但是只有在版图设计之后才有可能实现精确的布图后仿真。
54
测试 所有的ASIC产品都需要经过测试(可编程ASIC在定制前有制作者进行测试,但它们还需要再测试)。小规模或中规模模块中的简单单元采用自动化技术测试,但诸如RAM或乘法器之类的大模块需要规划其测试策略。
55
测试 ASIC的产品测试在制造过程中分2次进行: 第一次测试是在制造工艺完成后对硅圆片进行测试或分类的时候对管芯进行测试;
第二次测试是对封装好的ASIC进行的,这是ASIC产品递交用户前的最后测试。
56
测试 测试的重要性 产品质量是用缺陷水平来度量的,我们设计的专用集成电路ASIC的缺陷水平需要靠有效的测试手段来保证,相应地也决定了ASIC产品的质量和市场前景。 如果不重视测试的作用,我们以后可能为此付出高昂的代价。
57
测试 测试中的故障 ASIC制造是一个复杂的过程,需要经过上百道工艺步骤。缺陷往往会引起故障。
制造中的任何问题都可能引起晶体管无法正常工作或者是互联线的短路或者断路。 金属化过程中一般会产生2种常见的缺陷:金属刻蚀不清、刻蚀过度使金属线断裂或电路开路。 故障一般分为物理故障和逻辑故障。
58
ASIC设计流程 系统规范说明 系统划分 逻辑设计与综合 版图验证 版图设计 综合后仿真 参数提取与 后仿真 制版、流片 芯片测试
59
自动版图设计过程 单元库 输入 输出 逻辑划分 布图规划 布局 布线 设计检验 人机交互
60
布图规划 布图规划:根据电路(门级)网表、估计的芯片的大体面积和形状、各功能块的大体形状面积、功能块的数目、输入/输出数目等,对设计的电路进行物理划分和预布局。先进行初始规划(initialize floorplan),产生输入/输出行,单元区行以及布线网格等,然后进行行调整、芯片面积调整、布线网格调整,并进行预布局,初步确定各功能块的形状面积及相对位置、I/O位置以及芯片形状尺寸,而且可以从总体上考虑电源、地线、数据通道分布(datapath plan) 总之,布图规划(Floor Plan) 就是在保证布线能够走通、性能允许的前提下,如何最大限度的减少芯片面积。
61
自动布局 布局概念:按电路功能、性能、几何要求,放置各部件。 目标:芯片面积最小、性能优化。 过程:初始布局、布局迭代改善。
62
自动布线 概念:满足工艺规则、布线层数限制、线宽、线间距限制和各线网可靠绝缘等,根据电路的连接关系进行连线,100%连通,使芯片面积最小。
包括总体布线、详细布线(通道布线)和特殊布线(时钟布线和电源布线)。 布线质量评价: 布通率100% 布线面积最小 布线总长度最小 通孔数少 布线均匀
63
自动布线 自动设计很大程度受限于近似算法与版图结构, 可作人工调整;未布的单元、线、布线过密处 可作压缩处理。 布局布线算法的发展
时延驱动算法 0.18微米工艺:连线延迟与门延迟已经相当。对深亚微米电路,布图优化目标由芯片面积最小调整到连线总延迟最小、性能优化,布图中引入时延模型、时延分析。 多层布线算法
64
版图检查与验证 原因:人工介入、版图引入物理因素。 包括:DRC、ERC、LVS、后仿真。
65
版图检查与验证 DRC:设计规则检查(最小线宽、最小图形间距、最小接触孔尺寸、栅和源漏区的最小交叠等)。
ERC:检查电学规则,检测出没有电路意义的连接错误,(短路、开路、孤立布线、非法器件等),介于设计规则与行为级分析之间,不涉及电路行为。 LVS:网表一致性检查。 概念:从版图提取出的电路网表与从原理图得到的网表进行比较,检查两者是否一致。
66
后仿真 后仿真:考虑版图引入的寄生量的影响,进行后仿真,保证版图能满足电路功能和性能的要求。 后仿真对象
参数提取程序提取出实际版图参数和寄生电阻、寄生电容等寄生参数,进一步生成带寄生参数的器件级网表 提取得到寄生参数文件和单元延迟文件结合,通过延迟计算器生成一个延迟文件,把该延迟文件反标(back-annotation)到网表中 通过参数提取直接得到一个与路径延迟相关的延迟文件,进行反标
67
物理综合 物理综合: 在传统的IC设计流程中,前端综合或时序分析时没有精确的线和CELL延迟信息,这样就容易造成和布局后的时序不收敛。随着工艺的进步,线延迟占主导地位,时序收敛问题越来越严重。根本的解决方法是前后端的设计流程整合起来,物理综合就是在针对的这种情况。 主要功能: 1. 将RTL代码综合成已布局的门电路(关键功能) 2. 利用已存在的门级网表生成已布局的门电路 3. 采用内置的RTL性能原型设计(RPP)进行快速精确地实施可行性分析 4. 时钟树综合 5. 优化和精确的时序分析
68
新一代物理设计工具贯穿物理综合和布线 Synopsys推出新一代物理实现工具Galaxy IC Compiler,它将物理综合、时钟树合成、布线、成品率最佳化与验收(sign-off)相关性等功能整合在一起。该工具将代替Synopsys的物理综合工具Physical Compiler和Astro布线器。作为Synopsys Galaxy 设计平台的核心,与该平台中的RTL综合工具Design Compiler一起,构成从RTL到GDSII流程的全面解决方案。
69
新一代物理设计工具贯穿物理综合和布线 随着芯片设计的复杂度日益加剧,先进的芯片制造工艺与设计的变化,在正确的时序验证与物理实现之间需要更紧密的连结。而且,成品率也不再被视为后续流程而必须被纳入设计流程中。而在以前的设计工具中,布局、时钟树合成与布线都是独立而不相关的步骤。这些挑战全都需要新的物理设计工具加以解决。IC Compiler独特的架构能够消除彼此的间隔而统一物理设计,利用Synopsys在综合、时序、布局、布线、光刻及验收上的核心技术,再配合物理设计的创新作法,对物理设计提供从网表、到待试产、直至GDSII产出的整套流程的最完整的支持。IC设计工程师可以在逻辑综合以后使用IC Compiler,可以在单一步骤中同时实现布局、时钟树合成和布线。通过Synopsys的Milkyway数据库,IC Compiler可以和PrimeTime静态时序分析、Star-RC提取,以及其它工具进行通信。
70
ASIC逻辑综合 ASIC逻辑综合是指在给定工艺库的基础上通过映射和优化,将行为级描述的设计在一定的规约下转化为逻辑结构。它是面向给定的设计约束,将高级的设计描述翻译和优化到工艺库中的门级网表的自动化过程。 完成设计后,将设计的源程序导入Synopsys的Design Compiler工具进行ASIC逻辑综合,综合后得到文件包括:综合后的网表文件(一般为VERILOG格式)、时序信息文件(SDF文件)。
71
ASIC版图自动布局布线设计 APR(Auto Place & Route,自动布局布线)是目前普遍采用的芯片后端设计方法。使用EDA工具环境,快速、自动地完成IP、逻辑门等的放置和物理连接。 CADENCE公司的SE(Silicon Ensemble)是IC业内一种较优秀的深亚微米自动布局布线工具,功能强大,操作简单。在SE环境下,可以将综合生成的网表读入并与工艺物理信息库及时序库配合,进行整个芯片的布局布线。布局布线走通后,得到版图。
72
ASIC物理设计 在ASIC逻辑综合获得的网表通过了综合后的仿真之后,即可进入ASIC物理设计阶段。ASIC物理设计包括平面布图规划(floorplanning)、布局(placement)、以及布线(rounting)等。ASIC 物理版图自动布局布线工具采用Cadence 公司的Envisia Silicon Ensemble,简称SE。 SE完成APR的数据导出,比较有用的数据包括:GDS版图数据(用于送到FOUNDRY厂商加工芯片)、Verilog网表文件(用于后仿真)、SDF时延信息文件(用于后仿真)。
73
ASIC的设计发展趋势 目前,芯片设计除了向更大规模、更高工艺技术的方向发展外,还有两个明显的发展特征:一是向IP内核方向的发展, 一是向SOC 的技术方向发展。下面分别简述之: IP 内核 IP 内核是指满足特定规范,并能在设计中复用的功能模块。在IC 设计中,IP 内核复用可以有效地缩短产品开发周期并降低成本。IP 内核可以在不同的硬件描述级别实现,依据产品交付的方式,可分为三类IP 内核:软核(Soft cores)、固核(Firm cores)和硬核(Hard cores)。
74
ASIC的设计发展趋势 软核通常以可综合的HDL 形式提供,因此具有较高的灵活性,并与具体的实现工艺无关,其主要缺点是缺乏对时序、面积和功耗的预见性。由于软核是以源代码的形式提供,尽管源代码可以采用加密方法,但其知识产权保护问题不容忽视。 硬核则以经过完全的布局布线的网表形式提供,这种硬核既具有可预见性,同时还可以针对特定工艺或购买商进行功耗和尺寸上的优化。尽管硬核由于缺乏灵活性而可移植性差,但由于无须提供寄存器转移级(RTL)文件,因而更易于实现IP 保护。
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 等
76
SOC SOC 就是将系统的全部功能模块集成到单一半导体芯片上,包括CPU、I/O 接口、存储器,以及一些重要的模拟集成电路等。功能模块化的系统芯片具有易于增加新功能和缩短上市时间的显著特点,是ASIC设计业当前、乃至可预见未来的主流设计方式。一个芯片如果包含了可编程处理器、控制器、信号处理器和片上存储器等部分就是一个SOC 芯片。 SOC技术的特点: ①半导体工艺技术的系统集成 ; ②软件系统和硬件系统的集成。
77
SOC设计的关键技术 系统级芯片形成或产生过程包含以下三个方面: ①基于单片集成系统的软硬件协同设计和验证;
②再利用逻辑面积技术使用和产能占有比例有效提高即开发和研究IP核生成及复用技术,特别是大容量的存储模块嵌入的重复应用等; ③超深亚微米(UDSM) 、纳米集成电路的设计理论和技术。
78
SOC设计的关键技术 具体地说, SOC设计的关键技术主要包括总线架构技术、IP核可复用技术、软硬件协同设计技术、SOC验证技术、可测性设计技术、低功耗设计技术、超深亚微米电路实现技术等, 此外还要做嵌入式软件移植、开发研究, 是一门跨学科的新兴研究领域。
79
SOC软硬件协同设计流程
80
SOC的发展重点 总线结构及互连技术,直接影响芯片总体性能发挥; 软、硬件的协同设计技术,主要解决硬件开发和软件开发同步进行问题;
IP可重用技术,如何对其进行测试和验证; 低功耗设计技术,主要研究多电压技术、功耗管理技术以及软件低功耗利用技术等; 可测性设计方法学,研究eJTAG设计技术、批量生产测试问题; 超深亚微米实现技术,研究时序收敛、信号完整性、天线效应等。
Similar presentations