动态重构硕士论文-动态SSE指令集pc处理器相关论文

论文价格:免费 论文用途:其他 编辑:www.sblunwen.com 点击次数:59
论文字数:30000 论文编号:sb201208231841452496 日期:2012-08-24 来源:硕博论文网

 

  
1绪论
        1.1课题的研究背景在高端计算机系统追求高性能的发展过程中,出现了很多致命弱点,如体积越来越大、编程越来越复杂、效率越来越低、功耗和成本越来越高等。随着计算机体系的发展,迫切需要开发高效能的计算机体系结构取代高性能的计算机体系结构。在半导体技术不太发达的七十年代,存储资源十分昂贵,为了节省存储资源,在进行复杂指令集计算机(ComplicatedInstructionSetComputerCISC)体系结构设计时不得不考虑成本,设计者通过采用紧凑的指令编码,变长指令和使用少量的寄存器的方式,减少存储资源的使用。在半导体技术发展的八十年代,单片芯片上的晶体管数量不断增加,设计者通过减少指令数、简化控制逻辑,就可以在一片芯片上实现整个处理器的设计,精简指令集计算(ReducedInstructionSetComputerRISC)体系结构得到迅速发展。RISC体系结构通过采用寄存器一寄存器通信机制,来支持编译器调度设计和高效流水线设计。RISC与CISC相比具有复杂性低、面积小、效率高等优点,在系统设计中得到了广泛的使用【’〕。RISC激进的深度流水线设计在带来性能增长的同时,也带来了难以控制的功耗增加。在半导体技术和集成电路高速发展的今天,CISC和RISC体系结构不能满足人们对高效能计算机的需求,只有改变计算机的体系结构和处理器的体系结构,才能解决高性能计算机系统的高功耗、高成本和编程复杂等问题。
        随着半导体技术和计算机技术的发展,基于现场可编程器件(FieldProgrammableGateArrayFPGA)的动态重构技术出现,使得计算机体系结构向动态指令集计算机体系过度变得可能。新型处理器的设计在适应应用多样性问题的同时,满足提高片上资源利用率、降低设计复杂性、提高系统可靠性、降低成本和功耗等多方面要求。基于动态重构技术的动态重构处理器体系结构的基本设计思想是通过动态配置片上大量的处理单元、存储单元和互连单元,实现支持指令级并行性(InstructionLevelParallelism}ILP),数据级并行性(DataLevelParallelismDLP)和线程级并行性(ThreadLevelParallelismTLP)等各种不同类型并行性的计算模型[f2l,满足一个宽的应用范围内高性能要求,在提高片上硬件资源利用率的同时,实现了通用处理器适应的灵活性和专用处理器的高性能和高效率的集合。基于动态重构技术设计的动态指令集计算机处理器体系结构能够很好地利用未来的半导体技术提供的能力,具有动态重构功能的动态指令集处理器体系结构将成为未来高效能计算机体系的研究热点。
        1.2动态重构处理器系统的研究意义在进行计算功能的电子系统设计时,或者采用软件设计或者采用硬件设计方法。采用软件设计时,主要由处理器、内存和部分外设组成计算系统,编写软件程序完成大部分的逻辑处理和运算功能,外设只起辅助作用;采用硬件设计时,将硬件电路设计成特定运算单元或处理单元,硬件单元完成主要计算任务,软件程序用于协调各部件协同工作或者被省去。软件设计具有开发简单、灵活可变、易升级的优点,但是软件程序却有运行速度慢、效率低的缺点;硬件设计是为特定应用特别指定,具有运行效率高、速度快的优点,但是通常硬件设计开发周期长、一次性投入大、缺乏灵活性、难以升级。在实际设计过程中,设计者会根据实际应用折衷选择设计方案,但是在某些高要求的系统设计中,却会出现硬件优点和软件优点难以兼得。随着半导体技术和计算机技术的发展,尤其是可动态重构FPGA的出现,基于动态重构技术的动态重构处理器系统成为当前计算系统研究的热点。
        在软件实现的处理器系统中,处理器可以动态地调用算法程序段,体现了软件算法的灵活性,却损失了一定的性能;在硬件实现的处理器系统中,算法被固化成硬件电路,提高了算法性能,却不具备灵活性;在动态重构处理器系统中,硬件的重构配置信息可以像软件程序一样被动态调用或修改,既具有硬件计算的高性能,又具有软件的灵活性,将软件方法和硬件方法的优势完美结合在一起。表1.1是硬件方法、软件方法和动态重构方法的性能比较。表1.1三种算法的性能比较Tab.1.1Performancecomparisonofthreealgorithms算法的实现方式速度并行性资源消耗一次性投入成本可升级性开发难易硬件软件动态重构系统快可实现任何意义上的并行随着应用环境变换大无难慢仅能实现指令集并行不变刁、有易较快可实现大部分的并行方式不变小有(发展中)将处理器和可重构硬件组合在一起实现动态重构处理器系统的思想是:利用处理器的灵活性,使系统对大多数应用都具有较高的性能;利用重构的专用硬件计算电路,提高系统的专用性。动态重构处理器系统根据不同应用需求,定制不同的专用计算功能,系统根据实际应用将对应的硬件配置信息重构到可重构硬件上。动态重构处理器系统具有硬件专用处理器高性能的同时,又具有软件处理器的灵活。
 
 
参考文献
[1]施志林,RISC, CISC技术比较与研究〔J].中国科技信息,2008, (11) :131-132.
[2]顾士平,华晓勤,王惠斌.动态可重构指令计算机【J].计算机时代,2008, (3) :7-8.
[3]黄俊,朱明程.动态重构SOPC系统总线上IP模块的应用研究[D].深圳:深圳大学,2005.
[4] M. Handa, R. Vemuri. An efficient algorithm for finding empty space for online FPGAplacement[C].Design Automation Conference, 2004.
[5] H. Walder, M. Platzner. Non-preemptive multitasking on FPGAs:Task placement and foot-print transform[C].International Conference on Engineering of Reconfigable Systems and Architectures, 2002.
[6] Altera, Inc. Stratix-II Device Handbook[EB/OL].V1.2,  July 2005.
 
 
摘要 4-5 
Abstract 5 
1 绪论 8-12 
    1.1 课题的研究背景 8-9 
    1.2 动态重构处理器系统的研究意义 9-10 
    1.3 本文的主要工作 10-11 
    1.4 本文开展的工作环境 11-12 
2 动态重构的技术基础 12-31 
    2.1 动态重构的配置结构 12-17 
    2.2 可编程 FPGA的硬件结构 17-19 
    2.3 动态重构系统的结构 19-20 
    2.4 动态重构的设计方法 20-25 
        2.4.1 基于差异的重构设计 20-21 
        2.4.2 基于模块的重构设计 21-24 
        2.4.3 基于 EAPR的重构设计 24-25 
    2.5 自重构系统概述 25-31 
        2.5.1 自重构系统的关键技术 25-27 
        2.5.2 自重构系统 27-31 
3 SSE指令集的64位 RISC_CPU设计 31-47 
    3.1 精简指令集计算机处理器的设计 31-39 
        3.1.1 RISC_CPU各组成部件的设计 32-37 
        3.1.2 RISC_CPU寻址方式和指令系统 37-39 
    3.2 SSE1指令集 39-41 
        3.2.1 实现的 SSE1指令 39-40 
        3.2.2 SSE1指令的RISC_CPU的仿真与测试 40-41 
    3.3 SSE2指令集 41-43 
        3.3.1 实现的SSE2指令 41-42 
        3.3.2 SSE2指令的RISC_CPU的仿真与测试 42-43 
    3.4 SSE4指令集 43-47 
        3.4.1 实现64位运算的 SSE4指令 43-44 
        3.4.2 SSE4指令的RISC_CPU的仿真与测试 44-45 
        3.4.3 实现128位运算的 SSE4指令 45-47 
4 DISC_CPU的自重构设计与实现 47-59 
    4.1 DISC_CPU自重构系统的基本结构及设计流程 47-50 
    4.2 DISC_CPU自重构系统设计 50-55 
        4.2.1 系统硬件设计 50-51 
        4.2.2 系统软件设计 51-52 
        4.2.3 系统模块文件的设计 52-53 
        4.2.4 系统的重构实现 53-55 
    4.3 设计结果分析 55-59 

QQ 1429724474 电话 18964107217