Fundamentos de Arquitectura de Computadores: Microprogramación, Control y Operaciones

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 7,28 KB

¿Para qué sirve la Lógica de Control de Bifurcación (LCB)?

La LCB sirve para saltar a la primera microinstrucción que se encuentra en una dirección de la CROM en particular. Dicha dirección debe ser indicada (codificación de la dirección en la misma micropalabra), mediante una carga paralela de dicha dirección. Permite la bifurcación condicional, donde, dependiendo de los bits de estado del sistema, se querrá llevar a cabo un rumbo u otro en casos determinados.

Supón cambios en la Memoria de Control (CM): 12 bits para datos y 8 para instrucciones. El repertorio se reduce a 8. Modificaciones estructurales a realizar en la CM:

  • PC: 12 bits
  • MAR: 12 bits
  • M: 20 bits
  • GPR: 20 bits
  • OPR: 8 bits
  • Sumador y ACC: 20 bits

Diferencias entre control microprogramado y cableado

Cableado mediante registro de desplazamiento:

  • También llamado mediante “trenes de biestables”.
  • Implementación sencilla.
  • Alta flexibilidad.
  • Facilidad de análisis.
  • Rápida.
  • Minimiza la necesidad de lógica adicional.
  • Alto uso de biestables.

Cableado mediante Circuito Secuencial Síncrono:

  • Tedioso y rígido.
  • Difícil de analizar.
  • Difícil de detectar errores.
  • Garantiza la ejecución más rápida de todos los métodos.
  • Minimiza el número de biestables.

Microprogramado mediante ROM de control:

  • Fácil diseño.
  • Muy flexible.
  • Fácil de analizar.
  • Mecanismo más lento.
  • Costosa en circuitería.

Microprogramado mediante decodificadores de tiempo e instrucción:

  • Diseño sencillo.
  • Bastante flexible.
  • Fácil de analizar.
  • Ejecución rápida.
  • Bastante lógica combinacional.

Computadora con pila como parte de la Memoria Principal (MP). Puntero de pila SP de 8 bits inicializado a 00H con orden creciente. Definir escritura y lectura.

Escritura:

  1. SP+1 -> SP
  2. SP -> MAR
  3. GPR -> M

Lectura:

  1. SP -> MAR
  2. M -> GPR
  3. SP-1 -> SP

¿Por qué en el algoritmo de división de números en coma flotante no hay sobreflujo? ¿Cómo se elimina? ¿Qué ocurre al eliminarlo?

Porque inicialmente se comprueba si los N bits más significativos del dividendo representan un número mayor que los N bits del divisor. Si no es mayor, se procede al algoritmo de división. Si es mayor, se realiza un desplazamiento a la derecha sobre el dividendo, con el incremento del exponente. Como son números normalizados, después del desplazamiento, los N bits más significativos del dividendo representan un número menor que los N bits del divisor, con lo que no hay sobreflujo.

Comparación de números binarios mediante operaciones aritméticas. Indicar un ejemplo de cada una de ellas.

Primera forma (restándolos):

  • Si son iguales, el resultado es 0.
  • Si el primero es mayor que el segundo, el resultado es positivo.
  • Si el primero es menor que el segundo, el resultado es negativo.

Otra forma (con restador completo):

  • A > B -> último préstamo = 0 -> Resultado = A - B
  • A = B -> último préstamo = 0 -> Resultado = 0
  • A < B -> último préstamo = 1 -> Resultado = 2n – (B - A) = Complemento a 2(B - A)

Funcionamiento del control cableado con decodificadores de tiempo e instrucción.

La secuenciación se consigue modificando el contador de tiempo (SR), que tiene 3 operaciones: cuenta ascendente, carga paralela y puesta a 0. Para cada ciclo de instrucción se indican las microoperaciones y la secuenciación.

Los algoritmos de multiplicación en Complemento a 2 (C2) tienen un problema común que no tienen los algoritmos de Booth.

Cuando se produce sobreflujo de suma con números en C2, se produce una inversión de signo en el resultado. Por tanto, después de realizar la suma parcial, al hacer el desplazamiento aritmético a la derecha:

  • Si no hubo sobreflujo tras la suma (V=0), se desplazan todos los bits manteniendo el signo.
  • Si hubo sobreflujo (V=1), se desplazan todos los bits a la derecha y el bit de signo se complementa.

¿Qué tipo de unidad de control se muestra en la siguiente figura? (Descripción: Dibujo de una unidad de control)

Unidad de control microprogramada. Tiene Memoria de Control (ROM) y lógica de control de bifurcación.

Algoritmo Signo/Magnitud (S/M) en Punto Flotante (PF). ¿Qué problema soluciona la sección marcada? (Descripción: Dibujo de un algoritmo)

El problema de la normalización del resultado. Una vez realizada la suma, se debe normalizar desplazando los bits de la mantisa hacia la izquierda o derecha, con lo que hay que cambiar el valor del exponente.

CM con unidad de cálculo S-M añadida. ¿Cómo resuelves el overflow de la división en representación S-M sin realizar cambios en la estructura? (Descripción: Dibujo de una CM)

En la toma de decisión 'E' es donde se comprueba si hay overflow. Si lo hay, se acaba la operación; si no, se realiza la división.

Supón que en la CM se modifica el OPR pasando a 5 bits.

a) Máximo número de instrucciones en el repertorio de la máquina.

En este caso son 5 bits, por lo que el número máximo de instrucciones es 32 (25).

b) Tamaño de la MP expresado en número de palabras por ancho de palabra.

(27) * 12 bits

Significado LCB, I, B, R, E.

  • LCB: Lógica de Control de Bifurcación. Controla los movimientos dentro de la ejecución del programa.
  • Incremento (I): Pasa a ejecutar la microinstrucción que se encuentra en la dirección CROM consecutiva.
  • Bifurcación (B): Pasa a ejecutar la microinstrucción que se encuentra en una dirección CROM específica.
  • Carga de rutina (R): Pasa a ejecutar la primera microinstrucción asociada al ciclo de ejecución de una instrucción determinada.
  • Enable (E): Bloque para habilitar o inhabilitar la ejecución de microoperaciones.

Punto flotante. Te dan algoritmos de división y multiplicación, y pregunta por qué en uno se resta el sesgo y en el otro se le suma:

En la multiplicación, el exponente del resultado será la suma de los exponentes de los operandos. Para esto hay que tener una consideración, y es que cada uno de los exponentes de los operandos está sesgado. Para tener el exponente del producto correctamente sesgado, debe restársele el sesgo a la suma de los dos exponentes.

En la división, el exponente del resultado se obtiene restándole al exponente del dividendo el exponente del divisor. Hay que tener en cuenta que, al restar dos números sesgados, desaparece el sesgo. Luego, para tener la representación de la división correctamente sesgada, hay que sumarle el sesgo a la resta de exponentes.

Entradas relacionadas: