嵌入式重点总结

1. 嵌入式的定义:以应用为中心,以计算机技术为基础,软、硬件可裁剪,适应应用系统

对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

2. 嵌入式系统的特点:1.“专用”计算机系统 2.运行环境差异很大 3.比通用PC系统资源

少 4.功耗低、体积小、集成度高、成本低 5.具有完整的系统测试和可靠性评估 6.具有较长的生命周期 7.需要专用开发工具和方法进行设计 8.包含专用调试电路 9.多学科知识集成系统。

3. 嵌入式系统开发的基本流程:1.系统定义与需求分析阶段 2.方案设计阶段 3.详细设计阶

段 4.软硬件集成测试阶段 5.系统功能性测试及可靠性测试阶段

4. RTOS (Real Time Operating System 实时操作系统) SoC(System on Chip 系统芯片)

SoPC(System on Programmable Chip可编程片上系统) I2S(Integrate Interface of Sound 音频接口) I2C(Inter—Integrate Circuit) UART(Universal Asynchronous Reviewer/Transmitter 通用异步收发器) SWI(SoftWare Interrupt 软中断) FIQ(Fast Interrupt Request 快速中断请求)

5. 对于使用操作系统的嵌入式系统来说,嵌入式系统软件结构一般包括四个层面:板级支

持包层、实时操作系统层、应用程序结构层、应用程序层。操作系统与硬件无关,不同的嵌入式操作系统其组成机构也不尽相同。

6. 典型嵌入式操作系统介绍:嵌入式操作系统种类繁多,但大体可分为两种——商用型和

免费型。目前商用型的操作系统主要有VxWorks、WindowsCE、pSOS、Palm OS、OS—9、LynsOS、QNX和LYNX等。目前免费型的操作系统主要有Linux和uC/OS-II。uC/OS-II具有执行效率高、占用空间小、可移植性及扩展性强、实时性能优良、稳定性和可靠性好等特点。其内核采用微内核结构,将基本功能放在内核中,留给用户一个标准API函数,并根据各个任务的优先级分配CPU时间。

7. 交叉开发是指在一台通用计算机上进行软件的编辑编译,然后下载到嵌入式设备中运行

调试的开发方式,它通常采用宿主机/目标机模式。

8. RISC体系结构的特点:(1).指令格式和长度固定,且指令类型很少,指令功能简单,寻

址方式少而简单,指令译码控制器采用硬布线逻辑。(2).RISC指令系统强调对称、均匀、简单,使程序的优化编译效率更高。(3).大多数指令单周期完成。 (4).具有分开的Load/Store结构的存取指令,也只有Load/Store结构的存取指令访问存储器,而数据处理器指令只访问寄存器。(5).具有多个通用存储器堆操作。

9. RICS组织结构的优点:(1).硬连线的指令译码逻辑 (2).便于流水线执行 (3).大多数RISC

指令为单周期执行。RICS体系结构的缺点:(1)与CISC相比,通常RISC的代码密度低。

(2)RISC不能执行x86 (3)RISC给优化编译程序带来了困难。

10. 目前ARM处理器核主要有 ARM7TDMI、ARM9TDMI、ARM10TDMI、ARM11、SecurCore

和Cortex。

11. ARM所采用的体系结构,对于当时的RISC体系结构来说,既有继承,也有抛弃,即完

全根据实际设计的需要仔细研究。ARM所采用的RISC的技术特征主要有:(1).Load/Store体系结构 (2).固定的32位指令 (3).3地址指令格式 ARM设计放弃的RISC的技术特征有以下几个方面:(1).寄存器窗口 (2).延迟转移 (3).所有的指令单周期执行。

12. ARM7TDMI名称的具体含义如下:ARM7:32位ARM体系结构4T版本。T:Thumb16

位压缩指令集 D:支持片上Debug,使处理器能够停止以响应调试请求 M增强型Multiplier,与前代相比具有较高的性能且产生64位结果 I:EmbeddedICE硬件以支持片上断点和观察点。

13. ARM7的3级流水线: 取指级,译码级,执行级。

14. ARM9TDMI的5级流水线:取指,译码,执行,缓冲/数据,回写。

15. 自从ARM7TDMI核以后,体系结构中具有T变种的ARM处理器核可工作在两种状态:

ARM状态(32位,ARM状态下执行字对准的32位32位ARM指令)和Thumb状态(16位,Thumb状态下执行半字对准的16位Thumb指令。在Thumb状态下,程序计数器PC使用位1选择另一个半字。)

16. ARM处理器在两种工作状态之间的切换的方法如下:进入Thumb状态。当操作数寄存

器Rm的状态位bit[0]为1时,执行“BX Rm”指令进入Thumb状态。如果处理器在Thumb状态进入异常,则当异常处理返回时,自动切换到Thumb状态。 进入ARM状态。当操作数寄存器Rm的状态位bit[0]为1时,执行“BX Rm”指令进入ARM状态。若处理器进行异常处理,在此情况下,把PC放入异常模式链接寄存器LR中,从异常向量地址开始执行也可进入ARM状态。

17. ARM操作模式有:用户,FIQ,IRQ,SVC,中止,未定义,系统。除用户模式外的其他

6种模式称为特权模式。特权模式主要处理异常和监控调用,它们可以自由地访问系统资源和切换模式。

18. ARM处理器总共有37个寄存器,可以划分为两类寄存器:31个通用寄存器,都是32

位的;6个状态寄存器,也都是32位的,不过目前只使用了其中的12位。ARM状态下的通用寄存器分为3类:未分组寄存器,分组寄存器,程序计数器。

19. 寄存器R13通常用作堆栈指针SP。这只是一种习惯的用法并没有任何指令强制地使用

R13作为堆栈指针。每一种异常模式都拥有自己的物理R13。应用程序在对每一种异常模式进行初始化时,都要初始化该模式下的R13,使其指向相应的堆栈。

20. 寄存器R14只用做子程序连接寄存器,也称为LR(Link Register)。每一种异常模式都有

自己的物理R14,R14用来存放当前子程序的返回地址。

21. 寄存器R15被用作程序计数器,也称PC。R15值的改变将引起执行顺序的变化,这也有

可能引起程序执行中出现一些不可预料的结果。保存在R15的程序地址并不是当前指令的地址。

22. ARM的异常中断响应过程:当发生异常时,除了复位异常立即中止当前指令外,处理器

尽量完成当前指令,然后脱离当前的指令处理序列去处理异常。ARM处理器对异常中断的响应过程如下:(1).将CPSR的内容保存到将要执行的异常中断对应的SPSR,以实现对处理器当前状态、中断屏蔽位以及各条件标志的保存。(2).设置当前状态寄存器CPSR中的相应位。(3).将寄存器LR_<mode>设置成异常返回地址return link,使异常处理程序执行完成后能正确返回原程序。(4).给程序计数器PC强制赋值,使程序从相应的向量地址开始执行中断处理程序。

23. 异常中断的优先级如下:(1).复位(最高优先级)(2).数据异常中止 (3).FIQ (4).IRQ (5).

预取指异常中止 (6).SWI、未定义指令。这两者是互斥的指令编码,因此不可能同时出现。

24. ARM支持一下6种数据类型:(1).8位有符号和无符号字节 (2).16位有符号和无符号半

字,它们以2字节的边界定位 (3). 32位有符号和无符号半字,它们以4字节的边界定位。ARM指令全是32位字节并且必须是以字为单位边界对齐的。Thumb指令是16位半字且必须是以2字节为单位边界对齐的。

25. 在以字节为单位寻址的存储器中有“大端”和“小端”两种方式存储字,这两种方式是

根据最高有效字节和最低有效字节相比,是存放在较高的地址还是较低的地址来划分的。大端格式:较高的有效字节存放在较低的存储器地址,较低的有效字节存放在较高的存储器地址。小端格式:较高的有效字节存放在较高的存储器地址,较低的有效字节存放在较低的存储器地址。ARM处理器能方便地配置为其中任何一种存储器方式,但它们的缺省设置为小端格式。

26. 伪操作是ARM汇编语言程序里的一些特殊指令助记符,它的作用主要是为完成汇编程

序做各种准备工作,在源程序进行汇编时由汇编程序处理,而不是在计算机运行期间由及其执行。

27. 在ARM嵌入式系统中,一般用C语言等高级语言实现对各个应用接口模块功能的程序

设计,但是在有些地方用汇编语言更方便、简单,而且有些地方则必须用汇编语言来写。例如,用来初始化电路以及用来为高级语言编写的软件做好运行前的准备的启动代码必须用汇编语言来编写。ARM嵌入式系统程序设计可以分为ARM汇编语言程序设计、嵌入式C语言程序设计以及C语言与汇编语言的混合编程。

28. 修饰符有interrupt、near、far、huge等几种。Interrupt为最重要的修饰符。它将函数修

饰为中断函数。中断函数最大的优点是返回类型和参数必须为void。

29. 嵌入式最小系统是指由保证嵌入式微处理器可靠工作所必需的基本电路组成的系统,通

常包括处理器单元、时钟单元、复位单元、供电电源和调试接口。基于ARM的嵌入式最小系统的基本组成主要包括:基于ARM核的微处理器、电源电路、复位电路、时钟电路、存储器电路、UART接口电路和JTAG调试接口

30. uC/OS-II的基本特点:源码开放,可移植性,可裁剪,抢占式内核,可扩展的多任务,

可确定的执行时间,中断管理,稳定性与可靠性。uC/OS-II中与内核功能相关的文件:任务管理,同步通信,内存管理,时间管理。

31. uC/OS-II的任务及其运行状态:对uC/OS-II来说,任务使系统的基本单元,系统以任务

为单元分配内存资源和处理时间,每个任务都有自己独立的寄存器和栈空间。任务不同于函数的是,它有一套自己的内存空间,运行时完全占用处理器资源,在任意确定时刻都处在休眠、就绪、运行、挂起以及中断服务这5种状态之一。

32. 基于uCLinux操作系统的应用开发环境一般是由目标系统硬件开发板和宿主PC机所构成。

目标硬件开发板用于运行操作系统和系统应用软件,而目标板所用到的操作系统的内核编程、电子词典应用程序的开发和调试则需要通过宿主PC机来完成

33. 交叉编译器就是在一个平台上生成可以在另一个平台上执行的代码。

34. 所谓移植,就是使一个实时操作系统能够在某个微处理器平台上或者微控制器上运行,

uCLinux移植包括3个层次的移植:微处理器结构层次移植,芯片层次移植,板级移植。移植思路:开发环境确定以后,首先,要为uCLinux设计一个BootLoader,通过BootLoader来初始化硬件,引导uCLinux运行。BootLoader的设计可以在ads中或者Linux中实现。其次,针对硬件环境和设计的BootLoader修改uCLinux内核。最后,在交叉变异环境下配置、编译、链接uCLinux,下载编译得到的映像文件到FLASH中,通过BootLoader来启动uCLinux。

35. 向量中断与非向量中断的区别和联系:向量中断就是不同的中断有不同的入口地址,非

向量中断就只有一个入口地址,进去了再判断中断标志来识别具体是哪个中断。向量中断实时性好,非向量中断简单。 向量中断------由硬件提供中断服务程序入口地址; 非向量中断------由软件件提供中断服务程序入口地址。

36. 比较ARM指令集与Thumb指令集的异同:为兼容数据总线宽度为16位的应用系统,

ARM体系结构除了支持执行效率很高的32位ARM指令集以外,同时支持16位的Thumb指令集。Thumb指令集是ARM指令集的一个子集,是针对代码密度问题而提出的,它具有16位的代码宽度。与等价的32位代码相比较,Thumb指令集在保留32位代码优势的同时,大大的节省了系统的存储空间。Thumb不是一个完整的体系结构,不能指望处理器只执行Thumb指令集而不支持ARM指令集。当处理器在执行ARM程序段时,称ARM处理器处于ARM工作状态,当处理器在执行Thumb程序段时,称ARM处理器处于Thumb工作状态(CPSR的T=0:arm,T=1:thumb)。Thumb指令

集并没有改变ARM体系底层的编程模型,只是在该模型上增加了一些限制条件,只要遵循一定的调用规则,Thumb子程序和ARM子程序就可以互相调用。与ARM指令集相比较,Thumb指令集中的数据处理指令的操作数仍然是32位,指令地址也为32位,但Thumb指令集为实现16位的指令长度,舍弃了ARM指令集的一些特性,相比之下从指令集上看thumb和arm主要有以下不同: 跳转指令。条件跳转在范围上有更多的限制,转向子程序只具有无条件转移。数据处理指令。对通用寄存器进行操作,操作结果需放入其中一个操作数寄存器,而不是第三个寄存器。单寄存器加载和存储指令。Thumb状态下,单寄存器加载和存储指令只能访问寄存器R0~R7。 批量寄存器加载和存储指令。LDM和STM指令可以将任何范围为R0~R7的寄存器子集加载或存储,PUSH和POP指令使用堆栈指针R13作为基址实现满递减堆栈,除R0~R7外,PUSH指令还可以存储链接寄存器R14,并且POP指令可以加载程序指令PC。

37. uCLinux与标准Linux的最大区别在于内存管理。标准Linux是针对有MMU的处理器

设计的。在这种处理器上,虚拟地址被送到MMU,MMU把虚拟地址映射为物理地址。通过赋予每个任务不同的虚拟—物理地址转换映射,支持不同任务之间保护。而uCLinux不使用虚拟内存管理技术,采用的是实存储器管理策略。uCLinux采用存储器的分页管理。系统在启动时,把实际存储器分页,在加载应用程序时,程序分页加载。由于是采用实存储器管理策略,一个进程在执行前,系统必须为它分配足够的连续地址空间,然后全部载入主存储器的连续空间中。

 

第二篇:嵌入式系统总结

第一章 嵌入式系统概述

1、 嵌入式系统的定义、特点

1) 定义

以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

2) 特点

a、 极其关注成本

b、 对实时性有较强要求

c、 采用嵌入式操作系统或实时操作系统

d、 软件故障造成的后果更为严重

e、 多为低功耗系统

f、 常在恶劣的环境下运行

g、 系统资源是非常少

h、 在ROM中存放所有程序的目标代码

i、 采用多类型的处理器和处理体系结构

j、 需要专用工具和方法进行设计

k、 具有软件固化特点

2、 嵌入式系统的基本构成

构成

1) 硬件

a、 嵌入式核心芯片

b、 嵌入式存储器

c、 外设和接口

2) 软件

a、 应用软件

b、 嵌入式操作系统

c、 BSP

d、 嵌入式开发工具

3、 举例说明嵌入式系统的应用及未来发展趋势

1) 应用

a、 工业控制:电力系统

b、 交通管理:车辆导航

c、 信息家电:冰箱等网络化

d、 家庭智能管理系统:防盗系统

e、 Pos网络及电子商务:自动售货机

f、 环境工程与自然:实时气象信息网

g、 机器人

2) 发展趋势(还没写完)

a、 高可靠性、高稳定性

b、 运算速度快、开发周期短

c、 强大的扩展功能和网络传输功能

第二章 嵌入式系统的设计方法

1、 嵌入式系统的设计方法有哪些,他们有何异同点

1) 设计方法有

a、 传统的嵌入式系统开发方法

b、 软硬件协同设计方法

2) 他们的异同

a、 协同设计方法采用并行和协同的设计思想,而传统设计方法是以硬件优先

的原则

b、 协同设计方法采用统一的工具描述,可合理划分系统软硬件功能、资源。

而传统设计方法不易划分、不易发现软硬件之间的接口问题

c、 协同支持多领域专家的协同开发,而传统设计方法不可能对系统做出较好

的综合优化。

第三章 嵌入式处理器

1、 嵌入式处理器的分类有哪些?各自的作用和使用领域是什么?

1) 微处理器:其作用和CPU基本相同,只保留的和嵌入式应用相关的功能,而且它

体积更小,功耗更低,适合应用在(没写完)

2) 微控制器:它把整个计算机系统的主要硬件都集成到一块芯片上,从而减少功耗和

成本,提高可靠性。

3) 数字信号处理器:能够执行数字信号处理算法和编译效率高的特性。使用在多媒体

应用领域。

4) 嵌入式片上系统:从整个系统的功能和性能出发,用软硬件结合的设计等方法把各

种硬件集成为单一芯片。

2、 简述ARM 处理器的工作状态

3、 简述使用多处理器结构需要考虑的几个问题

1) 节点间通信方式:

2) 任务调度策略

3) Cache 一致性问题

4) 系统的异构性问题

第四章 嵌入式系统的存储器

1、 解释下列概念:RAM、ROM、PROM、EPROM 、EEPROM 、FLASH.

1) RAM:是可读可写的存储器,CPU可以对RAM单元的内容随机地进行读写访问。

2) ROM:是只读存储器,由生产厂家按用户要求,直接把数据写入。写入后无法改变

其内容。

3) PROM:是一次可编程只读存储器,芯片出厂时内容全为0,用户可用专门的PROM

写入器将信息写入,但写入后是不可改变的。

4) EPROM:是可擦除可编程存储器,它是一种紫外线可擦除的存储器,当被紫外线照

射到时,数据就会被重新初始化。

5) EEPROM:是一种电可擦除存储器,为的克服EPROM的不足,开发的EEPROM,它

可以在线编程和擦除数据。

6) FLASH:flash存储器集中了EPROM 和 EEPROM 两者的优点,既具有像EPROM

的编程机制,又具有EEPROM的擦除特点。

2、 存储器的主要功能是什么?如何衡量存储器的性能?

相关推荐