Apparatus and method for deferred parity checking of control signals across a bidirectional data transmission interface

Abstract: Control signal reliability across an I/O limited high-speed data transmission interface is assured by time-sequenced transmission of control signals and parity signals. Two sets of control signals (CNTLA,CNTLB) are transferred in opposing directions across the data transmission interface in a first data transfer period, during which their joint parity is determined and latched on each side of the interface, and the result of one latched joint parity determination is transmitted across the interface. During the following data transfer period, the transmitted parity is compared with the other joint parity determination, the results of the compa­ rison being used to detect transmission errors in the control signals.

Description: The invention concerns the use of parity signals to validate the transmission of control signals across an I/O limited, high-speed, bidirectional data transmission interface. Two sets of control signals are transferred in opposing directions across the data transmission interface, on each side of the interface parity is generated jointly from the two sets of control signals, and one of the parity determinations is transferred across the data transmission interface to be compared with the other parity determination for validation of the control signals. In data processing systems, transfer of data between modularized system components can take place under the control of a single processor to which the units interchanging data are connected. The units exchange data across a data transmission interface, with the data exchange proceeding according to a protocol which is implemented by control signals also exchanged between the units. The data interchange units of such a system can be modularized to the degree that each unit is physically replaceable in the system by an identical unit. The most widely employed technique of modularization is that of mounting data interchange units on field replaceable modules such as rack-mounted circuitboards with pluggable interfaces. In modern systems employing such modularization, the bandwidth of a data transmission interface between two modules can climb to hundreds of megahertz, with data being transferred in both directions between the modules. Conventionally, control signals are employed to implement a data transfer protocol between modules, with control signals having the bandwidth of the data signals. Control signals are normally transferred across a data transmission interface between a pair of modules bidirectionally, by means of two oppositely-directed control signal highways. A control signal highway may comprise a plurality of signal lines which support the parallel transfer of binary digits (bits) referred to as a set of control signals or a control word. It is important to provide error checking over the control signals transferred between a pair of data interchange units to ensure the detection of errors affecting the control signals that might interfere with the integrity of the data transmission between the units. Another purpose of error checking is to assist in the determination and isolation of malfunctioning units. Once a malfunctioning unit is detected, it can be replaced in the field. The ability to detect and isolate errors at a data interchange unit level supports a repair and maintenance philosophy that accommodates the concept of field replaceable units (FRU). Sufficient error checking is difficult to implement where the signal paths between FRU's are limited or not available, or when the data rate is high and the physical distance and propagation delays are long between the units. In the context of control lines, error checking for a high-speed, bidirectional data interface is always a difficult task, due to the multidirectional flow of the control lines as they control data transfer across the data transmission interface between a pair of FRU's. One expects the data transfer rate between FRU's to continue to increase in the future. Increasing the data transfer rate will eventually make the physical length of the overall data transfer path become the limiting factor on data transmission. In addition, as FRU's become increasingly packed with higher density components, implying the requirement for even more high-speed data transfer, input/output (I/O) transfer paths will soon be at a premium, taking into account the limitations on such transfer imposed by the physical dimensions of card connector technology; often there are an insufficient number of data available to supply all the data and control interconnections necessary to support the operational functional completion of a field replaceable unit, let alone the error-checking functions. Given the limitations on data transfer bandwidth and data path availability, the luxury of providing a dedicated error-checking path for each control signal pathway is rapidly becoming unaffordable. This problem has been addressed in United States Patent 3,763,470, which discloses a data processing system comprising a source of a sequence of data transfer timing periods, first and second data units connected by first bus for sending first control and data signals from first data unit to second data unit and second bus for sending second control and data signals from second data unit to first data unit and a circuit arrangement for error detecting comprising a first parity generating means in said first data unit, a second parity generating means in said second data unit and responsive to first and second control and data signals to generate therefrom a first parity bit, a parity bit line connected to said second parity generating means for unidirectionally conducting first parity bit from second parity generating means to first parity generating means, said first parity generating means responsive to first and second control and data signals and first parity bit to generate therefrom a second parity bit indicating integrity of first and second data and control signals. In order to assure the integrity of control signals exchanged between data interchange units over a data transmission interface, it is necessary to allocate I/O resources for the exchange of error checking information in a fashion which is timely enough to maintain the bandwidth of control signal transfer, yet which consumes as little of the valuable I/O resources as possible. According to the invention as defined in claim 1, there is provided an apparatus for checking the integrity of control signals which control data transfers across a bidirectional data transmission interface in a bidirectional data transmission system, comprising a source of timing signals defining a sequence of data transfer timing periods, said sequence including a first data transfer period during which first and second sets of control signals are transferred, and a second data transfer period during which third and fourth sets of control signals are transferred, said second data transfer period following said first data transfer period in said sequence; a first data unit for transmitting said first set of control signals and receiving said second set of control signals across the data transmission interface during the first data transfer period and for transmitting said third set of control signals and receiving said fourth set of control signals across data transmission interface during the second data transfer period; a second data unit connected to said first data unit for transmitting said second set of control signals and receiving said first set of control signals across said data transmission interface during the first data transfer period and for transmitting said fourth set of control signals and receiving said third set of control signals across said interface during the second data transfer period; first parity generating means in said first data unit and responsive to said first and second sets of control signals to generate therefrom a first error check signal; second parity generating means in said second data unit and responsive to said first and said second sets of control signals to generate therefrom a second error check signal; first storage means responsive to said timing signals and connected to said first parity generating means for storing said first error check signal during said first data transfer period; second storage means responsive to timing signals and connected to said second parity generating means for storing said second error check signal during said first data transfer period; signal conduction means connected to said second storage means for unidirectionally conducting said second error check signal stored in said second storage means to said first data unit during said first data transfer period; and first comparator means in said first data unit connected to said first storage means and to said signal conduction means for comparing said first and second error check signals and for indicating the result of the comparison during said second data transfer period; said result of comparison indicating integrity of said first and second sets of control signals. There is further provided as defined in claim 5, a method for checking the integrity of control signals which control data transfers across a bidirectional data transmission interface in a bidirectional data transmission system in which, a source of timing signals defines a sequence of data transfer timing periods, said sequence including a first data transfer period during which first and second sets of control signals are transferred, and a second data transfer period during which third and fourth sets of control signals are transferred, said second data transfer period following said first data transfer period in said sequence, said method comprising the steps of: transferring across said interface, said first set of control signals from a first to a second data unit and said second set of control signals from said second to said first unit, said transferring occurring during the first data transfer period; generating from said first and second sets of signal control signals at said first data unit a first error check signal; generating from said first and second set of control signals at said second data unit a second error check signal; transferring the second error check signal developed at said second data unit across said interface to said first data unit during said first data transfer period; transferring during second data transfer period across said interface, third set of control signals from said first to said second data unit and fourth set of control signals from said second to said first data unit; comparing, at said first unit during said second data transfer period the first error check signal developed at said first data unit with the second error check signal developed at said second data unit and indicating the result of comparison, said result of comparison indicating integrity of said first and second set of control signals. Thus, the transfer and comparison of error check signals are postponed and performed during the time sequence period following that in which the check control signals were transferred, so that the data transmission bandwidth between the first and second data units is not limited by generation and comparison of the error check signals. The error check signals generated for control signals transmitted during a first transfer sequence period are compared during the following transfer sequence period. In this respect, error checking is performed during the transfer period following the first transfer period within which the control signals being checked were transmitted. During the second transfer period, while check signals are being compared to determine the transmission integrity of the first transfer period control signals, another set of first and second control signals controlling another data transfer are being transmitted. In order that the invention may be well understood a preferred embodiment thereof will now be described with reference to the accompanying drawings, in which:- Figure 1 is a block diagram illustrating a high-speed, bidirectional data transmission interface which operates under control of a control processor. Figure 2 is a block diagram illustrating an I/O structure for transmission across the interface of Figure 1 in which control signal pathways have associated dedicated parity paths. Figure 3 is a block diagram illustrating the invention as applied to the data transmission interface of Figure 1. Figure 4 is a timing diagram illustrating the sequence of operations followed by the invention. In the description which follows, a data transmission interface denotes a shared boundary defined by common physical interconnection characteristics, signal characteristics, and functional characteristics of data units which interchange data across the interface. Data transmission across the data transmission interface 9 of Figure 1 is orchestrated and indirectly controlled by a control processor 10. The data transmission interface is an imaginary boundary between a pair of data interchange units 12 and 14 which exchange the data on a high-speed, bidirectional databus 16 extending across the interface. Also connecting the data interchange units across the data transmission interface is a first unidirectional control bus 18 which conducts control signals unidirectionally from the unit 12 to the unit 14. Similarly, a second unidirectional control bus 20 conducts control signals unidirectionally from the unit 14 to the unit 12. The data interchange units 12 and 14 are essentially identical in structure and operation; each acts as either a source or a sink of data and provides for data communication control performed in accordance with a transmission protocol for data exchange between the units on the bus 16. In this regard, the interchange unit 12 (which is representative of the unit 14) includes control logic 22, data storage 23, a control bus driver 24, a control bus receiver 26, a databus driver 30, and a databus receiver 32. The databus driver and receiver 30 and 32 are conventionally connected between the databus 16 and the data storage 23 to buffer data between the storage and the bus. Data is written to or read from the data storage 23 in connection with a predetermined data transmission protocol characterizing data transmission across the interface between the units 12 and 14. The protocol is enforced by a conventional control sequencer residing in the control logic 22. As is known, such a sequencer can be hardwired or programmed circuitry which executes a selected one of a number of control sequences which implement data interchange between the units 12 and 14. A particular data transfer sequence to be implemented by the sequencer in the control logic 22 is indicated to the logic on the data transfer sequence control line 36 connecting the control processor 10 to the control logic 22. The control processor 10 also provides, on line 34, an appropriate data transfer sequence timing signal T xx for synchronization of signal exchange between the units 12 and 14. A system clock such as T xx can comprise a conventional multiphase clock signal which is normally received and allocated in a unit such as the data units 12 and 14 by clock reception and distribution circuitry. Such circuitry is conventional and is not illustrated or described herein. For convenience, system clock distribution within a data interchange unit is represented by a line output from a control logic and labelled "T xx 3." As is conventional, the sequencer in the control logic 22 cooperates with a similar sequencer in the control logic of the unit 14 to exchange control signals indicative of the status of a data interchange unit while transferring data signals during a particular data transfer sequence. Such signals are also called "handshaking" signals. Error checking of the control signals exchanged between the units 12 and 14 over the high-speed, bidirectional data transmission interface is vital to the correct execution of data exchange, yet is difficult, due to the multidirectional flow of control signals between the units 12 and 14 as they control the data transfer across the interface. One method to check the integrity of control signals conducted by the buses 18 and 20 and isolate a malfunctioning unit is shown in Figure 2. In Figure 2, a control parity signal is added to the data transmission interface of Figure 1 for each of the control buses 18 and 20. For example, control signal integrity on the control bus 18 is evaluated by means of a conventional parity circuit comprising a parity generator 40, a driver 42, a parity signal path 44 extending across the data transmission interface, a receiver 46, a parity checker 48, and a parity check latch 50. As conveyed by the usual sense of the parity concept, the parity generator 40 receives a group of parallel bits forming a control word to be transmitted on the control bus 18 during a given time period of a selected data transfer sequence. The parity generator 40 is conventionally an exclusive-OR tree having a structure that generates a "parity" bit which will make the sum of the control bits and parity bit odd or even according to the parity regime selected. The signal produced by the generator will be conditioned to represent the parity bit or not, as required. Hereinafter, this signal is referred to the "parity" or "error check" signal. The parity signal is provided to the driver 42 to be transferred on the parity transfer path 44 during the same time period that the control word used to generate it is transferred on the control bus 18. Both the control word and the parity bit are received in the unit 14 simultaneously and provided to the parity checker 48. The parity checker 48 determines the parity required for the received control signal and compares that determined parity against the received parity signal. If the parity indicated for the received control signal deviates from the parity indicated by the received parity signal, an error indication is provided and entered into the latch 50. The results of the parity check are provided as an interface parity check (INTFC PTY CHK) signal. As will be appreciated, the status of this signal is indicative of the integrity of the end-to-end transmission of the control signal from the data unit 12 to the data unit 14. The circuit of Figure 2 provides not only an independent parity check for the transmission of control signals over the buses 18 and 20, respectively, but also isolates a data interchange unit whose operation introduces error into the control signals. In this regard, the parity check performed by the checker 48 in Figure 2 indicates the reliability of all of the transmission equipment upstream of it. Assuming the proper functioning of the receivers terminating the parity line 44 and the control bus 18, an indication of error by the parity checker 48 will be taken to signify erroneous operation of the data interchange unit 12. A field maintenance procedure based upon a response to an error indication by the parity checker 48 would entail field replacement of the data interchange unit 12 as the most probable unit at fault and unit 14 as the next probable. In the context of such a maintenance procedure, the unit 12 would also be referred to as a "field replaceable unit" (FRU). It is manifest that, while the arrangement of Figure 2 supports the independent evaluation of the transmission integrity of each of the buses 18 and 20, it taxes the I/O resources of both of the units 12 and 14 in that it requires dedication of a separate, respective parity transmission path for each of the control buses. In an I/O-limited environment, any reduction in the allocation of I/O resources for transmission error checking would be well received. Such reduction is provided by the invention, which is illustrated in detail in Figure 3. With reference to Figure 3, the complement of parity checking circuitry in the data interchange unit 12 includes a parity generator 59 which generates a parity bit for the joint parity of control signals on the buses 18 and 20, a parity latch 60 connected to receive the output of the parity generator 59, and a parity comparator (COMP) 62 which compares a pair of parity signals, one held in the parity latch 60, and the other described below. In the data interchange unit 14, a conventional bus driver 64 (also referred to as a "transmitter") buffers the control word generated from the control logic in the unit 14 onto the control bus 20. A pair of conventional bus receivers 66 and 68 each buffer control words from the control bus 18 into the unit 14. A third bus receiver 70 acts as a buffer between the output of the bus driver 64 and a parity generator. Two parity generators 72 and 76 are provided in the data interchange unit 14. Each of these parity generators is connected to a respective one of the parity latches 74 and 78. The parity signal held in the parity latch 78 is transmitted to the data interchange unit 12 by way of driver 82, parity transmission path 83, and receiver 84, whence it is conducted to the other input of the parity comparator 62. The parity signal at the output of the driver 82 is buffered back into interchange unit 14 through receiver 81. A parity comparator 80 compares this check signal and the check signal held in the parity latch 74. The operation of the invention illustrated in Figure 3 is based upon the generation of a joint parity signal indicative of the parity resulting from the joinder of control signals transmitted across the data transmission interface. In this regard the parity generator 59 and each of the parity generators 72 and 76 includes an exclusive-OR tree circuit which is conventional in all respects. The circuit samples the control words (CNTLA from unit 12 and CNTLB from unit 14) transferred across the data transmission interface during a transfer period. The parity generator 59 receives CNTLA as the control word is being provided by unit 12's control logic 22 to the driver 24 for transmission across control bus 18. The parity generator 59 receives unit 14's control word CNTLB from the receiver 26 when that control word is received from the control bus 20. CNTLA and CNTLB are fed to the exclusive-OR circuit in the parity generator, which performs the well-known exclusive-OR function on the control words to generate a parity bit. The parity signal generated by the generator 59 therefore represents the exclusive-OR joinder of the control words CNTLA and CNTLB. The parity signal produced by the parity generator 59 is fed to the parity latch 60. The parity latch 60 is a conventional clocked latch which operates in response to the time sequence signal T xx provided by the control processor 10 on signal line 34 (Figure 1). The parity generators 72 and 76 in the data interchange unit 14 correspond essentially in structure and operation to the parity generator 59. The generator 72 produces a parity signal which results from the exclusive-OR joinder of the CNTLB control signal provided to the input of the driver 64 for transmission on control bus 20 and the CNTLA signal buffered from the control bus 18 through the receiver 66. The parity signal produced by the generator 72 is fed to the clocked parity latch 74. The parity generator 76 produces a parity signal resulting from the exclusive-OR joinder of the CNTLA control word buffered into the unit 14 from the bus 18 through the receiver 68 with the CNTLB control word buffered onto the bus 20 from the output of the driver 64 through the receiver 70. The parity signal produced by the generator 76 is fed to and stored in the clocked parity latch 78. The parity signals produced by the parity generators 59, 72, and 76 during any data transmission sequence period are compared during a subsequent sequence period by the parity comparators 62 and 80. The comparators 62 and 80 are conventional digital comparators, each of which provides an output indicative of the equivalence or non-equivalence (disparity) of a pair of binary digits. Relatedly, the comparator 62 compares the parity signals held in the latches 60 and 78, while the comparator 80 compares parity signals in the latch 74 with the parity signal obtained from the latch 78 via the driver 82 and receiver 81. If the parity comparator 62 indicates disparity, while the parity comparator 80 indicates equivalence, the conclusion is that control signal transmission error has occurred in the data interchange unit 12. On the other hand, if disparity is indicated by comparator 80 or by both the comparators 62 and 80, the error is assumed to have arisen as the result of operations in the unit 14. As illustration, assume one of the drivers in the driver 24 of data interchange unit 12 intermittently has failed to come on. In this case, the corresponding receivers 66 and 68 will perceive the driver to be off. The parity generators 72 and 76 will respond according to this perception of the control bus 18. As a result, the parity check produced by comparison of parity signals in the parity latches 74 and 78 will be equivalent and the comparator 80 will indicate no fault. However, the parity signal produced by the generator 76 will not be equivalent with that produced by the generator 59, and the comparator 62 will condition its parity check output to indicate disparity between its input parity signals. In this case, the equivalence indication from the comparator 80 and the disparity indication from the comparator 62 would indicate faulty operation in the interchange unit 12. The specific operation of receiving, decoding, and interpreting the comparison signals produced by the comparators 62 and 80 can be performed by diagnostic logic residing, for example, in the program of the processor 10. Refer to Figure 1 where the signal lines 90 and 91 and labelled "INTERFACE PARITY CHECK" provide conductivity from the units 12 and 14 to the processor 10. These lines are sourced, in the invention, by the comparators 62 and 80 as illustrated in Figure 3. Table I below provides a mapping which can be employed by the diagnostic logic to provide a visual or other detectable indication of unit malfunction. In Table I, each possible combination of disparity indications from the comparators 62 and 80 are corresponded to the components whose malfunction would cause the combination. The location of a malfunctioning component is determinative of a faulty FRU - if the driver 64 works incorrectly, the unit 14 would be replaced by an equivalent unit. Thus, the disparity combinations can be used to indicate a faulty unit. In Table I, "x" indicates a disparity signal from a comparator. Thus, if the receiver 68 failed to operate properly, disparity would be indicated by both comparators and the diagnostic logic would provide an indication for the replacement of the unit 14. For another example illustrative of the operation of the invention of Figure 3 in providing fault isolation between the units 12 and 14, assume faulty operation of the receiver 66 in the data interchange unit 14. In this example the receiver 66 is used to buffer the control word CNTLA produced by the control logic in the unit 12 to the parity generator 72. If the receiver 66 has malfunctioned, the parity signal produced by the generator 72 would differ from the parity signals produced by the generators 76 and 59. In this instance, the comparator 80 would condition its output to indicate disparity, in which case faulty operation would be attributed to data interchange unit 14. It will be evident with reference to Figure 3 and the description provided thus far, that the invention clearly reduces the I/O resources required for conducting error checks of control signals and providing full fault isolation of the units 12 and 14: the invention requires only a single parity signal path 83 to perform error checking and to effect full isolation between two data interchange units, while the more conventional approach illustrated by Figure 2 requires two such data paths and does not provide the same level of FRU isolation. Refer now to Figure 4 for an understanding of how the time sequencing of the operations of the invention eliminates any effect on the data transmission bandwidth between the interchange units 12 and 14. An important aspect of the invention is the employment of parity latches 60, 74, and 78. Because of the high data rate requirement of the data transmission interface, the propagation delays of the signals necessary for checking parity can impose a limitation on the data transmission bandwidth of the interface. Propagation delays associated with parity signal generation in the interchange unit 14 and its transmission back to the interchange unit 12 are sufficiently large to prevent the reliable processing of the generated parity in the interchange unit 12 simultaneously with the transmission of the control words being checked. However, by employing latches to retain the generated parity signals and time-shifting the signals for a later comparison, the data transmission bandwidth between the units 12 and 14 is not limited by propagation delays, and the highest possible data rate can be maintained. This can be understood with reference to the timing diagram of Figure 4, where a cyclic system clock sequence has recurring periods, each period including eight clock slots 0-7. Phased clock signals are produced by the control processor and distributed on signal line 34. These phased clock signals are denoted as T xx , with the subscript indicating during which slots of each period the clock is active. Thus, for example, the T₀₄ clock is active during period slots 0 and 4, while the T₂₆ clock is active during period slots 2 and 6. The T₂₆ clock is used to define a sequence of control data transfer periods, N-1 through N+3. Thus, for example, during sequence transfer period N, control signals are exchanged between the data interchange units 12 and 14 on the control buses 18 and 20, with the control exchange including the simultaneous transmission of control signals CNTLA and CNTLB between the units on the buses 18 and 20, respectively. The T₂₆ clock is provided to the control logic in each of the interchange units to stage the transfer of a control word from the logic onto its respective control bus. Thus, the period denoted by N in Figure 4 begins on the rising edge 100 of the T₂₆ clock. (In Figure 4 the xxxx's signify transition states.) In response to the rising edge 100, CNTLA and CNTLB are provided to the drivers 24 and 64, respectively. A control signal is continuously asserted by a respective control logic following a rising edge of the T₂₆ clock until the following rising edge defining the next control sequence. Therefore, the control words CNTLA and CNTLB will be continuously available to the parity generators between successive rising edges of the T₂₆ clock. Hence, once presented to their respective bus drivers, CNTLA and CNTLB are buffered onto their respective control buses 18 and 20 and therefrom by bus receivers 66, 68, and 26. Since there is a period of time after the rising edge of the T₂₆ clock when the output of the parity generators 59, 72, and 76 is changing as the result of transmission times over the buses 18 and 20, their outputs are not sampled until the longest possible delay encountered for transmission of any control signal between the control logics of the interchange units 12 and 14. The lumped delay of driver, bus transmission, receiver, and parity generator determines when the outputs of the parity generators are to be sampled. The longest of these lumped delays is taken into account in synchronizing the T₀₄ clock with the T₂₆ clock; the period of time between the rising edges 100 and 102 in Figure 4 exceeds the longest lumped delay expected over the data transmission interface. Thus, the outputs of the parity generators 59, 72, and 76 can be reliably sampled with the rising edge 102 of the T₀₄ clock. Such sampling is performed by the latches 60, 74, and 78, which capture respective parity signals with the rising edge 102. Once latched, the parity signals determine the output states of the comparators 62 and 80, which can be latched at the next rising edge 104 of the T₂₆ clock, which begins sequence transfer period N+1. This provides a sufficient transmission time for transmitting the parity signal held in the latch 78 across the data transmission interface on parity transmission path 83 back to the interchange unit 12 for input to the comparator 62. Therefore, the parity signals indicative of the joint parity of CNTLA and CNTLB during transfer period N can be evaluated by comparators 62 and 80 for error checking during signal period N+1, when the next set of control words is transmitted. This is indicated by waveform fragment N produced by the comparator 62. It is to be understood that the output of the comparator 80 is sampled at the same time as comparator 62 by sampling synchronization using the T₂₆ clock.

Claims: An apparatus for checking the integrity of control signals which control data transfers across a bidirectional data transmission interface (9) in a bidirectional data transmission system, comprising a source (TXX) of timing signals defining a sequence of data transfer timing periods, said sequence including a first data transfer period during which first and second sets of control signals are transferred, and a second data transfer period during which third and fourth sets of control signals are transferred, said second data transfer period following said first data transfer period in said sequence; a first data unit (12) for transmitting said first set of control signals (CNTLA) and receiving said second set of control signals (CNTLB) across the data transmission interface (9) during the first data transfer period and for transmitting said third set of control signals (CNTLA) and receiving said fourth set of control signals (CNTLB) across the data transmission interface (9) during the second data transfer period; a second data unit (14) connected to said first data unit (12) for transmitting said second set of control signals (CNTLB) and receiving said first set of control signals (CNTLA) across said data transmission interface during the first data transfer period and for transmitting said fourth set of control signals (CNTLB) and receiving said third set of control signals (CNTLA) across said interface during the second data transfer period; first parity generating means (59) in said first data unit (12) and responsive to said first and second sets of control signals to generate therefrom a first error check signal; second parity generating means (76) in said second data unit (14) and responsive to said first and said second sets of control signals to generate therefrom a second error check signal; first storage means (60) responsive to said timing signals and connected to said first parity generating means (59) for storing said first error check signal during said first data transfer period; second storage means (78) responsive to timing signals and connected to said second parity generating means (76) for storing said second error check signal during said first data transfer period; signal conduction means (82, 84) connected to said second storage means (78) for unidirectionally conducting said second error check signal stored in said second storage means (78) to said first data unit (12) during said first data transfer period; and first comparator means (62) in said first data unit (12) connected to said first storage means (60) and to said signal conduction means (82, 84) for comparing said first and second error check signals and for indicating the result of the comparison during said second data transfer period; said result of comparison indicating integrity of said first and second sets of control signals. Apparatus as claimed in claim 1 wherein said error check signal is the joint parity of said first and second sets of control signals. Apparatus as claimed in claim 1 or claim 2 including, in said second data unit (14), a transmitter (64) having an input for receiving said second control signals (CNTLB), and an output for transmitting said second control signals, and wherein said second parity generating means includes a parity generator (76) responsive to said first set of control signals and to said second set of control signals provided at said output of said transmitter for producing said second error check signal. Apparatus as claimed in claim 3, including: a third parity generating means (72) responsive to said first set of control signals and to second set of control signals provided at said input of said transmitter to generate therefrom a third error check signal; a third storage means (74) responsive to the timing signals and connected to said third parity generating means for storing said third error check signal during said first data transfer period and second comparator means (80) connected to said second and third storage means for comparing said second and third error check signals and for indicating the result of said comparison during said second data transfer period. A method for checking the integrity of control signals which control data transfers across a bidirectional data transmission interface (9) in a bidirectional data transmission system in which a source (TXX) of timing signals defines a sequence of data transfer timing periods, said sequence including a first data transfer period during which first and second sets of control signals are transferred, and a second data transfer period during which third and fourth sets of control signals are transferred, said second data transfer period following said first data transfer period in said sequence, said method comprising the steps of: transferring across said interface, said first set of control signals (CNTLA) from a first to a second data unit and said second set of control signals (CNTLB) from said second to said first unit, said transferring occurring during the first data transfer period; generating from said first and second sets of signal control signals at said first data unit a first error check signal; generating from said first and second set of control signals at said second data unit a second error check signal; transferring the second error check signal developed at said second data unit (14) across said interface to said first data unit (12) during said first data transfer period; transferring during the second data transfer period across said interface, the third set of control signals from said first to said second data unit and the fourth set of control signals from said second to said first data unit; comparing, at said first unit during said second data transfer period the first error check signal developed at said first data unit with the second error check signal developed at said second data unit and indicating the result of comparison, said result of comparison indicating integrity of said first and second set of control signals. A method as claimed in claim 5, wherein said error check signals represent the joint parity of said first and second sets of control signals.

Inventors: CHIHARA CAROL, CHIN VICTOR HUIE, SHA ALLEN SHIH-WEI, CHIHARA, CAROL, CHIN, VICTOR HUIE, SHA, ALLEN SHIH-WEI
Applicants: IBM, INTERNATIONAL BUSINESS MACHINES CORPORATION
Application year: 1988
Main classification: G06F11
IPC codes: H04L1, G06F11