Skip to content

Xilinx Spartan-7 Datasheet and Reference Design

Working with electronics can be a terrifying prospect for someone who has little to no experience. One needs to be competent in several different areas just to get started. Fortunately, some tools can help simplify the process, and with these tools, any beginner can get off the ground running.

Xilinx Spartan-7 FPGA boards‘ design is precisely for this purpose with features. For instance, being free from onboard power supplies and simple USB connections. It makes the task of getting started easier than ever before.

The boards are essential in creating many things, from simple LED projects to clocks to full-featured computers, and much more. Spartan-7s is facing criticism from those who believe there is little to offer those with the most limited needs despite their versatility. This notion stems from the fact that many people see them as a steppingstone towards something better. It seems like a common opinion amongst those who do not know why they would choose Spartan-7 over other FPGA boards.

The Arty family of Digilent boards aims to change this notion. These boards are perfect for a wide variety of FPGA projects and do not require heavily trained engineers to use or operate. These designs combine power and ease of use with the flexibility needed to create something great. They also integrate high-end FPGA features. For instance, Xilinx‘s 1.2TFLOPS Tri-core processors, the industry-standard BM3358 dual-core processor, and more into small form factor boards that people can use. At the same time, they learn FPGAs without feeling overwhelmed by the technology.

Product description

The first thing that people will notice is that the Arty boards are small, just 4.75 inches by 2.8 inches. This makes them perfect for projects within tight spaces where it would be impossible to fit something larger. Since these boards lack onboard power supplies, they are straightforward to use since we can power them through any micro-USB cable or adapter. This makes them great for projects that might need relocation frequently. We do not need a particular power source to power the board once everything is working correctly.

In addition to being small, the boards are relatively light, making them easy to carry around or carry in a case. With a weight of just Under 1.5 pounds, most people who use them will not even know that they are carrying around an FPGA board.

The boards have all the standard functionality you expect from a modern FPGA board. They include Xilinx’s DSP blocks, such as the CINCH mode, and PCR blocks, such as the DSPax2 and DSPz2 cores. This helps to ensure that those who use these boards will be able to create something truly amazing without compromising the internal functionality of the board.

Each of these boards has several different design areas in mind. For example, the Arty 1 and Arty 2 boards place a significant emphasis on power and ease of use out of the box. With both boards, all needed to get started is a micro cable and any composite cable. Ones that you might need for your project already soldered to the board itself.

Xilinx Spartan-7 FPGA Boards Features

xilinx spartan 7 fpga

The Arty boards are the first FPGA boards that have Digilent’s new Artix-7 FPGAs. Both boards use the same basic schematic. However, they differ in handling power and forgo onboard power supplies to ensure that the boards are small enough to be portable.

Configuration

Configuring the Xilinx Spartan-7 FPGA boards is relatively easy. However, it can be confusing for those who have little to no experience with programming FPGAs. In all reality, this process is not difficult, and it simply takes time to learn how everything works.

You first need to use Xilinx’s WebPACK tools to configure the Artix-7 FPGA on either of these boards. The JTAG debugger that you need to do this comes with the board when you buy it. These boards also come with two micro-USB cables so that you can plug them into your computer.

Each of these boards has a Pmod connector so that you can use Digilent’s Pmod peripherals with the board. The connectors are compatible with the older Pmods, so any Pmod peripheral will work without issue. SPI Flash drives or JTAG debugger cards are beneficial with these boards. This is because they allow you to store files on them for easy transfer to other devices instead of transferring files to an SD card.

Support The Digilent Pmod peripherals work great with both boards, but the documentation can be confusing. The “Getting Started” section in the user manual says nothing about using them. The Pmod peripheral pages often list features that do not exist (for example, there is no six-channel A/D). QSPI flash drives with the Arty boards work, but they do not support multi-bit reads and writing like the SuperCap and Spark boards do.

Memory

Because these boards only come with 8MB of onboard memory, you will need to add at least one additional memory chip if you wish to store data and programs on the board itself.

The memory on these boards can last for a while, and it is unlikely that you will run out of space while working on something. The documentation lists the memory as being dynamic, but this is inaccurate. More accurate information is that you can write the memory, but it will not disappear.

Processors

These boards have two different processors onboard. The first is a single-core processor known as the TriCore processor, which functions at 633MHz. It has 4kb of embedded DDR2 RAM and 8kB of embedded SRAM.

The second processor is the BM3358 dual-core processor, which functions at 400MHz with two MB of embedded DDR2 RAM and 16kb of embedded SRAM. It also has 4kb of EEPROM to store configuration data.

The two processors are different in terms of how they operate, but they both function well. You can use these processors independently or together to do different things at the same time.

We should use the TriCore processor for low-power applications. This is because it requires very little energy to run, and it will not consume much power. The BM3358 is better suited for high-power applications since it can consume more energy than its companion chip.

Control & I/O

The Arty 1 and Arty 2 boards have a single user I/O port, allowing an external to wire the switch to the board. This allows the board to work as a simple switch, and it is beneficial for projects that need more than one piece of equipment to work simultaneously.

The boards also have a single DIP switch, allowing five different serial ports to connect to the board. This will enable you to use the boards with a variety of software tools and peripherals.

Both boards have a standard JTAG port that can debug code or use the board as a programmer. The Artix-7 FPGA also has an embedded serial port, but neither of these two boards has this feature. User pushbuttons are available for them, but they are somewhat limited in what you can do with them.

Both boards have 16 digital I/O pins that we can use to send or receive data. They also have four analogs PWM channels that can process their inputs or output data. This makes both boards extremely useful for HMI applications. It is because you can use PWM channels to display any image, text, or anything else that you might need on the screen. DIP switches are available to control the digital I/O pins and run a simulation to determine what they do.

The Arty 1 and Arty 2 boards can work as a general-purpose development board that we can use for various projects. The TriCore processor on these boards will not carry heavy loads very well, but it will manage those loads without issue if you need it to run programs.

Expansion Connectors

The Digilent Artix-7 Spartan-7 FPGA boards come with a variety of expansion connectors. It allows users to connect the boards to their other hardware.

The first expansion connector these two boards have is a Pmod connector. It allows the connection of other Digilent peripherals to the board. We can use them with both boards, but they will not work with the XC7A200T FPGAs on the Spark Board or SuperCap. VITA 57.1 FMC LPC connector This FMC connector allows users to connect a VITA 57.1 programming board to the board. There is no documentation on the Internet for this device. So, it may be easy to use wrong or damage something during the process.

The Digilent Artix-7 Spartan-7 FPGA boards have an LPC connector. So, users can program their peripherals instead of using the Xilinx software tool. Pmod Headers This connector allows users to connect an external display with a separate power supply to the board.

This adapter will allow users to connect an external USB flash drive to the board. You must connect it in this format, or it will not work correctly. This connector tells the board what memory banks are available on the expansion header. The only free bank on this board is A0, so if you do not have one of these connectors, you will not connect your expansion device to the board.

Communication & Networking

These boards can connect to any other piece of equipment you might have, but they can also communicate with each other.

The Artix-7 FPGA on the Arty 1 and Arty 2 boards comes with several built-in Ethernet channels that connect Ethernet-capable peripherals.

Arc Risc is an architecture created by Digilent that allows users to connect different boards over Ethernet. The UART to USB Bridge allows any USB device to connect to the board using a universal serial bus. This will allow you to use a variety of peripherals with these boards, but it will not allow the boards to communicate with each other.

The XADC-4096 can also connect to the two boards via Ethernet, but it is essential in sensing data from a piece of equipment that is not an Arty board. The RJ-45 Tri-Speed Ethernet Connectors can connect other boards because they have an RJ-45 connector to plug the cable into. This is not a common feature for FPGAs, but it can be helpful in a variety of applications.

These two boards have two different ways of allowing the user to connect their board to other equipment. The first way is with a USB cable because it enables you to move data between your board and any other piece of equipment that has a USB port.

Display

The Arty boards have a DSI LCD connector that allows the user to connect a TFT LCD or a digital micro-mirror display. This connector drives the display directly and ensures nothing is wrong with the data it is receiving. The TriCore processor on these two boards will also be able to drive the same displays. However, it will not do so since it cannot change the contrast or other settings on these displays. The HDMI Video Output on these boards will allow you to connect your board to an HDMI-capable display.

The Artix-7 FPGA on the Arty boards also has two DSI connectors that will allow you to connect a digital micro-mirror display or TFT LCD. The only difference is that the user must provide their power to the device instead of a USB cable. Additionally, the MIPI-CSI Camera Interface connector available on the Arty 1 and Arty 2 will let you connect a camera to these boards. Also, we can use the MIPI-DSI Display Interface to connect any TFT LCD. The DSI connector on the Arty boards also has an HDMI connector so that you can connect your board to an HDMI-capable display.

The Ralink RT5350F Wifi USB adapter for these boards can connect your board to any other device with a wireless network connection. The only problem with this adapter is that it does not have an antenna. So, if you are using it for anything more than basic programming, you will need to figure out how to increase the range of your wireless network.

Clocking

These boards come with several different clock speeds available for users to use. These clocks allow you to adjust the speed at which the FPGA is working, but they must have an appropriate voltage to run from.

The Arty boards have a VHDL source used for all their I/O signals. It is also the same as the clock used during normal operation, so there is no need for a clock input on these boards. The board will automatically adjust to a stable clock speed depending on the voltage that it gets. You can adjust the clock speed that it runs at using either of these two controls. The Artix-7 FPGA on these boards creates an internal gyroscope that will adjust the clock speed depending on moving.

The Artix-7 FPGA on these boards has two different clock outputs that you can use with external oscillators to drive it at different speeds. The first is the WANCOOP1 output which we use with external oscillators. It has an I2C Programmable Clock input, creating any clock speed that the user would like. The second clock output is CWAN1, and we can also use it with external oscillators, but it cannot create any clock speeds.

Power

There are two different power inputs available for this board. The first is the USB connector that allows the user to supply it with either 3.3V or 5V of power. We can use it to charge a battery directly, but we cannot use it if an AC adapter has a bad connection to the board. We refer to the other power input on these boards as BATEN1, and it has a 6-pin connector that allows users to supply the board with 5V of AC power directly.

The Arty boards also use the same two types of power inputs, but they come with more combinations of power supplies that we can use. These boards come with a C10-C16 DC power input that will allow users to supply the board with any voltage between 10 and 16 VDC. There is also an AUXIN1 input that can supply the board with up to 3A of current.

Advantages of the Xilinx Spartan-7 FPGA Boards

The Spartan-7 FPGA on the Arty boards will bring a lot of advantages to any project you are working on. The integrated flash memory and USB connectors will allow you to load and transfer data between you and your computer at high-speed rates. The built-in power supply and clock generators will also help by eliminating the need for two additional parts. Still, there is no need to use built-in oscillators. This is because they cannot output as high of speeds as one can achieve using external oscillators. The wide array of Analog, Digital, I/O, and Interfaces make this board an ideal choice for almost any type of application.

The Xilinx Spartan-7 FPGA on these boards is the same as the one found on the Wonder Boards. It has many of the same features, but some additional features are not available on the Wonder Boards. The TriCore processor will drive more digital displays than a single TriCore processor can drive on a Wonder Board. The DSI connectors will be able to drive more displays, but the Artix-7 FPGA on these boards will not drive the same amount as a Wonder Board.

The Xilinx Spartan-7 FPGA on these boards also has two built-in oscillators that come at different speeds. So, their outputs will need amplification if you are planning to use them with an external oscillator. Working with top PCB companies such as RayMing PCB and Assembly will help you enjoy all the advantages stated above.

Limitations of the Xilinx Spartan-7 FPGA Boards

One of the most significant limitations these boards face is requiring an external oscillator to use with projects. The internal oscillators will not work since they are only allowed to output at slower speeds. This limits what types of projects we can do with these boards. If you plan to use them for applications where you need the fastest possible clock speeds, you should choose a board from one of the other series of boards from Xilinx. However, they all have more limited features than the Spartan-7 FPGA on these boards.

Another limitation that these boards have is that there are only two I/O connectors available. The Arty boards have a USB connector available, but they can only charge a battery connected directly to the board. We can use the Artix-7 FPGA on the Arty boards to charge a battery connected directly, but there is no option for an external power source. The only I/O connector available for the Arty boards is an Analog Input connector. However, you cannot use them to connect any digital signals made on the Artix-7 FPGA. This does not limit what types of projects we can do, but it will make using them for some applications more difficult.

The Spartan-7 FPGA on these boards does not come with built-in oscillators.

Examples of Xilinx Spartan-7 FPGA Boards

spartan 7 vivado

[XCM-026Y] Xilinx Spartan-7 FGGA484 FPGA board (5 V Tolerant)

  • XC7S100: 160 DSP Slices, 4,320 Total Block RAM (Kb), 100 Maximum user I/O pins (Board), 338 Maximum user I/O pins (Device), 1,100 Maximum Distributed RAM (Kbits), 102,400 Logic Cells, and 16,000 Slice
  • XC7S75: 140 DSP Slices, 3,240 Total Block RAM (Kb), 100 Maximum user I/O pins (Board), 338 Maximum user I/O pins (Device), 832 Maximum Distributed RAM (Kbits), 76,800 Logic Cells, and 12,000 Slices
  • XC7S50: 120 DSP Slices, 2,700 Total Block RAM (Kb), 100 Maximum user I/O pins (Board), 250 Maximum user I/O pins (Device), 600 Maximum Distributed RAM (Kbits), 52,160 Logic Cells, and 8,150 Slices

[XCM-026] Xilinx Spartan-7 FGGA484 FPGA board (5 V I/O)

  • XC7S100: 160 DSP Slices, 4,320 Total Block RAM (Kb), 100 Maximum user I/O pins (Board), 338 Maximum user I/O pins (Device), 1,100 Maximum Distributed RAM (Kbits), 102,400 Logic Cells, and 16,000 Slice
  • XC7S75: 140 DSP Slices, 3,240 Total Block RAM (Kb), 100 Maximum user I/O pins (Board), 338 Maximum user I/O pins (Device), 832 Maximum Distributed RAM (Kbits), 76,800 Logic Cells, and 12,000 Slices
  • XC7S50: 120 DSP Slices, 2,700 Total Block RAM (Kb), 100 Maximum user I/O pins (Board), 250 Maximum user I/O pins (Device), 600 Maximum Distributed RAM (Kbits), 52,160 Logic Cells, and 8,150 Slices

[XP68-06] Xilinx PLCC68 Spartan-7 FPGA Module

  • XC7S50: 5 CMT (MMCMx1+PLLx1), 50 Maximum user I/O pins (Board), 210 Maximum user I/O pins (Device), 120 DSP Slices, 2,700 Total Block RAM Bits (Kbits), 600 Maximum Distributed RAM (Kbits), 52,160 Logic Cells, and 8,150 Slices
  • XC7S25: 3 CMT (MMCMx1+PLLx1), 50 Maximum user I/O pins (Board), 150 Maximum user I/O pins (Device), 80 DSP Slices, 1,620 Total Block RAM Bits (Kbits), 313 Maximum Distributed RAM (Kbits), 23,360 Logic Cells, and 3,650 Slices

[XCM-210] Xilinx Spartan-7 FGGA676 FPGA board

  • XC7S100: 296 Maximum user I/O pins (Board), 400 Maximum user I/O pins (Device), 8 CMT (MMCM x1 + PLL x1), 160 DSP Slices, 4,320 Maximum Block RAM (kb), 1,100 Maximum Distributed RAM (kb), 16,000 Slices, and 102,400 Logic Cells
  • XC7S75: 296 Maximum user I/O pins (Board), 400 Maximum user I/O pins (Device), 8 CMT (MMCM x1 + PLL x1), 140 DSP Slices, 3,240 Maximum Block RAM (kb), 832 Maximum Distributed RAM (kb), 12,000 Slices, and 76,800 Logic Cells

[XCM-308] Xilinx Spartan-7 FTGB196 FPGA board

  • XC7S50: 8150 Slices, 52160 Logic Cells, 600 Maximum Distributed RAM (kb), 2700 Maximum Block RAM (kb), 120 DSP Slice, 5 CMT (MMCMx1+PLLx1), 100 Maximum user I/O pins (Device), and 56 Maximum user I/O pins (Board)
  • XC7S25: 56 Maximum user I/O pins (Board), 100 Maximum user I/O pins (Device), 3 CMT (MMCMx1+PLLx1), 80 DSP Slice, 1620 Maximum Block RAM (kb), 313 Maximum Distributed RAM (kb), 23360 Logic Cells, and 3650 Slices
  • XC7S15: 56 Maximum user I/O pins (Board), 100 Maximum user I/O pins (Device), 2 CMT (MMCMx1+PLLx1), 20 DSP Slice, 360 Maximum Block RAM (kb), 150 Maximum Distributed RAM (kb), 12800 Logic Cells, and 2000 Slices
  • XC7S6: 56 Maximum user I/O pins (Board), 100 Maximum user I/O pins (Device), 2 CMT (MMCMx1+PLLx1), 10 DSP Slice, 180 Maximum Block RAM (kb), 70 Maximum Distributed RAM (kb), 6000 Logic Cells, and 938 Slices

[XCM-115Z] Xilinx Spartan-7 FGGA484 FPGA board

  • XC7A100T: 8 CMT (MMCM x1 + PLL x1), 160 DSP Slices, 128 Maximum user I/O pins (Board), 338 Maximum user I/O pins (Device), 4,320 Maximum Block RAM (Kbits), 1,100 Maximum Distributed RAM (Kbits), 102,400 Logic Cells, and 16,000 Slices
  • XC7S75: 12,000 Slices, 76,800 Logic Cells, 832 Maximum Distributed RAM (Kbits), 3,240 Maximum Block RAM (Kbits), 338 Maximum user I/O pins (Device), 128 Maximum user I/O pins (Board), 140 DSP Slices, and 8 CMT (MMCM x1 + PLL x1)
  • XC7S50: 5 CMT (MMCM x1 + PLL x1), 120 DSP Slices, 128 Maximum user I/O pins (Board), 250 Maximum user I/O pins (Device), 2,700 Maximum Block RAM (Kbits), 600 Maximum Distributed RAM (Kbits), 52,160 Logic Cells, and 8,150 Slices

[XCM-115] Xilinx Spartan-7 FGGA484 FPGA board

  • XC7A100T: 8 CMT (MMCM x1 + PLL x1), 160 DSP Slices, 128 Maximum user I/O pins (Board), 338 Maximum user I/O pins (Device), 4,320 Maximum Block RAM (Kbits), 1,100 Maximum Distributed RAM (Kbits), 102,400 Logic Cells, and 16,000 Slices
  • XC7S75: 8 CMT (MMCM x1 + PLL x1), 140 DSP Slices, 128 Maximum user I/O pins (Board), 338 Maximum user I/O pins (Device), 3,240 Maximum Block RAM (Kbits), 832 Maximum Distributed RAM (Kbits), 76,800 Logic Cells, and 12,000 Slices

[XCM-025Z] Xilinx Spartan-7 FGGA484 FPGA board

  • XC7S100: 8 CMT (MMCM x1 + PLL x1), 160 DSP Slices, 100 Maximum user I/O pins (Board), 338 Maximum user I/O pins (Device), 4,320 Maximum Block RAM (Kbits), 1,100 Maximum Distributed RAM (Kbits), 102,400 Logic Cells, and 16,000 Slices
  • XC7S75: 8 CMT (MMCM x1 + PLL x1), 140 DSP Slices, 100 Maximum user I/O pins (Board), 338 Maximum user I/O pins (Device), 3,240 Maximum Block RAM (Kbits), 832 Maximum Distributed RAM (Kbits), 76,800 Logic Cells, and 12,000 Slices
  • XC7S50: 5 CMT (MMCM x1 + PLL x1), 120 DSP Slices, 100 Maximum user I/O pins (Board), 250 Maximum user I/O pins (Device), 2,700 Maximum Block RAM (Kbits), 600 Maximum Distributed RAM (Kbits), 52,160 Logic Cells, and 8,150 Slices

[XCM-025] Xilinx Spartan-7 FGGA484 FPGA board

  • XC7S100: 8 CMT (MMCM x1 + PLL x1), 160 DSP Slices, 100 Maximum user I/O pins (Board), 338 Maximum user I/O pins (Device), 4,320 Maximum Block RAM (Kbits), 1,100 Maximum Distributed RAM (Kbits), 102,400 Logic Cells, and 16,000 Slices
  • XC7S75: 8 CMT (MMCM x1 + PLL x1), 140 DSP Slices, 100 Maximum user I/O pins (Board), 338 Maximum user I/O pins (Device), 3,240 Maximum Block RAM (Kbits), 832 Maximum Distributed RAM (Kbits), 76,800 Logic Cells, and12,000 Slices

[EDX-303] Xilinx Spartan-7 USB-FPGA board

  • XC7S100T: 4,320 Total Block RAM (kb), 56 Maximum user I/O pins (Board), 338 Maximum user I/O pins (Device), 1,100 Maximum Distributed RAM (kb), 102,400 Logic Cells, and 16,000 Slices
  • XC7S75T: 3,240 Total Block RAM (kb), 56 Maximum user I/O pins (Board), 338 Maximum user I/O pins (Device), 832 Maximum Distributed RAM (kb), 76,800 Logic Cells, and 12,000 Slices
  • XC7S50T: 2,700 Total Block RAM (kb), 56 Maximum user I/O pins (Board), 250 Maximum user I/O pins (Device), 600 Maximum Distributed RAM (kb), 52,160 Logic Cells, and 8,150 Slices

Conclusion

These boards are great supplements to any other board that you have for your project. You can use them to perform tasks that were once impossible because of the limitations of other FPGA boards. They do not offer as many features as the Arty family, but they still provide plenty of features to make them useful for almost any type of application. They are not as good as the Wonder Boards, but they are still high-quality FPGA boards.