嵌入式系统设计---嵌入式系统的组成

 嵌入式系统的组成

    嵌入式系统一般都由软件和硬件两个部分组成,其中嵌入式处理器、存储器和外部设备构成整个系统的硬件基础。嵌入式系统的软件部分可以分为 3 个层次:系统软件、应用支撑软件和应用软件。其中,系统软件和支撑软件是基础,应用软件则是最能体现整个嵌入式系统的特点和功能的部分。

 

1 硬件架构

    图 12-1 是一个嵌入式系统的基本硬件架构。微处理器是整个嵌入式系统的核心,负责控制系统的执行。外部设备是嵌入式系统同外界交互的通道,常见的外部设备有 Flash 存储器、键盘、输入笔、触摸屏、液晶显示器等输入/输出设备,在很多嵌入式系统中还有与系统用途紧密相关的各种专用外设。嵌入式系统中经常使用的存储器有 3 种类型:RAM、 ROM(Read-Only Memory,只读内存)和混合存储器。系统的存储器用于存放系统的程序代码、数据和系统运行的结果。

    1.嵌入式处理器

    嵌入式系统的核心部件是各种类型的嵌入式处理器。据不完全统计,目前世界上嵌入式处理器的种类已经超过了 1000 种,比较流行的也有 30 几个系列。根据目前的使用情况,嵌入式处理器可以分为如下几类:

    (1)嵌入式微处理器。嵌入式微处理器(Embedded Micro Processing Unit,EMPU)是由通用计算机中的 CPU 演变而来。嵌入式微处理器在功能上跟普通的微处理器基本一致,但是它具有体积小、功耗低、质量轻、成本低及可靠性高的优点。通常,嵌入式微处理器和 ROM、RAM、总线接口及外设接口等部件安装在一块电路板上,称为单板计算机。目前,主要的嵌入式微处理器有 AM186/88、386EX、SC-400、POWER  PC、MIPS 及 ARM 等系列。

    (2)嵌入式微控制器。嵌入式微控制器(Embedded Micro Controlling Unit,EMCU)又称为单片机,就是整个计算机系统都集成到一块芯片中。嵌入式微控制器一般以某一种微处理器内核为核心,芯片内部集成有 ROM/EPROM/E2PROM、RAM、总线、总线逻辑、定时器/计数器、WatchDog(监督定时器)、并口/串口、数模/模数转换器、闪存等必要外设。与嵌入式微处理器相比,嵌入式微控制器的最大特点是单片化,因而体积更小,功耗和成本更低,可靠性更高。

    目前,嵌入式微控制器的品种和数量最多,约占嵌入式系统市场份额的 70%。比较有代表性的通用系列有:8051 系列、MCS-96/196/296、C166/167、MC68HC05/11/12/16 等。还有许多半通用系列,如支持 UBS 接口的 MCU 8XC930/931、C540、C541 以及用于支持 I2C、现场总线等各种微控制器。

    (3 )嵌入式数字信号处理器。嵌入式数字信号处理器(Embedded Digital Signal Processor,EDSP)是一种专门用于信号处理的处理器,DSP 芯片内部采用程序和数据分开的哈佛结构,具有专门的硬件乘法器,广泛采用流水线操作,提供特殊的 DSP 指令,可以用来快速实现各种数字信号的处理算法。目前,数字信号处理器在嵌入式系统中使用非常广泛,如数字滤波、快速傅立叶变换及频谱分析等。同时,嵌入式系统的智能化也是推动嵌入式 DSP 发展的一个动力,如各种带有智能逻辑的消费类产品、生物信息识别终端、带有加密/解密算法的设备、实时语音压缩和解压系统以及虚拟现实显示装置等,这类系统上的智能化算法一般运算量都比较大,这恰好可以充分发挥数字信号处理器的长处。

    (4)嵌入式片上系统。嵌入式片上系统(Embedded System On Chip)是一种在一块芯片上集成很多功能模块的复杂系统,如微处理器内核、RAM、USB、IEEE 1394、Bluetooth 等。以往这些单元按照各自的功能做成一个个独立的芯片,并通过电路板与其他单元组成一个系统。现在将这些本来在电路板上的单元都集成到一个芯片中,构成一个嵌入式片上系统,从而大幅度缩小了系统的体积,降低了系统的复杂度,增强了系统的可靠性。在大量生产时,生产成本也远远低于单元部件组成的电路板系统。嵌入式片上系统可以分为通用片上系统和专用片上系统两类。通用类的主要产品有 Siemens 的 Trocore、Motorola 的 M-Core、某些 ARM 系列的器件等。专用类的嵌入式片上系统一般是针对某一个或某些系统而设计的。具有代表性的产品有 Philips 的 Smart XA,它将 XA 单片机的内核和支持超过 2048 位复杂 RSA 算法的 CCU 单元制作在一个芯片上,形成一个可加载 Java 或 C 的专用嵌入式片上系统,可用于网络安全等方面。

    2.总线 

    总线是连接计算机系统内部各个部件的共享高速通路,自 20 世纪 70 年代以来,工业界相继出现了多种总线标准,很多总线技术在嵌入式系统领域得到了广泛的应用。

    嵌入式系统的总线一般分为片内总线和片外总线。片内总线是指嵌入式微处理器内的 CPU 与片内其他部件连接的总线;片外总线是指总线控制器集成在微处理器内部或外部芯片上的用于连接外部设备的总线。

    (1)AMBA 总线。AMBA(Advanced Microcontroller Bus Archiecture,先进微控制器总线架构)是 ARM 公司研发的一种总线规范,该总线规范独立于处理器和制造工艺技术,增强了各种应用中外设和系统单元的可重用性,它提供将 RISC 处理器与 IP 核集成的机制。该规范定义了三种总线:

  • 先进性能总线(Advanced High-performance Bus,AHB)。AHB 由主模块、从模块和基础结构三部分组成,整个 AHB 总线上的传输都由主模块发起,从模块响应。基础结构包括:仲裁器、主从模块多路选择器、译码器、名义主模块、名义从模块等。AHB 系统具有时钟边沿触发、无三态、分帧传输等特性。AHB 也支持复杂的事务处理,如突发传送、主单元重试、流水线操作以及分批事务处理等。

  • 先进系统总线(Advanced System Bus,ASB)。ASB 用于高性能模块的互连,支持突发数据传输模式,较老的总线格式,逐步由 AHB 总线所替代。

  • 先进外设总线(Advanced Peripheral Bus,APB)。APB 主要用于连接低带宽外围设备,其总线结构只有唯一的主模块,即 APB 桥,它不需要仲裁器以及响应/确认信号,以最低功耗为原则进行设计,具有总是两周期传输、无等待周期和响应信号的特点。

    (2)PCI 总线。外围构件互连总线(Peripheral Component Interconnect,PCI)规范先后经历了 1.0 版本、2.0 版本和 2.1 版本等一系列规范。PCI 总线是地址、数据复用的高性能 32 位与 64 位总线,是微处理器与外围设备互连的机构,它规定了互连协议、电气、机械以及配置空间的标准。PCI  是不依赖于具体处理器的局部总线,从结构上看,PCI 是在微处理器和原来的系统总线之间加入的一级总线,由一个桥接电路负责管理,实现上下接口和协调数据传送,管理器提供了信号缓冲,使多种外设能够在高时钟频率下保持高性能。PCI  总线支持主控技术,允许智能设备在需要时获得总线控制权,以加速数据传输。

    为了将 PCI 总线规范应用到工业控制计算机中,1995 年,推出了 Compact PCI 规范,并相继推出了 PCI-PCI Bridge 规范、Computer TelephonyTDM 规范和用户定义 I/O 引脚分配规范等。CPCI 总线规范有机地结合了 PCI 总线电气规范的高性能和欧洲卡结构的高可靠。目前,CPCI 总线已经在嵌入式系统、工业控制计算机等高端系统中得到了广泛的应用,并逐步替代了 VME 和MultiBUS 总线。

    (3)Avalon 总线。Avalon 总线是 Altera 公司设计的用于可编程片上系统(System on Programmable Chip,SOPC)中,连接片上处理器和其他 IP 模块的一种简单总线协议,规定了主部件和从部件之间进行连接的端口和通信时序。

    作为总结,表 12-1 对比了几种嵌入式总线技术的主要特点。

    3.存储器

    嵌入式系统的存储器主要包括主存和外存,图 12-2 所示为嵌入式系统的存储结构,嵌入式系统的存储器主要分为三种:高速缓存(Cache)、片内主存和片外主存以及外存。

    (1)高速缓存。高速缓存是存放当前使用最多的程序代码和数据的,即主存中部分内容的副本,在嵌入式系统系统中,Cache 全部集成在嵌入式微处理器内部,可以分为:数据 Cache、指令Cache 和混合 Cache。

    (2)主存。主存是处理器能够直接访问的存储器,用来存放系统和用户的程序和数据,系统上电后,主存中的代码直接运行,主存的主要特点是速度快,一般采用 ROM、EPROM、 NOR flash、SRAM 和 DRAM 等存储器件。

    (3)外存。外部存储器是不与运算器直接联系的后备存储器,用来存放不常用的或暂不使用的信息,外存一般以非易失性存储器构成,数据能够持久保存,即使掉电,也不消失。Flash 存储器是在 EPROM 和 EEPROM 的基础上发展起来的非易失性存储器,具有结构简单、可靠性高、体积小、质量轻、功耗低、成本低等优点,是最常用的一种外存类型。

    4.I/O 设备与接口

    因其应用领域的不同,嵌入式系统的输入设备多种多样,比较常见的有键盘、鼠标、触摸屏、手柄、声控开关等。通常,根据输入设备实现机理的不同,嵌入式系统的设备可以分为:机械式、触控式以及声光式三类。嵌入式系统的输出设备除了通用计算机常用的显示器、打印机、绘图仪等外,还包括 LED 指示灯、LCD 屏幕、扬声器等媒体。嵌入式系统与外部设备或其他的计算机系统进行通信时,需经接口适配电路,进行工作速度、数据格式、电平等匹配与转换,嵌入式系统应用的接口形式是多种多样的。

    嵌入式系统中接口电路的设计需要首先考虑的是电平匹配问题,嵌入式系统微处理器所提供与接收信号的电平,必须与所连接的设备的电平相匹配,否则将导致电路损坏或逻辑判定错误。其次,还要考虑驱动能力和干扰问题等因素。

    当前,在嵌入式系统中广泛应用的接口主要有:RS232-串行接口、并行接口、USB 接口、IEEE-1394 接口以及 RJ-45 接口等,此外,以蓝牙为代表的无线接口在嵌入式系统中的应用也日趋广泛。

    (1)RS-232 接口。RS-232 接口是美国电子工业协会推广的一种串行通信总线标准,是数据通信设备和数据终端设备间传输数据的接口总线,RS-232-C 标准规定其最高速率为 20kbps,在低码元畸变的情况下,最大传输距离是 15 米,通过使用增强器,其传输距离已经延长到 1000 米左右。

    (2)USB 接口。USB(Universal Serial Bus,通用串行总线)是 1995 年由康柏等几大厂商共同制定的一种支持即插即用的外设接口标准,它支持 USB 外部设备到主机外部总线的连接。在USB 系统中,必须有一个 USB 主控制器,USB 设备通过四根电缆与 USB 主控制器直接或间接相连,USB 的规范由最初的 1.0  版本发展到了 1.1 版本,以至当前主流的高速 2.0 版本,最高速率可到 480Mbps。

    (3)1394 接口。IEEE1394 即火线(FireWire)最初是由 Apple 公司研制的,1995 年IEEE 协会以 FireWire 为蓝本制定了这个串行接口标准,其电缆接口为 6 根电缆组成,包括一堆电源线和两对双绞信号线。IEEE1394 协议定义了三种传输速率:98.304Mbps、 196.608Mbps 和392.216Mbps,分别称之为 S100、S200 和 S400。为了保证数据传输率,线缆的长度一般不超过4.5m。

   IEEE1394 标准通过所有连接设备建立起一种对等网络,不需要主控节点来控制数据流,即跟 USB 技术相比,最大的区别是      IEEE1394 不需要主控制器,不同的外设之间可以直接传递信息,此外,采用该技术,两台计算机可以共享同一个外部设备。

    IEEE1394 同时支持同步和异步传输两种模式。在异步传输模式下,信息的传递可以被中断,在同步模式下,数据将不受任何中断和干扰下实现连续传输。采用异步传输模式时,IEEE1394 会根据不同的设备实际需要分配相应的带宽。同时,IEEE1394 设备也支持热插拔和即插即用。

 

2 软件架构

    随着嵌入式技术的发展,特别是在后 PC 时代,嵌入式软件系统得到了极大的丰富和发展,形成了一个完整的软件体系,如图 12-3 所示。

    这个体系自底向上由三部分组成:嵌入式操作系统、应用支撑软件和应用软件。

    (1)操作系统。嵌入式操作系统由操作系统内核、应用程序接口、设备驱动程序接口等几部分组成。嵌入式操作一般采用微内核结构。操作系统只负责进程的调度、进程间的通信、内存分配及异常与中断管理最基本的任务,其他大部分的功能则由支撑软件完成。

    (2)应用支撑软件。嵌入式系统中的应用支撑软件由窗口系统、网络系统、数据库管理系统及 Java 虚拟机等几部分组成。对于嵌入式系统来讲,软件的开发环境大部分在通用台式计算机和工作站上运行,但从逻辑上讲,它仍然被认为是嵌入式系统支撑软件的一部分。应用支撑软件一般用于一些浅度嵌入的系统中,如智能手机、个人数字助理等。

    (3)应用软件。嵌入式系统中的应用软件是系统整体功能的集中体现。系统的能力总是通过应用软件表现出来的,一个嵌入式系统可以没有支撑软件,甚至可以没有操作系统,但不可以没有应用软件,否则它就不可能成为一个系统。从范围上讲,嵌入式系统的应用软件涉及工业控制、家电、商业、通信等诸多领域。从跟用户的交互方式上讲,有跟桌面系统类似的软件,也有嵌入程度很深、使用户感觉不到其存在的应用软件。从运行环境上讲,有在操作系统和支撑软件上运行的软件,也有直接在硬件上运行的应用软件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值