计算机系统结构
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前言

计算机系统结构历来为高校计算机科学与技术专业必修的主干专业基础课程。计算机的发展历史说明,计算机性能的不断提高必须依靠器件的变革和系统结构的改进。今天,在器件潜力几乎达到极限的情况下,计算机系统结构的改进尤为重要。该门课程主要反映现代计算机在系统结构上的新思想、新技术,如流水线处理、向量处理、并行处理、多处理器结构等,要求学生从分析和评测的角度把握计算机系统的设计。这对培养学生掌握和应用现代计算机系统来处理复杂计算问题具有重要意义,也为学生今后从事计算机系统软、硬件开发打下良好的基础。

国家教育部在《高等教育面向21 世纪教学内容和课程体系改革计划》中明确指出,要“面向21世纪社会、经济、科技、文化的发展,改革我国高等教育中与其不相适应的教学内容和课程体系”,该计划把“基础课程、核心课程的教学内容体系及教材和教学手段、教学方法的创新”列为改革的主要内容。因此,在现代计算机技术日新月异、计算机应用迅猛扩展深入的今天,在高校教育逐步由精英教育向大众化教育转移的今天,在国家经济发展大量地、普遍地需要工程应用型计算机人才的今天,必须重新审视这门课程的现状和特点,按照新型人才的培养目标和定位,构建新的计算机系统结构课程体系,从而提高该课程的教学质量。

计算机系统结构课程具有下述特点:

1.综合性强。计算机系统结构一般安排为计算机专业高年级课程,它需要用到几乎所有的计算机专业基础知识和相关的前继专业课程知识,主要需要计算机组成原理、汇编语言程序设计、高级语言程序设计、数据结构、操作系统、编译原理等课程的知识。教学中要求学生对各课程的知识融会贯通,教学的难度较大。

2.理论性强。由于课程内容抽象繁杂、概念多,如果教学处理不好,那么容易让学生感到学习乏味,明显增加了教学难度。

3.本课程教材内容多是针对大中型计算机系统描述的,常以一般学生接触不到的机型作为系统结构举例,而结合PC应用实际、结合现代PC系统结构技术的发展的内容几乎没有,严重脱离学生的实际情况。

4.缺乏实验环境,学生无法获得对计算机系统结构性能改进的直观认识。如果真正要求学生对其理论与技术有直观的接触,则需要深入到现代大中型计算机内部进行实践,这对我国绝大多数高校来说是不可能做到的。因此,长期以来,我国高校在开设这门重要课程时,仅仅停留在理论讲授上,相应的实践教学尚是空白,学生面对枯燥理论,学习兴趣大减,这对提高教学质量带来极大障碍。

针对这门课程的特点和原有的不足,我们从以下三方面对教材进行了重新规划与调整。

1.修改教学要求,明确教学目的。我们根据全国大多数高校的定位,把对现代计算机系统结构的分析和评测作为构建的主要目标。很难想象,一个生活、工作在计算机广泛应用的信息化时代的计算机高级技术人员,如果对计算机系统结构知之甚少,又怎么能够用好计算机呢?因此,在认识和了解一般计算机系统结构新技术的基础上,加强对计算机系统结构的学习是完全必要的。

2.在总的教学目标的要求下,大刀阔斧地对教学内容进行重组,构建符合教学目标、既有理论又有实践的新的课程体系。我们积极开展本课程教学内容改革,注意吸收国内外同类教材的教学思路,结合我国当代社会发展对计算机人才知识结构的要求,在教学内容上进行压缩和扩充,精简了有关大中型计算机的过多介绍,增加和突出PC上常用的新的系统结构,突出基本知识,注意和前继课程的内容贯通,形成具有一定特色的教学内容和教学大纲。

理论上,既讲清一般原理,又紧密结合个人计算机系统结构。例如,结合80x86指令系统,阐述从CISC到RISC的发展;在介绍各项新技术时,尽量列举PC上应用相关技术的实例,并专辟一章介绍PC的系统结构,重点是当前主流PC的微结构及其发展。应该说,结合系统结构的原理,可以比较全面地介绍与学生密切相关的PC的系统结构。

如何在常规的条件下利用普通的PC,让学生直接用到有关计算机系统结构的新思想和新技术,得到实践学习的机会,从而大大提高学生对现代计算机系统的认识,大大提高这门重要课程的教学效果,值得我们花大气力进行研究。为此,我们引进了DLX虚拟处理器实验。DLX处理器是1995年美国斯坦福大学的John L. Hennessy和加利福尼亚大学伯克利分校的David A.Patterson在其Computer Architecture:A Quantitative Approach一书中首次提出的一个虚拟的32 位处理器。该处理器不仅体现了当今多种机器(如AMD 29K、DEC station 3100、HP 850、IBM 801、Intel i860、MIPS M/120A、MIPS M/1000、Motorola 88K、RISC I、SGI 4D/60、SPARCstation-1、Sun-4/110、Sun-4/260 等)系统结构的共同特点,还将体现未来一些机器的设计思想。特别是DLX虚拟处理器提供了一个基于PC的研究平台,使读者可以在PC上模拟新的处理器技术。

3.我们在全面了解DLX虚拟处理器的结构和工作原理的基础上,探讨利用DLX虚拟处理器进行处理器指令系统的设计、流水线的设计与实现、并行处理的设计与实现等带有新一代处理器思想和技术的实践教学体系,总结出有典型教学意义的注重设计性和综合性训练的实验。例如,让学生通过实验,采用旁路技术消除数据相关,采用增加运算单元的方法消除控制相关,采用优化程序的方法来提高流水线的性能等,这是一项难度较大的、具有开创意义的教学研究工作。

全书共分9 章,第1章“计算机系统结构的基础”概述了计算机系统结构的概念,分析了相关原理、评价标准及系统结构的发展,为后续章节打下基础。第2章“计算机指令系统”从数据表示讲到指令系统的设计和优化,为读者学习流水线技术做好准备。第3章“存储系统”叙述存储系统的结构和性能提高方法,并介绍了现代RAID和SAN新技术。第4章“输入/输出系统”简要介绍了现代输入/输出系统,包括总线、通道和外围处理机。第5章“流水线技术与向量处理技术”从流水线基础(包括RISC技术、先行控制技术等)开始,讲述流水线原理和性能分析,进而介绍向量处理机。第6章“并行处理机”强调并行处理概念,介绍了SIMD计算机、阵列计算机、相联计算机,以及现代超标量流水线、超级流水线和超长指令字处理机,并对实现并行计算所必不可少的的互联网络原理也进行了描述。第7章“PC的系统结构”如前所述,集中地介绍了PC的发展、系统结构和相关的主板芯片组知识。第8章“多处理器系统”对多处理器系统的基本结构、多处理器线程级并行处理技术和并行程序设计等进行了介绍,并以介绍我国自主研制的曙光5000 超级计算机作为结束。第9 章 “DLX虚拟处理器及其实验”是本书的实践基础,它将帮助读者综合地了解和运用有关处理器指令系统的设计、流水线的设计与实现等方面的知识,有助于对本书前面章节所述内容的理解。各章之后都有大量的习题供读者练习。

在章节编排上,本书注意中心知识的贯通。第1章是全书的概要,其中提出的计算机系统结构分析原理和评价原则贯穿全书。第2章~第5章主要围绕流水线技术展开,并逐步突出并行性结构思想,此后则以并行技术为主线叙述各章,并扩展到PC和现代集群系统。对与前继课程如计算机组成原理可能重叠的内容,注意从系统结构这一新的角度去阐述,而对学生已经熟悉的知识则给予提示或简要描述。本书的讲解深入浅出、突出重点,并精选了一些实例。

在撰写本书的过程中,参考了大量书籍和网络上的信息,本人对这些信息的作者致以诚挚的谢意。同时本书的编著出版得到了电子工业出版社、广西工学院的大力支持,谨致谢忱。

作者深感计算机技术的发展神速,虽然尽力反映最新的系统结构技术,但限于作者水平,确实很难全面反映其进展。遗漏之处和不当之处敬请读者批评指正。

蔡启先

2008年11月