arm分支指令c语言,ARM嵌入式系统教与学(教学大纲)

原标题:ARM嵌入式系统教与学(教学大纲)

593e9838db7670fb40c62b583c549ec3.png

《ARM 嵌入式系统结构与编程》

课程教学大纲

学分

3

学时

32+24

01

课程说明

通过本课程的学习,培养学生掌握 ARM 体系结构,ARM 指令集、以及在 ARM 体系下的 嵌入式编程,使学生掌握基于 ARM 技术的硬件开发平台,在此平台下进行硬件编程与硬件接口 实验,为学生进行嵌入式系统软硬件设计和开发打下良好的基础。

02.

课程目标

1.了解嵌入式最新产品,掌握嵌入式系统定义与内涵。其中定义包括 IEEE 和嵌入式系统行 业定义,了解嵌入式统统的发展趋势。

2.ARM 体系结构: 了解 ARM 处理器分类与编号,理解 ARM 处理器的工作模式、寄存器体系 结构,以及 ARM 处理器的中断与异常处理方式,重点区别不同异常的处理。了解 ARM7、ARM9、 ARM10 处理器性能比较,突出每类处理器的功能异同;掌握 ARM7、ARM9、ARM10 的指令流水线技 术,分析在不同的指令功能码段里,流水线的阻断情况,从而达到 ARM 指令代码优化的目的。

3.深入理解 ARM 指令的寻址方式和 ARM 指令系,包括立即数的构成,寄存器寻址、存储器 寻址和寄存器间接寻址方式的构成。

4.了解 ARM 汇编语言程序伪指令,ADS 标准与 GNU 标准语法格式。理解并掌握 ARM 汇编语 言语句、程序格式,ARM 汇编语言功能程序段以及 ARM 汇编语言程序设计技巧

5.了解在 ARM 体系结构下,C 语言程序设计规则。理解程序调用规则 ATPCS,并分析寄存 器及参数传递关系。掌握汇编语言与 C 语言混合编程方法,并给出实例进行验证与分析。

6.基于 ARM7/ARM9 内核的嵌入式开发平台 ,了解 ARM 处理器及组成,CPU 模块构成。理 解 ARM 存储控制器接口原理与扩展方式。包括 NAND 和 NOR Flash 原理与接口及编程方法。理解 基于 S3C44b0x/S3C2410x 芯片启动过程,并进行启动代码设计。掌握 RTC 实时时钟编程、看门 狗定时器的编程设置。掌握 S3C44b0x/S3C2410x 的基于 S3C44b0x/S3C2410x 的 LCD 控制技术, 包括 STN、TFT 两种 LCD 的接口技术、显示原理与时序控制方式,软件驱动的编写。

03

教学内容、基本要求与学时分配

8808fc04b8f44258c23d1e6008be806f.png

b89d40d42a5defdddb9e75e5c9335e78.png

4f76de0818c385883ff2c90afde448e1.png

040af31f4db6f2f9f405a562e6c874d7.png

04

其它教学环节

实验授课内容共计 24-32 学时

0173649db6c8746dbe73f72eb1121f72.png

05

授课说明

1. 开课学期:春季/秋季。

2. 授课单位:计算学院/软件学院/电信学院。

3. 适用专业:计算机、电子工程、通信、物联网、软件工程。

4. 先修课程:计算机组成原理、接口与汇编、数字电路与模拟电路、程序设计语言。

06

教材和参考书

a43163be3571d1cb8bd68ef432d642b3.png

目 录

上下滚动查看↓

第1章绪论

1.1嵌入式系统定义

1.1.1嵌入式系统的发展历程

1.1.2嵌入式系统的定义与特点

1.2嵌入式操作系统

1.2.1嵌入式实时操作系统

1.2.2实时操作系统的典型应用

1.3嵌入式技术在工程领域的应用

1.4嵌入式技术的发展趋势

思考与练习题

第2章ARM技术与ARM体系结构

2.1ARM体系结构版本与内核

2.1.1ARM体系结构版本

2.1.2ARM内核版本命名规则

2.1.3主流ARM处理器内核系列与应用

2.2ARM内核模块

2.3ARM处理器的工作模式

2.4内部寄存器

2.4.1通用寄存器及其分布

2.4.2程序状态寄存器

2.5ARM异常处理

2.6存储方式与存储器映射机制

2.7ARM流水线技术分析

思考与练习题

第3章ARM指令集寻址方式

3.1ARM指令的编码格式

3.2数据处理指令寻址方式

3.3Load/Store指令寻址

3.3.1地址计算方法

3.3.2字、无符号字节寻址

3.3.3半字、有符号字节寻址

3.4批量Load/Store指令寻址方式

3.5协处理器指令寻址方式

思考与练习题

第4章ARM指令集系统

4.1数据处理指令

4.1.1基本数据处理指令

4.1.2乘法指令

4.1.3杂类的数据处理指令

4.2ARM分支指令

4.3加载/存储指令

4.3.1加载/存储字、无符号字节指令

4.3.2半字、有符号字节访问指令

4.4批量加载/存储指令

4.4.1基本批量字数据加载/存储指令

4.4.2用户模式下的批量字数据加载/存储指令

4.4.3带PSR操作的批量字数据加载指令

4.5交换指令

4.6程序状态寄存器访问指令

4.7协处理器操作指令

4.7.1协处理器数据操作指令

4.7.2协处理器加载/存储指令

4.7.3ARM寄存器与协处理器寄存器数据传输指令

4.8异常产生指令

思考与练习题

第5章Thumb指令

5.1Thumb数据处理指令

5.1.1寄存器移位指令

5.1.2低位寄存器算术运算指令

5.1.3ALU操作指令

5.1.4带高位寄存器操作的Thumb指令

5.1.5带SP/PC的算术运算指令

5.2Thumb存储器操作指令

5.2.1字节、半字和字的加载/存储指令

5.2.2批量加载/存储指令

5.3Thumb分支指令

5.3.1B分支指令

5.3.2带链接的分支指令

5.3.3带状态切换的分支指令

5.4Thumb软中断指令

5.5Thumb指令功能码段分析

5.5.1Thumb与ARM实现功能比较

5.5.2Thumb与ARM性能比较

思考与练习题

第6章ARM汇编伪指令与伪操作

6.1汇编语言伪指令

6.1.1ARM汇编语言伪指令

6.1.2Thumb汇编语言伪指令

6.2ARM汇编语言伪操作

6.3ARM汇编伪操作

6.3.1符号定义伪操作

6.3.2数据定义伪操作

6.3.3汇编代码控制伪操作

6.3.4汇编信息报告控制伪操作

6.3.5指令集类型标识伪操作

6.3.6文件包含伪操作

6.3.7其他类型伪操作

6.4GNU ARM汇编伪操作

6.4.1符号定义伪操作

6.4.2数据定义伪操作

6.4.3汇编与反汇编代码控制伪操作

6.4.4预定义控制伪操作

思考与练习题

第7章汇编语言程序设计

7.1ARM编译环境下汇编语句

7.1.1ARM编译环境下汇编语句格式

7.1.2ARM编译环境下汇编语句中的符号规则

7.2GNU环境下汇编语句与编译说明

7.2.1GNU环境下ARM汇编语句格式

7.2.2GNU环境下ARM汇编程序编译

7.3ARM汇编语言程序设计规范

7.4ARM汇编语言程序设计实例解析

思考与练习题

第8章ARM汇编语言与嵌入式C混合编程

8.1嵌入式C编程规范

8.2嵌入式C程序设计中的位运算

8.3嵌入式C程序设计中的几点说明

8.3.1volatile限制符

8.3.2地址强制转换与多级指针

8.3.3预处理的使用

8.4嵌入式C程序设计格式

8.5过程调用标准ATPCS与AAPCS

8.5.1寄存器使用规则

8.5.2数据栈使用规则

8.5.3参数传递规则

8.6ARM汇编语言与嵌入式C混合编程相互调用

8.6.1内嵌汇编

8.6.2ARM汇编语言与嵌入式C程序相互调用

思考与练习题

第9章S3C44B0/S3C2410/S3C2440硬件结构与关键技术分析

9.1处理器简介

9.2S3C44B0/S3C2410/S3C2440存储控制器

9.2.1S3C44B0存储控制与地址空间

9.2.2S3C2410/S3C2440存储控制与地址空间

9.2.3S3C44B0/S3C2410/S3C2440存储位宽控制

9.2.4S3C44B0/S3C2410/S3C2440存储器接口时序分析

9.2.5S3C44B0/S3C2410存储控制寄存器

9.2.6SDRAM接口电路设计

9.2.7S3C44B0存储器初始化实例

9.3S3C2410/S3C2440 NAND Flash控制器

9.4S3C44B0/S3C2410/S3C2440时钟与电源管理

9.4.1S3C44B0/S3C2410/S3C2440时钟管理

9.4.2S3C44B0/S3C2410/S3C2440电源管理

9.4.3S3C44B0/S3C2410/S3C2440时钟与电源管理专用寄存器

9.5S3C44B0/S3C2410/S3C2440通用 I/O端口

9.5.1端口控制描述

9.5.2端口寄存器

9.5.3通用I/O接口设计实例

9.6S3C44B0/S3C2410/S3C2440中断机制

9.6.1S3C44B0中断控制器

9.6.2S3C2410/S3C2440中断控制器

9.6.3S3C44B0/S3C2410/S3C2440中断控制特殊功能寄存器

9.6.4S3C44B0/S3C2410/S3C2440中断控制器设计实例

思考与练习题

第10章S3C44B0/S3C2410/S3C2440通信与LCD接口技术

10.1S3C44B0/S3C2410/S3C2440 UART

10.1.1UART原理

10.1.2S3C44B0/S3C2410/S3C2440 UART模块

10.1.3S3C44B0/S3C2410/S3C2440 UART操作

10.1.4UART中断与波特率的计算

10.1.5S3C44B0/S3C2410/S3C2440 UART专用功能寄存器

10.1.6S3C44B0/S3C2410 UART设计实例

10.2S3C44B0/S3C2410/S3C2440 I2C总线接口

10.2.1I2C总线原理

10.2.2S3C44B0/S3C2410/S3C2440 I2C总线功能模块

10.2.3S3C44B0/S3C2410/S3C2440 I2C总线操作

10.2.4S3C44B0/S3C2410/S3C2440 I2C专用功能寄存器

10.2.5S3C44B0/S3C2410/S3C2440 I2C总线设计实例

10.3S3C44B0/S3C2410/S3C2440 LCD控制器

10.3.1LCD简介

10.3.2S3C44B0/S3C2410/S3C2440 LCD控制器模块

10.3.3S3C44B0/S3C2410/S3C2440 LCD控制器专用功能寄存器

10.3.4S3C44B0/S3C2410/S3C2440 LCD控制器设计实例

思考与练习题

附录AS3C44B0/S3C2410/S3C2440封装与I/O复用信息

附录B链接定位与系统引导程序

附录C“ARM嵌入式系统结构与编程”课程考试标准试题返回搜狐,查看更多

责任编辑:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值