微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 行业新闻动态 > MCU的大时代

MCU的大时代

时间:05-13 来源:3721RD 点击:

微控制器(MCU)正在变得越来越复杂,越来越强大,因而越来越有用。但是这些进步都是都代价的。

开发带高级电源管理功能的多核MCU硬件并不太难,由于存储器的限制,开发出适合多核MCU的软件则难得多。CPU系统可以用SRAM片上存储器,或者外部的DRAM。不过对MCU系统而言,所有的存储器都在片上。所以CPU系统可以跑大型的Linux或Windows操作系统,MCU则只能跑相对简单的实时操作系统。

"以视频市场为例,你可以开发基于MCU的应用,也可以开发基于CPU的应用,甚至可以开发两种系统都能跑的应用,"Cadence IP事业部CTO Chris Rowen说,"使用MCU的视频分辨率更低,不论是CPU方案还是MCU方案,多样化的视频接口都会让设计变得复杂。用CPU系统开发要求相对没那么严,例如你可以把整个缓冲区(buffer)写满,在MCU就不太可能这么干。用MCU开发,数据的交换更需要技巧,所以产生故障(bug)的可能性也增加了。"

更难的是利用MCU来分担CPU的负担,例如作为协处理器去加速某种计算,或者作为低功耗应用时的备用处理器。

"考验MCU的程序员的问题是如何满足处理速度的要求," Rowen说,"自动车库门开启或者关闭花费几百毫秒都可以接受,但要满足高速数据流的处理需求,则须采用并行处理。所以当把MCU设计成另一个次级计算引擎(sub-engine)时,你需要处理器有能力进行数据计算,这就要求编程风格非常严谨。在高速数据处理场景下使用MCU,非常非常难。"

虽然有诸多困扰,MCU的应用场景不断拓展,使用方法也屡屡突破常规,如今在复杂的系统及芯片(SoC)中内建MCU已经很常见。在SoC这种复杂应用场景中,MCU的功能一般都只做特定的任务,例如唤醒CPU,但无论从设计、验证还是一致性的角度来看,在SoC中让多个MCU协同工作都非常难。

"在同一颗SoC中集成Cortex A(CPU)与Cortex M(MCU)的趋势呈现加速状态,"Mentor Graphics嵌入式产品高级产品线经理Andrew Caples说,"以高级驾驶辅助系统(ADAS)这个嵌入式应用最精华的代表为例,可以用多个处理单元--微控制器(MCU)、微处理器(MPU)、数字信号处理器(DSP)--来实现ADAS,SoC意味着更低的故障率、更低的成本以及更低的散热需求,但增加了软件设计的复杂性。开发人员要在SoC集成的MCU、MPU与DSP上开发多个实时操作系统,并在这一颗芯片上开发和调试。这就需要开发人员的方案能够适应不同的平台(MCU、MPU、DSP),这给半导体公司增加了很多压力,为了帮助客户真正利用起SoC中的所有器件,它们需要提供给开发者足够的库文件和解决方案参考。"

Caples表示只要多核SoC的应用有操作系统,就一定会遇到一堆同步问题,因为不同核之间靠等待来协同工作。"我们正在为这个领域的应用开发工具,"他说,"对于硬件工程师来说,过去这些年摩尔定律一直很有效,硬件的性能在提升,成本在下降。但是软件开发却是另外一回事,随着系统复杂度越来越高,软件开发的成本不断攀升,而且现在看不到任何可以改善的迹象。"

欢迎来到MCU时代
虽然存在上述挑战,但随着物联网的发展,物与物之间的通信越来越多,因此开发人员希望MCU在复杂系统中发挥越来越重要的的作用。相比CPU,MCU的功耗更低,价格也更便宜。一方面,8位MCU在一些简单任务处理中仍然不可或缺;另一方面,32位甚至64位多核MCU已能应对很多复杂应用。所有这些MCU都可以与CPU或GPU集成在同一颗SoC里面,这样CPU或GPU可以在多数时间里面处于休眠状态。

"MCU越来越复杂,"ARM建模技术总监 Bill Neifert说,"引入32位微控制器以后,人们开始问可以用这些MCU做什么。"

MCU当然不只用在汽车的安全领域,从工业设备到智能拖鞋这种消费类产品都可以用到MCU。以监控人是否滑倒的智能拖鞋为例,低成本、低功耗的嵌入式处理器(MCU)就非常适合,因为其可以为某种应用定制。

"每个人都想要最有效的解决方案,定制化的MCU在成本和功耗上都优于通用产品,"Neifert说,"特别是物联网设备,很多都是电池供电,因此对与功耗非常敏感。用户希望能找到专用产品帮助他们快速开发,尤其是消费电子领域的客户。定制化MCU也需要建模,但复杂度比CPU或GPU低多了。"

复杂度是相对的。"我们打算用64位的MCU开发真正智能的设备,"Vista Ventures 经营合伙人 Jim Hogan说,"但这些MCU的代码堆栈相当有限。"

在这种趋势下,MCU也开始介入到计算当中--特别是物联网的应用。"不是传统的计算," ARM 物联网市场副总裁Zach Shelby说,"在MEMS应用中,利用32位和64位MCU来计算已经很常见。关键在于我们如何将软件设计

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top