文章目录
- 1 嵌入式系统概述
- 1.1 嵌入式系统基本概念
- 1.1.1 嵌入式系统定义
- 1.1.2 嵌入式系统的发展
- 1.1.3 嵌入式系统的特点
- 1.2 嵌入式系统分类
- 1.2.1 单个微处理器
- 1.2.2 嵌入式处理器可扩展的系统
- 1.2.3 复杂的嵌入式系统
- 1.2.4 在制造或过程控制中使用的计算机系统
- 1.3 嵌入式处理器
- 1.4 嵌入式系统的组成
- 1.4.1 嵌入式系统的硬件
- 1.4.2 嵌入式系统的软件
- 1.5 嵌入式操作系统
- 1.5.1 嵌入式操作系统的发展
- 1.5.2 嵌入式操作系统的分类
- 1.5.4 主流嵌入式操作系统简介
- 2 ARM11体系结构
- 3 ARM为处理器的指令系统
- 4 S3C6401处理器
- 5
1 嵌入式系统概述
1.1 嵌入式系统基本概念
1.1.1 嵌入式系统定义
IEEE(国际电气和电子工程师协会)的定义:嵌入式系统是用于控制监视或者辅助操作机器和设备的装置。
1.1.2 嵌入式系统的发展
直到19世纪70年代末,随着微电子技术的发展,嵌入式计算机才逐步兴起。
1. 嵌入式应用始于微型机时代
电子数字计算机诞生于1946年,在初期的计算机都是在机房中的。直到19世纪70年代微处理器的出现,才使计算机发生了历史性的变化。
随着微处理器的发展,具有高速数据计算能力的微型机表现出的计算能力引起了控制专业人士的关注。他们将微型计算机通过电气或者是机械加固,然后配置各种外围的电路之后安装到大型船舶的自动驾驶或者是轮船监测系统中。
并且为了区分于原有的通用计算机系统,我们把嵌入到对象体系中的控制计算机称之为嵌入式计算机系统。其本质就是将一个计算机嵌入到一个对象体系中。
2. 现代计算机技术的两大分支
现代计算机技术有两个分支,就是通用计算机和嵌入式计算机。
通用计算机系统的技术要求高速海量的数据计算,技术发展方向是总线速度的无限提升、存储容量的无限扩大。
嵌入式计算机系统的控制技术要求是对对象的智能化控制能力,技术发展方向是与对象体系密切相关的嵌入式性能控制能力与控制的可靠性。
3. 嵌入式发展的里程碑
纵观嵌入式技术的发展历程,大致经历了4个阶段。
- 以单芯片为核心的可编程控制器形式的系统具有监测、伺服、指示设备相配合的功能。这类系统大部分应用一些专业性较强的工控领域。一般没有操作系统的支持,通过汇编语言对系统直接进行控制,运行结束后再清除内存。
- 以嵌入式cpu为基础,以简单操作系统为核心的嵌入式系统。在1980年左右,随着微电子工艺水平的提高,集成电路制造商开始把嵌入式应用中所需要的微处理器io接口串行接口以及ram和rom等部件通通集成到一片超大规模集成电路中制造出面向io设计的微控制器。在这一时期出现了大量高可靠低功耗的嵌入式cpu,但通用性比较弱。
- 以嵌入式操作系统为标志的嵌入式系统,20世纪90年代嵌入式系统飞速发展面向实时信号处理算法的dsp产品,则向着高速、高精度、低功耗的方向发展。随着硬件实时性的需求提高,嵌入式系统的软件规模不断扩大,逐渐形成了实时多任务操作系统rtos,并开始成为嵌入式系统的主流。
- 以internet为标志的嵌入式系统。目前大多数的嵌入式系统还孤立于internet之外信息。时代和数字时代的到来为嵌入。式系统的发展带来巨大机遇。
1.1.3 嵌入式系统的特点
- 面向特定应用
- 功耗低、体积小、集成度高、成本低
- 具有较长的生命周期
- 具有固化的代码
- 需要专用开发工具和环境
- 需要RTOS开发平台
- 以应用专家为主
1.2 嵌入式系统分类
1.2.1 单个微处理器
由单片的嵌入式处理器组成,集成了io设备以及ad转换设备,再加上简单的电源和时钟就可以工作,常用于小型设备中。
1.2.2 嵌入式处理器可扩展的系统
根据需要,可以扩展存储器,同时也可以使用片上的存储器,处理器一般容量在64k左右,字长为8位或者是16位在处理器上扩展少许的存储器和外接接口。
1.2.3 复杂的嵌入式系统
一般是16、32位,用于大规模应用。由于软件量大,所以需要扩展存储器。破产存储器一般都在一1M以上,外部接口一般仍然集成在处理器上。常用的嵌入式处理器有ARM系列,摩托罗拉的powerPC系列、Coldfire系列。
在开关装置、控制器、电梯等方面可以看到这类嵌入式系统的应用。
1.2.4 在制造或过程控制中使用的计算机系统
计算机与仪器、机械及设备与系统相连来控制这些装置。这类系统包括自动仓储系统和发货系统,在这些系统中计算机用于总体控制和监视,而不是对单个设备直接控制。
1.3 嵌入式处理器
全世界处理器的品种已经超过了1000多种,流行的体系有30多个系列。
嵌入式处理器的寻址空间一般是64k~16m。当然了,现在的STM32F407已经到了4G,这本书有点老了,处理速度0.1-2000MIPS,常用封装8-144个引脚。
根据现状,嵌入式处理器可以分成嵌入式微控制器EMCU、嵌入式微处理器EMPU、嵌入式dsp处理器EDSP、嵌入式片上系统ESoC。
三者的区别
1.4 嵌入式系统的组成
嵌入式系统一般都是由硬件、软件以及开发工具和开发系统三部分组成。
1.4.1 嵌入式系统的硬件
1.4.2 嵌入式系统的软件
- 驱动层程序
- 实时操作系统
- 操作系统的应用程序接口,应用程序接口是一系列复杂的函数、消息和机构的集合体。嵌入式操作系统下的api和一般操作系统下的api在功能含义和知识体系上完全一致。
- 应用程序。实际的嵌入式系统应用软件建立在系统的主任务基础。之上,用户应用程序主要通过调用系统的api函数对系统进行操作,完成用户功能的开发。
1.5 嵌入式操作系统
嵌入式操作系统是一种专用的可定制的操作系统。除了能完成一般操作系统的功能,如进程管理、存储管理、文件管理、设备管理等,还可以包括和硬件相关的底层驱动软件,系统内核设备驱动接口,通信协议图形界面标准化浏览器等。
1.5.1 嵌入式操作系统的发展
在最开始的控制领域,中设计者往往根据汇编语言或高级语言编程对系统进行直接控制,没有操作系统的概念。
随着嵌入式cpu的投入使用嵌入式操作系统也随之发展起来。
1.5.2 嵌入式操作系统的分类
收费不收费
- 免费的操作系统有:Linux、Embedded Linux、FreeRTOS等。
- 收费的嵌入式操作系统:VxWorks、Windows CE等。
按照系统对时间的敏感程度:
- 硬实时系统:系统对响应时间有严格的要求。 响应时间不满足的是不能接受的,会导致系统的崩溃和致命错误。
- 软实时系统:系统对响应时间没有严格要求。响应时间如果不能满足要求,可能会导致结果错误,但不影响系统的正常运行。
- 非实时系统:系统的响应时间没有要求,如果响应时间不满足要求,也不会影响系统运行。
1.5.4 主流嵌入式操作系统简介
1. VxWorks
VxWorks操作系统是WindRiver公司于1983年设计的一种嵌入式实时操作系统RTOS,是嵌入式开发环境的关键组成部分。
支持多种处理器x86、i960、Sun Sparc、Motorola MC68xxx、MIPS RX0000、POWER PC等。
这个系统比较贵,通常要花费数10万才能建起一个可靠的开发环境。
2. Windows CE
Windows CE是微软开发的32位嵌入式操作系统,得益于windows优秀的图形用户界面,与桌面版的windows基本一致。
3. μC/OS-II
μC/OS-II是一种开源但不免费的RTOS,具有可剥夺实时内核。μC/OS-II是μC/OS的升级版,发布1992年。目前,μC/OS-II已经被移值到40多种不同架构的CPU上,可以运行在8位到64位的各种操作系统之上。
4. 嵌入式Linux
Linux最早由芬兰人Linus Torvalds于1991年创立,经过短短十几年发展,已经成为一个功能强大稳定可靠的操作系统。典型的Linux系统有Red Hat、Ubuntu、Red Flag等。
我们要讲的嵌入式Linux是标准Linux在嵌入式系统上的移植。