FTL加速器及控制部件制造技术

技术编号:30250609 阅读:22 留言:0更新日期:2021-10-09 20:38
提供了FTL加速器及控制部件。所提供的FTL加速器,包括读地址计算单元、读数据选择单元、读地址发送单元与读数据接收单元;读地址计算单元根据要读取的逻辑FTL表的条目的索引(L)计算同要访问的逻辑FTL表的条目对应的物理FTL表的条目的地址;读地址计算单元还向读数据选择单元指示从存储器读出的数据中属于要访问的物理FTL表的条目的部分;读数据选择单元根据读地址计算单元指示的从存储器读出的数据中获取属于要访问的物理FTL表的条目的部分,以及扩展要访问的物理FTL表的条目得到要访问的逻辑FTL表的条目。访问的逻辑FTL表的条目。访问的逻辑FTL表的条目。

【技术实现步骤摘要】
FTL加速器及控制部件


[0001]本申请涉及存储技术,特别地,涉及FTL加速器及控制部件。

技术介绍

[0002]参看图1,展示了存储设备的框图。存储设备102同主机相耦合,用于为主机提供存储能力。主机同存储设备102之间可通过多种方式相耦合,耦合方式包括但不限于通过例如SATA(SerialAdvanced Technology Attachment,串行高级技术附件)、SCSI(Small Computer System Interface,小型计算机系统接口)、SAS(Serial Attached SCSI,串行连接SCSI)、IDE(Integrated DriveElectronics,集成驱动器电子)、USB(Universal Serial Bus,通用串行总线)、PCIE(PeripheralComponent Interconnect Express,PCIe,高速外围组件互联)、NVMe(NVM Express,高速非易失存储)、以太网、光纤通道、无线通信网络等连接主机与存储设备102。主机可以是能够通过上述方式同存储设备相通信的信息处理设备,例如,个人计算机、平板电脑、服务器、便携式计算机、网络交换机、路由器、蜂窝电话、个人数字助理等。存储设备102包括接口103、控制部件104、一个或多个NVM(非易失存储器,Non

Volatile Memory)芯片105以及以及DRAM(DynamicRandom Access Memory,动态随机访问存储器)110。
[0003]NAND闪存、相变存储器、FeRAM(Ferroelectric RAM,铁电存储器)、MRAM(Magnetic RandomAccess Memory,磁阻存储器)、RRAM(Resistive Random Access Memory,阻变存储器)、XPoint 存储器等是常见的NVM。
[0004]接口103可适配于通过例如SATA、IDE、USB、PCIE、NVMe、SAS、以太网、光纤通道等方式与主机交换数据。
[0005]控制部件104用于控制在接口108、NVM芯片105以及DRAM 110之间的数据传输,还用于存储管理、主机逻辑地址到NVM芯片的物理地址映射、擦除均衡、坏块管理等。控制部件104可通过软件、硬件、固件或其组合的多种方式实现,例如,控制部件104可以是FPGA (Field

programmable gate array,现场可编程门阵列)、ASIC(Application Specific Integrated Circuit,应用专用集成电路)或者其组合的形式。控制部件104也可以包括处理器或者控制器,在处理器或控制器中执行软件来操纵控制部件104的硬件来处理IO(Input/Output) 命令。控制部件104还可以耦合到DRAM 140,并可访问DRAM 110的数据。在DRAM存储FTL表和/或缓存的IO命令的数据。
[0006]控制部件104包括闪存接口控制器(或称为介质接口、介质接口控制器、闪存通道控制器),闪存接口控制器耦合到NVM芯片105,并以遵循NVM芯片105的接口协议的方式向NVM芯片105 发出命令,以操作NVM芯片105,并接收从NVM芯片105输出的命令执行结果。已知的NVM芯片接口协议包括“Toggle”、“ONFI”等。
[0007]NVM存储介质上通常按页来存储和读取数据。而按块来擦除数据。NVM存储介质上的块(也称物理块)包含多个页。存储介质上的页(称为物理页)具有固定的尺寸,例如17664字节。物理页也可以具有其他的尺寸。
[0008]在存储设备中,利用FTL(Flash Translation Layer,闪存转换层)来维护从逻辑地址到物理地址的映射信息。逻辑地址构成了操作系统等上层软件所感知到的存储设备的存储空间。物理地址是用于访问固态存储设备的物理存储单元的地址。在现有技术中还可利用中间地址形态实施地址映射。例如将逻辑地址映射为中间地址,进而将中间地址进一步映射为物理地址。可选地,访问存储设备的主机提供FTL。
[0009]存储了从逻辑地址到物理地址的映射信息的表结构被称为FTL表(也称为L2P表)。通常 FTL表的数据项记录了存储设备中以指定大小的存储单元为单位(例如,512字节、2KB、4KB等) 的地址映射关系。

技术实现思路

[0010]随着存储设备的容量增加,为了记录更多的存储单元,FTL表的尺寸随之增加,进而需要占用更大的存储器来容纳FTL表。为了寻址更新的存储单元,FTL表的每个条目的尺寸也需要增加。例如,32比特大小的FTL表条目能寻址2^32个数据单元。若每个数据单元大小为4KB,2^32个数据单元对应16TB存储容量,相应地FTL表自身的大小为16GB,需要占据至少16GB存储器空间。而存储设备具有多种容量,例如,提供给用户的存储设备的容量是例如4TB,那么FTL表自身的大小可以为4GB。然而,为了提供4TB存储空间,若每个数据单元为4KB,那么FTL表需要管理的数据单元数量为2^30个,对应的FTL表的每个条目仅需30比特大小,进而FTL表的大小为30*2^30比特(和3.75GB,小于4GB)。但是,受到存储器芯片与CPU寻址方式的限制,CPU 寻址通道以32比特或字节的整数倍为一次寻址的数据宽度,存储器芯片也通常以字节的整数倍为数据宽度。从而若FTL表的条目大小为例如30比特,虽然减少了FTL表的整体大小,但其中跨字节边界的条目却需要例如2次或更多次总线访问或存储器访问才能加载到CPU,从而显著增加了加载FTL表条目的时间,限制了存储设备的性能。
[0011]为了在提供多种容量的存储设备时,减低FTL表占据的存储器空间大小,并且减少或消除非字节对齐的FTL表条目对CPU或芯片内的其他设备访问FTL表条目的影响,根据本申请的实施例,提供了压缩的FTL表。所提供的压缩的FTL表的条目大小可以不是字节的整数倍。并且压缩的 FTL表条目在存储器中被紧密排列而无需为按字节对齐而在条目之间留有未被使用的存储器空间。以及根据本申请的实施例还希望CPU或其他设备以其既有方式按字节对齐或按字节整数倍对齐的方式访问FTL表,从而消除因使用压缩的FTL表对CPU或其他设备造成的影响。还希望以硬件加速器处理对FTL表的方法,以分担执行软件访问FTL表为CPU引入的负担并提升FTL表访问性能。
[0012]根据本申请的第一方面,提供了根据本申请第一方面的第一FTL加速器,包括读地址计算单元、读数据选择单元、读地址发送单元与读数据接收单元;读地址计算单元根据要读取的逻辑 FTL表的条目的索引(L)计算同要访问的逻辑FTL表的条目对应的物理FTL表的条目的地址,其中逻辑FTL表的条目大小为M比特,物理FTL表的条目大小为N比特,M与N为正整数,且M>N,以及其中逻辑FTL表的条目同物理FTL表的条目一一对应;读地址计算单元同读地址发送本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种FTL加速器,其特征是,包括读地址计算单元、读数据选择单元、读地址发送单元与读数据接收单元;读地址计算单元根据要读取的逻辑FTL表的条目的索引(L)计算同要访问的逻辑FTL表的条目对应的物理FTL表的条目的地址;读地址计算单元还向读数据选择单元指示从存储器读出的数据中属于要访问的物理FTL表的条目的部分;读数据选择单元根据读地址计算单元指示的从存储器读出的数据中获取属于要访问的物理FTL表的条目的部分,以及扩展要访问的物理FTL表的条目得到要访问的逻辑FTL表的条目。2.根据权利要求1所述的FTL加速器,其中,还包括:读地址缓存单元与读数据缓存单元;读地址缓存单元存储要访问的逻辑FTL表的条目的索引(L);读数据缓存单元存储要访问的逻辑FTL表的条目;读地址计算单元耦合读地址缓存单元,从读地址缓存单元获取索引(L);读数据选择单元把从存储器读出的数据中属于要访问的物理FTL表的条目的部分存储在读数据缓存;读数据缓存中存储的要访问的物理FTL表的条目被扩展为要访问的逻辑FTL表的条目的大小,以得到要访问的逻辑FTL表的条目。3.根据权利要求1或2所述的FTL加速器,其中所述读地址计算单元根据所述索引(L)计算的同要访问的逻辑FTL表的条目对应的物理FTL表的条目的地址,是物理FTL表的存储空间中,以字节地址L的第N mod 8比特开始的存储了N比特数据的一个或多个字节的地址。4.根据权利要求1所述的FTL加速器,其中,还包括:写地址计算单元、写命令处理单元与写数据拼接单元;写地址计算单元根据要更新的逻辑FTL表的条目的索引(L)计算同要更新的逻辑FTL表的条目对应的物理FTL表的条目的地址;写数据拼接单元从要更新的逻辑FTL表的条目中获取对应的N比特的物理FTL表的条目;写命令处理单元同写地址计算单元耦合,将写数据拼接单元获取的N比特的物理FTL表的条目写入写地址计算单元提供的同要更新的逻辑FTL表的条目对应的物理FTL表的条目的地址。5.根据权利要求4所述的FTL加速器,其中,写地址计算单元还根据要更新的逻辑FTL表的条目的索引(L)计算要从物理FTL表中读出的一个或二个地址,并将所述要从物理FTL表中读出的一个或二个地址提供给写命令处理单元;写命令处理单元根据所述要从物理FTL表中读出的一个或二个地址从存储器读取数据;写地址计算单元还向写数据选择单元指示从存储器读出的数据中不属于要更新的物理FTL 表的条目的部分;
写数据选择单元根据写地址计算单元指示从存储...

【专利技术属性】
技术研发人员:王祎磊丁胜涛
申请(专利权)人:成都忆芯科技有限公司
类型:新型
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1