异构多核处理器体系结构分析
2019-12-21开磊
开磊
(安徽省合肥市安徽新华学院国际教育学,安徽 合肥 230088)
一、核结构研究:同构还是异构
多核处理器包括异构、同构两大类型,其中内部核结构存在差异的即为异构,内部核结构一致的为同构。所以针对差异化的应用,对核结构的具体实现进行分析,直接影响到今后微处理器的性能强弱。核结构对芯片性能、功耗及面积有着直接的联系,对以往处理器的优点进行保留,并在此基础上进一步的发展,这些都同多核实现周期、性能相关。除此之外,参考Amdahl定理,串行部分性能影响着程序加速比,因此基于理论角度进行分析,异构微处理器结构性能较佳[1]。系统实现也直接受核指令系统的影响,在多核中运用的指令一致与否,且运行操作系统可以运行,成为当前探究重点。
二、技术关键
在安全性、功耗、软件及结构等层面,多核处理器在设计难度上明显比单核处理器大,而且发展前景非常广阔。
SMT、CMP的研究核心就是粗粒度并行性的运算,其中在大规模集成电路技术进步的同时而形成的CMP,当芯片容量较大的情况下,能够对并行处理结构下DSM、SMP节点进行集成,并均放置于芯片中,不同处理器能够以并行的方式对进程、线程进行执行。针对SMP的单芯片多处理机,借助片外共享存储器、Cache都可以使不同处理器开展通信;但是DSM的单芯片多处理器,只有在对分布式存储器的片内高速交叉开关网络进行连接的情况下,才能够开展通信。
因为当前DSM、SMP的发展进入到成熟化的阶段,能够简便设计CMP结构,严格的仅在于芯片制造工艺及设计后端[2]。由此,商用CPU比较青睐的高性能处理器结构即为CMP。
集成度较高的多核处理器具有很大的优势,可以显著提升芯片性能,然而也存在系统级问题,需要进行深入的研究应对办法。
三、异构多核处理器的体系结构设计
多核处理器在核结构一致性方面没有限制,一般来说,设计简便化的就是同构多核处理器,因为不同核结构相一致,因此不同核都是通用处理单元,运用的是对不同程序的平均执行性能都进行优化的设计思想,共享资源的调度方式、通讯方式、内核互联才是设计的关键所在,其中通讯方法包括共享存储、共享Cache等等。而对于异构多核处理器来说,设计难度相对较大,要兼顾内核存储结构、互联通信及结合不同内核下应用程序对单处理器进行设计等多方面因素,同时其底层架构依托于操作系统,不然根本不能发挥异构多核处理器的作用及优点。分配任务的过程中,操作系统应针对核特点开展分配工作,结合差异化的需求,确保计算内核能够有效完成任务。
同以往多处理器核统一构建发展的要求进行设计的原则不同,在设计异构多核处理器体系结构的过程中,运用的自动化构建方法,针对特定方面的专项设计目标取代了通用设计目标。在应用程序需求不断提升、工艺发展迅速的背景下,当下多核处理器节点设置为处理器(含有加速功能单元、可配置)无法达不到性能需求,反而运用定制理器核,能够通过有效、灵活的方式来实现多处理器核配置,所以成为当前异构多核处理器体系结构研究计开发热点。此外,在设计异构多核处理器体系结构的过程中,要基于差异化体系结构处理器核中,来映射任务,实现任务通信。
(一)内核结构及核间关系的设计
异构多核处理器和同构多核处理器相比,其差异化框架结构内核相对较多,异构多核结构构建的关键和根本就是对不同内核结构、功能特点进行明确。通常,异构结构下的各单处理器均为结合一个特定应用特征来选取、设计,而开展设计工作时,相关工作者要对内核功能是否重复这个问题进行分析。如果处理器内核存在结构重复的状况,就会出现结构类似的结果,也有可能出现一致部分,最终出现结构冗余的问题,这是设计工作的一大难题。开展实践运用的过程中,一些异构系统因为运用需求,规定处理器内核要存在功能一致的状况,这同运用特殊需求所导致的[3]。因此,涉及工作人员要对重复性必要与否这个问题进行详细分析,这样才能够更好地完成设计异构结构的任务。
(二)多核之间的互联方式
设计多核处理器的核心就在于核间互联技术,多核性能直接受通信协议、核间互连方式二者的影响。以往注重主频的微处理器在形成多核处理器之后发生了极大的转变,向着更多处理器核的方向发展。当下,芯片性能提升受到阻碍的关键就在于很多处理器核的彼此通信。要想使大量的处理器核进行协同性的运行,应保障相互间的有效信息通信。大量处理器核借助高效互连结构,能够针对海量信息进行共享和互通,使处理器核间并行运行变为了现实。因为内核存在异构性、内核间性能存在差异的特点,所以在设计异构多核的互联时变得难度非常大,要想有效的设计异构多核并充分发挥其优势,就需要将核间互联问题进行很好的处理。
如果内核量不多,在共享存储器的前提下进行总线互联是直接化的互联途径。能够借助片上系统的分时共享总线手段,使内核彼此能够进行互联。AMBA、WISHBONE为运用率较高的分时共享总线。借助总线技术开展内核间的互联,存在一定弊端,例如:可扩展性差、通信效能低、同步难度大、功耗大及不可靠等问题。