PII_DEMUX_3_8

3
PRACTICA II. Demultiplexor_3_8 Fonseca Badillo Angélica Rubí Sistemas Digitales Dr. Rene Romero Troncoso División de Ingenierías Campus Irapuato Salamanca, Universidad de Guanajuato Salamanca, México Junio 2/2014 [email protected] Resumen: En este documento se reporta el procedimiento para la programación de una FPGA como un demultiplexor 3 a 8 con lógica negada. Para el cual, se realizó el código y simulación en la herramienta Active-HDL; posteriormente, para la compilación y la programación se utiliza el software Quartus. Introducción El demultiplexor, es un tipo de bloques conmutadores que operan inversamente al demultiplexor. Es un circuito combinacional que conecta selectivamente una señal de entrada a cualquiera de las múltiples salidas, mientras que las demás salidas permanecen es un estado lógico falso. Tiene una entrada de información de datos y n entrada de control que sirven para seleccionar una de las 2 n salidas, por la que ha de salir presente el dato que en la entrada. Esto se consigue aplicando a las entradas de selección, la combinación binaria, la combinación binaria correspondiente a la salida que se desea seleccionar. Desarrollo Realización del esquema. Para el desarrollo del código del demultiplexor 3-8, se hizo el diagrama para sus entradas y salidas. Del diagrama de la Figura 1, se tiene como entrada del dato una señal X, las tres señales de control están definidas por S, y las ocho salidas por Ycon el subíndice correspondiente del 0 al 7. Figura 1. Demultiplexor_3_8 Código y Simulación El código se realizó en Active HDL, y se muestra en la Figura 2 donde se creó un espacio de trabajo llamado Demux_3_8, al igual que el diseño y el código fuente vhdl.

description

En este documento se reporta el procedimiento para la programación de una FPGA como un demultiplexor 3 a 8 con lógica negada. Para el cual, se realizó el código y simulación en la herramienta Active-HDL; posteriormente, para la compilación y la programación se utiliza el software Quartus

Transcript of PII_DEMUX_3_8

  • PRACTICA II. Demultiplexor_3_8

    Fonseca Badillo Anglica Rub

    Sistemas Digitales Dr. Rene Romero Troncoso

    Divisin de Ingenieras Campus Irapuato Salamanca,

    Universidad de Guanajuato

    Salamanca, Mxico

    Junio 2/2014

    [email protected]

    Resumen: En este documento se reporta el procedimiento para la programacin de una

    FPGA como un demultiplexor 3 a 8 con lgica negada. Para el cual, se realiz el cdigo y

    simulacin en la herramienta Active-HDL; posteriormente, para la compilacin y la

    programacin se utiliza el software Quartus.

    Introduccin

    El demultiplexor, es un tipo de

    bloques conmutadores que operan

    inversamente al demultiplexor. Es un circuito

    combinacional que conecta selectivamente

    una seal de entrada a cualquiera de las

    mltiples salidas, mientras que las dems

    salidas permanecen es un estado lgico falso.

    Tiene una entrada de informacin de

    datos y n entrada de control que sirven para

    seleccionar una de las 2n salidas, por la que

    ha de salir presente el dato que en la entrada.

    Esto se consigue aplicando a las entradas de

    seleccin, la combinacin binaria, la

    combinacin binaria correspondiente a la

    salida que se desea seleccionar.

    Desarrollo

    Realizacin del esquema.

    Para el desarrollo del cdigo del

    demultiplexor 3-8, se hizo el diagrama para

    sus entradas y salidas. Del diagrama de la

    Figura 1, se tiene como entrada del dato una

    seal X, las tres seales de control estn definidas por S, y las ocho salidas por Y con el subndice correspondiente del 0 al 7.

    Figura 1. Demultiplexor_3_8

    Cdigo y Simulacin

    El cdigo se realiz en Active HDL,

    y se muestra en la Figura 2 donde se cre un

    espacio de trabajo llamado Demux_3_8, al

    igual que el diseo y el cdigo fuente vhdl.

  • Se agreg la librera IEEE, y el

    paquete IEEE.std_logic_1164.all, que

    proporciona el tipo de seales de datos.

    Despus, se realiz la entidad donde

    se incluyen las seales de entradas y salidas,

    y se define el tipo de cada una. Se tiene la

    seal de seleccin S, definida como entrada

    de tipo vector de 3 bits, del 2 al 0; la seal X,

    definida como entrada de un solo bit; y la

    seal Y como salida tipo vector de 8 bits, del

    7 al 0.

    Posteriormente est la arquitectura,

    en la cual se describi el circuito. Se

    desarrolla para lgica negada, por lo que

    todas las salidas se colocan o inicializan a

    uno. Mediante la sentencia case se describe el

    funcionamiento, donde para cada posible

    valor del selector se asigna en la salida

    correspondiente el valor de la entrada X de

    forma negada, debido a que el circuito es con

    lgica negada.

    Figura 2. Cdigo VHDL

    Realizado el cdigo se compil y

    simul mediante formas de onda. Para el

    selector se le aplic un contador como

    simulador, con cambio de uno cada 50 ns, y

    para la el dato de entrada se le aplic una

    frmula para que sea una seal de uno

    durante 400ns y despus cambie a cero. Los

    resultados de las simulaciones se presentan en

    las Figuras 3 y 4.

    Figura 3. Simulacin con entrada X igual a 1

    Figura 4. Simulacin con entrada X igual a 0

    En la Figura 3, se tiene la simulacin

    para cuando la entrada del demultiplexor es

    uno, se observa que conforme va cambiando

    el valor del selector, el valor negado de la

    entrada, un cero, va escalando por cada

    salida. La Figura 4 es de la simulacin para

    una entrada de cero, debido a que el valor

    negado es uno, y que las salidas estn

    normalmente en un estado de uno, todas las

    salidas estarn en uno independiente del valor

    del selector.

  • Programacin de la FPGA

    Para configurar el dispositivo lgico

    programable, es necesaria la utilizacin de

    Quartus.

    Se cre un proyecto, con el mismo

    nombre de la entidad del cdigo,

    Demux_3_8, y se seleccion el directorio de

    trabajo, el cual es la capeta donde se

    encuentra guardado el cdigo fuente realizado

    en Active-HDL.

    Despus se agreg el archivo del

    cdigo para incluir en el proyecto y se

    seleccion la familia del dispositivo a utilizar,

    Cyclone III, y el nombre de la tarjeta

    EP3C16F484C6.

    Posteriormente se compil el diseo

    cargado y se realiz la asignacin de pines en

    base al manual DE0. Se asignaron tres

    interruptores para el selector, (SW9, SW8 y

    SW7); un interruptor (SW0) para el dato de

    entrada, y ocho leds ( LEDG[0] al LEDG[7])

    para las salidas.

    En la Figura 5 se muestra la

    asignacin de pines, con el nmero

    correspondiente en la FPGA.

    Se compil el proyecto y se programo

    la FPGA exitosamente. Finalmente se revis

    el funcionamiento de la tarjeta ya

    programada.

    Figura 5. Asignacin de Pines para la FPGA

    Funcionamiento

    El circuito funciona de la siguiente

    manera:

    Se tiene 3 interruptores de seleccin,

    con los cuales seleccionar una salida de

    mediante la combinacin binaria de estos

    interruptores, teniendo la posibilidad de

    seleccionar desde la salida Y[0] con 000 en los interruptores, hasta la salida Y[7] con

    111 en los interruptores.

    Las salidas estn representadas por

    leds, los cuales estarn normalmente

    prendidos si no es la salida seleccionada;

    mientras que la salida seleccionada estar

    negada con respecto la seal de entrada, que

    representada por otro interruptor.

    Si el interruptor de entrada esta como

    uno, la salida elegida estar como cero; y si

    esta como cero la entrada, la salida estar

    como uno.

    Conclusin

    Se puso en prctica los conocimientos

    obtenidos en las materias anteriores de

    digital. Se logr recordar el concepto de

    demultiplexor, y el desarrollo para la creacin

    y simulacin del cdigo en Active hdl. Se

    program la FPGA de manera exitosa

    mediante el uso de Quartus.