华信教育资源网
微处理器系统结构与嵌入式系统设计(第2版)
作   译   者:李广军 出 版 日 期:2011-08-01
出   版   社:电子工业出版社 维   护   人:马岚 
书   代   号:G0143890 I S B N:9787121143892

图书简介:

本书介绍了基于ARM核的嵌入式微处理器系统的体系结构、组成原理、工程设计方法和核心设计技术。全书首先讲述微处理器系统的组成、系统结构的基本概念和原理;然后从逻辑电路、IP核设计的层次,对微处理器的体系结构、指令系统设计的核心技术进行深入研讨,揭示了微处理器系统中软件指令和硬件电路之间的接口联系、工程设计方法与流程。书中讨论了基于ARM微处理器IP核的微处理器软硬件系统的结构及组成,以提高读者编写与底层硬件交互的高效代码的工程设计能力和素质,并着重探讨了嵌入式操作系统的系统结构、操作系统移植、引导和加载等关键技术;书中还讨论了嵌入式系统的软硬件协同设计及基于ARM核的SoC设计技术。
您的专属联系人更多
配套资源 图书内容 样章/电子教材 图书评价
  • 配 套 资 源
    图书特别说明:由于成本考虑,本书不作为参考书赠送。如果确有授课教材选用的需求,可将详细情况发送给本书专属联系人,我们将进一步沟通并酌情处理。

    本书资源

    本书暂无资源

    会员上传本书资源

  • 图 书 内 容

    内容简介

    本书介绍了基于ARM核的嵌入式微处理器系统的体系结构、组成原理、工程设计方法和核心设计技术。全书首先讲述微处理器系统的组成、系统结构的基本概念和原理;然后从逻辑电路、IP核设计的层次,对微处理器的体系结构、指令系统设计的核心技术进行深入研讨,揭示了微处理器系统中软件指令和硬件电路之间的接口联系、工程设计方法与流程。书中讨论了基于ARM微处理器IP核的微处理器软硬件系统的结构及组成,以提高读者编写与底层硬件交互的高效代码的工程设计能力和素质,并着重探讨了嵌入式操作系统的系统结构、操作系统移植、引导和加载等关键技术;书中还讨论了嵌入式系统的软硬件协同设计及基于ARM核的SoC设计技术。

    图书详情

    ISBN:9787121143892
    开 本:16开
    页 数:412
    字 数:659

    本书目录

    第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)
    展开

    前     言

    计算机技术、网络技术、微电子技术和软件技术等信息技术的快速发展,使得嵌入式技术已深入到我们的日常生活中,从智能家电、个人通信产品、数码消费电子产品到汽车等,随处可见嵌入式技术的身影。与此同时,用户需求的多样化、复杂化和个性化趋势,导致嵌入式电子产品的功能日趋复杂、研发难度加大;而激烈的市场竞争又要求厂商能够以最快的速度将产品投放市场并尽量降低研发成本。因此,嵌入式系统设计技术与微电子、通信、计算机等信息技术互相融合并迅速发展和更新,例如仅就嵌入式系统常用的嵌入形态而言又可分为:系统级嵌入、板级嵌入、芯片级嵌入和IP级嵌入等。
    目前,以IC设计与软件设计为代表的嵌入式系统设计已成为业内的核心标志性技术,基于ARM内核的嵌入式微处理器系统已广泛应用于各行各业及人们的日常生活中;而以应用为中心、软硬件可裁减的嵌入式系统产品的发展更是十分迅猛。嵌入式微处理器系统的产品市场已成为世界信息产业的市场增长点,其带动的相关工业产值估计每年超过数万亿元。
    在IEEE计算机学会和ACM共同制定的2004版计算机类课程体系中,微处理器和嵌入式系统等已被列入核心课程。嵌入式计算机系统设计技术已成为通信、雷达、计算机、自动控制和微电子等研究应用领域的工程师应掌握的基本技术和必备技能。与巨大的市场潜力和产业需求相比,我国的嵌入式系统人才的工程与系统设计培养却有明显不足。为此,国家“十二五”和国家中长期科研规划均把微处理器等核心集成电路设计技术与基础软件技术设计列为国家重点关注的核心技术。
    近年来,我国的ASIC/微处理器芯片设计水平与20世纪相比已有本质的飞跃,IT业的飞速发展对大学生的微处理器和嵌入式系统的设计能力提出了很高的要求。但是,国内高校大多仍以讲授80x86微处理器及应用系统为主,缺乏对计算机及微处理器系统的组成原理、系统结构,尤其是微处理器内部结构的深入剖析和理解,对学生的微处理器系统的硬件/软件协同设计、底层驱动设计等工程能力的培养不够重视。因此,原有的课程教学不可避免地存在教学脱离实际、课程落后技术、高校与行业脱节的情况。显然,以往的微型计算机原理等课程的教学大纲已无法满足相关产业的技术发展及人才需求。
    随着ARM、PowerPC、MIPS、8051等CPU内核的广泛应用,国内IC与嵌入式系统产品设计技术和研发水平得到了飞速发展,微机原理、嵌入式系统等系列课程的改革已势在必行。
    为弥补上述不足,电子科技大学“微型计算机系统原理及嵌入式系统”课程组编写了《微处理器系统结构与嵌入式系统设计》,并于2009年由电子工业出版社出版。同时,从2009年起在校内大规模进行了微机原理的课程改革,至今已历经3届本科教学。虽然课程改革存在诸多困难和缺陷,但改革后的课程教学仍得到了老师和学生们广泛的欢迎和好评。根据我们几年来的教学经验、教训和搜集到的宝贵建议,在对课程的教学大纲、教材的编写大纲及配套的实践教学大纲进行了多次讨论和修改的基础上,编写了《微处理器系统结构与嵌入式系统设计(第2版)》。
    本教材在保留原第1版的主要知识结构的基础上,为方便教学,增设了总线技术与总线标准、存储系统、输入/输出接口等有关章节。教材新版重点介绍了ARM微处理器的IP核及其软硬件系统的结构及组成,从逻辑电路和ARM核的设计层次,剖析了嵌入式微处理器系统的控制器、数据通路等主要功能部件的工作原理和内部结构,使读者掌握嵌入式微处理器系统的主流工程设计方法和核心技术,强调基本原理与先进工程设计理念结合,提高学生的工程素质和设计能力,其主要特点如下。
    (1) 加强微处理器系统的组成原理和系统结构等基础理论
    计算机系统结构与组织理论是设计实现计算机系统的基石。无论是通用计算机系统还是嵌入式计算机系统,无论采用哪种CPU芯片,其组成原理与系统结构本质上都是非常类似的。只有具备了这些基础知识才能够真正理解计算机的行为原理,真正做到举一反三。
    (2) 深入探讨了微处理器的体系结构、指令系统等关键核心技术
    从逻辑电路、ARM核和IP设计的层次,对微处理器的体系结构、指令系统及其特性进行较深入的研究和讨论,深入探讨了微处理器系统的硬件与软件两者之间的相互影响,重点揭示了微处理器系统中软件指令和硬件电路之间的接口联系及综合设计工程方法。
    (3) 选用基于ARM内核的嵌入式微处理器系统
    对基于ARM微处理器IP核的微处理器软硬件系统的结构及组成进行了较深入的介绍,通过对ARM微处理器的学习和理解,以利读者今后更容易理解和掌握PowerPC、MIPS、8051等其他CPU内核的工作原理和设计技术,从而理解更先进的微处理器体系结构,了解嵌入式系统的主流工程设计技术和理念,以便写出直接与底层硬件交互的高效代码。
    (4) 强调嵌入式操作系统的系统结构、系统移植、引导和加载等核心技术
    随着操作系统在嵌入式系统中的应用日益广泛,重点讲述了嵌入式软件系统结构及工作流程、ARM嵌入式软件系统的引导和加载、嵌入式Linux内核的移植等核心软件设计技术,有助于读者建立完整的计算机系统架构,透彻地理解嵌入式系统的工作原理,可显著增强读者的工程设计能力和素质。
    (5) 引入嵌入式系统的软硬件协同设计及基于ARM核的SoC设计技术
    引入了嵌入式系统的软硬件协同设计及基于ARM核的SoC设计技术,使读者不仅会使用现成集成电路芯片搭建应用系统,还要了解如何使用已有IP内核或自行设计IP内核构建面向应用的片上系统,使读者尽快掌握电子系统设计工程师必备的技术和工程设计方法。通过实验课这一平台,为学生进一步掌握SoC系统设计技术提供了基本的知识体系结构。
    为方便教师和读者,本教材有配套的教学课件与教学实验装置,感兴趣的教师登录华信教育资源网(http://www.hxedu.com.cn),注册之后可免费下载本书的教学课件;或将咨询邮件发至malan@phei.com.cn。
    本书作者都是长期从事微机系统原理、嵌入式系统、ASIC/SoC设计及通信系统设计的教学和科研的教师,在教学和科研实践中积累了丰富的工程设计经验,完成了大量国家及国际合作的嵌入式系统、ASIC/SoC等研发项目,取得了很好的社会和经济效益。本书中的技术专题,都力争与实际应用有机结合,所举的例子大多数是完整的、可操作的,甚至有的直接来自科研实践。
    全书共12章和7个附录。李广军组织拟定了编写大纲,编写了第1章、第3章和第12章;阎波编写了第2章和第5章;林水生编写了第4章、第6章及附录;黄乐天编写了第7章至第9章;周亮编写了第10章和第11章。
    本书第1章简述了计算机/微处理器/嵌入式系统设计技术的最新技术现状及发展趋势;第2章介绍了计算机体系结构的演变及现代计算机系统的组织特点,基于简单模型机介绍计算机系统的基本工作原理;第3章介绍了微处理器的组成原理以及控制器、数据通路等主要核心功能部件的原理、内部结构与工程设计方法;第4章介绍了计算机系统中各部件之间的总线数据传输技术、总线分层结构、总线仲裁、总线操作、总线标准及总线接口技术;第5章介绍了常用存储器件的结构和特点、计算机系统中存储器的分层构建策略和关键技术、计算机系统中存储器模块的设计技术。第6章介绍了计算机系统输入/输出接口的概念、接口电路结构、主设备与从设备间接口电路的信息传输方式、并行接口电路原理和串行接口电路原理。第7章介绍了ARM微处理器内核的体系结构及编程模型。第8章介绍了ARM汇编指令的格式、寻址方式和功能。第9章介绍了ARM程序开发环境、汇编程序设计,以及汇编语言和C语言混合编程技术。第10章介绍了基于ARM微处理器的系统总体设计技术以及构造ARM微处理器最小硬件系统的流程与方法。第11章介绍了嵌入式软件系统结构及工作流程、ARM嵌入式软件系统的引导和加载、嵌入式Linux内核的移植等核心软件设计技术。第12章简要介绍了基于ARM核的SoC设计基础及嵌入式系统的软硬件协同设计方法。
    本书可作为高校通信工程、电子信息工程、自动控制、集成电路等相关专业本科生的微机原理、嵌入式系统、计算机系统设计等课程的教材,对相关研发人员也有很好的实用参考价值。
    作者得到了电子科技大学教务处、飞思卡尔、ARM、TI、ST等公司和电子工业出版社马岚编辑的大力支持。本书参考了国内外著名大学的专家和教授的大量著作及文献,并得到了国内和校内著名专家和教授的建议、帮助和支持,在此表示衷心感谢。作者希望本书能对我国高校和相关行业的微型计算机系统原理、嵌入式系统设计的教学和科研尽些微薄之力。尽管是第2版,本书还有许多不尽人意之处,我们盼望着使用本书的教师和读者提出宝贵的意见,也热切地期待得到同行的建议和指教。
    展开

    作者简介

    本书暂无作者简介
  • 样 章 试 读
  • 图 书 评 价 我要评论
华信教育资源网