sparttan 3s
STARTER BOARD
Fabio Schygiel
Diseño de Sistemas con FPGA
Placa de desarrollo Spartan 3E Starter
Diseño de Sistemas con FPGA
2do Cuatrimestre 2009
Características Principales
Xilinx XC3S500E Spartan-3E FPGA
Xilinx 4 Mbit Platform Flash
configuration PROM
Xilinx 64-macrocell XC2C64A
CoolRunner CPLD
64 MByte (512 Mbit) of DDRSDRAM,
x16 data interface, 100+ MHz
16 MByte (128 Mbit) of parallel NOR
Flash (Intel StrataFlash)
16 Mbits of SPI serial Flash (STMicro)
2-line, 16-character LCD screen
PS/2 mouse or keyboard port
VGA display port
10/100 Ethernet PHY (requires
Ethernet MAC in FPGA)
Two 9-pin RS-232 ports (DTE- and
DCE-style)
Diseñode Sistemas con FPGA
On-board USB-based FPGA/CPLD
download/debug interface
50 MHz clock oscillator
SHA-1 1-wire serial EEPROM for
bitstream copy protection
Hirose FX2 expansion connector
Three Digilent 6-pin expansion
connectors
Four-output, SPI-based Digital-toAnalog Converter (DAC)
Two-input, SPI-based Analog-toDigital Converter (ADC) with
programmable-gainpre-amplifier
ChipScope™ SoftTouch debugging
port
Rotary-encoder with push-button
shaft
Eight discrete LEDs
Four slide switches
2do Cuatrimestre 2009
Primero lo conocido, switches
NET
NET
NET
NET
"SW"
"SW"
"SW"
"SW"
LOC
LOC
LOC
LOC
=
=
=
=
"L13" | IOSTANDARD = LVTTL | PULLUP ;
"L14" | IOSTANDARD = LVTTL | PULLUP ;
"H18" | IOSTANDARD = LVTTL | PULLUP ;
"N17" |IOSTANDARD = LVTTL | PULLUP ;
Diseño de Sistemas con FPGA
2do Cuatrimestre 2009
Push Buttons
o
No hay circuito antirebote en los botones, hay que implementarlos en la
FPGA!
o
NET "BTN_EAST" LOC = "H13" | IOSTANDARD = LVTTL | PULLDOWN ;
o
NET "BTN_NORTH" LOC = "V4" | IOSTANDARD = LVTTL | PULLDOWN ;
o
NET "BTN_SOUTH" LOC = "K17" | IOSTANDARD = LVTTL | PULLDOWN ;o
NET "BTN_WEST" LOC = "D18" | IOSTANDARD = LVTTL | PULLDOWN ;
Diseño de Sistemas con FPGA
2do Cuatrimestre 2009
Algo nuevo,Rotary Push Button Switch
o
Dos funciones en uno.
o
Push Button Switch, actua como un push button común.
o
Rotary Shaft Encoder, actua como dos push buttons. Dependiendo de la
dirección de giro se cierra un switch antes que el otro. Cuando estadetenido ambos switchs estan cerrados („0‟).
o
NET "ROT_A" LOC = "K18" | IOSTANDARD = LVTTL | PULLUP ;
o
NET "ROT_B" LOC = "G18" | IOSTANDARD = LVTTL | PULLUP ;
o
NET "ROT_CENTER" LOC = "V16" | IOSTANDARD = LVTTL | PULLDOWN ;
Diseño de Sistemas con FPGA
2do Cuatrimestre 2009
¿Hacia que lado gira?
o
o
o
Un flanco ascendente en ROT_A mientras ROT_B esta bajoindica un giro
en el sentido de las agujas del reloj.
Un flanco ascendente en ROT_B cuando ROT_A esta 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.
Diseño de Sistemas con FPGA
2do Cuatrimestre 2009
Sacando datos, la forma fácil
o
NET
NET
NETNET
NET
NET
NET
NET
Los leds se encienden colocando un „1‟ en la señal correspondiente de la
FPGA.
"LED"
"LED"
"LED"
"LED"
"LED"
"LED"
"LED"
"LED"
LOC
LOC
LOC
LOC
LOC
LOC
LOC
LOC
=
=
=
=
=
=
=
=
"F9" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8 ;
"E9" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8 ;
"D11" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8 ;"C11" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8 ;
"F11" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8 ;
"E11" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8 ;
"E12" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8 ;
"F12" | IOSTANDARD = LVTTL | SLEW = SLOW | DRIVE = 8 ;
Diseño de Sistemas con FPGA
2do Cuatrimestre 2009
Reloj, ¿que tan rápido vamos?
NET "CLK_50MHZ" LOC =...
Regístrate para leer el documento completo.