manual tarjeta cpld

Upload: ignacio-moya

Post on 09-Jul-2015

180 views

Category:

Documents


1 download

TRANSCRIPT

Tarjeta CPLD XC9572XL MANUAL DE USUARIO TARJETA CPLD XC9572XL

Producto diseado y fabricado en Colombia por EM Electrnica Ltda. Derechos reservados

1 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO

Tarjetao o o o o o o

Contenido

CPLD XC9572XL VQ64.

Cable de programacin JTAG DB25 macho para puerto paralelo, longitud 30cm.

Cuatro puertos I/O doble hilera de 20 pines para cable ribbon. Display doble siete segmentos nodo comn. Cuatro pulsadores para seales de entrada. Dip switch de 8 bits para seales de entrada. Voltaje de alimentacin 5 - 9V, Operacin a 3.3V.

o

72 macroceldas, 1,600 compuertas lgicas. 52 pines I/O de usuario, 5ns de retardo entre pines. Frecuencia hasta 178MHz. Ms de 90 trminos producto por macrocelda. Pines I/O tolerantes a seales de 5V, 3.3V y 2.5V. Capacidad de salida de 3.3V o 2.5V. ISP (In System Programmable). Full IEEE Standard 1149.1 B.S. (JTAG)

Mini DVD (1.5GB)

Software Xilinx-ISE Webpack 8.2i. Manual. Documentacin y notas de aplicacin. Ejemplos.

Empaque Caja en cartn corrugado, medidas 17x10x5cm.

Requerimientos Sistema operativo Linux, Windows 98/XP/2000. Puerto paralelo. Adaptador 5 -9 VDC, plug hembra centro positivo.

2 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO

1. Descripcin general:Diagrama de bloques:

7 Segmentos

JTAG

CPLD

Puertos I/O

Entradas de UsuarioDiagrama de Bloques

Las Entradas de Usuario que incluye la tarjeta comprenden: o Cuatro pulsadores individuales. o Ocho interruptores en arreglo de DIP Switch.

Los Puertos I/O (entrada/salida) comprenden cuatro conectores macho de doble hilera de 20 pines para la conexin del CPLD con circuitos externos a la tarjeta. Estos conectores son similares a los puertos o buses IDE de un computador convencional

3 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO Vista frontal y ubicacin de componentes:Jumper Display Puerto JTAG CPLD

Pulsadores

Display 7 Segmentos

Alimentacin

Puertos de Usuario

Regulador

Espacio para oscilador Dip 14

LED

Interruptores DIP Switch

Jumper CLK

Puertos I/O:Puerto 3

Puerto 2

Puerto 4

Puerto 1 4 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO

2. Descripcin de Componentes: Entradas de Usuario (Pulsadores y Dip Switch):

Cuatro pulsadores identificados en la tarjeta como BOTON1, BOTON2, BOTON3 Y BOTON4. Cada uno entrega al CPLD nivel bajo o 0 en la posicin natural y nivel alto o 1 cuando se presiona. Estas seales estn igualmente conectadas a los Puertos de la tarjeta. En las tablas de pines se identifican con las abreviaturas BOT 1 .. BOT 4. Ocho interruptores identificados en la tarjeta como DIP SWITCH. Cada uno entrega al CPLD nivel bajo o 0 en la posicin ON y nivel alto o 1 en la otra posicin. Estas seales estn igualmente conectadas a los Puertos de la tarjeta. En las tablas de pines se identifican con las abreviaturas DSW1..DSW8. 7 Segmentos:

Como bloque de salida se incluyen dos Display`s siete segmentos con nodo comn independiente para cada display. Por otra parte, los ctodos de cada segmento en ambos display`s son comunes entre si, con el fin de permitir la manipulacin de estos por multiplexacin. Las seales de control son en todos los casos negadas, es decir, un segmento prender en el momento en que la seal de seleccin (7S1 o 7S2 en las tablas de pines) se encuentre en cero lgico, al igual que la seal que controla cada segmento (SA, SB, SC, SD, SE, SF, SG, DP). Los segmentos y el punto decimal en cada display se identifican as:

7S15 de 24

7S2

Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO Puertos I/O:

El CPLD XC9572XL incluye un total de 52 pines libres de entrada/salida, los cuales son conectados en su totalidad a los puertos identificados en la tarjeta como PUERTO1, PUERTO2, PUERTO3 y PUERTO4, permitiendo al usuario manipular completamente el chip a su acomodo. Estos puertos de entrada/salida incluyen las seales de los pulsadores, dip switch y siete segmentos. Cada puerto I/O tiene dos pines conectados a la seal VCC y dos a la seal GND de la tarjeta. En las tablas de pines se identifican con las abreviaturas X PTY que significa pin X del Puerto Y.

Jumpers CLK y 7SEG:Se identifican en la tarjeta como CLK y 7SEG. Permiten desactivar el oscilador o los display en la tarjeta desconectando sus seales de los pines del CPLD. Puerto de programacin JTAG:

La programacin de la tarjeta se realiza a travs del puerto JTAG del CPLD conectado al puerto paralelo de un PC mediante el cable incluido con la tarjeta. Los pines del puerto JTAG estn igualmente conectados a los puertos I/O. Alimentacin:

La tarjeta se alimenta con: 1) Fuente DC de 5 a 9V, con plug hebra de centro positivo. 2) Bateras convencionales o recargables de 9V o arreglos de bateras AA o AAA de 6V.

6 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO

3. TABLAS DE PINES:Tabla 1: Por orden de pines del CPLD

CPLD Usuario Puerto DescripcinP1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12 P13 P14 P15 P16 P17 P18 P19 P20 P21 P22 P23 P24 P25 P26 P27 P28 P29 P30 P31 P32 DSW 1 DSW 2 DSW 3 DSW 4 DSW 5 DSW 6 DSW 7 CLK DSW 8 BOT 4 BOT 3 BOT 2 BOT 1 4 PT1 3 PT1 6 PT1 5 PT1 8 PT1 7 PT1 10 PT1 9 PT1 12 PT1 11 PT1 14 PT1 13 PT1 16 PT1 15 PT1 6 PT2 5 PT2 8 PT2 7 PT2 10 PT2 9 PT2 12 PT2 11 PT2 14 PT2 16 PT2 17 PT2 18 PT2 19 PT2 20 PT2 I/O1 I/O2 VCC I/O3 I/O4 I/O5 I/O6 I/O7 I/O8 I/O9 I/O10 I/O11 I/O12 GND I/O13 I/O14 I/O15 I/O16 I/O17 I/O18 GND I/O19 I/O20 I/O21 I/O22 VCC I/O23 TDI TMS TCK I/O24 I/O25

CPLD Usuario Puerto DescripcinP33 P34 P35 P36 P37 P38 P39 P40 P41 P42 P43 P44 P45 P46 P47 P48 P49 P50 P51 P52 P53 P54 P55 P56 P57 P58 P59 P60 P61 P62 P63 P64 -7S1 7S2 SB SA DP SC SD SG SE SF 6 PT3 5 PT3 8 PT3 7 PT3 10 PT3 9 PT3 12 PT3 11 PT3 14 PT3 13 PT3 16 PT3 15 PT3 18 PT3 17 PT3 4 PT4 3 PT4 6 PT4 5 PT4 8 PT4 7 PT4 10 PT4 9 PT4 12 PT4 11 PT4 14 PT4 13 PT4 16 PT4 I/O26 I/O27 I/O28 I/O29 VCC I/O30 I/O31 I/O32 GND I/O33 I/O34 I/O35 I/O36 I/O37 I/O38 I/O39 I/O40 I/O41 I/O42 I/O43 TDO GND VCC I/O44 I/O45 I/O46 I/O47 I/O48 I/O49 I/O50 I/O51 I/O52

7 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO

Tabla 2. Por orden de pines de los Puertos:PUERTO 1 CPLD Usuario P2 DSW 2 P1 DSW 1 P5 DSW 3 P4 P7 DSW 4 P6 P9 DSW 5 P8 DSW 6 P11 P10 P13 DSW 7 P12 P16 DSW 8 P15 CLK VCC GND VCC GND PUERTO 2 CPLD Usuario VCC GND VCC GND P18 P17 P20 BOT 1 P19 P23 BOT 2 P22 P25 BOT 3 P24 P27 TDI TMS TCK P31 BOT 4 P32 PUERTO 3 CPLD Usuario VCC GND VCC GND P34 P33 P36 P35 P39 P38 P42 P40 P44 P43 P46 7S1 P45 P48 7S2 P47 PUERTO 4 CPLD Usuario P50 SB P49 P52 SA P51 P57 P56 DP P59 SC P58 P61 P60 SD P63 SE P62 SG P64 SF VCC GND VCC GND -

Pin 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Pin 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Pin 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Pin 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Tabla 3. Por orden de las seales de usuario:DIP SWITCH DSW 1 DSW 2 DSW 3 DSW 4 DSW 5 DSW 6 DSW 7 DSW 8 CPLD P1 P2 P5 P7 P9 P11 P13 P16 PUERTO 4 PT1 3 PT1 5 PT1 7 PT1 9 PT1 10 PT1 13 PT1 15 PT1 BOTON CPLD PUERTO BOT 1 BOT 2 BOT 3 BOT 4 P31 P25 P23 P20 7 PT2 9 PT2 11 PT2 20 PT2 7 SEGMENTOS Segmento A Segmento B Segmento C Segmento D Segmento E Segmento F Segmento G Punto 7 Segmentos 1 7 Segmentos 2 CPLD P52 P50 P59 P60 P63 P64 P62 P56 P46 P48 PUERTO 5 PT4 3 PT4 9 PT4 12 PT4 13 PT4 16 PT4 14 PT4 8 PT4

8 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO

4. Programacin:Pasos a seguir: 1. Instalar el software ISE Webpack. Hecho esto se habr instalado junto con el ISE la herramienta de programacin iMPACT, que se ubica dentro del men de programas: Xilinx ISE 8.2i -> Accesories -> iMPACT. 2. Al abrir el software iMPACT aparecer la siguiente pantalla, donde se da la opcin de abrir el ltimo proyecto. Se puede presionar Cancel para continuar con la programacin:

3. El iMPACT puede ser llamado tambin desde el Project Navigator del ISE, haciendo doble clic Configure devices (iMPACT) dentro del men Generate Programming File dentro del recuadro de procesos:

9 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO

4. En la zona izquierda superior del iMPACT se encuentra un espacio con las diferentes acciones del software; entre ellas se ve una denominada BOUNDARY SCAN, que permite inicializar la cadena JTAG y revisar que dispositivos se encuentran conectados a ella. Al hacer doble clic se ve la siguiente pantalla:

5. Se hace clic derecho en la parte blanca central, para luego hacer clic en el men Initialize Chain para hacer una revisin de que dispositivos estn conectados:

10 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO

11 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO 6. Si no hay ningn problema en la conexin o alimentacin de la tarjeta aparecer lo siguiente:

7. En la parte superior se reconoce la cadena JTAG donde se encuentra conectado nicamente el CPLD. En la ventana adicional que aparece automticamente se selecciona el archivo de configuracin para el dispositivo. Este men puede verse tambin haciendo clic derecho sobre el CPLD y seleccionando la opcin Asign New Cofiguration File:

12 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO

8. Hecho esto se procede a programar el dispositivo; para esto se hace clic derecho sobre el CPLD y se selecciona la opcin Program. Aparecer una ventana con varias opciones; al dar clic en OK se iniciar la programacin (En este momento no es necesario hacer la verificacin de la programacin por lo que se recomienda desactivar la opcin Verify):

13 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO

9. Al finalizar la programacin y la verificacin aparece la siguiente pantalla:

14 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO

Ejemplos de aplicacin:Ejemplo 1: Se implementar un circuito muy bsico que tendr como funcin comunicar directamente las seales del dip-switch con los display`s. La seleccin del display se har con el BOTON4: Como primer paso se crea un nuevo proyecto en el entorno ISE Web-Pack para la Familia XC9500xl y el CPLD XC9572xl 10 y se agrega un nuevo archivo fuente en formato esquemtico:

Ahora se coloca un buffer de 8 puertos que lleven los pines del dip-switch al display de siete segmentos y un negador que se encargar de manipular las seales de control de los display`s mismos:

15 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO

Ahora se crea el archivo UCF donde se indica que pin del CPLD corresponde a cada seal. Para eso se agrega un nuevo archivo fuente:

El archivo final:16 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO Cpld.ucf:NET NET NET NET NET NET NET NET

"display" "display" "display" "display" "display" "display" "display" "display" "dip_sw" "dip_sw" "dip_sw" "dip_sw" "dip_sw" "dip_sw" "dip_sw" "dip_sw"

LOC LOC LOC LOC LOC LOC LOC LOC LOC LOC LOC LOC LOC LOC LOC LOC

= = = = = = = = = = = = = = = =

"p52"; "p64"; "p63"; "p60"; "p59"; "p50"; "p62"; "p56"; "p16"; "p13"; "p11"; "p9"; "p7"; "p5"; "p2"; "p1";

NET NET NET NET NET NET NET NET

NET "Sel0" NET "Sel1" NET "test"

LOC = "p46"; LOC = "p48"; LOC = "p20";

Como ultimo paso se sintetiza el diseo y se genera el archive .JED de configuracin del CPLD.

Generado el archivo se procede a programar el CPLD mediante el proceso ya explicado anteriormente.

17 de 24Lo Nuestro!

Tarjeta CPLD XC9572XL MANUAL DE USUARIO Al programar podr verse que cada switch estar controlando cada led de cada display dependiendo del estado de la seal controlada por el BOTON4.

Ejemplos en VHDL: Multiplexor 4:1: Un multiplexor puede ser implementado en el CPLD de distintas formas como se puede ver a continuacin: En este caso se hace uso de un proceso sensible a las seales de entrada del multiplexor. Esto significa que en cada momento en que alguna de las seales de entrada sufra un cambio, se ejecutar el proceso definido (la sentencia Process). Dentro de este proceso se selecciona cual seal de entrada se conecta con la salida dependiendo de la seal SEL:

library ieee; use ieee.std_logic_1164.all; entity MUX4_1 is port ( Sel : in std_logic_vector(1 downto 0); A, B, C, D : in std_logic; Y : outstd_logic ); end MUX4_1; architecture behavior of MUX4_1 is begin process (Sel, A, B, C, D) --Este proceso se cumple si begin --alguna seal A, B, C, D cambia. if (Sel = 00) then Y