关于芯片设计中后端的理解
1 芯片概述
做过电路板级设计的人都知道芯片的样子,如下图所示。这个是网上找的芯片的样子,这只是其中两种,左边的是直插的芯片,右边的是贴片的芯片。顾名思义直插就是芯片的管脚直接插在电路板上,贴片是将芯片的管脚贴在电路板上。无论是什么样的芯片,最终都会留出一定的管脚用于电路连接,而这些管脚都是封装后留给客户使用的。

这个是芯片最终交到客户的样子,也是市场上能见到的终样。如果像剥洋葱一样,从外往里看应该是下图所示。该图为示意图,最外层(绿色部分)就是上图中看到的管脚,绿色序号标示就是芯片封装后可见的管脚,第二层(天蓝色部分)则是芯片封装前的引脚,最里边(黑色框内部)才是真正的功能电路,最核心的部分。

上图可见,绿色部分的管脚和天蓝色部分的引脚并不是一一对应的,这是因为芯片的引脚有可能是仅用于内部(内部是指芯片研发公司)测试debug芯片所用,也有可能为了是芯片的某些功能不对相应客户开放,实现同一版芯片设计分为高中低端的芯片版本。在芯片研发量产前需要进行很多测试,在内部测试时会将天蓝色引脚全部封装出来,方便测试。关于封装是芯片研发的最后部分了,不在这篇笔记的记录范围内。
2 芯片设计的中后端
与芯片设计中后端密切相关的部分是天蓝色及其内部的部分。天蓝色框的大小决定了芯片裸die的边界即其大小,当然也决定了芯片最终的封装大小的下限。裸die边框往里就是芯片的pad,再往里就是芯片的核心逻辑部分,核心逻辑部分对应芯片的实际电路,包括数字和模拟部分,但不是所有芯片都包含了数字和模拟部分。
如果芯片包含数字和模拟部分,那么芯片最终的功能电路是由模拟和数字两部分拼在一起的。模拟需要版图工程师根据模拟设计工程师的意图完成最终的模拟电路的布局布线,而数字部分则有PR工程师完成数字部分的布局布线,整个芯片的top层既可以有版图工程师完成,也可以由PR的工程师完成。
在芯片设计的后端需要模拟和数字的配合,首先要固定模拟和数字的边界已经数模之间的接口,包括接口的数量和位置以及端口延时要求、信号速率、信号之间的耦合隔离等注意事项都需要明确;其次要明确芯片的边界,即芯片的大小;然后是数字和模拟的工程师在各自的区域上精耕细作,比如数字的后端工程师在数字区域会将CPU/MCU、memory(包括ram、rom、efuse等)的区域摆放好,然后把逻辑单元放上去,然后走一版初步的数据(在初版电路上把timing clean,然后出一版netlist和sdf文件)。在确定好芯片的大小和数模的边界后还需要数模合作多轮,因为在芯片后端的执行过程中可能会涉及到面积的调整。
验证人员会拿pr后的netlist和sdf进行后仿,如果发现问题还有可能需要修改设计,可能需要重新走一遍流程。如果是芯片带UPF,则更需要早点开始拿pg网表进行后仿,如果发现问题有时间分析和修改。如果还带DFT,那么更需要早一点开启中后端流程,因为DFT需要后仿。
所以整个项目的时间计划很重要,前端设计、DV验证、FGPA验证、中后端开启和整个流程的时间都需要合理计划安排。之前遇到一个项目,项目领导做模拟的,他本来做模拟也磨磨唧唧,走到哪黑就到那歇,也完全不懂数字流程,计划时给了FPGA验证一周,发现不够就往后延,把中后端的时间压缩到三周,芯片带了UPF也有DFT,中后端的人也不了解芯片,快要交数据给工艺厂的前几天加班加点赶,结果就是与power switch相关的cell的电源域连错了,芯片上不了电;芯片的pad没放,连打线都打不了。所以一定要有一个懂研发、知道工作量的人来根据能用的人力合理计划安排项目schedule。
还有一点注意事项:不要去赶工艺厂给的截止日期,有的工艺厂商收到数据后是要检查一遍的,如果不符合要求是会打回去的。如果赶在截止日期,打回去后就错过了该次流片节点;如果提前几天,遇到一些低级错误还有补救的机会。
可参考的链接有:
io cell和PAD的区别 - 后端讨论区 - EETOP 创芯网论坛 (原名:电子顶级开发网) -
3 转工艺注意事项
如果项目进行迭代的过程中需要转工艺,那么新工艺库的事情一定一定要提前准备好,不然快到流片时间节点中后端才报出来各种缺文件,这很可能会造成项目延期或者出现由于赶工期造成的质量问题。
如果对于没有经历过转工艺的项目负责人来说需要根据项目流程以及项目的功能和目标来准备项目的工艺文件。
首先在设计仿真阶段就需要standard cell,memory、I/O cell、模拟模块的.v文件。其中standard cell包括通用的cell,也包括门控时钟的cell,与UPF相关的cell;memory包括ram、rom、efuse、otp memory;I/O包括输入、输出、输入输出双向I/O。
在综合阶段需要对应的.lib文件和.db文件;在PR/STA阶段除了相应的.db文件还需要相应的signoff文件,这个signoff文件很关键,是由工艺厂商提供的,包括需要signoff的corner以及不同corner下sign off条件的设置。
这里如果要做DFT,那么在准备工艺库时还需要考虑dft的库文件.mdt文件。
转工艺过程中可能还有好些准备工作要做,如果第一次主导转工艺这事,建议将能包含项目需要的所有的库文件时就可以交给中后端(不需要项目设计已经完整,主要是跑中后端流程),把整个流程按标准跑一遍,这样既可以查漏补缺,也尽可能减少换工艺库耽搁的工期。
4 交互文件
SDF文件是其中的一种交互文件,用于传递PR之后更全面的延时信息。但除了SDF文件,还有较多的交互文件,其中经常会涉及到的是SPEF文件、LEF文件、DEF文件。SPEF文件是标准寄生格式,用于传递从版图中提取出俩的寄生RC信息,在STA中会用到该文件。LEF文件和DEF文件都是用于物理属性的文件,LEF文件是描述库文件,而DEF文件是描述具体设计的。关于上面提到的四种常听说或者长涉及到的文件可参考如下链接:
问下数模交互时的DEF、LEF、SPEF文件都有什么区别? - Layout讨论区 - EETOP 创芯网论坛 (原名:电子顶级开发网) - Powered by Discuz!
记录的并不完整,后续有时间再记录吧……
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)