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

Adaptive device driver using controller hardware sub-element identifier

Assignee: Altera Corp
•
Filing: 1995-11-21
•
Granted: 1998-05-12
•
Expires: 2015-11-21
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A device driver architecture that couples an operating system to a computer interface of a controller device that includes a plurality of functional sub-elements. The device driver includes a plurality of operating system interface objects each presenting an operating system interface (OSI) to the operating system, a plurality of computer interface objects each providing for the generation of programming values to be applied to the computer interface to establish the operating mode of a respective predetermined sub-element of the controller device, and a device driver library of processing routines callable by each of the plurality of operating system interface objects to process data and generate calls to the plurality of computer interface objects in predetermined combinations. The device driver library enables the selection of an execution contexts within which to define the generation and application of the programming values to the computer interface. The state of the hardware interface is virtualized and maintained in discrete contexts, allowing for application specific, dynamic alteration of the state of the hardware interface through essentially context switching private to the device driver in response to selected operating system events.

Inventors

  • 👤 James A. Keller
  • 👤 Kevin J. Flory

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 20:22
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/10; G06F13/102

Claims Analysis

Total Claims: 13
Claim 1
Independent Claim 102 words
A controller, operable in conjunction with an adaptively configurable device driver, comprising: a) a plurality of sub-elements that cooperatively operate in support of a predetermined controller function, said plurality of sub-elements being provided together on a peripheral adapter coupleable to a peripheral bus of a computer system; b) a hardware identifier provided on said peripheral adapter and readable via said peripheral bus, said hardware identifier encoding predetermined respective specific identifications of said sub-elements, whereby an adaptively configurable device driver can specifically identify each of said sub-elements and dynamically adapt the configuration of said device driver to the specific plurality of said sub-elements.
Claim 2
Dependent Claim 102 words
A controller, operable in conjunction with an adaptively configurable device driver, comprising: a) a plurality of sub-elements that cooperatively operate in support of a predetermined controller function, said plurality of sub-elements being provided together on a peripheral adapter coupleable to a peripheral bus of a computer system; b) a hardware identifier provided on said peripheral adapter and readable via said peripheral bus, said hardware identifier encoding predetermined respective specific identifications of said sub-elements, whereby an adaptively configurable device driver can specifically identify each of said sub-elements and dynamically adapt the configuration of said device driver to the specific plurality of said sub-elements.
Claim 3
Dependent Claim 32 words
The controller of claim 1 wherein said hardware identifier is provided in a memory device located on said peripheral adapter and wherein said memory device is discretely addressable via said peripheral bus.
Claim 4
Dependent Claim 54 words
The controller of claim 1 or 2 wherein said hardware identifier provides for the storage of first predetermined data characterizing the implementation of a first predetermined one of said sub-elements where said first predetermined data characterizing said first predetermined one is otherwise indeterminable by said adaptively configurable device driver with respect to said controller.
Claim 5
Dependent Claim 28 words
The controller of claim 3 wherein each of said sub-elements is dynamically programmable through a register interface accessible by said adaptively configurable device driver via said peripheral bus.
Claim 6
Dependent Claim 51 words
The controller of claim 4 wherein said hardware identifier provides for the storage of second predetermined data characterizing the implementation of a second predetermined one of said sub-elements, said second predetermined data specifying that said adaptively configurable device driver independently determine the implementation of said second predetermined one of said sub-elements.
Claim 7
Dependent Claim 130 words
In a computer system utilizing an operating system to perform predetermined software functions and a device driver to perform predetermined hardware interface functions, a controller for performing a predetermined hardware function comprising; a) a plurality of functionally modular hardware elements that cooperatively interoperate to perform said predetermined hardware function; b) a hardware register interface supporting the coupling of said controller with said device driver, said hardware register interface providing access to said plurality of functionally modular hardware elements; c) a modular hardware identifier stored by said controller and accessible by said device driver, said modular hardware identifier storing data respectively identifying predetermined aspects of said plurality of functionally modular hardware elements, whereby said device driver can dynamically adapt to said predetermined aspects of said plurality of said modular hardware elements.
Claim 8
Dependent Claim 130 words
In a computer system utilizing an operating system to perform predetermined software functions and a device driver to perform predetermined hardware interface functions, a controller for performing a predetermined hardware function comprising; a) a plurality of functionally modular hardware elements that cooperatively interoperate to perform said predetermined hardware function; b) a hardware register interface supporting the coupling of said controller with said device driver, said hardware register interface providing access to said plurality of functionally modular hardware elements; c) a modular hardware identifier stored by said controller and accessible by said device driver, said modular hardware identifier storing data respectively identifying predetermined aspects of said plurality of functionally modular hardware elements, whereby said device driver can dynamically adapt to said predetermined aspects of said plurality of said modular hardware elements.
Claim 9
Dependent Claim 70 words
The controller of claim 6 wherein said plurality of functionally modular hardware elements are programmable through said hardware register interface by said device driver and wherein said device driver dynamically configures software modules coupled to said device driver to support the programming of said plurality of functionally modular hardware elements consistent with said predetermined aspects of said plurality of functionally modular hardware elements as determined from said modular hardware identifier.
Claim 10
Dependent Claim 44 words
The controller of claim 7 wherein said modular hardware identifier further includes flag data usable by said device driver to tailor the programming of said plurality of functionally modular hardware elements consistent with said predetermined aspects of said plurality of functionally modular hardware elements.
Claim 11
Dependent Claim 126 words
A dynamically configurable peripheral subsystem comprising: a) a peripheral controller including: i) a plurality of sub-elements that cooperatively operate in support of a predetermined controller function, said plurality of sub-elements being provided together on a peripheral adapter coupleable to a peripheral bus of a computer system; ii) a hardware identifier provided on said peripheral adapter and readable via said peripheral bus, said hardware identifier encoding predetermined respective specific identifications of said sub-elements; and b) an adaptively configurable device driver coupleable to said peripheral controller to read said hardware identifier, said adaptively configurable device driver including logic to establish and couple a plurality of hardware interface objects into said adaptively configurable device driver in predetermined correspondence with said plurality of sub-elements as determined from said hardware identifier.
Claim 12
Dependent Claim 126 words
A dynamically configurable peripheral subsystem comprising: a) a peripheral controller including: i) a plurality of sub-elements that cooperatively operate in support of a predetermined controller function, said plurality of sub-elements being provided together on a peripheral adapter coupleable to a peripheral bus of a computer system; ii) a hardware identifier provided on said peripheral adapter and readable via said peripheral bus, said hardware identifier encoding predetermined respective specific identifications of said sub-elements; and b) an adaptively configurable device driver coupleable to said peripheral controller to read said hardware identifier, said adaptively configurable device driver including logic to establish and couple a plurality of hardware interface objects into said adaptively configurable device driver in predetermined correspondence with said plurality of sub-elements as determined from said hardware identifier.
Claim 13
Dependent Claim 46 words
The dynamically configurable peripheral subsystem of claim 9 wherein each of said plurality of sub-elements are programmable and wherein said plurality of hardware interface objects established and coupled to said adaptively configurable device driver provide for the programming of respective ones of said plurality of sub-elements.

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag