ejercicio 6 practico 9

ejercicio 6 practico 9

de Maria Sara Silva Addiego -
Número de respuestas: 1

No termino de entender la letra de este ejercicio, o sea hay momentos en los que ask está determinado por el sistema, o sea si las salidas son iguales o diferentes y etc, pero inicialmente, no tendría que obligarlo a valer 1 en algún momento para poder guardar mi primer dato? y luego lo mismo con el segundo para poder hacer la primera comparación y que el circuito empiece a funcionar correctamente solo. O sea en qué momento guardo el primer dato vendría a ser mi duda, si tengo que contemplar eso o si tengo que asumir que ask tiene algún valor inicial o si ya tengo dos datos iniciales guardados, no se. Por otro lado, si contemplara guardar los dos primeros datos, tipo ponele que en dos pasos iniciales, después cada vez que ingrese un dato nuevo y "reinicie" el circuito me salteo esos dos pasos y voy directo al 3. No se si se entiende bien la duda. Por otro lado, una vez que ask vale 1 por un período de tiempo, empiezo a ingresar los datos a la vez que ask vale 1 o en el período siguiente? o sea ask y ready están sincronizados o ready uno después? Tampoco entiendo bien para qué sirve ready si dice que x es estable hasta que pueda poner una nueva entrada. Son  muchas preguntas jaja perdón pero no se bien por dónde agarrar esas cosas, me resulta un poco ambiguo.

En respuesta a Maria Sara Silva Addiego

Re: ejercicio 6 practico 9

de Juan Pablo Oliver -

Lo primero que hay que separar son las señales que son salidas del circuito que se pide diseñar y las que son entradas.

- ask es una salida, o sea que la manejás vos

- ready es una entrada, o sea que la maneja alguien desde afuera (otro sistema)

Estas dos señales manejan una señalización (o handshake) para pasarse los datos en X sin que haya solapamientos, es decir sin perder datos y sin leer el mismo 2 veces.

El circuito que tenés que diseñar "pide" que le manden un nuevo dato poniendo ask=1 durante 1 Tclk.

El sistema externo te "contesta" que efectivamente puso los datos en X con ready=1 durante 1Tclk.

Recién ahí podés leer los datos en la entrada X, que vas a tener que comparar con las dos leídas anteriores X(t-1) y X(t-2).

Vas a tener que usar 2 memorias para guardar los datos "viejos", y mantenerlas actualizadas.

El problema se puede resolver pensando que está en régimen, sin importar los resultados de las 2 primeras comparaciones (ya que al principio no hay datos "viejos" almacenados).

 

Probá a ver si con esto te sale y cualquier cosa volvé a preguntar.