UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Visitor armin1
Visitor
1,808 Views
Registered: ‎03-01-2018

Capabilities of Zynq-7000 // Selecting the right board

Jump to solution

Hello!

Me and my colleagues want to do a project and we are thinking about using one of the various development boards with Zynq-7000 for that purpose.
Basically we just want to sample and measure some signals and transfer them to a PC via ethernet for evaluation. We want to use a Zynq-7000 platform because it is supported by MATLAB and Simulink, provides gigabit-ethernet and some colleagues already have experience with some of those boards.


The signals we want to measure are as follows:

 

  • 3 analog signals sampled @ 1 kHz by an ADC
  • 3 analog signals sampled @ 100 kHz by an ADC
  • 2 incremental encoders
  • the frequency of a quadrature pulse signal (we would need a pin for edge-detection and a counter that counts the time between the edges)

 

We already tried to approach this task using a microcontroller, but most of the microcontroller-boards do not have gigabit-ethernet and have too little RAM for buffering data at such a high sampling frequency.


However, the documentation of those Zynq-7000 development boards on the internet is quite poor. In most hardware user guides I only found that the Zynq-7000 only has the XADC (it is dual, but we would need to sample 6 different signals). I have neither found any support for incremental encoder interfaces, nor any GPIOs that are capable of accessing a software timer for edge-detection. In addition to that, those guides do not provide pinout tables (common in most microcontroller datasheets) that clearly state which pins are capable or usable for certain purposes/modules.

Could you maybe provide some keywords or functions of the Zynq-7000 that we could use to achieve the measurement of that many signals? Or do you have links to PDFs that deal with the needed functions on the Zynq-7000?
Or do we need to purchase additional boards providing the necessary functions to connect them to the Zynq-7000 board (e.g. via the FMC terminals)?

 

I would be thankful for any hint that helps me doing further research about the capabilities!

Best regards!

0 Kudos
1 Solution

Accepted Solutions
Scholar austin
Scholar
2,515 Views
Registered: ‎02-27-2008

Re: Capabilities of Zynq-7000 // Selecting the right board

Jump to solution

Yes,

 

If you going to end up needing your own verilog or VHDL, better to use something like a Zedboard (or Zybo) and build your design in the Vivado tools.  You still get to use the processors to support ethernet, etc.   The SDSoC tool/flow would be used for developing an application.

 

Austin Lesea
Principal Engineer
Xilinx San Jose

View solution in original post

8 Replies
Scholar austin
Scholar
1,794 Views
Registered: ‎02-27-2008

Re: Capabilities of Zynq-7000 // Selecting the right board

Jump to solution

I would look at the Pynq board, and buy ADC PMODs,

 

Program in Python.  Fast, easy.  Everything already is working over ethernet (Jupyter Notebook).

 

The Pynq board acts as a server, you browser is the terminal through which you operate.  No Vivado, no RTL (verilog or VHDL).

 

https://www.xilinx.com/products/boards-and-kits/1-hydd4z.html

 

PMOD's:

 

https://store.digilentinc.com/brands/Digilent-Pmod.html

 

Others make pmods, too.  Note Pynq will also accept Arduino shield boards.

Austin Lesea
Principal Engineer
Xilinx San Jose
Visitor armin1
Visitor
1,787 Views
Registered: ‎03-01-2018

Re: Capabilities of Zynq-7000 // Selecting the right board

Jump to solution

Thank you very much for the suggestion! I already found some Pmod cards that would solve the problem of having too few ADCs.

But what about interfaces for two quadrature encoders? I do not find a hint whether encoders are supported by the boards or not.

 

Edit: After searching in this forum and looking on the internet I found ways to implement quadrature decoders using FPGAs. But the examples were coded in VHDL. Is the same function achievable on the PYNQ-Z1 board by just using Python?

And are there enough GPIO pins where I can connect the encoder signals and the signal for edge-detection?

0 Kudos
Scholar austin
Scholar
1,759 Views
Registered: ‎02-27-2008

Re: Capabilities of Zynq-7000 // Selecting the right board

Jump to solution

https://www.arduino.cc/en/Main/ArduinoShields

 

There is a shield for encoder inputs, motor control.


Disclaimer:  I have no idea if this might work.  You will likely have to write your own verilog or VHDL to support it.  Check the schematics wire by wire.

Austin Lesea
Principal Engineer
Xilinx San Jose
Visitor armin1
Visitor
1,735 Views
Registered: ‎03-01-2018

Re: Capabilities of Zynq-7000 // Selecting the right board

Jump to solution
Is it not possible to connect the quadrature signal lines to the GPIOs directly instead of using a shield?
0 Kudos
Scholar austin
Scholar
1,732 Views
Registered: ‎02-27-2008

Re: Capabilities of Zynq-7000 // Selecting the right board

Jump to solution

Yes,

 

Access to those IO would be through the various connectors.  The shield connectors could be used for that, or a PMOD.  A programmable logic design is then required (using Vivado) in the form of a bitstream.

 

See Adam Taylor's series on Pynq:

 

https://forums.xilinx.com/t5/Xcell-Daily-Blog/Adam-Taylor-s-MicroZed-Chronicles-Part-156-Pynq-Hardware/ba-p/732835

Austin Lesea
Principal Engineer
Xilinx San Jose
Visitor armin1
Visitor
1,728 Views
Registered: ‎03-01-2018

Re: Capabilities of Zynq-7000 // Selecting the right board

Jump to solution

Thanks a lot for your answer! So that basically means that I need HDL code in Vivado after all and not everything is accessible via Python, right? Then I could as well look for the original ZedBoard and try to program it using Vivado or even MATLAB/Simulink if Python does not provide that many advantages.

0 Kudos
Scholar austin
Scholar
2,516 Views
Registered: ‎02-27-2008

Re: Capabilities of Zynq-7000 // Selecting the right board

Jump to solution

Yes,

 

If you going to end up needing your own verilog or VHDL, better to use something like a Zedboard (or Zybo) and build your design in the Vivado tools.  You still get to use the processors to support ethernet, etc.   The SDSoC tool/flow would be used for developing an application.

 

Austin Lesea
Principal Engineer
Xilinx San Jose

View solution in original post

Visitor armin1
Visitor
1,717 Views
Registered: ‎03-01-2018

Re: Capabilities of Zynq-7000 // Selecting the right board

Jump to solution
Thank you very much for the help! Furthermore, the ZedBoard/Zybo provide more Pmod connectors than the PYNQ-Z1.
0 Kudos