您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 计算机体系结构 完整讲义
2020年2月24日星期一1•第1章计算机系统设计基础•第2章数据表示与指令系统性能分析•第3章流水技术和向量处理•第4章阵列计算机•第5章多处理机系统•第6章数据流计算机2020年2月24日星期一2第1章计算机系统设计基础•1.1计算机系统的基本概念•1.2计算机系统的设计技术•1.3计算机系统的性能评价•1.4计算机系统结构的发展2020年2月24日星期一3本章学习要求•了解计算机系统的多级层次结构•掌握系统结构、组成和实现的定义及属性,会透明性分析•掌握计算机系统的设计原理、性能计算•掌握计算机系统的分类,特别是Flynn分类•了解软件对计算机系统结构发展的影响2020年2月24日星期一41.1计算机系统的基本概念•机器:能存储和执行相应语言程序的算法和数据结构的执行体•计算机语言:是用以描述控制流程的、有一定规则的字符集合–语言不是专属软件范畴,可以介属于计算机系统的各个层次,具有不同作用从使用语言的角度上,将计算机系统看成按功能划分的多级层次结构机器、汇编、高级、应用语言低级高级后者比前者功能更强、使用更方便;而前者是后者发展的基础,在单条指令的执行速度相比较,前者更快。1.1.1计算机系统的多级层次结构2020年2月24日星期一6计算机系统的多级层次结构图微程序/硬联直接由硬件执行解释部分解释(操作系统)翻译(汇编程序)翻译(编译程序)翻译(应用程序包)应用语言级L5虚拟机高级语言机器L4虚拟机汇编语言机器L3虚拟机应用软件固件系统软件传统机器级操作系统机器软硬件交界面L2虚拟机物理机器硬件软件2020年2月24日星期一7多级层次结构(机器—语言)•M5:应用语言机器------应用语言(L5)•M4:高级语言机器------高级语言(L4)•M3:汇编语言机器------汇编语言(L3)•M2:操作系统机器------作业控制语言(L2)•M1:传统机器------------机器语言(L1)•M0:微程序机器---------微程序语言(L0)2020年2月24日星期一8从设计人员看到的层次•应用程序级用户•高级语言级高级语言程序员•汇编语言级汇编语言程序员•操作系统级操作员•机器语言级机器语言程序员•微程序控制级逻辑程序员•硬联逻辑级硬件设计员翻译(Translation):先用转换程序将高一级机器级上的程序整个地变换成低一级机器级上可运行的等效程序(中间程序),然后再在低一级机器级上去实现的技术。例:英语翻译计算机系统中的翻译功能常由应用程序包、编译程序、汇编程序等软件完成。解释(Interpretation):在低一级机器级上用它的一串语句或指令来仿真高一级机器上的一条语句或指令的功能,通过对高一级机器语言程序中的每条语句或指令逐条解释来实现的技术解释过程中不生成中间程序(节省了存储空间)或者:一条N+1级指令--〉一串N级指令例:解释一件事翻译和解释是语言实现的两种基本技术。•解释比翻译费时,但节省存储空间•翻译为整体行为,可以优化,效率高,与平台有关•解释为局部行为,不优化,效率低,与平台无关翻译+解释:Java2020年2月24日星期一12控制流程的三种实现方法•全硬件、软硬件结合、全软件–逻辑上等价,物理意义上不等价–硬件实现:速度快、成本高;灵活性差、占用内存少–软件实现:速度低、复制费用低;灵活性好、占用内存多•发展趋势–硬件实现的比例越来越高–硬件所占的成本越来越低2020年2月24日星期一13计算机系统的软硬件成本变化成本年代软件硬件70年代从概念和功能上将计算机系统看成多级层次结构的优点:1.理解软件、硬件、固件的地位和作用2.理解各种语言的实质和实现途径3.探索虚拟机新的实现方法和新的系统设计由硬件固件实现——高级语言机器多处理机系统——由真正微处理机实现4.理解计算机体系结构的定义5.在一台真正的宿主机上通过模拟或仿真另一台不同的假想机器——自虚拟技术2020年2月24日星期一151.1.2系统结构、组成与实现•定义与理解•三者的相互关系2020年2月24日星期一16计算机系统结构的定义SystemArchitecture•是对计算机系统中各机器级之间界面的划分和定义,以及对各级界面上、下的功能进行分配–1964年,IBM/360系列机的总设计工程师G.M.Amdahl、G.A.Blauw、F.P.Brooks等人提出。也称体系结构。–是从程序员的角度所看到的系统的属性,是概念上的结构和功能上的行为–它不同于数据流程和控制的组织,不同于逻辑设计以及物理实现方法2020年2月24日星期一17定义的理解•从两个角度理解一是计算机系统结构既然是“从程序员的角度所看到的系统的属性”,那么每一级“机器”都有一个系统结构,而且它们相互不同二是将计算机的系统结构定义在传统机器界面(M1)程序员所看到的计算机的基本属性2020年2月24日星期一18计算机系统结构的基本属性•一般应包括以下几个方面–指令系统、数据表示、操作数的寻址方式–寄存器的构成定义、中断机构和例外条件–存储体系和管理、I/O结构–机器工作状态定义和切换、信息保护在所有系统结构的特性中,指令系统的外特性是最关键的2020年2月24日星期一19计算机组成ComputerOrganization•研究硬件系统各组成部分的内部构造和相互联系,以实现机器指令级的各种功能和特性,目标是用最合理地方式将各种设备和部件连接为计算机,以达到最优的性价比,从而实现所确定的系统结构。它是计算机系统结构的逻辑实现,包括机器级内的数据流和控制流的组成以及逻辑设计等。2020年2月24日星期一20计算机组成的基本属性•数据通路宽度•各种操作功能部件的共享程度•专用部件的设置•功能部件的并行性•缓冲和排队技术•控制机构的组成方式•预测技术•可靠性技术2020年2月24日星期一21计算机实现ComputerImplementation研究各部件的物理结构、机器的制造技术和工艺等,它着眼于器件技术和微组装技术•主存的物理实现,如存储器采用什么样器件,逻辑电路设计和微组装技术均属计算机实现它是计算机组成的物理实现2020年2月24日星期一22定义理解举例主存系统–主存容量与编址方式的确定-----------系统结构–主存速度的确定、逻辑结构的模式---组成–器件的选定、电路的设计、组装技术---实现指令系统–指令系统的确定--------系统结构–指令的实现--------------组成–具体电路、器件设计及装配技术---实现2020年2月24日星期一23系统结构、组成和实现相互关系*具有相同系统结构的计算机可以采用不同的组成,一种计算机组成可以采用多种不同的计算机实现(系列机与兼容机)*采用不同的系统结构会使可以采用的组成技术产生差异,计算机组成也会影响系统结构2020年2月24日星期一24是否设置乘方/开方指令逻辑设计1(硬联电路)实现方案1(V1,$1,T1)逻辑设计3微程序逻辑设计2(ROM查表)实现方案2(V2,$2,T2)实现方案3(V3,$3,T3)相同系统结构的计算机可以采用不同的组成相同计算机组成可以采用多种不同的计算机实现计算机系统结构计算机组成计算机实现是否2020年2月24日星期一25举例:不同系统结构对软件的影响A:=B+CD:=E*F面向三地址寻址:ADDB,C,AMPYE,F,D面向寄存器:LOADR1,BADDR1,CSTORER1,ALOADR2,EMPYR2,FSTORER2,D2020年2月24日星期一26透明性Transparency•本来存在的事物或属性,从某个角度去看却看不到。•在一个计算机系统中,低层机器的属性往往对高层机器的程序员是透明的。•计算机组成设计的内容,对传统机器程序员来讲一般是透明的。2020年2月24日星期一27举例1在多级层次结构的计算机系统中,传统机器级的概念性结构和功能特性,对高级语言的程序员来说是透明的,而对汇编语言的程序员来说不是透明的。这说明高级语言的程序员不必知道机器的指令系统、中断机构等,这些本来存在的属性,对高级语言的程序员来说好像不存在一样,所以说是透明的。对计算机系统结构来说,存储器采用交叉存取还是并行存取、CPU内部的数据通路的宽度是8位还是16位,这些都是透明的,而对计算机组成来说这些不是透明的。2020年2月24日星期一28举例2指令执行采用串行、重叠还是流水控制方式,对系统结构来说是透明的,但对计算机组成来说不是透明的。乘法指令采用专用乘法器实现,对系统结构来说是透明的,而对计算机组成来说不是透明的存储器采用哪种芯片,对计算机系统结构和组成来说是透明的,而对计算机实现来说不是透明的。2020年2月24日星期一291.1.3计算机系统的分类•采用的基本器件分类•计算机系统成本分类•1966年MichaelJ.Flynn分类•1978年DavidJ.Kuck分类•1972年冯泽云分类2020年2月24日星期一30一按采用的基本器件分类•计算机的更新换代–第一代:电子管计算机–第二代:晶体管计算机–第三代:中小规模集成电路–第四代:大或超大规模集成电路–第五代:VLSI(甚大规模集成电路)计算机性能的大幅度提高和更新换代,一方面依靠器件的不断更新,同时也依赖系统结构的不断改进。硬件设计公理:越小越快2020年2月24日星期一31二按计算机系统成本分类•巨型计算机、超级计算机:SuperComputer•大型计算机:MainComputer•中型计算机:MidComputer•小型计算机:MiniComputer•微型计算机:MicroComputer•工作站:Workstation介于小型机和微型机之间,具有小型机的性能,微型机的价格2020年2月24日星期一32三MichaelJ.Flynn(弗林)分类法按照指令流和数据流的多倍性进行分类1.基本概念指令流(instructionstream):机器执行的指令序列数据流(datastream):由指令流调用的数据序列多倍性(multiplicity):在系统瓶颈部件上处于同一执行阶段的指令或数据的最大可能个数多指令流多数据流MIMD(MultipleInstructionstreamMultipleDatastream)(多计算机系统)2.分类单指令流单数据流SISD(SingleInstructionstreamSingleDatastream)(传统计算机,如IA结构的PC机)单指令流多数据流SIMD(SingleInstructionstreamMultipleDatastream)(阵列计算机,如ILLIACⅣ机)多指令流单数据流MISD(MultipleInstructionstreamSingleDatastream)(较先进的流水线处理机,如VLIW机)2020年2月24日星期一34四DavidJ.Kuck分类库克分类:指令流、执行流、多倍性–单指令流单执行流SISE–单指令流多执行流SIME–多指令流单执行流MISE–多指令流多执行流MIME2020年2月24日星期一35五1972年冯泽云分类•用最大并行度Pm分类•最大并行度Pm:在单位时间内能够处理的最大的二进制位数2020年2月24日星期一36横坐标代表字宽(n位),即在一个字中同时处理的二进制位数•纵坐标代表位片宽度(m位),即在一个位片中能同时处理的字数字宽n位片宽m。。n=1,m=1,字串位串(WSBS)如串行计算机。n1,m=1,字并位串(WPBS)如传统计算机。。1163264116326425628816384。。。。。n1,m1,字并位并(WPBP)如阵列计算机。n=1,m1,字串位并(WSBP)如STARAN等机。MPPSTARANPDP-11IBM360TI-ASCILLIACPEPECmmp。2020年2月24日星期一371.2计算机系统的设计技术•1.2.1计算机系统的设计原理•---加快经常性事件的速度•---Amdahl定律•---程序访问的局部性规律•1.2.2计算机系统的设计方法•---软硬件舍取的基
本文标题:计算机体系结构 完整讲义
链接地址:https://www.777doc.com/doc-3975773 .html