Design and Simulation of Universal Asynchronous Receiver Transmitter on Field Programmable Gate Array Using VHDL

Similar documents
FPGA BASED RS-422 UTILIZED UART PROTOCOL ANALYZER FOR AVIONICS UNITS

Design and FPGA Implementation of a High Speed UART. Sonali Dhage, Manali Patil,Navnath Temgire,Pushkar Vaity, Sangeeta Parshionikar

International Journal of Advance Engineering and Research Development. UART implementation using FPGA with configurable baudrate

2014, IJARCSSE All Rights Reserved Page 459

CHAPTER III THE FPGA IMPLEMENTATION OF PULSE WIDTH MODULATION

IJITKMI Volume 6 Number 2 July-December 2013 pp FPGA-based implementation of UART

Verilog Implementation of UART with Status Register Sangeetham Rohini 1

Vol. 4, No. 4 April 2013 ISSN Journal of Emerging Trends in Computing and Information Sciences CIS Journal. All rights reserved.

Local Asynchronous Communication. By S.Senthilmurugan Asst.Professor/ICE SRM University. Chennai.

Single Chip FPGA Based Realization of Arbitrary Waveform Generator using Rademacher and Walsh Functions

Research Article. ISSN (Print) *Corresponding author Ahmed Mueen

PE713 FPGA Based System Design

Design and Implementation of 4-QAM Architecture for OFDM Communication System in VHDL using Xilinx

Hardware Implementation of BCH Error-Correcting Codes on a FPGA

VLSI IMPLEMENTATION OF MODIFIED DISTRIBUTED ARITHMETIC BASED LOW POWER AND HIGH PERFORMANCE DIGITAL FIR FILTER Dr. S.Satheeskumaran 1 K.

Decision Based Median Filter Algorithm Using Resource Optimized FPGA to Extract Impulse Noise

VHDL Implementation of Universal Asynchronous Transmitter

Realization of 8x8 MIMO-OFDM design system using FPGA veritex 5

EFFICIENT FPGA IMPLEMENTATION OF 2 ND ORDER DIGITAL CONTROLLERS USING MATLAB/SIMULINK

Lab 2.2 Custom slave programmable interface

Design and Implementation of FPGA Based Digital Base Band Processor for RFID Reader

Minimal UART core. All the project files were published on the LGPL terms, you must read the GNU Lesser General Public License for more details.

Partial Reconfigurable Implementation of IEEE802.11g OFDM

REALISATION OF AWGN CHANNEL EMULATION MODULES UNDER SISO AND SIMO

Optimized BPSK and QAM Techniques for OFDM Systems

An Optimized Design for Parallel MAC based on Radix-4 MBA

Hardware Implementation of OFDM Transceiver. Authors Birangal U. M 1, Askhedkar A. R 2 1,2 MITCOE, Pune, India

A Low Power VLSI Design of an All Digital Phase Locked Loop

Hardware/Software Co-Simulation of BPSK Modulator and Demodulator using Xilinx System Generator

Globally Asynchronous Locally Synchronous (GALS) Microprogrammed Parallel FIR Filter

BPSK Modulation and Demodulation Scheme on Spartan-3 FPGA

A Dynamic Reconcile Algorithm for Address Generator in Wimax Deinterleaver

International Journal Of Scientific Research And Education Volume 3 Issue 6 Pages June-2015 ISSN (e): Website:

High Speed & High Frequency based Digital Up/Down Converter for WCDMA System

FPGA Implementation of Digital Modulation Techniques BPSK and QPSK using HDL Verilog

VLSI Implementation of Image Processing Algorithms on FPGA

A Novel Reconfigurable OFDM Based Digital Modulator

Implementing Logic with the Embedded Array

Lecture 3, Handouts Page 1. Introduction. EECE 353: Digital Systems Design Lecture 3: Digital Design Flows, Simulation Techniques.

FPGA Based System Design

Digital Logic ircuits Circuits Fundamentals I Fundamentals I

Design of Multiplier Less 32 Tap FIR Filter using VHDL

Implementation and Performance Analysis of different Multipliers

Digital Systems Design

Power consumption reduction in a SDR based wireless communication system using partial reconfigurable FPGA

Synthesis and Analysis of 32-Bit RSA Algorithm Using VHDL

DESIGN OF LOW POWER HIGH SPEED ERROR TOLERANT ADDERS USING FPGA

Implementation and Comparison of Low Pass FIR Filter on FPGA Using Different Techniques

We are IntechOpen, the world s leading publisher of Open Access books Built by scientists, for scientists. International authors and editors

Design and Simulation of PID Controller using FPGA

CHAPTER 5 NOVEL CARRIER FUNCTION FOR FUNDAMENTAL FORTIFICATION IN VSI

WHAT ARE FIELD PROGRAMMABLE. Audible plays called at the line of scrimmage? Signaling for a squeeze bunt in the ninth inning?

Implementation of Huffman Decoder on Fpga

DIGITAL SYSTEM DESIGN WITH VHDL AND FPGA CONTROLLER BASED PULSE WIDTH MODULATION

IMPLEMENTATION OF MULTIRATE SAMPLING ON FPGA WITH LOW COMPLEXITY FIR FILTERS

D16550 IP Core. Configurable UART with FIFO v. 2.25

Design and Implementation of BPSK Modulator and Demodulator using VHDL

Design and synthesis of FPGA for speed control of induction motor

An area optimized FIR Digital filter using DA Algorithm based on FPGA

FPGA based Asynchronous FIR Filter Design for ECG Signal Processing

FIR Filter for Audio Signals Based on FPGA: Design and Implementation

CHAPTER 6 IMPLEMENTATION OF FPGA BASED CASCADED MULTILEVEL INVERTER

CHAPTER 4 FIELD PROGRAMMABLE GATE ARRAY IMPLEMENTATION OF FIVE LEVEL CASCADED MULTILEVEL INVERTER

Versuch 7: Implementing Viterbi Algorithm in DLX Assembler

FPGA Implementation of Desensitized Half Band Filters

A Comparative Study on Direct form -1, Broadcast and Fine grain structure of FIR digital filter

Anju 1, Amit Ahlawat 2

DATA SECURITY USING ADVANCED ENCRYPTION STANDARD (AES) IN RECONFIGURABLE HARDWARE FOR SDR BASED WIRELESS SYSTEMS

VLSI Implementation of Digital Down Converter (DDC)

A Simulation of Wideband CDMA System on Digital Up/Down Converters

ROM/UDF CPU I/O I/O I/O RAM

Module-20 Shift Registers

FPGA IMPLEMENTATION OF POWER EFFICIENT ALL DIGITAL PHASE LOCKED LOOP

A Low-Cost Li-Fi Communication Setup

An Efficent Real Time Analysis of Carry Select Adder

SC16C550B. 1. General description. 2. Features. 5 V, 3.3 V and 2.5 V UART with 16-byte FIFOs

Wave Pipelined Circuit with Self Tuning for Clock Skew and Clock Period Using BIST Approach

Exercise 3: Serial Interface (RS232)

THE DESIGN OF A PLC MODEM AND ITS IMPLEMENTATION USING FPGA CIRCUITS

Front End To Back End VLSI Design For Convolution Encoder Pravin S. Tupkari Prof. A. S. Joshi

SIMULATION AND IMPLEMENTATION OF LOW POWER QPSK ON FPGA Tushar V. Kafare*1 *1( E&TC department, GHRCEM Pune, India.)

Module -18 Flip flops

INTERNATIONAL JOURNAL OF ELECTRONICS AND COMMUNICATION ENGINEERING & TECHNOLOGY (IJECET)

Fpga Implementation of Truncated Multiplier Using Reversible Logic Gates

D16950 IP Core. Configurable UART with FIFO v. 1.03

Reference. Wayne Wolf, FPGA-Based System Design Pearson Education, N Krishna Prakash,, Amrita School of Engineering

EECS150 - Digital Design Lecture 28 Course Wrap Up. Recap 1

(VE2: Verilog HDL) Software Development & Education Center

Advances in Military Technology Vol. 5, No. 2, December Selection of Mode S Messages Using FPGA. P. Grecman * and M. Andrle

In this lecture, we will look at how different electronic modules communicate with each other. We will consider the following topics:

EECE494: Computer Bus and SoC Interfacing. Serial Communication: RS-232. Dr. Charles Kim Electrical and Computer Engineering Howard University

Comparison among Different Adders

FPGA Implementation of Wallace Tree Multiplier using CSLA / CLA

REAL TIME IMPLEMENTATION OF FPGA BASED PULSE CODE MODULATION MULTIPLEXING

Field Programmable Gate Array Implementation and Testing of a Minimum-phase Finite Impulse Response Filter

AD9361 transceiver IC are explored. The signal properties are tested on spectrum analyzer. Index Terms: DS-SS, CDMA, Gold code, SOC.

CHAPTER 5 IMPLEMENTATION OF MULTIPLIERS USING VEDIC MATHEMATICS

Application Note. Smart LED Dimmer Controlled via Bluetooth AN-CM-225

Ultrasonic Positioning System EDA385 Embedded Systems Design Advanced Course

GESTURE BASED HOME AUTOMATION SYSTEM USING SPARTAN 3A, ASIC

Transcription:

International Journal Of Scientific Research And Education Volume 2 Issue 7 Pages 1091-1097 July-2014 ISSN (e): 2321-7545 Website:: http://ijsae.in Design and Simulation of Universal Asynchronous Receiver Transmitter on Field Programmable Gate Array Using VHDL Authors Mangesh V. Benodkar 1, Prof. Umesh W. Hore 2 1 Student of M.E. Department of Electronics & Telecommunication Engineering P. R. Patil College of Engineering, Amravati Maharashtra India 2 Faculty of Electronics & Telecommunication Department of Electronics & Telecommunication Engineering P. R. Patil College of Engineering, Amravati Maharashtra India Email id: mangeshbenodkar@yahoo.co.in, umeshhore@gmail.com ABSTRACT : This paper concentrates on the design of Universal Asynchronous Receiver and Transmitter (UART) using VHDL. A UART is a full duplex receiver/transmitter. During the genuine industrial production, sometimes we demand to simply integrate core part rather than full functionality of the UART. Universal Asynchronous Receiver Transmitter is a kind of serial communication protocol. In parallel communication the cost as well as complexity of the system increases due to simultaneous transmission of data bits on multiple wires. UART includes three modules which are received, the baud rate generator and transmitter. The UART design with Very High Description Language can be integrated into the Field Programmable Gate Aray to achieve reliable, compact & stable data transmission. It s significant for the design of System on Chip (SOC). In the result and simulation part, this paper will focus on check the receive data with error free & baud rate generation at different frequencies. Keywords: VHDL, FPGA, Xilinx ISE. INTRODUCTION Universal Asynchronous Receiver Transmitter (UART) is generally used for better transmission of serial data that is it either transmits or receives data serially. It is a popular and widely used device for data communication in the field of telecommunication. It handles the conversion between serial and parallel data. Serial communication reduces the distortion of a signal, therefore makes data transfer between two systems separated in great distance possible. A Universal Asynchronous Receiver Transmitter includes a transmitter Mangesh V. Benodkar, Prof. Umesh W. Hore IJSRE Volume 2 Issue 7 July 2014 Page 1091

and a receiver. The transmitter is essentially a special shift register that loads data in parallel and then shifts it out bit by bit at a specific rate. The receiver, on the other hand, shifts in data bit by bit and then reassembles the data. UART transmitter controls transmission by fetching a data word in parallel format and directing the UART to transmit it in a serial format. Likewise, the Receiver must detect transmission, receive the data in serial format, strip of the start and stop bits, and store the data word in a parallel format. Since the UART is asynchronous in working, the receiver does not know when the data will come, so receiver generate local clock in order to synchronize to transmitter whenever start bit is received. Asynchronous transmission allows data to be transmitted without the sender having to send a clock signal to the receiver. This paper uses the VHDL language to implement the core functions of UART and integrate them into a FPGA chip. In this we also design for different baud rate UART for synchronization of transmitter to receiver through RS232 by using FPGA. DESIGN MODULE Basic UART communication needs only two signal lines (RXD, TXD) to complete full-duplex data communication. TXD is the transmit side the output of UART, RXD is the receiver, the input of UART. When there is no data to transmit, the transmission line can be idle. When the transmitter is idle, the data line is in the high logic state. Otherwise when a word is given to the UART for asynchronous transmissions, a bit called the "Start Bit" is added to the beginning of each word that is to be transmitted. The Start Bit is used to alert the receiver that a word of data is about to be sent, and to force the clock in the receiver into synchronization with the clock in the transmitter. After the Start Bit, the individual data bits of the word are sent, with the Least Significant Bit (LSB) being sent first. Each bit in the transmission is transmitted for exactly the same amount of time as all of the other bits, and the receiver looks at the wire at approximately halfway through the period assigned to each bit to determine if the bit is a 1 or a 0. When the entire data word has been sent, the transmitter may add a Parity Bit that the transmitter generates. The Parity Bit may be used by the receiver to perform simple error checking. Then at least one Stop Bit is sent by the transmitter. When the receiver has received all of the bits in the data word, it may check for the Parity Bits (both sender and receiver must agree on whether a Parity Bit is to be used), and then the receiver looks for a Stop Bit. Regardless of whether the data was received correctly or not, the UART automatically discards the Start, Parity and Stop bits. If the sender and receiver are configured identically, these bits are not passed to the host. If another word is ready for transmission, the Start Bit for the new word can be sent as soon as the Stop Bit for the previous word has been sent. Mangesh V. Benodkar, Prof. Umesh W. Hore IJSRE Volume 2 Issue 7 July 2014 Page 1092

A. Receiver module: In UART serial communication, receiver accepts the data serially and sends at the output in parallel manner. Basically receiver has clk_out, reset and RxD input lines where clk_out gives continuous clock to receiver and from Rxd line serial data can be given. At the output level received data can obtained in parallel manner. The UART communication format consists of a start bit followed by 8 data bits and one stop bit indicating the end of the communication. This block monitors the input line for new data which is indicated by the start bit. When the load signal is high it will get the start bit from the transmitter which assures that the original data is now being send by the transmitter. Once the shift signal is becomes high with no load signal, the data coming from the transmitter gets shifted into the intermediate register of the receiver and provides the 8 bit serial data which we have given as an input to the transmitter. Once the entire data has been sent the parity error and the CRC errors has been checked out and are served as the input to the transmitter. If parity error and CRC errors occur or are at logic 1, it means that our transmission is having some errors. B. Baud rate generator: Baud Rate Generator is actually a kind of frequency divider. The baud rate frequency factor can be calculated according to a given system clock frequency and the required baud rate. The calculated baud rate frequency factor is used as the divider factor. Assume that the system clock is 50MHz, baud rate is 9600bps, and then the output clock frequency of baud rate generator should be 1* 9600Hz. Therefore the frequency coefficient (M) i.e. counts value of the baud rate generator is: M =50MHz/1*9600Hz=5208 When the UART receives serial data, it is very critical to determine where to sample the data information. The ideal time for sampling is at the middle point of each serial data bit. As system clock frequency can be internally divided by factor two so that the count will be for 9600 is 5208/2=2604. Similarly we can calculate count for other standard baud rates as follows S0 S1 Baud Rate(BPS) 0 0 2400 0 1 4800 1 0 19200 1 1 9600 (default) Mangesh V. Benodkar, Prof. Umesh W. Hore IJSRE Volume 2 Issue 7 July 2014 Page 1093

C. Transmitter module: The function of transmit module is to convert the sending 8-bit parallel data into serial data, adds start bit at the head of the data as well as stop bits at the end of the data. The function of the transmitter module is to convert the 8 bit serial data into the single bit data. In this module, when our load signal is high the data in stored into the holding register. The data in the holding register is shifted to the intermediate register with the start bit of zero and this intermediate register is of 9 bits. Once the shift signal is high the least significant bit of the intermediate register i.e. the start bit comes at the output of the transmitter and served as the input to the receiver. When the entire data has been sent, the transmitter provides a parity bit which is served as the input to the receiver. D. Field Programmable Gate Arrays: FPGA or Field Programmable Gate Arrays can be programmed or configured by the user or designer after manufacturing and during implementation. Hence they are otherwise known as On-Site programmable. Unlike a Programmable Array Logic (PAL) or other programmable device, their structure is similar to that of a gate-array or an ASIC. Thus, they are used to rapidly prototype ASICs, or as a substitute for places where an ASIC will eventually be used. This is done when it is important to get the design to the market first. The programming of the FPGA is done using a logic circuit diagram or a source code using a Hardware Description Language (HDL) to specify how the chip should work. FPGAs have programmable logic components called logic blocks, and a hierarchy or reconfigurable interconnects which facilitate the wiring of the blocks together. The programmable logic blocks are called configurable logic blocks and reconfigurable interconnects are called switch boxes. Logic blocks (CLBs) can be programmed to perform complex combinational functions, or simple logic gates like AND and XOR. In most FPGAs the logic blocks also include memory elements, which can be as simple as a flip-flop or as complex as complete blocks of memory. FPGAs that store their configuration internally in nonvolatile flash memory, such as Micro semi s ProAsic 3 or Lattice's XP2 programmable devices do not expose the bit stream and do not need encryption. In addition, flash memory for LUT provides SEU protection for space applications. Advantages of FPGA are as follows: Ability to re-program in the field to fix bug. Fast prototyping and turn-around time. NRE cost is zero. High-Speed. Low cost. Mangesh V. Benodkar, Prof. Umesh W. Hore IJSRE Volume 2 Issue 7 July 2014 Page 1094

SIMULATION RESULT OF MODULE 1. Simulation result of Baud rate generator: The simulation result shows the serial transmission and reception of 8 bit data. As shown in figure we have selected S0=1 and S1=0 to select the baud rate of 19200bps. It shows the continuous output for the selected baud rate. Figure 3.1: Simulation result of Baud rate generator 2. Simulation result of Receiver module: The simulation software is ModelSim. Figure3.2 shows simulation of receiver module. From simulation waveform, as changes happen on "rxd" lines that serial data is stored in shift register and gives parallel data which contains start bit, data bit(8) and Stop bit. Figure 3.2: Simulation result of Receiver module 3. Simulation result of Transmitter module: Figure 3.3 shows simulation of transmitter module. From simulation waveform, as changes happen on "txd" lines that parallel data is stored in shift register and gives serial data which contains start bit, data bit(8) and Stop bit. Mangesh V. Benodkar, Prof. Umesh W. Hore IJSRE Volume 2 Issue 7 July 2014 Page 1095

Figure 3.3: Simulation result of Transmitter module RESULT The synthesis of all three module of UART i.e. baud rate generator, receiver and transmitter shows the desire output result. The synthesis result contains a table which shows the comparison between the old research and the proposed UART. While doing comparison we will find that our research shows great significance as our all the parameters are consuming less area and consumes less power to operate. Figure 4.1: Synthesis Result Sr No. Parameters Virtex4vfx12sf363-10 Xilinx Spartan 3E 1. Number of slices 36 14 2. LUTs 60 14 3. GCLKs 1 1 4. Slice flip flop 46 20 Mangesh V. Benodkar, Prof. Umesh W. Hore IJSRE Volume 2 Issue 7 July 2014 Page 1096

ACKNOWLEDGMENT I would like to acknowledge the Faculties of Electronics & Telecommunication Department, P.R. Patil College of Engineering & Technology, and Amravati for their support. I Mangesh V. Benodkar specially want to thank my guide Professor U. W. Hore sir for their valuable guidance and constant encouragement towards the work. REFERENCES [1] GarimaWakhle; itiagrawalet; Synthesis and Implementation of UART using VHDL Codes, IEEE 2012, DOI 10.1109/IS3C.2012.10. [2] Amanpreet Kaur, Amandeep Kaur, An Approach for Designing A Universal Asynchronous Receiver Transmitter (UART), IJERA Vol. 2, Issue 3, May-Jun 2012, pp. 2305-2311. [3] Bhavna manure and Rahul tanwar, UART with automatic baud rate generator and frequency divider Journal of Information Systems and Communication on 15 Feb 2012. [4]FANG Yi-yuan CHEN Xue-Jun, Design and Simulation of UART Serial Communication Module Based on VHDL, IEEE JOURNAL in 2011. Mangesh V. Benodkar, Prof. Umesh W. Hore IJSRE Volume 2 Issue 7 July 2014 Page 1097