PLD Course Notes Unit-5 PDF
PLD Course Notes Unit-5 PDF
Ayoush Johari
Assistant Professor
Department of Electronics and Communication Engineering
Lakshmi Narain College of Technology and Science, Bhopal
Text Book:
Rapid prototyping of digital systems – SOPC
edition by James O. Hamblen, Tyson S. Hall and
Michael D. Furman
Reference Books:
Xilinx and altera logic design handbooks
Implementation Options for Digital Logic
32x8 ROM
5 8
Each
represents
A4
0 32 wires
1
2
A3
5-to-32 3
A2
Decoder
A1
28
29
A0
30
31
Fuse can be
implemented as
a diode or a D7 D6 D5 D4 D3 D2 D1 D0
pass transistor
Programming the 32x8 ROM
A4 A3 A2 A1 A0 D7 D6 D5 D4 D3 D2 D1 D0
0 0 0 0 0 1 1 0 0 0 1 0 1
0 0 0 0 1 1 0 0 0 1 0 1 1
0 0 0 1 0 1 0 1 1 0 0 0 0
… … … … … … … … … … … … …
1 1 1 0 1 0 0 0 1 0 0 0 0
1 1 1 1 0 0 1 0 1 0 1 1 0
1 1 1 1 1 1 1 1 0 0 0 0 1
0
A4 1
2
A3 5-to-32
A2
A1 Decoder
29
A0 30
31
D7 D6 D5 D4 D3 D2 D1 D0
Example: Lookup Table
X F(X) = X2 X F(X) = X2
0 0 000 000000
1 1 001 000001
2 4 010 000100
3 9 011 001001
4 16 100 010000
5 25 101 011001
6 36 110 100100
7 49 111 110001
Square Lookup Table using ROM
X F(X)=X2 1
000 000000 X2 3-to-8 2
001 000001 3
X1
010 000100 Decoder 4
011 001001 X0 5
100 010000
6
101 011001
7
110 100100
111 110001
F5 F4 F3 F2 F1 F0
Square Lookup Table using ROM
X F(X)=X2 1
000 000000 X2 3-to-8 2
001 000001 3
X1
010 000100 Decoder 4
011 001001 X0 5
100 010000
6
101 011001
7
110 100100
111 110001
F5 F4 F3 F2 F1 F0
Not Used = X0
Square Lookup Table using ROM
0
1
X F(X)=X2
000 000000
X2 3-to-8 2
3
001 000001 X1
010 000100 Decoder 4
011 001001 X0 5
100 010000 6
101 011001 7
110 100100
111 110001
F5 F4 F3 F2 F1 F0
Programmable Logic Arrays
A
Programmable
B OR Plane
C
Programmable
AND Plane
C C B B A A
F1 F2
PLAs have configurable “AND-plane” & “OR-plane”
Can implement any 2-level AND-OR circuit.
Example using PLA
F1 ( A, B, C ) m(0,1,2,4)
F2 ( A, B, C ) m(0,5,6,7)
Example using PLA (Cont.)
A F1 AB AC BC
B F2 AB AC A BC
C
AB
AC
BC
ABC
C C B B A A
F1
F2
Programmable Array Logic
Programmable IO1
AND Plane
IO2
Fixed
OR Plane
PAL Device Design Example
A A B B C C D D IO1 IO1
IO1
Not programmed
A
IO2
sequential circuits.
Why CPLD ?
16V8 PLD (20 Pins)
can have 16 inputs (max) and/or 8 outputs
has 32 inputs to each of the AND gates
22V10 PLD (24 pins)
can have 22 inputs and/or 10 outputs (max)
has 44 inputs to each of the AND gates
How about a “128V64” for larger applications?
It will be much slower and will more wasted silicon space
Solution? Use CPLDs
Top Level CPLD Architecture
Logic block
Interconnects
switch matrix
wire segments
IO blocks (IOB)
Top Level FPGA Architecture
(Cont.)
CLBs can be connected to “passing” wires.
Wire segments connected by switch matrix.
Long wire segments used to connect distant CLBs.
Configuration information stored in SRAM bits that are
loaded when power turns on.