Vous êtes sur la page 1sur 16

PRÁCTICA No.

1
RECONOCIMIENTO DE LA TARJETA ATLYS SPARTAN 6

1. OBJETIVOS

1.1. Objetivo General

• Conocer el funcionamiento básico de la tarjeta ATLYS Spartan 6.

1.2. Objetivos Específicos

• Identificar los bloques que conforman la tarjeta ATLYS Spartan 6, su funcionamiento,


pines y conexiones internas.

• Comparar la tarjeta ATLYS Spartan 6 con otras de tecnología similar, así como los
diferentes lenguajes de programación en los que pueden ser programadas.

2. JUSTIFICACIÓN

La realización de esta práctica le permitirá al estudiante conocer la tarjeta ATLYS Spartan 6,


con sus diferentes módulos, componentes y funciones. Además de identificar los diferentes
pines y su función específica.

3. MARCO TEÓRICO

En la figura 1 se pude ver la tarjeta ATLYS Spartan 6 de Xilinx con cada uno de sus
componentes que serán descritos a continuación.

Figura 1. Tarjeta Atlys Spartan 6.

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 1 de 16
3.1. Descripción

La tarjeta de desarrollo ATLYS es una plataforma de desarrollo que cuenta con una serie de
dispositivos y elementos ya instalados que le permite al diseñador realizar una gran variedad
de proyectos y ponerlos a prueba fácilmente. La ATLYS cuenta con el Spartan – 6 LX45
FPGA de XILINX; las principales características son: Comunicación por medio Ethernet a
velocidades de Gigabits, HDMI, memoria DDR2 de 128MB y de 16bits, puerto USB y salida
de audio; todas estas características y más hacen de la tarjeta ATLYS una de las mejores
tarjetas de desarrollo basadas en FPGA. También cuenta con un procesador embebido para
diseño basados en Microblaze de Xilinx. Esta tarjeta es compatible con todas las
herramientas de software de XILINX, entre los cuales tenemos: ChipScope, EDK y la versión
gratuita de ISE WebPack por lo que los diseños se pueden completar sin costo adicional.

El Spartan – 6 LX45 está optimizado para lógica de alto rendimiento y ofrece:

• 6822 slices, cada uno con cuatro LUTs de 6 de entrada y ocho flip – flops.
• Un bloque de RAM de alta velocidad de 2.1Mbits.
• Cuatro controladores de reloj (8 DCMs y 4 PLLs).
• Seis lazos de seguidores de fase (PLLs).
• 58 slices DSP.
• Velocidad de reloj a más de 500 MHz.

Figura 2. Descripción en bloques del Spartan 6.


La tarjeta ATLYS incluye el sistema más reciente de ADEPT USB2 que ofrece: la
programación del dispositivo, el monitoreo de las fuentes de alimentación en tiempo real,
pruebas automáticas de la tarjeta, entradas y salidas virtuales además se han simplificado la
función de transferencia de datos del usuario.

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 2 de 16
Esta tarjeta soporta una gran variedad de diseños de IP Core (Núcleo con propiedad
intelectual) y varios diseños de referencia que están disponible en el sitio web
ww.digilentinc.com en la sección de FPGA y la pagina referente a la ATLYS.

En sus características se tienen:

• FPGA Spartan-6 LX45 de XILINX, con encapsulado BGA de 324 pines.


• Memoria DDR2 de 16 bits y 128 MB.
• Ethernet PHY 10/100/1000.
• Puerto USB2 incorporado para la transferencia de datos y programación.
• Puerto USB-UART para comunicación serial con PC.
• Puerto USB HID (para ratón / teclado por medio de microcontrolador PIC24).
• Dos puertos de entrada de vídeo HDMI y dos puertos de salida HDMI.
• Codec de audio AC-97 con: línea de entrada, línea de salida, micrófono y auriculares.
• Monitor de energía para todas las fuentes de alimentación.
• Memoria FLASH SPI de 16 MB x4 para almacenamiento de datos y de configuración.
• Oscilador CMOS de 100MHz.
• 48 pines de entradas o salidas conectados a los conectores de expansión.
• Entradas y salidas generales como: 8 LEDs, 6 botones y 8 interruptores.
• Adaptador de voltaje de 20W y cable USB.

3.2. Configuración

Una vez que el interruptor principal de la tarjeta ATLYS es cerrado, esta debe ser
programada antes de poder realizar cualquier función. El FPGA se puede configurar de tres
maneras posibles: Por medio de una PC a través de un puerto USB, un archivo de
configuración almacenado en la memoria FLASH SPI o por un archivo que puede ser
transferido desde una memoria USB conectada al puerto USB – HID.

Figura 3. Configuración del Spartan 6.

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 3 de 16
El jumper (puente) JP11 selecciona entre los modos USB – JTAG y ROM PROG. Si el
jumper JP11 está abierto el FPGA se configura automáticamente por medio del archivo
almacenado en la memoria FLASH SPI, si se pone en corto el jumper JP11 el FPGA
permanecerá inactivo hasta que se realice un procedimiento de configuración desde una PC
por medio del puerto USB – JTAG. El jumper JP12 debe estar conectado siempre, ya sea a
3.3V o 2.5V; si el jumper JP12 no está conectado el bank 2 no será alimentado y tampoco los
pull – up para: CCLK, DONE, PROGRAM_B e INIT_B. El FPGA se colocará en un estado de
RESET por lo que no se podrá programar.

Para la creación de proyectos y programación del FPGA existen varios programas de


distribución libres y gratuitos que pueden ayudar a desarrollar nuestras ideas, tanto la
empresa XILINX como DIGILENT distribuyen programas con los cuales podemos programar
el FPGA y la memoria FLASH SPI. Los archivos de configuración se almacenan dentro del
FPGA en celdas de memoria SRAM; estos archivos definen las funciones lógicas y las
conexiones de los circuitos internos que se han diseñados para ser ejecutados por el FPGA,
una vez que se ha configurado el FPGA los datos permanecerán almacenados has ta que se
quite la alimentación (que se apague la tarjeta), hasta que se vuelva a configurar por otra
entrada de programación como por ejemplo: la entrada de programación B (PROG_B) o
hasta que se sobre escriba con una nueva información de un archivo más reciente. Los
archivos que se descargan desde la computadora a la tarjeta ATLYS pueden ser de
extensión: .bit o .svf. Los archivos de configuración que se almacena en una memoria USB
debe ser de tipo .bit exclusivamente; mientras que los archivos que se cargan a la memoria
FLASH SPI pueden ser: .bit, .bin o .mcs. El programa de XILINX ISE WebPack y el programa
EDK pueden generar los archivos: .bit, .svf, .bin y .mcs; los cuales pueden ser resultado de
códigos escritos en: lenguaje VHDL a través de módulos VHDL, por medio de lenguaje
VERILOG, captura esquemática, EDK utilizando MicroBlaze. Para transferir cualquiera de
estos archivos a los espacios de memoria de la tarjeta ATLYS se puede utilizar el programa
ADEPT de DIGILENT o por medio del programa iMPACT de XILINX. El puerto utilizado para
realizar la transferencia de estos archivos es el puerto USB – JTAG etiquetado como PROG
en la ATLYS (ADEPT USB).

Durante un proceso de programación del FPGA por medio del archivo .bit o .svf que es
transferido desde una computadora, el archivo es escrito directamente al FPGA por medio
del puerto USB – JTAG; mientras que cuando se desea enviar el archivo a la memoria
FLASH SPI, el proceso se realiza en dos pasos, primero se envía un pequeño archivo de
configuración directamente al FPGA para que sea programado con una rutina que le permite
establecer comunicación con la memoria FLASH y luego se le envía los datos el archivo que
deseamos almacenar en la memoria FLASH SPI para que sea el FPGA el que finalmente
guarde los datos en la memoria FLASH, para el usuario este procedimiento es tan sencillo
como enviar los datos directo a la memoria FLASH; pero el procedimiento real esta
subyacente en el proceso de comunicación y le es invisible al usuario. Una vez que el archivo
ha sido enviado a la memoria FLASH se puede utilizar para configurar desde ella al FPGA en
el siguiente POWER – RESET que tenga la tarjeta ATLYS, siempre y cuando el jumper JP11

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 4 de 16
esté abierto. El archivo almacenado en la memoria FLASH estará disponible siempre, sin
importar cuantas veces se encienda o se apague la tarjeta, solo se perderá si se sobrescribe
información en la memoria.

Figura 4. Identificación del Jumper (JP11) en la Atlys Spartan 6.


Como el FPGA se puede programar por medio de un archivo .bit que este almacenado en
una memoria USB conectada en el puerto USB – HID (etiquetado como HOST), la memoria
debe estar formateado con el tipo de archivos FAT16 y el archivo debe estar almacenado en
el directorio raíz de la memoria USB. Para que la configuración se realice desde la memoria
USB está debe estar introducida en el puerto USB – HID antes de encender la tarjeta ATLYS
y también debe estar conectado el jumper JP11 para que el proceso de configuración inicie
por medio del puerto USB – HID. Cuando el jumper JP11 está conectado y se realiza un
proceso de power – reset el proceso de configuración inicia buscando si hay algún dispositivo
de memoria USB valido conectado en el puerto USB – HID y luego verifica si en el dispositivo
de memoria USB hay algún archivo valido en el directorio raíz que pueda ser transferido al
FPGA, es importante señalar que solo debe haber un archivo con la extensión .bit en el
directorio raíz. Si no se encuentra una memoria USB, hay más de un archivo .bit o no hay
archivo valido (.bit) entonces el FPGA entra en un estado de espera, en ese estado la
configuración debe realizarse desde la computadora ya sea por medio del programas de
XILINX o de DIGILENT.

3.3. Fuente de alimentación

La ATLYS requiere una fuente de alimentación externa de 5V con capacidad de corriente de


4A como valor recomendado y conectarlo en un jack de 2.1mm con centro positivo. Los
reguladores de voltajes utilizados en la ATLYS son de la empresa LINEAR TECHNOLOGY

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 5 de 16
los cuales proporcionan los voltajes adecuados. Los niveles son: 3.3V, 2.5V, 1.8V, 1.0V y
0.9V. Además, están presente los componentes necesarios para que estos reguladores
funcionen.

En la siguiente tabla se muestra información adicional sobre los niveles de voltajes


disponibles en la ATLYS.

Las cuatro principales fuentes de voltaje de la ATLYS están conectadas al LTC2481 que es
un ADC que permite monitorear el valor de la corriente con una precisión de 1%. Estas
corrientes pueden ser visualizados por medio de una computadora utilizando el programa
ADEPT de DIGILENT. Las fuentes de alimentación están controladas por el interruptor SW8
el cual apaga la tarjeta; el led LD15 indica que los niveles de voltajes son los adecuados, si
este led no enciende puede que sea por algún voltaje que no está dentro del 10% del voltaje
nominal.

Hay un jumper que habilita un nivel de voltaje en el conector de expansión, en los puertos
HDMI y USB. Este interruptor transfiere el voltaje VU al nodo Vswt siempre y cuando el
interruptor SW8 esté cerrado.

Figura 5. Configuración de la alimentación de la tarjeta Atlys Spartan 6.

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 6 de 16
3.4. Memoria DDR2

La ATLYS tiene incorporado una memoria DDR2 de 1GB conectada al bloque controlad or de
memoria en el FPGA. Las ATLYS de versiones anteriores utilizan una memoria
MT47H64M16 – 25E DDR2 de la marca MICRON, mientras que las nuevas versiones de las
tarjetas ATLYS utilizan P3R1GE3EGF G8E DDR2 de la marca MIRA; para tener acceso a la
hoja de datos del dispositivo de MIRA se debe realizar una búsqueda en Internet para
P3R1GE3JGF, ambos dispositivos ofrecen un bus de datos con capacidad de 16 bits y 64M
localizaciones de memoria; la velocidad a la cual han sido probadas es de 800MHz con lo
cual es suficiente para aplicaciones hechas con el oscilador incorporado en la ATLYS que es
de 100MHz.

La interface cumple con la configuración de pines y señales necesarias para ser utilizadas
con el XILINX MEMORY INTERFACE GENERATOR (MIG); puede consultar la guía de
usuario para obtener más información. La interfaz soporta la señalización SSTL18,
direccionamiento a todas las localidades de memoria, datos, reloj y señales de control con
retardos compatibles, y control de impedancia. Las señales del bus de dirección y las señales
de control están conectadas a resistencias de 47 Ohms y estas a 0.9V Vtt y las señales de
datos usan terminación ON – DIE (ODT) lo cual es característico de las memorias DDR2. En
los dispositivos DDR2 se tienen dos señales de reloj apareadas que ayudan a corregir los
efectos del sesgo en las señales de reloj convencionales, ambas señales de reloj están
conectadas al FPGA.

Cuando se genera un núcleo MIG para la memoria DDR2 de la marca MIRA seleccionamos
un dispositivo tipo EDE1116AXXX – 8E lo que dará como resultado que los tiempos de las
señales sean correcto. Cuando se genera un núcleo para la memoria DDR2 de la marca
MICRON se puede seleccionar por su propio nombre de la lista que aparece en el asistente.
Para verificar que dispositivo DDR2 está colocado en su tarjeta ATLYS debe comprobar el
dispositivo etiquetado como IC13, en el cual puede ver directamente sobre el mismo
dispositivo para ver de qué marca es.

Figura 6. Conexión entre Spartan 6 y DDR2 con sus direcciones.

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 7 de 16
3.5. Memoria flash

La memoria FLASH que esta incorpora en la ATLYS es una memoria NUMONYX de 128Mb
modelo N25Q12 con protocolo de comunicación serial SPI. La memoria está organizada en
un formato de 16 bits por 16MB para el almacenamiento del archivo de configuración. Los
archivos de configuración que pueden ser almacenados en la memoria FLASH son archivos
con las extensiones: .bit, .bin o .mcs; para lo cual se puede utilizar el programa ADEPT de la
empresa DIGILENT. Un archivo de configuración puede ocupar menos de 12Mb lo que deja
hasta 116Mb utilizable por el usuario, para que el usuario pueda transferir datos fácilmente a
esta memoria puede utilizar las funciones del programa ADEPT, mediante este programa se
puede transferir datos de un computador a la memoria o bien extraer los datos almacenados
en la memoria. Otra posibilidad es realizar un programa propio en el FPGA que transfiera los
datos desde la FLASH. En el sitio web de la empresa DIGILENT hay información de
referencia para poder diseñar una interface propia, inclusive puede encontrar un ejemplo que
controla la memoria FLASH.

En la ATLYS hay un programa de fábrica que permite la comprobación de las principales


características de la tarjeta, este programa se encuentra almacenado en la memoria FLASH
de fábrica y puede ser descargado de la página web del DIGILENT.

Figura 7. Conexión entre Spartan 6 y la memoria flash.

3.6. Ethernet

Para ofrecer capacidad de ETHERNET PHY a la ATLYS se utiliza un integrado de la


empresa MARVELL ALASKA de tres modos y modelo 88E1111. Además, está el conector
RJ – 45 de la marca HALO modelo HFJ11 – 1G01E. Los modos MII y GMII son compatibles
con las velocidades 10/100/1000 Mb/s.

Cuando se produce un evento de power – reset el integrado carga los valores por defecto lo
cuales son:

• Modo MII/GMII sobre interface de cobre.


• Auto negociación habilitada para el uso de cualquiera de las velocidades, predefinido
como esclavo.

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 8 de 16
• Interface MDIO seleccionada, Dirección PHY MDIO = 00111.
• Sin pausa asimétrica, sin pausa de MAC, cruce automático habilitado.
• Detección de energía en el cable deshabilitada (Modo de suspensión deshabilitado) y
la polaridad de interrupción es bajo.

La datasheet del integrado está disponible en el sitio de MARVELL solo con un acuerdo de
confidencialidad (NDA), por lo que tiene que contactar con MARVELL para más información.

Para diseño basado en EDK puede utilizar el núcleo xps_ethernetlite de 10/100 Mbps o el
xps_II_temac de 10/100/1000 Mbps para incorporar en sus diseños la capacidad de un
ethernet PHY.

Figura 8. Conexión entre Spartan 6 y Ethernet con sus direcciones.


Con la ATLYS puede utilizar el BSB (Base System Builder) el cual soporta la generación
automática de paquetes para una aplicación básica que puede ser personalizada para sus
propios diseños, esta aplicación básica puede servir como ayuda para comprender el uso de
este dispositivo.

Con el ISE DESIGNS puede crear un núcleo con propiedad intelectual (IP Core) para un
controlador de Ethernet MAC de 3 modos.

3.7. Puertos HDMI de entrada y salida

La ATLYS tiene 4 puertos HDMI, entre los cuales tenemos 2 puerto HDMI de entrada o
salidas con buffer HDMI, otro puerto HDMI de salida solamente con buffer, también tiene un
puerto HDMI de entrada o salida sin buffer que generalmente se utiliza como salida. Tres de
los puertos HDMI son de tipo A y el puerto que no tiene buffer usa el conector tipo D
colocado por la parte de abajo de la placa exactamente debajo del PMOD. El puerto sin

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 9 de 16
buffer comparte señales con el conector PMOD. Esto limita el ancho de banda de las señales
de vídeo que puede producir o recibir principalmente cuando se utilizan cables HDMI largos.

Figura 9. Conexión entre Spartan 6 y HDMI.

Ya que los sistemas de vídeo HDMI y DVI utilizan las mismas señales de tiempo, se puede
utilizar un adaptador para convertir las salidas HDMI en salidas DVI. Los puertos HDMI no
soportan pantallas analógicas por lo que no es posible conectar pantallas con puerto VGA.
Los puertos HDMI de 19 pines incluyen: 4 canales diferenciales de datos, 5 conexiones a
tierra (GND), un pin para control de consumo eléctrico, un bus de dos hilos para datos que es
esencialmente un bus I2C, un detector de conexión activa, un pin de fuente de 5V con
capacidad de entregar hasta 50mA y un pin reservado. De todos estos pines solo están
conectados al FPGA los pines de: los canales diferenciales de datos y los pines de bus I2C.

En la siguiente tabla se muestran las conexiones disponibles:

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 10 de 16
Para diseños EDK se puede utilizar el núcleo de propiedad intelectual (IP core) xps_tft para
controlar el puerto HDMI, ademas se debe incluir el controlador asociado al núcleo. El núcleo
xps_tft lee los datos de vídeo de la memoria DDR2 y los envía a puerto HDMI para que
pueda ser visualizado en un monitor externo. En el sitio web de DIGILENT hay un proyecto
que puede servir de referencia al usuario para comprender el funcionamiento del controlador
de los puertos HDMI, el proyecto consiste en una barra de color degradada en el monitor
conectado en el puerto HDMI. En otro diseño de referencia hay un ejemplo en donde una
señal de entrada es leída del puerto J3 y almacenada en la memoria DDR2, luego el dato de
la memoria DDR2 se presentada por el puerto J2. El nucleo xps_iic se incluyó para controlar
el DDC del puerto J2, esto permite que los monitores detecten a la ATLYS.

3.8. Codec de audio (AC – 97)

La característica de codec de audio de la ATLYS se ofrece por medio del integrado de


NATIONAL SEMICONDUCTOR modelo LM4550 el cual es un codec de audio AC-97, al cual
se le ha conectado 4 conector de audio, lo cuales tienen las siguientes funciones: salida de
audio (J5), salida para auriculares (J7), línea de entrada (J4) y entrada de micrófono (J6).

Figura 10. Conexión entre Spartan 6 y el Codec de audio.


La resolución de los datos puede ser de hasta 18 bits y soporta un muestreo hasta 48KHz. El
muestreo de la señal de entrada (señal a grabar) y el muestreo de la señal de salida (señal a
reproducir) pueden ser de diferentes tasas. La entrada de micrófono es una entrada tipo
simple (mono); mientras que las demás son todas estéreo. La salida de auricular dispone de
un amplificador de 50mW interno en el integrado codec de audio.

En el siguiente cuadro se muestra un resumen de las señales de audio. El codec de audio


LM4550 es compatible con el estándar AC – 97 v2.1 de intel y se conecta como un codec
primario (ID1=0, ID0=0).

También hay un proyecto de referencia EDK en el sitio web de DIGILENT que sirve para
probar las características de grabación y reproducción de audio.

En la siguiente tabla se muestra las señales de control y de datos AC – 97. Todas las
señales son de tipo LVCMOS33.

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 11 de 16
Nombre de la Pin del
Función del pin
Señal FPGA
Salida de reloj serial de 12.288MHz, es controlado por la
AUD – BIT – CLK L13
frecuencia del cristal de 24.576MHz
Entrada de datos seriales provenientes del FPGA al codec.
Los datos enviados por este terminal contienen la
AUD – SID T18 información para la configuración y los datos de la señal de
audio en formato de PCM. Los datos SDI son válidos en el
flanco de subida de la señal AUD – BIT – CLK
Salida de datos del codec hacia el FPGA. Los datos en el
pin SDO son enviados por el codec de audio al FPGA en los
AUD – SDO N16 cuales se transmite la configuración y datos de audio del
DAC. Los datos del SDO son válidos en el flanco de subida
de la señal de reloj AUD – BIT – CLK
La entrada de sincronización del codec de audio. Cada
trama dura 256 periodos de la señal AUD – BIT – CLK.
SYNC es normalmente un pulso de 48KHz con un ciclo de
trabajo de 6.25% (16/256). La señal SYNC es muestreada
durante el flanco de subida de AUD – BIT – CLK y el codec
toma la primera muestra correcta de la señal de
AUD – SYNC U17
sincronización como la orden de inicio de una nueva trama.
Si un pulso de sincronización se produce durante los
siguientes 255 periodos AUD – BIT – CLK será ignorado. El
terminal SYNC es utilizado como entrada para un reset en
caliente. El reset en caliente se utiliza para limpiar un estado
apagado en el códec.
Restablecimiento en Frio. Esta señal es bajo activa provoca
un RESET de hardware que restaura todos los registros y
configuraciones a sus valores por defecto. El RESET se
AUD – RESET T17
debe aplicar una vez que las fuentes se han establecido.
Mientras la señal de RESET este activa la entrada llamada
PC_BEEP se transferida a la salida LINE_OUT.

3.9. Osciladores y reloj

La ATLYS contiene un oscilador de 100MHz conectado al pin L15 (la cual es una entrada de
reloj del banco 1). Esta entrada de reloj puede ser conectada a cualquier controlador de reloj
de SPARTAN-6. Cada controlador cuenta con 2 administradores digitales de reloj (DCMs) y 4
lazos seguidores de fase (PLLs).

Los administradores digitales de reloj proveen señales con cuatro posibles fases, las cuales
son: 0º, 90º, 180º y 270º. También dispone de divisores de reloj por valor entre 2 y 16, y
también por 1.5, 2.5, 3.5 hasta 7.5 y dos salidas de reloj desfasadas que pueden ser

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 12 de 16
multiplicadas por un valor entero entre 2 y 32, y dividirse de forma simultánea por valores
enteros de 1 a 32.

Los Lazos seguidores de fases (PLLs) y los osciladores controlados de voltaje (VCOs) se
pueden programar para generar frecuencias en el rango de 400MHz a 1080MHz mediante la
configuración de tres conjuntos de divisores programables en el momento de la configuración
del FPGA. Las salidas del oscilador controlado por voltaje (VCO) tiene ocho salidas
desfasadas entre si con valores de: 0º, 45º, 90º, 135º, 180º, 225º, 270º y 315º, y se puede
dividir por valores enteros entre 1 y 128.

3.10. Puerto serial (Puente USB – UART)

Con el integrado XR21V1410 de EXAR ofrece la posibilidad a el FPGA de establecer


comunicación con un computador por medio de un puente USB – UART. Con la ayuda de
este puente USB – UART la ATLYS establece comunicación serial mediante la creación de
un puerto virtual COM en la computadora. Para poder utilizar el COM virtual se requiere que
los controladores estén instalados en la computadora según el sistema operativo, los
controladores (driver) se distribuyen gratuitamente y los puede descargar de la página web
de EXAR (www.exar.com). El puerto USB al cual está conectado el puente USB-UART es el
J17 etiquetado como UART. El puente transfiere los datos a la Spartan – 6 por medio de dos
hilos con control de flujo (XON / XOFF). Los pines del FPGA con los cuales está conectado el
puente USB – UART son: TxD=A16, RxD=B16.

Figura 11. Conexión entre Spartan 6 y el Micro – USB.

3.11. HID USB HOST

Además, del FPGA la ATLYS cuenta con un microcontrolador de la marca MICROCHIP y de


la familia PIC24 específicamente PIC24FJ192, el cual se ha programado para ofrecer a la
ATLYS la capacidad de manejar dispositivos HID como teclados y mouse. El conector USB
HOST (J13) es un conector USB tipo A.

Las características de HUB actualmente no están habilitadas, por lo cual solo se puede
conectar un dispositivo y no varios. El microcontrolador se comunica con el FPGA por medio
de un protocolo seria de 2 hilos que da soporte al protocolo PS/2 para que el FPGA vea a el
teclado o mouse como dispositivos directamente conectados, el firmware instalado en el
microcontrolador es transparente para el usuario.

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 13 de 16
Dos pines del microcontrolador están conectados a los pines de programación del FPGA, lo
implica que el FPGA se puede configurar desde una memoria USB conectada al puerto USB
J13. Cuando se produce un POWER – RESET el microcontrolador verifica si hay una
memoria USB conectado al puerto J13 y si esta memoria contiene un archivo valido en su
directorio raíz; si todo es válido el microcontrolador procederá a configurar el FPGA con los
datos almacenados en el archivo de la memoria para que la configuración se realice d e una
forma correcta solo debe haber un archivo valido en la memoria, si hay más de un archivo el
microcontrolador no iniciara el proceso de configuración. El archivo de configuración debe
tener formato .bit para que pueda ser leído por el microcontrolador.

Figura 12. Conexión entre Spartan 6 y el HOST.


Para realizar diseños que utilizan las características HOST HID se puede utilizar el núcleo (IP
Core) standar PS/2. Como siempre en la página de DIGILENT hay proyectos de ejemplo que
funcionan como una referencia para el usuario. El protocolo PS/2 utiliza dos hilos, uno para
los datos y el otro para señal de reloj. La transferencia de datos se realiza mediante tramas
de datos de 11 bit conformador por: 8 bit de datos, 1 de arranque (Start), 1 de parada (Stop)
y otro de paridad. La organización de datos es diferente para el teclado y para el mouse, el
teclado acepta transferencia bidireccional, por ejemplo, el teclado envía datos de la tecla
presionada y el FPGA envía datos de acciones a tomar como encender los leds del teclado
numérico. Las señales de tiempo se muestran en la figura 13. Las señales de datos (SDA) y
las señales de reloj (SCL) solo están activas cuando se está produciendo una transferencia
de datos; cuando no se está produciendo ninguna transferencia de datos las dos señales
están en un nivel alto (1 lógico) y el FPGA debe tener los pines en un estado de entrada.
Para que esto funcione el archivo UCF debe conectar los pines con propiedades de pull – up.

Figura 13. Diagrama de tiempos.

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 14 de 16
3.12. Entradas y salidas básicas

Una de las ventajas de contar con unas tarjetas de desarrollo es contar con hardware
disponible para hacer pruebas y la ATLYS cuenta con una serie de dispositivos para este fin,
entre los cuales podemos mencionar: 6 botones pulsadores, 8 interruptores y 8 led. Estos
dispositivos tienen la finalidad de ofrecer al usuario la posibilidad de hacer pruebas a sus
diseños fácilmente. Además, hay un botón pulsador de color rojo el cual está destinado para
la función de reset del FPGA, en la tarjeta tiene una etiqueta que dice: "RESET". Los botones
pulsadores y los interruptores esta conectados al FPGA por medio de una resistencia para
evitar posibles cortocircuitos accidentales y los leds están en una configuración de cátodos
comunes y en los ánodos tienen conectado en serie una resistencia de 390 ohm que se
conecta al FPGA, por lo general la corriente que circula por los LED cuando están
encendidos es de aproximadamente 1mA.

Figura 14. Conexión entre Spartan 6 y las entradas y salidas básicas.

4. TRABAJO PREVIO

a. Consulte las principales características de la tarjeta Atlys Spartan 6, identificando los


bloques que la conforman, su funcionamiento, pines y conexiones internas.

b. Realizar una comparativa entre las diferentes tarjetas que utilizan una tecnología similar,
tales como: Pegasus 2, Spartan 3E, Nexys 2, Atlys Spartan 6.
Nota: Consigne sus resultados en un informe.

5. EVALUACIÓN

a. Presentar un informe con los resultados de la práctica.

6. BIBLIOGRAFÍA

Atlys Spartan-6 FPGA Development Board - Lógica Programable. (n.d.). Retrieved March 6,
2018, from https://sites.google.com/site/logicaprogramable/calculadoras/fpga/digilent---
atlys-spartan-6-fpga-development-board
Castedo, L. (n.d.). Prácticas De Microelectrónica. Madrid: Universidad Politécnica De Madrid.
Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6
(© Ángelo Joseph Soto Vergel)

Página 15 de 16
Retrieved from
http://www.elai.upm.es/webantigua/spain/Asignaturas/uElectronica/archivos/pue.pdf
Rangel Magdaleno, J. de J., & Romero Troncoso, R. de J. (2006). Manual De Prácticas -
Electrónica Digital II. México: Universidad De Guanajuato. Retrieved from
http://www.hspdigital.org/Documentos/HSP/EDII/LabED-II.pdf
Reyes Barranca, M. A., Arellano Cárdenas, O., & Flores Nava, L. M. (2014). Electrónica
Digital - Prácticas De Laboratorio. Madrid: Universidad Politécnica De Madrid. Retrieved
from http://www.vlsilab.cinvestav.mx/files/Practicas_Spartan_6.pdf

Microelectrónica – Lab01, Reconocimiento De La Tarjeta Atlys Spartan 6


(© Ángelo Joseph Soto Vergel)

Página 16 de 16

Vous aimerez peut-être aussi