新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 克服嵌入式CPU性能瓶颈

克服嵌入式CPU性能瓶颈

作者:时间:2013-10-31来源:网络收藏

另外,不仅热电压与温度有关,阈值电压通常也随温度变化而变化,这两种变化将叠加在一起共同影响增加意味着静态的增加,因此对于低电压值而言,电压降低技术存在一定的实用性限制。

图3显示了两个不同温度下的这些效应。T=300K的第一条曲线显示了与阈值电压的指数关系。T=330K的第二条曲线是考虑了阈值电压随温度变化因素下的估计数据。这样,横坐标仍然代表标称阈值电压,但的实际阈值电压因温度效应而偏向更低的值,因此对有较大的影响。

克服嵌入式CPU性能瓶颈
图3:阈值电压和温度对漏电流的影响。

漏电流还与绝缘栅厚度有关。当采用非常薄的栅极电介质时,电子可以穿过绝缘层形成隧道效应,进而形成隧道电流,导致高。鉴于使用32nm及以下工艺时的实际栅极长度,这种效应在当前半导体技术工艺中是非常重要的。

当然,处理器内核并不是芯片中唯一耗能的器件。比如内存也消耗相当大的能量,现代处理器专门开辟了大块裸片区域来集成多级缓存。

工程师通常会应用多种设计技术来减少内存的漏电流或活动系数(公式中的A系数),进而达到降低功耗的目的。

例如,缓存等级的层次化组织不仅可以改善数据访问时间,而且有助于降低消耗的功率,因为更小更近的缓存所需能量比更大更远的缓存要少。这种结构化解决方案在降低功耗的同时能保持性能不变。与这种想法类似,另外一个常用的解决方案是将内存组织成库的形式来提高效率。这种情况下可以只激活正在访问的库,从而节省能量。

然而,追求更高性能并不总是正确的做事方式。有时以一定的吞吐量代价来降低功耗就足够了。有些处理器专门用于特定的应用,它们总是做相同类型的运算,比如DSP。音频处理、数字滤波器或数据压缩算法是这些器件的典型应用,评估这些应用的指标是一次操作需要多少能量、这些处理器做这些运算需要花多长时间。

一个处理器如果在执行算法时一开始就比其它处理器花更多的时间但消耗更少的功率,那么最终就具有更高的能效值。衡量这种效率的一个指标是MIPS/W(每秒每瓦百万指令数)。虽然必须关注指标MIPS,但一般来说具有更高MIPS/W的器件被认为具有更高的效率,这对嵌入式设备特别是电池供电设备来说尤其让人感兴趣。事实上,如今在服务器和数据中心领域人们更乐意使用更高能效的处理器。

芯片的传输延时

限制密度提高和芯片工作频率增加的另外一个主要因素是走线的传输延时。现代处理器中使用的GHz数量级高频时钟意味着一个时钟周期不到一个纳秒。这么短的周期时间正在成为影响信号传播的一个问题。

减小芯片的特征尺寸将造成栅极长度和电容减小,从而有利于提高时钟速率,克服容量范围限制。但芯片上的走线由于更高的电阻和电容而变得越来越慢。走线的宽度和高度变小是走线面积缩小的根本原因,并导致更高的电阻。

由于走线表面积变小,与表面积有关的电容跟着降低,但相邻走线之间的距离也在缩小,最终形成更高的耦合电容。耦合电容增加的速度大于表面电容减小的速度,因此抵消了表面电容减少效应,并形成了更高总体走线电容的组合效应。

走线传输延时直接正比于电阻与电容的乘积:Rw×Cw,因此随着每一代缩小特征尺寸的新技术的推出,走线延时变得越来越长。随着时钟速率的加快和走线传输速度的变慢,信号可以传输的距离以及一个时钟周期内可以到达的芯片面积将变小,最终导致通信范围成为约束条件的新情况。

对于具体的微架构来说,这不会成为大问题,因为电路尺寸将以二次方的比例缩小。但为了充分利用更小的晶体管尺寸并获得更高的IPC,设计师正在开发更为复杂的微架构,生成更深的流水线,增加更多的执行单元,并使用大的微架构化结构。现在,芯片上更高的通信延时将对尺寸甚至这些结构的布局和最大工作频率造成实际的限制。

举个例子,Intel Pentium 4中使用的错误预测流水线设计要求的级数是Pentium Ⅲ流水线的两倍。由于具有更高的时钟速率和走线延时,流水线必须划分为更小的段,并且在每级流水线中做更少的工作。但走线延时变得如此之大,以致于Pentium 4流水线中有两级是额外增加的,用于将信号从一级驱动到下一级,以便有足够的时间去执行要求的运算,因为有很多的时钟周期时间用在了信号抵达下一级上。

在ARM公司发布的高级微控制器总线架构(AMBA)规范中,可以看到走线延时如何影响设计的另一个类似例子。在第一版AMBA规范中引入、设计用于互连高性能系统模块的高级系统总线(ASB)使用了双向总线和主/从架构。

在第二版AMBA规范中,引入了高级高性能总线(AHB),用于改善对更高性能的支持,并替代ASB。在这个新的总线规范中,独立于其它功能的双向总线被替换为复用总线机制。这种修改初看起来似乎增加了不必要的走线和电路复杂性。但在很高性能系统中的走线延时效应使得有必要引入中继驱动器(与Pentium 4例子中看到的一样)。这在形成组合式复用总线的单向总线中是可行的,但在双向总线中很难实现。

面临的挑战

我们已经看到有两个主要的技术性限制在不断影响摩尔定律和和处理器性能的持续改进。但技术在不断发展。缩小特征尺寸有助于提高晶体管密度和频率,而设计师也仍在设法缩小晶体管尺寸,单颗芯片上的晶体管数量有望超过10亿个。

业界预测,半导体技术工艺将在2014年达到35nm栅极长度,但实际上从2011年开始就已经有人在用22nm工艺制造产品了。功耗和传输延时问题激励着业界每个人去研究制造晶体管的新材料,而在现代处理器中已经在应用新的组织化和架构化解决方案。高k值氧化栅(k指的是材料的介电常数)正在替代用了几十年的二氧化硅栅极电介质,它能实现更薄的绝缘层并更好地控制漏电流。

新的低k值电介质的使用使得减小耦合电容以及传输延时成为可能。实现单个大型单片内核的传统微架构正在演变为更简单的多内核微架构,后者允许占大部分的局部通信,从而避免了大的延时。

最近一些芯片制造商,如Intel公司,发布了三维集成电路。Intel最新的Ivy Bridge系列处理器作为Sandy Bridge系列的后继产品,采用了新的三栅极(tri-gate)晶体管技术,在提升处理能力的同时可以降低所需的能耗。

使用3D晶体管替代以前的平面结构晶体管后,各级流水线可以彼此垂直堆叠,从而能够有效地缩短块与块之间的距离,消除走线延时效应。据Intel介绍,公司的22nm 3D Tri-Gate晶体管功耗在相同下不到32nm芯片上的平面晶体管的一半,超过了从一代工艺升级到下一代时通常所取得的效果。

多内核架构的发展非常迅速。例如,Tilera公司已经在单颗芯片上成功开发出首个100内核的处理器。为了达到这种集成度,Tilera将处理器与他们的设计师称之为“瓦片(tile)”的通信开关组合在一起。通过组合这些瓦片,Tilera公司能够搭建出一个形成网状网的硅片。处理器一般通过总线互相连接,但随着处理器数量的增加,这种总线很快变成了瓶颈。借助Tilera用瓦片平铺出的网,每个处理器连接一个开关,它们可以像点到点网络那样相互通信。除此之外,每个瓦片可以独立运行一个实时操作系统。或者你也可以将多个瓦片组合在一起,运行像SMP Linux那样的操作系统。

目前业内正在研究开发令人称奇的石墨烯晶体管,每个晶体管都是用一片仅一个原子厚度的碳制造的。理论上,这些晶体管支持非常高的工作频率,可以高达1THz(1000GHz),甚至可以在柔性基板上制造这些晶体管。不过这种技术还面临许多挑战,我们可能还要等几年才能看到这些先进技术实用化。

本文小结

目前业界面临的问题是如何充分发挥这种巨大的并行处理能力。但嵌入式软件行业已经在开发强大的工具来帮助构建新的、复杂的许多内核应用世界。

针对共享和分布式存储架构的OpenMP和MPI建议、以及针对不同种类系统的并行编程制定的开放标准OpenCL(开放计算语言)都非常有前途。利用OpenGL可以为混合有多内核CPU、GPU甚至DSP的系统开发出合适的软件。但最大的挑战可能是改变编程人员的想法,使他们学会如何编写出适合在这些系统运行的高度并行和可靠的软件。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭