xr16m890 Exar Corporation, xr16m890 Datasheet - Page 15

no-image

xr16m890

Manufacturer Part Number
xr16m890
Description
Uart With 128-byte Fifo And Integrated Level Shifters
Manufacturer
Exar Corporation
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
xr16m890IL32-F
Manufacturer:
EXAR
Quantity:
1 420
Part Number:
xr16m890IL32-F
Manufacturer:
EXAR/艾科嘉
Quantity:
20 000
Company:
Part Number:
xr16m890IL40-F
Quantity:
700
Company:
Part Number:
xr16m890IL40-F
Quantity:
3 300
Part Number:
xr16m890IM48-F
Manufacturer:
Exar Corporation
Quantity:
10 000
Part Number:
xr16m890IM48-F
Manufacturer:
EXAR/艾科嘉
Quantity:
20 000
Company:
Part Number:
xr16m890IM48-F
Quantity:
412
Part Number:
xr16m890IM48TR-F
Manufacturer:
Exar Corporation
Quantity:
10 000
REV. P1.1.1
The M890 has independent Baud Rate Generators (BRGs) with prescalers for the transmitter and receiver.
The prescalers are controlled by a software bit in the MCR register. The MCR register bit-7 sets the prescalers
to divide the input crystal or external clock by 1 or 4. The output of the prescaler clocks to the BRG. The BRG
further divides this clock by a programmable divisor between 1 and (2
16) to obtain a 16X or 8X or 4X sampling clock of the serial data rate. The sampling clock is used by the
transmitter for data bit shifting and receiver for data sampling.
The BRG divisor (DLL, DLM, and DLD registers) defaults to the value of ’1’ (DLL = 0x01, DLM = 0x00 and DLD
= 0x00) during power-on reset. The DLL and DLM registers provide the integer part of the divisor and the DLD
register provides the fractional part of the divisor. The four lower bits of the DLD are used to select a value from
0 (for setting 0000) to 0.9375 or 15/16 (for setting 1111). The divisor values can be calculated with the following
equations:
The BRG divisors can be calculated using the following formulas:
In the formulas above, please note that TRUNC (N) = Integer Part of N. For example, TRUNC (5.6) = 5.
For example, if the crystal clock is 24MHz, prescaler is 1, and the sampling mode is 16X, the divisor for a baud
rate of 38400bps would be:
Table 3
pre-scaler is used (MCR bit-7 = 1), the output data rate will be 4 times less than that shown in
sampling rate, these data rates would double. And at 4X sampling rate, they would quadruple. Also, when
using 8X sampling mode, please note that the bit-time will have a jitter (+/- 1/16) whenever the DLD is non-zero
and is an odd number.
The XR16M890 has two independent sets of TX and RX baud rate generator. See
use different baud rates by setting DLD, DLL and DLM register. For example, TX can transmit data to the
remote UART at 9600 bps while RX receives data from remote UART at 921.6 Kbps. For the baud rate setting,
See ”Section 3.15, Baud Rate Generator Registers (DLL, DLM and DLD) - Read/Write” on page 45.
1.8
1.8.1
1.8.2
Divisor = (XTAL1 clock frequency / prescaler) / (serial data rate * 16), with 16X mode, DLD[5:4] = ’00’
Divisor = (XTAL1 clock frequency / prescaler / (serial data rate * 8), with 8X mode, DLD[5:4] = ’01’
Divisor = (XTAL1 clock frequency / prescaler / (serial data rate * 4), with 4X mode, DLD[5:4] = ’10’
Integer Divisor = TRUNC (Divisor)
Fractional Divisor = Divisor - Integer Divisor
Divisor = (24000000 / 1) / (38400 * 16) = 39.0625
Integer Divisor = TRUNC (39.0625) = 39
Fractional Divisor = 39.0625 - 39 = 0.0625
DLM = 39 / 256 = 0 = 0x00
DLL = 39 & 256 = 39 = 0x27
DLD = 0.0625 * 16 = 1 = 0x1
Programmable Baud Rate Generator with Fractional Divisor
shows the standard data rates available with a 24MHz crystal or external clock at 16X clock rate. If the
Fractional BRG Example
Independent TX/RX BRG
DLD = TRUNC(Fractional Divisor * 16)
UART WITH 128-BYTE FIFO AND INTEGRATED LEVEL SHIFTERS
DLL = Integer Divisor & 256
DLM = Integer Divisor / 256
PRELIMINARY
15
16
- 0.0625) in increments of 0.0625 (1/
Figure
10. TX and RX can
XR16M890
Table
3. At 8X

Related parts for xr16m890