Arquitectura de Computadores


En ingeniería informática , la arquitectura informática es una descripción de la estructura de un sistema informático hecho de partes componentes. [1] A veces puede ser una descripción de alto nivel que ignora los detalles de la implementación. [2] A un nivel más detallado, la descripción puede incluir el diseño de la arquitectura del conjunto de instrucciones , el diseño de la microarquitectura , el diseño lógico y la implementación . [3]

La primera arquitectura de computadora documentada fue en la correspondencia entre Charles Babbage y Ada Lovelace , describiendo el motor analítico . Mientras construía la computadora Z1 en 1936, Konrad Zuse describió en dos solicitudes de patentes para sus futuros proyectos que las instrucciones de la máquina podrían almacenarse en el mismo almacenamiento utilizado para los datos, es decir, el concepto de programa almacenado . [4] [5] Otros dos ejemplos tempranos e importantes son:

El término "arquitectura" en la literatura informática se remonta al trabajo de Lyle R. Johnson y Frederick P. Brooks, Jr. , miembros del departamento de Organización de Máquinas del principal centro de investigación de IBM en 1959. Johnson tuvo la oportunidad de escribir un comunicación de investigación sobre Stretch , una supercomputadora desarrollada por IBM para el Laboratorio Nacional de Los Alamos (en ese momento conocido como Laboratorio Científico de Los Alamos). Para describir el nivel de detalle para discutir la computadora lujosamente adornada, señaló que su descripción de formatos, tipos de instrucciones, parámetros de hardware y mejoras de velocidad estaban al nivel de "arquitectura del sistema", un término que parecía más útil que "organización de la máquina". ".

Posteriormente, Brooks, un diseñador de Stretch, abrió el Capítulo 2 de un libro llamado Planificación de un sistema informático: Proyecto Stretch afirmando: "La arquitectura informática, como cualquier otra arquitectura, es el arte de determinar las necesidades del usuario de una estructura y luego diseñar para satisfacer esas necesidades de la manera más eficaz posible dentro de las limitaciones económicas y tecnológicas”. [9]

Brooks ayudó a desarrollar la línea de computadoras IBM System / 360 (ahora llamada IBM zSeries ), en la que "arquitectura" se convirtió en un sustantivo que define "lo que el usuario necesita saber". [10] Más tarde, los usuarios de computadoras llegaron a usar el término de muchas maneras menos explícitas. [11]

Las primeras arquitecturas informáticas se diseñaron en papel y luego se integraron directamente en la forma final del hardware. [12]Más tarde, los prototipos de la arquitectura de la computadora se construyeron físicamente en la forma de una computadora con lógica transistor-transistor (TTL), como los prototipos del 6800 y el PA-RISC , se probaron y ajustaron antes de comprometerse con la forma final del hardware. . A partir de la década de 1990, las nuevas arquitecturas de computadora generalmente se "construyen", prueban y ajustan, dentro de otra arquitectura de computadora en un simulador de arquitectura de computadora ; o dentro de un FPGA como un microprocesador suave ; o ambos, antes de comprometerse con la forma de hardware final. [13]


Diagrama de bloques de una computadora básica con CPU monoprocesador. Las líneas negras indican flujo de datos, mientras que las líneas rojas indican flujo de control. Las flechas indican la dirección del flujo.