- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
半导体特征循环与可重构芯片
1 引言
1965 年,摩尔用三个集成电路产品集成度随时间的增长数据,外加1959 年的晶体管(集成度为1)和1965 年预计可推出的实验室产品(有64 个元件),用半对数坐标,外插预测到十年后集成电路的集成度将达到65,000 个元件。1975 年预测成真,随后被称为“摩尔定律”。近40 年来,“摩尔定律”作为半导体发展的指南针对整个产业的发展产生了重大影响。由此我们可以体会到总结规律、预测发展的重要意义。半导体产品是半导体技术的载体,也是半导体经济的体现。因此,总结半导体产品的发展规律,就成为另外一个重要的课题。
2 牧村浪潮与半导体产品特征循环
2.1 牧村浪潮
1987 年, 原日立公司总工程师牧村次夫(Tsugio Makimoto)提出半导体产品沿着“标准”与“定制”交替发展,每十年波动一次的思想,并于1991 年[2]第一次发表在Electronics Weekly上,称之为“牧村浪潮”(Makimoto’s Wave)。当时,他总结与预测的时间尺度为1957-2007 年,共五次波动,如图1(上图)所示。2001 年(一说2002年)[3]他根据新的发展形势,在原循环图上又增加了一个以soc/SiP(System on a chip/system in a package)为特征的定制波动,时段为2007-2017年,如图1(下图)所示。近年来可编程芯片的高速发展,验证了“牧村浪潮”的正确性,因而得到了Xilinx、Altera等可编程芯片商的响应,反响颇大。德国Kaiserslauterin大学Hartenstein教授甚至把“牧村浪潮” 称为“牧村定律”,认为在半导体技术逼近其极限的情况下,“牧村定律”完全可以成为超过摩尔定律的一张王牌,半导体技术也只有依靠“牧村定律”才能维持其高增长的创新速度。
2.2 半导体产品特征循环
1987 年,我们采用中德电子周报告会一篇有关半导体产品制造与应用的交叉分类方法(分为通用标准、专用标准、通用定制和专用定制四类),从“造”与“用”的对立统一运动出发,以“应用”为矛盾的主要方面,总结出了半导体产品主要特征将沿着“通用”与“专用”循环波动,每十年一次,见图2(上图)。这一提法于 1990-91 年在童志鹏院士组织编写《未来军事电子》[5]一书时,以“硅微电子产品史上的六次波动2”为子节编入。考虑到产品成熟应用并形成主流又比技术本身迟后十年,因而六次波动所对应的时间分别为1958-1968 年(半导体分立器件)、1968-1978(电视、音响等专用标准产品ASSP )、1978-1988 ( 微处理器MPU )、1988-1998(掩膜编程等专用电路ASIC)、1998-2008(用户可编程等电路FPGA)和2008-2018(片上集成系统SoW-亦即现在讲的SoC),并与本书的另一子节“硅微电子发展史上的七次浪潮”(1948-58,晶体管;1958-68,SSI/MSI;1968-78, LSI;1978-88,VLSI;1988-98,ULSI;1998-2008,GLSI;2008-18,WSI)按产品成熟应用滞后技术十年的关系,在时间上一一对应起来。其中第七次浪潮(2008-18 年)所对应的通用波动(第七波),当时由于尚难确定其应用特征,因此用“ ”表示。在2000 年[6]我们拉直了这个问号,指出其主流产品为多功能芯片(MFIC),稍后更名为“用户可重构SoC”(U-SoC),而第六波则明确为嵌入式编程芯片(EBIC),如图2(下图)所示。
2.3 比较
如上所述,我们提出的“产品特征循环”与牧村先生的“浪潮”在前六个波动大致相同。但是,我们预测时段比牧村长20 年、多两个波动[5]。其中第六个(专用)波动,牧村先生到2001 [3](或2002)年时也才在他的“浪潮”修正中,补充了进去。我们当时用SoW(System on a Wafer)表征第六波主流应用产品,SoW就是现在讲的SoC;牧村先生则以SoC/SiP为表征。
其次,我们当时就同时预见到第七波(通用)的可能。但从目前收集到的资料看,第七波是否存在还有分歧:牧村先生在2003 年[4]再度修正的报告中,仍然仅仅提到第六波(定制),而Hartenstein教授则明确表示不再有新的波动了[7]。我们从他对“牧村浪潮”波形的修正中(见图3)可以看到,他把第五波(标准)的主流产品可编程改成了可重构,并把第六波(定制)修改为半浅波,以粗粒度可编程芯片为主特征。从此可以猜想到,他或许认为第五波就开始了可重构特征,而第六波不过是第五波的一个过渡而已。Hartenstein教授在可重构计算(Reconfigurable Computer)方面深有 研究,他的看法是否有道理,要在今后的发展中判断。我们之所以认为还存在第七波(通用),当时仅从发展规律上考虑到与微电子技术发展中的第七次浪潮(2008-2018,或许是传统硅微电子技术的最后一个浪潮)相呼应[5]。随后,我们从技术本身发展上认识到,可重构计算是一个难度颇大,涉及面甚广的课题,尽管当前很多人在研究,但是无论在器件结构、系统结构还是在设计方法学方面,均存在不少问题,仍有很长的路要走。我们相信,可重构计算技术的发展,终将推动主流应用进入U-soc通用波动,仅仅通过对“毛坯芯片” (Raw Chip)的配置编程就可以得到用户自定义的功能电路,从而引导半导体产业结构演变,促进不做芯片设计而专事芯片应用创新的Designless 商业模式的新兴起[8]。
另外,两者在在时间轴上也不尽相同。其一,起点我们之所以定于1958、1968……是考虑到虽然晶体管的发明时间是1947 年12 月,但申请专利则在1948 年,而且迟到1956 年晶体管主要发明人肖克莱才开始创办公司(日本公司也大约在此时间里才开始把晶体管用于收音机)。因此,晶体管成熟应用并成为主流约在1958-1968 年间;起点为1958年。同样,1958 年9 月TI公司Jack S Killby发明台式锗集成电路,1959 年1 月Farchild公司RobertNoyce发明硅平面集成电路,他们两人的专利申请分别迟到1964(Killby)年和1961 年(Noyce)才获得授权。因此,中、小规模集成电路作为专用标准产品(ASSP)应用于电视、音响并成为主流则大约位于1968-1978 年间;起点为1968 年。其他波动循环的主流产品与技术出现的时间对应关系,也大致如此。这里需要特别提出的是,1980 年代中出现的可编程器件(如FPGA),只是在1990 年代才逐渐成熟,并在规模应用与生产中,显示出价格优势而对ASIC形成压力。这个事实表明,产品特性循环所预示的可编程器件成熟应用并成为主流的时间段 (1998-2008)是正确的。据此,我们确有充分理由相信,嵌入式系统级芯片成熟并成为主流的时间段为2008-2018,以及随后第七波(2018 -2028)存在的合理性与合乎规律性了。ISuppli也认为牧村浪潮已经走到尽头,新一轮的“标准”波动继续驱动半导体工业增长[9]。其二,终点我们预测在2028 年,这跟我们早年关于传统硅的生命曲线研究有关。研究表明,基于近平衡态物理的硅微电子技术将于2014-2017 年进入其S曲线的拐点,发展速度明显放慢,摩尔定律失效。这时,硅微电子的创新则主要依赖于芯片设计方法学的进步[10]。
[p]3 特征循环与可重构芯片
“用”与”造”的对立统一律是包括可重构技术在内的硅产业发展的一个主线索。目前,应用需求推动SoC 市场产值正在以颇高的速度增长。在这种发展背景下,至少突出了两对难以逾越的、规律性的矛盾:其一是大家所熟知的“产品复杂度日益上升”与“产品价格日益下降”的矛盾;其二是正在逐渐被大家所感知着的矛盾,即在“个性化”要求这个永恒“定律”的发展中,出现了“应用市场日益分散”与“产品开发费用日益增大”的矛盾。面对这两个矛盾,需要对产品体系结构及其设计方法进行革命性的改造,力争把“定制”与“大规模生产”两个相互矛盾的事物协调起来,实现“大规模定制生产” (Mass Customization)。可重构技术能够满足这一要求,因此在半导体产品中采用可重构技术是符合发展潮流的。
产品特征循环(图2)共历三个专用和四个通用波动。十分有意义的是,从中我们看到了辩证思维的足迹。首先,三个专用波动的主流产品分别是分类应用的 ASSP、为某个应用定制的ASIC 和制造后可在一定应用领域再定义的ASPP,ASPP 是ASSP 的螺旋“复归”。其次,前三个通用波动期的主流产品分别是功能单一的半导体分立器件(Tr)、通过顺序指令存储编程达到通用的微处理器(MPU)和通过硬布线编程达到通用目的现场可编程器件(FPGA)。
从MPU 的“软”编程到FPGA 的“硬”编程看,一个逻辑的发展应是“硬”、“软”均可编程,即算法可编程、可重构器件也可编程的U-SoC。从另一个角度看,产品特征循环还历经了三个半循环,我们进一步讨论其最终将过渡到U-SoC 的演变规律。
第一个通用与专用循环(1958-1978)的主流应用产品是Tr和中小规模ASSP。其特点是纯硬件设计,即用构筑特定物理空间的方法来实现既定算法。第二个循环(1978-1998)的主流产品是MPU以及为提高MPU(如加速部件)信息系统性能的ASIC。其根本特点是基于顺序存储的软件编程,即通过指令在时间上的顺序执行来实现既定算法。在这一时期内,基于冯·诺依曼架构的计算机及其 相应软件迅猛发展,形成了历史上独特的Wintel联盟及其长期垄断格局,使集成电路和软件成了信息通信技术(ICT)的支柱产业。第三个循环(1998-2018)主流产品是FPGA和由此推动发展中的嵌入式可编程soc之类的ASPP。其特点是将在时间上的顺序指令编程以及在空间上的器件重构融合在一起来实现既定算法。这大大提高了传统软件的运行效率,提高了信息系统的性能,从而使集成电路设计步入软件设计[11]阶段。第四个循环的上半个周期(2018-2028)则将在上一循环的发展与演变中,通过继承、创新已有成果,逐步完善物理空间可重构的算法与实现方式,成为对第一个循环的“复归”,螺旋上升到可自主动态重构的低功耗、高效率、低成本的配置流(Configuration Stream)系统结构。从而过渡到我们早先提出的MFIC或稍后更名的U-SoC为特征的通用波动。
上述种种分析表明,可重构芯片的涌现符合半导体特征循环规律,它发展成为未来的主流产品有其内在的必然性。下面重点谈谈可重构计算的现状和存在的问题。
3.1 可重构计算
早在1963 年Estrin就在文献[12]中提出了可重构计算(RC, Reconfigurable Computing)的概念,但是直到20 世纪80 年代中期RC才随着FPGA技术的逐渐成熟而重新成为研究热点。可重构计算一词是指集成了某种形式可编程硬件的系统,该可编程硬件的功能可以通过一系列定时变化的物理控制点来定义。这是目前在学术研究中被普遍使用的一种描述。
首先,作为一个完整的系统,可重构计算的研究范畴不但要涉及系统结构、器件构成(可以称之为“类硬件” ,其配置内容可以称为“配件”,它们共同代替传统的硬件),还包括“配件”及“配件”的调度码(可以认为是软件),研究如何生成高效的“配件”以及如何调度“配件”来完成计算的可重构设计方法学也是值得研究的重点。其次,作为体现可重构特性的关键,改变或者配置可重构器件的功能可以通过两种方式实现:一种是重构互连资源,比如可以采取传输门方式或多路选择器方式;另一种是重构处理单元,比如可以采取算数逻辑单元(ALU)、查找表(LUT)和多路选择器(MUX)等方式。目前,大多数的可重构器件中的物理控制点或编程位是连接到SRAM 的,并通过编程SRAM来配置可重构器件,即所谓的基于SRAM 编程。
可重构计算是一种崭新的基于配置流的计算方式。冯·诺依曼机器顺序执行指令的控制流方式限制了最大限度地发掘计算的并行性,在数据流计算机的发展逐渐式微的趋势下,可重构计算有望承担起突破顺序指令对开发并行性制约的重任。数据路径(“类硬件”,通常组织为阵列形式)的任意重构性是可重构计算这种求算方式的立足点,“类硬件”的可变性能够去除传统算法对硬件的依赖性,允许算法使用数据路径中任意可得到的处理单元求算,从而破除受硬件限制而产生的指令顺序性,更大限度地开发计算并行性。
3.2 可重构计算的发展现状及存在的问题
根据可重构处理单元数据路径的位宽,可重构系统可以分为粗颗粒度(Coarse-Grained)和细颗粒度(Fine-Grained)两大类。粗颗粒度结构在灵活性上比细颗粒度结构(如FPGA)要差一些,但是粗颗粒度有以下优点:只需要较少的配置数据;数据以字而不是以位为单位在布线资源上传输,因此只需要较少的控制信号。这些优点使得快速加载配置数据成为可能,从而能够支持动态可重构。
从可重构系统的基本执行模型上来看,可以根据配置动作发生的时间分为编译时(Compile-time)和运行时(Run-time)可重构,也可以叫静态和动态可重构。前者采用静态实现方法,每个应用程序只包括一段配置内容,每次程序执行只配置一次;相反,后者采用一种动态的实现方法,每个应用程序包括多个配置内容,程序执行一次要进行多次配置操作。当单次配置不足以重构整个可重构器件或者只需要配置全部可重构器件中的一部分时,可以采用部分可重构(Partial- Reconfigurable)策略,部分可重构属于运行时可重构。而流水线可重构(Pipeline Reconfigurable)与部分可重构很相似,只是其配置操作以流水线分段为单位,一次配置一个或者多个流水线段所需要的硬件。
虽然有关可重构计算的研究得到了越来越多的重视,学术界和产业界也都在探索中研制出了各种可重构系统,但仍然有若干问题等待解决。目前可重构器件的规模已经可以达到百万门级,但可重构计算的应用仍然有限,不是应用在某些特殊领域(面向有限算法集)就是作为ASIC 的快速原型以争取上市时间。导致这种局面的主要原因在于缺乏统一的计算模型(包括理论模型和物理模型)。没有统一的可重构计算模型就使得应用受资源容量固定的限制并且软硬件不能向上兼容。 这会缩短软件和硬件的生命周期,造成巨大浪费,并且难于利用因微电子技术进步而带来的更多可重构资源,最终会限制可重构计算的广泛应用。
因此,人们一直在积极寻找合理的可重构计算模型,或者模型的某一方面特性。比如,针对系统受资源容量固定限制的问题,有人提出了虚拟硬件(Virtual Hardware)的概念,即通过分时复用可重构器件而达到用有限硬件资源实现无限算法资源需求的目的。虚拟硬件体现为运行时可重构技术,也是其基本出发点。
但是运行时可重构方式又带来若干问题。首先,配置和执行之间为串行操作,配置引起的延迟会加入整个运算时间。其次,在器件重新配置之前必须保存上次运算的中间结果,这不仅需要额外的存储器,访问存储器的时间开销也较大。为此有人又提出了采用增量可重构技术的流水线可重构,它通过增量重构(Incremental Reconfiguration)达到配置与执行并行操作的目的,同时也不需要额外的存储器来保存中间结果。
到目前为止,大部分可重构系统都面向具有局部相关关系的线性递推运算(计算密集型应用)。这一类应用的共同特点是同一算法的大量运算步之间具有很大结构相似性,这样在运行时对可重构器件进行全部重构就显得没有必要,同时多余的重构操作还会带来额外的功率消耗。因此,引入部分可重构技术对减少配置时间和降低配置功耗也都有积极意义。
3.3 可重构产品的未来
由于传统计算模式的深入人心以及任何新事物都要在继承的基础上创新和发展,当前可重构计算的研究普遍集中在冯·诺依曼计算机与“类硬件”集成的混合式(Hybrid)模式上(或者说是基于指令流与基于配置流的混合计算模式),不过我们相信,随着时间的推移,混合式结构终将完成向完全脱离主机干涉的自主式可重构( Self Reconfigurable)结构过渡,从而完成对半导体特征循环中第一个循环的螺旋式“复归”,届时的主流半导体产品将以基于配置流的U-soc 为特征。
实际上,大多数预先配置好的电路都浪费了大部分时间等待使用,而自主式可重构能显著减少这种浪费。电路能够在瞬间决定使用哪个配置内容更合适,然后自己去选择相应的内容。这就需要非传统的电路结构和编程技术,但是在某些情况下由此带来的效率和性能的提高却是极大的。
自主式可重构的概念建立在动态可重构之上,如果在多现场(Multicontext)动态可重构中,电路自身可以选择某一预设的配置内容,则这就是一种简单形式的自主式可重构。更进一步的形式是重构逻辑阵列的输出能够随机访问配置存储器并重写配置内容。这种自我编程的能力提高了电路的利用率,使得基于配置流动态构建整个机器成为现实,但同时也意味着“类硬件”自身的高度计算复杂性。这种机器与传统机器完全不同,需要全新的编程语言和操作系统,因此我们预测产品特征循环中第七波(通用波动)的时间段为2018-2028 年也就是可以理解的了。
4 结论
本文介绍了半导体主流产品每十年波动一次的“牧村浪潮”和我们提出的“半导体产品特征循环”。两种循环的思路和提出的时间大致相同。但我们提出的循环图比“牧村浪潮”的时间尺度长20年、多两次波动;其中第六波,牧村先生迟到2001年(或2002 年)才在他1991 年发表的原浪潮中修正了上去,时间比我们晚十年左右。第七波,牧村先生至今尚未论及,而牧村先生的朋友Hartenstein教授则明确提出在不再有新的波动了。
此外,我们还明确看到,“半导体产品特征循环”不仅启示了目前正在高速发展中的可重构技术,而且还将继续预示着半导体技术的发展走向:在嵌入式ASPP 技术发展中,推动可重构计算系统结构的演化及其崭新设计工具的产生,从而促进Designless 商业模式的蓬勃兴起。
参考文献
[1] 许居衍.半导体产品特征循环波动规律及其对产品技术发展的启示[A].2001 中国通信专用集成电路设计与应用高级研讨会论文集[C].2001.
[2] Makimoto T.“Makimoto’s Wave”-a market model he established in 1991[DB/OL].http://direct.xilinx-china.com/prs_rls/xil_corp/0392pw03_japan.htm.2003-07-25/2004-09-10.
[3] 徐志伟. 高性能计算机与网格的研究开发态势[DB/OL].http://www.ict.ac.cn/5-3.asp
id=39&letternum=9,2004-03-15/2004-09-10.
[4] Makimoto T . Towards the Second Digital W av e[ J]. Sony CX-News, 2003,33 .http://www.sony.net/Products/SC-HP/cx_news/vol33/sideview.html.
[5] 童志鹏等.未来军事电子[M].北京:电子科学研究院内部出版,1991.421-433.
[6] 许居衍.摩尔定律的“终结”和许氏循环的启示[A].中国电子学会第六届青年学术年会特邀报告[C].西安:西安电子科技大学出版社,2000.
[7] Hartenstein R. Makimoto’s wave, the 2nd design crisis, and, the future of reconfigurablecomputing[DB/OL].http://helios.informatik.uni-kl.de/reconfigurable_c
omputing/dagstuhl00ns/sld001.htm./2004-09-10.
[8] Xu Juyan.The History of Fabless and its Impact on the Semiconductor Industry[A] . 21st Century International IC Technology Innovation System Forum[C],Shanghai,2001.
[9] Selburn Jordan. Winning core silicon game takes more than luck[DB/OL].
http://www.eet.com/reshaping/showArticle.jhtml
arti cleId="29101025"&kc=3217. /2004-09-10.
[10] 许居衍.大规模定制理想和半导体制造[A].中国电子学会生产技术年会[C].深圳,2003.
[11] 许居衍.设计就是软件[R]. 第二届中国IC CAD 年会特邀报告.上海,1998.许居衍.设计就是软件[J].微电子学,1998.28(6).
[12] Estrin G, Bussel B, et al. Parallel processing in a restructurable computer system[J]. IEEE Trans. Elect.Comput., 1963. 747-755.
射频工程师养成培训教程套装,助您快速成为一名优秀射频工程师...