Академический Документы
Профессиональный Документы
Культура Документы
Objectives
After completing this module, you will be able to:
Identify the basic architectural resources of the Virtex-II FPGA List the differences between the Virtex-II, VirtexII Pro, Spartan-3, and Spartan-3E devices List the new and enhanced features of the new Virtex-4 device family
Outline
Overview Slice Resources I/O Resources Memory and Clocking Spartan-3, Spartan3E, and Virtex-II Pro Features Virtex-4 Features Summary Appendix
Basic Architecture 3
Overview
All Xilinx FPGAs contain the same basic resources
Slices (grouped into CLBs)
Contain combinatorial logic and register resources
IOBs
Interface between the FPGA and the outside world
Virtex-II Architecture
Block SelectRAM resource I/O Blocks (IOBs)
Spartan-3
Bank 0 Bank 2
4 I/O Banks, Support for all I/O Standards including PCI, DDR333, RSDS, mini-LVDS
Bank 3
Bank 1
Basic Architecture 6
Fabric
MGT MGT
IP-Immersion Fabric Active Interconnect 18Kb Dual-Port RAM Xtreme Multipliers 16 Global Clock Domains
PowerPC 405 Core 300+ MHz / 450+ DMIPS Performance Upto 4 per device
Basic Architecture 7
Outline
Overview Slice Resources I/O Resources Memory and Clocking Spartan-3, Spartan3E, and Virtex-II Pro Features Virtex-4 Features Summary Appendix
Basic Architecture 8
COUT
Slice S3
Slice S1
Slice S0
Local Routing
CIN
CIN
LUT
Carry
D PRE Q CE CLR
Look-Up Tables
Combinatorial logic is stored in Look-Up Tables (LUTs)
Also called Function Generators (FGs) Capacity is limited by the number of inputs, not by the complexity
A B C D Z 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 1 0 1 0 0 1
Combinatorial Logic
0 1 0 1 1 .
Z
A B C D
1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1
Basic Architecture 12
CLB
MUXF8 combines the two MUXF7 outputs (from the CLB above or below) MUXF6 combines slices S2 and S3 MUXF7 combines the two MUXF6 outputs
F5
Slice S1
F5
Slice S0
F6
Basic Architecture 13
COUT
To CIN of S2 of the next CLB
SLICE S3
CIN COUT
SLICE S2
CIN COUT
CIN
CIN
CLB
Basic Architecture 14
MULT_AND Gate
Highly efficient multiply and add implementation
Earlier FPGA architectures require two LUTs per bit to perform the multiplication and addition The MULT_AND gate enables an area reduction by performing the multiply and the add in one LUT per bit
LUT
S CO DI CI
CY_MUX
CY_XOR MULT_AND
AxB
LUT
B
Basic Architecture 15
LUT
D Q CE
D Q CE
D Q CE
Shift register length can be changed asynchronously Basic Architecture 17 by toggling address A
A[3:0]
64
4 Cycles
Operation C
8 Cycles
Operation D NOP
64
3 Cycles
9 Cycles
Paths are Statically Balanced
12 Cycles
Basic Architecture 18
Outline
Overview Slice Resources I/O Resources Memory and Clocking Spartan-3, Spartan3E, and Virtex-II Pro Features Virtex-4 Features Summary Appendix
Basic Architecture 19
IOB Element
Input path
Two DDR registers
IOB
DDR MUX Reg
OCK1
Output path
Two DDR registers Two 3-state enable DDR registers
Input
Reg
ICK1
OCK2
Reg
3-state
Separate clocks and clock enables for I and O Set and reset signals are shared
Reg
ICK2
OCK1
PAD
Output
Reg
OCK2
Basic Architecture 20
SelectIO Standard
Allows direct connections to external signals of varied voltages and thresholds
Optimizes the speed/noise tradeoff Saves having to place interface components onto your board
Basic Architecture 21
DCI advantages
Improves signal integrity by eliminating stub reflections Reduces board routing complexity and component count by eliminating external resistors Eliminates the effects of temperature, voltage, and process variations by using an internal feedback circuit
Basic Architecture 22
Outline
Overview Slice Resources I/O Resources Memory and Clocking Spartan-3, Spartan3E, and Virtex-II Pro Features Virtex-4 Features Summary Appendix
Basic Architecture 23
Basic Architecture 24
Slice LUT
RAM32X1S D WE WCLK A0 O A1 A2 A3 A4
LUT
DOA DOPA
Supports initial values Synchronous reset on output latches Supports parity bits
Basic Architecture 26
DOB DOPB
4 x 4 signed
18 x 18 Multiplier
Output (36 bits)
Basic Architecture 27
Up to eight clock nets can be used in each clock region of the device
Each device contains four or more clock regions
Basic Architecture 28
Up to four outputs of each DCM can drive onto global clock buffers
All DCM outputs can drive general routing
Basic Architecture 29
Outline
Overview Slice Resources I/O Resources Memory and Clocking Spartan-3, Spartan-3E, and Virtex-II Pro Features Virtex-4 Features Summary Appendix
Basic Architecture 30
More I/O pins per package Only one-half of the slices support RAM or SRL16s (SLICEM) Fewer block RAMs and multiplier blocks
Same size and functionality
Eight global clock multiplexers Two or four DCM blocks No internal 3-state
Slice X1Y1
Slice X0Y1
Slice X0Y0
Fast Connects
SHIFTOUT CIN
CIN
Spartan-3E Features
More gates per I/O than Spartan-3 Removed some I/O standards
Higher-drive LVCMOS GTL, GTLP SSTL2_II HSTL_II_18, HSTL_I, HSTL_III LVDS_EXT, ULVDS
DDR Cascade
Internal data is presented on a single Basic Architecture 33 clock edge
Outline
Overview Slice Resources I/O Resources Memory and Clocking Spartan-3, Spartan3E, and Virtex-II Pro Features Virtex-4 Features Summary Appendix
Basic Architecture 35
Smart RAM
New block RAM/FIFO
Advanced CLBs
200K Logic Cells
1 Gbps SelectIO
ChipSync Source synch, XCITE Active Termination
FX
12K140K LCs 0.610 Mb 420 32192 240896 024 Channels 1 or 2 Cores 2 or 4 Cores
SX
23K55K LCs 2.35.7 Mb 48 128512 320640 N/A N/A N/A
Logic Memory DCMs DSP Slices SelectIO RocketIO PowerPC Ethernet MAC
Basic Architecture 37
Outline
Overview Slice Resources I/O Resources Memory and Clocking Spartan-3, Spartan3E, and Virtex-II Pro Features Virtex-4 Features Summary Appendix
Basic Architecture 38
Review Questions
List the primary slice features List the three ways a LUT can be configured
Basic Architecture 39
Answers
List the primary slice features
Look-up tables and function generators (two per slice, eight per CLB) Registers (two per slice, eight per CLB) Dedicated multiplexers (MUXF5, MUXF6, MUXF7, MUXF8) Carry logic MULT_AND gate
Summary
Slices contain LUTs, registers, and carry logic
LUTs are connected with dedicated multiplexers and carry logic LUTs can be configured as shift registers or memory
IOBs contain DDR registers SelectIO standards and DCI enable direct connection to multiple I/O standards while reducing component count Virtex-II memory resources include the following:
Distributed SelectRAM resources and distributed SelectROM (uses CLB LUTs) 18-kb block SelectRAM resources
Basic Architecture 41
Summary
The Virtex-II devices contain dedicated 18x18 multipliers next to each block SelectRAM resource Digital clock managers provide the following:
Delay-Locked Loop (DLL) Digital Frequency Synthesizer (DFS) Digital Phase Shifter (DPS)
Basic Architecture 42
Application Notes
www.xilinx.com Documentation Application Notes
Education resources
Designing with the Virtex-4 Family course Spartan-3E Architecture free Recorded e-Learning
Basic Architecture 43
Outline
Overview Slice Resources I/O Resources Memory and Clocking Spartan-3, Spartan3E, and Virtex-II Pro Features Virtex-4 Features Summary Appendix
Basic Architecture 44
Clock
OCK1 D2
OBUF
PAD
FDDR
OCK2
0 0 0 1 2 4
Port B: 32 bits
OUT 32 bit
I
BUFGCE
CE
BUFGMUX
I0
I1 S
S I0 I1 O