买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种面向多核的NVM存储设备模拟器及设计方法_江苏大学_202011298618.2 

申请/专利权人:江苏大学

申请日:2020-11-19

公开(公告)日:2024-04-09

公开(公告)号:CN112506425B

主分类号:G06F3/06

分类号:G06F3/06;G06F9/52;G06F12/06

优先权:

专利状态码:有效-授权

法律状态:2024.04.09#授权;2024.01.09#专利实施许可合同备案的生效;2021.04.02#实质审查的生效;2021.03.16#公开

摘要:本发明提出了一种面向多核的NVM存储设备模拟器及设计方法,依据NVM存储设备的地址空间进行存储分区大小的划分,将存储空间分解为多个可以并发访问的分区;针对NVM存储设备内部具有多个级别并发的特性,设置多个访问请求处理线程,在NVM存储设备内模拟出多个并行访问通道;将访问请求分解为一系列的元操作,并使用四元组表示,分别对应NVM模拟器中能并发访问的不同存储空间;并给出了一种面向多核的NVM存储设备模拟器结构,对NVM存储空间做了更精细化的划分,模拟出NVM存储设备内部的并行性,提高NVM模拟器的吞吐率,并能适应多核环境中IO访问请求冲突率较高的特性,提高NVM模拟器执行IO访问请求的效率,同时提高系统在多核间的扩展性。

主权项:1.一种面向多核的NVM存储设备模拟器设计方法,其特征在于,包括以下步骤:步骤1依据非易失性存储器NVM存储设备的地址空间进行存储分区大小的划分,将存储空间分解为多个可以并发访问的分区;步骤2针对NVM存储设备内部具有多个级别并发的特性,设置多个访问请求处理线程,在NVM存储设备内模拟出多个并行访问通道;步骤3将访问请求分解为一系列的元操作,并使用四元组表示,分别对应NVM模拟器中能并发访问的不同存储空间;所述步骤1具体步骤如下:步骤1.1:定义一个分区存储空间的大小范围,作为待划分NVM存储空间的分区依据,其中将每一个分区存储空间大小定义为一个固定值,将连续的存储空间中每固定值作为一个分区,得到一组连续的分区;步骤1.2:增加分区字段标识P_id作为每个分区的标记,并记录NVM存储空间的起始地址,第一个分区的起始地址为P_start,则下一个分区的起始地址为P_start+固定值,以此类推;所述步骤2,具体步骤如下:步骤2.1:在NVM驱动设备初始化模块中添加多通道的初始化函数cpu_list_init,cpu_list_init是创建的函数名,其中包含使用多线程创建出多个链表队列的功能,模拟多通道的执行,使用内核线程kthread初始化空的双链表结构队列io_queue,模拟出并行访问的多个IO通道;步骤2.2:同时给队列设置Q_id字段标识,将分区字段P_id的值赋给Q_id,设置多个访问请求处理线程并发处理对NVM存储设备模拟器的大量访问请求;步骤2.3:增加多通道队列向上层获取访问请求的函数get_request_from_liststructlist_head*head,intlist_type,get_request_from_liststructlist_head*head,intlist_type函数是从链表中获取请求的函数,structlist_head*head是用链表头指针获取链表的第一个请求,intlist_type为链表的类型定义;当上层请求队列不为空时,通过多线程从上层队列获取到访问请求R;所述步骤3,具体步骤如下:步骤3.1:获取访问请求R所访问区域的地址;步骤3.2:将访问请求R所访问区域的地址与NVM存储设备模拟器中分区的地址区域进行比较;步骤3.3:如果访问请求R所访问区域全部位于某一个分区内,则直接将该访问请求R转变为一个元操作AR,使用四元组ARReq_id,P_id,Start_add,Length表示,其中,Req_id是访问请求R的标识,P_id表示所对应的存储空间分区编号,Start_add是元操作所访问存储空间的起始位置,Length表示元操作所访问存储空间的长度;并将分区的标识写入对应AR中的P_id中,AR中Start_add和Length值为访问请求R的起始地址和长度;否则需要对访问请求R进行分解。

全文数据:

权利要求:

百度查询: 江苏大学 一种面向多核的NVM存储设备模拟器及设计方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。