【转】IC设计流程
今天彻底无语了,一个学弟问我,从Schematic到GDSⅡ的流程是什么,我竟然答之,仿真、综合、布局布线……事后,觉得不太对,查了一下资料,那里是不太对啊,简直是一点都不对,暴寒啊,也许是自己真是好久没做IC方面的东西了。
一般的IC设计流程可以分为两大类:全定制和半定制,这里我换一种方式来说明。
1.1 从RTL到GDSⅡ的设计流程:
这个可以理解成半定制的设计流程,一般用来设计数字电路。
整个流程如下(左侧为流程,右侧为用到的相应EDA工具):
一个完整的半定制设计流程应该是:RTL代码输入、功能仿真、逻辑综合、形式验证、时序/功耗/噪声分析,布局布线(物理综合)、版图验证。
至于FPGA设计,开发起来更加简单,结合第三方软件(像Modelsim和Synplify Pro),两大FPGA厂商Altera和Xilinx自带的QuartusⅡ和ISE开发平台完全可以应付与之有关的开发。
整个完整的流程可以分为前端和后端两部分,前端的流程图如下:
前端的主要任务是将HDL语言描述的电路进行仿真验证、综合和时序分析,最后转换成基于工艺库的门级网表。
后端的流程图如下,这也就是从netlist到GDSⅡ的设计流程:
后端的主要任务是:
(1)将netlist实现成版图(自动布局布线APR)
(2)证明所实现的版图满足时序要求、符合设计规则(DRC)、layout与netlist一致(LVS)。
(3)提取版图的延时信息(RC Extract),供前端做post-layout 仿真。
1.2从Schematic到GDSⅡ的设计流程:
这个可以理解成全定制的设计流程,一般用于设计模拟电路和数模混合电路。
整个流程如下(左侧为流程,右侧为用到的相应EDA工具):
一个完整的全定制设计流程应该是:电路图输入、电路仿真、版图设计、版图验证(DRC和LVS)、寄生参数提取、后仿真、流片。