2 微机原理与接口技术 ( 第二版 ) 图 1 1 第一台电子计算机 ENIAC 1944~1945 年间, 著名的美籍匈牙利数学家冯 诺依曼 (John Von Neumann)( 如图 1 2 (a) 所示 ) 应邀参加 ENIAC 计算机研制任务 在研制中, 他深刻认识到 ENIAC 不能存储

Similar documents
Ps22Pdf

《计算机应用基础》学习材料(讲义)

1 CPU

<4D F736F F D20B5DAC8FDCBC4D5C2D7F7D2B5B4F0B0B82E646F63>


L1 computer system overview

投影片 1

第七章 中断

( ), 16/ 32 Intel 8086, Intel, , Intel8086 Intel I/ O,, ( CIP ) /,,. :, ( ) ISBN T P36 CIP ( 2002) 0

C. 大规模集成电路 D. 晶体管 参考答案 B 8. 采用超大规模集成电路的计算机是计算机发展中的 A. 第 4 代 B. 第 3 代 C. 第 2 代 D. 第 1 代 参考答案 A 9. 当前的计算机一般被认为是第四代计算机, 它所采用的逻辑元件是 A. 晶体管 B. 集成电路 C. 电子管

DPJJX1.DOC

第1章 概论

<4D F736F F F696E74202D20B5DA35D5C2CEA2B4A6C0EDC6F7B9A4D7F7D4ADC0ED2E707074>

微型计算机原理与应用

<4D F736F F F696E74202D DB5DABEC5BDB22DCEA2B4A6C0EDC6F7B5C4D3B2BCFEBDE1B9B9A3A8D2BBA3A92E >

多核心CPU成長日記.doc

相 关 知 识 1 计 算 机 工 作 原 理 1946 年 2 月, 世 界 上 第 一 台 电 子 计 算 机 ENIAC (Electronic Numerical Integrator And Computer, 电 子 数 字 积 分 计 算 机 ) 诞 生 于 美 国 宾 夕 法 尼 亚

PowerPoint Presentation

计算机组成原理

,,, PCB, AR M VxWorks DSP,,,,,,,,,,, (CIP) /,,.:,2005 ISBN TP36 CIP (2005) : ( 10 ) : : (010 ) : (010)

HD ( ) 18 HD ( ) 18 PC 19 PC 19 PC 20 Leica MC170 HD Leica MC190 HD 22 Leica MC170 HD Leica MC190 HD Leica MC170 HD

<4D F736F F D20C7B0CBC4D5C2D7F7D2B5CCE22E646F6378>

Microsoft PowerPoint - Ch CPU总线及其形成.ppt [兼容模式]

B. 工资管理软件 C. 用汇编语言编写的一个练习程序 D.Windows 操作系统 86. 计算机操作系统是一种 A. 系统软件 B. 应用软件 C. 工具软件 D. 调试软件 参考答案 A 87. 下列 4 种软件中属于应用软件的是 A. 财务管理系统 B.DOS C.Windows 98 D.

例 如, 一 个 含 有 2000 个 记 录 的 文 件, 每 个 磁 盘 块 可 容 纳 250 个 记 录, 则 该 文 件 包 含 8 个 磁 盘 块 然 后 对 该 文 件 作 二 路 归 并 的 外 排 序, 每 次 往 内 存 读 入 两 个 磁 盘 块, 排 序 后 再 写 回 磁

Microsoft PowerPoint - Ch0-绪论.pptx

Microsoft PowerPoint - IC-HG-Review.ppt

CPU CPU Intel CPU AMD CPU CPU Socket A/Socket 370 CPU Socket 478 CPU CPU CPU CPU CPU

为 边 数 的 两 倍, 显 然 必 为 偶 数 而 ii 和 iii 则 不 一 定 正 确, 如 : 对 顶 点 数 N 1 无 向 完 全 图 不 存 在 一 个 顶 点 的 度 为 1, 并 且 边 数 与 顶 点 数 的 差 要 大 于 1 8. 考 查 m 阶 B- 树 的 定 义 A

<4D F736F F D20C7B6C8EBCABDCFB5CDB3C9E8BCC6CAA6BFBCCAD4B4F3B8D92E646F63>

KV-cache 1 KV-cache Fig.1 WorkflowofKV-cache 2.2 Key-value Key ; Key Mem-cache (FIFO) Value Value Key Mem-cache ( Value 256B 100 MB 20%

lecture21

(Microsoft Word - \267s\274W Microsoft Office Word \244\345\245\363)

Microsoft Word - 封面.doc

目录 1 H3C R4900 G2 服务器可选部件与操作系统兼容性列表 控制卡 GPU 卡 网卡 FC HBA 卡 TPM/TCM 模块 NVMe SSD PCle 加速卡 1-31 i


重点产品技术性贸易措施研究报告-音视频产品

Microsoft Word ZW-11111

图+/(!^4 系统的概念结构 图+/,! 冯+ 诺依曼计算机结构示意图 生了很大的改变!但就其结构原理来说!冯+诺依曼计算机的体系结构仍然占据主导地位" 冯+ 诺依曼计算机以运算器和控制器为核心#存储程序的原理为基础!且在存储器中 按顺序存储或读取由指令和数据组成的程序" 从外观来看!^4 的硬件


Intel® Core2™ i7 Processor

Microsoft Word - 正文.doc

没有幻灯片标题

微机第02章1(指令寻址)

PCM-3386用户手册.doc

一 汇编语言计算机基础 从事计算机科学方面的工作, 汇编语言是我们必不可少缺的基础 我们的工作平台 研究对象都是机器, 而汇编语言是人和计算机沟通的最直接方式, 它描述了机器最终所要执行的指令序列 学习汇编语言可以让你充分获得底层编程的体验, 深刻理解机器运行程序的机理 二 基础知识 1. 汇编语言

Microsoft Word - 最新正文.doc

TD

PowerPoint 演示文稿

CH559指令周期.doc

Microsoft PowerPoint - 第9讲-08.ppt [兼容模式]

Chapter #

论文,,, ( &, ), 1 ( -, : - ), ; (, ), ; ;, ( &, ),,,,,, (, ),,,, (, ) (, ),,, :. : ( ), ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ), ( ),,,, 1 原译作 修补者, 但在英译版本中, 被译作

册子0906

第一章 绪论 (1) 计算机基础知识 (2) 软件体系结构入门 (3) 计算机编程基础 (4) 程序设计语言的发展 (5) 面向对象的软件开发过程 (6) 程序开发过程及开发工具

<4D F736F F D C4EAC8ABB9FAD1D0BEBFC9FABFBCCAD4BCC6CBE3BBFACDB3BFBCCAD4CCE2BCB0B4F0B0B82E646F63>

图 内部结构图 8251 的外部引脚如图 所示, 共 28 个引脚, 每个引脚信号的输入输出方式如图中的箭 头方向所示

General CNC PCU SINUMERIK OP TP SINUMERIK PCU PC USB PC SINUMERIK SINUMERIK PCU SINUMERIK PCU PC SINUMERIK OP SINUMERIK PCU SINUMERIK SINUMERIK PCU MP

电子技术基础 ( 第 版 ) 3. 图解单相桥式整流电路 ( 图 4-1-3) 电路名称电路原理图波形图 整流电路的工作原理 1. 单相半波整流电路 u 1 u u sin t a t 1 u 0 A B VD I A VD R B

第 期 曹 源 等 形式化方法在列车运行控制系统中的应用

C.98 D.90 答案 :C 7 裸机 是指计算机仅有 A. 软件 B.CPU C. 硬件系统 D. 指令系统答案 :C 8 为解决某一问题而设计的一系列有序的指令或语句的集合称为 A. 指令 B. 程序设计语言 C. 指令系统 D. 程序答案 :D 9 在下列 4 个数据中, 采用十六进制表示的

没有幻灯片标题

PowerPoint 演示文稿

第5章:汇编语言程序设计

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

CPU


+01-10_M5A_C1955.p65

水晶分析师

MSAC-EX1

NC MCP MPG

OB1

主要内容 指令系统的一般概念 指令操作方式操作码的含义指令对操作数的要求指令执行的结果 寻址方式 指令说明 2015 年 3 月 16 日星期一 8 时 2 分 37 秒 2

考生编号政治政治分外语外语分科目 1 科目 1 分科目 2 科目 2 分总分专业代码专业名称专业排名考试方式报名号 思想政治理论 62 英语一 78 数学一 108 普通物理 ( 包括力学 电磁学 光学 ) 物理电子学 1 全国统考 11

计算机组成与系统结构

计算机组成与系统结构

PowerPoint 演示文稿

P4V88+_BIOS_CN.p65

HighPoint产品的FAQ手册

c_8ip900_1002_q_SC.p65

IC芯片自主创新设计实验

主要内容 微型机的构成 ( 回顾 ) 总线 接口 8086 CPU 的结构及工作原理 8086 存储器 8086 系统配置 2015 年 3 月 9 日星期一 3 时 38 分 16 秒 2


Undergraduate Schedule Course For Clinical Medicine on Jiangsu University

Microsoft Word - 文前.doc

ebook105-12

<4D F736F F F696E74202D DB4E6B4A2C6F7C9E8BCC62E BBCE6C8DDC4A3CABD5D>

8S E600Y 0773-CE

幻灯片 1

2009 年第 6 期 高清总动员 35

Quidway® S8500系列万兆核心路由交换机

P4VM800_BIOS_CN.p65

Microsoft Word - tp cb c.doc


二零零七年十月十五日會議

全国计算机等级考试一级教程-第2章 计算机系统12月19日晚上

考试时间课程名称级人数考试地点 机械工程 17 级卓越 1 30 D-386 机械工程 17 级卓越 2 30 D-386 自动化 17 级 1 30 D-3108 自动化 17 级 2 30 D-3108 电子信息工程 17 级 1 32 C-170 电子信息工程 17 级 2 32 C-242

Acer E 15 Graphics Driver Download. Mexico motor Picture redes original Jorge montana

<4D F736F F D20B5DAC1F9D5C2CFB0CCE2B4F0B0B8A3A8CDF8D5BEA3A92E646F63>

2005.book

Transcription:

第 1 章微型计算机概述 电子计算机是人类历史上最伟大的发明之一 人类从原始社会学会使用工具以来到现代社会经历了三次大的产业革命, 即农业革命 工业革命和信息革命 信息革命是以计算机技术和通信技术的发展与普及为代表的 随着计算机的广泛应用, 人类社会生活的各个方面都发生了巨大变化 特别是随着微型计算机技术和网络技术的高速发展, 计算机逐渐走进了人们的家庭, 改变着人们的生活和思维方式, 成为人们生活和工作不可缺少的工具, 掌握计算机的使用方法也成为人们必不可少的技能 本章重点讲述计算机及微型计算机的发展历程 微处理器的内部构成 微机的工作过程 微型计算机系统及 PC 系列微机的体系结构, 这些内容对理解后续微机原理及接口技术起提纲挈领的作用 计算机发展概况 ( 计算机发展历程 微型计算机发展历程 第一台计算机的诞生与冯 诺依曼计算机结构 ) 微型计算机的基本结构 ( 结构组成 CPU 的组成与功能 ) 微型机的工作原理与过程 ( 计算机的指令与程序 指令的执行过程 微机的工作原理 ) 微型计算机系统 ( 硬件系统与软件系统 微型计算机的分类及技术指标 ) PC 系列微机的基本体系结构 (PC/XT 机 80386/80486 现代微机的基本结构) 1.1 计算机的发展概况 1.1.1 世界上第一台计算机的诞生与冯 诺依曼计算机结构 1946 年, 在美国的宾西法尼亚大学诞生了世界上第一台电子计算机 ENIAC(Electronic Numerical Integrator And Calculator), 如图 1 1 所示 该计算机由 18800 个电子管组成, 重 30 吨, 占地 150 平方米, 功率 150 千瓦, 字长为 12 位, 加法运算速度为 5000 次 / 秒, 乘法运算速度为 56 次 / 秒, 比先前的继电器计算机快 1000 倍, 比人工计算快 20 万倍 ENIAC 的诞生, 为计算机和信息产业的发展奠定了基础 ENIAC 存在的一个主要缺陷是不能存储程序 它由人工设置开关并以插入和拔出导线插头的方式来编制程序 编程时需要对大约 6000 多位开关进行仔细的机械定位, 并用转插线把选定的各个控制部分互连起来以构成程序序列 这种原始的机械式编程方法显然效率很低

2 微机原理与接口技术 ( 第二版 ) 图 1 1 第一台电子计算机 ENIAC 1944~1945 年间, 著名的美籍匈牙利数学家冯 诺依曼 (John Von Neumann)( 如图 1 2 (a) 所示 ) 应邀参加 ENIAC 计算机研制任务 在研制中, 他深刻认识到 ENIAC 不能存储程序这一缺陷, 并在 1945 年由他领导的 EDVAC (Electronic Diserete Vatiable Automatic Computer, 离散变量自动电子计算机 ) 试制方案中, 作为一位主要倡导者指出 :ENIAC 的开关定位和转插线连接只不过代表着一些数字信息, 它们完全可以像受程序管理的数据一样, 存放于主存储器中 这就是最早的 存储程序概念 (Stored Program Concept) 的产生 EDVAC 计算机由运算器 逻辑控制装置 存储器 输入设备和输出设备五个部分 ( 如图 1 2(b) 所示 ) 组成, 采用了 存储程序 的思想, 把数据和程序指令用二进制代码的形式存放在存储器中, 保证了计算机能按事先存入的程序自动进行运算 CPU 输入设备 运算器 内存储器 控制器 输出设备 外存储器 (a) (b) 图 1 2 冯 诺依曼和冯 诺依曼计算机结构 冯 诺依曼首先提出的 存储程序 概念, 以及由他首先规定的计算机的基本结构, 人 们称为 冯 诺依曼计算机结构 归纳其基本内容, 主要包括以下几点 : 计算机应由运算器 控制器 存储器 输入设备和输出设备五个部分组成 数据和程序均以二进制代码形式不加区别地存放在存储器中, 存放的位置由存储器的 地址指定 计算机在工作时能够自动地从存储器中取出指令并加以执行 半个世纪以来, 随着计算机技术的不断发展和应用领域的不断扩大, 相继出现了各种类 型的计算机, 包括小型计算机 中型计算机 大型计算机 巨型计算机以及微型计算机等, 它 们的规模不同, 性能和用途各异, 但就其基本结构而言, 都是冯 诺依曼计算机结构的延续和 发展

第 1 章微型计算机概述 3 1.1.2 计算机的发展历程自 1946 年 ENIAC 诞生以来, 计算机的发展主要经历了以下几代 : (1) 第一代计算机 第一代计算机的发展阶段为 20 世纪 40 年代末到 50 年代中期, 这个阶段的计算机以电子管为主要元件, 也就是电子管时代的计算机 这一代计算机主要用于科学计算 (2) 第二代计算机 20 世纪 50 年代中期, 晶体管取代电子管, 大大缩小了计算机的体积, 降低了成本, 同时将运算速度提高了近百倍, 这个时代的计算机也称为晶体管时代的计算机 在应用上, 计算机不仅用于科学计算, 而且开始用于数据处理和过程控制 (3) 第三代计算机 20 世纪 60 年代中期, 集成电路问世之后, 出现了中 小规模集成电路构成的第三代计算机 这一时期, 实时系统和计算机通信网络有了一定的发展 (4) 第四代计算机 20 世纪 70 年代初, 出现了以大规模集成电路为主体的第四代计算机 这一代计算机的体积进一步缩小, 性能进一步提高, 发展了并行技术和多机系统, 出现了精简指令集计算机 (Reduced Instruction Set Computer,RISC) 微型计算机(Microcomputer) 也是在第四代计算机时代产生的 (5) 第五代计算机 主要目标是采用超大规模集成电路, 在系统结构上类似人脑的神经网络, 在材料上使用常温超导材料和光器件, 在计算机结构上采用超并行的数据流计算等 1.1.3 微型计算机的发展历程 作为第四代计算机的一个重要分支, 微型计算机诞生于 20 世纪 70 年代初, 其诞生的重 要标志是中央处理器 (Central Processing Unit,CPU) 的出现,CPU 芯片也称为微处理器 (MicroProcessing Unit,MPU 或 Microprocessor) 从 1971 年 Intel 公司首先研制成功的 4 位 Intel 4004 微处理器算起, 微型计算机经过近 40 年的发展,CPU 已经从 4 位发展到目前正在 使用的 64 位, 分为以下几个阶段 : (1) 第一阶段 (1971 1973 年 ) 4 位或 8 位低档微处理器和微型计算机时代, 通常称之为第一代, 其典型产品是 Intel 4004 Intel 8008 微处理器以及由它们组成的 MCS 4 和 MCS 8 微型计算机 系统结构和指令系统均 比较简单, 主要用于家用电器和简单的控制场合 其主要技术特点如下 : 处理器为 4 位或低档 8 位 采用 PMOS 工艺, 集成度低 运算功能较差, 速度较慢 语言主要以机器语言或简单的汇编语言为主 (2) 第二阶段 (1974 1977 年 ) 8 位中高档微处理器和微型计算机时代, 通常称之为第二代, 其典型产品是 Intel 公司的 8080/8085 等微处理器 其主要技术特点如下 :

4 微机原理与接口技术 ( 第二版 ) 处理器为中高档 8 位 采用 NMOS 工艺, 集成度比第一代提高 4 倍左右 运算速度提高 10~15 倍 采用机器语言 汇编语言或高级语言, 后期配有操作系统 (3) 第三阶段 (1978 1981 年 ) 16 位微处理器和微型计算机时代, 通常称之为第三代, 其典型产品是 Intel 公司的 8086/8088 及 80286 等微处理器 其主要技术特点如下 : 处理器为 16 位 采用 HMOS 工艺, 集成度比第二代提高一个数量级 ( 一个数量级就是 10 的 1 次方 ) 运算速度比第二代提高一个数量级 采用汇编语言 高级语言, 并配有软件系统 (4) 第四阶段 (1982 1991 年 ) 32 位微处理器和微型计算机时代, 通常称之为第四代, 其典型产品是 Intel 公司的 80386/80486 等微处理器, 以及相应的 IBM PC 兼容机, 如 386 486 等 其主要技术特点如下 : 处理器为高性能的 16 位或 32 位处理器 采用 HMOS 或 CMOS 工艺, 集成度在 100 万晶体管 / 片以上 运算速度再次提高 部分软件硬件化 (5) 第五阶段 (1992 年以后 ) 高档的 32 位及 64 位微处理器时代, 是奔腾系列处理器和奔腾系列微型计算机时代, 通 常称之为第五代, 其典型产品是 Intel 公司的 Pentium Pentium II Pentium III Pentium 4 Itanium ( 安腾 ) Core 2 Duo( 酷睿 2 双核 ) Core 2 Extreme Quad_core( 四核 ) 等 发展过程中一些典型的 CPU 芯片如图 1 3 所示 可以预言, 更高性能的微处理器及 微型计算机还将不断推出 现将各代微处理器和微型计算机的主要技术指标汇总列于表 1 1 中 Intel 4004 Intel 8008 Intel 8086 Intel 80286 Intel 80386 Intel 80486 图 1 3 典型的 CPU 芯片图

第 1 章微型计算机概述 5 Pentium Pentium MMX Pentium Pro Pentium Ⅱ Pentium Ⅲ Pentium 4 Intel Xeon 系列 Intel Core 系列 图 1 3 典型的 CPU 芯片图 ( 续图 ) 芯片 推出日期 地址总线 表 1 1 Intel 微处理器性能演进表 数据总线 存储器寻址空间 一级缓存 二级缓存 工作频率 集成度 ( 只 / 片 ) 4004 1971.4 640B 0.108M 2250 8008 1972.4 16 16 16K 0.108M 3500 8080 1974.2 16 8 64K 2M 4500 8086 1978.6 20 16 1MB 5M 8M 10M 29000 8088 1979.6 20 8 1MB 5M 29000 80286 1982.2 24 16 16MB 12M 20M 25M 13.4 万 80386SX 1988.12 24 16 16MB 16M 25M 33M 27.5 万 80386DX 1985.10 32 32 4GB 16M 33M 40M 27.5 万 80486DX 1989.4 32 32 4GB 8KB 25M~100M 120 万 Pentium 1993.3 32 64 4GB 16KB 66M~200M 310 万 Pentium Pro 1995.3 36 64 64GB 16KB 256KB 150M~200M 550 万 Pentium MMX 1996.12 32(36) 64 64GB 16KB 200M~300M 450 万 Pentium II 1997.5 36 64 64GB 32KB 512KB 233M~450M 750 万 P II Xeon ( 至强 ) 1998 36 64 64GB 32KB 512KB 350M~450M 750 万 P III 1999.2 36 64 64GB 32KB 512KB 450M~1.4G 950 万 P4 2000.11 36 64 64GB 32KB 256KB~2MB 1.3G~3.8G 1.25 亿 Core 2 Duo 2006.7 36 64 64GB 64KB 2MB~8MB 1.8G~3.0G 2.91 亿 Core Xeon 40 64 1024G 64KB 2MB~12MB 1.6G~3.0G 8.2 亿

6 微机原理与接口技术 ( 第二版 ) 1.2 微型计算机的基本结构 1.2.1 微型计算机结构组成一个典型的微型计算机主要由微处理器 主存储器 I/O(Input/Output) 接口等部件组成, 如图 1 4 所示 各部件之间通过地址总线 (Address Bus,AB) 数据总线(Data Bus,DB) 和控制总线 (Control Bus,CB) 相互连接与通信 另外, 微型计算机通过 I/O 接口与 I/O 设备相接, 完成各种输入 / 输出操作 图 1 4 微型计算机的基本结构 下面分别介绍微型计算机中的几个重要组成部件 (1) 微处理器 是整个微型计算机的中央处理部件, 由运算器 (Arithmetic Unit) 和控制器 (Controller) 组成, 用来执行程序指令, 完成各种运算和控制功能, 详见 1.2.2 节 (2) 主存储器 存储器是微机的存储和记忆装置, 用来存放程序和数据 根据存储器与 CPU 的关系, 存储器可分为主存储器 ( 简称主存, 又称内存 ) 和辅助存储器 ( 简称辅存, 又称外存 ) 主存储器是 CPU 可以直接对它进行读出或写入 ( 也称访问 ) 的存储器, 用来存放当前正在使用或经常要使用的程序和数据 ; 它的容量较小, 速度较快, 但价格较高 辅存用来存放相对来说不经常使用的程序和数据, 在需要时与内存进行成批的数据交换,CPU 不能直接对外存进行访问 辅存的特点是存储容量大 价格较低, 但存取速度较慢 主存储器通常由存储体和有关的控制逻辑电路组成 存储体是由存储元件 ( 如磁芯 半导体电路等 ) 组成的一个信息存储阵列 存储体被划分为若干个存储单元, 每个单元存放一串二进制信息, 为称存储单元的内容 为了便于存取, 每个存储单元有一个对应的编号, 称为存储单元的地址 常将存储单元的 地址 与 内容 的区别对应地比喻成办公桌的 抽屉号 与 抽屉里的物品 当 CPU 要访问某个存储单元时, 必须首先给出该单元的地址值, 送入存储器的地址寄存器 (AR), 然后经译码电路选取相应的存储单元 从存储单元读出的信息先送入存储器的数据寄存器 (DR), 再传送给目的部件 ; 信息从存储单元读出后, 存储单元的内容不改变, 只有当新的信息写入该单元时, 才由新信息代替旧信息 写入存储器的信息也要先送至存储器的数据寄存器, 再依据给定的地址把数据写入到相应的存储单元中, 在没有新的信息写入以前原信息是一直保留的 另外, 对存储器进行读 / 写操作, 控制器除了要给出地址外, 还要给出启动读 / 写操作的控

第 1 章微型计算机概述 7 制信号 这些控制信号到底何时发出, 要由机器的操作时序决定 图 1 5 为微型机存储器的基 本结构 图 1 5 微型机的存储器结构图 (3) 总线 总线 (Bus) 是计算机部件与部件之间进行信息传输的一组公共信号线及相关的控制逻辑 它是一组能为计算机的多个部件服务的公共信息传输通路, 能分时地发送与接收各部件的信息 总线是微型计算机的重要组成部件之一 图 1 4 中, 微处理器 主存储器和 I/O 接口之间通过 AB DB 和 DB 三组总线相连 通常将这三组总线统称为系统总线 (System Bus) AB 用来传送地址信息,AB 是单向的,AB 的位数决定微处理器可以直接访问的主存或 I/O 接口的地址范围 一般地说, 当地址总线的位数为 N 时, 可直接寻址范围为 2 N 例如, 当地址总线位数为 16 时, 可直接寻址范围为 2 16 =64 K 单元 DB 用来传送数据信息 ( 包括二进制代码形式的指令 ) DB 是双向的, 即数据既可以从微处理器传送到其他部件, 也可以从其他部件传送到微处理器 DB 的位数 ( 也称宽度 ) 是微型计算机的一个重要技术指标, 通常它和微处理器本身的位数 ( 即字长 ) 相一致 例如, 对于 8 位的微处理器,DB 的宽度为 8 位 ; 对于 16 位的微处理器,DB 的宽度为 16 位等 CB 用来传送控制信息 CB 的方向是一定的, 它们分别传送控制信息 时序信息和状态信息, 这些信息控制 DB AB 的使用 在控制总线中, 有的是微处理器送往存储器或 I/O 接口部件的控制信号, 如读写控制信号 中断响应信号等 ; 也有的是其他部件送往微处理器的信号, 如中断请求信号 (INTR) 准备就绪信号(READY) 等 (4)I/O 接口和 I/O 设备 I/O 接口是微机与 I/O 设备之间的桥梁, 是数据进出微机的通道, 也是微机与 I/O 设备协同工作的协调者 I/O 设备是指那些为微机提供数据或信息的输入设备 ( 如扫描仪 键盘 鼠标等 ) 和那些接收从微机中输出的信息或数据的输出设备 ( 如打印机 显示器等 ) 1.2.2 CPU 的组成与功能 CPU 是微型计算机的核心部件, 主要包括运算器 控制器 寄存器阵列 内部总线 典型的 CPU 结构如图 1 6 所示 1. 运算器实现算术运算 (+ 比较) 和逻辑运算 ( 与 或 非 异或 移位 ) 功能 它以算术逻辑部件 (Arithmetic Logic Unit,ALU) 为核心, 再加上累加器 (Accumulator,A)

8 微机原理与接口技术 ( 第二版 ) 程序状态标志寄存器 (Flag Register,F) 及暂存器等 图 1 6 CPU 的典型结构 ALU 用来完成二进制数的算术运算和逻辑运算 在进行算术 逻辑运算时,A 在运算前 暂存一个操作数 ( 如被加数 ), 而运算后又保存其结果 ( 如代数和 ); 也用于 CPU 与存储器和 I/O 接口电路间的数据传送, 累加器 A 是 CPU 中工作最频繁的寄存器 标志寄存器 F 用来存 放运算结果的一些特征, 如有无进位 借位等 ; 另外,CPU 的某种内部控制信息 ( 如是否允 许中断等 ) 也反映在标志寄存器中 暂存器用来暂时存放某些操作数 2. 控制器 控制器是指挥 控制计算机各部件协调动作的功能部件, 发出控制信号, 实现控制指令 执行的功能 它从存储器中逐条取出指令 (Fetch), 翻译指令代码 (Decode), 并产生各种控 制信号指挥整个计算机有条不紊地工作, 一步一步地完成指令序列所规定的任务, 即执行指令 (Excute) 同时控制器还要接收 I/O 设备的请求信号以及运算器操作状况的反馈信息, 以决 定下一步的工作任务 控制器主要由定时控制逻辑电路 指令寄存器 (Instruction Register,IR) 指令译码器 (Instruction Decoder,ID) 组成 IR 存放当前正在执行的指令代码 ;ID 对指令代码进行分析 译码, 根据指令译码的结果输出相应的控制信号 ; 定时控制逻辑电路产生各种操作电位 不同 节拍的信号 时序脉冲等执行此条命令所需的全部控制信号, 实现控制指令的执行 为了让各种操作能按照一定的时间关系有序地进行, 计算机内设有一套时序信号, 给出 时间标志 计算机的各个功能部件按照统一的时钟或节拍信号, 快速而有秩序地完成各种操作 任务 通常将一条指令的整个执行时间定义为一个指令周期 (Instruction Cycle); 每个指令周 期再划分为几个机器周期 (Machine Cycle); 每个机器周期又分为几个时钟周期 时钟周期是 机器操作的最小时间单位, 它由机器的主频来决定 3. 寄存器阵列 存放参加运算的数据 中间结果 地址等 寄存器阵列实际上相当于微处理器内部的存 储器, 包括通用寄存器和专用寄存器 通用寄存器用来存放参加运算的数据 中间结果或地址 CPU 内部有了这些寄存器, 可以避免频繁地访问存储器, 缩短了指令长度和指令执行时间,

第 1 章微型计算机概述 9 提高机器的运行速度, 给编程带来方便 专用寄存器包括程序计数器 (Program Counter,PC) 堆栈指示器等, 它们用来存放地址或地址基值 其中,PC 用来指出计算机要执行的指令所在 存储单元的地址, 具有自动增量计数的功能 现的 内部总线用来连接微处理器的各功能部件并传送微处理器内部的数据和控制信号 4. 内部总线 在 CPU 内部, 运算器 控制器 寄存器阵列三部分之间的信息交换是通过总线结构来实 注意 : (1) 内部总线分为内部数据总线和地址总线, 它们分别通过数据缓冲器和地址缓冲器与 芯片外的系统总线相连 (2) 缓冲器用来暂时存放信息 ( 数据或地址 ), 它具有驱动放大能力 1.3 微机的工作过程 微机的工作过程就是逐条执行进入到内存中的二进制机器指令流的过程 所以, 本节首先介绍指令和程序的概念, 接着介绍微机的工作原理与工作过程 1.3.1 指令与程序指令是用来指挥和控制计算机执行某种操作的命令 通常, 一条指条包括两个基本组成部分, 即操作码部分和操作数部分 其组成格式如下所示 : 操作码 操作数 其中, 操作码部分用来指出操作性质, 如加法运算 减法运算 移位操作等 ; 操作数部分用来指明操作数 ( 即参与运算的数 ) 或操作数的地址 一台计算机通常有几十种甚至上百种基本指令 一台计算机所能识别和执行的全部指令称为该机的指令系统 指令的操作码和操作数在机器内部均以二进制形式来表示 各自所占的二进制位数决定了指令的操作类型的多少及操作数地址范围的大小 例如, 若一个计算机的指令格式中操作码占 6 位, 则该计算机一共可以有 64 种 (2 6 =64) 不同操作性质的指令 不同的指令对应不同的二进制操作码 另外, 要从主存中存取操作数, 必须先给出地址码, 而主存的地址码也是以二进制形式表示的 主存容量越大, 表示它的地址所需要的二进制码位数也越多, 即操作数地址范围越大, 指令中地址码的位数也越多 从形式上看, 指令和二进制表示的数据并无区别, 它们的含义和功能是不同的 为了让计算机求解一个数学问题, 或者做一件复杂的工作, 总是先要把解决问题的过程分解为若干步骤, 然后用相应的指令序列按照一定的顺序去控制计算机完成这一工作 这样的指令序列就称为程序 通常把用二进制代码形式组成的指令序列称为机器语言程序, 又称为目标程序, 它是计算机能够直接识别和运行的程序 ; 但对于计算机的使用者来说, 书写 阅读 记忆及修改这种表示形式的指令却十分不便, 因此, 人们通常使用一些助记符来代替它, 如用 ADD 表示加法, 用 SUB 表示减法, 用 MOV 表示传送等 而把用助记符形式组成的指令序列

10 微机原理与接口技术 ( 第二版 ) 称为汇编语言程序或符号程序 显然, 符号程序比二进制代码程序易读 易写, 也便于检查和 交流 机器是不能直接识别符号程序的, 还必须将其翻译或转换为二进制代码程序, 才能被计 算机直接识别和执行 这种翻译和转换工作通常也是由计算机中专门的程序自动完成的, 这就 是后边将要介绍的汇编程序 ( 汇编器 ) 1.3.2 微机的工作过程 1. 微机的工作原理 冯 诺依曼结构的计算机的基本工作原理可概括为 存储程序 和 程序控制 存储程序 就是把这些事先编写好的程序和数据存储到存储器中保留起来 机器启动后, 根据给出的程序中 第一条指令的存储地址取出第一条指令, 然后控制器就可以依据存储程序中的指令顺序周而复始 地取指令 分析指令和执行指令, 直到完成全部的指令操作, 这就是所谓的 程序控制 2. 从程序到电子信号 用汇编语言写成的指令代码必须转换成机器能够识别的二进制指令流 同样, 高级语言 描述的程序, 需要经过编译 连接 执行, 才能最终变成电子的数据信号 地址信号或控制信 号, 完成所需的工作, 转换流程如图 1 7 所示 高级语言源程序 编译 连接 汇编语言源程序 汇编 连接 二进制机器指令序列 ( 作业 ) 操作系统调度或 BOOT 引导二进制机器指令流 ( 进程 线程 ) CPU 取指 译码 运算 电路中的电子信号 控制信号直接控制 CPU 各部件运作 控制信号通过接口部件控制外设运作 图 1 7 软件到电子信号的转换过程 由此可知, 无论是高级语言程序还是汇编语言程序, 最终都要转换成机器能识别的机器 指令, 这些机器指令再在 CPU 的工作下转换成各类电子信号 二进制的机器指令序列仅仅是存放在外存中的可执行文件, 不能产生任何的信号, 必须 要调入到内存中实际运行起来 通常可执行文件是由操作系统的作业调度程序调度到内存中成 为进程, 再由进程调度程序调度进 CPU 运行环境中才能正式运行, 并产生各类信号 表 1 2 中列出了部分 x86 指令和控制信号之间的关系 而操作系统本身的核心部分是由系统的 BOOT 引导程序引导进内存来执行的 进入到内存的二进制机器指令流经过 CPU 的取指 译码阶段, 为下一步的运算做数据准 备 ; 而控制单元根据指令的要求, 发出各种控制信号, 协调各部件工作 最后,ALU 计算出 来的结果存入存储器或 I/O 端口 具体的工作过程在下一节中说明

第 1 章微型计算机概述 11 表 1 2 部分 x86 指令与控制信号的关系 指令产生的信号含义 IN AL,21H IORC 读 I/O 端口 OUT 21H,AL IOWC 写 I/O 端口 MOV AX,[21H] MRDC 读内存 MOV [21H],AX MWTC 写内存 3. 指令的执行过程 一条指令的执行过程可以分为 3 个基本阶段 ( 过程 ), 即取指令 分析指令和执行指令 下面围绕这 3 个阶段来说明各阶段的详细过程 (1) 执行程序前,PC 中保存第一条指令的地址, 它指明了当前将要执行的指令存放在存 储器的哪一个单元中 (2) 控制器把 PC 中保存的指令地址送往存储器的地址寄存器 AR, 并发出 读命令 存储器按给定的地址读出指令, 经由数据寄存器 DR 送往控制器, 保存在指令寄存器 IR 中 这时控制器将 PC 的内容自动增一, 形成下一条指令的地址 ; 而在遇转移指令时, 控制器把 转 移地址 送到 PC 中 (3)ID 对 IR 的指令进行译码, 分析指令的操作性质, 并由控制逻辑阵列向存储器 运 算器等有关部件发出微操作命令 (4) 当需要由存储器向运算器提供操作数时, 控制器根据指令的地址部分找到操作数所 在的存储器单元地址, 并送往存储器的 MAR, 然后向存储器发出 读命令 (5) 从存储器读出的数据经由 MDR 直接送往运算器 与此同时, 控制器命令运算器对 数据进行指令规定的运算 运算完之后, 结果转移到指定单元存放 (6) 一条指令执行完毕后, 控制器接着重复步骤 (2)~(6), 每重复一次, 就执行了 一条指令, 直到整个程序执行完毕 程序的执行过程就是周期性和重复性地进行上述过程的操作 1.3.3 微机的工作过程实例 通过一实例来说明微机的详细工作过程 图 1 8 定义了一个 8 位模型机, 虚线框内是 CPU 部分, 虚线框外是存储器部分 假设我们要计算 12H+18H, 结果存入 20H 地址单元 完成这 一过程的程序和机器代码如表 1 3 所示 图 1 8 中存储器的内容表示程序被调进内存后的情况 图 1 8 8 位模型机示意图

12 微机原理与接口技术 ( 第二版 ) 表 1 3 模型机执行指令序列 地址汇编语句机器码指令字节数操作 00H 01H MOV A,12H B8H 12H 2 将指令第 2 字节中的立即数 12H 送累加器 A,A 中的值为 12H 02H 03H ADD A,18H 05H 18H 2 将累加器 A 中的数据加上指令第 2 字节的立即数 18H, 将相加的和 (2AH) 放到累加器 A 中 04H 05H MOV [20H],A A3H 20H 06H HLT F4H 1 CPU 暂停任何操作 2 指令第 2 字节是一个存储器地址 (20H), 该指令将累加器 A 中的数据 (2AH) 存放到存储器地址为 20H 的地方 程序通常是按顺序执行的, 程序第一条指令的地址要赋给程序计数器 PC, 本例假设是 00H, 之后就开始了第一条指令的取指和执行 (1) 第一条指令取指过程 1)CPU 将 PC 的内容 00H 送到地址寄存器 AR 2) 当 PC 内容送入 AR 后,PC 内容自动加 1, 即 PC 等于 01H 3)AR 的内容 00H 经过总线控制逻辑被放到地址总线 AB 上, 送至存储器, 经过地址译码, 选中 00H 单元 4)CPU 的控制逻辑通过控制总线发出读控制信号 5) 所选的 00H 单元的内容 B8H 经过 DB 被读到总线控制逻辑中 6) 由于是取指阶段, 所以总线控制逻辑将 B8H 送到指令寄存器 IR 中, 然后再送到指令译码 ID 与控制逻辑单元 (2) 第一条指令执行过程 1)ID 对指令译码的结果进行识别, 获知需要将存储器下一个字节的操作数取到累加器 A 中 2)CPU 将 PC 的内容 01H 送到地址寄存器 AR 3) 当 PC 内容送入 AR 后,PC 内容自动加 1, 变成 02H 4)AR 的内容 01H 经过总线控制逻辑被放到地址总线 AB 上, 送至存储器, 经过地址译码, 选中 01H 单元 5)CPU 的控制逻辑通过控制总线发出读控制信号 6) 所选的 01H 单元的内容 12H 经过 DB 被读到总线控制逻辑中 7) 因为读出的是操作数, 所以总线控制逻辑将 12H 送到数据寄存器 DR 中, 然后根据指令要求,12H 最终被送到累加器 A 中 至此, 第一条指令执行完毕 (3) 第二条指令取指过程 与第一条指令基本一样, 只是读出的操作码是 05H,PC 值变为 03H (4) 第二条指令执行过程 1)ID 对指令译码的结果识别出是加法运算, 其中一个操作数在累加器 A 中, 另一个操作数在存储器的下一个字节中 2)~6) 与第一条指令执行的相应步骤类似, 只是取出的数据是 18H,PC 变为 04H

第 1 章微型计算机概述 13 7) 总线控制逻辑将 18H 送到数据寄存器 DR 中 8) 根据加法指令的要求, 将 DR 中的 18H 装入到运算寄存器的 I 2 处, 同时将累加器 A 中的 12H 装入到运算寄存器的 I 1 处 9) 因为 ALU 两个入口的数据都准备好了, 所以运算器做加法 10) 运算的结果 2AH 从 ALU 中出来, 经过内部数据总线传送到累加器 A 中 至此, 第二条指令执行完毕 (5) 第三条指令取指过程 与第一条指令基本一样, 只是读出的操作码是 A3H,PC 值变为 05H (6) 第三条指令执行过程 1)ID 对指令译码的结果识别出是数据存储指令, 存储的地址在存储器的下一个字节中 2)~6) 与第一条指令执行的相应步骤类似, 只是取出的数据是 20H,PC 变为 06H 7) 总线控制逻辑将 20H 送到数据寄存器 DR 后, 进一步转到 AR 中 8)AR 中的 20H 经过总线控制逻辑被放到地址总线 AB 上, 送至存储器, 经过地址译码, 选中 20H 单元 9)CPU 的控制逻辑通过控制总线发出写控制信号 10) 累加器 A 中的数据 2AH 经内部数据总线送到 DR 中, 再由 DB 总线输出并存储到存储器的 20H 单元中 至此, 第三条指令执行完毕, 进入到最后一条指令的执行 最后一条指令用前面类似的方法取指, 译码后发现是终止指令, 于是控制器停止产生任何控制命令, 计算机停止全部操作 1.4 微型计算机系统 1.4.1 微型计算机的组成微型计算机系统是指由硬件和软件共同组成的完整的计算机系统 它以微型计算机为主体, 再配上外设与外存 电源 软件等就构成了微机系统, 如图 1 9 所示 各组成部分如下 : (1) 硬件 硬件主要包括主机 ( 即微型计算机 ) 和外围设备 (2) 软件 硬件只是微机系统的物理基础, 只有硬件的微机系统称为裸机 裸机必须配备各种软件才能做人们想要它们做的事情 软件就是为运行 管理和维护计算机系统或为实现某一功能而编写的各种程序的总和及其相关资料 它是程序 数据和有关文档的集合, 其中程序是完成任务所需要的一系列指令序列, 文档则是为了便于了解程序所需要的阐明性资料 软件系统分为系统软件和应用软件 系统软件包括 BIOS 与操作系统和支撑软件 紧贴着裸机的就是基本输入 / 输出系统 (BIOS), BIOS 首先对机器进行自检, 同时为其他软件提供了最基本的设备控制方法和数据输入 / 输出的编程接口 裸机配上 BIOS 后, 就可以正常运转起来, 而各种软件也能够比较方便地进行数据的输入与输出 BIOS 存放在机器里的一片 ROM 芯片中 现代微机的 BIOS 存放到 EPROM E 2 PROM 或 Flash Memory 中 机器启动以后会自动在一个特定地址去启动 BIOS 运行 BIOS

14 微机原理与接口技术 ( 第二版 ) 不具备对资源的充分管理功能, 并且其编程接口比较复杂 为了有效 合理 充分地使用系统 资源和保证系统安全, 在裸机和 BIOS 之上配备了操作系统 (Operating System,OS) 微处理器 (CPU) 运算器 ( 算术逻辑运算单元,ALU) 控制器 ( 控制单元,CU) 寄存器阵列 (RA) 微型计算机系统 硬件 软件 主机 外围设备 系统软件 应用软件 内存储器 I/O 接口电路 系统总线 外部设备 RAM 过程控制 I/O 通道 BIOS 与操作系统 支撑软件 ROM EPROM E 2 PROM Cache 等 并行 I/O 串行 I/O 数据总线 地址总线 控制总线 键盘 鼠标等输入设备 显示器 打印机等输出设备 软驱 硬盘及磁带等外存储器 A/D D/A 转换器 开关量等 图 1 9 微型计算机系统组成图 操作系统通过进程管理 作业管理 内存管理 设备管理 文件管理等几大模块不仅有效地管理和利用了系统资源, 还向用户提供了便捷的操作界面和编程接口 依靠操作系统的强大功能, 微机系统保护方式的特性得到充分发挥, 在多个用户或多个任务间能较好地保护各自的数据并保持整个系统的稳定 另外, 现代操作系统通过各项虚拟技术为用户提供了一个比实际裸机更为强大的虚拟计算机, 如多任务系统中, 单处理器微机被虚拟成多个处理器, 而请求页式 请求段式存储管理, 使得虚拟存储器的容量也远大于实际内存的容量 汇编语言和各种高级语言不能被机器自动识别, 必须有专门的软件将其翻译成机器能懂的机器码, 这就是编译系统 除此, 还有调试软件与文字编辑软件 管理大量数据的数据库管理系统软件, 以及为了扩大计算机的功能而事先编好的各种标准子程序所组成的程序库 中间件等 所有这些, 组成了系统软件中的支撑软件 应用软件指用户为解决各种实际问题而利用计算机及其系统软件编写的软件 计算机系统是硬件系统和软件系统相结合的统一体, 系统软件与硬件有时候甚至是相辅相成的 在现代处理器设计中, 有些技术需要依赖 OS 或者编译系统的协助才能发挥更好的作用 比如, 如果编译系统在最后的代码优化与生成阶段, 充分考虑了处理器中乱序执行或者超标量结构等特点, 合理安排指令顺序, 就能够充分发挥硬件的并行性, 从而获得高效率 同样, OS 如果能充分考虑具体系统的结构特点, 采用合适的调度算法, 也能获得更好的效果 适当了解硬件结构和系统软件的核心知识, 就可以通过底层编程和使用更适当的指令来提高程序的执行效率

第 1 章微型计算机概述 15 1.4.2 微型计算机的分类微型计算机种类繁多, 型号各异, 可以从不同角度对其进行分类 例如按微处理器的制造工艺 微处理器的字长 微型计算机的构成形式 应用范围等进行分类 1. 按微处理器 CPU 字长分类 (1)4 位微机 用 4 位微处理器作 CPU, 其数据总线宽度为 4 位, 一个字节数据要分两次来传送或处理, 是微型机的低级阶段 (2)8 位微机 用 8 位微处理器作 CPU, 其数据总线宽度为 8 位 8 位微机中字长和字节是同一个概念 广泛用于事务管理 工业生产过程的自动检测和控制 通信 智能终端 教育以及家用电器控制等领域 (3)16 位微机 用 16 位微处理器作 CPU, 数据总线宽度为 16 位 16 位微处理器不仅在集成度和处理速度 数据总线宽度 内部结构等方面与 8 位机有本质上的不同, 由它们构成的微型机在功能和性能上已基本达到了当时的中档小型机的水平, 特别是以 Intel 8086 为 CPU 的 16 位微型机 IBM PC/XT 成为当时相当长一段时间内的主流机型, 而且用户拥有量世界第一, 以至于在设计更高档次的微机时, 都要保持对它的兼容 (4)32 位微机 32 位微机使用 32 位的微处理器作 CPU, 从应用角度看, 字长 32 位是较理想的, 它可满足绝大部分用途的需要, 包括文字 图形 表格处理及精密科学计算等 (5)64 位微机 64 位微机使用 64 位微处理器作 CPU, 是目前的主流机型 2. 按微型计算机的组装形式分类 (1) 单片机 如图 1 10 所示, 将 CPU 部分存储器 部分 I/O 接口集成在一个芯片上, 一个芯片就是一台微型机, 该微型机就称为单片微型计算机, 简称单片机 单片机的特点是集成度高 体积小 功耗低 可靠性高 使用灵活方便 控制功能强 编程保密化 价格低廉, 利用单片机可较方便地构成一个控制系统 单片机在工业控制 智能仪器仪表 数据采集和处理 通信和分布式控制系统 家用电器等领域的应用日益广泛 典型产品有 :Intel 公司的 MCS 8051 和 MCS 8096(16 位单片机 ) Motorola 公司的 MC68HC05 和 MC68HC11 等 图 1 10 单片机组成及外形图 (2) 单板机 如图 1 11 所示, 将 CPU 存储器 I/O 接口及部分 I/O 设备安装在一个印刷线路板上 这块印刷线路板就是一台完整的微型机, 称为单板微型计算机, 简称单板机 单板机具有完全独立的操作功能, 加上电源就可以独立工作 但由于它的输入输出设备简单 存储容量有限, 工作时只能用机器码 ( 二进制 ) 编程输入, 故通常只能应用于一些简单控制系统和教学中, 现已被单片机 PC 机替代

16 微机原理与接口技术 ( 第二版 ) 图 1 11 单板机组成及外形图 (3) 个人计算机 (Personal Computer,PC) 个人计算机是指便于搬动而且不需要维护的计算机 它是面向个人单独使用的一类微机, 实现各种计算 数据处理及信息管理等功能 3. 按计算机的综合性能指标分类依据计算机的综合性能指标 ( 运算速度 存储容量 输入 / 输出能力 规模大小 软件配置 ) 可将计算机分为巨型机 大型机 小型机 微型机和工作站五大类 1.4.3 微型计算机的主要技术指标一台计算机的性能优劣, 要由多项技术指标来综合评价 通常微型计算机用以下几项指标来衡量其基本性能 : (1) 主频 主频也叫做时钟频率, 就是主时钟不断产生的时钟脉冲的固定频率, 用来表示微处理器的运行速度, 主频越高表明 CPU 运行越快, 主频的单位是 MHz GHz 早期微处理器的主频与外部总线的频率相同, 从 80486 开始, 主频 = 外部总线频率 倍频系数 外部总线频率通常简称为外频, 外频越高说明微处理器与系统内存数据交换的速度越快, 因而微型计算机的运行速度也越快 倍频系数是微处理器的主频与外频之间的相对比例系数 通过提高外频或倍频系数, 可以使微处理器工作在比标称主频更高的时钟频率上, 这就是所谓的超频 (2) 字长 字长是指微机系统中 CPU 一次能处理的二进制位数 它决定着计算机内部寄存器 ALU 和数据总线的位数, 直接影响着机器的硬件规模和造价 字长直接反映了一台计算机的计算精度, 字长越长, 说明 CPU 所能处理的数据精度越高, 处理速度越快, 存储容量越大, 通常字长是字节的整数倍 目前微机的字长主要有 32 位和 64 位 (3) 运算速度 运算速度是衡量计算机性能的一个重要指标, 在硬件一定的情况下, 运算速度快慢与机器所执行的操作及主时钟频率有关, 执行的操作不同, 所需要的时间不同, 其运算速度也不同, 执行同一种操作使用同一计算方法, 机器主时钟频率不同, 运算速度也不同 现在普遍采用单位时间内执行指令的条数作为运算速度的指标, 常用百万条指令每秒 (Millions of Instruction Per Second) 表示, 并以 MIPS 作为缩写 由于执行不同类型的指令所需时间的长度不同, 所以 MIPS 通常是根据不同指令出现的频度乘上不同的系数求得的统计平均值 (4) 主存容量和存取时间 主存容量是指主存储器所能存储二进制信息的总量 主存容量越大, 可存放的数据越多, 可同时执行的程序也越多, 相对来说,CPU 访问外部存储器的次数会减少, 机器的处理能力就越强 主存容量是受地址线宽度限制的, 比如 Pentium 的地址线有 32 条, 则最大主存空间是 4GB 现代微机通常配备 256MB 512MB, 甚至 lgb 的主存 微型机内主存完成一次读 / 写所需要的时间称为主存储器的存取时间, 该时间越短存取速

第 1 章微型计算机概述 17 度就越快 (5) 可靠性 计算机的可靠性是一个综合的指标, 一般常用平均无故障运行时间来衡量 平均无故障运行时间是指在相当长的运行时间内, 用机器的工作时间除以运行时间内的故障次数所得的结果 它是一个统计值, 此值越大, 则说明计算机的可靠性越高, 即故障率降低 (6) 性价比 性价比是机器性能与价格的比值, 它是衡量计算机产品性能优劣的一个综合性指标 性价比的值越大越好 一般来说, 微型机的性价比要比其他类型计算机的性价比高得多 1.4.4 微型计算机的应用微型计算机的应用, 归纳起来主要有以下几个方面 : 科学计算与数据处理 工业控制 自动化仪器 / 仪表装置 计算机辅助设计 计算机仿真 人工智能 信息管理与办公自动化 文化 教育 娱乐和日用家电等 1.5 PC 系列微机的体系结构 从基本配置的角度来看, 微机主要由主板和各类 I/O 接口板组成 其中, 主板上的元件按照功能主要分为 CPU 系统支持芯片 存储器 I/O 接口电路和 I/O 接口插槽, 这些部件均采用总线相连接 I/O 接口扩展卡是插在 I/O 接口扩展槽上的各类设备的接口电路板, 如显卡 声卡 网卡等 图 1 4 所示微机的硬件结构是一种总线结构, 微机的各个部件之间是通过总线来连接的 下面介绍 PC 微机发展过程中一些典型机型的基本组成和体系结构 1.5.1 PC/XT 机的基本结构 PC/XT 机是采用 8088 微处理器构造的第一代通用微机, 处理器作为系统的核心, 通过 PC 总线进行全系统调度和控制, 并和系统中的其他部件进行数据交换, 如图 1 12 所示 微处理器 8088 ROM BIOS 8253 定时 / 计数器 协处理器 8087 DRAM 控制器 8237 DMA 控制器 主板上的 RAM 8259 中断控制器 8250 串行通信控制器 8255 并行接口 扩展总线缓冲器 DMA 页面寄存器 PC 总线 8 个 62 引脚扩展插槽 图 1 12 80386/80486 微机的基本结构

18 微机原理与接口技术 ( 第二版 ) PC 总线是微机最早的总线, 其数据总线宽度为 8 位, 地址总线宽度为 20 位 下面重点讨论除微处理器之外的其他部件 1. 系统支持芯片 微机系统是一个按时序工作的系统 系统除了微处理器 主存 总线和 I/O 设备以外, 还 应该有时序信号的发生 传送和控制的机构 这些时序控制机构在整个系统中起着举足轻重的 作用, 支撑和协调着整个系统有条不紊地工作 这些控制机构就由系统支持芯片组成 PC/XT 机的系统支持芯片主要有如下几种 : (1)8087 协处理器 PC/XT 微机采用的 8088 微处理器, 可以工作在最小模式和最大模 式下 最小模式是单处理机方式, 只允许 8088 接入系统 ; 最大模式是多处理机方式, 在这种 方式下, 除了 8088 外, 系统可以配接浮点协处理器 8087, 这样的配备可以使 PC/XT 的浮点 运算速度提高大约 100 倍 (2) 可编程定时 / 计数器 8253/8254 8253/8254 具有 3 个 16 位的定时 / 计数通道 其中, 通道 0 每 55ms 向 CPU 发一个时钟中断信号, 系统利用这个时钟信号进行计数, 用来计算时 钟的时间 ; 通道 l 用于动态存储器的刷新 ; 通道 2 输出方波到扬声器, 这个方波的频率和持续 时间可以由程序控制, 使扬声器发出希望的音调并保持一定的时间 (3)DMA 控制器 8237 8237 有 4 个用于直接存储器存取的 DMA 通道 通道 0 用于动 态存储器的刷新, 通道 2 用于软盘与内存间的 DMA 传送, 通道 3 用于硬盘和内存间的 DMA 传送, 通道 1 被保留给用户使用 (4) 可编程中断控制器 8259 8259 用于 8 级中断优先权的控制, 由它负责对外部的中 断进行优先级排队, 并将最高优先权的中断请求转发给微处理器 (5) 串行通信控制器 8250 8250 芯片是一个可编程串行异步通信接口芯片, 可实现数 据的串行 - 并行和并行 - 串行的转换, 是串行数据通信的主要芯片 该芯片配上相关转换电路, 为 PC/XT 机提供了符合 EIA RS 232C 规范的串行通信接口 (6) 可编程并行接口 8255 PC/XT 机的 8255 并行接口芯片工作在方式 0 下, 有 3 个 口 其中,A 口在开机自检时输出部件检测码, 自检结束后又工作在输入状态下, 输入键盘 的扫描码 ;B 口用于对键盘进行控制及检测 RAM 和 I/O 通道, 还与 8253 的通道 2 一起控制 扬声器发声 除此之外, 还有总线控制器 8288 将工作在最大模式的 8088 的状态信号 S 2 ~ S 0 进行译码, 以产生相应的控制信号, 实现 8088 对内存及外设的控制 时钟信号发生与驱动器 8284 外接频 率 14.31818MHz 的石英晶振, 输出系统需要的 14.31818MHz 的 OSC 信号 4.77MHz 的 CLK 信号和 2.387MHz 的信号 2.ROM PC/XT 的只读存储器 ROM 的容量为 64KB 早期的机器上在 0F6000H~0FDFFFH 中固化 了 32KB 的 BASIC 解释程序, 以后的机器上已经不再固化 BASIC 解释程序 0FE000H~ 0FFFFFH 中固化了基本输入 / 输出系统 (BIOS) BIOS 是一组管理程序, 包括上电自检程序 系统引导程序 时钟管理程序和基本 IO 设备 ( 如显示器 键盘和打印机等 ) 的驱动程序等 现代微机的 BIOS 功能不断增强, 具有开机密码 病毒检测 系统配置 主板和 CPU 温度管 理等多种功能 3.RAM( 主存 ) PC/XT 系统板上的存储器芯片共 4 列, 每列 9 片组成带奇偶校验的 64KB 内存,4 列构成

256KB 的主存空间 后来的一些主板上插接了 640KB 内存 4.I/O 接口电路 第 1 章微型计算机概述 19 在系统板上还有 IBM PC 和 IBM PC/XT 的音频盒式磁带机 键盘和扬声器的接口电路 后来, 磁带机的接口从微机中逐渐被去掉了 5.I/O 扩展槽 PC/XT 有 8 个 62 芯的 I/O 扩展槽, 它符合 PC 总线的规范, 可以插接各种接口扩展卡, 例如 显卡 硬盘卡等 利用这些插槽, 能对微机的功能进行扩展, 使微机具有更为广泛的应用 1.5.2 80386/80486 微机的基本结构 80386/80486 微机分别利用了 Intel 公司的 80386 和 80486( 简称 386 和 486) 微处理器 相比较而言, 由于 80486 集成了 80387 协处理器, 因此在该结构中不再有专门的协处理器 它 们都采用 ISA 总线将系统的各个部件连接起来, 而且都具有高速缓冲存储器 (Cache), 并且 都采用了一组多功能芯片来代替原来的单功能的接口控制芯片, 如图 1 13 所示 微处理器 80386/80486 Cache 控制器 Cache 主存 80387( 仅 386 微机有 ) CPU 局部总线 总线控制器 集成外围控制器 扩展总线控制器 ISA 总线 实时时钟 / 日历 CMOS RAM 图 1 13 80386/80486 微机的基本结构 与 PC/XT 机相比较,80386/80486 微机广泛采用了 ISA 总线替代原来的 PC 总线 ISA 总 线在性能上兼容 PC/AT 总线, 并且是一个公开协议的总线, 它支持 24 位地址线 16 位数据线 15 级硬件中断和 7 个 DMA 通道 在系统支持芯片方面, 开始用由几个多功能芯片组成的芯片组来替代 PC/XT 机中的多个 单功能芯片 例如, 在 80486 微机中采用了 82C461 系统控制器 82C362 总线控制器 82C465 Cache 控制器和 82380 集成外围控制器组成的芯片组 其中,82380 拥有和 8088 系统兼容的 8 个 32 位的 DMA 通道 15 个外部中断请求 5 个内部中断请求和 4 个 16 位定时器 / 计数器 这些部件使得 80386/80486 系统既有新的功能, 又有和 8088 系统的兼容性 在 RAM 方面, 80386 和 80486 微机均采用单列式存储器组件 SIMM 封装的动态存储器 ( 内 存条 ) 80386 支持单条 256KB 或 1MB, 总容量可达到 16MB;80486 支持单条 256KB 1MB 或 4MB, 总容量可达到 32MB

20 微机原理与接口技术 ( 第二版 ) 在 I/O 插槽方面,80386 微机一般有 ISA 总线标准的 8 位和 16 位的扩展槽若干个 ;80486 微机有 ISA 总线标准的 8 位和 16 位扩展槽若干个, 有些还有 VESA 标准的 32 位扩展槽 后期的 80486 微机采用了 VESA 总线及 PCI 总线作为各个部件的连线 由于 VESA 总线固有的缺点及 PCI 总线的及时推出, 因此 VESA 总线很快退出市场 而 PCI 总线在 Pentium 机中应用广泛, 所以常被作为 Pentium 系列微机的主要总线结构 1.5.3 现代微机的基本结构现代微机采用 Pentium 系列微处理器, 其基本结构发生了革命性的变化, 最主要的表现是改变了主板总线结构 为了提高微机系统的整体性能, 规范系统的接口标准, 根据各部件处理或传输信息的速度快慢, 采用更明显的三级总线结构, 即 CPU 总线 (Host Bus) 局部总线(PCI 总线 ) 和系统总线 ( 一般是 ISA 总线 ) 其中,CPU 总线为 64 位数据线 32 位地址线的同步总线,66MHz 或 100MHz 总线时钟频率 ;PCI 总线为 32 位或 64 位数据 地址分时复用同步总线 PCI 局部总线作为高速的外围总线, 不仅能够直接连接高速的外设, 而且通过桥路芯片和更高速的 CPU 总线与系统总线相连 外围总线由低速总线发展到以高速的 PCI 总线为主 另外, 三级总线之间由更高集成度的多功能桥路芯片组成的芯片组相连, 形成一个统一的整体 这些桥路芯片起到信号速度缓冲 电平转换和控制协议转换的作用 通过对这些芯片组的功能和连接方法的划分, 又可将这种基本结构分为南北桥结构和中心 (Hub) 结构两种 1. 南北桥结构的微机在南北桥结构中, 主要通过两个桥片将三级总线连接起来 这两个桥片分别是被称做北桥芯片的 CPU 总线 PCI 桥片 (Host Bridge) 和被称做南桥芯片的 PCI ISA 桥片 这种南北桥结构的芯片组种类很多, 既有 Intel 芯片组, 也有非 Intel 芯片组 图 1 14 所示是由 Intel 公司著名的南北桥结构的芯片组 440BX 所组成的 Pentium II 微机的基本结构 Pentium II 处理器 80386/486 Pentium II 处理器 80386/486 CPU 总线 图形设备 x2agp 总线 82443BX ( 北桥 ) 66/100MH Z 支持 SDRAM 主存 PCI 插槽 PCI 总线 2 个 IDE 接口 82371EB (PIIX4E) ( 南桥 ) I/O APIC ISA 插槽 2 个 USB 接口 ISA 总线 图 1 14 南北桥结构的 Pentium 微机的基本结构

第 1 章微型计算机概述 21 440BX 芯片组主要由两块多功能芯片组成 其中, 北桥芯片 82443BX 集成有 CPU 总线接 口, 支持单 双处理器, 双处理器可以组成对称多处理机 (SMP) 结构 ; 同时 82443BX 还集 成了主存控制器 PCI 总线接口 PCI 仲裁器及 AGP 接口, 并支持系统管理模式 (SMM) 和 电源管理功能 它是 CPU 总线与 PCI 总线的桥梁 440BX 芯片组的南桥芯片是 82371EB 芯片 该芯片集成了 PCI ISA 连接器 IDE 控制器 两个增强的 DMA 控制器 两个 8259 中断控制器 8253/8254 时钟发生器和实时时钟等多个部 件 ; 另外还集成了一些新的功能, 如 USB 控制器 电源管理逻辑及支持可选的 I/O APIC 等 通过 USB 接口, 可以连接很多外部设备, 如拥有 USB 接口的扫描仪 打印机 数码相机和摄 像头等 82371EB 是 PCI 总线和 ISA 总线的桥梁 这个结构的最大特点就是将局部总线 PCI 直接作为高速的外围总线连接到 PCI 插槽上 这一变化适应了高速外围设备与微处理器的连接要求 在早期的三级总线结构中, 图形显示卡 也是通过 PCI 总线连接的, 由于显示部分经常需要快速传送大量的数据 ( 如纹理数据 ), 这在 一定程度上增加了 PCI 总线通路的拥挤度, 而 PCI 总线 132 MB/s 的带宽也限制了纹理数据输 出到显示子系统的速度 因此,440BX 芯片组中使用了专用 AGP 总线来加速图形处理速度, 以适应高速增长的 3D 图形变换和生动视频显示等的需要, 同时也使 PCI 总线能更好地为其他 设备服务 2. 中心结构的微机 南北桥结构尽管能够为外设提供高速的外围总线, 但是南北桥芯片之间也是通过 PCI 总线连 接的, 南北桥芯片之间的频繁数据交换必然使得 PCI 总线信息通路出现一定的拥挤, 也使得它们 之间的信息交换受到一定的影响 为了克服这个问题, 同时也为了进一步加强 PCI 总线的作用, Intel 公司从 810 芯片组开始, 抛弃了南北桥结构, 而采用如图 1 15 所示的中心结构 图 1 15 中心结构的微机基本结构 构成这种结构的芯片组主要由 3 个芯片组成, 分别是存储控制中心 MCH(Memory Controller Hub) I/O 控制中心 ICH(I/O Controller Hub) 和固件中心 FWH(Firmware Hub) MCH 的用途是提供高速的 AGP 接口 动态显示管理 电源管理和内存管理功能 此外, MCH 与 CPU 总线相连, 负责处理 CPU 与系统其他部件之间的数据交换 在某些类型的芯片组中,MCH 内置了图形显示子系统, 既可以直接支持图形显示, 又可以采用 AGP 显示部件,

22 微机原理与接口技术 ( 第二版 ) 这时称其为图形存储控制中心 (GMCH) ICH 含有内置 AC 97 控制器, 提供音频编码和调制解调器编码接口,IDE 控制器提供高速磁盘接口 2 个或 4 个 USB 接口 局域网络接口, 以及和 PCI 插卡之间的连接 FWH 包含了主板 BIOS 和显示 BIOS, 以及一个可用于数字加密 安全认证等领域的硬件随机数发生器 此外,ICH 通过 LPC I/F 和 Super I/O 控制器相连接, 而 Super I/O 控制器主要为系统中的慢速设备提供与系统通信的数据交换接口, 例如串行口 并行口 键盘和鼠标等 比较图 1 14 和图 1 15 不难发现,MCH 和 ICH 两个芯片之间不再用 PCI 总线相连, 而是通过中心高速专用总线相连, 这样可以使 MCH 与 ICH 之间频繁大量的数据交换不会增加 PCI 的拥挤度, 也不会受 PCI 带宽的限制 在图 1 15 中, 已经看不到使用了十几年的 ISA 总线, 这是符合微机发展需要的 目前使用 ISA 总线的慢速外围设备已经越来越少, 新的设备都选用了高速的 PCI 总线,PC 99 规范中也取消了 ISA 总线, 在这种情况下,ISA 总线已经不是必要的部件了 考虑到部分用户的特殊需要, 有些主板还是带有一个 ISA 插槽, 这需要 ICH 芯片外接一片可选的 PCI ISA 桥片 采用这种中心结构的 Intel 的芯片组主要有 810 系列 815 系列 820 系列 850 系列和 860 系列等 3. 现代微机发展的特点综合前几节和本节的内容, 可以看到现代微机基本结构的发展主要具有以下一些特点 : (1) 微处理器性能不断增强 现代微机使用的微处理器大量引入 RISC 技术, 如流水线 超标量 SIMD 分支预测和乱序执行等技术, 使性能和速度得以快速增强和提高 (2) 微处理器支持芯片由规模小的单功能芯片组成的芯片组发展为由大规模多功能芯片组成的芯片组 早期的 PC 采用多个单一功能接口芯片, 芯片多 连线多, 既影响速度, 也使系统出错的概率变大 ; 现在采用两三片高集成度的多功能芯片, 不仅使主板更加微型化, 而且也大大降低了系统出错的概率 (3) 主板总线结构发生改变 系统总线由早期的 PC 总线发展到 16 位的 ISA 总线, 经过多次发展 ( 历史上还经历了 EISA 总线 MCA 微通道总线和 VL 总线等 ), 直到现在除兼容以前的低速设备外, 加强了局部总线的应用, 将高速 I/O 设备利用局部总线 PCI 直接和 CPU 片内总线挂接, 提高了 I/O 和 CPU 的并行性 (4) 保持向上兼容性 尽管微处理器 支持芯片及总线接口都发生了变化, 但是它们依然保持很好的向上兼容性 例如,Pentium 微处理器兼容 8088/8086 的指令系统 ; 新的芯片组也集成了兼容 PC/XT 机中的支持芯片, 例如 8259 8254 和 8237; 现代微机在接口的功能和地址访问等方面都兼容过去的 PC 系统, 如串口 并口等 习题一 1. 简述冯 诺依曼计算机结构的基本含义 2. 将字长和微处理器芯片作为每个阶段的标志, 可将微型计算机分为哪几个阶段? 3. 微型计算机包括哪几个主要组成部分? 各部分的基本功能是什么? 4. 简单介绍 CPU 的各个组成部分及其功能 5. 何谓系统总线? 它分为哪三组? 各组的特点与作用是什么? 6. 某微处理机的地址总线为 16 位, 那么它的最大寻址空间为多少?

第 1 章微型计算机概述 23 7. 微型计算机的主要技术指标有哪些? 请分别说明 8. 微处理器 微型计算机和微型计算机系统三者之间有什么不同? 9. 简述何谓单片机 单板机 10. 说明计算机执行指令的基本过程 11. 中心结构的微机有什么特点? 12. 现代微机的发展有什么特点?