集成电路计算机辅助设计技术极大地推动了集成电路领域的发展,已经成为集成电路技术进步的一大推动力。相比于其他工程领域的计算机辅助设计,集成电路计算机辅助设计又有其特殊性,利用集成电路计算机辅助设计技术设计出来的集成电路(如中央处理器等芯片)又极大地促进了计算机性能的提升,为提供更好的计算机辅助设计技术提供了良好的硬件基础。因此,集成电路计算机辅助设计技术与集成电路设计形成了良好的相互促进的关系,互相推动技术进步。而其他工程设计领域,也因为计算机性能的提升而得到了很好的工具支持。
集成电路计算机辅助设计
将计算机辅助设计技术应用于集成电路设计领域,以匹配集成电路高速增长的复杂度和精度需求的技术。
- 英文名称
- integrated circuit computer aided design
- 所属学科
- 电子科学与技术
随着20世纪50年代计算机的发明,利用计算机进行辅助设计的技术也被逐步用于各类工程设计领域,这也极大地促进了许多工程设计的发展,特别是那些需要高复杂度或者高精度的设计领域。而集成电路设计就是一个以高复杂度和高精度为主要特点的工程设计领域。
早先的集成电路由于集成度不高,尺寸也较大,可以采用手工的方式进行设计。但是随着集成电路工艺的发展,集成电路的集成度按照摩尔定律预言的速度逐步增长,利用手工的方式来进行集成电路的设计已经难以实现,因此集成电路计算机辅助设计技术也被开发出来。
集成电路计算机辅助设计的发展从20世纪70年代开始至21世纪初期,可以分成4代:①20世纪70年代,最早出现的主要是版图设计工具,包括版图编辑和规则检查工具,这些工具适应了当时手工设计电路的发展。②20世纪80年代起,开始出现了仿真和自动布线计算机辅助设计系统,涵盖了从原理图输入、模拟和分析,到自动布局布线的过程,这个时候集成电路计算机辅助设计的整个流程基本建立起来。③20世纪90年代,研究者开发出较为完整的集成电路计算机辅助设计系统,包括定义硬件描述语言实现大规模集成电路标准化设计,这个阶段各种系统级的设计工具也被开发出来,使得仿真、综合、布局布线等流程高度自动化。④21世纪初期,集成电路计算机辅助设计的发展进入第4代,主要是以电子系统级设计自动化为特点。
集成电路设计是一个很复杂的过程,而集成电路计算机辅助设计在集成电路设计的整个流程中都提供了强有力的支持。以大规模数字集成电路设计为例,其各阶段的流程是:①功能定义。主要以标准化的硬件描述语言作为输入手段,计算机提供各种方便的编辑器,同时也有一些可以用来检查语法规则的工具帮助设计者减少设计错误。②综合。利用综合器对设计进行综合,即将硬件描述语言映射成具体的门级电路的过程。③仿真。利用仿真工具对寄存器传输级(register transfer level,RTL)进行仿真,以确保满足功能要求。④版图设计。利用综合工具得到的门级网表,就可以进行后续的版图实现,如利用数字电路布局布线工具可以完成数字集成电路的自动布局布线工作。⑤检查。由于集成电路制造工艺是高复杂度、高精度的技术,因此需要进行严密的检查来确保设计满足制造要求。在完成版图设计后,需要对版图进行一系列的检查,包括设计规则检查、电路规则检查、等价性检查(LVS),同时还需要进行参数提取来进行后仿真以确保电路的功能满足设计要求,进行时序检查来确保电路的性能满足需求,进行形式验证来检查最后的版图与设计输入在逻辑功能上是等价的。这一系列的步骤都有具体的计算机辅助设计工具来实现。
针对集成电路具体的工艺研发、器件设计,以及后续的制造、封装、测试等流程,计算机辅助设计技术也提供了很多种类的计算机辅助设计工具来辅助设计开发。