What exactly is needed to start with Zynq?

The documentation seems to be otherwise very good, but I cannot find the answer to this very basic question. I'd like to rebase my project onto Zynq and the most promising module right now is Mars ZX2 in the extended temperature range version:

formatting link

So OK, I obviously need the module itself, an SO-DIMM socket equipped breadboard, some power supply and Vivado. But I can't find how to connect the module to the PC in order to upload the bitstream. Could you please tell me:

  1. what is the minimal setup enough to do start with the module?
  2. what is needed to make it convenient, especially in the context of debugging?

Zynq seems to be very different compared to an ordinary FPGA, which usually implied a dedicated programming cable with JTAG. There seems to be a hardcoded bootloader which always starts and then configures the FPGA part. Is then an UART dongle enough?

Best regards, Piotr

Reply to
Piotr Wyderski
Loading thread data ...

Den tirsdag den 14. november 2017 kl. 19.40.27 UTC+1 skrev Piotr Wyderski:

what is special about a Zynq is that it is an ARM cpu first and an FPGA second

it boots up like any other cpu, from either qspi or sdcard, and the bootloader or later the software running can then load the FPGA with a bitfile. if you don't load the fpga you just have an ARM cpu.

easy place to start is a board with ethernet and sdcard a uart terminal will work but you need some way to transfer data

formatting link
is a place to start

Reply to
Lasse Langwadt Christensen

We started with the MicroZed board, and actually used the board in a couple of low-quantity products.

formatting link

formatting link

The uZed runs Linux at powerup, and comes with the software tools, so that got us going. We now have some designs with the ZYNQ chip on our board, and it was helpful to have the uZed schematic and layout as a reference.

formatting link

That boots everything off the SD card, and we have a JTAG connector for debugging. It boots Linux in about 1 second. It worked first try, SD and DRAM and all, which was sort of shocking.

We're looking at the Microsemi chips for lower-end products. They have some cheaper FPGA chips with a single M3 ARM.

--

John Larkin         Highland Technology, Inc 
picosecond timing   precision measurement  

jlarkin att highlandtechnology dott com 
http://www.highlandtechnology.com
Reply to
John Larkin

My goal is to work from the beginning with the target module, as the beefy development kits quickly become more a problem than a solution due to the existing pin assignments. Another goal is to achieve full ISP quickly, preferably via ethernet.

Thanks, Lasse, very informative. But this is worrying:

formatting link

  1. Connect the power cable to the ZedBoard
  2. Connect two micro-USB cables between the host computer and the ZedBoard connectors J17 (JTAG) and J14 (UART)

So they use some form of a JTAG and the JTAG is provided by an additional circuit/MCU on the Zedboard? So in the case of Mars would I need this too?

formatting link

I don't want that. Mars has both ethernet and USB PHYs (just without the transformers/connectors, which is not a big problem, in fact it is an advantage in my case). So I still have no idea how to connect a fresh Mars to my PC without the fancy base board.

Best regards, Piotr

Reply to
Piotr Wyderski

Unfortunately, even the smallest Zed is way too big for my purposes and its connectors' placement is a total no-go. I can afford only an SODIMM form factor and even then only in the vertical position. This excludes all the Trenz modules and so it seems that the Enclustra products are the only choice. I don't want to buy that base board, I just see no point in that. An external JTAG would be OK, but then what would be good for Vivado/Zynq?

Best regards, Piotr

Reply to
Piotr Wyderski

I think usually the fpga pins go to connectors, the pins that are pre assigned are the ones that you cannot move anyway because they are dedicated to the cpu for memory/ethernet/usb/etc.

that is how it is on the uZed

the easiest way is to have an SD card connector then you just boot off an sdcard and don't need the jtag, I think you can boot off usb but I've never tried. Without an SD card you'd need some way to program the qspi probably jtag

Reply to
Lasse Langwadt Christensen

Do you want to buy a module? Or might you just plop a ZYNQ chip onto your PC board?

--

John Larkin         Highland Technology, Inc 
picosecond timing   precision measurement  

jlarkin att highlandtechnology dott com 
http://www.highlandtechnology.com
Reply to
John Larkin

I'd prefer to have a custom-built board for that purpose, but Lasse once told me that it would require ~10 layers and I have no tools to solder the chip (reliably!), so the module is the only option. But I don't want to "play" with the Zynq, the principal functionality is well-defined and already implemented on a PSOC5LP chip, so I don't want to buy the baseboard. I have an old Cyclone evaluation board for checking ideas.

Best regards, Piotr

Reply to
Piotr Wyderski

even if you can't or don't want to use a base board or a module like uZed, it is going to be much much easier to start there

Reply to
Lasse Langwadt Christensen

Some of the Microsemi SOCs come in leaded packages.

--

John Larkin         Highland Technology, Inc 
picosecond timing   precision measurement  

jlarkin att highlandtechnology dott com 
http://www.highlandtechnology.com
Reply to
John Larkin

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.