第一章 计算机系统结构的基本概念
    从处理数据的角度看,并行级别有位串字串,位并字串,位片串字并,全并行。位串字串和位并字串基本上构成了SIMD。位片串字并的例子有:相联处理机STARAN,MPP。全并行的例子有:阵列处理机ILLIAC IV。
    从加工信息的角度看,并行级别有存储器操作并行,处理器操作步骤并行,处理器操作并行,指令、任务、作业并行。
    存储器操作并行是指可以在一个存储周期内并行读出多个CPU字的,采用单体多字、多体单字或多体多字的交叉访问主存系统,进而采用按内容访问方式,位片串字并或全并行方式,在一个主存周期内实现对存储器中大量字的高速并行操作。例子有并行存储器系统,以相联存储器为核心构成的相联处理机。
    处理器操作步骤并行是指在并行性概念中引入时间因素,让多个处理过程在时间上错开,轮流重复地执行使用同一套设备的各个部分,加快硬件周转来赢得速度。例子有流水线处理机。
    处理器操作并行是指一个指令部件同时控制多个处理单元,实现一条指令对多个数据的操作。
擅长对向量、数组进行处理。例子有阵列处理机。
    指令、任务、作业并行是指多个独立的处理机分别执行各自的指令、任务、作业。例子有多处理机,计算机网络,分布处理系统。
    并行性的开发途径有时间重叠(Time Interleaving),资源重复(Resource Replication),资源共享(Resource Sharing)。
    时间重叠是指在并行性概念中引入时间因素,让多个处理过程在时间上错开,轮流重复地执行使用同一套设备的各个部分,加快硬件周转来赢得速度。例子有流水线处理机。
    资源重复是指一个指令部件同时控制多个处理单元,实现一条指令对多个数据的操作。例子有阵列处理机,相联处理机。
    资源共享是指用软件方法让多个用户按一定时间顺序轮流使用同一套资源以提高资源的利用率,从而提高系统性能。例子有多处理机,计算机网络,分布处理系统。
  SISD:一个指令部件控制一个操作部件,实现一条指令对一个数据的操作。例子有传统的单
处理机     SIMD:一个指令部件同时控制多个处理单元,实现一条指令对多个数据的操作。例子有阵列处理机,相联处理机。   MIMD:多个独立的处理机分别执行各自的指令、任务、作业,实现指令、任务、作业并行的多机系统,是多个SISD的集合,也称多倍SISD系统(MSISD)。例子有多处理机,计算机网络,分布处理系统。
exercises:
1.有一台经解释实现的计算机,可以按功能划分成4级,每一级为了执行一条指令,需要下一级的N条指令来解释。如果执行第1级的一条指令要Kns时间,那么执行第2、第3和第4级的一条指令各需要用多少时间?
解答:  执行第2、第3和第4级的一条指令各需要KNns、KN^2ns、KN^3ns的时间。
1.有一个计算机系统可按功能分成4级,每级的指令互不相同,每一级的指令都比其下一级的指令在效能上强M倍,即第i级的一条指令能完成第i-1级的M条指令的计算量。现若需第i级的N条指令解释第i+1级的一条指令,而有一段第1级的程序需要运行Ks,问在第2、3和4级上一段等效程序各需要运行多长时间?
答:  第2级上等效程序需运行:(N/M)*Ks。第3级上等效程序需运行:(N/M)*(N/M)*Ks。第4级上等效程序需运行:(N/M)*(N/M)*(N/M)*Ks。
note:     由题意可知:第i级的一条指令能完成第i-1级的M条指令的计算量。而现在第i级有N条指令解释第i+1级的一条指令,那么,我们就可以用N/M来表示N/M 表示第i+1级需(N/M)条指令来完成第i级的计算量。所以,当有一段第1级的程序需要运行Ks时,在第2级就需要(N/M)Ks,以此类推
2.硬件和软件在什么意义上是等效的?在什么意义上又是不等效的?试举例说明。
答:软件和硬件在逻辑功能上是等效的,原理上,软件的功能可用硬件或固件完成,硬件的功能也可用软件模拟完成。但是实现的性能价格比,实现的难易程序不同。
    在DOS操作系统时代,汉字系统是一个重要问题,早期的汉字系统的字库和处理程序都固化在汉卡(硬件)上,而随着CPU、硬盘、内存技术的不断发展,UCDOS把汉字系统的所有组成部份做成一个软件。
3.试以实例说明计算机系统结构、计算机组成与计算机实现之间的相互关系与影响。
答:计算机系统结构、计算机组成、计算机实现互不相同,但又相互影响。
    (1)计算机的系统结构相同,但可采用不同的组成。如IBM370系列有115、125、135、158、168等由低档到高档的多种型号机器。从汇编语言、机器语言程序设计者看到的概念性结构相同,均是由中央处理机/主存,通道、设备控制器,外设4级构成。其中,中央处理机都有相同的机器指令和汇编指令系统,只是指令的分析、执行在低档机上采用顺序进行,在高档机上采用重叠、流水或其它并行处理方式。
在线二进制转换    (2)相同的组成可有多种不同的实现。如主存器件可用双极型的,也可用MOS型的;可用VLSI单片,也可用多片小规模集成电路组搭。
    (3)计算机的系统结构不同,会使采用的组成技术不同,反之组成也会影响结构。如为实现A:=B+CD:=E*F,可采用面向寄存器的系统结构,也可采用面向主存的三地址寻址方式的系统结构。要提高运行速度,可让相加与相乘并行,为此这两种结构在组成上都要求设置独立的加法器和乘法器。但对面向寄存器的系统结构还要求寄存器能同时被访问,而对面向主存的三地址寻址方式的系统结构并无此要求,倒是要求能同时形成多个访存操作数地址和能同时访存。又如微程序控制是组成影响结构的典型。通过改变控制存储器中的微程序,就可
改变系统的机器指令,改变结构。如果没有组成技术的进步,结构的进展是不可能的。
    综上所述,系统结构的设计必须结合应用考虑,为软件和算法的实现提供更多更好的支持,同时要考虑可能采用和准备采用的组成技术。应避免过多地或不合理地限制各种组成、实现技术的采用和发展,尽量做到既能方便地在低档机上用简单便宜的组成实现,又能在高档机上用复杂较贵的组成实现,这样,结构才有生命力;组成设计上面决定于结构,下面受限于实现技术。然而,它可与实现折衷权衡。例如,为达到速度要求,可用简单的组成但却是复杂的实现技术,也可用复杂的组成但却是一般速度的实现技术。前者要求高性能的器件,后者可能造成组成设计复杂化和更多地采用专用芯片。
    组成和实现的权衡取决于性能价格比等因素;结构、组成和实现所包含的具体内容随不同时期及不同的计算机系统会有差异。软件的硬化和硬件的软件都反映了这一事实。VLSI的发展更使结构组成和实现融为一体,难以分开。
4.什么是透明性概念?对计算机系统结构,下列哪些是透明的?哪些是不透明的?
存储器的模m交叉存取;浮点数据表示;I/O系统是采用通道方式还是外围处理机方式;数据
总线宽度;字符行运算指令;阵列运算部件;通道是采用结合型还是独立型;PDP-11系列的单总线结构;访问方式保护;程序性中断;串行、重叠还是流水控制方式;堆栈指令;存储器最小编址单位;Cache存储器。
答:透明指的是客观存在的事物或属性从某个角度看不到。
    透明的有:存储器的模m交叉存取;数据总线宽度;阵列运算部件;通道是采用结合型还是独立型;PDP-11系列的单总线结构串行、重叠还是流水控制方式;Cache存储器。
    不透明的有:浮点数据表示;I/O系统是采用通道方式还是外围处理机方式;字符行运算指令;访问方式保护;程序性中断;;堆栈指令;存储器最小编址单位。
5.从机器(汇编)语言程序员看,以下哪些是透明的?
指令地址寄存器;指令缓冲器;时标发生器;条件寄存器;乘法器;主存地址寄存器;磁盘外设;先行进位链;移位器;通用寄存器;中断字寄存器。
答:透明的有:指令缓冲器、时标发生器、乘法器、先进先出链、移位器、主存地址寄存器。
6.下列哪些对系统程序员是透明的?哪些对应用程序员是透明的?
系列机各档不同的数据通路宽度;虚拟存储器;Cache存储器;程序状态字;“启动I/O”指令;“执行”指令;指令缓冲寄存器。
答:对系统程序员透明的有:系列机各档不同的数据通路宽度;Cache存储器;指令缓冲寄存器;
    对应用程序员透明的有:系列机各档不同的数据通路宽度;Cache存储器;指令缓冲寄存器;虚拟存储器;程序状态字;“启动I/O”指令。
note:系列机各档不同的数据通路宽度、Cache存贮器、指令缓冲寄存器属于计算机组成,对系统和程序员和应用程序员都是透明的。
    虚拟存贮器、程序状态字、“启动I/O”指令,对系统程序员是不透明的,而对应用程序员却是透明的。    “执行”指令则对系统程序员和应用程序员都是不透明的。
7.想在系列机中发展一种新型号机器,你认为下列哪些设想是可以考虑的,哪些则不行的?为什么?
新增加字符数据类型和若干条字符处理指令,以支持事务处理程序的编译。
(2)为增强中断处理功能,将中断分级由原来的4级增加到5级,并重新调整中断响应的优先次序。
(3)在CPU和主存之间增设Cache存储器,以克服因主存访问速率过低而造成的系统性能瓶颈。
(4)为解决计算误差较大,将机器中浮点数的下溢处理方法由原来的恒置“1”法,改为用ROM存取下溢处理结果的查表舍入法。
(5)为增加寻址灵活性和减少平均指令字长,将原等长操作码指令改为有3类不同码长的扩展操作码;将源操作数寻址方式由操作码指明改成如VAX-11那种设寻址方式位字段指明。
(6)将CPU与主存间的数据通路宽度由16位扩展成32位,以加快主机内部信息的传送。
(7)为减少公用总路线的使用冲突,将单总线改为双总线。
(8)把原0号通用寄存器改作堆栈指示器。
答:可以考虑的有:1,3,4,6,7。不可以考虑的有:2,5,8。
    原则是看改进后能否保持软件的可移植性。
    P.S.为了能使软件长期稳定,就要在相当长的时期里保证系统结构基本不变,因此在确定系列结构时要非常慎重。其中最主要是确定好系列机的指令系统、数据表示及概念性结构。既要考虑满足应用的各种需要和发展,又要考虑能方便地采用从低速到高速的各种组成的实现技术,即使用复杂、昂贵的组成实现时,也还能充分发挥该实现方法所带来的好处。
8.并行处理计算机除分布处理、MPP和机系统外,有哪4种基本结构?列举它们各自要解决的主要问题。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。