Memory access system and method

US10901640B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10901640-B2
Application numberUS-201715827746-A
CountryUS
Kind codeB2
Filing dateNov 30, 2017
Priority dateJun 2, 2015
Publication dateJan 26, 2021
Grant dateJan 26, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A memory access system includes a memory, a controller, and a redundancy elimination unit. The memory is a multi-way set associative memory, and the redundancy elimination unit records M record items. Each record item is used to store a tag of a stored data block in one of storage sets. The controller determines a read data block and a target storage set of the read data block and sends a query message to the redundancy elimination unit. The query message carries a set identifier of the target storage set of the read data block and a tag of the read data block. The redundancy elimination unit determines a record item corresponding to the set identifier of the target storage set, matches the tag of the read data block with a tag of a stored data block in the record item corresponding to the target storage set of the read data block.

First claim

Opening claim text (preview).

What is claimed is: 1. A memory access system, comprising: a memory, a controller, and a redundancy elimination unit, wherein: the memory comprises M×N storage blocks, wherein M rows of the storage blocks form M storage sets, N columns of the storage blocks form N storage ways, each storage set is provided with a set identifier, each storage block of the M×N storage blocks stores a data block and a tag identifying the data block, and at least one of M or N is a positive integer greater than or equal to 2; the redundancy elimination unit is separate from the memory and is configured to record M record items, wherein each record item corresponds to one of the M storage sets, and each record item stores N tags corresponding to the N stored data blocks in one of the M storage sets; the controller is configured to receive a data read request, determine a read data block and a target storage set of the read data block, and send a query message to the redundancy elimination unit, wherein the query message carries a set identifier of the target storage set of the read data block and a tag of the read data block; and the redundancy elimination unit is further configured to determine an appropriate storage way in the memory to enable without accessing the memory, wherein determining comprises: determining, according to the set identifier of the target storage set of the read data block and from among the M record items, a particular record item corresponding to the set identifier of the target storage set; matching the tag of the read data block with a tag of a stored data block in the particular record item corresponding to the target storage set of the read data block; in response to determining a match is found, determining the appropriate storage way to which a storage block corresponding to the matched tag belongs; and in response to determining that no match is found, sending, to the controller, a query response message indicating that the read data block is not hit. 2. The system according to claim 1 , wherein: the controller is further configured to: receive a data write request; determine a write data block associated with the received data write request and a target storage set of the write data block; store the write data block to a target storage block in the target storage set; and send a set identifier of the target storage set of the write data block and a tag of the write data block to the redundancy elimination unit; and the redundancy elimination unit is further configured to: record, according to the set identifier of the target storage set of the write data block, the tag of the write data block into a record item corresponding to the set identifier of the target storage set of the write data block. 3. The system according to claim 2 , wherein each record item in the redundancy elimination unit comprises N record bits, and each record bit corresponds to one storage block in one of the M storage sets; and the redundancy elimination unit is further configured to record the tag of the stored data block into a corresponding record bit in a record item corresponding to a storage set to which the stored data block belongs. 4. The system according to claim 3 , wherein: the redundancy elimination unit is further configured to: when the tag of the read data block matches the tag of the stored data block in the record item corresponding to the target storage set of the read data block, determine a storage way to which a storage block corresponding to a matched record bit belongs; and send information about the determined storage way to the controller; and the controller is further configured to: enable, according to the information about the determined storage way, the storage way corresponding to the information about the determined storage way. 5. The system according to claim 1 , wherein the tag of the data block comprises a thread identifier corresponding to at least one of the data block, identification information of the data block, and a combination of a thread identifier corresponding to the data block and an identification information of the data block. 6. The system according to claim 1 , wherein when the tag of the data block comprises a thread identifier corresponding to the data block and identification information of the data block, the redundancy elimination unit is configured to: after receiving the query message, compare, according to the set identifier of the target storage set of the read data block, a thread identifier of the read data block with thread information of the stored data block in the record item corresponding to the target storage set of the read data block; and in response to the thread identifier of the read data block matching the thread information of the stored data block in the record item corresponding to the target storage set of the read data block, match identification information of the read data block with a data block identifier of a matched and stored data block in the record item corresponding to the target storage set of the read data block; and in response to the thread identifier of the read data block not matching the thread information of the stored data block in the record item corresponding to the target storage set of the read data block, send, to the controller, a query response message indicating that read data is not hit. 7. A memory access system, comprising: a memory, a controller, and a redundancy elimination unit, wherein: the memory comprises M×N storage blocks, wherein M rows of the storage blocks form M storage sets, N columns of the storage blocks form N storage ways, each storage set is provided with a set identifier, each storage block of the M×N storage blocks stores a data block and a tag identifying the data block, and M or N is a positive integer greater than or equal to 2; the redundancy elimination unit is separate from the memory and is configured to record M record items, wherein each record item corresponds to one of the M storage sets, and each record item stores N tags corresponding to the N stored data blocks in one of the M storage sets; and the controller is configured to: receive a data read request, determine a read data block and a target storage set of the read data block, query the redundancy elimination unit according to a set identifier of the target storage set of the read data block; match, without accessing the memory, a tag of the read data block with a tag of a stored data block in a record item corresponding to the target storage set of the read data block; in response to determining that a match is found, determine, without accessing the memory, an appropriate storage way to which a storage block corresponding to the matched tag belongs; and in response to determining that no match is found, return information indicating that the read data block is not hit. 8. The system according to claim 7 , wherein: the controller is further configured to: receive a data write request; determine a write data block associated with the received data write request and a target storage set of the write data block; store the write data block to a target storage block in the target storage set; and record, according to a set identifier of the target storage set of the write data block, a tag of the write data block into a record item corresponding to the set identifier of the target storage set of the write data block. 9. The system according to claim 8 , wherein each record item in the redundancy elimination unit comprises N record bits, and each record bit corresponds to one storage block in one of the M storage sets; and the controller is further configured to record a tag of the stored data block into a co

Assignees

Inventors

Classifications

  • G06F12/084Primary

    with a shared cache · CPC title

  • in hierarchically structured memory systems, e.g. virtual memory systems · CPC title

  • Saving storage space on storage systems · CPC title

  • G06F3/0641Primary

    De-duplication techniques · CPC title

  • Space efficiency improvement · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10901640B2 cover?
A memory access system includes a memory, a controller, and a redundancy elimination unit. The memory is a multi-way set associative memory, and the redundancy elimination unit records M record items. Each record item is used to store a tag of a stored data block in one of storage sets. The controller determines a read data block and a target storage set of the read data block and sends a query…
Who is the assignee on this patent?
Huawei Tech Co Ltd
What technology area does this patent fall under?
Primary CPC classification G06F12/084. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 26 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).