Práctica3

6
Registros en VHDL Tipo: Formato tipo Reporte técnico 1. Introducción En este apartado el profesor se especifica el contexto en el que se encuentra el tema sobre el que se desarrollará la práctica con conceptos claros y concisos. 2. Objetivo Describa en VHDL, realice la simulación y compruebe el comportamiento de un registro de corrimiento de 3 bits de función extendida cuyas funciones son: hold, carga en paralelo del dato de entrada D de 3 bits, corrimiento a la derecha con entrada serial Right, corrimiento a la izquierda con entrada serial Left, corrimiento circular a la derecha, corrimiento circular a la izquierda, corrimiento aritmético a la derecha (mantiene signo) y corrimiento aritmético a la izquierda (entra 0). 3. Planteamiento del problema Para la realización de la presente práctica es necesario tener claro como resolver el problema. El registro de corrimiento función extendida es similar al registro universal solo que con unas cuantas aplicaciones extras. Es fácil darse cuenta que para llevar acabo cada función necesitara de selectores para habilitarlas. En esta caso será una MUX de 3-1. De tal manera que si los selectores están en “000” el registro se encuentre en HOLD, claro que es preferible comenzar con una combinación de los selectores diferentes a estas para evitar que las salidas se indeterminen. Cuando los selectores se encuentren en “001” las salidas del registro (las cuales son Q1, Q2 y Q3) se cargaran en paralelo, esto es que copear las entradas de D1, D2 y D3. Así cuando los

Transcript of Práctica3

Page 1: Práctica3

Registros en VHDL

Tipo: Formato tipo Reporte técnico

1. Introducción En este apartado el profesor se especifica el contexto en el que se encuentra el

tema sobre el que se desarrollará la práctica con conceptos claros y concisos.

2. Objetivo

Describa en VHDL, realice la simulación y compruebe el comportamiento de un registro de corrimiento de 3 bits de función extendida cuyas funciones son: hold, carga en paralelo del dato de entrada D de 3 bits, corrimiento a la derecha con entrada serial Right, corrimiento a la izquierda con entrada serial Left, corrimiento circular a la derecha, corrimiento circular a la izquierda, corrimiento aritmético a la derecha (mantiene signo) y corrimiento aritmético a la izquierda (entra 0).

3. Planteamiento del problema

Para la realización de la presente práctica es necesario tener claro como resolver el problema. El registro de corrimiento función extendida es similar al registro universal solo que con unas cuantas aplicaciones extras.

Es fácil darse cuenta que para llevar acabo cada función necesitara de selectores para habilitarlas. En esta caso será una MUX de 3-1. De tal manera que si los selectores están en “000” el registro se encuentre en HOLD, claro que es preferible comenzar con una combinación de los selectores diferentes a estas para evitar que las salidas se indeterminen. Cuando los selectores se encuentren en “001” las salidas del registro (las cuales son Q1, Q2 y Q3) se cargaran en paralelo, esto es que copear las entradas de D1, D2 y D3. Así cuando los selectores sean “010” la función será de corrimiento lógico a las derecha, brevemente explicaremos en qué consiste esto. Si los selectores están en “011” la función es de corrimiento lógico a la izquierda. De otro manera si los selectores están en “100”, la función es de corrimiento circular a la derecha. Si los selectores están en “101”, la función que se debe realizar es de corrimiento circular a la izquierda. Si los selectores están “110”, la función es de corrimiento aritmética a la derecha. Finalmente si lo selectores están en “111” los acción que debe realizar es de corrimiento aritmético a la izquierda

Page 2: Práctica3

Práctica 3. Registros en VHDL

1. Diagrama a bloques del Registro de Corrimiento de función extendida

4. Marco teórico

Para elaborar un registro primero es necesario sabe qué es un registro. Un registro lo definimos como un series de flip-flops.En el cual cada cambio de sus salidas depende de los flancos de un reloj.

Ahora para saber que es lo que nuestro circuito va realizar necesitamos definir cada función, empezando con la primera que es HOLD, lo único que hace esta función es mantener el estado anterior de las salidas sin importar las entradas.

La siguiente función es la de carga en paralelo. Esta función esta bastante sencullla, las entradas pasan directamente a ser la salidas. Es decir si al vector D le damos el valor de “001”, eso es precisamente lo que la salida Q vector va a mostrar.

Existen dos desplazamientos lógicos (logical shifts) también llamados corrimientos lógicos los cuales son hacia la izquierda (left shift) y el desplazamiento lógico hacia la derecha (right shift). En el desplazamiento lógico los bits de un registro son desplazados una o más posiciones hacia la derecha o hacia la izquierda. Los bit que salen del registro por un extremo se pierden y en el otro extremo del registro se rellena con un bit cero por cada bit desplazado.

2. Corrimiento lógico hacia la izquierda 3. Corrimiento lógico hacia la derecha

Page 3: Práctica3

Práctica 3. Registros en VHDL

Ahora bien el corrimiento circular hacia la derecha e izquierda a diferencia de el corrimiento lógico, el bit que sale por un extremo durante un corrimiento se retroalimenta en el otro extremo.

4. Corrimiento circular a la izquierda 5. Corrimiento circular hacia la derecha

Finalmente tenemos lo que es el corrimiento aritmético hacia la derecha o la izquierda. El corrimiento aritmético hacia la izquierda es exactamente igual al corrimiento lógico hacia la izquierda. Lo que esto hace es desplazar los bits una posicion hacia la izquierda lo cual equivale a una multiplicación por 2 independiente de si es un numero entero con signo o sin signo.

6. Corrimiento aritmético hacia la izquierda 7. Corrimiento aritmético hacia la derecha

5. Desarrollo del Sistema

Se debe enunciar el proceso (metodología) mediante el cual resolvieron el problema propuesto en forma de pasos y la forma en que los van realizando.

Muestren todos los detalles del diseño (ecuaciones, consideraciones, supuestos, etc) haciendo referencia a tablas, diagramas, dibujos, simulaciones, gráficas, etc. debidamente enumerados y con un pie de figura descriptivo. Las figuras deben ir centradas.

Para el caso de las simulaciones, se deberá indicar los tipos de datos con los que se probó el sistema, el tipo de pruebas que realizó, justificar el tipo de pruebas, mostrar gráficas, tablas, el tipo de herramienta (software) empleada, su precisión.

Page 4: Práctica3

Práctica 3. Registros en VHDL

Se deben especificar los dispositivos utilizados, circuitos y sistemas finales.

6. Análisis de ResultadosMostrar los resultados obtenidos de la prueba de los circuitos.Realizar diagramas de tiempos obtenidos directamente de la medición en

circuito.Pueden incluirse tablas y/o gráficas y/o imágenes, etc.Debe haber una interpretación de los datos presentados y se debe verificar si

corresponden con los datos esperados, es decir, compare los resultados teóricos con los prácticos; en caso de encontrar discrepancias presente argumentos plausibles que las justifiquen.

Si hubo algún tipo de falla o error en la realización de la práctica, este es el lugar donde se tiene que mencionar, además de lo que se hizo o se podría hacer para corregirla.

7. Conclusiones

Ya que los resultados están incluidos en la sección anterior, aquí se debe exponer claramente si se considera que el problema se resolvió satisfactoriamente y por qué.

8. Referencias

Escriba los libros o revistas o sitios de internet que consultaron siguiendo el formato de las prácticas anteriores.

9. Apéndices

La lectura de este documento debe ser ágil y sin distracciones, de tal manera que es importante que si se desea abordar algún tópico con mayor detalle y es demasiado extenso para dejarlo en el cuerpo principal del documento, ubíquelo en un apéndice. Este recurso le da orden y fluidez al reporte sin restarle detalle. Por ejemplo, si desea usted poner las hojas de especificaciones de las componentes utilizadas, puede hacerlo aquí.

Como se les indicó en las instrucciones aquí deben poner una tabla que contenga los siguientes datos:

Actividad Responsable Fecha de entrega ¿Cumplió?