EP0634722A2

Universal asynchronous receiver/transmitter.

Abstract

Data characters to be transferred from a peripheral device to a central processing unit are serially shifted into the receiver shift register of a universal asynchronous receiver/transmitter (UART). A multiple byte first-in-first-out memory stores a plurality of data characters received by the shift register. The UART checks the status of each data character stored in the FIFO to determine whether it will trigger an exception. A bytes till exception register indicates the number of data characters remaining in the FIFO until an exception is encountered. Then, upon request by the CPU, the UART provides the count of consecutive valid data characters from the top of the FIFO to the first exception, eliminating the need to check status on every transferred byte. Each of the multiple channels of the UART includes an Initialization Register. Setting the appropriate bit Initialization Register of any UART channel allows concurrent writes to the same selected register in each channel's register set. This function reduces initialization time for all of the common parameters that are loaded into each channel's registers. The UART implements a methodology which allows for the processing of any control characters or errors received by the UART during DMA while internal and/or external FIFOs are being used.

EP0634722A2, drawing sheet 1
Sheet 1 of 13

Term

Term ended

Projected expiry passed 8 September 2009, 17 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

13 claims: 6 independent, 7 dependent

  1. 1
    A data processing system comprising:(a) a data processing system having a direct memory access unit associated therewith for transferring data characters from a system memory of the data processing system to a data communications device utilizing the direct memory access unit;(b) a data communications device comprising (i) transmitter memory means having storage locations for a plurality of data characters received by the data communications device from the system memory;(ii) means for determining whether the transmitter memory means is empty;(iii) means for establishing a count of the number of data characters that are to be transferred from the system memory to the data communications device utilizing the direct memory access unit;(iv) means for enabling the direct memory access unit for direct transfer of the number of data characters from the system memory to the data communications device;and(v) means for transferring the number of data characters to the data communications device utilizing the direct memory access unit.
  2. 2
    A data processing system for transferring data characters from a data communications device to the system memory of a data processing system utilizing a direct memory access unit associated with the data processing system, the data communication device including receiver memory means having storage locations for a plurality of data characters received by the data communications device from a peripheral system for transfer to the system memory, the data processing system comprising:(a) means for maintaining account of the number of data characters available for transfer from the receiver memory means before an exception is encountered;(b) means for establishing a trigger level for the 35 receiver memory means;(c) means for initiating the transfer data characters from the receiver memory means to the system memory utilizing the direct memory access unit when the receiver memory means trigger level is reached;and(d) means for continuing the transfer of data characters from the receiver memory means to the system memory utilizing the direct memory access unit until either an exception is encountered or until the number of valid data characters remain to be transferred is less than the with of the data bus of the data processing system.
  3. 3
    A method of transferring data characters from the system memory of a data processing system having a direct memory access unit associated therewith to a data communications device utilizing the direct memory access unit, the data communications device including transmitter memory means having storage locations for a plurality of data characters received by the data communications device from the system memory, the method comprising:(a) determining whether the transmitter memory means is empty;(b) establishing a count of the number of data characters that are to be transferred from the system memory to the data communications device;(c) enabling the direct memory access unit for direct transfer of the number of data characters from the system memory to the data communications device;and(d) transferring the number of data characters to the data communications device utilizing the direct memory access unit.
  4. 4
    A method of transferring data characters from the system memory of a data processing system having a direct memory access unit associated therewith to an external storage unit have storage locations for a plurality of data characters, the method comprising:(a) determining whether the external storage unit is empty;(b) establishing a count of the number of data characters that are to be transferred from the system memory to the external storage unit;(c) enabling the direct memory access unit for direct transfer of the number of data characters from the system memory to the external storage unit.
  5. 6
    A method of transferring data characters from a data communications device to the system memory of a data processing system utilizing a direct memory access unit associated with the data processing system, the data communications device including receiver memory means having storage locations for a plurality of data characters received by the data communications device from a peripheral system for transfer to the system memory, the method comprising (a) maintaining a count of the number of data characters available for transfer from the receiver memory means before an exception is encountered;(b) establishing a trigger level for the receiver memory means;(c) initiating the transfer of data characters from the receiver memory means to the system memory utilizing the direct memory access unit when the receiver memory means trigger level is reached;(d) continuing the transfer of data characters from the receiver memory means to the system memory utilizing the direct memory access unit until either an exception is encountered or until the number of valid data characters remaining to be transferred is less than the width of the data bus of the data processing system.
  6. 12
    A method of transferring data characters from a data communications device to an external storage unit for further transfer to a system memory of a data processing system utilizing a direct memory access unit associated with the data processing system, the external storage unit having storage locations for storing a plurality of data characters received from the data communications device, the data communications device including an internal receiver memory means having storage locations for storing a plurality of data characters received by the data communications device from a peripheral system, the method comprising:(a) establishing a preselected number of data characters that may be transferred from the internal receiver memory means to the external storage unit utilizing the direct memory access unit;(b) establishing a trigger level for the internal receiver memory means that indicates that the internal receiver memory means is storing a predefined number of data characters;(c) initiating the transfer of data characters from the internal receiver memory means to the external storage unit utilizing the direct memory access unit when the number of data characters stored in the internal receiver memory means equals the trigger level;and(d) continuing the transfer of data characters from the internal receiver memory means to the external storage unit utilizing the direct memory access unit until either the preselected number of data characters has been transferred to the external storage unit or an exception is encountered by the data processing system or until the number of valid data characters remaining to be transferred from the internal receiver memory means is less than the width of the data bus of the data processing system.