You are on page 1of 51

Arquitecturas

Reconfigurables

Tipos de Arquitecturas

No Configurable

No Configurable
Arquitectura Non Neunamm (CPU)

Configurable

Configurable
Arquitectura Fermi (GPU)

Configurable
Arquitectura Fermi (GPU)

SP

Re Configurable

El compilador genera y optimiza el


rbol que se mapea en la matriz
reconfigurable

Re Configurable

Arquitectura Reconfigurable
Procesador Secuencial
(RISC, VLIW)
+
Parte reconfigurable
(matriz reconfigurable por
puntos fsicos de control)

Adaptables

El hardware es el que optimiza el


rbol generado por el compilador que
se mapea en la matriz reconfigurable

Conceptos Tericos

Unidades Funcionales
(FU):

Granularidad
:

FPGA vs Reconfigurable
FPGA

RECONFIGURABLE

Trabaja a nivel de bits (Grano


Fino)

Trabaja a nivel de palabras (Grano


Grueso)

Son bloques conformados por


compuertas lgicas programables
por el usuario

Son Unidades Funcionales


programables por el usuario

Nacieron a partir de mejoras en


los Circuitos Integrados ASIC

Nacieron a partir de mejoras en los


FPGA

Consumen mucha potencia

Consumen mucho menos potencia


que los FPGA

Los bloques lgicos ocupan


considerable espacio de la
arquitectura

Reducen el rea de la arquitectura

Algunas versiones son lentas

Reduce el tiempo de retardo

El tiempo de configuracin es Reduce el tiempo de configuracin


considerable porque se debe

Objetivo principal de
Reconfigurable

CPU
Secuencial

Parte
Reconfigurab
le

Tipos de comportamientos
Comportamient Ventajas
o

Desventajas

El Hardware
RC solamente
proporciona FU
al procesador
principal

Agrega funcionalidad a
la programacin
tradicional

El procesador debe estar


indicando las instrucciones
a la parte reconfigurable.

La unidad RC
se usa como
coprocesador.

Permite realizar clculos


sin la supervisin del
procesador.

Elevada cantidad
transmisin de datos entre
ambos.

La unidad RC
se comporta
como
procesador
adicional

La parte reconfigurable
tiene su propia memoria
de trabajo.

No comparten cache.

La unidad RC
es una unidad

La comunicacin es muy Aumenta la complejidad


infrecuente.
en la sintetizacin

Estrategias de sintetizacin
Procesador
Secuencial
Matriz
reconfigurable

Sistema
-> reconfigurable

Lenguaje de programacin

reconfigurable

Estrategias de sintetizacin
Varios Puntos a atender:

Estrategias de sintetizacin
Estrategia

Ventajas

Desventajas

Herramientas
especializadas
para compilar

El paso de un programa
a una arquitectura
depende de un flujo de
diseo.

Es diferente para cada


arquitectura y menos
optimo.

Hacerlo todo
manualmente

Es el mtodo ms
potente

Hay que profundizar en la


arquitectura.

Mezcla de
ambas

Crea rpidamente un
circuito para el sistema
reconfigurable y lo hace
ms accesible a los
programadores.

Los circuitos creados


tienen una eficiencia
relativa

Sintetizacin
*: Etapas manuales
*
*
*

*
*

Arquitectura
ADRES
(Architecture for Dynamically
Reconfigurable
Embedded System)

ADRES - Sistema

Programa
Ejecutable

Instruccin ILP
Varias operaciones que
pueden ser ejecutadas en
paralelo (ILP) se
empaquetan en una
instruccin
larga

ADRES - Sistema

La deteccin del
paralelismo la hace
el compilador (off-line)

Luego de la captacin y
decodificacin de una
instruccin, las
operaciones contenidas
son emitidas
en paralelo.

ADRES - Sistema

ADRES - Sistema

Celdas
Reconfigurab
les

ADRES - Sistema

RC

ADRES - Celda Reconfigurable


(RC)

FU

RF

ADRES - Lenguaje basado en C

ADRES

ADRES

Arquitectura
XPP
(Extreme Processing Platform)

XPP - Caractersticas

Tipos de comportamientos
Caractersticas

Descripcin

Procesamiento de
Flujo de Datos:

Es una secuencia de paquetes de datos


individuales que viajan a travs del grafo de
flujo de datos que define el algoritmo.

Procesamiento de
Configuracin:

Son mdulos de clculo bsico en paralelo,


los cuales derivan del flujo de datos del
grafo del algoritmo. Los nodos del grafo son
mapeados a operaciones mquina bsicas,
como sumas, multiplicaciones, etc.

XPP Development
Suite:

Software especfico que simplifica tanto el


desarrollo de programas como su correccin

XPP Comparacin de Flujos

XPP Estructura del ncleo

XPP Mapeo de flujos

x = (a*c) - (ib*id)
iy = (a*id) + (ib*c)

Configuracin

DataStream

XPP Mapeo de flujos


Zoom PAEs - Calculo simple (flujo de x) x = (a*c) (ib*id)

x
ib

SUB

MUL

MUL

MUL

MUL

ADD

iy
id

XPP Escalable x 4
Ncleo XPP

PAC

XPP Escalable x 8

XPP Vista completa

XPP Procesador SMeXPP Media

Arquitectura
Rapid
(Reconfigurable Pipelined Datapath)

RaPiD - Estructura

FU

RaPiD Buses Interconexin

RaPiD Buses Interconexin

Interconexin

Bus Connector

RaPiD Interconexin con FU

Multiplex
or

Compuerta
NOT

RaPiD Bus Connector (BC)

RaPiD - Ciclo de compilacin

You might also like