User Manual
BCM1250/BCM1125/BCM1125H
10/21/02
B r o a d c o m C o r p o r a t i o n
Document
1250_1125-UM100CB-R
Section 10: Serial Interfaces Page
321
A
SYNCHRONOUS
M
ODE
The asynchronous interface is provided using a DUART. The two channels are separately programmable and
each has its own baud rate generator. Each channel has a 16 byte transmit FIFO and a 16 byte receive FIFO.
In addition to the data path there are 4 inputs and 2 outputs per channel that can either be used for flow control
or are available for general use. The inputs are readable through the input port register (IPR), and the outputs
are set through the output port register (OPR). Even numbered I/O lines are associated with channel A, and
odd numbered lines with channel B. The UART supports RTS/CTS flow control in hardware, other control must
be done in software. When serial port 0 is set in asynchronous mode it is driven from channel A of the DUART,
serial port 1 in asynchronous mode is driven from channel B.
B
AUD
R
ATE
G
ENERATORS
The baud rate is generated on chip by dividing down from the 100MHz reference clock. Each channel can have
a different baud rate, but for a channel the transmit and receive rates must be the same. The baud rate is
selected by setting the
duart_clk_sel
register to
(100 MHz/(baud_rate * 20)) - 1
Some popular baud rates are shown in the table below.
The baud clock can be output on the Cout pin by setting the appropriate bit in the output port configuration
register
duart_opcr
.
The baud clock is also used for the synchronous serial interface when it is configured to use an internal clock.
In this case Cout should be configured to pass the clock signal to the external devices.
Table 196: Baud Rate Counter Values
Baud Rate
Count
Actual
% Error
1200
4095
1220.703
1.72526
2400
2082
2400.384
0.016003
4800
1040
4803.074
0.064041
9600
519
9615.385
0.160256
19200
259
19230.77
0.160256
38400
129
38461.54
0.160256
57600
85
58139.53
0.936693
115200
42
116279.1
0.936693
230400
21
227272.7
-1.35732
500000
9
500000
0
1000000
4
1000000
0