Upload
veeru-mudiraj
View
215
Download
0
Embed Size (px)
DESCRIPTION
digital system
Citation preview
1
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-1Electrical & Computer EngineeringElectrical & Computer Engineering
Digital Systems Design
Programmable Device Technologies and Introduction to the
Altera Cyclone IV FPGA
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-2Electrical & Computer EngineeringElectrical & Computer Engineering
Logic gates and
programmableswitches
Inputs
(logic variables) Outputs
(logic functions)
Programmable Logic Device Black Box
2
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-3Electrical & Computer EngineeringElectrical & Computer Engineering
x x x
f 1
AND plane OR plane
Input buffers
inverters and
P 1
P k
f m
1 2 n
x 1 x 1 x n x n
General PLA Structure
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-4Electrical & Computer EngineeringElectrical & Computer Engineering
f1
P1
P2
f2
x1 x2 x3
OR plane
Programmable
AND plane
connections
P3
P4
Gate Level PLA Structure
3
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-5Electrical & Computer EngineeringElectrical & Computer Engineering
f 1
P 1
P 2
f 2
x 1 x 2 x 3
OR plane
AND plane
P 3
P 4
Customary Schematic of a PLA
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-6Electrical & Computer EngineeringElectrical & Computer Engineering
f1
To AND plane
D Q
Clock
SelectEnable
Flip-flop
Typical PLA Output Circuitry
4
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-7Electrical & Computer EngineeringElectrical & Computer Engineering
Structure of a CPLD
PAL-likeblock
I/O b
lock
PAL-likeblock
I/O block
PAL-likeblock
I/O b
lock
PAL-likeblock
I/O block
Interconnection wires
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-8Electrical & Computer EngineeringElectrical & Computer Engineering
A Section of a CPLD
D Q
D Q
D Q
PAL-like block (details not shown)
PAL-like block
5
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-9Electrical & Computer EngineeringElectrical & Computer Engineering
VHDL code for the function f = m(0,2,4,5,6)
library ieee;use ieee.std_logic_1164.all;
entity func3 isport ( x1,x2,x3 : in std_logic;
f : out std_logic);end func3;
architecture logicfunc of func3 isbeginf <= (not x1 and not x2 and not x3) or
(not x1 and x2 and not x3) or(x1 and not x2 and not x3) or(x1 and not x2 and x3) or(x1 and x2 and not x3);
end logicfunc;
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-10Electrical & Computer EngineeringElectrical & Computer Engineering
VHDL Implementation of f =m(0,2,4,5,6)
D Q
PAL-like block
(from interconnection wires)
x 1 x 2 x 3 unused
0
0 1
6
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-11Electrical & Computer EngineeringElectrical & Computer Engineering
Structure of an FPGA
Logic block Interconnection switches
I/O block
I/O block
I/O block I/O
blo
ck
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-12Electrical & Computer EngineeringElectrical & Computer Engineering
A Two-Input Lookup Table
(a) Circuit for a two-input LUT
x 1
x 2
f
0/1
0/1
0/1
0/1
0
0
1
1
0
1
0
1
1
0
0
1
x 1 x 2
(b) f 1 x 1 x 2 x 1 x 2 + =
(c) Storage cell contents in the LUT
x 1
x 2
1
0
0
1
f 1
f 1
7
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-13Electrical & Computer EngineeringElectrical & Computer Engineering
A Three-Input Lookup Table
f
0/1
0/1
0/1
0/1
0/1
0/1
0/1
0/1
x 2
x 3
x 1
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-14Electrical & Computer EngineeringElectrical & Computer Engineering
Inclusion of a flip-flop With an LUT
Out
D Q
Clock
Select
Flip-flop In1
In2
In3
LUT
8
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-15Electrical & Computer EngineeringElectrical & Computer Engineering
A Section of a Programmed FPGA
0 1 0 0
0 1 1 1
0 0 0 1
x 1
x 2
x 2
x 3
f 1
f 2
f 1 f 2
f
x 1
x 2
x 3 f
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-16Electrical & Computer EngineeringElectrical & Computer Engineering
Pass transistor Switches in an FPGA
1 0
V f 1
V A
0
0 0 0 1
x 1
x 2
f 1
SRAM SRAM SRAM
(to other wires)
9
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-17Electrical & Computer EngineeringElectrical & Computer Engineering
Cyclone IV General Features
• Contain a two-dimensional row- and column-based architecture to implement custom logic
• Column and row interconnects of varying speeds provide signal interconnects between logic array blocks (LABs), embedded memory blocks, and embedded multipliers
• The logic array consists of LABs, with 16 logic elements (LEs) in each LAB– An LE is a small unit of logic providing efficient
implementation of user logic functions. LABs are grouped into rows and columns across the device
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-18Electrical & Computer EngineeringElectrical & Computer Engineering
Cyclone IV E Device Packaging Information
10
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-19Electrical & Computer EngineeringElectrical & Computer Engineering
Cyclone IV General Features (continued)
• Cyclone IV devices provide a global clock network and up to eight phase-locked loops (PLLs)– Consists of up to 30 global clock lines that drive
throughout the entire device– Can provide clocks for all resources within the device,
such as input/output elements (IOEs), LEs, embedded multipliers, and embedded memory blocks
– Global clock lines can also be used for other high fan-out signals
• Cyclone IV PLLs provide general-purpose clocking with clock synthesis and phase shifting– i.e. frequency and phase control
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-20Electrical & Computer EngineeringElectrical & Computer Engineering
Cyclone IV General Features (continued)
• M9K memory blocks are true dual-port memory blocks with 8K bits of memory plus parity (9216 bits total)– Provide dedicated true dual-port, simple dual-port, or single-port
memory– Arranged in columns across the device in between certain LABs
• Each Cyclone IV device I/O pin is fed by an IOE located at the ends of LAB rows and columns around the periphery of the device
– Cyclone IV I/O elements (IOEs) contain a bidirectional I/O buffer and five registers for registering input, output, output-enable signals
11
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-21Electrical & Computer EngineeringElectrical & Computer Engineering
Altera Cyclone IV Programmable Device
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-22Electrical & Computer EngineeringElectrical & Computer Engineering
Cyclone IV Logic Element (LE)
• A four-input look-up table (LUT), which is a function generator that can implement any function of four variables
• A programmable register• A carry chain connection
– A fast interconnect between adjacent LABs
• A register chain connection– A fast, registered, connection between adjacent LEs
• The ability to drive all types of interconnects:– Local, row, column, register chain, and direct link interconnects
• Support for register packing– Combining a register with combinational logic in a design
• Support for register feedback– Feedback from flip-flop output back into the LUT
12
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-23Electrical & Computer EngineeringElectrical & Computer Engineering
Cyclone IV Logic Element (LE)
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-24Electrical & Computer EngineeringElectrical & Computer Engineering
Cyclone IV LAB Structure
13
Electrical & Computer EngineeringElectrical & Computer Engineering Dr. D. J. Jackson Lecture 5-25Electrical & Computer EngineeringElectrical & Computer Engineering
Embedded Memory (M9K Block)
• 9,216 RAM bits
• Memory Configuration– True dual-port memory
– Simple dual-port memory
– Single-port memory
• Byte enable
• Common Functions– RAM
– ROM
– Shift register
– FIFO buffer
Dual Port Memory Configuration