在物联网之前,嵌入式设备曾经相对简单易用。设备,工业控制器或环境传感器的设计者只需要连接输入信号,与微控制器一起处理并提供输出控制。系统是独立的; 除了逆向工程之外,黑客没有动力访问系统。
随着智能手机的推出,我们现在希望我们的设备智能化,可升级并可通过互联网访问。安全性不是可选的,如果不认真对待安全性,数据,品牌声誉和收入流都会受到影响。此外,嵌入式系统变得越来越复杂,你不可能成为一切的专家!幸运的是,您可以使用现有标准和堆栈库以及时,安全的方式完成项目。
本文概述了嵌入式开发人员当前面临的主要设计挑战,以及一些有助于设计人员应对这些挑战的新技术。
关键设计挑战和市场预期
1、丰富的用户界面
第一款智能手机引入了丰富的用户界面,配有高品质的显示屏和触摸屏。高端嵌入式设备增加了LCD和OLED显示器以及触摸屏。这增加了处理要求以及对应用处理器和丰富操作系统的需求。对于那些不需要应用处理器的人来说,技术进步已经将微控制器的时钟速度从数十兆赫兹推升到几百兆赫兹,内存大小推动到几兆字节。这使设计人员能够继续从熟悉的架构中受益,例如用于Arm Cortex-M的架构。
许多嵌入式系统仅需要用户界面进行配置和偶尔控制。消费者和工业物联网设备对价格非常敏感,并且可以通过互联网连接获益,以便通过网络界面或智能手机应用进行控制。例如,可以远程监控来自工业传感器的数据,以管理性能和错误,以及预防潜在的故障。这为嵌入式工程师带来了新的挑战。他们现在必须了解RF,协议栈,安全性,远程管理和固件更新。
2、本地和远程控制
您可以通过以太网,WiFi,蓝牙,Z-Wave,Zigbee或线程实现本地和远程控制在功耗,复杂性和成本方面都有优势。通常,低功耗协议,如蓝牙低功耗,Z-Wave和Zigbee,是电池应用的理想解决方案。这些包括门锁,环境传感器和无线报警系统。需要更多带宽的设备(如安全摄像头和传感器网关)将通过WiFi连接。或者,远程位置的设备将使用蜂窝网络。一个有趣的选择是结合WiFi和蓝牙低能耗。然后,蓝牙用于调试和本地访问以实现低延迟,并且WiFi用于通过因特网进行远程访问。
嵌入式设计开发人员面临的挑战不仅仅是如何为他们的产品选择合适的解决方案,还包括集成无线电,通信堆栈和管理电源的复杂性,所有这些都不会增加成本。
3、功率越来越低
在电池供电的应用中,低功耗至关重要。例如,智能水表需要在仪表的使用寿命内使用单个电池,最长可达20年。另一方面,在门锁中,电池可以每年更换一次,这需要仔细设计。用于省电的技术之一是设计一个功率非常低的微控制器,以便在非常短的时间内开启以感测用户交互。然后它将睡眠更长时间。
4、设备变得更加智能
设计师正在寻找通过添加智能功能来区分其产品的方法。智能功能通常意味着设备可以更多地了解用户,环境和系统,并且可以调整功能。
机器学习是使用可以学习和适应的算法添加智能功能的一种方法。我们今天看到了机器学习:从指纹解锁(匹配到一小组指纹图像)或Facebook自动标记功能。但是,它是嵌入式,成本受限系统中的一种相当新的解决方案。
嵌入式机器学习的一个很好的例子是智能恒温器。恒温器将根据用户的生活方式了解用户的行为,然后随着时间的推移,将自动将温度调节到最舒适的设置。对于工业市场,一个例子可以是用于电动机的振动传感器。传感器可以了解电机的正常振动特征,然后在设备需要维护或即将发生故障时向人员发出警告。
嵌入式设计人员面临的挑战是开始使用机器学习算法,并能够根据应用需求调整算法。
5、产品需要更新
今天的产品很少附带最终功能集。通过无线(OTA)更新,可以下载新固件以添加功能,修复错误或修补安全漏洞,从而显着延长产品的使用寿命。产品还必须具有足够的内存空间和处理能力,以增加代码大小和功能。
一个挑战是确保固件更新和所有通信都是安全的。修补固件漏洞时,系统不应允许回滚固件。如果是,则会暴露漏洞。
帮助设计人员应对这些挑战的新技术
我概述了嵌入式设计人员面临的挑战以及推动他们的行业趋势,但潜在的解决方案又如何呢?我认为有三种基本设计技术会影响上面定义的所有领域:实现信号处理,保护设备并通过机器学习添加智能。
如何简化信号处理并节省成本?
大多数嵌入式系统都有模拟接口 这些可以简单到通过模数转换器读取温度,到更复杂的系统,例如处理来自多个麦克风(波束成形)和语音识别的声音。
较旧的设计用于在模拟域中执行大部分应用和滤波,但是使用专用数字信号处理器(DSP),处理已经转移到数字域。这是因为DSP在制造过程中更准确,可重复,并且可以随时调整。
随着数字信号控制器(DSC)或具有DSP扩展的微控制器的引入,设计人员现在可以拥有两全其美的优势。可以执行DSP和控制功能的单个控制器可以降低成本,电路板空间和功耗。
数字信号处理可能很复杂,但设计人员不必是专家就可以使用高级处理。例如,Arm为嵌入式应用程序CMSIS-DSP库提供了一个免费的软件框架。
我为什么要关心安全问题?
安全性不足的产品可能导致数据丢失,尴尬的宣传,财务成本和客户受挫。安全攻击可以跨越所有部门并具有不同程度的影响,包括访问家庭自动化系统,打开和关闭灯光,工业间谍活动以及通过物联网设备访问网络。
外部威胁可以分为四种攻击类型:通信,生命周期,软件和物理。但是,您如何知道需要防范哪些威胁以及如何使用适合您设备的安全级别进行设计?去年,我们为任何设计连接设备的平台安全架构(PSA)推出了安全框架。这是一个三阶段流程,为设计人员和开发人员提供他们所需的一切,以确定他们应该选择的安全级别和威胁缓解。在PSA的文档和源代码开放(可信固件-M),使开发人员更容易上手。