Upload
others
View
6
Download
0
Embed Size (px)
Citation preview
Arquitectura de Computadores
Implementación Arquitecturas
Arq. Avanzadas. FPGAs
ARCO 2015
Introducción
• Los microprocesadores han revolucionado nuestra industriao moviles, routers, avances en medicina, coches, etc.
• La indusctrioa de los semiconductores, ha crecido de 21 billones de $ en 1985 1213 b in 2008
Arquitectura Computadores¿Qué es un computador?
[Hamacher96]: “máquina de cálculo electrónica de alta velocidad que acepta información digitalizada, la procesa atendiendo a una lista de instrucciones que almacena internamente, y produce la correspondiente información de salida”.[RAE]: “Máquina electrónica, analógica o digital, dotada de una memoria de gran capacidad y de métodos de tratamiento de la información, capaz de resolver problemas matemáticos y lógicos mediante la utilización automática de programas informáticos”.
Arquitectura Computadores
Funciones de un computador:• Procesamiento de datos.• Almacenamiento de datos.• Transferencias de datos entre el computador y el exterior.• Control de las anteriores operaciones.
Sus principales componentes estructurales son:• Procesador: controla el funcionamiento del computador y
procesa los datos.• Subsistema de memoria: almacena datos.• Subsistema de entrada/salida: transfiere datos entre el
computador y el entorno externo.• Buses: interconexión entre las diferentes partes.• Buses de comunicación
Arquitectura Computadores
Programación:Diseño del conjunto de instrucciones.Interface del computador.Relación con los compiladores.
Organización de la máquina:Unidades funcionales.Transparente al software.Componentes Hardware y su interconexión
Arquitectura del Computador
¿como se crea la arquitectura de un computador?
Organización de la máquina
• Características del computador de interés para el diseñador lógico.
Incluye:• Estructura y función de las unidades funcionales (registros,
UAL, desplazadores, etc)• La forma en la que esos componentes se interconectan.• Cómo circula la información entre esos componentes.• La lógica y medios por los que tal flujo de información se
controla.• Coordinación de las unidades funcionales en orden a
realizar la arquitectura del conjunto de instrucciones.
Implementación Arquitecturas
UnidadAritmética
Unidadde
Control
MemoriaPrincipal
CPU
Periféricos
deSalida
Periféricos
deEntrada
PICS ASIC
FPGA DSP
Implementacióndepende de la tecnología.
Implementación Componentes
¿Que tecnología se puede utiliza para implementar los distintos componentes de un computador?
En el caso de los procesadores, se pueden utilizar dos:
• Aplicación de circuitos integrados específicos (ASIC)• Field Programmable Gate Array (FPGA)
ASIC - Ventajas
• Velocidad• Consumo de potencia bajo• Costo/rendimiento
ASIC- Desventajas
• Alto costo de desarrollo• Lentos ciclos de desarrolo• Inflexible
FPGA
Otra solución
¿Qué es una FPGA?
• Circuitos digitales integrados que contienen bloques de logica configurable (programable) con interconexiones reconfigurables controladas por el switch de una matriz de control.
• Los programadores pueden cambiar el diseño de la aplicación una y otra vez sobre la misma FPGA
Bloques lógicos
Look-up table (LUT)
ABCD
Out
A × B × C × D = out
×
FPGA (Field-Programmable Gate Array )
LE LE
LE LE
ᄎLE LE LE LE
LE LE
LE LE
Elemento Logico Interconexiones
Los bloques lógicos realizan funciones booleanas
Xilinx XC4000 Cell
Ejemplo FPGA FPGA
FPGA - Ventajas
• Mayor flexibilidad que un ASIC• Alto Rendimiento en algunas aplicaciones• Reusabillidad de Hardware para diferentes
aplicaciones
SPARTAN 3E