WO1999059074A1 - Multi-function uart - Google Patents

Multi-function uart Download PDF

Info

Publication number
WO1999059074A1
WO1999059074A1 PCT/JP1999/002376 JP9902376W WO9959074A1 WO 1999059074 A1 WO1999059074 A1 WO 1999059074A1 JP 9902376 W JP9902376 W JP 9902376W WO 9959074 A1 WO9959074 A1 WO 9959074A1
Authority
WO
WIPO (PCT)
Prior art keywords
pulse
serial
length
parallel
interface
Prior art date
Application number
PCT/JP1999/002376
Other languages
French (fr)
Inventor
Jeffery Bond
Original Assignee
Nec Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nec Corporation filed Critical Nec Corporation
Priority to AU36290/99A priority Critical patent/AU3629099A/en
Publication of WO1999059074A1 publication Critical patent/WO1999059074A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices

Definitions

  • This invention relations to a multi-function UART (universal asynchronous receiver transmitter) intended for use in a data processing system, such as a personal computer.
  • an infrared interface is required in a data processing system it is usually to employ a standard UART device in a form of an LSI (large scale integrated) circuit, which is usually "NS16550” UART by National Semiconductor Inc. or a “16550” compatible UART, and attach a separate IrDA (Infrared Data Association) modem, which is an infrared modem based on one of IrDA standards, to the transmit and receive lines.
  • IrDA Infrared Data Association
  • the serial interface will also usually include a 16550 compatible UART. This duplication not only wastes space and money, but also substantially doubles the effort required for programming.
  • the object of the present invention is the provision of a multi-function UART so as to avoid duplication.
  • a multi-function UART for use in a data processing system, comprising, an interface for connection to a host processor bus, a transmitter FIFO (first-in first-out) buffer connected to the interface, a parallel-to-serial converter connected to an output of the transmitter FIFO buffer to provide a serial data stream, a pulse shaper for controlling pulse length of each output pulse of the parallel-to-serial converter according to value of a corresponding serial bit, output selection means for selecting one of outputs of the parallel-to-serial converter and the pulse shaper, a receiver input stage including a pulse length discriminator and bit clock recovery means, a serial-to-parallel converter connected to an output of the receiver input stage, and a receiver FIFO buffer connected between the serial-to-parallel converter and the interface.
  • a transmitter FIFO first-in first-out
  • RS232 and IrDA interface functions can thus be included in a single device enabling considerable savings to be made .
  • FIG. 1 is a block diagram of a multi-function UART in accordance with a preferred embodiment of the present invention.
  • FIG. 2 is a block diagram showing a construction of the interface block.
  • the UART shown in FIG. 1 includes an interface block 10 for connection to the host CPU (central processing unit) bus 20.
  • the interface block receives address data, a read control signal, a write control signal and a chip select signal from the host CPU bus 20, and send a transmitter interrupt request (TX IRQ) and a receiver interrupt request (RX IRQ) to the host CPU bus 20 as well as it interchanges data with the host CPU bus 20.
  • TX IRQ transmitter interrupt request
  • RX IRQ receiver interrupt request
  • the interface 10 contains memory registers 21 to 30 which are all configuration registers for the UART.
  • the memory registers includes a receiver buffer register (RBR) 21 storing a received byte, a transmitter holding register (THR) 22 holding a transmit byte, a FIFO (first-in first-out) status register (FSR) 23 indicating status of the transmitter and receiver FIFO buffers 11, 17, a FIFO control register (FCR) 24 for controlling FIFO buffers 11, 17, a line control register (LCR) 25 for setting a divisor latch access bit (DLAB) and parameters for asynchronous communication, a line status register (LSR) 26 indicating the status of the communication line, a pulse width register (PWR) 27 for setting a width of an IrDA transmit pulse, a baud rate prescaler (BRP) 28 including an IrDA enable bit and storing bits 3-0 of the baud rate divisor, a first divisor latch (DLL) 29 storing bits 11-4 of the baud rate di
  • DMA Direct Memory Access
  • XMIT Direct Memory Access
  • TX Transmitter
  • RCV Receiver
  • LSB Least Significant Bit
  • MSB Most Significant Bit
  • DLAB Divisor Latch Access Bit.
  • the interface block 10 performs all address and select decoding for the UART.
  • the IrDA enable bit of. the BRP register 28 is reset when the UART is to operate in a standard mode, that is, an RS232 serial transmission mode and the IrDA enable bit is set when the UART is to operate in an infrared mode, that is, an IrDA transmission mode.
  • the UART includes a transmitter FIFO (first-in first-out) buffer 11 which receives data to be transmitted from the interface 10 as TX words and can store up to 16 bytes of the data.
  • the output of the FIFO 11 is connected to a parallel-to-serial converter 12 which takes data one byte at a time from the transmitter FIFO 11, truncates them to the correct bit length specified by the LCR register 25 of the interface 10.
  • the converter 12 also calculates the parity bit (if required) and adds start and stop bits.
  • the converter 12 outputs a standard RS232 serial data stream as TX serial data at the baud rate specified by the BRP, DLL and DLM registers 28 to 30 of the interface 10.
  • An IrDA pulse shaper 13 operates on the data stream from the converter 12 to provide an IrDA compatible pulse train with short pulses for "0"s in the RS232 stream and longer pulses (of length defined by the value held in the PWR register 27 of the interface 10) for "l"s in the RS232 serial data stream.
  • An output selector 14 controlled by the IrDA enable bit in the BRP register 28 of the interface 10 is connected to pass the output of either the converter 12 or the pulse shaper 13 to the final output terminal.
  • a receiver input stage 15 which receives the input pulse stream and includes a pulse width discriminator 18 and a clock recovery circuit 19.
  • This input stage 15 produces by a receive clock pulse for each pulse received and when an IrDA mode constructs an RS232 serial train from the received pulses in accordance with whether the received pulse lengths exceed the set IrDA pulse width. Concretely, in the IrDA mode, the input stage 15 outputs "0" for a received pulse having a length shorter than the predetermined length defined by the value held in the PWR register 27 of the interface 10 and outputs "1" for a received pulse longer than the predetermined length.
  • a serial to parallel converter 16 converts the serial data back into bytes based on the receive clock pulse and checks for correct framing and parity.
  • the output of the converter 16 is passed to a receiver FIFO buffer 17.
  • the receiver FIFO 17 is similar to the transmitter FIFO 11 in construction, but stores additional information for every byte stored representing the framing and parity error status checked by the converter 16.
  • the UART also has the advantage of allowing RS232 and IrDA interfaces to share an IRQ and address which could be important in a personal computer application. Reduction of chip area and size are of more importance in such applications as mobile telephone handsets .

Abstract

A multi-function UART (universal asynchronous receiver transmitter) for use in a data processing system, includes an interface (10) for connection to a host CPU bus (20); a transmitter FIFO (11) connected to the interface (10); a parallel-to-serial converter (12) connected to an output of the transmitter FIFO (11) to provide a serial data stream; a pulse shaper (13) for controlling the pulse length of each output pulse of the parallel-to-serial converter (12) according to value of the corresponding serial bit; output selector (14) for selecting one of outputs of the parallel-to-serial converter (12) and the pulse shaper (13); a receiver input stage (15) having a pulse width discriminator (18) and a clock recovery circuit (19); a serial-to-parallel converter (16) connected to an output of the receiver input stage; and a receiver FIFO buffer (17) connected between the serial-to-parallel converter (16) and the interface (10).

Description

DESCRIPTION MULTI-FUNCTION UART
Technical Field
This invention relations to a multi-function UART (universal asynchronous receiver transmitter) intended for use in a data processing system, such as a personal computer.
Background Art
Where an infrared interface is required in a data processing system it is usually to employ a standard UART device in a form of an LSI (large scale integrated) circuit, which is usually "NS16550" UART by National Semiconductor Inc. or a "16550" compatible UART, and attach a separate IrDA (Infrared Data Association) modem, which is an infrared modem based on one of IrDA standards, to the transmit and receive lines. However, if the system also has a serial interface such as an RS232 interface the serial interface will also usually include a 16550 compatible UART. This duplication not only wastes space and money, but also substantially doubles the effort required for programming.
Disclosure of Invention
The object of the present invention is the provision of a multi-function UART so as to avoid duplication.
In accordance with the invention there is provided a multi-function UART for use in a data processing system, comprising, an interface for connection to a host processor bus, a transmitter FIFO (first-in first-out) buffer connected to the interface, a parallel-to-serial converter connected to an output of the transmitter FIFO buffer to provide a serial data stream, a pulse shaper for controlling pulse length of each output pulse of the parallel-to-serial converter according to value of a corresponding serial bit, output selection means for selecting one of outputs of the parallel-to-serial converter and the pulse shaper, a receiver input stage including a pulse length discriminator and bit clock recovery means, a serial-to-parallel converter connected to an output of the receiver input stage, and a receiver FIFO buffer connected between the serial-to-parallel converter and the interface.
RS232 and IrDA interface functions can thus be included in a single device enabling considerable savings to be made .
Brief Description of Drawings
FIG. 1 is a block diagram of a multi-function UART in accordance with a preferred embodiment of the present invention; and
FIG. 2 is a block diagram showing a construction of the interface block.
Best Mode for Carrying out the Invention
The UART shown in FIG. 1 includes an interface block 10 for connection to the host CPU (central processing unit) bus 20. The interface block receives address data, a read control signal, a write control signal and a chip select signal from the host CPU bus 20, and send a transmitter interrupt request (TX IRQ) and a receiver interrupt request (RX IRQ) to the host CPU bus 20 as well as it interchanges data with the host CPU bus 20.
As shown in FIG. 2, the interface 10 contains memory registers 21 to 30 which are all configuration registers for the UART. The memory registers includes a receiver buffer register (RBR) 21 storing a received byte, a transmitter holding register (THR) 22 holding a transmit byte, a FIFO (first-in first-out) status register (FSR) 23 indicating status of the transmitter and receiver FIFO buffers 11, 17, a FIFO control register (FCR) 24 for controlling FIFO buffers 11, 17, a line control register (LCR) 25 for setting a divisor latch access bit (DLAB) and parameters for asynchronous communication, a line status register (LSR) 26 indicating the status of the communication line, a pulse width register (PWR) 27 for setting a width of an IrDA transmit pulse, a baud rate prescaler (BRP) 28 including an IrDA enable bit and storing bits 3-0 of the baud rate divisor, a first divisor latch (DLL) 29 storing bits 11-4 of the baud rate divisor and a second divisor latch (DLM) 30 storing bits 19-12 of the baud rate divisor. Table 1 below shows the address, bit constitution and function of each of the memory registers 21 to 30. Table 1
Figure imgf000006_0001
DMA: Direct Memory Access, XMIT, TX: Transmitter, RCV: Receiver, LSB: Least Significant Bit, MSB: Most Significant Bit, DLAB: Divisor Latch Access Bit.
The interface block 10 performs all address and select decoding for the UART.
The IrDA enable bit of. the BRP register 28 is reset when the UART is to operate in a standard mode, that is, an RS232 serial transmission mode and the IrDA enable bit is set when the UART is to operate in an infrared mode, that is, an IrDA transmission mode.
On the transmission side, the UART includes a transmitter FIFO (first-in first-out) buffer 11 which receives data to be transmitted from the interface 10 as TX words and can store up to 16 bytes of the data. The output of the FIFO 11 is connected to a parallel-to-serial converter 12 which takes data one byte at a time from the transmitter FIFO 11, truncates them to the correct bit length specified by the LCR register 25 of the interface 10. The converter 12 also calculates the parity bit (if required) and adds start and stop bits. The converter 12 outputs a standard RS232 serial data stream as TX serial data at the baud rate specified by the BRP, DLL and DLM registers 28 to 30 of the interface 10.
An IrDA pulse shaper 13 operates on the data stream from the converter 12 to provide an IrDA compatible pulse train with short pulses for "0"s in the RS232 stream and longer pulses (of length defined by the value held in the PWR register 27 of the interface 10) for "l"s in the RS232 serial data stream. An output selector 14 controlled by the IrDA enable bit in the BRP register 28 of the interface 10 is connected to pass the output of either the converter 12 or the pulse shaper 13 to the final output terminal.
On the receiver side, there is a receiver input stage 15 which receives the input pulse stream and includes a pulse width discriminator 18 and a clock recovery circuit 19. This input stage 15 produces by a receive clock pulse for each pulse received and when an IrDA mode constructs an RS232 serial train from the received pulses in accordance with whether the received pulse lengths exceed the set IrDA pulse width. Concretely, in the IrDA mode, the input stage 15 outputs "0" for a received pulse having a length shorter than the predetermined length defined by the value held in the PWR register 27 of the interface 10 and outputs "1" for a received pulse longer than the predetermined length.
A serial to parallel converter 16 converts the serial data back into bytes based on the receive clock pulse and checks for correct framing and parity. The output of the converter 16 is passed to a receiver FIFO buffer 17. The receiver FIFO 17 is similar to the transmitter FIFO 11 in construction, but stores additional information for every byte stored representing the framing and parity error status checked by the converter 16.
It should be noted that in addition to the advantages already referred to above the UART also has the advantage of allowing RS232 and IrDA interfaces to share an IRQ and address which could be important in a personal computer application. Reduction of chip area and size are of more importance in such applications as mobile telephone handsets .

Claims

1. A multi-function UART (universal asynchronous receiver transmitter) for use in a data processing system, comprising: an interface for connection to a host processor bus; a transmitter FIFO (first-in first-out) buffer connected to the interface; a parallel-to-serial converter connected to an output of the transmitter FIFO buffer to provide a serial data stream; a pulse shaper for controlling pulse length of each output pulse of the parallel-to-serial converter according to value of a corresponding serial bit; output selection means for selecting one of outputs of the parallel-to-serial converter and the pulse shaper; a receiver input stage including a pulse length discriminator and bit clock recovery means; a serial-to-parallel converter connected to an output of the receiver input stage; and a receiver FIFO buffer connected between the serial- to-parallel converter and the interface.
2 A multi-function UART according to claim 1, wherein the interface includes memory registers which can be programmed in use with configuration data for use by the UART, and one of the memory registers including a portion to determine whether the UART is to operate in standard mode or infrared mode.
3. A multi-function UART according to claim 2, wherein one of the memory registers includes a portion to determine a duration of the pulse length.
4. A multi-function UART according to claim 2, wherein the pulse shaper provides a pulse having a first length for each bit of "0" in the serial data stream and a pulse having a second length for each bit of "1" in the serial data stream, the second length being longer than the first length.
5. A multi-function UART according to claim 4, wherein one of the memory registers includes a portion to determine the second length.
6. A multi-function UART according to claim 1, wherein the receiver input stage constructs an serial data train from received pulses thereto in accordance with whether a length of the received pulse exceeds a predetermined pulse width.
7. A multi-function UART according to claim 5, wherein the receiver input stage constructs an serial data train from received pulses thereto in accordance with whether a length of the received pulse exceeds the second length.
PCT/JP1999/002376 1998-05-08 1999-05-07 Multi-function uart WO1999059074A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU36290/99A AU3629099A (en) 1998-05-08 1999-05-07 Multi-function uart

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB9809760A GB2337186B (en) 1998-05-08 1998-05-08 Multi-function uart
GB9809760.3 1998-05-08

Publications (1)

Publication Number Publication Date
WO1999059074A1 true WO1999059074A1 (en) 1999-11-18

Family

ID=10831609

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1999/002376 WO1999059074A1 (en) 1998-05-08 1999-05-07 Multi-function uart

Country Status (3)

Country Link
AU (1) AU3629099A (en)
GB (1) GB2337186B (en)
WO (1) WO1999059074A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100474770B1 (en) * 2000-02-23 2005-03-08 엘지전자 주식회사 a Multiple Asynchronous Serial Communicating Apparatus
US7003591B2 (en) 2003-08-20 2006-02-21 Hewlett-Packard Development Company, L.P. Configurable mapping of devices to bus functions

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5557751A (en) * 1994-01-27 1996-09-17 Sun Microsystems, Inc. Method and apparatus for serial data communications using FIFO buffers

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5715077A (en) * 1994-09-19 1998-02-03 Vlsi Technology, Inc. Multi-mode infrared input/output interface
US5557634A (en) * 1994-10-14 1996-09-17 International Business Machines Corporation Multiprotocol directed infrared communication controller

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5557751A (en) * 1994-01-27 1996-09-17 Sun Microsystems, Inc. Method and apparatus for serial data communications using FIFO buffers

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"New IC caps two decades of UART development", J JOURNAL, MAXIM ENGINEERING JOURNAL (UK), vol. 30, pages 3 - 10, XP002115829 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100474770B1 (en) * 2000-02-23 2005-03-08 엘지전자 주식회사 a Multiple Asynchronous Serial Communicating Apparatus
US7003591B2 (en) 2003-08-20 2006-02-21 Hewlett-Packard Development Company, L.P. Configurable mapping of devices to bus functions
US7757012B2 (en) 2003-08-20 2010-07-13 Hewlett-Packard Development Company, L.P. Configurable mapping of devices to bus functions

Also Published As

Publication number Publication date
GB2337186B (en) 2003-01-15
GB2337186A (en) 1999-11-10
GB9809760D0 (en) 1998-07-08
AU3629099A (en) 1999-11-29

Similar Documents

Publication Publication Date Title
US4761800A (en) Method and apparatus for detecting a rate of data transmission
US5561826A (en) Configurable architecture for serial communication
US5604870A (en) UART emulator card
US5581669A (en) System and method for peripheral data transfer
US6389489B1 (en) Data processing system having a fifo buffer with variable threshold value based on input and output data rates and data block size
US6272452B1 (en) Universal asynchronous receiver transmitter (UART) emulation stage for modem communication
US6434161B1 (en) UART with direct memory access buffering of data and method therefor
US5461701A (en) System and method for peripheral data transfer
US4396995A (en) Adapter for interfacing between two buses
US6381661B1 (en) High throughput UART to DSP interface having Dual transmit and receive FIFO buffers to support data transfer between a host computer and an attached modem
US5649122A (en) Universal asynchronous receiver/transmitter with programmable xon/xoff characters
US6438628B1 (en) System and method for data pacing
EP0260693B1 (en) Program mode access control system
US5564061A (en) Reconfigurable architecture for multi-protocol data communications having selection means and a plurality of register sets
US7191262B2 (en) High-throughput UART interfaces
CN114968365B (en) Adapter register unit and host adapter circuit comprising same
US5586123A (en) Interface and loopback circuit for character based computer peripheral devices
CN107153412B (en) A kind of CAN controller circuit with transmission FIFO
US20160373238A1 (en) Independent UART BRK Detection
US5822548A (en) Programming interface for a universal asynchronous receiver/transmitter
US7610415B2 (en) System and method for processing data streams
US7093039B2 (en) Communication terminal increasing effective data rate on asynchronous transmission and a data transmission method therefor
US6470404B1 (en) Asynchronous communication device
US5572676A (en) Network I/O device having fifo for synchronous and asynchronous operation
WO1999059074A1 (en) Multi-function uart

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AU CA JP KR NO US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WA Withdrawal of international application
NENP Non-entry into the national phase

Ref country code: KR