分享

芯片设计流程(摘自《大话处理器:处理器基础知识读本》)

 自石湾泿花飞舞 2023-01-03 发布于河南

处理器流水线可以分为前端和后端,芯片设计也可以分为前端和后端。前端负责逻辑设计,输出门级网表(netlist),后端进行物理设计,输出版图(layout),下一步就是芯片制造了,这个过程俗称为流片(tapeout)。为什么叫tapeout,这里面也有故事,版图文件很大,以前都是用磁带(tape)存储,送到工厂去生产,所以叫tapeout,后来这个词一直被沿用到现在。芯片设计流程图如下:

如果有面试官问某某东西的设计流程,第一个步骤回答“系统设计”准不会出错,这简直是一个万能答案,因为任何设计都可以采用从上到下逐步细化的过程。系统设计完成设计的建模与仿真、模块划分等,确保设计思路正确,后面就是设计的具体实现过程。

8.2.3硬件描述语言——软硬不分

1.电子设计自动化

计算机辅助设计(Computer-aided Design,CAD)已经融入到各行各业中,制造一双鞋、一辆赛车、一幅广告等,都可以通过计算机来设计,而计算机本身的设计,无论是处理器、存储器电路,还是计算机结构、外观等,也都是在计算机上进行的,于是就出现了用计算机来辅助设计计算机的有趣现象。

EDA是电子设计自动化(Electronic Design Automation)的缩写,是电路领域的计算机辅助设计。设计者能在EDA软件平台上完成集成电路的全套设计,直至将设计交给工厂流片。Cadence 和Synopsys公司提供芯片设计各个阶段的EDA 工具,早期Synopsys的前端工具更有优势,Cadence的后端工具更有优势,现在它们的差距不大。

2.HDL基础

设计一个电路,可以用画电路图的方式实现,如下图:

几百、几千个元件的电路图可以手工画,可是一个芯片能包含几亿甚至几十亿个晶体管,靠画是不可能画出来的,好在人们开发了硬件描述语言(Hardware Description Language,HDL),使用编程的方式来开发集成电路。

业界主要有两种硬件描述语言:VHDL和Verilog,其中Verilog使用较多。硬件描述语言主要用于数字电路的建模,建模的层次可以从高到低,分成4个层级:

行为级描述电路的功能,RTL级描述电路的结构,门级描述门这一级电路的结构,电路级描述晶体管电路的结构。

行为级描述不关心电路的具体结构,只关注算法,主要用于建模和仿真,不能直接综合为具体电路。集成电路的设计,主要采用RTL级的建模。

前面已经知道,逻辑电路的基本结构如下图:

这种电路可以理解为信号在寄存器间传输,因此也称为寄存器传输级(Register TransferLevel,RTL)电路。这种电路可以使用Verilog 语言来实现,综合出具体的电路。

8.2.4逻辑综合

在软件开发中,C源代码需要使用编译器编译成处理器能识别的二进制码,在集成电

路开发中,Verilog源代码也需要被编译成具体的电路,只不过这里的编译被称为综合

(synthesis),如下图所示:

软件开发系统提供了库,硬件开发系统同样也提供了库,不需要设计人员什么都从零开始设计。

在软件开发中,编译器并不仅仅只做简单的翻译,它会对软件进行优化,在硬件开发中,综合器也是如此,它会对电路进行优化。编译器有编译选项让程序员在存储空间和速度上进行权衡,综合器也有设计约束让设计人员在电路面积和速度上进行权衡。

在软件编译中,函数内联将函数体复制到函数的调用处,增大了代码空间,减少了执行时间。在硬件综合时,综合器也会进行类似的操作。对于同一段电路,综合出的电路面积小,通常速度慢,综合出的电路面积大,通常速度快,如下图所示:

HDL代码综合出来的文件被称为门级网表(netlist),它描述了电路的门级结构,门级电路以与门、非门等为基础。

8.2.5 硬件描述语言与软件描述语言的差别

1.指令与电路

软件描述语言描述的是处理器指令,硬件描述语言描述的是硬件电路。同样是z=x y这条语句,在软件描述语言中编译出来是指令,在硬件描述语言中综合出来是电路。

在软件中,如果修改x的值,只要不调用这条语句,z的值是不会被修改的。而在硬件电路中,当x被修改时,z也立即跟着改变,这就是软件描述语言和硬件描述语言最典型的区别。

2.数据通道和控制通道处理器内核可分为数据通道和控制通道,数据通道是指令的计算部分(ALU模块),控制通道控制指令的计算(取指、译码等模块)。

在软件描述语言中,程序员只需要关心数据通道,即输入是什么、进行什么运算、输出是什么。在硬件描述语言中。设计后 &猫道。诉更关心控制通道,也即控制指令的执行。

3.串行与并行

同样是两条语句:

假设处理器中只有一个加法器,如果是软件描述语言,这两条语句依次使用处理器的一个加法器执行,而如果是硬件描述语言,则直接生成两个加法器,并行处理。

4.时序

在软件描述语言中,程序员只需要关心指令的先后顺序,先完成什么、后完成什么,不需要关心处理器硬件电路的执行细节,而在硬件描述语言中,设计人员需要知道电路在每个时钟的执行状态。

8.2.6物理设计

物理设计也即后端设计,它将前端设计产生的门级网表通过EDA工具进行布局布线和物理验证,并最终产生供制造用的GDSIⅡ数据文件。网表(netist)描述了集成电路的逻辑结构,GDSIⅡ文件描述了集成电路的物理结构。

物理设计可以分成3个大的步骤:Floorplanning(布图规划)、Placement(布局)、Routing(布线),其中Floorplanning和Placement通常没有太严格的分开。设计房子,首先划定一个长方形面积,然后规划房子的布局,哪里是卧室、哪里是厨房、哪里是车库等,而且各个房间的摆放位置是可以变化的,在总面积不变的条件下,会有多种布局方式。Floorplan字面意思是建筑计的平面图,也就是从上面鸟瞰到的建筑结构图。集成电路物理设计是在一块芯片上完成电路的布局,它和房子布局一样,Floorplanning计算出最佳的布局方式,它和Placement一起完成电路模块的布局,Routing就是布线,好比布置建筑物中的电线、网线等。

物理设计的输出是版图文件,以GDS ⅡⅡ(Graphical Design System)格式存储。和国家的地理版图一样,半导体芯片版图描述了电路的拓扑结构和元件的特征,它是交给芯片制造厂作为指导生产电路的图案。集成电路的基本元件和连线都是在硅片上一层一层的蚀刻出来,版图描述了电路结构,也就描述了哪些地方该腐蚀,哪些地方该保留。

8.3芯片制造——点沙成金

8.3.1探索微观世界

看到制造,人们就会想起苹果和富士康,富士康代工苹果的iphone,利润都被苹果拿走了,富士康只获得非常少的一部分辛苦费。通常人们理解制造技术含量低,价值低。不过,精密制造却是相当有技术含量的,并且价值很高,美国、日本在这些方面都非常有实力,与其说中国是个制造大国,还不如说中国是个加工大国。

芯片制造的工艺相当精密,已经和分子相差不远,相当有技术含量,而且投资巨大,烧得起钱玩这个的公司并不多。不少传统半导体公司也都逐步地转向轻晶圆策略,寻求和代工厂合作,自己只设计芯片,芯片制造外包给代工厂,世界上最大的芯片制造代工厂是台积电(台湾积体电路制造股份有限公司,台湾将集成电路称为积体电路)。芯片制造的工艺到底有多么精细呢?下图做出了一个比较:

芯片制造采用的主要原材料是硅,硅是继氧之后地壳上第二丰富的化学物质。硅和氧组成了地球上最不值钱的沙子(SiO2)。芯片所使用的硅就是从这些沙子中提炼出来的,所以说,半导体行业真可谓是点沙成金的行业。半导体制造公司,使用半导体材料和半导体生产设备,将芯片设计公司设计出来的电路转换为芯片,如下图所示:

在芯片设计领域,美国占据优势,Intel、IBM、TI、高通、苹果、思科等公司,莫不精通于芯片设计。在芯片制造领域,Intel、三星、台积电分别在处理器、存储器、代工领域处于领先,IBM的芯片制造技术也比较先进,经常将技术转让给其他的代工厂。

资源匮乏的日本非常注重半导体工业,早在20世纪70年代日本就开始大规模布局半导体领域,虽说现在日本的芯片设计与制造有所衰退,不过日本还是占据了全球37%的半导体生产设备,以及66%的半导体材料供应。

8.3.2芯片制造流程

芯片制造成本非常之高,每一步都需要相当精密的工具,在相当严苛的环境下施行,下面是芯片制造的基本流程。芯片制造过程可以被分为前端和后端,前端负责晶圆(wafer)的处理,包括晶圆的加工(wafer fabrication)与测试(wafer test),后端负责芯片的加工,包括晶圆切割成晶片(die)、芯片封装与测试,Intel大连工厂负责前端,Intel成都工厂负责后端,它们生产65nm 工艺的芯片组。前端工厂也叫晶圆厂(fab),后端工厂也叫封装测试厂(assembly and test)。

1.晶圆

厨师炒菜,总是一次炒多人份的,芯片制造也一样,也是一次制造多块芯片,晶圆是芯片电路的载体,一块晶圆可以做出多片芯片。之所以称它为晶圆,是因为它是一个硅晶体,并且是一个圆盘。

常见的晶圆直径大小为300mm、200mm、150mm,现在也开始出现更大的晶圆,晶圆越大,一块晶圆上能做出的芯片就越多。Intel大连晶圆厂所使用的晶圆为300mm,也就比一本书稍大一点,通常能够生产出几百片芯片。

晶圆来源于沙子,沙子的主要成分是二氧化硅(SiO2),晶圆所使用的单晶硅要求纯度非常之高,通常要达到99.9999%。通过复杂的化学、物理方法,得到可用于半导体制造质量的硅锭(silicon ingot),硅锭经切割得到晶圆。

晶圆非常薄,至少比黄瓜面膜薄多了,300mm晶圆的厚度大概为0.775mm左右,不同尺寸的晶圆,厚度也不一样。晶圆厂自身不生产晶圆,大部分晶圆材料来自于日本,2011年3月日本一个小地方的地震,就波及全球25%的晶圆供应。

2.洁净室——纵使无一物,还是有尘埃

禅宗大师慧能兄弟曾写过一首名诗:“菩提本无树,明镜亦非台,本来无一物,何处惹尘埃”。这句话如果用来形容人的心境,意境是相当的高,不过大自然却没有这个觉悟。空气中漂浮着大量的悬浮物,如灰尘、杂质等,虽然人们看不见,但是它们确实存在着。所以我们可以用这样一句话来描述自己生活的空间:“纵使无一物,还是有尘埃”。在芯片制造过程中,空气纯度要求非常高,如果有粒子附在芯片上,就有可能导致芯片出现瑕疵,从而不能使用,芯片的制造过程需要在洁净室(clean room)中进行。

洁净室最早来源于医院的手术室,为了防止病人伤口感染,因此对房间的空气做了净化。百分之百的洁净是很难达到的,美国联邦标准209B将洁净室分成6个等级,CLASS1、CLASS 10、CLASS 100、CLASS 1000、CLASS 10K和CLASS 100K,CLASS 10是指每立方英尺内大于等于0.5μ之微尘不超过10个,大于等于5μ之微尘数为0,半导体工厂的洁净室,比医院的手术室还要干净1000倍(引自Intel宣传片)。

3.晶圆加工(wafer fabrication)

Fabrication为装配、制造之意,Fab是它的缩写,通常也用Fab来代指晶圆厂,Fabless表示没有晶圆厂的半导体设计公司,如Xilinx、高通等。

人类文明是从“刻”开始的,在远古时代,文字被刻在龟壳、石头上,后人由此而得知远古发生的事情,现在,人们将集成电路刻在硅片上,只是这个刻用手工是不可能完成的,用机械刻也达不到精度要求,只能用光刻。

集成电路版图首先被印在掩膜上,经过复杂的光刻、掺杂、腐蚀等步骤,在晶圆上形成晶体管,再注入铜粒子,形成导线,这样集成电路就完成了。晶圆上的集成电路也是一层一层的,就像建筑物一样,如下图所示:

由手晶圆加工会用到很多具有腐蚀性的化学材料,因此污染控制也非常重要。

4.品圆测试(wafer testing)

一个晶圆会包含很多个方形的晶片,也叫晶粒(die),每个晶片包含独立的集成电路,它将被封装后成为独立的芯片。晶圆加工后,可能会在某些地方出现取疵,导致晶片损坏,因此晶圆在出厂前要先经过测试,检测出好die和坏die。

在上图的晶圆上,有38个晶片,其中由于一些间题,出现了一块缺陷,有4块晶片是无效的,晶片的成品率为34/38=89%。

5,晶片切割——我切,我切,我切切

加工后的晶圆会被送到后端的封装测试厂进行后期处理,后端将晶圆进行切片,得到晶片。

6.封装——好马配好鞍

硅片非常小,且软,也很容易坏,需要把它固定、封好,封装可以防止芯片受到物理损坏,也能将芯片产生的热量扩散到封装更大的面积上以便冷却。封装的另一个作用就是引出管脚,芯片外围的金属I/O引脚非常小,将它引出到封装上较大的引脚,以便于芯片间的连接,这样就得到可以使用的芯片了。

早期很多多核处理器,就是将多个处理器晶片封装在一个芯片内,后面的多核处理器,基本上都是一个处理器晶片包含多个处理器内核。如下图:

7. Logo

芯片制作的最后一步是打logo。打logo绝对是所有步骤中最重要的一步,如果把Intel的芯片打上了AMD的logo,那intel要气死。这样说可不是空穴来风,因为一个中国人就曾经做过这样的事,这就是大名鼎鼎的“汉芯”事件。出皮是Photoshop的专业技术,用来光滑人脸。技术都是相通的,磨皮也能用在芯片外观上,这个中国人买丁儿块Freescale的DSP芯片,请人将芯片上的logo磨皮,然后打上自已的logo,这样代表“世界先进水平”的国产DSP芯片就诞生了。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多