IF LABO5 -20202

5to Laboratorio de Sistemas Digitales I – EE635O, 2020-2 Informe Final Registros y Contadores Grupo 5 O’Besso De la Sot

Views 629 Downloads 7 File size 2MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

5to Laboratorio de Sistemas Digitales I – EE635O, 2020-2 Informe Final Registros y Contadores Grupo 5

O’Besso De la Sota, Glen Rodríguez Vásquez, Brando Facultad de Ingeniería Eléctrica y Electrónica Universidad Nacional de Ingeniería Lima, Perú {glen.obesso, brodriguezv }@uni.pe Resumen – El desarrollo del 5to laboratorio del curso de Sistemas Digitales tiene como objetivo hacernos comprender el funcionamiento de registros y contadores para posteriormente diseñar los mismos pero con funciones más particulares, esto nos permitió adquirir habilidades en el uso de biestables para implementar contadores síncronos, así como también aprendimos a usar registros, en específico el CI 74LS194 (Registro de desplazamiento universal) el cual implementamos en un circuito trabajado en el entorno gráfico de la herramienta EDA Quartus II , también usamos un nuevo tipo comando en la descripción de hardware por medio de VHDL llamado “behavioral” con el cual diseñamos un registro con funciones particulares especificadas por la guía de laboratorio I. INTRODUCCIÓN El presente informe contempla el desarrollo de forma teórica y experimental de la guía del 5to Laboratorio del curso de Sistemas Digitales con el cual aprendimos a usar biestables que en conjunto podemos obtener circuitos secuenciales síncronos los cuales tiene la función de ser contadores para este caso, además diseñamos e implementamos un registro de desplazamiento universal (74LS194) que opera de una forma particular y finalmente diseñamos un registro completo con funciones de desplazamiento particulares el cual es descrito en lenguaje VHDL. La estructura del presente informe presenta primero el planteamiento del problema en el cual se precisa de manera exacta lo solicitado en la guía correspondiente, a continuación presentamos la descripción general de la solución, en dicha sección se presentará el marco teórico correspondiente para la solución del problema propuesto así como también la solución teórica del problema propuesto, seguidamente se presenta los Resultados Experimentales en el que analizamos la simulación del problema propuesto usando la herramienta EDA Quartus II versión 9.1. haciendo uso del entorno gráfico y de listados en VHDL.

II. PLANTEAMIENTO DEL PROBLEMA 1 .Diseñar una máquina de estados síncrona con un control de entrada X y salida P de tres bits (P2P1P0, donde P0 es el LSB) que funcione de la manera siguiente: si X = ‘0’, la máquina debe generar las cuentas 0, 2, 4, 6, 0, 2, 4, 6, 0,….., y si X = ‘1’, la máquina debe generar las cuentas 1, 3, 5, 7, 1, 3, 5, 7, 1, 3,……, y se debe comportar de tal manera que si está en la cuenta par y X cambia a ‘1’, el siguiente valor de cuenta debe ser el valor impar siguiente, y si está en la cuenta impar y X cambia a ‘0’, el siguiente valor de cuenta debe ser el valor par siguiente. Se pide: a) ¿Qué tipo de máquina es? b) Dibujar el diagrama de estados de la máquina. c) Dar la tabla de excitación usando flip-flop tipo D d) Realizar la síntesis de la máquina e) Implementar en el entorno gráfico del software EDA Quartus II y realizar la simulación temporal (no funcional) del diseño, seleccionado el dispositivo FPGA Cyclone II EP2C35F672C6. Usar la señal CLK como señal de reloj, con un período de 75 ns, y simular el diseño por 2 μs. El nombre del proyecto es pregunta1. 2. Diseñe e implemente en el laboratorio un circuito utilizando el software EDA Quartus II de tal manera que efectúe todas las funcionalidades (una a la vez) del circuito integrado 74194, seleccionado el dispositivo FPGA Cyclone II EP2C35F672C6. La implementación será a nivel de entorno gráfico. El nombre del proyecto es pregunta2. El circuito debe cargar un dato en paralelo de manera síncrona (1 pulso de reloj, dato a cargar 0110), desplazar la información cargada a la derecha (con recirculación) por 5 pulsos de reloj, desplazar la información a la izquierda (con recirculación) por 6 pulsos de reloj, y al final, parar. Notar que, se debe diseñar una FSM a fin de generar las señales de control adecuadas del 74194 para los fines solicitados. 3. Diseñar un circuito secuencial síncrono, utilizando la herramienta EDA Quartus II, que funcione como un registro con capacidad de cuenta up/down, borrado asíncrono y síncrono, y carga paralela síncrona. Para el diseño, se definen las señales según la Tabla1.El diseño del registro se implementará utilizando el lenguaje de descripción de hardware VHDL, en un solo archivo de diseño. El diseño debe ser del tipo comportamiento (behavioral). Nombre del diseño: pregunta3.vhd. La implementación del circuito puede usar uno o dos process(), pero escoger una sola opción.El diseño utiliza flip-flops del tipo D, cuyas salidas se activarán con el flanco de subida del reloj. Además, tomar en cuenta lo siguiente:



La señal sclr es un clear síncrono y tiene más alta prioridad de la señal ld.



La señal ld es la señal que permite la carga de los datos din[3..0] y tiene menor prioridad que la señal sclr, pero de mayor prioridad que func y updwn.

Tomar en cuenta que si el registro muestra una salida par y la señal func cambia a “1”, en aplicación del flanco de subida del reloj, la salida del registro cambiará a un valor impar, y este valor depende de la señal updwn. Si la señal updwn era “0”, en la aplicación del flanco de subida del reloj, el nuevo valor del registro será el equivalente al número impar numéricamente inferior al número par previo al flanco de reloj. Si la señal updwn era “1”, en la aplicación del flanco de subida del reloj, el nuevo valor del registro será equivalente al número impar numéricamente superior al número par, previo al flanco de reloj. Un funcionamiento similar ocurre cuando la salida del registro es impar y la señal func cambia a “0”, pero los nuevos valores del registro serán ahora pares. Para efectos de pruebas a través de la simulación de tiempos, considerar que la duración del pulso de reloj es de 50 ns, y el tiempo de simulación es de 3us.

III. DESCRIPCIÓN GENERAL DE LA SOLUCIÓN PREGUNTA 1 Contadores: Los contadores son circuitos lógicos secuenciales de tipo regular que llevan la cuenta al ritmo de una serie de pulsos de entrada. Contadores binarios síncronos: Un contador binario es un tipo de FSM, su implementación consta de 𝑛 flip-flops y debe partir del estado nulo y seguir una secuencia numérica considerando el sistema de numeración binario natural. Entonces el contador tendrá 2𝑛 estados únicos, y repetirá los estados mientras se apliquen pulsos de reloj. En un contador síncrono, los flip-flops que componen esta FSM comparten el mismo pulso de reloj. Podemos tener una entrada asíncrona clear que desactive nuestros flip-flops, así como también un control de reloj (inhibit), el cual nos permite desactivar el conteo para mantener un estado hasta que el conteo vuelva a activarse.

Fig. 1. Contador binario síncrono de n bits implementado con flip-flops JK.

a)¿Qué tipo de máquina es? Como vemos, tanto en la Fig. 1. como en Fig. 2., las salidas de los flip-flops (estados actuales) son nuestra salida actual. Entonces decimos que estamos ante una FSM de tipo Moore. b)Diagrama de estados de la máquina Como nuestra cuenta será de 0 (000) a 7 (111), necesitaremos 3 flip-flops para completar los 8 estados. Iniciamos nuestro conteo en un estado (S0) con salida cero (000). Realizamos las transiciones según los datos del problema.

Fig2.Diagrama de Estados del Contador

c)Tabla de excitación – Flip-flop D Recordando el funcionamiento de un flip-flop tipo D accionado por flancos de subida:

Fig. 3. Flip-flop tipo D accionado por flancos de subida, con su respectiva ecuación característica de estado siguiente.

Realizamos la siguiente asignación de estados de forma conveniente

Tabla 1. Tabla de asignación de estados

Construimos nuestra tabla de excitación en base a las transiciones vistas en el diagrama de estados.

Tabla 2. Tabla de Excitación de la FSM a diseñar

d)Síntesis de la máquina. Ahora debemos encontrar las ecuaciones lógicas que describen nuestra FSM. Realizamos los mapas de Karnaugh para D2, D1 y D0 en función de Q2, Q1, Q0 y X. A continuación presento los Mapas Karnaugh para los FF a utilizar.

Tabla 3. Mapa K para FF D2

Tabla 4. Mapa K para FF D1

Tabla 5. Mapa K para FF D0

Luego de resolverlos obtenemos las siguientes ecuaciones: 𝐷2 = 𝑄2 𝑄̅1 + 𝑄̅2 𝑄1 𝑋̅ + 𝑄̅2 𝑄1 𝑄0 + 𝑄2 𝑄̅0 𝑋 𝐷1 = 𝑄̅1 𝑋̅ + 𝑄1 𝑄̅0 + 𝑄1 𝑄̅0 𝑋 𝐷1 = 𝑋 Además, para las salidas, tenemos: 𝑃2 = 𝑄2 𝑃1 = 𝑄1 𝑃0 = 𝑄0 Con esto, nuestra FSM queda totalmente definida. La implementación en el entorno grafico de Quartus II y su respectiva simulación temporal, la presentaremos en la sección de Resultados Experimentales.

PREGUNTA2 Para entender el concepto de desplazamiento revisaremos más de cerca al siguiente integrado: Registro de Desplazamiento Universal (CI 74LS194) Podemos observar que con un multiplexor de 4 a 1, podemos controlar 4 diferentes modos de operación del registro de desplazamiento universal. Esto se logra conectando la salida de cada MUX al FF D, y haciendo las respectivas conexiones en cascada (de la salida de un FF a la entrada del siguiente MUX) para que se dé el desplazamiento a la derecha y a la izquierda como se puede en la Fig.4

Fig.4.Composicion interna del CI 74LS194

Los 4 MUX comparten las mismas variables de selección de operación, en la Fig5. presentamos los 4 modos de operación del CI de Registro de Desplazamiento Universal (CI 74LS194)

Fig.5.Modos de Operación del 74LS194

Para hacer el control de las variables de selección del CI 74LS194, el enunciado recomienda diseñar una FSM que nos ayude a tener valores adecuados de las variables de selección a fin de obtener los desplazamientos propuestos en el enunciado. A continuación, presentaré dichos desplazamientos: Los 4 MUX comparten las mismas variables de selección de operación, en la Fig5. presentamos los 4 modos de operación del CI de Registro de Desplazamiento Universal (CI 74LS194)

Fig.5.Modos de Operación del 74LS194

Para hacer el control de las variables de selección del CI 74LS194, el enunciado recomienda diseñar una FSM que nos ayude a tener valores adecuados de las variables de selección a fin de obtener los desplazamientos propuestos en el enunciado. A continuación, presentaré dichos desplazamientos: 1 CLK

Carga Paralela

5 CLK

D. Derecha

6 CLK

D. Izquierda

n CLK

Sin Desplazamiento

Tabla 6. Desplazamientos en el Prob 2.

En la tabla 6 podemos observar que ante un flanco de subida de la señal de reloj CLK se da una Carga paralela de los 4 bits de entrada propuestos, seguidamente ante 5 flancos de subida de la señal de reloj (CLK) se producirá un Desplazamiento a la Derecha, posteriormente ante 6 flancos de subida de la señal de reloj(CLK) se producirá un Desplazamiento a la Izquierda y finalmente ante los siguientes “n” flancos de subida de la señal de reloj , no habrá desplazamiento alguno, es decir , el desplazamiento se habrá detenido. En la Tabla7. Presentamos un cuadro en el que se observa las señales de control necesarias para que se produzcan lo mencionado en la Tabla6. Así mismo presentamos los bits que se cargarán y desplazarán posteriormente, en otras palabras, las salidas de nuestro circuito a diseñar.

0CLK 1CLK

5CLK

6CLK

n CLK…

CLK

S0

S1

Efecto Sin Cambio C.Paralela

0 1 2 3 4 5 6 7 8 9

0 1 0 0 0 0 0 1 1 1

0 1 1 1 1 1 1 0 0 0

10

1

0

11

1

0

0110

12

1

0

1100

13 14 15

0 0 0

0 0 0

D. Derecha

D. Izquierda

Sin Cambio

OUTPUT 0000 0110 0011 1001 1100 0110 0011 0110 1100 1001 0011

1100 1100 1100

Tabla 7.

Ahora para obtener los valores precisos en las variables de selección y además que estos valores se presenten en el intervalo de señal de reloj adecuado, vamos a diseñar una FSM que tenga como salidas aquellos valores necesarios para las variables de selección S1, S0. En la Fig.6 presentamos el Diagrama de estados de nuestra máquina de estado diseñada que cumple con los requisitos del problema.

Fig.6.Diagrama de estados de la FSM

En base a este diagrama de estados podemos obtener la tabla de estados, la cual presentamos en la tabla 8. E.Siguiente

Salidas

E.A

x=0

x=1

Z1

Z0

A

B

B

0

0

B

C

C

1

1

C

D

D

0

1

D

E

E

0

1

E

F

F

0

1

F

G

G

0

1

G

H

H

0

1

H

I

I

1

1

I

J

J

1

1

J

K

K

1

1

K

L

L

1

1

L

M

M

1

1

M

N

N

1

1

N

N

N

0

0

Tabla 8.

En la Tabla 8.observa que tenemos 14 estados por lo tanto usaremos 4 FF’S tipo D, también se observa que el estado siguiente es independiente de x por lo que al hacer la tabla de excitación no consideraremos la variable x al hacer nuestro Mapa de Karnough

En la tabla 9 presento la asignación de estados de nuestra FSM y también su tabla de excitación . E.Actual E.Siguiente FF-D Salidas E.A Q3 Q2 Q1 Q0 Q3* Q2* Q1* Q0* D3 D2 D1 D0 Z1 Z0 A 0 0 0 0 0 0 0 1 0 0 0 1 0 0 B 0 0 0 1 0 0 1 0 0 0 1 0 1 1 C 0 0 1 0 0 0 1 1 0 0 1 1 0 1 D 0 0 1 1 0 1 0 0 0 1 0 0 0 1 E 0 1 0 0 0 1 0 1 0 1 0 1 0 1 F 0 1 0 1 0 1 1 0 0 1 1 0 0 1 G 0 1 1 0 0 1 1 1 0 1 1 1 0 1 H 0 1 1 1 1 0 0 0 1 0 0 0 1 1 I 1 0 0 0 1 0 0 1 1 0 0 1 1 1 J 1 0 0 1 1 0 1 0 1 0 1 0 1 1 K 1 0 1 0 1 0 1 1 1 0 1 1 1 1 L 1 0 1 1 1 1 0 0 1 1 0 0 1 1 M 1 1 0 0 1 1 0 1 1 1 0 1 1 1 N 1 1 0 1 1 1 0 1 1 1 0 1 0 0 O 1 1 1 0 d d d d d d d d d d P 1 1 1 1 d d d d d d d d d d Tabla 9.

Con esto podemos hallar las funciones lógicas de cada FF-D y sus respectivas salidas de nuestra FSM que controlará el funcionamiento del CI 74LS194. 𝐷3 = ∑ 𝑚(7,8,9,10,11,12,13) + 𝑑(14,15) = 𝑄2 𝑄1 𝑄0 + 𝑄3 𝐷2 = ∑ 𝑚(3,4,5,6,11,12,13) + 𝑑(14,15) = ̅̅̅ 𝑄2 𝑄1 𝑄0 + 𝑄2 𝑄̅1 + 𝑄2 𝑄̅0 𝐷1 = ∑ 𝑚(1,2,5,6,9,10) + 𝑑(14,15) = 𝑄1 𝑄̅0 + 𝑄̅3 𝑄̅1 𝑄0 + ̅̅̅ 𝑄2 𝑄̅1 𝑄0 𝐷0 = ∑ 𝑚(0,2,4,6,8,10,11,12) + 𝑑(14,15) = 𝑄̅0 + 𝑄3 𝑄2 𝑍1 = ∑ 𝑚(1,7,8,9,10,11,12) + 𝑑(14,15) = 𝑄̅2 𝑄̅1 𝑄0 + 𝑄2 𝑄1 𝑄0 + 𝑄3 𝑄̅0 +𝑄3 𝑄̅2 𝑍0 = ∑ 𝑚(1,2,3,4,5,6) + 𝑑(14,15) = 𝑄̅3 𝑄̅2 𝑄0 + 𝑄̅3 𝑄1̅̅̅ 𝑄0 + 𝑄̅3 𝑄2 𝑄̅1 Las salidas de nuestra FSM irán conectadas a los pines de selección de modo del Registro de Desplazamiento Universal (74LS194), el circuito implementado y simulado los presentaremos en la sección de Resultados Experimentales.

PROBLEMA3 En la solución de este problema aplicaremos los conceptos sobre contadores que fueron utilizados en el problema 1. Para poder entender mejor el funcionamiento de las entradas del circuito veremos el concepto de carga paralela.

Registros con carga paralela: Consideremos un contador BCD síncrono, si le agregamos entradas al circuito de tal forma que podamos ingresar datos para reestablecer el conteo al valor ingresado. Acorde a la figura, aplicamos un clear asíncrono para limpiar la salida. Luego activamos la señal 𝐿𝑜𝑎𝑑, que de forma síncrona trasladará los datos ingresados (0111) a la salida (D es MSB). Vemos que el conteo sigue su curso normal a partir del dato ingresado. A este proceso se le conoce como carga paralela síncrona.

Fig.7 Diagrama de tiempos de un contador BCD sincrono.

Tabla de estados: Como nuestro contador es de 4 bits, por lo que tendremos 16 estados posibles (S0 a S15). Realizar el diagrama de estados completo sería muy complejo, por lo que realizaremos una tabla de estados para un estado en particular de modo que luego podamos generalizarlo para el resto. Si estamos en un estado “SA”, tal que “A” es par:

E.A

SA

aclr

sclr

Id

din3

din2

din1

din0

func

updwn

clk

E.S.

dout3

dout2

dout1

dout0

0

x

x

x

x

x

x

x

x

x

S0

0

0

0

0

0

1

x

x

x

x

x

x

x



S0

0

0

0

0

0

0

1

Y3

Y2

Y1

Y0

x

x



S(Y)

Y3

Y2

Y1

Y0

0

0

0

x

x

x

x

1

0



S(A-1)

A-1

0

0

0

x

x

x

x

1

1



S(A+1)

A+1

0

0

0

x

x

x

x

0

0



S(A-2)

A-2

0

0

0

x

x

x

x

0

1



S(A+2)

A+2

Tabla de estados para un estado arbitrario par. Al realizar la tabla se respetó la prioridad de las entradas tal como se especifica en el problema. Los cambios de estado se realizan con el flanco de subida del reloj, con excepción del clear asíncrono “aclr” que no depende de este. Si ingresamos datos al circuito, estos solo se mostrarán en la salida si activamos la señal “ld” y el estado siguiente será la interpretación binaria en decimal. Por ejemplo, si ingresamos “1010” y activamos “ld”, el estado siguiente será “S10”. Si la señal “ld” se encuentra inactiva nuestro registro procederá a contar desde el último valor que este registró, haciendo el conteo par o impar, ascendente o descendente de acuerdo a las entradas “func” y “updwn”, y realizando la transición normal de estados. De una forma análoga se podría realizar para un estado “SB” con “B” sea impar.

Listado VHDL: Ahora que ya tenemos los conceptos necesarios, procederemos a la implementación usando el lenguaje VHDL. Empezamos nuestro listado definiendo las librerías que utilizaremos.

Luego definimos nuestra entidad “pregunta3” con sus respectivas entradas y salidas según el enunciado del problema.

Ahora definimos la arquitectura. Usamos la palabra reservada type para declarar todos los estados que pueden tomar nuestras señales internas “estado_actual” y “estado_sgte”. También utilizaremos una señal interna “dsign” de 3 bits que nos servirá para trabajar de forma más ordenada con nuestra salida.

Creamos un proceso para nuestra señal de reloj, de modo que los cambios de estado, así como también el clear síncrono, solo se den en el flanco de subida de este. Utilizamos el condicional if y la sentencia ‘event que nos ayudan a identificar un cambio en la señal de reloj. “ clk = ‘1’ ” es el flanco de subida. Además, definimos el clear asíncrono con “aclr”. También definimos las salidas y las transiciones de estado para cada caso.

Luego creamos otro proceso que nos ayudará a realizar la secuencia de estados de acuerdo a las entradas. Empezamos con un condicional if que nos servirá para definir el proceso de carga paralela (“ld” = ‘1’), su salida y su estado correspondiente.

Ahora cuando “ld” = ‘0’ tendremos un conteo normal, de acuerdo a las entradas “func” y “updwn”. Usamos la sentencia case para especificar la salida y estado siguiente para cada caso de estado actual. En la figura ponemos de ejemplo para el estado S0, pero se debe realizar esto para los 16 estados.

Luego de definir las transiciones para los 16 estados tendríamos nuestro listado terminado.

IV. RESULTADOS EXPERIMENTALES PROBLEMA1 En la Fig.8 , presentamos el Contador síncrono implementado en el entorno grafico del software EDA Quartus II.

Fig. 8. Implementación del Contador Síncrono

En la Fig.9 observamos que haciendo la simulación temporal en el diagrama Waveform, con una entrada aleatoria , una señal de reloj (CLK) de periodo 75ns y un tiempo de simulación .

Fig. 9. Simulacion temporal del Contador

De la Fig5, observamos que se cumplen las transiciones de estados propuestas en nuestro diagrama de estado, por lo que podemos afirmar que nuestra implementación es correcta.

PROBLEMA2. En la Fig10, presento la implementación en el entorno gráfico de la herramienta EDA Quartus II , correspondiente a la solución del problema 2.

Fig. 10. Implementación del Prob2

La vista presentada en la Fig 11 solo es una referencia ya que los archivos de simulación pertinentes son adjuntados en la carpeta de simulación del presente informe. Al hacer la simulación temporal vista en el diagrama de Waveform , usando una señal de reloj de periodo igual a 50nS y un tiempo de simulación de 1uS obtenemos

Fig. 11. Simulacion temporal del Problema2

Al observar nuestra simulación temporal, podemos observar que se cumple los desplazamientos a la derecha y a la izquierda con circulación propuestos por la guía de laboratorio con lo cual podemos afirmar que nuestro circuito diseñado e implementado es correcto.

PROBLEMA3. Simulando en el diagrama Waveform Para valores aleatorios, periodo de reloj 50ns, tiempo de simulación 3us:

Analisis de la simulación

Identificamos la señal aclr clear que no necesita intervención de clk aclr=0 , dout[3..0]=0H

Identificamos la señal sclr clear síncrono luego de clk sclr=1 , dout[3..0]=0H

Teniendo aclr=0 y sclr=1 Identificamos la señal Id que permite la carga de los datos din[3..0]

Teniendo aclr=0, sclr=1 y Id=0 Identificamos la señal func cambia a “1” y updown a “1” 0111→1001→1011 7→9→11 El registro cuenta números impares de manera ascendente

Teniendo aclr=0, sclr=1 y Id=0 Identificamos la señal func cambia a “1” y updown a “0” 1011→1001→0111 11→9→7

El registro cuenta números impares de forma descendente

Teniendo aclr=0, sclr=1 y Id=0 Identificamos la señal func cambia a “0” y updown a “1” 0111→1000→1010 7→8→10 El registro cambia a valor 8 par y cuenta números pares de forma ascendente

Teniendo aclr=0, sclr=1 y Id=0 Identificamos la señal func cambia a “0” y updown a “0” 1010→1000→0110 10→8→6 El registro cuenta numeros pares de forma descendente

V.

OBSERVACIONES Y CONCLUSIONES

OBSERVACIONES 





En la excitación de las señales asíncronas del FFD usamos una señal Input con valor de 5V, ya que si lo conectábamos directo a Vcc(como paquete del entorno grafico) al momento de simular se obtenia salidas forzadas a 0, esto lo decidimos porque al ver la configuración interna del 74LS194 es de esa forma que se trabajaba con las entradas asíncronas de los FFD que componen a este registro universal. Muchos contadores síncronos que están disponibles como CIs están diseñados para ser preajustables; en otras palabras, pueden preajustarse a cualquier conteo inicial deseado, ya sea en forma asíncrona o síncrona la cual es la carga en paralelo del contador.

En el software Quartus II, a diferencia de la simulación funcional, la simulación de tiempos nos permite apreciar los retardos de propagación de los componentes del circuito que el software obtiene a partir de nuestro listado VHDL.

CONCLUSIONES



Comprobamos que los contadores síncronos tienen un funcionamiento rápido y las salidas cambian todas a la vez y al ritmo de reloj.



Se comprobó el funcionamiento de los registros. A partir de su estructura interna, podemos generalizarla para crear circuitos más complejos que realicen desplazamientos que nosotros queramos por un determinado tiempo.



La carga paralela es útil cuando el usuario desee ingresar un dato al sistema, en vez de esperar a que el sistema llegue al número deseado para iniciar la cuenta. Así como también, las entradas clear síncrono y asíncrono nos permiten reiniciar la cuenta desde 0 sin necesidad de esperar a que el contador llegue por su cuenta.



Se comprueba el funcionamiento de los registros y contadores en todos los casos de cuenta up/down, borrado asíncrono y síncrono, y carga paralela síncrona implementando los circuitos secuenciales en VHDL basándose en la comprensión básica de un circuito que pasa a través de una secuencia de estados en respuesta al evento de un flanco de reloj usando la herramienta Quartus II.

VI.

BIBLIOGRAFIA

1. Morris M. Mano y C.Kime, “Logic and Computer Design Fundamentals”.4th Edition Pearson, 2014 2. S. Brown y Z. Vranesic, “Fundamentals of Digital Logic with VHDL Design”.3rd Edition, Mc Graw-Hill,2009. 3. John F. WAKERLY, Digital Design: Principles and Practices, 4th Edition, Prentice Hall, 2006. 4. Apuntes de clase. 5. Datasheet de los componentes.