Report
Report
UNIVERSAL ASYNCHRONOUS
RECEIVER AND TRANSMITTER
[UART]
By:
1. Rohit.S.Kademani USN:01FE20BEC080
2. Darshan.S.Katagihallimath USN:01FE20BEC087
3. Manoj PM USN:01FE20BEC038
Semester: V, 2022-2023
Under the Guidance of
Dr.Saroja.V.Siddamal
1
K.L.E SOCIETY’S
KLE Technological University,
HUBBALLI-580031
2022-2023
CERTIFICATE
External Viva:
1.
2.
2
ACKNOWLEDGMENT
For effective completion of ”Design of Universal Asynchronous Receiver And Transmitter” would
be unfinished without co-ordination, co-operation and collective effort of all the members.A
broad spectrum of feedback and inspiration from a variety of people is recognized in this study.
We are grateful to Dr.Nalini Iyer, Head of School of Electronics and Communication En-
gineering for facilitating us in completing this project and expanding the department’s resources.
It’s our honour to express our heartfelt gratitude to Dr.Saroja V Siddamal, project head
for her invaluable contributions, capable guidance, support, whole hearted cooperation for our
project
Finally yet importantly, we would like to thank all those either directly or indirectly made
a difference in the project.
Rohit.S.Kademani USN:01FE20BEC080
Darshan.S.Katagihallimath USN:01FE20BEC087
Manoj PM USN:01FE20BEC038
3
ABSTRACT
4
Contents
1 Introduction 9
1.1 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Literature survey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3 Problem statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4 Application in Societal Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5 Project Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2 System design 11
2.1 Functional block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3 Implementation details 12
3.1 Specifications and system architecture . . . . . . . . . . . . . . . . . . . . . . . . 12
3.1.1 APB interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.1.2 Baud generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.1.3 Data buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.1.4 Transmitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.1.5 Receiver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.2 Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.3 Flowchart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
References 18
5
List of Tables
6
List of Figures
7
Chapter 1
Introduction
1.1 Objectives
1. Transmission Of Data From APB Slave To The Peripherals Using Data Buffers And
Transmit State Machine(TSM).
2. Receiving Of Data From The Peripherals To APB Slave Using Data Buffers And Receive
State Machine(RSM).
3. These Two Tasks Are Done Using A Baud Generator Without Using A Master Clock(i.e,
Asynchronous).
This paper also gives the functionl block diagram of the interface with description and the
details of the parameters on APB and other control interface signals and fixed mode of options
based on character size, parity, baud rate, fractional part of baud value.
8
This paper has the timing diagram of the UART which is broken down into a few basic
functions transmit data, receive data and errors. Errors are based on parity error, overflow
error and framing error.Framing error is based on two modes no legacy mode and legacy mode.
In Normal(non-legacy)mode RXRDY and framing error signal are one system clock cycle
apart, framing error signal gets asserted one system clock cycle before assertion of RXRDY
signal and the framing error is cleared using read operation. In legacy mode after the assertion
of RXRDY signal the framing error signal gets asserted. when the data is available RXRDY
signal gets asserted and check for the blocks missing in the data frame and as same in the
normal mode the error is cleared using a read operation.
The paper also gives the information about testbench operation and modification for both
VHDL and verilog. The testbench is provided as bus functional model(BFM) to coreUARTapb
block that in turn is connected via serial UART interfaces.This testbench instantiates AMBA
bus functional model for APB master that controls the operation of coreUARtapb through
read and write to access internal registers.
9
Chapter 2
System design
10
Chapter 3
Implementation details
The Advanced Microcontroller Bus Architecture (AMBA) protocol family includes the
Advanced Peripheral Bus (APB). It defines a low-cost interface that is designed to use the
11
least amount of power and have a simple interface. Use the APB protocol to connect to
low-bandwidth peripherals that do not need the high performance of the AXI protocol because
it is not pipelined. To make it easier to integrate APB peripherals into any design flow, the
APB protocol links a signal transition to the rising edge of the clock. It requires at least two
cycles for each transfer[2].
It refers to the rate at which data is conveyed in the form of bits per second or signal units
per second from the transmitter to the receiver. The more quickly data can be conveyed, the
greater the baud rate. i,e. 9600 bits/sec
The work of the data buffer is to store the input value from the APB slave until the signal is
sent to the data buffer to give the data out to transmit state machine for transmission of data.
In our design data buffer size is of 32 bit[2].
12
3.1.4 Transmitter
The transmitter works only when there is a tick signal generated by the baud
generator.Transmitter takes 32 bit parallel input from the data buffer and transmits serial data
of 1bit each to apb slave.
3.1.5 Receiver
The receiver works only when there is a tick signal generated by the baud generator.Receiver
receives a serial data from the apb slave and stores the data value in receive data buffer.
Through receive data buffer a 32 bit parallel output will come out as output.
13
3.2 Algorithm
STEP1: Loading of Baud Value and Data to APB slave
STEP2: APB Assigns the Baud Value to Baud Generator and loads the Data into the
Transmitter Data Buffer
STEP3: Baud Generator Generates Stick to sync Transmitting and Receiving
STEP4: Transmit State Machine Transmits the Data to the peripheral
STEP5: Receive State Machine Receives the Data from the Peripheral
STEP6: Received data is loaded into The Receiver Data Buffer
STEP7: From the Receiver Data Buffer Data is received Through APB
3.3 Flowchart
Transmitter flow
14
Receiver flow
15
Chapter 4
16
Chapter 5
5.1 Conclusion
UART is designed to achieve reliable serial data communication. The transmitter and
receiver module of UART are designed using FSM concept for specified baud rate Is been
successfully simulated and synthesized
It is used to establish connection between computers that are 900 metres apart and for data
transfer to serial ports or peripherals via microcontroller boards.One of the main advantage of
uart is it uses baud generator which determines the speed of data transmission. Arduino and
raspberry pi are some of the currently used applications of uart
17
Bibliography
[1] Liakot Ali, Roslina Sidek, Ishak Aris, Alauddin Mohd Ali, and Bambang Sunaryo Suparjo.
Design of a micro-uart for soc application. Computers & Electrical Engineering,
30(4):257–268, 2004.
[2] Padmaprabha Jain and Satheesh Rao. Design and verification of advanced microcontroller
bus architecture-advanced peripheral bus (amba-apb) protocol. In 2021 Third
International Conference on Intelligent Communication Technologies and Virtual Mobile
Networks (ICICV), pages 462–467. IEEE, 2021.
[3] KB Sowmya, Shreyans Gomes, and Vishnusai Reddy Tadiparthi. Design of uart module
using asmd technique. In 2020 5th International Conference on Communication and
Electronics Systems (ICCES), pages 176–181. IEEE, 2020.
[4] Emile Jacobus Thesnaar. Development of a radiation resistant communication node for
satellite sub-systems. PhD thesis, Stellenbosch: Stellenbosch University, 2014.
18