【问题标题】:Embedded app and wearing out flash disks嵌入式应用程序和磨损的闪存盘
【发布时间】:2009-12-01 03:48:34
【问题描述】:

我有一个嵌入式应用程序需要对闪存盘(或其他)进行大量写入。由于环境原因,我们不能使用硬盘。这是一个易受振动和爆炸性燃料蒸气影响的工业系统。

问题是,闪存的生命周期约为 100000 次写入周期。足够您的数码相机使用。在我们的场景中一年后磨损。

人们找到适合他们的任何替代方案?

我一直在考虑使用 FRAM,但在此之前已经使用过,而且速度慢且小。

【问题讨论】:

  • 您好,实际上我忘了提到它的某些部分将被重新设计。成本是个问题。谢谢(你的)信息。很有帮助
  • 另外,没有特定的硬件。一切都在重新设计。

标签: embedded


【解决方案1】:

正如 Nils 所说,商用紧凑型闪存卡和驱动器替换 (NAND) 具有磨损均衡功能。 如果您使用的是便宜的板载 (NOR) 闪存,您可能必须自己执行此操作。

最好的方法是某种环形缓冲区,您只需在其中追加数据,然后覆盖整个驱动器。请记住,闪存只能擦除整个块(页),但可以将单个字节附加到该页中的现有数据。

您还可以在 RAM 中缓冲一个页面,然后写入一次,还是必须始终提交单个字节?

大多数嵌入式处理器的应用表都会有这样的例子。

【讨论】:

    【解决方案2】:

    您确实需要提供更多信息:

    • 您需要多少容量?
    • 什么费用可以接受?
    • 您需要什么物理外形尺寸?
    • 你想要什么样的生活?

    如果您的存储需求不是特别大并且您可以处理成本,有battery-backed SRAM parts(每个部分至少 2 兆字节)与 RAM 一样快(就是这样)并且没有写入次数限制。但它们的成本比闪存高得多。

    您还可以获得带有 SATA 接口且填充有 DRAM 的驱动器。

    【讨论】:

      【解决方案3】:

      这篇文章是指使用嵌入式 linux。不确定这是否是您想要的。

      我有一个不同的系统,但用于医疗用途。我们对所有更新频率较低的部分使用 NOR 闪存,其余部分使用 NAND 闪存。我建议在 MTD 磁盘的顶层使用 UBI/UBIFS。 UBI/UBIFS 为您解决所有潜在问题。如果您随后将系统设计为具有比您需要的更大的物理闪存。示例:您需要 100MB,然后使用 1GB 闪存设计您的硬件。然后数据可以通过 UBI 进行混洗,而无需来自上述系统的任何交互。
      UBIFS documentation
      UBI documentation

      【讨论】:

        【解决方案4】:

        正如 Michael Burr 所指出的,我们需要更多信息。 (请回答他的问题。)

        我还有一个问题:这是什么界面?帕塔? SATA? USB?

        正如其他人所指出的,任何体面的闪存驱动器都会提供某种磨损均衡。在设备的数据表中查找此内容。许多供应商都会吹嘘他们的损耗均衡技术。

        你提到了 100000 个循环。这对我来说似乎很低。大多数“工业级”闪存驱动器的功能远不止于此(数百万)。确保您没有使用廉价的地下室设备。一个好的闪存驱动器通常会包含一个方程式或计算器工具,您可以使用它来计算设备的预期寿命。

        (我可以根据个人经验说,某些品牌的闪存驱动器比其他品牌的闪存驱动器更耐用,尤其是“工业”驱动器。我们的驱动器经历了一些非常残酷的使用场景。)

        另一件很有帮助的事情是容量。闪存驱动器的容量越大,磨损均衡算法的工作空间就越大,这意味着更长的使用寿命。

        您可以考虑做的另一件事是软件技术,以最大限度地减少闪存组件的磨损。你有页面文件/交换文件吗?也许你不需要它。如果您正在创建/删除大量临时文件,请将其移至 RAM 磁盘。请记住,擦除/重新编程周期通常会耗尽闪存单元,因此减少这些操作通常会有所帮助。

        【讨论】:

          【解决方案5】:

          使用具有内置磨损均衡控制器的 SD 卡。这样一来,写入周期就会分布在所有闪存块上,并且您的闪存寿命会非常长。

          【讨论】:

            【解决方案6】:

            我正在考虑使用 FRAM,但它是 在这里之前已经完成而且速度很慢 和小。

            nvSRAM比较;这可能会提供您需要的性能。

            【讨论】:

              【解决方案7】:

              我在嵌入式系统中使用了紧凑型闪存卡并取得了巨大成功。它有一个板载控制器,可以为你做所有的思考。并非所有的 Compact Flash 控制器都是相同的,因此请购买一个最新设计的控制器,该控制器旨在用作硬盘驱动器的替代品,因为它们具有更好的磨损均衡算法。

              【讨论】:

                猜你喜欢
                • 2012-12-31
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2021-10-11
                • 2019-01-08
                • 2011-01-24
                • 1970-01-01
                相关资源
                最近更新 更多