集成电路设计的EDA系统概述.ppt
《集成电路设计的EDA系统概述.ppt》由会员分享,可在线阅读,更多相关《集成电路设计的EDA系统概述.ppt(89页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1集成电路设计的集成电路设计的EDA系统概述系统概述6.1 EDA系统概述vEDA系统的发展第一代:60年代末:版图编辑和检查第二代:80年代初:原理图输入、逻辑模拟向下第三代:从RTL级输入向下,包括行为仿真、行为综合、逻辑综合等v流行的EDA系统:Cadence,Mentor Graphics,Viewlogic,Compass,Panda等vEDA系统的理想作用:实现完全的自动化设计,设计出各种各样的电路vEDA系统的实际作用设计信息输入:v语言输入编辑工具v高层次描述的图形输入工具:VHDL功能图输入、逻辑图/电路图输入编辑、版图输入编辑设计实现:综合器设计验证:验证系统/电路符合功能
2、/性能要求及设计规则要求v 模拟器进行模拟(仿真)分析v 规则的检查 什么是模拟?对于设计输入抽象出模型,施加外部激励,观察输入,进行判断v整个设计过程就是把高层次的抽象描述逐级向下进行综合、验证、实现,直到物理级的低层次描述,即掩膜版图。v各设计阶段相互联系,例如,寄存器传输级描述是逻辑综合的输入,逻辑综合的输出又可以是逻辑模拟和自动版图设计的输入,版图设计的结果则是版图验证的输入。vEDA系统介入了包括系统功能设计、逻辑和电路设计以及版图设计等在内的集成电路设计的各个环节主要内容v 高层级描述及模拟v 综合v 逻辑模拟v 电路模拟v 时序分析和混合模拟v 版图设计的EAD工具v 器件模拟和
3、工艺模拟6.2 系统描述与模拟:VHDL语言及模拟v VHDL语言出现背景 一 种 硬 件 描 述 语 言(hardware description language)广义地说,描述电子实体的语言:逻辑图,电路图 大规模电路的出现:逻辑图、布尔方程不太适用,需要在更高层次上描述系统 出现多种HDL语言,为便于信息交换和维护,出现工业标准 v通常指高层设计阶段描述硬件vHDL语言的特点 抽象地进行行为描述 结构化语言:可以描述电子实体的结构 多层次混合描述 既可被模拟,又可被综合v能提供VHDL模拟器的公司:Cadence、Mentor Graphics、Viewlogic、Synopsys等大
4、型EDA公司和CLSI、Model-Technology、Vantage等专门公司vVerilogVHDL语言v基本概念:描述硬件电路,可以抽象地表示电路的行为和结构(完成什么功能,怎样组成)v作用:对IC设计,支持从系统级到门和器件级的电路描述,并具有在不同设计层次上的模拟验证机制可作为综合软件的输入语言,支持电路描述由高层向低层的转换v 建模机制、模拟算法、模拟环境建模机制v 基本结构v 行为描述v 结构描述 VHDL语言的建模机制 基本结构 一个硬件单元在VHDL中看作一个设计实体v 实体外观实体说明:实体命名,实体与外部环境的接口描述,未涉及其内部行为及结构v 实体功能 在结构体中实现
5、 结构体:实体的输入-输出关系,实体的结构和行为描述对应一个实体说明可以有多个结构体,不同的实现方案v功能描述:功能描述:行为描述行为描述数据流描述数据流描述结构描述结构描述混合描述混合描述VHDLVHDL语言的建模机制语言的建模机制行为描述行为描述v电子实体中的行为:电子实体中的行为:反映信号的变化、组合和传播反映信号的变化、组合和传播 行为的特点是信号的延迟和并行性行为的特点是信号的延迟和并行性vVHDLVHDL中描述行为的基本单位是中描述行为的基本单位是进程,由进进程,由进程语句描述。程语句描述。进程之间是进程之间是并行并行的,进程内部是顺序的,进程内部是顺序 执行的。进程语句本身由执行
6、的。进程语句本身由一系列的顺序语句组成,顺序语句发生在该进程被激活的同一一系列的顺序语句组成,顺序语句发生在该进程被激活的同一时刻时刻v信号:各进程之间的通信,数据通路。信号的状态可能影响与信号相关的进程的状态v信号赋值:模拟周期:在时刻t,从一些信号更新、若干进程被激活到进程被挂起信号在一个模拟周期完成求值,延迟td后更新值,td是信号延迟,也称DELTA延迟,在同一模拟时刻,发生t,t+td ,t+2td,.多个模拟周期v进程并行:进程并行:每个进程仅在满足一定条件的某每个进程仅在满足一定条件的某个时刻被激活,同一时刻可以有多个进程被个时刻被激活,同一时刻可以有多个进程被激活激活v对于串行
7、机,模拟时钟在每个时刻停下,直对于串行机,模拟时钟在每个时刻停下,直到每个时刻被激活进程全被处理完到每个时刻被激活进程全被处理完v延迟描述:延迟描述:反映时序,建立精确的电路硬反映时序,建立精确的电路硬件模型件模型 什么是延迟?什么是延迟?传输延迟传输延迟 惯性延迟:惯性延迟:输入信号在指定延迟时间内保持输入信号在指定延迟时间内保持不变,元件的输出端才有响应。不变,元件的输出端才有响应。进程为行为的基本单元进程为行为的基本单元信号作为系统进程之间的数据通路信号作为系统进程之间的数据通路各进程并行执行各进程并行执行VHDLVHDL语言的建模机制语言的建模机制结构描述结构描述v结构描述:结构描述:
8、若干部件用信号线互连形成一个实体若干部件用信号线互连形成一个实体 v部件:部件:对某元件的调用(例元)对某元件的调用(例元)一个结构体由若干例元互连而成一个结构体由若干例元互连而成元件:元件:某个实体的某种结构,只有外观说明(元件说明某个实体的某种结构,只有外观说明(元件说明语句)语句)一个元件说明,代表一种类型的元件,是一个符号一个元件说明,代表一种类型的元件,是一个符号 元件调用:元件调用:元件例化语句元件例化语句:v结构描述中的信号:结构描述中的信号:连接例元,值传递连接例元,值传递 例元的输出值变化会影响以此信号为输入的其他例元例元的输出值变化会影响以此信号为输入的其他例元 元件例化语
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);元件引用,生成例元 (标号:元件名 端口映射)U2:
10、AND2 port map(A,B,CO);end behavioral;v元件配置元件配置 元件例化语句生成例元引用的是元件,元件例化语句生成例元引用的是元件,不是实体,实体结构中的例元应该同实在的不是实体,实体结构中的例元应该同实在的实体设计相对应,进行元件配置,指出使用实体设计相对应,进行元件配置,指出使用的实体和结构体的实体和结构体 FOR FOR :USE ENTITY USE ENTITY.(结构名)(结构名)标号例元所引用的元件对应于某指定库的标号例元所引用的元件对应于某指定库的某实体和某结构体某实体和某结构体 Architecture structural_view OF fu
11、ll_adder IS Component half_adderPORT(in1,in2:IN Std_logic;sum,carry:OUT Std_logic);End Component;Component or_gate 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
12、,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:half_adderUSE ENTITY WORK.half_adder(behav);End For;For u3:or_gateUSE ENTITY WORK.or_gate(arch1);End For;End For;End parts;实体实体FULL_ADDERFULL_ADDER的配置,命名为的配置,命名为PARTSPARTS,采用结构体采
13、用结构体 structural_viewstructural_view作为实体作为实体full-adderfull-adder的结构体,该结构的结构体,该结构体中例化的两个元件体中例化的两个元件u1u1,u2u2采用实体采用实体half-adderhalf-adder,结构体结构体behavbehav来源于来源于WORKWORK库,库,u3u3采用实体采用实体or-gateor-gate,结构体结构体arch1arch1来源于来源于WORKWORK库库 VHDL语言的模拟算法v 面向事件的模拟算法:面向事件的模拟算法:同一时刻活跃信号占全部信号同一时刻活跃信号占全部信号的的15%15%,为提高
14、效率,仅对发生事件的信号进行计算,为提高效率,仅对发生事件的信号进行计算,对于不发生事件的信号则不进行计算对于不发生事件的信号则不进行计算v 几个概念几个概念什么是事件?什么是事件?信号的逻辑值发生变化信号的逻辑值发生变化动态的全局事件表:动态的全局事件表:记录信号事件和时间事件,可记录信号事件和时间事件,可更新。更新。信号事件:信号事件:信号驱动产生的事件;信号驱动产生的事件;时间事件:时间事件:进程由于等待时间条件而挂起的事件进程由于等待时间条件而挂起的事件激活进程:激活进程:与电路中某变化的信号相关的进程,相与电路中某变化的信号相关的进程,相应的信号称为敏感信号。应的信号称为敏感信号。进
15、程可以被敏感信号、等待时间、激活条件激活。进程可以被敏感信号、等待时间、激活条件激活。开始开始激活所有进程激活所有进程读入激励信号读入激励信号记入全局事件表记入全局事件表产生新的信号事件记入事件表;产生新的信号事件记入事件表;时间等待事件记入事件表;时间等待事件记入事件表;进程挂起进程挂起当前时刻所有当前时刻所有激活进程模拟完激活进程模拟完?增加事件增加事件最小时间间隔最小时间间隔否否施加施加新的输入信号新的输入信号根据全局事件表根据全局事件表更新相应的信号更新相应的信号执行被激活的进程执行被激活的进程否否存在被激活的存在被激活的进程?进程?是是无无全局全局 事件表空?事件表空?是是是是用户:
16、语言输入,模拟用户:语言输入,模拟器模拟器模拟6.3 6.3 综合综合v 概念:概念:从设计的高层次向低层次转换的过程,是一从设计的高层次向低层次转换的过程,是一种自动设计的过程种自动设计的过程 一种专家系统一种专家系统v 分类:分类:高级综合高级综合逻辑综合(逻辑综合(RTLRTL级综合)级综合)物理综合(逻辑图或电路图到版图,严格说应该物理综合(逻辑图或电路图到版图,严格说应该是同级驱动)是同级驱动)高级综合高级综合v 设计的算法级描述转换为设计的算法级描述转换为RTLRTL级描述级描述v 核心:核心:分配(分配(ALLOCATIONALLOCATION)和调度和调度(SCHEDULING
17、SCHEDULING)分配:分配:给定性能、面积给定性能、面积/功耗条件下,确定硬功耗条件下,确定硬件资源:执行单元、存储器、控制器、总线等,件资源:执行单元、存储器、控制器、总线等,产生数据通道产生数据通道调度:调度:确定这些结构的操作次序确定这些结构的操作次序v根据控制流图和调度中产生的状态信息,利用传根据控制流图和调度中产生的状态信息,利用传统的统的RTL/RTL/逻辑综合技术综合出控制器部分逻辑综合技术综合出控制器部分v目标:找到代价最小的硬件结构,使性能最佳目标:找到代价最小的硬件结构,使性能最佳v综合过程:综合过程:输入的行为描述编译输入的行为描述编译 中间数据结构中间数据结构 数
18、据流综合子系统、控制流综合子系统数据流综合子系统、控制流综合子系统 数据通道和控制部分(数据通道和控制部分(RTLRTL级网表)级网表)模拟验证模拟验证 RTLRTL两级工艺映射两级工艺映射 工艺相关的结构工艺相关的结构 逻辑图自动生成逻辑图自动生成 逻辑图逻辑图 模拟验证模拟验证综合系统组成:编译器、模拟器、综合系统组成:编译器、模拟器、数据流综合子系统、控制流综合数据流综合子系统、控制流综合子系统、工艺映射系统逻辑图自子系统、工艺映射系统逻辑图自动生成系统动生成系统v工艺映射:工艺映射:已知工艺无关的结构描述、目标已知工艺无关的结构描述、目标工艺及一组设计约束,在满足设计约束条件工艺及一组
19、设计约束,在满足设计约束条件下,在物理域上实现同一层次的结构描述。下,在物理域上实现同一层次的结构描述。(不丢结构信息,增加工艺数据)(不丢结构信息,增加工艺数据)算法级不适用,算法级不适用,RTLRTL级(宏单元),逻辑级级(宏单元),逻辑级(标准单元或门阵单元、(标准单元或门阵单元、FPGAFPGA、PLDPLD等)等)v综合中的优化问题(黑箱):资源共享、连接优化、时钟分配等 优化目标:面积、速度、功耗、可测试性逻辑综合v 概念:概念:由给定的逻辑功能和性能要求,在由给定的逻辑功能和性能要求,在一个包含许多结构、功能、性能已知的逻一个包含许多结构、功能、性能已知的逻辑元件的逻辑单元库支持
20、下,确定出由一辑元件的逻辑单元库支持下,确定出由一定逻辑单元组成的逻辑结构定逻辑单元组成的逻辑结构v 输入:逻辑设计描述;输出:逻辑网表或输入:逻辑设计描述;输出:逻辑网表或逻辑图逻辑图v综合过程:综合过程:1.1.设计描述设计描述 2.2.设计编译设计编译 3.3.逻辑化简和优化:完成逻辑化简和优化:完成逻辑结构的生成与逻辑结构的生成与优化优化,满足系统逻辑功能的要求。,满足系统逻辑功能的要求。4.4.利用给定的逻辑单元库进行工艺映射,对利用给定的逻辑单元库进行工艺映射,对生成的逻辑网络进行元件配置,进而估算速度、生成的逻辑网络进行元件配置,进而估算速度、面积、功耗,进行逻辑结构的面积、功耗
21、,进行逻辑结构的性能优化性能优化 5.5.得到逻辑网表得到逻辑网表v综合中的优化问题(黑箱):综合中的优化问题(黑箱):优化目标:面积、速度、功耗、可测试性优化目标:面积、速度、功耗、可测试性v可综合的输入描述:可综合的输入描述:VHDLVHDL、VerilogVerilog、HardwareCHardwareC逻辑模拟v逻辑模拟的基本概念:将逻辑设计输入到计算机,用软件方法形成硬件的模型,给定输入波形,利用模型算出各节点和输出端的波形,判断正确否v主要作用:验证逻辑功能和时序的正确性v分类:根据所模拟逻辑单元规模的大小 寄存器传输级模拟:总体操作正确性功能块级模拟:加法器、计数器、存储器等
22、门级模拟:基本逻辑单元:门、触发器等开关级模拟:晶体管:后仿真v几个概念几个概念什么是逻辑功能?什么是逻辑功能?输入和输出之间的逻辑关系,不考输入和输出之间的逻辑关系,不考虑与时间的关系。虑与时间的关系。什么是时序?什么是时序?考虑与时间的关系,输入和输出之间与考虑与时间的关系,输入和输出之间与时间有关系时间有关系组合逻辑和时序逻辑组合逻辑和时序逻辑 组合逻辑:组合逻辑:输出只决定于同一时刻各输入状态的输出只决定于同一时刻各输入状态的组合,与以前状态无关组合,与以前状态无关 特点:特点:输入与输出间无反馈途径;电路中输入与输出间无反馈途径;电路中无记忆单元无记忆单元 时序逻辑电路:时序逻辑电路
23、:输出与输入状态有关,还与系统输出与输入状态有关,还与系统原先状态有关原先状态有关 特点:特点:输入与输出间有反馈途径;电路中输入与输出间有反馈途径;电路中有记忆单元有记忆单元逻辑模拟(续)v设计输入方法:设计输入方法:逻辑综合的结果;原理图输入;逻辑描述逻辑综合的结果;原理图输入;逻辑描述语言语言v主要作用:主要作用:验证逻辑功能的正确性,真值表(验证逻辑功能的正确性,真值表(first-stepfirst-step)延迟模拟:时序的正确性,预先检查是否有尖峰、竞延迟模拟:时序的正确性,预先检查是否有尖峰、竞争冒险现象争冒险现象(second step)second step)竞竞争争冒冒险
24、险:从从门门的的输输入入到到输输出出存存在在延延迟迟,不不同同门门的的延延迟迟不同,不同通路上的延迟不同,引起电路出现错误的输出不同,不同通路上的延迟不同,引起电路出现错误的输出 两两个个路路径径在在不不同同时时刻刻到到达达:竞竞争争;输输出出的的干干扰扰脉脉冲:冒险冲:冒险v主主要要环环节节:逻逻辑辑描描述述、逻逻辑辑模模拟拟模模型型的的建建立立、逻逻辑辑模模拟拟算算法法逻辑模拟模型逻辑模拟模型v逻辑元件模型和信号模型逻辑元件模型和信号模型v元元件件的的延延迟迟模模型型:检检查查时时序序关关系系、反反映映竞竞争争和和冒冒险险等等现现象象;调调用的门单元中已含有不同延迟模型信息用的门单元中已含
25、有不同延迟模型信息 零延迟:零延迟:检查逻辑关系正确性,组合逻辑和同步时序检查逻辑关系正确性,组合逻辑和同步时序 单位延迟:单位延迟:逻辑关系正确性逻辑关系正确性 指定延迟:指定延迟:不同元件或不同的元件类型指定不同的延迟;不同元件或不同的元件类型指定不同的延迟;指定上升、下降时间;尖峰分析指定上升、下降时间;尖峰分析 最大最大-最小延迟:最小延迟:分析竞争分析竞争 惯性延迟:惯性延迟:可抑制尖峰可抑制尖峰 连线延迟:连线延迟:加到门延迟中;门之间加入延迟元件等加到门延迟中;门之间加入延迟元件等ab1ab12最小延迟=1 最大延迟=2v 不同要求的逻辑模拟调用不同的延迟信息不同要求的逻辑模拟调
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 集成电路设计 EDA 系统 概述
限制150内