计算机工程设计导论

节选

[

br />
    计算机和通信技术的迅猛发展,不仅形成了融合度*高、潜力*大、增长*快的信息产业,而
且成为推动全球经济快速增长和全面变革的关键因素。进入21世纪,我国的信息产业虽然已取
得了长足的发展,但与发达国家相比,还有不小的差距。国家信息化的发展和信息产业国际竞争
能力的提高,迫切需要高素质、创新型的计算机专业人才。
    高素质计算机专业人才的培养离不开高质量的计算机教育。我们的专业虽然机会多,处于
非常有利的条件,但是我们同样面临着一件事,就是从规模发展向质量提高的转变。怎么提高质
量?专业素质的教育和应用素质的训练非常重要。尤其是我国高等教育进入大众化发展阶段,
社会对计算机专业人才呈现出了多样化的需求。而与此同时,计算机学科的发展已极大地突破
了原有的学科体系框架,形成了在“计算机科学与技术”之下向多个专业方向发展的新格局。在
这种背景下,教育部高等学校计算机科学与技术教学指导委员会编制了《高等学校计算机科学
与技术专业发展战略研究报告暨专业规范(试行)》(以下简称“专业规范”)。专业规范按照“培
养规格分类”的指导思想,提出了三种类型、四个方向,即科学型(计算机科学方向),工程型(计
算机工程方向、软件工程方向),应用型(信息技术方向)的计算机专业发展建议,体现了社会对
不同人才类型的需求,对于指导我国计算机教学改革与建设,规范计算机教学工作,促进计算机
教学质量的提高都具有重要的意义。
    高水平的教材是一流教育质量的重要保证。为了配合专业规范的试行,便于广大高校教师
按照新的专业规范组织实施教学,高等教育出版社在大力支持专业规范研究与起草工作的同时,
还邀请规范起草小组的有关专家成立“高等学校计算机科学与技术系列教材编审委员会”,组织
规划了结合计算机专业规范、面向全国高等学校计算机专业本科生的“高等学校计算机科学与
技术系列教材”。令人高兴的是,一批有创新、改革精神,且有丰富教学经验的高等学校教师投
身到新体系计算机专业教材的编写中来,他们用自己创造性的思维、辛勤的汗水诠释专业规范的
思想,把新的课程体系和教学内容生动地传达给师生,并进行着有意义的教学实践。
    “高等学校计算机科学与技术系列教材”以专业规范和CC2001一CC2005有关教程为依据,
以强化基础、突出实践、注重创新为原则,体现了学科课程体系和教学内容改革的新成果。此外,
这一系列教材还配有丰富的教学辅助资源,并与现代教育技术手段相结合,充分发挥网络平台的
作用,使教材更有利于广大教师和学生使用。目前,这一系列教材有不少选题已列入普通高等教
育“十一五”国家级规划教材,希望这些教材的出版能够对新形势下我国高等学校计算机专业课
 程改革与建设起到积极的推动作用,使我国高校的计算机专业教学质量再上一个台阶。
    中国科学院院士
2006—2010年教育部高等学校计算机科学与技术教学指导委员会主任
    二oo七年十一月
 前    言
    随着微电子技术的发展,计算机的硬件性能得到了快速的提高,计算机软件技术的发展更是
日新月异。这两者的结合使得计算机技术渗透到人类生活的各个领域,悄然改变着人们的生活。
    计算机应用技术在自身领域即计算机工程中的应用构成了现代的计算机工程设计技术。作
者曾经在20世纪70年代、80年代参加过多台计算机的设计和研制工作,1976年在国内率先实
现了计算机的汉字打印输出,1983年利用6800微处理器设计并制作了带有汉字输出的8位微
机。回顾20年前的设计方法,简单地说,是以商品化的通用芯片为基础,以手工设计为主。而
今,利用计算机不仅可以实现硬件芯片、硬件系统设计,甚至可以模拟仿真硬件系统工程设计的
全过程。技术的进步如此迅速,昨天使用大型计算机才能完成的工作,今天使用家里的微机就可
以完成。
    作为计算机专业的学生,在校期间应该从计算机科学理论和实际应用技术两个方面训练和
提高个人的能力。计算机专业学生除具有服务于其他领域的计算机应用技术能力外,更应该掌
握针对计算机专业的计算机应用技能。即一方面,计算机专业学生不仅应像其他专业的学生一
样会使用计算机、利用某种计算机语言开发针对某种应用的应用软件,而且在技能上应更加扎
实,设计实现更加完美;另一方面,他们还应该具备计算机的工程设计的能力,如利用计算机应用
软件实现专用CPU的设计或专用计算机系统的设计等。
    然而,由于各种客观原因,在我国的大学里,计算机专业的教学长期侧重于科学理论、应用软
件以及少量计算机接口内容的教育,很少涉及计算机工程内在的技术和相关实验。目前,可用的
计算机能力以指数的速度增加,如此的发展态势使得数年前无法解决或较难解决的问题在今天
已经成为可能。在这种形势下,教学部门应该以不断发展的、系统的观点调整计算机课程的
内容。
    根据新时期我国科技、经济和社会发展对计算机教育的要求,以及我国大众化教育发展阶段
的特点,教育部计算机科学与技术教学指导委员会组织制定了《计算机科学与技术本科专业发
展战略研究报告暨专业规范》(以下简称专业规范)。以专业规范为指导,以培养具有自主学习
能力、创新实践能力的工程型人才为目标,作者在北京交通大学计算机学院开设了“计算机工程
设计导论”课程,本书即是结合该课程的教学经验编写的。
    本书以微机为核心,采用设计示例驱动的方法讨论计算机系统设计技术。全书共14章,内
容涉及计算机接口技术、EDA技术、专用集成电路设计、PCI接口控制电路设计、机群和网格计算
机系统设计等。
    本书以计算机接口设计作为示例,并通过该例将EDA技术、PLD设计方法、PCI总线的数据
 采集技术、硬件描述语言贯穿起来。本书还以机群和网格为例介绍可扩展计算机系统设计,分别
讲述了机群原理和机群设计、网格原理和网格设计。全书对内容的难度和设计深度以及设计系
统的规模安排是依章节循序渐进的,使用者可根据实际情况调整教学进度。
    本书的出版得到了许多人的关心和支持。感谢罗晓月为本书的编写提供了丰富的资料和宝
贵的建议。书中还引用了一些来自互联网的内容,在此对相关作者表示感谢。
    由于作者水平有限,加之时间仓促,书中难免存在错误之处,诚挚欢迎批评指正。
    编者
2007年12月

,

第9章  可扩展并行计算机概述
    通过前几章的学习,读者已经了解和掌握了计算机工程设计中的两个重要内容:芯片的设
计技术和计算机接口设计技术。
    现代计算机的组成基础是芯片,没有数字芯片也就没有今天的计算机技术和许多与之相关
的科学技术。随着计算机技术的进步,芯片设计已经从专业工厂的专业设计师扩展到逻辑电路
设计者或系统设计工程师。逻辑电路设计者或系统设计工程师利用计算机在实验室内就可以设
计出自己需要的芯片,在这个过程中需要的是设计基本知识和软件操作技能。
    计算机是一个通用设备,或者说是一个通用平台,它可以独立使用,或与多种设备连接、配合
使用,或构成新功能的设备。为了实现与其他设备的连接,就需要了解计算机接口技术。计算机
接口设计技术就是计算机工程设计中的一个重要内容。计算机接口设计自动化是指将接口设计
的逻辑电路用芯片设计技术实现,并结合其他软件技术的系统设计方法。
    现代计算机的一个显著特点是并行性。如在一台设置有多个处理器的计算机中,任务分配
给多个处理器并行地进行处理,则实现了处理的并行性。即使在一个单处理器中也采用了多种
方法实现并行性。例如,指令流水线化的基本思想是使连续指令的执行在时间上得到重叠,达到
提高计算机速度的目的。我们知道,并行处理器的基础是要有并行的硬件环境。硬件环境的建
立一般都是在计算机生产厂家完成。目前,这种现象已经被改变,开始向计算机用户方转移。计
算机用户以市场上出售的商品计算机作为基本单元,可以自行设计功能强大的并行计算机,这就
是计算机工程设计的另一部分内容,即可扩展计算机结构设计。
    并行计算机模型用于并行处理,即通过将一个大的任务分解为许多小的可并行执行的任务
来解决问题。从计算机系统结构上考虑,不管程序员是否意识到,现代计算机的结构客观上都存
在并行性。事实已证明,无论是高性能的科学计算还是一般的应用都对计算机的效率不断提出
要求,并行处理方式正在被推广。
9.1  并行处理系统
9.1-l  并行性
    所谓并行处理是指计算机同时处理多条指令、多个数据或多个任务。要实现一个问题的并
行处理必须有可并行处理的硬件环境,以及有支持并行处理的软件和处理问题的并行算法。现
 代并行处理技术包含了并行的系统结构、支持并行处理的软件和实现并行处理的算法等方面的
内容。
  1.并行性的含义
  ①同时性,指两个或多个事件在同一时刻发生在多个资源中。
  ②并发性,指两个或多个事件在同一时间间隔内发生在多个资源中。
  ③流水线,指两个或多个事件发生在可能重叠的时间段内。
  2.并行性等级
  按并行程度,并行性可分为下面几个等级:
  ①作业级,指作业(或任务)之间和部分作业之间的并行执行。
  ②程序级,指程序各部分之间或在循环语句中的并行。
  ③指令级,指在指令执行的各阶段之间的并行。
  ④运算和位级,指在向量操作的分量之间或在运算逻辑线路内部的并行。
9.1.2  并行计算机的主要功能结构和特点
    并行计算机的主要功能结构和特点包括以下几个方面:
    ①流水线结构。把功能部件细分,使各子部件能进行并行处理,是开发指令级时间上的并
行性。其特点相当于工业生产中的装配线技术,能够改进运算和控制部件功能。
    ②功能结构。为相同的功能提供几个独立的部件,各独立部件可同时处理不同的数据,完
成相同的功能,用以开发指令级空间上的并行。
    ③阵列结构。以大量相同的处理单元按照一定的规则排成阵列,在统一的控制下,各处理
单元同时执行相同的操作,各处理单元的处理数据可以不同。
    ④多处理器结构。把多台计算机或处理器通过高速网络连接起来,使各计算机或处理器各
尽其能,相互合作,开发程序级和作业级的并行。
    ⑤大规模并行处理(massively parallel processing,MPP)结构。通过高速网络,利用专门的管
理机制使大量的计算机合作完成一个任务。
9.1-3  并行计算机的两个重要问题
    1.可扩展性
    可扩展性是并行计算机的一个重要问题,它可以使并行计算机发挥*大优势。可扩展性可
以简单定义为“在确定的应用背景下,计算机系统的性能要随处理器数的增加而线性增长”(黄
铠,徐志伟,2000)。可扩展性包括规模可扩展、时间可扩展和问题可扩展3个方面。
    ①规模可扩展的要点是均衡,均衡的目的是防止瓶颈的发生。
    ②时间可扩展也称换代可扩展,主要指体系结构不受限于芯片、器件、工艺等。
    ③问题可扩展指当节点增加时,系统能适应问题规模的扩大;当问题的粒度加大时,效率能
相应提高。
    2.可编程性
    可编程性(programmability)是并行计算机的另一个重要问题。可编程性是在并行计算机发
展的过程中,伴随可扩展性而产生的新概念。并行计算机有共享与分布式两种存储结构,所以操
作系统进程间的通信(IPC)也有两种不同的机制:共享变量和消息传递。计算机结构和操作系
统的这些区别又影响到支撑软件和应用软件的编程模式。可编程性就是用以描述并行计算机的
这一重要特点。
9.1.4  并行处理机模型
    并行机的发展基本上可以分为5个阶段,这5个阶段对应着并行处理机的5种机器模型:
并行向量处理机(PVP)、对称多处理机(SMP)、分布式共享存储多处理机(DSM)、大规模并行处
理机(MPP)和计算机机群(cluster,简称机群)。
    1.PVP
    Cray C一90、Cray T90、NEC SX一4和我国的银河1号都属于PVP。这样的系统包含了少量
的高性能专门设计定制的向量处理机(VP),每个至少具有l Gflops的处理能力。系统中使用了
专门设计的高带宽的交叉网络将VP与共享存储模块相连。
    2.SMP
    IBM R50、SGI Power Challenge、DEC Alpha服务器8400和我国的曙光1号属于SMP。SMP
系统使用商用微处理器,它们经由高速总线连向共享存储器。这种机器主要应用于商务领域,例
如数据库、在线事务处理和数据仓库等。SMP的系统结构是对称的,每个处理器可平等地访问
共享存储器、I/0设备和操作系统服务。
    3.MPP
    Intel Paragon、IBM SP2、Intel TFLOPS和我国的曙光1000等属于MPP。MPP一般是指超大型
的计算机系统,主要应用于科学计算、工程模拟和信号处理等以计算为主的领域。它具有如下
特性:
    ①处理节点采用商用处理器。
    ②系统中有物理上分布的存储器。
    ③采用高通信带宽和低延迟的互连网络,能扩放至成百上千个处理器。
    ④异步的多指令多数据流机器。
    4.DSM
    DSM和SMP的主要差别是,DSM在物理上有分布在各节点的局部存储器,从而形成了一个
共享的存储器。对用户而言,系统硬件和软件提供了一个单地址的编程空间。DSM相对于MPP
的优越性是编程比较容易。
    5.机群
    机群是多台计算机的集合,这些计算机由局域网或高性能网络连接。每台计算机称为一个
节点,可以是一台SMP、工作站或PC。全体节点构成一个整体,作为单一的计算机资源。

]

本书特色

[

,

本书特色:
以计算机接口设计为例,将EDA技术、PLD设计方法、PCI总线的数据
    采集技术、硬件描述语言贯穿起来,并以机群和网格为例介绍可扩展计算
    机系统设计。
 强调计算机实践能力的培养。以微型计算机为核心,采用设计示例驱动的
    方法讨论计算机系统设计技术,内容涉及计算机接口技术、EDA技术、专
    用集成电路设计、PCI接口控制电路设计,机群和网格计算机系统设计等。

]

封面

计算机工程设计导论

书名:计算机工程设计导论

作者:罗四维

页数:298

定价:¥26.8

出版社:高等教育出版社

出版日期:2008-03-01

ISBN:9787040232530

PDF电子书大小:122MB 高清扫描完整版

百度云下载:http://www.chendianrong.com/pdf

发表评论

邮箱地址不会被公开。 必填项已用*标注