Patent US5297242A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5297242A Expired / Lapsed US ⏱️ 0.0 years remaining

DMA controller performing data transfer by 2-bus cycle transfer manner

Assignee: NEC Corp
•
Filing: 1990-12-13
•
Granted: 1994-03-22
•
Expires: 2010-12-13
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A Direct Memory Access (DMA) controller (1) of a 2-bus cycle transfer type executes a read cycle first to fetch data from a data source then internally rearranges or aligns the fetched data in accordance with a bus width and/or a storing address of a data destination unit and thereafter executes a write cycle to write the rearranged data in the data destination unit. The DMA controller includes a data register (106) having first and second fields (106-1 and 106-2). Data from the data source is temporarily stored in one of the first and second fields of the data register during the read cycle, and data in the other of the first and second fields is written to the data destination unit during the write cycle.

Inventors

  • 👤 Yoshiyuki Miki

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 17:14
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/14; G06F13/20; G06F13/28; G06F13/287

Claims Analysis

Total Claims: 7
Claim 1
Independent Claim 350 words
A Direct Memory Access (DMA) data transfer controller coupled through a system bus including a data bus to a data source unit and a data destination unit for transferring data from said data source unit to said data destination unit through said data bus, said data source unit being operatively coupled to said data destination unit through said system bus, said data source unit being accessed in L-byte units (L being a positive integer), said data destination unit being accessed in M-byte units (M being a positive integer different from said L) and said data bus having an N-byte length (N being a positive integer not less than one of said L and said M), said data transfer controller comprising: a data register operatively coupled to said data bus and including a plurality of storage areas, each of said storage areas having a one-byte length; accessing means operative coupled to said system bus and to said data register for performing a read bus cycle to read L-byte data from said data source coupled to said data bus and a write bus cycle to write M-byte data into said data destination unit coupled to said data bus; data input means operatively coupled to said data register and to said data bus and activated during said read bus cycle for operatively coupling said data bus to said data register; write pointer means operatively coupled to said data register and activated during said read bus cycle for simultaneously selecting L storage areas of said data register to thereby cause the selected L storage areas to be written with L-byte data read out from said data source unit; output means operatively coupled to said data register and activated during said write bus cycle for operatively coupling said data register to said data bus; and read pointer means operatively coupled to said data register and to said data bus and activated during said write bus cycle for simultaneously selecting M storage areas of said data register to thereby cause the selected M storage areas to supply M-byte data stored therein to said data destination unit.
Claim 2
Dependent Claim 350 words
A Direct Memory Access (DMA) data transfer controller coupled through a system bus including a data bus to a data source unit and a data destination unit for transferring data from said data source unit to said data destination unit through said data bus, said data source unit being operatively coupled to said data destination unit through said system bus, said data source unit being accessed in L-byte units (L being a positive integer), said data destination unit being accessed in M-byte units (M being a positive integer different from said L) and said data bus having an N-byte length (N being a positive integer not less than one of said L and said M), said data transfer controller comprising: a data register operatively coupled to said data bus and including a plurality of storage areas, each of said storage areas having a one-byte length; accessing means operative coupled to said system bus and to said data register for performing a read bus cycle to read L-byte data from said data source coupled to said data bus and a write bus cycle to write M-byte data into said data destination unit coupled to said data bus; data input means operatively coupled to said data register and to said data bus and activated during said read bus cycle for operatively coupling said data bus to said data register; write pointer means operatively coupled to said data register and activated during said read bus cycle for simultaneously selecting L storage areas of said data register to thereby cause the selected L storage areas to be written with L-byte data read out from said data source unit; output means operatively coupled to said data register and activated during said write bus cycle for operatively coupling said data register to said data bus; and read pointer means operatively coupled to said data register and to said data bus and activated during said write bus cycle for simultaneously selecting M storage areas of said data register to thereby cause the selected M storage areas to supply M-byte data stored therein to said data destination unit.
Claim 3
Dependent Claim 111 words
The DMA data transfer controller as claimed in claim 1, wherein said input means includes a read aligner operatively coupled to said data bus for receiving the L-byte data read out from said data source unit and for shifting the L-byte data such that byte locations of the shifted L-byte data correspond to locations of said selected L storage areas, and wherein said output means includes a write aligner operatively coupled to said data bus for receiving the M-byte data read out from said selected M storage areas and for shifting the M-byte data such that byte locations of the shifted M-byte data correspond to byte locations of said data bus.
Claim 4
Dependent Claim 319 words
A Direct Memory Access (DMA) data transfer controller coupled through a system bus including a data bus to a data source unit and a data destination unit for transferring data from said data source unit to said data destination unit, said data source unit being operatively coupled to said data destination unit through said system bus, said data source unit being accessed in L-byte units (L being a positive integer), said data destination unit being accessed in M-byte units (M being a positive integer larger than said L) and said data bus having an N-byte length (N being a positive integer not less than said M), said controller comprising: accessing means operatively coupled to said system bus for performing a read bus cycle to read L-byte data from said data source unit and a write bus cycle to write M-byte data into said data destination unit; a data register operatively coupled to said data bus and to said accessing means and having a plurality of storage areas, each of said storage areas having a one-byte length; a write pointer operatively coupled to said data bus and to said data register for simultaneously selecting L storage areas of said data register; and a read pointer means operatively coupled to said data bus and to said data register for simultaneously selecting M storage areas of said data register, said accessing means performing said read bus cycle a plurality of times consecutively with commanding said write pointer to select L storage areas of said data register each time said read bus cycle is performed until said data register stores M-byte data which are read out from said data source unit and thereafter said accessing means performing said write bus cycle at least once with commanding said read pointer to select M storage areas of said data register to write M-byte data read out from said data register into said data destination unit.
Claim 5
Dependent Claim 319 words
A Direct Memory Access (DMA) data transfer controller coupled through a system bus including a data bus to a data source unit and a data destination unit for transferring data from said data source unit to said data destination unit, said data source unit being operatively coupled to said data destination unit through said system bus, said data source unit being accessed in L-byte units (L being a positive integer), said data destination unit being accessed in M-byte units (M being a positive integer larger than said L) and said data bus having an N-byte length (N being a positive integer not less than said M), said controller comprising: accessing means operatively coupled to said system bus for performing a read bus cycle to read L-byte data from said data source unit and a write bus cycle to write M-byte data into said data destination unit; a data register operatively coupled to said data bus and to said accessing means and having a plurality of storage areas, each of said storage areas having a one-byte length; a write pointer operatively coupled to said data bus and to said data register for simultaneously selecting L storage areas of said data register; and a read pointer means operatively coupled to said data bus and to said data register for simultaneously selecting M storage areas of said data register, said accessing means performing said read bus cycle a plurality of times consecutively with commanding said write pointer to select L storage areas of said data register each time said read bus cycle is performed until said data register stores M-byte data which are read out from said data source unit and thereafter said accessing means performing said write bus cycle at least once with commanding said read pointer to select M storage areas of said data register to write M-byte data read out from said data register into said data destination unit.
Claim 6
Dependent Claim 304 words
A Direct Memory Access (DMA) data transfer controller coupled through a system bus including a data bus to a data source unit and a data destination unit for transferring data from said data source unit to said data destination unit, said data source unit being operatively coupled to said data destination unit through said system bus, said data source unit being accessed in L-byte units (L being a positive integer), said data destination unit being accessed in M-byte units (M being a positive integer larger than said L) and said data bus having an N-byte length (N being a positive integer not less than said L), said controller comprising: accessing means operatively coupled to said system bus for performing a read bus cycle to read L-byte data from said data source unit and a write bus cycle to write M-byte data into said data destination unit; a data register operatively coupled to said data bus and to said accessing means and having a plurality of storage areas, each of said storage areas having a one-byte length; a write pointer operatively coupled to said data register for simultaneously selecting L storage areas of said data register; and a read pointer means operatively coupled to said data register and to said data bus for simultaneously selecting M storage areas of said data register, said accessing means performing said read bus cycle at least once with commanding said write pointer to select L storage areas to write L-byte data into the selected L storage areas of said data register and thereafter said accessing means performing said write bus cycle a plurality of times consecutively with commanding said read pointer to select M storage areas each time said write bus cycle is performed to write L-byte data read out from said data register into said data destination unit.
Claim 7
Dependent Claim 304 words
A Direct Memory Access (DMA) data transfer controller coupled through a system bus including a data bus to a data source unit and a data destination unit for transferring data from said data source unit to said data destination unit, said data source unit being operatively coupled to said data destination unit through said system bus, said data source unit being accessed in L-byte units (L being a positive integer), said data destination unit being accessed in M-byte units (M being a positive integer larger than said L) and said data bus having an N-byte length (N being a positive integer not less than said L), said controller comprising: accessing means operatively coupled to said system bus for performing a read bus cycle to read L-byte data from said data source unit and a write bus cycle to write M-byte data into said data destination unit; a data register operatively coupled to said data bus and to said accessing means and having a plurality of storage areas, each of said storage areas having a one-byte length; a write pointer operatively coupled to said data register for simultaneously selecting L storage areas of said data register; and a read pointer means operatively coupled to said data register and to said data bus for simultaneously selecting M storage areas of said data register, said accessing means performing said read bus cycle at least once with commanding said write pointer to select L storage areas to write L-byte data into the selected L storage areas of said data register and thereafter said accessing means performing said write bus cycle a plurality of times consecutively with commanding said read pointer to select M storage areas each time said write bus cycle is performed to write L-byte data read out from said data register into said data destination unit.

References Cited (Backward Citations)

US4491909A Cited
US4598362A Cited
US4912632A Cited
US4933846A Cited
US4987529A Cited
US5214767A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1997-03-21 1997-09-20 1998-03-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2001-03-21 2001-09-20 2002-03-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2005-03-21 2005-09-20 2006-03-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag