CN108122595A - 一种基于多个微处理器架构的存储控制装置 - Google Patents

一种基于多个微处理器架构的存储控制装置 Download PDF

Info

Publication number
CN108122595A
CN108122595A CN201711386697.0A CN201711386697A CN108122595A CN 108122595 A CN108122595 A CN 108122595A CN 201711386697 A CN201711386697 A CN 201711386697A CN 108122595 A CN108122595 A CN 108122595A
Authority
CN
China
Prior art keywords
data
memory
module
microprocessor
error correction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201711386697.0A
Other languages
English (en)
Inventor
王元龙
陈淼
施鹏
王玉梅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEREL SYSTEMS Ltd
Original Assignee
NEREL SYSTEMS Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEREL SYSTEMS Ltd filed Critical NEREL SYSTEMS Ltd
Priority to CN201711386697.0A priority Critical patent/CN108122595A/zh
Priority to PCT/CN2017/119829 priority patent/WO2019119514A1/zh
Publication of CN108122595A publication Critical patent/CN108122595A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

本发明公开了一种基于多个微处理器架构的存储控制装置,包括主机端接口单元、多个存储器接口单元、主机端微处理器和多个存储端微处理器,主机端微处理器通过主机端接口单元与计算机主机进行通信,存储端微处理器通过存储器接口单元与存储器进行通信,主机端微处理器同时与多个存储端微处理器进行信息交互,并通过存储器接口单元对存储器进行管理操作和数据存取操作,所述存储控制装置还包括主数据纠错编码模块、主数据纠错解码模块、多个管理数据纠错编码模块、多个管理数据纠错解码模块和多个管理数据存储模块。

Description

一种基于多个微处理器架构的存储控制装置
技术领域
本发明涉及计算机通信和数据存储技术领域,特别涉及到一种基于多个微处理器架构的存储控制装置。
背景技术
固态硬盘(Solid State Drives)是用固态电子存储芯片阵列制成的硬盘,由主控芯片和多个闪存芯片(NAND Flash)组成。固态硬盘可广泛应用于军事、车载、工控、视频监控、网络终端、电力、医疗、航空、导航设备以及消费性电子产品等领域。固态硬盘相较于传统的机械硬盘具有启动快、访问延迟小、随机访问性能高、无噪音、发热量低、工作温度范围大、体较小重量轻、抗震动等优点。
主控芯片负责处理主机端协议并与主机端进行通信,常见的主机端协议包括Peripheral Component Interconnect Express(PCIE)总线接口协议、Serial AdvancedTechnology Attachment(SATA)总线接口协议、Universal Serial Bus(USB)总线接口协议。
主控芯片还负责对多个闪存芯片进行管理。由于闪存器件自身的特性,其每个存储单元的使用寿命是有限的,也就是常说的可擦写次数。闪存芯片随着其工艺水平的不断演进,成本在不断降低,可擦写次数却在持续下降。因此主控芯片需要使用各种算法对闪存芯片进行损耗均衡、垃圾回收等操作以提高其使用寿命。另外主控芯片内部通常还包含用于错误纠正的硬件(ECC),可以自动纠正传输和储存中产生的错误。
闪存映射层(FTL)用来将文件系统访问的逻辑地址转换为闪存器件的物理地址,其主要思想是,通过将闪存模拟成与磁盘一致的块设备,屏蔽了闪存的特性,使得现有文件系统可以直接运行在闪存映射层之上,减少了移植的代价。FTL采用了逻辑页与物理页的映射机制,每个逻辑页在某一时刻映射到唯一的一个物理页。上层磁盘文件系统所访问的是逻辑页,而逻辑页与物理页的映射关系由FTL来管理与维护,对于上层磁盘文件系统则是完全透明不可见的。
闪存芯片的管理和FTL算法的实现都需要占用大量的系统资源,主控芯片中通常会包含一颗性能强大的处理器(如32位的ARM处理器),并在硬件的协助下实现对多个闪存芯片的管理和FTL算法。然而强大的处理器性能也意味着芯片面积增大、功耗增大、成本提升和软件复杂度的提升。如果能使用多个微处理器(如8位的8051处理器)分别处理主机端通信,并实现对多个闪存芯片的管理和FTL算法,就可以减小芯片面积、减小功耗、降低成本和降低软件复杂度,达到更佳的成本效益比。
发明内容
本发明所要解决的技术问题是:固态硬盘的主控芯片是连接主机端和存储器之间的桥梁,也是基于闪存芯片的存储系统的大脑中枢,更是存储系统达到高性能要求的关键,现有技术通常采用一颗性能强大的处理器来配合硬件处理主机端通信协议,并实现对多个闪存芯片的管理和FTL算法,然而强大的处理器性能也带来主控芯片面积增大、功耗增大、成本提升和软件复杂度的提升等问题,目前缺少一种低成本、低复杂度,又能达到较高性能的存储控制装置。
为了解决上述技术问题,本发明采用的技术方案是:
本发明提出一种基于多个微处理器架构的存储控制装置,包括主机端接口单元和多个存储器接口单元,主机端接口单元连接着计算机主机,存储器接口单元一对一地连接着存储器,存储控制装置还包括主机端微处理器、多个存储端微处理器,
主机端微处理器通过主机端接口单元与计算机主机建立连接,并根据主机端协议与计算机主机进行通信,
存储端微处理器一对一地连接着存储器接口单元,并根据存储端协议与存储器进行通信,
主机端微处理器同时与多个存储端微处理器进行信息交互,并通过存储器接口单元对存储器进行管理操作和数据存取操作,
主机端微处理器根据预设策略,将主机端接口单元从计算机主机接收到的数据进行处理,然后分配给多个存储器接口单元,并发送到存储器,
主机端微处理器根据预设策略,将多个存储器接口单元从存储器接收到的数据进行处理,然后汇集给主机端接口单元,并发送到计算机主机。
优选地,所述主机端微处理器和多个存储端微处理器还包括寄存器组,主机端微处理器和多个存储端微处理器通过其寄存器组进行信息交互。
优选地,所述主机端协议为Peripheral Component Interconnect Express(PCIE)总线接口协议、Serial Advanced Technology Attachment(SATA)总线接口协议或者Universal Serial Bus(USB)总线接口协议。
优选地,所述存储控制装置还包括主数据纠错编码模块和主数据纠错解码模块,
主机端接口单元从计算机主机接收数据并发送到主数据纠错编码模块,主数据纠错编码模块将接收到的数据进行纠错编码并将编码后的数据发送到主机端微处理器,然后分配给多个存储器接口单元,并发送到存储器,
多个存储器接口单元从存储器接收数据并通过主机端微处理器汇集给主数据纠错解码模块,主数据纠错解码模块将接收到的数据进行纠错解码并将解码后的数据发送到主机端接口单元,并发送到计算机主机。
优选地,所述主数据纠错编码模块为BCH纠错编码模块或LDPC纠错编码模块。
优选地,所述主数据纠错解码模块为BCH纠错解码模块或LDPC纠错解码模块。
优选地,所述存储控制装置还包括多个管理数据纠错编码模块、多个管理数据纠错解码模块和多个管理数据存储模块,
管理数据纠错编码模块一对一地连接着存储器接口单元和管理数据存储模块,存储端微处理器生成管理数据并发送到管理数据存储模块,管理数据纠错编码模块从管理数据存储模块取得管理数据并进行纠错编码,然后将编码后的数据发送到存储器接口单元,并发送到存储器,
管理数据纠错解码模块一对一地连接着存储器接口单元和管理数据存储模块,存储器接口单元从存储器接收数据并发送到管理数据纠错解码模块,管理数据纠错解码模块对接收到的数据进行纠错解码,然后将解码后的数据发送到管理数据存储模块,存储端微处理器从管理数据存储模块取得管理数据,
存储端微处理器实现存储器的闪存映射层(FTL)功能,FTL所需的管理数据存储于管理数据存储模块。
优选地,所述管理数据纠错编码模块为BCH纠错编码模块或LDPC纠错编码模块。
优选地,所述管理数据纠错解码模块为BCH纠错解码模块或LDPC纠错解码模块。
本发明的有益效果是:克服现有技术中固态硬盘主控芯片使用一颗性能强大的处理器同时处理主机端通信和多个闪存芯片管理及FTL算法所造成的主控芯片面积增大、功耗增大、成本提升和软件复杂度的提升等缺点,提供了一种基于多个微处理器架构的存储控制装置,通过使用多个微处理器分别处理主机端通信,并实现对多个闪存芯片的管理和FTL算法,从而减小芯片面积、减小功耗、降低成本和降低软件复杂度,达到更佳的成本效益比。
附图说明
下面结合附图和实施例对本发明进一步说明:
图1是本发明一种基于多个微处理器架构的存储控制装置实施例之模块图及应用示意图。
图2是本发明实施例中主机端接口单元、主机端微处理器、主数据纠错编码模块和主数据纠错解码模块之间的连接示意图。
图3是本发明实施例中存储器接口单元、存储端微处理器、管理数据纠错编码模块、管理数据纠错解码模块和管理数据存储模块之间的连接示意图。
其中:
11计算机主机 22存储器
99基于多个微处理器架构的存储控制装置
300主机端接口单元 500存储器接口单元
400主机端微处理器 600存储端微处理器
100主数据纠错编码模块 200主数据纠错解码模块
700管理数据纠错编码模块 800管理数据纠错解码模块
900管理数据存储模块
具体实施方式
下面结合附图中的实施例对本发明一种基于多个微处理器架构的存储控制装置做进一步说明。
如图1所示,为本发明一种基于多个微处理器架构的存储控制装置之实施例,在该实施例中,存储控制装置99包括主机端接口单元300和多个存储器接口单元500,主机端接口单元300连接着计算机主机11,存储器接口单元500一对一地连接着存储器22。
存储控制装置99还包括主机端微处理器400、多个存储端微处理器600。
主机端微处理器400通过主机端接口单元300与计算机主机11建立连接,并根据主机端协议与计算机主机11进行通信。
存储端微处理器600一对一地连接着存储器接口单元500,并根据存储端协议与存储器22进行通信。
主机端微处理器400同时与多个存储端微处理器600进行信息交互,并通过存储器接口单元500对存储器22进行管理操作和数据存取操作。
主机端微处理器400根据预设策略,将主机端接口单元300从计算机主机11接收到的数据进行处理,然后分配给多个存储器接口单元500,并发送到存储器22。
主机端微处理器400根据预设策略,将多个存储器接口单元500从存储器22接收到的数据进行处理,然后汇集给主机端接口单元300,并发送到计算机主机11。
在本实施例中,所述主机端微处理器400和多个存储端微处理器600还包括寄存器组,主机端微处理器400和多个存储端微处理器600通过其寄存器组进行信息交互。
在本实施例中,所述主机端协议为Peripheral Component InterconnectExpress(PCIE)总线接口协议、Serial Advanced Technology Attachment(SATA)总线接口协议或者Universal Serial Bus(USB)总线接口协议。
如图2所示,在本实施例中,所述存储控制装置99还可以包括主数据纠错编码模块100和主数据纠错解码模块200。
主机端接口单元300从计算机主机11接收数据并发送到主数据纠错编码模块100,主数据纠错编码模块100将接收到的数据进行纠错编码并将编码后的数据发送到主机端微处理器400,然后分配给多个存储器接口单元500,并发送到存储器22。
多个存储器接口单元500从存储器22接收数据并通过主机端微处理器400汇集给主数据纠错解码模块200,主数据纠错解码模块200将接收到的数据进行纠错解码并将解码后的数据发送到主机端接口单元300,并发送到计算机主机11。
在本实施例中,所述主数据纠错编码模块100为BCH纠错编码模块或LDPC纠错编码模块。
在本实施例中,所述主数据纠错解码模块200为BCH纠错解码模块或LDPC纠错解码模块。
如图3所示,在本实施例中,所述存储控制装置99还可以包括多个管理数据纠错编码模块700、多个管理数据纠错解码模块800和多个管理数据存储模块900。
管理数据纠错编码模块700一对一地连接着存储器接口单元500和管理数据存储模块900,存储端微处理器600生成管理数据并发送到管理数据存储模块900,管理数据纠错编码模块700从管理数据存储模块900取得管理数据并进行纠错编码,然后将编码后的数据发送到存储器接口单元500,并发送到存储器22。
管理数据纠错解码模块800一对一地连接着存储器接口单元500和管理数据存储模块900,存储器接口单元500从存储器22接收数据并发送到管理数据纠错解码模块800,管理数据纠错解码模块800对接收到的数据进行纠错解码,然后将解码后的数据发送到管理数据存储模块900,存储端微处理器600从管理数据存储模块900取得管理数据。
存储端微处理器600实现存储器22的闪存映射层FTL功能,FTL所需的管理数据存储于管理数据存储模块900。
在本实施例中,所述管理数据纠错编码模块700为BCH纠错编码模块或LDPC纠错编码模块。
在本实施例中,所述管理数据纠错解码模块800为BCH纠错解码模块或LDPC纠错解码模块。
本发明一种基于多个微处理器架构的存储控制装置,克服现有技术中固态硬盘主控芯片使用一颗处理器同时处理主机端通信和多个闪存芯片管理及FTL算法所造成的缺点,通过使用多个微处理器分别处理主机端通信,并实现对多个闪存芯片的管理和FTL算法,从而减小芯片面积、减小功耗、降低成本和降低软件复杂度,达到更佳的成本效益比。
以上所述仅是本发明的较佳实施例而已,并非对本发明做出任何形式上的限定,本发明请求的保护范围当以权利要求书所记载的内容为准,凡是依据本发明的技术实质对以上具体实施方式所作的一切简单变化、等同替换或分解合并,均仍属于本发明技术方案的请求保护范围之内。

Claims (9)

1.一种基于多个微处理器架构的存储控制装置(99),包括主机端接口单元(300)和多个存储器接口单元(500),主机端接口单元(300)连接着计算机主机(11),存储器接口单元(500)一对一地连接着存储器(22),其特征在于:
所述存储控制装置(99)还包括主机端微处理器(400)、多个存储端微处理器(600),
主机端微处理器(400)通过主机端接口单元(300)与计算机主机(11)建立连接,并根据主机端协议与计算机主机(11)进行通信,
存储端微处理器(600)一对一地连接着存储器接口单元(500),并根据存储端协议与存储器(22)进行通信,
主机端微处理器(400)同时与多个存储端微处理器(600)进行信息交互,并通过存储器接口单元(500)对存储器(22)进行管理操作和数据存取操作,
主机端微处理器(400)根据预设策略,将主机端接口单元(300)从计算机主机(11)接收到的数据进行处理,然后分配给多个存储器接口单元(500),并发送到存储器(22),
主机端微处理器(400)根据预设策略,将多个存储器接口单元(500)从存储器(22)接收到的数据进行处理,然后汇集给主机端接口单元(300),并发送到计算机主机(11)。
2.根据权利要求1所述的一种基于多个微处理器架构的存储控制装置(99),其特征在于:
所述主机端微处理器(400)和多个存储端微处理器(600)还包括寄存器组,主机端微处理器(400)和多个存储端微处理器(600)通过其寄存器组进行信息交互。
3.根据权利要求1所述的一种基于多个微处理器架构的存储控制装置(99),其特征在于:
所述主机端协议为Peripheral Component Interconnect Express(PCIE)总线接口协议、Serial Advanced Technology Attachment(SATA)总线接口协议或者UniversalSerial Bus(USB)总线接口协议。
4.根据权利要求1所述的一种基于多个微处理器架构的存储控制装置(99),其特征在于:
所述存储控制装置(99)还包括主数据纠错编码模块(100)和主数据纠错解码模块(200),
主机端接口单元(300)从计算机主机(11)接收数据并发送到主数据纠错编码模块(100),主数据纠错编码模块(100)将接收到的数据进行纠错编码并将编码后的数据发送到主机端微处理器(400),然后分配给多个存储器接口单元(500),并发送到存储器(22),
多个存储器接口单元(500)从存储器(22)接收数据并通过主机端微处理器(400)汇集给主数据纠错解码模块(200),主数据纠错解码模块(200)将接收到的数据进行纠错解码并将解码后的数据发送到主机端接口单元(300),并发送到计算机主机(11)。
5.根据权利要求4所述的一种基于多个微处理器架构的存储控制装置(99),其特征在于:
所述主数据纠错编码模块(100)为BCH纠错编码模块或LDPC纠错编码模块。
6.根据权利要求4所述的一种基于多个微处理器架构的存储控制装置(99),其特征在于:
所述主数据纠错解码模块(200)为BCH纠错解码模块或LDPC纠错解码模块。
7.根据权利要求1所述的一种基于多个微处理器架构的存储控制装置(99),其特征在于:
所述存储控制装置(99)还包括多个管理数据纠错编码模块(700)、多个管理数据纠错解码模块(800)和多个管理数据存储模块(900),
管理数据纠错编码模块(700)一对一地连接着存储器接口单元(500)和管理数据存储模块(900),存储端微处理器(600)生成管理数据并发送到管理数据存储模块(900),管理数据纠错编码模块(700)从管理数据存储模块(900)取得管理数据并进行纠错编码,然后将编码后的数据发送到存储器接口单元(500),并发送到存储器(22),
管理数据纠错解码模块(800)一对一地连接着存储器接口单元(500)和管理数据存储模块(900),存储器接口单元(500)从存储器(22)接收数据并发送到管理数据纠错解码模块(800),管理数据纠错解码模块(800)对接收到的数据进行纠错解码,然后将解码后的数据发送到管理数据存储模块(900),存储端微处理器(600)从管理数据存储模块(900)取得管理数据,
存储端微处理器(600)实现存储器(22)的闪存映射层(FTL)功能,FTL所需的管理数据存储于管理数据存储模块(900)。
8.根据权利要求7所述的一种基于多个微处理器架构的存储控制装置(99),其特征在于:
所述管理数据纠错编码模块(700)为BCH纠错编码模块或LDPC纠错编码模块。
9.根据权利要求7所述的一种基于多个微处理器架构的存储控制装置(99),其特征在于:
所述管理数据纠错解码模块(800)为BCH纠错解码模块或LDPC纠错解码模块。
CN201711386697.0A 2017-12-20 2017-12-20 一种基于多个微处理器架构的存储控制装置 Pending CN108122595A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201711386697.0A CN108122595A (zh) 2017-12-20 2017-12-20 一种基于多个微处理器架构的存储控制装置
PCT/CN2017/119829 WO2019119514A1 (zh) 2017-12-20 2017-12-29 一种基于多个微处理器架构的存储控制装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711386697.0A CN108122595A (zh) 2017-12-20 2017-12-20 一种基于多个微处理器架构的存储控制装置

Publications (1)

Publication Number Publication Date
CN108122595A true CN108122595A (zh) 2018-06-05

Family

ID=62230659

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711386697.0A Pending CN108122595A (zh) 2017-12-20 2017-12-20 一种基于多个微处理器架构的存储控制装置

Country Status (2)

Country Link
CN (1) CN108122595A (zh)
WO (1) WO2019119514A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201465566U (zh) * 2009-07-10 2010-05-12 北京国科环宇空间技术有限公司 一种数据存储装置
CN102541778A (zh) * 2010-12-17 2012-07-04 西安奇维测控科技有限公司 一种超高速超大容量存储装置及其实现方法
CN102855090A (zh) * 2012-07-23 2013-01-02 深圳市江波龙电子有限公司 存储设备及其运行方法
US20150309924A1 (en) * 2012-12-07 2015-10-29 Norel Systems Limited Control apparatus and control method with multiple flash memory card channels

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201465566U (zh) * 2009-07-10 2010-05-12 北京国科环宇空间技术有限公司 一种数据存储装置
CN102541778A (zh) * 2010-12-17 2012-07-04 西安奇维测控科技有限公司 一种超高速超大容量存储装置及其实现方法
CN102855090A (zh) * 2012-07-23 2013-01-02 深圳市江波龙电子有限公司 存储设备及其运行方法
US20150309924A1 (en) * 2012-12-07 2015-10-29 Norel Systems Limited Control apparatus and control method with multiple flash memory card channels

Also Published As

Publication number Publication date
WO2019119514A1 (zh) 2019-06-27

Similar Documents

Publication Publication Date Title
US20210248035A1 (en) Storage device using host memory and operating method thereof
CN110147335B (zh) 用于ssd储存器中nvme命令间关联的系统和方法
US9467512B2 (en) Techniques for remote client access to a storage medium coupled with a server
TWI511150B (zh) 具儲存有錯誤校正碼資訊的資料之第一部分及儲存無錯誤校正碼資訊的資料之第二部分的記憶體子系統
CN102830942B (zh) 固态硬盘磁盘阵列映射的方法及其固态硬盘
CN111427808A (zh) 用于管理存储设备和主机单元之间的通信的系统和方法
US10645164B1 (en) Consistent latency for solid state drives
US20190190989A1 (en) System and method for providing a client device seamless access to a plurality of remote storage devices presented as a virtual device
US11726701B2 (en) Memory expander, heterogeneous computing device using memory expander, and operation method of heterogenous computing
EP2984570A1 (en) Multiprocessor system with independent direct access to bulk solid state memory resources
US20210240584A1 (en) Data recovery method, system, and apparatus in storage system
US11593000B2 (en) Data processing method and apparatus
US20220206780A1 (en) Online upgrading method and system for multi-core embedded system
US10877839B2 (en) Recovery of a coherent system in the presence of an uncorrectable error
CN112416819A (zh) 基于主机内存缓冲器的固态驱动器的实现方法及装置
US11385957B2 (en) System for memory access bandwidth management using ECC
CN111897485A (zh) 一种数据存储方法、装置、电子设备及存储介质
CN110134329B (zh) 用于使用来自退役服务器的dimm来促进高容量共享存储器的方法和系统
US20220164299A1 (en) Peer storage devices sharing host control data
CN108122595A (zh) 一种基于多个微处理器架构的存储控制装置
WO2019169078A1 (en) Flash memory device with data fragment function
DE102022209179A1 (de) Vorrichtung und verfahren zur steuerung eines gemeinsamen speichers in einem datenverarbeitungssystem
US10977201B1 (en) Per IO direct memory access redirection
CN110383698A (zh) 数据访问方法及闪存设备
TWI503841B (zh) 寫入方法、記憶體控制器與記憶體儲存裝置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20180605

RJ01 Rejection of invention patent application after publication