女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

淺談閃存控制器架構

jf_pJlTbmA9 ? 來源:PMC ? 作者:PMC ? 2023-08-29 16:10 ? 次閱讀

分析閃存控制器的架構,首先得了解SSD。一般來說SSD的存儲介質分為兩種,一種是采用閃存(Flash芯片)作為存儲介質,另外一種是采用DRAM作為存儲介質。我們通常所說的SSD就是基于閃存的固態硬盤,其采用FLASH芯片作為存儲介質。SSD的基本組成結構包括Flash顆粒和Flash控制器,Flash控制器中有芯片,負責Flash的讀寫、磨損均衡、壽命監控等等。

Flash控制器的主要的工作任務包括三大方面:一是后端訪問Flash,管理后端Flash顆粒,包括各種參數控制和數據IO; 二是前端提供訪問接口和協議:實現對應的SAS/SATA target協議端或者NVMe協議端, 獲取Host發出的IO指令并解碼和生成內部私有數據結果等待執行;三是FTL層核心處理。下面我們具體來介紹一下Flash 控制器是怎樣做這幾件事的。

第一,后端訪問Flash的操作內容

后端訪問Flash首先必須提到的是閃存通道控制器。這個控制器里面有多個通道,每個通道掛多片Flash。它與后端Flash顆粒之間存在托管協議。數據寫入Flash的時候,除了主機發送的數據或者原始數據,其他數據都必須進行ECC校驗。ECC是通用的稱謂,里面有多種算法,其中包括糾錯率較低的BCH算法,LAPC低密度校驗碼等。數據讀出的時候,通過擾碼,加擾,解擾,看ECC是否出現錯誤,若有錯則在糾錯后將芯片發到內部,供后續的程序處理。因此,后端訪問Flash的主要任務即是管理后端Flash顆粒,包括各種參數控制和數據IO。

第二,前端提供訪問接口和協議

前端提供訪問接口和協議,跟主機驅動通信,利用標準格式輸配到系統里面,接收主機端發過來的指令,即完成、實現對應的SAS/SATA target協議端或者NVMe協議端,獲取Host發出的IO指令并解碼和生成內部私有數據結構等待執行。如果遵從NVMe標準,包括提交命令的方法、完成命令的處理方法等都定好了,包括各種隊列、隊列深度,Queue Pair的總體數量最大可以達到64K個,隊列深度也可達64K個,所以,系統里同時可能存在64K×64K IO排著,但是目前的系統是用不到這么多Queue的,因為底下的介質速度還不足以支撐。

第三,FTL層――核心層處理

核心層FTL層,是一款Flash控制器的關鍵競爭力所在。它既可以是純軟件算法,包括元數據管理,數據布局影射、磨損均衡、垃圾回收、緩存策略、片間RAID和掉電元數據一致性保障等內容。同時,它也可以在進行重復性工作時輔以硬加速引擎。這是非純軟件的,輔有硬加速的成分在里面。硬加速涉及到所使用的芯片。有的芯片支持硬加速,比如說鏈表的維護。這是因為做垃圾回收時需要要用到鏈表,拿傳統的軟件算法,插入一個或者追加一些項目,所耗費的CPU周期較大,此時用硬加速并行,再加上一些硬邏輯的加速,則可節省開銷。

Flash控制器的兩種策略和方式:

現有的Flash控制器可采用兩種方式:一種是少量的強核心加少量硬件加速。所謂強核心就是一個核心的性能高、頻率高,分支預判、并行度、單元數量、執行管道,各種參數都高于一般水平。核心強了以后,硬加速就不需要這么多了,可以用少量的硬加速。

另一種方式則是大量弱核心+大量硬加速。比如說16個核心,每個核心比較弱,但是能夠增加執行的并行度,有16個并發核心執行,跑16套處理程序,這是兩種架構。這是一種多核心協作架構模式,其協作方式可以是同構協作也可以是異構協作

1.同構協作就是每個核心做的事都是完全一樣的,處理的步驟完全一樣。如果你的控制器陣列里面有16個IO,有16個核心,每個核心都能處理一個IO,這是同構協作。

2.異構協作則是多個核心做不同的事情。處理同一個IO,第一個IO第一步,第一個核心處理,這個核心處理完以后,把這個IO扔到下一個核心,再處理下一步,等這個核心空出來以后,處理下一個IO的第一步,這就是所謂的流水線了,所謂的異構就是如此。
產品實例:PMC的FlashtecTM NVMe 控制器

這是PMC的控制器,首先它有一個片上網絡,網絡承載16個CPU核心,每個核心里面有一個類似網卡的控制器,網卡連到網絡上,多個CPU之間連起來。簡單說就是4口路由器或者交換機連起來的網絡,多個CPU之間連起來,此外還有硬加速模塊。另外還包括以下幾部分:

RAM控制器,因為芯片上需要有一定量的RAM放臨時數據,寫放大,讀出來寫進去,都要走RAM;

PCIe控制器,這個是跟前端PCIe對等的控制器,IO指令從這兒接收過來;

后端Flash控制器,通過一定數量的通道連Flash顆粒,

加速器(包括緩沖加速器),每做一個操作,都需要有相應的內存,把數據拷到內存里面,內存的維護很費時費力。比如在X86上運行的Linux,其管理內存時需要耗費很多的計算量。對于閃存,精打細算,必須把性能做到極致,因此需用到硬加速。

鏈表加速器,用鏈表來記錄一些信息,哪塊空著,哪塊被應用,這塊用軟件維護很費力,所以需要在這里作加速;

XOR加速器,XOR要用硬加速

最后,來看一下軟件的并行度。16個核心,PMC提供的參考的固件,當然SSD廠商會開發自己的固件,把自己優化的東西放進去,優化的算法放進去。基本上包含了這么一些程序,每個IO讀的地址可能有重疊,重疊就需要有一個鎖定協調,有管命令解析的,有管啟動的,有管日志的,有管磨損均衡的,有管查表的,有管寫數據的,管前端的PCIe Manager,還有負責boot loader的核心,初始化的配置,需要由它處理,data manager,這是主程序,分析IO指令需要干什么,生成一堆的后續步驟下發下去。其實每一塊都可以跑在一個核心上,同一個角色可以復制多份,充分并行。16個核心,達到16份程序并行的運行,16個流水線的Stage,這樣就可以屏蔽處理過程中的時延。
審核編輯:彭菁

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

    關注

    16

    文章

    1836

    瀏覽量

    115739
  • 控制器
    +關注

    關注

    114

    文章

    16973

    瀏覽量

    182986
  • FlaSh
    +關注

    關注

    10

    文章

    1668

    瀏覽量

    151005
  • 接口
    +關注

    關注

    33

    文章

    8949

    瀏覽量

    153221
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    控制器讀取閃存中的軟件信息時,軟件信息部署在哪里? 是 SRAM 嗎?

    我對 PMG1 閃光燈有疑問。 1.微控制器讀取閃存中的軟件信息時,軟件信息部署在哪里? 是 SRAM 嗎? 2.微控制器加載軟件時,在部署之前是否檢查 SRAM 是否復位?
    發表于 05-23 06:22

    MAX32555 Cortex-M3閃存控制器英文數據手冊

    電子發燒友網站提供《MAX32555 Cortex-M3閃存控制器英文數據手冊.pdf》資料免費下載
    發表于 04-25 16:40 ?0次下載

    工程機械控制器如何選型?控制器選型指南 #控制器 #車載控制器 #整車控制器 #控制器選型

    控制器
    長沙碩博電子科技股份有限公司
    發布于 :2025年03月14日 10:54:24

    DDR內存控制器架構解析

    DDR內存控制器是一個高度集成的組件,支持多種DDR內存類型(DDR2、DDR3、DDR3L、LPDDR2),并通過精心設計的架構來優化內存訪問效率。
    的頭像 發表于 03-05 13:47 ?1388次閱讀
    DDR內存<b class='flag-5'>控制器</b>的<b class='flag-5'>架構</b>解析

    電動汽車驅動系統的控制器硬件架構

    前段時間有星友咨詢,想了解電動汽車驅動系統的控制器(逆變器)硬件架構,今天我們借助Infineon主驅逆變器的硬件架構說明下這個問題。
    的頭像 發表于 01-10 17:09 ?762次閱讀
    電動汽車驅動系統的<b class='flag-5'>控制器</b>硬件<b class='flag-5'>架構</b>

    物聯網智慧路燈的功能架構 單燈控制器

    物聯網智慧路燈的功能架構 單燈控制器
    的頭像 發表于 11-16 17:35 ?620次閱讀
    物聯網智慧路燈的功能<b class='flag-5'>架構</b> 單燈<b class='flag-5'>控制器</b>

    憶聯榮獲2024年度閃存控制器金獎

    控制器Jaguar6020憑借卓越的性能以及廣泛的應用領域,榮獲“2024年度閃存控制器金獎”,這是繼“2022年度閃存控制器金獎”后憶聯再
    的頭像 發表于 11-08 18:11 ?1103次閱讀

    調試MSP430系列微控制器上的閃存問題

    電子發燒友網站提供《調試MSP430系列微控制器上的閃存問題.pdf》資料免費下載
    發表于 10-09 10:27 ?0次下載
    調試MSP430系列微<b class='flag-5'>控制器</b>上的<b class='flag-5'>閃存</b>問題

    C2000?微控制器的USB閃存編程

    電子發燒友網站提供《C2000?微控制器的USB閃存編程.pdf》資料免費下載
    發表于 09-26 11:30 ?0次下載
    C2000?微<b class='flag-5'>控制器</b>的USB<b class='flag-5'>閃存</b>編程

    C2000?微控制器的串行閃存編程

    電子發燒友網站提供《C2000?微控制器的串行閃存編程.pdf》資料免費下載
    發表于 09-03 10:15 ?0次下載
    C2000?微<b class='flag-5'>控制器</b>的串行<b class='flag-5'>閃存</b>編程

    RM48Lx40 16/32-位RISC閃存控制器數據表

    電子發燒友網站提供《RM48Lx40 16/32-位RISC閃存控制器數據表.pdf》資料免費下載
    發表于 08-08 10:58 ?0次下載
    RM48Lx40 16/32-位RISC<b class='flag-5'>閃存</b>微<b class='flag-5'>控制器</b>數據表

    RM48L952 16/32-位RISC閃存控制器數據表

    電子發燒友網站提供《RM48L952 16/32-位RISC閃存控制器數據表.pdf》資料免費下載
    發表于 08-08 10:56 ?0次下載
    RM48L952 16/32-位RISC<b class='flag-5'>閃存</b>微<b class='flag-5'>控制器</b>數據表

    RM42L432 16/32位RISC閃存控制器數據表

    電子發燒友網站提供《RM42L432 16/32位RISC閃存控制器數據表.pdf》資料免費下載
    發表于 08-08 09:52 ?0次下載
    RM42L432 16/32位RISC<b class='flag-5'>閃存</b>微<b class='flag-5'>控制器</b>數據表

    TMS570LS0714-S 16位和32位RISC閃存控制器數據表

    電子發燒友網站提供《TMS570LS0714-S 16位和32位RISC閃存控制器數據表.pdf》資料免費下載
    發表于 08-08 09:35 ?0次下載
    TMS570LS0714-S 16位和32位RISC<b class='flag-5'>閃存</b>微<b class='flag-5'>控制器</b>數據表

    如何通過Miniwiggler V3將labview程序閃存到微控制器

    我正試圖通過 Miniwiggler V3 將 labview 程序閃存到微控制器中,但我找不到任何說明如何操作的文檔。 我是新手,有沒有什么方法可以直接閃存程序?
    發表于 07-04 06:00