Abstract:
A computer interface extension configuration that includes a host having a motherboard, an extension transmitter card, and an extension receiver. The motherboard includes a first connector that allows motherboard signals to be shared internal to the host, and a second connector separate from the first connector that supports communications with the host. The extension transmitter card is positioned within the host and is electrically connected to the motherboard of the host via at least the first connector and the second connector. The extension transmitter card includes an extension transmitter device having endpoint circuitry that provides the host with information for enumeration, manageability, and security. The extension receiver is connected to a plurality of user interface devices and is extensibly connected to the extension transmitter card. The extension receiver, among other things, receives data transmissions from the extension transmitter card of the host to thereby provide the data transmissions to one or more of the plurality of user interface devices.

Description:
INCORPORATION BY REFERENCE  
       [0001]    The present application is related to the following U.S. applications which are incorporated by reference in their entireties: U.S. application Ser. No. 10/035,757, filed Dec. 31, 2001, entitled “Method Of Connecting To A KVM Transmitter Using Internal Cables” by Ferguson et al. (Attorney Docket No. P01-3861); U.S. application Ser. No. 10/035,778, filed Dec. 31, 2001, entitled “Solution For Integrating A KVM Extension Transmitter With A Graphics Controller On An Add-In Card” by Ferguson et al. (Attorney Docket No. P01-3860); U.S. application Ser. No. ______, filed concurrently herewith, entitled “Method Of Supporting Audio For KVM Extension In A Server” by Ferguson et al. (Attorney Docket No. P01-3862); and U.S. application Ser. No. ______,filed concurrently herewith, entitled “Method of Powering On and Off A Computer Using A Standard Keyboard” by Ferguson (Attorney Docket No. P01-3868). 
     
    
     
       BACKGROUND OF THE INVENTION  
         [0002]    Standard computer interfaces such as keyboard, mouse, video, and audio are often referred to as KVM (“keyboard, video, mouse”) products. “KVM extension” can be defined as extending the access points for computer user interfaces such as keyboards, mice, monitors, etc., i.e., user interfaces may operate with a host processor although positioned outside the standard operating range for the user interface products. KVM extension products are particularly useful when dealing with rack mounted computer solutions where the computers of the rack are positioned away from the user interface products. However, among other things, today&#39;s rack mounted solutions suffer from excessive cabling issues when KVM extension products are introduced.  
           [0003]    Fundamental components of computer interface extension solutions include KVM products, an extension receiver, an extension transmitter, and a host system. The extension solutions are commonly known as “KVM” (keyboard, video, mouse) extensions. A typical example for use of KVM extension solutions are remote trading solutions, i.e., when stock traders desire to perform remote trading without being required to accommodate a large number of host computer systems under their desk on the trading floor. The three major components used in remote trading solutions are a manageability switch, a transmitter/receiver pair, and a multi system switch. Each of these components are modular and can be used alone or in any combination. The KVM extension mode of operation typically supports user I/O protocols, sometimes referred to as “legacy” protocols, such as PS/2, analog video, and serial.  
           [0004]    Many other problems and disadvantages of the prior art will become apparent to one skilled in the art after comparing such prior art with the present invention as described herein.  
         BRIEF SUMMARY OF THE INVENTION  
         [0005]    Various aspects of the present invention are realized through a computer interface extension configuration that includes a host having a motherboard, an extension transmitter card, and an extension receiver. The motherboard includes a first connector that allows motherboard signals to be shared internal to the host, and a second connector separate from the first connector that supports communications with the host. The extension transmitter card is positioned within the host and is electrically connected to the motherboard of the host via at least the first connector and the second connector. The extension transmitter card includes an extension transmitter device with endpoint circuitry that interfaces with the second connector independent from communications that occur on the first connector. The extension receiver is connected to a plurality of user interface devices and is extensibly connected to the extension transmitter card. The extension receiver, among other things, receives data transmissions from the extension transmitter card of the host to thereby provide the data transmissions to one or more of the plurality of user interface devices.  
           [0006]    The extension transmitter card of the computer interface extension configuration may include a peripheral connection interface (PCI) graphics controller that communicates with the motherboard independent of communications on the first connector. Alternatively, the extension transmitter card may include an accelerated graphics port (AGP) controller that communicates with the motherboard independent of communications on the first connector. The plurality of user interface devices are typically devices such as a keyboard, a mouse, a video monitor, a speaker, a serial link, a USB link, a power button, and a microphone. The extension receiver may be extensibly connected to the extension transmitter via a fiber optic cable or via a cable compatible with any version of category five or above type cables. One option for electrically connecting the extension transmitter card to the first connector of the motherboard of the host is via a ribbon cable positioned between the motherboard and the extension transmitter card. The extension transmitter card may be electrically connected to the second connector of the motherboard of the host via one of a PCI, PCI-X, or AGP interface.  
           [0007]    Other aspects of the present invention may be realized with a computer interface extension transmitter that is configured from a host computer system having a motherboard with at least a first connector and a second connector that is separate from the first connector. An extension transmitter card is connected to the second connector of the motherboard. The extension transmitter card includes an extension transmitter device that has endpoint circuitry and a motherboard header. The motherboard header is electrically connected to the first connector of the host computer system, and the endpoint circuitry of the extension transmitter card provides the host computer system with information for enumeration, manageability, and security. An extension receiver is connected to the extension transmitter card and to at least one user interface device.  
           [0008]    In one embodiment, the second connector of the computer interface extension transmitter is electrically connected to the extension transmitter card of the motherboard and operates according to a graphics communication standard taken from the group consisting of a PCI interface, a PCI-X interface, and an AGP interface. The first connector may be placed on the motherboard separately from the second connector and include audio communications with the extension receiver that pass through the extension transmitter card. Passing through the extension transmitter card to the extension receiver could be analog video communications with the extension receiver and digital video communications with the extension receiver. Still other aspects of the present invention may be realized through a method for extending computer interface communications between a host computer and a plurality of computer interface devices. The method involves, not necessarily in this order: electrically connecting an extension transmitter card to a slot in the host computer system, the extension transmitter card including an extension transmitter device having endpoint circuitry; enumerating the extension transmitter device of the extension transmitter card with the host computer system such that the extension transmitter device is recognized by the host; electrically connecting a motherboard header of the extension transmitter card to a connector on the host that is separate from the slot in the host with which the extension transmitter card is electrically connected; and transmitting communications from the extension transmitter card to an extension receiver to complete operations with at least one of the plurality of computer interface devices.  
           [0009]    Variations of the method include transmitting communications from the extension transmitter card by transmitting PCI compatible graphics communications, or transmitting communications from the extension transmitter card by transmitting AGP compatible graphics communications. The extension transmitter device may be enumerated by the host as a PCI device, a USB device, a SMBus device, or other type of device familiar to those of ordinary skill in the art. Enumerating the extension transmitter device could also lead to enumerating other devices, e.g., a manageability switch, a multi-system switch, an extension receiver, etc., that are electrically connected between the host computer and the plurality of computer interface devices such that the extension transmitter acts as a communication bridge to the devices between the host computer and the plurality of computer interface devices. This “communication bridge” creates a separate communication path for the intermediate devices as compared to the communications with the computer interface devices. Of course, other variations exist according to principles of the present invention. 
       
    
    
     BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS  
       [0010]    The foregoing summary, as well as the following detailed description of preferred embodiments of the invention, will be better understood when read in conjunction with the appended drawings. For the purpose of illustrating the invention, there is shown in the drawings embodiments which are presently preferred. It should be understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown.  
         [0011]    In the drawings:  
         [0012]    [0012]FIG. 1 is a block diagram of a basic computer interface extension solution according to principles of the present invention.  
         [0013]    [0013]FIG. 2 is a block diagram of another basic computer interface extension solution wherein a manageability switch is introduced into the solution.  
         [0014]    [0014]FIG. 3 is a block diagram of a computer interface extension solution wherein a manageability switch and multi-system switches are introduced into the solution.  
         [0015]    [0015]FIG. 4 is a simplified diagram of a motherboard having an add-in card that allows communications with the motherboard according to principles of the present invention.  
         [0016]    [0016]FIG. 5 is a block diagram of one configuration for the add-in card of FIG. 4.  
         [0017]    [0017]FIG. 6 is a block diagram of a second configuration for the add-in card of FIG. 4.  
         [0018]    [0018]FIG. 7 is a block diagram of a third configuration for the add-in card of FIG. 4.  
         [0019]    [0019]FIG. 8 is a block diagram of a host computer system motherboard configuration according to principles of the present invention.  
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0020]    [0020]FIG. 1 is a block diagram of a basic computer interface extension solution  100  according to principles of the present invention. The solution  100  is illustrated as having a host computer system  102  with an extension transmitter  104  (herein referred to as “transmitter”). The transmitter  104  is connected to the extension receiver  106  (herein referred to as “receiver”) which is connected to a user  108 . The user  108  is representative of standard user interface products such as a keyboard, mouse, monitor, serial port, audio devices, USB ports, etc. The solution  100  is commonly implemented as a KVM extension, however, as will be understood when viewing the description of the invention, the solution  100  may include more than KVM extension capabilities. Further, although data travels bi-directionally between the host computer system  102  and the user  108 , to delineate the separation, the transmitter  104  and the receiver  106  are labeled as though data transfer occurs only in one direction, i.e., from the host computer system  102  to the user  108 .  
         [0021]    The transmitter  104  and receiver  106  are connected with a single cable such as a cable compatible with all versions of category  5 ,  6 ,  7 , or better cables. The connection could also be made with fiber optic or other type of high speed data transmission cabling. The distance between the transmitter  104  and receiver  106  ranges approximately 300 meters. In this manner are the user interface devices of the user  108  allowed to communicate effectively with the host computer system  102  across long distances, “long” as compared to user/host communication distances in a system without the transmitter  104 /receiver  106  pair. Although illustrated external to the host  102 , the transmitter  104  may be positioned internal to the host computer system  102  and use an internal connector with the motherboard of the system  102  (see FIG. 4).  
         [0022]    [0022]FIG. 2 is a block diagram of another basic computer interface extension solution  200  wherein a manageability switch  202  is introduced into the solution. The solution  200  includes multiple host computer systems  204 , multiple transmitters  206 , and multiple receivers  208  that support the communication extension for multiple users  210 . The manageability switch  202  encompasses technology used to map a specific user to a specific system, to converge a large number of systems to a small number of users for system administration or head trader access, and to share a single system between two or more users.  
         [0023]    [0023]FIG. 3 is a block diagram of a computer interface extension solution  300  wherein a manageability switch  302  and multi-system switches  304  are introduced into the solution  300 . An administrative user  306  is also illustrated that provides the capability to monitor the users  304  and make adjustments to the solution  300  configuration if necessary.  
         [0024]    [0024]FIG. 4 is a simplified diagram of a motherboard  402  having an add-in card  404  that allows communications with the motherboard  402  according to principles of the present invention. The add-in card  404  is configured to operate as a transmitter in an extension solution such as a KVM extension solution. However, the add-in card  404  is not limited to KVM connections, but allows for power button, USB, and other connection types. Motherboard (MB) header  406 , when connected by a cable  408  such as a ribbon cable to MB connector  409 , allows the motherboard  402  to communicate directly with the add-in card  404  rather than only through an external connection between the motherboard  402  and the add-in card  404 . This configuration eliminates the need for additional cables to be added externally to the host to communicate between the motherboard  402  and the add-in card  404 , which is particularly desirable when the motherboard  402  is one of many motherboards in a rack mounted computer system.  
         [0025]    As illustrated in the following figures, the add-in card  404  has various configurations for operation as a transmitter card.  
         [0026]    [0026]FIG. 5 is a block diagram of one configuration for the add-in card  404 . The add-in card  404  is configured with minimal circuitry components such that the motherboard performs most functions of the computer system. A motherboard header  502  acts as the primary interface with the motherboard and the functionality data of the motherboard is passed to a transmitter core  504  via the motherboard header  502  where the data is configured to be transmitted at a connector such as RJ-45 connector  506 . Motherboard functionality data that is passed directly to the add-in card  404  commonly includes functions such as PS/2 mouse, PS/2 keyboard, USB 1.1 or 2.0, power button, card power, cable detect, analog video, digital video, analog audio, and RS-232 serial.  
         [0027]    All functions can be included or excluded in the cable  408  definition as needed. For example, when RS-232 serial, digital and analog video, and audio functions are included in the functions, switching should occur on the motherboard to avoid conflicts and select between functional connectors on the motherboard and the add-in card  404 . The add-in card  404  of FIG. 5 is considered to be a “dumb” card because the functionality is realized on the motherboard and passed to the add-in card  404  across the cable  408 .  
         [0028]    [0028]FIG. 6 is a block diagram of a second configuration for the add-in card  404 . This configuration introduces functionality from the motherboard represented by functionality  602 . The functionality  602  is flexible in that various degrees of motherboard functionality may be realized on the add-in card  404  itself, rather than on the motherboard and then transferred to the add-in card  404 . In addition, a graphic controller  604  is included on the add-in card  404  for at least the reason that a slot may be opened on the motherboard. The graphic controller  604  may be compatible with PCI, AGP, or other protocol. For example, if the graphic controller  604  is PCI compatible, the add-in card  404  would be considered a PCI card and would plug into an available PCI slot while using the motherboard header  504  to communicate with other motherboard functionality that is not included in the functionality  602 . Thus, an internal transmitter can be incorporated onto the motherboard without giving up an additional PCI slot on the motherboard. One type of functionality is supported when USB communications are converted to a PS/2-legacy type of protocol that is recognized by the extension receiver as the data is passed from the RJ-45 connector  506  of the transmitter add-in card  404 .  
         [0029]    [0029]FIG. 7 is a block diagram of a third configuration for the add-in card  404 . A USB functionality component  702  is introduced such that the add-in card  404  operates using a USB protocol and transmits data from the RJ-45 connector  506  in a USB format. In one embodiment, the USB communications are extended by adding a USB hub that receives pure USB data and transmits raw data onto the extension where the receiver converts the signals back into USB format.  
         [0030]    Of course, the USB functionality component  702  is exemplary of the different types of functions that may be implemented on the add-in card  404  rather than on the motherboard. For example, the functionality could include audio in/out signals and serial RS-232 protocols. One additional possibility is that the functionality  702  could include the capability to allow the computer system to recognize that the add-in card  404  is present in a computer thereby enabling enumeration of such add-in card  404 .  
         [0031]    When the computer system recognizes the add-in card  404 , the functionality on the add-in card  404  is detected by the motherboard  402  and the functionality is also identified by the motherboard  402  to assist in driver selection for software programs that use the particular functionality while operating. USB functionality is supported through endpoint configuration, i.e., endpoint registers and descriptors. For example, a certain collection of endpoints may indicate that a KVM transmitter device is present on the add-in card  404 . Other collections of endpoints indicate KVM devices other than the above noted KVM transmitter device.  
         [0032]    On the other hand, if the functionality is PCI compatible, the KVM transmitter device is represented as a function in PCI configuration register space. PCI functions are defined through the PCI function register space and the device configuration. As understood by those of ordinary skill in the art, PCI enumeration type functions are independent of USB communications which are initiated from a host by a USB host controller.  
         [0033]    In another example, the functionality is SMBus (System Management Bus) compatible and communications between the motherboard  402  and the add-in card  404  are accomplished through the SMBus standard. Of course, communications between the motherboard  402  and the add-in card  404  could be accomplished through communication standards other than USB, PCI, or SMBus, but for ease of understanding the present disclosure, these three exemplary communication standards have been addressed.  
         [0034]    [0034]FIG. 8 is a block diagram of a host computer system motherboard configuration  800  according to principles of the present invention. A processor (CPU)  802 , memory  804 , and super I/O (SIO)  806  are illustrated to show motherboard communications across a north bridge  808  and a south bridge  810 . The north bridge  808  provides an AGP bus  812  for AGP communications with either an AGP graphics controller  814  on the motherboard  800  or an AGP graphics slot  816  with an AGP graphics card (not shown) inserted. The AGP graphics card is a card such as the add-in card  404  with a graphic controller (e.g., graphic controller  604 ) compatible with AGP graphics communications.  
         [0035]    The south bridge  810  provides a PCI/PCI-X bus  818  for PCI/PCI-X communications with either a PCI graphics controller  820  on the motherboard  800  or a PCI slot  822  with a PCI graphics card (not shown) inserted. The PCI graphics card is a card such as the add-in card  404  with a graphic controller (e.g. graphic controller  604 ) configured for PCI graphics communications.  
         [0036]    The north bridge  808 /south bridge  810  configuration allows one graphic controller to be enabled at a time. For example, if the north bridge  808  supports the AGP graphics controller  814 , then there will be no other graphic controller. Alternatively, if the south bridge  810  supports the PCI graphics controller  820 , then no other graphic controller is operational on the motherboard  800 . Of note, the PCI slot  822  is representative of many slots that support PCI cards in general, not just a PCI graphics controller card. In other words, the add-in card  404  could have a PCI graphics controller and be inserted into the PCI slot  822  while other PCI cards are inserted into other PCI slots to communicate with the south bridge  810 . Alternatively, the north bridge  808  may have an AGP graphics controller installed (either directly on the motherboard  800  or inserted in the AGP graphics slot  816 ) and non-graphic PCI communications may occur on the south bridge  810 .  
         [0037]    Significantly, as discussed above, the add-in card  404  has a motherboard header  406  for connecting directly to the motherboard connector  409 . A user interface control  824  manages communications among the motherboard  800 , the motherboard connector  409 , and external user interface connections  826 .  
         [0038]    It will be appreciated by those skilled in the art that changes could be made to the embodiments described above without departing from the broad inventive concept thereof. It is understood, therefore, that this invention is not limited to the particular embodiments disclosed, but it is intended to cover modifications within the spirit and scope of the present invention as defined by the appended claims.