Computer Science Engineering (CSE) Exam  >  Computer Science Engineering (CSE) Notes  >  8251A-Programmable Communication Interface

8251A-Programmable Communication Interface - Computer Science Engineering (CSE) PDF Download

8251a-Programmable Communication interface

(8251A-USART-Universal Synchronous/Asynchronous Receiver/Transmitter)

Introduction

A USART is also called a programmable communications interface (PCI). When information is to be sent by 8086 over long distances, it is economical to send it on a single line. The 8086 has to convert parallel data to serial data and then output it. Thus lot of microprocessor time is required for such a conversion.

Similarly, if 8086 receives serial data over long distances, the 8086 has to internally convert this into parallel data before processing it. Again, lot of time is required for such a conversion. The 8086 can delegate the job of conversion from serial to parallel and vice versa to the 8251A USART used in the system.

The Intel8251A is the industry standard Universal Synchronous/Asynchronous Receiver/Transmitter (USART), designed for data communications with Intel microprocessor families such as 8080, 85, 86 and 88. The 8251A converts the parallel data received from the processor on the D7-0 data pins into serial data, and transmits it on TxD (transmit data) output pin of 8251A. Similarly, it converts the serial data received on RxD (receive data) input into parallel data, and the processor reads it using the data pins D7-0.

Features

  • Compatible with extended range of Intel microprocessors.
  • It provides both synchronous and asynchronous data transmission.
  • Synchronous 5-8 bit characters.
  • Asynchronous 5-8 bit characters.
  • It has full duplex, double buffered transmitter and receiver.
  • Detects the errors-parity, overrun and framing errors.
  • All inputs and outputs are TTL compatible.
  • Available in 28-pin DIP package.

Architecture

The 8251A is a USART (Universal Synchronous Asynchronous Receiver Transmitter) for serial data communication. As a peripheral device of a microcomputer system, the 8251 receives parallel data from the CPU and transmits serial data after conversion. This device also receives serial data from the outside and transmits parallel data to the CPU after conversion. The internal block diagram of 8251A is shown in fig below.

8251A-Programmable Communication Interface - Computer Science Engineering (CSE)

Data Bus Buffer: This bidirectional, 8-bit buffer used to interface the 8251A to the system data bus and also used to read or write status, command word or data from or to the 8251A.

Read/Write control logic: The Read/Write Control logic interfaces the 8251A with microprocessor, determines the functions of the 8251A according to the control word written into its control register and monitors the data flow. This section has three registers and they are control register, status register and data buffer.

  • The active low signals ��, �, ��and �/�are used for read/write operations with these three registers.
  • When�/�) is high, the control register is selected for writing control word or reading status word. When �/�is low, the data buffer is selected for read/write operation.
  • When the reset is high, it forces 8251A into the idle mode.
  • The clock input is necessary for 8251A for communication with microprocessor and  this clock does not control either the serial transmission or the reception rate.

Transmitter section: The transmitter section accepts parallel data from microprocessor and converts them into serial data. The transmitter section is double buffered, i.e., it has a buffer register to hold an 8-bit parallel data and another register called output register to convert the parallel data into serial bits. When output register is empty, the data is transferred from buffer to output register. Now the processor can again load another data in buffer register.

  • If buffer register is empty, then TxRDY is goes to high.
  • If output register is empty then TxEMPTY goes to high.
  • The clock signal � �controls the rate at which the bits are transmitted by the USART.
  • The clock frequency can be 1,16 or 64 times the baud rate.

Receiver Section: The receiver section accepts serial data and converts them into parallel data. The receiver section is double buffered, i.e., it has an input register to receive serial data and convert to parallel, and a buffer register to hold the parallel data. When the RxD line goes low, the control logic assumes it as a START bit, waits for half a bit time and samples the line again. If the line is still low, then the input register accepts the following bits, forms a character and loads it into the buffer register. The microprocessor reads the parallel data from the buffer register.

  • When the input register loads a parallel data to buffer register, the RxRDY line goes high.
  • The clock signal � �controls the rate at which bits are received by the USART.
  • During asynchronous mode, the signal SYNDET/BRKDET will indicate the break in the data transmission. During synchronous mode, the signal SYNDET/BRKDET will indicate the reception of synchronous character.

MODEM Control: The MODEM control unit allows to interface a MODEM to 8251A and to establish data communication through MODEM over telephone lines. This unit takes care of handshake signals for MODEM interface. 

PIN DIAGRAM

8251A-Programmable Communication Interface - Computer Science Engineering (CSE)

D0 to D7 (l/O terminal): This is bidirectional data bus which receives control words and transmits data from the CPU and sends status words and received data to CPU.

RESET (Input terminal): A "High" on this input forces the 8251 into "reset status." The device waits for the writing of "mode instruction." The min. reset width is six clock inputs during the operating status of CLK. 

CLK (Input terminal): CLK signal is used to generate internal device timing. CLK signal is independent of RXC or TXC. However, the frequency of CLK must be greater than 30 times the RXC and TXC at Synchronous mode and Asynchronous "x1" mode, and must be greater than 5 times at Asynchronous "x16" and "x64" mode.

8251A-Programmable Communication Interface - Computer Science Engineering (CSE) (Input terminal): This is the "active low" input terminal which receives a signal for writing transmit data and control words from the CPU into the 8251.

8251A-Programmable Communication Interface - Computer Science Engineering (CSE) (Input terminal): This is the "active low" input terminal which receives a signal for reading receive data and status words from the 8251.

8251A-Programmable Communication Interface - Computer Science Engineering (CSE) (Input terminal): This is an input terminal which receives a signal for selecting data or command words and status words when the 8251 is accessed by the CPU. If C/D = low, data will be accessed. If C/D = high, command word or status word will be accessed.

8251A-Programmable Communication Interface - Computer Science Engineering (CSE) (Input terminal): This is the "active low" input terminal which selects the 8251 at low level when the CPU accesses. Note: The device won’t be in "standby status"; only setting CS = High.

TXD (output terminal): This is an output terminal for transmitting data from which serialconverted data is sent out. The device is in "mark status" (high level) after resetting or during a status when transmit is disabled. It is also possible to set the device in "break status" (low level) by a command.

TXRDY (output terminal): This is an output terminal which indicates that the 8251is ready to accept a transmitted data character. But the terminal is always at low level if CTS = high or the device was set in "TX disable status" by a command. Note: TXRDY status word indicates that transmit data character is receivable, regardless of CTS or command. If the CPU writes a data character, TXRDY will be reset by the leading edge or WR signal.

TXEMPTY (Output terminal): This is an output terminal which indicates that the 8251 has transmitted all the characters and had no data character. In "synchronous mode," the terminal is at high level, if transmit data characters are no longer remaining and sync characters are automatically transmitted. If the CPU writes a data character, TXEMPTY will be reset by the leading edge of WR signal. Note : As the transmitter is disabled by setting CTS "High" or command, data written before disable will be sent out. Then TXD and TXEMPTY will be "High". Even if a data is written after disable, that data is not sent out and TXE will be "High”. After the transmitter is enabled, it sent out. (Refer to Timing Chart of Transmitter Control and Flag Timing)

8251A-Programmable Communication Interface - Computer Science Engineering (CSE) (Input terminal): This is a clock input signal which determines the transfer speed of transmitted data. In "synchronous mode," the baud rate will be the same as the frequency of TXC. In "asynchronous mode", it is possible to select the baud rate factor by mode instruction. It can be 1, 1/16 or 1/64 the TXC. The falling edge of TXC sifts the serial data out of the 8251.

RXD (input terminal): This is a terminal which receives serial data.

RXRDY (Output terminal): This is a terminal which indicates that the 8251 contains a character that is ready to READ. If the CPU reads a data character, RXRDY will be reset by the leading edge of RD signal. Unless the CPU reads a data character before the next one is received completely, the preceding data will be lost. In such a case, an overrun error flag status word will be set.

RXC (Input terminal): This is a clock input signal which determines the transfer speed of received data. In "synchronous mode," the baud rate is the same as the frequency of RXC. In "asynchronous mode," it is possible to select the baud rate factor by mode instruction. It can be 1, 1/16, 1/64 the RXC.

SYNDET/BD (Input or output terminal): This is a terminal whose function changes according to mode. In "internal synchronous mode." this terminal is at high level, if sync characters are received and synchronized. If a status word is read, the terminal will be reset. In "external synchronous mode, "this is an input terminal. A "High" on this input forces the 8251 to start receiving data characters.

In "asynchronous mode," this is an output terminal which generates "high level “output upon the detection of a "break" character if receiver data contains a "low-level" space between the stop bits of two continuous characters. The terminal will be reset, if RXD is at high level. After Reset is active, the terminal will be output at low level.

8251A-Programmable Communication Interface - Computer Science Engineering (CSE) (Input terminal): This is an input port for MODEM interface. The input status of the terminal can be recognized by the CPU reading status words.

8251A-Programmable Communication Interface - Computer Science Engineering (CSE) (Output terminal): This is an output port for MODEM interface. It is possible to set the status of DTR by a command.

8251A-Programmable Communication Interface - Computer Science Engineering (CSE) (Input terminal): This is an input terminal for MODEM interface which is used for controlling a transmit circuit. The terminal controls data transmission if the device is set in "TX Enable" status by a command. Data is transmittable if the terminal is at low level.

8251A-Programmable Communication Interface - Computer Science Engineering (CSE) (Output terminal): This is an output port for MODEM interface. It is possible to set the status RTS by a command.

The document 8251A-Programmable Communication Interface - Computer Science Engineering (CSE) is a part of Computer Science Engineering (CSE) category.
All you need of Computer Science Engineering (CSE) at this link: Computer Science Engineering (CSE)

Top Courses for Computer Science Engineering (CSE)

FAQs on 8251A-Programmable Communication Interface - Computer Science Engineering (CSE)

1. What is a Programmable Communication Interface (PCI)?
Ans. A Programmable Communication Interface (PCI) is a technology that allows for the transfer of data between a computer system and external devices. It provides a standardized way to communicate and exchange information, making it easier for different devices to work together efficiently.
2. How does a Programmable Communication Interface work?
Ans. A Programmable Communication Interface works by using a set of protocols and hardware components to enable communication between a computer system and external devices. It typically includes connectors, drivers, and software interfaces that facilitate data transfer and control signals.
3. What are the advantages of using a Programmable Communication Interface?
Ans. There are several advantages of using a Programmable Communication Interface. Firstly, it provides a standardized method for communication, which allows for seamless integration of different devices. Secondly, it offers flexibility and customization options, as it can be programmed to meet specific requirements. Additionally, it enables faster and more efficient data transfer, improving overall system performance.
4. What types of devices can be connected using a Programmable Communication Interface?
Ans. A Programmable Communication Interface can be used to connect a wide range of devices, such as printers, scanners, modems, network cards, and external storage devices. It can also be used for communication with microcontrollers, sensors, and other embedded systems.
5. How does a Programmable Communication Interface benefit software developers?
Ans. For software developers, a Programmable Communication Interface provides a convenient way to interact with external devices and utilize their functionalities within their applications. It simplifies the integration process and reduces the complexity of device-specific programming. This allows developers to focus more on their application logic rather than low-level hardware details.
Download as PDF
Explore Courses for Computer Science Engineering (CSE) exam

Top Courses for Computer Science Engineering (CSE)

Signup for Free!
Signup to see your scores go up within 7 days! Learn & Practice with 1000+ FREE Notes, Videos & Tests.
10M+ students study on EduRev
Related Searches

Exam

,

8251A-Programmable Communication Interface - Computer Science Engineering (CSE)

,

Previous Year Questions with Solutions

,

past year papers

,

Summary

,

shortcuts and tricks

,

practice quizzes

,

ppt

,

8251A-Programmable Communication Interface - Computer Science Engineering (CSE)

,

pdf

,

Objective type Questions

,

Sample Paper

,

study material

,

Free

,

Extra Questions

,

mock tests for examination

,

video lectures

,

Viva Questions

,

8251A-Programmable Communication Interface - Computer Science Engineering (CSE)

,

Important questions

,

Semester Notes

,

MCQs

;