在这篇文章中,我们将讨论数字集成电路的设计过程,并将其分解为几个步骤。
什么是数字集成电路设计?
数字集成电路设计是一个程序化的过程,包括将规格和特性转换成数字块,然后再进一步转换成逻辑电路。与数字集成电路设计相关的许多限制来自铸造工艺和技术限制。
在数字集成电路设计的更高层次阶段,以及确保设计尽可能高效地满足规格要求的系统和流程的开发阶段,设计技能和独创性是关键。
图片由Takuya安.[CC通过数控2.0]
综合与验证:硬件描述语言和功能验证
在数字设计的早期阶段开发的带有行为描述的数字块需要被翻译成硬件描述语言(HDL),如Verilog或VHDL。这个阶段通常被称为注册传输级别(Register Transfer Level, RTL)阶段,它通常包括功能验证,以确保逻辑实现在高层满足规范。
(a)一个HDL代码的例子和(b)它所描述的电路
在这一步之后,硬件描述被转换成门级网络列表,在此期间,可以尝试各种实现和优化例程来更好地满足设计目标。这个阶段的重要考虑因素包括功率预算、速度、占地面积和可靠性。
物理IC布局:平面规划和IP核
综合验证后,将门级网表转换为物理布局,物理布局是集成电路的层和物理结构的几何表示。采用平面规划方法,确保整个集成电路的块和垫的放置符合设计目标。
由于一些数字块(如内存和寄存器)的结构化和重复性,部分数字IC布局通常使用脚本和自动化软件过程来完成。外部IP核也放置在这个阶段,只有必要的接口部分的IP是由软件显示。在所有的块和门都被放置好之后——如果有必要的话,还会使用手动路由——路由自动化脚本和软件来连接每个元素。
验证与模拟:Tapeout与Testing
然后进行验证和仿真,两者都必须考虑布局和布局的物理特征。如果成功,结果是一个输出文件,如GDSII (GDS2),铸造厂使用内部软件和过程来制造集成电路,磁带输出阶段。在某些情况下,铸造厂发现设计问题,然后需要由设计团队进行纠正/确认。
的芯片布局地点和路线之后。图片由Cadence设计系统提供。
在tape-out之后,一小批第一次运行或原型ic被生产出来,以便进行测试。这种测试可能导致重新设计或工艺更改,这取决于生产集成电路的性能和经济。
数字集成电路抽象等级
- 行为
- 寄存器传输级别(RTL)
- 功能
- 门
- 晶体管
- 物理布局
数字集成电路设计流程
- 以下列表概述了数字集成电路设计流程中的步骤,包括子步骤:
- 设计规范
- 规范
- 约束
- 试验台的开发
- 高级系统设计
- 设计分区
- Entry-Verilog行为建模
- 仿真/功能验证
- 集成和验证
- 逻辑合成
- 寄存器传输电平(RTL)转换为网络列表
- 将分区设计成物理块
- 时间边际和时间限制
- RTL和门级网络列表验证
- 静态时序分析
- 平面布置图
- 分层IC块放置
- 电源和时钟规划
- 合成
- 时间限制和优化
- 静态时序分析
- 更新位置
- 更新电源和时钟计划
- 块水平布局
- 完成方块的放置和路线
- 集成电路水平布局
- 集成所有的IC块
- 电池放置
- 扫描链/时钟树插入
- 细胞的路由
- 物理和电气设计规则检查(DRC)
- 布局与原理图(LVS)
- 寄生提取
- 布线后的时间验证
- GDSII创造
- Tape-out