<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

分區存儲助力QLC應用到嵌入式存儲設備

yYjs_江波龍 ? 來源:未知 ? 2023-02-14 15:05 ? 次閱讀

背景

目前應用在移動終端的嵌入式存儲設備(這里主要指UFS/eMMC等,以下統稱“嵌入式存儲設備”)中主流介質還是TLC。但更高存儲密度的QLC也已經產品化,比如一些數據中心(讀密集型應用)已經在部署QLC存儲設備。QLC可以給存儲設備帶來更低的成本,作為消費級產品的嵌入式存儲設備,未來引入QLC也是勢在必行。

但和當前主流TLC相比,QLC在性能和壽命上都相差很大,從下面某原廠TLC和QLC在性能和壽命方面的一個對比可見一斑。

ccaeabe4-ac35-11ed-bfe3-dac502259ad0.jpg

Table 1:某原廠TLC和QLC性能和壽命對比

因此,QLC要應用在嵌入式存儲設備上,首先需要解決性能差和壽命短兩大問題。

雖然QLC還不到TLC的1/4寫入性能,但目前消費級固態存儲產品都有成熟的SLC cache機制,能保證用戶有比較好的突發寫入性能(寫SLC的性能)。由于嵌入式存儲設備有比較充裕的空閑時間,存儲設備可以利用空閑時間把數據從SLC搬到QLC,只要不是重度寫入場景,這部分QLC寫入性能,用戶一般感知不到。

但數據一旦寫到QLC,對比TLC,用戶讀取性能變差。針對這個讀取性能差的問題,有一種方案是把熱數據(經常讀?。懟豐LC,但這樣無疑增加了設備復雜性,而且數據搬移帶來了額外的寫放大,這讓壽命本來就不長的QLC“雪上加霜”。

如果說性能問題可以通過SLC解決或者緩解,那對于QLC壽命問題,在分區存儲引入之前,可能的解決方案有:用戶端使用類F2FS文件系統使用數據分流。

F2FS文件系統化隨機寫為順序寫,這會減少存儲設備內部垃圾回收導致的寫放大,但F2FS文件系統本身的垃圾回收,會給存儲設備帶來額外的寫。綜合下來,F2FS文件系統給設備帶來的寫放大不一定減少。

數據分流需要主機和設備配合:主機端對數據進行冷熱甄別,設備端根據數據的冷熱程度把它們存儲在不同的閃存塊上。數據分流能一定程度上減少存儲設備寫放大,但具體能帶來多大收益,這取決于用戶冷熱數據的比例,因此有一定的局限性。

今天要介紹減小寫放大的終極大招——分區存儲(Zoned Storage),它能消除QLC和TLC壽命之間的差異,而且能提升存儲設備性能,讓QLC應用到嵌入式存儲設備上變得可能。

什么是分區存儲?

分區存儲概念最早來源于SMR HDD。SMR是“Shingled Magnetic Recording”(疊瓦式磁記錄)的首字母縮寫,是一種用于增加容量并降低硬盤每TB成本的重要技術。SMR硬盤把硬盤分成一個個的分區(Zone),每個分區內部必須順序寫,否則會發生數據覆蓋從而導致之前寫入的數據丟失問題。

ccc999a4-ac35-11ed-bfe3-dac502259ad0.jpg

(Figure 1:SMR HDD)

分區存儲設備的邏輯空間被劃分成一個個連續的分區,分區內部只能被順序寫入。每個分區都有一個寫指針,用于跟蹤下一次寫入的位置。分區中的數據不能被覆蓋,必須首先使用特殊命令(區域重置)擦除數據。

ccdc5242-ac35-11ed-bfe3-dac502259ad0.jpg

(Figure 2:分區存儲概念)

除了HDD,基于閃存的固態存儲設備,也是非常喜歡順序寫入的,因為順序寫性能好,而且導致的寫放大也小?!白屩鳈C端順序寫入”一直是固態存儲設備的夢想,在SMR HDD助力下,分區存儲生態日趨完善,NVMe也制定了ZNS(Zoned Namespace)標準,SSD也算是“圓夢”了。

分區存儲帶來的好處

分區存儲帶來的一大好處就是能消除存儲設備內部的垃圾回收。存儲設備垃圾回收會導致兩個主要問題:一是引入寫放大,導致存儲設備壽命減少;二是垃圾回收的同時如果伴有主機讀寫,垃圾回收操作則會影響主機讀寫性能。

ccf301b8-ac35-11ed-bfe3-dac502259ad0.jpg

(Figure 3:垃圾回收示例)

垃圾回收原理:為騰出空閑閃存塊,需要把有效數據A、B、C從源閃存數據塊搬到新的閃存塊,內部數據的搬移引入寫放大。寫放大 = 寫入閃存的數據量/主機寫入的數據量,寫放大越大,對閃存磨損越厲害。

分區存儲怎么就能消除存儲設備垃圾回收的呢?

如果分區大小是存儲設備閃存塊大小的整數倍,這樣一個分區的數據會被寫到閃存設備的整數個閃存塊內。由于分區不允許覆蓋寫,一個分區數據只能被整體無效掉,也就是意味著該分區對應的閃存塊也是整體被無效掉(上面沒有任何有效數據),因此存儲設備內部回收閃存塊無需垃圾回收——只需要一個擦除動作。

傳統垃圾回收由于需要搬移閃存塊上的有效數據,會導致寫放大。還有,為減小寫放大和加速垃圾回收,存儲設備都會預留一些閃存空間(也就是我們常說的OP),以減少閃存塊上有效數據數量。現在分區存儲設備中由于不存在垃圾回收,因此沒有寫放大,同時這部分OP也可以省掉了(節省成本)。

cd0f381a-ac35-11ed-bfe3-dac502259ad0.jpg

(Figure 4:傳統SSD數據存放和分區SSD數據存放比較)

分區存儲帶來的另一大好處就是大大減少了映射表大小,從而提升系統性能,減少存儲設備成本。

基于閃存的傳統存儲設備一般按4KB邏輯塊大小為映射粒度,其L2P映射表(邏輯地址到物理地址的映射)大小一般為存儲設備容量的1/1024,比如一個512GB的UFS設備,其L2P映射表大小為512MB。企業級SSD一般都配有相應大小的DRAM來存儲運行時的L2P映射表,比如512GB的企業級SSD需要搭載至少512MB的DRAM;而業界消費級存儲設備則是出于成本考慮,一般都沒有DRAM,它利用控制器小的SRAM緩存部分L2P映射表,而絕大多數L2P映射表都是存在閃存,固件按需從閃存加載映射關系數據到控制器SRAM。這種DRAM-less的存儲設備,與帶DRAM的存儲設備相比,少了DRAM的成本,但性能無疑會大打折扣,因為控制器SRAM大小有限,對隨機讀取場景來說,映射表緩存命中率很低,固件很多時候需要先從閃存加載映射關系,然后再根據獲得的物理地址去讀用戶數據,也就是說讀取一筆數據需要訪問幾次閃存,意味著讀取性能肯定比只訪問一次閃存要慢得多。

問題的根因是傳統存儲設備映射粒度太細了,導致映射表巨大。而分區存儲設備,我們可以按照分區大小為映射粒度。假設分區大小為128MB,一個512GB的設備有4096個分區,每個分區對應的物理地址用4字節表示,那么整個L2P映射表只有16KB!這么小的映射表完全可以存儲在控制器SRAM中,因此在企業級SSD中可節省DRAM的使用;對消費級存儲產品來說,L2P映射表可以常駐內存,無需從閃存中獲取映射關系,讀取一筆數據只需訪問一次閃存,這大大加速了隨機讀取性能。

cd2218a4-ac35-11ed-bfe3-dac502259ad0.jpg

(Table 2:傳統存儲設備和分區存儲設備映射對比)

分區存儲助力QLC嵌入式存儲設備

回到QLC應用到嵌入式存儲設備的話題。

在傳統嵌入式存儲設備中,垃圾回收一般會引入3-4的寫放大,即一個3000次擦寫次數的TLC閃存,真正給到用戶的擦寫次數可能不到1000次。而分區存儲的使用,由于不存在垃圾回收,因此寫放大可以做到接近1,也就是一個1500次擦寫次數的QLC,給到用戶就是實打實的1500次。這意味著:傳統用3000次擦寫次數TLC的存儲設備,假設TBW為100TB,現在如果用QLC,雖然QLC的擦寫次數只有TLC的一半,但由于分區存儲的使用,TBW反而能提升到150TB。

對分區存儲設備,由于L2P映射表很小,完全能夠存放在控制器SRAM,因此可快速更新和獲取映射關系,從而大幅提升系統讀寫性能。傳統基于TLC的嵌入式存儲設備,在隨機讀取一筆數據(4KB)的時候,由于L2P映射緩存很?。◣装貹B),固件大概率要先從閃存上加載L2P映射關系,這個時間大概40us左右,然后再花60us左右的時間從閃存加載用戶數據——隨機讀取一筆數據的時間大概需要花100us左右;而現在基于分區存儲的嵌入式存儲設備,由于省掉了加載映射關系的時間,雖然讀取閃存的時間QLC要比TLC長,但總的時間下來,兩者是相當的。

由于分區存儲設備的使用,再加上成熟的SLC緩存機制,這兩大特性彌補了QLC壽命短和性能差兩大短板,讓QLC應用到嵌入式存儲設備上變得可行?,F在典型的嵌入式存儲設備為UFS設備,如果引入了分區存儲,像UFS中的HPB、FBO等特性完全可以拋棄,這也無疑簡化了UFS設備的設計。

嵌入式存儲設備技術展望

前端接口協議方面,應用于安卓平臺上的嵌入式存儲設備當前主流是UFS設備,相信未來很長一段時間也會沿著UFS路線繼續向前。UFS4.0協議今年8月份發布,三星早前也發布了UFS4.0存儲設備。

cd3964e6-ac35-11ed-bfe3-dac502259ad0.jpg

(Figure 5:嵌入式存儲協議發展路線)

存儲介質方面,作為消費級產品,嵌入式存儲設備對成本敏感,隨著QLC閃存的成熟,QLC必然會應用到未來的嵌入式存儲設備上,無論是廠商還是消費者,都要做好這個心理準備。事實上,今年(2022年)年初鎧俠已經發布了基于QLC的UFS3.1產品。

QLC應用到嵌入式存儲設備上,要讓消費者用得放心,這需要相關的技術來解決QLC介質可靠性差、壽命短、性能差等問題。因此在技術趨勢方面,一方面是嵌入式存儲控制器糾錯能力需要變得越來越強;另一方面,像數據分流、分區存儲這些能減小寫放大的技術也會被引入,來彌補QLC壽命短這塊短板。

目前,江波龍具有基于主流3D TLC閃存的豐富的嵌入式存儲產品,從eMMC到高性能UFS3.1,從消費級存儲到車規級存儲,產品矩陣全面。同時,公司也在思考怎么把存儲密度更高的QLC應用到嵌入式存儲產品上,并開展相關技術預研工作。未來,江波龍會持續給客戶帶來更多超越期望的嵌入式存儲產品。


原文標題:分區存儲助力QLC應用到嵌入式存儲設備

文章出處:【微信公眾號:江波龍電子】歡迎添加關注!文章轉載請注明出處。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 江波龍
    +關注

    關注

    4

    文章

    224

    瀏覽量

    26832

原文標題:分區存儲助力QLC應用到嵌入式存儲設備

文章出處:【微信號:江波龍電子,微信公眾號:江波龍電子】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    佰維存儲發布工規級寬溫LPDDR4X嵌入式存儲芯片

    在工業領域對高性能存儲需求日益增長的背景下,佰維存儲近日重磅推出了其全新的工規級寬溫LPDDR4X嵌入式存儲芯片。這款芯片以其卓越的性能和廣泛的適用性,再次刷新了工業
    的頭像 發表于 05-11 14:34 ?402次閱讀

    嵌入式系統軟硬件基礎知識大全

    嵌入式系統是現代科技發展的一個重要分支,廣泛應用于工業控制、消費電子、醫療設備、汽車電子等領域。本文試圖全面解析嵌入式系統的軟基礎知識,以期讓讀者對這一技術有更深入的了解。嵌入式系統是
    發表于 05-09 14:12

    佰維存儲推出工規級寬溫LPDDR4X嵌入式存儲芯片

    近日,佰維存儲重磅推出了工規級寬溫LPDDR4X嵌入式存儲芯片。這款芯片憑借其出色的性能,傳輸速率飆升至4266Mbps,同時容量靈活多變,從2GB到8GB均可選擇。令人矚目的是,它能在極端溫度條件下穩定運行,適應-40℃至95
    的頭像 發表于 05-06 15:47 ?185次閱讀

    佰維存儲發布了工規級寬溫LPDDR4X嵌入式存儲芯片

    近日,佰維存儲發布了工規級寬溫LPDDR4X嵌入式存儲芯片,該產品傳輸速率高達4266Mbps,容量覆蓋2GB~8GB,可適應-40℃~95℃寬溫工作環境;
    的頭像 發表于 05-06 10:06 ?156次閱讀

    如何成為一名嵌入式C語言高手?

    。 三、通過實踐項目提升技能理論知識是建立在實踐基礎之上的。選擇一些小型的嵌入式項目,例如LED閃爍、溫度監測等簡單的應用,將所學的C語言知識應用到實際中。通過實踐,你可以了解如何將C語言程序移植到嵌入式
    發表于 04-07 16:03

    如何成為一名嵌入式C語言高手?

    。 三、通過實踐項目提升技能理論知識是建立在實踐基礎之上的。選擇一些小型的嵌入式項目,例如LED閃爍、溫度監測等簡單的應用,將所學的C語言知識應用到實際中。通過實踐,你可以了解如何將C語言程序移植到嵌入式
    發表于 03-25 14:12

    嵌入式系統Nor Flash引導存儲器和固件存儲有何關系?

    嵌入式系統需要可靠且快速的引導存儲器來在系統啟動期間加載初始引導代碼和操作系統。
    的頭像 發表于 12-05 14:08 ?385次閱讀

    分區存儲助力QLC應用到嵌入式存儲設備

    分區存儲助力QLC應用到嵌入式存儲
    的頭像 發表于 11-27 17:44 ?255次閱讀
    <b class='flag-5'>分區</b><b class='flag-5'>存儲</b><b class='flag-5'>助力</b><b class='flag-5'>QLC</b><b class='flag-5'>應用到</b><b class='flag-5'>嵌入式</b><b class='flag-5'>存儲</b><b class='flag-5'>設備</b>

    什么才是嵌入式Flash的邊界?

    什么才是嵌入式Flash的邊界? 嵌入式Flash是一種非易失性存儲器,常用于嵌入式電子設備中,如智能手機、平板電腦、數碼相機、車載娛樂系統
    的頭像 發表于 10-29 17:29 ?307次閱讀

    嵌入式軟件中如何利用內部flash存儲參數呢?

    嵌入式軟件中經常要存儲一些非易失參數,例如用戶設置、校準參數、設備運行參數等,通常情況下我們都會選擇存儲在EEPROM或者SPI-FLASH中。
    的頭像 發表于 10-27 14:12 ?602次閱讀
    <b class='flag-5'>嵌入式</b>軟件中如何利用內部flash<b class='flag-5'>存儲</b>參數呢?

    嵌入式系統CF卡存儲技術電路原理圖

    電子發燒友網站提供《嵌入式系統CF卡存儲技術電路原理圖.pdf》資料免費下載
    發表于 10-11 11:29 ?2次下載
    <b class='flag-5'>嵌入式</b>系統CF卡<b class='flag-5'>存儲</b>技術電路原理圖

    8位PIC單片機上的存儲器訪問分區

    電子發燒友網站提供《8位PIC單片機上的存儲器訪問分區.pdf》資料免費下載
    發表于 09-25 14:50 ?0次下載
    8位PIC單片機上的<b class='flag-5'>存儲</b>器訪問<b class='flag-5'>分區</b>

    意法半導體助力嵌入式系統應用專業能力認證

    ST大學計劃-助力中國高校人才培養,分析了嵌入式人才需求的痛點,介紹了ST助力嵌入式人才生態、項目發起及支持、嵌入式人才認證計劃等。
    發表于 09-05 07:57

    QLC 全閃存將取代混合存儲?

    基于四級單元(QLC)的存儲陣列采用軟件支持的ASIC或FPGA邏輯(以克服生命周期限制、提高耐用性和性能),目前已部署用于通用塊存儲用例。它們還被部署在備份和災難恢復用例中,在這些用例中,取代 TLC 介質
    發表于 08-16 10:26 ?727次閱讀
    <b class='flag-5'>QLC</b> 全閃存將取代混合<b class='flag-5'>存儲</b>?

    Emulex IOC 540嵌入式存儲控制器

    電子發燒友網站提供《Emulex IOC 540嵌入式存儲控制器.pdf》資料免費下載
    發表于 08-10 16:16 ?0次下載
    Emulex IOC 540<b class='flag-5'>嵌入式</b><b class='flag-5'>存儲</b>控制器
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>