集成电路设计和制造的展望
1.芯片的设计
1)引言
芯片的产生流程可以分为设计与制造(包括封装测试)两个环节。我们先介绍芯片是如何被设计出来的,芯片的制造、封装、测试放在下一节来讲。芯片的设计过程可以分为两个环节:前端设计和后端设计,或者说逻辑设计和物理设计。
2)前端设计
(1)概述
芯片的前端设计主要分为以下几个步骤:
① 制定芯片规格;
② 芯片架构设计;
③ 逻辑设计;
④ 仿真验证;
⑤ 逻辑综合;
⑥ 静态时序分析;
⑦ 形式验证;
⑧ 可测性设计。
在时序分析时,找到设计上存在的功能错误或时序不满足的问题,仍需要反复重做前面的设计步骤才能解决,因此芯片的前端设计是一个迭代优化的过程。
(2)制定芯片规格
芯片规格(Specification)的制定优先于芯片设计,这个阶段可能是整个设计流程中最重要的环节,因为规格将直接决定该芯片是否能取得预期的市场(窗口)份额,它也是设计者知识产权(形成IP)的集中体现。
通常,芯片设计公司要走访潜在客户来进行市场调研,搞清楚客户对芯片的真实需求。另一方面,还要请(市场和技术)专家来对未来的趋势进行判断。芯片设计周期通常在6个月到2年,所以判断市场趋势相当重要。市场调研的结果将转化成高层次的产品规格(行业标准和接口协议),包括想用此芯片完成什么顶层的功能、芯片中要实现什么样的处理算法、将来交付给客户的芯片运行在多高的频率、芯片的封装格式(例如BGA或CSP)等。此外,还需要考虑芯片的供电、接口协议、工作温度等特性。
此阶段工作的输出结果是“芯片规格说明书”,它包括为芯片设计打基础而制定的详细而正确的芯片规格,其中的技术规格部分还需要根据技术要求逐步地提炼和细化。
(3)芯片架构设计
芯片规格确定之后,芯片设计通常需要将整个芯片功能映射到芯片的架构中,如果采用软硬件协同设计,就要为软件设计选定相关的体系结构和相应的IP,同时将硬件部分划分为多个模块。一个好的架构设计在取得高性能的同时,应该尽量减少使用的硬件资源以降低成本。在这个阶段,架构设计师将定义不同模块之间的关系,并为每个模块分配开发时间预算,最后形成架构设计文档。以海思的麒麟990 5G芯片为例,从设计规范(5G标准)出发,芯片的架构被映射为中央处理器(CPU)、图形处理器(GPU)、存储系统(Memory)、图像处理器(ISP)、调制解调器(Modem)、神经网络处理单元等模块。芯片架构设计师进行软、硬件功能划分,即指定哪些功能以软件编程为主、硬件加速单元为辅;哪些功能适合单纯用逻辑(含组合与时序)实现;哪些功能可以编程查表和存算一体;哪些运算适合CPU,哪些运算适合DSP;以及片上的数据交换是用总线,还是直接数据通道。所以算法映射到架构对于提高芯片的性价比和争取“市场窗口期”来说都非常重要。
(4)逻辑设计
模块实现的功能定义之后,就要考虑如何描述这些逻辑功能及模块之间的交互,用到“硬件描述语言(HDL)”,当前主流的用于可综合逻辑设计的 HDL 语言仍然是VHDL及Verilog HDL。逻辑设计要将给定的硬件电路功能通过HDL语言描述出来,进而形成RTL(寄存器传输级)代码。
下面是使用Verilog HDL语言编写的、实现“二选一”逻辑功能的例子(图1),即由S信号决定输出信号Y与D0、D1中的哪一个信号相连接。
完成RTL代码设计后,可以利用lint,Spyglass等工具对代码进行设计规则检查,包括代码的编写风格、命名规则和电路综合相关规则等。
随着芯片复杂度的提高,使用高级编程语言(如C/C++)来替代传统的RTL级编码也提上了日程。当前,主流的EDA厂商都推出了自己的高层次综合(HLS)工具,比如Mentor(现为Simens EDA)的Catapult、Cadence的Stratus及Synopsys的Symphony C等。HLS允许芯片设计人员使用C/C++在高层次描述芯片的逻辑设计,这大大降低了芯片逻辑设计的难度。其次,基于HLS的设计流程可以自动完成C/C++语言与转换后的RTL语言的功能仿真验证,也缩短了验证周期。
图1 使用Verilog HDL语言编写的、实现“二选一”逻辑功能的例子
(5)仿真验证
设计规则检查只对代码本身进行检查,而逻辑设计得到的RTL代码是否真正实现了设计目的,需要对代码进行仿真验证,检查该模块是否符合设计规格。如前所述,逻辑设计和仿真验证是一个迭代优化的过程,直到仿真验证的结果验证了当前的逻辑设计完全符合规格为止。仿真验证可用的软件工具有Mentor的Modelsim、Synopsys的VCS,还有Cadence的NC-Verilog等。
通常,先要对逻辑设计进行RTL行为级仿真(也称前仿真、功能仿真)。顾名思义,前仿真用来检查代码中的语法错误和验证代码行为的正确性,但不包括延时信息。
还是以之前的二选一设计为例,仿真软件得到的各个信号的波形如图2所示。从波形输出来看,当信号S为1时,输出的信号Y与输入的信号D0相同,反之亦然,说明该逻辑设计的功能是正确的。
图2 仿真软件得到的各个信号的波形
另外,对大型的芯片系统进行仿真验证时,一般需要用到通用验证方法学(Universal Verification Methodology,UVM)。UVM是一个以SystemVerilog类库为主体的验证平台开发框架,验证工程师可以利用其可重用组件构建具有标准化层次结构和接口的功能验证环境。UVM指导验证工程从DUT的功能规范(Specification)出发,制定验证计划,分解测试点,创建测试用例,定义验收(Signoff)方式和标准,流程自动化和报告自动化,等等。
(6)逻辑综合
RTL行为级仿真验证通过后即可进行逻辑综合,目的是将RTL代码翻译成门级网表(netlist),可以使用的工具软件包括Synopsys公司的Design Compiler(DC)等。
逻辑综合的输入除了RTL代码之外,用户还需要输入约束条件(时间、功耗和面积)。优化运算的目标是得到一个给定约束条件下的最佳的解决方案(如优化的门级网表)。还需要对综合生成的门级网表进行后仿真(包括门级仿真和时序仿真)。门级仿真对未加入时延信息的门级网表进行仿真验证,检验综合后的功能是否满足规格要求。时序仿真在门级仿真的基础上加入时延文件(.sdf),从而在仿真中考虑电路的路径延迟与门延迟的影响,验证电路在一定时序条件下能否满足设计规格要求。
(7)静态时序分析(Static Timing Analysis,STA)
STA基于给定的时序模型,分析逻辑设计是否违反设计者提供的时序约束,例如设计中各条路径是否存在毛刺、延迟路径和时钟偏移等问题。
与不同输入激励向量的传统分析方法相比,静态时序分析提取整个电路的所有时序路径,通过计算信号沿所在传播路径上的延迟,找出违背时序约束的错误。静态时序分析不依赖激励,但要穷尽所有路径,运行速度快,但占用内存很少。静态时序分析可用的工具软件包括Synopsys公司的PrimeTime等。
(8)形式验证
形式验证(Formal Verification)是从功能上(前面提到的静态时序分析是从时序上)对综合后的网表进行验证。
对功能进行验证可能的一种方法是随机验证,即增加随机产生的大量输入向量作为激励,比较输出与预期结果在功能上是否符合规格要求。该方法即使大量增加输入向量,付出极多测试时间的代价,也很难达到 100%的覆盖率。当然,采用形式验证在理论上可以达到100%的覆盖率。
形式验证是想通过使用形式证明的方式来验证一个设计的功能是否正确。形式验证基本分为三大类:等价性检查(Equivalence Checking)、模型检查(Model Checking)和定理证明(Theory Prover)。等价性检查用于验证寄存器传输级与门级网表之间、门级网表与门级网表之间是否一致。模型检查用于检查时态逻辑描述规范,通过有效的搜索来检查给定的系统是否满足规范。定理证明把系统与规范都表示成数学逻辑公式,并从公理出发寻求描述。尽管不限制定理证明验证的电路模型,但需要用户的人工干预和较多的背景知识。形式验证可以使用的工具软件有Synopsys的Formality等。
(9)可测性设计(Design For Testing,DFT)
DFT是一种集成电路设计技术。它将一种测试电路在设计阶段植入电路,以便流片后进行测试,确保测试过的电子组件没有功能或制造上的缺陷。
由于电路的许多内部节点信号在外部难以控制和观测,所以设计测试电路并不容易。通过在半导体工艺中添加可测性电路结构,如扫描链、内建自测试(Built-in Self-Test,BIST)等,并利用自动测试设备执行测试程序,可以在生产完成后立即进行质量检测。由于集成电路“封装”的成本比“芯”贵得多,所以只有测试合格的“芯”,才被封装成为“芯片”。
3)后端设计
前端设计流程完成后得到的是门级网表,后端设计将其作为输入,使用各种EDA设计工具进行布局布线、物理验证等处理,最终输出的是芯片制造所用的GDSII数据。GDSII是一种二进制文件格式,其中含有集成电路版图中的平面的几何形状、文本或标签,以及其他有关信息(含层次结构信息),因此 GDSII 数据可用于重建所有或部分的芯片版图信息。
前端设计注重于逻辑功能,而后端设计注重于物理实现。前端设计虽然认识到了逻辑延迟和速度,但在RTL编码和验证的大部分工作中却忽略了这一点。而后端设计从一开始就需要考虑真正的器件延迟。
后端设计流程可以进一步细分为布局规划(Floor Plan)、放置(Placement)、时钟树综合(Clock Tree Synthesis)、布线(Route)、物理和时序验证(Physical and Timing Verification)
(1)布局规划
布局规划是数字后端设计实现中最关键的步骤之一,它的仼务是摆放芯片中各个模块。这一步将整个芯片的裸片区域(Die Area)划分(Partition)成分区来放置不同的模块。分区的形状、大小与模块需要的面积、数据和控制信号的传输等相关。芯片的管脚也会被指定到一个最初的位置,后续再根据布局布线的结果做进一步细化。如果摆放不好,一方面是时序可能满足不了需求,出现时序违例(Timing Violations),另一方面也可能会影响芯片面积,增加成本。
(2)放置
设计的放置阶段将安排摆放设计中的所有标准单元(Standard Cell)。摆放的原则是既要减少走线长度,又要保证时序收敛。
(3)时钟树综合
在芯片中的时钟作为同步节拍来协调各种功能模块的正常工作。时钟树综合指从某个时钟的源点到各个终点的时钟缓冲器/反相器(Clock Buffer/Inverter)所形成的树状结构。同一时钟源到达各个同步单元的最大时间差被称作时钟(相位)偏移。可以使用工具软件来优化时钟树,从而降低时钟(相位)偏移。
时钟是设计中翻转频率最高的信号,所以时钟树的功耗在整个芯片动态功耗中占比很大。通常还在架构设计上增加时钟门控(Clock Gating),用于当模块处于空闲状态时,及时地关闭相应的时钟,从而降低动态功耗。
(4)布线
布线完成模块、节点的互连。由于芯片规模越来越大,通常会先使用诸如Synopsys的IC Compiler等EDA工具进行自动布线,之后再进行人工优化和修正。还可以在局部区域进行有人工干预的自动布线,甚至由有经验的工程师进行人工布线。
(5)物理和时序验证
前端设计中的验证主要是逻辑验证,目的是保证功能正确。后端设计中的物理验证则用来保证布局正确。物理验证包括 DRC(设计规则检查)、LVS(布局与原理图)、电规则检查(ERC)、模式匹配(PM)违规、短路、开路、浮空(Floating Net)等。这些验证要与布局、布线流程并行进行,以免在流片初始发生意外。
DRC 工具检查将按芯片代工厂(Foundary)提供的规则文件检查当前设计的GDSII是否符合工艺生产需求,比如基层(Base Layer)的检查、金属层(Metal)之间的空间检查等。LVS(Layout VS Schematic)检查主要检查自动布局布线后的布局(物理层面)是否与电路图(逻辑层面)是一致的。ERC检查主要检查版图的电性能,比如衬底是否正确连接电源或地、有无栅极悬空等。该步骤中常用的工具软件包括Mentor Graphics的Calibre等。
(6)定案下单(Signoff)
从字面理解,Signoff是负责人签字,即将设计数据交给芯片制造厂商生产之前,对设计数据进行复检,确认设计数据达到交付标准,这些检查和确认统称为Signoff。Signoff之后就可以正式进入流片(Tapeout)环节。
2.芯片的制造
1)引言
完成芯片的前端、后端设计并得到GDSII设计文件后,就可以进入芯片制造环节了。芯片制造涉及的厂商不仅包括芯片代工厂(晶圆加工厂),还包括为芯片制造提供原料的硅片制造厂商,以及裸片(Die)制造完成后需要的封装、测试厂商。
下面将对硅片制造、晶圆加工、封装、测试等流程分别做介绍。
2)硅片制造
芯片的原料是硅片,也叫晶圆。硅片是半导体材料,目前90%以上的芯片和传感器都是用半导体单晶硅片制造成的。
硅片由高纯度的单晶硅制成。随着单晶硅制造技术的提升,目前占据主流市场的是12英寸硅片。硅片尺寸越大,能切割得到的合格的芯片就越多,即芯片的成本就更低。但大尺寸硅片对制造设备和工艺的要求也会较高。
硅片制造分成三大步骤:提纯、生长和成型。
① 提纯
评价硅的主要指标是纯度,芯片级高纯硅要求的纯度为99.999999999%(11个9),这么高的纯度要分阶段提纯。首先是冶金级纯化,加碳产生还原反应可将氧化硅转换成98%以上纯度的硅。再用三氯氢硅法,加热含碳的硅石直至生成气态的二氧化硅(SiO2),再用纯度约98%的二氧化硅,通过压碎和化学反应生产含硅的三氯氢硅气体(SiHCl3),最后用氢气作为还原剂,从三氯氢硅中还原出高纯度硅。
② 生长
提纯后的硅虽然纯度很高,但排列混乱,会影响电子运动,只能叫多晶硅。想得到硅原子排列整齐的单晶硅,则需要进行长晶处理。即将多晶硅融化形成的液态硅,用单晶的硅种(seed)和液体表面接触,一边旋转一边缓慢地向上拉起(拉单晶),等到离开液面的硅原子凝固后,就得到了排列整齐的单晶硅。
③ 成型
单晶硅棒经过切段、滚磨、切片、倒角、抛光、激光刻后,就成为晶圆加工厂使用的基本原料——硅片。
3)晶圆加工
有芯片设计公司提供的GDSII版图,晶圆加工厂就可以对硅片进行加工,生产出满足设计要求的芯片了。
晶圆加工过程非常烦琐,主要的步骤有氧化、光刻、刻蚀、离子注入……每一步都要用到对应的加工设备,且整个过程要若干次迭代。
晶圆加工的步骤从氧化开始。
硅暴露在氧气中会形成二氧化硅。氧化即将硅片置于1000℃左右的高纯氧环境中,生长出一层二氧化硅的热氧化层,如图3所示。
氧化后的晶圆经过了化学气相沉积(CVD)及溅射处理后,开始进入光刻环节。
光刻跟照相相似,将光罩(Mask)的图形传送到晶圆。光刻是半导体制程中非常重要的一个环节,芯片制造的设备成本有近一半都来自光刻。另一方面,由于半导体器件的线宽受制于光刻,这就使得光刻成为提高半导体制程最主要的瓶颈。
图3 氧化
光刻用的“底片”是光罩。光罩利用电子束或激光束,依据芯片设计的GDSII版图,对涂有铬层的玻璃板上进行刻画,从而形成相应的诸如线条、孔等图案,图案之外的区域允许光透过。
光罩准备好就在晶圆上涂光刻胶,又叫光阻(Photoresist),如图4所示。类似照相对涂层曝光、显影后,曝光部分的光刻胶被溶解,未曝光部分的光刻胶则留下来,这种光刻胶称作正性光刻胶。
图4 涂光刻胶
涂光刻胶之后,利用紫外线和光罩进行选择性曝光,从而将光罩上的图形传送到晶圆上,如图5所示。
图5 选择性曝光
曝光之后对晶圆进行显影,洗掉被曝过光的光刻胶。进行烘烤使留下来的光刻胶变得坚硬,在下一步蚀刻的时候不会被破坏掉,得到的结果如图6所示。
图6 洗掉被曝过光的光刻胶
接下来的酸蚀刻利用氢氟酸将没有被光阻覆盖的二氧化硅膜腐蚀掉,并利用硫酸将光阻洗去,就得到了图7所示的结果。
图7 腐蚀掉二氧化硅膜,洗去光阻
经过上述步骤,我们在晶圆上得到了想要的图案,但此时晶圆还是纯净的硅半导体,还要在其中加入杂质后,才能形成不同导电类型的半导体(P 型或 N 型),进一步还能形成场效应管。
在晶圆中加入特定杂质的过程俗称“掺杂”。通过杂质扩散除了可以控制导电类型之外,还可以用来控制杂质浓度及分布,如图8所示。
图8 掺杂
离子注入就是实现“掺杂”的一种方法。在离子注入机中,将需要掺杂的导电性杂质导入电弧室,通过放电使其离子化,经过电场加速后,将高能量的离子束由晶圆表面注入。离子进入硅的过程是破坏性的,它会让部分硅产生晶格缺陷,这种破坏可以被加热修复。因此离子注入完毕后的晶圆还需要经过热处理,一方面是要恢复晶格完整性,另一方面也可以利用热扩散原理进一步将杂质“压入”硅中。
在离子注入后,加入氧化物绝缘层及金属电极,完整的场效应管就形成了。先利用气相沉积法,在硅晶圆表面沉积一层氧化硅膜来形成绝缘层,使用光刻掩模技术在绝缘膜上开孔以引出导体电极。加入金属电极需要先利用溅射沉积法,在晶圆整个表面上沉积布线用的铜层,之后再次使用光刻掩模技术在铜层上蚀刻出三个孔,形成场效应管的源极、漏极、栅极,如图9所示。
图9 加入氧化物绝缘层及金属电极
芯片中可能会有几十亿个晶体管,为了使这些晶体管互相连接,需要在不同晶体管之间产生复合互连金属层。此时也需要与前述类似的处理,形成铜层后进行光刻掩模、蚀刻开孔,之后再产生下一个铜层并做相应处理,最终形成极其复杂的多层连接电路网络。
4)芯片封装
封装即将芯片封在一个外壳中,外壳可以起到安放、固定、密封、保护芯片的作用。封装还负责芯片内部电路与外部电路的连接:芯片上的接点用导线绑定(连接)到封装外壳的引脚上,这些引脚又通过电路板上的导线与其他器件建立连接。
按照封装外形的不同,封装可分为SOT、SOIC、TSSOP、QFN、QFP、BGA、CSP等,从SOT到CSP,封装工艺越来越复杂。实践中使用哪种封装类型要综合考虑多种因素,例如需要引出的管脚数目、封装效率等。管脚数越多,则需要更加高级的封装工艺,工艺难度也会比较大。封装效率体现为芯片面积与封装面积的比例,二者面积越接近则效率越高。CSP由于采用了Flip Chip技术和裸片封装,其封装效率接近 1。随着芯片制造工艺越来越高,摩尔定律发展趋缓,因此有业界专家提出将平面封装升级到2.5D/3D堆叠异构集成封装技术,通过先进封装技术来充分挖掘潜能。
封装工艺流程一般可以分为两个部分,塑封之前的工艺步骤称为前段操作,之后的工艺步骤称为后段操作。
前段操作基本工序包括背面减薄、晶圆切割、二次光检查、芯片粘接等。完成加工的晶圆首先要进行背面研磨,来减薄晶圆达到封装需要的厚度。经过背面研磨的晶圆的厚度一般会从几百微米减少到几十微米。晶圆越薄,就能堆叠更多芯片,从而实现集成度更高的多芯片封装(MCP)。减薄之后通过锯条将整片晶圆切割成一个个独立的单元(Dice),方便后面的芯片粘接等工序,切割完后要使用显微镜对晶圆进行外观检查,看是否出现废品。检查确认没问题后可以进行芯片粘接以及引线焊接,即利用高纯度的金线、铜线或铝线把芯片内部电路的外接点(Pad)和外部的引线框架(Lead Frame)通过焊接的方法连接起来。
后段操作的工序主要包括塑封、激光打字、模后固化、去溢料、电镀、切片成型等。塑封(Molding)即利用环氧塑封料(EMC)把引线焊接完成后的产品封装起来,使其不受外界环境的影响而失效。之后在封装的正面或者背面利用激光刻上芯片型号等信息。塑封后还需要进行塑封料的固化,进一步保护芯片内部结构。注塑后可能会剩余多余的溢料,可用弱酸浸泡、高压水冲洗等方法来去除。电镀即在引线框架的表面镀上一层镀层,以增强对外界环境影响的抵抗力,并且使芯片在电路板上容易焊接及提高导电性。最后将引线框架切割成单独的单元(即单个芯片),对切片后的芯片产品进行引脚成型,达到工艺要求的形状。
5)芯片测试
随着芯片制程越来越小,其工艺难度也呈指数型上升。以10nm工艺为例,全工艺步骤数超过1300道,7nm工艺则超过1500道,其中任何一道工艺出错都可能导致生产的芯片不合格。如果不及时发现错误,那么这些不合格的“芯”会被封装成“芯片”,这种“芯片”会被焊接到电路板(PCB)上并应用于最终产品和系统中。对此有一个著名的10倍定律(the Rule of Ten):如果在芯片测试阶段没有发现错误,那么在电路板级(PCB)将花费10倍的成本来找到这个错误。随着电路板和系统的复杂度越来越高,也有人说应该是20倍定律。
因此,需要在芯片制造流程里引入多个测试环节,希望能够尽早发现残次品,避免其进入后续流程以便降低成本。按照“尽早发现”的原则,芯片制造中的测试可以分为两个阶段:CP(Chip Probing)测试和FT(Final Test)测试。CP测试处于在芯片封装之前,目的是把不合格的Die(裸片)挑选出来,以便降低封装和FT测试的成本;FT测试则在芯片封装之后,挑出不合格的成品芯片,以免将残次品交付客户。下面对这两种测试进行简单说明。
CP测试又称晶圆测试。晶圆加工完成之后得到的是一个个的裸片(即未切割、封装的芯片,又称Die或裸Die)。顾名思义,裸片的管脚全部裸露在外,由于这些管脚极为微小,测试厂商需要制作专门的探针卡(Probe Card)将裸片与自动测试设备(ATE)相连接。
由于每个裸片的大小以及在整个晶圆中的位置都已经固定,裸片上的 Pad(芯片上电路的外接点)的坐标也就已知,利用这些信息就可以制造相应的探针卡。探针卡利用自身的金属元素或者探针与晶圆裸片上的Pad相连,用来在晶圆与测试机台(Tester)之间形成电气通道,传递要测试的信号以及相关参数。探针卡本身会被固定在探头(Prober)上,探头逐渐下降直到探针与 Pad 接触。探针卡、探头和机台就组成了CP测试所用的自动测试设备。
利用ATE,CP测试可以完成对晶圆的DC测试、AC测试以及功能测试。DC测试用来检查芯片中是否存在短路或断路,检查芯片的输出电流、输入输出电压是否在合理范围内,确认芯片的引脚和机台的连接是否完好。AC 测试的目的是探测芯片输出信号的波形,检查诸如建立时间、保持时间、传输时延等指标是否满足要求。功能测试则对整个芯片或者特定模块的功能进行验证,所用到的测试方法主要是运行测试向量(Pattern)。Pattern中包括对输入激励、期望输出的定义,由芯片设计公司提供。在CP测试中运行的测试程序按照不同的Pattern产生并施加激励,获得输出并与期望值比较,从而得到测试结论。整个测试过程通过测试程序(Test Program)进行自动化控制。
CP测试中所用的ATE设备非常昂贵,因此一般的芯片设计公司不会购买ATE设备自行完成CP测试,而是委托给专门的测试厂商,与测试厂商配合完成探针卡、测试向量、测试程序等的开发,并进行多次调试后开始整片晶圆的测试。CP测试所需的费用中除了软件(测试程序)、硬件(探针卡)的开发费用之外,占比最大的就是测试机时费了。因此在测试过程中,可以根据已有的测试结果调整测试程序,以便减少测试时间,降低测试费用。例如将出错率较高的测试向量排在前面,一旦出错就停止测试其余测试向量,或者可以直接去除错误率很低的测试向量。另外,位于晶圆边缘处的裸片通常出现错误的概率更高。为了减少测试时间,降低测试成本,甚至可以考虑跳过对边缘裸片的测试,直接认为这些裸片是有问题的。
FT(Final Test)测试顾名思义就是对芯片的最后测试,其测试对象是已经封装好的成品芯片。FT测试所用的自动测试设备与CP测试类似。首先要实现测试设备与待测芯片的电路连接。虽然此时芯片已经完成了封装,对外有可用的管脚,但是在自动化测试里不可能像电路板一样,将芯片直接进行焊接,因此这里使用测试座(Socket)与待测芯片实现电路连接。为了提高测试效率,一般会在测试板卡中放置多个Socket,以便同时测试多个芯片。
ATE里的抓手(Handler)负责抓取待测芯片并放置在Socket中。测试完成后,Tester 将测试结果通过通信接口送给Handler,Handler 则根据测试结果将芯片放入不同区域进行标记、分选。测试合格的芯片贴上规格、型号及出厂日期等标识的标签并加以包装后即可出厂,而未通过测试的芯片也不一定就是废品,也可以根据其实测性能参数来标记为降级品。
最后简单说说CP测试和FT测试之间的关系。CP测试和FT测试同属芯片制造流程中的测试环节,但是二者在测试对象、测试设备、测试效率和功能覆盖上都有显著不同。一般来说,FT测试是必选项,而CP测试是可选项。但是,随着封装和FT测试的费用在芯片成本中的占比逐渐上升,CP测试的必要性也在相应提高。CP测试的另一个作用是尽早得到晶圆加工阶段的良率,如果出现良率过低的情况,可以反馈到芯片代工厂以便改进工艺。因此,在 CP 测试阶段,应尽量选取对良率影响较大的测试项目,而那些测试难度较大(测试成本高)但是通过率较高的项目,则可以纳入 FT 测试的范围。另外,有些裸片的管脚在封装中并没有引出来,因此FT测试无法覆盖这些管脚,这样就需要进行CP测试。
芯片测试对于芯片厂商来说是至关重要的,前面所说的 10 倍定律实际上适用于整个芯片制造和使用流程,包括根据设计版图对晶圆加工形成裸片、对裸片进行封装得到芯片、使用包含芯片的电路板组成子系统、多个子系统组成最终产品提供给客户,等等。在每一个环节中找到问题的代价都是前一个环节的10倍。对于企业来讲,把有问题的芯片交付给客户会给企业的声誉和形象带来巨大打击,另一方面,企业也需要考虑测试带来的成本上升,因此芯片测试需要在质量、效率、成本之间取得最佳的平衡。
3.小结
芯片的极端重要性无须赘述,上至关乎国防安全的军事装备、卫星、雷达,下至关系普通百姓生活的医疗器械、汽车、电视、手机、摄像机,甚至智能儿童玩具,都离不开它。可以说芯片是整个信息社会的基石和心脏,也是推动整个信息社会向前发展的发动机。在美国对中国公司实施芯片封锁的情况下,芯片国产化也被提到了国家战略安全的高度,中美两国都在各自的芯片振兴计划上投入巨大的人力物力,希望能够打赢这场“芯片之战”。
芯片需要一个非常长的产业链,从硅片制造、芯片设计、晶圆加工到封装测试,以及各个环节所需要的设备研发和制造。产业链上每个环节都必须环环相扣,要求极高。最近几年芯片产业成为大众关注的焦点,几乎所有人都知道光刻机是“卡脖子”的关键设备。另一方面,本书的主题——EDA软件在整个芯片设计、制造环节中同样扮演至关重要的角色,同样处于“卡脖子”的地位。
EDA是Electronic Design Automation(电子设计自动化)的简称。正如在前文“芯片的设计”中提到的,芯片的前端设计、后端设计是由很多步骤组成的,每一个步骤都要用到对应的 EDA 软件来完成自动化设计。由于芯片流片的成本巨大,只有在流片前通过各种EDA软件进行反复的仿真、模拟,才能提高流片成功率。
事实上,正是由于 EDA 软件的出现,才加速形成了当前主要由芯片设计公司(Fabless)、芯片代工厂(Foundry)、封装测试厂(Package&Testing House)构成的芯片产业格局,其中Fabless公司逐渐成为整个芯片产业的主要推动力。20世纪70年代,芯片设计以人工为主,由于芯片设计和半导体工艺密切相关,这个时期芯片产业的主要角色是集成设备制造商(Integrated Device Manufacturer,IDM),如Intel,IBM,AMD 等。IDM 有自己的晶圆加工厂,具备芯片设计、芯片制造、芯片封装和测试等多种能力。80 年代后,EDA 工具软件的出现将生产工艺相关的部分进行抽象和模拟,使设计过程可以独立于生产工艺而存在,加之新兴的市场方向需要各种专用芯片(Application Specific IC,ASIC),从而催生了众多不拥有生产线、专注于芯片设计的Fabless公司(Fabless即Fabrication-less),为了满足Fabless公司的需求,原任德州仪器公司资深副总裁的张忠谋博士在1987年成立了全球第一家芯片代工厂——台湾积体电路制造公司(台积电,TSMC)。
目前世界上主要的 EDA 厂商都是美国公司,Synopsys、Cadence 和 Mentor Graphics(2016年被西门子公司收购)占据着大部分市场份额。相比之下,国产EDA软件虽然市场份额相对较小,但是近年来呈现快速增长之势。国产 EDA 厂商正在努力解决的问题主要包括供、需两个方面:“供”是提供覆盖设计全流程的EDA软件,“需”是要与芯片设计、IP 提供商、芯片代工厂等上下游实现生态协同。近年来,国家和地方均针对芯片EDA产业出台了重磅支持政策,例如《“十四五”软件和信息技术服务业发展规划》提出建立 EDA 开发商、芯片设计企业、代工厂商等上下游企业联合技术攻关机制;《上海市促进工业软件高质量发展行动计划(2021——2023)》明确支持有条件的企业由点到面实现全流程 EDA 工具突破,支持加强EDA上下游的垂直共建。相信随着众多国产EDA厂商和国家力量的持续投入,我国的芯片EDA软件有望早日实现自主可控。
作者简介:
雷俊,2009年毕业于清华大学电子工程系,获得工学博士学位,现任新岸线(北京)科技集团技术副总裁,正高级工程师。雷俊博士在无线通信系统以及核心芯片设计领域有超过 20 年的研发经验,作为技术负责人先后成功研发了手机电视(T-MMB)、超高速无线局域网(EUHT)等具有自主知识产权的通信系统以及芯片,是中国超高速无线局域网通信行业标准、城市轨道交通车地无线通信行业标准、中国智能交通国家标准的主要起草人之一,担任2010/2012/2014年国家科技重大专项项目负责人;带领团队成功研发了首个面向物联网的全集成WiFi SoC、2G/3G数字射频SoC、多种规格的EUHT基带SoC等芯片。所研发的EUHT系统和芯片已经应用于地铁、车联网、工业互联、农村无线宽带接入等领域,并于2019年获得国际固态电路大会(ISSCC)技术创新奖,EUHT技术在2022年成为国际电信联盟(ITU)IMT-2020(5G)无线接口技术候选标准。