计算机系统结构第1章概述

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1计算机系统结构王雁东wyd104@163.com131838319722课程内容简介:着重介绍现代实用的大多数计算机都采用的成熟的设计思想、结构原理、分析方法和性能评测第一、二章介绍计算机系统结构的基础知识;第三、四、五、六章阐述现代单CPU微处理器的主要设计技术;第七、八章描述多处理机与多计算机系统的相关内容,也介绍计算机网络与分布式计算技术发展融合产生的网格技术及实例。3强调并行技术在计算机系统设计的各个层次(从指令级到多处理机)的重要性,并在各章内容中体现了这一主线,在第一章介绍并行性概念与并行计算机类型,在第三章深入阐述现代处理器内部采用的基本并行技术——流水线技术,第四章分析指令级并行的支持技术及其限制,第七、八章讨论当前主流并行计算机系统——多处理机系统与多计算机系统。4学习目的:学习计算机系统的基本分析方法和设计方法,深入理解影响计算机系统结构设计的各种因素掌握计算机系统结构较成熟的基本结构及工作原理了解计算机系统结构的发展趋势5与其他课程的交叉、教材主要包括:计算机组成原理、计算机操作系统、汇编语言、数据结构、编译原理等计算机系统结构,中国铁道出版社,徐洁主编6参考教材与成绩构成[1]JohnL.HennessyandDavidA.Patterson.计算机系统结构(第四版).电子工业出版社,2007年[2]李亚民.计算机组成与系统结构.清华大学出版社[3]郑纬民、汤志忠.计算机系统结构(第2版).清华大学出版社.2007年期末笔试(70%)+平时作业(10%)+半期考试(10%)+实验(10%)7第一章计算机系统结构的基本概念1.1计算机系统结构的概念1.2计算机系统结构的发展1.4并行性与并行计算机1.6计算机系统设计的量化原则1.5计算机系统的分类1.7计算机系统的性能评测1.3影响计算机系统结构的发展因素8从低端的单片机到高端的并行计算机系统,其价格、体积大小、性能和应用千差万别,而且仍在不断发展变化中,但它们都始终采用了一些经典的基本概念,例如:计算机系统结构、组成与实现的定义,冯·诺依曼结构,系列机,并行性,Flynn分类法等。这些概念将在本章分别阐述。9一、计算机系统的层次结构计算机系统:由软件和硬件组成。计算机系统是相当复杂的系统,在分析设计时一般采用层次结构的观点和方法,可以从不同的角度去构建计算机系统的层次结构。1.1计算机系统结构的概念101.从计算机系统组成角度划分层次结构从计算机系统组成的角度来划分的一种层次结构模型如后面的图所示。自下而上,表明了设计和构建一台计算机时的逐层生成过程,每层都在下一层的基础上增加功能。11面向问题语言层汇编语言层操作系统层指令系统层微体系结构层第5层第4层第3层第2层第1层翻译(编译器)翻译(汇编器)部分解释(操作系统)直接执行/解释(微程序)从计算机系统组成角度划分的层次结构模型指令系统层是软硬件划分的界面,界面之上是软件层次,界面之下是硬件层次。121)微体系结构层微体系结构层是具体存在的硬件层次,它执行机器指令,可看作是指令系统层指令的解释器。由微程序控制的计算机,微程序就是上一层指令的解释器。而在硬件直接控制的计算机上,是由硬件直接解释执行指令。面向问题语言层第5层翻译(编译器)汇编语言层第4层翻译(汇编器)操作系统层第3层部分解释(操作系统)指令系统层第2层直接执行/解释(微程序)微体系结构层第1层从计算机系统组成角度划分的一种层次结构模型132)指令系统层指令系统层及上层都是抽象层次。指令系统层是机器语言程序员(现在是编译器的设计者)眼中所看到的计算机,这一层也称为传统机器级,其主要特征就是指令系统。一方面,指令系统规定了由硬件实现的各种指令功能;另一方面,各种源程序必须通过编译器或解释器转换为硬件能识别与执行的指令序列。面向问题语言层第5层翻译(编译器)汇编语言层第4层翻译(汇编器)操作系统层第3层部分解释(操作系统)指令系统层第2层直接执行/解释(微程序)微体系结构层第1层从计算机系统组成角度划分的一种层次结构模型143)操作系统层从系统程序员的观点来看,操作系统层指令集包括指令系统层的指令和新增的指令。这些新指令称为系统调用。它们由操作系统解释,该层的其余指令(即与第2层指令相同的指令)由微体系结构层执行。面向问题语言层第5层翻译(编译器)汇编语言层第4层翻译(汇编器)操作系统层第3层部分解释(操作系统)指令系统层第2层直接执行/解释(微程序)微体系结构层第1层从计算机系统组成角度划分的一种层次结构模型154)汇编语言层每一种计算机都有一套自己的汇编语言、翻译它的汇编器,以及相应的程序设计与开发方法。汇编语言程序通过汇编器翻译成机器语言程序,在操作系统安排下再由微体系结构层执行。面向问题语言层第5层翻译(编译器)汇编语言层第4层翻译(汇编器)操作系统层第3层部分解释(操作系统)指令系统层第2层直接执行/解释(微程序)微体系结构层第1层从计算机系统组成角度划分的一种层次结构模型165)面向问题语言层面向问题语言层的高级语言通常是为解决现实问题的应用程序员使用的,如C,C++,Java,LISP和Prolog等。用这些语言编写的程序一般先由编译器翻译成第3层或第4层语言,偶尔也有解释执行的。面向问题语言层第5层翻译(编译器)汇编语言层第4层翻译(汇编器)操作系统层第3层部分解释(操作系统)指令系统层第2层直接执行/解释(微程序)微体系结构层第1层从计算机系统组成角度划分的一种层次结构模型17虚拟机:指通过配置软件(如某种语言的编译器或解释器)扩充机器功能后所形成的一台计算机。机器语言物理机:指能识别与执行机器语言的计算机硬件。2.从语言功能角度划分层次结构18计算机功能可描述为“能执行用某些程序设计语言编写的程序”,下图所示的是语言功能层次模型。专用语言虚拟机高级语言虚拟机汇编语言虚拟机机器语言物理机(实际机器)程序19例如:为了使Java程序能在不同的计算机上运行,SUN公司定义了一种称为Java虚拟机JVM(JavaVirtualMachine)的虚拟体系结构。它有32位字组成的内存,能执行226条指令,大多数指令都很简单,只有少量较复杂的指令。20为了实现JVM跨平台特性,SUN公司提供:◆一个将Java语言程序编译成Java虚拟机指令序列(又称Java执行程序)的编译器,以实现程序的跨平台运行。◆一个能解释执行Java程序的解释器,该解释器用C语言编制,可在任何一台有C编译器的计算机上运行。SUN和其他一些公司还设计出可直接执行JVM程序的CPU,这种CPU芯片picoJava-Ⅰ和picoJava-Ⅱ已经出现在嵌入式系统市场。213.软、硬件在逻辑上的等价计算机许多功能既可以直接由硬件实现,也可以在硬件支持下靠软件实现,称为软、硬件在功能上的逻辑等价。如乘法运算,可由硬件乘法器实现,也可在加法器与移位器支持下由乘法子程序实现。计算机系统以硬件为基础,通过软件扩充其功能。通常硬件只完成基本的功能,而复杂的功能则通过软件来实现。但是,硬件与软件之间的界面,如功能分配关系,常随技术发展而变化。22指令系统是硬件与软件之间的界面。指令系统所规定的功能由硬件实现。系统设计者必须确定软、硬件之间的界面(指令系统),即哪些功能由硬件实现,哪些由软件实现。随着VLSI的发展与硬件成本降低,一种设计策略是软件硬化:如浮点运算、存储管理等功能都在CPU上实现。23二、计算机系统结构、组成与实现1.基本概念透明性:在计算机技术中,对本来是存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性(transparency)。计算机系统中,低层机器的属性对高层机器的程序员往往是透明的。例如:一台计算机的指令系统对C++程序员是透明的。niiiniiiCPIII11ICIC)CPI(CPI24计算机系统结构,也称计算机体系结构(ComputerArchitecture),在1964年C.M.Amdahl就给出了它的定义:计算机系统结构是机器语言程序员(或编译程序设计者)所看到的计算机的属性,是硬件子系统的概念性结构与功能特性。25传统机器级系统结构的属性主要是由该机器的指令系统来表征的,具体属性如下:(1)数据表示:硬件能直接识别和处理的数据类型;(2)寄存器定义:包括各种寄存器的定义、数量和使用方式;(3)指令系统:寻址规则、机器指令的操作类型和格式等;(4)中断系统:中断的类型和中断响应硬件的功能等;26(5)机器工作状态的定义和切换:如管态和目态等;(6)存储系统:主存最小编址单位、编址方式、可编程最大存储容量等;(7)输入/输出结构:输入/输出连接方式、处理机存储器与输入/输出设备间数据传送的方式和格式、输入/输出操作的状态等。(8)信息保护:信息保护方式和硬件对信息保护的支持。这些属性表明,经典计算机体系结构概念的实质就是计算机系统中软硬件界面的确定,界面之上是软件的功能,界面之下是硬件功能。27计算机系统结构、计算机组成、计算机实现是3个不同的概念。它们各自包含不同的内容,但又有紧密的关系。28经典的计算机系统结构是机器语言程序员所看到的传统机器级所具有的属性。它确定计算机系统的软、硬件界面。计算机组成指的是计算机系统结构的逻辑实现,包括五大功能部件组成以及逻辑设计等。它着眼于物理机器级内各事件的排序方式与控制方式,各部件的功能以及各部件的联系。计算机实现指的是计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。它着眼于器件技术和微组装技术,其中器件技术在实现技术中占主导作用。29【例1】①机器指令集的确定属于计算机系统结构。②指令操作,如取指令、取操作数、运算、送结果等具体操作及其排序方式属于计算机组成。③实现指令集中所有指令功能的具体电路、器件的设计、装配技术等属于计算机实现。【例2】①确定是否有乘法指令属于。②乘法指令是用专门的乘法器实现,还是经加法器用重复的相加和右移操作来实现,属于。③乘法器、加法器的物理实现,如器件的选定(器件集成度、类型、数量、价格)及所用微组装技术等,属于计算机系统结构计算机组成计算机实现30【例3】①主存容量与编址方式(按位、按字节、按字访问等)的确定属于。②为达到所定性能价格比,主存速度应多快,在逻辑结构上需采用什么措施(如多体交叉存储等)属于。③主存系统的物理实现,如存储器器件的选定、逻辑电路的设计、微组装技术的选定属于。计算机系统结构计算机组成计算机实现31具有相同计算机系统结构(如指令系统相同)的计算机因为速度要求不同等因素可以采用不同的计算机组成。如,取指令、译码、取操作数、运算、存结果可以在时间上按顺序方式进行,也可以让它们在时间上按重叠方式进行以提高执行速度。例如,AMDOpteron64与IntelPentium4的指令系统相同,即两者的系统结构相同;但内部组成不同,流水线和Cache结构是完全不同的,相同的程序在两个机器上的的运行时间可能不同。计算机系统结构、组成和实现三者的相互影响32同样,一种计算机组成可以采用多种不同的计算机实现。例如,主存器件可以采用SRAM芯片,也可以采用DRAM芯片。可以采用大规模集成电路单个芯片,也可以采用中小规模集成电路进行构建。显然,这取决于性能价格比的要求与器件技术的现状。例如,同一系列机中的Pentium4与移动Pentium4具有相同的指令系统和基本相同的组成,但由于是不同档次的机器,其硬件实现是不同的,两者的时钟频率和存储系统是不同的。33随着计算机技术的迅速发展,计算机系统结构、组成与实现之间的界限变得越来越模糊。现在使用的是广义的计算机体系结构概念,它既包括经典的计算机体系结构的概念范畴,还包括了对计算机组成和计算机实现技术的研究。当前计算机系统设计涉及很多领域的技术,从编译程序、操作系统到指令系统设计、功能结构设计、逻辑设计和实现技术。计算机系统设计的任务:*明

1 / 145
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功