作者: 新新
2005-12-28 08:51:02
与单纯的硬件开发或软件开发有所不同,嵌入式Linux系统在研发过程中通常都要涉及到硬件和软件两个环节。许多计算机软件开发人员在转向嵌入式系统Linux开发的过程中显得力不从心,一个原因就在于缺乏对嵌入式系统的硬件体系结构的了解,而偏偏嵌入式系统开发又对硬件的要求非常高。
从本质上说,嵌入式Linux系统也属于计算机系统的范畴,因此不可避免地要由三大基本部分组成:中央处理器(CPU)、存储设备和I/O设备。此外,它还需要负责在三大部分之间进行通信的设备。本文从这几个方面入手介绍嵌入式Linux系统的硬件体系结构。
中央处理器
嵌入式系统的核心部件是各种类型的嵌入式中央处理器。根据所用指令集的不同,嵌入式中央处理器可以分成两种主要的体系结构,一种是复杂指令集(Complex Instruction Set Computer,CISC)系统,另一种则是精简指令集(Reduced Instruction Set Computer,RISC)系统。
在20世纪60年代,CISC结构曾是嵌入式中央处理器的设计主流。但是随着时间的推移,这种设计思想已经越来越难以满足实际应用的需要。于是有人开始提出了一种全新的处理器体系结构----RISC。目前使用的嵌入式中央处理器大多采用RISC结构。
现在几乎所有的半导体制造商都有能力生产嵌入式中央处理器,根据所用技术的不同,可以将嵌入式中央处理器分成如下四种类型:
◆ 嵌入式微处理器(Embedded Micro Processor Unit,EMPU)
◆ 嵌入式微控制器(Embedded Micro-controller Unit,EMU)
◆ 嵌入式DSP处理器(Embedded Digital Signal Processor,EDSP)
◆ 嵌入式片上系统(Embedded System on Chip,ESoC)
微处理器
现在的通用计算机都是以微处理器为中心。从严格意义上说,“微处器”指的是芯片内部只包括CPU本身,而不包括存储器和I/O接口等其它功能模块,采用的是冯?诺依曼体系结构。在一些高端的嵌入式应用中,通过将微处理器装配在专门设计的电路板上,并配以必要的外围接口电路和扩展电路,可以快速构造出一个实用的嵌入式系统。
为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上与通用微处理器基本相同,但在工作电压、工作温度、抗干扰性和可靠性等方面都做了增强。一般说来,采用微处理器来构建嵌入式系统具有良好的实时性能、支持多任务处理、便于存储区保护、提供处理器扩展、丰富的调试功能和完善的电源管理等优势。
微控制器
微处理器芯片中不包括I/O接口电路,也没有其它外围功能模块,功能相对单一。因此,嵌入式系统的设计人员和硬件厂商开始倾向于开发另一种类型的嵌入式处理器。这种处理器不用像通用处理器那样具有强大而齐全的功能,但要力求做到小巧,而且省电。这就是嵌入式微控制器,通常也称之为单片机。
微控制器通常以某个微处理器内核为基础,芯片内部集成ROM、RAM、FLASH、总线逻辑和I/O端口等各种必要的功能模块,以适应特定场合的需要。与微处理器相比,微控制器最大的优点就是集成化,使体积、功耗和成本得到了有效的控制,并且可靠性大大提高。微控制器是目前嵌入式系统的主流产品,在构建嵌入式系统时,能节省系统开支、降低出错概率和减少高频干扰。
在开发嵌入式系统时,经常会遇到结构简单且数量众多的外围设备。这些设备有的需要CPU为之提供控制手段,有的则需要被CPU当作输入信号,虽然功能各不相同,但通常都只需要表示开和关两个基本状态就足够了。因为无论是传统的串口还是并口,对这些设备的处理都显得力不从心,所以在微控制器芯片上大多会提供一个通用可编程I/O接口(GPIO),这是微控制器有别于微处理器的一个显著特征。