stringtranslate.com

Rebanada de bits

El corte de bits es una técnica para construir un procesador a partir de módulos de procesadores de menor ancho de bits, con el fin de aumentar la longitud de palabra; en teoría, para crear una unidad central de procesamiento (CPU) de n bits arbitrarios . Cada uno de estos módulos componentes procesa un campo de bits o "corte" de un operando . Los componentes de procesamiento agrupados tendrían entonces la capacidad de procesar la longitud de palabra completa elegida de un diseño de software determinado.

El bit slicing prácticamente desapareció debido a la llegada del microprocesador . Recientemente se ha utilizado en unidades lógicas aritméticas (ALU) para computadoras cuánticas y como técnica de software, por ejemplo, para criptografía en CPU x86 . [1]

Detalles operativos

Los procesadores de segmentos de bits (BSP) generalmente incluyen una unidad lógica aritmética (ALU) de 1 , 2 , 4 , 8 o 16 bits y líneas de control (incluidas señales de acarreo o desbordamiento que son internas al procesador en diseños de CPU sin segmentos de bits ).

Por ejemplo, dos chips ALU de 4 bits podrían disponerse uno al lado del otro, con líneas de control entre ellos, para formar una ALU de 8 bits (el resultado no necesita ser una potencia de dos, p. ej., tres unidades de 1 bit pueden formar una ALU de 3 bits, [2] por lo tanto, una CPU de 3 bits (o de n bits), mientras que una CPU de 3 bits, o cualquier CPU con un número impar mayor de bits, no ha sido fabricada ni vendida en volumen). Se podrían usar cuatro chips ALU de 4 bits para construir una ALU de 16 bits. Se necesitarían ocho chips para construir una ALU de palabra de 32 bits. El diseñador podría agregar tantas porciones como fuera necesario para manipular longitudes de palabra más largas.

Se utilizaría un microsecuenciador o una ROM de control para ejecutar la lógica para proporcionar datos y señales de control para regular la función de las ALU componentes.

Microprocesadores de segmento de bits conocidos:

U830C

Necesidad histórica

El bit slicing, aunque no se lo denominaba así en aquel momento, también se utilizaba en ordenadores antes de los circuitos integrados a gran escala (LSI, el predecesor de los actuales VLSI , o circuitos de integración a muy gran escala). La primera máquina de bit slicing fue EDSAC 2 , construida en el Laboratorio de Matemáticas de la Universidad de Cambridge entre 1956 y 1958.

Antes de mediados de los años 70 y finales de los 80, existía cierto debate sobre el ancho de bus necesario para que un sistema informático determinado funcionara. La tecnología de chips de silicio y sus componentes eran mucho más caros que hoy en día. El uso de múltiples unidades de procesamiento de señal (ALU) más sencillas y, por tanto, menos costosas se consideraba una forma de aumentar la potencia de cálculo de forma rentable. Aunque en aquella época se hablaba de microprocesadores de 32 bits , pocos se fabricaban.

Los mainframes de la serie UNIVAC 1100 (una de las series más antiguas, que se originó en la década de 1950) tienen una arquitectura de 36 bits , y el 1100/60 introducido en 1979 utilizó nueve chips ALU de 4 bits Motorola MC10800 [12] para implementar el ancho de palabra necesario mientras se utilizan circuitos integrados modernos. [16]

En aquella época, los procesadores de 16 bits eran comunes pero caros, y los procesadores de 8 bits, como el Z80 , se utilizaban ampliamente en el naciente mercado de las computadoras domésticas.

La combinación de componentes para producir productos de corte de bits permitió a los ingenieros y estudiantes crear computadoras más potentes y complejas a un costo más razonable, utilizando componentes listos para usar que se podían configurar de manera personalizada. Las complejidades de crear una nueva arquitectura de computadora se redujeron en gran medida cuando los detalles de la ALU ya estaban especificados (y depurados ).

La principal ventaja era que el bit slicing hacía económicamente posible el uso de transistores bipolares en procesadores más pequeños , que conmutan mucho más rápido que los transistores NMOS o CMOS . Esto permitía velocidades de reloj mucho más altas, donde se necesitaba velocidad (por ejemplo, para funciones DSP o transformación de matrices  ) o, como en el caso del Xerox Alto , la combinación de flexibilidad y velocidad, antes de que las CPU discretas pudieran ofrecer eso.

Uso moderno

Uso de software en hardware que no es de tipo bit-slice

En tiempos más recientes, el término bit slicing fue reutilizado por Matthew Kwan [17] para referirse a la técnica de usar una CPU de propósito general para implementar múltiples máquinas virtuales simples paralelas usando instrucciones de lógica general para realizar operaciones SIMD (instrucción única con múltiples datos ). Esta técnica también se conoce como SIMD dentro de un registro (SWAR).

Esto fue inicialmente en referencia al artículo de Eli Biham de 1997 Una nueva y rápida implementación de DES en software , [18] que logró ganancias significativas en el rendimiento de DES mediante el uso de este método.

Computadoras cuánticas con cortes de bits

Para simplificar la estructura del circuito y reducir el costo del hardware de las computadoras cuánticas (propuestas para ejecutar el conjunto de instrucciones MIPS32 ), se demostró una "unidad lógica aritmética (ALU) de 4 bits superconductora de 50 GHz para microprocesadores cuánticos de flujo único rápidos de 32 bits". [19]

Véase también

Referencias

  1. ^ Benadjila, Ryad; Guo, Jian; Lomné, Victor; Peyrin, Thomas (2014-03-21) [2013-07-15]. "Implementación de cifrados de bloques ligeros en arquitecturas x86". Archivo de criptología . Informe 2013/445. Archivado desde el original el 2017-08-17 . Consultado el 2019-12-28 .
  2. ^ "Cómo crear una ALU de 1 bit". www.cs.umd.edu . Archivado desde el original el 8 de mayo de 2017. […] Aquí se explica cómo colocar tres ALU de 1 bit para crear una ALU de 3 bits […]
  3. ^ "3002 - El museo CPU Shack". cpushack.com . Consultado el 5 de noviembre de 2017 .
  4. ^ "Liderazgo tecnológico: microprocesador bipolar" (PDF) . Signetics . S2.95 . Consultado el 11 de octubre de 2021 .
  5. ^ "IMP-4 - National Semiconductor". en.wikichip.org . Consultado el 5 de noviembre de 2017 .
  6. ^ abcde Klar, Rainer (1989) [1 de octubre de 1988]. "5.2 Der Mikroprozessor, ein Universal-Rechenautomat". Digitale Rechenautomaten – Eine Einführung in die Struktur von Computerhardware [ Computadoras digitales: una introducción a la estructura del hardware de una computadora ]. Sammlung Göschen (en alemán). vol. 2050 (cuarta edición reelaborada). Berlín, Alemania: Walter de Gruyter & Co. p. 198.ISBN 3-11011700-2.(320 páginas)
  7. ^ "6701 - El museo CPU Shack". cpushack.com . Consultado el 5 de noviembre de 2017 .
  8. ^ "5700/6700 - Memorias monolíticas". en.wikichip.org . Consultado el 5 de noviembre de 2017 .
  9. ^ "Archivo:MMI 5701-6701 MCU (agosto de 1974).pdf" (PDF) . en.wikichip.org . Consultado el 5 de noviembre de 2017 .
  10. ^ "Microcontrolador bipolar expandible de 4 bits 5701/6701 Aug74" (PDF) . Consultado el 24 de mayo de 2021 .
  11. ^ "SN74S481". Museo CPU Shack . Consultado el 5 de noviembre de 2017 .
  12. ^ de Mueller, Dieter (2012). "El MC10800". 6502.org . Archivado desde el original el 18 de julio de 2018. Consultado el 5 de noviembre de 2017 .
  13. ^ Kurth, Rüdiger; Groß, Martín; Hambre, Henry, eds. (2021-09-27) [2006]. "Integrierte Schaltkreise" [Circuitos integrados]. robotrontechnik.de (en alemán). Archivado desde el original el 3 de diciembre de 2021 . Consultado el 7 de diciembre de 2021 .
  14. ^ Oppelt, Dirk (2016). «Eastern Bloc DEC PDP». cpu-collection.de . Núremberg, Alemania. Archivado desde el original el 2016-08-09 . Consultado el 2021-12-07 .
  15. ^ Salomón, Peter (25 de junio de 2007). "Einsatzgebiete des U830C und Chipsatz" [Aplicaciones del U830C y el chipset]. Foro Robotrontechnik (en alemán). Archivado desde el original el 10 de noviembre de 2019 . Consultado el 7 de diciembre de 2021 .
  16. ^ "Computadoras Sperry Univac 1100/60 System" (PDF) . Delran, NJ, EE. UU.: Datapro Research Corporation. Enero de 1983. 70C-877-12 . Consultado el 11 de octubre de 2021 .
  17. ^ "Bitslice DES". darkside.com.au . Consultado el 5 de noviembre de 2017 .
  18. ^ Biham, Eli (1997). "Una nueva y rápida implementación de DES en software". cs.technion.ac.il . Consultado el 5 de noviembre de 2017 .
  19. ^ Tang, Guang-Ming; Takata, Kensuke; Tanaka, Masamitsu; Fujimaki, Akira; Takagi, Kazuyoshi; Takagi, Naofumi (enero de 2016) [9 de diciembre de 2015]. "Unidad lógica aritmética de 4 bits por corte de bits para microprocesadores RSFQ de 32 bits". IEEE Transactions on Applied Superconductivity . 26 (1): 2507125. Bibcode :2016ITAS...2607125T. doi :10.1109/TASC.2015.2507125. S2CID  25478156. 1300106. […] Se demostró una unidad lógica aritmética (ALU) de 4 bits por corte de bits para microprocesadores cuánticos de flujo único rápidos de 32 bits. La ALU propuesta cubre todas las operaciones de ALU para el conjunto de instrucciones MIPS32. […] Consta de 3481 uniones Josephson con un área de 3,09 × 1,66 mm 2 . Logró la frecuencia objetivo de 50 GHz y una latencia de 524 ps para una operación de 32 bits, a la tensión de polarización de CC diseñada de 2,5 mV […] Se ha diseñado y fabricado otra ALU paralela de 8 bits con una frecuencia de procesamiento objetivo de 30 GHz […] Para lograr un rendimiento comparable al de los microprocesadores paralelos CMOS que funcionan a 2-3 GHz, se debe realizar un procesamiento de 4 bits por segmento con una frecuencia de reloj de varias decenas de gigahercios. Se han demostrado con éxito varios circuitos aritméticos de bits en serie con relojes de alta velocidad de más de 50 GHz […]

Lectura adicional

Enlaces externos