Arquitectura de FPGAs

Arquitectura de FPGAs Diseño Lógico 2 - 2015 Instituto de Ingeniería Eléctrica Facultad de Ingeniería Universidad de la República PLD / FPGA - Mid

4 downloads 198 Views 2MB Size

Recommend Stories


CAPACIDADES E INFRAESTRUCTURA EN FPGAS
CAPACIDADES E INFRAESTRUCTURA EN FPGAS. Actualmente se tienen identificados 53 expertos (ingenieros, maestros y doctores) con intereses en diversos ca

ARQUITECTURA EFIMERA ARQUITECTURA EFÍMERA
ARQUITECTURA EFÍMERA El equipo de TEG ARQUITECTURA EFIMERA está formado por profesionales del diseño y trabajadores empíricos de la escenografía que

Arquitectura
Núcleo: LENGUAJES ARTÍSTICOS Pintura / Arquitectura Nivel: SEGUNDO CICLO Duración: 3 MINUTOS Serie: Manos a la obra DESCRIPCIÓN: RELACIÓN ENTRE E

Story Transcript

Arquitectura de FPGAs Diseño Lógico 2 - 2015 Instituto de Ingeniería Eléctrica Facultad de Ingeniería Universidad de la República

PLD / FPGA

- Mid 80's: 8 a 16 funciones lógicas - En el lab: 15000 funciones lógicas + memoria + multiplicadores

Lo básico ●

Lógica combinatoria



Memoria

Funciones combinatorias a

b

c

f(a, b, c)

0

0

0

0

0

0

1

0

0

1

0

1

0

1

1

1

1

0

0

1

1

0

1

1

1

1

0

0

1

1

1

0

Lógica | Suma de productos ●

ROM



PLA (Programmable Logic Array): • AND programable - OR programable.



PAL (Programmable Array Logic): • AND programable - OR fijo

Lógica | ROM

Rom con: m bits de direcciones y n bits de ancho de palabra = n funciones de m bits

Lógica | Suma de productos (PLA)

Lógica | Plano OR fijo (PAL)

Lógica | LUT b0

H0(a) G0(a, b)

b1 H1(a)

b2 b3

G(a, b, c)

b4

H2(a)

b5 b6

G1(a, b)

H3(a)

b7

a

b

c

¿CPLD o FPGA? ● ● ●

PLD: Programmable Logic Device CPLD: Complex PLD FPGA: Field Programmable Gate Array Es una cuestión de nombres. En general se utiliza FPGA para dispositivos de configuración volátil con celdas de arquitectura Look-up Table y PLD (o CPLD = Complex PLD) para dispositivos de configuración no volátil y celdas del tipo de suma de productos.

Memoria

Elemento Lógico

Logic Element - Cyclone III

Interconexiones

Jerarquía de conexiones ● •

• •

Conexiones configurables

Dentro de cada celda para determinar la función lógica Entre celdas vecinas Jerarquía en varios niveles de grupos de celdas y bloques ●

Conexiones disponibles



Abundantes entre celdas vecinas



Escasas entre celdas lejanas

LAB - Cyclone III

Manejo de señales de reloj ●

● • •



Entradas y bloques dedicados para minimizar “jitter”, “skew”, y distorsión del ciclo de trabajo. PLLs y Digital Clock Managers

Multiplicar o dividir frecuencia Fase y retardo programables para ajustarse a la temporización de señales de entrada Conmutar entre diferentes fuentes de reloj

Más Bloques ●

Multiplicadores y DSP



Bloques de memoria

● ●





Procesadores Interfaces comunicación serie de alta velocidad (serializadores/deserializadores, 8B/10B) Bloques de I/O (adaptación impedancias, niveles de tensión, registros, control de slew-rate, etc.) Facilidades para TEST (BIST)

Estructura interna Altera

Fuente: http://www.altera.com/products/devices/stratix2/st2-index.jsp

Estructura interna Xilinx

Fuente: Virtex-II Pro and Virtex-II Pro X Data Sheet

Ejemplo Chip Cyclone III de Altera en placa DE0.

Cyclone III





Arquitectura Lookup Table y configuración volátil



Jerarquía de bloques lógicos y conexiones

Logic Elements (LE) • Logic Cells (LC) o Macrocell en otras familias



Varios LEs forman un Logic Array Block (LAB) • Configurable Logic Block (CLB) en Xilinx

• en Cyclone III – 1 LAB = 16 LE

Otros bloques – Cyclone III ●

Memory Blocks (M9K)



Bloques de 8 Kbits + paridad



Organización configurable



Ancho de palabra (1 a 36)



ROM o RAM



Fifo



Uno o dos puertos ●

Multiplicadores



Punto fijo con o sin signo.



Un mult. 18 x 18 o dos 9 x 9



Conexión en cascada

Recapitulando ●

Bloques Lógicos



Función combinatoria (Suma de productos o LUT)



FF



Multiplexores ●

Jerarquía de Buses



de interconexión de bloques



de distribución de señales de control (clk, clr, enable) ●

Memorias



Bloques de E/S (buffers, voltaje de salida)



Manejo de relojes, multiplicadores, ...

Familias Altera ●

Non-volatile: MAX 10



Low Cost +Performance: Cyclone



Balance costo, power, perf.: Arria



High-End: Stratix

U$ 26+ (2013) U$ 58+ (2015)

U$ 141+

U$ 280+

U$2K+

Fuente de precios: buyaltera.com

Stratix (obsoleto) Feature

Stratix IV E

Stratix III L

Stratix III E

Stratix II

Stratix

Equivalent Logic Elements

105,600 to 681,100

47,500 to 338,000

47,500 to 254,400

15,600 to 179,400

10,570 to 79,040

Adaptive Logic Modules

42,240 to 272,440 

19,000 to 135,200 

19,000 to 101,760 

6,240 to 71,760 

N/A

Total RAM (Kbits)

8,244 to 22,977

1,836 to 16,272

5,328 to 14,688

410 to 9,163

899 to 7,253

384 to 896

48 to 384

24 to 88

125 to 1,000

840

Max 18 x 18 Multipliers

512 to 1,360 216 to 576

LVDS Data Rates 150 to 1,600 124 to 1,250 125 to 1,250 (Mbps) Precio [U$S]

1K - 13K

2K – 3.5K

0.2K – 5K

Ventajas ●

Reducción en la cantidad de componentes



Menor área de circuito impreso



Menor costo de montaje



Mayor confiabilidad ●

Reprogramabilidad



Cambios de diseño sin modificar impreso



Diseño temprano para estándares no maduros ●

Stock más reducido

Dominios de aplicación ●

“Glue Logic”



Circuitos digitales rápidos



Aceleradores de Cálculo



Procesamiento de señales



Prototipado de otros ASICs



System on a Chip (SoC)

400MB/s LVDS sin gastar USD 25K

Fuente: “Hacking the Xbox. An Introduction to Reverse Engineering” Andrew "bunnie" Huang

Fuente: “Hacking the Xbox. An Introduction to Reverse Engineering” Andrew "bunnie" Huang

100MB/s

ASICs ●

Full Custom



Standard Cells



Gate Arrays



Circuitos Programables (PLD, FPGA) Orden decreciente de costos fijos (NRE) y tiempo de desarrollo

ASIC vs FPGA

Oferta de prototipado en FPGAs y fabricación en chips "más duros" (menor costo, menor consumo)

Fuente: http://www.xilinx.com/

Xilinx EasyPath Flexibility to make ECO changes

Support for Dual Bitstreams

Algunos productos que utilizan FPGAs

Interfaces EXTRON

Adquisidores NI

Procesadores Mark Levinson

Touch Panels AMX

Lectura adicional Maxfield, Clive; “FPGAs”, Ed. Newnes, 2008, Chapter 2: “FPGA Architectures”. Huang, A. “Hacking the Xbox. An Introduction to Reverse Engineering” http://bunniefoo.com/nostarch/HackingTh eXbox_Free.pdf

Precauciones usando la placa ● •

Mesa limpia, estática, etc. ●



Precauciones habituales: EP3C16:

Conexiones con entradas ya soldadas: Hay que evitar que el chip las maneje como salidas. Aunque no se utilicen, definirlas como entradas o verificar que por defecto las asigne tri-state con weak pull-up

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.