0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

更新固件的灵活性 物联网设备的关键

星星科技指导员 来源:嵌入式计算设计 作者:Hardik Patel 2022-10-07 07:35 次阅读

物联网IoT) 设备正在快速进入市场——从家用电器到医疗设备再到汽车——因为制造商必须通过新的创新和采用或集成新技术的灵活性保持领先于竞争对手。随着新功能和法规的采用,设计人员必须在其产品中增加灵活性,以满足不断发展的物联网生态系统。固件更新不仅允许在客户站点的初始部署期间进行定制,而且还允许在产品投入使用后添加新功能/特性或允许在使用过程中修复任何固件问题。

诸如 NOR 闪存的非易失性存储器 (NVM) 设备由于其可重编程性和可靠性而通常用作固件代码存储介质。通过重写驻留在设备中使用的 NVM 中的部分设备固件代码,制造商可以轻松更新设备功能。

在寻求更新固件时,需要考虑三件事:

更新什么/多少代码

多久更新一次

执行更新所需的时间(速度)

要更新什么/多少固件代码

在物联网设备的初始设计阶段,必须考虑更新什么以及更新多少固件代码。固件的可更新部分必须与不可更新部分存储在 NOR 闪存设备的单独区域中。

更新任何一块 NOR 闪存首先要擦除内存的该部分,然后将新信息编程到该部分中。NOR闪存被组织成不同大小的部分,称为扇区和块。NOR 闪存设备,例如 SST 的 64 Mb SuperFlash SST26VF064B 技术,被组织成统一的 4 KB 扇区(4 KB = 4 * 1024 * 8 位 = 32,762 位),可以单独擦除和重新编程。它们还可以组织成更大的 8 KB、32 KB 和 64 KB 块,也可以单独擦除。因此,1 个 8 KB 块有 2 个扇区,1 个 32 KB 块有 8 个扇区,1 个 64 KB 块有 16 个扇区。图 1 显示了 SST26VF064B 在 8/32/64 KB 块中的存储器结构,每个块都可以单独保护。

pYYBAGMXFIGARqZkAAE8ujJttOI086.jpg

【图1 | SST26VF064B 的内存组织(映射),由八个 8 KB 块、两个 32 KB 块和 126 个 64 KB 块组成。点击放大。]

在对闪存的任何部分执行任何更新之前,该部分中的块必须不受保护以允许擦除和编程。完成更新后,谨慎的做法是再次保护这些块,以防止对这些区域的任何无意写入或擦除。

固件的可更新部分必须以扇区和块的形式组织,以便有足够的灵活性来允许有限和最大的特性/功能更新。由于更新的速度取决于需要擦除和重新编程的扇区和块的数量,因此在组织固件的可更新部分时,最好同时考虑速度和灵活性。图 2 显示了将内存组织为可更新和不可更新部分的示例。不可更新部分(例如引导代码)存储在受保护区域中,而固件的可更新部分(例如特性/功能)则根据灵活性要求分为更小或更大的块。可更新的图像文件存储在较大的块中,可更新的变量/参数存储在较小的块中。

pYYBAGMXFIOAZWQ7AAFvK8wYBWU821.jpg

【图2 | 在不可更新部分(例如引导代码)和可更新部分(例如函数/特性、图像文件和参数变量的代码)中组织内存。点击放大。]

多久更新一次

您可能想要更新固件的频率的主要限制是应用程序中使用的内存的耐用性限制。SST26VF064B 等 SuperFlash 技术存储器具有 100,000 次耐久周期,这意味着每个扇区可以编程和擦除 100,000 次。更新固件 100,000 次的可能性听起来很多;然而,许多物联网设备在运行期间收集数据并将信息存储在 NOR 闪存中,因此在计算最大耐用周期限制时必须考虑这一点。

在内存中分配足够的扇区以考虑耐用性也很重要。例如:

假设物联网设备正在收集和存储 16 字节的信息,并且在产品的生命周期内预计会收集和存储 1 亿次信息。应该分配的扇区数可以计算如下:

1 个扇区 = 4 KB

假设扇区中的所有地址位置都用于存储信息,一次 16 个字节的数据,并被写入一个新的地址位置,直到到达扇区的末尾(例如,0×0000-0x000F 然后 0×0010 -0x001F 然后 0×0020-0x002F 等)。

由于 4 KB/16 字节 = 256,这是在达到扇区容量并擦除扇区中的任何数据之前可以写入存储的次数。如果一个扇区的耐久极限是100,000个周期,一个扇区可以写256次100,000个周期,那么可以收集和存储25,600,000次数据。

如果一个应用程序需要收集和存储 1 亿次数据,则要分配的扇区数计算为 100,000,000/25,600,000 = 3.9。因此,在此示例中,需要分配 4 个扇区来存储应用程序生命周期中的 16 个字节的数据。

物联网设备工程师需要进行类似的计算,为数据记录参数分配足够的扇区和块,以免超出其 NOR 闪存设备的耐用性限制。

更新速度

更新的速度可以根据需要擦除和重新编程的块和扇区的数量来计算。假设需要重新编程存储在 SST26VF064B 中几个 64 KB 块中的 1 Mb、2 Mb 或 4 Mb 固件代码/数据。代码/数据可以由固件代码、图像文件或其他需要更新的代码组成。执行更新涉及执行一系列命令指令以进行闪存。该序列将从取消保护内存块开始,擦除这些块,用更新的数据/代码对这些块进行编程,然后重新保护这些内存块。

对于 SST26VF064B,更新 1 Mb、2 Mb 或 4 Mb 存储器所需的指令序列如表 1 所示。从表 1 可以明显看出,两个最重要的周期是擦除时间和编程时间。

poYBAGMXFIaAFCngAARkuq0px2s440.jpg

[表 1 | 用于更新 1 Mb、2 Mb 或 4 Mb 内存的闪存命令指令序列。点击放大。]

SST26VF064B 采用 SuperFlash 技术,可提供出色的擦除性能。SuperFlash 技术与传统闪存的擦除和编程性能比较如表 2 所示。与传统闪存相比,SuperFlash 技术提供的卓越擦除性能对于缩短更新时间非常有用。SST26VF064B 支持的最大时钟频率为 104 MHz,最大扇区擦除时间为 25 ms,最大块擦除时间为 25 ms,最大页面编程时间为 1.5 ms。每个命令指令与以 104 MHz 时钟频率运行的闪存之间也需要 12 ns 延迟(CE 高电平时间)。

pYYBAGMXFIeAewpJAAE-13_u0yE987.jpg

[表 2 | SST26VF064B 和传统闪存的编程和擦除时间。点击放大。]

使用表 1 中所示的命令序列以及编程和擦除时间的知识,计算更新 1 Mb、2 Mb 或 4 Mb 的 SuperFlash 技术存储器和传统闪存所需的时间量如分别见表 3 和表 4。此类计算必须由物联网设备工程师完成,以估计更新速度,以最大限度地减少物联网设备在更新期间的停机时间。

poYBAGMXFImASCdBAAMjF53pJyY978.jpg

[表 3 | 更新 1 Mb、2 Mb 或 4 Mb SuperFlash 技术内存所需的时间。点击放大。]

poYBAGMXFIuAKZ9rAAMn4FQAcGg859.jpg

[表 4 | 更新 1 Mb、2 Mb 或 4 Mb 传统闪存所需的时间。点击放大。]

结论

物联网设备设计工程师需要提供更新应用程序代码和数据的灵活性。更新什么和多少代码、更新频率以及更新速度是设计物联网设备时需要解决的问题。NVM 的选择会影响这些问题,并在计算代码更新的时间和速度方面发挥关键作用。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储器
    +关注

    关注

    38

    文章

    7151

    浏览量

    161999
  • 物联网
    +关注

    关注

    2870

    文章

    41639

    浏览量

    358393
  • IOT
    IOT
    +关注

    关注

    186

    文章

    3986

    浏览量

    193208
收藏 人收藏

    评论

    相关推荐

    英特尔锐炫A系列显卡为客户提供了强大的性能和灵活性

    在当今快速发展的边缘计算和人工智能领域,英特尔凭借其创新的软硬件解决方案,为客户提供了强大的性能和灵活性。其中,推出的英特尔锐炫 A 系列显卡备受关注。
    的头像 发表于 03-22 15:17 173次阅读
    英特尔锐炫A系列显卡为客户提供了强大的性能和<b class='flag-5'>灵活性</b>

    意法半导体推出一款兼备智能功能和设计灵活性的八路高边开关

    意法半导体新推出的八路高边开关兼备智能功能和设计灵活性,每条通道导通电阻RDS(on)(典型值)仅为110mΩ,保护系统能效,体积紧凑,节省 PCB 空间。
    的头像 发表于 03-12 11:41 290次阅读

    纳米软件电源自动测试系统的灵活性特点详解

    ,实现自动化测试的同时,也为客户实现经济效益最大化。该系统的灵活性体现在:仪器灵活、流程灵活、分析灵活、报告灵活
    的头像 发表于 01-16 16:23 171次阅读

    桂花网蓝牙网关:功能强大、应用广泛的联网连接设备

    联网迅速发展的今天,蓝牙网关作为连接设备关键组件,发挥着越来越重要的作用。北京桂花网公司作为一家专业的
    发表于 12-12 16:06

    FPGA为嵌入式设计带来了强大的功能与灵活性

    尽管 FPGA 为嵌入式设计带来了强大的功能与灵活性,但额外的开发流程也给设计工作增加了新的复杂性和限制问题。整合传统的硬件-FPGA-软件设计流程并充分利用 FPGA 的可再编程功能是我们
    的头像 发表于 12-07 09:35 205次阅读

    4G插卡路由器:无线上网的便利与灵活性

    4G插卡路由器:无线上网的便利与灵活性
    的头像 发表于 11-28 17:27 371次阅读

    MAC地址注册管理最佳实践:安全性、可用性和灵活性

    MAC地址注册管理是在网络环境中确保设备身份验证和访问控制的重要步骤。本文将介绍MAC地址注册管理的最佳实践,旨在提高安全性、可用性和灵活性,以满足现代网络的需求。随着网络规模和复杂性的不断增加
    的头像 发表于 11-21 14:57 223次阅读
    MAC地址注册管理最佳实践:安全性、可用性和<b class='flag-5'>灵活性</b>

    最佳灵活性:通过固态继电器适应应用

    在现代电子和自动化领域,对多功能性和适应性的需求不断增加。行业、企业和个人需要能够无缝集成到各种应用程序中的可靠解决方案。在实现这种灵活性方面发挥着至关重要作用的一个关键组件是固态继电器(SSR)。这种电子开关装置彻底改变了电气系统的运行方式,与传统机电继电器相比具有众多
    的头像 发表于 10-12 10:11 249次阅读

    nRF24XX的低级别频率灵活性协议

    本应用说明描述了nRF24XX的低级别频率灵活性协议。这是一种提供保护以防止频率固定系统干扰业务的协议诸如WLAN和诸如蓝牙的跳频设备。 该协议是通用的,可以用于许多需要阻力的不同系统防止来自其他
    发表于 09-26 07:40

    Samtec卓越产品 | SEARAY:最大限度提高设计灵活性和密度

    摘要 / 前言   SEARAY™ 是Samtec 的 高速、高密度栅格阵列连接器系列 。 SEARAY™ 为设计人员提供了大量的设计灵活性,远远超过业内任何其他阵列产品。     【 灵活性
    发表于 09-20 16:13 300次阅读
    Samtec卓越产品 | SEARAY:最大限度提高设计<b class='flag-5'>灵活性</b>和密度

    SEARAY:最大限度提高设计灵活性和密度

    SEARAY™是Samtec 的高速、高密度栅格阵列连接器系列。SEARAY™为设计人员提供了大量的设计灵活性,远远超过业内任何其他阵列产品。
    的头像 发表于 09-20 10:49 682次阅读

    使用IO-Link wireless技术提高包装机械生产线的灵活性

    点击蓝字关注我们新挑战新机遇HongKeSolutions包装机械制造商正面临着大规模定制和客户动态需求的新挑战。随着包装机械设计向工业4.0迈进,灵活性、更高的吞吐量和减少停机时间成为关键要求
    的头像 发表于 08-10 08:04 448次阅读
    使用IO-Link wireless技术提高包装机械生产线的<b class='flag-5'>灵活性</b>

    PSA固件更新API 0.7资料

    固件更新支持是PSA设备的基本属性。然而,在不同的嵌入式平台上更新设备固件的机制有很大的不同。这由于安全处理环境(SPE)的不同实现而进一步
    发表于 08-09 06:22

    满足特殊需求:了解OLED拼接屏订做的灵活性和定制选项

    OLED拼接屏订做的个性化定制能够满足企业特定需求,提供灵活性、高质量和出色的显示效果。根据调查数据和实例案例,可以看出OLED拼接屏订做是企业在数字化转型中不可或缺的一环。我们鼓励您与我们联系,了解更多关于OLED拼接屏订做的信息,并共同探索定制解决方案,助力您的业务腾飞。
    的头像 发表于 07-22 11:00 773次阅读
    满足特殊需求:了解OLED拼接屏订做的<b class='flag-5'>灵活性</b>和定制选项

    各行各业的数据采集:ADAQ7980 集成的灵活性

    电压和频率范围的传感器和输入源连接。这种灵活性使ADAQ798x适合各种工业、仪器仪表、通信和医疗保健应用。
    的头像 发表于 06-30 09:52 346次阅读
    各行各业的数据采集:ADAQ7980 集成的<b class='flag-5'>灵活性</b>