当前位置:文档之家› 计算机组成原理第1章

计算机组成原理第1章

控制器设计使用微程序控制技术,使控制器的设计规 整化。
结构化程序设计思想成熟,软硬件设计标准化。
典型代表是IBM360系列机和DEC的PDP-8小型机。
4.第四代(1971年~至今):大规模/超大规模集成电路计算机
主要特点:逻辑元件 —— 大规模/超大规模集成电路(LSI/VLSI) 主 存 —— LSI/VLSI半导体芯片 辅 存 —— 磁盘、光盘 软 件 —— 高级程序设计语言、操作系统 应 用 —— 科学计算、数据处理、过程控制,并进入以计算机
计数器的值用3位输出V2V1V0表示。当值从5变到0时,进 位输出C的值为1,否则为0。在该例子中,C值保持1不 变,直到计数器从0变到1为止。
该计数器的有限状态机需有六个状态,任意标识为S0、 S1、S2、S3、S4和S5,状态Si相应于计数器的输出i,状 态按下列顺序排列:
S0→S1→S2→S0→S4→S5→S0→… 此外,为了处理模6计数器电源开启位于无效状态的情形, 我们包含另两个状态S6和S7。根据该计数器的工作情况, 很易得出其状态表如表1-3所示,其状态图如图1-5所示。
典型代表有ENIAC、IAS计算机、UNIVAC商用计算机和 IBM701计算机。
2.第二代(1959年~1964年):晶体管计算机 主要特点:逻辑元件 —— 晶体管
主 存 —— 磁芯 辅 存 —— 磁盘 软 件 —— 高级程序设计语言、操作系统 应 用 —— 除科学计算外,已应用于数据处理、
过程控制 主要成就:
1.2.2 用RTL表示数字系统
1. 数字元件表示 第一个例子,考虑如图1-4(a)所示的D触发器。其功
能可用RTL语句表示为: LD:Q←D
当LD的输入为高时,便装载D输入端的值,并且输出端 Q可得到此值。 图1-4(b)表示的D触发器有一同步清0输入端。当CLR =1时,触发器应被置为0。
图1-4 D触发器:(a)无清0输入端 (b)有清0输入端
有时需要访问一个寄存器的单一位或位组。单 一位可以用带有下标的字母表示,如X3 或Y2 。 位组在RTL中可以用一个域表示;它们包含在 圆括号中。如X3、X2和X1可以写成X(3-1)或 X(3:1)。下述表示是有效的。
α :X(3-1)←Y(2-0)
β :X3←X2 γ :X(3-0)←X(2-0),X3
网络为特征的应用时代。
主要成就:
1971年美国Intel公司成功地研制出了Intel 4004微处理器芯片。 微型计算机的出现,1981年IBM公司正式推出了全球第一台个人
计算机IBM PC。 面向对象、可视化程序设计概念出现;软件产业高度发达,各种
实用软件层出不穷,极大地方便了用户。
计算机技术与通信技术相结合,计算机网络把世界紧密地联系在 一起。
ARM是一种由英国剑桥ARM公司设计的基于RISC的微处 理器和微控制器序列。
多媒体技术的崛起。
典型代表是Intel x86系列、IBM PC机和各种超级计算机。
二十世纪八十年代初以来,许多科学家一直预测着第五 代计算机将朝哪个方向发展,综合起来大概有以下几 个研究方向: 人工智能计算机 超级计算机 激光计算机
超导计算机 生物晶体计算机(DNA计算机) 量子计算机
5.嵌入式系统和ARM 嵌入式计算机一般是以应用为中心,以计算机技术为
基础,软件、硬件可裁剪,适应应用系统对功能、可 靠性、成本、体积、功耗严格要求的专用计算机系统。
嵌入式系统一般由嵌入式微处理器、外围硬件设备、 嵌入式操作系统以及用户的应用程序等四个部分组成, 用于实现对其他设备的控制、监视或管理等功能。
机器语言是最低级的程序设计语言,具有平台 特定性,每一种微处理器都有自己的机器语言。
用机器语言编写的程序不易阅读、出错率高、 难以维护,也不能直观地反映使用计算机解决 问题的基本思路,因此现在几乎不被程序员采 用。然而,由高级语言和汇编语言编写的程序 可以转换成机器语言,然后再由微处理器执行。
1.1.3 汇编语言
首次将晶体管用于计算机,克服了第一台计算机的体积 大而笨重、造价高、功耗大和不稳定等缺陷。
发明了高级语言。1956年美国国防部发明了第一个专用 的高级语言Ada语言。1957年IBM公司发明了FORTRAN高 级语言,主要用于科学计算。
计算机兼容问题的产生。包括硬件兼容和软件兼容。 典型代表有IBM 7000系列计算机和PDP-1小型计算机。
汇编语言是面向机器的程序设计语言,与平台 相关,它能利用计算机所有硬件特性并能直接 控制硬件。它实际上是机器语言的符号化,亦 称为符号语言。
计算机不能直接识别使用汇编语言编写的程序, 需要将汇编语言翻译成机器语言,这种起翻译 作用的程序叫汇编程序,它比高级语言的编译 器要简单很多。
汇编语言比机器语言易于读写、调试和修改, 同时具有机器语言的全部优点,即目标代码简 短,占用内存少,执行速度快,能有效地访问 和控制计算机的各种硬件设备。但在编写复杂 程序时,相对高级语言来说代码量较大,开发 效率较低。
本章首先简单介绍程序员与计算机的接口界面:计算 机的语言;然后介绍如何使用RTL语言来描述数字系统; 接着介绍计算机的发展演变和性能指标;最后重点讨 论计算机的基本组成和工作原理,以期提供一个计算 机系统的整个概貌。
1.1计算机的语言
计算机程序设计语言分为三类: 高级语言、汇编语言和机器语言。
1.1.1 高级语言
用RTL代码描述此触发器的一种尝试为:
LD: Q←D
CLR: Q←0
然而当D、LD和CLR都等于1时,系统会失败。解
决的方法是改变条件使得两者互斥。下述两种 方法均有效,前者让CLR输入端优先,而后者 让LD优先。
CLR’LD:Q←D
LD:Q←D
CLR:Q←0
LD’CLR:Q←0
第二个例子,考虑一个没有CLR输入端的JK触发 器。它的行为可用RTL描述如下: J’K:Q←0 JK’:Q←1 JK :Q←Q’ 当J=K=0时,不满足条件,触发器保持它原有 的值,此时不需要RTL语句,因为没有传送。
1.2寄存器传输语言
1.2.1微操作和寄存器传输语言
寄存器传送语言RTL(Register Transfer Language) 是初级硬件描述语言,适用于描述寄存器级的硬 件组成,能精确而简练地描述计算机的各种基本 操作。
微操作(micro-operation)是计算机中最基本的操 作,这些操作可以简单到从一个寄存器拷贝数据 到另一个寄存器中,或者更复杂,例如,把两个 寄存器中的数据相加存储到第三个寄存器中。
计算机组成原理
学时:80学时
第1章 计算机系统概述
计算机是一种能自动、快速、准确地实现信息存储、 数值计算、数据处理和过程控制等多种功能的电子机 器,是一个复杂的系统。
本书采用自顶向下、由表及里的方法来描述计算机系 统。从系统的主要部件开始,描述它的结构和功能, 然后逐级深入推进到层次结构的底层。
高级语言是一种近似自然语言并能被计算机接受 的语言,指那些具有最高级抽象的语言。这些语 言隐藏了计算机和操作系统的细节,被称之为平 台无关。C++、Java和Fortran等都是高级语言。
使用高级语言描述任务最简单、直观、高效且容 易理解,但需要有编译器的支持。
1.1.2 机器语言
机器语言是微处理器能直接识别并执行的唯一 一种语言,其表现形式是二进制编码。
图1-2 数据传送α:X←Y,Y←Z的实现
数字系统中有可能需同时拷贝相同的数据到多 个目的地。例如,α=1时发生下述情况: α: X←Y,Z←Y
寄存器Y可同时被多个寄存器读取,两个微操 作可同时执行。一种实现方法如图1-3所示。
图1-3 实现数据传送α:X←Y,Z←Y
另一方面,数字系统不能同时往同一寄存器中 写入两个不同的值。例如,α:X←Y,X←Z是无 效的。
S5
1
S0
1
000
S6
X
S0
1
111
S7
X
S0
1
111
为了用RTL表示该系统,首先需定义条件S0到S7对应于V2V1V0从000到 111,然后考虑模6计数器的每种可能行为。
当计数器的值从000变到100且它的U信号有效时,计数器的输出增 加。相应的RTL语句为: (S0+S1+S2+S3+S4)U: V←V+1,C←0
图1-6 模6计数器RTL代码的两种实现 (a)用一个寄存器 (b)用一个计数器
1.3 计算机的发展演变和性能
1.3.1 计算机简史
自从1946年美国宾夕法尼亚大学W·Mauchly、J·P·Eckert两 位教授研制的第一台计算机ENIAC(Electronic Numerical Intergrator And Calculator)问世以来,计算机的发展已 经历了60多年。
1.第一代(1946年~1959年):电子管计算机 主要特点:逻辑元件 —— 电子管
主 存 —— 磁鼓 辅 存 —— 磁带 软 件 —— 机器语言、符号语言 应 用 —— 科学计算 主要成就:
数字电子计算机的出现,揭开了人类历史的新篇章。
1945年美国普林斯顿大学教授约翰·冯·诺依曼提出了 “存储程序的概念”,即程序和数据一起存放在存储器 中。该思想奠定了现代计算机组成与工作原理的基础, 被称为冯·诺依曼思想;以此思想为基础的各类计算机 被称为冯·诺依曼计算机。
图1-1 具有控制信号的数据传送α:X←Y的实现: (a)用直接通路 (b)用总线
提高系统性能的一种方法是同时执行两个或多 个微操作。例如,如果某系统在α=1时执行 X←Y和Y←Z的传送,则这种情况可以表示成:
α:X←Y,Y←Z 或者 α:Y←Z,X←Y
图1-2给出了实现上述微操作的硬件,注意这里 不能使用单一的总线来实现。
图1-5 模6计数器的状态图
相关主题