首页 > 江南app地址官方计划

释放无线模块的处理能力

来源:新能源汽车网
时间:2023-03-15 17:09:40
热度:

释放无线模块的处理能力当嵌入式设计人员利用无线模块中经常被忽视的处理能力时,他们通常可以消除系统微控制器,从而创建一个更小、更高效且生产成本更低的支持蜂窝的系统。以下是选择可用作微

当嵌入式设计人员利用无线模块中经常被忽视的处理能力时,他们通常可以消除系统微控制器,从而创建一个更小、更高效且生产成本更低的支持蜂窝的系统。以下是选择可用作微控制器和调制解调器的模块的指南。

在为嵌入式系统添加蜂窝连接时,许多设计人员选择无线模块,因为它们是预先集成的组件,并以少的配置执行蜂窝通信。它们经过预可用于移动网络,可以在范围内部署。开发人员使用串行接口与模块交互,而不必关心蜂窝调制解调器收发器设计的复杂方面。

通常情况下,设计人员将无线模块与标准微控制器结合使用,这通常是材料清单中成本的两个项目。微控制器管理应用程序并与外围设备交互,而模块主要负责蜂窝通信。

然而,许多无线模块的功能远不止管理蜂窝通信,因为它们通常使用包含 32 位 ARM 微控制器的集成芯片组。利用这种处理能力,设计人员可以使用该模块来管理整个应用程序。该模块可以充当中央处理器和调制解调器,无需独立的微控制器。由此产生的系统更紧凑,使用更少的功率,材料成本明显更低。

图 1描绘了一个集成 ARM9 微控制器的示例无线模块,这是嵌入式系统中使用广泛的控制架构之一。


图 1:无线模块的详细框图,显示了 ARM9 内核

当无线模块的芯片组初设计于 1990 年代时,ARM9 是完整手机的微控制器。如今,作为嵌入式蜂窝调制解调器的模块,ARM9 的主要功能是蜂窝控制,通常只使用不到其总处理能力的 20%,留下多余的能力来做其他事情。

然而,设计人员不能总是假设他们的无线模块可以承担整个应用程序,因为并非所有模块都提供对 ARM9 过剩容量的访问。一些模块虽然使用与完全可编程模块相同的基本芯片组,但出厂时只有一部分 ARM9 的引脚连接到外部封装,使其无法访问。

如今,设计人员在选择提供完整 ARM 内核访问的模块时有多种选择。有些将 ARM9 内核的 ARM946 变体与 ASIC 中常用的 DSP 功能集成在一起。至少有一家供应商正在开发具有其他 ARM 内核(包括 ARM926 和 ARM11)的模块,因此设计人员很快就会有更多选择。

尽管硬件和软件要求因应用程序而异,但请仔细考虑这些基础知识。

硬件 
为确保模块的资源能够支持完整的应用程序,请检查可用的 MIPS 和内存资源以及功耗,尤其是在应用程序将使用电池的情况下。

CPU MIPS 
CPU MIPS 在用于蜂窝通信的应用程序和固件之间共享。表 1 给出了典型 2G M2M 模块每项服务的平均 CPU 消耗。


表 1:每项服务的 CPU MIPS 消耗

要确定应用程序可用的 MIPS 数,请从可用总数中减去蜂窝通信所需的 MIPS。例如,如果以 104 MHz 运行的无线模块总共有 87 MIPS 可用,则 GPRS 传输峰值将消耗大约 16 MIPS (18%)。总计 87 MIPS 减去用于 GPRS 的 16 MIPS,剩下 71 MIPS 可用于应用程序。

寻找有助于化性能的功能。例如,直接访问 UART 的低级 API(包括中断处理程序)使 CPU 更容易为 GPS、蓝牙或 ZigBee 等设备驱动外部芯片组。

内存 
模块的内存资源也在蜂窝固件和主应用程序之间共享。ARM9 内核中设计的内存管理单元可保护任何分区内存并使它们保持独立。图 2 显示了示例 3G 模块中固件使用的内存。


图 2:示例模块中的内存使用情况。

示例模块具有 128 MB 的总 NAND 闪存和 64 MB 的总 RAM 存储器。蜂窝固件需要 82 MB 的 NAND 闪存用于非易失性数据,43 MB 的 RAM 用于全局变量、堆内存和调用堆栈。剩余的 46 MB NAND 闪存和 21 MB RAM 可用于主应用程序。由于NAND flash不能直接执行代码,所以代码被复制到RAM中执行。

对于使用寿命非常长的应用,一些模块通过减少闪存擦除次数来延长闪存的使用寿命。系统在硬件或软件重置期间保留某些变量的数据。这提高了重启速度,尤其是在发生意外事件后,因为数据可以保留在 RAM 中。

电源 
大多数模块都包含省电功能,尤其是在系统空闲时。待机功耗通常介于 1.9 mA 和 5.7 mA 之间,足以满足电池供电系统的需求。然而,对于具有极端功耗要求的应用来说,它可能不够低,在这种情况下,使用外部微控制器可能会产生更好的结果。

寻找当蜂窝功能处于非活动状态时进入睡眠模式的模块,以及快速启动序列或根据操作状态为各个模块供电的功能等功能,这可以降低功耗。当进行无线传输时,一些模块会暂停其他电池密集型操作。

软件

RTOS 
嵌入式系统的选择是多任务、抢占式实时操作系统 (RTOS),它免版税并支持熟悉的编程语言以保持较低的总拥有成本。

多个模块可与为机器对机器 (M2M) 应用程序定制的 RTOS 一起使用。它们包括蜂窝协议和 TCP/IP 堆栈,并针对通话时间和功耗进行了优化。考虑音频功能,例如用于汽车的 VDA 2A 级、音频诊断和过滤器,以及音频播放器/录音机/嗅探器功能。故障安全文件系统、SSL 和加密引擎等数据保护功能有助于提高应用程序的安全性。

ARM9 可能会管理外部异步事件并需要的定时功能。寻找可以减少异步事件延迟并可以驱动通过 SPI 或 I2C 连接的多个 IC 的 RTOS。这使得使用 CAN 控制器、加速度计或车辆传感器、以太网或 Wi-Fi 控制器或补充 USB 或 UART 设备等附加功能扩展设计成为可能。集成的硬件定时器与低中断延迟相结合,可以高精度地为外部事件添加时间戳,从而无需外部定时器。

由于许多嵌入式M2M设备将投入使用很长时间,因此选择支持远程软件升级的RTOS很重要。如果运营商更改网络或需要更新应用程序,可以使用软件升级功能使更改。无线更新减少了服务电话并有助于避免召回。

应用程序库 
精选的预配置软件组件库使设计人员无需为常用功能编写代码,因此开发进展迅速,调试更加简单快捷。表 2给出了库和函数的示例列表。


表 2:样本库 

开发环境 
一些模块可用于基于 PC 的集成开发环境 (IDE),设计人员可以开发、编译、、测试和调试整个应用程序。寻找基于 Eclipse 的 IDE,这是一种支持 Java、C 或 C++ 的多语言环境。其他节省时间的功能包括使用工具链和 GCC 参数进行项目编译、嵌入式调试器,以及使用 AT、跟踪和内存控制监视目标的能力。应用程序库通常伴随着示例应用程序和示例设计。

设备管理 
为了简化从开发到部署的过渡并支持持续维护,一些模块提供基于云的管理服务,允许使用网络门户进行远程监控和升级。这些服务提供了一种在任何地点以任何规模测试、安装和维护无线模块的方法,同时确保安全性并保持低成本。当整个应用程序都在模块上时,管理服务特别有用,因为无线监控和更新可以评估和修改应用程序以及与电信相关的功能。

结论 
使用无线模块的过剩处理能力来代替微控制器可以产生更小、更高效且生产成本更低的配备蜂窝的系统。并非所有无线模块都可以配置为应用微控制器,但设计人员有很多选择。在进行选择时,重要的是要考虑硬件规格,包括处理能力、内存资源和功耗。设计人员还需要权衡软件编程选项,如 RTOS 和软件库。一个模块应该有一个完整的、易于使用的开发环境,由设备管理服务支持,以便对已部署的系统进行更轻松、更便宜的长期维护。

Baidu
map