CS 254 DIGITAL LOGIC DESIGN. Universal Asynchronous Receiver/Transmitter

Similar documents
Universal Asynchronous Receiver- Transmitter (UART)

[Krishna*, 4.(12): December, 2015] ISSN: (I2OR), Publication Impact Factor: 3.785

Laboratory 4. Figure 1: Serdes Transceiver

HOLITA HDLC Core: Datasheet

LSN 12 Shift Registers

Main Design Project. The Counter. Introduction. Macros. Procedure

TAXI -compatible HOTLink Transceiver

CSCB58 - Lab 4. Prelab /3 Part I (in-lab) /1 Part II (in-lab) /1 Part III (in-lab) /2 TOTAL /8

TAXI -compatible HOTLink Transceiver

Design of BIST Enabled UART with MISR

Main Design Project. The Counter. Introduction. Macros. Procedure

1. Synopsis: 2. Description of the Circuit:

Design of a Binary Number Lock (using schematic entry method) 1. Synopsis: 2. Description of the Circuit:

FPGA Laboratory Assignment 4. Due Date: 06/11/2012

Implementing SMPTE SDI Interfaces with Artix-7 FPGA GTP Transceivers Author: John Snow

Implementation of UART with BIST Technique

EECS145M 2000 Midterm #1 Page 1 Derenzo

Traffic Light Controller

Digital Systems Laboratory 1 IE5 / WS 2001

CHAPTER1: Digital Logic Circuits

Laboratory Exercise 4

Multiplex Serial Interfaces With HOTLink

Experiment # 12. Traffic Light Controller

Do the following: a. (12 points) Draw a block diagram of your circuit design, showing and labeling all essential components and connections.

Design and Evaluation of a Low-Power UART-Protocol Deserializer

ASYNCHRONOUS COUNTER CIRCUITS

Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Introductory Digital Systems Laboratory

The University of Texas at Dallas Department of Computer Science CS 4141: Digital Systems Lab

Asynchronous (Ripple) Counters

CHW 261: Logic Design

University of Pennsylvania Department of Electrical and Systems Engineering. Digital Design Laboratory. Lab8 Calculator

DEPARTMENT OF ELECTRICAL &ELECTRONICS ENGINEERING DIGITAL DESIGN

INC 253 Digital and electronics laboratory I

CSE 275 Digital Design Lab Lab 8 Serial Adder/Subtractor Penn State Erie, The Behrend College Fall Semester 2007 Number of Lab Periods: 2

REPEAT EXAMINATIONS 2002


Final Exam review: chapter 4 and 5. Supplement 3 and 4

Inside Digital Design Accompany Lab Manual

NH 67, Karur Trichy Highways, Puliyur C.F, Karur District UNIT-III SEQUENTIAL CIRCUITS

1. Convert the decimal number to binary, octal, and hexadecimal.

Chapter 9: Shift Registers

Introduction to Serial I/O

Page 1. Introduction to Serial I/O. Definitions. A Serial Channel CS/ECE 6780/5780. Al Davis. Today s topics: Serial I/O

EECS150 - Digital Design Lecture 19 - Finite State Machines Revisited

Logic Design. Flip Flops, Registers and Counters

Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Introductory Digital Systems Laboratory

CARLETON UNIVERSITY. Facts without theory is trivia. Theory without facts is bull 2607-LRB

RF4432 wireless transceiver module

Serial FIR Filter. A Brief Study in DSP. ECE448 Spring 2011 Tuesday Section 15 points 3/8/2011 GEORGE MASON UNIVERSITY.

Review of digital electronics. Storage units Sequential circuits Counters Shifters

EE 209 Lab 7 A Walk-Off

AbhijeetKhandale. H R Bhagyalakshmi

Point System (for instructor and TA use only)

Digital Systems Laboratory 3 Counters & Registers Time 4 hours

CMS Conference Report

TSIU03, SYSTEM DESIGN. How to Describe a HW Circuit

Design and Implementation of Uart with Bist for Low Power Dissipation Using Lp-Tpg

10GE WAN PHY: Physical Medium Attachment (PMA)

Metastability Analysis of Synchronizer

Lab 5 FPGA Design Flow Based on Aldec Active-HDL. Fast Reflex Game.

FPGA Implementation of Convolutional Encoder And Hard Decision Viterbi Decoder

Figure 1 Block diagram of a 4-bit binary counter

EE178 Spring 2018 Lecture Module 5. Eric Crabill

Sequential circuits. Same input can produce different output. Logic circuit. William Sandqvist

EEM Digital Systems II

Implementing Audio IP in SDI II on Arria V Development Board

ELE2120 Digital Circuits and Systems. Tutorial Note 8

ADC Peripheral in Microcontrollers. Petr Cesak, Jan Fischer, Jaroslav Roztocil

EECS 578 SVA mini-project Assigned: 10/08/15 Due: 10/27/15

Digilent Nexys-3 Cellular RAM Controller Reference Design Overview

CHAPTER 4 RESULTS & DISCUSSION

SEMESTER ONE EXAMINATIONS 2002

IMPLEMENTATION OF USB TRANSCEIVER MACROCELL INTERFACE

Flip-Flops and Sequential Circuit Design

Physics 217A LAB 4 Spring 2016 Shift Registers Tri-State Bus. Part I

Chapter 9 Counters. Clock Edge Output Q 2 Q 1 Q

Name: Date: Suggested Reading Chapter 7, Digital Systems, Principals and Applications; Tocci

REPEAT EXAMINATIONS 2004 SOLUTIONS

Single Channel LVDS Tx

Counters

Lab Assignment 2 Simulation and Image Processing

Introduction. Serial In - Serial Out Shift Registers (SISO)

8. Stratix GX Built-In Self Test (BIST)

MIPI D-PHY Bandwidth Matrix Table User Guide. UG110 Version 1.0, June 2015

Counter dan Register

IMPLEMENTATION OF REAL TIME TELEMETRY & PLAY-BACK DATA IN A SINGLE DATA STREAM

Implementing SMPTE SDI Interfaces with Kintex-7 GTX Transceivers Author: John Snow

Implementing SMPTE SDI Interfaces with Zynq-7000 AP SoC GTX Transceivers Author: John Snow

Model Solution and marking scheme for Examination Paper EEE305J1: Microcontroller Systems 2004/5 General Observations

Contents Circuits... 1

ENGG2410: Digital Design Lab 5: Modular Designs and Hierarchy Using VHDL

Module -5 Sequential Logic Design

Testing of UART Protocol using BIST

Task 4_B. Decoder for DCF-77 Radio Clock Receiver

CHAPTER 6 DESIGN OF HIGH SPEED COUNTER USING PIPELINING

Midterm Exam 15 points total. March 28, 2011

0 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1 1 1 Stop bits. 11-bit Serial Data format

Review : 2 Release Date : 2019 Last Amendment : 2013 Course Code : SKEE 2742 Procedure Number : PK-UTM-FKE-(0)-10

Bell. Program of Study. Accelerated Digital Electronics. Dave Bell TJHSST

SERDES Eye/Backplane Demo for the LatticeECP3 Serial Protocol Board User s Guide

Transcription:

CS 254 DIGITAL LOGIC DESIGN Universal Asynchronous Receiver/Transmitter

Team Members 1. 130050001: Ghurye Sourabh Sunil 2. 130050023: Nikhil Vyas 3. 130050037: Utkarsh Mall 4. 130050038: Mayank Sahu 5. 130050039: Nitesh Dudhey

Goal To design and simulate universal asynchronous receiver/transmitter circuit (UART) in Xilinx ISE and Implement the simulated design on ATLYS board.

RTL Components The UART Circuit consists of 3 register level modules: 1. Clock Generator 2. Transmitter 3. Receiver

RTL schematic without Connecting TX_DATA to RX_DATA

Clock Generator Inputs: 1. reset (rst) 2. clock (sys_clk) Output: 1. s_rate

The clock generator module takes system clock as input and convert this rate to sampling rate. Baud rate = 19200 Hz (1) Sampling rate = 16 * Baud rate (2) clock freq = 100 MHz (3) Using the above equations we can calculate that in approximately 326 clock cycles of system clock sampling should be done once.

So we keep a counter of 8 bit. When the counter reaches 163(0b10100011) we need to change output clock signal. In this way we can we can generate a more slower clock with our faster system clock. reset signal asynchronously resets s_rate to zero.

Simulation of Clock generator sys_clock Time Period = 1 ns 1/s_rate = 1 ns * 326 = 326 ns

Transmitter Inputs: 1. reset (rst) 2. rx_data_valid 3. rx_data(7:0) 4. tx_clk Output: 1. tx

Data is transmitted in serial fashion. Transmitter will get 8-bit data(rx_data) in parallel which should be transmitted 1-bit as(tx) over 1 /baud rate time or over 16 times sampling cycle. The transmission character is composed of an 8-bit data byte, sent LSB first, proceeded by a start bit (LOW) and followed by a stop bit (HIGH).

Transmitter consists of 4 states: 1. Resting- Idle state, tx is 1, goes to starting state when rx_data_valid is 1 for 1/ Baud rate time. 2. Starting- tx is set to zero for 1/baud rate time, then moved to transmitting state. 3. Transmitting- tx is set to rx_data[i] (i = 0 to 7 ) each for 1/Baud rate time, then it goes to stop state. 4. Stopping- tx is 1 for 1/baud rate time then goes to resting state.

State Diagram for Transmitter

Implementation Two counters are kept: 1. For keeping the sampling of a bit [3:0] (0 to 15). 2. For keeping the number of bits transmitted [2:0](0 to 7). Reset signal asynchronously resets the circuit.

Simulation for Transmitter Module

Receiver Inputs: 1. reset(rst) 2. rx 3. rx_clk Outputs: 1. tx_data[7:0] 2. tx_data_valid

Data is received in serial fashion. Receiver will receive 8-bit data serially(rx) which should be given as 1-byte (tx_data) in 1/ Baud rate cycle or over 16 times sampling cycle. When no character is being transmitted, the line remains idle (HIGH).

Receiver consists of 4 states: 1. Resting- Idle state, tx_data_valid is 0, goes to receiving state when rx is 0 for 1 Baud cycle. 2. Receiving- As rx comes tx_data[i] is set to rx value each one of the 1/Baud rate time, after 8 cycles then it goes to storing state. 3. Storing- tx_data_valid is set to 1 for 1/Baud rate time. Then it goes to stop state. 4. Stop- waits for 1/Baud rate time then goes to resting state.

State Diagram for Receiver

Implementation Two counters are kept: 1. For keeping the sampling of a bit [3:0] (0 to 15). The 8th bit of this sample is taken as rx 2. For keeping the number of bits received [2: 0](0 to 7). Reset signal asynchronously resets the circuit.

Simulation for Receiver Module

Testing on Board While testing on board, the output of receiver is send to transmitter. i.e TX_DATA is connected to RX_DATA and TX_DATA_VALID to RX_DATA_VALID for loopback purposes.

RTL while testing on board

In this case, TX_DATA and TX_DATA_VALID has no use as the outputs of receiver are connected directly to inputs of transmitter. Connecting this to teraterm with input/output UART ports in UCF files will give the correct result.

Contributions 1. 130050001- Ghurye Sourabh Sunil TX module, TX module testbench, UART top module, report 2. 130050023- Nikhil Vyas RX module, RX module testbench, clock generator, UART top module TB 3. 130050037- Utkarsh Mall TX module, RX module, clock generator TB, presentation 4. 130050038- Mayank Sahu RX module, RX module testbench, clock generator, report 5. 130050039- Nitesh Dudhey TX module, TX module testbench, UCF code, presentation.