You are on page 1of 14

ELEC2630 EMBEDDED

SYSTEMS THEORY

Lecture 12: FPGA as an


Embedded System
Component
FPGA DEVICES
 The essential feature of the FPGA is a
collection of AND, OR and NOT together
with D type FlipFlops
 There are switches that can connect
elements of the device to form a circuit
which can be used as an embedded
system controller
 Inputs can be direct or inverted; they can
be connected to AND gates; The AND
gates can be connected to OR gates which
in turn can drive the D input of the
FlipFlops
FPGA Circuit Requirements
 The FPGA requires a clock to syncronize all
changes between different circuit devices within
the chip.
 The “Program” is a list of the switch connections
to form the circuit.
 Most FPGAs do not have non-volatile storage for
the program and therefore need reloading each
time power is applied.
 Some have an EEPROM that can store the
program for reloading on power-up.
 Distributed Embedded Systems with a least one
computer could download code from the
computer memory to the FPGA at power-up.
How can FPGAs be used as a
controller
 The steps in the following slides show
how a circuit to form a quiz show
answer adjuducator.
 It indicates which pushed button first,
and if both pressed at once, gives
turn to each in team in turn, if
pressed repeatedly.
Problem Flowchart
State Diagram
Method of Design
 A Flowchart of the Problem
 A State Diagram formed for the process
 State tables drawn up to describe the steps in the
process
 After using Karnaugh maps to simplify the the
equations from the state tables
 The circuit to implement the design was then
created
 This circuit is then tested in simulation using
input waveforms to test all possible input
combinations
FPGA Future
 Smaller physical size with greater
circuit device capacities
 Development of improved
programming methods
 One possible route is that of a
modified C language
FPGA Development Board
Handel C Software
Handel C Software
C Language extensions
 A method of handling parallel processes so
that separate parts of the circuit can
actually work at the same time
 Extra keywords were added, as in the
handling of interrupts, to add this feature
 And a method to allow some processes to
be prevented from starting before
essential prerequisites were completed
 The method called semaphores, popular in
UNIX were addapted for this purpose

You might also like