Feature board with automatic adjustment to slot position

Abstract: A plug-in feature board (10) for a computer system has special circuitry to permit the board to customise itself to the particular slot into which it is inserted. Computers of the type intended for individual use or use in small networks typically provide insertion slots including connectors to permit feature boards to be added and connected to a bus of the computer for adding new function or capacity. As the computing power of such systems has increased there have been increases in the size of portions of the connecting bus to permit improvements in data transfer performance. In a given computer system there are often two or more bus connector (32) configurations presented in respective slots. By so converting electrical states at selected connector positions as to provide signal information for determining bus configuration for the slot, special logic provided on the board is enabled to determine the characteristics of the slot in which the board is placed and customises the board to respond or limit response in accordance with the requirements for that configuration. By so adapting to the slot the board achieves enhanced applicability and avoids certain system disabling malfunctions which can occur when a board is plugged into a slot for which it is not configured.

Description: The present invention relates to a computer system and more particularly to a feature board for insertion into a slot of a computer system to provide increased or enhanced function. It is well known to provide a computer, for example the PS/2 (TM) computer from International Business Machines Corp. with slots including one or more bus connectors for permitting feature boards with associated circuitry to be connected to the computer bus thereby enabling the user to expand capabilities of the computer system. These slots provide physical support for the feature boards and the bus connector(s) is arranged to mate with a connector on the feature board when the board is fully inserted into the slot. In certain computers, such as the IBM (TM) PS/2 (TM) Model 80, two different size bus connectors are provided in respective slots. These different connectors reflect differences in the number of parallel bits allocated to data and memory addressing. Usually the bits are allocated in multiples of eight and in the case of the Model 80 there are slots which provide for 16 parallel bits of data and addressing as well as slots which provide for 32 parallel bits. It is also known to provide a flag bit position to indicate when a command sent over the bus is a 16 or a 32 bit command (e.g. logic 1 = 32 bit and logic 0 = 16 bit) so that a board in a 16 bit slot may detect commands that are outside its range and take no action. This permits a 16 bit board to avoid a situation where, seeing only a portion of a command or address, it proceeds with an improper action. This flag bit position does not however provide any protection in the event a 32bit board is inserted in a 16bit slot. In that case the board will proceed as if it is in a 32bit slot and interpret binary signals at the missing positions on the bus connector improperly. IBM Technical Disclosure Bulletin Vol.31, No.5, October 1988, "Adapter Card for Personal Computer" discloses an adaptor card for a computer system having at least first and second system connectors, wherein the first and second system connectors have a different number of system connectors. The adaptor card comprises a support panel receivable in a slot and having feature circuitry for responding to command signals on a system bus of he computer system. First and second board connectors are mounted on the panel. The first board connector has board contacts for engaging with systems contacts of the first system connector and the second board connector has board contacts for engaging with system contacts of the second system connector. It is also known to steer data between two data busses of different size but such steering is typically effected by fixed interface logic recognising that the bus definition on either side will remain the same. An aim of the present invention is to provide such a feature board which recognises when it is situated in a slot for a lesser bus width and performs those commands that are appropriate to such a slot. In accordance with the present invention there is now provided, a feature board for a computer system having at least first and second system connectors, wherein the first and second system connectors have a different number of system contacts, the feature board comprising: a support panel receivable in a slot and having feature circuitry for responding to command signals on a system bus of the computer system; and a board connector mounted to the panel having a plurality of board contacts for engaging the system contacts of the first system connector at all the board contacts, and for engaging the system contacts of the second system connector at less than all the board contacts; characterised in that the feature board also comprises: logic means for modifying the operation of the feature circuitry in response to a first signal (BIGSLOT); and a convertor circuit for generating the first signal (BIGSLOT) in response to a board contact engaging a system contact of the first system connector wherein the board contact is operable for engaging only a system contact of the first system connector. Preferably, the convertor circuit generates the first signal in response to a fixed voltage applied to the board contact by the system contact of the first system connector. In a preferred embodiment, the convertor circuit comprises a voltage divider for dividing the fixed voltage to generate the first signal. There is further provided in accordance with the present invention, a feature board including special circuitry for detecting a condition which ordinarily does not provide status information and then so responding to that condition that a binary signal is provided indicative of the bus width of the slot. In a presently preferred implementation, a direct current power main provides the basis for generating a logic signal indicating bus width and the board so limits its responses to commands as to prevent addressing memory locations outside the addressing range for the bus configuration of the slot in which it is inserted. In a preferred embodiment of the present invention to be described later, there is provided a feature board for a computer which customises itself to its slot position. In particular, the feature board will detect when it is in a slot which provides for a board of lesser bus width. An example of the present invention will now be described with reference to the accompanying drawings in which: Fig. 1 is a diagrammatic representation in block form indicating elements of a host system connected to presently preferred implementation for a feature board wherein logic to test commands may be implemented by a programmable local processor. Fig. 2 is a diagrammatic representation of a feature board according to the invention about to be inserted in a slot having a connector with the full contact set for which the board is designed. Fig. 3 is a diagrammatic representation of a feature board according to the invention about to be inserted in a slot in which a portion of the connector contacts do not engage contacts of a system connector. Figs. 4 and 5 are simplified diagrammatic representations of 16 and 32 bit connectors respectively. Figs. 6A and 6B are a diagrammatic representation of the system connector pin assignments for a 16bit bus width according to the Micro Channel brand architecture employed on IBM PS/2 computers. Fig. 7 is a diagrammatic representation of a preferred implementation for a converter circuit according to the invention. Fig. 8 is a generic flow diagram for command processing for feature circuitry of a feature board as know in the art. Fig. 9 is a flow diagram corresponding to Fig. 8 but further including command testing according to a preferred implementation of the invention to permit rejection of commands which cannot be executed properly. Fig. 10 is a detailed flow diagram indicating logic for implementation by a general purpose processor to test for certain types of unexecutable commands received from the host system. Fig. 11 is a detailed flow diagram for further logic to identify unexecutable commands received from the host processor. Referring to Fig. 1 a feature board 10 is shown coupled to a host system 30 by a board connector 12 which mates with a system connector 32 to receive signals and power from a system bus 34. The host system 30 includes a central processor 36 and system memory 38 connected to the system bus 34 as is typical for such systems as the IBM Personal System/2 brand computers. From the board connector 12 signals are received at interface registers 14 which are accessed by a local processor 16 over a local bus 18. A system memory 20 and feature drivers 22 are also connected to the local bus 18 and may be considered along with the local processor 16 and system memory 20 a part of the overall feature circuitry 28. Feature drivers 22 would vary from board to board and might, for example, control external devices 40 such as disk drives conforming to the Small Computer System Interface. A convertor circuit 24 is connected to the board connector 12, according to the preferred implementation for the invention, and provides a signal to the local bus 18. Considering Fig. 2, the feature board 10 is shown including a panel 11 rigid circuit board material. Individual contacts 13 of board connector 12 are situated in preselected spaced positions on either side of the panel 11 (less than the preferred number of contacts have been shown for clarity of illustration). The system connector 32 is mounted to a planar board 33 and is configured with contacts (not shown) for engaging the contacts 13 over the length of board connector 12 and serves to define receiving slot 42. The board connector as indicated is preferably a male board edge connector and the system connector would then be a female board edge connector. In contrast, to Fig. 2, Fig. 3 shows an abbreviated system connector 32′, a circumstance which gives rise to the problem addressed by the invention. Referring to Figs. 4 and 5, contact positions are indicated for typical connectors 32′ and 32 supporting 16bit and 32bit operation respectively. Figs. 6A and 6B indicate the assignments for the contacts 12 assuming a system bus 34 (see Fig. 1) conforming to the Micro Channel bus specification with the A and D designations indicating address and data positions respectively. Additional description regarding such a system may be found in the "Personal System/2 Hardware Interface Technical Reference" manual. Now considering Fig. 7, the converter circuit 24 according to a presently preferred implementation for the invention is connected to a particular contact 12 denoted A77 in Fig. 6B which is not engaged by a 16bit system connector 32′ (see Fig. 3) but would engage a 12 volt DC source through a 32bit connector 32 (see Fig. 2). Resistors 60 and 62 act as a voltage divider to produce a logic signal at tap connection 64 which applies such signal as a control signal at an input port for processor 16 (see Fig. 1) through local bus 18. A normal sequence of operations for executing a command presented by the host system 30 (see Fig. 1) is indicated in Fig. 8. This logic is preferably implemented using a programmable processor 16 as shown in Fig. 1 which may be, for example, an Intel 8032 processor. Initially, the command is accessed by logic block 80 from registers 14. The command is then processed according to the logic 82 which would be prepared by the implementer in accordance with the function of the particular feature board 10. Then logic 84 would complete the processing cycle and prepare for the next command. Fig. 9 indicates the changes to the logic of Fig. 8 according to a presently preferred implementation for the invention. After the command is accessed according to logic 80 all memory addresses that the command requires to be presented on the bus 34 (see Fig. 1) are extracted and tested to determine if they exceed the 16 MB limit for 16bit addressing. If so, logic 94 tests the BIGSLOT signal presented by convertor circuit 24 to determine whether the address exceeds the address limits of the slot. Hence, only if an address exceeds the slot limit, according to a presently preferred implementation does the card reject the command using the logic 96. Referring to Fig. 10, the logic for processing commands in control block form begins with the receipt of an address for accessing the control block. The value of the BIGSLOT signal is accessed at logic 104 and at logic 106 is tested. If the slot limits addressing, the control block address tested at logic 108 and if it exceeds the slot time the host system 30 is sent an error message by logic 110. Otherwise, logic 112 fetches the control block. Referring to Fig. 11, additional logic to compliment the logic of Fig. 10 is required for control blocks. At logic 111 the command is received at memory 20. The signal BIGSSLOT is read at logic 113 and if it indicates a limited logic slot 114 for addressing the command is tested at logic 116 to determine if it is a command of a type having one or more memory access operations. If so, the addresses are checked at logic 118 to determine if they exceed the slot limit. If any addresses exceed the slot limit an error message is send to the host system 30, by logic 120 otherwise the command is executed by logic 122.

Claims: A feature board (10), for a computer system, the computer system having at least first and second system connectors (32,32′), wherein the first and second system connectors (32,32′) have a different number of system contacts, the feature board (10) comprising: a support panel (11) receivable in a slot and having feature circuitry (28) for responding to command signals on a system bus of the computer system; and a hoard connector (12) mounted to the panel (11) having a plurality of board contacts (13) for engaging the system contacts of the first system connector (32) at all the board contacts (13), and for engaging the system contacts of the second system connector (32′) at less than all the board contacts (13); characterised in that the feature board (10) further comprises: logic means (25) for modifying the operation of the feature circuitry (28) in response to a first signal (BIGSLOT); and a convertor circuit (24) for generating the first signal (BIGSLOT) in response to a board contact (A77) engaging a system contact of the first system connector (32) wherein the board contact (A77) is operable for engaging only a system contact of the first system connector (32). A feature board as claimed in claim 1 wherein the convertor circuit generates the first signal in response to a fixed voltage applied to the board contact by the system contact of the first system connector. A feature board as claimed in claim 2 wherein the the convertor circuit comprises a voltage divider for dividing the fixed voltage to generate the first signal. A feature board as claimed in any preceding claim wherein the logic means tests the command signals for operations which are not executable with the second system connector and returns an error message to the computer system when such a command signal occurs and the second system connector is detected by the convertor circuit. A feature board as claimed in claim 4 wherein the logic means comprises a programmable processor integrated circuit module. A feature board as claimed in claim 5 wherein the programmable processor is an 8032 programmable processor. A computer system comprising a feature card as claimed in any preceding claim.

Inventors: MCNEILL ANDREW BOYCE, NEWSOM THOMAS HAROLD, OSBORN NEAL ALLEN, REID EDDIE MILLER, MCNEILL, ANDREW BOYCE, NEWSOM, THOMAS HAROLD, OSBORN, NEAL ALLEN, REID, EDDIE MILLER
Applicants: IBM, INTERNATIONAL BUSINESS MACHINES CORPORATION
Application year: 1990
Main classification: G06F13
IPC codes: G06F15, H01R29, H01R9, G06F3, G06F13