Abstract:
A high-speed data transfer system comprising a plurality of data drivers, each with controllably reduced on-resistance and correspondingly reduced risk of driver circuit burnout and each operating asynchronously or synchronously with a plurality of different data drivers.

Description:
BACKGROUND OF THE INVENTION 
     Prior art data transfer systems, such as the one described in U.S. Pat. No. Re. 29,246 are limited to predetermined data transfer rates by high output impedance of the data drivers or have high risk of hardware failure owing to conflicting priorities on common signal bus lines. Conflicting priorities typically arise from the malfunction of selection S/W or H/W. Data transfer rates are typically determined by signal transmission time, response and processing times of data receivers to applied signals, time for each data receiver to indicate to a data sending unit, or driver, that it has received data and that it is ready to receive new data after it processes that data previously received. 
     Data drivers most commonly used to drive data and valid data indicator (DAV) lines typically contain either passive or active &#34;pullup&#34; circuitry. Referring to FIG. 1, each of a plurality of data drivers include passive pullup circuitry comprising resistor 11 through which current is controlled by a single transistor such as transistor 10 connected to bus line 5. Resistors such as resistor 11 are coupled to each of the lines somewhere in the system to maintain them at a known voltage, V high , when no data driver is operating, i.e. transistor 10 cutoff. Thus, the line has been &#34;pulled up&#34; to V high  by resistor 11 when transistor 10 in all devices is inactive. 
     Normally, device selection circuitry will guarantee that only one data driver is active at a time and, in a ll inactive drivers, transistor 10 is then inactive. If, however, a programming or other error or failure in selection causes more than one passive pullup driver to operate at the same time, the current available to driver transistors is still limited by resistor 11 and no burnout occurs. However, the transmission time of a high voltage signal on the bus line is also limited by resistor 11. Signal transmission time is largely determined by the RC time constant introduced by bus line cable capacitance and the value of pullup resistor 11 or saturation resistance, R on , of transistor 10. Since the value of resistor 11 is usually much greater than R on  of transistor 10, the speed of the low-to-high voltage transition of the bus line when transistor 10 is cutoff is much slower than the high-to-low voltage transition when transistor 10 is turned on. Thus, signal transmission time is retarded, which in turn limits system response time. 
     Prior art data transfer systems having three-state drivers frequently include &#34;active&#34; pullup circuits such as the one shown in FIG. 2. When pullup transistor 21 within an active data driver is enabled, the bus line is &#34;pulled up&#34; to V high , i.e. transistor 21 is saturated. In these systems, the active pullup circuit is enabled at all times when transistor 10 is turned on. The saturation resistance, R on , of transistor 21 can be made much lower than the resistance of resistor 11 since, under normal circumstances, it will never supply current to transistor 10. Therefore, much faster signal transmission time is achievable in systems using active pullup than in systems using passive pullups. 
     However, in the presence of error-caused priority conflicts among two or more drivers, a current path can exist between transistor 10 in one driver and transistor 21 in another. In these cases, the only limitation on the current available to the driver transistors is the series saturation resistance of the transistor. Thus, the probability of hardware failure when such conflicts arise is dramatically increased. 
     SUMMARY OF THE INVENTION 
     According to the present invention, data drivers include pullup resistors and modified three-state drivers having enable circuitry which is activated only when a selected driver has priority on the bus line. The enable circuitry is activated by a signal developed from the DAV signal. Although three-state drivers have very low output impedance, R on , for producing rapid voltage transitions when active, once those transitions are complete, the output impedance need not remain low. According to the present invention for synchronous and asynchronous data transfer systems, after V high  is achieved on a signal line, the output impedance of the data driver is substantially increased to a value still suitable for maintaining that high voltage on the line. Thus, the enable circuitry is deactivated after the rapid voltage transitions are complete. 
    
    
     DESCRIPTION OF THE DRAWING 
     FIG. 1 is a schematic diagram of a passive pullup circuit of a data transfer system in the prior art. 
     FIG. 2 is a schematic diagram of an active pullup circuit of a data transfer system in the prior art. 
     FIG. 3 is a logic diagram of a high-speed data transfer system constructed according to the preferred embodiment of the present invention. 
     FIG. 4 is a logic diagram of the three-state driver used in the system of FIG. 3. 
     FIG. 5 is a timing diagram showing the control signals of a prior art passive pullup system of FIG. 1. 
     FIG. 6 is a timing diagram showing the control signals for a prior art three-state driver of FIG. 2. 
     FIG. 7 is a timing diagram showing the control signals for the system of FIG. 3. 
     FIG. 8 is a logic diagram of a CD pulse generating system for use with the data transfer system of FIG. 3. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     A system constructed according to the principles of this invention is configured much like the system described in U.S. Pat. No. Re. 29,246, which is incorporated by reference as if fully set forth herein. 
     Referring to FIG. 3, typical data receiver/driver 30 comprises three-state data driver 301 and data receivers 302. Each are duplicated for each data link. Each three-state driver comprises the equivalent circuit of FIG. 4 wherein signal D is the data input, signal E is enable input, signal CD is the data changing enable input, which behave according to Table I below: 
     
                       Table I______________________________________E         D      CD            Out______________________________________Low       X      X       High impedance (disabled)High      Low    X       Low impedance pulldownHigh      High   Low     High impedance (disabled)High      High   High    Low impedance pullup______________________________________ X = don&#39;t care 
    
     The relative timing of these signals is shown in FIG. 7 and is described in more detail later in this specification. 
     Passive pullup resistors R s , which may be located in each receiver/driver or at any convenient location along the bus line, are sized for maintaining V high  on their corresponding bus lines as long as associated-data drivers are not contending for priority on the same bus line, i.e. attempting to drive toward V low  or &#34;pulldown&#34;. If priority conflict arises, driver impedance is kept low enough to easily assume priority and low voltage on the line results. 
     Three-state drivers of the preferred embodiment are disabled after V high  has been achieved on the bus line. Under normal system operation, pullup resistors (R s ) are used to maintain high voltage levels in lieu of the active drivers maintaining the voltage during this period. Such drivers are enabled only when it is known that data is changing or that the drivers are trying to pulldown. Since that mode of operation precludes a steady-state short between two drivers driving toward opposite voltage values on the same bus line, resulting driver burnout is effectively eliminated. 
     In most data transfer systems, the common practice is to delay the DAV signal for a small period of time after a new byte of data is applied to the data lines to allow for settling of transient conditions such as signal rise and fall times, propagation delays, reflections on the bus lines and the like. During this time period in the present invention, a pulse from the DAV signal delay circuitry is produced for use directly as the &#34;change data&#34; (CD) pulse. The CD pulse enables the active pullup circuitry within the three-state drivers. 
     In prior art drivers, active pullup circuitry such as transistor 21 in FIG. 2, is enabled at all times throughout the cycle. Thus, conflict for bus line priority having the substantial probability of causing hardware failure can occur at any time during the cycle. Referring now to FIGS. 5 and 6, DAV signal is applied at T 2  which is T 2  -T 1  (deskew time) after data is placed on the bus line. Deskew time, which is arbitrarily selected, is the settling time required by the system bus line. At time T 3 , the receivers have received the data, acknowledge their acceptance of data, (e.g. DAC signal is transmitted by the receivers), and the DAV signal is removed. Time duration T 3  -T 2  is the time during which valid data may be received by the receivers. 
     Referring to FIG. 7 for the present invention, data is applied to the bus lines by the data drivers and active pullup or pulldown is enabled at time T 1 . At time T 2  active pullup transistor 21 is disabled if originally enabled, and the DAV signal is applied to the bus line. At time T 3 , the DAV signal is terminated and data allowed to change when it is confirmed that the receivers have received the valid data, i.e. DAC signal transmitted by receiver. Thus, the drivers attempt to transmit valid data during the time T 3  -T 1 . When the active pullup circuit is disabled at time T 2 , logic voltage levels on the bus line are maintained by pullup resistors R s  until time T 3 . Conflict for bus line priority between two or more drivers having the potential for causing hardware failure can only occur during the deskew time T 2  -T 1 , the duration of the CD pulse. 
     If priority conflict exists in a data transfer system utilizing this invention, the two or more conflicting drivers typically will be synchronized. In this case, actual shorting of a data driver being driven to V high  to a data driver being driven to V low  can occur only during the CD pulse, the widths of which being limited to a specific arbitrary data settling time. The power dissipated during the actual short can be averaged over the entire cycle when analyzing the potential for driver burnout. Thus, the driver output impedance can be reduced at reduced risk of driver burnout. 
     It should be noted that the CD pulse used by the driver is easily obtainable in an asynchronous system which places data on the bus a finite delay time before asserting the DAV signal. A single AND gate, such as 81, or equivalent logic, may be connected to an already existing delaying element used to hold off the assertion of the DAV signal as shown in FIG. 8. The duration of the resulting CD pulse is approximately equal to the delay.