种豆资源网

当前位置:首页 > 百科 > 百科综合 / 正文

嵌入式系统:体系结构、编程与设计(清华大学出版社2010年版图书)

(2019-09-30 05:53:16) 百科综合

嵌入式系统:体系结构、编程与设计(清华大学出版社2010年版图书)

《嵌入式系统:体系结构、编程与设计》是2010年清华大学出版社出版的图书,作者是卡莫尔。

基本介绍

  • 书名:嵌入式系统:体系结构、编程与设计
  • 作者:卡莫尔(RajKamal)
  • 定价:98.00元

图书信息

书 名: 嵌入式系统:体系结构、编程与设计
作 者:卡莫尔(RajKamal)
出版社: 清华大学出版社
出版时间: 2010年3月1日
ISBN: 9787302218944
开本: 16开
定价: 98.00元

内容简介

《嵌入式系统:体系结构、编程与设计》第1版获得了读者的一致好评和热销,第2版在此基础上进行了修订,并且结合新技术给予了补充,採用软硬体相结合的方式介绍嵌入式系统开发。全书从基础知识开始入手,逐步介绍嵌入式处理器体系结构、网路设备、驱动程式、进程间通信以及程式建模与编程方面的相关知识。《嵌入式系统:体系结构、编程与设计》是嵌入式系统初学人员的理想学习资料,也可以作为嵌入式系统设计人员非常好的参考资枓。
《嵌入式系统:体系结构、编程与设计》特色:
自底向上的方法——结合案例研究讨论了硬体和软体问题
详细讨论了两种流行的新实时作业系统(RTOS)——Windows CE和RTLinux
嵌入式系统设计过程中的新主题、系统设计的形式化方法、无线通信设备、支持Internet的系统、无线和移动系统协定
全新的案例研究:数位相机、机器人管弦乐队以及行动电话SMS创建和传送
贯穿全书的设计过程和示例
面向实践:两章专门介绍案例研究。

作者简介

Raj Kamal,在无线电子、微处理器、微控制器、计算机组成和体系结构以及嵌入式系统和计算机网路等领域有40年的研究和教学经验。他已经着作了10本教科书,涉及计算机、电子学及通信和信息技木等领域,如《嵌入式系统》、《计算机体系结构》等书,并在印度、美国、新加坡、韩国及中国出版。由于其做研究的坚持不懈及对最新知识的渴求,Raj被一些大学亲切地冠以“学习机器”和“人类发电机”的美誉。

图书目录

第1章 嵌入式系统简介1
1.1 嵌入式系统2
1.1.1 系统2
1.1.2 嵌入式系统3
1.2 嵌入系统中的处理器5
1.2.1 系统中的处理器5
1.2.2 微处理器6
1.2.3 微控制器7
1.2.4 专用处理器9
1.3 系统中的嵌入式硬体单元和设备10
1.3.1 电源10
1.3.2 时钟振荡电路和时钟单元11
1.3.3 系统定时器和实时时钟11
1.3.4 复位电路、加电复位和Watchdog定时器复位11
1.3.5 存储器12
1.3.6 输入、输出和I/O连线埠,IO汇流排和IO接口14
1.3.7 DAC(使用PWM)和ADC15
1.3.8 LCD、LED和触控萤幕显示17
1.3.9 小键盘或键盘18
1.3.10 脉冲拨号电路、数据机和收发器18
1.3.11 中断处理器18
1.4 嵌入式系统中的软体19
1.4.1 系统的最终机器可实现软体19
1.4.2 用机器码编写软体20
1.4.3 用特定于处理器的彙编语言编写软体21
1.4.4 用高级语言编写软体22
1.4.5 软体设计的程式模型24
1.4.6 并行处理、多任务调度和使用RTOS的ISR的软体24
1.4.7 使用作业系统的设备驱动程式和设备管理软体25
1.4.8 设计嵌入式系统的软体工具26
1.4.9 示例中需要的软体工具27
1.5 示例嵌入式系统28
1.6 嵌入式片上系统(SoC)和VLSI电路30
1.6.1 专用IC(ASIC)31
1.6.2 IP核32
1.6.3 具有一个或者多个处理器的FPGA核32
1.7 複杂系统设计和处理器32
1.7.1 嵌入式系统中的微处理器32
1.7.2 嵌入式系统中的微控制器33
1.7.3 嵌入式系统中的DSP33
1.7.4 嵌入式系统中的RISC34
1.7.5 嵌入式系统中的ASIP34
1.7.6 嵌入式系统中的多处理器或者GPP双核处理器34
1.7.7 嵌入式处理器和嵌入式微控制器35
1.7.8 嵌入式系统中的ARM处理器37
1.7.9 嵌入式系统中的ASSP37
1.8 嵌入式系统的设计过程38
1.8.1 设计指标39
1.8.2 设计过程中的抽象步骤39
1.8.3 嵌入式系统设计中的挑战:最佳化设计指标42
1.9 系统设计的形式化方法43
1.10设计过程和设计案例44
1.10.1 系统设计过程案例44
1.10.2 朱古力自动售卖机(ACVM)44
1.10.3 智慧卡46
1.10.4 数位相机49
1.10.5 行动电话51
1.10.6 携带型计算机52
1.10.7 一组机器人52
1.11 嵌入式系统的分类54
1.12 嵌入式系统设计者需要具备的技能55
本章小结56
关键字及其定义57
问题回顾61
实践练习62
第2章 8051和高级处理器体系结构、存储器组织和现实中的接口65
2.1 8051的体系结构66
2.1.1 8051微控制器体系结构66
2.1.2 指令集67
2.1.3 IO连线埠、电路以及IO编程70
2.1.4 外部存储器接口电路72
2.1.5 计数器和定时器73
2.1.6 串列数据通信输入/输出74
2.1.7 8051的中断75
2.2 现实世界中的接口76
2.2.1 基于系统汇流排和基于IO汇流排的现实世界接口IO76
2.2.2 现实接口中的连线埠和设备的IO地址80
2.2.3 现实接口中的设备地址82
2.2.4 中断和IO83
2.2.5 汇流排仲裁84
2.2.6 键盘、显示器、A/D和D/A转换设备接口示例86
2.3 高级体系结构介绍88
2.3.1 高级处理器体系结构90
2.3.2 80x86体系结构92
2.3.3 ARM93
2.3.4 SHARC99
2.3.5 DSP101
2.4 处理器和存储器组织102
2.4.1 处理器的组织102
2.4.2 存储器的组织105
2.5 指令级并行109
流水线和超标量单元109
2.6 性能指标111
2.7 存储器类型、存储器映射和地址111
2.7.1 系统中的存储器111
2.7.2 存储地址分配115
2.8 处理器选择119
2.9 存储器选择123
本章小结126
关键字及其定义127
问题回顾132
实践练习132
第3章 设备网路的设备和通信汇流排135
3.1 I/O的类型和示例136
3.1.1 同步串列输入136
3.1.2 同步串列输出138
3.1.3 同步串列输入/输出138
3.1.4 异步串列输入138
3.1.5 异步串列输出139
3.1.6 并行连线埠139
3.1.7 半双工与全双工139
3.1.8 串列和并行连线埠I/O示例140
3.2 串列通信设备140
3.2.1 串列设备的同步、準同步和异步通信140
3.2.2 RS232C/RS485通信143
3.2.3 UART144
3.2.4 HDLC协定145
3.2.5 使用SPI、SCI和SI连线埠的串列数据通信146
3.2.6 安全数字输入输出(SDIO)149
3.3 并行设备连线埠150
3.3.1 与开关和小键盘连线的并行连线埠153
3.3.2 与编码器连线的并行连线埠154
3.3.3 与步进电机连线的并行连线埠154
3.3.4 与LCD控制器连线的并行连线埠155
3.3.5 与触控萤幕连线的并行连线埠156
3.4 设备连线埠的複杂接口特性157
3.5 无线设备158
3.6 定时器和计数设备159
3.6.1 定时设备159
3.6.2 计数设备159
3.6.3 带计数设备的定时器160
3.7 watchdog定时器164
3.8 实时时钟165
3.9 网路中的嵌入式系统166
3.10 串列汇流排通信协定168
3.10.1 I2C汇流排168
3.10.2 CAN汇流排169
3.10.3 USB汇流排171
3.10.4 FireWire——IEEE1394汇流排标準172
3.10.5 先进的串列高速汇流排173
3.11 并行汇流排设备协定——使用ISA、PCI、PCI-X和高级汇流排的并行通信网路173
3.11.1 ISA汇流排175
3.11.2 PCI和PCI/X汇流排176
3.11.3 ARM汇流排177
3.11.4 高级并行高速汇流排178
3.12 支持Internet的系统——网路协定178
3.12.1 超文本传输协定(HTTP)179
3.12.2 传输控制协定(TCP)181
3.12.3 用户数据报协定(UDP)181
3.12.4 Internet协定(IP)182
3.12.5 Ethernet(乙太网)183
3.13 无线和移动系统协定184
3.13.1 红外数据协会(IrDA)184
3.13.2 蓝牙185
3.13.3 802.1 1186
3.13.4 ZigBee187
本章小结187
关键字及其定义189
问题回顾192
实践练习193
第4章 设备驱动程式和中断服务机制195
4.1 不使用中断服务机制的程式查询式I/O忙/等待方法196
4.2 ISR的概念199
4.2.1 连线埠或设备中断及ISR示例199
4.2.2 软体中断和ISR示例202
4.2.3 作为级中断处理程式的中断服务执行绪205
4.2.4 设备驱动程式205
4.3 中断源206
4.4 中断服务(处理)机制210
4.4.1 中断向量210
4.4.2 根据可禁止和不可禁止的中断分类213
4.4.3 可禁止中断源的启用(未禁止)和禁用(禁止)214
4.4.4 状态暂存器或中断挂起暂存器214
4.5 多中断215
4.5.1 多中断调用215
4.5.2 硬体分配的优先权216
4.6 上下文和上下文切换周期、中断延迟和最终期限217
4.6.1 中断延迟219
4.6.2 中断服务的最终期限221
4.6.3 硬体优先权的软体覆盖以满足服务的最终期限223
4.7 从上下文保存的角度对处理器中断服务机制的分类223
4.8 直接存储器访问224
4.8.1 DMAC的使用225
4.8.2 同一中断源产生多个快速连续中断时的DMA通道使用226
4.9 设备驱动程式编程226
4.9.1 编写系统中的物理设备驱动ISR227
4.9.2 虚拟设备驱动程式229
4.9.3 系统中的并行连线埠驱动程式230
4.9.4 系统中的串列连线埠驱动程式232
4.9.5 内部可程式定时设备的设备驱动程式234
4.9.6 作为设备驱动和网路函式的Linux内幕235
本章小结236
关键字及其定义237
问题回顾239
实践练习240
第5章 编程概念及C、C++和Java的嵌入式编程241
5.1 用彙编语言(ALP)和高级语言C进行软体编程242
5.1.1 彙编语言编程242
5.1.2 高级语言编程242
5.2 C程式中的元素:头档案、源档案以及预处理指令244
5.2.1 用于包含档案的include指令244
5.2.2 源档案245
5.2.3 配置档案246
5.2.4 预处理指令246
5.3 程式元素:宏与函式246
5.4 程式元素:数据类型、数据结构、修饰符、语句、循环和指针248
5.4.1 数据类型248
5.4.2 指针和NULL指针249
5.4.3 使用数据结构:伫列、堆叠、鍊表和树250
5.4.4 修饰符的使用258
5.4.5 条件语句、循环语句以及无限循环语句259
5.4.6 函式调用264
5.4.7 按照循环顺序进行的多函式调用266
5.4.8 函式指针、函式伫列和ISR伫列267
5.4.9 发生中断时函式的排列268
5.5 面向对象编程271
5.6 C++嵌入式编程271
5.6.1 C++的优点271
5.6.2 C++的缺点272
5.6.3 嵌入式C++程式的代码最佳化以消除缺点272
5.7 用Java进行嵌入式编程273
5.7.1 Java编程基础273
5.7.2 使用Java编程的优点275
5.7.3 Java的缺点275
5.7.4 J2ME276
5.7.5 JavaCard和嵌入式Java277
本章小结277
关键字及其定义278
问题回顾281
实践练习281
第6章 程式建模的概念283
6.1 程式模型284
6.2 DFG模型286
6.2.1 数据流图286
6.2.2 控制数据流图模型289
6.2.3 同步数据流图(SDFG)模型290
6.3 用于事件控制程式流的状态机编程模型291
6.3.1 有限状态机(FSM)模型293
6.3.2 FSM状态表294
6.4 多处理器系统的建模298
6.4.1 多处理器系统298
6.4.2 展开SDFG的同构SDFG模型301
6.4.3 展开HSDFG的APEG模型302
6.4.4 图在多处理器系统中的套用:划分和调度303
6.5 UML建模305
本章小结309
关键字及其定义310
问题回顾311
实践练习311
第7章 进程间通信与进程、任务和执行绪的同步313
7.1 应用程式中的多个进程314
7.2 应用程式中的多执行绪316
7.3 任务317
7.4 任务的状态318
7.5 任务和数据320
任务控制块321
7.6 通过函式、ISR和任务的特徵进行区分321
7.6.1 无限事件等待循环的任务编码321
7.6.2 函式、ISR和任务之间的区别322
7.7 信号量的概念325
7.7.1 作为事件信号变数或通报变数的信号量的使用325
7.7.2 作为资源键的信号量以及信号量在临界段中的使用327
7.7.3 使用多个信号量同步任务329
7.7.4 计数信号量332
7.7.5 P和V信号量333
7.8 共享数据339
7.8.1 多任务和多例程的数据共享问题339
7.8.2 共享数据问题的解决方法340
7.8.3 信号量的套用与共享数据问题341
7.8.4 共享数据问题的消除341
7.8.5 优先权反转问题和死锁情况342
7.9 进程间通信343
7.1 0信号函式345
7.1 1信号量函式347
7.1 2讯息伫列函式348
7.1 3信箱函式350
7.1 4管道函式353
7.1 5套接字函式355
7.1 6远程过程调用(RPC)函式359
本章小结359
关键字及其定义360
问题回顾362
实践练习362
第8章 实时作业系统365
8.1 OS服务366
8.1.1 目标366
8.1.2 用户和管态结构366
8.1.3 结构367
8.1.4 核心368
8.2 进程管理369
8.2.1 进程的创建369
8.2.2 已创建进程的管理370
8.3 定时器函式371
8.4 事件函式373
8.5 存储器管理374
8.5.1 存储器分配374
8.5.2 初始分配后的存储管理374
8.6 设备、档案及IO子系统管理376
8.6.1 设备管理376
8.6.2 档案系统的组织和实现378
8.6.3 I/O子系统380
8.7 RTOS环境中的中断例程和中断源调用处理381
8.7.1 通过中断源以及ISR传送ISR输入讯息直接调用ISR382
8.7.2 RTOS首先回响中断,接着OS调用相应的ISR383
8.7.3 RTOS首先回响中断,之后初始化ISR并运行ISR384
8.8 实时作业系统385
8.9 使用RTOS进行基本设计387
8.9.1 原则387
8.9.2 使用信号量和伫列进行封装394
8.9.3 硬实时的考虑396
8.9.4 节约存储器和功耗397
8.10 RTOS任务调度模型,作为性能指标的中断延迟和任务回响时间400
8.10.1 协作调度模型401
8.10.2 循环和时间片轮转调度模型404
8.10.3 抢占式调度模型408
8.10.4 抢占式调度程式提供的临界段服务模型413
8.10.5 最早时限优先(EDF)优先权和速率单调调度(RMS)模型414
8.10.6 固定(静态)实时调度模型415
8.10.7 周期、突发以及非周期任务的调度模型中延迟和最后期限的性能指标416
8.10.8 使用CPU负载作为性能指标416
8.10.9 突发任务模型作为性能指标417
8.1 1作业系统的安全问题417
本章小结418
关键字及其定义419
问题回顾420
实践练习421
第9章 实时作业系统编程-I:MicroC/OS-II和VxWorks423
9.1 RTOS的基本函式和类型424
9.1.1 基于宿主机-目标机和基于自主主机的开发方法425
9.1.2 RTOS的类型426
9.2 RTOSμCOS-II427
9.2.1 系统级函式429
9.2.2 任务服务和时间函式及其使用範例433
9.2.3 时间延迟函式439
9.2.4 存储器分配相关的函式442
9.2.5 信号量相关函式444
9.2.6 信箱相关函式456
9.2.7 伫列相关函式465
9.3 RTOSVxWorks474
9.3.1 基本特性475
9.3.2 系统库头档案中的任务管理库477
9.3.3 VxWorks系统函式和系统任务481
9.3.4 IPC函式483
本章小结496
关键字及其定义498
问题回顾499
实践练习499
第10章 实时作业系统编程-II:WindowsCE、OSEK和实时Linux函式501
10.1 WindowsCE502
10.1.1 WindowsCE的特点502
10.1.2 WindowsCE编程504
10.1.3 视窗和视窗管理505
10.1.4 记忆体管理506
10.1.5 档案和注册表507
10.1.6 WindowsCE资料库508
10.1.7 进程、执行绪和IPC509
10.1.8 按键、触控萤幕、滑鼠的输入512
10.1.9 通信和网路514
10.1.10 设备间套接字通信函式516
10.1.11 Win32API编程517
10.1.1 2创建视窗518
10.2 OSEK519
10.3 Linux2.6.x和RTLinux521
10.3.1 实时Linux函式521
10.3.2 RTLinux527
本章小结531
关键字及其定义533
问题回顾536
实践练习537
第11章 RTOS编程和程式建模设计示例与案例研究-1539
11.1 嵌入式系统设计的案例研究以及使用MUCOSRTOS对朱古力自动售卖机(ACVM)编码540
11.1.1 需求540
11.1.2 系统规範541
11.1.3 使用UML为系统规範建模543
11.1.4 ACVM的硬体体系结构546
11.1.5 软体体系结构546
11.1.6 创建任务列表、函式和IPC550
11.1.7 编码步骤示例551
11.2 数位相机硬体和软体体系结构的案例研究559
11.2.1 需求560
11.2.2 类图562
11.2.3 数位相机的硬体体系结构563
11.2.4 数位相机的软体体系结构564
11.3 使用RTOSVxWorks将套用层位元组流传送到TCP/IP网路的编码案例研究566
11.3.1 需求567
11.3.2 类图、类和对象567
11.3.3 TCP栈的硬体和软体体系结构570
11.3.4 编码步骤实例574
本章小结596
关键字及其定义597
问题回顾598
实践练习599
第12章 RTOS编程和程式建模设计示例与案例研究-2601
12.1 管弦乐队机器人之间通信的案例研究601
12.1.1 需求604
12.1.2 类和类图605
12.1.3 状态图607
12.1.4 机器人管弦乐队MIDI通信的硬体和软体体系结构607
12.1.5 通信任务的同步模型608
12.2 汽车中的嵌入式系统609
12.3 汽车中自适应巡航控制(ACC)系统的嵌入式系统案例研究611
12.3.1 需求612
12.3.2 类图616
12.3.3 ACC硬体体系结构617
12.3.4 ACC软体体系结构618
12.3.5 ACC软体任务的同步模型618
12.3.6 ACC软体实现620
12.4 智慧卡中的嵌入式系统案例研究629
12.4.1 需求630
12.4.2 类图631
12.4.3 硬体和软体体系结构632
12.4.4 同步模型633
12.4.5 示例代码634
12.5 行动电话键输入软体案例研究641
12.5.1 需求642
12.5.2 类和类图646
12.5.3 状态图648
12.5.4 SMS按键硬体648
12.5.5 SMS创建和传送应用程式的软体体系结构649
12.5.6 软体任务和同步模型651
本章小结652
关键字及其定义653
问题回顾655
实践练习656
第13章 嵌入式软体开发过程和工具657
13.1 嵌入式软体开发过程和工具概述658
13.1.1 开发过程和软硬体658
13.1.2 软体工具659
13.1.3 原始码工程管理工具660
13.1.4 集成开发环境(IDE)661
13.2 宿主机和目标机662
13.2.1 宿主系统662
13.2.2 目标系统664
13.3 连结和定位软体665
13.3.1 档案、定址和地址解决方法的区别666
13.3.2 MotorolaS-record和IntelHex二进制映像格式的定位器输出档案667
13.3.3 用于定位器编码的存储器映射669
13.4 将嵌入式软体植入目标系统671
13.4.1 设备PROM或者快闪记忆体编程器671
13.4.2 设备编程器的编程方式672
13.5 硬体/软体设计和协同设计中的问题674
13.5.1 选择合适的平台674
13.5.2 存储器敏感和处理器敏感软体677
13.5.3 存储器、程式段和设备地址分配678
13.5.4 嵌入式平台中OS的移植问题681
13.5.5 性能和性能加速器682
本章小结684
关键字及其定义685
问题回顾687
实践练习687
第14章 测试、模拟和调试技术与工具689
14.1 在宿主机上进行测试689
14.2 模拟器691
14.2.1 模拟器的特性692
14.2.2 模拟器的局限性692
14.2.3 模拟工具软体693
14.2.4 嵌入式系统的原型开发、测试和调试工具693
14.3 试验工具694
14.3.1 简单的伏特-欧姆表694
14.3.2 简单的LED测试和逻辑探测器695
14.3.3 示波器695
14.3.4 位率测量仪696
14.3.5 逻辑分析仪696
14.3.6 电路内置仿真器(ICE)697
14.3.7 监视器699
本章小结700
关键字及其定义701
问题回顾701
实践练习702
附录A 不同读者的学习路线图703
附录B 参考文献705

标 签

搜索
随机推荐

Powered By 种豆资源网||