计算机系统结构 第1章 导论1_第1页
计算机系统结构 第1章 导论1_第2页
计算机系统结构 第1章 导论1_第3页
计算机系统结构 第1章 导论1_第4页
计算机系统结构 第1章 导论1_第5页
已阅读5页,还剩122页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机系统结构教程,陈家福时代软件学院,学习方法,课前准备和消化各课内容的积极问题课后练习,第一章计算机系统结构概述,1.1计算机系统的多层次,透明性:看什么水平的观察者,只需通过该水平的语言理解和使用机器,不需要考虑其中的机器如何工作,如何执行各自的功能。好像这个程序员有了能直接使用这种语言作为机器语言的机器。实际机器、虚拟机、微指令直接在硬件上执行、使用微指令程序解释机器指令、通常使用机器语言程序解释工作控制语句等,汇编语言程序通过汇编程序翻译成机器语言程序或二级语言,高级语言程序通过编译翻译成汇编语言(或一种中间语言程序或机器语言程序)、应用程序包翻译成高级语言程序。从计算机语言的角度来看,0级微程序控制机器级别是实现机器指定功能的中央控制部分,根据各种机器命令操作所需的控制定时,具有一系列微指令,为了实现这些微指令本身的控制定时,信息在各个寄存器之间传输的逻辑线非常少的逻辑线,可以作为硬连接逻辑来实现。 第1级现有机器语言机器第1级计算机语言是该机器命令系统使用命令系统编写的机器语言程序第0级微程序中第2级操作系统系统系统级相应机器语言的大部分命令是机器命令系统的命令,微程序解释提供操作系统级指令,由操作系统解释,用第3级汇编语言机器级汇编语言编写的程序首先被翻译成第2级或第1级语言。 然后,由该机器解释的以级别4高级语言机器级高级语言编写的程序通常在编译器中翻译为级别3或级别2语言单独的高级语言,级别5应用程序语言机器级通过用户终端对用户直接使用的语言(而不是计算机专家)发出键盘或其他方法的服务请求,可以进入级别6信息处理系统进行翻译和解释。翻译是首先使用转换程序将高级机器级别的程序完全转换为低级机器级别相应的程序,然后通过在低级机器上实现的技术解释,使用低级机器级别的一系列语句或命令模拟高级机器级别的语句或命令的功能,通过对高级机器级别语言程序中的每个语句或命令进行逐个解释来实现,包括计算机系统结构、计算机配置和实现、计算机系统结构:1964年,IBM370,研究软件、硬件之间的功能分配和现有系统级接口的确认,以确保机器语言、汇编语言程序员或编译器生成系统能够正确执行设计或生成的程序在计算机上必须看到和遵循的计算机特性。计算机系统结构的经典定义,是计算机系统多层次结构中软件和硬件/固件的主要交叉接口,是计算机语言程序、汇编语言源和高级语言源程序翻译生成的系统语言目标程序能够在计算机上正常工作的接口结构和功能。计算机系统结构的属性如下:数据表示寻址方法寄存器组织命令系统存储系统组织中断机构类型和用户类型定义以及交换机系统级别I/O结构信息保护和保护机构;计算机配置:计算机系统结构的逻辑实现;系统级别内数据流和控制流的配置;逻辑设计等。重点关注机器级别内事件的排序方式、控制机制、部件功能和部件之间的连接。计算机配置设计需要解决的问题是如何在希望实现的性能和价格上用计算机更好、更合理地配置各种设备和部件,以实现确定的系统结构,计算机配置设计通常是数据路径宽度专用部件的各种工作方式组件的共享程度功能部件的并行度控制机制配置方法缓冲和队列技术预测,预判断技术可靠性技术,计算机实现是处理器、内存和其他部件的物理结构,设备的集成和速度,设备、模块、插件、底板分割重点是设备技术和微装配技术。例如,我们必须造飞机。从确定属于系统结构的乘客数量、速度、高度和其他技术指标开始。然后,根据技术指标,设计了旨在满足乘客数、空气动力学、燃料供应、引擎、控制系统等要求的飞机形状、设计驾驶舱等,开发了构成设计图的飞机。最后通过演示确认设计没有问题,将图纸送到工厂,工人开始生产,这是现实。命令系统的决定属于计算机系统结构。指令、指令操作码解码、操作数地址计算、获取数、运算、结果传递等命令的实现和排序属于计算机。实现这些命令功能的特定电路、设备的设计和装配技术属于计算机实现,并确定命令系统中的乘法命令是否属于计算机系统结构。乘法指令是作为专用高速乘数实现的,还是使用加法器和移相器通过一系列顺序信号控制加法和右移,属于计算机配置。乘法器、加法设备的类型、强度、数量、价格、微装配技术的确定和选择属于计算机实现,主内存容量和寻址方法的确定属于计算机系统结构。为了满足性能价格要求,默认存储速度应为多少,逻辑结构是否使用多主体交叉是由计算机组成的。主存储器设备的选择、逻辑设计、微装配技术的使用可以实现计算机实现、计算机系统结构、配置和实现之间的相互关系,同一结构的计算机可以根据速度依次执行不同的配置命令,也可以作为特殊乘数实施可重叠执行以提高性能的性能乘法命令,还可以作为加法器、移位器等重复执行,配置可以有多种实现方法。主内存设备基于双极或MOS的可用VLSI单片或多个小型集成电路配置可能使可能的配置技术不同,如实现。A:=B CD:=E*F,如果使用面向寄存器的系统结构,程序可能如下所示:要并行创建LOADR1、BADDR1、CSTOREA、R1LOADR2、EMPYR2、FSTORED、R2、加法和乘法,必须设置R1和R2必须同时可访问的单独加法器和乘法器。使用主存储的三地址寻址系统结构时,设置单独的加法器和乘法器以并行创建ADDB、C、AMPYE、F、D、加法和乘法,更改需要同时存储多访问操作数地址和可访问性的组件和控制内存的微程序,从而更改可能影响结构的系统的系统命令,解释系统复合机器命令可用的微程序,快速组件设计取决于结构复杂的配置也可以,但是一般速度实现技术、计算机系统的硬件、软件、性能评估和定量设计原则、硬件和软件选择的基本原则软件和硬件在逻辑上是相同的。原则上,软件的功能可以通过硬件或固件来实现,硬件的功能也可以通过软件仿真来实现。,计算机性能评估,计算机性能:通常表示计算机的运行速度,是程序运行时间的倒数。计算机的性能不仅与计算机的硬件速度有关,而且与系统结构、程序和算法有关。计算机系统的性能分析计算机的性能通常通过使用最高性能和持续性能表示持续性能的算术平均、加权平均几何平均、调整平均来评估。(1)算术平均值有n个测试过程。其中,如果第I个程序的执行速度以Ri表示,执行周期以Ti表示,则算术平均Am可以表示为:如果以执行时间表示性能,则可以通过加权系数表示,考虑不同进程在整个任务中所占的比例,例如,(2)加权平均进程1占20%、程序2占40%。权重分别为0.2和0.4。如果权重因子显示为Wi,则权重平均值可以表示为:(3)几何图形平均值:将几何图形平均值设定为Gm:使用Gm表示电脑系统的效能时,具有良好的性质。也就是说,使用一个系统性能作为参考标准,将另一个系统的性能与参考标准进行比较:(4)加权几何平均:(5)协调性能平均:Hm=,=,(6)加权调整平均:例如下表中的总运行时间:一致测量,加权平均时间,单个CPU性能,CPU时间=CPU时钟周期数时钟周期,CPU时间=CPU时钟周期数/时钟频率,Tcpu=TtotalTc,CPI=CPU时钟周期数/IC,CPU时间=(IC *),2 .加速比,sn=T0/TN,TN=t0 (1-Fe) t0fe/se=t0 (1-Fe/se),Fe :改进前可改进部分的执行时间与T0的比率,以及,如果系统的部件处理速度提高了10倍,但该功能的处理时间只有系统总正常运行时间的30%,则改进后系统性能将提高到100倍,改进后系统性能将提高10倍,系统的部件处理速度提高了10倍,但该功能的处理时间只有系统总正常运行时间的80%,则改进后系统性能将提高。 将部件处理速度提高100倍可以提高系统性能(示例1),假设在一个测试程序中,浮点平方根FPSQR操作占程序运行时间的20%,而所有浮点计算命令FP操作占程序运行时间的50%。 提高系统性能的两种传统实现技术是使用FPSQR硬件将FPSQR操作速度提高10倍。另一种实现方法是加快所有浮点运算命令,使FP命令的速度提高一倍。请比较这两种改进方案。使提高所有FP命令速度的改进方案更好。示例2如果FP命令的百分比为25%,其中FPSQR指定总命令的百分比为2%,FP操作的CPI为4,FPSQR操作的CPI为20,其他命令的平均CPI为1.33。传统的两种改进方法是将FPSQR操作的CPI减少到2,将所有FP操作的CPI减少到2,比较两种方案中系统性能的提高程度。解决方案:在没有改进之前,系统的命令平均时钟周期CPI使用方案a、cpcpcpfpsqr=20减少系统范围内的命令平均时钟周期、方案b、CPIFP=4、系统范围内的命令平均时钟周期、方案b优于方案a、3MIPS和mflops A,3 .MIPS:表示每秒一百万个命令栏的数量。,程序执行时间Te只能用于比较同一系统指令系统的计算机之间的性能,MIPS是比较指令集不同的机器性能的优点和缺点是非常不准确的执行。与CPI不同,性能可能有很大差异,MIPS可能与系统硬件实现有关,例如具有硬件浮点计算组件的机器和软件实现浮点计算的系统,以及使用MIPS测量不准确的性能。使用软件实现浮点运算的MIPS适用于标量处理器性能测量,高于使用硬件浮点运算组件时的MIPS,不适用于矢量处理器性能测量。示例1使用时钟频率为40MHz的单处理器执行标准测试过程,如下表所示。查找测试程序的CPI、MIPS和运行时间。解决方案:测试流程的命令栏数,测试流程的命令平均时钟周期数,IC=,=45000 32000 15000 8000,=100000,CPI=,=(1 * 45000 2 *),单位:s,假定4个程序分别运行100*106个命令,这4个程序分别计算计算机a、b和c执行的MIPS。根据这些速度值,能否直接评估这三台计算机相对性能的优缺点?如果不是,你能找到对齐这三台计算机相对性能的方法吗?单位:百万/秒,以上结果说明:在同一系统上运行多个程序的MIPS差异很大或差异很大。这显示了其他程序使用该系统命令的其他命令和使用的命令在程序中的使用频率。在a、b、c的所有程序中,以MIPS速度评估计算机的性能优缺点是不可靠的。运行多个常见测试程序的MIPS速度的平均值,可以评估系统之间相对性能的优缺点。MFLOPS:表示每秒一百万次浮点运算的数量。只反映执行浮点运算的机器的性能,不反映机器的整体性能,而是通过浮点运算(而不是指令)测量的。因此,比较结果不可靠,因为可用于比较不同命令集的系统之间的浮点运算命令集因系统而异。例如,有包含浮点除法指令的机器,有没有的机器,有可用于比较处理器可用于测量矢量计算性能的矢量计算功能的机器人,根据系统的不同,不同程序在同一系统上访问的MFLOPS,有在程序运行时只访问整个程序的10%部分的统计信息,而剩下的10%访问程序的90%部分的统计信息。for(inti=0;I1000I)for(intj=0;J200j)aIj=I * j;时间地域性最近未来使用的信息很可能是当前使用的信息。因为它有循环空间局部性。因为最近未来使用的信息考虑到各种操作和各种程序的比较,很可能接近程序位置当前使用的信息。,实际程序实际应用程序(例如c语言的各种编译器、Tex文本处理软件、CAD设计工具Spice等)核心程序是从实际程序中提取少量但非常重要的代码段(例如循环部分或线性方程)的部分,较小的测试程序代码长度通常在100行内,用户可以根据测试目的编写已知的输出结果以确定机器的性能。综合测试程序(如皇后问题、排名问题、小数问题等)尝试将程序的各种操作和操作数的比例与多个应用程序中的比例相匹配,从而大大提高了评估的准确性和实际应用之间的差异,测试的性能通常不是为了比较其他计算机的浮点计算性能(如Whetstone测试程序)而设计的。用fortran语言编写Dhrystone测试程序主

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论