Intel 386 Computer Hardware User Manual


 
13-7
SYNCHRONOUS SERIAL I/O UNIT
13.2.2.1 Transmit Mode using Enable Bit
The transmitter contains a transmit holding buffer empty (THBE) flag and a transmit underrun
error (TUE) flag. At reset, THBE is set, indicating that the buffer is empty. Writing data to the
buffer clears THBE. When the transmitter transfers data from the buffer to the shift register,
THBE is set. If the transmitter is enabled (TEN bit is set, AUTOTXM is clear), it transfers the
new contents of the transmit buffer to the shift register each time the shift register finishes shifting
its current contents.
If the shift register finishes shifting out its current contents before a new value is written to the
transmit buffer, it reloads the old value and shifts it out again. This condition is known as a trans-
mitter underrun error. TUE is set to indicate an underrun error. For high speed transfers this can
be a problem, since the Baud-rate generator clock may be too fast; it may not allow enough time
to control the TEN bit for each word transfer. This could cause the same word to be transmitted
more than once. See “Autotransmit Mode” on page 13-12 for a description of how to avoid this
problem.
The transmitter also has a transmit holding buffer empty signal (SSTBE). This signal can be con-
nected to the interrupt control and DMA units. This allows you to use either an interrupt service
routine or a DMA transfer to load new data in the transmit holding buffer.
Figures 13-6 and 13-7 are simple descriptions of the SSIO transmitter state-machine when Au-
totransmit mode is enabled or disabled.
Figure 13-6. SSIO Transmitter with Autotransmit Mode Enabled
A3400-01
HOLD
THBE = 0
THBE = 1
Initialize
SSIO
A
U
T
O
T
X
M
=
1
T
H
B
E
=
1
Data Written Into
SSIOTBUF
Clears THBE
Data In Buffer
Moved To
Shift Register
THBE Set