SlideShare a Scribd company logo
1 of 8
Download to read offline
ISSN: 2278 – 1323
                          International Journal of Advanced Research in Computer Engineering & Technology
                                                                              Volume 1, Issue 4, June 2012




    Design of Multi-Channel UART Controller
            Based On FIFO and FPGA
       1                                           2                                  3
        Deepchand Jaiswal                           Dr. Rita Jain                      Prof. M. Zahid Alam
        M.Tech Research scholar                      E.C. Department                    E.C. Department
        EC Dept. LNCT-Bhopal, India                 LNCT-Bhopal, India                  LNCT-Bhopal, India
.       deepchand55@gmail.com


Abstract: This paper presents a multi-channel UART              (1) Usually, there is only one channel which can only
controller based on FPGA (Field Programmable Gate Array).       connect to a single peripheral in normal UART
UART a kind of serial communication circuit is used widely.     controller. In this case the number of chips will increase
A universal asynchronous receive/transmit (UART) is an
                                                                with the augment of peripherals, which may cost a lot of
integrated circuit which plays the most important role in
                                                                space and resources
serial communication. The architecture of the system is
introduced. The flow charts of data processing as well as the
implementation state machine are also presented in detail.
The controller can be used to implement communications in
complex system with different Baud Rates of sub-controllers.
The controller is reconfigurable and scalable and it also can
be used to reduce time delays between sub-controllers of a
complex control system to improve the synchronization of
each sub-controller.
Keywords: FIFO, FPGA, UART, MULTI-CHANNEL,


                   I. INTRODUCTION
UART is a popular methodology of serial asynchronous
communication. The UART data frame is composed of a                            Fig.1 System architecture

start bit of one bit-length logic 0,5 to 8 bit-length data
                                                                (2) In general the interrupt request is an easy and
bits and a stop bit of one. one and a half or two bit
                                                                common method to notify the microprocessor of a
length. There may be one bit-length checkout bit after
                                                                flame’s operation. But there comes a problem that the
the data bits if it is necessary. And its characteristic is
                                                                burden of the processor will become heavier and heavier
that the frame contains only one character and it is
                                                                when the interrupt request occurs more and more
transmitted continuously one by one. Typically, the
                                                                frequently, i.e. when there are frequent interrupt requests
UART is connected between a micro-processor and a
                                                                and only a few characters are transmitted during each
peripheral. Although UART is popular and the structure
                                                                interrupt time, the processor’s implementation efficiency
of the flame is simple, it is inefficient. In this paper,
                                                                will becomeex,, tersely low, It means that the processor
three disadvantages, which influence its efficiency, are
pointed out and solved.

                                                                                                               419
                                      All Rights Reserved © 2012 IJARCET
ISSN: 2278 – 1323
                                International Journal of Advanced Research in Computer Engineering & Technology
                                                                                    Volume 1, Issue 4, June 2012


would spend a lot of time on processing small amount of      The modules are shift registers, parity checkers and
data without doing other necessary tasks.                    receiving FIFOs. The shift registers connected to     RXD
(3) Although certain processor’s data bus is 32.bit wide     wires are used to transfer all inputting serial data into
or more, the traditional UAI ’controller transmits only      parallel data. Which will be sent to parity checkers as
one byte data to the microprocessor with which it            soon as a correct frame is received and they also check

connected at a time. In this case,24 bits or more of data    the integrality of the frames? The parity checkers are
                                                             used to implement parity check, if it is necessary and
bus are wasted.
                                                             inform the FIFOs whether the receiving frames are
         To solve the first problem more UART
                                                             correct. The receiving FIFOs will store the data which
channels in a single chip are required and the same as
                                                             are correctly received until micro-processor intends to
ST16C554t“does.However, this scheme may result in
                                                             read them.
more frequent interrupts which will make the second
problem more serious. Considering both of them, the
                                                             2.2 Modules of sending flow
issues are focused on the improvement of data
                                                             The modules are sending FIFOs parity checkers and shift
transmission efficiency during interrupt times. So in
                                                             registers. The sending FIFOs will store data sent from
this paper, the ideas of enhanced parallel processing of
                                                             microprocessor while there still are data under
data, novel interrupt controlling mechanism. As well as
                                                             transmission on the TXD wires. The parity checkers here
utilizing the whole data bus width are put forward.
                                                             are used to attach the start and stop bits to the arriving
Realization is implemented using Verilog HDL on
                                                             frames as well as filling the checkout bit into frames if it
FPGA.
                                                             is necessary. Then the frames will be sent out serially by
                                                             the shift registers through TXD wires.
    II. SYSTEM ARCHITECTURE AND DESIGN
              PRINCIPLE DESCRIPTION
                                                             2.3 Other components
As a UART controller, the service affects are micro-
                                                             The baud-rate generator generates different baud-rate
processors and serial communication terminations (SCT)
                                                             clocks used as time benchmarks in UART transmission.
.To be simple, it is assumed that the bus of
                                                             The CPU interface manages communications, including
microprocessor is the same as 32.bit Motorola Power          buses control interrupts, reading signal, writing signal
PCT series and the SCT only has two transmission wires,      etc. between the microprocessor and the controller. The
TXD (for transmitted data) and RXD (for received data)       interrupt controller takes responsibility of managing the
.Therefore the main system, architecture of the              interrupt requests generated by each channel and sending
controller is shown in Fig.1 which is based on the           them to microprocessor based on certain principles. To
assumption presented here an d UART protoco1. The            improve the system efficiency, the design is focused on
architecture introduced in Fig.1 can be viewed as a          how to accomplish more tasks in less time. In other
description of one channel and the others.         In the    words more implementations in fewer system clock
controller are exactly the same.                             periods are expected. There are two methods adopted in
                                                             this design, implementing correlative tasks in parallel as
2.1 Modules of receiving flow                                many as possible and reducing the implementation steps


                                                                                                                    420
                                            All Rights Reserved © 2012 IJARCET
ISSN: 2278 – 1323
                               International Journal of Advanced Research in Computer Engineering & Technology
                                                                                   Volume 1, Issue 4, June 2012


of the ordinal task. The first method is recommended           is due to Sending serially operation, so if a notification is
when there are weak constraints of time relationship           feed back to active the Writing into reparation, at the
among tasks so it is adopted in the module design s of         same time that the frame is delivered this chock point
shift registers parity checkers and FIFOs. The other           will be eliminated.
method works well when the constraints are strong such
as responding continuous interrupts on one wire which
should be implemented one by one. Therefore it is
adopted in interrupt controller module.


 III. SENDING AND RECEIVING FLOWS DESIGN
There are three clocks that should be considered in the
design the first one is the system main clock which is the
basal time scale of all the tasks and it is very fast, the
clock is 50 MHz in this design: the second one is the
baud-rate clock which is the division of the main clock,
it is only used when there are requirements to send data
or to synchronize receiving data, the third one is the
clock of microprocessor instruction. Because the baud
                                                                       Fig.2 Operation flow of sending process
rate clock and instruction clock are far slower than the
main clock, the pre-operations which are driven by the         The state machine of Sending serially process is shown
main clock can be implemented during receiving process
                                                               in Fig.3. The state machine as well as the counters in
and sending process, and it is possible to transmit data as
                                                               the Stop and the Notify states is driven by the baud rate
soon as it is ready. Considering the second problem
                                                               clock
mentioned in Section l, it can be concluded that the time
of   data      transmission   between    controllers    and
microprocessor will be reduced if all the 32 bits of data
bus are utilized。111is also is adopted in the design.
Using these methods, all the tasks will be accomplished
efficiently.


3.1 Module cooperation in sending flow
Based on the description in Section 2, the data flow of
sending process is shown in Fig.2. The conclusion of
Fig.2 is that there are two serial operations in the process
of frame composing which are the system choke points
                                                                        Fig 3 State machine of sending serially
(the first operation is indicated with label l and the
second one is indicated with label 2 in Fig.2. he first one


                                                                                                                       421
                                           All Rights Reserved © 2012 IJARCET
ISSN: 2278 – 1323
                               International Journal of Advanced Research in Computer Engineering & Technology
                                                                                   Volume 1, Issue 4, June 2012


At the last count of the Stop counter, the state machine      the FIFO should be the same. However, the Sh register,
would switch to the Notify state from the Stop state. The     whose length is only a frame length, is shorter than 32
Notify state in which the notification is generated and       bits, so a 32-bit register composed of LEs is required,
the last stop bit ends, will last one baud rate clock. Then   which will be used as a buffer between the FIFO and the
the state machine will switch to the idle state. Because      Shift register. It is quite necessary for the Indicator to
the main clock, which is the benchmark of the frame           record how many bytes of data are in the 32-bit register.
composing, is far faster than the baud-rate clock, a new      That is because when there are less than 4 bytes of data
frame will be ready as soon as the Idle state occurs. All     in the 32-bit register, such as the last time of
of this assures that no time is needed to wait for a new      transmission, the Shift register should obtain the exact
frame’s preparation, so the first chock point is eliminate.   amount     of   bytes   to   be   transmitted.   Thus   the
                                                              implementation flow of the whole 32-bit width FIFO
3.2 Sending FIFO system design                                system is shown in Fig.5
The instruction clock of microprocessor is also faster
than the baud rate clock so the data from micro-
processor usually arrive at the moment when there are
data under transmission. To prevent system from waiting
all though the transmission, which is the second chock
point in Fig.2,the fresh data should be buffered
during the transmission. FIFO is adopted in the design
.and its width is 32-bit which is referred to the width of
data bus. In this paper, RAM integrated in FPGA is used
to realize the design of the FIFO to reduce the usage of
FPGA logic elements (LEs). Architecture of the sending                 Fig 5 Sending FIFO implementation flow
FIFO system is shown in Fig.4
                                                              It is indicated in Fig.5 that the writing process of
                                                              micro-processor can implement ceaselessly no mater
                                                              whether the previous data have been sent or not which
                                                              means that more times of writing process can be
                                                              implemented during each interrupt time. And during
                                                              each time at most four bytes of data can be written now,
                                                              compared with the input of one byte of data using
                                                              traditional method. So the time required for a whole task
       Fig 4 Architecture of sending FIFO system              is reduced.


                                                              3.3 Module cooperation in receiving flow
In order to satisfy the synthesizable condition of Verilog
                                                              There is an important difference between the receiving
HDL RAM ,the input bit width and the output one of
                                                              flows and the sending flow. It is that the transmission


                                                                                                                      422
                                           All Rights Reserved © 2012 IJARCET
ISSN: 2278 – 1323
                               International Journal of Advanced Research in Computer Engineering & Technology
                                                                                   Volume 1, Issue 4, June 2012


velocity of the data source (microprocessor) is far faster     state an d the clock period would also be reduced In this
than that of the data destination (serial periphera1) in the   way All of these designs ensure that the correct data can
sending flow, while the situation is just the opposite in      be stored in FIFOs as soon as a frame is received
the receiving flow. So the data from microprocessor            completely, an d in this way, the system efficiency is
should be delivered to peripheral immediately to prevent       improved.
data cumuli in the sending flow. But in the receiving
flow, it is possible for the controller to buffer data until   3.4 Receiving FIFO design
microprocessor has time to respond to the receiving            Different from the sending FIFO which is used to
request, which can be used to solve the second problem         prevent data cumuli the receiving FIFO focuses on
mentioned in Section 1. Thus the requirement of the            reducing the interrupt frequency. In the design ,
reduction of data processing time in receiving flow is         receiving interrupts are generated only when the quantity
focused on the Shift register module and parity checker        of the data stored in FIFO goes beyond a threshold value
module in Fig.1. The state machine is shown in Fig.6           or it is time out for the FIFO to wait for the
and it is driven by baud-rate clock which is used to           microprocessor to receive data. The threshold is a certain
sample input signals.                                          value between zeros an d FIFO depth. The architecture
                                                               of receiving FIFO system is shown in Fig.7




          Fig 6 State machine of receiving flow                      Fig 7 Architecture of receiving FIFO system

In the state machine, the Check state is between the Data      In the receiving flow, the 32一bit register and the Data
state and the Stop state and it takes the responsibility of    length indicator operate in the same manner as the
parity checkout. Such design is based on the fact that the     sending FIFO does, an d the whole 32一bit bus can be
baud, rate clock is designed as 16 times faster as input       utilized to increase the data transmission velocity. The
signal so there are enough clock periods to check parity       Overtime controller is active only when there still are
during the arrival of stop bits, therefore, the parity         data in the FIFO or the register, an d its amount are not
checkout can implement in parallel with the signal             beyond the threshold. In this case an overtime interrupt
sampling process. The state machine will switch to the         will be generated to notify the micro--processor of
Notify state at the last count of the stop bits. The Notify    receiving request if the counter of overtime controller is
state takes the responsibility of notifying FIFOs to store     overflow. The whole implementation flow is shown in
received data. The principle is the same as the Check          Fig.8.To       reduce    the   reading   times   of   the

                                                                                                                     423
                                           All Rights Reserved © 2012 IJARCET
ISSN: 2278 – 1323
                              International Journal of Advanced Research in Computer Engineering & Technology
                                                                                  Volume 1, Issue 4, June 2012


microprocessor, the Data length indicator only needs to     these processes are reduced, the efficiency of the ISR
be accessed during the overtime interrupt.                  will be improved In the realization of the controller, 16
                                                            UART channels are included, which means that there are
                                                            16 coequal interrupt sources to the interrupt controller.
                                                            Because of the coequality, the principle of interrupt
                                                            management is first in first serves (FIFS),and interrupt
                                                            nesting is forbidden. So there comes a problem about
                                                            how to deal with the interrupts when more than one
                                                            channel send interrupt requests to the controller at the
                                                            same time. The first method is to arrange these interrupts
                                                            according to certain principle (it will be indicated later in
                                                            this section) and then send them out in order. The
                                                            disadvantage is that there are several interrupts generated
                                                            so that the processor has to switch into ISR frequently.
                                                            Then the processor should poll over to implement
      Fig 8 Receiving FIFO implementation Flow              relevant operations. It will lead to a mass of time
                                                            overhead in polling operations.
This is because the quantity of data stored in 32一bit
FIFO must be the multiple of 4 bytes on the arrival of
                                                            4.2 Scheme design
over-threshold interrupt To conclude, the parallel
                                                            Based    on   the   principles   mentioned     above,    the
implementations are optimized an d FIFOs are
                                                            architecture of the interrupt controller is shown in Fig.9
redesigned to enhance transmission velocity by utilizing
                                                            which contains a 256-bit deep and bit wide FIFO. In the
the data bus adequately. Therefore, the efficiency is
                                                            design of all the channels the shortest time between two
improved an d more channels are able to cooperate in the
                                                            ordinal interrupt requests is only one system clock
controller
                                                            period. So if severa1 interrupts occur at the same time,

      IV. INTERRUPT CONTROLLER DESIGN                       they should be written into the FIFO in one clock period.
                                                            To satisfy this condition,
4.1 Scheme argumentation

The interrupt controller cooperates with both internal
channels an d external micro—processor, and the
efficiency of internal channels is assured by design s in
Section 3.So in this section, attentions should be paid
to the implementation of microprocessor who processes
tasks Interrupt service routine(ISR)is implemented by
microprocessor. Besides the reading an d the writing
processes, the most necessary task of ISR is to obtain
interrupt source an d interrupt state. So if the steps of            Fig.9 Interrupt controller architecture

                                                                                                                    424
                                         All Rights Reserved © 2012 IJARCET
ISSN: 2278 – 1323
                               International Journal of Advanced Research in Computer Engineering & Technology
                                                                                   Volume 1, Issue 4, June 2012


16 interrupts of each channel, including null interrupts      are used more than once. A single UART was designed
(no interrupt request in current channel) ,are written. A     and verified. Then UART component was instantiated
new interrupt of a certain channel can not be generated       four times to obtain four independent UARTs .Similarly
unti1 the previous ones are responded so 16× 16=256           once FIFO block was designed and verified, it was
bits of depth are required at 1east to store the interrupts   instantiated twice to obtain FIFO1 and FIFO2.Codes in

Implementation of the controller is shown in Fig.10.          Verilog HDL were used to design the architecture of the

The conclusion is that the time of null interrupts output     Multi UART controller.

is the main time overhead.




                                                                        Fig 11: Baud Rate Generator Output




      Fig.10 Interrupt controller implementation

But the system main clock frequency is far faster than                    Fig 9: Transmitting Sequence.

interrupt generating frequency so the overhead can be
ignore.


IV SIMULATION AND VERIFICATION
To verify design of the controller a test bench is written
to make verification in ISE simulator The software
structure involved in the design of the following blocks-
UART block, FIFO blocks, Status Register Block, Baud
Generator block. The controller which interacts with all
of the above was designed and its design was discussed                      Fig 12: Receiver Response

earlier. Some components like UART and FIFO blocks



                                                                                                                 425
                                          All Rights Reserved © 2012 IJARCET
ISSN: 2278 – 1323
                                    International Journal of Advanced Research in Computer Engineering & Technology
                                                                                        Volume 1, Issue 4, June 2012


                                                                           8. Delvai M,Eisenmann U, Elmenrichs W Intelligent UART module
                                                                           for real-time applications. First Workshop on Intelligent Solutions in
                                                                           Embedded Systems,2002;1 77—185.
                                                                           9. X., Yang, “Industrial Data Communication and Control Networks”,
                       V. CONCLUTION
                                                                           Beijing: TUP, 2003.6[9] B. Zeidman, “Designing with FPGAs &
The paper presents design method of asynchronous FIFO                      CPLDs”, CMP Books, 2002
and structure of the controller. This controller is                        10. C. E. Cummings, “Simulation and Synthesis Techniques for
                                                                           Asynchronous FIFO Design with Asynchronous Pointer
designed with FIFO circuit block and UART (Universal                       Comparisons”, SNUG San Jose 2002

Asynchronous Receiver Transmitter) circuit block within
FPGA to implement communication in modern complex
control systems quickly and effectively. Form the
communication sequence diagrams; it is easily to know
that this controller can be used to implement
communication when master equipment and slaver
equipment are set at different Baud Rate. It also can be
used to reduce synchronization error between sub-
systems in a system with several sub-systems. The
controller is reconfigurable and scalable.


                        REFERENCES


1. S. E. Lyshevski, “Control Systems Theory with Engineering
Applications”, Birkhauser Boston, 2001.
2. Free scale semiconductor, Inc MPC860 Power QUICCTM family
user’s manua1.2004.
3. Li SG Gao D Y Nie PQ Study on multi task management unit MTU
of embedded micro NCS, Acta Aeronautical et Astronautic Sinica
2000;21(2):134-137 in Chinese.
4. Liu L, Gao D,     Y Zhang SB, et a1.Design of EM FPU in
embedded    microprocessor   Act    a     Aeronatuticaet    Astronautics
Sinica2001;22(4):308-31 1.[in Chinese]
5. Yean del J, Thulborn D, Jones S. An online testable UART
implemented using IFIS.1 5th IEEE VLSI Test et Astronautic
Symposium ,1997;344-349.
6. Elmenreich W, Delvai M, Time triggered communication with
UARTs.4th       IEEE     International     Workshop        on   Factory
Communication Systems,2002;97-104.
7. Gallo R, Delvai M,Elmenreich W,eta1.Revision an d veil
fiction of an enhanced UART.IEEE International Workshop on
Factory Communication Systems,2004;315-318.




                                                                                                                                           426
                                                   All Rights Reserved © 2012 IJARCET

More Related Content

What's hot

Real Time Atomization of agriculture system for the modernization of indian a...
Real Time Atomization of agriculture system for the modernization of indian a...Real Time Atomization of agriculture system for the modernization of indian a...
Real Time Atomization of agriculture system for the modernization of indian a...SHAMEER C M
 
FPGA IMPLEMENTATION OF DEBLOCKING FILTER CUSTOM INSTRUCTION HARDWARE ON NIOS-...
FPGA IMPLEMENTATION OF DEBLOCKING FILTER CUSTOM INSTRUCTION HARDWARE ON NIOS-...FPGA IMPLEMENTATION OF DEBLOCKING FILTER CUSTOM INSTRUCTION HARDWARE ON NIOS-...
FPGA IMPLEMENTATION OF DEBLOCKING FILTER CUSTOM INSTRUCTION HARDWARE ON NIOS-...VLSICS Design
 
Embedded systems notes
Embedded systems notesEmbedded systems notes
Embedded systems notesShikha Sharma
 
Device drivers and interrupt service mechanism
Device drivers and interrupt service mechanismDevice drivers and interrupt service mechanism
Device drivers and interrupt service mechanismVijay Kumar
 
High speed customized serial protocol for IP integration on FPGA based SOC ap...
High speed customized serial protocol for IP integration on FPGA based SOC ap...High speed customized serial protocol for IP integration on FPGA based SOC ap...
High speed customized serial protocol for IP integration on FPGA based SOC ap...IJMER
 
Implementation of resource sharing strategy for power optimization in embedde...
Implementation of resource sharing strategy for power optimization in embedde...Implementation of resource sharing strategy for power optimization in embedde...
Implementation of resource sharing strategy for power optimization in embedde...Alexander Decker
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)ijceronline
 
Serial Port Device Driver
Serial Port Device DriverSerial Port Device Driver
Serial Port Device DriverEmblogic
 
IRJET-Design of ARM Based Data Acquisition and Control System for Engine Asse...
IRJET-Design of ARM Based Data Acquisition and Control System for Engine Asse...IRJET-Design of ARM Based Data Acquisition and Control System for Engine Asse...
IRJET-Design of ARM Based Data Acquisition and Control System for Engine Asse...IRJET Journal
 
Micro controller and dsp processor
Micro controller and dsp processorMicro controller and dsp processor
Micro controller and dsp processorShubhamMishra485
 
Unit 1 intro-embedded
Unit 1 intro-embeddedUnit 1 intro-embedded
Unit 1 intro-embeddedPavithra S
 
ASTROSAT SSR - 2015-05-15
ASTROSAT SSR - 2015-05-15ASTROSAT SSR - 2015-05-15
ASTROSAT SSR - 2015-05-15Aritra Sarkar
 
Design and Implementation of a Stand-Alone Remote Terminal Unit
Design and Implementation of a Stand-Alone Remote Terminal UnitDesign and Implementation of a Stand-Alone Remote Terminal Unit
Design and Implementation of a Stand-Alone Remote Terminal UnitIOSR Journals
 
FPGA Implementation of Real Time Data Acquisition System Using Micro blaze Pr...
FPGA Implementation of Real Time Data Acquisition System Using Micro blaze Pr...FPGA Implementation of Real Time Data Acquisition System Using Micro blaze Pr...
FPGA Implementation of Real Time Data Acquisition System Using Micro blaze Pr...Editor IJCATR
 

What's hot (20)

Real Time Atomization of agriculture system for the modernization of indian a...
Real Time Atomization of agriculture system for the modernization of indian a...Real Time Atomization of agriculture system for the modernization of indian a...
Real Time Atomization of agriculture system for the modernization of indian a...
 
FPGA IMPLEMENTATION OF DEBLOCKING FILTER CUSTOM INSTRUCTION HARDWARE ON NIOS-...
FPGA IMPLEMENTATION OF DEBLOCKING FILTER CUSTOM INSTRUCTION HARDWARE ON NIOS-...FPGA IMPLEMENTATION OF DEBLOCKING FILTER CUSTOM INSTRUCTION HARDWARE ON NIOS-...
FPGA IMPLEMENTATION OF DEBLOCKING FILTER CUSTOM INSTRUCTION HARDWARE ON NIOS-...
 
Embedded systems notes
Embedded systems notesEmbedded systems notes
Embedded systems notes
 
Embedded two mark question
Embedded two mark questionEmbedded two mark question
Embedded two mark question
 
Chapter 2 v.1
Chapter 2 v.1Chapter 2 v.1
Chapter 2 v.1
 
Device drivers and interrupt service mechanism
Device drivers and interrupt service mechanismDevice drivers and interrupt service mechanism
Device drivers and interrupt service mechanism
 
20120140502007 2-3
20120140502007 2-320120140502007 2-3
20120140502007 2-3
 
High speed customized serial protocol for IP integration on FPGA based SOC ap...
High speed customized serial protocol for IP integration on FPGA based SOC ap...High speed customized serial protocol for IP integration on FPGA based SOC ap...
High speed customized serial protocol for IP integration on FPGA based SOC ap...
 
Implementation of resource sharing strategy for power optimization in embedde...
Implementation of resource sharing strategy for power optimization in embedde...Implementation of resource sharing strategy for power optimization in embedde...
Implementation of resource sharing strategy for power optimization in embedde...
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 
Doc32002
Doc32002Doc32002
Doc32002
 
Serial Port Device Driver
Serial Port Device DriverSerial Port Device Driver
Serial Port Device Driver
 
Bm36382385
Bm36382385Bm36382385
Bm36382385
 
IRJET-Design of ARM Based Data Acquisition and Control System for Engine Asse...
IRJET-Design of ARM Based Data Acquisition and Control System for Engine Asse...IRJET-Design of ARM Based Data Acquisition and Control System for Engine Asse...
IRJET-Design of ARM Based Data Acquisition and Control System for Engine Asse...
 
Noise Immune and Area Optimized Serial Interface for FPGA based Industrial In...
Noise Immune and Area Optimized Serial Interface for FPGA based Industrial In...Noise Immune and Area Optimized Serial Interface for FPGA based Industrial In...
Noise Immune and Area Optimized Serial Interface for FPGA based Industrial In...
 
Micro controller and dsp processor
Micro controller and dsp processorMicro controller and dsp processor
Micro controller and dsp processor
 
Unit 1 intro-embedded
Unit 1 intro-embeddedUnit 1 intro-embedded
Unit 1 intro-embedded
 
ASTROSAT SSR - 2015-05-15
ASTROSAT SSR - 2015-05-15ASTROSAT SSR - 2015-05-15
ASTROSAT SSR - 2015-05-15
 
Design and Implementation of a Stand-Alone Remote Terminal Unit
Design and Implementation of a Stand-Alone Remote Terminal UnitDesign and Implementation of a Stand-Alone Remote Terminal Unit
Design and Implementation of a Stand-Alone Remote Terminal Unit
 
FPGA Implementation of Real Time Data Acquisition System Using Micro blaze Pr...
FPGA Implementation of Real Time Data Acquisition System Using Micro blaze Pr...FPGA Implementation of Real Time Data Acquisition System Using Micro blaze Pr...
FPGA Implementation of Real Time Data Acquisition System Using Micro blaze Pr...
 

Viewers also liked

Teleconferência 4T08
Teleconferência 4T08Teleconferência 4T08
Teleconferência 4T08BRMALLS
 
Herbies Tools & Toys
Herbies Tools & ToysHerbies Tools & Toys
Herbies Tools & ToysAmanda
 
Analytics Site Search
Analytics Site SearchAnalytics Site Search
Analytics Site SearchJun Miyazaki
 
Volume 2-issue-6-1965-1968
Volume 2-issue-6-1965-1968Volume 2-issue-6-1965-1968
Volume 2-issue-6-1965-1968Editor IJARCET
 
Règlement du Concours Amateurs 2009 de PHOTOFr
Règlement du Concours Amateurs 2009 de PHOTOFrRèglement du Concours Amateurs 2009 de PHOTOFr
Règlement du Concours Amateurs 2009 de PHOTOFrPHOTO.fr
 

Viewers also liked (8)

273 279
273 279273 279
273 279
 
Teleconferência 4T08
Teleconferência 4T08Teleconferência 4T08
Teleconferência 4T08
 
Herbies Tools & Toys
Herbies Tools & ToysHerbies Tools & Toys
Herbies Tools & Toys
 
Analytics Site Search
Analytics Site SearchAnalytics Site Search
Analytics Site Search
 
Volume 2-issue-6-1965-1968
Volume 2-issue-6-1965-1968Volume 2-issue-6-1965-1968
Volume 2-issue-6-1965-1968
 
1766 1770
1766 17701766 1770
1766 1770
 
Ignite Denver 2
Ignite Denver 2Ignite Denver 2
Ignite Denver 2
 
Règlement du Concours Amateurs 2009 de PHOTOFr
Règlement du Concours Amateurs 2009 de PHOTOFrRèglement du Concours Amateurs 2009 de PHOTOFr
Règlement du Concours Amateurs 2009 de PHOTOFr
 

Similar to Designing a Multi-Channel UART Controller Using FPGA and FIFO

IJSRED-V1I1P2
IJSRED-V1I1P2IJSRED-V1I1P2
IJSRED-V1I1P2IJSRED
 
IJSRED-V1I1P5
IJSRED-V1I1P5IJSRED-V1I1P5
IJSRED-V1I1P5IJSRED
 
High Fault Coverage For On Chip Network Using Priority Based Routing Algorithm
High Fault Coverage For On Chip Network Using Priority Based Routing AlgorithmHigh Fault Coverage For On Chip Network Using Priority Based Routing Algorithm
High Fault Coverage For On Chip Network Using Priority Based Routing AlgorithmIJSRD
 
High Fault Coverage For On Chip Network Using Priority Based Routing Algorithm
High Fault Coverage For On Chip Network Using Priority Based Routing AlgorithmHigh Fault Coverage For On Chip Network Using Priority Based Routing Algorithm
High Fault Coverage For On Chip Network Using Priority Based Routing AlgorithmIJSRD
 
HIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKS
HIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKSHIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKS
HIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKSijngnjournal
 
18068 system software suppor t for router fault tolerancelatex ieee journal s...
18068 system software suppor t for router fault tolerancelatex ieee journal s...18068 system software suppor t for router fault tolerancelatex ieee journal s...
18068 system software suppor t for router fault tolerancelatex ieee journal s...Ashenafi Workie
 
Introduction to embedded System.pptx
Introduction to embedded System.pptxIntroduction to embedded System.pptx
Introduction to embedded System.pptxPratik Gohel
 
Serial Communication Interface with Error Detection
Serial Communication Interface with Error DetectionSerial Communication Interface with Error Detection
Serial Communication Interface with Error Detectioniosrjce
 
ICT III - MPMC - Answer Key.pdf
ICT III - MPMC - Answer Key.pdfICT III - MPMC - Answer Key.pdf
ICT III - MPMC - Answer Key.pdfGowriShankar881783
 
Improved SCTP Scheme To Overcome Congestion Losses Over Manet
Improved SCTP Scheme To Overcome Congestion Losses Over ManetImproved SCTP Scheme To Overcome Congestion Losses Over Manet
Improved SCTP Scheme To Overcome Congestion Losses Over ManetIJERA Editor
 
Verification of uart ip core using uvm
Verification of uart ip core using uvmVerification of uart ip core using uvm
Verification of uart ip core using uvmeSAT Publishing House
 
RFC 1058 - Routing Information Protocol
RFC 1058 - Routing Information ProtocolRFC 1058 - Routing Information Protocol
RFC 1058 - Routing Information ProtocolHoàng Hải Nguyễn
 
ETHERNET PACKET PROCESSOR FOR SOC APPLICATION
ETHERNET PACKET PROCESSOR FOR SOC APPLICATIONETHERNET PACKET PROCESSOR FOR SOC APPLICATION
ETHERNET PACKET PROCESSOR FOR SOC APPLICATIONcscpconf
 

Similar to Designing a Multi-Channel UART Controller Using FPGA and FIFO (20)

IJSRED-V1I1P2
IJSRED-V1I1P2IJSRED-V1I1P2
IJSRED-V1I1P2
 
3
33
3
 
D031201021027
D031201021027D031201021027
D031201021027
 
IJSRED-V1I1P5
IJSRED-V1I1P5IJSRED-V1I1P5
IJSRED-V1I1P5
 
High Fault Coverage For On Chip Network Using Priority Based Routing Algorithm
High Fault Coverage For On Chip Network Using Priority Based Routing AlgorithmHigh Fault Coverage For On Chip Network Using Priority Based Routing Algorithm
High Fault Coverage For On Chip Network Using Priority Based Routing Algorithm
 
High Fault Coverage For On Chip Network Using Priority Based Routing Algorithm
High Fault Coverage For On Chip Network Using Priority Based Routing AlgorithmHigh Fault Coverage For On Chip Network Using Priority Based Routing Algorithm
High Fault Coverage For On Chip Network Using Priority Based Routing Algorithm
 
HIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKS
HIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKSHIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKS
HIGH PERFORMANCE ETHERNET PACKET PROCESSOR CORE FOR NEXT GENERATION NETWORKS
 
18068 system software suppor t for router fault tolerancelatex ieee journal s...
18068 system software suppor t for router fault tolerancelatex ieee journal s...18068 system software suppor t for router fault tolerancelatex ieee journal s...
18068 system software suppor t for router fault tolerancelatex ieee journal s...
 
Introduction to embedded System.pptx
Introduction to embedded System.pptxIntroduction to embedded System.pptx
Introduction to embedded System.pptx
 
Serial Communication Interface with Error Detection
Serial Communication Interface with Error DetectionSerial Communication Interface with Error Detection
Serial Communication Interface with Error Detection
 
M010617376
M010617376M010617376
M010617376
 
42 46
42 4642 46
42 46
 
42 46
42 4642 46
42 46
 
ICT III - MPMC - Answer Key.pdf
ICT III - MPMC - Answer Key.pdfICT III - MPMC - Answer Key.pdf
ICT III - MPMC - Answer Key.pdf
 
Improved SCTP Scheme To Overcome Congestion Losses Over Manet
Improved SCTP Scheme To Overcome Congestion Losses Over ManetImproved SCTP Scheme To Overcome Congestion Losses Over Manet
Improved SCTP Scheme To Overcome Congestion Losses Over Manet
 
Verification of uart ip core using uvm
Verification of uart ip core using uvmVerification of uart ip core using uvm
Verification of uart ip core using uvm
 
RFC 1058 - Routing Information Protocol
RFC 1058 - Routing Information ProtocolRFC 1058 - Routing Information Protocol
RFC 1058 - Routing Information Protocol
 
A010240110
A010240110A010240110
A010240110
 
ETHERNET PACKET PROCESSOR FOR SOC APPLICATION
ETHERNET PACKET PROCESSOR FOR SOC APPLICATIONETHERNET PACKET PROCESSOR FOR SOC APPLICATION
ETHERNET PACKET PROCESSOR FOR SOC APPLICATION
 
Poster_example
Poster_examplePoster_example
Poster_example
 

More from Editor IJARCET

Electrically small antennas: The art of miniaturization
Electrically small antennas: The art of miniaturizationElectrically small antennas: The art of miniaturization
Electrically small antennas: The art of miniaturizationEditor IJARCET
 
Volume 2-issue-6-2205-2207
Volume 2-issue-6-2205-2207Volume 2-issue-6-2205-2207
Volume 2-issue-6-2205-2207Editor IJARCET
 
Volume 2-issue-6-2195-2199
Volume 2-issue-6-2195-2199Volume 2-issue-6-2195-2199
Volume 2-issue-6-2195-2199Editor IJARCET
 
Volume 2-issue-6-2200-2204
Volume 2-issue-6-2200-2204Volume 2-issue-6-2200-2204
Volume 2-issue-6-2200-2204Editor IJARCET
 
Volume 2-issue-6-2190-2194
Volume 2-issue-6-2190-2194Volume 2-issue-6-2190-2194
Volume 2-issue-6-2190-2194Editor IJARCET
 
Volume 2-issue-6-2186-2189
Volume 2-issue-6-2186-2189Volume 2-issue-6-2186-2189
Volume 2-issue-6-2186-2189Editor IJARCET
 
Volume 2-issue-6-2177-2185
Volume 2-issue-6-2177-2185Volume 2-issue-6-2177-2185
Volume 2-issue-6-2177-2185Editor IJARCET
 
Volume 2-issue-6-2173-2176
Volume 2-issue-6-2173-2176Volume 2-issue-6-2173-2176
Volume 2-issue-6-2173-2176Editor IJARCET
 
Volume 2-issue-6-2165-2172
Volume 2-issue-6-2165-2172Volume 2-issue-6-2165-2172
Volume 2-issue-6-2165-2172Editor IJARCET
 
Volume 2-issue-6-2159-2164
Volume 2-issue-6-2159-2164Volume 2-issue-6-2159-2164
Volume 2-issue-6-2159-2164Editor IJARCET
 
Volume 2-issue-6-2155-2158
Volume 2-issue-6-2155-2158Volume 2-issue-6-2155-2158
Volume 2-issue-6-2155-2158Editor IJARCET
 
Volume 2-issue-6-2148-2154
Volume 2-issue-6-2148-2154Volume 2-issue-6-2148-2154
Volume 2-issue-6-2148-2154Editor IJARCET
 
Volume 2-issue-6-2143-2147
Volume 2-issue-6-2143-2147Volume 2-issue-6-2143-2147
Volume 2-issue-6-2143-2147Editor IJARCET
 
Volume 2-issue-6-2119-2124
Volume 2-issue-6-2119-2124Volume 2-issue-6-2119-2124
Volume 2-issue-6-2119-2124Editor IJARCET
 
Volume 2-issue-6-2139-2142
Volume 2-issue-6-2139-2142Volume 2-issue-6-2139-2142
Volume 2-issue-6-2139-2142Editor IJARCET
 
Volume 2-issue-6-2130-2138
Volume 2-issue-6-2130-2138Volume 2-issue-6-2130-2138
Volume 2-issue-6-2130-2138Editor IJARCET
 
Volume 2-issue-6-2125-2129
Volume 2-issue-6-2125-2129Volume 2-issue-6-2125-2129
Volume 2-issue-6-2125-2129Editor IJARCET
 
Volume 2-issue-6-2114-2118
Volume 2-issue-6-2114-2118Volume 2-issue-6-2114-2118
Volume 2-issue-6-2114-2118Editor IJARCET
 
Volume 2-issue-6-2108-2113
Volume 2-issue-6-2108-2113Volume 2-issue-6-2108-2113
Volume 2-issue-6-2108-2113Editor IJARCET
 
Volume 2-issue-6-2102-2107
Volume 2-issue-6-2102-2107Volume 2-issue-6-2102-2107
Volume 2-issue-6-2102-2107Editor IJARCET
 

More from Editor IJARCET (20)

Electrically small antennas: The art of miniaturization
Electrically small antennas: The art of miniaturizationElectrically small antennas: The art of miniaturization
Electrically small antennas: The art of miniaturization
 
Volume 2-issue-6-2205-2207
Volume 2-issue-6-2205-2207Volume 2-issue-6-2205-2207
Volume 2-issue-6-2205-2207
 
Volume 2-issue-6-2195-2199
Volume 2-issue-6-2195-2199Volume 2-issue-6-2195-2199
Volume 2-issue-6-2195-2199
 
Volume 2-issue-6-2200-2204
Volume 2-issue-6-2200-2204Volume 2-issue-6-2200-2204
Volume 2-issue-6-2200-2204
 
Volume 2-issue-6-2190-2194
Volume 2-issue-6-2190-2194Volume 2-issue-6-2190-2194
Volume 2-issue-6-2190-2194
 
Volume 2-issue-6-2186-2189
Volume 2-issue-6-2186-2189Volume 2-issue-6-2186-2189
Volume 2-issue-6-2186-2189
 
Volume 2-issue-6-2177-2185
Volume 2-issue-6-2177-2185Volume 2-issue-6-2177-2185
Volume 2-issue-6-2177-2185
 
Volume 2-issue-6-2173-2176
Volume 2-issue-6-2173-2176Volume 2-issue-6-2173-2176
Volume 2-issue-6-2173-2176
 
Volume 2-issue-6-2165-2172
Volume 2-issue-6-2165-2172Volume 2-issue-6-2165-2172
Volume 2-issue-6-2165-2172
 
Volume 2-issue-6-2159-2164
Volume 2-issue-6-2159-2164Volume 2-issue-6-2159-2164
Volume 2-issue-6-2159-2164
 
Volume 2-issue-6-2155-2158
Volume 2-issue-6-2155-2158Volume 2-issue-6-2155-2158
Volume 2-issue-6-2155-2158
 
Volume 2-issue-6-2148-2154
Volume 2-issue-6-2148-2154Volume 2-issue-6-2148-2154
Volume 2-issue-6-2148-2154
 
Volume 2-issue-6-2143-2147
Volume 2-issue-6-2143-2147Volume 2-issue-6-2143-2147
Volume 2-issue-6-2143-2147
 
Volume 2-issue-6-2119-2124
Volume 2-issue-6-2119-2124Volume 2-issue-6-2119-2124
Volume 2-issue-6-2119-2124
 
Volume 2-issue-6-2139-2142
Volume 2-issue-6-2139-2142Volume 2-issue-6-2139-2142
Volume 2-issue-6-2139-2142
 
Volume 2-issue-6-2130-2138
Volume 2-issue-6-2130-2138Volume 2-issue-6-2130-2138
Volume 2-issue-6-2130-2138
 
Volume 2-issue-6-2125-2129
Volume 2-issue-6-2125-2129Volume 2-issue-6-2125-2129
Volume 2-issue-6-2125-2129
 
Volume 2-issue-6-2114-2118
Volume 2-issue-6-2114-2118Volume 2-issue-6-2114-2118
Volume 2-issue-6-2114-2118
 
Volume 2-issue-6-2108-2113
Volume 2-issue-6-2108-2113Volume 2-issue-6-2108-2113
Volume 2-issue-6-2108-2113
 
Volume 2-issue-6-2102-2107
Volume 2-issue-6-2102-2107Volume 2-issue-6-2102-2107
Volume 2-issue-6-2102-2107
 

Recently uploaded

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Recently uploaded (20)

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

Designing a Multi-Channel UART Controller Using FPGA and FIFO

  • 1. ISSN: 2278 – 1323 International Journal of Advanced Research in Computer Engineering & Technology Volume 1, Issue 4, June 2012 Design of Multi-Channel UART Controller Based On FIFO and FPGA 1 2 3 Deepchand Jaiswal Dr. Rita Jain Prof. M. Zahid Alam M.Tech Research scholar E.C. Department E.C. Department EC Dept. LNCT-Bhopal, India LNCT-Bhopal, India LNCT-Bhopal, India . deepchand55@gmail.com Abstract: This paper presents a multi-channel UART (1) Usually, there is only one channel which can only controller based on FPGA (Field Programmable Gate Array). connect to a single peripheral in normal UART UART a kind of serial communication circuit is used widely. controller. In this case the number of chips will increase A universal asynchronous receive/transmit (UART) is an with the augment of peripherals, which may cost a lot of integrated circuit which plays the most important role in space and resources serial communication. The architecture of the system is introduced. The flow charts of data processing as well as the implementation state machine are also presented in detail. The controller can be used to implement communications in complex system with different Baud Rates of sub-controllers. The controller is reconfigurable and scalable and it also can be used to reduce time delays between sub-controllers of a complex control system to improve the synchronization of each sub-controller. Keywords: FIFO, FPGA, UART, MULTI-CHANNEL, I. INTRODUCTION UART is a popular methodology of serial asynchronous communication. The UART data frame is composed of a Fig.1 System architecture start bit of one bit-length logic 0,5 to 8 bit-length data (2) In general the interrupt request is an easy and bits and a stop bit of one. one and a half or two bit common method to notify the microprocessor of a length. There may be one bit-length checkout bit after flame’s operation. But there comes a problem that the the data bits if it is necessary. And its characteristic is burden of the processor will become heavier and heavier that the frame contains only one character and it is when the interrupt request occurs more and more transmitted continuously one by one. Typically, the frequently, i.e. when there are frequent interrupt requests UART is connected between a micro-processor and a and only a few characters are transmitted during each peripheral. Although UART is popular and the structure interrupt time, the processor’s implementation efficiency of the flame is simple, it is inefficient. In this paper, will becomeex,, tersely low, It means that the processor three disadvantages, which influence its efficiency, are pointed out and solved. 419 All Rights Reserved © 2012 IJARCET
  • 2. ISSN: 2278 – 1323 International Journal of Advanced Research in Computer Engineering & Technology Volume 1, Issue 4, June 2012 would spend a lot of time on processing small amount of The modules are shift registers, parity checkers and data without doing other necessary tasks. receiving FIFOs. The shift registers connected to RXD (3) Although certain processor’s data bus is 32.bit wide wires are used to transfer all inputting serial data into or more, the traditional UAI ’controller transmits only parallel data. Which will be sent to parity checkers as one byte data to the microprocessor with which it soon as a correct frame is received and they also check connected at a time. In this case,24 bits or more of data the integrality of the frames? The parity checkers are used to implement parity check, if it is necessary and bus are wasted. inform the FIFOs whether the receiving frames are To solve the first problem more UART correct. The receiving FIFOs will store the data which channels in a single chip are required and the same as are correctly received until micro-processor intends to ST16C554t“does.However, this scheme may result in read them. more frequent interrupts which will make the second problem more serious. Considering both of them, the 2.2 Modules of sending flow issues are focused on the improvement of data The modules are sending FIFOs parity checkers and shift transmission efficiency during interrupt times. So in registers. The sending FIFOs will store data sent from this paper, the ideas of enhanced parallel processing of microprocessor while there still are data under data, novel interrupt controlling mechanism. As well as transmission on the TXD wires. The parity checkers here utilizing the whole data bus width are put forward. are used to attach the start and stop bits to the arriving Realization is implemented using Verilog HDL on frames as well as filling the checkout bit into frames if it FPGA. is necessary. Then the frames will be sent out serially by the shift registers through TXD wires. II. SYSTEM ARCHITECTURE AND DESIGN PRINCIPLE DESCRIPTION 2.3 Other components As a UART controller, the service affects are micro- The baud-rate generator generates different baud-rate processors and serial communication terminations (SCT) clocks used as time benchmarks in UART transmission. .To be simple, it is assumed that the bus of The CPU interface manages communications, including microprocessor is the same as 32.bit Motorola Power buses control interrupts, reading signal, writing signal PCT series and the SCT only has two transmission wires, etc. between the microprocessor and the controller. The TXD (for transmitted data) and RXD (for received data) interrupt controller takes responsibility of managing the .Therefore the main system, architecture of the interrupt requests generated by each channel and sending controller is shown in Fig.1 which is based on the them to microprocessor based on certain principles. To assumption presented here an d UART protoco1. The improve the system efficiency, the design is focused on architecture introduced in Fig.1 can be viewed as a how to accomplish more tasks in less time. In other description of one channel and the others. In the words more implementations in fewer system clock controller are exactly the same. periods are expected. There are two methods adopted in this design, implementing correlative tasks in parallel as 2.1 Modules of receiving flow many as possible and reducing the implementation steps 420 All Rights Reserved © 2012 IJARCET
  • 3. ISSN: 2278 – 1323 International Journal of Advanced Research in Computer Engineering & Technology Volume 1, Issue 4, June 2012 of the ordinal task. The first method is recommended is due to Sending serially operation, so if a notification is when there are weak constraints of time relationship feed back to active the Writing into reparation, at the among tasks so it is adopted in the module design s of same time that the frame is delivered this chock point shift registers parity checkers and FIFOs. The other will be eliminated. method works well when the constraints are strong such as responding continuous interrupts on one wire which should be implemented one by one. Therefore it is adopted in interrupt controller module. III. SENDING AND RECEIVING FLOWS DESIGN There are three clocks that should be considered in the design the first one is the system main clock which is the basal time scale of all the tasks and it is very fast, the clock is 50 MHz in this design: the second one is the baud-rate clock which is the division of the main clock, it is only used when there are requirements to send data or to synchronize receiving data, the third one is the clock of microprocessor instruction. Because the baud Fig.2 Operation flow of sending process rate clock and instruction clock are far slower than the main clock, the pre-operations which are driven by the The state machine of Sending serially process is shown main clock can be implemented during receiving process in Fig.3. The state machine as well as the counters in and sending process, and it is possible to transmit data as the Stop and the Notify states is driven by the baud rate soon as it is ready. Considering the second problem clock mentioned in Section l, it can be concluded that the time of data transmission between controllers and microprocessor will be reduced if all the 32 bits of data bus are utilized。111is also is adopted in the design. Using these methods, all the tasks will be accomplished efficiently. 3.1 Module cooperation in sending flow Based on the description in Section 2, the data flow of sending process is shown in Fig.2. The conclusion of Fig.2 is that there are two serial operations in the process of frame composing which are the system choke points Fig 3 State machine of sending serially (the first operation is indicated with label l and the second one is indicated with label 2 in Fig.2. he first one 421 All Rights Reserved © 2012 IJARCET
  • 4. ISSN: 2278 – 1323 International Journal of Advanced Research in Computer Engineering & Technology Volume 1, Issue 4, June 2012 At the last count of the Stop counter, the state machine the FIFO should be the same. However, the Sh register, would switch to the Notify state from the Stop state. The whose length is only a frame length, is shorter than 32 Notify state in which the notification is generated and bits, so a 32-bit register composed of LEs is required, the last stop bit ends, will last one baud rate clock. Then which will be used as a buffer between the FIFO and the the state machine will switch to the idle state. Because Shift register. It is quite necessary for the Indicator to the main clock, which is the benchmark of the frame record how many bytes of data are in the 32-bit register. composing, is far faster than the baud-rate clock, a new That is because when there are less than 4 bytes of data frame will be ready as soon as the Idle state occurs. All in the 32-bit register, such as the last time of of this assures that no time is needed to wait for a new transmission, the Shift register should obtain the exact frame’s preparation, so the first chock point is eliminate. amount of bytes to be transmitted. Thus the implementation flow of the whole 32-bit width FIFO 3.2 Sending FIFO system design system is shown in Fig.5 The instruction clock of microprocessor is also faster than the baud rate clock so the data from micro- processor usually arrive at the moment when there are data under transmission. To prevent system from waiting all though the transmission, which is the second chock point in Fig.2,the fresh data should be buffered during the transmission. FIFO is adopted in the design .and its width is 32-bit which is referred to the width of data bus. In this paper, RAM integrated in FPGA is used to realize the design of the FIFO to reduce the usage of FPGA logic elements (LEs). Architecture of the sending Fig 5 Sending FIFO implementation flow FIFO system is shown in Fig.4 It is indicated in Fig.5 that the writing process of micro-processor can implement ceaselessly no mater whether the previous data have been sent or not which means that more times of writing process can be implemented during each interrupt time. And during each time at most four bytes of data can be written now, compared with the input of one byte of data using traditional method. So the time required for a whole task Fig 4 Architecture of sending FIFO system is reduced. 3.3 Module cooperation in receiving flow In order to satisfy the synthesizable condition of Verilog There is an important difference between the receiving HDL RAM ,the input bit width and the output one of flows and the sending flow. It is that the transmission 422 All Rights Reserved © 2012 IJARCET
  • 5. ISSN: 2278 – 1323 International Journal of Advanced Research in Computer Engineering & Technology Volume 1, Issue 4, June 2012 velocity of the data source (microprocessor) is far faster state an d the clock period would also be reduced In this than that of the data destination (serial periphera1) in the way All of these designs ensure that the correct data can sending flow, while the situation is just the opposite in be stored in FIFOs as soon as a frame is received the receiving flow. So the data from microprocessor completely, an d in this way, the system efficiency is should be delivered to peripheral immediately to prevent improved. data cumuli in the sending flow. But in the receiving flow, it is possible for the controller to buffer data until 3.4 Receiving FIFO design microprocessor has time to respond to the receiving Different from the sending FIFO which is used to request, which can be used to solve the second problem prevent data cumuli the receiving FIFO focuses on mentioned in Section 1. Thus the requirement of the reducing the interrupt frequency. In the design , reduction of data processing time in receiving flow is receiving interrupts are generated only when the quantity focused on the Shift register module and parity checker of the data stored in FIFO goes beyond a threshold value module in Fig.1. The state machine is shown in Fig.6 or it is time out for the FIFO to wait for the and it is driven by baud-rate clock which is used to microprocessor to receive data. The threshold is a certain sample input signals. value between zeros an d FIFO depth. The architecture of receiving FIFO system is shown in Fig.7 Fig 6 State machine of receiving flow Fig 7 Architecture of receiving FIFO system In the state machine, the Check state is between the Data In the receiving flow, the 32一bit register and the Data state and the Stop state and it takes the responsibility of length indicator operate in the same manner as the parity checkout. Such design is based on the fact that the sending FIFO does, an d the whole 32一bit bus can be baud, rate clock is designed as 16 times faster as input utilized to increase the data transmission velocity. The signal so there are enough clock periods to check parity Overtime controller is active only when there still are during the arrival of stop bits, therefore, the parity data in the FIFO or the register, an d its amount are not checkout can implement in parallel with the signal beyond the threshold. In this case an overtime interrupt sampling process. The state machine will switch to the will be generated to notify the micro--processor of Notify state at the last count of the stop bits. The Notify receiving request if the counter of overtime controller is state takes the responsibility of notifying FIFOs to store overflow. The whole implementation flow is shown in received data. The principle is the same as the Check Fig.8.To reduce the reading times of the 423 All Rights Reserved © 2012 IJARCET
  • 6. ISSN: 2278 – 1323 International Journal of Advanced Research in Computer Engineering & Technology Volume 1, Issue 4, June 2012 microprocessor, the Data length indicator only needs to these processes are reduced, the efficiency of the ISR be accessed during the overtime interrupt. will be improved In the realization of the controller, 16 UART channels are included, which means that there are 16 coequal interrupt sources to the interrupt controller. Because of the coequality, the principle of interrupt management is first in first serves (FIFS),and interrupt nesting is forbidden. So there comes a problem about how to deal with the interrupts when more than one channel send interrupt requests to the controller at the same time. The first method is to arrange these interrupts according to certain principle (it will be indicated later in this section) and then send them out in order. The disadvantage is that there are several interrupts generated so that the processor has to switch into ISR frequently. Then the processor should poll over to implement Fig 8 Receiving FIFO implementation Flow relevant operations. It will lead to a mass of time overhead in polling operations. This is because the quantity of data stored in 32一bit FIFO must be the multiple of 4 bytes on the arrival of 4.2 Scheme design over-threshold interrupt To conclude, the parallel Based on the principles mentioned above, the implementations are optimized an d FIFOs are architecture of the interrupt controller is shown in Fig.9 redesigned to enhance transmission velocity by utilizing which contains a 256-bit deep and bit wide FIFO. In the the data bus adequately. Therefore, the efficiency is design of all the channels the shortest time between two improved an d more channels are able to cooperate in the ordinal interrupt requests is only one system clock controller period. So if severa1 interrupts occur at the same time, IV. INTERRUPT CONTROLLER DESIGN they should be written into the FIFO in one clock period. To satisfy this condition, 4.1 Scheme argumentation The interrupt controller cooperates with both internal channels an d external micro—processor, and the efficiency of internal channels is assured by design s in Section 3.So in this section, attentions should be paid to the implementation of microprocessor who processes tasks Interrupt service routine(ISR)is implemented by microprocessor. Besides the reading an d the writing processes, the most necessary task of ISR is to obtain interrupt source an d interrupt state. So if the steps of Fig.9 Interrupt controller architecture 424 All Rights Reserved © 2012 IJARCET
  • 7. ISSN: 2278 – 1323 International Journal of Advanced Research in Computer Engineering & Technology Volume 1, Issue 4, June 2012 16 interrupts of each channel, including null interrupts are used more than once. A single UART was designed (no interrupt request in current channel) ,are written. A and verified. Then UART component was instantiated new interrupt of a certain channel can not be generated four times to obtain four independent UARTs .Similarly unti1 the previous ones are responded so 16× 16=256 once FIFO block was designed and verified, it was bits of depth are required at 1east to store the interrupts instantiated twice to obtain FIFO1 and FIFO2.Codes in Implementation of the controller is shown in Fig.10. Verilog HDL were used to design the architecture of the The conclusion is that the time of null interrupts output Multi UART controller. is the main time overhead. Fig 11: Baud Rate Generator Output Fig.10 Interrupt controller implementation But the system main clock frequency is far faster than Fig 9: Transmitting Sequence. interrupt generating frequency so the overhead can be ignore. IV SIMULATION AND VERIFICATION To verify design of the controller a test bench is written to make verification in ISE simulator The software structure involved in the design of the following blocks- UART block, FIFO blocks, Status Register Block, Baud Generator block. The controller which interacts with all of the above was designed and its design was discussed Fig 12: Receiver Response earlier. Some components like UART and FIFO blocks 425 All Rights Reserved © 2012 IJARCET
  • 8. ISSN: 2278 – 1323 International Journal of Advanced Research in Computer Engineering & Technology Volume 1, Issue 4, June 2012 8. Delvai M,Eisenmann U, Elmenrichs W Intelligent UART module for real-time applications. First Workshop on Intelligent Solutions in Embedded Systems,2002;1 77—185. 9. X., Yang, “Industrial Data Communication and Control Networks”, V. CONCLUTION Beijing: TUP, 2003.6[9] B. Zeidman, “Designing with FPGAs & The paper presents design method of asynchronous FIFO CPLDs”, CMP Books, 2002 and structure of the controller. This controller is 10. C. E. Cummings, “Simulation and Synthesis Techniques for Asynchronous FIFO Design with Asynchronous Pointer designed with FIFO circuit block and UART (Universal Comparisons”, SNUG San Jose 2002 Asynchronous Receiver Transmitter) circuit block within FPGA to implement communication in modern complex control systems quickly and effectively. Form the communication sequence diagrams; it is easily to know that this controller can be used to implement communication when master equipment and slaver equipment are set at different Baud Rate. It also can be used to reduce synchronization error between sub- systems in a system with several sub-systems. The controller is reconfigurable and scalable. REFERENCES 1. S. E. Lyshevski, “Control Systems Theory with Engineering Applications”, Birkhauser Boston, 2001. 2. Free scale semiconductor, Inc MPC860 Power QUICCTM family user’s manua1.2004. 3. Li SG Gao D Y Nie PQ Study on multi task management unit MTU of embedded micro NCS, Acta Aeronautical et Astronautic Sinica 2000;21(2):134-137 in Chinese. 4. Liu L, Gao D, Y Zhang SB, et a1.Design of EM FPU in embedded microprocessor Act a Aeronatuticaet Astronautics Sinica2001;22(4):308-31 1.[in Chinese] 5. Yean del J, Thulborn D, Jones S. An online testable UART implemented using IFIS.1 5th IEEE VLSI Test et Astronautic Symposium ,1997;344-349. 6. Elmenreich W, Delvai M, Time triggered communication with UARTs.4th IEEE International Workshop on Factory Communication Systems,2002;97-104. 7. Gallo R, Delvai M,Elmenreich W,eta1.Revision an d veil fiction of an enhanced UART.IEEE International Workshop on Factory Communication Systems,2004;315-318. 426 All Rights Reserved © 2012 IJARCET