一种基于卸载卡的NVME硬盘管理系统及方法与流程

文档序号:20874986发布日期:2020-05-26 16:22阅读:742来源:国知局
一种基于卸载卡的NVME硬盘管理系统及方法与流程
本发明涉及硬盘管理
技术领域
,尤其是一种基于卸载卡的nvme硬盘管理系统及方法。
背景技术
:nvme(英文全称:non-volatilememoryexpress中文全称:非易失性内存主机控制器接口规范)硬盘是服务器
技术领域
常见的固态硬盘,为了实现nvme硬盘的应用,需要设计nvme硬盘背板,使nvme硬盘与host进行通信。常见的host控制器为cpu,cpu通过pcie链路(peripheralcomponentinterconnect、高速串行计算机扩展总线标准)与nvme背板直连,并通过vpp信号进行nvme硬盘的管理。随着产品应用情景的复杂性,直连nvme硬盘需要占用cpu大量计算空间,从而影响到cpu的性能。如图1所示,现有的服务器主板设计中,cpu的pcieport通过高速线连接到背板nvme硬盘,cpu的vpp信号连接到背板cpld,背板cpld通过解析vpp信号实现nmve硬盘的管理操作。nvme硬盘通过背板与cpuport直接相连,当大量的计算数据需要存储到nvme硬盘时,需要占用cpu大量的计算单元,降低了cpu的整体性能。技术实现要素:本发明的目的是提供一种基于卸载卡的nvme硬盘管理系统及方法,有效地提高服务器计算性能时,并保证了nvme硬盘的管理控制功能。为实现上述目的,本发明采用下述技术方案:本发明第一方面提供了一种基于卸载卡的nvme硬盘管理系统,包括:主控模块、卸载卡模块和硬盘背板模块;所述卸载卡模块包括数据运算单元和点灯控制单元;所述数据运算单元与主控模块的数据端连接,所述数据运算单元的硬盘状态通信端口与点灯控制单元连接,所述数据运算单元与硬盘背板的数据端连接;所述点灯控制单元的输出端与硬盘背板的点灯通信端口连接。结合第一方面,在第一方面第一种可能的实现方式中,所述数据运算单元包括88nr2241b0芯片,所述88nr2241b0芯片的上游端口与主控模块的pcie端口连接,所述88nr2241b0芯片的下游端口与硬盘背板的pcie端口连接。结合第一方面,在第一方面第二种可能的实现方式中,所述点灯控制单元包括卸载卡cpld芯片,所述卸载卡cpld芯片包括gpio解析模块和vpp模拟模块,所述gpio解析模块的输入端与88nr2241b0芯片连接,所述gpio解析模块的输出端与vpp模拟模块的输入端连接,所述vpp模拟模块的输出端与硬盘背板模块的点灯通信端口连接。结合第一方面,在第一方面第三种可能的实现方式中,所述硬盘背板模块包括背板cpld芯片和nvmessd硬盘,所述88nr2241b0芯片的下游端口与nvmessd硬盘的pcie端口连接,所述vpp模拟模块的输出端与背板cpld芯片的vpp信号端连接。本发明第二方面提供一种基于卸载卡的nvme硬盘管理方法,包括以下步骤:解析上游端寄存器中数值,获取每个nvme硬盘的状态信息;模拟cpuvmd的工作机制,将所述每个nvme硬盘的状态信息通过vpp数据格式发送至硬盘背板;所述硬盘背板基于所述每个nvme硬盘的状态信息对所有nvme硬盘进行控制管理。结合第二方面,在第二方面第一种可能的实现方式中,所述解析上游端寄存器中数值,获取每个nvme硬盘的状态信息,具体包括:获取并解析上游端pcieslot寄存器中的数值,根据预先设定的寄存器位信息得到所述每个nvme硬盘的状态信息,将所述每个nvme硬盘的状态信息转换为对应的gpio状态进行传递,所述nvme硬盘的状态信息包括locate、fault和rebuild。结合第二方面,在第二方面第二种可能的实现方式中,所述模拟cpuvmd的工作机制,将所述每个nvme硬盘的状态信息通过vpp数据格式发送至硬盘背板,具体包括:解析所述gpio状态,获取所述每个nvme硬盘的状态信息;基于逻辑设计模拟cpuvmd的工作机制,通过vpp总线将转换为vpp数据格式的每个nvme硬盘的状态信息发送至硬盘背板。结合第二方面,在第二方面第三种可能的实现方式中,所述模拟cpuvmd的工作机制,将所述每个nvme硬盘的状态信息通过vpp数据格式发送至硬盘背板,具体包括:基于i2c-master功能实现cpuvmd工作机制模拟,并模拟vpp的数据格式,将解析得到的gpio状态对应到vpp数据格式对应位。结合第二方面,在第二方面第四种可能的实现方式中,还包括:获取上游端cpu中数据进行运算处理,存储至下游端的nvmessd硬盘;读取下游端nvmessd硬盘中数据进行运算处理,发送至上游端cpu。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:本发明通过卸载卡配置,使用88nr2241b0芯片实现对pcie数据运算操作,从而减轻cpu的运算负载,提升服务器计算性能的同时,保证了服务器的整体性能,使用卸载卡可以有效提升服务器的计算能力,并且不占用cpu的计算空间。由于cpu的pcie数据经过了88nr2241b0芯片的运算处理,因此cpu端的vpp信号不能用来管理硬盘背板上的nvme硬盘状态使用。本申请使用88nr2241b0芯片芯片解析pcie数据中的slotcontrol寄存器数值,获取nvme硬盘的状态,通过gpio的信号频率传输给cpld;卸载卡cpld解析88nr2241b0芯片gpio的状态,获取nvme盘的状态,并模拟vmd实现机制,通过vpp总线实现对nvme硬盘的控制。该方案可以有效地提高服务器计算性能时,并保证了nvme硬盘的管理控制功能。附图说明图1是本发明现有nvme硬盘管理示意图;图2是本发明系统实施例一结构示意图;图3是本发明系统实施例二结构示意图;图4是本发明方法实施例流程图。具体实施方式为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。如图2所示,一种基于卸载卡的nvme硬盘管理系统,包括:主控模块、卸载卡模块和硬盘背板模块;所述卸载卡模块包括数据运算单元和点灯控制单元;所述数据运算单元与主控模块的数据端连接,所述数据运算单元的硬盘状态通信端口与点灯控制单元连接,所述数据运算单元与硬盘背板的数据端连接;所述点灯控制单元的输出端与硬盘背板的点灯通信端口连接。数据运算单元包括88nr2241b0芯片,所述88nr2241b0芯片的上游端口与主控模块的pcie端口连接,所述88nr2241b0芯片的下游端口与硬盘背板的pcie端口连接。为了提高服务器的计算能力,同时保证服务器整体性能不受影响,在nvme硬盘和cpu之间增加卸载卡配置,使用卸载卡可以有效提升服务器的计算能力,并且不占用cpu的计算空间。卸载卡设计中使用marvell的88nr2241b0芯片,上游端与cpu的pcieport直连,下游端与nvme硬盘直连。如图3所示,点灯控制单元包括卸载卡cpld芯片,所述卸载卡cpld芯片包括gpio解析模块和vpp模拟模块,所述gpio解析模块的输入端与88nr2241b0芯片连接,所述gpio解析模块的输出端与vpp模拟模块的输入端连接,所述vpp模拟模块的输出端与硬盘背板模块的点灯通信端口连接。硬盘背板模块包括背板cpld芯片和nvmessd硬盘,所述88nr2241b0芯片的下游端口与nvmessd硬盘的pcie端口连接,所述vpp模拟模块的输出端与背板cpld芯片的vpp信号端连接。基于如上所述的卸载卡的nvme硬盘管理系统,本发明还提供了一种基于卸载卡的nvme硬盘管理方法,如图4所示,包括以下步骤:s1、解析上游端寄存器中数值,获取每个nvme硬盘的状态信息;s2、模拟cpuvmd的工作机制,将所述每个nvme硬盘的状态信息通过vpp数据格式发送至硬盘背板;s3、所述硬盘背板基于所述每个nvme硬盘的状态信息对所有nvme硬盘进行控制管理。作为本申请的一个实施例,步骤s1中,所述解析上游端寄存器中数值,获取每个nvme硬盘的状态信息,具体包括:获取并解析上游端pcieslot寄存器中的数值,根据预先设定的寄存器位信息得到所述每个nvme硬盘的状态信息,将所述每个nvme硬盘的状态信息转换为对应的gpio状态进行传递,所述nvme硬盘的状态信息包括locate、fault和rebuild。由于cpu的pcie数据经过了88nr2241b0芯片的运算处理,因此cpu端的vpp信号不能用来管理硬盘背板上的nvme硬盘状态,需要从88nr2241b0芯片的pcie链路中重新解析nvme硬盘的状态信息进行nvme硬盘的管理。在vmd管理机制中,pcie寄存器中存在对应nvme硬盘管理的寄存器信息,88nr2241b0芯片解析pcieslot寄存器中的数值,获取每个nvme硬盘的状态信息。其中,寄存器bit6和bit7的attentionindicatorcontrol代表nvme硬盘的fault指示灯状态,寄存器bit8和bit9的powerindicatorcontrol代表nvme硬盘的locate指示灯状态。88nr2241b0芯片获取nvme硬盘状态信息后,通过gpio通知cpld当前nvme硬盘状态。作为本申请的一个实施例,步骤s2中,所述模拟cpuvmd的工作机制,将所述每个nvme硬盘的状态信息通过vpp数据格式发送至硬盘背板,具体包括:解析所述gpio状态,获取所述每个nvme硬盘的状态信息;基于逻辑设计模拟cpuvmd的工作机制,通过vpp总线将转换为vpp数据格式的每个nvme硬盘的状态信息发送至硬盘背板。本实施例中,88nr2241b0芯片与cpld间通过单gpio进行nvme硬盘状态的传递,定义如下:表格1nvme硬盘状态获取gpio状态nvme硬盘状态1hz方波locate状态lowfault状态2hz方波rebuild状态卸载卡cpld检测与88nr2241b0芯片之间gpio的状态,参考表格1中数据。卸载卡cpld通过模拟cpuvmd的工作机制,将获取得到的nvme硬盘状态信息通过vpp的数据格式发送给背板cpld,实现背板nvme硬盘的管理操作。作为本申请的一个实施例,步骤s2中,所述模拟cpuvmd的工作机制,将所述每个nvme硬盘的状态信息通过vpp数据格式发送至硬盘背板,具体包括:基于i2c-master功能实现cpuvmd工作机制模拟,并模拟vpp的数据格式,将解析得到的gpio状态对应到vpp数据格式对应位。本实施例中,cpld内部通过逻辑设计实现i2c-master功能,并模拟vpp的数据格式,将解析得到的gpio状态对应到vpp数据格式对应位。作为本申请的一个实施例,一种基于卸载卡的nvme硬盘管理方法,还包括:获取上游端cpu中数据进行运算处理,存储至下游端的nvmessd硬盘;读取下游端nvmessd硬盘中数据进行运算处理,发送至上游端cpu。cpu中的数据经过卸载卡的88nr2241b0芯片计算处理之后,存储到nvme硬盘中,同时,cpu需要数据时,卸载卡的88nr2241b0芯片从nvme硬盘中读取数据,并进行数据的运算处理,得到cpu可以直接使用的数据,从而减轻了cpu的运算处理能力。上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1