Memory address generation for digital signal processing

US9529747B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9529747-B2
Application numberUS-201314012450-A
CountryUS
Kind codeB2
Filing dateAug 28, 2013
Priority dateAug 30, 2012
Publication dateDec 27, 2016
Grant dateDec 27, 2016

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.

Memory address generation for digital signal processing is described. In one example, a digital signal processing system-on-chip utilizes an on-chip memory space that is shared between functional blocks of the system. An on-chip DMA controller comprises an address generator that can generate sequences of read and write memory addresses for data items being transferred between the on-chip memory and a paged memory device, or internally within the system. The address generator is configurable and can generate non-linear sequences for the read and/or write addresses. This enables aspects of interleaving/deinterleaving operations to be performed as part of a data transfer between internal or paged memory. As a result, a dedicated memory for interleaving operations is not required. In further examples, the address generator can be configured to generate read and/or write addresses that take into account limitations of particular memory devices when performing interleaving, such as DRAM.

First claim

Opening claim text (preview).

The invention claimed is: 1. A digital signal processing system-on-chip, comprising: a first memory storing a plurality of data items arranged in a first sequence, each data item having an associated memory address on the first memory; at least one digital signal processor coupled to the first memory and arranged to read and write data directly to the first memory; and a direct memory access controller coupled to the first memory, and including a port to a paged memory device, and a configurable address generator arranged to compute a sequence of read addresses according to a selected one of a plurality of different read modes and to compute a sequence of write addresses according to a selected one of a plurality of different write modes; wherein the computed sequence of read addresses and the computed sequence of write addresses are combined such that the direct memory access controller is configured to transfer the plurality of data items directly from the first memory to the paged memory device using the computed sequence of read addresses and the computed sequence of write addresses such that the data items written to the paged memory device during the transfer are arranged in a second sequence that is different from the first sequence, and wherein a read mode is a pattern in which data items are read from memory in a single transaction and a write mode is a pattern in which data items are written to memory in a single transaction. 2. A digital signal processing system-on-chip according to claim 1 , wherein the selected one of the plurality of read modes is arranged to configure the address generator to cause the direct memory access controller to read the data items from a non-linear sequence of memory addresses on the first memory, and the selected one of the plurality of write modes is arranged to configure the address generator to cause the direct memory access controller to write the data items to a linear sequence of addresses on the paged memory device. 3. A digital signal processing system-on-chip according to claim 1 , wherein the selected one of the plurality of read modes is arranged to configure the address generator to cause the direct memory access controller to read the data items from a linear sequence of memory addresses on the first memory, and the selected one of the plurality of write modes is arranged to configure the address generator to cause the direct memory access controller to write the data items to a non-linear sequence of addresses on the paged memory device. 4. A digital signal processing system-on-chip according to claim 1 , wherein the selected one of the plurality of read modes is arranged to configure the address generator to cause the direct memory access controller to read the data items from a non-linear sequence of memory addresses on the first memory, and the selected one of the plurality of write modes is arranged to configure the address generator to cause the direct memory access controller to write the data items to a non-linear sequence of addresses on the paged memory device. 5. A digital signal processing system-on-chip according to claim 1 , wherein the direct memory access controller is further configured to transfer the plurality of data items directly from the paged memory device to the first memory, and the address generator is arranged to compute a further sequence of read addresses according to a further selected one of a plurality of read modes and a further selected one of a plurality of write modes, such that the data items written to the first memory during the transfer from the paged memory device to the first memory are arranged in a third sequence that is different from the first and second sequence. 6. A digital signal processing system-on-chip according to claim 1 , wherein the paged memory device is a dynamic random access memory. 7. A digital signal processing system-on-chip according to claim 1 , wherein the first memory is a static random access memory. 8. A digital signal processing system-on-chip according to claim 1 , further comprising a control processor arranged to execute a program configured to select the one of the plurality of read modes and the one of the plurality of write modes for use by the address generator and provide these selections to the address generator. 9. A digital signal processing system-on-chip according to claim 1 , wherein the digital signal processing system further comprises a plurality of hardware peripherals, each connected to the direct memory access controller and each configured to read data from the first memory via the direct memory access controller, perform one or more operations on the data, and write data to the first memory device via the direct memory access controller. 10. A digital signal processing system-on-chip according to claim 1 , wherein the plurality of data items in the first sequence are defined as being arranged as a grid having a plurality of rows and columns. 11. A digital signal processing system-on-chip according to claim 1 , wherein the plurality of data items in the first sequence are defined as being arranged as a grid of elements having a plurality of rows and columns, each element comprising a group of consecutive data items from the first sequence. 12. A digital signal processing system-on-chip according to claim 10 , wherein the selected one of the plurality of read modes and the selected one of the plurality of write modes together configure the address generator to manipulate the memory address of each data item such that the second sequence is based on a transpose of the grid. 13. A digital signal processing system-on-chip according to claim 10 , wherein the selected one of the plurality of read modes and the selected one of the plurality of write modes together configure the address generator to manipulate the memory address of each data item such that the second sequence is based on a transpose of the grid with a position shift applied to the elements of one or more columns or rows. 14. A digital signal processing system-on-chip according to claim 1 , wherein the selected one of the plurality of read modes and the selected one of the plurality of write modes together configure the address generator to manipulate the memory address associated with each data item during the transfer such that the second sequence is equivalent to at least a portion of a convolutional deinterleaving operation performed on the first sequence. 15. A method of performing an interleaving or deinterleaving operation in a digital signal processing system using a direct memory access controller comprising a configurable address generator, wherein the direct memory access controller is coupled to a memory storing a plurality of data items arranged in a first sequence, each data item having an associated address on the memory, the method comprising: selecting a combination of one of a plurality of different read modes and one of a plurality of different write modes for the address generator; computing, at the address generator, a sequence of memory read addresses according to the selected read mode, and a sequence of memory write addresses according to the selected write mode, such that there is a non-linear relationship between the read addresses and the corresponding write addresses; reading, using the direct memory access controller, the data item associated with the first address in the sequence of read addresses; writing, using the direct memory access controller, that data item to the first address in the sequence of write addresses; and repeating said reading and writing for each subsequent address in th

Assignees

Inventors

Classifications

  • for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories · CPC title

  • G06F13/28Primary

    using burst mode transfer, e.g. direct memory access {DMA}, cycle steal (G06F13/32 takes precedence) · CPC title

  • using page tables, e.g. page table structures · CPC title

  • G06F12/063Primary

    for I/O modules, e.g. memory mapped I/O (I/O protocol G06F13/42) · CPC title

  • Performance 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 US9529747B2 cover?
Memory address generation for digital signal processing is described. In one example, a digital signal processing system-on-chip utilizes an on-chip memory space that is shared between functional blocks of the system. An on-chip DMA controller comprises an address generator that can generate sequences of read and write memory addresses for data items being transferred between the on-chip memory…
Who is the assignee on this patent?
Imagination Tech Ltd
What technology area does this patent fall under?
Primary CPC classification G06F13/28. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 27 2016 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).