Fundamentos de Arquitectura de Computadores: Von Neumann, Registros y Direccionamiento

Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 5,74 KB

Arquitectura Von Neumann y Componentes Centrales

La Arquitectura Von Neumann establece que los datos e instrucciones están almacenados en una memoria de lectura/escritura. El contenido de la memoria es accesible por direcciones. La ejecución es secuencial.

Componentes de la CPU

  • Unidad de Control (UC): Extrae de la Memoria Principal (MP) la instrucción a ejecutar y la decodifica. Da órdenes al resto de componentes.
  • Unidad Aritmético-Lógica (ALU): Realiza la operación indicada por la Unidad de Control sobre los datos de entrada.
  • Registros: Memoria a corto plazo utilizada para almacenar datos e instrucciones temporalmente.

Modelos de Ejecución

  • Registro-Registro: Los operandos fuente pueden ser registros o inmediatos. El destino es un registro. Solo permite operaciones aritmético-lógicas.
  • Registro-Memoria: Un operando fuente puede estar en memoria.
  • Memoria-Memoria: Dos operandos fuente y el destino pueden estar en memoria.

Clasificación y Función de los Registros

Registros de Propósito General

También conocidos como banco de registros, son utilizados explícitamente por cualquier instrucción (ej. load, store).

Registros de Propósito Específico

Su uso está restringido a determinadas instrucciones máquina.

  • Contador de Programa (PC): Guarda la dirección de la instrucción que se está ejecutando o de la que se va a ejecutar, dependiendo de la fase de ejecución.
  • Registro de Estado (SR): Almacena información sobre el estado actual de la CPU (flags).
  • Puntero de Pila (SP): Registro de propósito específico que solo puede contener direcciones, en concreto, la dirección de la cima de la pila.

Registros Transparentes (Internos)

Son registros auxiliares utilizados por la Unidad de Control durante el ciclo de instrucción, generalmente invisibles al programador.

  • Registro de Instrucción (RI): Contiene el código binario de la instrucción que se está ejecutando y que se decodifica en la Unidad de Control, traduciéndolo a una sucesión de señales ordenadas.
  • Registro de Direcciones (AR): Contiene la dirección de memoria a la que se desea acceder en lectura o escritura. Permite liberar el bus de direcciones del microcontrolador durante los ciclos de acceso.
  • Registro de Datos (DR): Hace de interfaz con la Memoria Principal (MP). Se guardan los datos que se van a escribir en la MP o que se han leído de la MP. Permite liberar el bus de datos del micro durante los ciclos de acceso.

Ciclo de Instrucción y Gestión de E/S

Fases de Ejecución de una Instrucción

  1. Fetch (Búsqueda)
  2. Decodificación
  3. Ejecución
  4. Preparación de la siguiente instrucción (Fin del ciclo)

Unidad de Entrada/Salida (E/S)

Los módulos de E/S se encargan de la comunicación con los periféricos y ocultan sus particularidades. Disponen de registros de estado, control y datos.

Modos de Realizar la Operación de Entrada/Salida

  • Programada: La CPU gestiona completamente la transferencia de datos.
  • Mediante Interrupciones: El módulo de E/S avisa a la CPU cuando tiene un dato listo o ha finalizado una operación.
  • Acceso Directo a Memoria (DMA): La CPU casi no interviene, permitiendo que el módulo de E/S transfiera datos directamente a la memoria.

Conceptos Adicionales

  • Sistema Operativo (SO): Se encarga de la gestión y protección de recursos, y oculta la complejidad de los periféricos.
  • MIPS (Millones de Instrucciones por Segundo): Mide la capacidad de proceso de un controlador.

Acceso a Memoria y Modos de Direccionamiento

Organización del Acceso a Memoria

  • Direccionamiento a Nivel de Palabra: Cada palabra tiene una dirección única.
  • Direccionamiento a Nivel de Byte: Cada byte de memoria tiene una dirección. En este esquema, dos palabras consecutivas están separadas por el tamaño en bytes de la palabra.
  • Alineamiento a Palabra: La dirección para el acceso a una palabra debe ser múltiplo del tamaño de la misma.

Orden de Bytes (Endianness)

  • Little Endian: El byte menos significativo de una palabra se almacena en la dirección de memoria menos significativa.
  • Big Endian: El byte menos significativo de una palabra se almacena en la dirección de memoria más significativa.

Modos de Direccionamiento

  • Direccionamiento Inmediato: El operando (objeto) está contenido en la propia instrucción.
  • Direccionamiento Directo (Absoluto):
    • Absoluto a Registro: El objeto del direccionamiento está contenido en un registro. La instrucción contiene el identificador del registro que contiene el objeto.
    • Absoluto a Memoria: El objeto del direccionamiento está contenido en una dirección de memoria. La instrucción contiene la dirección completa de memoria que contiene el operando.

Entradas relacionadas: