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

System using descriptor and having hardware state machine coupled to DMA for implementing peripheral device bus mastering via USB controller or IrDA controller

Assignee: STMicroelectronics International NV
•
Filing: 1996-04-08
•
Granted: 1998-12-01
•
Expires: 2016-04-08
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention is a desktop personal computer (PC) system having peripheral device bus mastering. The system has a Direct Memory Access (DMA) controller for transferring data to and from the memory of the desktop PC system. A hardware state machine is used for programming the DMA controller, generating and sending command signals, and receiving completion status after the transfer of data is complete. A bus controller is used for implementing a memory data transfer request from the DMA controller means and said hardware state machine means. A device controller, either a Universal Serial Bus (USB) controller or an Infrared Data Association (IrDA) controller, is used for receiving and responding to the command signals from the hardware state machine means, transferring data to and from the DMA controller means, and generating and returning a completion status to the hardware state machine means after the transfer of data is complete.

Inventors

  • 👤 Franklyn H. Story
  • 👤 David R. Evoy
  • 👤 Peter Chambers
  • 👤 Lonnie Goff

Bibliographic Details

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

Claims Analysis

Total Claims: 24
Claim 1
Independent Claim 233 words
A system for implementing peripheral device bus mastering in a desktop personal computer (PC) system comprising, in combination: desktop PC system comprising: Direct Memory Access (DMA) controller means for transferring data to and from memory of said desktop PC system; hardware state machine means coupled to said DMA controller means for programming said DMA controller means, generating and sending command signals, and receiving completion status after transfer of data is complete; descriptor means stored in said memory of said desktop PC system for describing each data transfer that said hardware state machine means initiates, controls, and completes; register means stored within said hardware state machine for storing address information of said descriptor means; bus controller means coupled to said DMA controller means and said hardware state machine means for implementing a memory data transfer request from said DMA controller means and said hardware state machine means; and Universal Serial Bus (USB) controller means coupled to said DMA controller means and said hardware state machine means for receiving and responding to said command signals from said hardware state machine means, transferring said data to and from said DMA controller means, and generating and returning said completion status to said hardware state machine means after said transfer of data is complete, said USB controller means further being coupled to peripheral devices wherein said USB controller means interfaces with said peripheral devices over a serial bus.
Claim 2
Independent Claim 233 words
A system for implementing peripheral device bus mastering in a desktop personal computer (PC) system comprising, in combination: desktop PC system comprising: Direct Memory Access (DMA) controller means for transferring data to and from memory of said desktop PC system; hardware state machine means coupled to said DMA controller means for programming said DMA controller means, generating and sending command signals, and receiving completion status after transfer of data is complete; descriptor means stored in said memory of said desktop PC system for describing each data transfer that said hardware state machine means initiates, controls, and completes; register means stored within said hardware state machine for storing address information of said descriptor means; bus controller means coupled to said DMA controller means and said hardware state machine means for implementing a memory data transfer request from said DMA controller means and said hardware state machine means; and Universal Serial Bus (USB) controller means coupled to said DMA controller means and said hardware state machine means for receiving and responding to said command signals from said hardware state machine means, transferring said data to and from said DMA controller means, and generating and returning said completion status to said hardware state machine means after said transfer of data is complete, said USB controller means further being coupled to peripheral devices wherein said USB controller means interfaces with said peripheral devices over a serial bus.
Claim 3
Dependent Claim 35 words
A system for implementing peripheral device bus mastering in accordance with claim 1 wherein functionality of said hardware state machine means is provided by a host Central Processing Unit (CPU) of said desktop PC system.
Claim 4
Dependent Claim 26 words
A system for implementing peripheral device bus mastering in accordance with claim 1 wherein said DMA controller means is implemented as a distributed DMA target slice.
Claim 5
Dependent Claim 30 words
A system for implementing peripheral device bus mastering in accordance with claim 1 wherein each of said peripheral devices appear to said system as a separate and independent data path.
Claim 6
Dependent Claim 59 words
A system for implementing peripheral device bus mastering in accordance with claim 4 wherein each said separate and independent data path is represented by a separate one of said descriptor means within a list of said descriptor means, each said separate one of said descriptor means being configured independently to reflect characteristics of an individual peripheral device's data path.
Claim 7
Dependent Claim 56 words
A system for implementing peripheral device bus mastering in accordance with claim 4 wherein each said separate and independent data path is represented by a set of said descriptor means within a list of said descriptor means, each set of said descriptor means being configured independently to reflect characteristics of an individual peripheral device's data path.
Claim 8
Independent Claim 244 words
A system for implementing peripheral device bus mastering in a desktop personal computer (PC) system comprising, in combination: desktop PC system comprising: Direct Memory Access (DMA) controller means for transferring data to and from memory of said desktop PC system; hardware state machine means coupled to said DMA controller means for programming said DMA controller means, generating and sending command signals, and receiving completion status after transfer of data is complete; descriptor means stored in said memory of said desktop PC system for describing each data transfer that said hardware state machine means initiates, controls, and completes; register means stored within said hardware state machine for storing address information of said descriptor means; bus controller means coupled to said DMA controller means and said hardware state machine means for implementing a memory data transfer request from said DMA controller means and said hardware state machine means; and Infrared Data Association (IrDA) controller means coupled to said DMA controller means and said hardware state machine means for receiving and responding to said command signals from said hardware state machine means, transferring said data to and from said DMA controller means, and generating and returning said completion status to said hardware state machine means after said transfer of data is complete, said IrDA controller means further being coupled to peripheral devices wherein said IrDA controller means is managed by a packet protocol that requires the management of a number of separate data packets of varying sizes.
Claim 9
Independent Claim 244 words
A system for implementing peripheral device bus mastering in a desktop personal computer (PC) system comprising, in combination: desktop PC system comprising: Direct Memory Access (DMA) controller means for transferring data to and from memory of said desktop PC system; hardware state machine means coupled to said DMA controller means for programming said DMA controller means, generating and sending command signals, and receiving completion status after transfer of data is complete; descriptor means stored in said memory of said desktop PC system for describing each data transfer that said hardware state machine means initiates, controls, and completes; register means stored within said hardware state machine for storing address information of said descriptor means; bus controller means coupled to said DMA controller means and said hardware state machine means for implementing a memory data transfer request from said DMA controller means and said hardware state machine means; and Infrared Data Association (IrDA) controller means coupled to said DMA controller means and said hardware state machine means for receiving and responding to said command signals from said hardware state machine means, transferring said data to and from said DMA controller means, and generating and returning said completion status to said hardware state machine means after said transfer of data is complete, said IrDA controller means further being coupled to peripheral devices wherein said IrDA controller means is managed by a packet protocol that requires the management of a number of separate data packets of varying sizes.
Claim 10
Dependent Claim 35 words
A system for implementing peripheral device bus mastering in accordance with claim 7 wherein functionality of said hardware state machine means is provided by a host Central Processing Unit (CPU) of said desktop PC system.
Claim 11
Dependent Claim 26 words
A system for implementing peripheral device bus mastering in accordance with claim 7 wherein said DMA controller means is implemented as a distributed DMA target slice.
Claim 12
Dependent Claim 27 words
A system for implementing peripheral device bus mastering in accordance with claim 7 wherein said separate data packets are transferred to and from said IrDA controller means.
Claim 13
Independent Claim 247 words
A method for implementing peripheral device bus mastering in a desktop personal computer (PC) system comprising the steps of: providing a desktop PC system; providing Direct Memory Access (DMA) controller means coupled to said desktop PC system for transferring data to and from memory of said desktop PC system; providing hardware state machine means coupled to said DMA controller means for programming said DMA controller means, generating and sending command signals, and receiving completion status after transfer of data is complete; providing descriptor means stored in said memory of said desktop PC system for describing each data transfer that said hardware state machine means initiates, controls, and completes; providing register means stored within said hardware state machine for storing address information of said descriptor means; providing bus controller means coupled to said DMA controller means and said hardware state machine means for implementing a memory data transfer request from said DMA controller means and said hardware state machine means; and providing Universal Serial Bus (USB) controller means coupled to said DMA controller means and said hardware state machine means for receiving and responding to said command signals from said hardware state machine means, transferring said data to and from said DMA controller means, and generating and returning said completion status to said hardware state machine means after said transfer of data is complete, said USB controller means further being coupled to peripheral devices wherein said USB controller means interfaces with said peripheral devices over a serial bus.
Claim 14
Independent Claim 247 words
A method for implementing peripheral device bus mastering in a desktop personal computer (PC) system comprising the steps of: providing a desktop PC system; providing Direct Memory Access (DMA) controller means coupled to said desktop PC system for transferring data to and from memory of said desktop PC system; providing hardware state machine means coupled to said DMA controller means for programming said DMA controller means, generating and sending command signals, and receiving completion status after transfer of data is complete; providing descriptor means stored in said memory of said desktop PC system for describing each data transfer that said hardware state machine means initiates, controls, and completes; providing register means stored within said hardware state machine for storing address information of said descriptor means; providing bus controller means coupled to said DMA controller means and said hardware state machine means for implementing a memory data transfer request from said DMA controller means and said hardware state machine means; and providing Universal Serial Bus (USB) controller means coupled to said DMA controller means and said hardware state machine means for receiving and responding to said command signals from said hardware state machine means, transferring said data to and from said DMA controller means, and generating and returning said completion status to said hardware state machine means after said transfer of data is complete, said USB controller means further being coupled to peripheral devices wherein said USB controller means interfaces with said peripheral devices over a serial bus.
Claim 15
Dependent Claim 47 words
The method of claim 11 wherein said step of providing hardware state machine means further comprises the step of providing a hardware state machine means wherein functionality of said hardware state machine means is provided by a host Central Processing Unit (CPU) of said desktop PC system.
Claim 16
Dependent Claim 29 words
The method of claim 11 wherein said step of providing DMA controller means further comprises the step of implementing said DMA controller means as a distributed DMA target slice.
Claim 17
Dependent Claim 31 words
The method of claim 11 further comprising the step of providing USB controller means wherein each of said peripheral devices appear to said system as a separate and independent data path.
Claim 18
Dependent Claim 65 words
The method of claim 14 further comprising the steps of: providing separate and independent data paths wherein each of said separate and independent data paths is represented by a separate one of said descriptor means within a list of said descriptor means; and configuring each of said separate one of said descriptor means being to independently reflect characteristics of an individual peripheral device's data path.
Claim 19
Dependent Claim 61 words
The method of claim 14 further comprising the steps of: providing separate and independent data paths wherein each of said separate and independent data paths is represented by a set of said descriptor means within a list of said descriptor means; and configuring each of said set of descriptor means to independently reflect characteristics of an individual peripheral device's data path.
Claim 20
Independent Claim 258 words
A method for implementing peripheral device bus mastering in a desktop personal computer (PC) system comprising the steps of: providing a desktop PC system; providing Direct Memory Access (DMA) controller means coupled to said desktop PC system for transferring data to and from memory of said desktop PC system; providing hardware state machine means coupled to said DMA controller means for programming said DMA controller means, generating and sending command signals, and receiving completion status after transfer of data is complete; providing descriptor means stored in said memory of said desktop PC system for describing each data transfer that said hardware state machine means initiates, controls, and completes; providing register means stored within said hardware state machine for storing address information of said descriptor means; providing bus controller means coupled to said DMA controller means and said hardware state machine means for implementing a memory data transfer request from said DMA controller means and said hardware state machine means; and providing Infrared Data Association (IrDA) controller means coupled to said DMA controller means and said hardware state machine means for receiving and responding to said command signals from said hardware state machine means, transferring said data to and from said DMA controller means, and generating and returning said completion status to said hardware state machine means after said transfer of data is complete, said IrDA controller means further being coupled to peripheral devices wherein said IrDA controller means is managed by a packet protocol that requires the management of a number of separate data packets of varying sizes.
Claim 21
Independent Claim 258 words
A method for implementing peripheral device bus mastering in a desktop personal computer (PC) system comprising the steps of: providing a desktop PC system; providing Direct Memory Access (DMA) controller means coupled to said desktop PC system for transferring data to and from memory of said desktop PC system; providing hardware state machine means coupled to said DMA controller means for programming said DMA controller means, generating and sending command signals, and receiving completion status after transfer of data is complete; providing descriptor means stored in said memory of said desktop PC system for describing each data transfer that said hardware state machine means initiates, controls, and completes; providing register means stored within said hardware state machine for storing address information of said descriptor means; providing bus controller means coupled to said DMA controller means and said hardware state machine means for implementing a memory data transfer request from said DMA controller means and said hardware state machine means; and providing Infrared Data Association (IrDA) controller means coupled to said DMA controller means and said hardware state machine means for receiving and responding to said command signals from said hardware state machine means, transferring said data to and from said DMA controller means, and generating and returning said completion status to said hardware state machine means after said transfer of data is complete, said IrDA controller means further being coupled to peripheral devices wherein said IrDA controller means is managed by a packet protocol that requires the management of a number of separate data packets of varying sizes.
Claim 22
Dependent Claim 47 words
The method of claim 17 wherein said step of providing hardware state machine means further comprises the step of providing a hardware state machine means wherein functionality of said hardware state machine means is provided by a host Central Processing Unit (CPU) of said desktop PC system.
Claim 23
Dependent Claim 28 words
The method of claim 17 wherein said step of providing DMA controller means further comprises the step of implementing said DMA controller as a distributed DMA target slice.
Claim 24
Dependent Claim 37 words
The method of claim 17 wherein said step of providing IrDA controller means further comprises the step of providing IrDA controller means that are able to transfer separate data packets to and from said IrDA controller means.

References Cited (Backward Citations)

US5287457A Cited
US5325535A Cited
US5265211A Cited
US5454081A Cited
US5469548A Cited
US5450551A Cited
US5619728A Cited
US5542053A Cited
US5621902A Cited
US5613162A Cited
US5590377A Cited

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag