通用闪存存储存储阵列的管理方法及装置.pdf

上传人:v**** 文档编号:11430205 上传时间:2021-09-27 格式:PDF 页数:22 大小:799.09KB
收藏 版权申诉 举报 下载
通用闪存存储存储阵列的管理方法及装置.pdf_第1页
第1页 / 共22页
通用闪存存储存储阵列的管理方法及装置.pdf_第2页
第2页 / 共22页
通用闪存存储存储阵列的管理方法及装置.pdf_第3页
第3页 / 共22页
文档描述:

《通用闪存存储存储阵列的管理方法及装置.pdf》由会员分享,可在线阅读,更多相关《通用闪存存储存储阵列的管理方法及装置.pdf(22页完成版)》请在专利查询网上搜索。

1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 201910421006.9 (22)申请日 2019.05.21 (71)申请人 济南浪潮高新科技投资发展有限公 司 地址 250100 山东省济南市高新区孙村镇 科航路2877号研发楼一楼 (72)发明人 赵鑫鑫姜凯李朋于治楼 (74)专利代理机构 济南信达专利事务所有限公 司 37100 代理人 李世喆 (51)Int.Cl. G06F 3/06(2006.01) G06F 5/06(2006.01) (54)发明名称 一种通用闪存存储存储阵列的管理方法及 装置 (57)摘。

2、要 本发明提供了一种通用闪存存储存储阵列 的管理方法及装置, 包括: 确定UFS存储阵列的 block的阵列地址指针, 建立FIFO, 其中, FIFO的 表项与阵列地址指针相对应; 当外部输入的待执 行命令为写入命令时, 根据待执行文件的大小和 指针寄存器指向的当前表项确定待执行文件的 目标表项, 再按照对应的目标阵列地址指针将待 执行文件并行存储到对应的目标block中, 并存 储文件标识和各个目标表项; 将指针寄存器从当 前表项顺次移动各个目标表项后指向的表项作 为当前表项; 当外部输入的待执行命令不是写入 命令时, 根据待执行命令对应的指定文件的指定 文件标识确定对应的各个指定表项, 。

3、再确定对应 的指定阵列地址指针, 再对对应的指定block中 的信息, 行执行待执行命令对应的操作。 权利要求书4页 说明书14页 附图3页 CN 110119252 A 2019.08.13 CN 110119252 A 1.一种通用闪存存储存储阵列的管理方法, 其特征在于, 包括: S1: 预先确定通用闪存存储UFS存储阵列中的UFS芯片的每一个block的阵列地址指针; S2: 针对每一个所述UFS芯片, 建立由所述UFS芯片的每一个所述block组成的FIFO, 其 中, 所述FIFO的每一个表项与所述UFS芯片的一个所述阵列地址指针相对应; S3: 当接收到外部输入的待执行命令时, 。

4、确定所述待执行命令是否为写入命令, 如果 是, 执行S4, 否则, 执行S7; S4: 根据所述待执行命令对应的待执行文件的大小和指针寄存器指向的当前表项, 从 各个所述表项中确定所述待执行文件对应的至少一个目标表项, 执行S5; S5: 按照所述至少一个目标表项对应的目标阵列地址指针, 将所述待执行文件并行存 储到对应的目标block中, 并存储所述待执行文件的文件信息, 其中, 所述文件信息, 包括: 所述待执行文件的文件标识和对应的各个所述目标表项, 执行S6; S6: 将所述指针寄存器从指向的所述当前表项顺次移动所述待执行文件对应的各个目 标表项后指向的表项, 作为所述指针寄存器指向的。

5、当前表项; S7: 根据所述待执行命令对应的指定文件的指定文件标识, 从所述文件信息中确定所 述指定文件对应的各个指定表项, 并确定各个所述指定表项对应的指定阵列地址指针, 执 行S8; S8: 对各个所述指定阵列地址指针对应的指定block中的信息, 并行执行所述待执行命 令对应的操作。 2.根据权利要求1所述的方法, 其特征在于, 在确定所述待执行命令为写入命令时, 在执行S4之前, 进一步包括: D1: 根据所述待执行命令对应的待执行文件的大小和所述block的位宽, 确定所述待执 行文件当前需要使用的block的数量; D2: 确定所述当前需要使用的block的数量是否不大于所述UFS。

6、存储阵列的最大并行的 block的数量, 如果是, 执行S4, 否则, 根据所述最大并行的block的数量和所述当前需要使 用的block的数量, 将所述待执行文件并行存储到对应的block中; 其中, 所述S4中的所述根据所述待执行命令对应的待执行文件的大小和指针寄存器指向的 当前表项, 从各个所述表项中确定所述待执行文件对应的至少一个目标表项, 包括: 将指针寄存器从指向的当前FIFO的当前表项顺次移动n次时指向的至少一个所述FIFO 的表项, 作为所述待执行文件对应的至少一个目标表项, 其中, n为所述待执行文件当前需 要使用的所述block的数量。 3.根据权利要求2所述的方法, 其特。

7、征在于, 所述根据所述最大并行的block的数量和所述当前需要使用的block的数量, 将所述待 执行文件并行存储到对应的block中, 包括: F1: 将所述指针寄存器从指向的当前FIFO的当前表项顺次移动m次时指向的至少一个 所述FIFO的表项, 作为所述待执行文件对应的目标表项, 其中, m为所述最大并行的block的 数量; F2: 按照所述待执行文件对应的目标表项所对应的目标阵列地址指针, 将所述待执行 文件中m个block位宽的信息并行存储到对应的所述block中; 权利要求书 1/4 页 2 CN 110119252 A 2 F3: 将所述指针寄存器从指向的当前FIFO的当前表项。

8、顺次移动m次后指向的表项作为 当前表项; F4: 确定已存储m个block位宽的信息后的所述待执行文件当前需要使用的block的数 量是否不大于所述最大并行的block的数量, 如果是, 执行F5和S4, 否则, 执行F5, 并返回F1; F5: 将已存储m个block位宽的信息后的所述待执行文件作为待执行文件。 4.根据权利要求1所述的方法, 其特征在于, 所述S1, 包括: 针对通用闪存存储UFS存储阵列中的每一个UFS芯片, 根据所述UFS芯片中的每一个 block的物理地址, 确定每一个所述block的逻辑地址; 对所述UFS存储阵列中的每一个block的逻辑地址编码, 获得每一个所述。

9、block的逻辑 地址对应的阵列地址指针; 所述按照所述至少一个目标表项对应的目标阵列地址指针, 将所述待执行文件并行存 储到对应的目标block中, 包括: 确定与所述至少一个目标表项对应的目标阵列地址指针相对应的目标block; 将所述待执行文件并行存储到各个所述目标block中; 所述S8, 包括: 确定各个所述指定阵列地址指针分别对应指定block的逻辑地址; 根据每一个所述指定block的逻辑地址, 分别确定每一个所述指定block的物理地址; 对各个所述指定block的物理地址对应的指定block, 并行执行所述待执行命令对应的 操作。 5.根据权利要求1至4中任一所述的方法, 其。

10、特征在于, 在所述从所述文件信息中确定所述待执行命令对应的指定文件标识所对应的各个指 定表项之后, 在所述确定各个所述指定表项对应的指定阵列地址指针之前, 进一步包括: 确定所述指定表项的数量是否不大于所述UFS存储阵列的最大并行的block的数量; 如果是, 执行所述确定各个所述指定表项对应的指定阵列地址指针; 否则, 根据各个所述指定表项和所述最大并行的block的数量, 对所述待执行文件使用 的block并行执行所述待执行命令对应的操作。 6.根据权利要求5所述的方法, 其特征在于, 所述根据各个所述指定表项和所述最大并行的block的数量, 对所述待执行文件使用 的block并行执行所。

11、述待执行命令对应的操作, 包括: G1: 确定未处理集合, 其中, 所述未处理集合包括各个所述指定表项; G2: 从所述未处理集合中取出所述最大并行的block的数量个待执行表项; G3: 确定各个所述待执行表项对应的待执行阵列地址指针; G4: 对各个所述待执行阵列地址指针对应的block, 并行执行所述待执行命令对应的操 作; G5: 判断所述未处理集合中的所述待执行表项的数量是否不大于所述最大并行的 block的数量, 如果是, 执行G6, 否则, 返回G2; G6: 将所述未处理集合中的所述指定表项作为待执行表项, 执行G3、 G4和G7; G7: 当所述待执行命令为擦除命令时, 删除。

12、存储的所述指定文件对应的各个指定表项 权利要求书 2/4 页 3 CN 110119252 A 3 和指定文件标识。 7.一种通用闪存存储存储阵列的管理装置, 其特征在于, 包括: 阵列地址指针确定模块, 用于执行S1: 预先确定通用闪存存储UFS存储阵列中的UFS芯 片的每一个block的阵列地址指针; 指针管理模块, 用于S2: 针对每一个所述UFS芯片, 建立由所述UFS芯片的每一个所述 block组成的FIFO, 其中, 所述FIFO的每一个表项与所述UFS芯片的一个所述阵列地址指针 确定模块确定的所述阵列地址指针相对应; 处理模块, 用于S3: 当接收到外部输入的待执行命令时, 确定。

13、所述待执行命令是否为写 入命令, 如果是, 触发写入模块, 否则, 触发非写入模块; 所述写入模块, 用于被触发时, 执行S4: 根据所述待执行命令对应的待执行文件的大小 和指针寄存器指向的当前表项, 从所述指针管理模块建立的FIFO的各个表项中确定所述待 执行文件对应的至少一个目标表项; S5: 按照所述至少一个目标表项对应的目标阵列地址 指针, 将所述待执行文件并行存储到对应的目标block中, 并存储所述待执行文件的文件信 息, 其中, 所述文件信息, 包括: 所述待执行文件的文件标识和对应的各个所述目标表项, S6: 将所述指针寄存器从指向的所述当前表项顺次移动所述待执行文件对应的各个。

14、目标表 项后指向的表项, 作为所述指针寄存器指向的当前表项; 所述非写入模块, 用于被触发时, 执行S7: 根据所述待执行命令对应的指定文件的指定 文件标识, 从所述写入模块存储的所述文件信息中确定所述指定文件对应的各个指定表 项, 并确定各个所述指定表项对应的指定阵列地址指针; S8: 对各个所述指定阵列地址指针 对应的指定block中的信息, 并行执行所述待执行命令对应的操作。 8.根据权利要求7所述的装置, 其特征在于, 所述写入模块, 包括: 第一写入管理模块和 第二写入管理模块; 所述第一写入管理模块, 用于执行D1: 根据所述待执行命令对应的待执行文件的大小 和所述block的位宽。

15、, 确定所述待执行文件当前需要使用的block的数量; 将指针寄存器从 指向的当前FIFO的当前表项顺次移动n次时指向的至少一个所述FIFO的表项, 作为所述待 执行文件对应的至少一个目标表项, 其中, n为所述待执行文件当前需要使用的所述block 的数量; 所述第二写入管理模块, 用于执行D2: 确定所述第一写入管理模块确定的所述当前需 要使用的block的数量是否不大于所述UFS存储阵列的最大并行的block的数量, 如果是, 执 行S4, 否则, 根据所述最大并行的block的数量和所述当前需要使用的block的数量, 将所述 待执行文件并行存储到对应的block中。 9.根据权利要求。

16、8所述的装置, 其特征在于, 所述第二写入管理模块, 用于F1: 将所述指针寄存器从指向的当前FIFO的当前表项顺 次移动m次时指向的至少一个所述FIFO的表项, 作为所述待执行文件对应的目标表项, 其 中, m为所述最大并行的block的数量; F2: 按照所述待执行文件对应的目标表项所对应的目标阵列地址指针, 将所述待执行 文件中m个block位宽的信息并行存储到对应的所述block中; F3: 将所述指针寄存器从指向的当前FIFO的当前表项顺次移动m次后指向的表项作为 当前表项; 权利要求书 3/4 页 4 CN 110119252 A 4 F4: 确定已存储m个block位宽的信息后的。

17、所述待执行文件当前需要使用的block的数 量是否不大于所述最大并行的block的数量, 如果是, 执行F5和S4, 否则, 执行F5, 并返回F1; F5: 将已存储m个block位宽的信息后的所述待执行文件作为待执行文件。 10.根据权利要求7至9中任一所述的装置, 其特征在于, 所述非写入模块, 进一步用于确定所述指定表项的数量是否不大于所述UFS存储阵列 的最大并行的block的数量, 如果是, 执行所述确定各个所述指定表项对应的指定阵列地址 指针, 否则, 根据各个所述指定表项和所述最大并行的block的数量, 对所述待执行文件使 用的block并行执行所述待执行命令对应的操作。 权。

18、利要求书 4/4 页 5 CN 110119252 A 5 一种通用闪存存储存储阵列的管理方法及装置 技术领域 0001 本发明涉及IC设计技术领域, 特别涉及一种通用闪存存储存储阵列的管理方法及 装置。 背景技术 0002 通用闪存存储(Universal Flash Storage, UFS)作为非易失存储器, 可以给智能 终端带来更高的读写速度更可靠的稳定性, 已经被广泛应用在智能终端上, 并且正逐渐取 代嵌入式的多媒体存储卡(embedded Multi Media Card, eMMC)的地位。 0003 目前, UFS芯片大多数都是单芯片应用, 在手机等嵌入式领域基本满足了需求。 。

19、但 是, 在一些对速度、 容量都有高要求的场合, 通过单UFS芯片无法满足用户高要求的使用需 求, 从而导致用户的使用体验差。 发明内容 0004 本发明实施例提供了一种通用闪存存储存储阵列的管理方法及装置, 能够通过多 个UFS芯片组成的UFS存储阵列满足用户高要求的使用需求。 0005 第一方面, 本发明实施例提供了一种通用闪存存储存储阵列的管理方法, 包括: 0006 S1: 预先确定通用闪存存储UFS存储阵列中的UFS芯片的每一个block的阵列地址 指针; 0007 S2: 针对每一个所述UFS芯片, 建立由所述UFS芯片的每一个所述block组成的 FIFO, 其中, 所述FIFO。

20、的每一个表项与所述UFS芯片的一个所述阵列地址指针相对应; 0008 S3: 当接收到外部输入的待执行命令时, 确定所述待执行命令是否为写入命令, 如 果是, 执行S4, 否则, 执行S7; 0009 S4: 根据所述待执行命令对应的待执行文件的大小和指针寄存器指向的当前表 项, 从各个所述表项中确定所述待执行文件对应的至少一个目标表项, 执行S5; 0010 S5: 按照所述至少一个目标表项对应的目标阵列地址指针, 将所述待执行文件并 行存储到对应的目标block中, 并存储所述待执行文件的文件信息, 其中, 所述文件信息, 包 括: 所述待执行文件的文件标识和对应的各个所述目标表项, 执行。

21、S6; 0011 S6: 将所述指针寄存器从指向的所述当前表项顺次移动所述待执行文件对应的各 个目标表项后指向的表项, 作为所述指针寄存器指向的当前表项; 0012 S7: 根据所述待执行命令对应的指定文件的指定文件标识, 从所述文件信息中确 定所述指定文件对应的各个指定表项, 并确定各个所述指定表项对应的指定阵列地址指 针, 执行S8; 0013 S8: 对各个所述指定阵列地址指针对应的指定block中的信息, 并行执行所述待执 行命令对应的操作。 0014 优选地, 0015 在确定所述待执行命令为写入命令时, 在执行S4之前, 进一步包括: 说明书 1/14 页 6 CN 1101192。

22、52 A 6 0016 D1: 根据所述待执行命令对应的待执行文件的大小和所述block的位宽, 确定所述 待执行文件当前需要使用的block的数量; 0017 D2: 确定所述当前需要使用的block的数量是否不大于所述UFS存储阵列的最大并 行的block的数量, 如果是, 执行S4, 否则, 根据所述最大并行的block的数量和所述当前需 要使用的block的数量, 将所述待执行文件并行存储到对应的block中; 0018 其中, 0019 所述S4中的所述根据所述待执行命令对应的待执行文件的大小和指针寄存器指 向的当前表项, 从各个所述表项中确定所述待执行文件对应的至少一个目标表项, 。

23、包括: 0020 将指针寄存器从指向的当前FIFO的当前表项顺次移动n次时指向的至少一个所述 FIFO的表项, 作为所述待执行文件对应的至少一个目标表项, 其中, n为所述待执行文件当 前需要使用的所述block的数量; 0021 优选地, 0022 所述根据所述最大并行的block的数量和所述当前需要使用的block的数量, 将所 述待执行文件并行存储到对应的block中, 包括: 0023 F1: 将所述指针寄存器从指向的当前FIFO的当前表项顺次移动m次时指向的至少 一个所述FIFO的表项, 作为所述待执行文件对应的目标表项, 其中, m为所述最大并行的 block的数量; 0024 F。

24、2: 按照所述待执行文件对应的目标表项所对应的目标阵列地址指针, 将所述待 执行文件中m个block位宽的信息并行存储到对应的所述block中; 0025 F3: 将所述指针寄存器从指向的当前FIFO的当前表项顺次移动m次后指向的表项 作为当前表项; 0026 F4: 确定已存储m个block位宽的信息后的所述待执行文件当前需要使用的block 的数量是否不大于所述最大并行的block的数量, 如果是, 执行F5和S4, 否则, 执行F5, 并返 回F1; 0027 F5: 将已存储m个block位宽的信息后的所述待执行文件作为待执行文件。 0028 优选地, 0029 所述S1, 包括: 0。

25、030 针对通用闪存存储UFS存储阵列中的每一个UFS芯片, 根据所述UFS芯片中的每一 个block的物理地址, 确定每一个所述block的逻辑地址; 0031 对所述UFS存储阵列中的每一个block的逻辑地址编码, 获得每一个所述block的 逻辑地址对应的阵列地址指针; 0032 所述按照所述至少一个目标表项对应的目标阵列地址指针, 将所述待执行文件并 行存储到对应的目标block中, 包括: 0033 确定与所述至少一个目标表项对应的目标阵列地址指针相对应的目标block; 0034 将所述待执行文件并行存储到各个所述目标block中; 0035 所述S8, 包括: 0036 确定各。

26、个所述指定阵列地址指针分别对应指定block的逻辑地址; 0037 根据每一个所述指定block的逻辑地址, 分别确定每一个所述指定block的物理地 址; 说明书 2/14 页 7 CN 110119252 A 7 0038 对各个所述指定block的物理地址对应的指定block, 并行执行所述待执行命令对 应的操作。 0039 优选地, 0040 在所述从所述文件信息中确定所述待执行命令对应的指定文件标识所对应的各 个指定表项之后, 在所述确定各个所述指定表项对应的指定阵列地址指针之前, 进一步包 括: 0041 确定所述指定表项的数量是否不大于所述UFS存储阵列的最大并行的block的数。

27、 量; 0042 如果是, 执行所述确定各个所述指定表项对应的指定阵列地址指针; 0043 否则, 根据各个所述指定表项和所述最大并行的block的数量, 对所述待执行文件 使用的block并行执行所述待执行命令对应的操作。 0044 优选地, 0045 所述根据各个所述指定表项和所述最大并行的block的数量, 对所述待执行文件 使用的block并行执行所述待执行命令对应的操作, 包括: 0046 G1: 确定未处理集合, 其中, 所述未处理集合包括各个所述指定表项; 0047 G2: 从所述未处理集合中取出所述最大并行的block的数量个待执行表项; 0048 G3: 确定各个所述待执行表。

28、项对应的待执行阵列地址指针; 0049 G4: 对各个所述待执行阵列地址指针对应的block, 并行执行所述待执行命令对应 的操作; 0050 G5: 判断所述未处理集合中的所述待执行表项的数量是否不大于所述最大并行的 block的数量, 如果是, 执行G6, 否则, 返回G2; 0051 G6: 将所述未处理集合中的所述指定表项作为待执行表项, 执行G3、 G4和G7; 0052 G7: 当所述待执行命令为擦除命令时, 删除存储的所述指定文件对应的各个指定 表项和指定文件标识。 0053 第二方面, 本发明实施例提供了一种通用闪存存储存储阵列的管理装置, 包括: 0054 阵列地址指针确定模。

29、块, 用于执行S1: 预先确定通用闪存存储UFS存储阵列中的 UFS芯片的每一个block的阵列地址指针; 0055 指针管理模块, 用于S2: 针对每一个所述UFS芯片, 建立由所述UFS芯片的每一个所 述block组成的FIFO, 其中, 所述FIFO的每一个表项与所述UFS芯片的一个所述阵列地址指 针确定模块确定的所述阵列地址指针相对应; 0056 处理模块, 用于S3: 当接收到外部输入的待执行命令时, 确定所述待执行命令是否 为写入命令, 如果是, 触发写入模块, 否则, 触发非写入模块; 0057 所述写入模块, 用于被触发时, 执行S4: 根据所述待执行命令对应的待执行文件的 大。

30、小和指针寄存器指向的当前表项, 从所述指针管理模块建立的FIFO的各个表项中确定所 述待执行文件对应的至少一个目标表项; S5: 按照所述至少一个目标表项对应的目标阵列 地址指针, 将所述待执行文件并行存储到对应的目标block中, 并存储所述待执行文件的文 件信息, 其中, 所述文件信息, 包括: 所述待执行文件的文件标识和对应的各个所述目标表 项, S6: 将所述指针寄存器从指向的所述当前表项顺次移动所述待执行文件对应的各个目 标表项后指向的表项, 作为所述指针寄存器指向的当前表项; 说明书 3/14 页 8 CN 110119252 A 8 0058 所述非写入模块, 用于被触发时, 执。

31、行S7: 根据所述待执行命令对应的指定文件的 指定文件标识, 从所述写入模块存储的所述文件信息中确定所述指定文件对应的各个指定 表项, 并确定各个所述指定表项对应的指定阵列地址指针; S8: 对各个所述指定阵列地址指 针对应的指定block中的信息, 并行执行所述待执行命令对应的操作。 0059 优选地, 0060 所述写入模块, 包括: 第一写入管理模块和第二写入管理模块; 0061 所述第一写入管理模块, 用于执行D1: 根据所述待执行命令对应的待执行文件的 大小和所述block的位宽, 确定所述待执行文件当前需要使用的block的数量; 将指针寄存 器从指向的当前FIFO的当前表项顺次移。

32、动n次时指向的至少一个所述FIFO的表项, 作为所 述待执行文件对应的至少一个目标表项, 其中, n为所述待执行文件当前需要使用的所述 block的数量; 0062 所述第二写入管理模块, 用于执行D2: 确定所述第一写入管理模块确定的所述当 前需要使用的block的数量是否不大于所述UFS存储阵列的最大并行的block的数量, 如果 是, 执行S4, 否则, 根据所述最大并行的block的数量和所述当前需要使用的block的数量, 将所述待执行文件并行存储到对应的block中。 0063 优选地, 0064 所述第二写入管理模块, 用于F1: 将所述指针寄存器从指向的当前FIFO的当前表 项。

33、顺次移动m次时指向的至少一个所述FIFO的表项, 作为所述待执行文件对应的目标表项, 其中, m为所述最大并行的block的数量; 0065 F2: 按照所述待执行文件对应的目标表项所对应的目标阵列地址指针, 将所述待 执行文件中m个block位宽的信息并行存储到对应的所述block中; 0066 F3: 将所述指针寄存器从指向的当前FIFO的当前表项顺次移动m次后指向的表项 作为当前表项; 0067 F4: 确定已存储m个block位宽的信息后的所述待执行文件当前需要使用的block 的数量是否不大于所述最大并行的block的数量, 如果是, 执行F5和S4, 否则, 执行F5, 并返 回F。

34、1; 0068 F5: 将已存储m个block位宽的信息后的所述待执行文件作为待执行文件。 0069 优选地, 0070 所述非写入模块, 进一步用于确定所述指定表项的数量是否不大于所述UFS存储 阵列的最大并行的block的数量, 如果是, 执行所述确定各个所述指定表项对应的指定阵列 地址指针, 否则, 根据各个所述指定表项和所述最大并行的block的数量, 对所述待执行文 件使用的block并行执行所述待执行命令对应的操作。 0071 本发明实施例提供了一种通用闪存存储存储阵列的管理方法及装置, 对于由至少 两个UFS芯片组成的UFS存储阵列中的每一个UFS芯片, 通过确定每一个UFS芯片。

35、的block的 阵列地址指针, 可以确定该芯片对应的FIFO的每一个表项, 在外部输入的待执行命令是写 入命令时, 可以根据待执行命令对应的待执行文件的大小和指针寄存器指向的当前表项, 来确定待执行文件需要使用的FIFO的目标表项, 再根据确定的目标表项所对应的目标阵列 地址指针, 即可将待执行文件并行存储到各个目标阵列地址指针对应的block中, 并存储待 执行文件的文件标识和各个待执行文件使用的FIFO的目标表项, 以便需要对待执行文件进 说明书 4/14 页 9 CN 110119252 A 9 行操作时, 根据该信息查找待执行文件, 再更新指针寄存器指向的当前表项, 以便后续文件 的存。

36、储; 而当外部输入的待执行命令不是写入命令时, 则需要根据待执行命令对应的指定 文件的指定文件标识, 确定指定文件对应的各个指定表项, 进而确定指定表项对应的指定 阵列地址指针, 以便对各个指定阵列地址指针对应的指定block中的信息, 并行执行待执行 命令对应的操作。 综上可见, 通过由多个UFS芯片组成的UFS存储阵列, 可以根据待执行文件 大小和UFS存储阵列的最大并行的block的数量, 对文件进行并行写入或者并行执行待执行 命令对应的操作, 在文件较大时, 可以提高文件执行的速度, 从而实现通过多个UFS芯片组 成的UFS存储阵列满足用户高要求的使用需求。 附图说明 0072 为了更。

37、清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图是本发明 的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动的前提下, 还可以根据 这些附图获得其他的附图。 0073 图1是本发明一实施例提供的一种通用闪存存储存储阵列的管理方法的流程图; 0074 图2是本发明一实施例提供的另一种通用闪存存储存储阵列的管理方法的流程 图; 0075 图3是本发明一实施例提供的一种通用闪存存储存储阵列的管理装置的结构示意 图; 0076 图4是本发明一实施例提供的另一种通用闪存存储存储阵列的管理装置的结构。

38、示 意图。 具体实施方式 0077 为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本发明实施例 中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描述, 显然, 所描述的实施例是 本发明一部分实施例, 而不是全部的实施例, 基于本发明中的实施例, 本领域普通技术人员 在没有做出创造性劳动的前提下所获得的所有其他实施例, 都属于本发明保护的范围。 0078 如图1所示, 本发明实施例提供了一种通用闪存存储存储阵列的管理方法, 包括: 0079 S1: 预先确定通用闪存存储UFS存储阵列中的UFS芯片的每一个block的阵列地址 指针; 0080 S2: 针对每一个所述UFS。

39、芯片, 建立由所述UFS芯片的每一个所述block组成的 FIFO, 其中, 所述FIFO的每一个表项与所述UFS芯片的一个所述阵列地址指针相对应; 0081 S3: 当接收到外部输入的待执行命令时, 确定所述待执行命令是否为写入命令, 如 果是, 执行S4, 否则, 执行S7; 0082 S4: 根据所述待执行命令对应的待执行文件的大小和指针寄存器指向的当前表 项, 从各个所述表项中确定所述待执行文件对应的至少一个目标表项, 执行S5; 0083 S5: 按照所述至少一个目标表项对应的目标阵列地址指针, 将所述待执行文件并 行存储到对应的目标block中, 并存储所述待执行文件的文件信息, 。

40、其中, 所述文件信息, 包 括: 所述待执行文件的文件标识和对应的各个所述目标表项, 执行S6; 说明书 5/14 页 10 CN 110119252 A 10 0084 S6: 将所述指针寄存器从指向的所述当前表项顺次移动所述待执行文件对应的各 个目标表项后指向的表项, 作为所述指针寄存器指向的当前表项; 0085 S7: 根据所述待执行命令对应的指定文件的指定文件标识, 从所述文件信息中确 定所述指定文件对应的各个指定表项, 并确定各个所述指定表项对应的指定阵列地址指 针, 执行S8; 0086 S8: 对各个所述指定阵列地址指针对应的指定block中的信息, 并行执行所述待执 行命令对应。

41、的操作。 0087 在本发明实施例中, 对于由至少两个UFS芯片组成的UFS存储阵列中的每一个UFS 芯片, 通过确定每一个UFS芯片的block的阵列地址指针, 可以确定该芯片对应的FIFO的每 一个表项, 在外部输入的待执行命令是写入命令时, 可以根据待执行命令对应的待执行文 件的大小和指针寄存器指向的当前表项, 来确定待执行文件需要使用的FIFO的目标表项, 再根据确定的目标表项所对应的目标阵列地址指针, 即可将待执行文件并行存储到各个目 标阵列地址指针对应的block中, 并存储待执行文件的文件标识和各个待执行文件使用的 FIFO的目标表项, 以便需要对待执行文件进行操作时, 根据该信。

42、息查找待执行文件, 再更新 指针寄存器指向的当前表项, 以便后续文件的存储; 而当外部输入的待执行命令不是写入 命令时, 则需要根据待执行命令对应的指定文件的指定文件标识, 确定指定文件对应的各 个指定表项, 进而确定指定表项对应的指定阵列地址指针, 以便对各个指定阵列地址指针 对应的指定block中的信息, 并行执行待执行命令对应的操作。 综上可见, 通过由多个UFS芯 片组成的UFS存储阵列, 可以根据待执行文件大小和UFS存储阵列的最大并行的block的数 量, 对文件进行并行写入或者并行执行待执行命令对应的操作, 在文件较大时, 可以提高文 件执行的速度, 从而实现通过多个UFS芯片组。

43、成的UFS存储阵列满足用户高要求的使用需 求。 0088 在本发明一实施例中, 在确定所述待执行命令为写入命令时, 在执行S4之前, 进一 步包括: 0089 D1: 根据所述待执行命令对应的待执行文件的大小和所述block的位宽, 确定所述 待执行文件当前需要使用的block的数量; 0090 D2: 确定所述当前需要使用的block的数量是否不大于所述UFS存储阵列的最大并 行的block的数量, 如果是, 执行S4, 否则, 根据所述最大并行的block的数量和所述当前需 要使用的block的数量, 将所述待执行文件并行存储到对应的block中; 0091 其中, 0092 所述S4中的。

44、所述根据所述待执行命令对应的待执行文件的大小和指针寄存器指 向的当前表项, 从各个所述表项中确定所述待执行文件对应的至少一个目标表项, 包括: 0093 将指针寄存器从指向的当前FIFO的当前表项顺次移动n次时指向的至少一个所述 FIFO的表项, 作为所述待执行文件对应的至少一个目标表项, 其中, n为所述待执行文件当 前需要使用的所述block的数量。 0094 在本发明实施例中, 由于UFS存储阵列中的每一个block位宽均相同, 所以通过确 定待执行文件的大小, 可以确定待执行文件在写入时需要使用的block的数量, 例如, UFS存 储阵列中每个block的位宽为10bit, 待执行文。

45、件的大小为30bit, 那么待执行文件当前需要 使用的block的数量为3个。 UFS存储阵列的最大并行的block的数量为, 组成UFS存储阵列的 说明书 6/14 页 11 CN 110119252 A 11 UFS芯片的数量, 当待执行文件当前需要使用的block的数量不大于组成UFS存储阵列的UFS 芯片的数量时, 待执行文件需要使用的block的数量, 即为待执行文件的并行写入规模, 以 使在待执行文件较大时提供高达最大并行指数倍的单片UFS芯片的写入速度, 提高用户的 使用体验。 而当待执行文件当前需要使用的block的数量大于组成UFS存储阵列的UFS芯片 的数量时, 则需要UF。

46、S存储阵列的最大并行的block的数量, 选择待执行文件并行写入时的 规模。 每次在将待执行文件写入需要写入信息block时, 可以通过指针寄存器的当前位置和 待执行文件的写入规模, 来确定需要写入信息的FIFO的目标表项, 以便根据目标表项查找 需要写入信息的block完成信息的写入。 0095 在本发明一实施例中, 所述根据所述最大并行的block的数量和所述当前需要使 用的block的数量, 将所述待执行文件并行存储到对应的block中, 包括: 0096 F1: 将所述指针寄存器从指向的当前FIFO的当前表项顺次移动m次时指向的至少 一个所述FIFO的表项, 作为所述待执行文件对应的目。

47、标表项, 其中, m为所述最大并行的 block的数量; 0097 F2: 按照所述待执行文件对应的目标表项所对应的目标阵列地址指针, 将所述待 执行文件中m个block位宽的信息并行存储到对应的所述block中; 0098 F3: 将所述指针寄存器从指向的当前FIFO的当前表项顺次移动m次后指向的表项 作为当前表项; 0099 F4: 确定已存储m个block位宽的信息后的所述待执行文件当前需要使用的block 的数量是否不大于所述最大并行的block的数量, 如果是, 执行F5和S4, 否则, 执行F5, 并返 回F1; 0100 F5: 将已存储m个block位宽的信息后的所述待执行文件。

48、作为待执行文件。 0101 在本发明实施例中, 在待执行文件当前需要使用的block的数量大于UFS存储阵列 最大并行的block的数量时, 根据最大并行的block的数量确定待执行文件此次进行写入操 作时对应的目标表项, 通过各个目标表项可以确定对应的目标阵列地址指针, 进而确定待 执行文件此次进行写入操作需要使用的block, 将待执行文件中m个block位宽的信息并行 存储到此次需要使用的block中, 即可完成写入操作。 当已存储信息后的待执行文件的当前 需要使用的block的数量不大于UFS存储阵列最大并行的block的数量时, 则待执行文件该 次写入的规模为当前需要使用的block。

49、。 0102 在本发明一实施例中, 所述S1, 包括: 0103 针对通用闪存存储UFS存储阵列中的每一个UFS芯片, 根据所述UFS芯片中的每一 个block的物理地址, 确定每一个所述block的逻辑地址; 0104 对所述UFS存储阵列中的每一个block的逻辑地址编码, 获得每一个所述block的 逻辑地址对应的阵列地址指针; 0105 所述按照所述至少一个目标表项对应的目标阵列地址指针, 将所述待执行文件并 行存储到对应的目标block中, 包括: 0106 确定与所述至少一个目标表项对应的目标阵列地址指针相对应的目标block; 0107 将所述待执行文件并行存储到各个所述目标bl。

50、ock中; 0108 所述S8, 包括: 0109 确定各个所述指定阵列地址指针分别对应指定block的逻辑地址; 说明书 7/14 页 12 CN 110119252 A 12 0110 根据每一个所述指定block的逻辑地址, 分别确定每一个所述指定block的物理地 址; 0111 对各个所述指定block的物理地址对应的指定block, 并行执行所述待执行命令对 应的操作。 0112 在本发明实施例中, 由于UFS存储阵列中的每一个block的物理地址均不同, 所以 根据block的物理地址可以确定其对应的逻辑地址, 再通过对UFS存储阵列中的各个block 的逻辑地址编码, 即可获得。

展开阅读全文
内容关键字: 通用 闪存 存储 阵列 管理 方法 装置
关于本文
本文标题:通用闪存存储存储阵列的管理方法及装置.pdf
链接地址:https://www.zhuanlichaxun.net/pdf/11430205.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1