← Back to Patent Explorer
US5748945A Expired / Lapsed US ⏱️ 0.0 years remaining

Method for slave DMA emulation on a computer system bus

Assignee: International Business Machines Corp
•
Filing: 1996-05-31
•
Granted: 1998-05-05
•
Expires: 2016-05-31
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Method for providing slave direct memory access (DMA) support on a computer system bus that does not support slave devices, such as the personal computer interconnect or "PCI" bus. Using the method, an adapter card or microprocessor with a local DMA controller can be operated as a busmaster and simulate a system DMA controller which would normally be used during slave DMA operations. Alternatively, the method allows a local DMA controller to work with an existing system DMA controller so that application software receives the correct status when polling registers in the system DMA controller. The method allows the system DMA controller to operate as if the system DMA controller is controlling DMA transfers. In this way device contention between the system DMA controller and the local DMA controller is avoided.

Inventors

  • 👤 Timothy C. Ng

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 13:54
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/14; G06F13/10; G06F13/105; G06F13/20; G06F13/28

Claims Analysis

Total Claims: 8
Claim 1
Independent Claim 138 words
A method of operating a local direct memory access (DMA) controller in full DMA mode, the local DMA controller being on an adapter card having emulation logic, the local DMA controller capable of full DMA emulation so that slave DMA function is provided when the adapter card is connected to a master-only computer system bus, the local DMA controller having connections for a system DMA controller connected to a master/slave computer system bus, the method comprising the steps of: receiving a word count and a starting address for a DMA data transfer; receiving the DMA transfer request from the emulation logic; performing a DMA transfer over the master-only computer system bus; updating internal status registers; notifying the emulation logic when the DMA transfer is complete; and receiving another DMA transfer request if more data needs to be transferred.
Claim 2
Independent Claim 138 words
A method of operating a local direct memory access (DMA) controller in full DMA mode, the local DMA controller being on an adapter card having emulation logic, the local DMA controller capable of full DMA emulation so that slave DMA function is provided when the adapter card is connected to a master-only computer system bus, the local DMA controller having connections for a system DMA controller connected to a master/slave computer system bus, the method comprising the steps of: receiving a word count and a starting address for a DMA data transfer; receiving the DMA transfer request from the emulation logic; performing a DMA transfer over the master-only computer system bus; updating internal status registers; notifying the emulation logic when the DMA transfer is complete; and receiving another DMA transfer request if more data needs to be transferred.
Claim 3
Independent Claim 210 words
A method of performing a DMA write by a local direct memory access (DMA) controller in slave DMA emulation mode, the local DMA controller being on an adapter card having emulation logic, the local DMA controller capable of full DMA emulation so that slave DMA function is provided when the adapter card is connected to a master-only computer system bus, the local DMA controller having connections for a system DMA controller connected to a master/slave computer system bus, the method comprising the steps of: monitoring the master-only computer system bus for DMA activity; latching DMA control information for a DMA transfer request; performing a DMA transfer of data from the emulation logic to the local DMA controller; writing a dummy address to the system DMA controller if the DMA transfer will not be directly monitored; requesting the system DMA controller to perform the DMA transfer on the master/slave computer system bus and receiving an acknowledgment from the system DMA controller; determining if the DMA transfer is compete on the master/slave computer system bus; performing the DMA transfer on the master-only bus; notifying the emulation logic that the DMA transfer is complete; and performing an additional DMA transfer if the full depth of the DMA transfer request has not been completed.
Claim 4
Independent Claim 210 words
A method of performing a DMA write by a local direct memory access (DMA) controller in slave DMA emulation mode, the local DMA controller being on an adapter card having emulation logic, the local DMA controller capable of full DMA emulation so that slave DMA function is provided when the adapter card is connected to a master-only computer system bus, the local DMA controller having connections for a system DMA controller connected to a master/slave computer system bus, the method comprising the steps of: monitoring the master-only computer system bus for DMA activity; latching DMA control information for a DMA transfer request; performing a DMA transfer of data from the emulation logic to the local DMA controller; writing a dummy address to the system DMA controller if the DMA transfer will not be directly monitored; requesting the system DMA controller to perform the DMA transfer on the master/slave computer system bus and receiving an acknowledgment from the system DMA controller; determining if the DMA transfer is compete on the master/slave computer system bus; performing the DMA transfer on the master-only bus; notifying the emulation logic that the DMA transfer is complete; and performing an additional DMA transfer if the full depth of the DMA transfer request has not been completed.
Claim 5
Dependent Claim 17 words
The method of claim 2 wherein the determining step is accomplished by directly monitoring the DMA transfer.
Claim 6
Dependent Claim 20 words
The method of claim 2 wherein the determining step is accomplished by receiving an acknowledgment from the system DMA controller.
Claim 7
Independent Claim 187 words
A method of performing a DMA read by local direct memory access (DMA) controller in slave DMA emulation mode, the local DMA controller being on an adapter card having emulation logic, the local DMA controller capable of full DMA emulation so that slave DMA function is provided when the adapter card is connected to a master-only computer system bus, the local DMA controller having connections for a system DMA controller connected to a master/slave computer system bus, the method comprising the steps of: monitoring the master-only computer system bus for DMA activity; latching the DMA control information for a DMA transfer request; performing a DMA transfer to the local DMA controller on the master-only computer system bus; requesting the system DMA controller to perform the DMA transfer on the master/slave computer system bus and receiving an acknowledgment from the system DMA controller; waiting for the system DMA controller to complete the DMA transfer; performing a DMA transfer of data from the local DMA controller to the emulation logic; and performing an additional data transfer if the full depth of the DMA transfer request has not been completed.
Claim 8
Independent Claim 187 words
A method of performing a DMA read by local direct memory access (DMA) controller in slave DMA emulation mode, the local DMA controller being on an adapter card having emulation logic, the local DMA controller capable of full DMA emulation so that slave DMA function is provided when the adapter card is connected to a master-only computer system bus, the local DMA controller having connections for a system DMA controller connected to a master/slave computer system bus, the method comprising the steps of: monitoring the master-only computer system bus for DMA activity; latching the DMA control information for a DMA transfer request; performing a DMA transfer to the local DMA controller on the master-only computer system bus; requesting the system DMA controller to perform the DMA transfer on the master/slave computer system bus and receiving an acknowledgment from the system DMA controller; waiting for the system DMA controller to complete the DMA transfer; performing a DMA transfer of data from the local DMA controller to the emulation logic; and performing an additional data transfer if the full depth of the DMA transfer request has not been completed.

References Cited (Backward Citations)

US5335329A Cited
US5450551A Cited
US5598576A Cited
US5590377A Cited
US5668957A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-05-04 2001-11-03 2002-05-05 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-05-04 2005-11-03 2006-05-05 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-05-04 2009-11-03 2010-05-05 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag