For many applications, selecting the most appropriate device is critical. Many of our clients are often questioning which device they should choose since there is such a diverse range in the AMD portfolio.
In this blog, we are going to look at how we might select a device from the cost-optimized portfolio (COP) which are more commonly used in applications such as robotics, medical, industrial etc.
What is interesting about the cost-optimized portfolio is the diversity of devices offered which spans both the 7 series and UltraScale+ families.
The 7 series devices include the Spartan-7 and Artix-7 families. Spartan-7 devices are the lowest cost in the AMD offerings and offer the smallest packaging. When it comes to I/O, the Spartan-7 offers the highest ratio of I/O to logic. If the design requires the ability to get data on and off chip quickly, Artix-7 devices provide transceivers capable of operating at up to 6.6 Gb/s.
Of course, this blog was started around one device within the 7 series range, the Zynq-7000 SoC. The Zynq-7000 SoC provides embedded processing solutions in the cost-optimized range. With devices ranging from the Z-7007S to the Z-7020, these devices provide developers with single or dual-core Arm® Cortex®-A9 processors and programmable logic.
Within the UltraScale+ range, the COP includes the Artix UltraScale+ devices with transceivers capable of supporting line rates at up to 16 Gb/s along with the Zynq UltraScale+ MPSoC family with the ZU1 to ZU3T devices. The Zynq UltraScale+ MPSoC families provide developers with either dual or quad Cortex-A53 application processors and dual-core Cortex-R5 real-time processors.
Now that we understand what devices are included in the COP, let’s discuss how we go about selecting one to use for our application?
The first thing is to determine if embedded processing is required. If so, this means we need to focus on either the Zynq-7000 SoC or Zynq UltraScale+ devices. If transceivers are required in the PL, we need to consider a device in the UltraScale+ range like the newly introduced ZU3T. The logic resources required can be another decision point. If we need more than 80K LUTs, we again need to consider a Zynq UltraScale+ device. It’s worth remembering that when sizing logic resources throughout a project lifecycle, there is often scope and requirement changes that increase the logic resources. Therefore, it’s a good idea to size the device with free resources for requirement creep.
If embedded processing is not required and we are using a traditional FPGA, we can use the need for high-speed data movement on and off chip as a decision point. If gigabit transceivers are required, both the Artix-7 or Artix UltraScale+ families need to be considered. If transceivers are not required, the decision point then becomes one of logic resources and I/O to logic ratio. The developer can select the most appropriate device from the Spartan-7, Aritx-7 and Artix UltraScale+ options.
I have created a simple decision chart below to guide us on this flow.
Of course, there are often competing requirements for device selection but this gives us a starting point in the decision process regarding which device we want to consider.
Workshops and Webinars
Enjoy the blog why not take a look at the free webinars, workshops and training courses we have created over the years. Highlights include
Ultra96, MiniZed & ZU1 three day course looking at HW, SW and Petalinux
Arty Z7-20 Class looking at HW, SW and Petalinux
Mastering MicroBlaze learn how to create MicroBlaze solutions
HLS Hero Workshop learn how to create High Level Synthesis based solutions
Embedded System Book
Do you want to know more about designing embedded systems from scratch? Check out our book on creating embedded systems. This book will walk you through all the stages of requirements, architecture, component selection, schematics, layout, and FPGA / software design.
We designed and manufactured the board at the heart of the book! The schematics and layout are available in Altium here
Sponsored by AMD Xilinx