嵌入式系统期末考试总结Word文件下载.docx
《嵌入式系统期末考试总结Word文件下载.docx》由会员分享,可在线阅读,更多相关《嵌入式系统期末考试总结Word文件下载.docx(10页珍藏版)》请在冰点文库上搜索。
![嵌入式系统期末考试总结Word文件下载.docx](https://file1.bingdoc.com/fileroot1/2023-5/1/0788c861-748f-4e9a-889b-a118a619e9f7/0788c861-748f-4e9a-889b-a118a619e9f71.gif)
嵌入式系统的硬件是以嵌入式处理器为核心,配置必要的外围接口部件。
一般包括有:
嵌入式处理器;
存储器;
I/O系统和外设
据需要和成本进行裁剪和定制。
1嵌入式微处理器
随着嵌入式系统不断深入人们生活中的各个领域,嵌入式处理器得到了前所未有的发展。
全世界嵌入式处理器品种总量超过1500多种,流行体系结构有50多个系列。
现在几乎每个半导体制造商都生产嵌入式处理器,越来越多的公司有了自己的处理器设计部门。
嵌入式处理器的基础是通用计算机的中的CPU,是嵌入式系统的核心。
在应用中,嵌入式处理器具有体积小、质量轻、成本低、可靠性高等优点。
目前比较有影响的嵌入式RISC处理器产品有IBM的PowerPc,MIPS公司的MIPS,SUN公司的Sparc和ARM公司的ARM系列。
ARM的成功在于它极好的性能和极低的功耗,使得它能够与高端的MIPS和Powerpc嵌入式微处理器抗衡。
另外,根据市场需求进行功能的扩展,也是ARM取得成功的一个因素。
随着更多厂商的支持和加入,可以预见,在将来一段时间内,ARM将主宰32位嵌入式处理区市场。
2存储器
一个嵌入式系统必须有一定的存储器来存放和执行代码。
在决定存储器的层次、宽度和类型等特性时,必须综合考虑价格、性能和功耗等因素。
嵌入式存储系统是由高速缓冲区Cache、主存储器和辅助存储器(自选如CF卡、SD卡等)组成。
嵌入式系统常使用FlashROM作为程序存储器,因为嵌入式系统和台式PC系统不一样,其程序不会更改。
在数据存储中,常数数据可存储在FlashROM中,而其他数据则需要使用RAM。
高速缓存是一种小型、快速的存储器,它保存部分主存内容的拷贝,减少访问主存储器的所花的访问时间。
图3高速缓存
Cache位于主存和内核之间,用于提高处理器和主存之间的数据传输速度。
Cache改善了系统的总体性能,但同时使得系统的执行时间不得不可预测,并且都市是系统响应也么有什么帮助。
为此,在许多小型嵌入式系统中,并不需要使用Cache来优化性能。
主存的容量较大(一般为256KB—256MB,甚至更大),它可根据具体的应用而定,通常是一些独立的芯片。
在各级存储器中,辅助存储器的容量最大,但速度最慢。
如今辅助存储器的容量能够从600MB到上百GB。
另外,存储器的类型包括:
只读存储器ROM、FlashROM(闪存)、动态随机访问存储器(DRAM)、静态随机访问存储器(SRAM)、同步动态随机访问存储器(SDRAM)、硬盘、软盘和CD-ROM等外存储器。
3外设及接口
嵌入式系统与外界交互需要一定形式的外设,片外其它设备通过外设接口与芯片连接。
每一个外设通常只有一个单一的功能,可以内置在芯片上。
外设种类很多,如下:
(1)输入/输出设备。
CRT、LCD和触摸屏等,构成了嵌入式系统中重要的信息输入/输出设备,应用十分广泛。
触摸屏可以方便的实现鼠标和键盘的功能。
(2)通信接口。
所有计算机通信接口在嵌入式领域中都有着广泛的应用。
应用最广泛的设备接口包括RS-232、RS-485、USB、CAN总线、蓝牙、以太网接口和GPIO。
(3)存储扩展接口。
目前嵌入式系统的功能越来越复杂,需要大容量的内存。
但由于大容量的内存使得系统成本提高,因此,一些高端嵌入式系统都会为日后用户有特别需求时,预留可扩展存储接口。
2嵌入式系统的软件结构
对于使用操作系统的嵌入式系统来说,嵌入式系统软件结构包含4个层面:
设备驱动层、实时操作系统RTOS、应用程序接口API层、实际应用程序层。
(1)驱动层程序
驱动层程序是嵌入式系统中不可缺少的重要部分,使用任何外部设备都需要有相应驱动层程序的支持,它为上层软件提供了设备的接口。
上层软件不用理会设备的具体内部操作,只需调用驱动层程序提供的接口即可。
驱动层程序一般包括硬件抽象层HAL、板极支持包BSP和设备驱动程序。
(2)实时操作系统RTOS
实时多任务操作系统主要用来完成嵌入式实时应用的任务调度和控制等核心功能。
这些功能是通过内核服务函数形式交给用户调用的,也就是RTOS的系统调用,或者叫做RTOS的API。
实时操作系统可根据实时应用环境的要求对内核进行裁剪和重置设置,根据不同的应用,其组成有所不同,但实时内核、网络组建、文件系统和图形接口等几个重要组成部分是不太变化的。
实时操作系统的引入大大提高到了起入室系统开发的效率,减少了系统开发的总工作量,而且提高了嵌入式应用软件的可移植性。
RTOS的体系结构如下所示:
图4RTOS的体系结构图
(3)操作系统的应用程序接口API
API(ApplicationProgrammingInterface,应用程序接口)是一系列复杂的函数、消息和结构的集合体。
嵌入式操作系统下的API和一般操作系统下的API在功能、含义及知识体系上完全一致。
可这样理解API:
在计算机系统中有很多可通过硬件或外部设备去执行的功能,这些功能的执行可通过计算机操作系统或硬件预留的标准指令调用,而软件人员在编制应用程序时,就不需要为每种可通过硬件或外设执行的功能重新编制程序,只需按系统或某些硬件事先提供的API调用即可完成功能的执行。
因此在操作系统中提供标准的API函数,可加快用户应用程序的开发,统一应用程序的开发标准,也为操作系统版本的升级带来了方便。
在API函数中,提供了大量的常用模块,可大大简化用户应用程序的编写。
(4)应用程序
操作系统是为应用程序提供基础服务的软件。
而应用程序是在CPU上执行的一个或多个程序,在执行过程中会使用输入数据并产生输出数据。
应用程序的管理包括程序载入和执行,程序对系统资源的共享和分配,并避免分配到的资源被其他程序破坏。
实际的嵌入式系统应用软件建立在系统的主任务(MainTask)基础之上。
用户应用程序主要通过调用系统的API函数对系统进行操作,完成用户应用功能开发。
在用户的应用程序中,也可创建用户自己的任务。
任务之间的协调主要依赖于系统的消息队列。
常用的嵌入式操作系统包括:
①Linux操作系统。
Linux操作系统类似于UNIX,是一种免费的、源代码完全开放的操作系统。
由于Linux操作系统的界面和编程接口与UNIX类似,所以UNIX程序员可以很容易的从UNIX环境转移到Linux环境中来。
②uc/os-II操作系统。
uc/os-II操作系统是一个可裁剪、源码开放、结构小巧的实时多任务内核,主要面向中小型嵌入式系统,具有执行率高、占用空间小、可移植性强和可扩展线性等优点。
uc/os-II最多可支持64个任务。
编译后的uc/os-II具有良好的可扩展性,例如,系统本身不支持文件系统,但是如果需要也可自行加入文件系统的内容。
③WindowsCE操作系统。
WindowsCE操作系统是针对有限资源的平台而设计的多线程、完整优先性、多任务的操作系统,但他不是一个硬实时操作系统。
WindowsCE操作系统最大特点是能提供与PC类似的图形界面和主要的应用程序。
只要是对PC上的Windows操作系统熟悉的用户,就可很快的使用基于WindowsCE操作系统的嵌入式设备。
2.4流水线技术
计算机中一条指令的指向可分为若干个阶段,由于每个阶段的操作相对都是独立的。
因此可以采用流水线的重叠技术来大大提高系统的性能。
在流水线装满以后,几个指令可以并行执行。
这样可充分利用现有硬件资源,提高了CPU的运行效率。
以ARM7为例,ARM处理器使用的简单3级流水线分别为:
•取指级:
取指级完成程序存储器中指令的读取,并放入指令流水线中。
•译码级:
对指令进行译码,为下一周期准备数据路径需要的控制信号。
这一级指令“占有”译码逻辑,而不“占有”数据路径。
•执行级:
指令“占有”数据路径,寄存器被读取,操作数在桶式移位器中被移位,ALU产生相应的运算结果并回写到目的寄存器中,ALU的结果则根据指令需求来更改状态寄存器的条件位。
ARM9架构采用了5级流水线:
Ø
增加了I-Cache和D-Cache,把存储器的取指与数据存取分开;
增加了数据写回的专门通路和寄存器;
把指令的执行过程分割为5阶段:
取指令;
指令译码、寄存器读、分支目标计算及执行;
移位和ALU操作;
数据Cache访问;
结果写回到寄存器。
•取指:
指令从存储器中取出,放入指令流水线。
•译码:
指令译码,从寄存器中读取寄存器操作数。
在寄存器组中有3个操作数读端口,因此大多数ARM指令能在一个周期内读取其操作数。
•执行:
把一个操作数移位,产生ALU的结果。
如果指令是Load或Store,在ALU中计算存储器的地址。
•缓冲/数据:
如果需要,则访问数据存储器。
否则,ALU的结果只是简单地缓冲一个时钟周期,以便使所有指令具有同样的流水线流程。
•回写:
将指令产生的结果回写到寄存器,包括任何从存储器读取的数据。
ARM7微处理器系列主要特点
•ARM7微处理器系列为低功耗的32位RISC处理器,最适合用于对价位和功耗要求较高的消费类应用。
其具有如下特点:
•具有嵌入式ICE-RT逻辑,调试方便。
•极低的功耗(100mW左右),适合对功耗要求较高的应用,如便携式产品。
•能够提供0.9MIPS/MHZ的三级流水线结构。
兼容16位Thumb指令集;
对操作系统的支持广泛,包括WinCE、Linux等;
指令系统与ARM9、ARM10E系列兼容,便于用户的产品升级换代;
主频通常为20~100MHZ。
速度为0.9MIPS/MHz。
ARM7TMDI是目前使用最广泛的32位嵌入式RISC处理器,属低端ARM处理器内核。
主要性能:
工艺0.35um(新近0.25um)、电压3.3V(新近1.2v)、时钟0~66MHZ、功耗87mW。
ARM9微处理器系列主要特点
•ARM9E系列微处理器为综合型处理器,使用单一的处理器内核提供了微处理器、DSP、Java应用系统的解决方案,极大地减少了芯片的面积和系统的复杂程度。
具有以下特点:
•支持DSP指令集,适合于需要高速数字信号处理的场合;
•5级整数流水线;
最高主频可达300MIPS;
•支持32位ARM指令集和16位Thumb指令集;
•支持32位的高速AMBA总线接口;
•支持VFP9浮点处理协处理器
•全性能的MMU,支持包括WinCE、Linux等操作系统,MPU支持实时操作系统。
•支持数据Cache和指令Cache,具有更高的指令和数据处理能力。
•ARM9E系列主要用于下一代无线设备、成像设备、工业控制、存储设备、数字消费品和网用场合。
ARM10E微处理器系列主要特点
•ARM10E系列微处理器由于采用了新的体系结构,与同等的ARM9处理器相比较,在同样的时钟频率下,性能提高了近50%,同时又大大减少了芯片的功耗,在相同的工艺下其性能是ARM9的2倍。
•6级整数流水线;
工作频率一般为400MHz左右``;
•支持VFP10浮点处理协处理器;
•内嵌并行读/写操作部件;
支持数据Cache和指令Cache,具有更高的指令和数据处理能力。
ARM10E系列主要用于下一代无线设备、成像设备、工业控制、存储设备、数字消费品和网用场合。
3Linux系统部分
6.1嵌入式linux操作系统的组成与版本最后几页
6.3嵌入式linux内核的配置及编译最后几页