[go: up one dir, main page]

CN102369519B - Address access method, Apparatus and system - Google Patents

Address access method, Apparatus and system Download PDF

Info

Publication number
CN102369519B
CN102369519B CN201180001725.7A CN201180001725A CN102369519B CN 102369519 B CN102369519 B CN 102369519B CN 201180001725 A CN201180001725 A CN 201180001725A CN 102369519 B CN102369519 B CN 102369519B
Authority
CN
China
Prior art keywords
read
address
access
matching value
write
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.)
Active
Application number
CN201180001725.7A
Other languages
Chinese (zh)
Other versions
CN102369519A (en
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN102369519A publication Critical patent/CN102369519A/en
Application granted granted Critical
Publication of CN102369519B publication Critical patent/CN102369519B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0855Overlapped cache accessing, e.g. pipeline

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明实施例公开了一种地址访问的方法、装置及系统,涉及缓存管理技术领域,解决了为相同地址的读写请求进行保序处理时产生的队头阻塞。本发明包括:接收针对第一地址进行访问的读写请求;判断是否已经有读写请求在对所述第一地址进行访问;若已经有读写请求在对所述第一地址进行访问,则获取所述地址访问控制模块中记录的对应于所述第一地址的访问匹配值,将所述访问匹配值以及所述读写请求发送给读写操作模块;若没有读写请求在对所述第一地址进行访问,则为针对所述第一地址的访问请求分配访问匹配值,将所述匹配值以及所述读写请求发送给读写操作模块。本发明实施例主要用于地址访问控制的处理过程中。

The embodiment of the present invention discloses an address access method, device and system, relates to the technical field of cache management, and solves head-of-line blocking generated when order-preserving processing is performed for read and write requests of the same address. The present invention includes: receiving a read-write request for accessing the first address; judging whether there is already a read-write request accessing the first address; if there is already a read-write request accessing the first address, then Obtain the access matching value corresponding to the first address recorded in the address access control module, and send the access matching value and the read and write request to the read and write operation module; When the first address accesses, assign an access matching value to the access request for the first address, and send the matching value and the read/write request to the read/write operation module. The embodiments of the present invention are mainly used in the process of address access control.

Description

地址访问方法、装置及系统Address access method, device and system

技术领域 technical field

本发明涉及缓存管理技术领域,尤其涉及一种地址访问方法、装置及系统。The present invention relates to the technical field of cache management, in particular to an address access method, device and system.

背景技术 Background technique

为了解决多个读写请求对同一个地址的访问按序进行的问题,需要一个CAM(ContentAddressableMemory,内容可寻址存储器)或一个高速缓冲存储器(cache)对相同地址的读写要求进行保序处理,在前一个写请求未完成时,不发出对相同地址的读请求,目前,可以通过使用CAM对访问相同地址的请求阻塞,保证在处理不同请求对相同地址的请求时不会乱序;或者通过使用cache对相同地址的读写请求阻塞,同时对命中的请求直接输出,对未命中的请求,申请cacheid(identity,身份标识号码),写入cache,也可以保证在处理不同请求对相同地址的请求时不会乱序。In order to solve the problem that multiple read and write requests access the same address sequentially, a CAM (ContentAddressableMemory, content addressable memory) or a cache memory (cache) is required to process the read and write requests of the same address in order , when the previous write request is not completed, do not issue a read request to the same address. At present, you can use CAM to block requests to access the same address, so as to ensure that different requests for the same address will not be out of sequence; or By using the cache to block the read and write requests of the same address, and at the same time directly output the hit request, apply for the cacheid (identity, identity number) for the miss request, and write it into the cache, which can also ensure that different requests are processed for the same address The requests will not be out of order.

当前技术在对访问相同地址的读写请求进行保序处理时,在前一个读写请求未完成的时候,不接收下一个访问相同地址的读写请求,使得后续读写请求均得不到处理,因此造成了HoL(HeadofLine,队头)阻塞,降低了控制器读写效率,降低了系统的QoS(QualityofService,服务质量)。When the current technology processes read and write requests accessing the same address in order, when the previous read and write request is not completed, the next read and write request to access the same address is not received, so that subsequent read and write requests cannot be processed , thus causing HoL (HeadofLine, head of the team) to block, reducing the read and write efficiency of the controller, and reducing the QoS (QualityofService, quality of service) of the system.

发明内容 Contents of the invention

本发明的实施例提供一种地址访问方法、装置及系统,解决了对访问相同地址的读写请求进行保序处理时的HoL阻塞,提高了控制器读写效率,提高了系统的QoS。Embodiments of the present invention provide an address access method, device and system, which solves HoL blocking when sequentially processing read and write requests for accessing the same address, improves controller read and write efficiency, and improves system QoS.

为达到上述目的,本发明的实施例采用如下技术方案:In order to achieve the above object, embodiments of the present invention adopt the following technical solutions:

一种地址访问的方法,包括:A method for address access, comprising:

接收针对第一地址进行访问的读写请求;receiving a read and write request for access to the first address;

判断是否已经有读写请求在对所述第一地址进行访问;judging whether there is already a read-write request accessing the first address;

若已经有读写请求在对所述第一地址进行访问,则获取所述地址访问控制模块中记录的对应于所述第一地址的访问匹配值,将所述访问匹配值以及所述读写请求发送给读写操作模块;If there is already a read-write request accessing the first address, the access matching value corresponding to the first address recorded in the address access control module is obtained, and the access matching value and the read-write The request is sent to the read and write operation module;

若没有读写请求在对所述第一地址进行访问,则为针对所述第一地址的访问请求分配访问匹配值,将所述匹配值以及所述读写请求发送给读写操作模块。If no read-write request is accessing the first address, assign an access matching value to the access request for the first address, and send the matching value and the read-write request to the read-write operation module.

一种地址访问的方法,包括:A method for address access, comprising:

接收所述地址访问控制模块发送的针对第一地址的读写请求、以及针对所述第一地址的访问匹配值;receiving a read/write request for the first address and an access matching value for the first address sent by the address access control module;

查询读写控制模块中是否有保存针对所述第一地址的操作匹配值;Query whether the operation matching value for the first address is stored in the read-write control module;

若所述读写控制模块中有保存针对所述第一地址的操作匹配值,将所述访问匹配值和所述操作匹配值进行比较;If there is an operation matching value for the first address stored in the read-write control module, comparing the access matching value with the operation matching value;

若所述访问匹配值和所述操作匹配值相同,则根据所述读写请求对所述第一地址进行相应的读写操作;If the access matching value is the same as the operation matching value, performing corresponding read and write operations on the first address according to the read and write request;

若所述访问匹配值和所述操作匹配值不相同,则将所述读写请求继续放置在所述读写操作模块中的等待队列中,等待所述操作匹配值和所述访问匹配值相等时,再处理所述读写请求;If the access matching value is not the same as the operation matching value, continue to place the read and write request in the waiting queue in the read and write operation module, and wait for the operation matching value to be equal to the access matching value , then process the read and write request;

若所述读写控制模块中没有保存针对所述第一地址的操作匹配值,则根据所述读写请求对所述第一地址进行相应的读写操作。If no operation matching value for the first address is stored in the read/write control module, corresponding read/write operations are performed on the first address according to the read/write request.

一种地址访问控制模块,包括:An address access control module, comprising:

接收单元,用于接收针对第一地址进行访问的读写请求;a receiving unit, configured to receive a read and write request for accessing the first address;

判断单元,用于是否已经有读写请求在对所述第一地址进行访问;a judging unit, configured to determine whether a read-write request is already accessing the first address;

第一处理单元,用于在已经有读写请求在对所述第一地址进行访问时,获取所述第一地址访问控制模块中记录的对应于所述第一地址的访问匹配值,将所述访问匹配值以及所述读写请求发送给读写操作模块;The first processing unit is configured to obtain the access matching value corresponding to the first address recorded in the first address access control module when there is already a read/write request accessing the first address, and The access matching value and the read and write request are sent to the read and write operation module;

第二处理单元,用于在没有读写请求在对所述第一地址进行访问时,为针对所述第一地址的访问请求分配访问匹配值,将所述标识、所述访问匹配值以及所述读写请求发送给读写操作模块。The second processing unit is configured to assign an access matching value to an access request for the first address when no read or write request is accessing the first address, and assign the identifier, the access matching value, and the The read and write requests are sent to the read and write operation module.

一种读写操作模块,包括:A read and write operation module, comprising:

接收单元,用于接收所述第一地址访问控制模块发送的所述读写请求、以及所述针对所述第一地址的访问匹配值;a receiving unit, configured to receive the read/write request sent by the first address access control module and the access matching value for the first address;

查询单元,用于查询读写控制模块中是否有保存针对所述第一地址的操作匹配值;A query unit, configured to query whether an operation matching value for the first address is stored in the read-write control module;

比较单元,用于在所述读写控制模块中有保存针对所述第一地址的操作匹配值时,将所述访问匹配值和所述操作匹配值进行比较;A comparison unit, configured to compare the access matching value with the operation matching value when the operation matching value for the first address is stored in the read-write control module;

第一处理单元,用于在所述访问匹配值和所述操作匹配值相同时,根据所述读写请求对所述第一地址进行相应的读写操作;A first processing unit, configured to perform corresponding read and write operations on the first address according to the read and write request when the access matching value is the same as the operation matching value;

第二处理单元,用于在所述访问匹配值和所述操作匹配值不相同时,将所述读写请求继续放置在所述读写操作模块中的等待队列中,等待所述操作匹配值和所述访问匹配值相等时,再处理所述读写请求;The second processing unit is configured to, when the access matching value is different from the operation matching value, continue to place the read and write request in the waiting queue in the read and write operation module, and wait for the operation matching value When it is equal to the access matching value, then process the read and write request;

第三处理单元,用于在所述读写控制模块中没有保存针对所述第一地址的操作匹配值时,根据所述读写请求对所述第一地址进行相应的读写操作。The third processing unit is configured to perform corresponding read and write operations on the first address according to the read and write request when the operation matching value for the first address is not stored in the read and write control module.

一种地址访问系统,包括:An address access system comprising:

地址访问控制模块,用于接收针对第一地址进行访问的读写请求;判断是否已经有读写请求在对所述第一地址进行访问;若已经有读写请求在对所述第一地址进行访问,则获取所述地址访问控制模块中记录的对应于所述第一地址的访问匹配值,将所述访问匹配值以及所述读写请求发送给读写操作模块;若没有读写请求在对所述第一地址进行访问,则为针对所述第一地址的访问请求分配访问匹配值,将所述匹配值以及所述读写请求发送给读写操作模块;The address access control module is used to receive a read-write request for accessing the first address; determine whether there is a read-write request for accessing the first address; if there is already a read-write request for accessing the first address access, then obtain the access matching value corresponding to the first address recorded in the address access control module, and send the access matching value and the read-write request to the read-write operation module; if there is no read-write request in When accessing the first address, assign an access matching value to the access request for the first address, and send the matching value and the read-write request to the read-write operation module;

读写操作模块,用于接收所述第一地址访问控制模块发送的所述读写请求、以及所述针对所述第一地址的访问匹配值;查询读写控制模块中是否有保存针对所述第一地址的操作匹配值;若所述读写控制模块中有保存针对所述第一地址的操作匹配值,将所述访问匹配值和所述操作匹配值进行比较;若所述访问匹配值和所述操作匹配值相同,则根据所述读写请求对所述第一地址进行相应的读写操作;若所述访问匹配值和所述操作匹配值不相同,则将所述读写请求继续放置在所述读写操作模块中的等待队列中,等待所述操作匹配值和所述访问匹配值相等时,再处理所述读写请求;若所述读写控制模块中没有保存针对所述第一地址的操作匹配值,则根据所述读写请求对所述第一地址进行相应的读写操作。A read-write operation module, configured to receive the read-write request sent by the first address access control module, and the access matching value for the first address; query whether there is a storage for the first address in the read-write control module The operation matching value of the first address; if the operation matching value for the first address is stored in the read-write control module, compare the access matching value with the operation matching value; if the access matching value is the same as the operation matching value, then perform corresponding read and write operations on the first address according to the read and write request; if the access matching value is different from the operation matching value, then the read and write request Continue to be placed in the waiting queue in the read-write operation module, wait for the operation matching value to be equal to the access matching value, and then process the read-write request; If the operation matching value of the first address is determined, corresponding read and write operations are performed on the first address according to the read and write request.

本发明实施例提供的地址访问的方法、装置及系统,在地址访问控制模块接收新的读写请求时会根据所述读写请求对应的地址判断是否已经有读写请求在对所述第一地址进行访问,若有,则获取所述地址访问控制模块中记录的对应于所述第一地址的访问匹配值;若没有,则为针对所述第一地址的访问请求分配访问匹配值,然后将所述匹配值以及所述读写请求发送给读写操作模块,使得地址访问控制模块在接收对相同地址进行访问的读写请求后可以直接对其处理并发送到读写操作模块中,将不用等待前一个读写请求完成后再对下一个读写请求进行处理从读写请求队列源端避免了HoL阻塞;并且,在所述读写请求中标记上匹配次数,在所述读写操作模块接收所述读写请求进行处理时得到了保序;综上所述,本发明解决了对访问相同地址读写请求进行保序处理时的HoL阻塞,提高了控制器读写效率,提高了系统的QoS。The address access method, device and system provided by the embodiments of the present invention, when the address access control module receives a new read and write request, it will judge whether there is already a read and write request for the first address according to the address corresponding to the read and write request. The address is accessed, if there is, the access matching value corresponding to the first address recorded in the address access control module is obtained; if not, the access request for the first address is assigned an access matching value, and then Send the matching value and the read-write request to the read-write operation module, so that the address access control module can directly process the read-write request for access to the same address and send it to the read-write operation module. No need to wait for the previous read and write request to complete before processing the next read and write request from the source of the read and write request queue to avoid HoL blocking; When the module receives the read and write requests and processes them, the order is guaranteed; in summary, the present invention solves the HoL blocking when the read and write requests to access the same address are processed in order, improves the read and write efficiency of the controller, and improves the System QoS.

附图说明 Description of drawings

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings that need to be used in the description of the embodiments or the prior art. Obviously, the accompanying drawings in the following description are only These are some embodiments of the present invention. Those skilled in the art can also obtain other drawings based on these drawings without creative work.

图1为本发明实施例1中提供的一种地址访问的方法流程图;FIG. 1 is a flow chart of a method for address access provided in Embodiment 1 of the present invention;

图2为本发明实施例2中提供的一种地址访问装置的组成框图;FIG. 2 is a block diagram of an address access device provided in Embodiment 2 of the present invention;

图3为本发明实施例2中提供的另一种地址访问装置的组成框图;FIG. 3 is a block diagram of another address access device provided in Embodiment 2 of the present invention;

图4为本发明实施例2中提供的另一种地址访问装置的组成框图;FIG. 4 is a block diagram of another address access device provided in Embodiment 2 of the present invention;

图5为本发明实施例2中提供的另一种地址访问装置的组成框图;FIG. 5 is a block diagram of another address access device provided in Embodiment 2 of the present invention;

图6为本发明实施例2中提供的一种地址访问系统的组成框图。FIG. 6 is a block diagram of an address access system provided in Embodiment 2 of the present invention.

具体实施方式 detailed description

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only some, not all, embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without creative efforts fall within the protection scope of the present invention.

实施例1Example 1

本发明实施例中提供了一种地址访问的方法,该方法为地址访问控制模块侧的方法,如图1所示,该方法包括:An embodiment of the present invention provides an address access method, which is a method on the address access control module side, as shown in Figure 1, the method includes:

101、地址访问控制模块接收针对第一地址进行访问的第一读写请求。101. The address access control module receives a first read/write request for accessing a first address.

102、所述地址访问控制模块判断是否已经有读写请求在对所述第一地址进行访问;如果已经有读写请求在对所述第一地址进行访问,则执行步骤103;否则执行步骤104。102. The address access control module judges whether there is already a read-write request accessing the first address; if there is already a read-write request accessing the first address, execute step 103; otherwise, execute step 104 .

103、获取所述地址访问控制模块中记录的对所述第一地址进行访问这一操作所对应的标识,以及所述第一地址访问控制模块中记录的对应于所述第一地址的访问匹配值,将所述标识、访问匹配值匹配次数以及所述第一读写请求发送给读写操作模块,然后在所述地址访问控制模块中存储的对应于所述第一地址的访问匹配值,接下来执行步骤105。103. Obtain the identifier corresponding to the operation of accessing the first address recorded in the address access control module, and the access match corresponding to the first address recorded in the first address access control module value, sending the identification, access matching value matching times, and the first read and write request to the read and write operation module, and then storing the access matching value corresponding to the first address in the address access control module, Next, step 105 is executed.

其中,在本发明实施例中,可以将所述标识和所述访问匹配值携带在所述读写请求中发送给所述读写操作模块。Wherein, in the embodiment of the present invention, the identifier and the access matching value may be carried in the read and write request and sent to the read and write operation module.

104、所述地址访问控制模块为针对所述第一地址的访问请求分配标识,以及访问匹配值,将所述标识、所述匹配值以及所述读写请求发送给读写操作模块,然后更新所述地址访问控制模块中存储的对应于所述第一地址的访问匹配值。104. The address access control module assigns an identifier and an access matching value to the access request for the first address, sends the identifier, the matching value, and the read-write request to the read-write operation module, and then updates An access matching value corresponding to the first address stored in the address access control module.

其中,在本发明实施例中,可以将所述标识和所述访问匹配值携带在所述读写请求中发送给所述读写操作模块。Wherein, in the embodiment of the present invention, the identifier and the access matching value may be carried in the read and write request and sent to the read and write operation module.

需要说明的是,在本发明实施例中,所述访问匹配值可以为针对所述第一地址的访问请求的个数,或者根据针对所述第一地址的访问请求的个数,在一个初始值的基础上产生的累加值。另外也需要注意的是,根据访问请求的类型不同,每次访问请求对所述访问匹配值带来的累加可以为1或者2。It should be noted that, in this embodiment of the present invention, the access matching value may be the number of access requests for the first address, or according to the number of access requests for the first address, in an initial value based on the accumulated value generated. It should also be noted that, depending on the type of access request, the accumulation of the access matching value brought by each access request may be 1 or 2.

105、读写操作模块接收所述地址访问控制模块发送的所述第一读写请求、所述针对所述第一地址的访问匹配值、以及所述标识。105. The read/write operation module receives the first read/write request, the access matching value for the first address, and the identifier sent by the address access control module.

106、所述读写操作模块查询其是否有保存针对所述第一地址的操作匹配值;如果有,则执行步骤107;否则执行步骤110。106. The read/write operation module inquires whether it has saved an operation matching value for the first address; if yes, execute step 107; otherwise, execute step 110.

107、所述读写操作模块将所述访问匹配值和所述操作匹配值进行比较,若所述访问匹配值与所述操作匹配值相等,则执行步骤108;否则执行步骤109。107. The read/write operation module compares the access match value with the operation match value, and if the access match value is equal to the operation match value, perform step 108; otherwise, perform step 109.

需要说明的是,若所述访问匹配值和所述操作匹配值相等,则说明访问控制模块之前发送的针对所述第一地址的读写请求均已经操作完成,如果不同,或者说,操作匹配值小于所述访问匹配值,则说明仍有读写请求还在等待处理中。It should be noted that if the access match value and the operation match value are equal, it means that the read and write requests sent by the access control module for the first address have been completed. If they are different, or the operation match If the value is smaller than the access matching value, it indicates that there are still read and write requests still waiting to be processed.

108、所述读写操作模块根据所述读写请求对所述第一地址进行相应的读写操作,然后更新所述操作匹配值。108. The read/write operation module performs corresponding read/write operations on the first address according to the read/write request, and then updates the operation matching value.

其中,在本发明实施例中,对所述操作匹配值的更新可以根据所述读写请求的类型进行加1或者加2的操作。比如,如果所述读写请求仅为读请求或者写请求,则只将所述操作匹配值加1;如果所述读写请求既包括针对所述第一地址的读请求又包括针对所述第一地址的写请求,可以每完成一类请求就将所述操作匹配值加1,或者等所述读请求和写请求全部完成之后,一并将所述操作匹配值加2。Wherein, in the embodiment of the present invention, the operation matching value may be updated by adding 1 or adding 2 according to the type of the read/write request. For example, if the read/write request is only a read request or a write request, only add 1 to the operation matching value; if the read/write request includes both a read request for the first address and a read request for the first address For a write request of an address, the operation matching value may be increased by 1 every time a type of request is completed, or the operation matching value may be increased by 2 after all the read requests and write requests are completed.

109、所述读写操作模块将所述读写请求继续放置在所述读写操作模块中的等待队列中,等待所述操作匹配值和所述访问匹配值相等时,再处理所述读写请求。109. The read-write operation module continues to place the read-write request in the waiting queue in the read-write operation module, and waits until the operation match value is equal to the access match value before processing the read-write request ask.

需要说明的是,操作匹配值和访问匹配值不相等,则说明仍有针对所述第一地址的访问请求在等待处理中,而这些等待处理的访问请求被处理之后,操作匹配值自然就会得到更新,而当操作匹配值被更新到与访问匹配值相等,则说明轮到相应的读写请求进行读写操作。It should be noted that if the operation matching value is not equal to the access matching value, it means that there are still access requests for the first address waiting to be processed, and after these waiting access requests are processed, the operation matching value will naturally be is updated, and when the operation matching value is updated to be equal to the access matching value, it means that it is the turn of the corresponding read and write requests to perform read and write operations.

110、所述读写操作模块根据所述读写请求对所述第一地址进行相应的读写操作,然后更新所述操作匹配值。110. The read/write operation module performs corresponding read/write operations on the first address according to the read/write request, and then updates the operation matching value.

根据上述对地址访问方法的描述,进一步的,本发明实施例举例说明对相同地址访问的读写请求处理时的处理流程,包括:According to the above description of the address access method, further, the embodiment of the present invention illustrates the processing flow of reading and writing requests for the same address access, including:

1、地址访问控制模块(CAM)接收对地址X的写请求WREQ0,在CAM内根据WREQ0的访问地址进行判断,若没有读写请求在对地址X进行访问,则申请一个新的位置,并得到分配的标记(ID)为ID0,此时发送到读写操作模块(eDRAMController)的访问匹配值(MATCH_TIMES)为0,并在将该写请求WREQ0发送出去之后,在CAM中对MATCH_TIMES加1,此时MATCH_TIMES值为1。1. The address access control module (CAM) receives the write request WREQ0 to address X, and judges according to the access address of WREQ0 in the CAM. If there is no read and write request to access address X, apply for a new location and get The assigned tag (ID) is ID0, and the access matching value (MATCH_TIMES) sent to the read and write operation module (eDRAMController) is 0 at this time, and after sending the write request WREQ0, add 1 to MATCH_TIMES in the CAM, this When the MATCH_TIMES value is 1.

2、CAM接收下一个对地址X的写请求WREQ1,在CAM中根据WREQ1的访问地址进行判断,判断已经有读写请求在对地址X进行访问,则获取CAM中记录的对地址X的ID0及MATCH_TIMES,并将ID0及CAM内的MATCH_TIMES(值为1)携带在WREQ1中发送到eDRAMController,并在将该写请求WREQ1发送出去之后,在CAM中对MATCH_TIMES加1,此时MATCH_TIMES值为2。2. CAM receives the next write request WREQ1 to address X, judges according to the access address of WREQ1 in CAM, and judges that there is already a read and write request accessing address X, then obtains the ID0 and ID0 of address X recorded in CAM MATCH_TIMES, carry ID0 and MATCH_TIMES (value 1) in CAM and send it to eDRAMController in WREQ1, and after sending the write request WREQ1, add 1 to MATCH_TIMES in CAM, and the value of MATCH_TIMES is 2 at this time.

3、CAM接收下一个对地址X的读请求RREQ2,在CAM中根据RREQ2的访问地址进行判断,判断已经有读写请求在对地址X进行访问,则获取CAM中记录的对地址X的ID0及MATCH_TIMES,并将ID0及CAM内的MATCH_TIMES(值为2)携带在RREQ2中发送到eDRAMController,并将该读请求RREQ2发送出去之后,在CAM中对MATCH_TIMES加1,此时MATCH_TIMES值为3。3. CAM receives the next read request RREQ2 to address X, judges according to the access address of RREQ2 in CAM, and judges that there is already a read and write request accessing address X, then obtains ID0 and ID0 of address X recorded in CAM MATCH_TIMES, carry ID0 and MATCH_TIMES (value 2) in CAM and send it to eDRAMController in RREQ2, and after sending the read request RREQ2, add 1 to MATCH_TIMES in CAM, and the value of MATCH_TIMES is 3 at this time.

4、后续如有类似请求,均如步骤1-3所述的方式对所述类似请求进行相应的地址访问判断处理。4. If there is a similar request in the follow-up, the corresponding address access judgment process is performed on the similar request in the manner described in steps 1-3.

5、eDRAMController在面对相同地址X的读写请求时,将首先处理WREQ0,此时eDRAMController中MATCH_TIMES值为0。5. When eDRAMController faces a read and write request of the same address X, it will first process WREQ0, and at this time the MATCH_TIMES value in eDRAMController is 0.

6、当WERQ0完成操作后,eDRAMController会将MATCH_TIMES值加1并向CAM发送完成信息,该完成信息中携带ID0和MATCH_TIMES值(为1);CAM在接收到完成信息后,通过ID0获取对应的存储的MATCH_TIMES;并将存储的MATCH_TIMES与eDRAMController发送来的MATCH_TIMES进行比较,确定两者是否相同;若相同则将ID0对应的地址信息被删除,则ID0可以重新被分配,若不相同,则保留所述ID0对应的地址信息。然后,在eDRAMController将MATCH_TIMES值加1后,WERQ1的MATCH_TIMES与eDRAMController中的MATCH_TIMES值相同,于是WREQ1可以被eDRAMController处理。6. When WERQ0 completes the operation, eDRAMController will add 1 to the MATCH_TIMES value and send a completion message to CAM, which carries ID0 and MATCH_TIMES value (1); after receiving the completion message, CAM obtains the corresponding memory through ID0 MATCH_TIMES; and compare the stored MATCH_TIMES with the MATCH_TIMES sent by eDRAMController to determine whether the two are the same; if they are the same, the address information corresponding to ID0 will be deleted, and ID0 can be re-assigned; Address information corresponding to ID0. Then, after eDRAMController adds 1 to the MATCH_TIMES value, the MATCH_TIMES of WERQ1 is the same as the MATCH_TIMES value in eDRAMController, so WREQ1 can be processed by eDRAMController.

9、当WERQ1完成操作后,重复步骤6的操作,于是RREQ2及后续的读写操作也可以被eDRAMController处理。9. When WERQ1 completes the operation, repeat the operation of step 6, so RREQ2 and subsequent read and write operations can also be processed by eDRAMController.

另外,需要说明的是,所述地址访问控制模块可以为但不局限于CAM,所述读写操作模块可以为但不局限于eDRAMController,本发明实施例对此不进行限制,其它可以实现地址访问控制功能或读写操作功能的模块都可以用于本发明实施例中都属于本发明保护的范围。In addition, it should be noted that the address access control module can be but not limited to CAM, and the read and write operation module can be but not limited to eDRAMController, which is not limited in the embodiment of the present invention, other address access can be implemented Modules with control functions or read/write operation functions can be used in the embodiments of the present invention and all belong to the scope of protection of the present invention.

本发明实施例提供的地址访问的方法,在地址访问控制模块接收新的读写请求时会根据所述读写请求对应的地址判断是否已经有读写请求在对所述第一地址进行访问,若有,则获取所述地址访问控制模块中记录的对所述第一地址进行访问这一操作所对应的标识,以及所述地址访问控制模块中记录的对应于所述第一地址的访问匹配值;若没有,则为针对所述第一地址的访问请求分配标识,然后将所述标识和所述匹配次数携带在所述读写请求中发送给对应的读写操作模块,使得地址访问控制模块在接收对相同地址进行访问的读写请求后可以直接对其处理并发送到读写操作模块中,将不用等待前一个读写请求完成后再对下一个读写请求进行处理从读写请求队列源端避免了HoL阻塞;并且,在所述读写请求中标记上匹配次数,在所述读写操作模块接收所述读写请求进行处理时得到了保序;综上所述,本发明解决了对访问相同地址读写请求进行保序处理时的HoL阻塞,提高了控制器读写效率,提高了系统的QoS。In the address access method provided by the embodiment of the present invention, when the address access control module receives a new read-write request, it will judge whether there is already a read-write request accessing the first address according to the address corresponding to the read-write request, If so, obtain the identifier corresponding to the operation of accessing the first address recorded in the address access control module, and the access match corresponding to the first address recorded in the address access control module value; if not, assign an identifier to the access request for the first address, then carry the identifier and the number of matches in the read-write request and send it to the corresponding read-write operation module, so that the address access control After the module receives the read and write request for accessing the same address, it can directly process it and send it to the read and write operation module. It will not wait for the completion of the previous read and write request before processing the next read and write request. From the read and write request The source end of the queue avoids HoL blocking; and, the number of matches is marked in the read-write request, and the order is preserved when the read-write operation module receives the read-write request for processing; in summary, the present invention It solves the HoL blocking when accessing the same address read and write requests for order-preserving processing, improves the read and write efficiency of the controller, and improves the QoS of the system.

实施例2Example 2

本发明实施例提供了一种地址访问控制模块,如图2所示,该地址访问控制模块包括:接收单元21、匹配单元22、第一处理单元23、第二处理单元24。An embodiment of the present invention provides an address access control module. As shown in FIG. 2 , the address access control module includes: a receiving unit 21 , a matching unit 22 , a first processing unit 23 , and a second processing unit 24 .

接收单元21,用于接收针对第一地址进行访问的读写请求。The receiving unit 21 is configured to receive a read/write request for accessing the first address.

判断单元22,用于判断是否已经有读写请求在对所述第一地址进行访问。The judging unit 22 is configured to judge whether there is a read/write request accessing the first address.

第一处理单元23,用于在已经有读写请求在对所述第一地址进行访问时,获取所述地址访问控制模块中记录的对所述第一地址进行访问这一操作所对应的标识,以及所述地址访问控制模块中记录的对应于所述第一地址的访问匹配值,将所述标识、访问匹配值以及所述读写请求发送给读写操作模块。The first processing unit 23 is configured to obtain the identifier corresponding to the operation of accessing the first address recorded in the address access control module when there is already a read/write request accessing the first address , and the access matching value corresponding to the first address recorded in the address access control module, and sending the identifier, the access matching value, and the read and write request to the read and write operation module.

第二处理单元24,用于在没有读写请求在对所述第一地址进行访问时,为针对所述第一地址的访问请求分配标识,将访问匹配值,将所述标识、所述匹配值以及所述读写请求发送给读写操作模块。The second processing unit 24 is configured to assign an identifier to an access request for the first address when no read or write request is accessing the first address, access a matching value, and assign the identifier, the matching The value and the read and write request are sent to the read and write operation module.

进一步的,如图3所示,该地址访问控制模块还包括:存储单元25、更新单元26。Further, as shown in FIG. 3 , the address access control module further includes: a storage unit 25 and an update unit 26 .

存储单元25,用于存储对应于所述第一地址的访问匹配值。The storage unit 25 is configured to store an access matching value corresponding to the first address.

更新单元26,用于根据预定规则,更新所述地址访问控制模块中存储的对应于所述第一地址的访问匹配值。The updating unit 26 is configured to update the access matching value corresponding to the first address stored in the address access control module according to a predetermined rule.

本发明实施例提供了一种读写操作模块,如图4所示,所述读写操作模块包括:接收单元31、查询单元32、比较单元33、第一处理单元34、第二处理单元35、第三处理单元36。The embodiment of the present invention provides a read-write operation module. As shown in FIG. , the third processing unit 36 .

接收单元31,用于接收所述第一地址访问控制模块发送的所述读写请求、所述针对所述第一地址的访问匹配值、以及所述标识。The receiving unit 31 is configured to receive the read/write request, the access matching value for the first address, and the identifier sent by the first address access control module.

查询单元32,用于查询读写控制模块中是否有保存针对所述第一地址的操作匹配值。The query unit 32 is configured to query whether there is an operation matching value for the first address stored in the read-write control module.

比较单元33,用于在所述读写控制模块中有保存针对所述第一地址的操作匹配值时,将所述访问匹配值和所述操作匹配值进行比较。The comparing unit 33 is configured to compare the access matching value with the operation matching value when the operation matching value for the first address is stored in the read-write control module.

第一处理单元34,用于在所述访问匹配值和所述操作匹配值相同时,根据所述读写请求对所述第一地址进行相应的读写操作。The first processing unit 34 is configured to perform a corresponding read and write operation on the first address according to the read and write request when the access matching value is the same as the operation matching value.

第二处理单元35,用于在所述访问匹配值和所述操作匹配值不相同时,将所述读写请求继续放置在所述读写操作模块中的等待队列中,等待所述操作匹配值和所述访问匹配值相等时,再处理所述读写请求。The second processing unit 35 is configured to continue to place the read-write request in the waiting queue in the read-write operation module when the access match value is different from the operation match value, and wait for the operation match When the value is equal to the access matching value, the read and write request is processed.

第三处理单元36,用于在所述读写控制模块中没有保存针对所述第一地址的操作匹配值时,根据所述读写请求对所述第一地址进行相应的读写操作。The third processing unit 36 is configured to perform corresponding read and write operations on the first address according to the read and write request when the operation matching value for the first address is not saved in the read and write control module.

进一步的,如图5所示,该读写操作模块还包括:更新单元37。Further, as shown in FIG. 5 , the read/write operation module further includes: an update unit 37 .

更新单元37,用于根据预定规则,更新所述操作匹配值。An updating unit 37, configured to update the operation matching value according to a predetermined rule.

本发明实施例提供了一种地址访问系统,如图6所示,所述地址访问系统包括:地址访问控制模块41、读写操作模块42。An embodiment of the present invention provides an address access system. As shown in FIG. 6 , the address access system includes: an address access control module 41 and a read-write operation module 42 .

地址访问控制模块41,用于接收针对第一地址进行访问的读写请求;判断是否已经有读写请求在对所述第一地址进行访问;若已经有读写请求在对所述第一地址进行访问,则获取所述第一地址访问控制模块中记录的对所述第一地址进行访问这一操作所对应的标识,以及所述地址访问控制模块中记录的对应于所述第一地址的访问匹配值,将所述标识、访问匹配值以及所述读写请求发送给读写操作模块42;若没有读写请求在对所述第一地址进行访问,则为针对所述第一地址的访问请求分配标识,将访问匹配值,将所述标识、所述匹配值以及所述读写请求发送给读写操作模块42。The address access control module 41 is used to receive a read-write request for accessing the first address; determine whether there is a read-write request accessing the first address; if there is a read-write request for accessing the first address access, then obtain the identifier corresponding to the operation of accessing the first address recorded in the first address access control module, and the address corresponding to the first address recorded in the address access control module Access matching value, send the identification, access matching value and the read-write request to the read-write operation module 42; if no read-write request is accessing the first address, then it is for the first address An identifier is assigned to the access request, a matching value is accessed, and the identifier, the matching value, and the read/write request are sent to the read/write operation module 42 .

读写操作模块42,用于接收所述第一地址访问控制模块41发送的所述读写请求、所述针对所述第一地址的访问匹配值、以及所述标识;查询读写控制模块42中是否有保存针对所述第一地址的操作匹配值;若所述读写控制模块42中有保存针对所述第一地址的操作匹配值,将所述访问匹配值和所述操作匹配值进行比较;若所述访问匹配值和所述操作匹配值相同,则根据所述读写请求对所述第一地址进行相应的读写操作;若所述访问匹配值和所述操作匹配值不相同,则将所述读写请求继续放置在所述读写操作模块42中的等待队列中,等待所述操作匹配值和所述访问匹配值相等时,再处理所述读写请求;若所述读写控制模块42中没有保存针对所述第一地址的操作匹配值,则根据所述读写请求对所述第一地址进行相应的读写操作。A read-write operation module 42, configured to receive the read-write request sent by the first address access control module 41, the access matching value for the first address, and the identification; query the read-write control module 42 Whether there is an operation matching value stored for the first address in the read-write control module 42; if there is an operation matching value stored for the first address in the read-write control module 42, the access matching value and the operation matching value are compared Comparing; if the access match value is the same as the operation match value, perform corresponding read and write operations on the first address according to the read and write request; if the access match value and the operation match value are not the same , then continue to place the read-write request in the waiting queue in the read-write operation module 42, and then process the read-write request when the operation matching value is equal to the access matching value; if the If the operation matching value for the first address is not stored in the read/write control module 42, corresponding read/write operations are performed on the first address according to the read/write request.

本发明实施例提供的地址访问的装置及系统,在地址访问控制模块接收新的读写请求时会根据所述读写请求对应的地址判断是否已经有读写请求在对所述第一地址进行访问,若有,则获取所述地址访问控制模块中记录的对所述第一地址进行访问这一操作所对应的标识,以及所述地址访问控制模块中记录的对应于所述第一地址的访问匹配值;若没有,则为针对所述第一地址的访问请求分配标识,然后将所述标识和所述匹配次数携带在所述读写请求中发送给对应的读写操作模块,使得地址访问控制模块在接收对相同地址进行访问的读写请求后可以直接对其处理并发送到读写操作模块中,将不用等待前一个读写请求完成后再对下一个读写请求进行处理从读写请求队列源端避免了HoL阻塞;并且,在所述读写请求中标记上匹配次数,在所述读写操作模块接收所述读写请求进行处理时得到了保序;综上所述,本发明解决了对访问相同地址读写请求进行保序处理时的HoL阻塞,提高了控制器读写效率,提高了系统的QoS。The device and system for address access provided by the embodiments of the present invention, when the address access control module receives a new read and write request, it will judge whether there is already a read and write request for the first address according to the address corresponding to the read and write request. Access, if yes, obtain the identifier corresponding to the operation of accessing the first address recorded in the address access control module, and the address corresponding to the first address recorded in the address access control module Access the matching value; if not, assign an identifier to the access request for the first address, then carry the identifier and the matching times in the read and write request and send it to the corresponding read and write operation module, so that the address After the access control module receives the read and write requests for accessing the same address, it can directly process them and send them to the read and write operation module. It will not wait for the completion of the previous read and write request before processing the next read and write request. The source end of the write request queue avoids HoL blocking; and, the number of matches is marked in the read-write request, and the order is preserved when the read-write operation module receives the read-write request for processing; in summary, The invention solves the HoL blocking when the sequence-preserving processing is performed on the read and write requests for accessing the same address, improves the read and write efficiency of the controller, and improves the QoS of the system.

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。Through the description of the above embodiments, those skilled in the art can clearly understand that the present invention can be realized by means of software plus necessary general-purpose hardware, and of course also by hardware, but in many cases the former is a better embodiment . Based on this understanding, the essence of the technical solution of the present invention or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product is stored in a readable storage medium, such as a floppy disk of a computer , a hard disk or an optical disk, etc., including several instructions for enabling a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in various embodiments of the present invention.

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。The above is only a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Anyone skilled in the art can easily think of changes or substitutions within the technical scope disclosed in the present invention. Should be covered within the protection scope of the present invention. Therefore, the protection scope of the present invention should be determined by the protection scope of the claims.

Claims (5)

1.一种地址访问的方法,其特征在于,包括:1. A method for address access, comprising: 接收针对第一地址进行访问的读写请求;receiving a read and write request for access to the first address; 判断是否已经有读写请求在对所述第一地址进行访问;judging whether there is already a read-write request accessing the first address; 若已经有读写请求在对所述第一地址进行访问,则获取所述地址访问控制模块中记录的对应于所述第一地址的访问匹配值,将所述访问匹配值以及所述读写请求发送给读写操作模块;If there is already a read-write request accessing the first address, the access matching value corresponding to the first address recorded in the address access control module is obtained, and the access matching value and the read-write The request is sent to the read and write operation module; 若没有读写请求在对所述第一地址进行访问,则为针对所述第一地址的访问请求分配访问匹配值,将所述匹配值以及所述读写请求发送给读写操作模块;If no read-write request is accessing the first address, assign an access matching value to the access request for the first address, and send the matching value and the read-write request to the read-write operation module; 其中,所述访问匹配值为针对所述第一地址的访问请求的个数,或者根据针对所述第一地址的访问请求的个数,在一个初始值的基础上产生的累加值;Wherein, the access matching value is the number of access requests for the first address, or an accumulated value generated on the basis of an initial value according to the number of access requests for the first address; 其中,将所述匹配值以及所述读写请求发送给读写操作模块之后,该方法还包括:存储对应于所述第一地址的访问匹配值;或根据预定规则,更新所述地址访问控制模块中存储的对应于所述第一地址的访问匹配值;Wherein, after sending the matching value and the reading and writing request to the reading and writing operation module, the method further includes: storing the access matching value corresponding to the first address; or updating the address access control according to a predetermined rule An access matching value corresponding to the first address stored in the module; 其中,所述预定规则为:若所述读写请求为读请求或写请求其中任一项,则将所述访问匹配值加1;若所述读写请求包括针对所述第一地址的读请求和包括针对所述第一地址的写请求,则将所述访问匹配值加2。Wherein, the predetermined rule is: if the read-write request is any one of a read request or a write request, add 1 to the access matching value; if the read-write request includes a read request for the first address If the request sum includes a write request for the first address, then add 2 to the access matching value. 2.一种地址访问的方法,其特征在于,包括:2. A method for address access, comprising: 接收所述地址访问控制模块发送的针对第一地址的读写请求、以及针对所述第一地址的访问匹配值;所述访问匹配值为针对所述第一地址的访问请求的个数,或者根据针对所述第一地址的访问请求的个数,在一个初始值的基础上产生的累加值;receiving a read/write request for the first address and an access matching value for the first address sent by the address access control module; the access matching value is the number of access requests for the first address, or an accumulated value generated on the basis of an initial value according to the number of access requests for the first address; 查询读写控制模块中是否有保存针对所述第一地址的操作匹配值;Query whether the operation matching value for the first address is stored in the read-write control module; 若所述读写控制模块中有保存针对所述第一地址的操作匹配值,将所述访问匹配值和所述操作匹配值进行比较;If the operation matching value for the first address is stored in the read-write control module, comparing the access matching value with the operation matching value; 若所述访问匹配值和所述操作匹配值相同,则根据所述读写请求对所述第一地址进行相应的读写操作;If the access matching value is the same as the operation matching value, performing corresponding read and write operations on the first address according to the read and write request; 若所述访问匹配值和所述操作匹配值不相同,则将所述读写请求继续放置在所述读写操作模块中的等待队列中,等待所述操作匹配值和所述访问匹配值相等时,再处理所述读写请求;If the access matching value is not the same as the operation matching value, continue to place the read and write request in the waiting queue in the read and write operation module, and wait for the operation matching value to be equal to the access matching value , then process the read and write request; 若所述读写控制模块中没有保存针对所述第一地址的操作匹配值,则根据所述读写请求对所述第一地址进行相应的读写操作;If the operation matching value for the first address is not stored in the read-write control module, perform corresponding read-write operations on the first address according to the read-write request; 其中,在根据所述读写请求对所述第一地址进行相应的读写操作之后,该方法还包括:Wherein, after performing corresponding read and write operations on the first address according to the read and write request, the method further includes: 根据预定规则,更新所述操作匹配值;updating the operation matching value according to a predetermined rule; 其中,所述预定规则为:Wherein, the predetermined rules are: 若所述读写请求为读请求或写请求其中任一项,则将所述操作匹配值加1;If the read and write request is any one of a read request or a write request, add 1 to the operation matching value; 若所述读写请求包括针对所述第一地址的读请求和包括针对所述第一地址的写请求,则将所述操作匹配值加2。If the read/write request includes a read request for the first address and a write request for the first address, add 2 to the operation matching value. 3.一种地址访问控制模块,其特征在于,包括:3. An address access control module, characterized in that, comprising: 接收单元,用于接收针对第一地址进行访问的读写请求;a receiving unit, configured to receive a read and write request for accessing the first address; 判断单元,用于是否已经有读写请求在对所述第一地址进行访问;a judging unit, configured to determine whether a read-write request is already accessing the first address; 第一处理单元,用于在已经有读写请求在对所述第一地址进行访问时,获取所述第一地址访问控制模块中记录的对应于所述第一地址的访问匹配值,将所述访问匹配值以及所述读写请求发送给读写操作模块;The first processing unit is configured to obtain the access matching value corresponding to the first address recorded in the first address access control module when there is already a read/write request accessing the first address, and The access matching value and the read and write request are sent to the read and write operation module; 第二处理单元,用于在没有读写请求在对所述第一地址进行访问时,为针对所述第一地址的访问请求分配访问匹配值,将所述标识、所述访问匹配值以及所述读写请求发送给读写操作模块;The second processing unit is configured to assign an access matching value to an access request for the first address when no read or write request is accessing the first address, and assign the identifier, the access matching value, and the Send the read and write request to the read and write operation module; 其中,所述访问匹配值为针对所述第一地址的访问请求的个数,或者根据针对所述第一地址的访问请求的个数,在一个初始值的基础上产生的累加值;Wherein, the access matching value is the number of access requests for the first address, or an accumulated value generated on the basis of an initial value according to the number of access requests for the first address; 所述地址访问控制模块还包括:The address access control module also includes: 存储单元,用于存储对应于所述第一地址的访问匹配值;a storage unit, configured to store an access matching value corresponding to the first address; 更新单元,用于根据预定规则,更新所述第一地址访问控制模块中存储的对应于所述第一地址的访问匹配值;An updating unit, configured to update the access matching value corresponding to the first address stored in the first address access control module according to a predetermined rule; 其中,所述预定规则为:若所述读写请求为读请求或写请求其中任一项,则将所述访问匹配值加1;若所述读写请求包括针对所述第一地址的读请求和包括针对所述第一地址的写请求,则将所述访问匹配值加2。Wherein, the predetermined rule is: if the read-write request is any one of a read request or a write request, add 1 to the access matching value; if the read-write request includes a read request for the first address If the request sum includes a write request for the first address, then add 2 to the access matching value. 4.一种读写操作模块,其特征在于,包括:4. A read-write operation module, characterized in that, comprising: 接收单元,用于接收所述第一地址访问控制模块发送的所述读写请求、以及所述针对所述第一地址的访问匹配值;所述访问匹配值为针对所述第一地址的访问请求的个数,或者根据针对所述第一地址的访问请求的个数,在一个初始值的基础上产生的累加值;a receiving unit, configured to receive the read/write request sent by the first address access control module, and the access matching value for the first address; the access matching value is an access for the first address The number of requests, or an accumulated value generated on the basis of an initial value according to the number of access requests for the first address; 查询单元,用于查询读写控制模块中是否有保存针对所述第一地址的操作匹配值;A query unit, configured to query whether an operation matching value for the first address is stored in the read-write control module; 比较单元,用于在所述读写控制模块中有保存针对所述第一地址的操作匹配值时,将所述访问匹配值和所述操作匹配值进行比较;A comparison unit, configured to compare the access matching value with the operation matching value when the operation matching value for the first address is stored in the read-write control module; 第一处理单元,用于在所述访问匹配值和所述操作匹配值相同时,根据所述读写请求对所述第一地址进行相应的读写操作;A first processing unit, configured to perform corresponding read and write operations on the first address according to the read and write request when the access matching value is the same as the operation matching value; 第二处理单元,用于在所述访问匹配值和所述操作匹配值不相同时,将所述读写请求继续放置在所述读写操作模块中的等待队列中,等待所述操作匹配值和所述访问匹配值相等时,再处理所述读写请求;The second processing unit is configured to, when the access matching value is different from the operation matching value, continue to place the read and write request in the waiting queue in the read and write operation module, and wait for the operation matching value When it is equal to the access matching value, then process the read and write request; 第三处理单元,用于在所述读写控制模块中没有保存针对所述第一地址的操作匹配值时,根据所述读写请求对所述第一地址进行相应的读写操作;A third processing unit, configured to perform corresponding read and write operations on the first address according to the read and write request when the operation matching value for the first address is not saved in the read and write control module; 所述读写操作模块还包括:The read and write operation module also includes: 更新单元,用于根据预定规则,更新所述操作匹配值;an updating unit, configured to update the operation matching value according to a predetermined rule; 其中,所述预定规则为:若所述读写请求为读请求或写请求其中任一项,则将所述操作匹配值加1;若所述读写请求包括针对所述第一地址的读请求和包括针对所述第一地址的写请求,则将所述操作匹配值加2。Wherein, the predetermined rule is: if the read-write request is any one of a read request or a write request, add 1 to the operation matching value; if the read-write request includes a read request for the first address If the request sum includes a write request for the first address, then add 2 to the operation matching value. 5.一种地址访问系统,其特征在于,包括:5. An address access system, characterized in that it comprises: 地址访问控制模块,用于接收针对第一地址进行访问的读写请求;判断是否已经有读写请求在对所述第一地址进行访问;若已经有读写请求在对所述第一地址进行访问,则获取所述地址访问控制模块中记录的对应于所述第一地址的访问匹配值,将所述访问匹配值以及所述读写请求发送给读写操作模块;若没有读写请求在对所述第一地址进行访问,则为针对所述第一地址的访问请求分配访问匹配值,将所述匹配值以及所述读写请求发送给读写操作模块;将所述匹配值以及所述读写请求发送给读写操作模块之后,存储对应于所述第一地址的访问匹配值;或根据预定规则,更新所述地址访问控制模块中存储的对应于所述第一地址的访问匹配值;其中,所述预定规则为:若所述读写请求为读请求或写请求其中任一项,则将所述访问匹配值加1;若所述读写请求包括针对所述第一地址的读请求和包括针对所述第一地址的写请求,则将所述访问匹配值加2;The address access control module is used to receive a read-write request for accessing the first address; determine whether there is a read-write request for accessing the first address; if there is already a read-write request for accessing the first address access, then obtain the access matching value corresponding to the first address recorded in the address access control module, and send the access matching value and the read-write request to the read-write operation module; if there is no read-write request in When accessing the first address, assign an access matching value to the access request for the first address, and send the matching value and the read-write request to the read-write operation module; After the read-write request is sent to the read-write operation module, store the access matching value corresponding to the first address; or update the access matching value corresponding to the first address stored in the address access control module according to a predetermined rule value; wherein, the predetermined rule is: if the read-write request is either a read request or a write request, add 1 to the access matching value; if the read-write request includes The read request and the write request for the first address, then add 2 to the access matching value; 读写操作模块,用于接收所述第一地址访问控制模块发送的所述读写请求、以及所述针对所述第一地址的访问匹配值;查询读写控制模块中是否有保存针对所述第一地址的操作匹配值;若所述读写控制模块中有保存针对所述第一地址的操作匹配值,将所述访问匹配值和所述操作匹配值进行比较;若所述访问匹配值和所述操作匹配值相同,则根据所述读写请求对所述第一地址进行相应的读写操作;若所述访问匹配值和所述操作匹配值不相同,则将所述读写请求继续放置在所述读写操作模块中的等待队列中,等待所述操作匹配值和所述访问匹配值相等时,再处理所述读写请求;若所述读写控制模块中没有保存针对所述第一地址的操作匹配值,则根据所述读写请求对所述第一地址进行相应的读写操作;在根据所述读写请求对所述第一地址进行相应的读写操作之后,根据预定规则,更新所述操作匹配值;A read-write operation module, configured to receive the read-write request sent by the first address access control module, and the access matching value for the first address; query whether there is a storage for the first address in the read-write control module The operation matching value of the first address; if the operation matching value for the first address is stored in the read-write control module, compare the access matching value with the operation matching value; if the access matching value is the same as the operation matching value, then perform corresponding read and write operations on the first address according to the read and write request; if the access matching value is different from the operation matching value, then the read and write request Continue to be placed in the waiting queue in the read-write operation module, wait for the operation matching value to be equal to the access matching value, and then process the read-write request; According to the operation matching value of the first address, the corresponding read and write operations are performed on the first address according to the read and write requests; after the corresponding read and write operations are performed on the first address according to the read and write requests, updating the operation matching value according to a predetermined rule; 其中,所述访问匹配值为针对所述第一地址的访问请求的个数,或者根据针对所述第一地址的访问请求的个数,在一个初始值的基础上产生的累加值;Wherein, the access matching value is the number of access requests for the first address, or an accumulated value generated on the basis of an initial value according to the number of access requests for the first address; 其中,所述预定规则为:若所述读写请求为读请求或写请求其中任一项,则将所述操作匹配值加1;若所述读写请求包括针对所述第一地址的读请求和包括针对所述第一地址的写请求,则将所述操作匹配值加2。Wherein, the predetermined rule is: if the read-write request is any one of a read request or a write request, add 1 to the operation matching value; if the read-write request includes a read request for the first address If the request sum includes a write request for the first address, then add 2 to the operation matching value.
CN201180001725.7A 2011-08-31 2011-08-31 Address access method, Apparatus and system Active CN102369519B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2011/079172 WO2012119430A2 (en) 2011-08-31 2011-08-31 Address accessing method, device and system

Publications (2)

Publication Number Publication Date
CN102369519A CN102369519A (en) 2012-03-07
CN102369519B true CN102369519B (en) 2016-01-13

Family

ID=45761451

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180001725.7A Active CN102369519B (en) 2011-08-31 2011-08-31 Address access method, Apparatus and system

Country Status (2)

Country Link
CN (1) CN102369519B (en)
WO (1) WO2012119430A2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104834475B (en) * 2014-02-07 2017-11-21 广明光电股份有限公司 How to read SSD
CN107729262A (en) * 2017-10-31 2018-02-23 郑州云海信息技术有限公司 Buffer consistency identical address read request, which performs method and performed, hosts control terminal

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006203A (en) * 1995-04-14 1999-12-21 Nec Corporation Order control apparatus capable of reducing input operation by an input unit
CN1347041A (en) * 2000-09-29 2002-05-01 国际商业机器公司 Dynamic serializing of memory access in multiprocessor system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5309703B2 (en) * 2008-03-07 2013-10-09 日本電気株式会社 Shared memory control circuit, control method, and control program
US20110022802A1 (en) * 2009-07-27 2011-01-27 Arm Limited Controlling data accesses to hierarchical data stores to retain access order

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6006203A (en) * 1995-04-14 1999-12-21 Nec Corporation Order control apparatus capable of reducing input operation by an input unit
CN1347041A (en) * 2000-09-29 2002-05-01 国际商业机器公司 Dynamic serializing of memory access in multiprocessor system

Also Published As

Publication number Publication date
WO2012119430A2 (en) 2012-09-13
WO2012119430A3 (en) 2012-11-01
CN102369519A (en) 2012-03-07

Similar Documents

Publication Publication Date Title
CN108519862B (en) Storage method, device and system of block chain system and storage medium
US10564880B2 (en) Data deduplication method and apparatus
US20140115252A1 (en) Block storage-based data processing methods, apparatus, and systems
CN103095686B (en) Focus metadata access control method and service device
US10761781B2 (en) Apparatus and methods for a distributed memory system including memory nodes
CN103064797B (en) Data processing method and virtual machine management platform
US20150253992A1 (en) Memory system and control method
CN107122130B (en) Data deduplication method and device
CN104951239B (en) Cache driver, host bus adaptor and its method used
CN110955390B (en) Data processing method, device, electronic equipment and storage medium
CN111737564A (en) Information query method, device, equipment and medium
US20200319819A1 (en) Method and Apparatus for Improving Parity Redundant Array of Independent Drives Write Latency in NVMe Devices
CN113596010A (en) Data processing method and device, node equipment and computer storage medium
CN115437579B (en) A metadata management method, device, computer equipment and readable storage medium
CN102369519B (en) Address access method, Apparatus and system
CN102724301B (en) Cloud database system and method and equipment for reading and writing cloud data
US10185735B2 (en) Distributed database system and a non-transitory computer readable medium
CN103092955B (en) Checkpointed method, Apparatus and system
WO2019052328A1 (en) Authentication method for anonymous account, and server
CN110658999B (en) Information updating method, device, equipment and computer readable storage medium
CN106302374A (en) A kind of for improving list item access bandwidth and the device and method of atomicity operation
US20230161664A1 (en) Method of responding to operation, electronic device, and storage medium
CN104298616B (en) Data block initial method, cache memory and terminal
CN114238404A (en) Data query method and device, storage medium and equipment
CN111858418A (en) A memory communication method and device based on remote direct memory access RDMA

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant