implementation of uart on an fpga

download implementation of uart on an fpga

of 31

Transcript of implementation of uart on an fpga

  • 7/30/2019 implementation of uart on an fpga

    1/31

    UART IMPLEMENTATION ON FPGA

    BySmarak Acharya 1MV07EC100

    Krishnabir Ghosh 1MV07EC121

    Nishanth K 1MV07EC061

    Vinuth M 1MV07EC113

  • 7/30/2019 implementation of uart on an fpga

    2/31

    What is Serial Communication?

    Introduction

  • 7/30/2019 implementation of uart on an fpga

    3/31

    Why Serial Communication over ParallelCommunication ?

  • 7/30/2019 implementation of uart on an fpga

    4/31

    Serial Communication Techniques

    Asynchronous Communication

    Synchronous Communication

  • 7/30/2019 implementation of uart on an fpga

    5/31

    Synchronous Vs Asynchronous

    o When a system is receiving bits on a line,how does it know when does a bit end and theother start.

    0 1 1 00 1 00 0 1 1 1 0 0

    oAdvantages and Disadvantages

  • 7/30/2019 implementation of uart on an fpga

    6/31

    UART

    A Universal Asynchronous Receiver/Transmitter(UART) is a type of asynchronous receiver/transmitter , a piece of computer hardware thattranslate data between parallel and serial form.

  • 7/30/2019 implementation of uart on an fpga

    7/31

    Featuresof UART

    Serial Transmission in full duplex mode. Used in conjunction with communication

    standards such as EIA RS232, RS422 or RS

    485. Transmits data in frames.

    Data format and transmission speeds areconfigurable.

    Used to connect two devices with differentclock speeds such as a PC and an I/O device.

  • 7/30/2019 implementation of uart on an fpga

    8/31

    UART : Working

    Receiver : Serial data to Parallel data Transmitter : Parallel data to Serial data

    Transmit

    BufferTransmitter Receiver

    Receive

    Buffer

    Parallel

    Data

    Serial

    Channel

    Parallel

    Data

  • 7/30/2019 implementation of uart on an fpga

    9/31

    UART Frame

    Start Bit Always 0

    Parity bit As per parity selectedStop Bit Always 1Data Bits 5-8

    Overrun ErrorParity Error Frame BasedFraming Error

  • 7/30/2019 implementation of uart on an fpga

    10/31

    RS232

    RS-232 (Recommended Standard 232) Standards:

    bit 1 represented by -3~-25V

    bit 0 represented by +3~+25V MAX232 converts the TTL logic levels (+5V and -

    5V) to the RS232 voltage levels and vice versa

  • 7/30/2019 implementation of uart on an fpga

    11/31

    UART: Hardware Implementation

  • 7/30/2019 implementation of uart on an fpga

    12/31

    Functional Diagram

  • 7/30/2019 implementation of uart on an fpga

    13/31

    Transmitter Operation

  • 7/30/2019 implementation of uart on an fpga

    14/31

    Transmitter Flow

  • 7/30/2019 implementation of uart on an fpga

    15/31

    Receiver Operation

  • 7/30/2019 implementation of uart on an fpga

    16/31

    Receiver Flow

  • 7/30/2019 implementation of uart on an fpga

    17/31

    Start Bit Detection

  • 7/30/2019 implementation of uart on an fpga

    18/31

    Xilinx Spartan 3

  • 7/30/2019 implementation of uart on an fpga

    19/31

    Design Implementation: translate

    map

    place and route

    Device Programming: create a bit file to program fpga

    generate jtag file to download to the device

    use iMPACT to program the device

  • 7/30/2019 implementation of uart on an fpga

    20/31

    UART: Simulation

  • 7/30/2019 implementation of uart on an fpga

    21/31

    Functional Diagram

  • 7/30/2019 implementation of uart on an fpga

    22/31

    Operation

    Similar to standard UART

    Additional signaling operations:

    Handshaking signals: Transmitter: TXRDY, XRDYT

    Receiver: XRDYR, RXRDY

    Interrupt: Transmitter: RETRAN

    Receiver: NACK

  • 7/30/2019 implementation of uart on an fpga

    23/31

    Transmitter Flow

    Normal Transmitter Flow Retransmit Flow

  • 7/30/2019 implementation of uart on an fpga

    24/31

    Receiver Flow

    Normal Receiver Flow Receiver Flow incase of Error

  • 7/30/2019 implementation of uart on an fpga

    25/31

    Simulation Diagrams

  • 7/30/2019 implementation of uart on an fpga

    26/31

    Receiver: 16 bit data with Two Stop bits andParity Inhibited (No Errors)

  • 7/30/2019 implementation of uart on an fpga

    27/31

    Receiver: 16 bit data with Two stop bits(Parity Error)

  • 7/30/2019 implementation of uart on an fpga

    28/31

    Transmitter: 16 bit data Two StopBits and Parity Inhibited (No Errors)

  • 7/30/2019 implementation of uart on an fpga

    29/31

    APPLICATIONS

    Serial Communication.

    Software Loading.

    Software Debugging.

    Connection from PC to Peripheral Devices such as

    printers.

    Device Testing.

  • 7/30/2019 implementation of uart on an fpga

    30/31

    CONCLUSION

  • 7/30/2019 implementation of uart on an fpga

    31/31