US6567866B1 - Selecting multiple functions using configuration mechanism - Google Patents

Selecting multiple functions using configuration mechanism Download PDF

Info

Publication number
US6567866B1
US6567866B1 US09/475,533 US47553399A US6567866B1 US 6567866 B1 US6567866 B1 US 6567866B1 US 47553399 A US47553399 A US 47553399A US 6567866 B1 US6567866 B1 US 6567866B1
Authority
US
United States
Prior art keywords
multiplexer
pin
functionalities
output
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
US09/475,533
Inventor
David I. Poisner
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Priority to US09/475,533 priority Critical patent/US6567866B1/en
Assigned to INTEL CORPORATION reassignment INTEL CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: POISNER, DAVID I.
Application granted granted Critical
Publication of US6567866B1 publication Critical patent/US6567866B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/387Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system

Definitions

  • This invention relates to microprocessors.
  • the invention relates to multifunction signals.
  • PCI Peripheral Component Interconnect
  • ISA Industry Standard Architecture
  • the PCI specification is provided by the Intel PCI Local Bus Specification Revision 2.2 published in February 1999.
  • the PCI bus is a high performance bus that is intended as an interconnect mechanism between highly integrated peripheral controller components, peripheral add-in boards, and processor/memory subsystems.
  • the ISA bus is a popular bus for lower bandwidth devices or peripheral components.
  • Many platforms provide bus architectures that incorporate both types of bus. Interfacing devices, such as PCI-to-ISA bridge, exist to allow interfacing between the two buses.
  • a peripheral device may have interface to both buses.
  • a peripheral device or processor provides functionalities that are flexible to a variety of personal computer (PC) manufacturers.
  • Traditional techniques provide the different functionalities in different and separate pins. For example, a signal or pin is dedicated for one platform and another signal or pin is dedicated for another platform. This technique has a number of disadvantages. First, separate signals or pins increase pin count, resulting in complexity in packaging. Second, it reduces flexibility for PC manufacturers when the device or processor is integrated in different platforms.
  • the present invention is a method and apparatus to provide multifunction to a device.
  • a selector selects one of first and second functionalities based on a control setting. The selected one of the first and second functionalities is accessible at a pin of the device.
  • a configuration mechanism is coupled to the selector to provide the control setting.
  • FIG. 1 is a diagram illustrating a computer system in which one embodiment of the invention can be practiced.
  • FIG. 2 is a diagram illustrating a multifunction circuit according to one embodiment of the invention.
  • FIG. 3A is a diagram illustrating a configuration register according to one embodiment of the invention.
  • FIG. 3B is a diagram illustrating a strap according to one embodiment of the invention.
  • FIG. 4 is a flowchart illustrating a process to provide multifunction to a device according to one embodiment of the invention.
  • the present invention is a method and apparatus to provide multifunction to a device.
  • a selector selects one of first and second functionalities based on a control setting. The selected one of the first and second functionalities is accessible at a pin of the device.
  • a configuration mechanism is coupled to the selector to provide the control setting.
  • the pin is one of an output pin and an input pin.
  • the selector is a multiplexer.
  • the selector is a de-multiplexer.
  • the multiplexer has first and second multiplexer inputs corresponding to the first and second functionalities, respectively, and a multiplexer output corresponding to the output pin.
  • the multiplexer transfers one of the first and second multiplexer inputs to the multiplexer output based on the control setting.
  • the de-multiplexer has first and second de-multiplexer outputs corresponding to the first and second functionalities, respectively, and a de-multiplexer input corresponding to the input pin.
  • the de-multiplexer transfers the de-multiplexer input to one of the first and second de-multiplexer outputs based on the control setting.
  • the configuration mechanism may be implemented by a configuration field in a configuration register or a strapping connection.
  • the configuration field is programmable by an initialization procedure or by a Basic Input/Output System (BIOS) firmware.
  • BIOS Basic Input/Output System
  • the strapping connection is set by an external connection to a logic level.
  • the first functionality is one of a peripheral component interconnect (PCI) bus request and grant
  • the second functionality is one of a PC/PCI direct memory access (DMA) request and grant.
  • PCI peripheral component interconnect
  • DMA direct memory access
  • the advantages of the multifunction circuit include saving in pin-count, increased board design flexibility, and novel multifunction usage.
  • FIG. 1 is a diagram illustrating a computer system 100 in which one embodiment of the invention can be practiced.
  • the computer system 100 includes N processors 105 1 through 105 N , a host bus 110 , a host bridge chipset 120 , a system memory 130 , a primary PCI bus # 0 155 , K PCI slots 160 1 to 160 K , a PCI-to-ISA bridge 170 , mass storage devices 172 , Input/Output (I/O) ports 174 , a multifunction device 176 , an ISA bus 180 , and ISA slots 185 1 to 185 M .
  • N processors 105 1 through 105 N
  • the computer system 100 includes N processors 105 1 through 105 N , a host bus 110 , a host bridge chipset 120 , a system memory 130 , a primary PCI bus # 0 155 , K PCI slots 160 1 to 160 K , a PCI-to-ISA bridge 170 , mass storage devices 172
  • Each of the processors 105 1 to 105 N represents a central processing unit of any type of architecture, such as complex instruction set computers (CISC), reduced instruction set computers (RISC), very long instruction word (VLIW), or hybrid architecture.
  • CISC complex instruction set computers
  • RISC reduced instruction set computers
  • VLIW very long instruction word
  • the invention could be implemented in a multi-processor or single processor computer system.
  • the host bridge chipset 120 includes a number of interface circuits to allow the host processors 105 1 to 105 N access to the system memory 130 , the graphics processor 140 , and the PCI bus 155 .
  • the system memory 130 represents one or more mechanisms for storing information.
  • the system memory 130 may include non-volatile or volatile memories. Examples of these memories include flash memory, read only memory (ROM), or random access memory (RAM).
  • the system memory 130 is loaded with an operating system (OS) 131 , and other programs and data 138 .
  • OS operating system
  • the system memory 130 preferably contains additional software (not shown), which is not necessary to understanding the invention.
  • the PCI bus 155 may be a primary or a secondary bus in the system.
  • the PCI slots 160 1 to 160 K provide interfaces to PCI devices. Examples of PCI devices include the network interface and the media interface.
  • the network interface connects to communication channel such as the Internet.
  • the Internet provides access to on-line service providers, Web browsers, and other network channels.
  • the media interface provides access to audio and video devices.
  • the PCI-to-ISA bridge 170 provides access to the ISA bus 180 , mass storage devices 172 , and I/O ports 174 .
  • the PCI-to-ISA bridge 170 provides interface between the PCI bus 155 and the ISA bus 180 .
  • An example of the PCI-to-ISA bridge 170 is the Intel 82380AB, manufactured by Intel Corporation.
  • the 82380AB device specification is described in the data sheet “Intel 380FB PCISET: 82380AB Mobile PCI-to-ISA bridge (MISA)”, published by Intel Corporation, 1997.
  • the mass storage devices 172 include CD ROM, floppy diskettes, and hard drives.
  • the peripheral device 176 has signal pins with multiple functionalities.
  • the peripheral device 176 has a multifunction circuit 178 to provide multifunction to the signal pins of the peripheral device 176 .
  • the device 176 has a direct memory access (DMA) Request (REQ#) and Acknowledgment (ACK#) pair configured to interface to the PCI-TO-ISA bridge 170 .
  • the peripheral device 176 can also be configured to interface to the PCI bus 155 using a control setting.
  • the ISA bus 180 has a number of ISA slots 185 1 , to 185 M to interface to ISA devices. Examples of ISA devices include data entry devices (e.g., keyboard, mouse), printers, etc.
  • FIG. 2 is a diagram illustrating a multifunction circuit 178 according to one embodiment of the invention.
  • the multifunction circuit 178 includes an output selector 210 , an input selector 220 , and a configuration mechanism 230 .
  • the output selector 210 selects one of a first output functionality and a second output functionality and transfers the selected functionality to the output signal pin.
  • the output selector 210 is a multiplexer.
  • the first output functionality is a PCI request (REQ#)
  • the second output fucntionality is a PC/PCI DMA request (REQ#).
  • the output signal pin has a dual function corresponding to the two output functionalities, namely, PCI REQ# and PC/PCI DMA REQ#.
  • the output selector 210 is controlled by a control setting provided by the configuration mechanism 230 .
  • the input selector 220 transfers the input signal pin to one of first input functionality and second input functionality.
  • the input selector 220 is a demultiplexer with appropriate signal gating circuitry and/or buffering.
  • the first input functionality is a PCI grant (GNT#) and the second input functionality is a PC/PCI DMA acknowledgment (ACK#).
  • the input signal pin has a dual function corresponding to the two input functionalities, namely, PCI GNT# and PC/PCI DMA ACK#.
  • the input selector 220 is controlled by a control setting provided by the configuration mechanism 230 .
  • the configuration mechanism 230 generates the control setting to control the selection of the functionalities based on the desired configuration of the device 176 (FIG. 1) used in a particular platform.
  • the implementation of the configuration mechanism 230 is shown in FIGS. 3A and 3B.
  • the multifunction circuit 178 provides multiple functions to the signal pin pair PCI REQ#/PC-PCI DMA REQ# and PCI GNT#/PC-PCI DMA ACK#.
  • the multifunction circuit 178 can provide more than two functionalities to more than two signal pins.
  • the two signal pairs have similar functionalities and electrical characteristics and therefore are easily integrated into a single device. This allows flexibility for a PC manufacturer to incorporate the device into different platforms. For example, the PC manufacturer may use the pair of signals to allow for an additional PCI bus master or for a PCI DMA device.
  • the device can be dynamically configurable by configuring the configuration mechanism 230 accordingly. In this application, the device can perform a DMA request if it is emulating an ISA DMA device, or to perform standard PCI bus master requests if it is operating as an advanced bus master.
  • FIG. 3A is a diagram illustrating a configuration register to implement the configuration mechanism 230 shown in FIG. 2 according to one embodiment of the invention.
  • the configuration mechanism 230 includes a configuration register 310 .
  • the configuration register 310 is a register containing configuration fields.
  • One of the configuration fields is a multifunction configuration field 312 .
  • the multifunction configuration field 312 provides the control setting to the selectors 210 and 220 shown in FIG. 2 .
  • the configuration field 312 is reduced to a configuration bit.
  • the configuration field 312 is programmable by software.
  • the software may be a piece of code as part of an initialization or set-up procedure or routine provided by the manufacturer.
  • the configuration software may also be part of a Basic Input/Output System (BIOS) residing in a boot-up firmware.
  • BIOS Basic Input/Output System
  • FIG. 3B is a diagram illustrating a strap to implement the configuration mechanism 230 shown in FIG. 2 according to one embodiment of the invention.
  • the control setting is available as an external pin that can be strapped into one of two logic levels.
  • the logic levels include a low level, corresponding to the ground (GND) level, and a high level, corresponding to the supply (VCC) level.
  • the strap can be implemented by a jumper connecting the control setting pin to one of the logic levels.
  • the strap can be provided by a programmable control bit from a programmable register.
  • FIG. 4 is a flowchart illustrating a process 400 to provide multifunction to a device according to one embodiment of the invention.
  • the process 400 determines if the first functionality is desired (Block 410 ). If so, the process 400 sets the control setting to a first logic level using the configuration mechanism shown in FIG. 3A or 3 B (Block 420 ). Otherwise, the process 400 sets the control setting to a second logic level using the configuration mechanism shown in FIG. 3A or 3 B (Block 430 ).
  • the process 400 selects one of the first and second functionalities based on the control setting as set by the configuration mechanism (Block 440 ). The process 400 is then terminated.

Abstract

The present invention is a method and apparatus to provide multifunction to a device. A selector selects one of first and second functionalities based on a control setting. The selected one of the first and second functionalities is accessible at a pin of the device. A configuration mechanism is coupled to the selector to provide the control setting.

Description

BACKGROUND
1. Field of the Invention
This invention relates to microprocessors. In particular, the invention relates to multifunction signals.
2. Description of Related Art
As demands for advanced features of microprocessor systems increase, system manufacturers face a challenging task to integrate as many functionalities as possible with lowest cost and highest performance. One of the common problems of system manufacturers is the need for flexibility in integrating devices into several platforms or environments.
Popular platforms or bus architectures include Peripheral Component Interconnect (PCI) and Industry Standard Architecture (ISA) buses. The PCI specification is provided by the Intel PCI Local Bus Specification Revision 2.2 published in February 1999. The PCI bus is a high performance bus that is intended as an interconnect mechanism between highly integrated peripheral controller components, peripheral add-in boards, and processor/memory subsystems. The ISA bus is a popular bus for lower bandwidth devices or peripheral components. Many platforms provide bus architectures that incorporate both types of bus. Interfacing devices, such as PCI-to-ISA bridge, exist to allow interfacing between the two buses. A peripheral device may have interface to both buses.
It is preferable that a peripheral device or processor provides functionalities that are flexible to a variety of personal computer (PC) manufacturers. Traditional techniques provide the different functionalities in different and separate pins. For example, a signal or pin is dedicated for one platform and another signal or pin is dedicated for another platform. This technique has a number of disadvantages. First, separate signals or pins increase pin count, resulting in complexity in packaging. Second, it reduces flexibility for PC manufacturers when the device or processor is integrated in different platforms.
Therefore, there is a need to have a multifunction functionality that is easy to use and flexible for PC manufacturers.
SUMMARY
The present invention is a method and apparatus to provide multifunction to a device. A selector selects one of first and second functionalities based on a control setting. The selected one of the first and second functionalities is accessible at a pin of the device. A configuration mechanism is coupled to the selector to provide the control setting.
BRIEF DESCRIPTION OF THE DRAWINGS
The features and advantages of the present invention will become apparent from the following detailed description of the present invention in which:
FIG. 1 is a diagram illustrating a computer system in which one embodiment of the invention can be practiced.
FIG. 2 is a diagram illustrating a multifunction circuit according to one embodiment of the invention.
FIG. 3A is a diagram illustrating a configuration register according to one embodiment of the invention.
FIG. 3B is a diagram illustrating a strap according to one embodiment of the invention.
FIG. 4 is a flowchart illustrating a process to provide multifunction to a device according to one embodiment of the invention.
DESCRIPTION
The present invention is a method and apparatus to provide multifunction to a device. A selector selects one of first and second functionalities based on a control setting. The selected one of the first and second functionalities is accessible at a pin of the device. A configuration mechanism is coupled to the selector to provide the control setting.
The pin is one of an output pin and an input pin. When the pin is an output pin, the selector is a multiplexer. When the pin is an input pin, the selector is a de-multiplexer. The multiplexer has first and second multiplexer inputs corresponding to the first and second functionalities, respectively, and a multiplexer output corresponding to the output pin. The multiplexer transfers one of the first and second multiplexer inputs to the multiplexer output based on the control setting. The de-multiplexer has first and second de-multiplexer outputs corresponding to the first and second functionalities, respectively, and a de-multiplexer input corresponding to the input pin. The de-multiplexer transfers the de-multiplexer input to one of the first and second de-multiplexer outputs based on the control setting.
The configuration mechanism may be implemented by a configuration field in a configuration register or a strapping connection. The configuration field is programmable by an initialization procedure or by a Basic Input/Output System (BIOS) firmware. The strapping connection is set by an external connection to a logic level.
In one embodiment, the first functionality is one of a peripheral component interconnect (PCI) bus request and grant, and the second functionality is one of a PC/PCI direct memory access (DMA) request and grant.
The advantages of the multifunction circuit include saving in pin-count, increased board design flexibility, and novel multifunction usage.
In the following description, for purposes of explanation, numerous details are set forth in order to provide a thorough understanding of the present invention. However, it will be apparent to one skilled in the art that these specific details are not required in order to practice the present invention. In other instances, well-known electrical structures and circuits are shown in block diagram form in order not to obscure the present invention.
FIG. 1 is a diagram illustrating a computer system 100 in which one embodiment of the invention can be practiced. The computer system 100 includes N processors 105 1 through 105 N, a host bus 110, a host bridge chipset 120, a system memory 130, a primary PCI bus #0 155, K PCI slots 160 1 to 160 K, a PCI-to-ISA bridge 170, mass storage devices 172, Input/Output (I/O) ports 174, a multifunction device 176, an ISA bus 180, and ISA slots 185 1 to 185 M.
Each of the processors 105 1 to 105 N represents a central processing unit of any type of architecture, such as complex instruction set computers (CISC), reduced instruction set computers (RISC), very long instruction word (VLIW), or hybrid architecture. The invention could be implemented in a multi-processor or single processor computer system.
The host bridge chipset 120 includes a number of interface circuits to allow the host processors 105 1 to 105 N access to the system memory 130, the graphics processor 140, and the PCI bus 155. The system memory 130 represents one or more mechanisms for storing information. For example, the system memory 130 may include non-volatile or volatile memories. Examples of these memories include flash memory, read only memory (ROM), or random access memory (RAM). The system memory 130 is loaded with an operating system (OS) 131, and other programs and data 138. Of course, the system memory 130 preferably contains additional software (not shown), which is not necessary to understanding the invention.
The PCI bus 155 may be a primary or a secondary bus in the system. The PCI slots 160 1 to 160 K provide interfaces to PCI devices. Examples of PCI devices include the network interface and the media interface. The network interface connects to communication channel such as the Internet. The Internet provides access to on-line service providers, Web browsers, and other network channels. The media interface provides access to audio and video devices.
The PCI-to-ISA bridge 170 provides access to the ISA bus 180, mass storage devices 172, and I/O ports 174. The PCI-to-ISA bridge 170 provides interface between the PCI bus 155 and the ISA bus 180. An example of the PCI-to-ISA bridge 170 is the Intel 82380AB, manufactured by Intel Corporation. The 82380AB device specification is described in the data sheet “Intel 380FB PCISET: 82380AB Mobile PCI-to-ISA bridge (MISA)”, published by Intel Corporation, 1997. The mass storage devices 172 include CD ROM, floppy diskettes, and hard drives. The peripheral device 176 has signal pins with multiple functionalities. The peripheral device 176 has a multifunction circuit 178 to provide multifunction to the signal pins of the peripheral device 176. In the example shown in FIG. 1, the device 176 has a direct memory access (DMA) Request (REQ#) and Acknowledgment (ACK#) pair configured to interface to the PCI-TO-ISA bridge 170. The peripheral device 176 can also be configured to interface to the PCI bus 155 using a control setting. The ISA bus 180 has a number of ISA slots 185 1, to 185 M to interface to ISA devices. Examples of ISA devices include data entry devices (e.g., keyboard, mouse), printers, etc.
FIG. 2 is a diagram illustrating a multifunction circuit 178 according to one embodiment of the invention. The multifunction circuit 178 includes an output selector 210, an input selector 220, and a configuration mechanism 230.
The output selector 210 selects one of a first output functionality and a second output functionality and transfers the selected functionality to the output signal pin. In one embodiment, the output selector 210 is a multiplexer. The first output functionality is a PCI request (REQ#), and the second output fucntionality is a PC/PCI DMA request (REQ#). The output signal pin has a dual function corresponding to the two output functionalities, namely, PCI REQ# and PC/PCI DMA REQ#. The output selector 210 is controlled by a control setting provided by the configuration mechanism 230.
The input selector 220 transfers the input signal pin to one of first input functionality and second input functionality. In one embodiment, the input selector 220 is a demultiplexer with appropriate signal gating circuitry and/or buffering. The first input functionality is a PCI grant (GNT#) and the second input functionality is a PC/PCI DMA acknowledgment (ACK#). The input signal pin has a dual function corresponding to the two input functionalities, namely, PCI GNT# and PC/PCI DMA ACK#. The input selector 220 is controlled by a control setting provided by the configuration mechanism 230.
The configuration mechanism 230 generates the control setting to control the selection of the functionalities based on the desired configuration of the device 176 (FIG. 1) used in a particular platform. The implementation of the configuration mechanism 230 is shown in FIGS. 3A and 3B.
The multifunction circuit 178 provides multiple functions to the signal pin pair PCI REQ#/PC-PCI DMA REQ# and PCI GNT#/PC-PCI DMA ACK#. As is known by one skilled in the art, the multifunction circuit 178 can provide more than two functionalities to more than two signal pins. The two signal pairs have similar functionalities and electrical characteristics and therefore are easily integrated into a single device. This allows flexibility for a PC manufacturer to incorporate the device into different platforms. For example, the PC manufacturer may use the pair of signals to allow for an additional PCI bus master or for a PCI DMA device. In addition, the device can be dynamically configurable by configuring the configuration mechanism 230 accordingly. In this application, the device can perform a DMA request if it is emulating an ISA DMA device, or to perform standard PCI bus master requests if it is operating as an advanced bus master.
FIG. 3A is a diagram illustrating a configuration register to implement the configuration mechanism 230 shown in FIG. 2 according to one embodiment of the invention. The configuration mechanism 230 includes a configuration register 310.
The configuration register 310 is a register containing configuration fields. One of the configuration fields is a multifunction configuration field 312. The multifunction configuration field 312 provides the control setting to the selectors 210 and 220 shown in FIG. 2. For two functionalities, the configuration field 312 is reduced to a configuration bit. The configuration field 312 is programmable by software. The software may be a piece of code as part of an initialization or set-up procedure or routine provided by the manufacturer. The configuration software may also be part of a Basic Input/Output System (BIOS) residing in a boot-up firmware.
FIG. 3B is a diagram illustrating a strap to implement the configuration mechanism 230 shown in FIG. 2 according to one embodiment of the invention.
The control setting is available as an external pin that can be strapped into one of two logic levels. The logic levels include a low level, corresponding to the ground (GND) level, and a high level, corresponding to the supply (VCC) level. The strap can be implemented by a jumper connecting the control setting pin to one of the logic levels. Alternatively, the strap can be provided by a programmable control bit from a programmable register.
FIG. 4 is a flowchart illustrating a process 400 to provide multifunction to a device according to one embodiment of the invention.
Upon START, the process 400 determines if the first functionality is desired (Block 410). If so, the process 400 sets the control setting to a first logic level using the configuration mechanism shown in FIG. 3A or 3B (Block 420). Otherwise, the process 400 sets the control setting to a second logic level using the configuration mechanism shown in FIG. 3A or 3B (Block 430).
Then, the process 400 selects one of the first and second functionalities based on the control setting as set by the configuration mechanism (Block 440). The process 400 is then terminated.
While this invention has been described with reference to illustrative embodiments, this description is not intended to be construed in a limiting sense. Various modifications of the illustrative embodiments, as well as other embodiments of the invention, which are apparent to persons skilled in the art to which the invention pertains are deemed to lie within the spirit and scope of the invention.

Claims (24)

What is claimed is:
1. An apparatus comprising:
a selector to select one of first and second functionalities based on a control setting, the selected one of the first and second functionalities being accessible at a pin of a device, the pin being one of an output pin and an input pin, the selector comprising:
a de-multiplexer having first and second de-multiplexer outputs corresponding to the first and second functionalities, respectively, and a de-multiplexer input corresponding to the input pin, the de-multiplexer transferring the de-multiplexer input to one of the first and second de-multiplexer outputs based on the control setting; and
a configuration mechanism coupled to the selector to provide the control setting.
2. The apparatus of claim 1 wherein the selector further comprises:
a multiplexer having first and second multiplexer inputs corresponding to the first and second functionalities, respectively, and a multiplexer output corresponding to the output pin, the multiplexer transferring one of the first and second multiplexer inputs to the multiplexer output based on the control setting.
3. The apparatus of claim 1 wherein the configuration mechanism is one of a configuration field in a configuration register and a strapping connection.
4. The apparatus of claim 3 wherein the configuration field is programmable.
5. The apparatus of claim 4 wherein the configuration field is programmable by a Basic Input/Output System (BIOS) firmware.
6. The apparatus of claim 3 wherein the strapping connection is set by an external connection to a logic level.
7. The apparatus of claim 1 wherein the first functionality is one of a peripheral component interconnect (PCI) bus request and grant.
8. The apparatus of claim 7 wherein the second functionality is one of a PC/PCI direct memory access (DMA) request and acknowledgment.
9. A method comprising:
providing a control setting by a configuration mechanism; and
selecting one of first and second functionalities by a selector based on the control setting, the selected one of the first and second functionalities being accessible at a pin of a device, the pin being one of an output pin and an input pin, the selecting comprising,
transferring a de-multiplexer input of a de-multiplexer to one of first and second de-multiplexer outputs based on the control setting, the first and second de-multiplexer outputs corresponding to the first and second functionalities, respectively, the de-multiplexer input corresponding to the input pin.
10. The method of claim 9 wherein selecting further comprises:
transferring one of first and second multiplexer inputs of a multiplexer to a multiplexer output based on the control setting, the first and second multiplexer inputs corresponding to the first and second functionalities, respectively, the multiplexer output corresponding to the output pin.
11. The method of claim 9 wherein the configuration mechanism is one of a configuration field in a configuration register and a strapping connection.
12. The method of claim 11 wherein the configuration field is programmable.
13. The method of claim 12 wherein the configuration field is programmable by a Basic Input/Output System (BIOS) firmware.
14. The method of claim 11 wherein the strapping connection is set by an external connection to a logic level.
15. The method of claim 9 wherein the first functionality is one of a peripheral component interconnect (PCI) bus request and grant.
16. The method of claim 15 wherein the second functionality is one of a PC/PCI direct memory access (DMA) request and acknowledgment.
17. A system comprising:
a bus; and
a device coupled to the bus, the device having a circuit to provide multifunction to the device, the circuit comprising:
a selector to select one of first and second functionalities based on a control setting, the selected one of the first and second functionalities being accessible at a pin of the device, the pin being one of an output pin and an input pin, the selector comprising:
a de-multiplexer having first and second de-multiplexer outputs corresponding to the first and second functionalities, respectively, and a de-multiplexer input corresponding to the input pin, the de-multiplexer transferring the de-multiplexer input to one of the first and second de-multiplexer outputs based on the control setting, and a configuration mechanism coupled to the selector to provide the control setting.
18. The system of claim 17 wherein the selector further comprises:
a multiplexer having first and second multiplexer inputs corresponding to the first and second functionalities, respectively, and a multiplexer output corresponding to the output pin, the multiplexer transferring one of the first and second multiplexer inputs to the multiplexer output based on the control setting.
19. The system of claim 17 wherein the configuration mechanism is one of a configuration field in a configuration register and a strapping connection.
20. The system of claim 19 wherein the configuration field is programmable.
21. The system of claim 20 wherein the configuration field is programmable by a Basic Input/Output System (BIOS) firmware.
22. The system of claim 19 wherein the strapping connection is set by an external connection to a logic level.
23. The system of claim 17 wherein the first functionality is one of a peripheral component interconnect (PCI) bus request and grant.
24. The system of claim 23 wherein the second functionality is one of a PC/PCI direct memory access (DMA) request and acknowledgment.
US09/475,533 1999-12-30 1999-12-30 Selecting multiple functions using configuration mechanism Expired - Lifetime US6567866B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/475,533 US6567866B1 (en) 1999-12-30 1999-12-30 Selecting multiple functions using configuration mechanism

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/475,533 US6567866B1 (en) 1999-12-30 1999-12-30 Selecting multiple functions using configuration mechanism

Publications (1)

Publication Number Publication Date
US6567866B1 true US6567866B1 (en) 2003-05-20

Family

ID=23888002

Family Applications (1)

Application Number Title Priority Date Filing Date
US09/475,533 Expired - Lifetime US6567866B1 (en) 1999-12-30 1999-12-30 Selecting multiple functions using configuration mechanism

Country Status (1)

Country Link
US (1) US6567866B1 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040085791A1 (en) * 2002-05-06 2004-05-06 Yung-Lin Lin Inverter controller
US20060031815A1 (en) * 2004-08-04 2006-02-09 Osa Technologies, Inc. Software and firmware adaptation for unanticipated/changing hardware environments
US20080113528A1 (en) * 2005-03-10 2008-05-15 Yamaichi Electronics Co., Ltd. Cartridge for contact terminals and semiconductor device socket provided with the same
US20080137384A1 (en) * 2006-12-11 2008-06-12 Yung-Lin Lin Mixed-mode DC/AC inverter
US20080251360A1 (en) * 2007-04-12 2008-10-16 Yamaichi Electronics Co., Ltd. Data setter
US20090035963A1 (en) * 2007-08-02 2009-02-05 Yamaichi Electronics Co., Ltd. Semiconductor device socket
US20090088006A1 (en) * 2007-09-28 2009-04-02 Kazumi Uratsuji Socket for semiconductor device
US20090218954A1 (en) * 2001-01-09 2009-09-03 O2Micro International Sequential burst mode actlvation circuit
US20100120272A1 (en) * 2008-11-13 2010-05-13 Hideo Watanabe Semiconductor device socket
US7881084B2 (en) 1999-07-22 2011-02-01 O2Micro International Limited DC/AC cold cathode fluorescent lamp inverter
US20110171840A1 (en) * 2007-12-27 2011-07-14 Tooru Sakai Semiconductor device socket
US8179053B2 (en) 2003-04-15 2012-05-15 O2Micro International Limited Power supply for an LCD display
US9459885B2 (en) 2014-12-31 2016-10-04 Universal Scientific Industrial (Shanghai) Co., Ltd. Smart card module and operating method thereof
US10467165B2 (en) 2016-01-11 2019-11-05 Hewlett-Packard Development Company, L.P. USB-C port connections based on multi-level straps

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450557A (en) * 1989-11-07 1995-09-12 Loral Aerospace Corp. Single-chip self-configurable parallel processor
US5596765A (en) * 1994-10-19 1997-01-21 Advanced Micro Devices, Inc. Integrated processor including a device for multiplexing external pin signals
US5664197A (en) 1995-04-21 1997-09-02 Intel Corporation Method and apparatus for handling bus master channel and direct memory access (DMA) channel access requests at an I/O controller
US5886537A (en) * 1997-05-05 1999-03-23 Macias; Nicholas J. Self-reconfigurable parallel processor made from regularly-connected self-dual code/data processing cells
US6181788B1 (en) * 1997-02-10 2001-01-30 Genesys Telecommunications Laboratories, Inc. Uniform control of mixed platforms in telephony
US6204989B1 (en) * 1998-05-11 2001-03-20 Seagate Technology, Inc. Controlling a media master writing machine to produce curvilinear servo sector patterns
US6314479B1 (en) * 1997-08-04 2001-11-06 Compaq Computer Corporation Universal multi-pin plug and display connector for standardizing signals transmitted between a computer and a display for a PC theatre interconnectivity system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450557A (en) * 1989-11-07 1995-09-12 Loral Aerospace Corp. Single-chip self-configurable parallel processor
US5596765A (en) * 1994-10-19 1997-01-21 Advanced Micro Devices, Inc. Integrated processor including a device for multiplexing external pin signals
US5664197A (en) 1995-04-21 1997-09-02 Intel Corporation Method and apparatus for handling bus master channel and direct memory access (DMA) channel access requests at an I/O controller
US5862387A (en) 1995-04-21 1999-01-19 Intel Corporation Method and apparatus for handling bus master and direct memory access (DMA) requests at an I/O controller
US6181788B1 (en) * 1997-02-10 2001-01-30 Genesys Telecommunications Laboratories, Inc. Uniform control of mixed platforms in telephony
US5886537A (en) * 1997-05-05 1999-03-23 Macias; Nicholas J. Self-reconfigurable parallel processor made from regularly-connected self-dual code/data processing cells
US6314479B1 (en) * 1997-08-04 2001-11-06 Compaq Computer Corporation Universal multi-pin plug and display connector for standardizing signals transmitted between a computer and a display for a PC theatre interconnectivity system
US6204989B1 (en) * 1998-05-11 2001-03-20 Seagate Technology, Inc. Controlling a media master writing machine to produce curvilinear servo sector patterns

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7881084B2 (en) 1999-07-22 2011-02-01 O2Micro International Limited DC/AC cold cathode fluorescent lamp inverter
US20090218954A1 (en) * 2001-01-09 2009-09-03 O2Micro International Sequential burst mode actlvation circuit
US7847491B2 (en) 2001-01-09 2010-12-07 O2Micro International Limited Sequential burst mode activation circuit
US20040085791A1 (en) * 2002-05-06 2004-05-06 Yung-Lin Lin Inverter controller
US7120035B2 (en) * 2002-05-06 2006-10-10 O2Micro International Limited Inverter controller
US8179053B2 (en) 2003-04-15 2012-05-15 O2Micro International Limited Power supply for an LCD display
WO2006017682A3 (en) * 2004-08-04 2009-05-28 Osa Technologies Inc Software and firmware adaptation for unanticipated/changing hardware environments
US20060031815A1 (en) * 2004-08-04 2006-02-09 Osa Technologies, Inc. Software and firmware adaptation for unanticipated/changing hardware environments
US7844945B2 (en) * 2004-08-04 2010-11-30 Avocent Fremont Corp. Software and firmware adaptation for unanticipated/changing hardware environments
US20080160797A1 (en) * 2005-03-10 2008-07-03 Yamaichi Electronics Co., Ltd. Cartridge for contact terminals and semiconductor device socket provided with the same
US7556507B2 (en) 2005-03-10 2009-07-07 Yamaichi Electronics Co., Ltd. Cartridge for contact terminals and semiconductor device socket provided with the same
US7563144B2 (en) 2005-03-10 2009-07-21 Yamaichi Electronics Co., Ltd. Cartridge for contact terminals and semiconductor device socket provided with the same
US20080113528A1 (en) * 2005-03-10 2008-05-15 Yamaichi Electronics Co., Ltd. Cartridge for contact terminals and semiconductor device socket provided with the same
US20080137384A1 (en) * 2006-12-11 2008-06-12 Yung-Lin Lin Mixed-mode DC/AC inverter
US7768806B2 (en) 2006-12-11 2010-08-03 O2Micro International Limited Mixed-code DC/AC inverter
US20080251360A1 (en) * 2007-04-12 2008-10-16 Yamaichi Electronics Co., Ltd. Data setter
US7728238B2 (en) 2007-04-12 2010-06-01 Yamaichi Electronics Co., Ltd. Data setter
US20090035963A1 (en) * 2007-08-02 2009-02-05 Yamaichi Electronics Co., Ltd. Semiconductor device socket
US7568918B2 (en) 2007-09-28 2009-08-04 Yamaichi Electronics Co., Ltd. Socket for semiconductor device
US20090088006A1 (en) * 2007-09-28 2009-04-02 Kazumi Uratsuji Socket for semiconductor device
US20110171840A1 (en) * 2007-12-27 2011-07-14 Tooru Sakai Semiconductor device socket
US8272882B2 (en) 2007-12-27 2012-09-25 Yamaichi Electronics Co., Ltd. Semiconductor device socket
US20100120272A1 (en) * 2008-11-13 2010-05-13 Hideo Watanabe Semiconductor device socket
US7887355B2 (en) 2008-11-13 2011-02-15 Yamaichi Electronics Co., Ltd. Semiconductor device socket
US9459885B2 (en) 2014-12-31 2016-10-04 Universal Scientific Industrial (Shanghai) Co., Ltd. Smart card module and operating method thereof
US10467165B2 (en) 2016-01-11 2019-11-05 Hewlett-Packard Development Company, L.P. USB-C port connections based on multi-level straps

Similar Documents

Publication Publication Date Title
US6338107B1 (en) Method and system for providing hot plug of adapter cards in an expanded slot environment
US6192439B1 (en) PCI-compliant interrupt steering architecture
US7506093B2 (en) Apparatus and method for converting parallel and serial PCI hot plug signals
US5729767A (en) System and method for accessing peripheral devices on a non-functional controller
US6141021A (en) Method and apparatus for eliminating contention on an accelerated graphics port
KR970004523B1 (en) Personal computer system
US7890690B2 (en) System and method for dual-ported flash memory
US6567866B1 (en) Selecting multiple functions using configuration mechanism
US6148356A (en) Scalable computer system
US20050102454A1 (en) Dynamic reconfiguration of PCI express links
US5748945A (en) Method for slave DMA emulation on a computer system bus
EP0775959B1 (en) Method and apparatus for optimizing PCI interrupt binding and associated latency in extended/bridged PCI busses
KR20010024260A (en) Direct memory access(dma) transactions on a low pin count bus
US6801970B2 (en) Priority transaction support on the PCI-X bus
JP2002539524A (en) Apparatus and method for handling peripheral device interrupts
US6237057B1 (en) Method and system for PCI slot expansion via electrical isolation
US7096290B2 (en) On-chip high speed data interface
US6195723B1 (en) Method and system for providing peer-to-peer control in an expanded slot environment using a bridge as an agent for controlling peripheral device
US5933613A (en) Computer system and inter-bus control circuit
US6954809B2 (en) Apparatus and method for accessing computer system resources via serial bus
JPH1055331A (en) Programmable read and write access signal and its method
US6754758B2 (en) Method and apparatus for utilizing different frequencies on a bus based on a number of cards coupled to the bus
US20060095626A1 (en) Multifunction adapter
US20040205283A1 (en) Interface module
US6081861A (en) PCI migration support of ISA adapters

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTEL CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:POISNER, DAVID I.;REEL/FRAME:010728/0492

Effective date: 20000309

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

FPAY Fee payment

Year of fee payment: 12