Microblaze vs Zynq vs Zynq ultrascale+ applications, examples? - Page 1
Forum section: electronics / general

author: Dmeads
author_rank: Regular Contributor
timestamp: August 02, 2021, 02:37:10 am
content: Hello!I am trying to learn about more of the processing systems available in Xilinx products. I saw a video that 2/3rds of new xilinx designs use zynq or zynq u+, and I am sure a majority of the other 3rd involve Microblaze.I am wondering about applications of these processing options, such as for what projects would you consider moving from a microblaze based system to a zynq system, or zynq to zu+Yes, I know speed/resources are a factor but I am looking for real world examples, such as if you were creating an audio system, you could use zynq to run an OS that does all your audio effects, but if you wanted to design your own high end GUI for this you would move up to zu+ and use the integrated GPU (not sure if this is a good example but just one I was thinking about). Thanks

author: dtodorov
author_rank: Contributor
timestamp: August 02, 2021, 06:05:17 am
content: Well, so far my experience has been limited to using microblaze soft core only.Basically, the Microblaze application was so simple that I just needed a simple UART-like interface to control the underlying hardware, without any complex processing.Now, I am thinking of starting a new project (before finishing all the rest of course) where I would likely need Ethernet communication and some more data crunching by CPU. There I think the zynq may come in handy, where Linux could take care of the Ethernet stack while a 'simple' driver takes care of the other specifics. Anyhow, this is still very ambitious for my abilities at the moment, so may be that my design choices are not quite right.

author: ebclr
author_rank: Super Contributor
timestamp: August 02, 2021, 11:45:16 am
content: FPGA is best used for parallel things, The basic idea is to have a lot of parallel things, and a little embedded CPU only to manage and configure the parallel stuff. If you want a CPU go to the CPU chip path, for sure will be a better deal than FPGA

author: AaronLee
author_rank: Regular Contributor
timestamp: August 02, 2021, 12:50:36 pm
content: Quote from: Dmeads on August 02, 2021, 02:37:10 amI have no experience with Microblaze, but do have experience with Zynq and Zyng Ultrascale+. Each use case may be different, but for mine, I'll use the PS side (dual core ARM CPUs) of the Zynq for the lower speed interface, and for all sorts of general CPU processing that's necessary for the application. Then, in your example of an audio system, the PL side (FPGA) would be used for creating the actual audio effects, ie. processing of the digital audio. The PL side would also almost certainly contain the digital audio input and output. But if you had, for example ADC and DAC chips, which required SPI or I2C control, that control would be done via the PS side typically. Having the two in one chip makes things work seamlessly, or close to it, compared to if you had a separate CPU and FPGA chip, you'd need a lot more code dealing with communicating between the two as to what's happening, etc.For the Zynq Ultrascale+, if you wanted to use the version with an integrated GPU, it's a very expensive part. I personally would never consider that chip for just a high-end GUI. It's way overspec, in my opinion. Rather, in that case, I'd opt for a separate and cheap CPU with integrated GPU. Now if I was doing video compression/decompression, and video processing, depending on what the needs are, the Ultrascale+ might be useful and cost effective, compared to a separate video processor. Anyways, most of my stuff doesn't require anything close the the processing power of the Ultrascale+, so I can't give you many good examples. Take into consideration that the Ultrascale+ has a total of between 4 and 6 Arm Cortex cores. It's a very powerful chip for those who need that power, but a very expensive chip that'll add a lot to your system cost if you don't need that power. Standard Zynqs have quite a range, and of course you need to select the proper one that has enough power for your application, but in general, IMHO, they're fairly reasonably priced for what you get, with the dual ARM core CPU inside. Personally I wish they'd have a lower cost single core version. I typically don't have the need for dual cores. And I wish they'd add a basic LCD interface to the standard Zynq, whereby GUI applications could be easily implemented on the PS side.

author: SiliconWizard
author_rank: Super Contributor
timestamp: August 02, 2021, 04:48:13 pm
content: If you're going to do anything "computing intensive" in software, a Zynq will give you performance that you could only dream of using a simple soft core. Zynq sport a cortex-A9 (single or dual core) at up to 1 GHz. How do you think it compares to a Microblaze soft core?Now of course if you don't need all this processing power, a soft core may be fully adequate. You're just in two different worlds here.