Arquitectura del ordenador

La arquitectura de ordenadores es el diseño conceptual y la estructura operacional fundamental de un sistema de computadoras.

La computadora recibe y envía la información a través de los periféricos, por medio de los canales. La CPU es la encargada de procesar la información que le llega a la computadora. El intercambio de información se tiene que hacer con los periféricos y la CPU. Puede considerarse que todas aquellas unidades de un sistema, exceptuando la CPU, se denomina periférico, por lo que la computadora tiene dos partes bien definidas, que son:
  1. la CPU (encargada de ejecutar programas y que también se considera compuesta por la memoria principal, la unidad aritmético lógica y la unidad de control).
  2. los periféricos (que pueden ser de entrada, salida, entrada/salida, almacenamiento y comunicaciones).
Las arquitecturas y los conjuntos de instrucciones se pueden clasificar considerando los siguientes aspectos:
  • Almacenamiento de operandos en la CPU: dónde se ubican los operadores aparte de la substractora informativa (SI).
  • Cantidad de operandos explícitos por instrucción: cuántos operandos se expresan en forma explícita en una instrucción típica. Normalmente son 0, 1, 2 y 3.
  • Posición del operando: ¿cualquier operando puede estar en memoria, o deben estar algunos o todos en los registros internos de la CPU?. Cómo se especifica la dirección de memoria (modos de direccionamiento disponibles).
  • Operaciones: qué operaciones están disponibles en el conjunto de instrucciones.
  • Tipo y tamaño de operandos y cómo se especifican.


Puertas lógicas

Son las encargadas de procesar la lógica de las instrucciones del sistema. Existen siete tipos básicos diferentes:
  • NOT: es la negación de la entrada. Funciona con una sola entrada y una sola salida.
  • AND: es la multiplicación binaria de dos entradas y da una sola salida.
  • OR: es la suma binaria de dos entradas y da como salida la suma propia o el bit carry de ser necesario.
  • XOR: es la suma binaria de dos entradas y da el resultado como salida, sin incluir el bit carry.
  • NAND: es la negación de AND. Da una única salida.
  • NOR: es la negación de OR. Da una única salida.
  • XNOR: es la negación de XOR. Da una única salida.

Almacenamiento de operandos en la CPU

La diferencia básica está en el almacenamiento interno de la CPU. Las principales alternativas son:
  • Acumulador
  • Conjunto de registros.
  • Memoria.
Pero antes hay que tomar en cuenta que la informaciones procesadas son de suma importancia.
Características
  • En una arquitectura de acumulador, un operando está implícitamente en el acumulador siempre leyendo e ingresando datos (por ejemplo, una calculadora estándar).
  • En la arquitectura de pila no es necesario nombrar a los operandos ya que estos se encuentran en el tope de la pila (por ejemplo, calculadora de pila HP).
  • La arquitectura de registros tiene sólo operandos explícitos (es aquel que se nombra) en registros o memoria.

Ventajas de las arquitecturas

  • Pila:
    • Modelo sencillo para evaluación de expresiones (notación polaca inversa).
    • Instrucciones cortas pueden dar una buena densidad de código.
  • Acumulador:
    • Instrucciones cortas.
    • Minimiza estados internos de la máquina (unidad de control sencilla).
  • Registro:
    • Modelo más general para el código de instrucciones parecidas.
    • Automatiza generación de código y la reutilización de operandos.
    • Reduce el tráfico a memoria.
    • Una computadora tiene 32 registros, como estándar.
    • El acceso a los datos es más rápido y veloz.
Desventajas de las arquitecturas
  • Pila:
    • A una pila no se puede acceder aleatoriamente.
    • Esta limitación hace difícil generar código eficiente.
    • También dificulta una implementación eficiente, ya que la pila llega a ser un cuello de botella es decir que existe dificultad para la transferencia de datos en su velocidad mk.
  • Acumulador:
    • Como el acumulador es solamente almacenamiento temporal, el tráfico de memoria es el más alto en esta aproximación.
  • Registro:
    • Todos los operadores deben ser nombrados, conduciendo a instrucciones más largas.

Comentarios