嵌入式系统的发展过程将经历三个阶段:第一阶段,各种模拟信号处理和MCU之间相互独立,这已成为历史;在第二个阶段里,MCU集成了ADC、DAC和其它一些模拟单元,目前嵌入式系统基本上都处于这个阶段;当嵌入式系统发展到了第三个阶段时,模拟信号处理中的放大、滤波、ADC、DAC和其它模拟单元将和MCU融为一体,构成一个SOC,模拟和数字开发工作将集中在同一芯片,嵌入式的开发理念发生了本质的变化。
模拟与数字的协同是嵌入式系统发展过程永恒不变的课题。嵌入式系统是IT领域中的一个重要分枝,它是人与真实世界进行信息交互的介面,我们日常生活中涉及到的各种智能化电子装置,如:移动电话、MP3放音机、数码照相机......,都是嵌入式系统的典型范例。在我们的生存空间中,影像、声音、温暖、大小...等自然界发生的,人们所感知及保存的信息也都以建立在模拟基础之上,以MCU为核心的嵌入式系统将加深人与自然之间的了解,因此模拟与数字的协同将促进嵌入式系统的发展。
模拟技术在MCU中的渗透
随着IT技术在人类生活中的增加、人们对嵌入式系统的性能、价格,特别是对体积、重量和功能提出了近似苛刻的要求。移动电话的发展历史正是嵌入式系统发展的一个缩影。上个世纪80年代出现的移动电话其体积和重量可以和砖头相比拟,而功能仅是一个电话机,然而经过IC和移动电话设计制造商十多年的不断创新,今天的移动电话其体积、重量仅为十多年前的几十分之一,但它除了通讯功能外,它还是人们的数字助理、照相机和MP3。
嵌入式系统体积的减小、重量的降低,意味着元件功能的融合和IC集成度的提高,作为嵌入式系统核心的MCU在从1位机发展到今天的32位机的同时,也不断向模拟领域渗透,从最初集成ADC、DAC的8位MCU,发展到今天以MCU为核心,同时集放大器、模拟滤波器......等多种模拟单元一体的SOC。比如Integrated Systems Technology and Solutions in Networking /Communications公司设计的移动电话IC,它在一片IC中不但集成了MCU,FPGA、MEMORY和多个DSP等数字单元,而且还将RF的滤波,放大和解调等模拟单元集成进了芯片。
在IC设计和制造业迅速发展的今天,数字集成电路的规模,速度和成本正沿着摩尔定律指定的道路发展,MCU的数字部分的性能与人们希望值之间的差距在不断地缩小,尽管8位、16位和32位MCU之间的价格差距越来越小,但8位MCU但仍然是嵌入式应用中的主流产品。但MCU在模拟方面的进展却与于数字方面的发展速度不相匹配,分离元件和小规模专用功能集成电路仍然是嵌入式系统模拟信号处理的主流,它们的存在障碍了嵌入式系统的发展。因此在MCU中不断地增加集成模拟单元的数量和质量,将是降低嵌入式系统开发成本和生产成本,提高产品上市时间的一项重要措施。
嵌入式系统发展的三个阶段
嵌入式系统设计主要涉及两个方面,一个方面是将自然界的信息经传感器变换为电信号后,通过一系列模拟信号处理再变换为数字信息;另一方面是开发处理这些信息的数字算法。
嵌入式系统应用领域主要由数字算法决定,因此嵌入式系统应用的广泛性决定数字算法的多样性,但通过多年的积累,由于数字算法的理论、MCU数字运算能力、仿真和调试工具的日益成熟,数字算法的开发难度在不断降低;但在模拟信号处理方面,虽然它的类别很少,归纳起来通常只有放大、滤波、ADC和DAC等四个方面,但其开发过程中涉及的理念、工具的发展进程很慢。在数十年电子线路发展历程中,万用表和示波器仍是电子工程师的主要调试工具,“调电路”这个业界常用的术语正是开发模拟信号处理过程中规范和方法的缺乏,对工程师个人经验过度依赖的真实写照。
从嵌入式系统开发角度分析,造成处在同一领域的模拟技术与数字技术的发展速度不相匹配的主要原因是: 由于MCU及其它数字IC的可配置性,取代了大部分功能专一的小规模数字IC(在电子技术发展史上,最常见功能专一的小规模数字是4000系列、54系列和74系列,它们类别大大超过目前模拟IC的类别),使数字设计工程师从选择元件和PCB的制作过程中解脱出来,专注于数字算法的研发。但在模拟技术方面由于缺乏可配置性或可配置性差的器件,工程师将要花大量的精力从为数众多的模拟元件中选择出适当的元件来设计出适合要求的电路原理后,再将其设计成PCB、然后才能调试,由于模拟信号自身的特殊性和元件的可配置性差,这个过程将不断地重复才能达到设计目标。嵌入式系统是模拟和数字的统一体,MCU中模拟技术的滞后己成为影响嵌入式系统发展进程的障碍。
嵌入式系统的发展过程将经历三个阶段,第一个阶段已成历史。在这个阶段里,模拟信号的放大、滤波、ADC、DAC和MCU都是由各自独立的IC组成,模拟设计部分的工作是通过放大、滤波环节提取真实的模拟信号,并将其送入ADC转换成数字信息后供MCU处理。这个阶段的一个明显的特点是,模拟信号处理和MCU之间的相互独立性较强,虽然系统结构复杂、可靠性差、开发和生产成本很高、在体积和重量方面也不具备优势。但它调试相对容易,因为元件的功能独立,更换部分元件不会影响整个系统的开发进程。在第二个阶段里,MCU集成了ADC、DAC和其它一些模拟单元,虽然这些模拟单元与MCU之间不能灵活使用或互连,但MCU与模拟信号处理之间的相互联系相对比较紧密,如何消除MCU工作过程中产生的数字噪声对模拟单元的影响是开发高精度嵌入式系统的难点,目前嵌入式系统基本上都处于这个阶段。
当嵌入式系统发展到了第三个阶段时,模拟信号处理中的放大、滤波、ADC、DAC和其它模拟单元将和MCU融为一体,构成一个SOC,嵌入式开发人员可根据任务具体的要求,采用类似于使用CPLD和FPGA一样方法,用软件在MCU芯片上实现模拟信号处理单元的构建,根除了长期困扰模拟工程师的模拟元件选择和互连问题,模拟和数字开发工作将集中在同一芯片,嵌入式的开发理念发生了本质的变化。在MCU处于这一阶段时,它和前面所谈到的手机ASIC有所区别,在前面,虽然将信号的放大、滤波、解调等模拟信号处理单元和DSP、MCU集成在同一Package中,但它的模拟信号处理单元只能完成已定制的功能,不具备可配置或配置特性很差。需要指出的是,这些阶段之间是相互融合的,并没有明确的界线。
嵌入模拟信号处理单元的MCU现状
通过数十年的发展,MCU在嵌入模拟信号处理单元上取得了重要的进展。根据MCU嵌入模拟信号的种类,将其分为两个层次,一个层次是集成更多种类的模拟单元,并提高它们的精度;另一个层次是增强MCU中各模拟单元的可配置性,用户可利用MCU中的模拟单元构建自己的信号处理单元。
提高MCU中模拟单元的处理精度是目前的发展主流。由于触摸屏已成目前嵌入式系统进行人机交互的主要手段,为了减化触摸屏与MCU之间的互连,集成多路满足触摸屏以及其它要求的10位ADC和片内温度传感器己成为目前中高档MCU的标准配置,同时集成了更高精度模拟处理单元的MCU也在不断推出。
MicroConverter是Analog Devices将80C51 MCU核和模拟信号处理单元集成在一片IC上的系列产品,该系列自1990年代后期面世以来,至今已有14个品种。图1是Analog Devices新推出的MicroConverter系列ADuC845,它集成了两路最大采样频率达到1.3KHz的24位??? ADC、1路12位普通DAC、两路16位基于PWM的??? DAC和内部温度传感器,同时MCU的运算速度可达到12.6MPIS。由于MicroConverter在模拟和数字方面优越的性能,以及价格上的优势,目前已广泛用于各种测控仪器。和MicroConverter类似的还有TI的MicroSystem Controller系列。
为了满足一些领域对速度和精度的要求,在MCU中集成10位以上的普通ADC也成为发展趋势。除了MicroConverter的部分产品外,Cygnal的C8051F、Motorola的56F83X和TI的MSP430系列中的部分产品都集成了12位普通ADC。这些MCU都被它们的制造商称为Mixed-Signal MCU。
由于技术和市场的原因,目前多数MCU在模拟单元上仅限于ADC、DAC,随着人们对IT需求的不断增加,集成了其它模拟单元的MCU也在不断出现。集成RF发送器的 rfPIC12C509AG/509AF,就是Microchip面对无线市场推出的MCU,它使嵌入式工程师摆脱了RF设计的困扰,提高了开发速度并降低了成本。
增强MCU中模拟单元的可配置性,将是推进模拟与数字融合向更高层次发展的必然趋势。回顾数字技术的发展历程,当数字技术告别了与模拟技术采用的相同的三极管和二极管构成的基本逻辑电路后,经过了以74系列为代表的小规模IC,可编程门列阵GALL后、发展到今天以MCU、DSP、FPGA和CPLD为主流的大规模IC,其发展过程的实质是不断地增强元件的可配置性,用软件编程取代硬件设计,是不断地降低开发、生产和维护升级成本,提高上市时间的重要措施。在MCU中嵌入的模拟单元也和数字技术的一样,其可配置性也在不断发展,在ADuC845中滤波器的带宽,ADC的输入范围都经过软件配置的,特别是赛普拉斯2000年推出的混和信号阵列可编程SoC(PSoC),为MCU中模拟单元展示了发展的方向。
在同一封装中,PSoC不但集成了一个8位MCU和相应的数字外设,而且还集成了电阻、电容、运算放大器和PGA等基本模拟单元, 在Cypress提供的PSoC IDE中,可完成从模拟处理单元的构建、MCU软件的编程和调试等全部开发工作,使嵌入式开发工程师在开发过程中能对其模拟处理单元实施实时重构,提高了开发的灵活性,赛普拉斯微系统公司市场总监Nathan John表示动态可配置功能可将正常的开发时间缩短30%。
中国嵌入式工程师面临的挑战
虽然模拟与数字集成在同一芯片中,有利于简化电路设计和降低成本,但模拟与数字之间的距离变小,同一MCU中数字部分对模拟部分的干扰将变得更加严峻。如何降低MCU中数字对模拟的干扰,这将是MCU设计工程师和嵌入式工程师面临的新挑战。
从功能上看,PSoC进展是值得庆贺,Cypress在设计PSoC时考虑的主要问题就是数字对模拟部分的干扰,但是当模拟信号较小时,其干扰仍然不可忽视,在一些应用只能使用外部模拟放大器、滤波器和ADC,在信号进入PSoC之前进行模拟处理和模数转换。
嵌入了模拟元件的MCU虽然减少电路原理设计方面的工作,但对PCB的布局与布线提出了更高的要求。目前在中国嵌入式系统开发中,许多开发团队的重点放在电路原理设计和软件设计上,加之中国在大学中使用的嵌入式教材花了大量篇幅介绍如何除去ADC采样后的噪声,如均值滤波、中值滤波、最小二乘滤波……,使人们误认为模拟信号数字化后产生的噪声是必然的,熟练掌握各种去噪算法是嵌入式软件工程师应尽的职责,完全忽视了PCB设计在整个系统的重要性,PCB的设计任务通常是由低水平的工程师承担。自1999年起,作者十分关注国内嵌入式系统设计中有关PCB的设计现状,结果发现许多专业化的设计公司,由于PCB的设计缺陷,使产品不能顺利通过EMC测式,16位分辨率的ADC,实测精度只有10位,更有甚者在一家公司采用TI的16位ADC ADS8364时,其实测精度只有7位。
MicroConverter和MicroSystem Controller的实际应用过程中,作者也发现许多公司的产品其ADC精度与ADI和TI提供的评估板精度相差甚远,其原因基本上都是PCB设计不合理造成的。
“细节决定成败”,在互联网高速发展的今天,中国嵌入式工程师在信息、芯片和工具的获取上已与世界同步,如果我们不重视与PCB设计类似的细节问题,就像今天SMD元件已普及,但没有掌握使用SMD元件的方法,仍然使用大量性价比很差的DIP元件一样,我们将无法面对具备极高性价比的混合信号MCU大量面世的现实,使我们开发的嵌入式系统在世界上不具备竞争优势。 |