Vous êtes sur la page 1sur 5

Informe Laboratorio 2 3 - 4, Sistemas Digitales 1, Profesor Wilmar Diaz

PRACTICA LABORATORIO SISTEMAS DIGITALES


Carlos Quiroga Cdigo 2011170055
e-mail: condebrocken@hotmail.com

Diego Martin Cdigo 2006170042


e-mail: stipmaster.n1@hotmail.com

RESUMEN: El siguiente informe de laboratorio se basa en la aplicacin de diseos de circuitos digitales programados por medio del lenguaje VDHL y dispositivos lgicos programable (FPGA BASYS 2), aplicando previos conocimientos en electrnica digital.

1 INTRODUCCIN
El VHDL es un lenguaje de programacin amplio que fue creado para modelar y disear circuitos digitales, es un lenguaje de descripcin de hardware que facilita el diseo ya que posee un nivel de abstraccin mayor, ahorrando detalles de implementacin y posee mayor facilidad para realizar modificaciones y gran capacidad para modelar circuitos de gran complejidad y gran tamao.

2 DISEOS
2.1 VISUALIZACION ESTATICA
Para empezar se implementa un diseo el cual muestra el funcionamiento de la visualizacin esttica en la BASYS 2, creamos un cdigo de programa como el siguiente:

Para este cdigo declaramos 4 variables de entrada tipo vector (3:0), (m, n, o y p), las cuales adquieren la informacin suministrada por el usuario mediante los interruptes (SW0 SW7) y los puertos JA y JB, estas variables ingresan a un multiplexor de 4 entradas las cuales se muestran a la salida del mux por medio de una salida x(3:0), para poder seleccionar que entrada ira a la salida se asigna a un selector s(1:0) el cual se encargara de asignar la salida del mux, las combinaciones se muestran segn la siguiente tabla:
s1 ) (: 0 0 0 1 1 0 1 0 1 sld a a i x3 ) (: 0 m n o p

Ahora implementamos un decodificador de 2 a 4 para seleccionar las salidas a que display van asignadas por medio del selector s(1:0), en la FPGA BASYS 2 los display de 7 segmentos estn en configuracin nodo comn por esto creamos una variable AN(3:0) la cual se encarga de asignar un valor a cada display de forma manual :

Informe Laboratorio 2 3 - 4, Sistemas Digitales 1, Profesor Wilmar Diaz


.

2.2 REFLEJO
Para nuestro segundo laboratorio vamos a implementar un diseo el cual muestra como somos capaces de reaccionar ante un estimulo ptico, para esto implementamos el cogido siguiente:

A continuacin mostramos la tabla de verdad para este decodificador:

s(1:0 AN(3: ) 0) 0 0 1 1 0 1 0 1 AN0 AN1 AN2 AN3

Ahora implementamos un codificador de BCD a 7 SEGMENTOS, para esto debemos analizar como va ser la visualizacin de cada numero en el display, para asignar que led de los siete segmentos debe prender o apagar creamos una variable llamada SEG (6:0), donde cada segmentos esta asignado a una letra y los cuales con 1 apagan y con 0 encienden ejemplo:

De igual manera lo implementamos para los otros nmeros o letras que se quieran visualizar. Por ultimo se muestra la configuracin completa de nuestro diseo:

Informe Laboratorio 2 3 - 4, Sistemas Digitales 1, Profesor Wilmar Diaz


.
Donde declaramos una variable de la salida (led) la cual se activa despus de 5 segundos iniciado el programa, cuando led esta en 1 activa los contadores para el registro de las milsimas, centsimas, decimas y segundos que se visualizaran en el display 7 segmentos, cuando los contadores incrementen y tomen el valor de 9 cada uno los display 7 segmentos apagaran y prendern cada segundo manteniendo el valor de 9999

Para reset declaramos una variable R que cuando esta en 1 pone en cero todos los contadores para que reinicie la secuencia. Para hacer la visualizacin dinmica acoplamos un contador I(1:0) a la entrada del decodificador 2 a 4 el cual controla la variable AN (3:0) , se realiza un divisor de frecuencia para que cuando este incremente con respecto al reloj interno de la BASYS 2, se le asigna a cada incremento una posicin en AN, para que cambie tan rpido que nosotros no podamos visualizar el cambio, este tiempo es:

Para la configuracin del display 7 segmentos aplicamos lo mismo que en la visualizacin esttica. Declaramos una variable (para) que cuando este en 0 para los contadores y los deja cargados con el ultimo dato el cual se visualiza, este resultado es la velocidad de reflejo que tenemos para un estimulo ptico.

Informe Laboratorio 2 3 - 4, Sistemas Digitales 1, Profesor Wilmar Diaz


.

2.3 REGISTROS DE DESPLAZAMIENTO


Se quiere realizar un diseo que cuando ingrese un dato de 4 bit este mediante una orden cambie sus bit entre si y lo visualic en los led de salida de la BASYS 2, Para esto implementamos el siguiente cdigo:

Para la primera configuracin cuando carga este en 000 se aplica SHIFT LEFT 0, se desplaza a la izquierda y el bit (0) se carga con un 0, esto se carga en la variable UNO(3:0). Para la segunda configuracin cuando carga este en 001 se aplica SHIFT LEFT 1, se desplaza a la izquierda y el bit (0) se carga con un 1. esto se carga en la variable DOS(3:0). Para la tercera configuracin cuando carga este en 010 se aplica RIGTH 0, se desplaza a la derecha y el bit (3) se carga con un 0. esto se carga en la variable TRES (3:0). Para la cuarta configuracin cuando carga este en 011 se aplica RIGTH 1, se desplaza a la derecha y el bit (3) se carga con un 1. esto se carga en la variable CUATRO3:0). Para la quinta configuracin cuando carga este en 100 se aplica ROTATE RIGHT, rotacin hacia la derecha, el bit(3) tomara la posicin (0) y el (2) la (1) y as sucesivamente dejando el bit (3) con el dato del bit(0), esto se carga en la variable CINCO(3:0). Para la sexta configuracin cuando carga este en 101 se aplica ROTATE LEFT, rotacin hacia la derecha, el bit(o) tomara la posicin (1) y el (1) la (2) y as sucesivamente dejando el bit (0) con el dato del bit (3), esto se carga en la variable SEIS(3:0). Para otras configuraciones (OTHERS) el valor registrado en dato(3:0) se visualizara en los leds. Despus de tomar alguna de las anteriores configuraciones estas se asignan dependiendo el caso a una variable VISUAL que es la que refleja el cambio en los led de la BASYS 2. La siguiente figura muestra la secuencia.

Creamos un reloj para la configuracin del cambio de estado que puede ser igual al implementado en la practica 2.1, se crea una variable HABILITA que cuando este en 1 cargue una variable DATO(3:0) (ingresada por el usuario) , y se crea una variable REGISTRO (3:0), que cargue los datos de DATO(3:0), cuando esto cargue implementamos las siguientes configuraciones:

Informe Laboratorio 2 3 - 4, Sistemas Digitales 1, Profesor Wilmar Diaz


.

3 REFERENCIAS
[1] G. Obregn-Pulido, B. Castillo-Toledo and A. Loukianov, A globally convergent estimator for n frequencies, IEEE Trans. On Aut. Control. Vol. 47. No 5. pp 857-863. May 2002. [2] H. Khalil, Nonlinear Systems, 2nd. ed., Prentice Hall, NJ, pp. 50-56, 1996. [3] Francis. B. A. and W. M. Wonham, The internal model principle of control theory, Automatica. Vol. 12. pp. 457-465. 1976. [5] Control Toolbox (6.0), Users Guide, The Math Works, 2001, pp. 2-10-2-35. .

Vous aimerez peut-être aussi