第7章自动布局布线及SOC简介7.1自动布局布线7.2SOC的技术简介7.3VLSI设计发展方向LogicsynthesisPlacementRouting7.1自动布局布线自动布局布线定义自动布局、布线是将门级网表(netlist)转换成版图(layout),并对各个电路单元确定其几何形状、大小及位置,同时要确定单元之间的连接关系方法有两种,一种是手工画版图实现,另一种是用自动布局布线工具实现(AutoPlaceandRoute,APR)VLSI设计的自动布局、布线必须借助EDA工具完成比较著名的自动布局、布线工具:AVant!/Synopsys的ApolloII、Cadence、Synopsys、Mentor等公司的工具。在Cadence中进行布局规划的工具为Preview,进行自动布局布线的引擎有四种:BlockEnsemble、CellEnsemble、GateEnsemble和SiliconEnsemble,其中,BlockEnsemble适用于宏单元的自动布局布线,CellEnsemble适用于标准单元或标准单元与宏单元相混合的布局布线,GateEnsemble适合于门阵列的布局布线,SiliconEnsemble主要用在标准单元的布局布线中。自动布局布线流程标准单元库按电路种类划分核心逻辑单元库I/O单元硬核模块生成器按设计阶段划分逻辑综合库单元的仿真库物理版图库延时模型库门级网表布局规划预布线布局时钟树布线自动布局布线过程设计约束工艺库数据准备和输入版图数据输出DRC&LVS门级网表布局规划预布线布局时钟树布线自动布局布线过程设计约束工艺库数据准备和输入版图数据输出DRC&LVS①数据准备和输入网表(netlist):由逻辑综合工具生成的,以标准逻辑单元表示的逻辑网络(EDIF网表)标准逻辑单元库/工艺库:由EDA/Foundary厂商合作提供;如:ArtisanComponents的TSMC0.25umCMOS标准单元库和输入/输出单元库)标准逻辑单元库的库单元种类繁多,形式多样,以满足不同阶段的ASIC设计的需求设计约束芯片的总体功耗、时序要求和面积②布局规划、预布线、布局布局规划是面向物理版图的划分,不同于逻辑设计时模块的划分。布局规划可估算出较为精确的互连延迟信息、预算芯片的面积,分析布线的稀疏度。布局规划从版图上将芯片设计划分为不同的功能块,布置输入/输出端口,对功能块、宏模块、芯片时钟及电源分布进行布局方案设计,根据设计要求对一些单元或模块之间的距离进行约束和控制。在深亚微米设计中,合理的总体布局规划可以提高综合的连线延迟模型的准确性,从而更快的达到时序收敛,减少设计的重复。预布线预布线的目的就是要在版图设计上为布线留必要的通道预布线包括宏单元的电源、地、信号的布线,焊盘单元的布线及芯片核心逻辑部分的电源环、电源网络的布线布线通道的不同划分电源分配一般结构某32位微处理器电源总线布局布局就是进行网表中单元的放置,这一步可以使用综合时产生的时序约束来驱动布局,以使布局后的连线延迟更接近综合的连线延迟模型,更快的达到TimingClosure。布局要求将模块在满足一定的目标函数的前提下布置在芯片上的适当位置,并要求芯片面积最小、连线总长最短、电性能最优并且容易布线。③时钟树综合在芯片版图设计中,时钟树的设计是非常重要的,数字系统中一切的电路行为都是在时钟的严格同步下进行的。系统中的时钟负载很大,而且遍布整个芯片。这样就造成了较大的本地时钟间的相对延时,也叫时钟偏斜(ClockSkew),时钟偏斜严重影响电路的同步,会造成时序紊乱。延时延时最大芯片平面时钟输入延时为零abdc时钟树时钟树综合就是为了保证时钟的设计要求,对芯片的时钟网络进行重新设计的过程,包括:时钟树的生成缓冲的插入时钟网络的分层时钟网络形式最常用的时钟网络是H-树和平衡树最常用的两种时钟网络时钟树主干时钟树主干时钟源时钟源一些时钟树的实例不含时钟树零歪斜时钟树可变时间时钟树时钟树插入及增加驱动器时钟信号延时与具体的版图密切相关,所以在逻辑综合的时候一般忽略时钟的处理,而在布局布线设计中进行插入时钟树操作。为了实现时钟延时的总体平衡,对时钟信号进行树状插入驱动(buffer)。一个插入驱动的时钟分配树DECAlpha21164CPU时钟树的例子④布线布线是根据电路连接的关系,在满足工艺规则和电学性能的要求下,在指定的区域内完成所需的全部互连,同时尽可能地对连线长度和通孔数目进行优化。完成预布线以后,一些特定网络的布线,如时钟、总线等一些关键路径需要严格保证其时序要求;在布线中,这些关键路径的布线被赋予较高的优先级,有时甚至进行手工布线。全局布线布线工具首先把版图区域划分为不同的布线单元,同时建立布线通道;对连线的网络连接方向和占用的布线资源(布线通道和过孔)、连线的最短路径等进行确定;对布线的拥塞程度进行估计,调整连线网络过度拥塞的部分。⑤版图检查与验证DRC:DesignRuleCheck设计规则检查ERC:ElectronicRuleCheck电学设计规则LVS:LayoutvsSchematicCheck网表一致性检查版图设计规则检查网表与参数提取版图网表电学规则检查后仿真网表一致性检查原理图网表a)设计规则检查(DRC,DesignRuleCheck)设计规则是以器件的特征尺寸为基准,根据制造工艺水平及其它考虑,制定出的一整套关于各掩膜相关层上图形自身尺寸及图形间相对尺寸的允许范围。设计规则检查则是检查版图中各掩膜相关层上图形的各种尺寸,保证无一违反规定的设计规则。设计规则的范围很宽,项目繁多,但其中多数规则是关于图形边与边之间的距离规范,包括宽度检查、面积检查、内间距检查和外间距检查。b)电学设计规则(ERC,ElectronicRuleCheck)电学设计规则检测出没有电路意义的连接错误,(短路、开路、孤立布线、非法器件等),介于设计规则与行为级分析之间,不涉及电路行为实现:提取版图网表,ERC软件网表提取工具:逻辑连接复原c)网表一致性检查(LVS,LayoutvsSchematicCheck)LVS是指把从版图中根据器件与节点识别提取出的电路同原设计的电路进行对比检查,要求两者在结构上达到一致。LVS要对比检查的结构单元,版图中提取出的电路和原设计的网表必须化作同一形式的网表结构,即相同形式的结构单元的互联,两者才具有可比性。如果两者不一致,其错误大体分为两类:不一致点(节点不一致、器件不一致)失配器件实现:网表提取,LVS软件后仿真是指版图完成后提取芯片内部寄生参数后的得到最准确的门延时和互连线延时的仿真。后仿真包括:逻辑仿真、时序分析、功耗分析、电路可靠性分析等⑥输出结果所有检查验证无误,布图结果转换为GDSII格式的掩膜文件。然后通过掩膜版发生器或电子束制版系统,将掩膜文件转换生成掩膜版。⑦后仿真7.2SOC技术简介基本概念SOC:Systemonchip片上系统系统集成芯片SOC是VLSI设计的必然方向片上系统(systemonachip)是二十世纪90年代发展出来的,它的目标是为了克服多芯片集成系统产生的一些困难,如芯片间的互连,芯片引脚的封装,成本等因素。而随着集成电路制造工艺的发展,目前主流的集成电路制造工艺已经达到0.18um---0.13um甚至0.065um,单个芯片上的集成规模可以达到几千万~上亿个晶体管。工艺的发展已经为单个芯片完成更多的功能做好了准备。集成电路CAD工具的发展,也为SOC的实现提供了必要条件。集成电路CAD工具必须要在设计方法学、系统设计和验证、功能设计和验证、物理层的设计和验证、测试实现等方面面向SOC重新定义。Soc基本特征:SOC是VLSI技术的最新产物。SOC是实现现代电子系统的重要途径。SOC技术涉及:集成电路制造技术;设计技术;电子系统设计理论;软件工程等。SOC芯片采用超深亚微米(VDSM)或纳米IC制造技术。SOC的复杂性!绝大多数设计厂商不可能覆盖全部技术领域,不可能也没有必要在设计上完全采用自主设计方法。大量采用IP核来完成设计已成为一种趋势。IP核软核是用可综合的RTL描述或者通用库元件的网表形式表示的可复用模块。用户须负责实际的实现和版图。固核是指在结构和拓扑针对性能和面积通过版图规划,甚至可用某种工艺技术进行优化的可复用模块。它们以综合好的代码或通过库元件的网表形式存在。硬核是指在性能、功率和面积上经过优化并映射到特定工艺技术的可复用模块。它们以完整的布局布线的网表和诸如GDSII(一种版图数据文件格式)格式的固定版图形式存在。分类可移植性联合性易用性价格软核好高高高固核中中中中硬核差低低低SOC组成结构用户设计的算法模块CPU模块DSP模块Memory模块模-数转换器(ADC)、数-模转换器(DAC)锁相环(PLL)运算放大器(OpAmp)电压调节器(BandapVoltageReference)晶振单元直流电压转换器(DC-DCconverter)I/O模块无线传输模块图像处理模块流行的SOC芯片一般有三种主要的类型:1、以MPU为核心,集成各种存贮器、控制器、时钟电路、各种模拟模块。2、以DSP为核心,集成各种存贮器、控制器、时钟电路、各种模拟模块。3、以MPU和DSP为核心,集成各种存贮器、控制器、时钟电路、各种模拟模模块SOC组成结构SOC应用领域SOC设计SOC芯片设计:芯片设计==系统设计;SOC的设计包括:芯片设计测试方法设计软件系统设计PCB板设计系统和分系统设计SOC的设计涉及领域:系统硬件软件测试等学科各领域的界线越来越模糊,趋向融合。SOC芯片的设计同样按层次划分,与VLSI设计方法一致,同样分为:系统设计行为设计结构设计逻辑设计电路设计版图设计SOC芯片设计流程系统功能定义HDLDescription内部表示硬件结构生成软件结构生成联合验证芯片结构设计芯片逻辑设计芯片电路设计芯片版图设计软件系统设计测试方案设计PCB设计系统总成基于平台的SOC设计方法在超深亚微米(纳米)工艺阶段:SoC架构设计的工作量将超过物理设计;嵌入式软件开发的工作量将超过硬件设计;需要大幅缩减架构开发时间,更早地进行软件开发并完成SoC验证,才能保证SoC芯片的上市时间并控制设计成本。目前,解决SoC技术瓶颈的方法就是提高设计的抽象级,采用基于平台的方法设计SoC芯片。基于平台的SoC设计方法带来一系列新的变化:硬件描述语言倾向于采用C++/SystemC及其方法来仿真SoC和嵌入式软件,可比传统的RTL方法快50万倍。改VLSI设计的自顶向下方法为层次性设计方法;在RTL实现之前,使用最优的系统模型或虚拟原型并行开发应用软件和系统软件,效率要比在RTL/C级验证快几个数量级。使用模型构建可复用设计平台,可快速造就新的派生设计。MPEG算法视频处理雷达信号处理器Cadence的SoCEncounter设计平台Mentor的PlatformExpress设计平台Synopsys的Galaxy设计平台ARM的PrimeXsys+RealView设计平台AlteraDSP/SOPCBuilder设计平台ARM公司的CPU系列Motorola公司的系列Artisan公司的系列TI公司的DSP系列Altera公司Nios系列Customer自主设计模块EDA工具IP核提供商(嵌入式系统)7.3VLSI设计发展方向VLSI发展趋势先进工艺(纳米技术,高集成度、低功耗)系统化设计方法(IP,SOC,SOPC,结构化ASIC)EDA技术生物芯片,DNA芯片等……FPGA发展趋势向高密度、高速度、宽频带方向发展向低成本、低价格的方向发展向低电压、低功耗和绿色化