I、ASIC设计流程
一、确定项目需求
- 确定芯片的具体指标:
物理实现
制作工艺(代工厂及工艺尺寸);
裸片面积(DIE大小,DIE由功耗、成本、数字/模拟面积共同影响);
封装(封装越大,散热越好,成本越高)。
性能指标:
速度(时钟频率);
功耗。
功能指标:
功能描述
接口定义
-
系统级设计:
用系统建模语言(高级语言 如matlab,c等)对各个模块描述,为了对方案的可行性进行验证
二、前端流程
-
RTL 寄存器传输级设计
利用硬件描述语言,如verilog对电路以寄存器之间的传输为基础进行描述;
-
功能验证(动态验证):
对设计的功能进行仿真验证,需要激励驱动,是动态仿真。仿真验证工具Mentor公司的 Modelsim, Synopsys的VCS,还有Cadence的NC-Verilog均可以对RTL级的代码进行设计验证,该部分称为前仿真,接下来逻辑部分综合之后再一次进行的仿真可称为后仿真。
-
逻辑综合(Design Compile):
需要指定特定的综合库,添加约束文件;逻辑综合得到门级网表(Netlist)。
-
形式验证(静态验证):
功能上进行验证,综合后的网表进行验证。常用的就是等价性检查方法,以功能验证后的HDL设计为参考,对比综合后的网表功能,他们是否在功能上存在等价性。这样做是为了保证在逻辑综合过程中没有改变原先HDL描述的电路功能。做等价性检查用到Synopsys的Formality工具。
-
STA静态时序分析:
在时序上进行分析,用到Synopsys的PT(Prime Time)工具,一般用在后端设计中,由版图生成网表进行STA更准确一些; STA满足时序约束,得到最终的Netlist
-
DFT(design for test)可测性设计:
为了在芯片生产之后,测试芯片的良率,看制作有无缺陷,一般是在电路中插入扫描连(scan chain) DFT是在得到Netlist之后,布局布线(Place and Route)之前进行设计
三、后端流程
-
布局布线(Place and Route):
包括时钟树插入(布局时钟线),布局布线用到Synopsys的IC Compiler(ICC)工具。 在布线(普通信号线)之前先布局时钟线,即时钟树综合CTS(Clock Tree Synthesis),用到Synopsys的Physical Compiler工具。
-
寄生参数提取(Extrat RC):
提取延迟信息
-
静态时序分析(STA):
加入了布局布线延迟,更真实的时序分析
-
版图物理验证:
DRC(设计规则检查)、LVS(版图一致性检查) 工具:Mentor:Calibre Synopsys:Hercules Cadence:Diva/dracula
-
生成GDSII文件,Tap_off 流片
(注:整个IC设计流程都是一个迭代的过程,每一步如果不能满足要求,都要重复之前的过程,直至满足要求为止,才能进行下一步。)
标签:仿真,Synopsys,数字,验证,流程,时序,布线,设计,IC From: https://www.cnblogs.com/telepath-icer/p/17632202.html