芯片设计流程简述

1、需求分析

分析用户或市场的需求,并将其翻译成对芯片产品的技术要求;

2、算法/架构设计

  • 算法设计:设计和优化芯片中所使用的算法;这一阶段一般使用高级编程语言(如C、C++),利用算法级建模和仿真工具(如MATLAB)进行浮点和定点的仿真,进而对算法进行评估和优化;
  • 架构设计:根据设计的功能需求和算法分析的结果,设计芯片的架构,并对不同的方案进行比较,选择性能价格最优的方案。这一阶段可以用SystemC语言对芯片架构进行模拟和分析;

3、RTL设计

使用HDL语言(Verilog、VHDL)完成对设计实体的RTL级描述。

4、RTL验证(功能仿真/前仿)

使用仿真工具或者其他RTL代码分析工具,验证RTL代码的质量和性能;

5、综合

从RTL代码生成描述实际电路的门级网表文件;

6、门级验证(后仿)

对综合产生的门级网表进行验证,这一阶段通常会使用仿真、静态时序分析和形式验证等工具;

7、布局布线

后端对综合产生的门级网表进行布局规划(FloorPlanning)、布局(Placement)、布线(Routing),生成生产用的版图;

8、电路参数提取

确定芯片中互连线的寄生参数,从而获得门级的延时信息;用于更准确地后仿以及静态时序分析;

9、版图后验证

根据后端设计后取得的新的延时信息,再次验证设计能否可以实现所有的功能、是否达到所有的性能指标;

10、芯片生产

在特定的芯片工艺线上制造出芯片;

11、芯片测试

对制造好的芯片进行测试,检测生产中产生的缺陷和问题;