System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机存储器,特别是涉及一种用于dram控制器的性能优化方法。
技术介绍
1、存储器是计算机体系结构的重要组成部分。其中动态随机存取存储器(dram,dynamic random access memory)以其高密度、低成本的特点广泛应用于服务器、显卡和手机等场景。主流dram设备包括但不限于ddr(double data rate sdram,双倍数据率sdram)、gddr(graphics ddr,图像显示存储器)、lpddr(low power ddr,低功耗双倍数据率同步动态随机存储器)和hbm(high bandwidth memory,高带宽存储器)等。dram设备适用于批量读写操作,以更好地利用数据带宽,满足高性能计算的需求。
2、传统技术中,对于小于预取缓存大小(prefetch size)的数据写入,dram一般通过两种方式实现:mask写(带mask的写操作)或读-修改-写(read-modify-write,rmw)操作,其中rmw最为常用。
3、然而,传统技术中,因为在dram设备中mask需要额外的数据线来传输,而这些数据线通常需要跟其他功能共享,比如hbm2的mask和纠错码(ecc,error correcting code)是通过同一组数据线来传输的,两个功能无法同时使用。或者在dram设备中没有mask数据线,例如hbm3。因此小于预取缓存大小的数据写入需要通过rmw实现。rmw分为读和写两条命令,首先读回dram特定地址中已存的旧数据,新数据和旧数据合并后
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够降低读写操作切换频率、提高命令仲裁灵活性、减小延迟以及提高系统读写性能的用于dram控制器的性能优化方法。
2、第一方面,本申请提供了一种用于dram控制器的性能优化方法,包括:
3、对获取的请求命令进行预处理,获取命令预处理结果;
4、对命令预处理结果进行编号分配,获得分配后命令和编号映射关系;
5、根据预设仲裁特征对待执行分配后命令进行仲裁判断,获得仲裁判断结果;
6、当仲裁判断结果为筛选后命令是rmw读命令,根据编号映射关系和编号分配索引对筛选后命令在命令队列中对应位置的命令进行修改,获得修改后命令并继续仲裁判断。
7、在其中一个实施例中,对获取的请求命令进行预处理,获取命令预处理结果,包括:
8、对请求命令进行类型判断,获得类型判断结果;
9、当类型判断结果为请求命令中存在rmw操作,将带有rmw操作的请求命令修改为读命令;
10、基于rmw标签对修改后的读命令进行添加操作,获得rmw读命令;
11、将rmw读命令和其余命令存入命令队列;
12、当类型判断结果为请求命令中不存在rmw操作;将请求命令存入命令队列。
13、在其中一个实施例中,对获取的请求命令进行预处理,获取命令预处理结果,还包括:
14、当请求命令中存在写命令时,写命令对应的数据存入写数据缓存。
15、在其中一个实施例中,对命令预处理结果进行编号分配,获得分配后命令和编号映射关系,包括:
16、基于剩余队列编号对命令队列中新增待执行命令进行编号分配,获得待执行分配后命令;
17、根据待执行分配后命令、写数据缓存和读数据缓存进行缓存地址计算,获得编号映射关系。
18、在其中一个实施例中,根据预设仲裁特征对待执行分配后命令进行仲裁判断,获得仲裁判断结果,包括
19、根据预设仲裁特征指标对命令队列中多个待执行分配后命令进行特征提取,获得待执行命令特征信息;
20、基于预设仲裁特征信息对每个待执行分配后命令的待执行命令特征信息进行仲裁分类,获得多种优先级命令;
21、根据预设选取原则对多种优先级命令进行筛选,获得目标待执行分配后命令并将目标待执行分配后命令设定为筛选后命令。
22、在其中一个实施例中,当仲裁判断结果为筛选后命令是rmw读命令,根据编号映射关系和编号分配索引对筛选后命令在命令队列中对应位置的命令进行修改,获得修改后命令并继续仲裁判断,包括:
23、当仲裁判断结果为筛选后命令是rmw读命令,执行rmw读命令获得存储器返回的读数据并将存储器返回的读数据存入读数据缓存;
24、根据编号映射关系和编号分配索引将命令队列中rmw读命令修改为rmw写命令,以及再次执行仲裁判断;
25、当下一次执行仲裁判断结果为筛选后命令是rmw写命令,将rmw写命令对应的写数据与存储器返回的读数据进行数据合并,获得合并后数据并将合并后数据写入存储器。
26、在其中一个实施例中,该方法还包括:
27、当仲裁判断结果为筛选后命令是读命令,接收读命令对应的读数据,并将读数据存入读数据缓存;
28、基于编号映射关系对读数据缓存中数据进行排序,获得排序后读数据;
29、当仲裁判断结果为筛选后命令是写命令,基于编号映射关系和写命令对应的队列编号从写数据缓存中进行数据提取,获得写命令对应数据;
30、将写命令对应数据写入存储器。
31、第二方面,本申请还提供了一种用于dram控制器的性能优化装置,包括:
32、预处理模块,用于对获取的请求命令进行预处理,获取命令预处理结果;
33、队列控制模块,用于对命令预处理结果进行编号分配,获得分配后命令和编号映射关系;
34、命令仲裁模块,用于根据预设仲裁特征对待执行分配后命令进行仲裁判断,获得仲裁判断结果;
35、命令执行模块,用于当仲裁判断结果为筛选后命令是rmw读命令,根据编号映射关系和编号分配索引对筛选后命令在命令队列中对应位置的命令进行修改,获得修改后命令并继续仲裁判断。
36、第三方面,本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
37、对获取的请求命令进行预处理,获取命令预处理结果;
38、对命令预处理结果进行编号分配,获得分配后命令和编号映射关系;
39、根据预设仲裁特征对待执行分配后命令进行仲裁判断,获得仲裁判断结果;
40、当仲裁判断结果为筛选后命令是rmw读命令,根据编号映射关系和编号分配索引对筛选后命令在命令队列中对应位置的命令进行修改,获得修改后命令并继续仲裁判断。
41、第四方面,本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
42、对获取的请求命令进行预本文档来自技高网...
【技术保护点】
1.一种用于DRAM控制器的性能优化方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述对获取的请求命令进行预处理,获取命令预处理结果,包括:
3.根据权利要求2所述的方法,其特征在于,所述对获取的请求命令进行预处理,获取命令预处理结果,还包括:
4.根据权利要求1所述的方法,其特征在于,所述对所述命令预处理结果进行编号分配,获得分配后命令和编号映射关系,包括:
5.根据权利要求1所述的方法,其特征在于,所述预设仲裁特征包括预设仲裁特征指标和预设仲裁特征信息;所述根据预设仲裁特征对待执行分配后命令进行仲裁判断,获得仲裁判断结果,包括
6.根据权利要求1所述的方法,其特征在于,所述当所述仲裁判断结果为筛选后命令是RMW读命令,根据编号映射关系和编号分配索引对所述筛选后命令在命令队列中对应位置的命令进行修改,获得修改后命令并继续仲裁判断,包括:
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
8.一种用于DRAM控制器的性能优化装置,其特征在于,所述装置包括:<
...【技术特征摘要】
1.一种用于dram控制器的性能优化方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述对获取的请求命令进行预处理,获取命令预处理结果,包括:
3.根据权利要求2所述的方法,其特征在于,所述对获取的请求命令进行预处理,获取命令预处理结果,还包括:
4.根据权利要求1所述的方法,其特征在于,所述对所述命令预处理结果进行编号分配,获得分配后命令和编号映射关系,包括:
5.根据权利要求1所述的方法,其特征在于,所述预设仲裁特征包括预设仲裁特征指标和预设仲裁特征信息;所述根据预设仲裁特征对待执行分配后命令进行仲裁判断,获得仲裁判断结果,包括
6.根据权利要求1所述的方法...
【专利技术属性】
技术研发人员:李佐昭,刘雨彤,强鹏,裴文辉,胡朕朕,
申请(专利权)人:太初无锡电子科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。