Xilinx Zynq 7020 SOM wanted !

Started by nitron, July 07, 2013, 12:40:23 AM

Previous topic - Next topic

nitron

Hello,

I think a SOM (system on a module) based on Xilinx Zynq 7010 or 7020 will be a very nice and acclaimed product.
There are currently a lot of developpements arround these chips. Since the chips are combining FPGA with dual core Cortex A9 and also with 2 1Ms/s A/D converter this board will be ideal for high end motor control, industrial signal processing and also a very good starting point for FPGA developpement.
It seems that some low cost boards are currently developped (see parallela board with available schematics and the zedboard).
However, with your experience in implementing high end ARM processors you might reduce costs and provide an industrial, NOISE proof solution at an agressive price. Currently the Parallela board which is announced at 99USD is the lowest cost board I am aware of. It contains an Adapteva multi-core processor which won't be used in all applications (especially motor control, automotive, etc.).

Regards  :)

olimex

Last time I check the problems with these FPGA + ARM combos is that to program the FPGA part you need to buy thousands USD tool, which makes the low cost hardware irelevant
to program Altera FPGA+ARM you had to buy 1500 USD IDE, then if you spend 1500 it doesnt make much sense if your hardware will cost $100 or $50

nitron

The price of the tools is a very good point.

But actually the tools seem FREE (yes, FREE) for the Z-7010, Z-7020 and Z-7030 devices. The power of these devices are quite enough for a lot of industrial applications (motor, control, power conversion, signal processing, etc.). The tools are downloadable from Xilinx site.

Please check the link:
http://www.xilinx.com/products/design-tools/ise-design-suite/ise-webpack.htm

Regards, :)

priestnot

I can be wrong I do not work with xilinx tools for a long time (2 years) but to make the connections from the internal ARM to the user made peripherals you need the EDK. The ISE (ise-webpack) alone will not be enough. And I thik the EDK is not free (and it costs a lot)

But thing might have changed.

The best way to build something like that is probably to connect a FPGA like a spartan3 or similar to the microprocessor ARM using a known protocol (the simple way) serial, SPI, I2C port, or you could implement a wishbone bus http://en.wikipedia.org/wiki/Wishbone_%28computer_bus%29 .
There are some options like this on the market some of theme are open source/hardware.

Hope I could help

nitron

@priestnot

I do not have experience either with the Zynq family (by the way the Zynq family is younger than 2 years). From what I red it appears that Zynq is an FPGA integrated with a dual core Cortex A9. The FPGA acts like a peripheral for the 2 A9 microprocessors.
This means the FPGA is programmed directly from the microprocessors.
The ISE webpack supports the ZYNQ family (the 7010, 7020, 7030).

Looking at the features of the ISE design table I cannot see any reason that the FPGA cannot be programmed with the ISE.
http://www.xilinx.com/products/design-tools/ise-design-suite/ise-webpack.htm

Basically the only "important" thing missing is the "System Generator for DSP" which seems more a design accelerator (integration of Simulink, etc.). I might be wrong though since as I said I do not have experience with Zynq devices.
However the Zynq devices appear to me as a formidable platform for high end motor control, power conversion, process control because of it's integration (A/D converter, FPGA, dual Cortex A9 with very high computing power). At least compared to the present solutions, C2000 from TI and others.

There is also a lot of commercial developpement ongoing on this platform:

* Alpha Data ADM-XRC-7Z1 XMC Mezzanine Card Powered by Xilinx Zynq SoC
Read more: http://www.cnx-software.com/2013/07/04/alpha-data-adm-xrc-7z1-xmc-mezzanine-card-powered-by-xilinx-zynq-soc/#ixzz2YT8SbSoX


* Ensilica: The new eSi-ZM1 module from EnSilica is a small form factor System-on-Module built around the Xilinx Zynq Extensible Processing Platform
Read more: http://www.ensilica.com/esi-modules.php


* Trenz Electronic: TE0720 with Zynq-7000 SoC, which connects a dual-core ARM Cortex-A9 CPU and a 28 nm FPGA in a single device.
Read more: http://www.trenz-electronic.de/news/news/article/compatible-all-programmable-soms-featuring-xilinx-artix-kintex-and-zynq.html


* ITR's OLYNQ-Z20C-H8 System on Module (SoM) combines the "Xilinx Zynq-7020 All Programmable SoC" device with main components like QSPI Flash, fast DDR3 RAM and controller's DC/DC power supply to a ready-to-use embedded processing platform
Read more: http://www.itrgmbh.de/images/stories/ITR-SoM-Olynq-Zynq-Flyer.pdf

The fact that almost all these developpement are using 7010 or 7020 devices has maybe a meaning...

Regards,


   

priestnot

QuoteI do not have experience either with the Zynq family (by the way the Zynq family is younger than 2 years).
Yes the Zynq family is younger than 2 years but wen I ended my work with FPGA they were being announced. I worked with the Virtex4 family ant they have the same principle a FPGA with a microprocessor core embedded (virtex4 has a powerpc the Zynq has a ARM)

Quote
From what I red it appears that Zynq is an FPGA integrated with a dual core Cortex A9. The FPGA acts like a peripheral for the 2 A9 microprocessors.
It is more or like what you said here is an example of the architecture: http://www.xilinx.com/content/dam/xilinx/images/block-diagrams/epp-system-architecture.jpg
You have a core (ARM) that has a memory bus shared with the custom peripheral that you will be making.
And that shared bus is were the problem is. The tool needed to "compile and build" is called EDK and is not free. You can use the ISE webpack to create, simulate the custom peripherals but then you need to connect them to the ARM core and for that you need EDK (http://www.xilinx.com/tools/platform.htm. You can try to implement it using ISE but it will be a pain and complicated if even possible.
At least was like that on the virtex4.

Quote
This means the FPGA is programmed directly from the microprocessors.
No and Yes.
No you cannot program it directly form the microprocessor, but yes you can use the microprocessor to program the external non-volatile memory and on the next boot it will be with the new configuration.
The FPGA´s have a volatile memory and they "fetch" the configuration form a external memory that is what you can program with the bitcode generated from the Xilinx tools.
The problem is not how to program/configure the FPGA but how to compile and build the verilog/VHDL code

Quote
The ISE webpack supports the ZYNQ family (the 7010, 7020, 7030).
Looking at the features of the ISE design table I cannot see any reason that the FPGA cannot be programmed with the ISE.
http://www.xilinx.com/products/design-tools/ise-design-suite/ise-webpack.htm
Yes it does you can make the custom peripherals and implement them once again the problem is the connection between them and the ARM core.

Quote
However the Zynq devices appear to me as a formidable platform for high end motor control, power conversion, process control because of it's integration (A/D converter, FPGA, dual Cortex A9 with very high computing power). At least compared to the present solutions, C2000 from TI and others.
Yes it is as I worked with a similar plataform I know how great it is you can put linux on the ARM core program it like you do a normal linux machine, C, python, bash, what suits you better, and have the custom logic do the heavy work.
A example is controlling a Servo motor you can implement a logic block that reads a memory register (that is shared with the ARM core) that represents a servo position and puts on the output the respective PWM without having to be worried with the timing on the ARM.

Quote
There is also a lot of commercial developpement ongoing on this platform:
...
...
The fact that almost all these developpement are using 7010 or 7020 devices has maybe a meaning...
Yes there is there were less development on on the virtex4 the only I used was this one
http://shop.trenz-electronic.de/catalog/product_info.php?cPath=1_51&products_id=185
They also have a version with a spartan3 were you can implement a microblase processor that also runs linux.
http://shop.trenz-electronic.de/catalog/default.php?cPath=1_51
http://shop.trenz-electronic.de/catalog/product_info.php?products_id=635
But this plataforms only made sense if you had the ISE and EDK tools from xilinx.
I think that the Zynq family is having a more projection because of the ARM architecture and the boom of hobby like development platforms beaglebones, raspberrypi, etc..

But if you want a cheap development tool that has a shared ARM and FPGA on different IC you have a lot to chose from:
I would recomend this onee
http://www.armadeus.com/english/index.html

But there are more:
http://www.knjn.com/FPGA-FX2.html
http://www.cdatas.com/products.html
http://www.embeddedarm.com/products/arm-sbc.php#ts-7300-fpga-series
http://www.hectronic.se/website1/embedded/arm-modules/hectronic-h6042.php
These are only examples

I hope I did not made any mistake (Xilinx tools migth have change a lot on 2 year) and hope also that you understood what I wrote.

farlane

#6
Quote from: olimex on July 07, 2013, 10:03:48 AM
Last time I check the problems with these FPGA + ARM combos is that to program the FPGA part you need to buy thousands USD tool, which makes the low cost hardware irelevant
to program Altera FPGA+ARM you had to buy 1500 USD IDE, then if you spend 1500 it doesnt make much sense if your hardware will cost $100 or $50
You have said this before in another thread, but i can tell you from experience that for example to do development on the Altera Sockit board ( Which has a Cyclone 5 FPGA+Cortex A9 HPS) you can download all the tools for free ( Quartus web edition, Sock EDS with ARM DS-5 Web edition ). And whats  more, all the tools run without any problems on Linux.

Ofcourse, Xilinx could be different but i suspect they look very closely to eachother on that aspect and i would not be surprised if Xilinx did the same.

nitron

Hi,

  I come back with some information about the Xilinx tools for the Zynq (7010, 7020, 7030).

  These days we received the visit of a Silica FAE (Field Application Engineer). He introduced us to the Zynq/Xilinx ecosystem.
  He assured us that the the freeware part (WebKit) of the Vivado tools are enough to create peripherals in the FPGA of the Zynq part and to connect them to the Cortex A9 cores. According to him the webkit in NOT a crippled version of the Vivado tools. In the free version some functionnality is missing (like the ChipScope for debugging the logic of the FPGA).

Maybe Olimex should re-consider creating a low cost, industrial temperature, Zynq 7020 SOM (System On a Module) ...

Regards,


nitron

Hi,

   Of course I know the zedboard and the microzed module (www.microzed.org) from AVNET.
The zedboard is more likely a dev kit. The Microzed is a SOM (System On a Module) which can be used in professional projects. AVNET offers also some customization services and they seem very serious about that.
   Concerning the MicroZed, one of the disadvantages is the high price for the industrial temperature modules, at least in low numbers.

   That's where OLIMEX can come into play.

   Starting from parallella open source design www.parallella.org they can probably come out with an industrial temperature SOM at (let's say) 100USD or EURO. The parallella board is 99USD and it includes a special Adapteva chip. This chip may be "skipped" for a lot of applications.
   Since Xilinx seems to guarantee Zynq supply at least until 2030 this type of SOM product can reassure the OLIMEX custommers about the product lifetime.

Regards,

marek

I know this is a pretty old thread, however there are quite a few Zynq SOMs out there now.  I'm looking to compile a list of Zynq-7020 ones (or 7015).  So far I've collected 10 or so product briefs:

https://www.dropbox.com/sh/7750vopkkq2qej6/AAC3ySAA10-oZVmyGMa4Z2Yga

If anyone knows of other do let me know.

Cheers!