Victim cache that supports draining write-miss entries
US-2024264952-A1 · Aug 8, 2024 · US
US2016004477A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2016004477-A1 |
| Application number | US-201514746570-A |
| Country | US |
| Kind code | A1 |
| Filing date | Jun 22, 2015 |
| Priority date | Jul 4, 2014 |
| Publication date | Jan 7, 2016 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
In a data transfer apparatus, a data coupling unit includes a command transfer unit that outputs a write address based on transfer requests input from a bus master, a judgment result indicating whether data corresponding to the input transfer requests are continues, and a judgment result indicating whether a size after coupling exceeds an arbitrary burst length. The data coupling unit includes a buffer unit that retains the data input from the bus master according to the write address, a buffer management unit that retains information used by the data coupling unit to couple the transfer requests, and a coupled command transfer unit that generates a transfer request after coupling, having a data size less than or equal to the arbitrary burst length and a start address based on the arbitrary burst length.
Opening claim text (preview).
What is claimed is: 1 . A data transfer apparatus which transfers data input from a processing unit to a memory, comprising: a command transfer unit including a command queue that retains a plurality of transfer requests input from the processing unit, a first judgment result indicating whether a plurality of data corresponding to the plurality of transfer requests input from the processing unit are continuous data, and a second judgment result indicating whether a size after coupling the plurality of data exceeds a first burst length less than or equal to a column size of the memory, and configured to output a write address based on the first judgment result and the second judgment result; a buffer unit including a plurality of line buffers, respectively having a size greater than or equal to the first burst length and configured to retain the data input from the processing unit in the plurality of line buffers according to the write address; a buffer management unit including a retaining unit that retains coupling information for coupling the transfer requests corresponding to the data retained in each of the plurality of line buffers; and a coupled command transfer unit configured to generate a transfer request after coupling, having a data size less than or equal to the first burst length and a start address based on the first burst length, by coupling the plurality of transfer requests based on the coupling information retained in the retaining unit, and to output the transfer request after the coupling. 2 . The data transfer apparatus as claimed in claim 1 , wherein the command transfer unit carries out a process including generating a first flag indicating whether coupling of the data amounting to 1 line of the line buffer is completed in each of the plurality of line buffers, based on the second judgment result, and retaining the first flag in the retaining unit, and generating a second flag indicating whether the coupling of the data is interrupted upon coupling less than 1 line of the line buffer in each of the plurality of line buffers, based on the first judgment result and the second judgment result, and retaining the second flag in the retaining unit. 3 . The data transfer apparatus as claimed in claim 2 , wherein the plurality of line buffers form a number of first line buffers, the retaining unit includes a number of second line buffers equal to the number of the first line buffers, and each of the second line buffers retains a transfer request received last amongst the transfer requests corresponding to the data retained in one of the first line buffers, the first flag, and the second flag. 4 . The data transfer apparatus as claimed in claim 3 , wherein the command queue forms a first command queue, the buffer management unit manages a first number the transfer request after the coupling, and retains the first number in the second line buffer, the command transfer unit retains, together with the transfer request, a line number of the first line buffer to which the data corresponding to the transfer request is to be written, the first judgment result, the second judgment result, and the first number in the first command queue, and includes a first response queue that retains the first number retained in the first command queue, the coupled command transfer unit includes a second command queue that retains the first number together with the transfer request after the coupling, and a second response queue that retains the first number retained in the second command queue, and is configured to output the first number retained in the second response queue to the command transfer unit when a write complete notification with respect to the transfer request after the coupling is received, and the command transfer unit outputs the write complete notification to the processing unit at a transfer request source, based on the first number received from the coupled command transfer unit and the first number retained in the first response queue. 5 . The data transfer apparatus as claimed in claim 4 , further comprising: a write arbitration unit configured to arbitrate the transfer requests output from a plurality of processing units, wherein the first command queue, the first response queue, the retaining unit, the second command queue, and the second response queue retain, together with the first number, a second number indicating the processing unit at the transfer request source. 6 . The data transfer apparatus as claimed in claim 3 , wherein the command transfer unit carries out a process including generating the first judgment result depending on whether an address of the transfer request input from the processing unit matches an address of a transfer request from a processing unit at a transfer request source matching the processing unit from which the transfer request is input, amongst the plurality of transfer requests retained in the retaining unit, and generating the second judgment result depending on a comparison result of an added value and the first burst length, wherein the added value is obtained by adding an address in an address range amounting to 1 line of the first line buffers, amongst the addresses of the plurality of transfer requests input from the processing unit, and a size of the plurality of transfer requests input from the processing unit, and wherein the coupled command transfer unit computes an address after the coupling and a size after the coupling, corresponding to the transfer request after the coupling, based on the address and the size of the transfer request, the first flag, and the second flag retained in the second line buffers. 7 . The data transfer apparatus as claimed in claim 3 , wherein each of the second line buffers retains a coupling start address which is the address of the transfer request received first, amongst the transfer requests corresponding to the data retained in the corresponding one of the first line buffers, and the coupled command transfer unit converts the start address of the transfer request after the coupling into an address based on the coupling start address. 8 . The data transfer apparatus as claimed in claim 1 , wherein the first burst length is set to a size corresponding to a divisor of the column size of the memory. 9 . The data transfer apparatus as claimed in claim 4 , further comprising: a command selection circuit configured to output the transfer request input from the processing unit to one of the command transfer unit and an other command transfer unit, based on a coupling decision signal indicating whether coupling of the transfer requests is possible; the other command transfer unit including a third command queue that retains the transfer request input from the command section circuit, and configured to output the transfer request retained in the third command queue to the coupled command transfer unit; and a data selection circuit configured to output one of the data after the coupled retained in the buffer unit, and non-coupled data corresponding to the transfer request output to the other command transfer unit, based on a selection signal that is generated based on states of the buffer management unit and the third command queue. 10 . A data transfer method comprising: successively retaining a plurality of transfer requests input from a processing unit, and generating a write address based on a first judgment result indicating whether a plurality of data corresponding to the plurality of transfer requests input from the processing unit are continuous data, and a second judgment result indicating whether a size after coupling the plurality of data exceeds a first burst length less than o
for adaptation of a particular data processing system to different peripheral devices · CPC title
Contention resolution, i.e. resolving conflicts between simultaneous read and write operations · CPC title
Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations · CPC title
based on arbitration (arbitration in handling access to a common bus or bus system G06F13/36) · CPC title
Monitoring of intermediate fill level, i.e. with additional means for monitoring the fill level, e.g. half full flag, almost empty flag · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.