芯片设计技术ppt课件.ppt
《芯片设计技术ppt课件.ppt》由会员分享,可在线阅读,更多相关《芯片设计技术ppt课件.ppt(71页珍藏版)》请在三一办公上搜索。
1、,芯片设计流程,半导体芯片行业三种运作模式:,IDM,Foundry,Fabless,芯片设计流程,概念和市场调查,结构级说明、RTL编码,转换时钟树到DC,形式验证(扫描插入的网表与CT插入的网表),RTL仿真,逻辑综合、优化和扫描插入,全局布线后STA,形式验证(RTL与门级),时序正确?,否,是,布图前STA,详细布线,否,时序正确?,布图后STA,是,时序正确?,布图规划、布局、CT插入和全局布线,否,是,定案下单,前端,后端,芯片设计流程 - 前端,芯片设计流程 - 后端,前端设计流程,前端的基本设计流程,从输入需求到输出网表的过程。主要步骤为: RTL设计 验证 静态时序分析 覆盖
2、率 FPGA测试 ASIC综合时序分析和验证时出现的错误可能需要反复重做前面几步才能解决是一个迭代优化的过程。,前端设计流程工艺选择,芯片工艺选择,成本,工艺特点,工艺成熟度,技术需求,IP成熟度,包括该工艺下的芯片制造成本和设计成本,Foundry可提供的第三方IP,IP的功能、性能和使用情况,性能、功耗、面积、温度、寿命、可实现的频率、可支持的金属层数等,基于该工艺下的Foundry IP、单元库的集成、后端设计等,芯片工艺的选择就是对这些因素的权衡,前端设计流程-IP,IP,模拟IP:,数字IP,包括如AD、DA、PLL、PAD、flash等IP,这些都和芯片工艺相关,选定工艺后向相应的
3、工艺厂商进行购买,购买业界已经较成熟的IP的使用权,如Ethernet MAC、AMBA、DMAC等,开源IP核:,自主设计IP:通过硬件描述语言(VHDLVerilog)实现模块功能,形成RTL(寄存器传输级)代码。,在设计中,带有MEM的模块需要内建自测试设计BIST,前端设计流程-RTL,芯片可测性设计DFT(Design for Test ),MEM,reg,BIST,MODULE,bist_en,success,fail,BIST模式,正常工作模式,reg,reg,reg,reg,Scan_out,Scan_in,scanmode,BIST,DFT,前端设计流程-DFT,RTL代码设
4、计规则检查 采用nLint工具,针对电路进行设计规则检查,包括代码编写风格、DFT、命名规则和电路综合相关规则等。,前端设计流程代码规则检查,前端设计流程,前端的基本设计流程,从输入需求到输出网表的过程。主要步骤为: RTL设计 验证 静态时序分析 覆盖率 FPGA测试 ASIC综合时序分析和验证时出现的错误可能需要反复重做前面几步才能解决是一个迭代优化的过程。,验证工作量占整个芯片开发周期的50%到70%验证工程师的数量应该超过设计工程师,验证的重要性,前端设计流程-验证,模块级验证(block level)子系统级验证(subsystem level)系统级验证(system level)
5、,验证的层次,前端设计流程-验证,模拟(simulation)仿真(emulation)形式验证(formal verification),前端设计流程-验证,验证的途径,前端设计流程-验证,形式验证,前端设计流程-验证,前端设计流程-验证,白盒法黑盒法灰盒法,功能验证的方法:,前端设计流程-验证,芯片验证流程(以LINUX-VCS环境下为例):,建立工程、设置验证环境,用汇编或C编写测试case,编译测试case,编译RTL和TB,跑仿真,观察结果和并给出测试报告,通过gcc等工具,将.s或.rs文件编译成.pat文件(存储二进制文件),生成RTL可执行文件,用于仿真,VCS工具,撰写仿真脚
6、本、配置工具路径、设置快捷命令等,生成波形文件,利用Debussy工具观察波形、日志文件比较等方法,验证完整性测试代码覆盖率功能覆盖率,cmView工具,前端设计流程-验证,LINUX环境:VCS+debussy、 WINDOWS环境:modelsim,启动VCS验证,仿真报告,debussy,波形界面,Modelsim,前端设计流程-验证平台,前端设计流程,前端的基本设计流程,从输入需求到输出网表的过程。主要步骤为: RTL设计 验证 静态时序分析 覆盖率 FPGA测试 ASIC综合时序分析和验证时出现的错误可能需要反复重做前面几步才能解决是一个迭代优化的过程。,结构说明和RTL编码,RTL
7、仿真,逻辑综合、优化、扫描插入,形式验证(RTL和门级),布局前STA,时序正确,布局、CT插入和全局布线,转换时钟树到DC,形式验证(扫描插入的网表与CT插入的网表),布局后STA,详细布线,时序正确,布线后STA,时序正确,结束,是,是,是,否,否,否,前端设计流程时序分析,静态时序分析,什么是静态时序分析?套用特定的时序模型(Timing Model),针对特定电路分析其是否违反设计者给定的时序限制(Timing Constraint)。,“静态”:分析流程不需要通过输入激励的方式进行仿真。 特点:速度快,覆盖率100%,确定芯片最高工作频率 通过时序分析可以控制工程的综合、映射、布局布
8、线等环节,减少延迟,从而尽可能提高工作频率检查时序约束是否满足 可以通过时序分析来查看目标模块是否满足约束,如不满足,可以定位到不满足约束的部分,并给出具体原因,进一步修改程序直至满足时序要求分析时钟质量 时钟存在抖动、偏移、占空比失真等不可避免的缺陷。通过时序分析可以验证其对目标模块的影响,前端设计流程时序分析,前端设计流程时序分析,我们选用的静态时序分析工具同样是目前使用最广泛的,来自Synopsys公司的PrimeTime。,时序分析,综合后STA建立时间不符合-重新设计保持时间不符合-此处修改或布局后修改(根据大小)采用的统计线载模型,前端设计流程时序分析,三阶段时序分析的区别,布局后
9、STA:布局工具将关键单元彼此靠近放置用以最小化路径延迟修改保持时间违例(或根据违例程度选择布线后修改),三阶段时序分析的区别,前端设计流程时序分析,布线后STA:加入寄生电容和RC连线延迟修正保持时间(插入缓冲器)最接近实际情况,三阶段时序分析的区别,前端设计流程时序分析,前端设计流程,前端的基本设计流程,从输入需求到输出网表的过程。主要步骤为: RTL设计 验证 静态时序分析 覆盖率 FPGA测试 ASIC综合时序分析和验证时出现的错误可能需要反复重做前面几步才能解决是一个迭代优化的过程。,覆盖率作为一种判断验证充分性的手段已成为验证工作的主导。,前端设计流程-覆盖率,覆盖率的分类 从目标
10、上分,可将覆盖率大体分为两类:代码覆盖率: 作用:检查代码是否冗余,设计要点是否遍历。 被检测对象:RTL代码 检测方法:工具自动生成 功能覆盖率: 作用:检查功能是否遍历。 被检测对象:自定义容器 检测方法:自定义收集条件,前端设计流程-覆盖率,代码覆盖率可分为:行覆盖率分支覆盖率路径覆盖率条件覆盖率翻转覆盖率状态机覆盖率功能覆盖率可分为:基于控制的功能覆盖率基于数据的功能覆盖率,前端设计流程-覆盖率,覆盖率的分类,验证阶段可以分为单元验证(UT)阶段、集成验证(IT)阶段和系统验证(ST)阶段。 单元验证阶段,关心的是模块功能和模块质量,此时出口条件为代码覆盖率。一般业内常用的出口条件是:
11、行覆盖率达到100,分支覆盖率达到100,条件覆盖率达到95,状态机覆盖率达到90,对没有覆盖的需给出合理的说明。 集成验证阶段,关心的系统的功能,以及模块与模块之间的接口,此时出口条件为功能覆盖率。一般业内常用的出口条件是:功能覆盖率达到90,对没有覆盖率的需给出合理的说明。,前端设计流程-覆盖率,覆盖率与验证阶段,功能覆盖率高、代码覆盖率低: 验证计划不充分,需要增加功能覆盖点。代码覆盖率高、功能覆盖率低: 设计没有实现指定的功能。,前端设计流程-覆盖率,验证充分性探讨,前端设计流程-覆盖率,前端设计流程,前端的基本设计流程,从输入需求到输出网表的过程。主要步骤为: RTL设计 验证 静态
12、时序分析 覆盖率 FPGA验证 ASIC综合时序分析和验证时出现的错误可能需要反复重做前面几步才能解决是一个迭代优化的过程。,工具:synplify 、xilinx的ISE/Vivado、altera的quartus,ISE,Synplify,synplify的综合效果(体现在时序、面积上)要比ISE和quartus好推荐采用synplify进行综合生成一个edf网表文件,然后在ISE或quartus中建立一个工程,将该edf文件作为一个底层文件添加到这个工程中,由ISE或quartus进行下一步的布局布线工作。,前端设计流程FPGA验证,验证主要针对了模块、系统的功能测试,而FPGA下载测试
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 芯片 设计 技术 ppt 课件

链接地址:https://www.31ppt.com/p-1437727.html