转载:从设计到流片丨芯片设计全流程及要用到的EDA工具 - 知乎 (zhihu.com)
IC前端设计(逻辑设计)与后端设计(物理设计)的区别:区分设计是否与工艺有关;在设计方面,前端设计的结果是获得芯片的门级网表电路。
在设计中使用EDA工具如下:
整体设计按要求划分模块。
可以使用架构模型的仿真Synopsys公司的CoCentric它是基于软件的System C模拟工具。
设计输入方法有:HDL语言(Verilog或VHDL)输入、电路图输入、状态转移图输入。
使用的工具有:Active-HDL,而RTL有分析检查工具Synopsys的LEDA。
初步验证设计是否符合规格要求。
使用的工具有:Synopsys的VCS,Mentor的ModelSim,Cadence的Verilog-XL,Cadence的NC-Verilog。
将HDL将语言转换成门级网表Netlist。综合需要设置约束条件,即您希望综合电路在面积、时间顺序等目标参数上达到的标准;逻辑综合需要指定基于的数据库。使用不同的综合数据库会有不同的顺序和面积。逻辑综合前的模拟是前模拟,后的模拟是后模拟。
使用的工具有:Synopsys的Design Compiler,Cadence的 PKS,Synplicity的Synplify等。
检查电路的建立时间(Setuptime)和保持时间(Hold time)是否有违例(Violation)。
使用的工具有:Synopsys的Prime Time。
在功能上,验证综合网表。常用的是等价检查(Equivalence Check)该方法采用功能验证后的方法HDL设计作为参考,比较综合网表功能,其功能是否等价。这是为了确保在逻辑综合过程中不会改变原来的HDL描述的电路功能。
使用的工具有:Synopsys的Formality
对于 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)
主要是标准单元,I/O Pad和宏单元布局。I/OPad提前给出位置,宏单元按时间顺序放置,标准单元由工具自动放置。布局规划后,芯片的大小,Core的面积,Row电源和地线的形式Ring和Strip都确定了。如果必要 标准单元和宏单元自动放置后, 你可以先做一次PNA(power network analysis)–IR drop and EM 。
布局规划后,宏单元、I/O Pad标准单元的位置和位置已经确定,这些信息SE(Silicon Ensemble)会通过DEF文件传递给PC(Physical Compiler),PC综合给出.DB获取网表和时序约束信息,自动放置标准单元,同时检查时序,优化单元放置。假如你用的是PC Astro,那你可用write_milkway, read_milkway 传递数据。
芯片中的时钟网络驱动电路中的所有时间单元,因此时钟源端门单元携带大量的负载延迟和不平衡,需要插入缓冲器来减少负载和平衡延迟。时钟网络及其缓冲器构成了时钟树。一般来说,做一个理想的时钟树需要重复几次—Clock skew。
插入时钟树后,确定了每个单元的位置,可以提出工具Global Route形式的连线寄生参数,此时对延时参数的提取就比较准确了。SE把.V和.SDF文件传递给PrimeTime静态时序分析。在确认没有时规后,将这两份文件传递给前端人员进行模拟。对Astro 而言,在detail routing 之后,用starRC XT 提取、生成参数SPEF文件传递给PrimeTime静态时序分析会更准确。
针对静态时序分析和后模拟中的问题,对电路和单元布局进行了小范围的改变。
Filler指标准单元库和I/O Pad库中定义的与逻辑无关的填充物用于填充标准单元和标准单元之间,I/O Pad和I/O Pad它们之间的间隙主要是连接扩散层以满足需求DRC规则和设计需要。
布线是指根据电路的连接关系,在满足工艺规则和布线层数限制、线宽、线间距限制和各线网可靠绝缘的电气性能限制的情况下I/O Pad在时序驱动中连接到互连线(Timing driven ) 在这种情况下,确保关键时间路径上的连接长度最小。
Foundry工厂对金属密度有规定,使其金属密度不低于一定值,防止芯片制造过程中连接金属层过度蚀刻,降低电路性能。Dummy Metal增加金属密度。
DRC检查芯片版图中各层物理图形的设计规则(spacing ,width),还包括检查天线效应,以确保芯片正常流动。LVS将版图与电路网表进行比较,确保流片出来的版图电路与实际电路一致。DRC和LVS的检查–EDA工具Synopsy hercules/ mentor calibre/ CDN Dracula进行的。Astro also include LVS/DRC check commands。
在所有检查和验证正确的情况下,将最终版图放在正确的情况下GDSⅡ文件传递给Foundry工厂制作掩膜,即送流片。