ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:20.19KB ,
资源ID:7949942      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7949942.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(ARM体系结构与编程教学大纲.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

ARM体系结构与编程教学大纲.docx

1、ARM体系结构与编程教学大纲课程编号:08060400ARM体系结构与编程 ARM Architecture and Programming 总学时:32总学分:2课程性质:专业课开设学期及周学时分配:第5学期;2学时/周适用专业及层次:软件工程专业(嵌入式方向) 本科相关课程:微机原理;单片机;C语言;C+教材:ARM体系结构与编程,杜春雷译,清华大学出版社,2005年推荐参考书:ARM嵌入式系统结构与编程 ,清华大学出版社,2009年;嵌入式系统体系结构、编程与设计,清华大学出版社,2010年。一、 课程目的及要求ARM是业界嵌入式开发的通用体系,产检产品几乎都是采用了ARM体系的MCU。

2、本课程主要介绍ARM的体系结构、ARM开发语言、开发平台以及基于ARM的编程。通过本课程的学习,使学生能够理解基本的嵌入式开发流程、开发使用的工具,掌握嵌入式产品的开发方法及编程。二、 课程内容及学时分配第1章 ARM概述及其基本编程模型(2课时)1. 1 ARM技术的应用领域及其特点1. 2 ARM体系结构的版本及命名方法1. 2. 1 ARM体系结构的版本1. 2. 2 ARM体系的变种1. 2. 3 ARM/Thumb体系版本的命名格式l. 3 ARM处理器系列1. 3. 1 ARM7系列1. 3. 2 ARM9系列1. 3. 3 ARM9E系列1. 3. 4 ARM1OE系列1. 3.

3、 5 SecurCore系列l. 4 ARM处理器模式1. 5 ARM寄存器介绍1. 5. l 通用寄存器1. 5. 3 程序状态寄存器1. 6 ARM体系的异常中断1. 6. 1 ARM中异常中断种类1. 6. 2 ARM处理器对异常中断的响应过程1. 6. 3 从异常中断处理程序中返回1. 7 ARM体系中存储系统1. 7. 1 ARM体系中的存储空间1. 7. 2 ARM存储器格式1. 7. 3 非对齐的存储访问操作1. 7. 4 指令预取和自修改代码第2章 ARM指令分类及其寻址方式(2课时)2. 1 ARM指令集概要介绍2. 1. 1 ARM指令的分类2. 1. 2 ARM指令的一般

4、编码格式2. 1. 3 ARM指令的条件码域2. 2 ARM指令寻址方式2. 2. l 数据处理指令的操作数的寻址方式2. 2. 2 字及无符号字节的Load/Store指令的寻址方式2. 2. 3 杂类Load/Store指令的寻址方式2. 2. 4 批量Load/Store指令的寻址方式2. 2. 5 协处理器Load/Store指令的寻址方式第3章 ARM指令集介绍(4课时)3. 1 ARM指令集3. 1. l 跳转指令3. l. 2 数据处理指令3. 1. 3 乘法指令3. 1. 4 杂类的算术指令3. 1. 5 状态寄存器访问指令3. l. 6 Load/Store内存访问指令3.

5、1. 7 批量Load/Store内存访问指令3. 1. 8 信号量操作指令3. 1. 9 异常中断产生指令3. 1. 10 ARM协处理器指令3. 2 一些基本的ARM指令功能段3. 2. l 算术逻辑运算指令的应用3. 2. 2 跳转指令的应用3. 2. 3 Loacl/Store指令的应用3. 2. 4 批量Load/Store指令的应用3. 2. 5 信号量指令的应用3. 2. 6 与系统相关的一些指令代码段3. 3 Thumb指令介绍第4章 ARM汇编语言程序设计(4课时)4. 1 伪操作4. 1. l 符号定义伪操作4. 1. 2 数据定义伪操作4. 1. 3 汇编控制伪操作4.

6、1. 4 栈中数据帧描述伪操作4. 1. 5 信息报告伪操作4. 1. 6 其他的伪操作4. 2 ARM汇编语言伪指令4. 3 ARM汇编语言语句格式4. 3. 1 ARM汇编语言中的符号4. 3. 2 ARM汇编语言中的表达式4. 4 ARM汇编语言程序格式.4. 4. l 汇编语言程序格式4. 4. 2 汇编语言子程序调用4. 5 ARM汇编编译器的使用4. 6 汇编程序设计举例4. 6. 1 ARM中伪操作使用实例4. 6. 2 ARM中汇编程序实例第5章 ARM存储系统(3课时)5. 1 ARM存储系统概述5. 2 ARM中用于存储管理的系统控制协处理器CP155. 2. 1 访问CP

7、15寄存器的指令5. 2. 2 CP15中的寄存器5. 3 存储器管理单元MMU5. 3. l 存储器管理单元MMU概述5. 3. 2 禁止/使能MMU5. 3. 3 MMU中地址变换过程5. 3. 4 MMU中存储访问权限控制5. 3. 5 MMU中的域5. 3. 6 关于快表的操作5. 3. 7 ARM中的存储访问失效5. 4 高速缓冲存储器和写缓冲区5. 4. 1 基本概念5. 4. 2 cache的工作原理和地址映像方法5. 4. 3 cache的分类5. 4. 4 cache的替换算法5. 4. 5 缓冲技术的使用注意事项5. 4. 6 存储系统的一致性问题5. 4. 7 cache

8、内容锁定5. 4. 8 与cache和写缓冲区相关的编程接口5. 5 快速上下文切换技术5. 5. l 快速上下文切换技术原理5. 5. 2 快速上下文切换技术编程接口5. 6 与存储系统相关的程序设计指南5. 6. l 地址空间5. 6. 2 存储器格式5. 6. 3 非对齐的存储访问操作5. 6. 4 指令预取和自修改代码5. 6. 5 IMB5. 6. 6 存储器映射的I/O空间5. 7 AIOA存储系统的实例5. 7. 1 L7205的存储系统概述5. 7. 2 L7205中的SDRAM5. 7. 3 L7205中的 MMU第6章 ATPCS介绍(1课时)6. 1 ATPCS概述6.

9、2 基本ATPCS6. 2. l 寄存器的使用规则6. 2. 2 数据栈使用规则6. 2. 3 参数传递规则6. 3 几种特定的ATPCS6. 3. l 支持数据栈限制检查的ATPCS6. 3. 2 支持只读段位置无关(ROPI)的ATPCS6. 3. 3 支持可读写段位置无关(RWPI)的ATPCS6. 3. 4 支持ARM程序和Thumb程序混合使用的ATPCS6. 3. 5 处理浮点运算的ATPCS第7章 ARM程序和Thumb程序混合使用(1课时)7. 1 概述7. 2 在汇编语言程序中通过用户代码支持interwork7. 2. l 可以实现程序状态切换的指令7. 2. 2 与程序状

10、态切换相关的伪操作7. 2. 3 进行状态切换的汇编程序实例7. 3 在C/C+程序中实现interwork7. 4 在汇编语言程序中通过连接器支持interwork7. 4. l 利用veneers实现汇编程序间的程序状态切换7. 4. 2 利用veneers实现汇编程序与C/C+程序间的程序状态切换第8章 CC+以及汇编语言的混合编程(4课时)8. l 内嵌汇编器的使用8. 1. l 内嵌的汇编指令用法8. 1. 2 内嵌的汇编器和armasm的区别8. l. 3 在CC+程序中使用内嵌的汇编指令8. 1. 4 内嵌汇编指令的应用举例8. 2 从汇编程序中访问C程序变量8. 3 汇编程序.

11、C程序以及C+程序的相互调用8. 3. l 在C+程序中使用C程序头文件8. 3. 2 汇编程序.C程序以及C+程序的相互调用举例第9章 异常中断处理(2课时)9. 1 ARM中异常中断处理概述9. 1. 1 ARM体系中异常中断种类9. 1. 2 异常中断向量表及异常中断优先级9. 1. 3 异常中断使用的寄存器9. 2 进入和退出异常中断的过程9. 2. 1 ARM处理器对异常中断的响应过程9. 2. 2 从异常中断处理程序中返回9. 3 在应用程序中安装异常中断处理程序9. 3. 1 在系统复位时安装异常中断处理程序9. 3. 2 在C程序中安装异常中断处理程序9. 4 SWI异常中断处

12、理程序9. 4. 1 SWI异常中断处理程序的实现9. 4. 2 SWI异常中断调用9. 5 FIQ和IRQ异常中断处理程序9. 5. 1 IRQ/FIQ异常中断处理程序9. 5. 2 IRQ异常中断处理程序举例9. 6 复位异常中断处理程序9. 7 未定义指令异常中断9. 8 指令预取中止异常中断处理程序9. 9 数据访问中止异常中断处理程序第10章 ARM C/0+编译器(1课时)10. 1 ARM C/C+编译器概述10. 1. 1 ARM C/C+编译器及语言库介绍10. l. 2 ARM编译器中与搜索路径相关的一些基本概念10. 2 ARM编译器命令行格式10. 2. l 过程调用标

13、准10. 2. 2 设置源程序语言类型10. 2. 3 指定搜索路径10. 2. 4 设置预处理选项10. 2. 5 设置输出文件类型10. 2. 6 指定目标处理器和ARM体系版本10. 2. 7 生成调试信息10. 2. 8 代码生成的控制10. 2. 9 控制警告信息的产生10. 2. 10 编译时进行的一些额外的检查10. 2. 11 控制错误信息10. 3 ARM编译器中的pragmas10. 4 ARM编译器特定的关键词10. 4. 1 用于声明函数的关键词10. 4. 2 用于声明交量的关键词10. 4. 3 用于限定数据类型的关键词10. 5 ARM编译器支持的基本数据类型10

14、. 6 ARM编译器中预定义宏10. 7 ARM中C/C+库10. 7. 1 ARM中C/C+运行时库概述10. 7. 2 建立一个包含C/C+运行时库的C/C+应用程序10. 7. 3 建立不包含C运行时库的应用程序10. 7. 4 裁减C/C+运行时库以适应特定的目标运行环境第11章 ARM连接器(2课时)11. 1 ARM映像文件11. 1. 1 ARM映像文件的组成11. 1. 2 ARM映像文件的入口点11. 1. 3 输入段的排序规则11. 2 ARM连接器介绍11. 3 ARM连接器生成的符号11. 3. 1 连接器生成的与域相关的符号11. 3. 2 连接器生成的与输出段相关的

15、符号11. 3. 3 连接器生成的与输入段相关的符号11. 4 连接器的优化功能11. 5 运行时库的使用11. 5. 1 C/C+运行时库与目标文件11. 5. 2 查找需要的C/C+运行时库11. 5. 3 选择合适种类的C/C+运行时库11. 5. 4 扫描C/C+运行时库11. 6 从一个映像文件中使用另一个映像文件中的符号11. 6. 1 symdefs文件11. 6. 2 建立symdefs文件11. 6. 3 symdefs文件的使用11. 7 隐藏或者重命名全局符号11. 7. l steering文件的格式11. 7. 2 steering文件中的命令11. 8 ARM连接器

16、命令行选项11. 9 使用scatter文件定义映像文件的地址映射11. 9. l scatter文件概述11. 9. 2 satter文件中各部分介绍11. 9. 3 scatter文件使用举例第12章 嵌入式应用程序示例(3课时)12. l 嵌入式应用程序设计的基本知识12. 1. 1 嵌入式应用系统中的存储映射12. 1. 2 系统初始化12. 2 使用semihosting的 C语言程序示例12. 2. 1 源程序分析12. 2. 2 生成映像文件12. 3 一个嵌入式应用系统示例12. 3. l 源程序分析12. 3. 2 生成映像文件12. 3. 3 本例中地址映射模式12. 4

17、进行ROM/RAM地址重映射的嵌入式应用系统12. 4. l 地址映射模式12. 4. 2 源程序分析12. 4. 3 生成映像文件12. 5 一个嵌入式操作系统示例第13章 使用CodeWarrior(2课时)13. 1 CodeWarrior for ADS概述13. 2 简单工程项目的使用13. 2. 1 工程项目窗口13. 2. 2 简单工程项目的使用13. 3 配置生成目标13. 3. 1 Debug Settings对话框介绍13. 3. 2 设置牛成目标的基本选项13. 3. 3 汇编器选项设置13. 3. 4 编译器的选项设置13. 3. 5 连接器的选项设置13. 3. 6

18、fromELF工具的选项设置13. 4 复杂工程项目的使用13. 4. l 建立一个新的生成目标13. 4. 2 将一个生成目标更名13. 4. 3 建立生成目标之间的依赖关系13. 4. 4 子工程项目的使用13. 5 工程项目模板13. 5. 1 ADS中工程项目模板的使用13. 5. 2 建立用户工程项目模板13. 6 编译和连接工程项目13. 6. 1 编译文件13. 6. 2 生成工程项目第14章 ARM体系中的调试方法(1课时)14. 1 ARM体系中调试系统概述14. 2 基于Angel的调试系统14. 2. l 基于Angel的调试系统的概述14. 2. 2 使用Angel开发

19、应用程序14. 2. 3 Angel执行的操作14. 2. 4 将Angel移植到特定的目标系统14. 3 基于JTAG的调试系统14. 3. l 基于JTAG的调试系统的特点14. 3. 2 基于JTAG的调试系统结构14. 3. 3 目标系统中的调试功能扩展部件14. 3. 4 基于JTAG的调试过程14. 4 ADW使用介绍14. 4. 1 ADW概述14. 4. 2 ADW中的窗口14. 4. 3 ADW使用介绍 三、 教学重点与难点第1章 ARM概述及其基本编程模型重点:ARM编程模型难点:异常中断处理第2章ARM指令分类及其寻址方式重点:ARM寻址方式难点:ARM指令寻址第3章AR

20、M指令集介绍重点:ARM指令集难点:异常中断指令第4章ARM汇编语言程序设计重点:ARM汇编语言调用难点:ARM汇编语言设计第5章 ARM存储系统 重点: ARM存储难点: MMU管理第6章ATPCS介绍重点:寄存器、数据栈、参数传递规则难点:特定的ATPCS第7章ARM程序和Thumb程序混合使用重点:ARM程序和Thumb程序混合难点:ARM程序和Thumb程序混合使用第8章CC+以及汇编语言的混合编程重点:内嵌汇编器难点:汇编程序.C程序以及C+程序的相互调用第9章异常中断处理重点:异常中断向量表难点:异常中断响应第10章ARM C/0+编译器重点:ARM C/0+编译过程难点:ARM中

21、C/C+库 第11章ARM连接器重点:ARM连接器映像文件难点:从一个映像文件中使用另一个映像文件中的符号第12章 嵌入式应用程序示例重点:嵌入式应用程序开发过程难点:ROM/RAM地址重映射的嵌入式应用系统第13章 使用CodeWarrior重点:CodeWarrior使用难点:配置生成目标第14章ARM体系中的调试方法重点:基于JTAG的调试系统难点:bug定位四、 主要教学方式本课程采用多媒体设备,结合板书形式进行教学。五、 典型作业练习1、 串口通信案例的实现2、 手持式设备的开发六、课程考核方式 本课程采用期末闭卷考试方式进行考核。 撰写人:青软实训 审核人:信息科学技术学院课程简介

22、ARM体系结构与编程(ARM Architecture and Programming)课程编号:08060400 课程性质:专业课开设学期及学时分配:第5学期 2学时/周 适用专业及层次:软件工程专业(嵌入式方向) 本科先行课程:C、C+、微机原理、单片机 后继课程:嵌入式系统设计、嵌入式Linux编程;WinCE编程教材:ARM体系结构与编程,杜春雷译,清华大学出版社,2005年推荐参考书:ARM嵌入式系统结构与编程 ,清华大学出版社,2009年;嵌入式系统体系结构、编程与设计 ,清华大学出版社,2010年。课程目的、内容与要求: ARM体系结构是分布非常广泛的MCU体系,本课程介绍了ARM编程模型、指令集及混合式编程等技术。通过本课程的学习,使学生能偶掌握嵌入式开发的流程、语言和方法。使学生深刻认识嵌入式软件的开发过程和实现技术 本课程要求学生应具备微机原理、单片机应用技术;应熟悉C/C+编程技术以及控制论技术。 撰写人:青软实训 审核人:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1