从设计到流片丨芯片设计全流程及要用到的EDA工具

news/2024/11/29 7:58:08/

IC前端设计(逻辑设计)和后端设计(物理设计)的区分:以设计是否与工艺有关来区分二者;从设计程度上来讲,前端设计的结果就是得到了芯片的门级网表电路。


设计中使用的EDA工具如下:


1、架构的设计与验证

按照要求,对整体的设计划分模块。

架构模型的仿真可以使用Synopsys公司的CoCentric软件,它是基于System C的仿真工具。


2、HDL设计输入

设计输入方法有:HDL语言(Verilog或VHDL)输入、电路图输入、状态转移图输入。

使用的工具有:Active-HDL,而RTL分析检查工具有Synopsys的LEDA。


3、前仿真工具(功能仿真)

初步验证设计是否满足规格要求。

使用的工具有:Synopsys的VCS,Mentor的ModelSim,Cadence的Verilog-XL,Cadence的NC-Verilog。


4、逻辑综合

将HDL语言转换成门级网表Netlist。综合需要设定约束条件,就是你希望综合出来的电路在面积,时序等目标参数上达到的标准;逻辑综合需要指定基于的库,使用不同的综合库,在时序和面积上会有差异。逻辑综合之前的仿真为前仿真,之后的仿真为后仿真。

使用的工具有:Synopsys的Design Compiler,Cadence的 PKS,Synplicity的Synplify等。


5、静态时序分析工具(STA)

在时序上,检查电路的建立时间(Setuptime)和保持时间(Hold time)是否有违例(Violation)。

使用的工具有:Synopsys的Prime Time。


6、形式验证工具

在功能上,对综合后的网表进行验证。常用的就是等价性检查(Equivalence Check)方法,以功能验证后的HDL设计为参考,对比综合后的网表功能,他们是否在功能上存在等价性。这样做是为了保证在逻辑综合过程中没有改变原先HDL描述的电路功能。

使用的工具有:Synopsys的Formality


而后端相应的流程如下


1、数据准备


对于 CDN 的 Silicon Ensemble而言,后端设计所需的数据主要有是Foundry厂提供的标准单元、宏单元和I/O Pad的库文件,它包括物理库、时序库及网表库,分别以.lef、.tlf和.v的形式给出。前端的芯片设计经过综合后生成的门级网表,具有时序约束和时钟定义的脚本文件和由此产生的约束文件以及定义电源Pad的DEF(Design Exchange Format)文件。(对synopsys 的Astro 而言, 经过综合后生成的门级网表,时序约束文件 SDC 是一样的,Pad的定义文件–tdf , .tf 文件 --technology file,Foundry厂提供的标准单元、宏单元和I/O Pad的库文件 就与FRAM, CELL view, LM view形式给出(Milkway 参考库 and DB, LIB file)


2、布局规划


主要是标准单元、I/O Pad和宏单元的布局。I/OPad预先给出了位置,而宏单元则根据时序要求进行摆放,标准单元则是给出了一定的区域由工具自动摆放。布局规划后,芯片的大小,Core的面积,Row的形式、电源及地线的Ring和Strip都确定下来了。如果必要 在自动放置标准单元和宏单元之后, 你可以先做一次PNA(power network analysis)–IR drop and EM 。


3、Placement -自动放置标准单元


布局规划后,宏单元、I/O Pad的位置和放置标准单元的区域都已确定,这些信息SE(Silicon Ensemble)会通过DEF文件传递给PC(Physical Compiler),PC根据由综合给出的.DB文件获得网表和时序约束信息进行自动放置标准单元,同时进行时序检查和单元放置优化。如果你用的是PC +Astro,那你可用write_milkway, read_milkway 传递数据。


4、时钟树生成(CTS Clock tree synthesis)


芯片中的时钟网络要驱动电路中所有的时序单元,所以时钟源端门单元带载很多,其负载延时很大并且不平衡,需要插入缓冲器减小负载和平衡延时。时钟网络及其上的缓冲器构成了时钟树。一般要反复几次才可以做出一个比较理想的时钟树—Clock skew.


5、STA 静态时序分析和后仿真


时钟树插入后,每个单元的位置都确定下来了,工具可以提出Global Route形式的连线寄生参数,此时对延时参数的提取就比较准确了。

SE把.V和.SDF文件传递给PrimeTime做静态时序分析。确认没有时序违规后,将这来两个文件传递给前端人员做后仿真。

对Astro 而言,在detail routing 之后,用starRC XT 参数提取,生成的SPEF文件传递给PrimeTime做静态时序分析,那将会更准确。


6、ECO(Engineering Change Order)


针对静态时序分析和后仿真中出现的问题,对电路和单元布局进行小范围的改动。


7、Filler的插入(padfliier, cell filler)


Filler指的是标准单元库和I/O Pad库中定义的与逻辑无关的填充物,用来填充标准单元和标准单元之间,I/O Pad和I/O Pad之间的间隙,它主要是把扩散层连接起来,满足DRC规则和设计需要。


8、布线(Routing)


布线是指在满足工艺规则和布线层数限制、线宽、线间距限制和各线网可靠绝缘的电性能约束的条件下,根据电路的连接关系将各单元和I/O Pad用互连线连接起来,这些是在时序驱动(Timing driven ) 的条件下进行的,保证关键时序路径上的连线长度能够最小。


9、Dummy Metal的增加


Foundry厂都有对金属密度的规定,使其金属密度不要低于一定的值,以防在芯片制造过程中的刻蚀阶段对连线的金属层过度刻蚀从而降低电路的性能。加入Dummy Metal是为了增加金属的密度。


10、DRC和LVS


DRC是对芯片版图中的各层物理图形进行设计规则检查(spacing ,width),它也包括天线效应的检查,以确保芯片正常流片。LVS主要是将版图和电路网表进行比较,来保证流片出来的版图电路和实际需要的电路一致。

DRC和LVS的检查–EDA工具Synopsy hercules/ mentor calibre/ CDN Dracula进行的。Astro also include LVS/DRC check commands。


11、Tape out


在所有检查和验证都正确无误的情况下把最后的版图GDSⅡ文件传递给Foundry厂进行掩膜制造,也就是送去流片了。


http://www.ppmy.cn/news/455296.html

相关文章

流片的定义

​ 流片(Tape Out),是指像流水线一样通过一系列工艺步骤制造芯片,该词在集成电路设计领域,“流片”指的是“试生产”。 在集成电路设计领域,“流片”指的是“试生产”,就是说设计完电路以后&am…

国产USBhub3.0/目前已经在流片阶段

USB3.0 —— 也被认为是SuperSpeedUSB——为那些与PC或音频/高频设备相连接的各种设备提供了一个标准接口。只是个硬件设备,计算机内只有安装USB3.0相关的硬件设备后才可以使用USB3.0相关的功能!从键盘到高吞吐量磁盘驱动器,各种器件都能够采…

参与流片是一种怎样的体验

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴! 很多集成电路公司招聘都要求有流片经验&am…

芯片的设计流程和流片成本

每天都在用,但你知道芯片的设计流程和流片成本吗? 2017-05-10 06:10 来源:半导行业观察 芯片,是无数设计工程师们烧死很多脑细胞后产生的作品,完全可以称得上是当代的艺术品。无论是电工们,还是科技小白…

参与流片是一种怎样的体验?

很多集成电路公司招聘都要求有流片经验,因为流片成本高,一般人参与不到。 希望过来人能够分享经验,介绍一下流片的过程,以及应该注意的地方?或者有哪些有趣的故事? 来源:知乎 著作权归作者所…

芯片硅片与流片技术

芯片硅片与流片技术 芯片流片为什么这么贵? 多几次流片失败,可能就会把公司搞垮。 芯片行业对于流片都不陌生。 所谓流片,就是像流水线一样通过一系列工艺步骤制造芯片,该环节处于芯片设计和芯片量产的中间阶段,是芯片…

从设计到流片丨IC设计全流程及要用到的EDA工具

转载:从设计到流片丨芯片设计全流程及要用到的EDA工具 - 知乎 (zhihu.com) IC前端设计(逻辑设计)和后端设计(物理设计)的区分:以设计是否与工艺有关来区分二者;从设计程度上来讲,前…

ROG 魔霸新锐 2022 评测

屏幕方面,新款魔霸新锐配置 2.5K 分辨率屏,拥有 165Hz 高刷新率以及 3ms 响应时间,支持 Adaptive Sync 技术,可防止画面卡顿、撕裂,色域达到 100% DCI-P3。另外,魔霸新锐 2022 还推出了全新配色 —— 魔能绿…