PRACTICA8

download PRACTICA8

of 8

description

PRACTICAS

Transcript of PRACTICA8

  • 1

    Resumen

    En esta prctica se realizaron los problemas encargados en

    clase interpretando lo que se peda en cada uno de los

    problemas. Se realizaron la tabla de la verdad de cada uno

    de ellos, se obtuvieron sus ecuaciones por medio de los

    mapas de Karnaught para despus reducirlas por algebra

    booleana, ya obtenidas las ecuaciones, fueron introducidas

    a VHDL para ser programadas en FPGA.

    I. INTRODUCCIN

    Los sistemas combinacionales estn formados por un conjunto de compuestas interconectadas cuya salida, en

    un momento dado, esta nicamente en funcin de la

    entrada, en ese mismo instante.

    Histricamente, los primeros diseos digitales se

    realizaron siguiendo las tcnicas clsicas de sntesis.

    A medida que el grado de complejidad de los circuitos aumentaba, dando lugar a circuitos de mayor grado de

    integracin se tuvo que recurrir a mtodos que permiten

    simular su comportamiento. Los lenguajes de descripcin de hardware (HDL)

    reemplazan la descripcin esquemtica de un sistema

    digital por una descripcin textual.

    En la dcada de 1980 surgi la necesidad de crear un lenguaje normalizado y se desarroll VHDL que fue

    normalizado por el IEEE.

    VHDL permite especificar el comportamiento o la estructura de un sistema empleando jerarquas, tambin

    permite hacer descripciones desde un alto nivel de

    algoritmos hasta un nivel de componentes que pueden

    compartir la misma descripcin.

    Las siglas FPGA significan Field Programable Gate

    Array. Como su nombre indica, se trata de un dispositivo compuesto por una serie de bloques lgicos (puertas,

    registros, memorias, flip/flops, etc) programables, es

    decir, la interconexin entre estos bloques lgicos y su funcionalidad no viene predefinida sino que se

    puede programar y reprogramar.

    II. DESARROLLO

    Dentro de la practica 8, que es la primera parte de los

    diseos combinacionales, se resolvieron, leyeron y

    analizaron los siguientes problemas.

    Problema 1.

    Disee un sistema combinacional capaz de comparar dos nmeros binarios A y B de dos bits

    cada numero, que genere 3 salidas para indicar si

    A=B, AB.

    Problema 4.

    Disee un sistema combinacional capaz de indicar

    la decisin de aceptada o rechazada a una propuesta cuando el porcentaje de las acciones a

    favor es mayor o igual al 60 %.

    Tomando en cuenta que la empresa tiene cuatro accionistas en donde el accionista A tiene el 40 %,

    el B el 30 %, el C el 20% y el D el 10 %, en funcin

    de la votacin de cada uno de los accionistas a

    favor = 1 o en contra = 0, el sistema deber de indicar en la salida Y si cumple.

    Problema 5. Un sistema de alarma contra incendios se

    conectara a cinco conmutadores X1, X2, X3, X4 y

    X5 si se activa uno de estos conmutadores debe de activarse una sirena S1, si se activan dos o mas

    conmutadores en forma simultanea deben

    encenderse la sirena S1 y una segunda sirena S2.

    Al final de cada problema se implementaba el cdigo

    VHDL que nos permita se procedi acceder al diagrama

    de tiempos para comparar nuestras respuestas con la tabla de verdad.

    Para la segunda parte, es decir la practica 9, se

    resolvieron tres problemas ms. El primer problema trata de un semforo donde se

    estableci cuando debera encender y para que autopista.

    Se tenan dos autopistas una de este a oeste y la otra de norte a sur. El semforo de la autopista este a oeste se debe

    de poner en verde siempre que los carriles C y D estn

    Elena Gabriela Amador Toledo 113166; Rosalva Ortega Ruiz 112542 Universidad Autnoma de Ciudad Jurez

    Departamento de Ingeniera Elctrica y Computacin Circuitos digitales. Grupo B

    [email protected] ; [email protected]

    DISEO COMBINACIONAL MEDIANTE VHDL

  • 2

    ocupados, o cuando algunos de estos estn desocupados y

    los carriles A y B no estn ocupados. El otro semforo norte-sur siempre estar en verde

    cuando A y B estn ocupados, siempre y cuando C y D

    estn desocupados, o bien cuando A o B estn ocupados

    pero C y D estn vacantes. Para cuando no circula vehculo alguno el semforo que

    estar encendido ser este-oeste.

    En el segundo problema se busca encontrar una salida que

    nos muestra el voto de cinco jueces respecto a cierta

    competencia. Las salidas sern dos S1 y S0. Cuando el voto es 4-1 o

    5-0 a favor la salida ser igual a S1, S0= 1,1. Cuando el

    voto es 4-1 o 5-0 en contra la salida ser igual a S1, S0=

    0,0. Si la votacin es 2-3 o 3-2 la competencia debe continuar y la salida ser S1, S0= 1,0.

    El tercer y ltimo problema de esta parte de la prctica se tienen tres salidas: S0 que nos muestra las combinaciones

    impares, S1 indica las combinaciones pares y S2 seala

    que las combinaciones de las seales de entrada representan nmeros primos. Las entradas para el sistema

    combinacional sern seis.

    Despus de leer cada problema se realizaron las tablas de verdad correspondientes. Con los resultados de la tabla de

    verdad se establecieron sentencias para crear un cdigo e

    implementar el circuito por medio del programa ISE. Se cre un programa para cada problema dependiendo de las

    condiciones que se indicaban.

    III. RESULTADOS

    Parte 1

    Resultados del problema 1.

    Despus del anlisis del problema 1 se muestra en la

    siguiente tabla el comparador donde las salidas son las marcadas en colores distintos y las entradas que son A0,

    A1, B0, B1.

    Tabla 1. Tabla de la verdad del comparador o del primer problema.

    A0 A1 B0 B1 A=B AB

    0 0 0 0 1 0 0

    0 0 0 1 0 1 0

    0 0 1 0 0 1 0

    0 0 1 1 0 1 0

    0 1 0 0 0 0 1

    0 1 0 1 1 0 0

    0 1 1 0 0 1 0

    0 1 1 1 0 1 0

    1 0 0 0 0 0 1

    1 0 0 1 0 0 1

    1 0 1 0 1 0 0

    1 0 1 1 0 1 0

    1 1 0 0 0 0 1

    1 1 0 1 0 0 1

    1 1 1 0 0 0 1

    1 1 1 1 1 0 0

    Despus de haber visto cmo debe reaccionar nuestro

    circuito se procedi a dar el siguiente cdigo:

    entity comprador is

    Library IEEE;

    Use IEEE.STD_LOGIC_1164.ALL;

    Port (A: in STD_LOGIC_VECTOR (1 DOWNTO 0);

    B : in STD_LOGIC_VECTOR (1 DOWNTO 0);

    Y : out STD_LOGIC_VECTOR (2 DOWNTO 0); end compador;

    architecture Behavioral of comparador is

    begin

    IF (A=B) THEN Y = "010"

    ELSE IF (A

  • 3

    Figura2.- Esquema del comparador y bloques de compuertas.

    Al hacer click en cada una de las compuestas se puede ver

    como cada combinacin o comparacin est formada por

    compuestas AND mientras que la salida est constituida

    con una compuerta OR.

    Resultados del problema 4.

    Despus de analizar el problema se siguieron los pasos anteriores.

    Tabla 2. Tabla de la verdad del circuito combinacional del segundo problema

    En el que se implanto el siguiente cdigo:

    Entity voto is

    Port (A: IN STD_LOGIC_VECTOR (3 DOWNTO 0)

    ;

    Y: out std_logic); end voto;

    architecture Behavioral of voto is begin

    Y

  • 4

    Y para concluir los problemas con la prctica 8 se realiz

    el problema 5. El cual se demostr con la siguiente tabla.

    Tabla 3. Tabla de la verdad del quinto problema en la practica 8.

    X1 X2 X3 X4 X5 S1 S2

    0 0 0 0 0 0 0

    0 0 0 0 1 1 0

    0 0 0 1 0 1 0

    0 0 0 1 1 1 1

    0 0 1 0 0 1 0

    0 0 1 0 1 1 1

    0 0 1 1 0 1 1

    0 0 1 1 1 1 1

    0 1 0 0 0 1 0

    0 1 0 0 1 1 1

    0 1 0 1 0 1 1

    0 1 0 1 1 1 1

    0 1 1 0 0 1 1

    0 1 1 0 1 1 1

    0 1 1 1 0 1 1

    0 1 1 1 1 1 1

    1 0 0 0 0 1 1

    1 0 0 0 1 1 0

    1 0 0 1 0 1 1

    1 0 0 1 1 1 1

    1 0 1 0 0 1 1

    1 0 1 0 1 1 1

    1 0 1 1 0 1 1

    1 0 1 1 1 1 1

    1 1 0 0 0 1 1

    1 1 0 0 1 1 1

    1 1 0 1 0 1 1

    1 1 0 1 1 1 1

    1 1 1 0 0 1 1

    1 1 1 0 1 1 1

    1 1 1 1 0 1 1

    1 1 1 1 1 1 1

    Despus se aplic el siguiente cdigo:

    entity alarmavsincendio is

    Port (A: in STD_LOGIC_vector( 4 downto 0 );

    S : out std_logic_vector (1 downto 0) );

    end alarmavsincendio; architecture Behavioral of alarmavsincendio is

    begin process (A)

    begin

    if (A = "00000") then S

  • 5

    Parte 2

    Resultados del problema 1.

    Despus de analizar las condiciones del primer problema,

    la tabla del verdad del problema del semforo queda de la siguiente manera:

    Tabla 4. Tabla de verdad circuito combinacional problema 1

    D C B A E-W N-S

    A0 A1 A2 A3 Y0 Y1

    0 0 0 0 1 0

    0 0 0 1 0 1

    0 0 1 0 0 1

    0 0 1 1 0 1

    0 1 0 0 1 0

    0 1 0 1 0 0

    0 1 1 0 0 0

    0 1 1 1 0 0

    1 0 0 0 1 0

    1 0 0 1 0 0

    1 0 1 0 0 0

    1 0 1 1 0 0

    1 1 0 0 1 0

    1 1 0 1 0 0

    1 1 1 0 0 0

    1 1 1 1 0 0

    Como ya se haba mencionado despus de tener la tabla

    de verdad se cre un cdigo para implementar el circuito

    que se desea. En la figura 8 se muestra el cdigo correspondiente al primer problema.

    Figura 8. Cdigo problema 1

    Figura 9. Diagrama esquemtico problema 1

    En la figura 9 se visualiza el diagrama donde se representan las compuertas utilizadas para la creacin del

    circuito del primer problema analizado.

    Resultados del problema 2.

    Para el problema 2 se sabe que cuando la votacin es 4-1

    o 5-0 a favor la salida ser igual a 11, en cambio cuando es 4-1 o 5-0 en contra la seal de salida ser igual a 00.

    En cualquier otro caso la salida ser 01.

    Teniendo eso en cuenta se realiz la tabla de verdad

    mostrada en la tabla 5. Despus con estos resultados se

    cre el cdigo para dicho circuito, este cdigo se muestra

    en la figura 10.

    Tabla 5. Tabla de verdad circuito combinacional problema 2.

    J1 J2 J3 J4 J5 S0 S1

    0 0 0 0 0 0 0

    0 0 0 0 1 0 0

    0 0 0 1 0 0 0

    0 0 0 1 1 0 1

    0 0 1 0 0 0 0

    0 0 1 0 1 0 1

    0 0 1 1 0 0 1

    0 0 1 1 1 0 1

    0 1 0 0 0 0 0

    0 1 0 0 1 0 1

    0 1 0 1 0 0 1

    0 1 0 1 1 0 1

    0 1 1 0 0 0 1

    0 1 1 0 1 0 1

    0 1 1 1 0 0 1

    0 1 1 1 1 1 1

    1 0 0 0 0 0 0

    1 0 0 0 1 0 1

  • 6

    1 0 0 1 0 0 1

    1 0 0 1 1 0 1

    1 0 1 0 0 0 1

    1 0 1 0 1 0 1

    1 0 1 1 0 0 1

    1 0 1 1 1 1 1

    1 1 0 0 0 0 1

    1 1 0 0 1 0 1

    1 1 0 1 0 0 1

    1 1 0 1 1 1 1

    1 1 1 0 0 0 1

    1 1 1 0 1 1 1

    1 1 1 1 0 1 1

    1 1 1 1 1 1 1

    Figura 10. Cdigo problema 2

    Resultados del problema 3.

    Para este tercer problema se busca representar en la salida

    S0 los nmeros impares, en la salida S1 los pares y los

    nmeros primos en la salida S2.

    Los nmeros pares en binario siempre terminan en 0 y

    los nmeros impares en 1. Los nmeros primos se saben

    que son los que solo se pueden dividir entre dos nmeros los cuales es el uno y l mismo.

    Sabiendo lo anterior se cre la tabla de verdad la cual cuenta con seis entradas y tres salidas como ya se haba

    mencionado. Y se muestra con mayor claridad en la tabla

    6.

    Tabla 6. Tabla de verdad circuito combinacional problema 3

    E0 E1 E2 E3 E4 E5 S0 S1 S2

    0 0 0 0 0 0 0 1 0

    0 0 0 0 0 1 1 0 0

    0 0 0 0 1 0 0 1 1

    0 0 0 0 1 1 1 0 1

    0 0 0 1 0 0 0 1 0

    0 0 0 1 0 1 1 0 1

    0 0 0 1 1 0 0 1 0

    0 0 0 1 1 1 1 0 1

    0 0 1 0 0 0 0 1 0

    0 0 1 0 0 1 1 0 0

    0 0 1 0 1 0 0 1 0

    0 0 1 0 1 1 1 0 1

    0 0 1 1 0 0 0 1 0

    0 0 1 1 0 1 1 0 1

    0 0 1 1 1 0 0 1 0

    0 0 1 1 1 1 1 0 0

    0 1 0 0 0 0 0 1 0

    0 1 0 0 0 1 1 0 1

    0 1 0 0 1 0 0 1 0

    0 1 0 0 1 1 1 0 1

    0 1 0 1 0 0 0 1 0

    0 1 0 1 0 1 1 0 0

    0 1 0 1 1 0 0 1 0

    0 1 0 1 1 1 1 0 1

    0 1 1 0 0 0 0 1 0

    0 1 1 0 0 1 1 0 0

    0 1 1 0 1 0 0 1 0

    0 1 1 0 1 1 1 0 0

    0 1 1 1 0 0 0 1 0

    0 1 1 1 0 1 1 0 1

    0 1 1 1 1 0 0 1 0

    0 1 1 1 1 1 1 0 1

    1 0 0 0 0 0 0 1 0

    1 0 0 0 0 1 1 0 0

    1 0 0 0 1 0 0 1 0

    1 0 0 0 1 1 1 0 0

    1 0 0 1 0 0 0 1 0

    1 0 0 1 0 1 1 0 1

    1 0 0 1 1 0 0 1 0

    1 0 0 1 1 1 1 0 0

    1 0 1 0 0 0 0 1 0

    1 0 1 0 0 1 1 0 1

    1 0 1 0 1 0 0 1 0

    1 0 1 0 1 1 1 0 1

    1 0 1 1 0 0 0 1 0

    1 0 1 1 0 1 1 0 0

  • 7

    1 0 1 1 1 0 0 1 0

    1 0 1 1 1 1 1 0 1

    1 1 0 0 0 0 0 1 0

    1 1 0 0 0 1 1 0 0

    1 1 0 0 1 0 0 1 0

    1 1 0 0 1 1 1 0 0

    1 1 0 1 0 0 0 1 0

    1 1 0 1 0 1 1 0 1

    1 1 0 1 1 0 0 1 0

    1 1 0 1 1 1 1 0 0

    1 1 1 0 0 0 0 1 0

    1 1 1 0 0 1 1 0 0

    1 1 1 0 1 0 0 1 0

    1 1 1 0 1 1 1 0 1

    1 1 1 1 0 0 0 1 0

    1 1 1 1 0 1 1 0 1

    1 1 1 1 1 0 0 1 0

    1 1 1 1 1 1 1 0 0

    El cdigo utilizado para este problema se muestra en la

    figura 11 donde la salida nos mostrar los nmeros

    impares que no son primos y la condicin en la que se muestran los nmeros pares y que son a la vez primos.

    Figura 11. Cdigo nmeros impares problema 3

    En la figura 12 se muestra la otra parte del cdigo donde se muestran las condiciones para que en la seal de salida

    se vean los nmeros impares y primos. La ltima

    condicin es para cualquier otra seal de entrada nos muestre como salida los nmeros pares nicamente.

    Figura 12. Cdigo nmeros pares problema 3

    IV. CONCLUSIONES

    En esta prctica se realizaron los problemas que daban

    ambas prcticas y a su vez se hicieron sus tablas de verdad, donde, despus se hizo el algoritmo usando diferentes comandos vistos en clase.

    Los sistemas combinacionales son utilizadados en

    circuitos sencillos y en esta prctica pudimos ver algunos ejemplos bsicos en la cual se utilizan. Estos sistemas

    combinacionales producen una respuesta instantnea, es

    decir, las salidas se pueden calcular a partir de la combinacin de los valores de las entradas en el mismo

    instante. Esto sistemas al poder sencillos de hacer tiene

    muchas utilizaciones bsicas .

    Rosalva Ortega Ruiz.

    En esta prctica se utiliz el conocimiento adquirido en

    clase para utilizar los comandos IF, ELSE, VECTOR,

    entre otros, con la finalidad de entender que mediante estos comandos podemos ahorrarnos el paso de los mapas

    de Karnaugh aparte de las largas ecuaciones que hay que

    escribir en el programa Xilinx. Fue repasado el conocimiento adquirido en laboratorio de

    control y practicas anteriores ya que tuvimos que definir

    las variables que utilizamos, y usar programas con los que ya habamos trabajado antes en clase.

    Elena Gabriela Amador Toledo.

  • 8

    V. Bibliografa

    M. Morris Mano; Escalona Garca, Roberto; Duchn Snchez, Gonzalo; Diseo Digital, Pearson Educacin, 2003.

    C. H. Roth, Jr.; Fundamentos de Diseo Lgico; Thomson, 2005.