《系统结构基本概念课件.ppt》由会员分享,可在线阅读,更多相关《系统结构基本概念课件.ppt(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、系统结构基本概念第1页,此课件共45页哦Chap1 计算机系统结构的基本概念1.1 1.1 系统结构定义(不难)1.2 1.2 冯.诺依曼von Neumannvon Neumann计算机(内容多)计算机(内容多)1.3 1.3 执行执行helloc.c程序,系统发生了什么,为什么会这程序,系统发生了什么,为什么会这样(需要思考)样(需要思考)1.4 计算机的性能,系统结构设计原则(表面)计算机的性能,系统结构设计原则(表面)第2页,此课件共45页哦参考书籍n n1.教材教材n n2.2.计算机系统结构计算机系统结构.张先俊.人民邮电出版人民邮电出版社社.2006.2006.图书馆图书馆 1.
2、21.2冯冯.诺依曼机诺依曼机n n3.3.深入理解计算机系统深入理解计算机系统(美).机械工业出版机械工业出版社社.2010.2010.图书馆图书馆 1.3 hello.c1.3 hello.c程序的运行程序的运行第3页,此课件共45页哦1.1 计算机系统结构基本概念计算机系统结构基本概念 1.1.1 结构、组成与实现结构、组成与实现 计算机系统结构(Computer Architecture)指的是层次结构中传统机器级的系统结构,其界面之上的功能包括操作系统级、汇编语言级、高级语言级和应用语言级中所有软件的功能。界面之下的功能包括所有硬件和固件的功能。1964年G.M.Amdahl在介绍I
3、BM360时提出:计算机系统结构是计算机机器语言程序员或编译程序编写者看到的外特性:概念性结构和功能结构。不包括高级语言程序员第4页,此课件共45页哦 计算机系统结构的属性应包括:(后续章节)(1)硬件能直接识别和处理的数据类型和格式等的数据表示;(2)最小可寻址单位、寻址种类、地址计算等的寻址方式;(3)通用/专用寄存器的设置、数量、字长、使用约定等的寄存器组织;(4)二进制或汇编级指令的操作类型、格式、排序方式、控制机构等的指令系统;(5)内存的最小编址单位、编址方式、容量、最大可编址空间等的存贮系统组织;(6)中断的分类与分级、中断处理程序功能及入口地址等的中断机构;(7)系统机器级的管
4、态和用户态的定义和切换;(8)输入输出设备的连接、使用方式、流量、操作结束、出错指示等的机器级I/O结构;(9)系统各部分的信息保护方式和保护机构;第5页,此课件共45页哦例题:区分系统结构与组成原理、实现l1.例题 P4 (书上划下来,三个段落)l例题1-2指令系统的确定是计算机系统结构研究的范畴。(决策)l指令的实现是计算机组成的范畴。(图纸)l实现这些指令的具体电路、器件设计、装配技术属于计算机实现研究的范畴。(施工队)第6页,此课件共45页哦图 1-3 IBM 370系列机字长、数的表示和数据通路宽度 例题1-3系统结构数据表示形式:字,定点,浮点。程序员可见在书上记上P5数据通路宽度
5、,程序员可不知道。计算机组成原理第7页,此课件共45页哦例1-4l系列机:l相同的I/O连接和使用方式,怎样选择。第8页,此课件共45页哦1.1.3 系统结构、组成和实现三者的相互影响系统结构、组成和实现三者的相互影响 例题1-5采用不同的系统结构会使可以采用的组成技术产生差异。例如,为实现 A=B+C D=E*F 第9页,此课件共45页哦如果采用面向寄存器的系统结构,其程序可以是LOAD R1,BADD R1,CSTORER1,ALOADR2,EMPYR2,FSTORE R2,D而对面向主存的具有三地址寻址方式的系统结构,其程序可以是ADDB,C,A;MPYE,F,D 寄存器两种结构:面向寄
6、存器、面向主存。这是特征。第10页,此课件共45页哦例题总结l1.系统结构是决策是否设置乘法指令、是否采用通道l2.系统结构是机器语言与编译程序员可见数据表示方法l3.系统结构是选择系列机可选择的部分?l4.系统结构是特征面向寄存器、面向内存第11页,此课件共45页哦系统结构两方面的内容:l(1)程序设计者:编程(机器语言、编译程序)必须了解到的概念性结构和功能结构。l(2)计算机设计者:达到计算机性能的硬件功能的设计。P7(硬件)第12页,此课件共45页哦习题l1-5l系统结构可见与不可见存储器的模m交叉存取浮点数据表示(1)I/O系统是采用通道方式还是外围处理机方式 (决策)例题1-3P5
7、结论 (8)数据总线宽度例题1-3字符行运算指令阵列运算部件通道是采用结合型还是独立型例题1-3PDP-11系列的总线类型 例题1-4系列机访问方式保护(9)程序性中断程序员串行,重叠还是流水控制方式堆栈指令存储器最小编址单位存储体系(5)Cache存储器存储体系第13页,此课件共45页哦习题l1-6l汇编语言程序员可见与不可见指令地址寄存器指令缓冲器时标发生器条件码寄存器乘法器例题1-2主存地址寄存器磁盘外设先行进位链移位器通用寄存器(3)中断字寄存器第14页,此课件共45页哦1.2 冯.诺依曼机von Neumannn n普林斯顿高级研究院的约翰.冯.诺依曼n n1945年在新型计算机ED
8、VAC的计划中首次公布“程序存储”构想。第15页,此课件共45页哦l程序存储计算机,称为冯.诺依曼机。五个部件:运算器、控制器、存储器、输入设备、输出设备二进制程序存储第16页,此课件共45页哦冯诺依曼体系结构,也称为普林斯顿结构,包括以下三个关键性的概念:l1.数据和指令存储在单一的“读写存储器”中。l2.存储器的内容通过位置寻址,而不考虑它容纳的数据是什么。l3.对程序,以顺序的形式从一条指令到下一条指令来执行(除非有明确的修改)。P5,p34第17页,此课件共45页哦冯诺依曼机的普通结构(第一层视图)主存储器 (M)程序存储算术-逻辑单元Central arithmetical CA程序
9、控制器 控制器Central control CCI/O设备 (I,O)输出结果CPU图1 冯诺依曼机结构ALU控制器IO第18页,此课件共45页哦早期的冯.诺依曼机:以CPU为中心输入设备控制器运算器存储器输出设备数据指令1.控制器对其余4个部件有控制,图中的虚线表示.2.存储器向运算器传输数据,向控制器传输指令.3.以运算器为中心,因为所有的输入输出操作必须经过运算器而不是控制器件.第19页,此课件共45页哦以运算器为中心的冯诺依曼机的特点l(1)指令和数据以字的形式存放在存储器中.当从存储器取出时,从机器状态是取指周期还是取数周期确定读出的字是指令,还是数据.指令传到控制器译码,数据传到
10、运算器运算.l(2)依靠控制器,使指令顺序执行.l(3)存储器是一维线性空间,存储单元定长.复杂的数据结构对象无法直接存放到存储器中,需要地址映像.l(4)数据表示,机器语言用二进制形式.与高级语言有语义差距.l(5)运算器为中心,单处理机.运算器和存储器间有频繁的信息交换.第20页,此课件共45页哦怎样改进:系统结构、计算机组成原理l增加新的数据表示,如浮点数,字符串和十进制数的表示 l采用虚拟存储器方便了高级语言.l引入堆栈,支持高级语言过程调用.递归机制,表达式求值.支持高级语言l采用变址寄存器并增加了间接寻址方式,以方便对复杂数据结构的访问.l增加CPU的通用寄存器数量和增设cache
11、高速缓冲存储器,减少CPU与主存之间的过分频繁的信息交换.l采用存储器交叉访问技术(组成原理)以及无冲突并行存储器,加宽存储器带宽.第21页,此课件共45页哦并行性l1.流水技术,包括指令级流水和运算级流水,以加快指令及操作的执行速度.(组成)l2.多功能部件.(阵列处理机)l3.采用支持处理机,输入/输出处理机.第22页,此课件共45页哦冯诺依曼机演变为以存储器为中心(特征,系统结构)输入设备控制器运算器存储器输出设备 图2 以存储器为中心的计算机系统结构记下来第23页,此课件共45页哦习题l1-5l系统结构可见与不可见存储器的模m交叉存取(组成)浮点数据表示(1)I/O系统是采用通道方式还
12、是外围处理机方式 (决策)例题1-3P5结论 (8)数据总线宽度例题1-3字符行运算指令 (新的数据表示)字符串阵列运算部件(并行性)(硬件)通道是采用结合型还是独立型例题1-3PDP-11系列的总线类型 例题1-4系列机访问方式保护(9)程序性中断程序员串行,重叠还是流水控制方式(并行性)(硬件)堆栈指令 (新的器件的指令)存储器最小编址单位存储体系(5)Cache存储器(组成)第24页,此课件共45页哦习题l1-6l汇编语言程序员可见与不可见指令地址寄存器指令缓冲器时标发生器条件码寄存器乘法器例题主存地址寄存器磁盘外设先行进位链移位器通用寄存器中断字寄存器第25页,此课件共45页哦1.3
13、执行hello.c程序n n 1.3.1源程序hello world的翻译 1#include 2 3 int main()4 5 printf(“hello,world/n”);6记下来第26页,此课件共45页哦文本文件:ASCII标准表示文本字符,用一个唯一的单字节大小的整数值表示每个字符。用ASCII码表示输入字符。#i n c l u d e n n i n t m a105 111 46 104 62 10 10 105 110 116 32 109 97 i n ()n n 105 110 40 41 10 123 10 32 32 32 32 p r i n t f (“h e
14、l l o ,112 114 105 110 116 102 40 34 104 101 108 108 111 44 32 w o r l d n “);n 119 111 114 108 100 92 110 34 41 59 10 125图3 hello.c的ASCII文本表示由ASCII字符构成的文件称为文本文件,所有其它文件称为二进制文件。(记下来)第27页,此课件共45页哦UNIX系统编译过程 lunix gcc o hello hello.cl详细过程:编译系统(compilation system)hello.c源程序(文本)预处理器(CPP)hello.i被修改的源程序(文本
15、)编译器(ccl)hello.s汇编程序(文本)include头文件汇编器(as)hello.o可重定位目标程序(二进制)中间语言printf.o库函数目标文件链接器(ld)hello可执行目标程序(二进制)图3 UNix系统源程序编译过程系统提示符第28页,此课件共45页哦详细解释:l预处理阶段。预处理器根据#开头的命令,读取头文件stdio.h的内容,扩展到原始的C程序中,结果得到另一个 C程序,以.i作为扩展名。第29页,此课件共45页哦l编译阶段 编译器将.i文件翻译成文本文件hello.s,它包含一个汇编语言程序。汇编语言程序中的每一条语句都以一种标准的文本文件格式确切地描述了一条低
16、级机器指令,汇编语言程序的字节编码是字符。第30页,此课件共45页哦l汇编阶段 汇编器as将.s汇编语言文件翻译成机器语言指令,把这些指令打包成一种可重定位目标程序(relocatable object program)的格式,将结果保存在目标文件hello.o中。hello.o是一个二进制文件,它的字节编码是机器指令而不是字符。第31页,此课件共45页哦l链接阶段链接器ld负责合并标准C库中的函数(printf.o单独预编译的目标文件)到hello.o程序中,结果得到hello文件,它是一个可执行目标文件(简称可执行文件),可以被加载到内存,由系统执行。可执行文件在windows系统的后缀是
17、.exe。第32页,此课件共45页哦1.3.2 运行hello程序n n1.命令n n$./hellol l 在键盘上键入命令,字符串n nwindowsl l 运行命令框l l 图标n n2.操作系统将命令中的字符串./hello逐一读入?第33页,此课件共45页哦系统从键盘读取hello命令的系统运行图PC寄存器组ALU 总线接口I/O桥主存储器USB控制器图形适配器磁盘控制器鼠标键盘显示器磁盘hello程序的机器指令用户输入./hello PC是什么?图 4PC程序计数器,指令地址寄存器.记下来读入寄存器./hellocpu系统总线存储器总线第34页,此课件共45页哦l1)用户输入的系统
18、命令读入寄存器l2)再存储到存储器第35页,此课件共45页哦2.系统装入可执行文件helloPC寄存器组ALU 总线接口I/O桥主存储器USB控制器图形适配器磁盘控制器鼠标键盘显示器磁盘hello可执行文件用户输入./hello 图5 hello可执行文件代码cpu系统总线存储器总线包括“hello worldn”数据加载可执行文件到内存第36页,此课件共45页哦l系统执行一系列指令加载可执行的hello文件,将hello目标文件中的代码和数据复制到主存。利用DMA:直接存储器存取。因此hello文件不通过cpu直接从磁盘到内存。第37页,此课件共45页哦3.执行hello程序,输出结果。PC
19、寄存器组ALU 总线接口I/O桥主存储器USB控制器图形适配器磁盘控制器鼠标键盘显示器磁盘hello可执行文件hello world 图6 cpu系统总线存储器总线“hello worldn”数据加载可执行文件到内存第38页,此课件共45页哦lhello中的代码和数据被加载到主存,cpu开始执行hello程序的main()中的机器语言指令。l这些指令将”hello worldn”从主存复制到存储器组再复制到显示器。第39页,此课件共45页哦1.3.3高速缓存lhello的指令和数据的复制从磁盘到内存到寄存器组。l这些复制尽可能快地完成,出现高速缓存cache.cache寄存器组ALU 总线接口
20、cpu第40页,此课件共45页哦作业n n1.在TC中录入hello.c程序时,系统运行的方式。n n思考:高速缓存怎样提高“复制”速度?第41页,此课件共45页哦习题l1-6l汇编语言程序员可见与不可见指令地址寄存器指令缓冲器硬件时标发生器条件码寄存器乘法器主存地址寄存器磁盘外设先行进位链移位器通用寄存器中断字寄存器第42页,此课件共45页哦1.4 计算机的性能,系统结构设计原则计算机的性能,系统结构设计原则n n1.1.性能评测(以教材为主)性能评测(以教材为主)l l程序实际运行时间(程序实际运行时间(cpucpu运行时间)运行时间)p11,3p11,3个因素。个因素。l l峰值性能峰值
21、性能l l持续性能(实际性能)持续性能(实际性能)n n2.2.定量设计定量设计l l(1 1)哈夫曼:尽可能加速高概率事件)哈夫曼:尽可能加速高概率事件l l(2 2)Amdahl:Amdahl:各部分性能均衡提高各部分性能均衡提高 系统加速比系统加速比 l l(3 3)程序访问的局部性定律)程序访问的局部性定律-指令系统设计指令系统设计第43页,此课件共45页哦作业l1.在TC中录入hello.c程序时,系统运行的方式。l2.天河一号、二号的峰值性能、持续性能。l3.教材Pl要求:抄袭一次,期末成绩扣抄袭一次,期末成绩扣50分。分。l 不会做,写上思考过程。不会做,写上思考过程。l 没有条件的,写上原因。没有条件的,写上原因。第44页,此课件共45页哦作业1.PC寄存器组ALU 总线接口I/O桥主存储器USB控制器图形适配器磁盘控制器鼠标键盘显示器磁盘hello可执行文件用户输入hello.c源程序 图7 cpu系统总线存储器总线在TC中编辑源程序hello.c先读入到哪里?再存储到哪里?最后存储到哪里?第45页,此课件共45页哦