国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 1252|回復: 0
打印 上一主題 下一主題

嵌入式系統存儲的軟件優化策略

[復制鏈接]
跳轉到指定樓層
樓主
發表于 2025-2-28 14:17:58 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

嵌入式系統開發領域,存儲器作為信息交互的核心載體,其技術特性直接影響著系統性能與穩定性。然而,有些人在面對Linux、安卓等復雜操作系統環境時,理解其存儲機制尚存局限,為突破這些技術瓶頸,飛凌嵌入式希望通過對存儲相關知識的分享,助力大家構建完整的存儲知識體系框架。

首先,嵌入式場景中常用來存儲數據的介質分為兩類:

·Managed NAND,以eMMC(embedded Multi-Media Card)TF卡、SD卡為主內部帶有存儲管理控制器。

·Raw NAND,以NAND為主的未帶有存儲管理功能,只包含簡單IO邏輯控制。




上圖描述了NAND存儲和eMMC存儲的關系,NAND Controller代指核心板的CPU,NAND指實際參與存儲的區域,由此看出實際上eMMC和NAND的區別在于存儲管理控制是在eMMC內部還是核心板的 CPU。存儲管理主要包括功能:壞塊管理、ECC校驗、磨損均衡、數據保持和地址管理及映射等。

一、存儲的相關概念

存儲類型分為SLC、MLC、TLC、QLC。嵌入式常用類型低存儲容量一般為SLC和MLC,高存儲容量一般是TLC。

SLC (Single-Level Cell) 速度快,壽命長,價格貴,理論擦寫次數在10萬次左右。

MLC (Multi-Level Cell) 速度較快,壽命較長、價格較貴,理論擦寫次數在3000-5000次。

TLC (Trinary-Level Cell) 速度較慢,壽命較短、價格最便宜,理論擦寫次數在1000-3000次。

QLC (Quad-Level Cell) 容量可以做的更大,成本上更低,劣勢就是P/E壽命更短。

pSLC (pseudo SLC) 以 MLC的FLASH為基礎,但在每個Cell中只存1 bit而不是2 bit數據。由于在同一個Cell中跟SLC一樣只存儲一個bit,但又不是真的 SLC,所以稱之pSLC。依上述原理,若將MLC用做pSLC,存儲空間將減半,壽命通?梢蕴嵘3萬次左右。

P/E (Program/Erase Count) :擦寫壽命。耐用性兩個指標之一。

TBW (Total Bytes Written) :總寫入量。是廠商用以界定質保期的數值,即超過了這個數值的寫入量之后,廠商就不再給予質保服務。耐用性兩個指標之一。

FW (Firmware) :由于eMMC內部控制器屬于軟件編程控制器,會需要固件,eMMC在存儲廠家出廠前已經燒錄對應固件。

WA (Write amplification) :寫放大。表示實際寫入的物理數據量是寫入數據量的多少倍,即:閃存寫入的數據量÷主控寫入的數據量 = 寫放大。

GC(Garbage Collection) :垃圾回收。NAND介質的存儲寫入是按照頁(Page)寫入,是按照塊(Block)擦除。

二、eMMC和NAND的差異

(1)eMMC與NAND對比




(2) eMMC的相關特點

·eMMC使用單獨的硬件控制器對存儲進行管理,相比于Linux下NAND驅動管理可靠性更高。

·內部固件集成多種功能:使用壽命等健康信息記錄、根據不同的場景動態調整內部存儲策略。

·接口標準,各廠家各容量兼容性好。

·eMMC的存儲壽命普遍不如NAND壽命長。相比于NAND大部分使用SLC或者MLC,eMMC大部分是MLC或者TLC,eMMC相對于NAND單位壽命會低;但是由于eMMC的存儲容量一般較大,一定程度上抵消單位壽命低的劣勢。

(3)NAND的相關特點

·系統的驅動主要是由SoC廠家及系統上游邏輯決定,針對不同的NAND存儲介質無法發揮出最大優勢,或者存在驅動邏輯兼容性問題。

·NAND容易出現位翻轉、壞塊等情況,相比eMMC內部管理,CPU管理需要占用較大系統開銷用來維護存儲內容。

·接口標準采用ONFI接口協議,但是不同廠家的NAND的頁、OOB區及塊大小等配置存在差異,如果物料停產需要換型會存在鏡像不兼容風險。

·NAND的布局控制是由CPU管理,對應的分區管理和邏輯定制會有很大的靈活性,根據實際應用場景制定不同的管理策略。

·NAND單位存儲壽命較長。

綜上,產品存儲選型建議使用帶有管理功能的eMMC。

三、存儲使用建議

·eMMC:建議預留25%空間,避免頻繁觸發GC。

·由于存儲的最小寫入單元是Page,最小的擦除單元是Block。以16K page舉例,如果單次寫入小于 一個Page的數據,會造成寫放大。如果單次寫入數據遠遠小于Page的大小,寫放大會很嚴重。最終會導致壽命大大縮短。建議對小數據先通過DDR內存進行緩沖,緩沖一定數據再組合寫入。

·使用中如果出現異常斷電,定期需要對文件系統使用工具掃描修復,避免由于異常斷電數據未及時 保存導致文件系統異常。如果是頻繁異常掉電場景,可以增加硬件加掉電保護措施,用來保證系統穩定性。

·產品設計初期,需要結合實際應用場景存儲數據的頻率,為保證產品壽命要求,評估選擇合適的存儲類型和容量。

四、飛凌嵌入式賦能

(1)針對eMMC,根據對壽命及健康信息讀取分析,讓應用掌握更全面的存儲信息,并作出合理的調整。

應用可以實時監控當前的存儲壽命,用來在設備存儲壽命降低到自定義閾值時發送報警信號做 特定處理。

應用可以實時查看系統的健康信息,評估存儲的寫放大系數,用來評估應用軟件升級對存儲帶 來的影響,進而估算剩余壽命。

(2)針對NAND,根據增加手段統計實際NAND的擦寫、搬移、標記等信息,給出應用IO操作改善建議。

(3)針對所有類型存儲,根據對終端設備不同使用場景特點采集分析,評估出更適合場景的應用編寫參考。

·終端實際應用場景主要集中在:日志循環存儲、應用關鍵數據參數存儲及緩沖數據。

·日志循環存儲特點:循環擦寫,寫入頻繁,讀取不頻繁。和文件系統同時存在,會出現寫頻繁 和只讀混放數據,會影響整體的穩定性。舉例:大部分eMMC的損耗平衡特性是全盤范圍,軟件上的文件系統分區未實現想要的數據隔離效果,這個其實可以在初期評估階段解決。

·關鍵數據特點:小數據量狀態信息,比較重要,信息量不大。

·緩沖數據特點:順序寫入,整體擦除。

實際軟件開發過程中,根據如上數據特點,為保證產品穩定性在如下3個階段給出優化方案

·產品開發前做對應存儲方案選型,能夠提前評估出風險。通過實際應用場景產品的目標壽命, 評估出存儲類型、文件系統類型、應用數據讀寫建議及燒錄方式等。

·產品開發完成前做實際存儲的優化。產品的樣機測試階段需要對系統實際讀寫頻次、大小做接 口數據統計分析,對存儲做數據穩定性分析(例:NAND存儲變位及壞塊分析)。通過分析給 出讀寫數據單元大小優化建議、連續/隨機讀寫優化建議。

·產品部署前做最終的預估壽命評估。結合最終優化效果給出實際應用中的一個壽命預估。

除上述優化策略外,不同eMMC、NAND廠家在滿足接口協議標準前提下提供了不同的優化特性,部分優化特性需要結合操作系統修改才能發揮出更好的效果。

五、總結

存儲穩定性直接關乎到最終產品的穩定性,本文圍繞eMMC和NAND的特性做了對比介紹,目的是幫助研發工程師在實際開發產品過程中更簡單、更高效。


您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 狠狠色伊人亚洲综合第8页 狠狠色网站 | 国产自产视频在线观看香蕉 | 在线观看91精品国产入口 | 99热手机在线观看 | 亚洲一卡二卡三卡四卡无卡麻豆 | 午夜欧美成人香蕉剧场 | 一区二区三区欧美在线 | 另类专区 亚洲 | 亚洲国产日韩在线人成下载 | aaa在线观看视频高清视频 | 97在线免费看视频 | 欧美性色xo影院永久禁欲 | 久久精品免费观看视频 | 天海翼一区二区在线观看 | 99免费在线观看视频 | 看污污网页 | 综合成人在线 | 欧美黑人hd | 成人中文字幕在线 | 侠盗高飞免费完整版国语在线播放 | h视频在线观看网站 | 性欧美高清极品xx | 91亚洲国产成人久久精品网站 | 青青青国产在线手机免费观看 | 四虎国产精品永久地址48 | 91香蕉视频色 | 日韩欧美亚洲国产高清在线 | 国产乱码精品一区二区三区中 | 成人久久久观看免费毛片 | 国产综合视频在线观看一区 | 国产一区二区三区欧美精品 | 在线免费观看国产精品 | 国产午夜人做人视频羞羞 | 国产成在线人视频免费视频 | 日韩免费视频一区 | 欧美人与性动交α欧美精品 | 久久99热不卡精品免费观看 | 番剧高清在线观看 | 手机看片国产 | 国产成人综合网在线观看 | 妹子草网 |