SSD 表项管理概述(一)——L1、L2、L3

分类

名称

说明

映射表相关

L1 Table

记录每个4KB用户数据在SSD上的存放物理地址;

L2 Table

记录每个sub L1 Table在SSD上的存放物理地址;

L3 Table

记录每个sub L2 Table在SSD上的存放物理地址;

P2L Table

是一个反向映射表,记录SBlock上的F4K对应的L4K;

 

 

 

  表项的总大小会跟随支持的存储容量调整,以一个1TB的存储器来说,需要一个总大小为1GB的表项来支持运作,为了减少表项操作的开销,将总表切分成较小的sub-table来操作,sub-table的大小目前定为4KB,也就是1024个Table Entry组合成一个sub-table。Sub-table需要另外的表项记录其物理存放空间,这里就形成了对表项的多层管理。通常套用了3层表项的管理方式,具体描述如下:

1、  L1 Table:大小为4KB,包含1024个Entry,每个Entry占用32b(4Bytes),记录一个4KB大小用户数据的物理位置,按照这个设计,每个L1 Table覆盖4MB的用户数据范围;L1 Table的总个数要随着存储容量来做变化;(每个L1 entry对应的是4KB用户数据,占用4B 内存空间)

2、   L2 Table:大小为4KB,包含1024个Entry,每个Entry占用32b(4Bytes),记录一个4KB 大小L1 Table的存放地址,按照这个设计,每个L2 Table覆盖1024个L1 Table,也就是覆盖4GB的用户数据范围;L2 Table的总个数要随着存储容量来做变化;(每个L2 entry对应的是一个4KB大小的L1 所对应的用户数据量,为4MB用户数据。即每一个L2对应的一个4MB用户数据,若L2 缓存为N,则对应的用户数据量为4MB*N)

3、  L3 Table:每个L3 entry对应的是一个4B的L2 Table 存放地址,若一个L2 Table的Size为1024,则一个L2 Table表示的用户数据为4G,即每个L3 entry对应的用户数据为4G,若L3 Entry有2048个,则能支持的用户容量最大能到8T。通常L3 Table的个数只有一个,每次刷表最后都会更新并下刷L3 Table;

 

posted @ 2023-11-27 09:49  咸鱼书生  阅读(316)  评论(0编辑  收藏  举报