This is the summary of my participation in the "7 Ways to Leave Your Spartan-6 FPGA" program.
Listing and categorization of blog posts for the Spartan program
I have published 13 blog entries with 11 different projects. I've added a temperature and humidity sensor, four magnetic hall effect sensors, a color sensor, a time of flight sensor and finally an IR thermal sensor array. I have experimented with them on 9 different projects.
I have tried that each of the projects had a step-by-step guide from start to finish with a video that demonstrates its operation. Each small project includes its BOM, the developed code and the link to the Github repository for the latest version of the code.
My goal was to regularly do one post a week, eventually there are a few more, there was a lot to learn and document what I had learned about the AMD Xilinx Spartan-7 FPGA and the Vivado ML development toolset.
Summary What I Learned About the Spartan-7 FPGA
I thought that the world of FPGAs was not for me, a software developer, but I was totally wrong. Having a good foundation in Digital Electronics is a must if you want to get into HDL programming.
But the tools in the Vivado suite mean that many hobby projects don't require that knowledge. And the hobbyist can build systems with blocks that are like Lego blocks.
Spartan-7 FPGAs are a very good choice with a highly optimized cost and offering superior model features such as integrated ADC, dedicated safety features and Q grade. The Spartan-7 provide dedicated DSP Slices that can implement an ALU that performs any of ten different logic functions on the two input operands and also incorporates a built-in pattern detector and a 17-bit shift register. I have yet to fully understand these features and experiment with them.
The Digilent Arty S7 50 board allows you to fully experiment with the main features of the Spartan-7 FPGA. Digilent has taken care that it is a product that can be used by amateurs like me. The integration with the Vivado ML development tools is exceptional from my humble point of view.
It is a dream to be able to create a system that meets your specific needs for parallelism, number of ports and communication protocols with peripherals and with optimized power consumption at an affordable cost.
About the element14/AMD Xilinx "7 Ways to Leave Your Spartan-6 FPGA" program.
I have enjoyed participating in this program. I was first surprised that my application was accepted given my limited knowledge on this subject. It has been a unique opportunity to self-impose a plan to learn to the maximum during the two months that the program lasts.
I have managed to at least have an idea of what flow an FPGA-based embedded system development has to take and begin to be aware of how many things I still have to learn.
During the project I have had some problem with the Arty S7 board and I have learned two things, it is essential to know the power consumption at all times and be able to limit it automatically and it is very important to isolate the system under test from your work computer. Thanks to the element-14 community members who helped me solve these problems: My Arty S7 board has killed three USB 3.0 ports on my Microsoft Surface Studio, Arty S7 rev B vs Arty S7 rev E? Somewhat confused.
I hope that the blogs that I have written serve as an inspiration and help to other hobbyists who, like me, want to delve into the development of FPGA-based systems. I think this is going to be the beginning of a long relationship with the world of FPGAs.
Thanks to the other participants in the program and other members of the community who have given me advice when I have had problems. I have enjoyed and learned a lot from the blogs of the other participants, some already experienced with FPGAs and who have had no problem sharing what they knew and what they didn't.
Thanks to element14 and AMD Xilinx for sponsoring this program.