Cortar pedazos


De Wikipedia, la enciclopedia libre
  (Redirigido desde la arquitectura de 2 bits )
Saltar a navegación Saltar a búsqueda

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 la palabra; en teoría para hacer una CPU arbitraria de n bits. Cada uno de estos módulos de componentes procesa un campo de bits o un "segmento" 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 en particular.

El corte de bits desapareció más o menos debido a la llegada del microprocesador . Recientemente se ha utilizado en ALU para ordenadores cuánticos y se ha utilizado como técnica de software (por ejemplo, en CPU x86 , para criptografía ). [1]

Detalles operativos

Los procesadores de segmentos de bits generalmente incluyen una unidad lógica aritmética (ALU) de 1 , 2 , 4 , 8 o 16  bits y líneas de control (incluidas las señales de transporte 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 colocarse 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, por ejemplo, tres de 1 bit pueden formar una ALU de 3 bits , [2] por lo tanto, CPU de 3 bits (o n bits), mientras que 3 bits, o cualquier CPU con un número impar de bits más alto, no se ha fabricado ni vendido en volumen). Se pueden 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 secciones como sea necesario para manipular longitudes de palabras más largas.

Se utilizaría un microsecuenciador o 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 corte de bits conocidos:

  • Rebanada de 2 bits:
    • Familia Intel 3000 (1974), por ejemplo, Intel 3002 con Intel 3001, segunda fuente de Signetics e Intersil [3]
    • Familia Signetics 8X02 (1977) [4]
  • Rebanada de 4 bits:
    • Familia IMP nacional , que consta principalmente del IMP-00A / 520 RALU (también conocido como MM5750) y varios chips de control y microcódigo ROM enmascarados (CROM, también conocidos como MM5751)
      • National GPC / P / IMP-4 (1973), [5] de segunda fuente por Rockwell
      • National IMP-8 , un procesador de 8 bits basado en el chipset IMP, que usa dos chips RALU y un chip CROM
      • Nacional IMP-16 , un procesador de 16 bits basado en el chipset IMP, por ejemplo, cuatro chips RALU con uno cada uno IMP16A / 521D y IMP16A / 522D virutas CROM (chips de CROM opcionales adicionales podrían proporcionar additionis conjunto de instrucciones)
    • Familia AMD Am2900 (1975), p. Ej. AM2901, AM2901A, [6] AM2903 [6]
    • Familia Monolithic Memories 5700/6700 (1974) [7] [8] [9] [10] por ejemplo, MMI 5701 / MMI 6701, de segunda fuente por ITT Semiconductors
    • Texas Instruments SBP0400 (1975) y SBP0401, conectables en cascada hasta 16 bits
    • Texas Instruments SN74181 (1970)
    • Texas Instruments SN74S281 con SN74S282
    • Texas Instruments SN74S481 con SN74S482 (1976) [11]
    • Fairchild 33705 [6]
    • Fairchild 9400 (MACROLOGIC), 4700
    • Familia Motorola M10800 (1979), [12] p . Ej. MC10800 [6]
    • Raytheon RP-16, un procesador de 16 bits que consta de siete circuitos integrados, que utiliza cuatro chips RALU y tres chips CROM.
  • Rebanada de 8 bits:
    • Sistemas de cuatro fases AL1
    • Texas Instruments SN54AS888 / SN74AS888
    • Fairchild 100.000 [6]
    • ZMD U830C  [ de ] (1978/1981), en cascada hasta 32 bits
  • Rebanada de 16 bits:
    • AMD Am29100 familia
    • Synopsys 49C402

Necesidad histórica

El corte de bits, aunque no se llamaba así en ese momento, también se usaba en computadoras antes de los circuitos integrados a gran escala (LSI, el predecesor del VLSI actual , o circuitos de integración a muy gran escala). La primera máquina en rodajas de bits fue EDSAC 2 , construida en el Laboratorio de Matemáticas de la Universidad de Cambridge en 1956-1958.

Antes de mediados de la década de 1970 y finales de la de 1980, hubo cierto debate sobre cuánto ancho de bus era necesario en un sistema informático dado para que funcionara. La tecnología y las piezas de chips de silicio eran mucho más caras que en la actualidad. El uso de ALU múltiples, más simples y, por lo tanto, menos costosas se consideró una forma de aumentar la potencia informática de una manera rentable. Si bien en ese momento se discutían los microprocesadores de arquitectura de 32 bits , pocos estaban en producción.

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 usó nueve chips ALU [12] de 4 bits Motorola MC10800 para implementar el ancho de palabra necesario mientras utilizando circuitos integrados modernos. [13]

En ese momento, los procesadores de 16 bits eran comunes pero costosos, y los procesadores de 8 bits, como el Z80 , se usaban ampliamente en el naciente mercado de computadoras domésticas.

La combinación de componentes para producir productos de segmentos 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 podrían configurarse 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 fue que el corte de bits hizo posible económicamente en procesadores más pequeños el uso de transistores bipolares , que cambian mucho más rápido que los transistores NMOS o CMOS . Esto permitió velocidades de reloj mucho más altas, donde se necesitaba velocidad; por ejemplo, funciones DSP o transformación matricial , o como en 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 sin segmentos de bits

En tiempos más recientes, Matthew Kwan [14] volvió a acuñar el término corte de bits 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 lógicas generales para ejecutar Datos Múltiples de Instrucción Única (SIMD) operaciones. Esta técnica también se conoce como SIMD dentro de un registro (SWAR).

Esto fue inicialmente en referencia al artículo de 1997 de Eli Biham A Fast New DES Implementation in Software , [15] que logró ganancias significativas en el rendimiento de DES mediante el uso de este método.

Computadoras cuánticas cortadas en bits

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

Ver también

  • Arquitectura bit-serial

Referencias

  1. ^ Benadjila, Ryad; Guo, Jian; Lomné, Victor; Peyrin, Thomas (21 de marzo de 2014) [15 de julio de 2013]. "Implementación de cifrados de bloques ligeros en arquitecturas x86" . Archivo de Criptología . Informe 2013/445. Archivado desde el original el 17 de agosto de 2017 . Consultado el 28 de diciembre de 2019 .
  2. ^ "Cómo crear una ALU de 1 bit" . www.cs.umd.edu . Archivado desde el original el 8 de mayo de 2017. […] Así es como pondría tres ALU de 1 bit para crear una ALU de 3 bits […]
  3. ^ "3002 - Museo de la cabaña de la CPU" . 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 - Semiconductor nacional" . en.wikichop.org . Consultado el 5 de noviembre de 2017 .
  6. ↑ a b c d e 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 computadora ]. Sammlung Göschen (en alemán). 2050 (cuarta edición revisada). 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 - Recuerdos monolíticos" . 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" . El Museo CPU Shack . Consultado el 5 de noviembre de 2017 .
  12. ↑ a b 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. ^ "Computadoras Sperry Univac 1100/60 System" (PDF) . Delran, Nueva Jersey, EE.UU .: Datapro Research Corporation. Enero de 1983. 70C-877-12 . Consultado el 11 de octubre de 2021 .
  14. ^ "Bitslice DES" . darkside.com.au . Consultado el 5 de noviembre de 2017 .
  15. ^ Biham, Eli (1997). "Una nueva implementación rápida de DES en software" . cs.technion.ac.il . Consultado el 5 de noviembre de 2017 .
  16. ^ Tang, Guang-Ming; Takata, Kensuke; Tanaka, Masamitsu; Fujimaki, Akira; Takagi, Kazuyoshi; Takagi, Naofumi (enero de 2016) [09/12/2015]. "Unidad Lógica Aritmética Bit-Slice de 4 bits para Microprocesadores RSFQ de 32 bits". Transacciones IEEE sobre superconductividad aplicada . 26 (1): 2507125. Código Bibliográfico : 2016ITAS ... 2607125T . doi : 10.1109 / TASC.2015.2507125 . S2CID 25478156 . 1300106. […] Se demostró la unidad aritmética lógica (ALU) de segmento de bits de 4 bits para microprocesadores cuánticos rápidos de flujo único de 32 bits. La ALU propuesta cubre todas las operaciones de ALU para el conjunto de instrucciones MIPS32. […] Consta de 3481 cruces Josephson con un área de 3,09 × 1,66 mm 2 . Alcanzó 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 en paralelo CMOS que funcionan a 2–3 GHz, el procesamiento de segmentos de bits de 4 bits debe realizarse 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 por encima de 50 GHz […]

enlaces externos

  • "Sin torcer: tiempo de té en rodajas pequeñas" . Archivado desde el original el 21 de octubre de 2013. - un manual de corte de bits que presenta una implementación pedagógica en cortes de bits del Tiny Encryption Algorithm (TEA), un cifrado de bloque
Obtenido de " https://en.wikipedia.org/w/index.php?title=Bit_slicing&oldid=1049399509 "