您好,欢迎访问三七文档
IC设计经验总结一、芯片设计之前准备工作:1)根据具体项目的时间要求预订MPW班次,这个可以多种途径完成。(1):一方面可以跟中科院EDA中心秦毅等老师联系,了解各个工艺以及各个班次的时间。半导体所是EDA中心的会员单位,他们会很热心的帮助完成。(2):另一方面可以和具体项目合作的单位如清华等,根据他们的流片时间来制定自己的流片计划。2)仔细核对设计库的版本更新情况,包括PDK、SpectreModel以及RuleDecks。这些信息可以直接可以从中科院EDA中心获得,或者从相应的合作单位进行沟通统一。这一点对后续的设计很重要,请务必要引起重视。3)得到新的工艺库必须整体的熟悉一下,好好的查看里面的Document以及Userguide之类的,里面的很多信息对实际设计很有帮助。安装工艺库的过程会根据具体设计要求做出一些选着。如TSMC65nm工艺库在安装过程中会提示是否选着RF工艺、电感是否使用厚层金属、MIM电容的单位面积电容值等之类的。4)制定TapeOut的具体Schedule.这个Schedule的制订必须请相关有经验的人来核实,第一次TapeOut的人往往缺乏实际经验,对时间的安排可能会不合理。一旦Schedule制订好后,必须严格按照这个时间表执行。当然必须赶早不赶晚!二、芯片设计基本系统框图一芯片系统设计模拟电路芯片数字电路芯片数模混合仿真模拟电路验证数字电路验证NONOYes符合要求版图设计(模拟/数字)版图验证NONO寄生提取仿真验证符合要求Yes设计完成TapeOut封装测试符合性能Yes设计彻底完成NONONONOYesYesMatlab/C++/ADS/VerilogA等Cadence/Synopsis/Modesim/NC-Verilog等SpetreVerilog/Ultrusim-VerilogCalibre(LPE)Calibre(DRC/LVS)Virtuoso/SoCencounter图一三、模拟IC设计基本流程3.1)设计框图如下图二电路样式选择电路结构确定参数的选定以及仿真优化以及可靠性仿真图二3.2电路的式样确定这个主要是根据系统设计结果,分析和确定模拟电路的详细的式样。3.3电路的结构确定根据单元模块电路的功耗、代价等各个指标的折中分析,确定各个单元模块的具体实现电路形式,如滤波器是无源滤波器还是有源滤波器,有正交VCO产生I/Q信号还是通过/2分频器来实现I/Q信号,用差分形式还是用单路形式等等。在具体电路的选取过程中,我们需要查阅了大量的IEEE文献,从中选取了比较成熟的,应用较广的电路结构来进行我们的设计工作。有时候可能会发现所确定的结构很难或者根本不可能满足技术指标的要求,这就需要改进结构或者查阅文献,设法满足要求。3.4参数的选取和仿真电路参数的选定与电路的仿真是分不开的。在比较重要的设计任务中,手算可以在20%的时间内完成80%的设计工作量,剩下的20%却需要花80%的时间来做。通过手算确定的参数是近似的,有时候会引错方向。但是它可以了解到参数的变化对设计会有多大的影响,是很有必要的。而采用计算机的反复迭代会使设计者对设计体会不深,不是明智的办法。俗话说“公欲善其事,必先利其器”。目前,在公司内部可以使用多种EDA工具进行电路仿真。对于EDA工具的使用不在于多,能够精通常用的一类或者几类就行。最主要的时候能够灵活的进行仿真规划,知道什么样的电路适合用什么样的仿真工具。-HSPICE;对于低频电路设计来说,HSPICE是一种最灵活方便的工具,而且其仿真精度也比较高,后来被SYNOPSYS收购,好像也正是因为这个原因使得如今的Hspice仿真速度以及精度都可以跟Cadence产出的仿真器相媲美了。业界使用Hspice作为仿真软件的也挺多,原先是avanti公司的,-Spectre;是Cadence的仿真器,由于其是图形界面,所以很直观。-SpectreRF:对于射频电路设计,SpectreRF是一种不错的选择。-UltraSim:相比于Spertre而言,在仿真精度损失3%的情况下,可以加速10~100倍的仿真速度。而且进行整体芯片后仿真时候,我们可以根据其不用的精度要求来设置各个模块的仿真精度。UltraSimFull-ChipSimulatorforfasterconvergenceongoalsandsignoffofpost-layoutdesignsatthechiplevel.具体UltraSim的使用可以参考《Virtuoso®UltraSimSimulatorUserGuide》、《ADE/UltraSimIntegrationTutorial》等。在网上相关资料很多,可以根据要求自己下载学习。-APS:AcceleratedParallelSimulatordelivershigh-precisionSPICEandscalablemulti-coresimulationperformanceforcomplexandlargepreandpost-layoutofanalogandRFICdesigns.这种仿真器是现在业界最快的仿真器,如今实验室已经成功启动APS进行大规模的是芯片整体验证仿真。在整体芯片规模越大,越能体现出优势。(对应的Cadence版本5.10.41.5,安装相应的MMSim72)-SpectreVerilog:能够进行数模混合仿真的工具。-UltraSim-Verilog:进行数模混合仿真的工具,仿真速度比SpectreVerilog快。实验室在使用中较多的用在数字模块的后仿验证。-StarSim:高于HSPICE10倍的速度,对于大规模的晶体管级的仿真是不错的选择,可以进行tran分析。-ADS:对于系统级的仿真,ADS是最好的选择。对于电路级的仿真,功能也很强大,而且如今已经有一个RFDE环境,可以将ADS嵌入在Cadence中,很方便的进行使用。在电路参数的选定及电路仿真的工作开始之前,最好能够阅读一遍厂家提供的Model库及其文件,从中可能会得到意想不到的东西。电路参数的选定及电路的仿真需要有良好的IC设计的基本知识。而这些知识的获得则需要个人的不断努力,不断的积累。3.5优化和可靠性仿真由于实际工艺的都存在不确定性,会偏离设计的初衷,如器件尺寸的偏离,参杂浓度的改变等,都会影响到电路的性能,所以设计的时候应具有一定的鲁棒性,因此需要可靠性仿真,确保芯片在工艺偏离的情况下,性能仍然符合要求。对各种参数要求较严格的电路,需要做蒙特卡罗分析,以前章琦做过简单的蒙特卡罗分析仿真方法的仿真,,希望大家能够相互学习这种方法,做芯片电路设计的全面仿真。还有工艺Corner分析至关重要,另外敏感性分析和温度分析也应该引起重视,特别是对某些特定电路的设计。我们对工艺角Corner分析应至少包括:全部模型的SS,TT,FF角。如有时间的话,可以进一步细化,如N型晶体管和P型晶体管趋向于两种不同的工艺角SS和FF等,晶体管和其他的电阻和电容等的工艺角不同等。总而言之,应使用组合的方法,尽可能的涵盖一切可能出现的工艺角情况。就应用的温度而言对其进行温度范围的仿真,一般而言,应该覆盖-20~100的温度,取特征值如-20,27,100度等三个温度点进行仿真即可。温度应配合工艺角联合进行仿真,比如仿真在100度,SS工艺角的情况下芯片的性能。分析可能的失配情况,尤其是匹配的对管,人为的进行失配调整,如对管的尺寸失配5%等,仿真在这种情况下芯片的性能。还有就是考虑电源电压的波动,一般电压电压波动范围设置在+-10%的范围。仿真过程中应该应该考虑到足够的电压欲度,使得在波动范围内任然正常工作。总而言之,优化和可靠性仿真是必须的,它确保芯片在工艺偏离的情况下,性能仍然符合要求。四、模拟IC设计一些经验总结4.1、设计库的管理,各个电路图以及电路端口命名需要规范,养成一个好习惯。这样既方便于自己对电路模块的调用,也方便于以后的师弟、师妹的学习理解。4.2、模拟IC最基础的一个模块就是OPA,可以说它在模拟IC中到处使用,如ADC/DAC/PLL/DC-DC/LDO/Bandgap/PGA/VGA等等。所以大家在抽空时间里面需要对OPA基本设计理论,各个性能指标的意义做好充分的了解。可以阅读参考书籍,也可向有OPA设计经验的师兄弟请教、学习。有时间的话可以根据特定的应用,设计一个相应的OPA,这样一方面掌握OPA以及模拟电路的基本设计方法,另一方面可以很好的学习Cadence等的软件的仿真流程(准对初学模拟IC设计者)。4.3、仿真软件的使用技巧。首先不可太依赖于仿真工具,仿真只是一种验证手段,只是用来验证你的设计想法是否正确。设计过程中必须多思考、多交流。4.4、电路设计过程可以说是一个不断迭代收敛的过程,千万不要害怕迭代次数较多。整个设计过程原本就是各个参数之间的Tade-Off过程。如LC-VCO的设计中我们要考虑Phase-Nosie、中心频率、频率调谐范围、功耗、调谐曲线的Overlap、Kvco等。不断的进行参数设计调整,使得最后达到设计要求。4.6、设计中电阻一般较常使用,在电阻采用绝对值的时,一般将电阻的W选取2um,这样在芯片加工过程中相应的偏差就会减小。五、仿真工具配合仿真方法几点简单说明:【1】Ultrasim的简单使用说明:准对不同的电路仿真,可以使用7种SimulationMode:(1)S:Spice(2)A:Analog(3)AMR:AnalogMultiRate(4)DA:DigitalAccurat(5)MS:MixedSignal(6)DF:DigitalFast(7)DX:一般其中DF/DA模式适用于数字电路(数字逻辑电路、门电路、触发器、ROM、RAM等)仿真,不要把这两种模式用于模拟电路仿真。如果在option没有设置,默认是MS模式,兼顾精度与速度。AMR模式不能“本地化”(local)使用,就是说AMR模式只能用于整个电路而不能针对某一个模块使用。公差容忍度设置:speed可以设置总的公差容忍度tol(tol也可以单独设置),tol包括电压、电流等所有的公差容忍度之和。.usim_optspeed=2设置tol=0.001,比较高的精度!.usim_optspeed=1#vco对vcocell使用0.0001的tolspeed=1,2,3,4,5,6,7,8对应的tol分别是0.0001,0.001,0.0025,0.005,0.02,0.02,0.04,0.07,精度以此降低。通常,如果精度要求不是很高,可以采用默认设置,而无需设置这一项。tol还与解矩阵方程的收敛性有关,然而,我还从来没有碰到ultrasim不收敛的时候!!再强调一点:精度设置的越高,相应的速度越低!SimulationModesVirtuosoUltraSimSimulationModesOverview一般使用过程中我们比较多的关注仿真模式、仿真速度、仿真精度的设置。其余一些详细的设置可以参考《Virtuoso®UltraSimSimulatorUserGuide》下面以使用Ultrasim仿真PLL的例子简单熟悉Ultrasim的设置PLL模块中既有高频模块VCO,Divider,也有低频模拟模块Charge-Pump,LPF,还有数字模块Digital,所以这是比较复杂的系统,包含了数字、模拟、射频。往往这样的系统仿真速度和精度个大问题。VCO的仿真需要小的步长,较高的精度,但是数字模块可以采用较大的仿真步长,精度要求不高。如果整体系统都是按照VCO的仿真精度来设置的话,仿真速度会很慢,特别是有模块进行后仿真的时候,速度就会成为更大的问题。而UltraSim的仿真可以分模块很好处理这个问题,加快仿真速度,但也不损失仿真精度。1)启动Cadenceicfb&,打开已经建立好的Config(这样的仿真务必建成Config形式)2)设置各个模块的仿真模式以及仿真精度。有两种方法可以使用:第一直接所提取网标中加入命令形式:如
本文标题:IC设计经验总结
链接地址:https://www.777doc.com/doc-1883097 .html