本书介绍了基于ARM核的嵌入式微处理器系统的体系结构、组成原理、工程设计方法和核心设计技术。全书首先讲述微处理器系统的组成、系统结构的基本概念和原理;然后从逻辑电路、IP核设计的层次,对微处理器的体系结构、指令系统设计的核心技术进行深入研讨,揭示了微处理器系统中软体指令和硬体电路之间的接口联繫、工程设计方法与流程。
基本介绍
- 书名:微处理器系统结构与嵌入式系统设计(第2版)
- 作者:李广军
- ISBN:9787121143892
- 出版社:电子工业出版社
- 出版时间:2011-08-01
图书内容
本书介绍了基于ARM核的嵌入式微处理器系统的体系结构、组成原理、工程设计方法和核心设计技术。全书首先讲述微处理器系统的组成、系统结构的基本概念和原理;然后从逻辑电路、IP核设计的层次,对微处理器的体系结构、指令系统设计的核心技术进行深入研讨,揭示了微处理器系统中软体指令和硬体电路之间的接口联繫、工程设计方法与流程。
书中讨论了基于ARM微处理器IP核的微处理器软硬体系统的结构及组成,以提高读者编写与底层硬体互动的高效代码的工程设计能力和素质,并着重探讨了嵌入式作业系统的系统结构、作业系统移植、引导和载入等关键技术;书中还讨论了嵌入式系统的软硬体协同设计及基于ARM核的SoC设计技术。
图书目录
第1章 概述 (1)
1.1 计算机发展概述 (1)
1.1.1 电子计算机发展概述 (1)
1.1.2 普适计算与泛在通信 (3)
1.2 积体电路与SoC设计 (8)
1.2.1 积体电路技术的发展 (9)
1.2.2 基于IP的SoC设计 (10)
1.3 先进的处理器技术 (13)
1.3.1 片上多核处理器(CMP) (13)
1.3.2 流处理器(Stream
Processor) (15)
1.3.3 PIM(Processor In
Memory) (16)
1.3.4 可重构计算处理器 (17)
1.4 嵌入式系统 (19)
1.4.1 嵌入式系统的概念 (20)
1.4.2 嵌入式系统的特点 (21)
1.4.3 嵌入式系统中的处理器 (21)
1.4.4 嵌入式系统的组成 (24)
1.4.5 嵌入式系统的发展现状
与趋势 (25)
1.4.6 学习嵌入式系统的意义 (27)
参考文献 (28)
习题 (28)
第2章 计算机系统的结构组成与工作
原理 (29)
2.1 计算机系统的基本结构
与组成 (29)
2.1.1 计算机系统的层次模型 (29)
2.1.2 计算机系统的结构、组织
与实现 (31)
2.2 计算机系统的工作原理 (32)
2.2.1 冯诺依曼计算机架构 (32)
2.2.2 模型机系统结构 (33)
2.2.3 模型机指令集 (36)
2.2.4 模型机工作流程 (37)
2.3 微处理器体系结构的改进 (38)
2.3.1 冯诺依曼结构的改进 (39)
2.3.2 并行技术的发展 (43)
2.3.3 流水线结构 (44)
2.3.4 超标量与超长指令字结构 (48)
2.3.5 多机与多核结构 (50)
2.4 计算机体系结构分类 (52)
2.5 计算机性能评测 (54)
2.5.1 字长 (54)
2.5.2 存储容量 (54)
2.5.3 运算速度 (55)
参考文献 (56)
习题 (56)
第3章 微处理器体系结构及关键
技术 (58)
3.1 微处理器体系结构及功能模组
简介 (58)
3.1.1 处理器的主要功能及部件 (59)
3.1.2 处理器的基本功能结构 (60)
3.1.3 一个简化的处理器模型结
构示例 (62)
3.2 处理器设计 (64)
3.2.1 处理器的设计步骤 (65)
3.2.2 控制器的操作与功能 (66)
3.2.3 随机逻辑控制器设计 (67)
3.2.4 微程式(微码)控制器结构
及设计 (70)
3.2.5 暂存器组设计 (73)
3.3 指令系统设计 (74)
3.3.1 机器指令的组成 (74)
3.3.2 指令格式 (76)
3.3.3 指令类型 (77)
3.3.4 定址方式 (78)
3.3.5 指令系统设计要点 (82)
3.4 指令流水线技术 (82)
3.4.1 流水线技术的特点 (83)
3.4.2 流水线操作的详细说明 (84)
3.4.3 流水线的局限性 (85)
3.4.4 指令流水线设计 (87)
3.5 典型微处理体系结构简介 (90)
3.5.1 ARM体系结构简介 (90)
3.5.2 Intel x86体系结构简介 (91)
参考文献 (93)
习题 (94)
第4章 汇流排技术与汇流排标準 (95)
4.1 汇流排技术 (95)
4.1.1 汇流排技术概述 (95)
4.1.2 汇流排仲裁 (100)
4.1.3 汇流排操作与时序 (103)
4.2 汇流排标準 (107)
4.2.1 片内AMBA汇流排 (108)
4.2.2 PCI系统汇流排 (116)
4.2.3 异步串列通信汇流排 (127)
参考文献 (133)
习题 (133)
第5章 存储器系统 (135)
5.1 存储器件的分类 (135)
5.1.1 按存储介质分类 (135)
5.1.2 按读写策略分类 (138)
5.2 半导体存储晶片的基本结构
与性能指标 (139)
5.2.1 随机存取存储器 (139)
5.2.2 唯读存储器 (146)
5.2.3 存储器晶片的性能指标 (154)
5.3 存储系统的层次结构 (156)
5.3.1 存储系统的分层管理 (156)
5.3.2 虚拟存储器与地址映射 (158)
5.3.3 现代计算机的多层次存储
体系 (161)
5.4 主存储器设计技术 (164)
5.4.1 存储晶片选型 (165)
5.4.2 存储晶片的组织形式 (165)
5.4.3 地址解码技术 (169)
5.4.4 存储器接口设计 (174)
参考文献 (176)
习题 (176)
第6章 输入/输出接口 (179)
6.1 输入/输出接口基础 (179)
6.1.1 输入/输出接口的功能
与结构 (179)
6.1.2 输入/输出连线埠编址 (182)
6.2 接口地址解码 (184)
6.3 接口信息传输方式 (185)
6.3.1 程式查询传输方式 (185)
6.3.2 程式中断传输方式 (188)
6.3.3 直接存储器访问(DMA)
方式 (195)
6.3.4 通道方式 (198)
6.4 并行接口 (198)
6.4.1 无握手信号的并行接口 (199)
6.4.2 带握手信号的并行接口 (203)
6.4.3 可程式并行接口 (205)
6.5 串列接口 (209)
6.5.1 同步串列接口 (209)
6.5.2 异步串列接口 (212)
参考文献 (214)
习题 (214)
第7章 ARM微处理器编程模型 (216)
7.1 ARM核心体系结构 (216)
7.1.1 ARM体系结构版本 (216)
7.1.2 ARM核心简介 (220)
7.2 ARM编程模型 (225)
7.2.1 处理器工作状态 (225)
7.2.2 处理器运行模式 (226)
7.2.3 暂存器组织 (226)
7.2.4 数据类型和存储格式 (230)
7.2.5 异常 (231)
参考文献 (235)
习题 (235)
第8章 ARM彙编指令 (236)
8.1 ARM指令格式 (236)
8.1.1 ARM指令的一般编码
格式 (236)
8.1.2 ARM指令的条件域 (237)
8.1.3 指令的第二源运算元 (238)
8.2 ARM定址方式 (240)
8.2.1 立即定址 (240)
8.2.2 暂存器直接定址 (240)
8.2.3 暂存器移位定址 (240)
8.2.4 暂存器间接定址 (241)
8.2.5 基址变址定址 (241)
8.2.6 多暂存器直接定址 (243)
8.2.7 相对定址 (243)
8.2.8 堆叠定址 (243)
8.3 ARM指令集 (244)
8.3.1 数据处理指令 (244)
8.3.2 转移指令 (254)
8.3.3 程式状态暂存器访问
指令 (256)
8.3.4 载入/存储指令 (258)
8.3.5 异常产生指令 (265)
8.3.6 伪指令 (266)
参考文献 (268)
习题 (268)
第9章 ARM程式设计 (269)
9.1 ARM程式开发环境 (269)
9.1.1 常用ARM程式开发环境
简介 (269)
9.1.2 RVDS开发环境简介 (272)
9.2 彙编语言伪指令 (273)
9.2.1 符号定义伪指令 (273)
9.2.2 数据定义伪指令 (274)
9.2.3 彙编控制伪指令 (275)
9.2.4 其他常用伪指令 (279)
9.2.5 彙编语言中常用的符号 (282)
9.2.6 常用运算符和表达式 (283)
9.3 ARM彙编语言程式设计 (285)
9.3.1 ARM彙编语言程式结构 (285)
9.3.2 ARM彙编程式设计实例 (286)
9.4 ARM彙编语言与C/C++的
混合编程 (295)
9.4.1 C语言与彙编语言之间的
函式调用 (295)
9.4.2 C/C++语言和彙编语言的
混合编程 (300)
参考文献 (304)
习题 (304)
第10章 基于ARM微处理器的硬体
系统设计 (307)
10.1 基于ARM微处理器的系统
设计概述 (307)
10.2 S3C2440A微处理器 (307)
10.2.1 S3C2440A微处理器
简介 (307)
10.2.2 S3C2440A内部结构及
主要特性 (308)
10.2.3 S3C2440A外部引脚 (311)
10.3 ARM微处理器最小硬体
系统 (311)
10.3.1 电源模组 (312)
10.3.2 时钟模组 (313)
10.3.3 复位模组 (313)
10.3.4 JTAG调试接口模组 (315)
10.3.5 外部存储器模组 (315)
10.4 人机互动接口 (318)
10.4.1 键盘与LED接口 (318)
10.4.2 LCD显示接口 (320)
10.4.3 触控萤幕接口 (323)
10.5 通信接口 (327)
10.5.1 串列通信接口 (327)
10.5.2 其他通信接口 (332)
参考文献 (333)
习题 (334)
第11章 基于ARM微处理器的软体
系统设计 (335)
11.1 嵌入式软体系统结构及工作
流程 (335)
11.1.1 嵌入式软体系统结构 (335)
11.1.2 嵌入式软体系统工作
流程 (336)
11.2 嵌入式软体系统的引导
和载入 (337)
11.2.1 Bootloader程式的基本
概念 (338)
11.2.2 U-Boot的分析与移植 (339)
11.3 嵌入式Linux核心的移植 (341)
11.3.1 Linux核心的结构 (344)
11.3.2 核心的配置与裁减 (345)
11.3.3 核心的编译 (347)
11.3.4 Linux核心配置编译
实例 (348)
11.4 Linux下驱动程式设计
示例 (350)
参考文献 (354)
习题 (354)
第12章 基于ARM微处理器核的
SoC设计 (355)
12.1 概述 (355)
12.2 SoC设计 (356)
12.2.1 SoC的典型结构 (357)
12.2.2 SoC设计中的关键技术 (358)
12.3 SoC的片上汇流排 (361)
12.3.1 片上汇流排的特点 (361)
12.3.2 SoC中常用的汇流排标準 (362)
12.4 SoC系统的设计流程 (365)
12.4.1 SoC系统晶片的系统级
设计 (366)
12.4.2 系统晶片的设计流程 (367)
12.5 基于ARM核心的SoC系统
设计 (368)
12.5.1 常用ARM CPU核心所使
用的汇流排接口 (368)
12.5.2 基于ARM的SoC结构 (369)
12.5.3 基于ARM核心的SoC系
统套用设计举例 (376)
参考文献 (380)
习题 (380)
附录A ASCII码錶 (381)
附录B ARM实验系统简介 (382)
附录C AT91SAM9263引脚排列及
信号名称表 (384)
附录D S3C2440A引脚排列及信号
名称表 (386)
附录E MX21引脚排列及信号
名称表 (388)
附录F ARM指令速查表及符号
含义 (389)
附录G Linux常用命令表 (399)