Title: Digital System Design Using
1- Digital System Design Using
- VHDL
- for
- VI Sem (ECE,TCE)
- By
- K.S.GURUMURTHY M.E, PhD
- UVCE, Bangalore University
- Bangalore-1
- drksgurumurthy_at_gmail.com
2AGENDA
- FPGA-Programming Technology
3 TYPES OF FPGAs
- Depend on the programming Technology
Static RAM..Stored program as long power is
there
EPROM..Stored program non-volatile
Antifuse. One time programmable
4Types of FPGAs
CONFIGURATION MEMORY CELL
5 Antifuse Technology
Actels Antifuse
6TYPES OF FPGAs (contd..)
polysilicon
Before programming R VERY HIGH After
Programming R 100 Ohms
ONO
Diffusion
7 EPROM PROGRAMMING
VGS
VGS
VGS
VGS
VDS
VPP
VDS
VDS
IDS
IDS
b) Hot electron Injection
c) Device is OFF with Vt1gt Vt
d) Device is ON with Vt
a) Device is ON with Vt
8 XILINX-3000 SEIRE FPGAs
Lay out part of PLC Array
- Xilinx XC3020 LCA
- Basic Structure
- Interior array of 64 CLBs
- (Some combinational logic 2 D flip-flops)
- Ring of 64 input-output Interface Blocks
- The Interconnections
98x864 CLBs
64 I/Os
256F/Fs
16 Horizontal Long lines
14,779 Configuration Data bits
10DI
0
DATA IN
MUX
D
Q
F
1
Logic variables
DI
RD
X
QX
G
Combinational Block
QX
F
F
A
CLB OUTPUTS
M
M M
B
C
G
G
D
Y
M M
E
QY
F
QY
DI
0
D
Q
MUX
M
G
1
EC
RD
Xilinx 3000 Series CLB
1
(ENABLE)
K
M
M
0
O
RD
M
RG
11Combinational Function Block
- Can be programmed to realise any function of
- 5 variables or any 2 functions of 4 variables
- The functions are stored in truth table
- Three modes of operation for this block
12A
ABQX.E
Any Function Of 4 Variables
B
QX
F
QY
C
D
E
2 Functions of 4 variables
Any Function Of 4 Variables
QX
QY
G
ACQY.D
FG MODE LOGIC OPTION
13F MODE Logic Option
A
Any Function Of 5 Variables
B
QX
F/G
QY
C
D
E
One Function of 5 variables
Ex FGABCDE.AND gate FGAE xor B xor
C xor D xor E
14FGM MODE LOGIC OPTION
A
Any Function Of 4 Variables
B
QX
QY
C
D
E
M U X
F/
G
Any Function Of 4 Variables
QX
QY
E is control input to select one of 4 variable
functions
15XILINX 3000 SERIES I/O BLOCK
16 XILINX-3000 SERIES FPGA (contd..)
PROGRAMMABLE INTERCONNECTS
- GENRAL PURPOSE
- DIRECT INTERCONNECTIONS BETWEEN ADJACENT
- CELLS
- VERTICAL HORIZONTAL LONG LINES
17GENERAL PURPOSE INTERCONNECTS
18DIRECT INTERCONECTS BETWEEN ADJACENT CLBs
19VERTICAL AND HORIZONTAL LONG LINES
204000 series CLB
21XC4000 DEDICATED CARRY LOGIC
224000 SERIES I/O BLOCK
23Designing with FPGAs
Steps
- Draw a Block diagram of the digital system.
- Construct the SM chart for the same.
- Write the corresponding VHDL code for the chart
- Simulate and debug the VHDL code. Make necessary
changes
- Synthesise the code to generate the net list.
- Run a partitioning program.This will map the
logic on to CLB.
- Run the automatic place route program
- Run a program to generate the bit pattern
needed for - programming
- Down load the program to the FPGA
24XILINX DESIGN FLOW
Start
Prelayout simulation
Design entry
P R
To xnf
Back annotated Netlist with delays
.XNF Net list
Netlist with Unit delays
Netlist without delays
.XNF net list
Create Programming file
Make bits
Partitioning into CLBs
xmake
.BIT file
10110.
.LCA Net list
To FPGA or EPROM
25EPROM Connections for LCA Initialisation
DATA
F P G A
EPROM (contains Configur- ationion Data)
ADDRESS
26(No Transcript)