嵌入式系统重点复习
- 格式:doc
- 大小:496.00 KB
- 文档页数:9
第一章嵌入式系统基础知识1.嵌入式系统基础知识计算机系统的两个发展分支通用计算机与嵌入式计算机嵌入式系统的一般定义、IEEE定义一般定义:以应用为中心、以计算机技术为基础,软硬件可裁剪,应用系统对功能、可靠性、成本、体积、功耗和应用环境有特殊要求的专用计算机系统。
是将应用程序、操作系统和计算机硬件集成在一起的系统。
(技术角度)嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。
(系统角度)广义定义:任何一个非计算机的计算系统。
IEEE (国际电气和电子工程师协会)定义:嵌入式系统是“用于控制、监视或者辅助操作的机器、设备或装置”。
嵌入式系统4个组成部分嵌入式微处理器、外围硬件设备、嵌入式操作系统、用户应用程序嵌入式系统的三个基本要素嵌入性、专用性、计算机系统嵌入式系统的软硬件特点硬件方面:稳定性、低功耗、体积受限、看门狗电路、成本低、系统资源少软件方面:实时性、可裁剪性、精简性、人机界面要求不高嵌入式系统的硬件架构以嵌入式处理器为中心,配置存储器、I/0设备、通信模块以及电源等必要的辅助接口组成。
嵌入式系统的硬件核心嵌入式微处理器嵌入式处理器的种类嵌入式微处理器、嵌入式微控制器、嵌入式DSP、嵌入式SOCS0CSOC是指在单芯片上集成数字信号处理器、微控制器、存储器、数据转换器、接口电路等电路模块,可以直接实现信号采集、转换、存储、处理等功能。
2.嵌入式系统硬件嵌入式微处理器的体系结构冯诺依曼结构:单一的程序和数据总线。
哈佛结构:独立的程序和数据总线。
RISC(精简指令集计算机)的概念及思想精华1979年,美国加州伯克利分校提出了RISC的概念,基本思想是尽量简化计算机指令功能,只保留那些功能简单,能在一个节拍内执行完成的指令,而把较复杂的功能用一段子程序实现。
RISC思想的精华就是通过简化计算机指令功能、简化计算机指令格式,使指令的平均执行周期减少,同时大量使用通用寄存器来提高计算机的工作主频,提高程序的速度。
1.1.1嵌入式系统的定义1.1.2嵌入式系统的组成1.2嵌入式处理器分类1.3.2 实时操作系统1.3.3 常见的嵌入式操作系统各个操作系统的特点1.4 解决优先级翻转问题的两种方法说出方法即可2.1 交叉编译环境的含义结合实验环境理解2.4 板级支持包概念3.1.1 ARM体系结构特点Thumb指令集与ARM指令的区别3.1.2 ARM体系结构包含哪几部分ARM的流水线结构3级流水线P62 ARM存储器结构P63 DMA3.1.3ARM处理器内核ARM7TDMI处理器内核ARM9TDMI处理器内核3.2.1 数据类型3.2.2 处理器模式3.2.3 处理器工作状态ARM与THUMB两种状态的区别3.2.4 寄存器组织通用寄存器、状态寄存器、程序计数器3.2.5 异常3.2.6 存储器格式大端与小端的区别3.3 掌握ARM基本寻址方式能读懂简单的ARM汇编指令程序段3.5 ARM9与ARM7的比较流水线方面两者区别及特点4.2.1 熟悉ARM汇编支持的伪指令4.2.3 ARM汇编语言程序的基本结构注意ARM汇编程序关键字的含义4.3 基于ARM的硬件启动程序包含那几部分工作?4.4 基于ARM的C语言与汇编语言混合编程掌握寄存器的使用规则、参数的传递规则4.4.3 C语言调用汇编程序方法注意参数的传递(有可能出程序解析题)5.1 S3C2410简介其特点,(填空题)5.1.1 S3C2410A特点掌握其特点,知识点较多体系结构、中断控制器5.2.1 S3C2410A的I/O口工作原理多少的口,分了几组掌握如何对I/O的寄存器编程例如:G口GPGCON、GPGGDAT的相应位如何设置。
(可能会有些编程题)5.2.2 I/O口编程实例掌握P231的例子。
5.3.1 ARM中断原理5.3.2 S3C2410A的中断控制器多少中断源、中断请求信号、优先级逻辑、中断的类别。
5.4 DMA的工作原理理解DMA工作原理,能说明。
第一章嵌入式系统导论一、嵌入式系统架构:(1)嵌入式系统的组成:嵌入式系统由硬件和软件两大部分组成,用于实现对其他设备的控制、监视或管理等功能。
前者是整个系统的物理基础,它提供软件运行平台和通信接口;后者实际控制系统的运行。
1、硬件:嵌入式微处理器、外围电路、外围硬件设备。
2、软件:嵌入式操作系统、用户的应用程序。
(2)嵌入式系统的软/硬件框架硬件:嵌入式微处理器、外围电路、外围硬件设备。
软件:嵌入式操作系统、用户的应用程序。
二、嵌入式定义:是以现代计算机技术为基础,以应用为中心,可以根据系统或用户需求(功能、可靠性、成本、体积、功耗、环境等),灵活裁剪软硬件模块的专用计算机系统;1、IEEE(国际电气和电子工程师协会)对嵌入式系统的定义:“用于控制、监视或者辅助操作机器和设备的装置”。
2、广义定义:任何一个非计算机的计算系统3、通俗的说法:1、把一个计算机嵌入到其他系统中构成的一个系统2、是一个应用3、主体是其他内容,计算机作为一个设备出现三、嵌入式系统的主要特点:(1)面向应用,(2)软硬件可剪裁。
(3)专用计算机控制系统。
四、嵌入式系统与单片机、PC相比的优势(1)性能方面:采用32位RISC结构微处理器,主频从30MHz到624MHz以上,处理能力大大超出单片机系统,接近PC机的水平,但体积更小,能够真正地“嵌入”到设备中;实性性方面:嵌入式机控制器内嵌实时操作系统(RTOS),能够完全保证控制系统的强实时性;(2)人机交互方面:嵌入式控制器可支持大屏幕的液晶显示器,提供功能强大的图形用户界面;输入方法多种多样;(3)系统升级方面:嵌入式控制器可为控制系统专门设计,其功能专一,成本较低,而且开放的用户程序接口(API)保证了系统能够快速升级和更新。
嵌入式系统的应用家用方面:数字电视、信息家电、智能玩具、手持通讯、存储设备的核心。
信息家电技术特点:1、处理器发展趋向低成本、高整合性与低耗能。
第一章 嵌入式系统概述1、嵌入式系统的定义嵌入式计算系统,简称为嵌入式系统。
究竟什么是嵌入式系统呢?● 《嵌入式计算系统设计原理》定义:“不严格地说:它是任意包含一个可编程计算机的设备,但是这个设备不是作为通用计算机而设计的。
因此,一台个人电脑并不能称之为嵌入式计算系统,尽管个人电脑经常被用于搭建嵌入式计算系统。
”● IEEE (国际电气和电子工程师协会)定义:“Device used to control, monitor, or assist the operation of equipment, machinery orplants ”。
● 微机学会定义:“嵌入式系统是以嵌入式应用为目的的计算机系统。
”并分为系统级、板级、片级。
● 目前被大多数人接受的一般性定义是:“嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗等严格要求的专用计算机系统。
”2、嵌入式系统的组成结构嵌入式系统的核心计算系统可以抽象出一个典型的组成模型:硬件层、中间层、软件层和功能层。
(1).硬件层:硬件层由嵌入式微处理器、存储系统、通信模块、人机接口、其它I/O 接口(A/D 、D/A 、通用I/O 等)以及电源等组成。
嵌入式系统的硬件层以嵌入式微处理器为核心。
(2).中间层:硬件层与软件层之间为中间层,它把系统软件与底层硬件部分隔离,使得系统的底层设备驱动程序与硬件无关。
中间层一般包括:硬件抽象层(HardwareAbstract Layer ,HAL )、 板级支持包(Board Support Package ,BSP )图1、嵌入式系统的组成结构(3).软件层:软件层由实时操作系统(Real Time Operating System ,RTOS )、文件系统、图形用户接口(Graphical User Interfaces , GUI )、网络系统及通用组件模块组成。
计算机三级考试《嵌入式系统开发技术》复习要点以下是对文章进行润色改写的结果:1.嵌入式系统的定义⑴定义:嵌入式系统是以应用为中心,以计算机技术为基础的专用计算机系统。
它具有软硬件可裁剪的特点,能够满足应用系统对功能、可靠性、成本、体积和功耗等方面的严格要求。
22)IP核模块有行为、结构和物理三个不同层面的设计。
根据描述功能行为的方式不同,可以将其分为软核、固核和硬核三类。
2.嵌入式系统的组成(I)硬件层:包括嵌入式微处理器、存储器、通用设备接口和I/O接口等。
其中,嵌入式核心模块由微处理器、电源电路、时钟电路和存储器CaChe组成。
CaChe位于主存和嵌入式微处理器内核之间,用于存放最近使用的程序代码和数据,以减小存储器访问瓶颈,提高处理速度。
(2)中间层(也称为硬件抽象层HA1.或板级支持包BSP):它将系统上层软件和底层硬件分离开来,使上层软件开发人员无需关注底层硬件的具体情况,只需根据BSP层提供的接口进行开发。
BSP具有硬件相关性和操作系统相关性两个特点。
设计完整的BSP需要完成硬件初始化和设备驱动程序设计两部分工作。
(3)系统软件层:由RTOS,文件系统、GUI、网络系统及通用组件模块组成。
RTOS是嵌入式应用软件的基础和开发平台。
(4)应用软件层:由基于实时系统开发的应用程序组成。
3.实时系统(I)定义:实时系统是能在指定或确定的时间内完成系统功能,并对外部或内部、同步或异步事件做出响应的系统。
(2)区别:通用系统主要追求平均响应时间和用户使用方便,而实时系统主要考虑在最坏情况下的系统行为。
(3)特点:时间约束性、可预测性、可靠性、与外部环境的交互性。
(4)硬实时(强实时):应用的时间需求必须得到完全满足,否则会造成重大安全事故、生命财产损失和生态破坏,如航天、军事系统。
(6)任务的约束包括:时间约束、资源约束、执行顺序约束和性能约束。
4、实时系统的调度(I)调度:给定一组实时任务和系统资源,确定每个任务何时何地执行的整个过程。
嵌入式系统复习重点一、嵌入式系统概论(第一章)1、嵌入式系统的定义P2从技术的角度定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
从系统的角度定义:嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。
术语嵌入式反映了这些系统通常是更大系统中的一个完整的部分,称为嵌入的系统。
嵌入的系统中可以共存多个嵌入式系统。
(EG)可以将嵌入式系统定义成“嵌入到对象体系中的专用计算机应用系统”。
2、嵌入式系统三大基本要素P2嵌入性、专用性、内含计算机3、嵌入式系统的分类P5(中央处理器,或简称为处理器,英文缩写为CPU,功能:解译计算机指令以及处理计算机软件中的数据)嵌入式处理器可以分为以下几大类:▪嵌入式微处理器—EMPU;▪嵌入式微控制器—MCU;▪嵌入式DSP处理器—DSP;▪嵌入式片上系统—SOC;二、嵌入式系统硬件(第一章、第二章和第四章)1、嵌入式处理器P32、存储器片内和片外的读写操作P1033、AHB外设EMC:外部存储器控制P152VIC:向量中断控制器P1884、VPB外设P91定义、功能、寄存器设置三、嵌入式处理器1、处理器的分类◆嵌入式微处理器(Embedded Microprocessor Unit, EMPU)◆嵌入式微控制器(Microcontroller Unit, MCU)◆嵌入式DSP处理器(Embedded Digtal Signal Processor, EDSP)◆嵌入式片上系统(System On Chip)存储器1. 嵌入式微处理器从功能上来说可以分为哪两种?它们的含义分别是什么?2. 嵌入式微处理器按指令集不同可以分为哪两大类?两者的主要区别是什么?四、嵌入式处理器1、微处理器的体系架构◆算术格式◆功能单元◆3级流水线P20◆扩充的指令集2、以ARM7TDMI为例,说明ARM系列处理器的体系结构版本支持哪些功能?P19◆ARM7TDMI◆三级流水线包括哪三个步骤?P20ARM状态下:◆存储器访问的格式p48小端模式:LP系列ARM指定采用小端模式大端模式◆处理器的状态有哪两种?分别有什么特点?P24(ARM7TDMI处理器内核包含2套指令系统,分别为ARM指令集和Thumb指令集,并且各自对应1种处理器的状态:)▪ARM状态:32位,处理器执行字方式的ARM指令,处理器默认为此状态;▪Thumb状态:16位,处理器执行半字方式的Thumb指令。
第一章1、国内对于嵌入式系统的定义是什么?p1答:嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁减,适用于应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
2、什么是实时系统?根据实时性,嵌入式操作系统有哪些类型? 答:所谓实时系统是指在这种系统中,一个优先级高的任务能够得到立即的、没有延迟的服务,不需要等待任何其他优先级低的任务,一旦它得到CPU 的使用权,将一直执行直到工作结束或者出现更高级别的进程。
嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件。
1)、传统的经典PTOS ,包括VxWorks 操作系统,以及其Tornado 开发平台;2)、嵌入式Linux 操作系统;3)、Windows CE 嵌入式操作系统;4)、uC/OS-II 实时操作系统。
注:实时系统的分类(1)硬实时系统:确保系统中的关键任务在确定的时间得到响应,不能有失败的情况,否则会出现严重后果;(2)软实时系统:设计的时候是有响应时间要求的,但是偶尔某些任务的响应时间超过这个限制也不会有严重的后果;(3)非实时系统:无响应时间的要求。
3、选择嵌入式操作系统原则有哪些?答:一般而言,在选择嵌入式操作系统时,可以遵循以下6个原则:市场进入时间、可移植性、可利用资源、系统定制能力、成本、中文内核支持。
4、列举一些常见的嵌入式操作系统。
答:常见的嵌入式系统有:Linux 、uClinux 、WinCE 、PalmOS 、Symbian 、eCos 、uCOS-II 、VxWorks 、pSOS 、Nucleus 、ThreadX 、Rtems 、QNX 、INTEGRITY 、OSE 、C Executive 。
5、嵌入式系统有什么特点?p11答:专用于特定任务、多类型处理器和处理器系统支持、极其关注成本、是实时系统、可裁剪性好、可靠性高、大多有功耗约束。
6、说说嵌入式系统的发展趋势。
p12答:(1)、嵌入式开发是一项系统工程,因此要求嵌入式系统产商不仅要提供嵌入式软硬件系统本身,同时还需要提供强大的硬件开发工具和软件包支持;(2)、网络化、信息化的要求随着因特网技术的成熟,带宽的提高而日益提高,使得单一功能的设备不再单一,结构更加复杂,这就要求芯片设计厂商在芯片上集成更多的功能;(3)、网络互联成为必然趋势;(4)、精简系统内核、算法,降低功耗和软硬件成本;(5)、提供友好的多媒体人机界面。
嵌入式系统复习资料1、嵌入式系统的概念:从技术的角度定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
从系统的角度定义:嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。
术语嵌入式反映了这些系统通常是更大系统中的一个完整的部分,称为嵌入的系统。
嵌入的系统中可以共存多个嵌入式系统。
2、嵌入式处理器分类:嵌入式微处理器;嵌入式微控制器;嵌入式DSP处理器;嵌入式片上系统(SOC)3、常见的嵌入式操作系统:—嵌入式Linux —Win CE —VxWorks —OSE —Nucleus —Android4、四大处理器内核厂家:MIPS处理器内核,ARM处理器内核,PowerPC,68K/COLDFIRE。
5、ARM体系结构的技术特征:(1)单周期操作。
(2)采用加载/存储指令结构。
(3)固定的32位长度指令。
(4)3地址指令格式。
(5)指令流水线技术。
6、异常返回执行的操作:(1)恢复原来被保护的用户寄存器。
(2)将SPSR_mode寄存器值复制到CPSR中,使得CPSR从相应的SPSR中恢复,以恢复被中断的程序工作状态。
(3)根据异常类型将PC值恢复成断点地址,以执行用户原来运行着的程序。
(4)清除CPSR中的中断禁止标志I和F,开放外部中断和快速中断。
7、ARM数据类型:ARM微处理器中支持字节(8位)、半字(16位)、字(32位)3种数据类型,其中字需要4字节对齐(地址的低两位为0)、半字需要2字节对齐(地址的最低位为0)。
每一种又支持有符号数和无符号数,因此认为共有6种数据类型。
8、ARM流水线的好处:可以减小有效关键路径,从而提高系统的时钟速度或采样速度,或者可以在同样的速度下降低功耗。
9、寄存器寻址和指令系统:1、立即寻址。
ADC R0 ,R0 ,# 1000 ;R0←R0 + 1000 + C2、寄存器寻址。
第一章1、嵌入式系统的应用范围:军事国防、消费电子、信息家电、网络通信、工业控制。
2、嵌入式系统定义:嵌入式系统是以应用为中心,以计算机技术为基础,软件与硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
(嵌入式的三要素:嵌入型、专用性与计算机系统)。
3、嵌入式系统的特点:1)专用性强;2)实时约束;3)RTOS;4)高可靠性;5)低功耗;6)专用的开发工具和开发环境;7)系统精简;4、嵌入式系统的组成:(1)处理器:MCU、MPU、DSP、SOC;(2)外围接口及设备:存储器、通信接口、I/O接口、输入输出设备、电源等;(3)嵌入式操作系统:windows CE、UCLinux、Vxworks、UC/OS;(4)应用软件:Bootloader5、嵌入式系统的硬件:嵌入式微处理器(MCU、MPU、DSP、SOC),外围电路,外部设备;嵌入式系统的软件:无操作系统(NOSES),小型操作系统软件(SOSES),大型操作系统软件(LOSES)注:ARM处理器三大部件:ALU、控制器、寄存器。
6、嵌入式处理器特点:(1)实时多任务;(2)结构可扩展;(3)很强的存储区保护功能;(4)低功耗;7、DSP处理器两种工作方式:(1)经过单片机的DSP可单独构成处理器;(2)作为协处理器,具有单片机功能和数字处理功能;第二章1、IP核分类:软核、固核、硬核;2、ARM处理器系列:(1)ARM7系列(三级流水,thumb指令集,ARM7TDMI);(2)ARM9系列(DSP处理能力,ARM920T)(3)ARM/OE(增强DSP)(4)SecurCone 系列(提供解密安全方案);(5)StrongARM系列(Zntle产权);(6)XScale系列(Intel产权);(7)Cortex系列(A:性能密集型;R:要求实时性;M:要求低成本)3、ARM系列的变量后缀:(1)T:thumb指令集;(2)D:JTAG调试器;(3)快速乘法器;(4)E:增强DSP指令;(5)J:Jave加速器4、ARM{X}{Y}{Z}{T}{D}{M}{I}{E}{J}{F}{S} :x—系列号,y—内部存储管理和保护单元,Z—含有高速缓存。
1、嵌入式系统的定义:嵌入式系统是以应用为中心,以计算机技术为基础,软件、硬件可剪裁,适应应用系统对功能、可靠性、成本、体积和功耗严格要求的专用计算机系统。
2、OS 操作系统RTOS实时操作系统3、嵌入式系统具有哪些特点:(1)专用、软硬件可剪裁配置。
(2)低功耗、高可靠性、高稳定性。
(3)软件代码短小精悍。
(4)代码可固化(5)实时性(6)弱交互性(7)嵌入式系统软件开发通常需要专门的开发工具和开发环境。
(8)要求开发、设计人员有较高的技能。
4、嵌入式系统的组成结构:(1)硬件层,包括嵌入式微处理器、存储器(SDRAM、ROM、Flash等)、通用设备接口和I/O接口(A/D、D/A、I/O等)。
(2)中间层,将系统上层软件与底层硬件分开,使系统的底层驱动程序与硬件无关。
(3)软件层,由实时多任务操作系统(RTOS)、文件系统、图形用户接口(GUI)、网络系统及通用组件模块组成。
RTOS是嵌入式应用软件的基础和开发平台。
{嵌入式操作系统(EOS)负责嵌入系统的全部软硬件资源的分配、任务调度,控制、协调并发活动。
嵌入式文件系统主要提供文件存储、检索、更新等功能。
图形用户接口(GUI)极大的方便了非专业用户的使用,人们不再需要死记硬背大量的命令,取而代之的是可用通过窗口、菜单、按键等方式来方便的进行操作。
}(4)功能层,用来实现对被控对象的控制功能。
5、嵌入式系统硬件初始化:可以分为3个主要环节,按照自底向上、从硬件到软件的次序依次为:片级初始化、板级初始化、系统初始化。
1、目前嵌入式处理器以32位为主,其中以ARM处理器应用最为广泛。
2、采用RISC架构的ARM微处理器一般具有如下特点(1)体积小、低功耗、低成本、高性能。
(2)支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8/16位器件。
(3)大量使用寄存器,指令执行速度更快。
(4)大多数数据操作都在寄存器中完成。
(5)寻址方式灵活简单,执行效率高。
《嵌入式系统》()1、某并行总线接口的FLASH存储器芯片,其存储容量为128K ×16位,该芯片的地址线数目为17 ,数据线数目为16 。
2、标准80C51单片机的晶振频率为f osc=24MHz,则一个机器周期等于0.5 µS。
3、采用Keil C51语言编程,定义一int变量,并赋初值,int v1=-2000; 则v1在内存中从低地址到高地址依次存储的是内容是7D0H4、某嵌入式计算机字长16位,它的内存2MB,若按字编址,那么它的寻址范围是0~ 64K 。
5、标准80C51单片机的p0 口是一个8位漏极型开路型双向I/O端口。
6、80C51的串行数据缓冲器SBUF用于全双工方式进行通信。
7、80C51单片机的定时器T0用作定时方式时特征是C/T=0 。
8、欲将P1口的低4位保留不变, 高4位取反,可用指令XRL P1 #F0H 。
9、用定时器T1方式2计数,要求每计满50次,向CPU发出中断请求,TH1的初始值应设为00H 。
10、80C51单片机共有5 个中断入口,在同一级别里,5个中断源同时发出中断请求时,程序计数器PC的内容变为0003H 。
11、80C51单片机RI/TI 中断标志必须由软件清012、一个异步串口传输过程:设每个字符对应一个起始位、8个数据位、1个停止位,如果波特率为9600,那么每秒钟能传输的字符数为 960 个。
13、嵌入式实时操作系统中任务的4种状态分别是(1)就绪;(2)运行;(3)等待;(4)挂起;14、在嵌入式计算机系统中,下列部件都能够存储信息:①SRAM、②CPU内的通用寄存器、③NOR Flash EEPROM 、④串行EEPROM。
按照嵌入式处理器存取速度排列,由快至慢依次为 1、234 。
其中,内存包括 12 ;属于外存的是 34 。
15、80C51在物理结构上有 4 个存储空间,但在逻辑上,即从用户使用的角度上,80C51有 3 个存储空间。
嵌入式系统复习重点一、题型填空题 2`×10单选题 2`×5名词解释 2`×5简答题 5`×6设计题 15`×2二、考点第一章嵌入式系统概述1、嵌入式系统从技术角度的定义及其特点(见PPT第一章)定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
特点:嵌入性、内含计算机、专用性。
2、嵌入式系统的未来P3产品市场窗口现在预计翻番的周期狂热到6~9个月;全球重新定义市场的机会和膨胀的应用空间;互联现在是一个需求而不是辅助性的,包括用有线和刚刚显露头角的无线技术;基于电子的产品更复杂化;互联嵌入式系统产生新的依赖网络基础设施的应用;微处理器的处理能力按莫尔定律(Moore’s L aw)预计的速度在增加。
该定律认为集成电路和晶体管个数每18个月翻一番。
3、什么是嵌入式处理器及嵌入式系统的分类P5嵌入式处理器:为完成特殊应用而设计的特殊目的的处理器。
嵌入式系统可以分为以下几大类:嵌入式微处理器EMPU;嵌入式微控制器MCU;嵌入式DSP处理器;嵌入式片上系统SOC。
4、嵌入式操作系统相关的基本概念P7-10(可能考名词解释)前后台系统:对基于芯片的开发来说,应用程序一般是一个无限的循环,可称为前后台系统或超循环系统。
循环中调用相应的函数完成相应的操作,这部分可以看成后台行为,后台也可以叫做任务级,这种系统在处理的及时性上比实际可以做到的要差。
中断服务程序处理异步事件,这部分可以看成前台行为,前台也叫中断级,时间相关性很强的关键操作一定是靠中断服务程序来保证的。
操作系统:操作系统是计算机中最基本的程序。
操作系统负责计算机系统中全部软硬资源的分配与回收、控制与协调等并发的活动;操作系统提供用户接口,使用户获得良好的工作环境;操作系统为用户扩展新的系统功能提供软件平台。
实时操作系统:实时操作系统是一段在嵌入式系统启动后首先执行的背景程序,用户的应用程序是运行于RTOS之上的各个任务,RTOS根据各个任务的要求,进行资源(包括存储器、外设等)管理、消息管理、任务调度、异常处理等工作。
第1章嵌入式系统导论1.嵌入式系统的概念:是以现代计算机技术为基础,以应用为中心,可以根据系统或用户需求(功能、可靠性、成本、体积、功耗、环境等),灵活裁剪软硬件模块的专用计算机系统。
2.嵌入式系统的分类及分类依据:嵌入式系统由硬件和软件两大部分组成,用于实现对其他设备的控制、监视或管理等功能。
前者是整个系统的物理基础,它提供软件运行平台和通信接口;后者实际控制系统的运行。
硬件:嵌入式微处理器、外围电路、外围硬件设备。
软件:BootLoader 、嵌入式操作系统、用户的应用程序等。
3.几种典型嵌入式操作系统:(1) uC/OS II(2)uCLinux(3)Windows CE(4)嵌入式Linux 等4.任务调度:任务的调度有三种方式:可抢占式、不可抢占式和时间片轮转。
【不可抢占式调度是指一个任务一旦获得CPU就独占其运行,除非由于某种原因使它决定放弃CPU的使用权;可抢占式调度是基于任务优先级的,当前正在运行的任务可以随时让位给优先级更高的处于就绪态的其他任务;当两个或两个以上任务有同样的优先级时,不同任务轮转使用CPU,直到系统分配的CPU时间片用完,这就是时间片轮转调度。
】目前,大多数嵌入式操作系统对不同优先级的任务采用基于优先级的可抢占式调度法,对相同优先级的任务则采用时间片轮转调度法。
5.针对有内存管理单元(MMU,Memory Management Unit)的处理器而设计的一些桌面操作系统,如Windows、Linux,使用了虚拟存储器的概念。
6.计算机的发展:冯诺依曼架构:将指令和数据存放在同一存储空间中,统一编址,指令和数据通过同一总线访问。
哈佛结构(冯诺依曼架构的扩展):主要特点是程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编制、独立访问。
CortexM37.Cortex系列按嵌入式系统的典型应用分类:① Cortex-A:高性能(High Performance),【针对日益增长的运行Linux、WinCE、Symbian等操作系统在内的消费者娱乐和无线产品设计与实现。
嵌入式系统第一章绪论1.什么是嵌入式系统?嵌入式系统的特点是什么?嵌入式系统的定义:嵌入式系统是以应用为中心、以计算机技术为基础,并且软硬件可裁剪的,能满足应用系统对功能、可靠性、成本、体积、功耗等指标的严格要求的专用计算机系统。
它可以实现对其他设备的控制、监控或管理等功能。
嵌入式系统的特点:形式多样、面向特定应用;处理器和处理器体系结构类型多;关注成本实时性和可靠性的要求适应多种处理器、可剪裁、轻量型、实时可靠、可固化的嵌入式操作系统2.请说出嵌入式系统与其它商用计算机系统的区别。
3.嵌入式系统的关键技术有哪些?1、嵌入式处理器2、微内核结构3、任务调度4、硬实时和软实时5、内存管理6、内核加载方式4.请说明嵌入式系统技术发展及开发应用的趋势。
应用:小型化、经济化、低功耗、可靠性、智能化、高速硬件:集成化操作系统:可靠性、实时性、采用组件化技件->可配置性,可裁剪性,可移植性开发环境:集成化、智能化、图形化、5.你知道嵌入式系统在我们日常生活中哪些设备中应用?说明其采用的处理器是什么?采用的哪一个嵌入式操作系统?PDA:PXA25X——Palm OS/WINCE路由器:ARM9——uclinux数码相机:ARM9+DSP5000——uclinux波导手机:ARM9——DOEASY OS小米:苹果:6.开发嵌入式系统的计算机语言主要有哪几种?分别用在什么场合?C语言——开发操作系统,和硬件相关的一些应用程序C++语言——开发一些大型的应用程序汇编语言——开发底层的硬件接口以及一些算法的基本模块JA V A语言——JSP开发网页,J2EE开发B/S,J2ME开发移动设备的服务程序VHDL语言——开发CPLD/FPGA芯片、其RTL模型对于ASIC也很有用C与C++具有可移植性,可以在主机上调试算法程序7.在项目开发中,采用嵌入式系统和专用集成电路进行设计各有什么优缺点?第二章嵌入式系统设计方法1. 需求分析与系统分析法2.软硬件协同设计方法3.嵌入式硬件开发方法4.嵌入式软件开发方法5.构件式开发方法6.由上而下研究方法7.软件调试与软件测试方法8.嵌入式系统仿真开发方法思考与练习1.请说出嵌入式系统设计的主要方法及设计流程。
题型:填空题40分(2*20) 简答题20分(每题5*4) 指令测试题 共20分4+4+8+4=20 综合题20分(10+5+5)复习提纲:第一章:1、 嵌入式的定义嵌入式系统的定义:嵌入式系 统是以应用为中心,以计算机技术为基础,软硬件可裁剪, 成本、体积和功耗等严格要求的专用计算机系统。
2、 嵌入式的组成结构 嵌入式系统的组成结构 :硬件层、中间层、 软件层和功能层。
3、 嵌入式系统的分类按照嵌入式软件结构分类:嵌入式系统可分为循环轮询系统、前后台系统和多任务系统。
4、与通用PC的区别答:嵌入式系统一般是专用系统,而PC是通用计算平台嵌入式系统的资源比PC少得多嵌入式系统软件故障带来的后果比PC机大得多嵌入式系统一般采用实时操作系统嵌入式系统大都有成本、功耗的要求嵌入式系统得到多种微处理体系的支持嵌入式系统需要专用的开发工具什么是多任务系统?多任务系统的特点有哪些?答:多任务系统的软件由多个任务、多个中断服务程序以及嵌入式操作系统组成。
特点:(1)每个任务都是一个无限循环的程序,等待特定的输入,从而执行相应的处理。
(2)这种程序模型将系统分成相对简单、相互合作的模块。
(3)不同的任务共享同一个CPU和其它硬件,嵌入式操作系统对这些共享资源进行管理。
(4)多个顺序执行的任务在宏观上看并行执行,每个任务都运行在自己独立的CPU上。
第二章2、指令集(分成ARM和THUMB)ARM 标准32位指令集THUMB 16位压缩形式,与多数CISC相比,编码密度更高,在流水线中进行动态压缩特点:①所有指令长度为32位.②多数指令在单周期内执行./在单时钟周期内执行Shift & ALU 操作③每条指令都有执行条件(load/store 结构,数据处理指令仅作用在寄存器上,三个操作数格式,合并ALU和移位器,用于高速的位操作,特殊的记忆接入指令,强大的自动检索地址模式,32 位和8位的数据类型,v4.中有16位的数据类型,灵活的多个寄存器load和store指令)④通过一个压缩器扩展指令3、ARM型号的识别,有几种变种ARM体系结构的版本1)Thumb指令集(T变种)2)长乘法指令(M变种)3)增强型DSP指令(E变种)4)Java加速器Jazelle(J变种)5)ARM媒体功能扩展(SIMD变种)4、寄存器组,特别是几种特殊的寄存器,R13,R14,R15…..还有程序状态寄存器各个bit的含义。
嵌入式系统复习知识点1、嵌入式系统的定义,组成,特点定义:①嵌入式系统是面向用户,面向产品,面向应用的,它必须与具体应用相结合才会具有生命力、才更具有优势。
②嵌入式系统是先进的计算机技术、半导体技术和电子技术及各个行业的具体应用相结合的产物。
③嵌入式系统必须根据应用需求能够对软件进行裁剪,满足应用系统的功能、可靠性、成本、体积等要求。
组成:(1)硬件层①嵌入式微处理器②存储器③通用设备接口和I/O接口(2)中间层①嵌入式系统硬件初始化②硬件相关的设备驱动程序(3)系统软件层①嵌入式操作系统②文件系统③图形用户接口(GUI)(4)应用软件层特点:系统内核小、专用性强、系统精简、高实时性的操作系统软件是嵌入式系统软件的基本要求、嵌入式软件开发要想走向标准化,就必须使用多任务的操作系统、嵌入式系统开发需要专门的开发工具和环境2、嵌入式处理器的分类及每一类的特点(1)嵌入式微控制器(MicroController Unit ,MCU)特点:单片化,体积小,从而使功耗和成本下降,可靠性提高,微控制器的偏上外设资源一般比较丰富,适合控制(2)嵌入式DSP处理器(Digital Signal Processor,DSP)特点:专门用于信号处理方面的处理器,其在系统结构和指令算法方面进行了特殊的设计,具有很高的编译效率和指令执行速度(3)嵌入式微处理器(MicroProcessor Unit,MPU)特点:体积小,重量轻,成本低,可靠性提高(4)嵌入式片上系统(System On Chip,SOC)特点:系统特别简洁,减小了系统的体积和功耗,提高了系统的可靠性和设计生产效率4、冯诺依曼体系,哈弗体系结构、CISC、RISC、大端、小端定义,特性(1)风诺依曼体系结构是一种将程序指令存储器和数据存储器合并在一起的存储器结构。
特性:在风诺依曼体系结构中,pc只负责提供程序执行所需要的指令或数据,而不决定程序流程,要控制程序流程必须修改指令(2)哈弗体系结构事故一种将程序指令存储和数据存储分开的体系结构,是一种并行体系结构。
题型:填空题40分(2*20) 简答题20分(每题5*4) 指令测试题 共20分4+4+8+4=20 综合题20分(10+5+5)复习提纲:第一章:1、 嵌入式的定义嵌入式系统的定义:嵌入式系 统是以应用为中心,以计算机技术为基础,软硬件可裁剪, 成本、体积和功耗等严格要求的专用计算机系统。
2、 嵌入式的组成结构 嵌入式系统的组成结构 :硬件层、中间层、 软件层和功能层。
3、 嵌入式系统的分类按照嵌入式软件结构分类:嵌入式系统可分为循环轮询系统、前后台系统和多任务系统。
4、与通用PC的区别答:嵌入式系统一般是专用系统,而PC是通用计算平台嵌入式系统的资源比PC少得多嵌入式系统软件故障带来的后果比PC机大得多嵌入式系统一般采用实时操作系统嵌入式系统大都有成本、功耗的要求嵌入式系统得到多种微处理体系的支持嵌入式系统需要专用的开发工具什么是多任务系统?多任务系统的特点有哪些?答:多任务系统的软件由多个任务、多个中断服务程序以及嵌入式操作系统组成。
特点:(1)每个任务都是一个无限循环的程序,等待特定的输入,从而执行相应的处理。
(2)这种程序模型将系统分成相对简单、相互合作的模块。
(3)不同的任务共享同一个CPU和其它硬件,嵌入式操作系统对这些共享资源进行管理。
(4)多个顺序执行的任务在宏观上看并行执行,每个任务都运行在自己独立的CPU上。
第二章2、指令集(分成ARM和THUMB)ARM 标准32位指令集THUMB 16位压缩形式,与多数CISC相比,编码密度更高,在流水线中进行动态压缩特点:①所有指令长度为32位.②多数指令在单周期内执行./在单时钟周期内执行Shift & ALU 操作③每条指令都有执行条件(load/store 结构,数据处理指令仅作用在寄存器上,三个操作数格式,合并ALU和移位器,用于高速的位操作,特殊的记忆接入指令,强大的自动检索地址模式,32 位和8位的数据类型,v4.中有16位的数据类型,灵活的多个寄存器load和store指令)④通过一个压缩器扩展指令3、ARM型号的识别,有几种变种ARM体系结构的版本1)Thumb指令集(T变种)2)长乘法指令(M变种)3)增强型DSP指令(E变种)4)Java加速器Jazelle(J变种)5)ARM媒体功能扩展(SIMD变种)4、寄存器组,特别是几种特殊的寄存器,R13,R14,R15…..还有程序状态寄存器各个bit的含义。
寄存器r13和r14的用途比较特殊:1.寄存器R13常作为堆栈指针(SP),被初始化成指向异常模式分配的堆栈。
处理异常时,在程序入口处将异常处理程序用到的其他寄存器的值压入堆栈,返回时重新将这些值加载到寄存器中。
这样就可以保证出现异常时不导致程序状态不可靠。
2.R14通常用作子程序链接寄存器(LR),当执行分支指令BL时,r15的内容拷贝到r14中,从而成为子程序调用后的返回地址。
采用这种方式可以类似地用来处理异常的返回。
程序计数器r15。
寄存器r15通常备用作程序计数器PC。
在ARM状态下,由于ARM 指令始终是字对准的,因此PC的值保存在位[31:2],而位[1:0]位0;在Thumb状态下,由于Thumb指令时半字对准的,因此PC的值保存在位[31:1],而位[0]位0。
P39①读程序计数器PC:用指令读出的r15的值为指令地址加8个字节。
读PC主要用于快速对临近的指令和数据进行位置无关的寻址。
②写程序计数器PC:写r15的结果是将写到r15的值作为指令地址,并根据这个地址发生转移。
当前程序状态寄存器CPSR。
当前程序状态寄存器(CPSR)在用户级编程时用于存储条件码。
例如,使用CPSR的相应位来记录比较操作的结果和控制转移的条件。
此外,CPSR 还包含了中断禁止位、当前处理器模式以及其他的一些状态和控制信息。
同时,为了在异常出现时能够保存CPSR的状态,每种异常模式都设置了一个程序状态保存寄存器(SPSR)。
3、指令集,ARM有特色的指令,比如条件执行,块传送指令,ARM和THUMB的切换(一些常见的编程格式错误,详见PPT),区别ARM指令集条件执行是指只有在当前程序状态寄存器CPSR中的条件码标志满足指定的条件时,带条件码的指令才能执行。
条件转移是绝大多数指令集的标准特征,但ARM指令集将条件执行扩展到所有指令,包括监控调用和协处理器指令。
条件域占据32个指令域的高岑位,如图2.17所示。
条件域共有16个值,即16个条件码,如表2-5所示,其中AL阻lways涤件是缺省条件。
1)LDR、STR2)LDM、STM P52句法:op{cond}mode Rn{!},reglist{^}符号说明:mode:包括IA每次传送后地址加1 IB一每次传送前地址加1DA每次传送后地址减1 DB——每次传送前地址减1FD--满递减堆栈ED--空递减堆栈FA——满递增堆栈EA空递增堆栈Reglist:加载或存储的寄存器列表,包含在括号中,也可以包含寄存器的范围,必须用逗号隔开。
^:可选后缀。
不允许在用户模式或系统模式下使用。
用途包括以下两点:若op是LDM,且reglist中包含R15,则进行多寄存器传送时,也将SPSR拷贝到CPSR;用于从异常返回,仅在异常模式下使用。
数据传送的是用户模式的寄存器,而不是当前模式的寄存器。
指令说明:指令用于加载或存储多个寄存器,可传送R0~R15的任何组合。
指令忽略地址的位[1:0]。
到R15的加载将引起处理器转移到加载地址处的指令。
如果Rn包含在寄存器列表中,且用“!”表明要写回,那么若op是STM,且Rn是寄存器列表中数字最小的寄存器,则Rn的初值被保存;否则,Rn的加载和存储值不可预知。
例:LDMIA R8,{R0,R2,R9}STMDB R1!,{R3-R6,R11,R12}STMFD R13!,{R0,R4-R7,LR} ;寄存器进栈LDMFD R13!,{R0,R4-R7,PC} ;寄存器出栈,从子程序返回STMIA R5!,{R5,R4,R9} ;错误,R5的值不可预知LDMDA R2,{} ;错误,列表中至少要有一个寄存器ARM分支指令P57-62Thumb指令集P62 Thumb状态切换P63CPSR的T位决定ARM处理器执行的是ARM指令流还是Thumb指令流。
若T置1,则认为是Thumb指令流;若T置巳则认为是ARM指令流。
⑴进入Thumb状态。
系统复位后,处理器处于ARM状态。
执行BX指令,将转移地址寄存器的位[0]置1,其他位放入PC,即可进入Thumb状态。
由于BX指令引起转移,因此流水线被刷新,已在流水线上的指令将被丢弃。
⑵退出Thumb状态。
退出Thumb状态的方法与进入Thumb状态的方法相对应,使用BX指令,将转移地址寄存器的位[1:0]置为b00,即可退出Thumb状态。
如果发生异常,无论处理器当前的工作状态如何,异常都会使处理器返回到ARM状态。
Thumb指令集与ARM指令集的区别⑴Thumb指令除了分支B指令外大多是无条件执行的。
⑵大多数Thumb指令采用2地址格式,即目的寄存器和源寄存器。
⑶Thumb指令集没有协处理器指令、信号量(semaphore)指令和访问PSR的指令。
⑷Thumb分支指令与ARM分支指令相比,在寻址范围上有更多限制。
⑸Thumb数据处理指令访问R8~R15受限。
除MOV和ADD指令访问R8~R15外,数据处理指令总是更新CPSR的ALU状态标志。
访问RS~R15的Thumb数据处理指令不能更新标志。
⑹Thumb的寄存器Load/Store指令只能访问R0~R7。
PUSH和POP指令使用堆栈指针R13(SP)作为基址实现满递减堆栈。
除传送R0~R7外,PUSH还可用于存储链接寄存器R14(LR)POP还可用于加载程序计数器指针PC。
⑺Thumb伪指令不支持ADRL。
第三章1图3-10 分级存储器系统1.寄存器组寄存器组是最高一级的存储器。
在计算机设备中,寄存器组一般是微处理器内含的,ARM处理器中有37个寄存器。
有些待使用的数据或者运算的中间结果可以暂存在这些寄存器中。
微处理器在对本芯片内的寄存器读写时,速度很快,一般在一个时钟周期内完成。
从总体上说,设置一系列寄存器是为了尽可能减少微处理器直接从外部取数的次数。
但由于寄存器组是制作在微处理器内部的,受芯片面积和集成度的限制,寄存器的数量不可能做得很多。
2.高速缓冲存储器(Cache)第二级存储器是高速缓冲存储器(Cache)。
高速缓存是一种小型、快速的存储器,其存取速度足以与微处理器相匹配。
高速缓存能够保存部分内存的内容的拷贝,如果正确使用,它能够减少内存平均访问时间。
3.内存第三级是内存。
运行的程序和数据都放在内存中。
由于微处理器的寻址大部分在高速缓存上,内存就可以采用速度稍慢的存储器芯片,对系统性能的影响不会太大,同时又降低了成本。
内存除主要使用RAM外,还要使用一定量的ROM。
4.外存最低一级存储器是大容量的外存。
这种外存容量大,但是在存取速度上比内存要慢得多。
目前嵌入式系统中常用闪存作为大容量硬盘存储各种程序和数据。
第四章1、驱动层直接和硬件相关的驱动层软件的类型和用途嵌入式软件的体系结构包括驱动层、操作系统层、中间件层和应用层。
其中,驱动层直接与硬件相关,为操作系统和应用程序提供支持。
可以将驱动层软件分为三种类型:⑴板级初始化程序:在系统上电后,初始化系统的硬件环境,包括嵌入式微处理器、存储器、中断控制器、DMA和定时器等。
⑵与系统软件相关的驱动程序:用于支持操作系统和中间件等系统软件所需的驱动程序。
嵌入式微处理器已经提供了操作系统内核所需的硬件支持,因此开发人员一般所需编写的驱动程序主要是键盘、显示器、外存、网络等外部设备的驱动程序。
⑶与应用软件相关的驱动程序:这类驱动程序不一定要与操作系统连接,其设计和开发由应用所决定。
2、BSP和HAL的概念设备驱动概述:使用任何外部设备都需要有相应驱动程序的支持。
驱动程序为上层软件提供设备的操作接口。
驱动层软件有两个重要的概念:硬件抽象层(HAL,Hardware Abstraction Layer)和板级支持包(BSP,Board Support Package)。
可以简单地理解为硬件抽象层与硬件具有更加紧密的相关性,而板级支持包与操作系统具有更加紧密的相关性。
具体地讲,硬件抽象层的目的是为了将硬件抽象化,即通过程序来控制诸如CPU、I/O、存储器等硬件的操作,从而使得系统的设备驱动程序与硬件无关。
P135设计板级支持包的目的主要是为驱动程序提供访问硬件设备寄存器的函数包,从而实现对操作系统的支持。
为保证与操作系统保持正确的接口,以便良好地支持操作系统,不同的操作系统应对应不同定义形式的板级支持包。