用户名: 密码:
单片机与嵌入式系统领导品牌
好书推荐
培训报名
大学老师登记
在线 388 人 首 页 | 公司介绍 | 产品中心 | 解决方案 | 代理商专区 | 人才招聘 | 致远电子 | 技术支持 | 销售网点
ARM SoC设计的软件和硬件协同验证
书 名:
ARM SoC设计的软件和硬件协同验证
作 者:
[美] Jason Andrews著 周立功 等译
出版社:
北京航空航天大学出版社
ISBN:
7-81077-752-1
定 价:
25.00元
出版日期:
2006-8-1
购买方法:
北航出版社  网上购书
 
 
内容简介
  This edition of CoVerification of Hardware and Software for ARM SoC Design by Janson Andrews is published by arrangement with Elsevier Inc of 200 Wheeler Road, 6th Floor, Burlington, MA01803, USA. Copyright 2003 by Elsevier Inc. Translation Copyright  2006 by Beijing University of Aeronautics and Astronautics Press. All rights reserved.
 
前 言
  这是一本值得关注的书。Jason Andrews熟悉软件与硬件,他了解使用者,也了解工具,还懂得应用于软件与硬件之间的中间区域的方法。他能够把复杂的东西写下来,解释清楚,让你能够真正地理解。
  要考虑太多相互作用的情况,要做出太多的决定,这就是这个中间区域如此复杂的一个主要原因。
  Jason细心地把问题逐一列出,解释了问题如何相互作用,并且描述了解决的办法。
  值得赞赏的是,他解释了哪种工具和方法适用于哪种情况。这是十分重要的,因为对一个问题会有很多不同的解决方法,而你又不可能把它们全部用上,那么,何时该做什么你必须做出明智的决断。这些解决方案中的大部分都被Jason使用过或者实现过了,其中的某些方案还用了两次;而且他所给出的是该领域的一个非常见多识广的历程,并指引你选择所有可能的折中方案。
  请注意,虽然Jason和我在一个爱向你推销验证方案的验证公司(Verisity)工作,但这本书确实很通俗易懂。它告诉你什么方案能行,什么方案不行,以及它们行或不行的原因。虽然本书的书名为ARM SoC设计软件和硬件协同验证,但我想这本书有着更为广泛的实用性。事实上,如果你符合下面的任何一种情况,那么就应该开始读这本书。 你正专注于软件和硬件都包含在内的产品验证,无论它们是基于SoC的还是基于ARM的。
  你从事的是软件和硬件中的其中一方的工作,你想了解另一方的工作情况。
  你对创建这个领域的工具感兴趣。

                                       Yoav Hollander
                                       Verisity Inc.公司创办人及首席技术主管
                                       2004年7月
 
目 录
第1章 嵌入式系统验证简介
1.1 什么是嵌入式系统?2
1.2 嵌入式系统无所不在3
1.3 设计的约束4
1.4 嵌入式系统分解6
1.4.1 微处理器、芯片与电路板6
1.4.2 嵌入式系统的分类7
1.5 嵌入式系统设计流程9
1.6 验证与确认11
1.7 人际互动12
1.8 关于这本书13
1.9 范围与纲要14
第2章 软件和硬件设计过程
2.1 SoC协同验证的三个组成部分16
2.2 验证平台16
2.3 软件工程师对嵌入式系统的观点22
2.4 硬件工程师对嵌入式系统的观点23
2.5 软件开发工具24
2.5.1 编辑器24
2.5.2 源代码修订控制25
2.5.3 编译器26
2.5.4 调试器26
2.5.5 模拟器27
2.5.6 开发板27
2.5.7 集成开发环境(IDE)27
2.6 软件调试连接27
2.6.1 JTAG28
2.6.2 Stub28
2.6.3 直接连接29
2.7 软件的类型29
2.7.1 系统初始化软件和HAL29
2.7.2 硬件诊断测试套件29
2.7.3 RTOS30
2.7.4 RTOS设备驱动程序和应用软件30
2.8 软件开发过程30
2.9 硬件开发工具35
2.9.1 编辑器35
2.9.2 源代码修订控制36
2.9.3 Lint工具36
2.9.4 代码覆盖37
2.9.5 调试工具37
2.9.6 验证语言38
2.9.7 断言38
2.9.8 调试的定义40
2.9.9 存储器模型40
2.9.10 微处理器模型41
2.10 硬件设计过程43
2.11 微处理器回顾43
2.12 软件和硬件的交互44
2.12.1 软件调试特征44
2.12.2 硬件调试特征44
第3章 ARM体系结构的SoC协同验证课题
3.1 ARM的背景47
3.2 ARM的体系结构48
3.2.1 ARM的体系结构、家族及CPU内核49
3.2.2 Thumb指令集51
3.2.3 编程模型52
3.3 指令集53
3.3.1 数据传输指令53
3.3.2 协处理器指令54
3.3.3 异常和中断54
3.3.4 内存规划和字节顺序56
3.4 ARM总线接口协议57
3.4.1 ARM7TDMI总线协议58
3.4.2 AMBA规范60
3.4.3 AMBA协议简介61
3.4.4 AMBA ASB61
3.4.5 AMBA AHB62
3.4.6 AMBA APB62
3.4.7 AMBA 3.0与AXI63
3.4.8 对ARM CPU总线接口的总结63
3.4.9 AHB指南64
3.4.10 复位时的配置67
3.4.11 AHB传输的各个阶段68
3.4.12 AHB仲裁68
3.4.13 AHB地址阶段70
3.4.14 AHB数据阶段70
3.4.15 AHB-Lite72
3.4.16 单层和多层AHB72
3.4.17 ARM926EJS例子73
3.4.18 中断信号75
3.4.19 指令和数据高速缓存75
3.4.20 TCM78
3.5 ARM总结79
第4章软件和硬件协同验证
4.1 协同验证的历史81
4.2 商业协同验证工具的出现82
4.3 协同验证的定义84
4.3.1 定义84
4.3.2 协同验证的作用85
4.3.3 项目进度的节省85
4.3.4 通过协同验证提供的可视性来了解运行情况86
4.3.5 协同验证促进了交流87
4.3.6 协同验证与协同模拟的比较87
4.3.7 协同验证与协同设计的比较87
4.3.8 真的需要协同验证吗?88
4.4 协同验证的方法88
4.4.1 本地编译软件89
4.4.2 指令集模拟89
4.4.3 硬件Stub89
4.4.4 RTOS模拟器90
4.4.5 微处理器评估板91
4.4.6 波形、日志文件和反汇编91
4.5 协同验证方法的一个例子92
4.5.1 带有逻辑模拟的主机代码模式92
4.5.2 带有逻辑模拟的指令集模拟94
4.5.3 C语言模拟96
4.5.4 带有软件调试功能的CPU的RTL模型98
4.5.5 带有逻辑模拟的硬件模型100
4.5.6 带有逻辑模拟的评估板101
4.5.7 在线仿真102
4.5.8 FPGA原型104
4.6 协同验证的衡量标准105
4.6.1 性能105
4.6.2 验证的准确性105
4.6.3 AHB仲裁和周期精确的问题107
4.6.4 模型设计总结109
4.6.5 同步110
4.6.6 软件的类型110
4.6.7 其他的衡量标准111
第5章 高级软件和硬件协同验证
5.1 直接访问模拟内存112
5.2 内存优化与性能116
5.3 同步的模式119
5.4 进程间通信120
5.5 HDL模型和C语言模型的混合122
5.6 隐式访问124
5.7 保存并重启127
5.8 后处理软件调试技巧128
5.9 嵌入式软件工具的问题131
5.10 协同验证的调试问题132
第6章 硬件验证环境与协同验证
6.1 总线监测器133
6.2 协议检测144
6.2.1 地址对齐144
6.2.2 发送空闲传输145
6.3 断言146
6.3.1 断言的定义146
6.3.2 断言的实现方法147
6.3.3 声明式断言147
6.3.4 程序式断言148
6.3.5 形式化特性语言148
6.3.6 伪注释指令149
6.3.7 后处理模拟历史记录149
6.3.8 用于模拟加速和仿真的断言150
6.4 使用总线功能模型的测试平台151
6.4.1 定向测试151
6.4.2 受约束的随机测试152
6.4.3 测试平台的结构153
6.4.4 功能覆盖率154
6.4.5 兼容性测试155
6.4.6 软件验证155
6.4.7 软件打印语句156
第7章 ARM SoC设计方法举例
7.1 SoC设计的难点162
7.2 验证效率162
7.3 调试的循环163
7.4 协同验证的方法164
7.4.1 系统初始化和HAL开发165
7.4.2 诊断程序165
7.4.3 RTOS和设备驱动程序165
7.4.4 应用软件166
7.4.5 测试平台的开发166
7.4.6 三个验证阶段166
7.5 ARM验证流程的例子168
7.5.1 模块和子系统验证168
7.5.2 初始系统集成169
7.5.3 集中的硬件验证170
7.5.4 协同验证170
7.5.5 系统软件测试171
7.6 协同验证工程师173
7.7 结论174
后记177
 
首 页 | 公司介绍 | 产品中心 | 电子杂志 | 代理商专区 | 人才招聘 | 致远电子 | 技术支持 | 销售网点
版板所有 © 1999-2008 广州周立功单片机发展有限公司