点击蓝字,关注老石谈芯
很多世界顶尖的“建筑师”可能是你从未听说过的人,他们设计并创造出了很多你可能从未见过的神奇结构,比如在芯片内部的复杂体系。制造芯片的基本材料源于沙子,但芯片本身已经成为人们当代生活不可或缺的东西。如果你使用手机、电脑,或者通过互联网收发信息,那么你就无时无刻不在受益于这些建筑师们的伟大工作。
FPGA是芯片的其中一种,从上世纪八十年代诞生起,FPGA已经从简单的可编程门阵列,发展成为了有着大量可编程逻辑的复杂片上系统。除了硬件结构之外,FPGA的开发工具和应用场景也都取得了长足的进步和扩展,FPGA在整个半导体行业的重要性也在不断增强。FPGA芯片的演进,离不开这些“建筑师”的不断发明创造。
几年前,这些FPGA的顶级建筑师们选出了自上世纪九十年代起的20年以来FPGA领域最有影响力的25个研究成果。通过这些重要的成果,我们会理解FPGA是如何发展至今,并且知道FPGA技术未来将会发展向何处。
这25个研究成果按研究领域分为架构、EDA工具、电路、应用等大类,每项成果都由一名该领域的顶级学者做推介。接下来,我将在几篇文章里,分别介绍这这些改变了FPGA发展进程的重要研究成果。本文是微架构篇。有关FPGA系统架构领域的重要创新成果,可以参见这篇文章。
(本文介绍的5项成果原文,均已上传至知识星球:老石谈芯进阶版,请在文末扫码进入星球查看)
01
在可重构计算阵列中平衡互联与计算
一句话总结:首次考虑了逻辑资源与布线资源的平衡使用,从而得到更优的资源利用率,对FPGA架构与CAD工具设计具有深远影响。
英文名:Balancing Interconnect and Computation in a Reconfigurable Computing Array (or, why you don’t really want 100% LUT utilization)
作者:André DeHon
发表时间:1999年
推介人:Mike Hutton(谷歌)
这项成果完美结合了理论、实证分析,以及富有洞见的探讨。这项工作打破了关于FPGA架构优化的常见假设,特别是通过对比逻辑面积与布线面积,证明了100%的硬件利用率并不一定会带来最优的结果。
这项成果首次深入研究了FPGA设计中不同部分的布线需求,分析了最坏情况下的布线要求及其对器件整体的影响。这项成果影响了后来很多关于FPGA架构的研究工作,并在发表十多年后仍然被多次引用。由这项成果发展而成的一项名为HSRA的布线方法,也重新引起了学术界和工业界对层次化FPGA架构设计及分析的兴趣。
这项工作的另外一个贡献是,它清晰的描述了FPGA架构风格与CAD算法风格之间的对应关系 – 在这个工作中就是分层递归分解。Andre DeHon进一步对比了FPGA逻辑互联的增长率与器件大小之间的关系,阐述了高效的系统架构设计的一系列实证结果。
除此之外,这项工作最值得借鉴的地方是它的方法论。通过使用基于树形网格的架构,见下图,可以得到伸缩性更强的FPGA互联架构模型,并对基于逻辑簇(logic clusters)的传统方法提出了挑战。当结果与传统观念不同的时候,Andre DeHon对问题的本质有着清晰而敏锐的认识。这也使得这项工作在FPGA的很多领域有着全面而深远的影响。
02
LUT和簇大小对深亚微米FPGA性能与密度的影响
一句话总结:现代FPGA里6输入LUT结构的理论基础。
英文名:The Effect of LUT and Cluster Size on Deep-Submicron FPGA Performance and Density
作者:Elias Ahmed, Jonathan Rose
发表时间:2000年
推介人:Mike Hutton(谷歌)
Jonathan Rose(现任多伦多大学教授)
这项开创性的研究深入分析了将逻辑单元组成层次化结构的过程中,LUT大小和簇(cluster,结构见下图)大小对系统性能和整体面积的影响。在这项成果发表之前,学术界刚刚开始探索和讨论FPGA里的簇结构。在工业界,Altera和赛灵思尽管已经开始使用层次化结构,但它们有着不同的大小和接口类型,从而限制了其进一步使用。在这个大背景下,这项工作首次探讨了面积和延时的权衡与折中,以及它们与簇输入数量的关系。
这项工作的主要成果,是在给定电路面积的情况下,对理想情况下的输入数量进行了建模,并给出了LUT大小和簇大小的最优范围,以满足特定的面积与延时要求。值得注意的是,这项工作指出5~6输入的LUT会取得比以往都好的面积与延时结果,见下图。而这个结论也为当代PGA里采用的6输入LUT结构奠定了理论基础。
这项工作除了它的结果影响深远之外,它所采用的方法论也有着很强的借鉴意义。两位作者指出,他们得到的这些最优解取决于当时的工艺参数和条件,随着半导体制造工艺的不断进步,这些最优解也会随之变化。他们也在这项工作中给出了一个清晰且可以重用的框架,用来预测和判断当工艺进步时这些最优点的变化情况。
这项工作另外的一个主要贡献是,它建立了一个评估FPGA架构的标准化体系,这其中包含了从综合到布局布线的各个FPGA开发阶段。它也为后续的FPGA架构研究以及CAD算法开发提供了参考标准。
03
在LUT簇中使用稀疏交换结构
一句话总结:现代FPGA布线微架构设计的奠基之作
英文名:Using Sparse Crossbars within LUT Clusters
作者:Guy Lemieux, David Lewis
发表时间:2001年
推介人:Sinan Kaptanoglu(Microsemi公司)
Guy Lemieux(现任英属哥伦比亚大学副教授)
这项成果着重探讨了一个全新的问题,即在不假设全连接的情况下,构建FPGA逻辑簇里的布线架构。在之前的其他工作中,基于逻辑簇的FPGA结构已经被很多研究人员进行了深入研究。然而,这些对簇和LUT大小、互联方式等的研究,都基于簇内布线是全连接的假设。在这项成果中,我们看到如果大量减少负责全连接的交换结构(crossbar),就可以显著的改变簇的最优特性,并保持很好的布线灵活度与较高的系统性能。
为了印证这个观点,这项工作首先提出了一种通用度很高的FPGA簇结构,见下图,并引入了面积与延时模型,用来计算和比较面积和性能的相关参数。此外,这项工作还讨论了FPGA架构中各项参数对面积和性能的影响,包括加入额外的LUT输入等等。
这篇文章对FPGA业界有着极大的启发意义。在今天,绝大多数商业级FPGA的布线架构都基于逻辑簇结构,而这些簇都是由部分连接(而非全连接)的交换结构组成的。虽然不同的FPGA厂商、不同的FPGA芯片采用了不同的方法,以实现这种部分连接的交换结构,但其中蕴含的中心思想是类似的。
此外,这篇文章对学术研究也有着重大的影响。这项成果发表后的数年间,其中包含的实验结果被不断的进行理论归纳,并为其他研究者奠定了坚实的理论基础。
04
实验假设、工具和分析技术对FPGA架构研究结论的影响
一句话总结:超越FPGA研究领域的研究方法论佳作。
英文名:On the Sensitivity of FPGA Architectural Conclusions to Experimental Assumptions, Tools, and Techniques
作者:Andy Yan, Rebecca Cheng, Steven J.E. Wilton
发表时间:2002年
推介人:Katherine Compton(威斯康辛麦迪逊大学)
Steve Wilton(现任英属哥伦比亚大学教授)
从事FPGA架构研究的学者都知道,研究使用的实验方法会对架构研究的结果产生重要的影响。对于一个FPGA架构参数,有太多的因素会对它造成影响,比如选取的测试基准电路、用来把电路映射到FPGA上的CAD工具等等。
然而,知道这些因素可能会影响结果是一回事,看到它们确实会影响结果则是另外一回事。这项工作为我们揭示了一个重要结论,那就是通过实验的方法寻找最优的FPGA架构参数可能并不会带来最优结果,因为实验结果可能在很大程度上取决于实验是如何设置的。例如,下图中清晰的展示了当使用不同的CAD工具和设置时,最优的LUT大小会在4到6输入之间来回变化。
更重要的是,这项工作从方法论的角度鼓励研究人员去更加仔细的设计他们的实验,并构建他们的结论。这已经超出了FPGA研究范畴,而对所有刚刚从事科学研究的人都有很大的借鉴意义。这项成果所传递的研究思路,会让研究者仔细审视自己的研究方法,避免只从表面上看到结果。通过这项成果,人们应该意识到仔细构建实验和客观分析结果的重要性,并要永远质疑结果的有效性和适用性。
05
基于纳米线的亚光刻可编程逻辑阵列
一句话总结:利用时代前沿技术设计制造FPGA的开创性研究
英文名:Nanowire-Based Sublithographic Programmable Logic Arrays
作者:André DeHon, Michael J. Wilson
推介人:Deming Chen(伊利诺伊大学香槟分校)
在2003年,基于纳米线的集成电路设计取得了两个突破性成就。其一是哈佛大学发表的一种通用的控制纳米线结构和层级的方法,另一个是惠普实验室发表的对纳米级电路元件进行制造和测试的方法。尽管如此,这个领域的大多数研究仅是专注于纳米线晶体管以及简单的基于纳米线的逻辑和存储单元设计。
受此启发,这项工作的作者抓住机会将纳米元件的制造与纳米系统的设计结合起来,并展现了纳米技术的真正力量。这项成果使用纳米线构建了大型可编程逻辑阵列的布线交换结构,并对系统设计进行了详细建模。此外,这项成果还指出了许多独特的设计挑战与问题,包括如何使用一种随机机制来对纳米级别的二极管的恢复(restoration)问题等等。这项成果还对纳米架构的芯片面积、良率、时序等问题进行了详尽的分析,并将一系列基准测试电路映射到这个新型纳米架构上,以评估他们的逻辑密度。
这项成果详细分析了这种架构的设计和制造挑战,以及它对传统的CMOS FPGA架构的潜在竞争优势。这样的研究对于业界理解纳米科技、以及它将如何给FPGA带来提升有着重要意义。在这项成果的后续工作中,作者还讨论了纳米线结构的制造缺陷等问题。
光刻技术一直是制造CMOS电路的根本性技术之一。这项成果表明,在不使用光刻技术的情况下,利用新兴的制造技术来构建高密度、大规模的可编程逻辑结构是可行的。这也为学术界和业界提供了一种可以超越传统光刻限制的替代方案。
结语
这五个FPGA微架构的重要工作,有的奠定了现代FPGA查找表(LUT)结构与大小的理论基础,有的探讨了FPGA布线结构的设计与优化方法,有的探索了当代最新科技与FPGA的结合。更重要的是,这些工作所采用的方法论、思维方式、前瞻性与实用性的统一、以及严谨的治学态度,都为之后的学术和工业研究树立了最高的典范。