paper grupo 1 opal

Upload: edwin-phillips

Post on 12-Oct-2015

24 views

Category:

Documents


3 download

TRANSCRIPT

  • TRABAJO DE INVESTIGACION:

    OPAL

    Universidad de las Fuerzas Armadas ESPE

    Departamento de Elctrica y electrnica

    Juan Garca ([email protected])-Leonardo Mantilla([email protected]) -Javier

    Muglisa([email protected])-Alexander Villacis([email protected])

    Abstract- El lenguaje OPAL es, un sistema

    de desarrollo de diseo completo PLD

    (Dispositivo lgico programable). este

    lenguaje le da al diseador la posibilidad

    de utilizar el lenguaje de mquina de

    estados, ecuaciones booleanas de varios

    niveles, las funciones de la tabla de

    verdad mejoradas, o cualquier

    combinacin de los tres. El presente

    paper describe las principales

    caractersticas de OPAL para crear

    aplicaciones para PLD y se creara una

    aplicacin sencilla que mostrara de forma

    clara el uso del software.

    1. PLD (dipositivo lgico

    programable)

    Son circuitos integrados que ofrecen a los

    diseadores en un solo chip, un arreglo

    de compuertas lgicas y flip-flops. El

    usuario lod prgrama para implementar

    funciones lgicas y as, una manera ms

    sencilla de reemplazar varios circuitos

    integrados estndares o de funciones

    fijas. Un PLD tpico est compuesto de

    arreglos de compuertas lgicas, uno de

    ellos a base de compuertas AND al que se

    le denomina Plano AND y el otro de

    compuertas OR, denominado Plano OR .

  • 1.1 CLASIFICACIN DE LOS PLD

    FIG 1 ILUSTRACIN CLASIFICACIN DE

    LOS PLDs

    DIFERENCIA ENTRE LAS ARQUITECTURAS

    DE LOS PLDs

    DIAGRAMA 1 DIFERENCIA ENTRE LAS

    ARQUITECTURAS DE LOS PLDs

    2. OPAL

    El paquete de software OPAL consiste en

    el intrprete de comandos grficos, tanto

    para DOS y Windows, cuenta con tres

    mdulos ejecutables (EQN2JED.EXE,

    JED2EQN.EXE y PAL2GAL.EXE), que son

    un conjunto de libreras.

    Los archivos de entrada contienen

    ecuaciones booleanas y etiquetas de

    comandos que estn escritas en el

    formato de archivo EQN. Los archivos de

    Los PLDs representan menor costo para los

    fabricantes.

    Pueden reemplazar funciones de otros

    dispositivos lgicos.

    Reduccin de espacio en las tarjetas de circuito

    impreso

    Simplificacin del alambrado entre chips y

    otros

    Disminucin en los requerimientos de

    potencia ( por consiguiente menor

    consumo de energa )

    Realizacin de aplicaciones especiales no encontradas en circuitos integrados de funciones

    fijas

    La programacin se lleva a cabo por medio de conexiones fusibles; de tal

    forma que en una compuerta OR, una entrada con conexin fusible

    Fundida o Quemada ( fusible abierto ) funcione como un cero lgico y una

    conexin intacta como el valor de la(s) variable(s) de entrada.

  • entrada son utilizados por el mdulo de

    EQN2JED para crear mapas JEDEC que

    contienen los datos de programacin

    para un dispositivo de destino. Al crear

    sus propios archivos de entrada, puede

    utilizar el paquete de software OPAL

    como parte de un sistema de desarrollo

    de diseo completo PLD (Dispositivo

    lgico programable).

    Cmo funciona OPAL?

    El objetivo final de cualquier paquete de

    software PLD es crear un mapa JEDEC de

    los estados de fusibles del PLD que se

    pueden descargar a un programador de

    dispositivos. El mapa JEDEC contiene

    datos dependientes del dispositivo, como

    la asignacin de pines, el nmero de

    fusibles de cada trmino del producto, el

    tipo de retroalimentacin, y as

    sucesivamente.

    La actual generacin de paquetes de

    software PLD se esfuerza por ser

    independiente del dispositivo; un diseo

    puede ser construido sin ningn

    conocimiento del dispositivo de destino

    para el diseo. Los diseadores no

    necesitan preocuparse acerca de la

    arquitectura del dispositivo de destino.

    Son libres para concentrarse en el diseo

    del sistema.

    .

    2.1 Conceptos de OPAL

    El lenguaje OPAL es una solucin de alta

    gama. Este lenguaje le da al diseador la

    posibilidad de utilizar el lenguaje de

    mquina de estados, ecuaciones

    booleanas de varios niveles, las funciones

    de la tabla de verdad mejoradas, o

    cualquier combinacin de los tres. Esto le

    da la libertad de diseo para elegir la

    aplicacin que mejor se adapte a la tarea

    de diseo especfico.

    OPAL est diseado para llevar esto un paso ms all. En lugar de slo proporcionar independencia

    de dispositivo, tambin suministramos la independencia

    de la herramienta

    Todos los formatos de archivo compatibles (OPAL, PLA, EQN,

    JEDEC) son completamente "abierta" y compatible con las

    herramientas de software reconocidas.

    En el nivel ms bajo, la lgica se puede expresar en el formato

    estndar de suma de productos (SOP).

    Este formato puede ser compilado en el mapa JEDEC del

    PLD especfico. Ninguna manipulacin lgica ms se

    realiza en este nivel, por lo que los diseadores que desean el

    mayor grado de control sobre el procesamiento de la lgica

    puede entrar diseos en este nivel.

    Sin embargo, incluso en este nivel, OPAL s prev mapear automticamente la

    lgica en un PLD especfica a travs de una opcin de asignacin de pines

    automtico. Esta caracterstica est disponible en OPAL

  • 2.2 Ventanas de Opal

    VENTANA PRINCIPAL DE OPAL

    FIG 2 VENTANA PRINCIPAL DE OPAL

    Se encuentran los Ttulos de las

    Ventanas , que contienen las opciones

    de trabajo del programa. Cada uno de los

    Ttulos de las Ventanas , tiene una

    letra resaltada; lo queindica, que dicha

    ventana podr ser seleccionada, con solo

    teclear la letra resaltada del Titulo . En

    la parte inferior se encuentran teclas

    rpidas para algunas funciones y que

    ejecutaran la operacin sealada con

    solo oprimir la tecla de funcin. F1 HELP

    nos permitir visualizar la ayuda en cada

    opcin con solo teclear F1.

    VENTANA FILE

    FIG 3 VENTANA FILE DE OPAL

    La ventana File contiene nueve opciones

    y al igual que los Ttulos de las Ventanas

    cada una de las opciones tiene tambin

    una letra resaltada y al oprimir alguna de

    ellas se seleccionara la funcin

    correspondiente, otra forma de

    seleccionar las opciones se hace

    mediante el cursor ( flechas del teclado )

    seguidas de un ENTER

    VENTANA VIEW

    FIG 4 VENTANA VIEW DE OPAL

  • La ventana View mediante la ventana de

    bsqueda ( ver la opcin Open... de la

    ventana File ) se hace la seleccin rpida

    de archivos segn su extensin:

    VENTANA SIMULATE

    FIG 6 VENTANA SIMULATE DE OPAL

    La ventana Simulate permite realizar la

    simulacin del circuito que se acaba de

    disear dentro de OPAL, dentro de esta

    ventana se encuentran dos opciones y

    que con la ayuda de la ventana de

    bsqueda se podrn efectuar ms

    rpidamente la seleccin de los archivos

    de simulacin.

    Opalsim

    Despus de la bsqueda del archivo de

    simulacin ( .ckt ), se proceder a la

    generacin de un archivo ( .Lst ) basado

    en la Tabla de Estados anexada al archivo

    ( .ckt ) donde se podrn visualizar los

    diagramas de tiempos de la Tabla

    mencionada.

    Opalview

    Mediante esta opcin se efecta la

    visualizacin en pantalla de los diagramas

    de tiempos, para esto es necesario que

    exista el archivo que se cre con la

    opcin anterior (.Lst ).

    VENTANA MODULES

    FIG 7 VENTANA MODULES DE OPAL

    La ventana Modules posee nueve

    opciones, cabe hacer mencin que es

    una de las ventanas ms importantes

    dentro del paquete ( Software ) ya que

    dentro de ella se realiza la conversin (

    Ensamble y compilacin ) entre archivos

    2.3 Men de mdulos de vistas

    Este men es muy til durante la fase de

    diseo, cuando el usuario est

    compilando el archivo de origen por

    primera vez. Este men contiene

    opciones que permiten al usuario ver los

    diferentes archivos de salida de la ltima

    intervencin ejecutada.

    Cualquiera de los siguientes archivos se

    puede abrir y se muestra si se tratara de

  • una salida o una entrada del ltimo

    procedimiento ejecutado rpidamente.

    FIG 12 EXTENCIONES DE EJECUCION EN

    OPAL

    2.4 Mdulos de diseo OPAL

    2.4.1 EQN2JED (EQUATIONS TO JEDEC)

    EQN2JED convierte las ecuaciones

    booleanas a un archivo de dispositivo

    especfico JEDEC. el archivo JEDEC

    contiene todos los detalles necesarios los

    cuales pueden ser descargados al

    dispositivo programados de la tarjeta

    programable PLD. El archivo JEDEC es

    compatible con el estndar JEDEC 3B el

    cual es soportado por los dispositivos de

    estndares industriales

    2.4.2 PAL2GAL (PAL TO GAL)

    El mdulo PAL2GAL convierte un archivo

    PAL JEDEC a un archivo GAL JEDEC.

    PAL2GAL primeramente se asegura que

    haya una relacin pin a pin entre el PAL y

    GAL antes de comenzar on la conversin.

    A continuacin como ejemplo se muestra

    una tabla de funciones PAL que pueden

    ser remplazadas por GAL16V8:

    2.4.3 JED2EQN (JEDEC TO BOOLEAN

    EQUATION)

    El mdulo JED2EQN desensambla una

    archivo JEDEC a sus correspondientes

    ecuaciones booleanas.

    Las etiquetas usadas en las ecuaciones

    booleanas bsicas creadas por JED2EQN

    contiene el nmero de pines precedido

    del tipo de seal

    2.5 DISEO DE ELEMANTOS EN OPAL

    En el lenguaje de programacin OPAL,

    todas la seales deben ser definidas

    antes de ser usadas.

    3.5.1 TIPOS DE SEAL

    Existen 5 tipos de seales en OPAL:

    3.5.2 DISEO EN OPAL

    1. Input /

    entradas: seal

    de entrada

    del diseo,

    es unidireccional

    2. Output

    /salidas: seal de

    salida del

    diseo, es

    unidireccional.

    3. Feedbac

    k / realimentacin: seal

    que es entrada y salida,

    es bidirecci

    onal.

    4. Node / nodo: usada

    principalmente

    por ILMC(In

    put Logic

    Macro Cells)

    que es una

    estructura de

    GAL6001

    5. Statebit / bit de estado

    (no soportad

    o por OPALjr)

  • Si queremos implementar un circuito en

    OPAL, podemos utilizar bsicamente tres

    mtodos para describir el

    comportamiento del mismo: captura por

    tabla de verdad captura porecuaciones

    (para circuitos combinacionales) y la

    captura por diagramas deestados (para

    circuitos secuenciales).

    De esta manera podemos implementar muchos circuitos secuenciales sencillos en OPAL para programarlos en un PLD como una GAL sin la necesidad de realizar un diagrama de estado siguiente y simplificar las ecuaciones para cada flip-flop. Adems OPAL nos permite simular nuestro diseo al igual que con un circuito combinacional antes de programar un PLD. 4. EJERCICIO EN OPAL PASOS: 1. BEGIN HEADER {Esta directiva nos permite escribir cualquier tipo de informacin que identifique nuestro cdigo a modo de encabezado} END HEADER

    2. BEGIN DEFINITION {Esta directiva nos abre el campo que nos permite declarar el dispositivo que utilizaremos, nuestras variables de entrada y de salida.} DEVICE GAL22V10; {Especificamos nuestro dispositivo terminando con punto y coma} INPUTS a=5, b=6, c=7, d=8; {Esta palabra reservada nos permite declarar las variables de entrada que nos servirn para formar nuestras ecuaciones, si queremos asignarle algn pin en especial, debemos igualar la variable al nmero de pin en el que queramos que est.} OUTPUTS(com) w=15, x=16, y=17, z=18; {Esta palabra reservada nos habilita la declaracin de las variables de salida, es decir, a lo que sern igualadas nuestras ecuaciones, le agregamos (com) para indicarle al sintetizador que nuestro circuito es combinacional.} SET in1=[a,b]; SET in2=[c,d]; {OPAL nos permite declarar sets de variables. Estos son nombres con los que nos referimos a un conjunto de variables y nos ayuda a trabajar con mltiples entradas salidas al mismo tiempo} END DEFINITION {Como podemos ver hasta ahora, el cdigo es idntico al que utilizamos para la tabla de verdad} 3. BEGIN EQUIATIONS {Esta directiva nos abre el campo para poder escribir nuestras ecuaciones} Nodo1=a*b*c; {OPAL nos permite declarar nodos en nuestro programa, los cuales slo se usan dentro de nuestro dispositivo, no tienen una salida en ningn pin. Si utilizamos

  • nodos, es recomendable declararlos antes de nuestras ecuaciones para llevar un orden, pero esto no es un requisito} w=a+b; x=(a+b)$(/c*b); y=(a==c); {OPAL permite las operaciones lgicas: AND (*), OR (+), XOR ($), NOT (/) y comparaciones como igual (==), diferente (!=), menor (), menor igual (=); as como agrupar trminos con el uso de parntesis} z=(in1==in2); {Tambin es posible trabajar con sets en lugar de variables. De esta manera se facilita la captura de las ecuaciones ya que podemos comparar varios bits a la vez} END EQUATIONS 4.-BIOGRAFAS

    Juan Jos Garca Chvez

    Naci en Quito el 29 de Diciembre de 1986,

    Estudio la primaria en el Instituto Pedaggico

    Manuela Caizares y la Secundaria en el Colegio

    Tcnico Salesiano Don Bosco, se gradu en el ao

    2004 de Bachiller Tcnico en Electricidad, luego

    Ingreso a la Escuela Politcnica Nacional la cual

    tuvo que abandonar por problemas de salud,

    trabajo un periodo corto de tiempo en Cableado

    estructurado e instalaciones elctricas, en 2009

    decidi ingresas a la Escuela Politcnica del

    Ejercito donde Actualmente cursa la carrera de

    Ingeniera Electrnica en Redes y Comunicacin

    de Datos.

    Alexander Villacis Rodrguez:

    Naci en Ambato el 20 de Julio de 1988, Estudio

    la primaria en La Salle de Ambato y la Secundaria

    en el Colegio Tcnico Superior Bolivar, se gradu

    de Bachiller en ciencias, luego Ingreso a la ESPE

    donde actualmente se encuentra estudiando

    ingeniera electrnica en automatizacin y control

    Javier Muglisa Robalino:

    Naci en Quito el 27 de diciembre de 1988,

    Estudio la primaria y secundaria en el Colegio

    Julio Mar Matovelle, se gradu de Bachiller en

    Fisco matemticas, luego Ingreso a la ESPE

    donde actualmente se encuentra estudiando

    ingeniera electrnica en Telecomunicaciones

    Leonardo Mantilla Torres

    Naci en Quito el 30 de Abril de 1987, Estudios

    primarios realizados en la escuela San Jos La

    Salle, secundarios en el colegio Militar Eloy

    Alfaro donde se gradu en Bachiller en Ciencias;

    Actualmente estudia Ingeniera Electrnica en

    Telecomunicaciones 10 mo nivel