1
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Introducción al Hardware Tarjeta de desarrollo
Figura1 La placa de desarrollo Spartan 3E FPGA , incluye como núcleo el dispositivo XC3S500E que incluye 20 multiplicadores dedicados, 4 DCM, 20 BRAM y quinientas mil puertas equivalentes, lo que permite diseñar y testear aplicaciones con un alto grado de procesado. La placa dispone de un gran número de interfaces, tanto análogas ( convertidor ADC 14 bits y DAC de 10 bits) como digitales y recursos de almacenamiento.
Características
Xilinx Spartan 3E (dispositivo de puerta de 500 K),
Programador JTAG integrado
2
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
50 MHz a bordo de reloj,
Flash de 128Mbit,
16Mbit SPI flash,
64Mbyte DDR SDRAM,
4 canales de CAD de 12 bits
ADC de 14 bits de canal dual.
20 por 2 LCD
Codificador rotatorio
8 conmutadores
8 LEDs
Conector Ethernet
VGA connecor
dos conectores de RS232
Figura 2
3
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Distribución de pines encapsulado FG320
Principales componentes Puerto USB
4
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Figura 3
Por medio de este puerto se conecta la tarjeta a la computadora, cuando el programa ha sido instalado correctamente, se enciende un led, e indica que ya puede ser utilizada.
Interruptores (switches) Spartan 3E cuenta con 4 interruptores, localizados en la esquina inferior derecha.
Figura 4
Cuando el interruptor se coloca en la posición de alto, se conecta al FPGA por medio de un pin a 3.3 V, generando un 1 lógico. En caso contrario, cuando se encuentra en la posición bajo, el interruptor se conecta al FPGA por medio de un pin conectado a tierra, un 0 lógico. Un cambio en la posición del interruptor tarda aproximadamente 2 ms para que el valor lógico correspondiente se estabilice en el pin del FPGA. Por lo tanto, no se requiere ningún tipo de circuitería para eliminar los rebotes. Para utilizar los interruptores para un determinado diseño, se debe asignar las señales del circuito a los pines del FPGA que están conectados a los interruptores. Para lograr esto, se utiliza la Tabla 1 en la cual se muestra los parámetros que deben introducirse en la herramienta de Floorplan IO de ISE.
Asignación de pines interruptores
5
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Nombre Localizacion I/O Std Terminal
"SW<0>" L13 LVTTL Pullup
"SW<1>" L14 LVTTL Pullup
"SW<2>" H18 LVTTL Pullup
"SW<3>" N17 LVTTL Pullup
Tabla 1
Interruptores de contacto Dispone de 4 interruptores de contacto, y un interruptor con la capacidad de rotar a la derecha, izquierda y funcionar como interruptor de contacto.
Figura 5
Al presionar el BTN Norte, BTN Sur, BTN Este o BTN Oeste, se conecta al pin a 3.3 V asociado al FPGA, generando un 1 lógico, y un 0 lógico cuando este no se presiona. En algunas aplicaciones se puede utilizar el BTN Sur, como reset. No hay circuito antirebote en los botones, hay que implementarlos en la FPGA!
Asignación de pines interruptores de contacto individuales
6
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Nombre Localizacion I/O Std Terminal
BTN Norte V4 LVTTL Pullup
BTN Sur K17 LVTTL Pullup
BTN Este H13 LVTTL Pullup
BTN Oeste D18 LVTTL Pullup
Tabla 2
Interruptor rotatorio Esta localizado en el centro de los interruptores de contacto individuales, tiene tres botones en uno, los cuales funcionan de la siguiente manera:
El Rot_Center opera de la misma forma que el BTN Norte, BTN Sur, BTN Este o BTN Oeste, por lo tanto al presionar el botón se conecta al pin de 3.3 V asociado al FPGA, generando un 1 lógico, y un 0 lógico cuando este no se presiona.
El Rot_A y Rot_B, se activa como se muestra en la Figura 3.4, dependiendo de la forma que gire, uno de los interruptores abre antes que el otro, de igual manera, al continuar la rotación un interruptor cierra antes el otro, sin embargo al no aplicar movimiento ambos están cerrados.
Figura 6
Asignación de pines interruptores rotatorios
Nombre Localizacion I/O Std Terminal
Rot_A K18 LVTTL Pullup
Rot_B G18 LVTTL Pullup
Rot_C V16 LVTTL Pullup
7
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Tabla 3
Una simple operación hecha o interrumpida, con cualquiera de los botones de contacto o el botón giratorio, según el ojo humano es de lento movimiento, pero en realidad tiene varias fases que son apreciables mediante la lógica digital de alta velocidad. Por lo consiguiente, en la programación se debe considerar los rebotes que estos ocasionan.
¿Hacia qué lado gira?
Un flanco ascendente en ROT_A mientras ROT_B está bajo indica un giro en el sentido de las agujas del reloj.
Un flanco ascendente en ROT_B cuando ROT_A está bajo indica giro en el sentido contrario a las agujas del reloj.
Debe considerarse un efecto llamado “chatter” similar al rebote de los push buttons que puede provocar falsos giros.
Leds indicadoras Spartan 3E Starter Kit tiene 8 luces indicadoras (LEDs). Cada una tiene un lado conectado a tierra y el otro lado conectado a un pin de la tarjeta, por medio de una resistencia limitadora de corriente de 390Y. Cuando el led correspondiente esta en alto, la luz enciende.
8
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Figura 7
Asignación de pines LEDs
Nombre Localizacion I/O Std Drive Slew
LED<7> F9 LVTTL 8 SLOW
LED<6> E9 LVTTL 8 SLOW
LED<5> D11 LVTTL 8 SLOW
LED<4> C11 LVTTL 8 SLOW
LED<3> F11 LVTTL 8 SLOW
LED<2> E11 LVTTL 8 SLOW
LED<1> E12 LVTTL 8 SLOW
LED<0> F12 LVTTL 8 SLOW
Tabla 3
Reloj La tarjeta cuenta con tres fuentes de entradas de reloj, tal como se muestra en la Figura.
9
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Figura 8
Entradas de reloj disponibles en la tarjeta
Clock Input FPGA Pin IOSTANDARD
CLK_50 MHz C9 LVCMOS33
CLK_SMA A10 LVCMOS33
CLK_AUX B8 LVCMOS33
Tabla 4
Pantalla LCD La pantalla LCD, tiene la capacidad de mostrar dos líneas de 16 caracteres. La FPGA controla el LCD por medio de un bus de datos de 4 bit, como se muestra en la Figura . El LCD es una forma práctica de desplegar información, utilizando el código ASII
10
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
.
Nombre Localizacion I/O Std Drive Slew
LCD_E M18 LCMOS33 4 SLOW
LCD_RS L18 LCMOS33 4 SLOW
LCD_RW L17 LCMOS33 4 SLOW
SF_D<8> R15 LCMOS33 4 SLOW
SF_D<9> R16 LCMOS33 4 SLOW
SF_D<10> P17 LCMOS33 4 SLOW
SF_D<11> M15 LCMOS33 4 SLOW
Tabla 5
Evitando escribir en dos partes
Si bien el LCD soporta una interface de 8 bits, la placa utiliza una interfazde 4 bits. Las líneas de datos son compartidas con la Strata Flash.
11
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Para evitar escribir/leer ambos componentes deben activarse/desactivarse los mismo. Existe un modo de operación de la Strata Flash(en 8 bits) que permite utilizar los en forma simultánea.
Control y datos
Puertos periféricos Puerto VGA La placa tiene un puerto de video VGA con un conector DB15, de forma que es posible conectar directamente un monitor.
12
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Se utilizaran cinco puertos: HS (sincronismo horizontal), VS (sincronismo vertical), R (rojo), G (verde) y B (azul).
Figura xx
Las señales de color (R, G y B) son analógicas y determinan la intensidad de color de cada pixel. Sin embargo, en la placa están conectadas a un puerto digital (entre 0 y 3.3V) a través de una resistencia de 270Y. Por tanto, se tiene solo dos niveles por color, con los que se puede representar 8 colores como se muestran en la Tabla xx .
R G B Color
0 0 0 Negro
0 0 1 Azul
0 1 0 Verde
0 1 1 Cian
1 0 0 Rojo
1 0 1 Fusia
1 1 0 Amarillo
1 1 1 Blanco
13
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Nombre Localizacion I/O Std Drive Slew
VGA_RED H14 LVTTL 8 SLOW
VGA_GREEN H15 LVTTL 8 SLOW
VGA_BLUE G15 LVTTL 8 SLOW
VGA_HSYNC F15 LVTTL 8 SLOW
VGA_LOC F14 LVTTL 8 SLOW
Tabla 6
Puerto RS232 Este dispositivo tiene dos puertos seriales RS-232: un conector hembra DB9 DCE y un conector macho DB9 DTE. Se puede conectar directamente a la computadora al utilizar el conector estandar. En la Figura se muestra la conexion entre el FPGA y los dos conectores DB9.
14
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Puerto Nombre Localizacion I/O Std Drive Slew
Macho DTE_RXD U8 LVTTL 8 SLOW
DTE_TXD M13 LVTTL 8 SLOW
Hembra DTE_RXD R7 LVTTL 8 SLOW
DTE_TXD M14 LVTTL 8 SLOW
Tabla 6
Puerto PS/2 La tarjeta incluye un puerto PS/2, con la capacidad de conectar un mouse o un teclado. Para lograr la comunicación con el FPGA, ambos usan un reloj y bus serial datos. Tanto el mouse como el teclado utilizan señal de temporización idénticas, de la misma forma usan palabras de 11 bits que incluye un bit de inicio, parada y un bit de paridad. Sin embargo, difieren en el envió de los datos, ya que el mouse cada vez que se mueve transmite tres palabras de 11 bits, en cambio, el teclado cuando se presiona la tecla transfiere una palabra de 11 bits y dos palabras cuando se suelta la tecla. En la Figura se muestra el diagrama de temporización del PS/2.
15
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Conversor analogo digital (LTC1407A-1) El CAD cuenta con dos canales de entrada conectados a la entrada de un amplificador cuya ganancia puede ser programada desde el FPGA. Este amplificador escala la señal de entrada y utiliza una referencia de 1.65V. La señal escalada entra al convertidor analógico digital, que la convierte en una señal digital de 14 bits en CA2. Con la Ecuación 1 se calcula el valor en CA2 a partir del voltaje de entrada.
16
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Tanto el amplificador como el CAD, utilizan un bus serial para la comunicación con el FPGA, en la Figura se muestra el diagrama de temporización.
Temporización captura análoga
Convertidor digital analógico (LTC2624) El CDA cuenta con cuatro canales de salida independientes, como se muestra en la Figura.
17
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
Diagrama del convertidor digital analógico
El valor de voltaje obtenido en la salida depende del voltaje de referencia y el dato enviado y se calcula como indica la Ecuación 2.
Diagrama digital análogo
18
Instituto de Física Universidad de Antioquia
Notas de clase Profesora Lucelly Reyes
DDR SDRAM La tarjeta Spartan-3E incluye una memoria de 512 Mbit (32M x 16) Micron Technology DDR (MT46V32M16) con una interfaz de datos de 16-bit. En la Figura, se puede observar el diagrama de la memoria. Internamente la memoria, está constituida por cuatro bancos, cada uno de ellos contiene 8192 filas que a su vez están compuestas por 511 columnas. De esta forma, cada uno de los bancos se puede comparar con una matriz de 8192 por 511; donde cada una de las sus entradas es una palabra formada por 32 bits.