0
点赞
收藏
分享

微信扫一扫

《计算机基础知识REVIEW》の---计算机组成


 

1)  在一台计算机中,主要有6个部件:控制器、运算器、内存储器、外存储器、输入设备和输出设备。

控制器的组成包括程序计数器(PC)、指令寄存器(IR)、指令译码器、时序部件、微操作控制信号形成部件(PSW)和中断机构。

运算器也叫算术逻辑单元(ALU),对数据进行算术运算和逻辑运算。通常由ALU(包括累加器、加法器等)、通用寄存器(不包括地址寄存器)、多路转换器、数据总线组成。

现代的控制器和运算器是被制造在同一块超大规模集成电路中,统称为中央处理器,即CPU。


2)1966年,Michael.J.Flynn提出根据指令流、数据流的多倍性特征对计算机系统进行分类

(通常称为Flynn分类法),有关概念如下:

指令流:机器执行的指令序列;

数据流:由指令流调用的数据序列,包括输入数据和中间结果,但不包括输出数据。

多倍性:在系统性能瓶颈部件上同时处于同一执行阶段的指令或数据的最大可能个数。

Flynn根据不同的指令流和数据流组织方式,将计算机系统分为如下4类:

单指令流单数据流SISD,就是传统的顺序执行的单处理器计算机。

单指令流多数据流SIMD,以并行处理机(阵列处理机)为代表,并行处理机包括多个重复的处理单元,由单一指令部件控制。按照同一指令流的要求为它们分配各自所需的不同数据。

多指令流单数据流MISD,具有n个处理单元,按n条不同指令的要求对同一数据流及其中间结果进行不同的处理。一个处理单元的输出又作为另一个处理单元的输入。这类系统实际上很少见到。

多指令流多数据流MIMD,能实现作业、任务、指令等各级全面并行的多机系统。当前的高性能服务器与超级计算机大多具有多个处理机。


3) RISC不是简单地把指令系统进行简化,而是通过简化指令的途径使计算机的结构更加简单合理,以减少指令的执行周期数,从而提高运算速度。

RISC计算机的主要特点:

指令数量少:优先选取使用频率最高的一些简单指令及一些常用指令,避免使用复杂指令。大多数指令都是对寄存器操作,对存储器的操作仅提供读和写两种方式。

 

指令的寻址方式少:通常只支持寄存器寻址方式、立即数寻址方式和相对寻址方式。

指令长度固定,指令格式种类少:因为RISC指令数量少,格式相对简单,其指令长度固定,指令间各字段的划分比较一致,译码相对容易。

 

只提供Load/Store指令访问存储器:只提供从存储器读数(Load)和把数据写入存储器(Store)两条指令,其余所有操作都在CPU的寄存器间进行。因此RISC需要大量寄存器。

 

以硬布线逻辑控制为主:为了提高操作的执行速度,通常采用硬布线逻辑(组合逻辑)来构建控制器。而CISC的指令系统复杂,难以用组合逻辑电路实现控制器,通常采用微程序控制。

 

单周期指令执行:因为简化了指令系统,很容易利用流水线技术使得大部分指令能在一个机器周期内完成。少数指令可能需要多个周期,如Load/Store指令因为需要访问存储器,其执行时间会长一些。

 

优化的编译器:RISC的精简指令集使编译工作简单化。因为指令长度固定、格式少、寻址方式少,编译时就不必在具有相似功能的许多指令中进行选择,也不必为寻址方式的选择而费心,同时易于实现优化,生成高效率执行的机器代码。

 

大多数RISC采用了Cache方案,有的RISC甚至使用两个独立的Cache来改善性能,一个指令Cache,一个数据Cache,这样取指和读数可以同时进行。

下图式CISC和RISC的简单对比:

《计算机基础知识REVIEW》の---计算机组成_存储

 

 

4) 各种码制

原码:将最高位用作符号位(0表示正数,1表示负数),其余各位代表数值本身的绝对值。直接使用原码进行计算时,原码的符号位不能直接参与计算,必须与其他位分开,但这样会增加硬件的开销和复杂性。

 

反码:正数的反码和原码相同。负数的反码符号位是1,其余各位是该值绝对值的原码按位取反。直接使用反码进行计算有时会出现-0。反码的符号位可以直接参与计算,而且减法也可以转换成加法计算。

 

补码:正数的补码与原码相同。负数的补码是该数的反码加1,这个1就是“补”。直接使用补码进行计算的结果是正确的。对一个补码表示的数,要计算其原码,只要对其再次求补就可以。由于补码能使符号位与有效值部分一起参加运算,从而简化了运算规则,同时它也使减法运算转换为加法运算,进一步简化了计算机中的运算器的电路,这使得在大部分计算机系统中,数据都使用补码表示。

 

移码:又称为增码,移码的符号位表示和补码相反,1表示正数,0表示负数。也就是说,移码是在补码的基础上将首位取反得到的,这样使得移码非常适合于阶码的运算,因此移码常用于表示阶码。


5) 寻址方式

指令的基本格式由操作码和地址码两部分组成。操作码指出该指令要完成什么操作,地址码则是提供原始的数据。指令系统中定义操作码的方式可以分为规整型(即定长编码)和非规整型(变长编码)两种。

在指令系统中用来确定如何提供操作数或提供操作数地址的方式称为寻址方式(编址方式)。操作数可以存放在CPU中的寄存器(用寄存器名操作)、主存储器(指出存储器单元地址)、堆栈(先进先出的存储机制,用堆栈指针SP来标出其当前位置)、外存储器或外围设备中。不过在运算中,数据均在主存储器中,操作数可以采用以下几种寻址方式:

立即寻址:直接给出操作数,而非地址;

直接寻址:直接给出操作数地址或所在寄存器号(寄存器寻址);

间接寻址:给出的是指向操作数地址的地址;

变址寻址:给出的地址需与特定的地址值累加从而得出操作数地址。


6) 中断

在计算机中,I/O系统可以有3中不同的工作方式,分别是程序控制方式、程序中断方式和DMA方式。

程序控制方式:输入输出完全由CPU控制,在整个I/O过程中CPU必须等待其完成,限制了CPU的高速能力。此时I/O设备有两种编码方式:1)存储器映射,即I/O设备和主存储器统一编址,使用相同的机器指令来访问内存和外设;2)I/O设备和主存储器的地址空间相互独立,CPU使用专门的I/O指令来访问外设。

 

中断方式:CPU无须定期查询I/O系统的状态,而可以抽身处理其他事情。当I/O系统完成后,则以中断信号通知CPU,之后CPU保存正在执行程序的现场,转入I/O中断服务程序完成数据交换。

 

DMA方式:进行DMA时,CPU放弃对系统总线的控制,改由DMAC控制总线;由DMAC提供存储器地址及必需的读写控制信号,实现外设与存储器的数据交换。

 

7) 磁盘:由1个至多个磁盘组成。

 

《计算机基础知识REVIEW》の---计算机组成_任务_02

磁盘常见技术指标如下:

计算磁道数:(外半径-内半径)*道密度*记录面数。

说明:磁盘的第一面与最后一面是起保护作用的,一般不用于存储数据,所以在计算的时候要减掉。

 

非格式化容量=位密度*3.14*最内圈直径*总磁道数。

说明:每个磁道的位密度是不相同的,但每个磁道的容量是相同的。一般来说,0磁道是最外面的磁道,其位密度最小。

 

格式化容量=每道扇区数*扇区容量*总磁道数。

 

平均数据传输速率=每道扇区数*扇区容量*盘片转速。

说明:盘片转速是指磁盘每秒钟转多少转。

 

存取时间=寻道时间+等待时间。

说明:寻道时间是指磁头移动到磁道所需的时间;等待时间为等待读写的扇区转到磁头下方所用的时间。显然,寻道时间与磁盘的转速无关,而是取决于磁盘移动臂的速度。

 

廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks,RAID)技术旨在缩小日益扩大的CPU速度和磁盘存储器速度之间的差距。其策略是用多个较小的磁盘驱动器替换单一的大容量磁盘驱动器,同时合理地在多个磁盘上分布存放数据以支持同时从多个磁盘进行读写,从而改善了系统的I/O性能。RAID现在代表独立磁盘冗余阵列(Redundant Array of Independent Disks),用independent来强调RAID技术所带来的性能改善和更高的可靠性。

RAID机制中总共分8个级别,RAID应用的主要技术有分块技术、交叉技术和重聚技术。

 

8) 流水线的吞吐率(Through Put rate,TP)是指在任何时间内流水线所完成的任务数量或输出的结果数量。

流水线的加速比:完成同样一批任务,不使用流水线所用时间和使用流水线所用时间的比。

流水线的关键在于“重叠执行”,如果这个条件不能满足,流水线就会被破坏,影响因素如下:

1)  转移指令:因为前面的转移指令还没有完成时,流水线无法确定下一条指令的地址,因此也就无法向流水线中添加这条指令(由此可见,无条件跳转指令不会影响流水线)。

2) 共享资源访问的冲突:后一条指令需要使用的数据与前一条指令发生冲突。

3) 响应中断:一种是立即停止现有流水线,即精确断点法;一种是中断时流水线内的指令继续执行,而停止流水线入口,当所有流水线内的指令全部执行后,再执行中断处理程序,即不精确断点法。

9) 与系统可靠性相关的概念主要有:平均无故障时间、平均故障修复时间及平均故障间隔时间。

平均无故障时间:可靠度为R(t)的系统的平均无故障时间MTTF定义为从t=0时到故障发生时系统的持续运行时间的期望值。

 

平均故障修复时间MTTR;

平均故障间隔时间MTBF=MTTR+MTTF,实际应用中,一般MTTR很小,所以通常认为MTBF=MTTF。

 

可靠性计算:计算机系统是一个复杂的系统,一般通过建立适当的数学模型,把大系统分割成若干子系统,可以简化其分析过程;

串联系统:假设一个系统由n个子系统组成,当且仅当所有子系统都能正常工作时,系统才能正常工作;

 

系统总的可靠性是各个子系统可靠性的乘积。

 

《计算机基础知识REVIEW》の---计算机组成_磁盘_03

并联系统:假设一个系统由n个子系统组成,只要有一个子系统能够正常工作,系统就能正常工作;

 

《计算机基础知识REVIEW》の---计算机组成_任务_04

系统可靠性是:

在并联系统中只有一个子系统是真正需要的,其余n-1个子系统称为冗余子系统。随着冗余子系统数量的增加,系统的平均无故障时间也增加了。

 

模冗余系统:m模冗余系统由m个(m=2n+1为奇数)相同的子系统和一个表决器组成,经过表决器表决后,m个子系统中占多数相同结果的输出作为系统的输出。

 

《计算机基础知识REVIEW》の---计算机组成_任务_05

在m个子系统中,只有n+1个或n+1个以上子系统能正常工作,系统就能正常工作,输出正确结果。

某高可靠性计算机系统由下图的冗余部件构成:

 

该系统为一个串并联综合系统,我们可以先计算出中间两个并联系统的可靠度,再和两头的串联系统合并起来计算,最后得到系统可靠度为:

 

 

指令周期相关的几个概念:

时钟频率(时钟脉冲、主频)是计算机的基本工作脉冲,控制着计算机的工作节奏。

 

时钟周期(振荡周期),定义为时钟频率的倒数。时钟周期是计算机中最基本的、最小的时间单位。在一个时钟周期内,CPU仅完成一个最基本的动作。

 

在计算机中,为了便于管理,常把一条指令的执行过程划分为若干个阶段,每一个阶段完成一项工作,如取指令、存储器读、存储器写等,这每一项工作称为一个基本操作。完成一个基本操作所需要的时间称为机器周期。一般一个机器周期由若干个时钟周期组成。

 

指令周期是执行一条指令所需要的时间,一般由若干个机器周期组成。

举报

相关推荐

0 条评论