De Wikipedia, la enciclopedia libre
Ir a navegaciónSaltar a buscar

El Xputer es un diseño para una computadora reconfigurable , propuesto por el científico informático Reiner Hartenstein. Hartenstein usa varios términos para describir las diversas innovaciones en el diseño, incluyendo config-ware, flow-ware, morph-ware y "anti-machine".

El Xputer representa un alejamiento de la arquitectura de computadora tradicional de Von Neumann , a una arquitectura de " unidad lógica aritmética suave (ALU)" de grano grueso . [1] El paralelismo se logra mediante elementos configurables conocidos como matrices de rutas de datos reconfigurables (rDPA), organizadas en una matriz bidimensional de ALU similar a KressArray . [1] [2] [3]

Arquitectura

La arquitectura de Xputer está basada en flujo de datos y es la contraparte de la arquitectura de computadora de von Neumann basada en instrucciones .

La arquitectura Xputer fue una de las primeras arquitecturas reconfigurables de grano grueso, [2] y consiste en una matriz de ruta de datos reconfigurable (rDPA) organizada como una matriz bidimensional de ALU (rDPU). [2] El ancho de bus entre ALU era de 32 bits en la primera versión del Xputer. [2]

Las ALU (también conocidas como rDPU) se utilizan para calcular una sola operación matemática, como suma, resta o multiplicación, y también se pueden utilizar únicamente para enrutamiento. [2]

Las ALU están conectadas en malla a través de tres tipos de conexiones, y el flujo de datos a lo largo de estas conexiones es administrado por una unidad de generación de direcciones. [2]

  • Vecino más cercano (conexiones entre ALU vecinas)
  • Back-buses de fila / columna
  • Bus global (un único bus global para la interconexión entre otras ALU)

Los programas para Xputer están escritos en lenguaje C y compilados para su uso en Xputer utilizando el compilador CoDeX escrito por el autor. [2] El compilador CoDeX mapea partes adecuadas del programa C en la estructura rDPA de Xputer. [2] El resto del programa se ejecuta en el sistema host, como una computadora personal .

rDPA

Una matriz de ruta de datos reconfigurable (rDPA) es un dispositivo semiconductor que contiene unidades de ruta de datos reconfigurables e interconexiones programables, propuesto por primera vez por Rainer Kress en 1993, en la Universidad de Kaiserslautern .

En lugar de FPGA ( arreglos de puertas programables en campo ) que tienen bloques lógicos configurables de un solo bit (CLB), los rDPA tienen múltiples bits de ancho (por ejemplo, ancho de ruta de 32 bits) unidades de ruta de datos reconfigurables (rDPU).

Cada rDPU se puede configurar para realizar una función individual. El cliente / diseñador puede programar estas rDPU e interconexiones después del proceso de fabricación (de ahí el término "reconfigurable") para que la rDPA pueda realizar cualquier cálculo complejo que sea necesario. Debido a que las rDPU tienen un ancho de varios bits (por ejemplo, 32 bits), hablamos de reconfigurabilidad de grano grueso, en contraste con las FPGA con bloques lógicos configurables de un solo bit de ancho, llamados reconfigurables de ganancia fina.

Los rDPA se programan estructuralmente a partir del código fuente "config-ware" , compilados en redes de tuberías para ser mapeados en el rDPA. Los rDPA no están controlados por secuencias de instrucciones y no tienen recuperación de instrucciones en tiempo de ejecución. Las rDPU no tienen contador de programa. [4]

Referencias

  1. ^ a b Lógica programable en campo: arquitecturas, síntesis y aplicaciones , Reiner W. Hartenstein, Springer Science & Business Media, 24 de agosto de 1994
  2. ^ a b c d e f g h Técnicas de compilación para arquitecturas reconfigurables , Springer Science & Business Media, 02 de abril de 2011
  3. ^ Diseño de procesadores integrados: una perspectiva de bajo consumo , Springer Science & Business Media, 27 de julio de 2007
  4. ^ Verificación y diseño de sistemas reconfigurables , CRC Press, 17 de febrero de 2009