CN111273888A - 一种地址相关读写队列维序的方法及装置 - Google Patents

一种地址相关读写队列维序的方法及装置 Download PDF

Info

Publication number
CN111273888A
CN111273888A CN202010151787.7A CN202010151787A CN111273888A CN 111273888 A CN111273888 A CN 111273888A CN 202010151787 A CN202010151787 A CN 202010151787A CN 111273888 A CN111273888 A CN 111273888A
Authority
CN
China
Prior art keywords
write
read
request
address
queue
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.)
Granted
Application number
CN202010151787.7A
Other languages
English (en)
Other versions
CN111273888B (zh
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.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN202010151787.7A priority Critical patent/CN111273888B/zh
Publication of CN111273888A publication Critical patent/CN111273888A/zh
Application granted granted Critical
Publication of CN111273888B publication Critical patent/CN111273888B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)

Abstract

本发明公开了一种地址相关读写队列维序的方法及装置,用于微处理器的读写请求下发部件,本发明方法步骤包括:监测写/读队列,为每一个到达写/读队列的写请求建立一个更早地址相关读/写请求序列,且根据写/读队列的请求完成情况更新更早地址相关写/读请求序列;基于更早地址相关读请求序列/更早地址相关写请求序列进行选取写/读请求的地址相关写/读队列维序操作选出更早地址相关读/写请求序列为空的写/读请求。本发明能够实现在维持读请求队列和写请求队列的处理速度影响最小的状态下,保证最后发出的地址相关读请求和写请求维持正确的顺序,达到判断快速且代价最小化的效果,在控制逻辑实现方面做到了最简化,具有实现简单的特点。

Description

一种地址相关读写队列维序的方法及装置
技术领域
本发明涉及处理器中的读写请求下发部件,具体涉及一种用于读写请求下发部件的地址相关读写队列维序的方法及装置。
背景技术
处理器的基本功能包括执行特定的指令序列和处理特定的数据集合,而大多数处理器的指令序列和数据集合都是以数据的形式存储在指定的外部存储器中,需要通过读请求和写请求来实现指令序列的载入、数据集合的载入和存储。
由于读请求对处理器处理速度的影响最大,通常会将所有产生的读写请求分为读请求队列和写请求队列,并分别按先后顺序处理,从而提高指令序列载入、数据集合载入和存储的速度。
但同一个地址的数据读写请求处理的先后顺序会对处理器执行指令和处理数据的正确性产生影响,特别是针对同一地址的写后读操作,如果读请求早于写请求处理,提前下发到外部存储器,会把错误的旧值载入并处理,而写请求所写的正确的新值却未被正确使用。
这种包含同一地址的读请求队列和写请求队列被称为地址相关读写队列,在读写请求下发部件中,需要保持地址相关读写队列中对同一个地址的数据读写请求处理的先后顺序,从而实现地址相关读写队列维序,这种维序是维护处理器执行指令和处理数据正确性的重要保障。特别是在乱序执行处理器中,读请求队列和写请求队列的处理速度不一致的情况下,更需要对地址相关读写队列维序。
为了快速实现地址相关读写队列的维序操作,需要在维持读请求队列和写请求队列的处理速度影响最小的状态下保证最后发出的地址相关读请求和写请求维持正确的顺序。目前已有的相关公开有效的方案中会将读请求和写请求队列进行不同程度的暂停,因此会大大降低读请求队列和写请求队列的处理速度,影响了处理器的执行指令和处理数据的速度。
发明内容
本发明要解决的技术问题:针对现有技术的上述问题,提供一种用于读写请求下发部件的地址相关读写队列维序的方法及装置,本发明能够实现在维持读请求队列和写请求队列的处理速度影响最小的状态下,保证最后发出的地址相关读请求和写请求维持正确的顺序,达到判断快速且代价最小化的效果,在控制逻辑实现方面做到了最简化,具有实现简单的特点。
为了解决上述技术问题,本发明采用的技术方案为:
一种地址相关读写队列维序的方法,实施步骤包括:
监测写队列和读队列,为每一个到达写队列的写请求建立一个更早地址相关读请求序列、为每一个到达读队列的读请求建立一个更早地址相关写请求序列,且根据写队列和读队列的请求完成情况更新更早地址相关写请求序列以及更早地址相关读请求序列;
基于更早地址相关读请求序列进行选取写请求的地址相关写队列维序操作选出更早地址相关读请求序列为空的写请求、基于更早地址相关写请求序列进行选取读请求的地址相关读队列维序操作选出更早地址相关写请求序列为空的读请求。
可选地,所述为每一个到达写队列的写请求建立一个更早地址相关读请求序列、为每一个到达读队列的读请求建立一个更早地址相关写请求序列的详细步骤包括:
当仅有写请求到达写队列时,将当前读队列中有效的、且与新到达的写请求地址相关的读请求生成该写请求的更早地址相关读请求序列;
当仅有读请求到达读队列时,将当前写队列中有效的、且与新到达的读请求地址相关的写请求生成该读请求的更早地址相关写请求序列;
当同时有写请求到达写队列、读请求到达读队列时,如果新到达的读请求与新到达的写请求存在地址相关,则将新到达的读请求作为更早地址相关读请求记入该写请求的更早地址相关读请求序列,但新到达的写请求不计入该新到达的读请求的更早地址相关写请求序列。
可选地,所述根据写队列和读队列的请求完成情况更新更早地址相关写请求序列以及更早地址相关读请求序列的步骤包括:当读队列中的一个读请求被处理完成时,检查写队列中各写请求的更早地址相关读请求序列,并在写队列中各写请求的更早地址相关读请求序列中清除该被处理完成的读请求;当写队列中的一个写请求被处理完成时,检查读队列中各读请求的更早地址相关写请求序列,并在读队列中各读请求的更早地址相关写请求序列中清除该被处理完成的写请求。
可选地,所述基于更早地址相关读请求序列进行选取写请求的地址相关写队列维序操作选出更早地址相关读请求序列为空的写请求、基于更早地址相关写请求序列进行选取读请求的地址相关读队列维序操作选出更早地址相关写请求序列为空的读请求的详细步骤包括:当需要从写队列中选取写请求时,检查待选出写请求的更早地址相关读请求序列,如果更早地址相关读请求序列中还有读请求,则放弃该待选出写请求,选择新的待选出写请求;否则,将该待选出写请求作为维序操作选出的写请求;当需要从读队列中选取读请求时,检查待选出读请求的更早地址相关写请求序列,如果更早地址相关写请求序列中还有写请求,则放弃该待选出读请求,选择新的待选出读请求;否则,将该待选出读请求作为维序操作选出的读请求。
此外,本发明还提供一种地址相关读写队列维序的装置,包括:
队列监测及相关读请求序列生成程序单元,用于监测写队列和读队列,为每一个到达写队列的写请求建立一个更早地址相关读请求序列、为每一个到达读队列的读请求建立一个更早地址相关写请求序列,且根据写队列和读队列的请求完成情况更新更早地址相关写请求序列以及更早地址相关读请求序列;
选取请求维序判断程序单元,用于基于更早地址相关读请求序列进行选取写请求的地址相关写队列维序操作选出更早地址相关读请求序列为空的写请求、基于更早地址相关写请求序列进行选取读请求的地址相关读队列维序操作选出更早地址相关写请求序列为空的读请求。
此外,本发明还提供一种地址相关读写队列维序的装置,包括:
队列监测及相关读请求序列生成器,用于监测写队列和读队列,为每一个到达写队列的写请求建立一个更早地址相关读请求序列、为每一个到达读队列的读请求建立一个更早地址相关写请求序列,且根据写队列和读队列的请求完成情况更新更早地址相关写请求序列以及更早地址相关读请求序列;
选取请求维序判断器,用于基于更早地址相关读请求序列进行选取写请求的地址相关写队列维序操作选出更早地址相关读请求序列为空的写请求、基于更早地址相关写请求序列进行选取读请求的地址相关读队列维序操作选出更早地址相关写请求序列为空的读请求。
此外,本发明还提供一种地址相关读写队列维序的装置,包括计算机设备,该计算机设备被编程或配置以执行所述地址相关读写队列维序的方法的步骤。
此外,本发明还提供一种地址相关读写队列维序的装置,包括计算机设备,该计算机设备的存储器上存储有被编程或配置以执行所述地址相关读写队列维序的方法的计算机程序。
此外,本发明还提供一种微处理器,该微处理器包含读写请求下发部件,所述读写请求下发部件被编程或配置以执行所述地址相关读写队列维序的方法的步骤。
此外,本发明还提供一种计算机可读存储介质,该计算机可读存储介质上存储有被编程或配置以执行所述地址相关读写队列维序的方法的计算机程序。
和现有技术相比,本发明具有下述优点:
1、本发明通过为每一个写请求建立并实时更新一个更早地址相关读请求序列,为每一个读请求建立并实时更新一个更早地址相关写请求序列,在控制逻辑实现方面做到了最简化,具有实现简单的特点。
2、本发明能够实现在维持读请求队列和写请求队列的处理速度影响最小的状态下,保证最后发出的地址相关读请求和写请求维持正确的顺序,达到判断快速且代价最小化的效果。
附图说明
图1为本发明实施例方法的基本原理示意图。
图2为本发明实施例方法维序操作的流程示意图。
图3为本发明实施例中更早地址相关读请求序列建立的示意图。
图4为本发明实施例中更早地址相关写请求序列建立的示意图。
图5为本发明实施例中读写请求同时到达时的更早地址相关写请求序列建立的示意图。
图6为本发明实施例中更早地址相关读请求序列更新的示意图。
图7为本发明实施例中更早地址相关写请求序列更新的示意图。
图8为本发明实施例中选取请求维序判断器中写请求部分的示意图。
图9为本发明实施例中选取请求维序判断器中读请求部分的示意图。
具体实施方式
如图1所示,本实施例地址相关读写队列维序的方法的实施步骤包括:
监测写队列和读队列,为每一个到达写队列的写请求建立一个更早地址相关读请求序列、为每一个到达读队列的读请求建立一个更早地址相关写请求序列,且根据写队列和读队列的请求完成情况更新更早地址相关写请求序列以及更早地址相关读请求序列;
基于更早地址相关读请求序列进行选取写请求的地址相关写队列维序操作选出更早地址相关读请求序列为空的写请求、基于更早地址相关写请求序列进行选取读请求的地址相关读队列维序操作选出更早地址相关写请求序列为空的读请求。
参见图2,本实施例中每一个进入写队列的写请求都会创建一个更早地址相关读请求序列,该更早地址相关读请求序列用于记录比该写请求更早的地址相关读请求,地址相关读请求是指读地址和该写请求的写地址相同的读请求;更早地址相关读请求序列的存续周期与写请求在写队列中的存续周期相同,如果该写请求被选出写队列后,则该写请求的更早地址相关读请求序列将自动被销毁以实现资源回收;同理,每一个进入读队列的读请求都会创建一个更早地址相关写请求序列,该更早地址相关写请求序列用于记录比该读请求更早的地址相关写请求,地址相关写请求是指写地址和该读请求的读地址相同的写请求;更早地址相关写请求序列的存续周期与读请求在读队列中的存续周期相同,如果该读请求被选出读队列后,则该读请求的更早地址相关写请求序列将自动被销毁以实现资源回收。
本实施例中,为每一个到达写队列的写请求建立一个更早地址相关读请求序列、为每一个到达读队列的读请求建立一个更早地址相关写请求序列的详细步骤包括:
当仅有写请求到达写队列时,将当前读队列中有效的、且与新到达的写请求地址相关的读请求生成该写请求的更早地址相关读请求序列;如图3所示,当新到达的写请求Write-x(写地址为wr-address-x)到达写队列Write-Queue(已有写请求Write-0~写请求Write-k)时,写地址wr-address-x 、读地址rd-address-m相同,写地址wr-address-x、读地址rd-address-n,x∉[0,k], m∈[0,j], n∈[0,j]。因此,将当前读队列Read-Queue中有效的并与新到达的写请求地址相关的读请求Read-m、Read-n(其地址rd-address-m、rd-address-n与新到达的写请求Write-x的地址wr-address-x相同)加入写请求Write-x的更早地址相关读请求序列Early-Read-Queue-x;
当仅有读请求到达读队列时,将当前写队列中有效的、且与新到达的读请求地址相关的写请求生成该读请求的更早地址相关写请求序列;如图4所示,当新到达的读请求Read-y(读地址为rd-address-y)到达读队列Read-Queue时,读地址rd-address-y、写地址wr-address-p相同,读地址rd-address-y、写地址wr-address-q相同,y∉[0,l], p∈[0,i], q∈[0,i]。因此,将当前写队列Write-Queue中有效的并与新到达的读请求地址相关的写请求Write-p、Write-q(其地址wr-address-p、wr-address-q与新到达的读请求Read-y的地址rd-address-y相同)加入读请求Read-y的更早地址相关写请求序列Early-Write-Queue-y;
当同时有写请求到达写队列、读请求到达读队列时,如果新到达的读请求与新到达的写请求存在地址相关,则将新到达的读请求作为更早地址相关读请求记入该写请求的更早地址相关读请求序列,但新到达的写请求不计入该新到达的读请求的更早地址相关写请求序列。如图5所示,当新到达的写请求Write-x(写地址为wr-address-x)到达写队列Write-Queue和新到达的读请求Read-y(读地址为rd-address-y)到达读队列Read-Queue同时发生时,写地址wr-address-x、读地址rd-address-y、读地址rd-address-m=读地址rd-address-n=写地址wr-address-p、写地址wr-address-q相同。因此,新到达的写请求Write-x与新到达的读请求Read-y存在地址相关,将新到达的读请求Read-y作为更早地址相关读请求,记入该写请求的更早地址相关读请求序列Early-Read-Queue-x,而新到达的写请求Write-x不计入该读请求的更早地址相关写请求序列Early-Write-Queue-y。
本实施例中,根据写队列和读队列的请求完成情况更新更早地址相关写请求序列以及更早地址相关读请求序列的步骤包括:
当读队列中的一个读请求被处理完成时,检查写队列中各写请求的更早地址相关读请求序列,并在写队列中各写请求的更早地址相关读请求序列中清除该被处理完成的读请求;如图6所示,当读队列Read-Queue中的一个读请求Read-n被处理完成时,检查各写请求Write-p、Write-q等的更早地址相关读请求序列Early-Read-Queue-p、Early-Read-Queue-q等,在更早地址相关读请求序列(Early-Read-Queue-p、Early-Read-Queue-q等)中清除该读请求Read-n;
当写队列中的一个写请求被处理完成时,检查读队列中各读请求的更早地址相关写请求序列,并在读队列中各读请求的更早地址相关写请求序列中清除该被处理完成的写请求。如图7所示,当写队列Write-Queue中的一个写请求Write-q被处理完成时,检查各读请求Read-m、Read-n等的更早地址相关写请求序列Early-Write-Queue-m、Early-Write-Queue-n等,在更早地址相关写请求序列Early-Write-Queue-m、Early-Write-Queue-n等中清除该写请求Write-q。
参见图2,本实施例中基于更早地址相关读请求序列进行选取写请求的地址相关写队列维序操作选出更早地址相关读请求序列为空的写请求、基于更早地址相关写请求序列进行选取读请求的地址相关读队列维序操作选出更早地址相关写请求序列为空的读请求的详细步骤包括:
当需要从写队列中选取写请求时,检查待选出写请求的更早地址相关读请求序列,如果更早地址相关读请求序列中还有读请求,则放弃该待选出写请求,选择新的待选出写请求;否则,将该待选出写请求作为维序操作选出的写请求;如图8所示,当需要从写队列Write-Queue中选取写请求Write-Selected时,检查待选出写请求Write-p、Write-q等的更早地址相关读请求序列Early-Read-Queue-p、Early-Read-Queue-q等,如果更早地址相关读请求序列中还有更早地址相关读请求(如写请求Write-p的更早地址相关读请求序列Early-Read-Queue-p中的项数Amount≥1),则放弃该待选出写请求Write-p,选择新的待选出写请求;否则,该待选出写请求成为选出写请求Write_Selected(如写请求Write-q的更早地址相关读请求序列Early-Read-Queue-q中的项数Amount=0);
当需要从读队列中选取读请求时,检查待选出读请求的更早地址相关写请求序列,如果更早地址相关写请求序列中还有写请求,则放弃该待选出读请求,选择新的待选出读请求;否则,将该待选出读请求作为维序操作选出的读请求。如图9所示,当需要从读队列Read-Queue中选取读请求Read-Selected时,检查待选出读请求Read-m、Read-n等的更早地址相关写请求序列Early-Write-Queue-m、Early-Write-Queue-n等,如果更早地址相关写请求序列中还有更早地址相关写请求(如读请求Read-m的更早地址相关写请求序列Early-Write-Queue-m中的项数Amount≥1),则放弃该待选出读请求Read-m,选择新的待选出读请求;否则,该待选出读请求成为选出读请求Read-Selected(如读请求Read-n的更早地址相关写请求序列Early-Write-Queue-n中的项数Amount=0)。
此外,基于一种计算机程序的实现方式,本实施例还提供一种地址相关读写队列维序的装置,其特征在于包括:
队列监测及相关读请求序列生成程序单元,用于监测写队列和读队列,为每一个到达写队列的写请求建立一个更早地址相关读请求序列、为每一个到达读队列的读请求建立一个更早地址相关写请求序列,且根据写队列和读队列的请求完成情况更新更早地址相关写请求序列以及更早地址相关读请求序列;
选取请求维序判断程序单元,用于基于更早地址相关读请求序列进行选取写请求的地址相关写队列维序操作选出更早地址相关读请求序列为空的写请求、基于更早地址相关写请求序列进行选取读请求的地址相关读队列维序操作选出更早地址相关写请求序列为空的读请求。
此外,基于一种芯片内置部件的实现方式,本实施例还提供一种地址相关读写队列维序的装置,包括:
队列监测及相关读请求序列生成器,用于监测写队列和读队列,为每一个到达写队列的写请求建立一个更早地址相关读请求序列、为每一个到达读队列的读请求建立一个更早地址相关写请求序列,且根据写队列和读队列的请求完成情况更新更早地址相关写请求序列以及更早地址相关读请求序列;
选取请求维序判断器,用于基于更早地址相关读请求序列进行选取写请求的地址相关写队列维序操作选出更早地址相关读请求序列为空的写请求、基于更早地址相关写请求序列进行选取读请求的地址相关读队列维序操作选出更早地址相关写请求序列为空的读请求。
前述的队列监测及相关读请求序列生成器和选取请求维序判断器都可以采用FPGA或者其他硬件编程语言实现。
此外,本实施例还提供一种地址相关读写队列维序的装置,包括计算机设备,该计算机设备被编程或配置以执行前述地址相关读写队列维序的方法的步骤。
此外,本实施例还提供一种地址相关读写队列维序的装置,包括计算机设备,该计算机设备的存储器上存储有被编程或配置以执行前述地址相关读写队列维序的方法的计算机程序。
此外,本实施例还提供一种微处理器,该微处理器包含读写请求下发部件,该读写请求下发部件被编程或配置以执行前述地址相关读写队列维序的方法的步骤。
此外,本实施例还提供 一种计算机可读存储介质,该计算机可读存储介质上存储有被编程或配置以执行前述地址相关读写队列维序的方法的计算机程序。
综上所述,本实施例在处理器微体系结构级设计了一种地址相关读写队列维序的方法及装置,具有结构简单、判断快速且代价最小化的优点。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种地址相关读写队列维序的方法,其特征在于实施步骤包括:
监测写队列和读队列,为每一个到达写队列的写请求建立一个更早地址相关读请求序列、为每一个到达读队列的读请求建立一个更早地址相关写请求序列,且根据写队列和读队列的请求完成情况更新更早地址相关写请求序列以及更早地址相关读请求序列;
基于更早地址相关读请求序列进行选取写请求的地址相关写队列维序操作选出更早地址相关读请求序列为空的写请求、基于更早地址相关写请求序列进行选取读请求的地址相关读队列维序操作选出更早地址相关写请求序列为空的读请求。
2.根据权利要求1所述的地址相关读写队列维序的方法,其特征在于,所述为每一个到达写队列的写请求建立一个更早地址相关读请求序列、为每一个到达读队列的读请求建立一个更早地址相关写请求序列的详细步骤包括:
当仅有写请求到达写队列时,将当前读队列中有效的、且与新到达的写请求地址相关的读请求生成该写请求的更早地址相关读请求序列;
当仅有读请求到达读队列时,将当前写队列中有效的、且与新到达的读请求地址相关的写请求生成该读请求的更早地址相关写请求序列;
当同时有写请求到达写队列、读请求到达读队列时,如果新到达的读请求与新到达的写请求存在地址相关,则将新到达的读请求作为更早地址相关读请求记入该写请求的更早地址相关读请求序列,但新到达的写请求不计入该新到达的读请求的更早地址相关写请求序列。
3.根据权利要求1所述的地址相关读写队列维序的方法,其特征在于,所述根据写队列和读队列的请求完成情况更新更早地址相关写请求序列以及更早地址相关读请求序列的步骤包括:当读队列中的一个读请求被处理完成时,检查写队列中各写请求的更早地址相关读请求序列,并在写队列中各写请求的更早地址相关读请求序列中清除该被处理完成的读请求;当写队列中的一个写请求被处理完成时,检查读队列中各读请求的更早地址相关写请求序列,并在读队列中各读请求的更早地址相关写请求序列中清除该被处理完成的写请求。
4.根据权利要求1所述的地址相关读写队列维序的方法,其特征在于,所述基于更早地址相关读请求序列进行选取写请求的地址相关写队列维序操作选出更早地址相关读请求序列为空的写请求、基于更早地址相关写请求序列进行选取读请求的地址相关读队列维序操作选出更早地址相关写请求序列为空的读请求的详细步骤包括:当需要从写队列中选取写请求时,检查待选出写请求的更早地址相关读请求序列,如果更早地址相关读请求序列中还有读请求,则放弃该待选出写请求,选择新的待选出写请求;否则,将该待选出写请求作为维序操作选出的写请求;当需要从读队列中选取读请求时,检查待选出读请求的更早地址相关写请求序列,如果更早地址相关写请求序列中还有写请求,则放弃该待选出读请求,选择新的待选出读请求;否则,将该待选出读请求作为维序操作选出的读请求。
5.一种地址相关读写队列维序的装置,其特征在于包括:
队列监测及相关读请求序列生成程序单元,用于监测写队列和读队列,为每一个到达写队列的写请求建立一个更早地址相关读请求序列、为每一个到达读队列的读请求建立一个更早地址相关写请求序列,且根据写队列和读队列的请求完成情况更新更早地址相关写请求序列以及更早地址相关读请求序列;
选取请求维序判断程序单元,用于基于更早地址相关读请求序列进行选取写请求的地址相关写队列维序操作选出更早地址相关读请求序列为空的写请求、基于更早地址相关写请求序列进行选取读请求的地址相关读队列维序操作选出更早地址相关写请求序列为空的读请求。
6.一种地址相关读写队列维序的装置,其特征在于包括:
队列监测及相关读请求序列生成器,用于监测写队列和读队列,为每一个到达写队列的写请求建立一个更早地址相关读请求序列、为每一个到达读队列的读请求建立一个更早地址相关写请求序列,且根据写队列和读队列的请求完成情况更新更早地址相关写请求序列以及更早地址相关读请求序列;
选取请求维序判断器,用于基于更早地址相关读请求序列进行选取写请求的地址相关写队列维序操作选出更早地址相关读请求序列为空的写请求、基于更早地址相关写请求序列进行选取读请求的地址相关读队列维序操作选出更早地址相关写请求序列为空的读请求。
7.一种地址相关读写队列维序的装置,包括计算机设备,其特征在于,该计算机设备被编程或配置以执行权利要求1~4中任意一项所述地址相关读写队列维序的方法的步骤。
8.一种地址相关读写队列维序的装置,包括计算机设备,其特征在于,该计算机设备的存储器上存储有被编程或配置以执行权利要求1~4中任意一项所述地址相关读写队列维序的方法的计算机程序。
9.一种微处理器,其特征在于,该微处理器包含读写请求下发部件,所述读写请求下发部件被编程或配置以执行权利要求1~4中任意一项所述地址相关读写队列维序的方法的步骤。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有被编程或配置以执行权利要求1~4中任意一项所述地址相关读写队列维序的方法的计算机程序。
CN202010151787.7A 2020-03-06 2020-03-06 一种地址相关读写队列维序的方法及装置 Active CN111273888B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010151787.7A CN111273888B (zh) 2020-03-06 2020-03-06 一种地址相关读写队列维序的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010151787.7A CN111273888B (zh) 2020-03-06 2020-03-06 一种地址相关读写队列维序的方法及装置

Publications (2)

Publication Number Publication Date
CN111273888A true CN111273888A (zh) 2020-06-12
CN111273888B CN111273888B (zh) 2022-03-11

Family

ID=70999474

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010151787.7A Active CN111273888B (zh) 2020-03-06 2020-03-06 一种地址相关读写队列维序的方法及装置

Country Status (1)

Country Link
CN (1) CN111273888B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060174082A1 (en) * 2005-02-03 2006-08-03 Bellows Mark D Method and apparatus for managing write-to-read turnarounds in an early read after write memory system
CN101788963A (zh) * 2010-03-18 2010-07-28 烽火通信科技股份有限公司 Dram存储控制方法及装置
CN102567246A (zh) * 2011-12-29 2012-07-11 中国人民解放军国防科学技术大学 一种支持操作乱序执行的与非型快闪存储控制器
CN102567257A (zh) * 2011-12-26 2012-07-11 华中科技大学 一种控制多通道固态盘数据读写的方法
CN103631624A (zh) * 2013-11-29 2014-03-12 华为技术有限公司 读写请求的处理方法和装置
CN104407992A (zh) * 2014-12-17 2015-03-11 中国人民解放军国防科学技术大学 一种基于双端口寄存器阵列的四端口存储器
CN106201935A (zh) * 2016-06-28 2016-12-07 田彬 用于处理存储队列中数据相关的装置及方法
CN107888512A (zh) * 2017-10-20 2018-04-06 深圳市楠菲微电子有限公司 动态共享缓冲存储器及交换机
CN108153682A (zh) * 2017-12-12 2018-06-12 西安交通大学 一种利用闪存内部并行性进行闪存转换层地址映射的方法
CN110837411A (zh) * 2019-11-08 2020-02-25 敏博科技(武汉)有限公司 一种数据服务器端分区内部并发i/o调度方法及系统

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060174082A1 (en) * 2005-02-03 2006-08-03 Bellows Mark D Method and apparatus for managing write-to-read turnarounds in an early read after write memory system
CN101788963A (zh) * 2010-03-18 2010-07-28 烽火通信科技股份有限公司 Dram存储控制方法及装置
CN102567257A (zh) * 2011-12-26 2012-07-11 华中科技大学 一种控制多通道固态盘数据读写的方法
CN102567246A (zh) * 2011-12-29 2012-07-11 中国人民解放军国防科学技术大学 一种支持操作乱序执行的与非型快闪存储控制器
CN103631624A (zh) * 2013-11-29 2014-03-12 华为技术有限公司 读写请求的处理方法和装置
CN104407992A (zh) * 2014-12-17 2015-03-11 中国人民解放军国防科学技术大学 一种基于双端口寄存器阵列的四端口存储器
CN106201935A (zh) * 2016-06-28 2016-12-07 田彬 用于处理存储队列中数据相关的装置及方法
CN107888512A (zh) * 2017-10-20 2018-04-06 深圳市楠菲微电子有限公司 动态共享缓冲存储器及交换机
CN108153682A (zh) * 2017-12-12 2018-06-12 西安交通大学 一种利用闪存内部并行性进行闪存转换层地址映射的方法
CN110837411A (zh) * 2019-11-08 2020-02-25 敏博科技(武汉)有限公司 一种数据服务器端分区内部并发i/o调度方法及系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
孙彩霞: "乱序超标量处理器核的性能分析与优化", 《国防科技大学学报》 *
朱玥; 吴非; 熊钦; 谢长生: "一种固态盘的读写性能优化调度方法", 《计算机科学》 *
王琼: "面向异构多核平台的高效能猜测并行机制研究", 《中国博士学位论文全文数据库 信息科技辑》 *

Also Published As

Publication number Publication date
CN111273888B (zh) 2022-03-11

Similar Documents

Publication Publication Date Title
US7340574B2 (en) Method and apparatus for synchronizing an industrial controller with a redundant controller
US9495286B2 (en) Method and arrangement for completion or recovery of data transactions in a flash type memory device using a commit process
CN106550014A (zh) 服务器集群中的节点升级方法及装置
CN104111870B (zh) 一种中断处理装置及中断处理方法
CN106789741A (zh) 消息队列的消费方法及装置
CN106528293A (zh) 一种访问数据库的方法及装置
CN110083379A (zh) 一种服务器部件升级方法及相关装置
CN104461925A (zh) 一种存储设备地址对齐的自动纠正方法和装置
CN109783509A (zh) Sql脚本生成方法及装置
US20120174076A1 (en) Systems and methods for profiling servers
CN114371814B (zh) 数据处理的方法、装置及固态硬盘
CN111273888B (zh) 一种地址相关读写队列维序的方法及装置
CN105607968A (zh) 一种增量备份方法及设备
JP2010092107A (ja) 故障情報監視装置及び故障情報監視方法
CN114924923A (zh) 一种硬盘写入点正确性验证方法、系统、设备及介质
CN105389128B (zh) 一种固态硬盘数据存储方法及存储控制器
US8930680B2 (en) Sync-ID for multiple concurrent sync dependencies in an out-of-order store queue
CN105808391A (zh) 一种热替换cpu节点的方法及装置
CN114902181A (zh) Gpu包聚合系统
CN104021806A (zh) 一种数据处理的方法和设备
CN108108148A (zh) 一种数据处理方法和装置
CN106326487A (zh) 一种数据存储方法及装置
US6854038B2 (en) Global status journaling in NVS
CN109445877B (zh) 一种检测游戏服务器多线程使用同一虚拟机的方法
CN109660576B (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
GR01 Patent grant
GR01 Patent grant