引言
多年来,嵌入式系统设计工程师不得不凭借其掌握的C语言和汇编语言技巧来对嵌入式系统中所采用的各种微电脑和微控制器进行编程。
芯片制造商始终认为:在典型嵌入式系统中,固件的首要难题是最大速度和最小存储容量要求。显然,他们的论点是:任何旨在采用更高级语言和/或其他更先进的计算机科学编程技术的努力,其结果有可能只会增加开销,也就是说消耗更多的存储资源,降低运行速度,而且最糟糕的或许还是调试时间的大幅度增加。因此,随着软件应用开发人员拥有越来越多的“可视(Visual)”型以及被称之为“面向对象”的方法和开发工具,硬件应用设计师往往被置于依靠C语言和汇编语言来解决其设计难题的窘境之中,嵌入式系统设计师则尤其如此。
结果,设计师发现自己经常试图把必需的固件塞进一个或另一个微控制器中,花费大量的时间来完成编码的开发和优化,并耗用漫长的时间进行调试,但最终结果很可能是各项新设计实际上完全“没有带来任何价值”。
可视化编程技术
如今,嵌入式系统设计师得以首次运用“可视”编程技术来实现新型嵌入式系统应用,而无需编写或调试任何代码。此外,该技术既没有任何性能损失,也没有额外的存储器开销。
赛普拉斯公司推出的可编程系统级芯片(即PSoC)为嵌入式系统设计师提供了一款将一个可编程微控制器与众多数字和模拟器件加以集成的单芯片解决方案。该混合信号阵列受控于积分微控制器,并提供了可配置的模拟/数字部件,使得设计师能够实现ADC、DAC滤波器、放大器、比较器、定时器、计数器、PWM、I2C、UART、SPI以及IrDA器件。赛普拉斯公司提供了各种具有4~32KB
SONOS闪存以及用于数据存储的256B~2KB SRAM的PSoC器件。
PSoC拥有众多的优点,包括与应用的精确相符性、较少的元件用量、大为缩短的开发时间、更加优良的ROI、无NRE设计成本、较小的BOM、库存要求的降低、制造成本和时间的缩减、更高的可靠性以及更大的设计可重用性。
图1 PSoC是一款具有MCU和非易失性存储器的全面可配置型混合信号阵列控制器(略)
赛普拉斯公司最近还推出了PSoC Express,这是一款用于PSoC设计的创新型工具。PSoC Express是近几十年来业界在嵌入式设计方面所取得的最为重要的进展。该项技术突破基于赛普拉斯公司获奖的开发环境PSoC
Designer,并运用了计算机科学方面的一些最先进的理念。此外,PSoC Express还为PSoC Designer提供了一种易用型界面。用户只需简单地点击PSoC
Express的可扩展、经过预封装和测试的输入和输出设备目录选项即可。除其他内容外,该“目录”中还包括:
a)温度传感器
b)数字IO输入
c)输入电压
d)开关、按钮等
e)测速计
f)风扇
g)LED和LED显示器
h)PWM
i)继电器
通过规定合适的转移函数,设计师随后便可提供输入与输出之间所要求的关系。设计阶段到此完成。运用PSoC Express的仿真模式,设计师就能够确认设计的正常运作。而且,所有这些都在同一台PC上完成。过去,设计师需要学习新型开发工具、具备C语言和/或汇编语言编程技巧、花费大量时间进行调试并连续不断地“每次从头开始”,这种时光已经一去不复返了。
图2 一款采用PSoC Express实现的4风扇控制器设计(略)
PSoC Express的开放式架构使得它能够支持嵌入式系统中常见的各种输入/输出器件以及新面市的器件。此外,还可以把新型设计加封,即将其合并到PSoC的“元件”目录中,从而在PSoC
Express的资料库中提供新的对象。这意味着设计师能够以早先的设计方案和新型器件为基础来开展设计工作,而不受一组固定的积木式部件的限制。
这些元件是对用于全面描述专用元件及其功能所需的所有信息的封装。由于每个元件都是一个稳定而完善的对象,因此最后形成的设计方案不需要进行代码调试。PSoC
Express实现了与PSoC Designer的无缝集成,于是设计师根本无需查看或编写任何源代码便能够实现将构思变成最终的设计方案。
简化调试
长期以来,新设计的调试阶段在设计师的开发时间中所占的比例高达70%。通过完全消除被证明是嵌入式系统设计最耗时的一个方面(即调试时间),PSoC
Express在元件(对象)中所体现出的稳定代码的固有重用性提供了诸多好处。就如同面向对象的范例使软件开发人员摆脱了结构化编程语言所招致的复杂性一样,PSoC
Express也使硬件设计师从目前嵌入式开发/设计环境的错综复杂之中解放出来。
一旦设计完成,PSoC Express将生成电路图、材料清单和产品数据表。设计师随后便可以采用PSoC Express的仿真模式来进行设计仿真。设计一旦结束,PSoC
Express将把设计的固件下载到目标PSoC器件。设计师常常关注在某种特定应用中所使用的代码的质量,很大程度上是因为它关乎代码的稳定性和鲁棒性。
有些设计师对其开发的所有设计方案都要求使用完整的源代码。另外一些设计师则坚持要求对其代码进行可能的最大限度的优化,旨在满足其独特的设计要求。对于那些希望检查最终固件的设计师而言,他们可以通过利用PSoC
Designer来检查设计源代码的方法来得偿所愿。当PSoC Express生成了目标设计时,如果需要,还可以对合成代码做进一步的优化。然而,大多数设计师发现,虽然能够使用源代码,但由于生成代码的质量的缘故,此类源代码使用通常是没有必要的。
由于PSoC Express与赛普拉斯的开发环境PSoC Designer一道工作,因此,设计师可以利用所有的生成代码和完整的PSoC
Designer工具套件来强化(或修改)源代码。PSoC Designer还提供了一种精细的调试程序,该程序可被用来对任何由设计师做出的源代码变更加以完善。
PSoC Designer的传统开发成套工具包括一个汇编器、C语言编译器、链接程序、编辑器、精细化调试程序、一套完整的赛普拉斯PSoC产品数据表、综合文档、针对ICE和外部设备编程装置的支持,所有这些都被整合在一个功能齐全的开发环境之中。PSoC
Express允许嵌入式系统设计师在一个比过去高得多的抽象级上工作,从而能够专注于设计而不是实现细节。
PSoC Express将新型嵌入式系统的设计缩减至4个简单的步骤:
⑴ 选择输入和输出元件;
⑵ 定义输入和输出之间的关系;
⑶ 在设计师的PC上进行设计仿真;
⑷ “构建”设计并对目标设备进行编程。
采用PSoC Express的嵌入式系统设计变成了一个标准的“暗箱式”(black box)过程,在该过程中,一旦定义了输入和输出、指定了合适的转移函数且设计在仿真中正确运作,则设计师将指定一个特定的目标设备、“连编”将生成所需的固件、PSoC
Express将把这些固件下载至目标设备,从而完成设计。以往需要数日或数周才能完成的设计如今只需短得多的时间便可大功告成。
图3 PSoC Designer的“可视”界面(略)
PSoC Express可生成一个与Excel软件兼容的详细材料清单,内容包括器件名称、描述、封装类型、参数值和销售商产品型号。另外还生成了电路图和详细的设计数据表。这意味着设计各个方面的内容都实现了自编文档,众所周知,设计文档的编制是整个设计过程中最为繁重耗时的环节之一,因而这使设计师的工作量得到了进一步的减轻。
小结
简而言之,由于设计师完全无需过问构成一项设计的元件的实现细节,因此,可以说“即插即用”最终进入了嵌入式系统领域。取而代之的是,设计师只需处理一组性能完善的积木式部件(也称为“元件”或“对象”)以及这些部件之间的关系。而且,代码生成也不再必需由设计师来完成。像PSoC
Express这样使设计师的工作方式发生了实质性改变的重大创新确实罕见。PSoC Express消除了最为可怕的设计难题(而不仅仅是把它们转移到另一个地方),从而令嵌入式系统设计被视为一件乐事!嵌入式系统设计终于凭借PSoC
Express的推出而迈入了二十一世纪。而且,它从来没有像现在这样简单过。
|