热度 24
2017-7-17 16:54
2418 次阅读|
0 个评论
问题 :请描述一下你对芯片设计流程的理解? 答 :关于这道题可以从3方面对这个问题做解答。从芯片设计的几个阶段,阶段的工作内容是什么,以及对应阶段所涉及到的工具有哪些,可以从这3方面阐述芯片的设计流程。 系统级设计 芯片设计第一个阶段:系统级设计,主要以文档的形式呈现,根据需求做一个详细定义,IP选择,工艺的选择,甚至选择封装的形式。 前端设计 芯片设计第二个阶段是前端设计。前端设计包括代码设计、验证、前端实现三部分。 首先介绍第一部分代码设计,主要包括模块级设计和芯片集成设计;用到的工具包括代码编辑工具Vim,还有对代码做一些规则的check,check工具有Spyglass。 第二部分验证:包括模块级验证、系统级验证以及FPGA验证。模块级验证关注coverage,会用到UVM的方法级,用到的工具有VCS。系统级验证:关注系统集成的正确性,做一些C level级的验证,写C code 通过编译器编译成二进制代码加载到系统中。FPGA验证:主要涉及接口的兼容性验证,还有希望软件提前介入,做一些快速化的系统级验证,涉及到的工具有ISE,如果是MCU用到的工具有IDE。 第三部分前端实现包括R2N(RTL代码 to netlist),将用到的工具是DC/RC;还会做DFT,DFT的工作包括插入scan chain,以及产生一些测试用的pattern,用到的工具有Tmax。 后端设计 第三个阶段后端设计, 主要包括:N2G(netlist to GDS):包括floorplan、APR、CTS 等用到的工具有ICG、Encounter。 PV(physical verification): 做DRC、LVS、ATA(antenan)、dummy check。用到的工具主要是calibre。 RC提取:RC参数提取,主要目的是为了做Timing Signoff,用到的工具有StarRC。 Timing Signoff用到的工具主要是PT。 甚至是Power Signoff,用到的工具主要是Redhawk。 然后把最后生成的GDS文件送至Foundry。由代工厂生成相应的Mask版进行生产制造。这就是基本的设计流程。