嵌入式产品设计放眼未来


选择好合适的处理器,并选择好合适的逻辑线路实现方法,将会促进产品在当前和今后的更新换代中进行折衷和提供有特色的选择。

为了产品的成功而对产品进行适当的装扮修饰,就是显示你的能力和与众不同的技巧。这种能力与技巧,是以最小的代价、最少的努力和对细节的适当注意来满足客户的需求。为你开发的产品选择好正确的实现方法也没有什么不同,也就是说,除非你有一位慷慨的受益人,他对于投资根本不要求回报。穿着定做的讲究服务去应聘一个从事机械加工的职位,也许会令人怀疑你是否了解这个职位的具体要求,并说明你不大注意细节。最有力的或者花费最大的措施,并不总是合适有效的;你的实现方法应该紧密地贴合实际应用的需要。
嵌入式系统产品要取得成功,必须具有:一个执行软件的处理器;执行软件没有完成的那些功能的硬件逻辑线路;以及与外部世界接口的一些外围部件。处理器是产品的基础,影响到你的产品设计的几乎每一个方面。因此选择好处理器和选择好逻辑线路的实现方法,是你将做出的最为重要的设计决定之一。这个决定将会推动你的当前和未来更新换代产品的那些可供折衷选择方案的推出。当你梳妆打扮以求成功时,人们会注意到使你与众不同的那些东西,如领带和其它饰品。使你的产品与众不同的机会很多,但是你就实现方法所做出的决定将会限制你的选择范围。
在本文中,处理器与逻辑线路实现方法究竟指的是什么呢?为了缩小这一问题的范围,将这种实现方法归纳为:一个软件可编程的处理器如何与其它的系统部件集成在一起,组成你的产品。这种实现方法对于数字信号处理器(DSP)、微控制器、DSP-微控制器对、DSP-控制器混合电路、多重处理器和通用处理器在你的设计中的应用予以抽象化,而且不严格区分。处理器的实现方法决定了你选择的处理器是分离的器件,还是与系统逻辑线路的大部分或者一部分整合在一起的集成逻辑模块。处理器可以是一种现成的标准器件、一种可以修改的器件或一种定制的器件。如同服装的样式一样,你做出的合适的选择,也可能因为市场和竞争对手使形成特色产品和某一种商品特点准则发生变化而随时间变化。

设计风格多种多样

许多供应商都提供现成的标准处理器(参考文献1到参考文献4)。通用的标准器件,立即可以买到,而且性价比适中,因为它们的开发费用已经分摊到许多产品项目中去了。一个处理器系列能够支持各种时钟速率、许多片上存储器和集成的外围装置,因而能满足各种各样从小到大的项目要求,同时能维持公司在开发工具和软件库方面的投资。各种系列的处理器可以装入插座兼容的、可互换的封装中,从而只要用同一种芯片去取代另一种芯片而不必修改电路板级的设计,就可使一个工程扩大或缩小资源。
采用通用的标准器件,与其它实现方案相比,只需要较少的前期投入,就可使开发小组迅速地开始实施其设计。如果不断提高要求需要一种新的或改进的硬件功能,则对一种器件的投资不大就可减少某些项目风险。设计人员对标准器件的性能特征比较熟悉,因此允许一个项目开始后迅速地将重点放在软件开发、电路板级集成与验证上。电路板级的集成、调试和元器件更换,都比在芯片级上进行类似工作要容易得多,因为线路板上的逻辑模块和接口更直接和容易理解。由于在许多开发项目中都包括有标准器件,因此熟悉这些器件并具有这方面经验的人才资源也比较丰富。标准器件稳定可靠、使用范围广,因而能促进强有力的软件开发工具、通用功能软件库以及第三方支持的基础设施的使用;这样一来就可以使项目开发小组更迅速地将产品投放市场。

有时,你的开发项目要提升,满足处理器性能、功率消耗、空间限制或成本等标准的最高要求,所以在电路板一级对固定的分立的元器件进行集成就不合适了。由于器件的集成度在不断提高,把电路板上众多的分立元器件集成为一个硅SoC设计,从而减少最终产品的元器件数量和尺寸的机会也在不断增加(参看附文《改变观念》)。最终产品的元器件数量少了,装配成本就会降低,可靠性也会提高。系统的功率消耗一般也比分立元器件的总功耗要低,这是因为在芯片内驱动负载要比在线路板上驱动负载需要的功率要少得多。由于负载的减轻,就可以提高运行的速度,因为芯片内部信号比芯片之间的信号运行的要快。
ASSP(专用标准器件)将专有的知识产权(IP)和一些通用的功能集成在一个封装中,专门用于有足够的产量、某些所需算法和功能实现方法不再成为其特色的成熟产品。ASSP具有集成器件的许多优点,但不需要额外的开发时间,不需要支付前期的开发费用和制造费用,也不像ASIC那样需要支付反复返工所需的NRE费用。通信、数字手机和调制解调器是推动ASSP发展的三大领域。包括DVD播放器、数码照相机和直接接收卫星电视广播的机顶盒在内的消费类产品,都得益于ASSP。由于某些产品寿命周期很短,数码照相机等产品的寿命周期只有6个月,这意味着产品上市时间比以往任何时候都重要。ASSP可以降低系统成本,并可使设计小组集中精力于产品的增值;然而,这些器件也提出了如何使你的产品具有特色这样一个问题,因为竞争对手也可以采用同样的器件,也同样可以享受成本降低的好处。

可配置的实现方法,通常是将一个软处理器模块或硬处理器模块与可编程逻辑电路集成在同一个支持硬件逻辑器件配置和重新编程的标准器件上。Atmel公司和Triscend公司都将处理器芯核与可编程逻辑器件集成在一起,以便进行协处理和支持外围设备。Proceler公司将一个软处理器芯核嵌入到一个PLD器件中,并在邻近可编程逻辑器件中实现由该公司的C编译器产生的优化程序循环。Xilinx公司和Altera公司同样也提供嵌入有处理器芯核的PLD器件。Altera公司的Excalibur器件正在使ARM处理器芯核,今后还将使MPS处理器芯核使用于不宜实现ASIC的产品中。
这些器件具有专用硬件的执行速度,但是却具有很大的功能灵活性。这样,将外围设备与嵌入式处理器芯核和可编程逻辑器件集成在一起,可以使设计师实现SoC集成电路,而这些SoC的系统级性能高于用分立元器件的,设计周期也比ASIC短。一般地说,可配置实现方法不支持集成模拟外设,因为模拟外设促使这几种产品使用ASIC。支持模拟外设会使改用先进的制造工艺来生产可编程逻辑器一事复杂化,从而使这些可编程器件的成本升高,速度降低。Cypress Microsystems公司生产的可编程SoC器件目前可支持8位处理器用的、在运行时间内编程的模拟外设。8位处理器对于外设选择的敏感性要比它对于更高集成度和更高处理速度的敏感性要大。
采用可配置的实现方法,它的逻辑设计一直到产品交付以前仍然是可以更改的,从而在设计过程中可以迅速地反复更改方案。你可以先交出一种满足最低要求的产品,再在产品使用后,增加各种功能。这种方法最适宜进行样机设计,并将因大量生产时的成本考虑而只能用ASIC实现的产品投放市场。对可编程逻辑器件再次编程,可以对硬件进行故障排除和升级,如同对软件进行排堵和升级一样。对可编程逻辑器件重新进行设计,向系统下载新的逻辑功能,再重新启动系统,就可以用同一种器件来支持不断演进的协议。这种方法就是可配置计算;可重新配置的计算则比可配置的计算前进了一步。

可重新配置的实现方法是在运行时配置可编程逻辑线路,这样使用比较少的逻辑门电路就可以实现比较大的硬件设计。Chameleon System公司和Quicksilver Technolgies公司都向市场推出了可重复配置的产品。Siroyan公司还推出了一种族群集ALU阵列,可以用作可重新配置的协处理器芯核,适合应用于需要采用算法密集的应用场合。理论上可重新配置的产品器件可能是支持多种通信协议的智能化移动电话手机,所以,当用户从采用某种通信协议的一个地区进入采用另外一种协议的地区时,手机硬件自动地重新配置,便能支持电话服务。当一种产品设计需要硬件去实现多种算法时,这种方法是适用的。由于你并不总是要具体说明所有硬件逻辑,所以你可以把支持附加功能的费用减少到存储逻辑设计所需的存储器的费用。
但是,在运行时重新配置硬件逻辑需要相当长的等待时间。这就需要精心制定计划,以便按准确的时间表配置硬件,以防止软件运行中断。惯性可能是可重新配置计算面临的最大的问题。当一项技术已经被设计师采用以后,成熟的开发工具与自动化设计工具才会出现。早在60年代后期,洛杉矶加州大学的一位研究人员就提出了运行时重新配置这种方法。然而,设计师一直迟迟未采用这种方法,因为这种方法只是在最近才能在学术研究之外的场合使用。这种方法迟迟未用的原因是,在它试图找到合适的应用领域,并与各种各样可编程方法和硬线连接法相竞争时,门电路密度已经提高了。

定制器件与可配置器件的不同之处在于,定制器件是用硬线连接的ASIC,与通用的可配置平台相比,能更好地满足产品的要求。定制器件在大量生产时具有较低的制造成本;可以更好地防止他人采用反向工程冒牌仿造;并在权衡性能、成本、封装以及功率消耗各项要求时具有最大的灵活性。但是获得这些优点也付出了代价。如果采用ASIC,要求在产品开发的较早阶段在财务上和技术上做出比较大的投入。当你将设计送去制造时,你还会失去对成本和上市时间的控制。但是,你在产品投入生产时所节约的成本用来补偿早期投资还是绰绰有余的。ASIC用户最担心的一个方面就是交付的芯片不能正常工作或交货时间推延所带来的风险。尽可能采用与制造工艺相适应的设计软件和模拟工具,并和芯片制造厂密切地合作,均可以有效地减小这种风险。
采用ASIC是一种决策,这种决策能使产品具有比其他方法更强的竞争力,更为重要的是,它还能使采用其他方法时不切实际的产品成为真正的商品。在一些应用场合,由于产品的性能、功率消耗、成本和在芯片上集成模拟电路的能力对产品的成功非常重要,采用其它实现方法都难于满足要求,所以做出采用ASIC的决定是适宜的。如果是为了节约零部件的生产成本而采用ASIC的实现方法,就需要仔细划分那些部分采用标准零部件,那些部分用定制芯片。如果集成程度过高,产品随着市场变化而变化的适应能力可能会降低;产品成本会比采用某些标准零部件(如RAM)要高;更糟的是产品的生产周期会缩短,开发新的产品的NRE费用会增加。选择合适的集成度,可以使开发的芯片起到实现一系列产品的平台作用,从而使所投入的前期开发与制造费用能够平摊到好几代产品上。 除了学术研究之外,几乎没有人会从零开始设计处理器结构体系去支持某种产品。工具对于日益复杂的应用产品的成功是至关重要的,而且是一种要认真对待的资源投资和开发时间投资。一种常用的解决办法是向供应商购买专有的知识产权模块和处理器芯核,而这些供应商都已经投入相当多资源来保证处理器芯核的质量和开发支持产品开发的各种工具。设计师按照公开供应的模型开发的芯核也是可以买到的(参看附文《公开供应的芯核与兼容的芯核》)。购买并使用IP芯核,可以大大地缩短产品的上市时间,并可集中资源用于产品的增值。
可获授权使用的处理器芯核,包括以硬件格式和可合成格式提供的DSP与微处理器。硬芯核是针对某一制造工艺的,并且锁定在处理器指令集和一定的特征上。有些标准处理器采用ARM处理器芯核和MIPS处理器芯核。你可以配置并扩充适合于你所选择的制造工艺的可合成处理器芯核;但是要获得额外的灵活性,你的设计小组必须做出更大努力来实现并验证这一系统。DSP芯核,如3DSP公司、BOPS公司或LSI Logic公司供应的DSP芯核,都具有专用的DSP功能,并且支持与主处理器芯核配对,去完成对产品的控制。Arc公司和Tensulica公司都提供为其芯核增添DSP功能的扩充部件。
处理器的配置既可以有也可以没有外围设置、存储器、高速缓冲存储器、执行单元、接口电路或者多个处理器,对此,你不必加以限制。你还可以增加对指令集的扩充。在芯片中减去不必要的部件,甚至部分指令,可以减少芯片的面积和所消耗的功率。但是如果在精简逻辑部件方面走得过远,你有可能会丢掉电路计时功能。减少那些为你提供不需要的指令的逻辑线路,也可能会减少你的功耗,但也会严重限制你使用在以后几代产品中会用到这些指令的遗赠软件和已购算法的能力。产生可并行执行多任务的扩充指令,能使得性能得到必要的提升;能缩短代码长度,从而可以使用较小的存储器

COPYRIGHT(C) 2011 厦门永宏亚得机电科技有限公司版权所有(闽ICP备05025945号) ALL RIGHTS RESERVED?

电话: 0592-5190891 传真: 0592-5190720 E-Mail: E-mail:yade8895@163.com
地址: 厦门市海沧区兴港六里17号2607室 邮编:361009 联系人:翟先生