Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf ·...

23
©DISCA, UPV, David de Andrés y Daniel Gil Computación reconfigurable: tecnología y hardware Diseño de Arquitecturas VLSI

Transcript of Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf ·...

Page 1: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

©DISCA, UPV, David de Andrés y Daniel Gil

Computación reconfigurable:tecnología y hardware

Diseño de Arquitecturas VLSI

Page 2: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

2

©DISCA, UPV, David de Andrés y Daniel Gil

Objetivos

� Describir el concepto de computación reconfigurable

� Enumerar las principales aplicaciones de los

dispositivos reconfigurables de tipo FPGA

� Identificar la tecnología utilizada en la

implementación de dispositivos tipo FPGAs

� Identificar la arquitectura genérica de una FPGA

Page 3: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

3

©DISCA, UPV, David de Andrés y Daniel Gil

Computación reconfigurable

� Ejecución de algoritmos

� Application Specific Integrated Circuit (ASIC)

☺ Muy rápido

� Nada flexible, muy caro

� Procesador programado por SW

☺ Muy flexible, “muy” barato

� Muy lento Comput

ación

reconf

igurab

le

Page 4: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

4

©DISCA, UPV, David de Andrés y Daniel Gil

Tecnologías de implementaciónCircuito digital

Diseño basado en celdas

Diseños casi full-customUsa bibliotecas de celdas estándar

Gate Arrays

Mares de puertasComplejidad media-alta

CPLDs, PALs

Arrays AND-OR programablesFusibles o

transistores de puerta aislada

Field Programmable Gate Arrays(FPGAs)

Arrays basados en RAM de Xilinx, Altera, …Tecnología con crecimiento muy rápido

Lógica TTLLógica CMOS

Microprocesadores variosChips ASIC

Circuitos semi-custom

Buen compromisoentre riesgo, coste,

rendimiento, tiempo de diseño

Circuitos full-custom

Muy alto riesgoCaros/largo tiempo de entregaBuenos para grandes volúmenesBuenos para alto rendimiento

ComponentesStandard off-the-shelf

Componentespersonalizados (custom)

Page 5: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

5

©DISCA, UPV, David de Andrés y Daniel Gil

Tecnologías de implementación

Número de unidades

Tiempo de diseño

CosteComplejidad

Velocidad

PLD

FPGA

Standard Cell

Full custom

Page 6: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

6

©DISCA, UPV, David de Andrés y Daniel Gil

¿Qué es una FPGA?

� Field Programmable Gate Array

� An FPGA is a specially made digital semiconductor often used for prototyping. With an

FPGA, a design engineer is able to program electrical connections on site for a specific

application (for example a device for a sound/video card), without paying thousands of

dollars to have the chip manufactured in mass quantities

� This device, similar to the gate array, is shipped to the user with general-purpose

metallization pre-fabricated, often with variable length segments or routing tracks. It is

programmed by turning on switches which make connections between circuit nodes and the

metal routing tracks. The connection may be made by a transistor switch (which are

controlled by a programmable memory element) or by an antifuse. The transistor switch

may be controlled by an SRAM cell or an EPROM/EEPROM/Flash cell. Timing is generally

not easily predictable. Some architectures employ dedicated logic and routing resources for

optimizing high-speed functions such as carry chains, wide decodes, etc.

Page 7: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

7

©DISCA, UPV, David de Andrés y Daniel Gil

FPGA basadas en SRAM

SRAM

SRAM

SRAM

SRAM

Transistorde paso

Multiplexor

Buffertriestado

Page 8: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

8

©DISCA, UPV, David de Andrés y Daniel Gil

Aplicaciones para FPGAs

� Prototipado ASIC y emulación lógica

� Aeroespacial y defensa

� Automoción

� Procesamiento de imagen y señal

� Criptografía

� Mercado AVB (Audio Video Broadcast)

� Mercado de consumo

� Almacenamiento y procesamiento de datos

� Industriales, científicas y médicas

� Comunicaciones por cable

� Comunicaciones inalámbricas

Page 9: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

9

©DISCA, UPV, David de Andrés y Daniel Gil

Acoplamiento

� ☺

☺ �

Paralelismo Integración Sobrecarga en la comunicación

Page 10: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

10

©DISCA, UPV, David de Andrés y Daniel Gil

FPGA tradicionales

Bloques lógicos

Encaminamientoprogramable

Bloques de E/S

Page 11: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

11

©DISCA, UPV, David de Andrés y Daniel Gil

Bloques lógicos

� Se componen de tres elementos

� Generadores de funciones

� Implementan la lógica combinacional

� Elementos de memoria

� Implementan la lógica secuencial

� Elementos lógicos y de interconexión

� Multiplexores, puertas AND y XOR, …

Page 12: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

12

©DISCA, UPV, David de Andrés y Daniel Gil

Generadores de funciones:Look-Up Tables (LUT)

LUTIn3

In2

In1

In0

Out

A

B

Y

Y = (/A * B) + (A * /B)00011

11001

10110

00000

YA/B/ABBA

01111

10111

11011

00011

01101

10101

11001

00001

01110

10110

11010

00010

01100

10100

11000

00000

OutIn0In1In2In3

A B

A

B

Y

Page 13: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

13

©DISCA, UPV, David de Andrés y Daniel Gil

Elementos de memoria:Flip-Flops (FF)

FF

D Q

CLR/PR

Biestables de tipo D

Page 14: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

14

©DISCA, UPV, David de Andrés y Daniel Gil

Bloque lógico: ejemplo

LUTIn3

In2

In1

In0

FF

D Q

CLR/PR

SetReset

Clock

Lógica de Set/Reset

Out

Page 15: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

15

©DISCA, UPV, David de Andrés y Daniel Gil

Granularidad

� Tamaño y complejidad de los bloques lógicos

Grano fino ↔ Grano medio ↔ Grano grueso

� ☺

☺ �

Tiempo de reconfiguración Utilización de recursos

Page 16: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

16

©DISCA, UPV, David de Andrés y Daniel Gil

Arrays heterogéneos

Bloque memoria RAM Multiplicador

Gestor de reloj

Procesador

Page 17: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

17

©DISCA, UPV, David de Andrés y Daniel Gil

Arquitectura de encaminamiento

� Bloques lógicos rodeados por canales de

encaminamiento prefabricados

� Se conectan a segmentos de cableado por medio

de interruptores programables

� En las intersecciones de los canales verticales

y horizontales se encuentran switch blocks

Page 18: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

18

©DISCA, UPV, David de Andrés y Daniel Gil

Arquitectura de encaminamiento

Bloquelógico

Interruptorde conexiónprogramable

Interruptor deencaminamientoprogramable

Segmentode cablecorto

Segmentode cablelargo

Bloque de

encaminamiento

Page 19: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

19

©DISCA, UPV, David de Andrés y Daniel Gil

Arquitectura de encaminamiento

In1 In1

Input pindoglegs

Page 20: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

20

©DISCA, UPV, David de Andrés y Daniel Gil

Recursos de encaminamiento

� Normalmente “estilo isla”

� Lógica vs encaminamiento

� Encaminamiento segmentado

� Cables cortos (locales)

� Cables largos (globales)

� Encaminamiento jerárquico

� H

Page 21: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

21

©DISCA, UPV, David de Andrés y Daniel Gil

Sistemas multi-FPGA

� Interconexión

� Mesh

� Comunicación entre vecinos

� Crossbar

� Difícilmente escalable

Page 22: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

22

©DISCA, UPV, David de Andrés y Daniel Gil

Conclusiones

� Aplicaciones

� Aceleración del cómputo

� Flexible (software) y rápida (hardware)

� Tecnología

� Basada en SRAM

� Arquitectura

� Island-style

Page 23: Computación reconfigurable: tecnología y hardwarecarteleras.webcindario.com/arq-dina.pdf · 2018-10-02 · 2 ©DISCA, UPV, David de Andrés y Daniel Gil Objetivos Describir el concepto

23

©DISCA, UPV, David de Andrés y Daniel Gil

FPGAs comerciales

http://www.xilinx.com http://www.altera.com

http://www.actel.com

http://www.quicklogic.com

http://www.latticesemi.com

http://www.atmel.comhttp://www.achronix.com

http://www.siliconbluetech.com