Linux人工智能开发实例
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1 嵌入式系统概述

随着计算机技术的飞速发展和嵌入式微处理器的出现,计算机应用出现了历史性的变化,逐渐形成计算机系统的两大分支:嵌入式系统和通用计算机系统。

嵌入式系统早期曾被称为嵌入式计算机系统或隐藏式计算机。随着半导体技术及微电子技术的快速发展,嵌入式系统得以风靡式发展,性能不断提高,以致出现一种观点,即嵌入式系统通常是基于32位微处理器设计的,往往带操作系统,本质上是瞄准高端领域和应用。然而,随着嵌入式系统应用的普及,这种高端应用系统和之前广泛存在的单片机系统间的本质联系,使嵌入式系统与单片机毫无疑问地联系在了一起。

1.嵌入式系统的特点

嵌入式系统是先进的计算机技术、半导体技术、电子技术与各个行业的具体应用相结合的产物。这决定了它是技术密集、资金密集、知识高度分散、不断创新的集成系统。同时,嵌入式系统又是针对特定的应用需求而设计的专用计算机系统,也决定了其具有自己的特点。

不同嵌入式系统具有一定的差异。一般来说,嵌入式系统有以下特点:

(1)软/硬件资源有限,过去只在个人计算机(PC)中安装的软件现在也出现在复杂的嵌入式系统中。

(2)集成度高、可靠性高、功耗低。

(3)有较长的生命周期,通常与所嵌入的宿主设备具有相同的使用寿命。

(4)软件程序存储(固化)在存储芯片上,开发者通常无法改变。

(5)是计算机技术、半导体技术、电子技术和各个行业的应用相结合的产物。

(6)一般来说,并非总是独立的设备,而是作为某个更大型计算机系统的辅助系统。

(7)通常都与真实物理环境相连,是激励系统。激励系统处在某一状态,等待着输入或激发信号,从而完成计算并输出更新的状态。

2.嵌入式系统的组成

嵌入式系统一般由硬件系统和软件系统两大部分组成。其中,硬件系统包括处理器、外设和必要的外围电路;软件系统包括嵌入式操作系统和软件运行环境。

➢ 硬件系统

(1)处理器。处理器是嵌入式系统硬件系统的核心,早期嵌入式系统的处理器由微处理器(甚至是仅包含几个芯片的微处理器)来担任,而如今嵌入式系统的处理器一般采用IC(集成电路)芯片形式,可以是ASIC(专用集成电路)或者SoC(系统级芯片)中的一个核。核是VLSI(超大规模集成电路)上功能电路的一部分。嵌入式系统的处理器主要有以下几种:嵌入式微处理器(EMPU)、嵌入式微控制器(MCU,又称单片机)、嵌入式数字信号处理器(EDSP)、嵌入式片上系统。

① 嵌入式微处理器。嵌入式微处理器(Embedded Microprocessor Unit,EMPU)以通用计算机中的标准CPU为微处理器,并将其装配在专门设计的电路板上,仅保留与嵌入式应用有关的母板功能,构成嵌入式系统。与通用计算机相比,其系统体积和功耗大幅度减小,而工作温度的范围、抗电磁干扰能力、系统的可靠性等方面均有提高。

在嵌入式微处理器中,微处理器是整个系统的核心,通常由3部分组成:控制单元、算术逻辑单元和寄存器。图1.1为嵌入式微处理器示意图。

图1.1 嵌入式微处理器示意图

② 嵌入式微控制器。嵌入式微控制器(Microcontroller Unit,MCU)又称单片机。它以某一种微处理器为核心,芯片内部集成有一定容量的存储器(ROM/EPROM、RAM)、I/O接口(串行接口、并行接口)、定时器/计数器、看门狗、脉宽调制输出、A/D转换器、D/A转换器、总线、总线逻辑等。与嵌入式微处理器相比,嵌入式微控制器的最大特点是单片化、体积小、功耗低、可靠性较高。嵌入式微控制器是目前嵌入式系统工业的主流。

③ 嵌入式数字信号处理器。嵌入式数字信号处理器(Embedded Digital Signal Processor,EDSP)对系统结构和指令进行了特殊设计,使其适合执行DSP算法,编译效率高,指令执行速度也较快。在数字滤波、FFT、谱分析等方面,DSP算法已广泛应用于嵌入式领域,DSP应用正从在单片机中以普通指令实现DSP功能,过渡到采用EDSP实现相应功能。

④ 嵌入式片上系统。嵌入式片上系统是集系统性能于一块芯片上的系统级芯片。它通常含有一个或多个微处理器IP核(CPU),根据需求也可增加一个或多个DSP IP核、相应的外围特殊功能模块,以及一定容量的存储器(RAM、ROM)等,并针对应用所需的性能将其设计集成在芯片上,成为系统操作芯片。其主要特点是嵌入式系统能够运行于各种不同类型的微处理器上,兼容性好,操作系统的内核小、效果好。

(2)外设。外设包括存储器、I/O接口等辅助设备。尽管MCU已经包含了大量外设,但对于需要更多I/O接口和更大存储能力的大型系统来说,还需要连接额外的I/O接口和存储器,用于扩展其他功能和提高性能。

➢ 软件系统

(1)嵌入式操作系统(Embedded Operating System,简称:EOS)是指用于嵌入式系统的操作系统。嵌入式操作系统通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等。嵌入式操作系统负责嵌入式系统的全部软、硬件资源的分配、任务调度,控制、协调并发活动。它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。目前在嵌入式领域广泛使用的操作系统有嵌入式实时操作系统μC/OS-II、嵌入式Linux、Windows Embedded、VxWorks等,以及应用在智能手机和平板电脑上的Android、iOS等。

(2)软件运行环境,狭义上讲是指软件运行所需要的硬件支持;广义上也可以说是一个软件运行所要求的各种条件,包括软件环境和硬件环境。比如各种操作系统所需要的硬件支持是不一样的,对CPU、内存等的要求也是不一样的。而许多应用软件不仅要求硬件条件的支持,还需要软件环境的支持,通俗讲就是Windows系统支持的软件,Linux系统不一定支持,苹果系统的软件只能在苹果设备上运行,如果这些软件想跨平台运行,必须修改软件本身,或者模拟它所需要的软件环境。