uc3m_ec

Materiales para Estructura de Computadores

Ejercicio 1

(enunciado) Se desea desarrollar un controlador para un semáforo. El controlador dispone de una CPU de 32 bits, mapa de E/S separado y juego de instrucciones del RISC-V 32. A esta CPU se le conectan dos módulos de E/S. El primero es un cronómetro y el segundo es el módulo de E/S que controla el funcionamiento del semáforo.

El módulo cronómetro dispone de los tres registros siguientes:

El módulo de E/S que controla el semáforo dispone de cuatro registros:

Se pide:
  1. Escriba el programa ensamblador que controla el funcionamiento de este semáforo. El semáforo siempre comienza su funcionamiento en rojo.
  2. ¿Qué ineficiencia se identifica en el programa anterior? ¿Cómo se podría resolver?