Xilinx Spartan 7 FPGA Boards

Mimas S7 Lite

0 views April 4, 2024 megha-m 0

Introduction

Introducing the Mimas S7 Lite FPGA Development Board: Unleash Your Creativity with Compact Power.

Mimas S7 Lite is an easy to use FPGA Development board featuring Spartan 7 FPGA (XC7S50 – 1CSG324C package). Ideal for diverse applications, this compact board includes QSPI flash for efficient data storage, FTDI FT2232H, 8 LEDs, 2 buttons for user interaction, and nine 6×2 headers for extensive connectivity. Whether you’re into digital signal processing, prototyping, or educational projects, the Mimas S7 Lite offers a powerful and user-friendly platform to bring your ideas to life.

Board Features

  • FPGA: XC7S50 in CSGA324 package, Speed Grade: -1. 
  • Flash memory: 128 Mb Quadbit SPI flash memory (MT25QL128ABA1ESE-0SIT). 
  • 100MHz CMOS Oscillator. 
  • FTDI FT2232H based host interface. 
  • FPGA configuration via JTAG and USB (USB programming only in windows). 
  • 2 push buttons and 8 LEDs for User defined purposes. 
  • Nine PMODs for User defined purposes. 

Applications

  • Educational tool for Schools and Universities
  • Product Prototype Development
  • Accelerated computing integration
  • Development and testing of custom embedded processors
  • Signal Processing
  • Communication devices development
  • Video processing

Wiring Diagram

The following connection diagram should be used for reference only.

USB Interface

The onboard high speed USB controller helps a PC/Linux/Mac computer to communicate with this module. Use a USB A to C cable to connect with a PC.  By default, the module is powered by USB so make sure not to overcrowd unpowered USB hubs (the picture on the right shows C connector).

Note: Mimas S7 lite ships with FT2232H Channel A dedicated to JTAG Programming.

JTAG Connector

JTAG connector allows the FPGA’s JTAG registers to be accessed using a JTAG cable, compatible with Xilinx Platform Cable USB. Use this header, to attach JTAG cable for programming and debugging.

PROG_B and Reset Buttons

Mimas S7 Lite features a Push-button S1 normally meant to be used as a “PROG_B” signal for configuration reset. Push-button S1 is connected to FPGA pin R8. For enabling manual configuration reset, push-button S1 is connected to GND. The user can reconfigure the FPGA manually, by pressing this push-button S1.

“PROG_B” controls the configuration logic. When the PROG_B pin is de-asserted, resets the FPGA and initializes the new configuration.

Mimas S7 Lite features a Push-button S2 normally meant to be used as “Reset” signal for designs running on FPGA. Push-button S2 is connected to FPGA pin T14. Push-button S2 is active-high. This push button can also be used for any other input and is not just limited to be used as a Reset signal.

8 LED'S and 2 BTN's Connection

FT2232H - Spartan-7 (CSGA324) FPGA Connection Details

By default, FTDI channel B is configured as a UART.

Pin Function (245 FIFO) Pin descriptionSpartan 7 (CSGA324) Pin No.
FTDI-D0/TXD IO_0_14L13
FTDI-D1/RXDIO_L6N_T0_D08_VREF_14N13
FTDI-D2 IO_L4P_T0_D04_14L17
FTDI-D3 IO_L4N_T0_D05_14L18
FTDI-D4 IO_L7N_T1_D10_14M17
FTDI-D5 IO_L8P_T1_D11_14M18
FTDI-D6 IO_L7P_T1_D09_14M16
FTDI-D7 IO_L8N_T1_D12_14N18
FTDI-RXF# IO_L9N_T1_DQS_D13_14P18
FTDI-TXE# IO_L9P_T1_DQS_14P17
FTDI-RD# IO_L10P_T1_D14_14R18
FTDI-WR# IO_L10N_T1_D15_14T18
FTDI-SIWUA IO_L3N_T0_DQS_EMCCLK_14L16

PMOD HEADERS

P1

Pin No. On The HeaderPMOD Pin NameFPGA PINPin descriptionPin No. On The HeaderPMOD Pin NameFPGA PINPin description
6VCC12VCC
5GND11GND
4P1_2_NG18IO_L21N_T3_DQS_1510P1_4_NH17IO_L22N_T3_15
3P1_2_PH18IO_L21P_T3_DQS_159P1_4_PH16IO_L22P_T3_15
2P1_1_NG17IO_L14N_T2_SRCC_158P1_3_NH14IO_L20N_T3_15
1P1_1_PG16IO_L14P_T2_SRCC_157P1_3_PH13IO_L20P_T3_15

P2

Pin No. On The HeaderPMOD Pin NameFPGA PINPin descriptionPin No. On The HeaderPMOD Pin NameFPGA PINPin description
6VCC12VCC
5GND11GND
4P2_2_NT11IO_L23N_T3_D18_1410P2_4_NV12IO_L24N_T3_D16_14
3P2_2_PR11IO_L23P_T3_D19_149P2_4_PU11IO_L24P_T3_D17_14
2P2_1_NT13IO_L22N_T3_D20_148P2_3_NP16IO_L12N_T1_MRCC_14
1P2_1_PT12IO_L22P_T3_D21_147P2_3_PN15IO_L12P_T1_MRCC_14

P3

Pin No. On The HeaderPMOD Pin NameFPGA PINPin descriptionPin No. On The HeaderPMOD Pin NameFPGA PINPin description
6VCC12VCC
5GND11GND
4P3_2_NV4IO_L17N_T2_3410P3_4_NU6IO_L24N_T3_34
3P3_2_PV5IO_L17P_T2_349P3_4_PU7IO_L24P_T3_34
2P3_1_NV6IO_L20N_T3_348P3_3_NR6IO_L23N_T3_34
1P3_1_PV7IO_L20P_T3_347P3_3_PR7IO_L23P_T3_34

P4

Pin No. On The HeaderPMOD Pin NameFPGA PINPin descriptionPin No. On The HeaderPMOD Pin NameFPGA PINPin description
6VCC12VCC
5GND11GND
4P4_2_NP1IO_L11N_T1_SRCC_3410P4_4_NR1IO_L12N_T1_MRCC_34
3P4_2_PP2IO_L11P_T1_SRCC_349P4_4_PR2IO_L12P_T1_MRCC_34
2P4_1_NU1IO_L14N_T2_SRCC_348P4_3_NT2IO_L13N_T2_MRCC_34
1P4_1_PT1IO_L14P_T2_SRCC_347P4_3_PR3IO_L13P_T2_MRCC_34

P5

Pin No. On The HeaderPMOD Pin NameFPGA PINPin descriptionPin No. On The HeaderPMOD Pin NameFPGA PINPin description
6VCC12VCC
5GND11GND
4P5_2_NL1IO_L3N_T0_DQS_3410P5_4_NN2IO_L9N_T1_DQS_34
3P5_2_PK1IO_L3P_T0_DQS_349P5_4_PN3IO_L9P_T1_DQS_34
2P5_1_NN1IO_L8N_T1_348P5_3_NK2IO_L2N_T0_34
1P5_1_PM1IO_L8P_T1_347P5_3_PK3IO_L2P_T0_34

P6

Pin No. On The HeaderPMOD Pin NameFPGA PINPin descriptionPin No. On The HeaderPMOD Pin NameFPGA PINPin description
6VCC12VCC
5GND11GND
4P6_2_ND1IO_L14N_T2_SRCC_3510P6_4_ND2IO_L16N_T2_35
3P6_2_PE1IO_L14P_T2_SRCC_359P6_4_PE2IO_L16P_T2_35
2P6_1_NG1IO_L21N_T3_DQS_358P6_3_NF1IO_L18N_T2_35
1P6_1_PG2IO_L21P_T3_DQS_357P6_3_PF2IO_L18P_T2_35

P7

Pin No. On The HeaderPMOD Pin NameFPGA PINPin descriptionPin No. On The HeaderPMOD Pin NameFPGA PINPin description
6VCC12VCC
5GND11GND
4P7_2_NA2IO_L10N_T1_AD15N_3510P7_4_NA4IO_L9N_T1_DQS_AD7N_35
3P7_2_PA3IO_L10P_T1_AD15P_359P7_4_PA5IO_L9P_T1_DQS_AD7P_35
2P7_1_NA7IO_L1N_T0_AD4N_358P7_3_NA6IO_L4N_T0_35
1P7_1_PA8IO_L1P_T0_AD4P_357P7_3_PB7IO_L4P_T0_35

P8

Pin No. On The HeaderPMOD Pin NameFPGA PINPin descriptionPin No. On The HeaderPMOD Pin NameFPGA PINPin description
6VCC12VCC
5GND11GND
4P8_2_NA15IO_L3N_T0_DQS_AD1N_1510P8_4_NA16IO_L4N_T0_15
3P8_2_PB15IO_L3P_T0_DQS_AD1P_159P8_4_PB16IO_L4P_T0_15
2P8_1_NA13IO_L1N_T0_AD0N_158P8_3_NA14IO_L2N_T0_AD8N_15
1P8_1_PB13IO_L1P_T0_AD0P_157P8_3_PB14IO_L2P_T0_AD8P_15

P9

Pin No. On The HeaderPMOD Pin NameFPGA PINPin descriptionPin No. On The HeaderPMOD Pin NameFPGA PINPin description
6VCC12VCC
5GND11GND
4P9_2_NC18IO_L11N_T1_SRCC_1510P9_4_NA17IO_L7N_T1_AD2N_15
3P9_2_PD18IO_L11P_T1_SRCC_159P9_4_PB17IO_L7P_T1_AD2P_15
2P9_1_ND17IO_L9N_T1_DQS_AD3N_158P9_3_NB18IO_L8N_T1_AD10N_15
1P9_1_PD16IO_L9P_T1_DQS_AD3P_157P9_3_PC17IO_L8P_T1_AD10P_15

Generating Bitstream Using Vivado

The bitstream can be generated for Mimas S7 lite in Vivado by following the steps below:

Step 1: It is recommended to generate .bin bitstream file along with .bit bitstream file. Click “Bitstream Settings”.

Step 2: Select “-bin_file*” option in the dialog window and Click OK.

Step 3: Finally click “Generate Bitstream”.

Programming Mimas S7 lite Using JTAG

For JTAG programming remove the jumper from header P13.

Mimas Spartan7 Lite FPGA features an onboard JTAG connector which facilitates easy reprogramming of SRAM and onboard SPI flash through JTAG programmer like “Xilinx Platform cable USB”. Following steps illustrate how to program FPGA on Mimas S7 Lite using JTAG.

Step 1: By using JTAG cable, connect Xilinx platform cable USB to Mimas S7 Lite and power it up.

Step 2: Open Vivado project and open the target by clicking on the “Open Target” in “Open Hardware Manager” in the “Program and Debug” section of the Flow Navigator window. Select “Auto Connect”.

Step 3: If the device is detected successfully, then select “Program Device” after right clicking on the target device “XC7S50_0” as shown below.

Step 4: In the dialog window which opens up, Vivado automatically chooses correct bitstream file if the design was synthesized, implemented and bitstream generated successfully. If needed, browse to the bitstream which needs to be programmed to FPGA. Finally, click “Program”.

As soon as “Program” is clicked, a green colored DONE LED (D1) on Mimas S7 should light up, indicating that programming process is going on. This LED will turn off when the configuration is complete.

Programming Mimas S7 lite Using USB-JTAG

Ensure that the D2XX drivers are installed prior to programming.  The channel A of FTDI FT2232H chip on Mimas S7 Lite board is connected to the JTAG interface of the FPGA. Through this connection, USB interface can be used as a JTAG programmer, eliminating the need for a dedicated JTAG cable or connector. Following steps illustrate how to program FPGA on Mimas S7 Lite using USB.

1. Ensure that header P13 is populated with a jumper and Connect the USB Type-C cable to the FPGA board.

2. Click on “Auto connect” under hardware manager and it will automatically establish the connection.

 

Programming QSPI Flash using Vivado

A .bin or .mcs file is required for programming Mimas S7 lite’s onboard QSPI flash.

Step 1: Open Vivado project and open the target by clicking on the “Open Target” in “Open Hardware Manager” in the “Program and Debug” section of the Flow Navigator window. Select “Auto Connect”.

Step 2: If the device is detected successfully, then select “Add Configuration Memory Device” after right clicking on the target device “xc7s50_0” as shown below.

Step 3: Select the memory device “mt25ql128-spi-x1_x2_x4”, then click OK.

Step 4: After completion of Step 3 the following dialog box will open. Click OK.

Step 5: Browse to the working .bin file or the .mcs file (whichever applicable) and click OK to program as shown below. If programming is successful, a confirmation message will be displayed.

Technical Specifications

Parameter *ValueUnit
Basic Specifications
Number of PMODs9
On-board oscillator frequency (ASEM1-100.000MHZ-LC-T)100MHz
Quad SPI Flash Memory (MT25QL128ABA1ESE-0SIT) 128Mb
USB Power supply voltage5 V
FPGA Specifications
Internal supply voltage relative to GND -0.5 to 1.1 V
Auxiliary supply voltage relative to GND -0.5 to 2.0 V
Output drivers supply voltage relative to GND -0.5 to 3.6 V

Mechanical Dimensions

Vivado XDC Constraints

Mimas S7 Lite IO length details

Help Guide Powered by Documentor
Suggest Edit