Introducción a FPGA Dispositivos y Herramientas Índice

Anuncio
Introducción a
FPGA
Dispositivos y Herramientas
DCSE -4003
Índice (Dispositivos FPGA)
1.
2.
3.
4.
Introducción
Antecedentes
Tecnologías de programación
Dispositivos comerciales
1. Xilinx
2. Altera
5. Resumen
(DCSE -4003 )
2
1
Algunos inventos
• J. Bardeen, W. Brattain & W. Shockely (Bell Labs)
inventaron el transistor bipolar en 1947.
• J. Kilby (Texas Inst) & R. Noyce (Fairchild) inventaron el
“circuito integrado” en 1958 (varios transistores
interconectados en el mismo substrato).
• En 1971 INTEL presenta el primer microprocesador:
4004 (2100 transistores).
• En 1980 Mead & Conway publican “Introduction to VLSI
Systems”, proponiendo el diseño de ASIC: Application
Specific Integrated Circuits.
• En 1985 se presentan los FPGA: Field Programmable
Gate Array.
(DCSE -4003 )
3
Ley de Moore
• En 1965, Gordon Moore predijo que el número
de transistores en un circuito integrado se
duplicaría cada 18 – 14 meses (crecimiento
exponencial).
• Se ha cumplido desde entonces
•
•
•
•
2300 transistores, reloj 1 MHz (Intel 4004) - 1971
16 Millón transistores (Ultra Sparc III)
42 Millón, reloj 2 GHz (Intel P4) - 2001
140 Millón transistores (HP PA-8500)
(DCSE -4003 )
4
2
Microprocesador Intel 4004
(DCSE -4003 )
5
Intel Pentium IV
(DCSE -4003 )
6
3
Moore’s Law in Microprocessors
Transistors
Transistors on
on lead
lead microprocessors
microprocessors double
double every
every 22 years
years
1000
2X growth in 1.96 years!
Transistors (MT)
100
10
P6
Pentium® proc
486
1
386
286
0.1
8086
8080
8008
4004
8085
0.01
0.001
1970
1980
1990
Year
2000
2010
Courtesy, Intel
(DCSE -4003 )
7
Evolution in DRAM Chip Capacity
human memory
human DNA
100000000
10000000
64.000.000
4X growth every 3 years!
16.000.000
K b it c a p a c ity /c h ip
4.000.000
1.000.000
1000000
256.000
book
100000
64.000
16.000
10000
4.000
1.000
1000
256
100
64
0.07 µm
0.1 µm
0.13 µm
0.18-0.25 µm
0.35-0.4 µm
0.5-0.6 µm
encyclopedia
2 hrs CD audio
30 sec HDTV
0.7-0.8 µm
1.0-1.2 µm
1.6-2.4 µm
page
10
1980
1983
1986
1989
1992
1995
1998
2001
2004
2007
2010
Year
(DCSE -4003 )
8
4
Die Size Growth
Die
Die size
size grows
grows by
by 14%
14% to
to satisfy
satisfy Moore’s
Moore’s Law
Law
Die size (mm)
100
10
8080
8008
4004
8086
8085
286
386
P6
486 Pentium ® proc
~7% growth per year
~2X growth in 10 years
1
1970
1980
1990
Year
2000
2010
Courtesy, Intel
(DCSE -4003 )
9
Clock Frequency
Lead
Lead microprocessors
microprocessors frequency
frequency doubles
doubles every
every 22 years
years
10000
2X every 2 years
Frequency (Mhz)
1000
P6
100
486
10
8085
1
0.1
1970
(DCSE -4003 )
8086 286
Pentium ® proc
386
8080
8008
4004
1980
1990
Year
Courtesy, Intel
2000
2010
10
5
Power Dissipation
Lead
Lead Microprocessors
Microprocessors power
power continues
continues to
to increase
increase
Power (Watts)
100
P6
Pentium ® proc
10
8086 286
1
8008
4004
486
386
8085
8080
0.1
1971
1974
1978
1985
1992
2000
Year
Power
Power delivery
delivery and
and dissipation
dissipation will
will be
be prohibitive
prohibitive
Courtesy, Intel
(DCSE -4003 )
11
Power Density
Power Density (W/cm2)
10000
1000
Nuclear
Reactor
100
8086
10 4004
Hot Plate
P6
8008 8085
Pentium® proc
386
286
486
8080
1
Lineal con fclk 1970
y con
Rocket
Nozzle
Vdd2
1980
1990
Year
2000
2010
Power
Power density
density too
too high
high to
to keep
keep junctions
junctions at
at low
low temp
temp
(DCSE -4003 )
Courtesy, Intel
12
6
Evolución ASIC y MPU [ITRS 2000]
Año de
producción
Funciones
por chip
(106
transistores)
1999
2001
2004
2000
2002 2003
2005
180nm
130nm
90nm
2008
60nm
2011
40nm
2014
30nm
61
86
122
173
244
345
488
1381
3907
11052
Tamaño
chip (mm2)
310
310
310
325
340
356
372
427
489
561
Transistores
106 / cm2
19,7
27,8
39,4
53,2
71,9
97,1
131
324
799
1970
2304
2560
3042
3042 3042 3042 3042
3840
4224
4416
1200
1386
1600
1724 1857 2000
2155
2655
3190
3825
6-7
6-7
7
8-9
9
9-10
10
Nº pads
On-chip
frec. (MHz)
Niveles
conexionado
7-8
8
8
(DCSE -4003 )
13
Límites de la Ley de Moore ?
• Disipación de potencia en los circuitos. Monitorización
temperatura.
• Tecnologías de interconexión.
• Problemas asociados al aluminio (resistividad, electromigración e
inducción de tensiones mecánicas).
• Retardo de los hilos: porcentaje elevado del retardo de las
señales (en procesos < 0,25 µm y frecuencias de 1 GHz, la
resistencia de las pistas de conexión provoca que una gran parte
del chip sea inalcanzable en un solo ciclo de reloj).
• Calidad de los aislantes
• Umbral de ruido térmico (~0.25 v).
• Tamaño de las obleas. Mejor productividad, si reducido
número de defectos.
• Complejidad, test, …
(DCSE -4003 )
14
7
Mobile Pentium 3 (Intel 2001)
(DCSE -4003 )
15
Mobile Pentium 3 (Intel 2001)
512K L2 Advanced
transfer cache
Instruction Fetch
Instruction decode &
Dynamic
execution
133 MHz System Bus
Data prefetch logic
Clock & enhanced
SpeedStep
Data cache
Integer unit
Streaming SIMD
MMX
Floating Point unit
(DCSE -4003 )
16
8
Heterogeneity – SoC Systems-on-chip
• Digital
•
•
•
•
• Analog
Control
• RF
µP
• Power
DSP
Interfaces • MEMs
• Memory
• IP
• SRAM
• DRAM
• FLASH
(DCSE -4003 )
17
Diseño de Sistema
• Imaginemos: Sistema de comunicaciones digitales
Dominio
Funcional
Dominio
Estructural
Algoritmo
FSM
Módulo
Ecuación Booleana
Procesador
ALU
Celda
Transistor
?
Mask Floorplan
Cell Floorplan
Module Floorplan
Chip Floorplan
Dominio
Físico
(DCSE -4003 )
18
9
Diseño de Sistema
PCB
ANALOG
FPGA
Processor
CPU
CPU
FPGA
CUSTOM
MEM
MEM
Some
“Stuff”
“Stuff”
bus
More
“Stuff”
“Stuff”
(DCSE -4003 )
19
Panorama de los IC
Circuitos Integrados
Full-Custom
ASICs
Semi-Custom
ASICs
PLD
PAL
(DCSE -4003 )
PLA
User
Programmable
FPGA
GAL
20
10
Dos aproximación a la implementación
ASIC
Application Specific
Integrated Circuit
FPGA
Field Programmable
Gate Array
• off the shelf. El diseñador
• Diseño completo desde la
se limita a la configuración
descripción funcional al
•
Layout
físico predefinido, el
layout físico.
diseño finaliza con la
• Un fabricante (foundry)
descarga del programa de
encarga de su producción:
configuración (bitstream)
coste de la máscara
• Económicamente viable para
producción a gran escala:
(~$1M/diseño)
(DCSE -4003 )
21
¿Qué opción escoger?
ASICs
Elevadas Prestaciones
FPGAs
Off-the-shelf
Coste de desarrollo
Bajo Consumo
Short time-to-market
Economía de escala
(DCSE -4003 )
Reconfigurabilidad
22
11
¿Qué es una FPGA?
Consiste en una un IC cuya funcionalidad es configurable
Matriz de puertas lógicas. Dos alternativas
1. PAL, GAL, PLD, CPLD …matriz tradicional en las que las
puertas están predeterminadas y tan sólo se programa la
interconexión.
2. En la FPGA se programa tanto la funcionalidad como la
interconexión.
(DCSE -4003 )
23
¿Qué es una FPGA?: Ventajas
Las FPGAs son un elemento de desarrollo ideal para la
realización de prototipos digitales
El ciclo de desarrollo y fabricación de un ASIC es costoso y
largo, involucrando a mucho personal especializado
(manpower)
La experiencia industrial ha mostrado que pueden:
1.
2.
Reducir significativamente el coste de desarrollo de sistemas digitales
especializados de baja tirada.
Competir en prestaciones con los microprocesadores comerciales más
avanzados del momento.
Además la reprogramabilidad acerca el diseño HW al SW
1.
Posibilidad de descarga actualizaciones con nuevas funcionalidades o
que corrijan errores detectados -> reducción del time-to-market
(DCSE -4003 )
24
12
¿Qué es una FPGA??
Bloque configurable
Bloque E/S
Matriz de componentes cuya
funcionalidad y conectividad
es programable
(DCSE -4003 )
25
Índice
1.
2.
3.
4.
Introducción
Antecedentes
Tecnologías de programación
Dispositivos comerciales
1. Xilinx
2. Altera
5. Resumen
(DCSE -4003 )
26
13
Antecedentes
• PROMs: Se puede emplear los bits de
direcciones como entradas y el contenido
como salida. (solución ineficiente)
(DCSE -4003 )
27
Antecedentes
• Algebra de Boole
• Toda función combinacional como suma de
productos o productos de sumas
• PLAs (Programmable Logic Arrays): Philips
1970
• Suma de productos (SOP):
• Plano AND programable
• Plano OR fijo
• Disponen de un biestable a la salida de la
puerta OR de manera que se pueden
desarrollar circuitos secuenciales.
(DCSE -4003 )
28
14
Antecedentes: PLA
D
C
B
A
OR array
(hard-wired)
0
1
• Circuitos
combinacionales
2
3
4
5
• Circuitos secuenciales
• FSM’s
6
7
8
9
10
11
12
13
14
15
AND array
(programmable)
O
1
O
2
O
3
O
4
(DCSE -4003 )
29
Antecedentes: PLA
A
B
2-to-4 decoder
A
A
B
B
AND array
AB
AB
AB
AB
AB
AB
AB
AB
Fuse
Input lines
Product
lines
If blown, OR
input is logic 0.
OR
array
O1
O2
O3
O4
Sum of product outputs
Suma de productos en una PLD
(DCSE -4003 )
30
15
Índice
1.
2.
3.
4.
Introducción
Antecedentes
Tecnologías de programación
Dispositivos comerciales
1. Xilinx
2. Altera
5. Resumen
(DCSE -4003 )
31
Tecnologías de programación
• Fusibles con tecnología EPROM/EEPROM
• PLA
• Conexiones SRAM
• FPGA
• Fusibles && Antifusibles
• Muy especifica (espacio o entornos
radioactivos)
(DCSE -4003 )
32
16
Descargar