您好,欢迎访问三七文档
模拟?数字?OR数字IC设计流程数字IC设计流程制定芯片的具体指标用系统建模语言对各个模块描述RTL设计、RTL仿真、硬件原型验证、电路综合版图设计、物理验证、后仿真等具体指标•制作工艺•裸片面积•封装•速度•功耗•功能描述•接口定义前端设计与后端设计Architechturalspecs&RTLcodingConcept+MarketResearchRTLsimulationLogicSynthesis,Optimization&ScanInsertionFormalVerification(RTLvsGates)Pre-layoutSTATimingOK?Floorplanning&Placement,CTInsertionAutoRoutingFormalVerification(ScanInsertedNetlistvsCTInsertedNetlist)DRC,LVS,ECOPost-layoutSTATimingOK?FormalVerification(ECONetlistvsCTInsertedNetlist)PowercheckNoYesNoTapeOutYesDCMODELSIMMBISTARCHITECTFORMALITYPTAstroAstroRailFORMALITYPTHerculesCaliberVirtuoso数字前端设计(front-end)以生成可以布局布线的网表(Netlist)为终点。数字后端设计(back-end)以生成可以可以送交foundry进行流片的GDS2文件为终点。术语:tape-out—提交最终GDS2文件做加工;Foundry—芯片代工厂,如中芯国际。。。算法模型c/matlabcodeRTLHDLvhdl/verilogNETLISTverilogStandcelllibraryLAYOUTGDSII对功能,时序,制造参数进行检查TAPE-OUT综合工具根据基本单元库的功能-时序模型,将行为级代码翻译成具体的电路实现结构布局布线工具根据基本单元库的时序-几何模型,将电路单元布局布线成为实际电路版图数字IC设计流程前端设计(RTLtoNetlist)•RTL(RegisterTransferLevel)设计利用硬件描述语言,如verilog,对电路以寄存器之间的传输为基础进行描述•综合:将RTL级设计中所得的程序代码翻译成实际电路的各种元器件以及他们之间的连接关系,可以用一张表来表示,称为门级网表(Netlist)。•STA(StaticTimingAnalysis,静态时序分析):套用特定的时序模型(TimingModel),针对特定电路分析其是否违反设计者给定的时序限制(TimingConstraint)RTLCode风格代码检查功能仿真逻辑综合成功?综合后仿真成功?STA成功?代码修改约束修改NNNNetlist后端整个ASIC设计流程都是一个迭代的流程,在任何一步不能满足要求,都需要重复之前步骤,甚至重新设计RTL代码。模拟电路设计的迭代次数甚至更多。。。前端工具•仿真和验证1.QUATURSII2.Cadence的Incisive:就是大家最常用的nc_verilog,nc_sim,nc_lauch,verilog-xl的集合。•综合1.Synopsys的DC2.Cadence的RTLCompliler号称时序,面积和功耗都优于DC,但是仍然无法取代人们耳熟能详的DC.3.BuildGates:与DC同期推出的综合工具,但是在国内基本上没有什么市场,偶尔有几家公司用。启动命令:bg_shell–gui&后端设计(NetlisttoLayout)•APR:AutoPlaceandRoute,自动布局布线•ExtractRC:提取延时信息•DRC:DesignRuleCheck,设计规则检查。•LVS:LayoutVersusSchematic,版图电路图一致性检查。ARPExtratRCSTA成功?DRC成功?LVS成功?NN后仿真NetlistLayoutEditNAPR(AutoPlaceAndRoute,自动布局布线)•芯片布图(RAM,ROM等的摆放、芯片供电网络配置、I/OPAD摆放)•标准单元的布局•时钟树综合•布线•DFM(DesignForManufacturing)布局布线主要是通过EDA工具来完成的APR工具工具APRSynopsysASTROCadenceEncounter布局布线流程IO,电源和地的布置指定平面布置图电源的规划电源布线布线ENCOUTER布局布线设计流程1、登录服务器,进入终端,输入:encounter,进入socencounter2、调入门级网表和库网表文件:bin/accu_synth.v约束文件:bin/accu.sdc时序库:hjtc18_ff.libhjtc18_ss.libhjtc18_tt.libIO约束文件:bin/accu.ioImportdesign•3、在advanced的power里添加VDDGND4、布图规划floorplan一开始有默认值,但我们需要对自动布局的结果进来手工调整。Floorplan→specifyFloorplan我们需要芯片具体的尺寸要求改变里面的数值。将Ratio(H/W)改为1将coreutilization改为0.5将coretoleft/right/top/bottom改为10•5、creatpowerring在power里选择powerplaning→addrings会弹出addring对话框6、placement•place→standardcells•然后place→placeFlipI/O7、Route•route→nanoroute得到最后的布线图时钟树综合时钟树和复位树综合为什么要放在APR时再做呢?时钟树综合的目的:低skew低clocklatencyDFM(DesignForManufacturing)DFM:可制造性设计DFM步骤在整个布局布线流程以后开始,主要目的是通过一些技术处理防止芯片在物理制造过程中出现问题,造成芯片不能工作。DFM的目的在于提高良率。DFM主要考虑以下效应:天线效应Metalliftoff效应Metalover-etching效应DFM信号线太长造成由金属线过窄造成由金属过宽造成DRC(DesignRuleCheck)•DesignRule:–由于制造工艺与电路性能等原因,对版图设计有一定要求,比如说,线宽不能低于最低线宽,N阱间应当具有一定间距,每一层金属应当具有一定密度等。LVS(layoutversusschematic)•LVS:LVS是为了检查版图文件功能与原有电路设计功能的一致性。LVS软件根据标准单元库设计者提供的cdl网表文件从版图中提取电路网表。用人单位要求•高级数字前端电路工程师工作地点:成都职位描述:1.完成公司ASIC数字前端的设计和验证;2.配合数字后端部门完成ASIC的后端设计;3.配合测试部门完成ASIC的测试;4.完成相关文档的整理与编写。任职要求:1.相关专业本科以上学历;2.4-5年相关工作经验,具有独立设计模块、芯片能力;3.熟练掌握Verilog,熟悉芯片的仿真验证方法,熟悉NC-SimCS,Quartus等EDA工具;熟悉ASIC设计流程;了解系统总线架构和常用软硬件接口协议。4.良好的沟通协调能力及团队合作精神。数字后端设计工程师职位描述:负责数字电路的综合、自动布局布线、时钟分析、时序修正、电源分析、信号完整性分析、物理验证、代工厂tapeout等数字后端工作,协助前端工程师完成设计、验证和时序分析,完成对代工厂数据交接和对客户技术支持。任职资格:1.微电子相关专业,本科以上学历。2.熟悉SOC从RTL到GDS的完整设计流程;3.能够熟练使用Astro/Encounter、DC/PC、PT、Formality、MentorDFT、StarRC、Calibre等相关设计工具的某一套或几种;4.较好的英文阅读能力;5.高效的学习能力和团对合作精神。谢谢
本文标题:数字IC设计流程
链接地址:https://www.777doc.com/doc-652249 .html