掌“芯”天下——嵌入式处理器透视
技术空间
说到处理器,许多人就会立刻想到Pentium、Athlon、Core2等桌面处理器品牌。其实,处理器的应用范围远不止你想象中的那么小。除在电脑上的应用外,处理器更是被“嵌入”了我们生活的每个细节——我们每天使用的打印机、数码相机、游戏机、PDA、移动电话、数字家电、汽车甚至冰箱、空调等家电内部都能找到它们的身影,人们把这些专用处理器称作嵌入式处理器。
什么是嵌入式处理器
如果把常见的PC处理器叫做“通用处理器”,那么嵌入式处理器则主要针对那些专门用途的电子产品或计算机,特殊的用途决定了嵌入式产品在性能上不需要有强大的运算能力,只须满足应用即可;但在功耗、稳定性、成本和空间占用上却有着近乎苛刻的要求。
尽管如此,我们还是可以根据处理器的字长来简单区分产品的性能或档次。几乎所有的嵌入式处理器都可被划分为8位、16位、32位和64位四种规格——8位和16位由于性能很低,只能完成一些基本的任务,所以主要应用于微控制器级别产品;目前应用相当广泛的还数32位产品,这也是各大嵌入式处理器厂商争斗的焦点;64位嵌入式处理器与PC处理器的64位产品一样,由于其拥有较强的性能,目前主要应用在高端领域。
在指令体系方面,嵌入式处理器和PC处理器一样,也分为CISC(Complex Instruction SetComputing,复杂指令集)和RISC(Reduced Instruction Set Computing,精简指令集)两大类。在CISC体系中,占据主流的依然是x86架构,AMD和VIA生产的x86嵌入式产品(如AMD的Geode GX/NX系列)被广泛应用在网络终端机顶盒、自动售货机等领域;而RISC体系则是多种架构并存的局面,其中包括ARM、MIPS、PowerPC、SPARC(SUN)等。不过在日常应用中,基于x86、ARM和MIPS的嵌入式产品居多。

小知识:ARM的全称是Advanced RISC Machines,它既是架构名字,也是公司名称。ARM公司虽然是ARM架构的专利持有者,但它也向各大半导体制造商授权。Intel、TI(德州仪器)、高通等公司都有自己的ARM解决方案。例如,Intel XScale处理器就已推出了PXA25x、PXA26x和PXA27x三个系列。在嵌入式产品中,ARM阵营处于绝对垄断的地位。ARM体系还在逐步发展中,目前最新的ARM11在手机、PDA等消费电子产品中占据了主导地位,同时基于ARM11的多核心架构处理器——ARM11 MPCore也开始对其他厂商授权了。
嵌入式处理器虽然在功能上和标准微处理器基本一样,但在工作温度、抗电磁干扰、可靠性等方面都有所增强。由于嵌入式平台不必像PC平台那样考虑兼容性问题,厂商只要有一整套完整的解决方案便可,所以嵌入式处理器市场呈现出百花齐放的局面。
嵌入式处理器三大“家族”
自嵌入式处理器诞生以来,人们就根据其应用领域把它们大致分成三类:EMPU(Embedded Micro Processor Unit,嵌入式微处理器)、MCU(Micro Controller Unit,嵌入式微控制器)和DSP(Digital Signal Processor,数字信号处理器)。值得注意的是,近年来随着嵌入式产品的相互融合和发展,这三大家族之间的界限也越来越模糊。
作为应用最为广泛的嵌入式家族成员,DSP芯片设计的目的就是为了以更快的速度和更高的精度完成一些特定应用;EMPU则能够在保持一定通用性和灵活性的同时,尽可能为用户提供更好的性能;至于MCU,则拥有明确的目标用户,它会在内部集成各种针对目标市场所需要的功能和特性。从处理数据的能力上来看,DSP最强,EMPU次之,MCU最弱。而灵活性和通用性方面,EMPU则力拔头筹。
TI公司曾形象地把嵌入式处理器比作汽车:DSP是追求速度的跑车;EMPU是追求经济与速度平衡的轿车;MCU是满足特殊用途的“特种车”。
1.效率第一的DSP
DSP芯片能够以数字形式对信号进行采集、变换、滤波、估值、增强、压缩、识别等处理,以得到符合人们需要的信号形式。正是基于这一特点,DSP芯片才被广泛应用在视频、音频的编码、解码、处理方面。自20世纪70年代诞生以来便快速地“入侵”各种电子产品。今天我们可以在几乎所有的音视频产品中找到DSP芯片的身影。
典型的DSP芯片具有在单指令周期内可完成一次乘法和一次加法、程序和数据空间分开,可以同时访问指令和数据、芯片内具有快速RAM、具有低开销或无开销循环及跳转的硬件支持、快速的中断处理和硬件I/O支持、具有在单周期内操作的多个硬件地址产生器、可以并行执行多个操作、支持流水线操作,使取指、译码和执行等操作可以重叠执行等几大特点。
由于在设计之初就有了明确的针对性,因此DSP芯片往往能够以比普通CPU快几十倍的速度完成特定的工作。在需要对视频、音频进行大量复杂的编码和解码、过滤的应用中,DSP芯片有着压倒性的优势。对于处理器来说,通用性和效率似乎永远都是一对无法调和的矛盾,毫无疑问,DSP芯片选择的是一条专一高效之路。DSP芯片比较有代表性的产品是TI的TMS320系列和Motorola的DSP56000系列。

2.灵活通用的EMPU
在嵌入式产品中,EMPU是和通用处理器最“像”的。在PC平台中,CPU对整个系统的性能和功能有至关重要的影响,EMPU也是如此。在实际应用中,EMPU通常装配在专门设计的电路板上,只保留和嵌入式应用有关的母板功能,这样可以大幅度减小设备体积和功耗,满足嵌入式应用的需求。同时,还要对产品的工作温度、抗电磁干扰能力和可靠性方面作强化处理。由于灵活的设计和通用的搭配,EMPU受到了电子产品厂商的广泛欢迎。掌上电脑、传真机、机器人、打印机和网络路由器等领域都是EMPU大展拳脚的地方。EMPU主要有AM 186/88、386EX、SC-400、Power PC、68000、MIPS、ARM系列等产品。
3.目标专注的MCU
在嵌入式系统中,MCU是一个大家族,它就是我们常说的单片机,它由单块集成电路芯片所构成,内部包含了计算机基本功能的部件:CPU、存储器和I/O接口电路等。因此,单片机只是需要与适当的软件以及外部设备相结合,便可自成体系。MCU现有的品种和数量最多,代表产品有8051、P51XA、MCS-251、MCS-96/196/296、C166/167、MC68HC05/11/12/16、68300等。
特别值得一提的是,近年来,x86的“忠实捍卫者”AMD将AM 186CC/CH/CU等产品称为嵌入式微控制器;Motorola把以PowerPC为基础的PPC505和PPC555划入单片机范围;TI也将TMS320C2XXX系列DSP当作MCU来推广。
嵌入式处理器与PC处理器
通过上面的叙述,相信大家对嵌入式处理器的三大家族EMPU、MCU和DSP之间的关系有了一定了解。看到这里可能很多朋友会问:嵌入式处理器与常见的PC处理器究竟有何区别?下面我们就具体谈谈这方面的问题。
第一,嵌入式处理器与PC处理器在使用范围上就存在很大的区别。一款嵌入式处理器一旦被指定应用领域其性能要求也就随之被确定,而PC处理器则不同。因此对于嵌入式处理器的设计便是能够达到应用的要求就合格。也正是出于这样的原因,嵌入式处理器在核心设计方面都较PC处理器简洁。有些嵌入式处理器仅仅包括预取(Fetch)、解码(Decode)和执行(Execute)三级流水线的设计。但不是所有应用领域都可以使用简洁的三级流水线设计嵌入式处理器,于是厂商又根据需求来增加逻辑单元。这样的设计理念对于产品的成本、功耗控制等方面都有着重要的作用。
第二,低功耗是嵌入式处理器的重要特性之一!试问一下,你愿意购买一台装有如同PC机那样庞大风扇的机顶盒吗?愿意自己的MP4播放器充电时间多于使用时间吗?反观通用处理器在这方面就很不足,性能往往与功耗成正比!

第三,由于嵌入式处理器在设计之初便给予了其明确的定位,所以每个设计厂商并不需要充分考虑嵌入式处理器之间的兼容性问题,只要自己能有一个完整方案便可。这样的设计可能对于嵌入式处理器来说并没有什么负面影响,反而更有利于根据不同应用类型来设计出成本低、抗电磁干扰强的封装方式。不过,如果PC处理器也采用这样的设计思想,那它根本不会有任何前途。
第四,安全性和可靠性是嵌入式处理器必须重点关注的地方。和PC处理器不同的是,嵌入式产品可能长年累月都处于工作状态,这就对其稳定性、抗电磁干扰能力、抗电源抖动能力、防雷击及适应温度变化等提出了更高的要求,所以在硬件开发阶段,我们就需要对系统进行电磁分析、热分析等,并在产品内部电路中采取相应的措施。
写在最后
时至今日,嵌入式处理器受到了业界前所未有的关注,各大厂商也纷纷在嵌入式处理器研发上投入了大量的资源。在未来,嵌入式处理器的功能将会不断加强,将会出现全面SoC(System on Chip,系统集成芯片)化的趋势。高集成度SoC芯片的采用可以带来一系列好处,诸如减少了外围器件和PCB面积,提高系统抗干扰能力,缩小产品体积,降低功耗等。
在提升集成度和功能的同时,嵌入式芯片也开始全面多内核化。不过这种多核化和CPU的多核化并不相同。CPU的多核化通常是在一个封装中集成多个相同的CPU内核,实现性能的提升。而嵌入式芯片的多核化则更进一步,在一个封装中同时提供多种性能或用途不同的嵌入式核心。譬如在一个芯片中集成EMPU和DSP,然后各取所长,从而实现通用和性能的兼顾。由于嵌入式芯片独特的架构,在未来很可能会出现多达几十个核心的超强芯片。我们期待嵌入式产品的明天会更美好!