Skip navigation
> RoadTest Reviews

Xilinx Spartan-7 FPGA Maker Board by Digilent - Review

Scoring

Product Performed to Expectations: 10
Specifications were sufficient to design with: 10
Demo Software was of good quality: 10
Product was easy to use: 10
Support materials were available: 10
The price to performance ratio was good: 8
TotalScore: 58 / 60
  • RoadTest: Xilinx Spartan-7 FPGA Maker Board by Digilent
  • Buy Now
  • Evaluation Type: Development Boards & Tools
  • Was everything in the box required?: Yes
  • Comparable Products/Other parts you considered: I have been using the ARTY-7 board with the Artix-7 FPGA and I was quite impressed by its performances. This board, ARTY-S7, is similar with the ARTY-7, but I think the main drawback is the Ethernet connection which is missing.
  • What were the biggest problems encountered?:

  • Detailed Review:

    Introduction

    Many thanks for the element14 and Digilent guys for choosing me to do a review for this development board. This board features a SPARTAN-7 FPGA embedded in the latest version of Digilent's ARTY boards. The Xilinx's SPARTAN-7 in an SRAM-based FPGA built on TMSC's high performance and low power (HPL) 28 nm process with a high-k metal gate (HKMG), and it offers the best performance/watt ratio being optimized for low cost, high performance and low power. More details regarding this FPGA family can be found here: 7-series FPGAs Datasheet: Overview.

     

    Courtesy of Digilent the following 2 pictures highlights the ARTY-S7 board and its hardware description:

     

    The main features of this development board are listed below:

    • FPGA: XC7S50-CSGA324 (8150 slices, 2.7 Mbits of RAM, 120 DSP slices, on-chip analog-to-digital conver-XADC, programmable over JTAG and Quad-SPI flash)
    • Memory: 256 MB DDR3L and 16 MB Quad-Spi flash
    • FT2232HQ: USB-UART bridge, and USB-JTAG
    • Swirches
    • Push-buttons
    • LEDs
    • Expansion connectors

     

    More information can be found in the reference manual.

    Being an roadtest+ review, I decided to make a complex project to test the capabilities of this board. In the following lines a custom application for driving and monitoring a brushed DC motor will be presented. All the controls commands and the monitoring are done with a LabVIEW-based graphical user interface (GUI).

     

    Test Bench

    This roadtest+ project aims to present a 2-Quadrant Drive Application for a Brushed DC Motor using the Arty-S7 FPGA Board. The DC Motor is driven using a low RDS-on NMOS H-Bridge while its power is monitored using a high speed 16-bit SAR ADC, LTC 2374-16. The ARTY-S7 board is used to control the H-Bridge circuit, hence the DC motor, by generating a 12-bit PWM signal and the necessary control signals. Apart from controlling the DC motor, the ARTY-S7 board embeds a custom SPI master controller used to readout the ADC, hence the power monitoring.

    The ARTY-S7 communicates with a a LabVIEW-based GUI via a custom UART controller from which are sent all the control commands and where the measurements data are displayed.

    This application allows to:

    • spin the DC motor forward and backward;
    • electronic brake;
    • power monitoring: voltage and current.

     

    Hardware

    The hardware and its connections used to control and monitor the brushed DC motor are shown in the following photos.

    THE BRUSHED DC MOTOR (24 V DC, L= 913 uH, R=4.86 Ω)

    THE H-BRIDGE CIRCUIT (IR2110 + IRF3205) TOP SIDE

     

    THE H-BRIDGE CIRCUIT (IR2110 + IRF3205) BOTTOM SIDE

     

    A CLOSE-UP of the TEST BENCH (Coffee mug included)

    For power monitoring the following architecture was implemented:

    • a voltage divider + opamp based buffer + anti aliasing filter were used to monitor the motor's supply voltage;
    • a 50 mΩ shunt resistor + high side current shunt opamp, INA180 + anti aliasing filter were used to monitor the motor's current consumption;
    • both measurements were readout using the LTC2374-16 ADC at a sampling rate of 100 Hz.

     

    A DC motor can be modeled as a LR series filter as described below:

    Knowing the DC motor parameters (e.g. L and R) I was able to estimate the proper PWM frequency need to control this DC using a basic formula. Please note that in order to have a good resolution control, the calculations are a little bit more complex. Hence the PWM frequency can be roughly estimated by using the following formula:

     

    Given the results, a 1KHz PWM frequency has been chosen to be used to drive the brushed DC motor.

     

    FPGA Firmware

     

    The FPGA firmware has been developed using XILINX's VIVADO environment and using VHDL language. The project has been designed to be modular as described below:

     

    ARTY-S7 FIRMWARE ARCHITECTURE

    ARTY-S7 RESOURCE UTILIZATION

    SCOPE PRINT SCREENS DURING TESTING THE PWM CORE

    LabVIEW GUI

    Using LabVIEW, a GUI has been designed to monitor and control the brushed Dc motor. Its architecture is based on a event-based state machine, while all the data is readout and displayed at a 100 Hz rate. From the GUI the user can spin the motor in both directions and also can perform electronic brake to stop it almost instantaneously by using one of the 3 buttons (one at time). The GUI can be seen in the following image:

     

    Testing Results

     

    For testing, I decided to start with some several basic tests like spinning the motor in both ways and monitor its starting current.

    The FORWARD MODE

    The BACKWARD MODE

    The following video shows a full control mode of the brushed DC motor:

     

     

    Conclusions

     

    This board, the ARTY-S7, is a low cost and very powerful tool to develop medium to complex FPGA-based applications. However, I still think that the main drawback of this board compared with the ARTY-7 is the absence of the Ethernet interface while their price are very similar. It is quite nice to write firmware for it, and all the resources concerning schematic, I/O pins are available on the vendor site, Digilent.

    Hence, I highly recommend this board for students who want to start learning programming FPGAs, as well as for the advanced FPGA guys.

     

    "Keep those motors spinning! :-)" ---Dave Wilson, Texas Instruments

     

    PS: I am very sorry that I have not submitted the review in time, but I have had some unexpected issues with my PhD thesis, and that has high priority for me (it is also based on systems with FPGAs).

     

    Best,

    Vlad


Comments

Also Enrolling

Enrollment Closes: Oct 4 
Enroll
Enrollment Closes: Oct 10 
Enroll
Enrollment Closes: Oct 1 
Enroll
Enrollment Closes: Oct 4 
Enroll