System and method of automatically switching control of a bus in a processor-based device

A system and method of automatically switching control of a bus in a processor-based device is provided. In a server, control of a bus is automatically switched from a controller mounted on the system board to a controller located on an optional expansion card upon connection of the expansion card to the system board. Automatic switching includes isolating the on-board controller from the bus and appropriately terminating any transmission line ends on the bus resulting from the establishment of the alternative control path.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to processor-based devices and, more particularly, to a system and method of automatically switching control of a bus in a processor-based device.

2. Background of the Related Art

Currently, many processor-based devices, such as servers, are being designed in smaller, more compact packages. Size restraints are particularly evident in the server market, where data centers having fixed physical space continually require higher computing capacity. Thus, in many data centers, older and larger servers are being replaced with smaller, low profile servers which can increase computing capacity without requiring the center to expand its physical facility. For example, current designs of low profile servers (e.g., 1U servers), which have a reduced height between the base and top of the chassis (e.g., less than 1.75 inches), may replace older, higher profile servers which are stacked vertically in a rack system at a ratio of three low profile servers for every older server (e.g., a 3U server). Provided each server is adequately cooled, the servers may be stacked, such that the replacement ratio of low profile servers to older servers may be maximized.

The reduced height of the low profile chassis for the servers and the compact packaging may create problems with providing adequate airflow to cool the components within the chassis sufficiently. Thus, physical designs of low profile servers are concerned with provision of adequate heatsinking and placement of components to ensure unobstructed airflow paths.

Exemplary components which often present an obstacle to airflow include cables used to interconnect components (e.g., hard drives) to a chassis-mounted printed circuit board (e.g., the motherboard) or to interconnect multiple boards. For example, the motherboard may include expansion connectors which allow additional boards, such as peripheral controller cards, SCSI controller cards, and so forth, to be added to the server. If such interconnecting cables obstruct airflow, then the heated air can recirculate inside the chassis and, consequently, can cause overheating of certain components or even the entire system.

The use of cables within the chassis may be difficult to eliminate altogether, particularly for server designs which provide for versatility in the choice of components that may be used or added. For example, although the motherboard of the server typically may include a SCSI controller for controlling the SCSI device (e.g., hard drives) connected to the SCSI controller, many end-users may desire incorporation of alternate SCSI controller cards which provide different or additional features. Use of alternate SCSI controller cards also may enable the user to ensure uniformity among all servers the user may have, regardless of the system manufacturer. Such a SCSI controller card may be connected to one or more SCSI devices via a SCSI adapter cable having one end connected to the controller card and the other end connected to the SCSI devices. When using a SCSI adapter, the existing connection between the motherboard and the SCSI devices must be decoupled. Placement of a SCSI cable in the server chassis, however, may obstruct airflow due to the low profile of the chassis and the unpredictability of the positioning of the cable, especially after an installation or a service event.

To avoid the complications associated with such a SCSI cable, it would be desirable to maintain the physical connection between the motherboard and the SCSI devices and connect the new SCSI controller card to the motherboard via an expansion port. Either a direct connection or a relatively fixed-position cable could be provided to make the connection between the motherboard and the SCSI controller card. However, such an arrangement introduces other complications, including provision of appropriate signal termination of electrical transmission line ends on the SCSI bus on the motherboard that are present due to the provision of alternate electrical signal paths to different controllers. Appropriate termination may be needed to prevent signal degradation due to signal reflections from the bus ends. Moreover, it would be desirable to provide a feature by which the server, including components on the motherboard, can be made aware of which SCSI controller (e.g., the on-board controller or the expansion controller) has control of the SCSI bus.

The present invention may be directed to one or more of the problems set forth above.

DESCRIPTION OF SPECIFIC EMBODIMENTS

Turning now to the drawings, and referring generally toFIG. 1, an exemplary application in which a low profile processor-based device, such as a server, is illustrated. As shown, a plurality of densely packaged, low profile processor-based devices10are slidably mounted in a rack system12. The rack system12may include retractable rails that permit each device10to be moved between a retracted position within the rack system12and an extended position in which the device10is at least partially extended from the rack system12. The slidable mounting arrangement facilitates removal or servicing of an individual device10.

Throughout this description, an exemplary processor-based device will be described and referenced as a server10. However, it should be understood that other devices, such as desktop computers, tower servers, etc., may benefit from the unique features described herein. The exemplary server10is a low profile server, such as a 1U server configured to occupy one unit of vertical space (e.g., 1.75 inches) in the rack system12.

The server10includes a chassis14and a cover16.FIG. 2illustrates an exploded view of the server10showing the cover16removed from the chassis14. The chassis includes a front18with openings into a pair of drive bays20. The drive bays20are configured to receive a pair of SCSI devices, e.g., hard drives22(not shown inFIG. 2). The chassis14further includes appropriate mounting arrangements for retaining other server components, such as an ejectable CD drive/floppy drive assembly24, a blower fan assembly26, a motherboard or system board28, a PCI card30, an expansion card32(not shown inFIG. 2) (e.g., a SCSI controller card), a power supply34, etc. Components mounted on the motherboard28include one or more central processing units36(each coupled to a corresponding heat sink38, a Northbridge and memory controller ASIC39(not shown)) a plurality of memory modules40(e.g., DIMMS), and a RAID on chip (ROC) SCSI controller42(not visible inFIG. 2). The ROC42is electrically coupled to a SCSI bus to control the pair of SCSI devices22, which are coupled to the motherboard28via a SCSI back plane connector44.

With reference toFIG. 3, an electrical schematic block diagram illustrating the exemplary components of a portion of the system10is provided. In the embodiment shown, the motherboard28includes one or more central processing units (CPU)36and the Northbridge39, which are coupled to a host bus46. The Northbridge39includes a memory controller which controls access to the memory modules40coupled to a memory bus48. The Northbridge39also provides the interface between the host bus46and one or more input/output buses50, such as a peripheral component interface (PCI) bus. A plurality of I/O ports52and54may be coupled to the I/O bus(es)50such that various types of peripheral devices may be connected to the server10. In the exemplary embodiment, one of the I/O ports54is configured for connecting the motherboard to an expansion card32(e.g., a SCSI controller card). Further, the motherboard28includes an expansion port connector55for connecting to the expansion card32, as will be described in further detail below.

InFIG. 3, the I/O ports52and54are illustrated as being disposed on the motherboard28. However, in alternative embodiments, the I/O ports52and54may be located off of the motherboard28, but coupled to the motherboard28by other means, such as by a backplane.

The on-board SCSI controller (or ROC)42is coupled to the I/O bus50as the primary means to interface to the SCSI devices22. In the embodiment illustrated, to enable the user of the server IO to install an alternative SCSI expansion card32via the I/O port54and the expansion port connector55, the SCSI controller42is coupled to a SCSI switch/terminator module56. The SCSI switch/terminator module56includes appropriate switches and termination devices to switch control of the SCSI devices22automatically from the ROC controller42to a SCSI controller on the expansion card32whenever the expansion card32is connected to the expansion port55(e.g., by an appropriate cable, a connector, etc.). The termination devices in the switch/terminator module56provide appropriate termination for ends on SCSI bus segments57,58, or60to prevent degradation of signals as a result of signal reflections due to mismatched transmission line impedances.

In the exemplary embodiment illustrated inFIGS. 2-5, the expansion card32is coupled to the I/O port54via a connector, and to the expansion port55via a flat expansion cable62. To prevent the cable62from interfering with airflow through the low profile server10, the chassis14includes a cable tray64for retaining the cable62. As illustrated inFIG. 4, the tray64includes a flat base with a plurality of projecting tabs66that extend over and retain the flat cable62. One end of the cable62terminates in a connector68and the other end of the cable62terminates in a connector70. The connector68is configured to engage the expansion port connector55on the motherboard28, as depicted by the arrow inFIG. 4. The connector70is configured to engage with the expansion card32, as illustrated by the arrow inFIG. 5.

Referring toFIGS. 2 and 5, the expansion card32is seated in a cavity above the cable tray64and the flat cable62and is retained in an appropriate manner, such as by the card bracket assembly84. In the exemplary embodiment illustrated, the expansion card32is a SCSI controller card configured to control the SCSI devices22. As will be explained in detail below, when the expansion card32is connected to the motherboard28via the flat cable62, the ROC42on the motherboard28is automatically isolated from the SCSI bus such that the expansion card32will assume control of the SCSI devices22.

FIG. 6is an electrical schematic block diagram illustrating the signal flow and the components in the system10for providing automatic switching of control of the SCSI bus. In the exemplary embodiment, such components include a SCSI bus switch72, a SCSI expansion terminator74, SCSI controller terminator76or78, and a SCSI backplane terminator80. When a SCSI expansion card32is connected to the expansion port55via the expansion cable62, a signal82is asserted indicating that the presence of the expansion board32has been detected. For example, the presence detect signal82may be asserted by connecting one of the pins of connector70to a ground or a logical LOW signal on the expansion board32. The presence detect signal82is provided through the cable62to the SCSI switch72and optionally to the terminators74,76, and78. In response to the presence detect signal82, the SCSI switch72and the terminators74,76, and78may change state to switch control of and terminate the SCSI bus, as appropriate.

InFIG. 6, the SCSI expansion terminator74and the controller terminators76and78and their connections to the SCSI bus segments57and60, respectively, are illustrated in dashed lines20to indicate that these terminators are optional based on the physical layout of the SCSI bus segments57and60on the motherboard28. Further, the provision of the presence detect signal82to the terminators74,76, and78is illustrated in dashed lines to indicate that if the terminators74,76, and78are included in the layout, they always may be in a state in which they are coupled to the SCSI bus, regardless of whether the expansion board32is connected to the motherboard28. The desirability of selectively coupling the terminators74,76, and78to the SCSI bus segments57and60again may be dependent on the physical layout of the SCSI bus on the motherboard28.

Terminators74,76,78, and80are conventional terminators to reduce signal degradation on a bus due to signal reflections from segments or stubs having a trace length which exceeds a predetermined limit. In one embodiment, the SCSI bus employs differential signaling and, thus, differential terminators terminate each end of a bus segment to which an active device (e.g., a SCSI controller, a SCSI device, etc.) is attached. An exemplary differential terminator that may be used is a UCC5638 available from Texas Instruments.

If used, the controller terminator76may be a single-ended terminator to provide appropriate termination for certain control signal lines on the ROC42, thus preventing improper operation or malfunction of the operating system due to inquiries from other applications to the SCSI bus through the ROC42when isolated from the SCSI bus segment58. An exemplary single-ended terminator is a UCC5606 available from Texas Instruments.

In one embodiment, the expansion terminator74and the controller terminator76or78are physically disposed on the motherboard. The backplane terminator80is physically disposed behind the backplane connector44on a SCSI backplane board45(seeFIG. 2). Further, the backplane terminator80is coupled to the SCSI bus segment59. It should be understood, however, that the physical location of the terminators may be different in other applications and will be based on the actual physical layout of the processor-based device10, the traces which comprise the SCSI bus, and the physical locations of the on-board controller42, the switch72, the expansion port55, etc.

The switch72for isolating the ROC42from the SCSI bus segment58includes multiple electronic switches (e.g., 20-bit low impedance transistor devices referenced as part number FST 16210 available from Fairchild Semiconductor). When a SCSI expansion card32is not connected to the expansion port55, the switch72couples the on-board SCSI controller (ROC)42to the SCSI backplane connector44via the SCSI bus segments60and58. In this mode of operation, one end of the SCSI bus segment57is terminated by the differential expansion terminator74disposed proximate the expansion port55.

When the SCSI expansion card32is connected to the expansion port55, the presence detect signal82is asserted, which causes the switch72to decouple the on-board SCSI controller (ROC)42from the SCSI bus segment58. In this mode of operation, the expansion terminator74(if used) is decoupled from the SCSI bus segment57in response to the presence detect signal82, since the expansion card32itself provides adequate termination. In certain embodiments, the controller terminator78may be eliminated if the channel of the ROC42that is connected to SCSI bus segment60is “turned off.” For example, in response to detection of an expansion card32connected to the expansion port55, other circuitry in the system10may disable attempts to access the SCSI bus through the ROC42. Thus, by turning off the ROC42when the expansion board32is connected, any noise or stray signals that may be present on the un-terminated bus segment60will be ignored.

Further, in the mode in which the expansion card32is connected, and even if differential data signals on the bus segment60are not terminated by the differential controller terminator78, it may be desirable to terminate certain of the control lines in the bus segment60with the single-ended controller terminator76to prevent improper operation of the operating system when the ROC42is decoupled from the SCSI bus. Regardless of whether the single-ended terminator76or the differential terminator78is used, either terminator76or78may be selectively coupled to the SCSI bus segment60in response to the presence detect signal82, or may remain coupled regardless of whether an expansion board32is connected to the SCSI expansion port55.

In embodiments in which the trace length between the switch72and the SCSI expansion port55(i.e., SCSI bus segment57) is relatively short such that signal reflections from the segment57do not substantially degrade signals on the SCSI bus segment60when the expansion board32is not connected, then the expansion terminator74may be eliminated. For example, in an embodiment in which the SCSI bus has a clock frequency of approximately 40 MHz, it has been observed that the expansion terminator74may be eliminated if SCSI bus segment57has a trace length of less than 0.5 inch and the controller terminator78is used.

TABLES I-III summarize the states of the various terminators and the switch in three exemplary applications in which switching of control of a SCSI bus between an on-board controller42and an expansion controller on an expansion card32is employed. The first column of each table indicates whether the expansion board32is connected to the expansion port55. The second column indicates the state (i.e., coupled/decoupled from bus segment57) of the expansion terminator74, if used in the application. The third column indicates the state (i.e., coupled/decoupled from bus segment59) of the backplane terminator80. The fourth column indicates the state (i.e., coupled/decoupled from bus segment60) of the controller terminators76and78, if used. Finally, the fifth column indicates the state of the switch72.

Further, TABLE I represents an embodiment in which the single-ended terminator76terminates the ROC42, and the differential terminator78is not used. TABLE II represents another embodiment in which the differential terminator78terminates the ROC42, and the single-ended terminator76is not used. TABLE III represents yet another embodiment in which neither the expansion terminator74nor the single-ended terminator76is used.

It should be understood that the embodiments represented in TABLES I-III are exemplary only and that other combinations of terminators, states of terminators, and trace lengths may be used. Further, although the foregoing embodiments also have been described with respect to a cable which connects the expansion card to the motherboard, it should be understood that the expansion board may be connected to the motherboard by other means, such as a connector which engages a connector edge of the motherboard.

Still further, although the foregoing embodiments have been described with reference to a SCSI bus, it should be understood that other types of communication media (e.g., buses or point-to-point interconnects) are contemplated in applications in which multiple mutually exclusive devices (e.g., controllers, peripheral devices, processing nodes, etc.) can be selected for connection to the communication medium. Thus, for example, the foregoing description may be applied in a system including a point-to-point interconnect that supports selective switching between any two or more mutually exclusive devices that can interface to the interconnect.