Vous êtes sur la page 1sur 4

ESCUELA SUPERIOR POLITÉCNICA DEL LITORAL

FACULTAD DE INGENIERÍA EN ELECTRICIDAD Y COMPUTACIÓN

SISTEMAS DIGITALES II
DEBER # 2

Fecha de entrega parte 1 (problemas 1 y 2): Martes de la 5ta. Semana. Paralelo: 1


Fecha de entrega parte 2 (problemas 3 y 4): Día del examen de 1ra. Evaluación.

Ejercicio # 1
Dada la siguiente MSS, se pide:

a) Hacer el diagrama de estados reducido y demostrar con la tabla de estados presentes -


siguientes que no existen estados equivalentes. Explique. Formato: A,B/HP.
b) Implementación del circuito completo de la MSS: Memoria de Estados,
Decodificador de Estado Siguientes y Salida (Usar Multiplexores 8 a 1).
c) Escribir el código VHDL completo de la MSS, usar un process para el decodificador
de estados siguiente–memoria de estados y un process para el decodificador de salidas.
d) Dibujar el diagrama de tiempo en el que demuestre todos los estados de la MSS.

Decodificador de Estados Siguiente:

Decodificador de Salida:
Ejercicio # 2
Dado el siguiente diagrama de tiempo de una MSS, se pide:

a) Hacer el diagrama de estados simplificado y demostrar con la tabla de estados


presentes - siguientes que no existen estados equivalentes. Explique. Formato: k/x,y.
b) Implementación el circuito completo de la MSS: Memoria de Estados,
Decodificador de Estado Siguientes y Salida (Usar Multiplexores 8 a 1).
c) Escribir el código VHDL completo de la MSS, usar un process para decodificador de
estados siguiente–memoria de estados y un process para el decodificador de salidas.
Ejercicio # 3
Dado el siguiente diagrama ASM de una MSS, presente:

a) Los mapas decodificadores de estado siguiente y la expresión de salida.


b) La implementación con multiplexores de 4 a 1 para el decodificador de Estado
Siguiente y Puertas lógicas para el decodificador de salida.
c) Escribir el código VHDL completo de la MSS, usar un process para decodificador de
estados siguiente–memoria de estados y un process para el decodificador de salidas.
Ejercicio # 4
Diseñar un Sistema Digital que lee datos desde una memoria RAM ya llena con 255
números aleatorios BCD. El sistema inicialmente se encuentra esperando por la señal de
Start para empezar a buscar el número que más veces se repite en los números guardados.
Una vez finalizada la búsqueda, el sistema mostrará en un display el número que tiene
más repeticiones.

Ejemplo:
Trama (con dígitos entre 0 - 9) 24563129563245298061230689725….
Dígito que más se repite 2
Repeticiones del Número 6

El pseudocódigo para detectar las veces que se repite cada dígito es:

Max=0; --Repeticiones
Num=0; --Número
For i=0 to 9
CNT=0;
For j=0 to 255 --Para buscar en todas las direcciones de la RAM
If (i=RAM(j))
Inc(CNT); --Cuenta las veces que se repite cada número BCD
Endif
endFor
If (CNT > Max)
Num=i;
Max=CNT; --Actualiza las veces que se repite el número con más
repeticiones hasta el momento
Endif
EndFor
PresentarDisplay(Num);

PRESENTAR:
a) La partición funcional del sistema completo: Mss, Ram, Msi, etc.
b) Diagrama ASM del controlador.
c) Código VHDL del sistema completo en Quartus.