动态随机存取存储器的刷新方法及内存控制器、电子装置与流程

文档序号:23718287发布日期:2021-01-24 06:30阅读:来源:国知局

技术特征:
1.一种用于动态随机存取存储器的刷新方法,其中,所述动态随机存取存储器包括多个存储队列,每个存储队列包括多个区块组,每个区块组包括多个区块,所述方法包括:确定所述多个存储队列对应的多个状态机的状态,其中,所述多个存储队列与所述多个状态机一一对应;确定所述多个存储队列对应的多个预测地址;基于所述多个状态机的状态以及所述多个预测地址,生成刷新请求,并将所述刷新请求发送给与所述动态随机存取存储器连接的仲裁器,以使得所述仲裁器对所述刷新请求进行仲裁,并且响应于所述刷新请求赢得仲裁,将所述刷新请求发送给所述动态随机存取存储器,以用于实现所述动态随机存取存储器的刷新。2.根据权利要求1所述的方法,其中,确定所述多个存储队列对应的多个状态机的状态包括:对于每个状态机,根据推迟刷新计数器的数值、自刷新进入请求以及自刷新退出命令,确定所述状态机的状态。3.根据权利要求2所述的方法,其中,所述状态机包括4种状态:第一优先级状态、第二优先级状态、冲刷状态和自刷新状态,所述第一优先级状态的优先级高于所述第二优先级状态的优先级。4.根据权利要求3所述的方法,其中,对于每个状态机,根据所述推迟刷新计数器的数值、所述自刷新进入请求以及所述自刷新退出命令,确定所述状态机的状态,包括:响应于所述推迟刷新计数器的数值大于或等于阈值,使所述状态机进入所述第一优先级状态;响应于所述推迟刷新计数器的数值小于所述阈值,使所述状态机进入所述第二优先级状态;响应于所述自刷新进入请求,根据所述状态机的当前状态,使所述状态机立即或延迟进入所述冲刷状态;响应于与所述冲刷状态对应的操作完成,使所述状态机进入所述自刷新状态;响应于所述自刷新退出命令,根据所述推迟刷新计数器的数值,使所述状态机进入所述第一优先级状态或所述第二优先级状态。5.根据权利要求4所述的方法,其中,响应于所述自刷新进入请求,根据所述状态机的当前状态,使所述状态机立即或延迟进入所述冲刷状态,包括:响应于所述自刷新进入请求,在所述状态机处于所述第一优先级状态的情形,使所述状态机保持所述第一优先级状态直至所述推迟刷新计数器的数值小于所述阈值再进入所述冲刷状态;响应于所述自刷新进入请求,在所述状态机处于所述第二优先级状态且刷新地址记录单元中无记录地址的情形,使所述状态机进入所述冲刷状态;响应于所述自刷新进入请求,在所述状态机处于所述第二优先级状态且所述刷新地址记录单元中存在记录地址的情形,使所述状态机保持所述第二优先级状态直至所述刷新地址记录单元中无记录地址再进入所述冲刷状态。6.根据权利要求3-5任一所述的方法,其中,确定所述多个存储队列对应的所述多个预测地址包括:
对于每个存储队列,基于区块信息以及所述存储队列对应的状态机的状态,确定所述预测地址。7.根据权利要求6所述的方法,其中,对于每个存储队列,基于所述区块信息以及所述存储队列对应的状态机的状态,确定所述预测地址,包括:响应于所述状态机处于所述第一优先级状态且对应的存储队列中无正在执行的刷新任务,按照从第一级别至第n级别的优先级顺序将满足要求的区块的地址确定为所述预测地址;响应于所述状态机处于所述第二优先级状态且对应的存储队列中无正在执行的刷新任务,按照从所述第一级别至第m级别的优先级顺序将满足要求的区块的地址确定为所述预测地址;响应于所述状态机处于所述第一优先级状态且对应的存储队列中有正在执行的刷新任务,确定所述预测地址为空;响应于所述状态机处于所述第二优先级状态,并且,不存在满足要求的区块或对应的存储队列中有正在执行的刷新任务,确定所述预测地址为空;其中,n>m>1且n和m均为整数,所述第一级别至所述第n级别的优先级顺序逐渐降低,各个级别的优先级顺序基于所述区块信息确定,所述区块信息至少包括:是否有效、是否被刷新、是否存在访存请求、是否空闲、时序是否符合。8.根据权利要求3-5任一所述的方法,还包括:基于所述多个状态机的状态以及所述多个预测地址,生成阻挡地址,并将所述阻挡地址发送给所述仲裁器,以使得所述仲裁器对所述阻挡地址对应的非刷新命令进行阻挡。9.根据权利要求8所述的方法,其中,基于所述多个状态机的状态以及所述多个预测地址,生成所述阻挡地址,并将所述阻挡地址发送给所述仲裁器,包括:响应于所述状态机处于所述第一优先级状态以及对应的存储队列中无正在执行的刷新任务,将所述存储队列对应的预测地址确定为所述阻挡地址,并将所述阻挡地址发送给所述仲裁器。10.根据权利要求4或5所述的方法,其中,基于所述多个状态机的状态以及所述多个预测地址,生成所述刷新请求,并将所述刷新请求发送给与所述动态随机存取存储器连接的所述仲裁器,包括:基于所述多个状态机的状态,根据优先级选择规则选择存储队列并生成所述刷新请求,并且将所述刷新请求发送给所述仲裁器;其中,所述刷新请求包括请求命令、请求地址和标志位,所述请求地址为被选择的存储队列对应的预测地址,所述标志位指示被选择的存储队列对应的状态机处于所述第一优先级状态或所述第二优先级状态。11.根据权利要求10所述的方法,其中,所述第一优先级状态包括第一子状态和第二子状态,所述第一子状态的优先级高于所述第二子状态的优先级,所述第一子状态为所述推迟刷新计数器的数值达到最大值,所述第二子状态为所述推迟刷新计数器的数值小于所述最大值并且大于或等于所述阈值;所述优先级选择规则为:按照所述第一子状态、所述第二子状态、所述第二优先级状态的优先级顺序选择对应
的存储队列,若所有状态机均处于所述第二优先级状态,则选择预测地址不为空的存储队列,若存在多个具有同一优先级顺序的状态机,则在所述多个具有同一优先级顺序的状态机中随机选择一个状态机对应的存储队列。12.根据权利要求10所述的方法,还包括:响应于生成所述刷新请求、所述刷新请求的标志位指示所述第一优先级状态以及所述请求地址对应的区块非全空闲,生成预充电请求并将所述预充电请求发送给所述仲裁器;其中,所述预充电请求对应于所述请求地址对应的区块。13.根据权利要求12所述的方法,其中,所述仲裁器还配置为对读写请求、行选通请求、所述预充电请求进行仲裁,进行仲裁的优先级按如下顺序降低:所述标志位指示所述第一优先级状态的刷新请求、所述读写请求、所述行选通请求、所述预充电请求、所述标志位指示所述第二优先级状态的刷新请求。14.一种用于动态随机存取存储器的内存控制器,其中,所述内存控制器配置为与所述动态随机存取存储器连接且配置为控制所述动态随机存取存储器进行刷新,所述动态随机存取存储器包括多个存储队列,每个存储队列包括多个区块组,每个区块组包括多个区块;所述内存控制器包括刷新控制模块,所述刷新控制模块包括多个状态机、多个地址预测单元和请求生成单元;所述多个状态机与所述多个存储队列一一对应,所述状态机配置为在多个状态之间切换;所述多个地址预测单元与所述多个存储队列一一对应,所述地址预测单元配置为确定对应的存储队列的预测地址;所述请求生成单元配置为基于所述多个状态机的状态以及所述预测地址,生成刷新请求,并将所述刷新请求发送给与所述动态随机存取存储器连接的仲裁器。15.根据权利要求14所述的内存控制器,还包括所述仲裁器,其中,所述刷新控制模块与所述仲裁器连接,所述仲裁器与所述动态随机存取存储器连接,所述仲裁器配置为对所述刷新请求进行仲裁,并且响应于所述刷新请求赢得仲裁,将所述刷新请求发送给所述动态随机存取存储器,以用于实现所述动态随机存取存储器的刷新。16.根据权利要求14或15所述的内存控制器,其中,所述刷新控制模块还包括多个阻挡地址生成单元;所述多个阻挡地址生成单元与所述多个存储队列一一对应,所述阻挡地址生成单元配置为基于所述预测地址以及所述预测地址对应的存储队列的状态机的状态,生成阻挡地址,并将所述阻挡地址发送给所述仲裁器;所述仲裁器还配置为对所述阻挡地址对应的非刷新命令进行阻挡。17.根据权利要求14或15所述的内存控制器,其中,所述刷新控制模块还包括刷新间隔计数器、多个推迟刷新计数器和多个刷新地址记录单元;所述刷新间隔计数器配置为循环计数,并且当计数值达到计数设定值时产生脉冲并清
空,以及将所述脉冲发送给所述多个推迟刷新计数器;所述多个推迟刷新计数器与所述多个存储队列一一对应,所述推迟刷新计数器配置为基于接收到的脉冲对对应的存储队列的被推迟的刷新请求进行计数,所述状态机基于对应的推迟刷新计数器的数值确定状态;所述多个刷新地址记录单元与所述多个存储队列一一对应,所述刷新地址记录单元配置为对已刷新的区块的地址进行记录。18.一种电子装置,包括如权利要求14-17任一所述的内存控制器。19.根据权利要求18所述的电子装置,还包括所述动态随机存取存储器。
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1