《集成电路设计的EDA系统概述.ppt》由会员分享,可在线阅读,更多相关《集成电路设计的EDA系统概述.ppt(89页珍藏版)》请在三一办公上搜索。
1、1,集成电路设计的EDA系统概述,6.1 EDA系统概述,EDA系统的发展第一代:60年代末:版图编辑和检查第二代:80年代初:原理图输入、逻辑模拟向下第三代:从RTL级输入向下,包括行为仿真、行为综合、逻辑综合等流行的EDA系统:Cadence,Mentor Graphics,Viewlogic,Compass,Panda等EDA系统的理想作用:实现完全的自动化设计,设计出各种各样的电路,EDA系统的实际作用设计信息输入:语言输入编辑工具高层次描述的图形输入工具:VHDL功能图输入、逻辑图/电路图输入编辑、版图输入编辑设计实现:综合器设计验证:验证系统/电路符合功能/性能要求及设计规则要求
2、模拟器进行模拟(仿真)分析 规则的检查 什么是模拟?对于设计输入抽象出模型,施加外部激励,观察输入,进行判断,整个设计过程就是把高层次的抽象描述逐级向下进行综合、验证、实现,直到物理级的低层次描述,即掩膜版图。各设计阶段相互联系,例如,寄存器传输级描述是逻辑综合的输入,逻辑综合的输出又可以是逻辑模拟和自动版图设计的输入,版图设计的结果则是版图验证的输入。EDA系统介入了包括系统功能设计、逻辑和电路设计以及版图设计等在内的集成电路设计的各个环节,主要内容,高层级描述及模拟 综合 逻辑模拟 电路模拟 时序分析和混合模拟 版图设计的EAD工具 器件模拟和工艺模拟,6.2 系统描述与模拟:VHDL语言
3、及模拟,VHDL语言出现背景 一种硬件描述语言(hardware description language)广义地说,描述电子实体的语言:逻辑图,电路图 大规模电路的出现:逻辑图、布尔方程不太适用,需要在更高层次上描述系统 出现多种HDL语言,为便于信息交换和维护,出现工业标准,通常指高层设计阶段描述硬件HDL语言的特点 抽象地进行行为描述 结构化语言:可以描述电子实体的结构 多层次混合描述 既可被模拟,又可被综合能提供VHDL模拟器的公司:Cadence、Mentor Graphics、Viewlogic、Synopsys等大型EDA公司和CLSI、Model-Technology、Vant
4、age等专门公司Verilog,VHDL语言,基本概念:描述硬件电路,可以抽象地表示电路的行为和结构(完成什么功能,怎样组成)作用:对IC设计,支持从系统级到门和器件级的电路描述,并具有在不同设计层次上的模拟验证机制可作为综合软件的输入语言,支持电路描述由高层向低层的转换 建模机制、模拟算法、模拟环境,建模机制,基本结构 行为描述 结构描述,VHDL语言的建模机制 基本结构,一个硬件单元在VHDL中看作一个设计实体 实体外观实体说明:实体命名,实体与外部环境的接口描述,未涉及其内部行为及结构 实体功能 在结构体中实现 结构体:实体的输入-输出关系,实体的结构和行为描述对应一个实体说明可以有多个
5、结构体,不同的实现方案,功能描述:行为描述数据流描述结构描述混合描述,Architecture behavioral of half _adder is 行为描述:描述外部行为begin process SUM=A+B;CO=A and B;wait on A,B;end process;end behavioral;Architecture behavioral of half _adder is 数据流描述,未涉及具体结构begin SUM=A+B;CO=A and B;end behavioral;,Architecture behavioral of half _adder is co
6、mponent XOR 元件的外观说明(表示符号,与实体不同)port(I1:in std_logic I2:in std_logic O1:out std_logic);end component;component AND2 port(I1:in std_logic I2:in std_logic O1:out_ std_logic);end component;beginU1:XOR port map(A,B,SUM);元件引用,生成例元(标号:元件名 端口映射)U2:AND2 port map(A,B,CO);end behavioral;,VHDL语言的建模机制行为描述,电子实体中的
7、行为:反映信号的变化、组合和传播 行为的特点是信号的延迟和并行性VHDL中描述行为的基本单位是进程,由进程语句描述。,进程之间是并行的,进程内部是顺序 执行的。进程语句本身由一系列的顺序语句组成,顺序语句发生在该进程被激活的同一时刻,信号:各进程之间的通信,数据通路。信号的状态可能影响与信号相关的进程的状态信号赋值:模拟周期:在时刻t,从一些信号更新、若干进程被激活到进程被挂起信号在一个模拟周期完成求值,延迟td后更新值,td是信号延迟,也称DELTA延迟,在同一模拟时刻,发生t,t+td,t+2td,.多个模拟周期,进程并行:每个进程仅在满足一定条件的某个时刻被激活,同一时刻可以有多个进程被
8、激活对于串行机,模拟时钟在每个时刻停下,直到每个时刻被激活进程全被处理完,延迟描述:反映时序,建立精确的电路硬件模型 什么是延迟?传输延迟 惯性延迟:输入信号在指定延迟时间内保持不变,元件的输出端才有响应。,进程为行为的基本单元信号作为系统进程之间的数据通路各进程并行执行,VHDL语言的建模机制结构描述,结构描述:若干部件用信号线互连形成一个实体 部件:对某元件的调用(例元)一个结构体由若干例元互连而成元件:某个实体的某种结构,只有外观说明(元件说明语句)一个元件说明,代表一种类型的元件,是一个符号 元件调用:元件例化语句:结构描述中的信号:连接例元,值传递 例元的输出值变化会影响以此信号为输
9、入的其他例元 元件例化语句可以并行,Architecture behavioral of half _adder is component XOR 元件的外观说明(表示符号,与实体不同)port(I1:in std_logic I2:in std_logic O1:out std_logic);end component;component AND2 port(I1:in std_logic I2:in std_logic O1:out_ std_logic);end component;beginU1:XOR port map(A,B,SUM);元件引用,生成例元(标号:元件名 端口映射)U
10、2:AND2 port map(A,B,CO);end behavioral;,元件配置 元件例化语句生成例元引用的是元件,不是实体,实体结构中的例元应该同实在的实体设计相对应,进行元件配置,指出使用的实体和结构体 FOR:USE ENTITY.(结构名)标号例元所引用的元件对应于某指定库的某实体和某结构体,Architecture structural_view OF full_adder IS Component half_adderPORT(in1,in2:IN Std_logic;sum,carry:OUT Std_logic);End Component;Component or_g
11、ate PORT(in1,in2:IN Std_logic;sum,carry:OUT Std_logic);End Component;Signal a,b,c:Std_logic;说明连接元件所用的内部信号Begin u1:half_adder PORT MAP(x,y,b,a);u2:half_adder PORT MAP(c_in,b,sum,c);u3:or_gate PORT MAP(c,a,c_out);End structural_view;,Configuration parts of full_adder IS For structural_view For u1,u2:h
12、alf_adderUSE ENTITY WORK.half_adder(behav);End For;For u3:or_gateUSE ENTITY WORK.or_gate(arch1);End For;End For;End parts;实体FULL_ADDER的配置,命名为PARTS,采用结构体 structural_view作为实体full-adder的结构体,该结构体中例化的两个元件u1,u2采用实体half-adder,结构体behav来源于WORK库,u3采用实体or-gate,结构体arch1来源于WORK库,VHDL语言的模拟算法,面向事件的模拟算法:同一时刻活跃信号占全部
13、信号的15%,为提高效率,仅对发生事件的信号进行计算,对于不发生事件的信号则不进行计算 几个概念什么是事件?信号的逻辑值发生变化动态的全局事件表:记录信号事件和时间事件,可更新。信号事件:信号驱动产生的事件;时间事件:进程由于等待时间条件而挂起的事件激活进程:与电路中某变化的信号相关的进程,相应的信号称为敏感信号。进程可以被敏感信号、等待时间、激活条件激活。,开始,激活所有进程,读入激励信号,记入全局事件表,产生新的信号事件记入事件表;,时间等待事件记入事件表;,进程挂起,当前时刻所有,激活进程模拟完,?,增加事件,最小时间间隔,否,施加,新的输入信号,根据全局事件表,更新相应的信号,执行被激
14、活的进程,否,存在被激活的,进程?,是,无,全局,事件表空?,是,是,用户:语言输入,模拟器模拟,6.3 综合,概念:从设计的高层次向低层次转换的过程,是一种自动设计的过程 一种专家系统 分类:高级综合逻辑综合(RTL级综合)物理综合(逻辑图或电路图到版图,严格说应该是同级驱动),高级综合,设计的算法级描述转换为RTL级描述 核心:分配(ALLOCATION)和调度(SCHEDULING)分配:给定性能、面积/功耗条件下,确定硬件资源:执行单元、存储器、控制器、总线等,产生数据通道调度:确定这些结构的操作次序根据控制流图和调度中产生的状态信息,利用传统的RTL/逻辑综合技术综合出控制器部分目标
15、:找到代价最小的硬件结构,使性能最佳,综合过程:输入的行为描述编译 中间数据结构 数据流综合子系统、控制流综合子系统 数据通道和控制部分(RTL级网表)模拟验证 RTL两级工艺映射 工艺相关的结构 逻辑图自动生成 逻辑图 模拟验证,综合系统组成:编译器、模拟器、数据流综合子系统、控制流综合子系统、工艺映射系统逻辑图自动生成系统,工艺映射:已知工艺无关的结构描述、目标工艺及一组设计约束,在满足设计约束条件下,在物理域上实现同一层次的结构描述。(不丢结构信息,增加工艺数据)算法级不适用,RTL级(宏单元),逻辑级(标准单元或门阵单元、FPGA、PLD等),综合中的优化问题(黑箱):资源共享、连接优
16、化、时钟分配等 优化目标:面积、速度、功耗、可测试性,逻辑综合,概念:由给定的逻辑功能和性能要求,在一个包含许多结构、功能、性能已知的逻辑元件的逻辑单元库支持下,确定出由一定逻辑单元组成的逻辑结构 输入:逻辑设计描述;输出:逻辑网表或逻辑图,综合过程:1.设计描述 2.设计编译 3.逻辑化简和优化:完成逻辑结构的生成与优化,满足系统逻辑功能的要求。4.利用给定的逻辑单元库进行工艺映射,对生成的逻辑网络进行元件配置,进而估算速度、面积、功耗,进行逻辑结构的性能优化 5.得到逻辑网表,综合中的优化问题(黑箱):优化目标:面积、速度、功耗、可测试性可综合的输入描述:VHDL、Verilog、Hard
17、wareC,逻辑模拟,逻辑模拟的基本概念:将逻辑设计输入到计算机,用软件方法形成硬件的模型,给定输入波形,利用模型算出各节点和输出端的波形,判断正确否主要作用:验证逻辑功能和时序的正确性分类:根据所模拟逻辑单元规模的大小 寄存器传输级模拟:总体操作正确性功能块级模拟:加法器、计数器、存储器等 门级模拟:基本逻辑单元:门、触发器等开关级模拟:晶体管:后仿真,几个概念什么是逻辑功能?输入和输出之间的逻辑关系,不考虑与时间的关系。什么是时序?考虑与时间的关系,输入和输出之间与时间有关系组合逻辑和时序逻辑 组合逻辑:输出只决定于同一时刻各输入状态的组合,与以前状态无关 特点:输入与输出间无反馈途径;电
18、路中无记忆单元 时序逻辑电路:输出与输入状态有关,还与系统原先状态有关 特点:输入与输出间有反馈途径;电路中有记忆单元,逻辑模拟(续),设计输入方法:逻辑综合的结果;原理图输入;逻辑描述语言主要作用:验证逻辑功能的正确性,真值表(first-step)延迟模拟:时序的正确性,预先检查是否有尖峰、竞争冒险现象(second step)竞争冒险:从门的输入到输出存在延迟,不同门的延迟不同,不同通路上的延迟不同,引起电路出现错误的输出 两个路径在不同时刻到达:竞争;输出的干扰脉冲:冒险主要环节:逻辑描述、逻辑模拟模型的建立、逻辑模拟算法,逻辑模拟模型,逻辑元件模型和信号模型元件的延迟模型:检查时序关
19、系、反映竞争和冒险等现象;调用的门单元中已含有不同延迟模型信息 零延迟:检查逻辑关系正确性,组合逻辑和同步时序 单位延迟:逻辑关系正确性 指定延迟:不同元件或不同的元件类型指定不同的延迟;指定上升、下降时间;尖峰分析 最大-最小延迟:分析竞争 惯性延迟:可抑制尖峰 连线延迟:加到门延迟中;门之间加入延迟元件等,a,b,1,a,b,1,2,最小延迟=1 最大延迟=2,不同要求的逻辑模拟调用不同的延迟信息 快速模拟:验证逻辑功能 单位延迟 指定延迟 最大或最小延迟 详细模拟:检查竞争冒险等情况 双延迟模型,逻辑模拟模型(续),信号模型:逻辑模拟中信号的逻辑值和逻辑强度信号值:实际电路,逻辑状态是0
20、和1 在逻辑模拟中为了反映信号状态的过渡过程,模拟出竞争冒险,引入新的状态值三值模拟0,1,(不定态:记忆元件等未指定的初始态、不可预测的振荡态、无关态等)真值表检测静态冒险(静态0冒险和1冒险)不能检测动态冒险,逻辑模拟模型(续),四值模拟0,1,Z(高阻态:信号与其源断开后的状态,如单向开关)真值表五值模拟、八值模拟等,但逻辑状态过多,模拟速度变慢,逻辑模拟模型(续),信号强度:处理线连逻辑关系:多个元件输出信号线直接相连,汇集点与信号的关系 信号强度:信号驱动能力,高强度信号占优势。如果强度相等信号值不同,线连点强度不变,信号值未知。,逻辑模拟算法,编译方式和表格驱动方式编译方式将逻辑电
21、路编译转换成一组指令代码。元件按功能编成子程序,按相互间连接关系以一定顺序将子程序连成总的可执行程序。元件的计算顺序编排 输入端为0级,元件的级数等于所有前级元件最大级数加1;不考虑延迟,只能模拟组合逻辑电路和可忽略竞争冒险的同步时序电路,逻辑模拟算法(续),表格驱动方式 将逻辑电路转换成表格:电路描述表、元件类型表;元件的扇入扇出表、信号线表考虑延迟,可模拟异步时序采用面向事件模拟:与VHDL模拟算法类似,信号驱动的是元件 对于较大规模的电路:高速逻辑模拟器:软件硬件化,并行处理,模拟速度提高1000倍,电路模拟,电路设计:根据电路性能确定电路结构和元件参数 没有自动设计软件 设计人员根据电
22、路性能要求,初步确定电路结构和元件参数,利用电路模拟软件进行模拟分析,判断修改电路模拟:根据电路的拓扑结构和元件参数将电路问题转换成适当的数学方程并求解,根据计算结果检验电路设计的正确性 模拟对象:元件 优点:不需实际元件、可作各种模拟甚至破坏性模拟,电路模拟(续),在集成电路设计中起的作用:版图设计前的电路设计,保证电路正确(包括电路结构和元件参数)有单元库支持:单元事先经过电路模拟无单元库支持的全定制设计:由底向上,首先对单元门电路进行电路设计、电路模拟,依此进行版图设计,直至整个电路后仿真:考虑了寄生参数,由电路模拟预测电路性能典型软件:SPICE、HSPICE,电路模拟的基本功能,可处
23、理的元器件:电阻、电容、电感、互感、独立电流源、电压源、传输线、四种受控源、四种器件(二极管、双极管、结型场效应管、MOS)等 可完成的分析功能:直流分析(.DC):典型的是求解直流转移特性,输入加扫描电压或电流,求输出和其他节点(元件连接处)电压或支路电流;还有.TF、.OP、.SENSE交流分析(.AC):以频率为变量,在不同的频率上求出稳态下输出和其他节点电压或支路电流的幅值和相位。噪声分析和失真分析,瞬态分析(.TRAN):以时间为变量,输入加随时间变化的信号,计算输出和其节点电压或支路电流的瞬态值。温度特性分析(.TEMP):不同温度下进行上述分析,求出电路的温度特性电路模拟软件的基
24、本结构 五部分组成:输入处理、元器件模型处理、建立电路方程、方程求解和输出处理,电路模拟软件的基本结构,输入处理:主要完成对输入文件进行编译,词法语法检查、存储输入数据、其他(元件预处理等)模型处理:元器件的数学模型:用数学公式描述器件的电流电压特性、与物理参数和工艺参数的关系 主要是非线性元件的模型:如MOS、BJT、二极管等,这些模型编入模型库,可调用;也可自行定义后加入模型库电路模拟的精度:模型精度、参数选取,电路模拟软件的基本结构(续),建立电路方程 根据电路结构、元件参数、分析要求,建立方程依据的基本原理是欧姆定律和基尔霍夫定律 方程求解数值解法:线性代数方程组解法、非线性方程组解法
25、、常微分方程组解法线性电路的直流分析:选主元的高斯消去法或LU分解法非线性电路的直流分析:对非线性元件进行线性化处理迭代方法交流分析:线性电路、非线性电路,处理同上瞬态分析:常微分方程组,通过数值积分转换 输出处理:选择输出内容和输出方式(表格和曲线),电路描述,较大规模电路,一般用电路图输入,相应的编译程 序转换为电路描述语言再进行模拟。电路描述语言:描述电路结构、元件参数、器件模型、电路运行环境、分析类型和输出要求等电路描述前首先要画好电路图,节点编号(接地节点零号,其他正整数)SPICE的描述语言:电路拓扑(网表)采用模型(元件属性)仿真内容控制,电路描述举例,CMOS INVERTER
26、 DC TRANS.CHARACTERISTICSVCC 2 0 5VIN 1 0 PULSE 0 5 2NS 2NS 2NS 30NSM1 3 1 2 2 MOD1 L=2U W=18UM2 3 1 0 0 MOD2 L=2U W=10U.MODEL MOD1 PMOS LEVEL=3 VTO=1 NSUB=2E15 UO=166.MODEL MOD2 NMOS LEVEL=3 VTO=1 NSUB=2E15 UO=550.DC VIN 0 5 0.1.PLOT DC V(3).END,元件语句:元件名 与之相连的节点号(D,G,S,G)元件参数(模型名,模型语句与元件语句分开),HSPIC
27、E与SPICE相比的特点:快速收敛;具有多种精确的器件模型;采用层次化方法命名节点;可以为多种分析类型输出波形图;可以依据电路性能要求和测量数据进行参数优化,自动产生模型参数和元器件值;具有良好的建立单元库的功能;可以进行统计容差分析,分析元件及模型参数变化对电路性能的影响;支持最坏情况(worse-case)设计,时序分析,逻辑模拟的基本单元是门或功能块,一定程度上反映竞争、冒险等现象,模拟速度比SPICE快三个量级,但精度不够,各节点电流、电压不知电路模拟的基本单元是晶体管、电阻、电容等元器件,可以较精确地获得电路中各节点的电压或电流,但对于较大的电路,很多的迭代求解需要很大的存储空间和很
28、长的计算时间时序分析介于两者之间,可提供详细的波形和时序关系,比SPICE快二个量级,精度低10%,但比带延迟的逻辑模拟要高得多,器件级时序分析:基本原理:简化了器件模型,采用查表技术,关键电学量与工作条件的关系以表格形式反映算法上:单步迭代,不求解联立方程,超松弛牛顿迭代法加速收敛宏模型:简化电路描述,节省时间和空间门级时序分析:静态时序分析、时序模拟器混合模拟:结合三者特点,对影响电路性能的关键部分进行电路模拟,其他部分用逻辑模拟和时序分析,版图设计的EDA工具,版图设计:根据电路功能和性能要求及工艺限制(线宽、间距等),设计掩膜版图输入:可以是原理图、网表;可以直接编辑版图输出:版图版图
29、设计的重要性:电路功能和性能的物理实现尺寸减小后,连线延迟直接决定芯片速度。布线方案、从而布局方案很重要 芯片面积、速度,版图设计的目标:连线全部实现,芯片面积最小,性能优化(连线总延迟最小)EDA工具分类(按工作方式分):自动设计、半自动设计、人工设计;用的大多是启发式算法 版图验证与检查,版图的自动设计,概念:通过EDA软件,将逻辑描述自动转换成版图描述成熟的自动版图设计包括基于门阵列、标准单元、PLA的布图系统,BBL布图系统也在发展中典型的IC EDA软件,如Cadence、Mentor、Compass、Panda等设计系统中都有自动版图设计功能,自动版图设计过程,逻辑划分,布局,布线
30、,设计检验,输出,输入,人机交互,单元库,布图规划,自动版图设计过程(续),逻辑划分概念:功能划分原则:功能块面积和端子数满足要求,使功能块数目或总的外连接数最小基本思想:连接度大的元件放在同一功能块中划分算法:简单连接度法、分配法、Lin法等,布图规划布图规划:根据电路网表、估计的芯片的大体面积和形状、各功能块的大体形状面积、功能块的数目、输入/输出数目等,对设计的电路进行物理划分和预布局。先进行初始规划(initialize floorplan),产生输入/输出行,单元区行以及布线网格等,然后进行行调整、芯片面积调整、布线网格调整,并进行预布局,初步确定各功能块的形状面积及相对位置、I/O
31、位置以及芯片形状尺寸,而且可以从总体上考虑电源、地线、数据通道分布(datapath plan),自动布局布局概念:按电路功能、性能、几何要求,放置各部件目标:芯片面积最小、性能优化过程:初始布局、布局迭代改善初始布局:单元选择:与已安置单元连接度最大的单 元;向前看U步 单元安置:选择与已安置单元距离最短的位置作为选出单元的安置位置(连线长度计算方法:最小生成树;最小斯坦纳树;最小链;最小矩形半周长)布局迭代:选择一个单元或单元集,将位置与候选位置交换,对新布局计算判断判断标准:连线总长度、布线均匀性,自动布线 概念:满足工艺规则、布线层数限制、线宽、线间距限制和各线网可靠绝缘等,根据电路的
32、连接关系进行连线,100%连通,使芯片面积最小布线质量评价:布通率100%布线面积最小布线总长度最小通孔数少(解释)布线均匀,布线算法面向线网的算法:先定线网的布线顺序,每次布一个线网,达到当前最优或准优问题:存储量大,难以布线网多、布线密度大的情况线网定序法:短线法、干扰度法典型布线算法:李氏法、线探索法等(解释)面向布线区的算法:并行算法,整体规划,在布线区达到总体最优或准优;但对通道形状有一定要求,适应性较差过程:总体布线:通道划分和线网分配线网分配:依据通道容量、布线密度;详细布线(通道布线):对分配到通道区底线网确定在通道区的具体位置,自动设计很大程度上受限于近似算法与版图结构 可作
33、人工调整:未布的单元、线、布线过密处可作压缩处理布局布线算法的发展时延驱动算法 0.8微米工艺:连线延迟与门延迟已经相当。对深亚微米电路,布图优化目标由芯片面积最小,调整到连线总延迟最小,性能优化,布图中引入时延模型、时延分析多层布线算法,版图的半自动设计:符号式版图设计 用符号进行版图输入,通过自动转换程序转换(压缩功能);可不考虑设计规则 版图的人工设计 用于底层单元设计、单元库单元设计、模拟电路设计等方面 进行版图输入编辑,考虑设计规则,版图检查与验证,原因:人工介入、版图引入物理因素包括:DRC、ERC、LVS、后仿真,版图检查与验证(续),DRC:设计规则检查(最小线宽、最小图形间距
34、、最小接触孔尺寸、栅和源漏区的最小交叠等)实现:通过图形计算(线和线间的距离计算)DRC软件用户:编写DRC文件,给出设计规则 ERC:检查电学规则,检测出没有电路意义的连接错误,(短路、开路、孤立布线、非法器件等),介于设计规则与行为级分析之间,不涉及电路行为实现:提取版图网表,ERC软件 网表提取工具:逻辑连接复原,版图检查与验证(续),LVS:网表一致性检查 概念:从版图提取出的电路网表与从原理图得到的网表进行比较,检查两者是否一致。作用与特点:主要用于保证进行电路功能和性能验证之前避免物理设计错误。可以检查出ERC无法检查出的设计错误,也可以实现错误定位 实现:网表提取,LVS软件,版
35、图检查与验证(续),后仿真:考虑版图引入的寄生量的影响,进行后仿真,保证版图能满足电路功能和性能的要求后仿真对象参数提取程序提取出实际版图参数和寄生电阻、寄生电容等寄生参数,进一步生成带寄生参数的器件级网表提取得到寄生参数文件和单元延迟文件结合,通过延迟计算器生成一个延迟文件,把该延迟文件反标(back-annotation)到网表中通过参数提取直接得到一个与路径延迟相关的延迟文件,进行反标,后仿真(续),软件支持:数字电路对提取出的带寄生参数的器件级网表进行开关级模拟或SPICE模拟实现;大规模的电路,用时序分析找到关键路径,对关键路径进行SPICE模拟;由提取得到的延迟文件反标到门级网表,
36、进行相应的仿真(如Verilog门级仿真等)。模拟电路SPICE模拟提取出的带寄生量的器件级网表,制 版,专用制版设备:光学图形发生器、电子束制版机基本原理:光学图形发生器:光阑位置和尺寸可变,一般是矩形的,作用在涂胶的铬版上;版图图形分割成矩形,并进行排序,这些数据控制光阑的尺寸和位置的变化电子束制版机:控制电子束的扫描进行暴光 制版分辨率高,适合小尺寸电路制版EAD软件生成的版图数据需通过一定接口程序转换成制版设备的输入格式,才能用于制版,版图数据交换格式,通用格式:GDS-II、CIF、EDIFGDS-II:二进制流,占空间少,但可读性差CIF:可读性强,用文本命令表示掩膜分层和图形,有
37、图样调用功能,可进行层次性描述。,器件模拟,集成电路的基础是器件,但目前不能从电学性能和工艺水平自动设计器件,只能进行模拟分析器件模拟概念:给定器件结构和掺杂分布,采用数值方法直接求解器件的基本方程,得到DC、AC、瞬态特性和某些电学参数器件模拟作用:结构、工艺参数对器件性能的影响性能预测物理机制研究:分析无法或难以测量的器件性能可为SPICE模拟提供模型参数与工艺模拟集成可直接分析工艺条件对器件性能的影响,器件模拟,软件支持:一维、二维、三维 TMA、MEDICI、SILVACO、ISE、CADDETH、PISCES、DAVANCI以MEDICI为例基本原理基本方程:泊松方程、电子和空穴连续
38、性方程、热扩散方程、电子和空穴的漂移/扩散方程(能量输运方程);求解基本量:,N,P,Tn,Tp,T偏微分方程,进行离散化,网格划分(影响精度和速度);离散后得到非线性方程组,用Newton法、Gummel法等方法求解,器件模拟,基本功能可处理的器件类型:二极管、BJT、MOS、多层结构、光电器件、可编程器件等可模拟的材料:多种,不限于硅、二氧化硅可完成的电学分析:DC、AC、瞬态、热载流子、光电等等可获得的电学特性和电参数端特性:I-V;电容-V等内部特性:浓度分布、电势电场分布等电参数:阈值电压、亚阈斜率、薄层电阻等,工艺模拟,实验流片来确定工艺参数,周期长,成本高,工艺模拟可改善这一问题
39、工艺模拟概念:对工艺过程建立数学模型,在某些已知工艺参数的情况下,对工艺过程进行数值求解,计算经过该工序后的杂质浓度分布、结构特性变化(厚度和宽度变化)或应力变化(氧化、薄膜淀积、热过程等引起)。作用优化工艺流程、工艺条件;预测工艺参数变化对工艺结果的影响缩短加工周期,提高成品率软件支持:SUPREM;SUPREM-IV:二维,工艺模拟,基本内容可处理的工艺过程:离子注入、预淀积、氧化、扩散、外延、低温淀积、光刻、腐蚀等高温过程:杂质分布;氧化、外延还需考虑厚度变化、界面移动非高温过程:结构变化,(除离子注入)可处理多层结构,可处理的材料:单晶硅、多晶硅、二氧化硅、氮化硅、氮化氧硅、钛及钛硅化
40、物、钨及钨硅化物、光刻胶、铝等可掺杂的杂质:硼、磷、砷、锑、镓、铟、铝工艺模型输出:厚度、杂质分布、电参数(薄层电阻、电导率等),IC CAT技术,测试目的:加工过程中电路筛选,用户验收产生错误的原因:芯片加工过程中的物理故障(信号线开路、短路)使用条件或环境引起的故障(器件老化、环境温度、湿度变化或光、射线等的干扰)故障处理冗余技术故障检测和定位:通过加测试向量,观察输出结果,判断,测试问题:测试向量生成、故障诊断(检测和定位)、可测性设计 在建立故障模型的基础上,生成测试向量 利用故障模拟器,计算测试向量的故障覆盖率,根据获得的故障辞典进行故障定位 对于一些难测故障进行可测性设计,使测试生
41、成和故障诊断比较容易实现,,故障模型固定型:元件的某个输入、输出端被固定在逻辑0(s-a-0)或逻辑1(s-a-1),不改变拓扑桥接故障:短路,可能改变逻辑关系开路故障 如果固定型故障的覆盖率达到90%以上,测试向量集可用于检测其他类型的故障。典型的测试向量自动生成系统几乎都是采用固定型故障模型。,测试向量生成,概念:考虑在保证向量产生时间的情况下,产生最少或较少的一组输入信号用于测试,同时尽量达到最大的故障覆盖率。故障覆盖率:测试向量所检测出的故障与按照故障模型设立的电路故障总数之比。有效性衡量:测试向量集的大小和它能覆盖故障的百分比几种方法:软件自动生成人工生成从激励码转换生成根据输入端数
42、目从输入序列中随机选取,测试向量生成方法,针对组合逻辑电路,较典型的测试向量自动生成算法:路径敏化算法路径敏化算法概念:从故障点到电路输出选择一条或多条适当路径,并使该路径敏化。敏化:将故障效应传播到输出端多路径敏化算法:D-算法 基本思想:先定义节点(或电路)的输出,然后再确定产生这种输出所需要的输入,故障模拟,概念:针对测试输入向量集,对被测电路在不同故障状态下进行逻辑模拟,得到所能检测出的故障集,从而获得故障覆盖率分类并行故障模拟:故障注入(把某信号线设为故障状态),针对测试输入进行逻辑模拟,得到输出响应,与正常输出响应比较,如果不同则认为该故障可被该测试向量测出演绎故障模拟:某一测试向
43、量下,只对正常电路进行模拟,利用各元件的故障表将故障向电路的原始输出端传播,演绎出该测试向量对应的可测故障。元件的故障表:对应于元件的测试输入向量在元件的输出端所能检测出的故障集并发式故障模拟,故障定位,通过故障模拟获得故障辞典(测试输入向量集所能测出的故障集以及各测试输入相应各故障的输出响应向量)用aij表示第i个测试向量对第j个故障测试在某一输出端的响应值,aij=1表示第j个故障可被第i个测试向量测出,aij=0则表示不能被测出。对于多输出端电路(假设m个输出),aij变为m位向量加载测试向量,得到输出响应向量,该向量与正常电路的输出响应向量进行异或,得到的值与故障辞典中的值(aij)相比较,可完成故障定位,EAD深入到设计各阶段,而且相互联系行为描述是综合的输入,综合的输出可作为逻辑模拟的输入、版图生成的输入,版图是版图验证的输入发展方向提高EAD软件的自动化程度:高级综合、综合与布图结合等深亚微米电路设计发展:时延驱动、多层布线、布图压缩等个人通信、便携式计算机等:功耗分析、低功耗设计技术、时延功耗双重驱动布图算法等芯片系统、数/模混合电路:模拟电路的EAD软件,作 业,1.版图验证与检查包括哪些内容,如何实现?2.试述器件模拟和工艺模拟的基本概念。,
链接地址:https://www.31ppt.com/p-6378582.html