一、指令级并行性开发关键技术的研究与实现(论文文献综述)
胡江涛[1](2020)在《面向飞腾DSP的模板匹配算法的实现与优化》文中研究说明飞腾FT-M6678(以下简称M6678)DSP是一款完全自主知识产权的多核高性能DSP。M6678采用了将指令和数据分开存储的哈佛体系结构和新型的Key Stone多核架构。图像模板匹配算法在计算机视觉、目标检测与跟踪、视频压缩以及视频监控等领域发挥着重要作用。快速稳定的模板匹配算法的实现与优化一直是图像处理领域的研究热点。基于相关性系数的模板匹配是图像匹配领域中最重要的算法之一,其特点是访存/计算密集,面向具体目标体系结构的性能优化空间较大。目前,包含相关性模板匹配在内的多种经典图像处理算法并没有面向M6678DSP体系结构的高效实现。为推动国产DSP芯片在图像处理领域以及人工智能领域的应用,本文将基于相关性系数的模板匹配算法实现到M6678平台,结合算法特征与目标平台的体系结构特征,进行并行性及局部性等方面的性能优化。测试结果表明优化过后的程序性能提升明显,能够更加充分地利用M6678特有的计算资源,对于其他图像处理算法在该平台的实现和优化具有借鉴意义。本文针对相关性模板匹配算法在飞腾DSP平台实现与优化主要做了以下几个方面的工作:1、分析了模板匹配算法及其复杂度,以及M6678的底层开发环境的支持情况,完成了相关性模板匹配算法在M6678平台上的移植与实现。2、开展了面向M6678的数据级并行及指令级并行的优化研究。使用分支消除与分支外提等方法消除冗余的控制流,避免阻碍SIMD向量化的发掘,并使用编译环境提供的向量内联指令对核心运算代码进行手工向量化改写;使用循环展开,语句重排等方法提高指令级并行性,以充分利用M6678计算内核的多功能部件,多指令发射等硬件特性。3、在模板匹配算法的实现过程中提出了一种图像分块优化方法。通过将待匹配图像进行分块匹配,减少了冗余计算,减少高速缓存压力并提高了数据局部性和cache命中率。使用面向提升数据局部性的多种循环变换方法以及数据预取优化,提升程序访存效率,隐藏访存时延。本文对优化前后的程序进行了性能测试,测试结果表明,向量化及局部性优化带来的性能提升最为明显,达到了1.98倍的性能提升。经过其他优化后,整体加速比达到了2.01倍。此外,本文对比了该程序在TI-C6678以及FT-M6678两个不同平台上的性能差异,结果表明在进行面向FT-M6678体系结构特征的优化后,该程序在FT-M6678平台上的运行性能优于TI-C6678平台,验证了本文移植及优化工作的有效性。
李盛[2](2020)在《分组密码专用描述语言及编译技术研究》文中进行了进一步梳理可重构专用指令密码处理器具有面向密码运算的专用指令集和可重构专用运算单元,密码处理性能高、灵活性强,已成为密码算法的一种重要实现方式。但该类处理器指令集和体系结构复杂,代码编写和编译优化困难,影响了芯片应用,本文针对这一问题开展了研究,主要成果及创新点如下:1.提出了一种分组密码专用描述语言DSLBCA(Domain Specific Language for Block Cipher Algorithm)。针对通用编程语言难以直观描述分组密码算法的算子和结构的问题,采用领域专用语言建模的方法,从问题域和解答域的角度建立了分组密码算法加密过程特征模型、层次化特征模型和执行模型,定义了DSLBCA语言的数据类型、标识符、函数结构和程序控制结构,使密码应用者能够通过数学思维方式编写算法程序代码。2.设计了面向DSLBCA和可重构VLIW分组密码处理器RVBCP(Reconfigurable VLIW Block Cipher Processor)的编译基础设施。研究了RVBCP处理器指令集特点,结合分组密码专用描述语言的语言规则,提出了相应的编译基础设施,设计了词法分析器、语法分析器、语义分析器,实现了DSLBCA程序代码向RVBCP汇编指令集的符号编译。3.提出了面向可重构多引擎密码So C的反馈式编译器结构。研究了基于RVBCP的多引擎密码So C(System on Chip)的工作流程,提出了反馈式编译器结构,设计了基于平均代码行数的循环展开因子算法UFACLA(Unrolling Factor Based on Average Code Line Amount),在编译器前端实现了DSLBCA应用程序源代码在So C下的并行分配;并对展开后的代码进行标量替换,通过降低访存时间提高了分组密码算法的执行效率。4.提出了DSLBCA程序代码在RVBCP中的算子自动映射方案。建立分组密码算子调度参数模型,量化描述算子结点的调度状态信息;建立RVBCP的计算资源与寄存器资源参数模型,量化计算运行时计算资源与寄存器资源的消耗;基于贪婪策略、列表调度与线性扫描算法思想,设计了面向多发射可重构分组密码算法指令集处理器的并行资源分配算法,实现了分组密码算子在RVBCP上的自动并行映射。5.提出了RVBCP处理器低功耗指令调度方案。分析VLIW(Very Long Instruction Word)指令级功耗模型和RVBCP指令字内部指令排序与动态功耗变化的关系,对调整指令字之间汉明距离的方案进行了数学描述和讨论,将该低功耗指令调度问题归纳为广义旅行商问题,提出了一种基于禁忌搜索的改进广义遗传算法求解广义旅行商问题,实现了低功耗指令调度。
姜庆峰[3](2019)在《用于图像目标检测的可扩展协处理器架构设计》文中指出图像目标检测具有数据量大,运算量大和处理流程多变的特点,在高强度计算复杂性的情况下完成准确率高、实时性强的图像目标检测识别,有必要采用硬件加速方式来提高计算速度。而目前的硬件加速架构都是根据具体应用而设计的,功能相对固定、处理流程也相对固定,当应用环境改变时,需要重新设计电路,可移植性较差。针对目前硬件加速架构的局限性,论文提出了一种用于目标检测的可扩展协处理器架构及实现这种架构的命令包格式,使微处理器能够模拟软件函数调用的模式以写入命令的方式调用硬件加速电路(功能IP模块),实现多功能IP并行工作。该架构可以通过改变微处理器写入协处理器命令包的顺序和配置参数,实现各个功能IP的工作模式可配置,工作流程可变,也可以通过在标准IP接口上接入不同功能和不同数量的IP,实现应用场景的可移植性。为实现架构的可扩展性和通用性,解决了可扩展协处理器架构的一系列关键技术问题。第一,采用了在命令包格式中添加相关性标志数据,可扩展协处理器通过解析命令包实现了对相关性的检测和控制;第二,采用输出总线独立以及快速仲裁机制实现了多个功能IP模块并行工作的高带宽数据传输。此外,采用层次化的存储器结构并设计了一种灵活的二维存储器地址访问方式,在实现对存储器高速数据访问的同时满足了目标检测对数据访问的灵活性;第三,通过在可扩展协处理器中设计了相对完善的检错及纠错体系,提高了系统的可靠性,并为系统软硬件调试提供了很大方便。最后,通过在功能IP与可扩展协处理器控制部件之间构造标准IP接口实现了架构的可扩展性和功能上的通用性。完成了可扩展协处理器架构的电路设计及验证,并在DSP+FPGA平台上针对红外图像处理流程验证了架构的有效性和灵活性。结果表明可扩展协处理器控制部件工作在131.25MHZ,此时与功能IP的共享输入总线带宽达4200MB/s.在命令包平均长度为512字节时,包处理模块解析一包数据的时间仅为0.975μs。访问存储器的带宽也为4200MB/s。在满足通用性强、可扩展性强的同时具有低功耗、面积小的优点。
陈楠[4](2019)在《线程级多任务并行动态调度研究》文中研究指明随着半导体工艺技术的快速发展,集成电路的规模越来越大,传统的单核系统设计不再满足设计要求,多核技术成为当今处理器发展的主要方向。多核系统拥有众多的计算核心,通过将计算任务分配给不同的处理核心可以大幅提高计算性能,因此如何合理高效进行任务调度,确保全部处理核心处于有效工作状态是当今多核系统研究的一个重要方向。多核任务调度的关键难点在于发掘任务并行性,超标量技术和多线程技术是当今高性能处理器开发指令并行性的主流技术,本文借鉴指令并行思想,结合多核系统中任务的粗粒度特性,给出了一种新型的粗粒度多线程多核体系结构,在传统多核架构中增加控制处理器,控制处理器利用多线程和乱序多发射思想提取任务的并行性,将可并行的任务发射到不同处理核心执行,提高处理核心的利用率。论文的主要工作如下:首先介绍了粗粒度多线程多核体系结构系统模型,将系统的任务执行指令化,给出了一种“线程指令+任务指令+底层指令”的层次化编程方法,使得控制和计算分离,降低用户编程难度。其次研究了任务并行化方法,分析指令级并行和任务级并行的区别,分析任务级应用多线程技术和乱序执行技术所面临的问题,并针对任务的粗粒度特性提出了任务级多线程取指策略、资源分配策略和线程切换机制。再次对论文所提出的多线程控制处理器进行设计实现,介绍和分析了各关键模块的设计原理和实现方案,同时在控制处理器中加入资源管理机制实现资源的动态分配,提高资源利用率。最后,论文将设计的控制处理器集成到目标多核系统中,进行测试和性能评估,通过加载不同的任务指令验证了控制处理器的正确性,并提出了进一步优化的方向。
戴强[5](2018)在《面向分组密码硬件的并发错误检测技术研究》文中研究指明并发错误检测技术可检测环境因素诱发的自然故障与故障攻击注入的恶意故障,是保障分组密码硬件可靠性与安全性的重要手段。面向分组密码硬件,如何以较小代价实现高效的并发错误检测,已成为密码与集成电路交叉领域的研究热点与难点。论文系统分析了分组密码硬件故障特征,提出了面向密码硬件的并发错误检测方案设计流程,并分别针对操作级、轮运算级、处理器架构级分组密码硬件,提出了低开销的并发错误检测方案。论文主要的工作和研究成果如下:分析了分组密码不同操作的低开销错误检测方案。重点对非线性S盒的复合域实现方式,提出了多奇偶校验错误检测方案,并构建了检测方案的结构参数计算模型。该模型由预期故障覆盖率计算出用于错误检测的预测奇偶总数,可指导多奇偶校验错误检测方案的设计。针对基于冗余有限域算术的复合域S盒电路,在模型指导下定制了两种多分块多奇偶校验错误检测方案。仿真结果表明,两种方案的随机多故障覆盖率均约为97%,突发故障覆盖率分别约为61.8%、76.3%,优于同类文献中大部分错误检测方案。为优化故障检测S盒电路,提出了增强型延时感知公共项消除(Enhanced Delay Aware Common Subexpression Elimination,EDACSE)算法。该算法能够在不同延时约束条件下优化多常数乘法运算电路,并给出从最小延时到最小面积全范围的面积-延时设计折中。基于EDACSE算法优化了故障检测S盒电路,设计了延时最小与面积最小的两种故障检测S盒电路结构。实验结果表明,相比于现有的延时感知公共项消除算法,EDACSE算法的优化效率高、优化结果整体延时小;对比于具有相似故障检测能力的故障检测S盒电路,所设计S盒电路的面积延时积最小,比目前面积-延时性能最优的故障检测S盒电路减少了7.02%。针对分组密码轮运算电路,提出了一种结合算法属性的半轮不变并发错误检测方案。该方案将轮加密操作分解为两级流水线结构,使得半轮加密操作执行的同时执行另半轮的重加密操作,可有效减少性能开销。在证明AES算法半轮运算不变性的基础上,在半轮再加密过程中引入基于操作数置换的再计算方法,可检测永久故障与抵抗双故障攻击。实验结果表明,该方案对随机单比特故障与随机多比特故障的故障覆盖率分别为91.046%与99.242%;对比于具有相似故障检测能力的同类方案,该方案具有更合理的面积与时间复杂度开销。面向分组密码处理器,构建了冗余并行计算性能开销模型,为设计低开销的并发错误检测方案提供了理论指导。在模型指导下,针对可重构分组密码流处理器,提出了基于软件流水与指令复制的低开销并发错误检测方法。该方法采用软硬件协同设计思想,通过硬件扩展支持高效错误检测,并设计了脆弱性感知的指令复制算法,可在满足性能约束条件下通过复制部分指令提高处理器的故障检测能力。实验结果表明,该方法引入的硬件开销仅占原处理器面积的1.5%;对比于同类方法,在给定相同性能开销约束条件下,该方法的随机故障覆盖率略高于同类方法,恶意故障覆盖率明显优于同类方法;相比于同类方法,采用该方法实现全指令复制后,算法实现的性能开销最低、面积能效比最高,其中典型SP(AES-128)、Feistel(SMS4)、L-M(IDEA)结构算法实现性能开销比分别仅为25.6%、17.9%、15.7%。
番丝江[6](2017)在《超标量处理器能效优化关键技术研究》文中指出现代处理器已经开发出了很高的指令级并行技术,包括一系列的指令静态调度和指令动态调度的技术,同时采用动态分支预测和多发射等技术,使得现代处理器具有很高的性能。然而,开发高指令级并行技术也就意味着需要较多的硬件开销以及复杂的控制逻辑来支持。但是随着晶体管漏电流问题的日益突出,复杂的处理器电路产生的散热问题成为了限制当前处理器进一步发展的重要因素。从此,引领计算机行业发展的摩尔定律和登纳德缩放定律开始渐渐不再适用,能效优化刻不容缓。针对上述问题,本文提出了一种基于Trace的细粒度超标量流水线功耗模型。我们在标量流水线中增加了Trace Cache,用Trace Cache来缓存执行过的指令序列。当相同地址的指令再次被取指时,就从Trace Cache中直接取出后续指令序列来送入流水线中执行,而不必再经过所有流水线阶段。从而减少了流水线前端执行产生的功耗。本文提出的细粒度超标量流水线功耗模型分为三种模式:OoO模式、OoOT模式和OoOR模式。其中OoO模式就是现在主流的超标量乱序流水线模式,该种模式具有较高的流水线性能和很高的功耗。而OoOT模式就是在OoO模式中增加了Trace Cache的机制,使得在不影响程序执行性能的前提下,较大幅度降低功耗。最后,针对一些程序本身可开发的指令级并行性不高,而记分牌技术无法明显提升其性能的情况下,我们在OoOT模式下取消了记分牌机制,大幅度降低流水线功耗,该种模式则为OoOR模式。针对不同的程序特性和处理器需求,可以调整不同的模式来达到性能和功耗的平衡点。我们在Gem5模拟器中实现了本文提出的三种模式,并使用SPEC CPU2006benchmarks进行了性能测试,采用McPAT进行了功耗模拟。实验结果显示,OoOT模式相比于OoO模式,性能相差不大(平均有3.6%的性能损失,部分程序在OoOT模式下展现出了更好的性能),而功耗平均降低将近8%。而OoOR模式相比于OoO模式性能下降了29%,而功耗最大下降了58%(平均降低25%,但也存在程序在OoOR模式中获得了性能提升、功耗降低的双重效益)。同时,我们测试了不同频率下的三种模式的性能和功耗值。实验结果表明,在不同的频率下,三种模式体现出了类似的性能和功耗变化趋势。而对比不同频率下的性能和功耗值来看,不同频率的性能和功耗值有不同的变化范围,而三种模式下的调节粒度更小。因此,实验结果证明本文提出的细粒度超标量流水线功耗模型还能够与DVFS技术相互补充,在不同粒度上对程序性能和功耗进行调节。
王寿成[7](2017)在《基于流体系结构的分组密码并行处理架构研究》文中认为分组密码算法和应用场景的多样化,要求密码芯片能够高效、灵活地实现多种分组密码算法。因此,分组密码的高效灵活实现成为密码领域的研究热点。论文融合了并行计算和可重构计算两种技术,系统研究了分组密码的流处理特征及并行性,设计了基于流体系结构的分组密码可重构并行处理架构,并提出了基于软件流水技术的分组密码算法并行实现方法。论文主要的工作和研究成果如下:为充分开发分组密码的并行性,从操作级并行性开发角度将其划分为四维度并行性,然后推导了开发各维度并行性时的加速比,在此基础上提出了基于Amdahl定律的分组密码四维度并行处理模型FDPM。通过算法参数分析、并行度参数分析等,总结了四维度并行性的开发优先顺序,并进一步提出了分组密码并行处理架构设计原则和算法并行实现原则,为架构设计和算法映射提供理论依据和指导原则。以分组密码四维度并行处理模型FDPM为理论依据,基于流体系结构设计了面向分组密码的可重构并行处理架构SRBPA。重点研究了可重构并行处理簇的结构,并完成了可重构并行处理单元、分布式簇内寄存器、可重构互连网络、密钥便签寄存器等关键部件的设计。此外,还进行了簇内扩展、簇间扩展和多核扩展等多维可扩展性的研究,提高了SRBPA的功能扩展能力和性能扩展能力。为缩短指令宽度并降低指令集的代码体积,提出了基于超长指令字可重构的核心级指令集,完成了运算类指令、配置类指令以及硬件流水线的设计。提出了基于VLIW可重构的指令分派技术,并设计了VLIW可重构生成算法和VLIW可重构分派网络。此外,还提出了分组密码的软件流水并行实现方法,详细描述了软件流水并行实现原理和软硬件流水协同执行机制,为分组密码算法的高效并行实现提供了重要技术手段。搭建了SRBPA原型系统的仿真验证平台,完成了AES-128、SM4、IDEA、DES、Camellia、RC6等分组密码算法在串行工作模式和并行工作模式下的算法映射、仿真测试和性能评估,并基于65 nm CMOS工艺标准单元库对原型系统进行了ASIC设计综合。结果表明,本文提出的分组密码可重构并行处理架构通过四维度并行性开发和可重构设计能够满足分组密码算法实现的高效性和灵活性需求,具有硬件开销小、性能较高、面积能效比最优和功能单元利用率高的优势。
高军[8](2014)在《CAMPER:一种高效能处理器核体系结构关键技术研究与实现》文中指出随着计算机软硬件技术的不断进步,高性能计算领域迅猛发展;高性能计算领域的迅猛发展同时又对高性能微处理器不断提出新的需求。实现未来的超高性能计算机,硬件技术、体系结构、编程模型、算法、应用、工具等多个环节都面临着来自性能、功耗、可靠性等多个因素的挑战。处理器核的体系结构直接决定了处理器的性能、功耗、可靠性等特性,并且对系统编程模型、算法及应用都有显着的影响。本文针对未来高性能计算所面临的性能、功耗、可靠性等挑战,研究并提出一种高效能处理器核体系结构CAMPER(Core Architecture with Multi-thread,Power-Efficiency and Reliability)。CAMPER核基于一种精简的EPIC(Explicit Parallel Instruction Computing)处理器体系结构设计,并扩展多线程和向量技术,利用先进的低功耗设计和高可靠性技术,在原型样片TENT中实现。本文的主要贡献和创新点有:1.设计了一种精简的EPIC体系结构,作为CAMPER的基准结构。提出了一种顺序发射、顺序执行、顺序提交、乱序完成的锁步执行模型(In-order issue In-order execute In-order commit Out-of-order completion Lock Step Model,简称I3OLSM),能有效地提高存储级并行性。基于I3OLSM执行模型,通过低开销的指令分派、非对称的执行部件设计、虚拟多端口存储等方法,在性能影响很小或可忽略的情况下,能进一步精简处理器的设计,降低芯片实现开销。2.提出了向量分组交叉多线程扩展技术。设计了指令集和寄存器扩展方案,并提出向量掩码条件执行模型来降低开销;提出分组交叉多线程调度策略,将线程分为若干组,线程组内采用交叉调度技术,线程组间采用同时调度技术,采用混合的线程调度策略提高多线程计算性能。设计了分组交叉多线程向量存储结构,支持标量和向量数据的混合访问。实现与分析结果表明了所提工作的有效性。3.提出能量均衡的微处理器设计理念,从体系结构设计、逻辑设计、物理设计等多个层次对处理器功耗进行了优化,提出了软硬件结合的处理器待命与休眠技术,通过指令集的扩展和硬件功耗管理单元的支持,深度挖掘处理器空闲部件功耗优化的潜力,降低动态功耗和静态功耗;提出基于指令队列的循环代码检测与执行机制,降低功耗。同时,通过后端物理设计流程验证了所提出技术的可实现性,并在物理设计过程中实现功耗回收,进一步降低了处理器芯片功耗。实测数据表明,提出的多层次、多阶段结合的低功耗设计技术实现了能耗与性能的均衡,实现了按需耗能的设计目标。4.提出了一种基于路交叉的低开销Cache存储体容软错误设计方法。该方法将Cache数据以路交叉的方式分散存储,保证了单粒子轰击导致的相邻多位错仅发生在不同路的数据体中,从而可通过分时检测不同路数据的方式有效地解决了深亚微米下存储体多位错问题,提高片上存储可靠性。CAMPER核体系结构在原型测试样片TENT中实现。TENT测试样片在1.5GHz频率下测得SPEC CPU2000 Rate整数测试分值为143,浮点测试分值为122,功耗30瓦。测试结果表明CAMPER是一种高效能的核体系结构。
阳柳[9](2014)在《面向动态双模多层次并行体系结构的编译优化技术研究》文中研究指明无线通信与视频图像处理等应用领域的快速发展对数字信号处理器(DSP)的性能提出了较高的要求。DSP因具有数据处理能力强大、可编程性良好、使用灵活等特点被广泛使用。动态双模多层次并行DSP(Dynamic dual-mode multi-level parallel DSP,DDMP-DSP)是自主设计并实现的一款面向无线通信和视频图像处理的高性能浮点数字信号处理器。DDMP-DSP采用动态双模多层次并行体系结构,基于超长指令字(VLIW)技术支持指令级并行,基于宽字向量单指令流多数据流(SIMD)技术支持数据级并行,基于动态双模技术支持任务级并行。软件工具链对于新体系结构的实用性和性能发挥非常重要。在无线通信和视频图像处理应用中,随着算法复杂程度的提升,应用开发的工作量越来越大,采用手工代码优化的方式无法满足应用开发的需求。因此,开发过程中更多地采用高级语言编译优化的方式进行应用开发,这对高级语言编译器的设计和开发提出了更高要求。动态双模多层次并行体系结构的性能发挥很大程度上依赖于编译器,采用当前已有的DSP编译优化技术无法充分利用DDMP-DSP体系结构的特点并发挥其性能优势。论文针对DDMP-DSP体系结构的编译优化技术展开研究,针对指令级并行、数据级并行和任务级并行三种并行特征,采用建立执行模型、编程模型和代价模型的方式,从调度优化、数据重组以及循环优化等角度设计并实现了三种编译优化技术,有效支持DDMP-DSP体系结构和指令集特征。本文的主要研究成果和创新体现在以下几个方面:1.根据DDMP-DSP体系结构特点抽象出一种动态双模多层次并行执行模型(Dualmode multi-level parallel execution model,DDMPEM),提取出VLIW、宽字向量SIMD和动态双模三个主要执行特征,DDMPEM能够作为研究和开发编译优化技术的基础,指导编程模型和代价模型的实现。设计了一种Kernel Based编程模型(Kernel-based programming model,KBPM),程序员能够方便地利用KBPM进行应用开发,通过支持KBPM,编译器能够识别应用程序中的并行特征,更高效地进行编译优化。提出了一种多层次并行代价模型(Multi-level parallel cost model,MPCM),对指令级并行、数据级并行和任务级并行进行综合考虑,能够对编译优化进行指导。2.提出了一种支持任务级并行的动态双模优化调度技术(Dual-mode optimizing scheduling,DMCOS)。DDMP-DSP体系结构中执行并行任务的向量部件和执行串行任务的标量部件能够在紧耦合模式(Tightly coupled Mode,TCM)串行工作,也能在松耦合模式(Loosely coupled Mode,LCM)并行工作。采用DMCOS优化技术能够确定两种模式的切换时机并实现动态切换。DMCOS对使用KBPM编程模型开发的双模式区(Dual-mode code field,DMC)源代码进行独立任务双模调度(Independent dual-mode scheduling,IDS),或者根据动态双模切换代价模型(Dual-mode switching cost model,DDSCM)进行流调度(Flow scheduling,FS)和双模切换调度(Dual-mode switching scheduling,DSS)。DMCOS能够发掘应用程序中的任务级并行,并将高级语言应用程序转换为满足动态双模执行模型要求的代码。DMCOS能够更好地利用DDMP-DSP的动态双模体系结构特征,开发任务级并行。3.提出了一种支持数据级并行的宽字向量SIMD数据重组编译优化技术(Data reorganization for wide SIMD,DRWS)。DDMP-DSP体系结构中的向量部件包括一组同构的向量运算单元(VE),多个VE可组合支持宽字向量SIMD。DRWS主要包括三个模块:基于多模的数据重组(Data reorganization based on multimodulo,DRMM)模块,宽向量填充数据重组(Data reorganization for wide vector filling,DRWF)模块和分支数据重组(Data reorganization for branch,DRB)模块,这三个模块能够处理多种情况下的数据重组。DRWS能够支持灵活的数据重组,从而在SIMD向量化(SIMDization)时能够更好地匹配VE个数,提高DDMP-DSP中的SIMD计算资源利用率,开发数据级并行。4.提出了一种支持数据级并行和指令级并行的多层次循环优化编译技术(Multilevel loop optimization,MLOP)。MLOP有效地将多面体优化技术、SIMDization编译优化技术、面向VLIW的编译优化技术和运行时编译优化技术结合起来,包括多面体优化模块、子字与超字SIMD向量化模块(S-Ⅱ SIMDization)模块、面向VLIW的循环优化模块和运行时优化模块。使用类迭代编译的方法进行编译优化,综合多种因素,选择合适的循环展开因子并进行循环优化。MLOP能够充分利用DDMP-DSP多层次并行体系结构特点,挖掘程序中的数据级并行和指令级并行。
杨惠[10](2014)在《面向性能的SIMD DSP指令流调度技术研究》文中进行了进一步梳理随着嵌入式应用的飞速发展以及芯片设计技术的不断进步,处理器结构专注于采用更多的并行计算资源开发并行性,而不再依赖于更复杂的串行硬件设计和更高的时钟频率。以超长指令字技术为主体,融合变长指令集、单指令流多数据流(Single Instruction stream Multiple Data streams,SIMD)以及多核等技术的数字信号处理器(Digital Signal Processor,DSP)体系结构,已经成为DSP体系结构技术发展的主流[113]。尽管这些体系结构技术能以较低的硬件开销,充分开发应用程序并行性,从而大幅提高处理器性能,但随着指令发射复杂度和SIMD宽度的增加,这些技术越来越受到数据通路利用率和可扩展性问题的困扰。本文研究面向性能的SIMD DSP指令流调度技术,主要从指令流分布、指令流取指发射和指令流执行三个部分展开。首先,分析和研究SIMD宽度、VLIW长度和多核数目在内的体系结构参数之间的关联,考察负载工作量的特征值,包括线程级并行(Thread-Level Parallelism,TLP),指令级并行(Instruction-Level Parallelism,ILP),以及数据级并行(Data-Level Parallelism,DLP)发生变化时,资源分配对系统效能造成的影响,以解释结构中的性能瓶颈,实现数据通路利用率和可扩展性的高效权衡;其次,变长VLIW处理器的取指发射流水效率,能够显着影响整个数据通路的利用率,研究取指和发射的关键问题,以减少取指和发射导致的流水线停顿,能够显着提升DSP性能。再次,对于广泛应用于高性能DSP中的SIMD技术而言,增大SIMD宽度并不一定能够提高程序执行性能,不同算法对SIMD宽度和程序流控制的需求有着显着不同,提高SIMD资源利用率对于提高系统性能有显着影响。本文针对超宽SIMD DSP片上指令流调度的关键技术进行研究,并取得了以下几个方面的研究成果:(1)借鉴近年来在通用多核芯片上的对性能和功耗的相关分析与研究,构建了一个新型的参数化性能功耗综合分析模型,来评估层次化片上大规模并行结构的性能和功耗。该模型抽象出参数诸如多核数量、超节点尺寸、处理单元数目、功能单元数目等,在满足一定性能约束和功耗约束的前提下,考察负载工作量的特征值TLP、ILP和DLP发生变化时,资源分配对系统效能造成的影响。解析结果提供了对于设计超高性能DSP结构的合理的选择,以及使得系统具有更好可扩展性的理论基础,进一步揭示结构中的性能瓶颈。(2)为提高变长VLIW处理器的取指发射流水效率,减少和消除现有单线程取指发射流水线效率提升机制的弊端,提出了一种基于变长指令VLIW结构的高效取指发射流水架构。该架构引入了无效指令的检测作废机制,来消除无效的取指访问带来的开销;引入了缺失指令旁路机制,来减少缺失指令引发的流水线停顿;引入了变长指令发射窗机制,解决分离指令字带来的发射问题,从而为结构提供高效连续的指令流。这一研究进一步揭示了基于VLIW架构的取指发射流水线架构的加速机理,使得单线程流控加速技术变得清晰,这对指导高效流控机制设计具有重要意义。这种取指发射流水线能够很好地在任意基于VLIW结构的处理器中进行应用。(3)提出了向量分支线程压缩机制(Divergent Branch Threads Compaction,DBTC),来解决因应用中没有包含充足的DLP,如应用中往往存在循环遍数低,控制流复杂,执行行为不均匀的情况,而导致的SIMD资源空转问题。将SIMD硬件并行资源转换成实际的应用性能,才是发挥SIMD结构处理器性能的关键所在。试验结果表明:向量分支线程压缩机制相较于基准SIMD结构,能够获取很好的加速。(4)提出一种称为解耦的迭代映射(Decoupled Iteration Mapping,DIM)的方法,来解决因应用中包含迭代间相关的循环而导致的SIMD低效问题,开发了潜伏在算法中的中粒度的流水线线程并行,获取了类似于多核线程级并行的执行模式。它通过软硬件的协同配合,动态的映射包含迭代间相关的循环到改进的SIMD结构上,每一个处理单元(Processing Element,PE)能够解耦的执行循环体的一个片段的不同迭代,lane间的数据传递通过专用数据缓冲链(data buffer chain,DBC)完成,从而自动榨取之前无法在SIMD结构上并行执行的线程。DIM维护线程的局部性,隐藏了关键路径延迟。实验结果表明,DIM能够保持SIMD结构的关键优势,并且大大提升SIMD结构处理含有迭代间相关应用的效率。(5)提出硬件支持软流水机制(Hardware Supported Software Pipeline,HSSP),来加速包含规整控制流的数据级并行循环体的执行。继而,提出多模式指令流出思想,它将解决非规整条件分支控制流的DBTC技术,提升体间相关循环的DIM技术,与优化规整控制流的HSSP技术有机结合起来,从而提升SIMD结构的综合实力,解决SIMD结构中关键瓶颈。
二、指令级并行性开发关键技术的研究与实现(论文开题报告)
(1)论文研究背景及目的
此处内容要求:
首先简单简介论文所研究问题的基本概念和背景,再而简单明了地指出论文所要研究解决的具体问题,并提出你的论文准备的观点或解决方法。
写法范例:
本文主要提出一款精简64位RISC处理器存储管理单元结构并详细分析其设计过程。在该MMU结构中,TLB采用叁个分离的TLB,TLB采用基于内容查找的相联存储器并行查找,支持粗粒度为64KB和细粒度为4KB两种页面大小,采用多级分层页表结构映射地址空间,并详细论述了四级页表转换过程,TLB结构组织等。该MMU结构将作为该处理器存储系统实现的一个重要组成部分。
(2)本文研究方法
调查法:该方法是有目的、有系统的搜集有关研究对象的具体信息。
观察法:用自己的感官和辅助工具直接观察研究对象从而得到有关信息。
实验法:通过主支变革、控制研究对象来发现与确认事物间的因果关系。
文献研究法:通过调查文献来获得资料,从而全面的、正确的了解掌握研究方法。
实证研究法:依据现有的科学理论和实践的需要提出设计。
定性分析法:对研究对象进行“质”的方面的研究,这个方法需要计算的数据较少。
定量分析法:通过具体的数字,使人们对研究对象的认识进一步精确化。
跨学科研究法:运用多学科的理论、方法和成果从整体上对某一课题进行研究。
功能分析法:这是社会科学用来分析社会现象的一种方法,从某一功能出发研究多个方面的影响。
模拟法:通过创设一个与原型相似的模型来间接研究原型某种特性的一种形容方法。
三、指令级并行性开发关键技术的研究与实现(论文提纲范文)
(1)面向飞腾DSP的模板匹配算法的实现与优化(论文提纲范文)
摘要 |
abstract |
1 绪论 |
1.1 研究背景及意义 |
1.2 国内外研究现状 |
1.2.1 模板匹配算法 |
1.2.2 数字信号处理器DSP |
1.2.3 面向DSP的图像处理 |
1.3 论文的主要内容与结构 |
2 飞腾平台的模板匹配算法移植与实现 |
2.1 模板匹配算法分析 |
2.2 核心FFT算法原理 |
2.2.1 基2FFT算法 |
2.2.2 基4FFT算法 |
2.2.3 混合基FFT算法 |
2.3 飞腾DSP平台概述 |
2.3.1 Key Stone架构 |
2.3.2 M66x Core Pac |
2.3.3 增强型M66x内核 |
2.3.4 FT-M6678底层库支持分析 |
2.4 模板匹配程序在FT-M6678平台上的移植与实现 |
2.4.1 移植与实现方案 |
2.4.2 数据结构与底层支持函数分析 |
2.4.3 程序模块设计与实现 |
2.5 本章小结 |
3 飞腾平台的模板匹配程序优化 |
3.1 面向FT-M6678的图像分块优化 |
3.1.1 图像分块优化的原理 |
3.1.2 研究动机 |
3.1.3 图像分块优化实现 |
3.2 控制流优化 |
3.2.1 非嵌套控制流优化 |
3.2.2 复杂控制流处理的优化 |
3.3 程序的向量化优化 |
3.3.1 向量加速器件的介绍 |
3.3.2 核心算法向量化 |
3.4 循环优化 |
3.4.1 研究动机 |
3.4.2 循环展开优化 |
3.4.3 循环分裂优化 |
3.5 本章小结 |
4 测试与分析 |
4.1 测试环境 |
4.2 正确性测试 |
4.3 程序优化后性能测试 |
4.4 与TI6678性能对比测试 |
4.5 本章小结 |
5 总结与展望 |
5.1 总结 |
5.2 展望 |
参考文献 |
个人简历、在校期间发表的学术论文与研究成果 |
致谢 |
(2)分组密码专用描述语言及编译技术研究(论文提纲范文)
摘要 |
Abstract |
第一章 绪论 |
1.1 研究背景 |
1.2 国内外研究现状 |
1.2.1 密码算法编程语言 |
1.2.2 处理器的编译技术 |
1.2.3 处理器的编译优化技术 |
1.3 本文主要研究工作 |
1.3.1 研究内容 |
1.3.2 论文结构 |
第二章 理论研究基础 |
2.1 领域专用语言设计概念 |
2.2 分组密码算法特点 |
2.2.1 分组密码算法数学模型 |
2.2.2 分组密码算法的网络结构 |
2.3 可重构分组密码指令集处理器 |
2.3.1 RVBCP体系结构及功能单元 |
2.3.2 RVBCP指令系统 |
2.4 本章小结 |
第三章 分组密码专用描述语言及编译基础设施研究 |
3.1 引言 |
3.2 分组密码专用描述语言建模 |
3.2.1 问题域分析 |
3.2.2 解答域分析 |
3.3 分组密码专用描述语言定义及实例 |
3.3.1 变量类型与数据表示 |
3.3.2 标识符与关键字 |
3.3.3 函数与程序控制结构 |
3.3.4 分组密码描述语言的格式 |
3.4 面向分组密码专用描述语言的编译器基础设施设计 |
3.4.1 词法分析器设计 |
3.4.2 语法分析器设计 |
3.4.3 语义分析器设计 |
3.5 本章小结 |
第四章 编译器结构设计及前端编译优化研究 |
4.1 引言 |
4.2 优化编译结构设计 |
4.2.1 分组密码异构SoC结构及工作流程 |
4.2.2 编译器结构设计原则 |
4.2.3 反馈式编译器结构设计 |
4.3 反馈式编译器前端优化算法研究 |
4.3.1 基于平均代码行数的循环展开算法研究 |
4.3.2 标量替代算法研究 |
4.4 实验及分析 |
4.4.1 实验验证 |
4.4.2 实验结果分析 |
4.5 本章小结 |
第五章 可重构分组密码指令集处理器的自动映射研究 |
5.1 引言 |
5.2 分析与参数建模 |
5.2.1 分组密码算子调度与映射参数模型 |
5.2.2 可重构分组密码指令集处理器资源模型 |
5.2.3 资源消耗与资源约束关系分析 |
5.3 可重构指令集处理器自动映射算法 |
5.3.1 初始化调度 |
5.3.2 资源分配与结点调度调整 |
5.4 实验及分析 |
5.4.1 实验设计 |
5.4.2 实验结果分析 |
5.5 本章小结 |
第六章 面向VLIW结构密码处理器的低功耗指令调度研究 |
6.1 引言 |
6.2 VLIW结构的指令级低功耗分析 |
6.2.1 密码处理器功耗的编译调优方法分析 |
6.2.2 低功耗调度原理分析及低功耗指令调度问题 |
6.3 面向低功耗指令调度问题求解的改进广义遗传算法 |
6.3.1 遗传算法、广义遗传算法与禁忌搜索算法 |
6.3.2 基于禁忌搜索的改进广义遗传算法设计 |
6.4 实验及分析 |
6.4.1 IGGABTS算法仿真实验 |
6.4.2 平均功耗测试 |
6.5 本章小结 |
第七章 总结与展望 |
7.1 研究总结 |
7.2 创新点总结 |
7.3 展望 |
致谢 |
参考文献 |
(3)用于图像目标检测的可扩展协处理器架构设计(论文提纲范文)
摘要 |
Abstract |
主要符号对照表 |
1 绪论 |
1.1 研究背景 |
1.2 图像目标检测硬件加速系统架构综述 |
1.3 论文工作 |
1.4 论文结构 |
2 可扩展协处理器架构 |
2.1 协处理器特性 |
2.2 可扩展协处理器架构 |
2.3 可扩展协处理器架构设计挑战点 |
2.4 本章小结 |
3 可扩展协处理器的关键技术研究 |
3.1 IP相关性解决 |
3.2 高速数据传输机制解决 |
3.3 IP并行性开发 |
3.4 架构可扩展性与通用性解决机制 |
3.5 本章小结 |
4 可扩展协处理器关键模块设计 |
4.1 I/O接口模块电路设计 |
4.2 包处理模块设计 |
4.3 资源调度模块设计 |
4.4 数据传输单元设计 |
4.5 本章小结 |
5 可扩展协处理器验证及实现 |
5.1 可扩展协处理器验证 |
5.2 可扩展协处理器板级有效性验证 |
5.3 可扩展协处理器控制部件性能和参数分析 |
5.4 本章小结 |
6 总结和展望 |
6.1 总结与创新点 |
6.2 工作展望 |
致谢 |
参考文献 |
(4)线程级多任务并行动态调度研究(论文提纲范文)
致谢 |
摘要 |
abstract |
第1章 绪论 |
1.1 研究背景 |
1.1.1 多核发展 |
1.1.2 异构多核系统 |
1.1.3 异构多核任务调度 |
1.2 研究现状 |
1.2.1 多核计算系统 |
1.2.2 多核任务调度 |
1.3 主要研究内容 |
1.4 课题来源 |
1.5 论文组织结构 |
第2章 系统架构模型 |
2.1 平台整体结构 |
2.1.1 控制处理器 |
2.1.2 运算单元 |
2.1.3 共享存储单元 |
2.1.4 互连网络 |
2.1.5 外围设备 |
2.2 编程模型 |
2.3 指令集 |
2.3.1 线程指令 |
2.3.2 任务指令 |
2.3.3 底层指令 |
2.4 本章小结 |
第3章 线程级多任务并行方案 |
3.1 任务并行与指令并行的区别 |
3.2 任务并行化原理 |
3.2.1 乱序执行 |
3.2.2 多线程技术 |
3.3 任务级多线程实现方案 |
3.3.1 取指策略 |
3.3.2 资源分配策略 |
3.3.3 线程切换 |
3.4 任务乱序执行方法 |
3.4.1 寄存器重命名 |
3.4.2 动态调度 |
3.5 寄存器映射方案 |
3.6 本章小结 |
第4章 控制处理器设计实现 |
4.1 整体结构 |
4.2 通讯接口 |
4.2.1 三层网络接口模块 |
4.2.2 仲裁模块 |
4.2.3 数据网络交叉开关模块 |
4.3 线程调度 |
4.4 线程管理单元 |
4.5 线程执行 |
4.5.1 取指 |
4.5.2 译码 |
4.5.3 重命名 |
4.5.4 动态调度 |
4.5.5 发射 |
4.5.6 写回 |
4.5.7 提交 |
4.6 本章小结 |
第5章 实验评估 |
5.1 系统集成 |
5.2 资源消耗 |
5.3 测试用例设计 |
5.4 性能测试 |
5.4.1 任务粒度的影响 |
5.4.2 任务相关度的影响 |
5.4.3 运算单元(PU)数量的影响 |
5.4.4 任务指令队列的影响 |
5.5 大点数FFT案例研究与分析 |
5.6 本章小结 |
第6章 总结与展望 |
6.1 总结 |
6.2 展望 |
参考文献 |
攻读硕士学位期间的学术活动及成果情况 |
(5)面向分组密码硬件的并发错误检测技术研究(论文提纲范文)
摘要 |
Abstract |
第一章 绪论 |
1.1 研究背景及意义 |
1.2 研究现状 |
1.3 研究内容及创新点 |
1.3.1 研究内容 |
1.3.2 主要创新点 |
1.4 论文结构安排 |
第二章 分组密码硬件故障与检测方法分析 |
2.1 分组密码实现技术 |
2.1.1 分组密码 |
2.1.2 实现技术 |
2.2 密码硬件故障与故障攻击 |
2.2.1 硬件故障分类 |
2.2.2 故障攻击分类 |
2.3 并发错误检测技术 |
2.3.1 技术分类 |
2.3.2 安全威胁 |
2.4 CED技术安全性分析 |
2.5 面向密码硬件的并发错误检测方案 |
2.5.1 结合安全性评估的CED方案设计流程 |
2.5.2 密码硬件与CED融合设计流程 |
2.6 本章小结 |
第三章 面向操作级电路的并发错误检测方法 |
3.1 操作级低开销错误检测方法分析 |
3.1.1 分组密码算法基本操作 |
3.1.2 低开销错误检测技术 |
3.2 面向复合域S盒的高效并发错误检测方案 |
3.2.1 检测方案结构参数计算模型 |
3.2.2 分块多奇偶校验方案设计 |
3.2.3 分块预测奇偶计算 |
3.3 基于EDACSE算法的故障检测S盒电路优化 |
3.3.1 增强型延时感知CSE算法 |
3.3.2 可调节电路结构优化设计 |
3.3.3 电路结构复杂性分析 |
3.4 性能评估 |
3.4.1 EDACSE优化效果 |
3.4.2 故障检测能力 |
3.4.3 性能参数 |
3.5 本章小结 |
第四章 面向轮运算级电路的并发错误检测方法 |
4.1 基于半轮不变的并发错误检测方法 |
4.2 AES算法的半轮运算不变性 |
4.2.1 加密轮描述 |
4.2.2 半轮不变性 |
4.3 故障检测AES轮结构 |
4.3.1 轮结构设计 |
4.3.2 安全性分析 |
4.4 方法适用性分析 |
4.5 性能评估 |
4.5.1 故障检测能力 |
4.5.2 性能参数 |
4.6 本章小结 |
第五章 面向密码处理器的并发错误检测方法 |
5.1 面向密码处理器的低开销CED方法分析 |
5.1.1 并发错误检测方法选择 |
5.1.2 冗余并行计算性能开销模型 |
5.2 面向密码流处理器的高效并发错误检测方案 |
5.2.1 分组密码流处理器 |
5.2.2 基于软件流水的分组复制 |
5.2.3 指令复制 |
5.2.4 检查点设置 |
5.3 支持高效错误检测的处理器架构 |
5.3.1 整体结构 |
5.3.2 硬件流水线 |
5.3.3 软硬件流水协同 |
5.4 指令复制算法 |
5.4.1 指令复制范围 |
5.4.2 复制算法描述 |
5.5 性能评估 |
5.5.1 典型算法复制 |
5.5.2 故障检测能力 |
5.5.3 开销对比分析 |
5.6 本章小结 |
第六章 总结与展望 |
6.1 总结 |
6.2 展望 |
致谢 |
附录A:分组密码算法中的基本操作 |
附录B:不同操作的EDC计算公式 |
参考文献 |
作者简历 |
(6)超标量处理器能效优化关键技术研究(论文提纲范文)
摘要 |
ABSTRACT |
第一章 绪论 |
1.1 研究背景 |
1.1.1 指令级并行技术的发展 |
1.1.2 超标量处理器的能效问题 |
1.1.3 超标量处理器受到的限制 |
1.2 本文的研究动机与主要工作 |
1.3 论文组织结构 |
第二章 相关工作 |
2.1 现代处理器中的功耗调节技术 |
2.2 基于Trace的流水线结构优化 |
第三章 处理器平台及功耗计算 |
3.1 CPU模式 |
3.1.1 单CPI的 SimpleCPU模式 |
3.1.2 顺序CPU模式(InOrder CPU) |
3.1.3 乱序流水线CPU模式(O3CPU) |
3.2 指令集 |
3.3 功耗模拟 |
3.4 本章小节 |
第四章 基于TRACE的细粒度超标量流水线功耗模型 |
4.1 引言 |
4.2 体系结构与模式设计 |
4.2.1 OoO模式 |
4.2.2 OoOT模式 |
4.2.3 OoOR模式 |
4.3 模式切换 |
4.3.1 切换时机 |
4.3.2 模式切换分析 |
4.4 在Gem5 中的实现与分析 |
4.4.1 Trace的生成与选择 |
4.4.2 寄存器重命名 |
4.4.3 支持精确异常处理(Precise Interrupts) |
4.5 本章小节 |
第五章 实验测试及分析 |
5.1 模拟和系统配置 |
5.2 Benchmarks |
5.3 测试和分析 |
5.3.1 OoOT模式的性能与功耗分析 |
5.3.2 OoOR模式的性能与功耗分析 |
5.3.3 整体性能与功耗分析 |
5.3.4 与DVFS技术相互补充 |
5.4 本章小结 |
第六章 结束语 |
6.1 论文工作总结 |
6.2 工作展望 |
致谢 |
参考文献 |
作者在学期间取得的学术成果 |
(7)基于流体系结构的分组密码并行处理架构研究(论文提纲范文)
摘要 |
Abstract |
第一章 绪论 |
1.1 研究背景及意义 |
1.2 研究现状 |
1.2.1 流体系结构研究现状 |
1.2.2 可重构密码处理器研究现状 |
1.3 研究内容及创新点 |
1.3.1 研究内容 |
1.3.2 主要创新点 |
1.4 论文结构安排 |
第二章 分组密码流处理特征分析与并行性研究 |
2.1 分组密码概述 |
2.2 分组密码流处理特征分析 |
2.2.1 流处理思想 |
2.2.2 分组密码的流处理过程 |
2.2.3 分组密码的流处理特征 |
2.3 分组密码算法并行性分析 |
2.3.1 分组间并行性分析 |
2.3.2 分组内并行性分析 |
2.4 分组密码的并行性划分 |
2.4.1 并行性开发途径 |
2.4.2 分组密码的四维度并行性 |
2.5 本章小结 |
第三章 基于Amdahl定律的四维度并行处理模型研究 |
3.1 面向分组密码的四维度并行处理模型 |
3.1.1 Amdahl定律研究 |
3.1.2 开发PIB时的加速比推导 |
3.1.3 开发PAB时的加速比推导 |
3.1.4 开发FDP时的加速比推导 |
3.2 四维度并行处理模型参数分析 |
3.2.1 算法参数f和w分析 |
3.2.2 PIB参数α和β分析 |
3.2.3 PAB参数μ和δ分析 |
3.3 四维度并行性开发优先顺序 |
3.4 并行架构设计和算法并行实现原则 |
3.4.1 并行架构设计原则 |
3.4.2 算法并行实现原则 |
3.5 本章小结 |
第四章 面向分组密码的可重构并行处理架构设计 |
4.1 设计思路 |
4.2 基于流体系结构的并行处理架构 |
4.2.1 SRBPA整体结构 |
4.2.2 SRBPA工作流程 |
4.3 可重构并行处理簇设计 |
4.3.1 可重构并行处理单元RPU |
4.3.2 DCR和RDN设计 |
4.3.3 互连总线和RBN设计 |
4.3.4 密钥便签存储器设计 |
4.3.5 IO单元设计 |
4.4 多维可扩展性研究 |
4.4.1 簇内扩展 |
4.4.2 簇间扩展 |
4.4.3 多核扩展 |
4.5 本章小结 |
第五章 基于VLIW可重构的指令集及软件流水并行实现研究 |
5.1 核心级指令集设计 |
5.1.1 运算类指令 |
5.1.2 配置类指令 |
5.2 VLIW可重构技术 |
5.2.1 VLIW可重构思想 |
5.2.2 VLIW可重构生成算法 |
5.2.3 VLIW可重构分派网络 |
5.3 硬件流水线设计 |
5.3.1 流水栈划分 |
5.3.2 冲突及其解决策略 |
5.4 软件流水并行实现研究 |
5.4.1 软件流水技术 |
5.4.2 AES-128的软件流水并行实现 |
5.4.3 软硬件流水协同执行 |
5.5 本章小结 |
第六章 算法映射、验证及性能评估 |
6.1 典型分组密码算法映射 |
6.1.1 Feistel结构算法映射 |
6.1.2 SP结构算法映射 |
6.1.3 LM结构算法映射 |
6.2 原型系统验证 |
6.2.1 仿真验证平台 |
6.2.2 仿真验证结果 |
6.3 性能评估与分析 |
6.3.1 处理架构性能评估 |
6.3.2 RPU利用率分析 |
6.4 本章小结 |
第七章 总结与展望 |
7.1 总结 |
7.2 展望 |
致谢 |
附录:分组密码算法中的基本操作 |
参考文献 |
作者简历 |
(8)CAMPER:一种高效能处理器核体系结构关键技术研究与实现(论文提纲范文)
摘要 |
Abstract |
第一章 绪论 |
1.1 研究背景 |
1.1.1 传统处理器体系结构的局限性 |
1.1.2 多核处理器体系结构的发展机遇 |
1.2 研究思路 |
1.3 研究内容 |
1.4 论文结构 |
第二章 相关研究 |
2.1 高效能流水线技术 |
2.1.1 POWER6处理器流水线结构 |
2.1.2 ITANIUM2处理器流水线结构 |
2.2 多核多线程技术 |
2.2.1 OPENSPARC T2处理器结构 |
2.3 向量扩展技术 |
2.3.1 MIC微体系结构 |
2.4 功耗优化方法研究 |
2.5 系统容错方法研究 |
2.6 本章小结 |
第三章 CAMPER体系结构的精简核设计 |
3.1 引言 |
3.2 总体结构 |
3.2.1 系统结构 |
3.2.2 预测执行 |
3.2.3 前瞻机制 |
3.3 微体系结构 |
3.3.1 流水线 |
3.3.2 执行模型 |
3.3.3 指控流水线 |
3.3.4 软硬结合的多级分支预测 |
3.3.5 软硬结合的指令分派 |
3.3.6 寄存器映射 |
3.4 精简的设计实现 |
3.4.1 低开销的指令分派 |
3.4.2 虚拟多端口存储部件 |
3.4.3 精简结构性能比较 |
3.5 评估分析 |
3.6 本章小结 |
第四章 CAMPER的多线程向量扩展技术 |
4.1 引言 |
4.2 向量多线程的技术原理 |
4.3 面向高性能计算的向量指令集扩展 |
4.3.1 寄存器堆 |
4.3.2 指令扩展 |
4.4 多线程向量执行模型 |
4.4.1 多路分组交叉线程调度模型 |
4.4.2 向量掩码条件执行模型 |
4.5 多线程向量存储结构 |
4.5.1 向量存储层次 |
4.5.2 向量与标量数据的一致性 |
4.5.3 向量数据的批量载入机制 |
4.5.4 实验评估 |
4.6 多线程向量的性能分析模型 |
4.6.1 矩阵乘法算法描述 |
4.6.2 存储带宽分析模型 |
4.6.3 存储器延迟模型 |
4.6.4 L2 Cache大小 |
4.6.5 评估分析 |
4.7 本章小结 |
第五章 CAMPER的低功耗设计 |
5.1 能量均衡的处理器设计 |
5.2 体系结构设计阶段的低功耗设计 |
5.2.1 软件驱动的处理器待命 |
5.2.2 软件驱动的电源关断 |
5.2.3 软件驱动的动态电压/频率调整 |
5.3 逻辑设计阶段的低功耗设计 |
5.3.1 层次式时钟门控 |
5.3.2 基于指令队列的循环检测与执行 |
5.3.3 流量感知的动态频率调节技术 |
5.4 物理设计阶段的低功耗设计 |
5.4.1 设计实现的基本流程 |
5.4.2 CPF文件的编写 |
5.4.3 基于CPF的综合 |
5.4.4 支持PSO设计的特殊物理单元 |
5.4.5 支持PSO设计的电源规划 |
5.4.6 PSO单元的组织 |
5.4.7 面向低功耗的物理检查 |
5.5 低功耗设计效果评估 |
5.5.1 硅前的浪涌电流分析 |
5.5.2 硅前的实验与验证 |
5.6 本章小结 |
第六章 CAMPER高可靠设计技术 |
6.1 引言 |
6.2 片上存储的高可靠性设计 |
6.2.1 传统的片上Cache存储体容软错误设计方法 |
6.2.2 路交叉的低开销Cache存储体容软错误设计方法 |
6.2.3 实验数据与分析 |
6.3 多线程向量容错执行模型 |
6.4 本章小结 |
第七章 原型样片评测 |
7.1 TENT总体结构 |
7.2 TENT性能评测结果 |
7.2.1 SPEC CPU 2000测试 |
7.2.2 SPEC CPU 2006测试 |
7.2.3 SPEC JVM测试 |
7.2.4 STREAM测试 |
7.2.5 NPB测试 |
7.3 本章小结 |
第八章 结束语 |
8.1 工作总结 |
8.2 未来研究方向 |
致谢 |
参考文献 |
作者在学期间取得的学术成果 |
作者在学期间取得的科研成果 |
作者在学期间参加的科研项目 |
(9)面向动态双模多层次并行体系结构的编译优化技术研究(论文提纲范文)
摘要 |
Abstract |
第一章 绪论 |
1.1 研究背景 |
1.1.1 动态双模多层次并行体系结构介绍 |
1.1.2 动态双模多层次并行体系结构特点分析 |
1.1.3 动态双模多层次并行体系结构对编译提出的挑战 |
1.2 相关研究工作 |
1.2.1 SIMD向量化相关研究 |
1.2.2 数据重组相关研究 |
1.2.3 循环展开相关研究 |
1.2.4 多面体优化相关研究 |
1.3 本文的工作和创新 |
1.4 论文结构 |
第二章 动态双模多层次并行模型 |
2.1 引言 |
2.2 动态双模多层次并行执行模型 |
2.2.1 动态双模 |
2.2.2 宽字向量SIMD |
2.2.3 超长指令字 |
2.3 编程模型 |
2.4 多层次并行代价模型 |
2.5 本章小结 |
第三章 支持任务级并行的动态双模优化调度技术 |
3.1 引言 |
3.2 动态双模优化调度技术 |
3.2.1 参数分析 |
3.2.2 独立任务双模调度 |
3.2.3 流调度 |
3.2.4 双模切换调度 |
3.2.5 动态双模切换代价模型 |
3.3 实验与分析 |
3.4 本章小结 |
第四章 支持数据级并行的宽字向量SIMD数据重组编译优化技术 |
4.1 引言 |
4.2 宽字向量SIMD数据重组编译优化技术 |
4.2.1 多模数据重组 |
4.2.2 宽向量填充数据重组 |
4.2.3 分支数据重组 |
4.3 宽字向量SIMD数据重组编译优化技术的实际应用 |
4.3.1 向量数据布局 |
4.3.2 向量运算中的数据重组 |
4.3.3 分级数据重组 |
4.4 实验与分析 |
4.5 本章小结 |
第五章 支持数据级并行和指令级并行的多层次循环优化编译技术 |
5.1 引言 |
5.2 多层次循环优化编译技术 |
5.2.1 多面体优化模块 |
5.2.2 子字与超字SIMD向量化模块 |
5.2.3 面向VLIW的循环优化模块 |
5.2.4 运行时优化模块 |
5.3 实验与分析 |
5.4 本章小结 |
第六章 动态双模多层次并行编译系统 |
6.1 动态双模多层次并行编译系统介绍 |
6.2 三种编译优化技术在编译系统中的作用 |
6.3 实验与分析 |
6.4 本章小结 |
第七章 结束语 |
7.1 论文工作总结 |
7.2 课题研究展望 |
致谢 |
参考文献 |
作者在学期间取得的学术成果 |
附录:英文缩写对照表 |
(10)面向性能的SIMD DSP指令流调度技术研究(论文提纲范文)
摘要 |
Abstract |
第一章 绪论 |
1.1 课题研究背景 |
1.2 VLIW架构超宽SIMD DSP流控技术面临的问题与思考 |
1.2.1 设计空间与应用中循环特征分析 |
1.2.2 基于VLIW结构的变长指令取指发射问题 |
1.2.3 非规整控制流中向量分支的约束 |
1.2.4 非规整控制流中迭代间相关的约束 |
1.2.5 规整控制流的循环加速问题 |
1.3 面向性能的SIMD DSP指令流控制技术相关研究 |
1.3.1 设计空间探索 |
1.3.2 变长指令的取指发射机制 |
1.3.3 向量分支问题的克服 |
1.3.4 体间相关问题的克服 |
1.3.5 规整控制流的循环加速 |
1.4 本文的主要研究内容与创新工作 |
1.5 本文的组织结构 |
第二章 超高性能DSP的参数化功耗和性能综合模型 |
2.1 引言 |
2.2 系统抽象 |
2.3 参数化性能与功耗综合模型 |
2.3.1 参数化性能模型 |
2.3.2 参数化功耗模型 |
2.4 实验与评测 |
2.4.1 模型有效性验证 |
2.4.2 结果分析 |
2.5 本章小结 |
第三章 基于VLIW结构的变长指令高性能取指发射机制 |
3.1 引言 |
3.2 变长指令取指流水线架构与发射机制 |
3.2.1 无效取指的作废机制 |
3.2.2 缺失指令的旁路机制 |
3.2.3 变长指令发射窗 |
3.3 实验与评测 |
3.3.1 实验平台 |
3.3.2 实验结果及分析 |
3.4 本章小结 |
第四章 向量分支线程压缩:SIMD结构上分支处理加速技术 |
4.1 引言 |
4.2 向量分支线程压缩机制与硬件实现 |
4.2.1 向量分支线程压缩DBTC |
4.2.2 指令cache阵列与派发单元 |
4.2.3 预取和填充引擎 |
4.2.4 模式切换与取指单元 |
4.2.5 窄向量宽度应用的支撑 |
4.3 相关工作比较 |
4.4 实验与评测 |
4.4.1 硬件开销 |
4.4.2 性能评估 |
4.5 本章小结 |
第五章 解耦迭代映射:SIMD结构上体间相关循环加速技术 |
5.1 引言 |
5.2 解耦迭代映射机制 |
5.2.1 体间相关循环的解耦迭代映射 |
5.2.2 编译支持 |
5.3 DIM调度与实现 |
5.3.1 预取填充引擎与指令缓存阵列 |
5.3.2 循环控制单元与指令派发单元 |
5.3.3 数据缓冲链 |
5.4 实验与评测 |
5.4.1 实验建立与结果 |
5.4.2 结论分析 |
5.5 本章小结 |
第六章 规整控制流的循环加速技术与多模式指令流出 |
6.1 引言 |
6.2 规整控制流的循环加速技术 |
6.2.1 硬件支持软流水(HSSP) |
6.2.2 实验评估 |
6.3 多模式指令流出 |
6.3.1 多模式指令流出技术概述 |
6.3.2 多模式指令流出的硬件实现 |
6.3.3 多模式指令流出机制 |
6.3.4 实验平台 |
6.3.5 代价与性能权衡 |
6.4 本章小结 |
第七章 结束语 |
7.1 本文所做的工作 |
7.2 下一步的研究工作 |
致谢 |
参考文献 |
作者在学期间取得的学术成果 |
四、指令级并行性开发关键技术的研究与实现(论文参考文献)
- [1]面向飞腾DSP的模板匹配算法的实现与优化[D]. 胡江涛. 郑州大学, 2020(02)
- [2]分组密码专用描述语言及编译技术研究[D]. 李盛. 战略支援部队信息工程大学, 2020(03)
- [3]用于图像目标检测的可扩展协处理器架构设计[D]. 姜庆峰. 华中科技大学, 2019(03)
- [4]线程级多任务并行动态调度研究[D]. 陈楠. 合肥工业大学, 2019(01)
- [5]面向分组密码硬件的并发错误检测技术研究[D]. 戴强. 战略支援部队信息工程大学, 2018(12)
- [6]超标量处理器能效优化关键技术研究[D]. 番丝江. 国防科技大学, 2017(02)
- [7]基于流体系结构的分组密码并行处理架构研究[D]. 王寿成. 解放军信息工程大学, 2017(06)
- [8]CAMPER:一种高效能处理器核体系结构关键技术研究与实现[D]. 高军. 国防科学技术大学, 2014(02)
- [9]面向动态双模多层次并行体系结构的编译优化技术研究[D]. 阳柳. 国防科学技术大学, 2014(02)
- [10]面向性能的SIMD DSP指令流调度技术研究[D]. 杨惠. 国防科学技术大学, 2014(01)