5大维度对比主流芯片架构,类脑芯片未来可期
主讲导师|冯杰
本文编辑|梁家祥
7月17日,智东西公开课推出的AI芯片系列课进行完第四讲,由灵汐科技首席架构师冯杰主讲,主题为《类脑芯片的架构演进》。冯杰老师围绕CPU、GPU、FPGA、ASIC以及类脑等代表性芯片架构从算法支持度、规模扩展性、有效算力、有效算力成本比、有效算力功耗比五个维度做了详细的对比分析,并对Tianjic类脑芯片架构的高算力、低功耗、高扩展性和高并行度及应用做了详细介绍,本文为冯杰老师的主讲实录,共计13868字,预计读完需要13分钟。
主讲实录
冯杰: 大家好,我是灵汐科技芯片架构师冯杰。感谢智东西提供交流平台,让大家能够在一起交流人工智能的发展。今天我分享主题为《类脑芯片的架构演进》。以下是今天要分享的提纲:
1.人工智能的驱动力和现状
2.代表性芯片架构分析
3.人脑的启示
4.Tianjic芯片架构分析
5.灵汐科技的类脑计算平台
这张图相信大家都很熟悉,它揭示了这些年人工智能在某些领域蓬勃发展的根本原因,也就是说,在合适的时机,有大量的数据、有效的算法以及比较高的算力进行有机结合,推动了人工智能的高速发展。
今天,很多领域都能看到人工智能的身影,从创作到游戏,从金融到安防等,很多行业为了提升效率和品质,都在采用AI技术,因此有人说我们正在进入智能时代,在我看来,这并没有夸张,至少我们已经站到智能时代的门槛附近了。
但是,今天我们也不得不看清一个严峻的现实,那就是数据量越来越大,数据类型越来越多,从以前主要的文本信息,到后来的图像信息、音频信息、视频信息,再到现在和未来各种传感器信息,数据的种类是五花八门,多种多样,数不胜数的;在算法上,不同的应用领域有不同的算法涌现,比如有图像识别算法、语音识别算法以及目标跟踪算法等,各种算法日新月异,种类繁多,高速发展。但是它们的基点,也就是算力的进步却越来越慢,已经大大落后于数据和算法的需求。我们都知道提供算力的是芯片,我们也知道芯片工业的发展已经快到极限了,目前是7nm量产,也许明年后年就是5nm或者1nm会量产,也可能在未来会有更小的尺寸,但没有人知道能不能继续维持下去,到目前为止,能够实用的新材料暂时还没有看到。
数据和算法还在继续高速发展,我们需要立足于现状,分析问题的原因,找出解决的办法,接下来我会对数据、算法以及算力一一加以分析。
从这张图可以看到,数据量在呈指数级增长,由于数据量是由数据的产生方式、存储方式以及传播方式决定的。因此,随着科技的进步和社会的发展,数据量一定是越来越大的。
今天我们每个人都是大量数据的制造者,比如平时拍照、录音、录视频、刷朋友圈等,再加上物联网时代正在走近,如果在未来真正实现了万物互联,数据量会更加庞大。数据包含有用的数据和垃圾数据,当然,有用数据和垃圾数据是相对的,取决于怎么使用这些数据,谁使用这些数据。
如何对海量数据进行分类,分辨出有用数据,还是垃圾数据,以及如何对这些数据进行处理,挖掘出有用数据的价值,让它们服务于人类呢?这是一个巨大的挑战。
人力是有限的,数据是无限的,靠人工肯定是不可能的,只能靠人工智能代替人对数据进行分类和处理,并服务于人类。而人工智能之所以能够处理这么大的数据,靠的是算法,接下来我们来看看人工智能的算法。
首先是人工神经网络的算法,这是我们最熟悉的人工智能算法。目前最流行最强大的深度学习算法就是最有代表性的人工神经网络算法,这张图片描述了人工神经网络的发展历程。
1943年,心理学家MeCulloch和数理逻辑学家Pitts第一次提出人工神经网络的概念,同时也提出了第一个人工神经元的数学模型,也就是著名的MP模型(神经元的阈值模型),人工神经网络的时代就此开启。但是,纵观整个人工神经网络的发展并不是一帆风顺,也是几经波折才发展到今天的繁华局面。
1958年,Rosenblant在原油的MP模型基础上提出了非常著名的感知器概念,也叫感知器模型。它是一种最简单的二元线性分类器,后来被广泛应用。感知器模型的提出和应用迎来了人工神经网络发展的第一次高潮。1969年,Minsky和Papert发现感知器不能处理线性不可分问题,也就是“异或”问题,看起来挺简单的“异或”问题,感知机无法解决;同时,由于当时的计算机也是刚刚发展不久,性能很低,很难快速运行大规模的神经网络的计算,因此人工神经网络的发展第一次陷入了低潮。但是人工神经网络的发展并没有就此停滞,还是有一批人前赴后继,寻找前进的道路。
直到1974年,Werbos提出误差反向传播有监督学习算法,也就是我们今天都在用的BP算法,用误差反向传播算法可以训练多层感知机即MLP,它有效地解决了“异或”问题,这是很重要的一步,算是彻底迈过了1969年Minsky和Papert给我们留下来的难题,翻开了人工神经网络发展的新篇章。
1982年Hopfield提出了著名的Hopfield网络。Hopfield是模拟人类记忆的循环神经网络模型,对神经网络的信息存储和提取进行非线性的数学描述。到1986年,Rumelhart和McCelland提出了BP神经网络,采用Sigmoid非线性结构函数(也叫S函数),并且系统地建立了多层感知器的BP学习算法,后来在1989年,三层或三层以上的BP网络从数学上也被证明了可以逼近任何封闭区间内的连续函数,这就是著名的万能逼近定理。
万能逼近定理是指一个前馈神经网络如果具有线性输出层和至少一层具有某种“挤压”性质的激活函数的隐藏层,例如Sigmoid激活函数,只要给予网络足够数量的隐藏单元,那么它就可以以任意精度来近似任何从一个有限维空间到另外一个有限维空间的Borel可测函数。简单来说,就是三层的BP网络,如果中间隐藏层足够宽,同时带上合适的激活函数,就可以让一个空间无限逼近另外一个空间的函数,当然,我们知道这只是理论上的。
1989年,LeCun在论文中提到的CNN BP训练方法,算是人工神经网络的第二次高潮。回顾人工神经网络的发展历程会发现,我们的前辈是非常聪明的,无论是BP算法还是CNN的提出,他们在几十年前就已经为我们打下了坚实的基础,而我们只是在做一些实现,实现他们当时不具备条件去验证以及大规模推广的理论,我们今天的进步都是站在他们的肩膀上取得的。
上个世纪末九十年代,人工神经网络又碰到了难题:基于Sigmoid激活函数深层人工神经网络在训练时会遇到梯度消失的问题。也就是说BP训练过程中传递的误差从后往前越来越小,误差传到浅层时几乎为零,很难进行更有效的学习训练,简单地说,就是网络深度无法再增加了,性能受限了。
同时,九十年代互联网的飞速发展吸引了绝大多数人的眼光,即使当时人工智能领域比如专家系统也取得了不小的进步,但是很少有人关注,这个时期算是人工神经网络的第二次低潮。当然人工神经网络的研究并没有停滞,而在这个时期,LSTM模型在1997年被提出,同时LeNet也在1998年被提出。
直到2006年,多伦多大学教授Geoffrey Hinton把单层受限玻尔兹曼机堆栈成了多层深度信念网络(Deep Belief Network,简称DBN),并且提出了无监督逐层贪婪预训练方法,再结合全局有监督BP算法进行微调,使得七层以上的神经网络训练得到收敛。Hinton让我们看到了深度学习的曙光,我们确实即将迎来了深度学习高速发展的时代。因此有人说2006年是深度学习元年,Hinton被人尊称为深度学习之父。
接下来几年深度学习一直在发展,比较重要的是2011年,大家用不连续可导的ReLU激活函数代替原来一直使用的连续可导激活函数,比如Sigmoid激活函数。ReLU的运用抑制了深层网络训练梯度消失的问题,让我们能够进一步加深网络。因此在2012年,Hinton的学生提出了AlexNet,第一次使用深度达到八层的CNN网络,并在当年的ImageNet图像识别大赛中取得冠军。
从2012年开始,接下来四年的图像识别大赛中算法的识别率越来越高,直到2015年的ResNet,它的识别率达到了96.43%,已经高于人眼识别率(大概是95%)。ImageNet图像识别大赛对深度学习算法的发展起了很大的推动作用,大赛期间伴随着人工神经网络的深度越来越深,网络结构越来越复杂,性能也越来越好。
在人工神经网络算法发展的过程中,还伴随着几个标志性事件的发生,也就是图上面的那些红点。比如1997年IBM深蓝计算机在国际象棋中打败了当时的世界冠军,取得了不小的轰动;而最引人注目的还是2016年,AlphaGo击败李世石,这场比赛的结果才算是真正点燃了大众对人工智能的关注,让大家把目光投向了人工智能领域,紧跟着就是资金和人才大量向人工智能领域汇集,为人工智能进一步发展开启了一个黄金时代。今年(2018)六月份,在DOTA 5V5游戏中,人工智能又胜过业余玩家,我想胜过职业玩家应该指日可待,在这个游戏中,人工智能已经开始表露出了配合、引诱甚至牺牲的策略,我相信这又将是人工智能发展的一个里程碑。
从以上的回顾中,我们能看到人工神经网络虽然几经沉浮,但是也取得了傲人的成绩,而且直到今天,在不同的应用领域中,深度学习算法还在继续前进,比如融合不同的网络以及一些传统算法来解决更多更高难度的任务。
但是我们也应该看到,现有的深度学习算法也有它固有缺陷。比如我们曾经想尽办法在宽度上拓展网络,取得了性能的提高,后来又想尽办法在深度上挖掘,取得了显著的性能提升,可是到了今天,我们发现,继续增加网络的深度和宽度,性能都不会再得到提高了。曾经最引人注目的图像识别领域,这几年的性能几乎没有提升,2015、2016以及2017年的误识率基本上都在3%左右。也许现在正是我们把目光投向人工神经网络以外的其他算法领域的时候了,比如神经动力学。
神经动力学其实比人工神经网络出现得更早。早在1907年就出现了神经元的行为学模型“LIF”模型;1952年又出现了神经元的仿生学模型“Hodgkin-Huxley”模型(简称HH模型);2003年出现了介于行为学模型和仿生学模型之间的“lzhikevich”模型。
神经动力学和人工神经网络都属于人工智能连接主义研究的范畴,但是它们的侧重点是不一样的,人工神经网络,比如DNN是借鉴大脑对信息分层处理的特性,在空间上模仿大脑;而神经动力学是既借鉴大脑神经元连接的空间特性,又借鉴神经元处理信息的时间动力学过程,具备了丰富的时空动力学特性。所以我们觉得它更接近真正的神经元模型,也更接近于大脑的构造和信息处理机制,很有可能成为通用人工智能的突破口,但是这些都是以算力为代价的。
上面的坐标图表示不同的神经动力学模型对算力的要求和仿生学程度。横坐标代表计算不同的神经动力学模型所要花费的算力代价,纵坐标是不同模型的仿生学程度,也就是生物可信度。从图上我们可以看到仿生学程度越高所要求的算力也就越高。
比如“HH”模型在计算中有大量的微分方程,因此需要发挥很大的算力,而现在的计算机是很难进行处理的;又比如“lzhikevich”模型,对算力的要求属于中等,但是也还是很高,所以它的应用范围也不广。
“LIF”模型的数学方程和前二者比起来就简单多了。通过LIF动力学以及其他的变体可以构建多种多样的神经网络模型,最有代表性神经网络模型有两个:非脉冲编码的连续LIF模型和基于脉冲编码的LIF模型,也就是脉冲神经网络SNN。由于SNN最简单,对算力要求也最低,因此也最为我们所熟知,很多时候SNN简直成了神经动力学网络的代名词。
从上面我们可以看到,神经动力学的发展是与算力息息相关的。为了神经动力学的发展,建立起既能高效支持人工神经网络算法,又能高效支持神经动力学算法的计算平台显得尤为重要。接下来我会分析一下现有的人工智能计算平台。
从图上可以看到,人工智能计算平台主要分为通用计算平台和专用神经网络计算平台。通用计算平台主要有CPU、GPU以及FPGA。
CPU包括Intel和ARM,Intel是CISC阵营,ARM是RISC阵营。Intel主要用于PC服务器领域,提供高性能计算;ARM主要是用于移动和嵌入式领域,最大的特点是低功耗。
GPU主要是NVIDIA和AMD。但是在AI服务器领域,NVIDIA对市场的占有率达到了70%,远远高于AMD30%的占有率,他们两家几乎占到了100%的市场。
FPGA主要包括Xilinx和Altera,而现在Altera已经被Intel收购,因此未来估计FPGA领域将是Xilinx一统江湖。
专用神经网络计算平台ASIC,根据对算法支持度的不同,ASIC又分为支持人工神经网络的深度学习加速器芯片以及支持神经动力学的神经形态芯片。
支持深度学习的芯片有很多家,比如Google,GraphCore,寒武纪,Wavecompting等公司。每一家都有自己的特色,性能上面各有千秋。
神经形态芯片从实现方式来看,分为数字芯片、模拟芯片和新材料芯片。数字芯片主要有TrueNorth、Loihi以及SpiNNaker;模拟芯片主要有Neurogrid、BrainScales以及ROLLS;新材料芯片主要有Memristor组成的阵列。神经形态芯片目前并没有商用化,还处于实验室验证阶段。
从上图能够看到,通用计算平台CPU、GPU或者FPGA基本都处于巨头垄断状态,每一个领域只有一个或两个霸主,地位完全无法撼动。而神经网络计算ASIC是群雄争霸,没有人能一统江湖,这或许是我们所有人的机会,就看大家有没有能力把握住。
接下来我会对刚才介绍中很有代表性的芯片进行分析,以了解这些芯片的特点。
首先是CPU。CPU平台是数字领域中的万能计算平台,除了能够实现神经网络的计算外,还能实现其他所有的通用计算和控制。这张图片显示的是Intel最新服务器CPU的Skylake架构。
Skylake是多核架构,采用2D Mesh片上网络实现多核调度和互联,每一个核都采用传统的结构,包含计算单元、控制单元等电路。芯片与外界的互联通过PCIE接口实现,同时具有Memory Controller外挂DDR。右边的雷达图是对CPU特点的概括,我会从五个方面来总结CPU以及后面其他计算平台的特性。
首先看一下算法支持度。这里的算法是指神经网络计算算法,也就是刚才说过的人工神经网络算法和神经动力学算法。CPU是万能计算平台,它能支持所有的神经网络算法,因此它的算法支持度得分是100分。
第二个是有效算力。有效算力是指能有效发挥在神经网络计算上的算力。通常我们会说一个芯片的峰值算力是多少tops,真正把神经网络放进去计算的时候,会发现也许只有10%-20%的算力能够发挥出来,其他的算力都是浪费的。当然,算力发挥不出来的原因,不仅是芯片的因素,还有其他的一些因素,很多时候是因为软件没有做相应的优化。而在这里,我们先把软件的因素排除掉,默认软件已经是最优化了,因此只看芯片能发挥的有效算力。CPU的有效算力得分比较低,只有40分。因为CPU主要是用于通用计算和复杂控制,而神经网络计算是由某些特定的,比如大量的并行卷积运算,CPU并没有针对它们进行优化,因此它的得分不高。
第三个是有效算力功耗比,指有效算力除以所消耗的功耗。这个功耗不只是芯片自身计算的功耗,还包括计算过程中用到的存储器,比如DDR的功耗,因为有很多芯片包括大多数神经网络加速器,不带DDR是无法工作的。由于CPU的有效算力比较低,而功耗比较高,再加上DDR的功耗,因此它的有效算力功耗比得分很低,只有20分。
第四个是有效算力成本比,指有效算力除以成本。同样的,这个成本不只是包括芯片本身的成本,还包括计算过程中用到的存储器成本,由于CPU有效算力比较低,而价格又比较贵,因此它的有效算力成本比得分只有30分。
最后是规模扩展性,指多个芯片扩展互连形成大规模算力的能力。这在大型神经网络计算或者多网络协同计算时非常重要。CPU的扩展互联是通过PCIE接口实现。其实凡是用PCIE接口通过总线实现扩展互联的芯片都有比较明显的缺点,第一个缺点是扩展互联的芯片数量是有限的,一般只能是几个芯片的扩展互联,如果通过树形的方式扩展互联就形成了第二个缺点,多个芯片扩展互联后算力发挥效率会急剧下降。
比如两个100T的芯片扩展互联后,也许只能发挥80%的效率,即160T的总算力,而且扩展互联芯片的数量越多,效率下降就越快。又比如,四个100T的芯片扩展互联,结果也许只能发挥60%的效率,也就是240T的总算力,因此CPU的规模扩展性只有50分。
接下来看看第二个计算平台——GPU。
GPU是最通用,也是我们最熟悉的神经网络计算平台。大多数人从一开始学习神经网络就是用GPU进行神经网络的训练和推理,而且现在市场上能买到的真正实用的并且效率比较高的神经网络计算平台也只有GPU。
这里分析的例子是NVIDIA最新GPU V100的架构。V100是众核架构,是由很多小核组成的芯片,芯片由Memory Control负责DDR的读写,GPU有两种接口实现片外互联,一种是PCIE,一种是NVLink。NVLink是NVIDIA专门开发的高速互连接口,目的就是为了得到更好的可扩展性。
GPU对人工神经网络算法的支持度比较高,但是对神经动力学的支持效率是比较低的,因此它的算法支持度是85分。
关于有效算力,V100的有效算力是非常高的,它的通用FP16算力有30tops。而Tensor FP16的算力达到了120tops,因此它的有效算力得分90分。
GPU的功耗很高,比如V100是300瓦,但是由于它的算力非常高,因此它的有效算力功耗比是70分。
由于GPU是很贵的,V100采用12nm工艺,面积达到了815平方毫米,成本相当高,因此它的有效算力成本比得分为30分。
GPU是通过PCIE和NVLink实现互联的,由于NVLink的接口能够很好的实现它们之间的互联,因此规模扩展性得分为80分。
FPGA是由大量的可编程逻辑阵列组成,用户可以根据需要灵活地对FPGA进行编程实现想要的功能。由Memory Controller负责读写外部存储器DDR,FPGA外部电路的通信是通过多种高速串行总线接口实现的。
因为是可编程逻辑阵列,所以具有非常好的灵活性,可以针对不同的算法做不同的设计,因此FPGA的算法支持度得分很高,几乎和CPU差不多,是95分。
对FPGA进行编程是比较难的,与对CPU进行编程的难度相比,不是一个等级上的。FPGA本身的计算速度可以做到很快,但是由于需要与外部DDR交换数据,限制了其算力发挥,因此FPGA的有效算力得分是60分。
关于有效算力功耗比,FPGA比GPU的功耗要低很多,再加上它的有效算力也能够做得比较高,因此FPGA的有效算力功耗比得分是70分。
但是FPGA的成本还是比较高,尤其在大规模应用的情况下,它的成本非常高,所以算力成本比只有50分。
FPGA的规模扩展能力比较强,可以通过多组高速接口互联,所以其规模扩展性能得分80分。
TPU是真正专门为了人工神经网络计算而打造的一款加速器芯片,它的架构是针对人工神经网络算法优化过的,芯片内部有大量并形的计算单元阵列,也有比较大的片内储存,还有Memory Controller负责读写外部存储器DDR,由PCIE实现芯片扩展互联。
TPU能高效的支持人工神经网络算法,但是对神经动力学算法的支持度比较低,所以其算法支持度得分80分。
TPU的算力比较高,对Tensor FP16,算力能达到45tops,在优化软件程序后,TPU算力效率能够发挥到60%多,因此其有效算力得分是70分。
TPU的功耗大约是130W,因此它的算力功耗比得分是60分。大家可以发现现在很多人工神经网络加速器的算力功耗比都不是很理想,大部分都低于GPU功耗比。
TPU的算力成本比得分是80分,因为它虽然只有45tops,但是它是在比较便宜的28纳米的工艺上实现的。
TPU扩展互联的接口还是PCIE,因此得分60分。
神经形态芯片,这里以IBM的TrueNorth为例。TrueNorth是众核架构,里面的每一个神经元阵列就是一个小核,所有的核都是存算一体,即工作时不需要外带DDR,每一个小核使用2D Mesh片上网络实现互联,片间互联是通过LVDS接口。
TrueNorth基本上只能支持神经动力学的SNN算法,对人工神经网络算法的支持度极低,所以算法支持度得分为30分。
而且TrueNorth算力也很低,只有58gops,与一般加速器常见的几十tops相比是非常低的,所以有效算力得分只有10分。
TrueNorth虽然算力很低,但是功耗也很低,100多毫瓦,因此它的有效算力功耗比有70分。
但是由于有效算力太低,而成本并不低,采用28nm工艺,面积达到了430多平方毫米,因此它的有效算力成本比只有10分。
TrueNorth采用的是2D Mesh片上网络,芯片与芯片之间可以通过LVDS串口直接互联,因此具有非常好的可扩展性,得分为90分,这也是TrueNorth最大的优势之一。
从这些数据可以看到,TrueNorth是一款有显著优缺点的芯片,包括存算一体、算力极低、算力功耗比高和可扩展性强的特点,这也是很多目前形态芯片的普遍现象,它们基本上都只能支持神经动力学算法,对更加流行更加成熟更加强大的人工神经网络算法比如CNN算法的支持度很低,因此这些神经形态芯片现在几乎没有办法商业化,处于实验室验证阶段。
分析了这么多的计算平台后,接下来看看人脑到底有哪些特点?
首先人脑是存算一体的,显而易见人脑的存储信息和处理信息是一起的。在刚才提到的各种计算平台中,无论是CPU、GPU、FPGA还是深度学习加速器,它们采用的都是存算分离的冯诺伊曼结构,因此在提高性能时有一个很大的瓶颈,就是存储带宽限制的问题。当然,神经形态芯片有的是存算分离,有的是存算一体,但是可惜的是,它们的算法支持度和算力都太低了。
人脑的第二个特点是具有极大的规模性,我们知道人脑是由上百亿个神经元细胞组成的,这些神经元细胞通过极其复杂的互联形成了一个规模巨大的有机系统,因此很多人认为要模拟真正的人脑,一定要达到某种规模才能看到类似人脑的效应,这也是TrueNorth一直追求大规模互联的原因。
人脑的第三个特点是具有一些比较明显的功能分区,比如视觉区、听觉区、情感区等,这些不同的功能分区有机的结合在一起,互相配合着完成大脑的活动。
第四个特点,人脑处理任务时具有极高的并行度,因为我们在任何时候都是在同时做多件事,比如一边走路一边唱着歌,眼睛还一边欣赏着美景等,人脑能够让它们互不干扰,完全并行。
第五个特点,人脑具有极低的功耗。虽然我们人脑能处理这么多复杂的任务,但是消耗的能量却是极低的,才20W左右。举个例子,刚才提到的GPU,实现一个单一的任务功耗就达到300W,或许同样单一的任务对于人类来说也只是轻松地瞟一眼。当然,人脑还有其他很多特点,比如计算的高容错性、不确定性等。我们正是受到人脑这些特点的启发,开发出类脑芯片Tianjic的。
Tianjic采用优化过的众核架构,由一系列核构成阵列完成神经网络的计算。为什么要使用优化过的众核架构呢?因为我们认为,在摩尔定律即将失效的今天,在现有的工艺基础上,从优化架构入手可能是提高芯片性能最重要的手段。
当然,局部电路的优化,比如优化某些乘加器,提高它们的工作频率也可以提高性能,又或者随着Package技术的进步,把加速器芯片和HBM封装在一个package里面,也是提高性能的手段,但是这些手段带来芯片性能的提升跟优化架构带来的性能提升相比是微不足道的。架构就像物种的基因,一颗小草尽管使劲地施肥,它也长不成一棵参天大树,无非是一颗比较高大肥壮的小草而已,因为这是基因决定的。
CPU和GPU每一次大的性能提升也都是从架构入手,用新的架构代替旧的架构。比如GPU是从Kepler架构到Pascal架构,再到现在V100的Volta架构,因此它的性能才提升到现在的高度。当然,这些都还是在传统的冯诺伊曼架构基础上的提升。
而Tianjic,由于每一个核都自带存储区,所有的计算数据都在本地操作,因此从芯片的层面看,Tianjic在总的架构上已经超越了传统的冯诺伊曼结构,所以Tianjic不像传统架构的芯片一样在计算的时候必须与DDR进行大量的数据交互而受存储带宽的限制,使整个芯片的性能受到影响。这是Tianjic芯片算力高的一个极其重要的原因。因为不用从外部导入数据,因此它的功耗比较低,也节省了成本和空间。
同时,我们每一个核里面都有一个通用处理器,也就是说核阵列包含由多个CPU组成的CPU阵列,因此具有极大的灵活性,能高效的支持各种神经网络算法。
Tianjic芯片采用的是2D Mesh片上网络结构,用于核与核之间的通信互联。芯片与外部的通信是通过高速串口实现的。
接下来我会讲一下Tianjic芯片的互连。
当我们想要扩展算力的时候,可以通过高速串口实现片间互联,而且可以从东南西北四个方向同时扩展,因为我们的串口带宽很高,能够保证计算过程中足够快的传输片间信息,因此从总体上看,所有的芯片都是无缝连接的,并且扩展互联不会降低算力的效率,也就是说有多少个Tianjic芯片互联就能得到多少倍单Tianjic芯片的算力。
这是Tianjic芯片架构相对于传统芯片架构又一极大的优势。这样就可以用Tianjic芯片组成一个具有极高算力和极大规模的芯片阵列,甚至可以尽可能接近人脑规模。
Tianjic的众核架构和2D Mesh片上网络相较于传统芯片架构还有一个极大的优势,就是多核重组特性。因为Tianjic芯片的核阵列中是众核平等的,核与核之间没有主从之分,当多Tianjic芯片组成芯片阵列时,阵列中芯片与芯片之间没有主从之分。因此,在用户眼里,整个芯片阵列就是一个巨大的核阵列,用户可以灵活的用软件来配置自己的任务,把不同的任务同时配置在不同的核组中,真正的实现多任务的并行处理,不管任务之间是有关联性还是没有关联性。这就很像人脑的行为,前面我们分析过,人脑不同的区域有不同的功能,并且能够高效并行的处理各种任务。
正是在大脑的启发下,我们设计的Tianjic芯片让我们看到了模拟人脑的希望,也看到了可能实现通用人工智能的希望。
我们给客户提供的是不仅仅是一块芯片,还包括一整套解决方案:最底层是Tianjic芯片,负责提供算力;在芯片的基础上,我们会提供给客户完备的工具链;我们会帮助客户把算法高效的在芯片上运行,也会对客户的应用提供最好的服务。
接下来我将对工具链算法和应用加以说明。
工具链是非常重要的,也是我们工作的重中之重。大家都知道GPU在AI领域拥有绝对的优势地位,它之所以这么强大,除了具有强劲的性能以外,还有它强大的工具链,因此我们一定会竭尽全力打造一款强大的全栈式工具链,给客户提供各种层次的开发工具。
例如,如果客户嫌麻烦,那就可以使用我们通用的API,客户只需要把通用的框架,比如TensorFlow或者Caffe训练出来的网络原封不动地交给我们的应用接口,我们的工具就会自动地完成编译、优化等一系列工作,让芯片能够发挥最佳的性能,以最快的速度完成客户的任务;如果客户想定制任务,我们也提供灵活的开发工具,客户可以根据自己的需求,灵活地开发优化自己的应用。总之我们提供给客户的一定是一款功能强大而又灵活易用的工作链。
灵汐科技有一支强有力的算法团队,既能跟踪国际最前沿的算法发展,又能优化客户最成熟的应用算法,并且对人工神经网络和神经动力学网络都有着非常深入的研究,可以保证类脑计算平台高效地支持各种网络。
应用方面,我们会和客户进行合作,帮助客户开发各种板卡、服务器之类的产品,支持客户边缘计算或者终端的各种应用,也希望以后在各行各业的智能化计算平台中都能看到Tianjic的身影。
灵汐科技的目标就是为各行各业的智能化提供高效稳定的计算平台,同时致力于降低用户使用算力的成本,助力客户的发展。
我们相信,我们的产品能够用在各个领域,比如数据中心、安防、智能医疗、自动驾驶等领域。
总之,我们希望Tianjic的高算力、低功耗、高扩展性和高并行度,能够为推动整个人工智能产业的发展贡献自己的力量。同时也希望有一天对人工智能的从业人员来说,不再像今天一样为了节省一点点算力,花很大的力气去做剪枝、优化之类,最后还得忍受网络性能的降低,这不应该成为AI领域工程师们的常态。
我们希望我们的产品能够给客户提供取之不尽用之不竭且便宜的算力,让工程师们能够很轻松就能实现最佳的性能。
Q&A环节
问题一
安绍岩-展讯通信-高级软件主管
1. 相比其它AI架构,类脑架构的优势、劣势对比,能否举出具体验证数据做对比。
2. 灵汐对于该类脑芯片后续技术演进的思考。
冯杰: 1、主要优势有:一、算力高;二、功耗低;三、存算一体,不需要外挂DDR,节省成本功耗和空间;四、算法的支持度灵活,既能高效支持人工神经网络算法,又能高效支持SNN算法;五、扩展性好,能得到极大算力的芯片阵列,而且算力效率不会下降;六,支持多核重组特性,可以实现多任务并行处理。这些性能都会有具体的数据支持,会在公司产品发布时统一公布。
2、类脑芯片的发展取决于很多方面的因素,首先是算法的突破,类脑芯片要既高效支持人工神经网络算法,又高效支持SNN算法,而不能像现在这样,ANN算法发展很好,而SNN并没那么好。Tianjic之所以高效支持SNN,就是想给大家提供一个好的平台,供大家积累这方面的经验,希望能为SNN的突破出一份力;其次是材料、新器件、新工艺的突破,它们都会对类脑芯片的进步提供相当大的助力;最后是架构突破,由于新材料的突破需要比较长的时间,如何在现有的工艺基础上,挖掘出更好的性能是我们需要面对的现实问题,Tianjic芯片的架构已经做了突破,但我觉得还有性能提高的空间,我们会一直走在突破的路上。
问题二
翟云-北京君正-部门总监
1.Tianjic既然定位于类脑计算,为何还要支持CNN、LSTM等现有流行算法?
2.脉冲神经网络如何训练,在什么FrameWork下训练?相比现在主流的CNN、LSTM的精度如何
冯杰: 1、Tianjic作为一款类脑芯片,不应该对人工智能算法有区别对待,而应该同时能高效支持CNN和SNN等所有的神经网络算法。我们从大脑的机制中尽量吸取了更多的优势,比如存算一体、高扩展性等。我们希望Tianjic芯片组成的阵列有一天能真正地接近大脑的规模,并且模拟大脑的特性。
2、SNN是比较难训练的。现在一般采取的是三种训练方法,分别是无监督学习规则、ANN间接学习算法以及BP有监督直接学习算法,对SNN来说,最常见的是用无监督学习算法的训练,这个算法描述起来挺简单的,如果前继神经元发放,当天神经元也跟着发放,那么两个神经元之间的突触强度就会增加;如果当前神经元发放后前继神经元才发放,那么突触强度就会减弱。无监督学习算法是目前在生活中得到验证且比较有效的训练方法,但是因为无监督学习算法的训练,有时候并不是真正的work,所以现在很多SNN的训练还是借鉴ANN的训练方法实现。
问题三
姜爱鹏-南京华捷艾米-芯片设计总监
1.RISC-V 的热度最近逐渐升高,RISC-V生态链的完善,对AI芯片是否会有促进作用,会体现在哪些方面?
2. 对应于边缘计算的应用场景,或者对于推理的应用场景,是否有比较好的AI芯片架构可参考?
3.对于降低AI芯片的运算功耗,或者说提高能效比,有哪些好的建议?或者说有设计规则需要遵守?
冯杰: 1、RISC-V生态链的完善对AI芯片有极大的促进作用,我认为很多AI芯片都有用到RISC-V的机会,之所以现在还有很多人有顾虑,就是因为RISC-V的生态链不够完善,导致很多人担心未来是否还会发展的问题。其实这也不只是AI领域的人会有这种顾虑,其他领域的人肯定也有类似的顾虑。因此,如果生态链完善了,不仅对AI芯片有极大的促进作用,还会对其他很多行业有很大的促进作用。
2、AI芯片有各种各样的架构,每个架构都有自己的特点,关键是取决于应用场景,比如Tianjic,最大的优点是高算力、低功耗、高扩展性以及高并行度,如果应用场景需要这些特点,那么Tianjic就是很好的AI芯片。
3、首先,在IC设计中有一系列降低功耗的手段;其次,功耗与芯片的架构有极大的关系,比如Tianjic的存算一体,所有的数据都在本地操作,这样带来的功耗损失就变少了,又比如,有的芯片虽然算力还不错,但是真正把网络运行起来能发挥的效率并不高,这种情况下,它的功耗是很高的。最后,功耗还跟算法有关,如何把硬件的算力发挥出来,很多时候是需要让算法和硬件进行匹配的,比如Tianjic,会在工具链中自动编译优化,把客户的网络以最高的效率映射到芯片中进行,省去客户对自己算法的优化过程,同时还节省了功耗。
问题四
孙中-西工大-SoC设计与验证研究生
类脑芯片设计的难点在哪? 在没有杀手级应用情况下,如何做验证?
冯杰: 个人认为,在现有的工艺条件下,芯片的架构设计是最重要的,因为架构整个芯片的基因,决定了芯片的性能。至于杀手级应用也是由芯片的性能决定的,如果芯片性能高,使用灵活,能很好地支持现有的应用,那就可以验证芯片的性能了。至于是否能够胜任现有的或者将来的重量级应用,需要通过实际的案例来给出答案。
问题五
韩少锋-caveDSP-FAE
1. 经过灵汐的工具链映射编译之后,量化的位宽是8位还是16位的?典型网络的精度如何?相比浮点网络有多少损失?
2.是否支持4bit网络?是否支持4bit以下的网络,比如二值网络?
冯杰: 1、Tianjic芯片支持FP16的数据类型,网络的精度由算法和客户提供的参数决定,我们编译器不会对客户的网络参数进行任何的修改,我们希望提供给客户足够的算力,保持客户原始的参数,当然也会保持网络原始的精度,而不会做任何修改。
2、Tianjic芯片能够高效的支持是FP16、int8、三值和二值网络,同时我们不会对网络参数进行修改。
问题六
梁伟强-上海高清-芯片研发经理
类脑芯片的架构是模仿人的大脑设计出来的吗?和常规的神经网络有什么本质区别?
冯杰: 类脑芯片架构是受大脑的启发设计出来的,它能高效支持人工神经网络和神经动力学网络等各种神经网络算法,所以从芯片运行的角度看,我们认为应用在不同的神经网络下是没有什么不同的。
问题七
李文昌-深度科技-行业总监
1.相关场景的应用开发者或公司多么,需要哪些知识储备?
2.商业模式会有创新么?
冯杰: 1、芯片的应用取决于应用场景,很多人工智能的应用我们都支持,Tianjic能高效支持ANN和SNN。现在已经有挺多的公司在跟我们洽谈中。除了必备的应用相关知识以外,并不需要其他专门的知识储备,我们的工具链会提供强大而易用的工具给客户。
2、关于创新,创新是灵汐科技的灵魂,不管是技术还是商业模式上我们都一直在创新。当然,我主要关注技术的创新,而商业的创新主要是由我的同事梅迪来负责,如果有这方面的问题,你可以询问他,我们会有后期的商务活动,比如10月23号在北京的安博会上,我们会有相关产品的展览,希望大家到时候多多支持。
问题八
刘发强-清华大学-类脑计算研究中心博士生
类脑芯片的神经元是不是必须用模拟电路实现才可以更好地发挥出其功耗优势?
冯杰: 神经元可以通过多种方式实现,包括模拟电路、数字电路以及新材料等都可以实现,至于哪种方式更省功耗,则需要跟实际应用相结合,从系统的角度来分析每一个具体的任务需要花费的算力,才能确定消耗的功耗,而不能一句话去敲定哪一种是最省功耗的方式。
问题九
何军-上海高性能集成电路设计中心-高级工程师
虽然都是AI芯片,但是类脑芯片与基于深度学习的芯片有较大不同,能否比较一下,包括适合的应用、通用性、功耗和未来的发展方向等?
冯杰: Tianjic跟传统的AI芯片从架构上来讲确实有很大的不同,由于Tianjic既高效支持深度学习算法,又高效支持SNN算法,因此能应用在现有的各个AI领域,而且功耗比较低,算力功耗比高,对于这些特点具体的值,我们以后会统一公布。我们对类脑芯片的发展很看好,关于神经动力学算法的短腿也一定会补起来的。以前我们主要是缺乏高效运行的SNN硬件平台,并且已有的平台比如TrueNorth是不对中国人开放的,我们的平台推出了以后,相信会为SNN的发展做出贡献,为整个人工智能的发展做出贡献,也为国内想从事SNN研究的朋友提供更大的便利,谢谢。
问题十
贾晓云-中科院微电子所-助理研究员
国内人工智能芯片企业与国外巨头竞争力如何?
冯杰: 可以看到近几年来,国内诞生了很多人工智能芯片企业,并且发展的速度很快,势头也很好。但是目前来看,国际巨头的产品还是处在领先地位,我们还需要继续努力,不过我们有信心,这也是灵汐科技进入这个领域的原因,我们会脚踏实地地往前走,希望能够超越国际巨头,谢谢。
问题十一
梁龙飞-上海新氦类脑智能科技-副总经理
类脑芯片产业发展目前最大的瓶颈在哪里?
冯杰: 从国内的情况来看,整个人工智能的发展包括类脑芯片的产业发展是比较分散的,如果能够把所有的力量都集中起来,相信能够很快的发展,人工智能芯片国内外的起跑线差不多,相信一起共同努力是不会落后于国外多少的,尤其是ASIC芯片。
问题十二
李海东-广智微芯-IC工程师
Tianjic基于SNN,在single chip和chip array上,有哪些商业化的应用?
冯杰: Tianjic不是基于SNN的,而是基于众核架构的类脑芯片,我们对ANN、SNN都有很好的支持,所以无论是Single Chip还是Chip Array都取决于客户的实际要求,单芯片的算力比较大,组成Chip Array当然就更大,如果客户需要用到这么大的算力,自然是可以去扩展的,但是如果用不着的话,也就没必要去拓展,主要取决于实际的商业需求。
课件下载
第一讲,联发科计算与人工智能本部总监张家源主讲,主题为《如何基于 NeuroPilot平台打造手机AI》
第二讲,深思考人工智能CEO杨志明主讲,主题为《医疗影像专用AI处理器的机遇与挑战》
第三讲,触景无限CEO肖洪波主讲,主题为《玩转模块化AI 让智能更简单》
第四讲,灵汐科技首席架构师冯杰主讲,主题为《类脑芯片的架构演进》
第五讲,华登国际合伙人王林主讲,主题为《浅谈AI带来的集成电路领域创新与投资机会》
第六讲,澎峰科技联合创始人赵华龙主讲,主题为《如何从0到1搭建RISC-V处理器》
关注智东西公开课服务号,回复关键词“课件”获取AI芯片系列课课件
新课预告
继AI芯片系列课之后8月7日起,自动驾驶系列课第三季重磅上线了!这次我们邀请到了青飞智能、中创博远、易成自动驾驶、酷哇、西井科技、深兰科技、北科天绘、腾讯8位创始人和技术大牛,深度解析限定场景自动驾驶商用车落地案例。名额有限,速速报名!
研究电子器件的封装缺陷和失效
文章整理自EDA365D电子论坛 <FPGA|CPLD论坛>电子器件是一个非常复杂的系统,其封装过程的缺陷和失效也是非常复杂的。因此,研究封装缺陷和失效需要对封装过程有一个系统性的了解,这样才能从多个角度去分析缺陷产生的原因 。
封装缺陷与失效的研究方法论
封装的失效机理可以分为两类:过应力 和磨损 。
过应力失效往往是瞬时的、灾难性的;磨损失效是长期的累积损坏,往往首先表示为性能退化,接着才是器件失效。失效的负载类型又可以分为机械、热、电气、辐射和化学负载等。
影响封装缺陷和失效的因素是多种多样的, 材料成分和属性、封装设计、环境条件和工艺参数等都会有所影响。 确定影响因素是预防封装缺陷和失效的基本前提。
影响因素可以通过试验或者模拟仿真的方法来确定,一般多采用物理模型法和数值参数法。 对于更复杂的缺陷和失效机理,常常采用试差法确定关键的影响因素,但是这个方法需要较长的试验时间和设备修正,效率低、花费高。
在分析失效机理的过程中, 采用鱼骨图(因果图)展示影响因素是行业通用的方法。 鱼骨图可以说明复杂的原因及影响因素和封装缺陷之间的关系,也可以区分多种原因并将其分门别类。
生产应用中,有一类鱼骨图被称为6Ms:从机器、方法、材料、量度、人力和自然力等六个维度分析影响因素。
这一张图所示的是展示塑封芯片分层原因的鱼骨图,从设计、工艺、环境和材料四个方面进行了分析。通过鱼骨图,清晰地展现了所有的影响因素,为失效分析奠定了良好基础。
引发失效的负载类型
如上一节所述,封装的负载类型可以分为机械、热、电气、辐射和化学负载。
1、失效机理的分类
机械载荷:包括物理冲击、振动、填充颗粒在硅芯片上施加的应力(如收缩应力)和惯性力(如宇宙飞船的巨大加速度)等。 材料对这些载荷的响应可能表现为弹性形变、塑性形变、翘曲、脆性或柔性断裂、界面分层、疲劳裂缝产生和扩展、蠕变以及蠕变开裂等等。
热载荷:包括芯片黏结剂固化时的高温、引线键合前的预加热、成型工艺、后固化、邻近元器件的再加工、浸焊、气相焊接和回流焊接等等。 外部热载荷会使材料因热膨胀而发生尺寸变化,同时也会改变蠕变速率等物理属性。如发生热膨胀系数失配(CTE失配)进而引发局部应力,并最终导致封装结构失效。过大的热载荷甚至可能会导致器件内易燃材料发生燃烧。
电载荷:包括突然的电冲击、电压不稳或电流传输时突然的振荡(如接地不良)而引起的电流波动、静电放电、过电应力等。 这些外部电载荷可能导致介质击穿、电压表面击穿、电能的热损耗或电迁移。也可能增加电解腐蚀、树枝状结晶生长,引起漏电流、热致退化等。
化学载荷:包括化学使用环境导致的腐蚀、氧化和离子表面枝晶生长。 由于湿气能通过塑封料渗透,因此在潮湿环境下湿气是影响塑封器件的主要问题。
被塑封料吸收的湿气能将塑封料中的催化剂残留萃取出来,形成副产物进入芯片粘接的金属底座、半导体材料和各种界面,诱发导致器件性能退化甚至失效。
例如,组装后残留在器件上的助焊剂会通过塑封料迁移到芯片表面。在高频电路中,介质属性的细微变化(如吸潮后的介电常数、耗散因子等的变化)都非常关键。在高电压转换器等器件中,封装体击穿电压的变化非常关键。
此外,一些环氧聚酰胺和聚氨酯如若长期暴露在高温高湿环境中也会引起降解(有时也称为“逆转”)。通常采用加速试验来鉴定塑封料是否易发生该种失效。
需要注意的是,当施加不同类型载荷的时候,各种失效机理可能同时在塑封器件上产生交互作用。
例如,热载荷会使封装体结构内相邻材料间发生热膨胀系数失配,从而引起机械失效。其他的交互作用,包括应力辅助腐蚀、应力腐蚀裂纹、场致金属迁移、钝化层和电解质层裂缝、湿热导致的封装体开裂以及温度导致的化学反应加速等等。在这些情况下,失效机理的综合影响并不一定等于个体影响的总和。
封装缺陷的分类
封装缺陷主要包括引线变形、底座偏移、翘曲、芯片破裂、分层、空洞、不均匀封装、毛边、外来颗粒和不完全固化等。
1、引线变形
引线变形通常指塑封料流动过程中引起的引线位移或者变形,通常采用引线最大横向位移x与引线长度L之间的比值x/L来表示。引线弯曲可能会导致电器短路(特别是在高密度I/O器件封装中)。有时,弯曲产生的应力会导致键合点开裂或键合强度下降。
影响引线键合的因素包括封装设计、引线布局、引线材料与尺寸、模塑料属性、引线键合工艺和封装工艺等。 影响引线弯曲的引线参数包括引线直径、引线长度、引线断裂载荷和引线密度等等。
2、底座偏移
底座偏移指的是支撑芯片的载体(芯片底座)出现变形和偏移。
如图所示为塑封料导致的底座偏移,此时,上下层模塑腔体内不均匀的塑封料流动会导致底座偏移。
影响底座偏移的因素包括塑封料的流动性、引线框架的组装设计以及塑封料和引线框架的材料属性。 薄型小尺寸封装(TSOP)和薄型方形扁平封装(TQFP)等封装器件由于引线框架较薄,容易发生底座偏移和引脚变形。
3、翘曲
翘曲是指封装器件在平面外的弯曲和变形。 因塑封工艺而引起的翘曲会导致如分层和芯片开裂等一系列的可靠性问题。 翘曲也会导致一系列的制造问题,如在塑封球栅阵列(PBGA)器件中,翘曲会导致焊料球共面性差,使器件在组装到印刷电路板的回流焊过程中发生贴装问题。
3、翘曲模式包括内凹、外凸和组合模式三种
导致翘曲的原因主要包括CTE失配和固化/压缩收缩。 后者一开始并没有受到太多的关注,深入研究发现,模塑料的化学收缩在IC器件的翘曲中也扮演着重要角色,尤其是在芯片上下两侧厚度不同的封装器件上。在固化和后固化的过程中,塑封料在高固化温度下将发生化学收缩,被称为“热化学收缩”。通过提高玻璃化转变温度和降低Tg附近的热膨胀系数变化,可以减小固化过程中发生的化学收缩。
导致翘曲的因素还包括诸如塑封料成分、模塑料湿气、封装的几何结构等等。通过对塑封材料和成分、工艺参数、封装结构和封装前环境的把控,可以将封装翘曲降低到最小。在某些情况下,可以通过封装电子组件的背面来进行翘曲的补偿。 例如,大陶瓷电路板或多层板的外部连接位于同一侧,对他们进行背面封装可以减小翘曲。
4、芯片破裂
封装工艺中产生的应力会导致芯片破裂。 封装工艺通常会加重前道组装工艺中形成的微裂缝。晶圆或芯片减薄、背面研磨以及芯片粘结都是可能导致芯片裂缝萌生的步骤。
破裂的、机械失效的芯片不一定会发生电气失效。芯片破裂是否会导致器件的瞬间电气失效还取决于裂缝的生长路径。例如,若裂缝出现在芯片的背面,可能不会影响到任何敏感结构。
因为硅晶圆比较薄且脆,晶圆级封装更容易发生芯片破裂。因此,必须严格控制转移成型工艺中的夹持压力和成型转换压力等工艺参数,以防止芯片破裂。 3D堆叠封装中因叠层工艺而容易出现芯片破裂。在3D封装中影响芯片破裂的设计因素包括芯片叠层结构、基板厚度、模塑体积和模套厚度等。
5、分层
分层或粘结不牢指的是在塑封料和其相邻材料界面之间的分离。分层位置可能发生在塑封微电子器件中的任何区域;同时也可能发生在封装工艺、后封装制造阶段或者器件使用阶段。
封装工艺导致的不良粘接界面是引起分层的主要因素。 界面空洞、封装时的表面污染和固化不完全都会导致粘接不良。其他影响因素还包括固化和冷却时收缩应力与翘曲。在冷却过程中,塑封料和相邻材料之间的CTE不匹配也会导致热-机械应力,从而导致分层。
可以根据界面类型对分层进行分类
6、空洞
封装工艺中,气泡嵌入环氧材料中形成了空洞,空洞可以发生在封装工艺过程中的任意阶段,包括转移成型、填充、灌封和塑封料至于空气环境下的印刷。通过最小化空气量,如排空或者抽真空,可以减少空洞。有报道采用的真空压力范围为1~300Torr(一个大气压为760Torr)。
填模仿真分析认为,是底部熔体前沿与芯片接触,导致了流动性受到阻碍。部分熔体前沿向上流动并通过芯片外围的大开口区域填充半模顶部。新形成的熔体前沿和吸附的熔体前沿进入半模顶部区域,从而形成起泡。
7、不均匀封装
非均匀的塑封体厚度会导致翘曲和分层。 传统的封装技术,诸如转移成型、压力成型和灌注封装技术等,不易产生厚度不均匀的封装缺陷。晶圆级封装因其工艺特点,而特别容易导致不均匀的塑封厚度。
为了确保获得均匀的塑封层厚度,应固定晶圆载体使其倾斜度最小以便于刮刀安装。此外,需要进行刮刀位置控制以确保刮刀压力稳定,从而得到均匀的塑封层厚度。
在硬化前,当填充粒子在塑封料中的局部区域聚集并形成不均匀分布时,会导致不同质或不均匀的材料组成。塑封料的不充分混合将会导致封装灌封过程中不同质现象的发生。
8、毛边
毛边是指在塑封成型工艺中通过分型线并沉积在器件引脚上的模塑料。
夹持压力不足是产生毛边的主要原因。 如果引脚上的模料残留没有及时清除,将导致组装阶段产生各种问题。例如,在下一个封装阶段中键合或者黏附不充分。树脂泄漏是较稀疏的毛边形式。
9、外来颗粒
在封装工艺中,封装材料若暴露在污染的环境、设备或者材料中,外来粒子就会在封装中扩散并聚集在封装内的金属部位上(如IC芯片和引线键合点),从而导致腐蚀和其他的后续可靠性问题。
10、不完全固化
固化时间不足或者固化温度偏低都会导致不完全固化。 另外,在两种封装料的灌注中,混合比例的轻微偏移都将导致不完全固化。为了最大化实现封装材料的特性,必须确保封装材料完全固化。在很多封装方法中,允许采用后固化的方法确保封装材料的完全固化。而且要注意保证封装料比例的精确配比。
封装失效的分类
在封装组装阶段或者器件使用阶段,都会发生封装失效。 特别是当封装微电子器件组装到印刷电路板上时更容易发生,该阶段器件需要承受高的回流温度,会导致塑封料界面分层或者破裂。
1、分层
如上一节所述,分层是指塑封材料在粘接界面处与相邻的材料分离。可能导致分层的外部载荷和应力包括水汽、湿气、温度以及它们的共同作用。
在组装阶段常常发生的一类分层被称为水汽诱导(或蒸汽诱导)分层,其失效机理主要是相对高温下的水汽压力。
在封装器件被组装到印刷电路板上的时候,为使焊料融化温度需要达到220℃甚至更高,这远高于模塑料的玻璃化转变温度(约110~200℃)。
在回流高温下,塑封料与金属界面之间存在的水汽蒸发形成水蒸气,产生的蒸汽压与材料间热失配、吸湿膨胀引起的应力等因素共同作用,最终导致界面粘接不牢或分层,甚至导致封装体的破裂。
无铅焊料相比传统铅基焊料,其回流温度更高,更容易发生分层问题。
2、吸湿膨胀系数(CHE),又称湿气膨胀系数(CME)
湿气扩散到封装界面的失效机理是水汽和湿气引起分层的重要因素。
湿气可通过封装体扩散,或者沿着引线框架和模塑料的界面扩散。研究发现,当模塑料和引线框架界面之间具有良好粘接时,湿气主要通过塑封体进入封装内部。
但是,当这个粘结界面因封装工艺不良(如键合温度引起的氧化、应力释放不充分引起的引线框架翘曲或者过度修剪和形式应力等)而退化时,在封装轮廓上会形成分层和微裂缝,并且湿气或者水汽将易于沿这一路径扩散。
更糟糕的是,湿气会导致极性环氧黏结剂的水合作用,从而弱化和降低界面的化学键合。
表面清洁是实现良好粘结的关键要求。 表面氧化常常导致分层的发生(如上一篇中所提到的例子),如铜合金引线框架暴露在高温下就常常导致分层。氮气或其他合成气体的存在,有利于避免氧化。
模塑料中的润滑剂和附着力促进剂会促进分层。 润滑剂可以帮助模塑料与模具型腔分离,但会增加界面分层的风险。另一方面,附着力促进剂可以确保模塑料和芯片界面之间的良好粘结,但却难以从模具型腔内清除。
分层不仅为水汽扩散提供了路径,也是树脂裂缝的源头。 分层界面是裂缝萌生的位置,当承受交大外部载荷的时候,裂缝会通过树脂扩展。
研究表明,发生在芯片底座地面和树脂之间的分层最容易引起树脂裂缝,其它位置出现的界面分层对树脂裂缝的影响较小。
3、气相诱导裂缝(爆米花现象)
水汽诱导分层进一步发展会导致气相诱导裂缝。 当封装体内水汽通过裂缝逃逸时会产生爆裂声,和爆米花的声音非常像,因此又被称为爆米花现象。
裂缝常常从芯片底座向塑封底面扩展。在焊接后的电路板中,外观检查难以发现这些裂缝。QFP和TQFP等大而薄的塑封形式最容易产生爆米花现象;此外也容易发生在芯片底座面积与器件面积之比较大、芯片底座面积与最小塑封料厚度之比较大的的器件中。
爆米花现象可能会伴随其他问题,包括键合球从键合盘上断裂以及键合球下面的硅凹坑等。
塑封器件内的裂缝通常起源于引线框架上的应力集中区(如边缘和毛边),并且在最薄塑封区域内扩展。 毛边是引线框架表面在冲压工艺中产生的小尺寸变形,改变冲压方向使毛边位于引线框架顶部,或者刻蚀引线框架(模压)都可以减少裂缝。
减少塑封器件内的湿气是降低爆米花现象的关键。常采用高温烘烤的方法减少塑封器件内的湿气。 前人研究发现,封装内允许的安全湿气含量约为1100×10^-6(0.11 wt.%)。在125℃下烘烤24h,可以充分去除封装内吸收的湿气。
4、脆性断裂
脆性断裂经常发生在低屈服强度和非弹性材料中(如硅芯片)。 到材料受到过应力作用时,突然的、灾难性的裂缝扩展会起源于如空洞、夹杂物或不连续等微小缺陷。
5、韧性断裂
塑封材料容易发生脆性和韧性两种断裂模式,主要取决于环境和材料因素,包括温度、聚合树脂的黏塑特性和填充载荷。
即使在含有脆性硅填料的高加载塑封材料中,因聚合树脂的黏塑特性,仍然可能发生韧性断裂。
6、疲劳断裂
塑封料遭受到极限强度范围内的周期性应力作用时,会因累积的疲劳断裂而断裂。
施加到塑封材料上的湿、热、机械或综合载荷,都会产生循环应力。 疲劳失效是一种磨损失效机理,裂缝一般会在间断点或缺陷位置萌生。
疲劳断裂机理包括三个阶段:裂纹萌生(阶段Ⅰ);稳定的裂缝扩展(阶段Ⅱ);突发的、不确定的、灾难性失效(阶段Ⅲ)。在周期性应力下,阶段Ⅱ的疲劳裂缝扩展指的是裂缝长度的稳定增长。塑封材料的裂纹扩展速率要远高于金属材料疲劳裂缝扩展的典型值(约3倍)。
7、加速失效的因素
环境和材料的载荷和应力,如湿气、温度和污染物,会加速塑封器件的失效。
塑封工艺正在封装失效中起到了关键作用,如湿气扩散系数、饱和湿气含量、离子扩散速率、热膨胀系数和塑封材料的吸湿膨胀系数等特性会极大地影响失效速率。
导致失效加速的因素主要有潮气、温度、污染物和溶剂性环境、残余应力、自然环境应力、制造和组装载荷以及综合载荷应力条件。
潮气 能加速塑封微电子器件的分层、裂缝和腐蚀失效。 在塑封器件中, 潮气是一个重要的失效加速因子。
与潮气导致失效加速有关的机理包括粘结面退化、吸湿膨胀应力、水汽压力、离子迁移以及塑封料特性改变等等。潮气能够改变塑封料的玻璃化转变温度Tg、弹性模量和体积电阻率等特性。
温度 是另一个关键的失效加速因子,通常利用与模塑料的玻璃化转变温度、各种材料的热膨胀洗漱以及由此引起的热-机械应力相关的温度等级来评估温度对封装失效的影响。
温度对封装失效的另一个影响因素表现在会改变与温度相关的封装材料属性、湿气扩散系数和金属间扩散等失效。
污染物和溶剂性环境 污染物为失效的萌生和扩展提供了场所,污染源主要有大气污染物、湿气、助焊剂残留、塑封料中的不洁净例子、热退化产生的腐蚀性元素以及芯片黏结剂中排出的副产物(通常为环氧)。
塑料封装体一般不会被腐蚀,但是湿气和污染物会在塑封料中扩散并达到金属部位,引起塑封器件内金属部分的腐蚀。
残余应力 芯片粘结会产生单于应力。 应力水平的大小,主要取决于芯片粘接层的特性。由于模塑料的收缩大于其他封装材料, 因此模塑成型时产生的应力是相当大的。可以采用应力测试芯片来测定组装应力。
自然环境应力 在自然环境下,塑封料可能会发生降解。降解的特点是聚合键的断裂,常常是固体聚合物转变成包含单体、二聚体和其他低分子量种类的黏性液体。
升高的温度和密闭的环境常常会加速降解。阳光中的紫外线和大气臭氧层是降解的强有力催化剂,可通过切断环氧树脂的分子链导致降解。
将塑封器件与易诱发降解的环境隔离、采用具有抗降解能力的聚合物都是防止降解的方法。需要在湿热环境下工作的产品要求采用抗降解聚合物。
制造和组装载荷 制造和组装条件都有可能导致封装失效,包括高温、低温、温度变化、操作载荷以及因塑封料流动而在键合引线和芯片底座上施加的载荷。进行塑封器件组装时出现的爆米花现象就是一个典型的例子。
综合载荷应力条件 在制造、组装或者操作的过程中,诸如温度和湿气等失效加速因子常常是同时存在的。综合载荷和应力条件常常会进一步加速失效。 这一特点常被应用于以缺陷部件筛选和易失效封装器件鉴别为目的的加速试验设计。
EDA365是30余万电子工程师信赖的技术交流提升平台,我们不仅有可爱的阿杜、阿毛老师 ,神秘的John大神 ,还有超过50位版主,其中不乏世界500强企业的首席专家,涉及硬件设计 、芯片封装 、射频微波 、电磁兼容 、PCB设计 、SI&PI 、制造工艺 、研发管理等 多个领域。您可以在EDA365对应栏目进行学习,有自己解决不了的问题亦可发帖询问,除了行业大神,还有EDA365特邀大咖 版主为您“排忧解惑”。【如果你喜欢EDA365的文章,记得关注和点赞哦!】
相关问答
芯片分层原理?
第一导电层分隔形成多个具有彼此隔断的连接区域;芯片固定于第一导电层表面,芯片的电路引出端与相应的连接区域连接,与电路引出端连接的连接区域设置有贯穿散...
芯片如何分层刻蚀?
芯片一般通过涂膜、物理化学气象沉积等方法分层刻蚀。晶圆厂商使用4种最基本的工艺方法,通过大量的工艺顺序和工艺变化制造出特定的芯片。这些最基本的工艺方...
芯片多层电路是怎么实现的?
主要是靠分层蚀刻来实现多层电路。芯片的多层电路一般是需要通过分层蚀刻来实现的。通过物理化学气象沉积、涂膜等方法分层刻蚀。晶圆厂制造复杂芯片可能多达...
主板分层是怎么个意思啊?
计算机主板分层是指计算机主板上的不同层次的电子元件和电路板。主板通常由多个层次的电路板组成,每个电路板负责不同的功能。比如,顶层电路板是面向用户的,用...
这是什么原因?海信LED43K510G3D电视机图像上下分层?
屏闪、屏抖动等屏幕故障的常见原因是:一,屏幕本身质量问题,屏幕老化或者是劣质品,二,屏线接触不会或者损害,三主板屏幕供电不正常或者是显卡BGA封装芯片...
苹果12主板分层换电源芯片耐用吗?
苹果12主板分层换电源芯片耐用苹果手机一旦主板经过维修之后,这样的手机都是有暗病的,因为现在很多的苹果手机目前都是双层主板的设计,一旦出现过维修那机器...
什么是存储器的分层结构?-184****5015的回答-懂得
存储器的分层结构是指微机的存储器系统由寄存器、Cache、主存储器、磁盘、光盘等多个层次由上至下排列组成。分层结构的顶端,存储访问速度最快,单位...
CEM-3钻孔出现分层不良-VqdDMfhr的回答-懂得
太专业了吧1.首先确认是钻孔的问题还是板材的问题2.确认板材的问题就直接过热应力测试:260°或者288°的锡炉,侵锡3次/10秒,如果做了去打切片看,没...
光刻机怎么刻出多层晶体管?
可以刻几层至几十层,甚至上百层。光刻机刻制芯片,根据芯片的设计需求,可以刻制少到几层,多到几十层甚至上百层。光刻工艺按照芯片设计布图(Layout),一层一...
为什么ipad拍照电子屏幕分层?
1、平板内含的GPU芯片或内存有问题,导致时间长后有问题。你可看看发热的情况,如时间长发热量大,就可能是这个问题。2、也可能是软件冲突,你可以看下说明书...