Professional Documents
Culture Documents
Bit-Stream to configure:
function of each block & The
interconnection between
logic blocks
I/O Block
I/O Block
I/O Block
I/O Block
Source: [Brown99]
10
CLB Structure
11
CLB Slice
COUT
YB
G4
G3
G2
G1
Y
Look-Up
O
Table
Carry
&
Control
Logic
CK
EC
F5IN
BY
SR
XB
F4
F3
F2
F1
X
Look-Up
Table O
S
D
Carry
&
Control
Logic
CK
EC
CIN
CLK
CE
SLICE
12
x2
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
x3
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
x4
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
x1
x2
x3
x4
y
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
LUT
x1 x2 x3 x4
x1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
x2
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
x3
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
x4
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
y
0
1
0
0
0
1
0
1
0
1
0
0
1
1
0
0
Look-Up tables
are primary
elements for
logic
implementation
Each LUT can
implement any
function of 4
inputs
x1 x2
y
y
13
Xilinx, Inc.
Share over 60% of the market
Altera Corp.
Atmel
Lattice Semiconductor
Actel Corp.
Xilinx
Programmable
Logic Devices
0Virtex (0.22m)
0Virtex-E, Virtex-EM (0.18m)
0Virtex-II, Virtex-II PRO (0.13m)
0Virtex-4 (0.09m)
16
Virtex-II Architecture
Multipliers 18 x 18
Block RAMs
Multipliers 18 x 18
Block RAMs
Multipliers 18 x 18
Block RAMs
Multipliers 18 x 18
Configurable
Logic
Block
Block RAMs
17
I/ O
Block
User
Logic
Interface Core
Multipliers
Block RAM
18
Virtex 4
Source: [Xilinx]
19
Max.
clock
frequency
Slices
Maximum
I/O
pins
BlockRAM
Multiplier
Blocks
(18x18)
Power PC
cores
XC2V6000
420 MHz
33.7 K
1,104
2,592 Kb
144
XC2V8000
420 MHz
46.5 K
1,108
3,024 Kb
168
Virtex II Pro
125
420 MHz
55.6 K
1,200
10,000 Kb
444
Virtex 4
500 MHz
89.1 K
960
6,048 Kb
96
500 MHz
63.2 K
896
9,936 Kb
192
LX 200
Virtex 4
FX 140
20
Specification
Functional simulation
Library IEEE;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity RC5_core is
port(
clock, reset, encr_decr: in std_logic;
data_input: in std_logic_vector(31 downto 0);
data_output: out std_logic_vector(31 downto 0);
out_full: in std_logic;
key_input: in std_logic_vector(31 downto 0);
key_read: out std_logic;
);
end RC5_core;
HDL (Hardware
Description Language)
model
Synthesis
Post-synthesis simulation
netlist
21
Timing simulation
22
Mapping
LUT0
LUT4
LUT1
FF1
LUT5
LUT2
FF2
LUT3
23
Placing
FPGA
CLB SLICES
24
Routing
FPGA
Programmable Connections
25
CLK
I/O CARD
Processing
Element
(PE#)
Processing
Element
(PE#)
Processing
Element
(PE#)
BUS
LOCAL
MEMORY
LOCAL
MEMORY
LOCAL
MEMORY
BUS INTERFACE
CONTROLLER
26
27
28
29