论文部分内容阅读
多核处理器(Chip Multi-Processor,简称CMP)逐渐成为微处理器的主流。高效的片上数据传输系统对多核处理器设计至关重要,并且随着半导体生产工艺的不断进步成为阻碍处理器性能持续提高的主要因素。片上网络概念的引入旨在解决这个问题。
片上网络(On-Chip Network,简称OCN或NoC)主要是将片上互连的底层实现进行封装和结构化,以网络服务接口的形式为高层体系结构设计者提供高效的片上数据传输系统。因此,片上网络设计者需要解决包括延时、带宽、功耗和可靠性等在内的诸多物理设计问题,还有包括流控机制、路由算法、交换策略和服务接口等在内的诸多结构设计问题。我们的研究内容主要围绕低功耗为重点进行展开。本文中的主要贡献有以下几个方面:
●详细精确的片上网络物理模型和高效的片上网络仿真系统我们在电路层对片上网络的各个主要模块的延时和功耗进行了详细地建模。而仿真系统则运用了这些电路模型,经过晶体管级仿真得到各个模块精确的延时和功耗数据。除此之外,该仿真系统还包括结构层处理器核模拟器和信号级片上网络模拟器。前者详细描述了各个处理器核的结构,能够实时运行各种应用程序并反映出它们各自的特征。而后者能够真实地反映出不同结构片上网络中各个物理模块之间信号的时序关系,并能够根据结构层模拟器记录下来的片上网络Trace文件或者自动生成的网络负载数据,以及物理层仿真得出的延时和功耗数据,计算片上网络的平均延时和整体功耗。
●数据相关的片上网络串行化方案和低功耗Buffer设计认为片上网络的功耗与实际数据的相关性非常大,因此在进行片上网络低功耗设计时需要全面考量实际数据的情况。本文使用数据相关性的特点对片上网络Phit宽度的设计空间进行了探索,在考虑数据相关性的情况下得出了延时和功耗都较优化的设计参数,为开展进一步研究奠定了基础。在实验过程中我们发现片上网络中数据的不平衡特性,即Packet中“0”的个数远大于“1”的个数。利用这一不平衡特性可以降低片上网络功耗。笔者提出了一种低功耗的Buffer设计,以及与其配套的错误控制方案。经过实验证明,笔者提出的整体方案能够节省大量的功耗,降低幅度在45.92%到58.49%之间,并且在延时功耗乘积(Production of Delay and Power,简称PDP)方面也能够得到大幅度的降低,降低幅度在37.47%到52.01%之间。
●片上网络错误控制方案建模和功耗的定量对比与分析,以及端到端检错方案的低功耗改进
笔者详细分析了四种类型错误控制方案的利弊(包括延时、功耗、可靠性和设计复杂度等各方面),并为它们各自对片上网络功耗的负面影响建立了相应的模型。然后通过这些模型,本文计算得到了这四种错误控制方案的功耗指数,并进行了定量的对比分析。笔者认为,对于可靠性要求不高或者物理层错误概率不大的应用,使用端到端纠错方案能够达到包括网络延时、设计复杂度和功耗等在内的多重参数优化,而对于可靠性要求较高的应用,使用点到点检错方案则能够在不损失可靠性的前提下达到功耗优化。笔者还针对功耗明显偏高的端到端检错方案,提出了两种改进方法。它们都能够有效的节省功耗,但是需要以一定的可靠性损失或面积增加作为代价。其中NACK方案能够节省35%左右的功耗,但是需要以可靠性为代价;而ExNoC方案能够节省20%左右的功耗,但是需要以面积增加为代价。