Jump to content
  • 0

External Clocking of Eclypse Z7


lauser

Question

I need to develop an RF DSP application for the Eclypse Z7 that will make use of the ADC and DAC Zmods for the board. However, because timing jitter is extremely significant, I need to have the Zynq-7000 (including the ADC and DAC Zmods) entirely clocked via an external reference (a special low phase-noise TXCO).

Is this possible, perhaps with some careful soldering? Which input pins would I use? I am a beginner, so what changes would I need to make in the project to support this external clocking?

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

8 hours ago, lauser said:

I am a beginner, so what changes would I need to make in the project to support this external clocking?

No one is going to appreciate my opinion here, but it's the best advice that I can think of.

Digilent sets itself apart in the FPGA development board space by providing a nice variety of external components like FLASH, Ethernet, video, etc. There are a few things that I'd consider necessary that never appear on their boards, like SMA clock-in clock-out connectors, external programmable clock modules, etc. Pristine clocking is the first and most fundamental aspect of a hardware design and in cases like yours a requirement. 

If you don't have to have an ARM processing complex I'd suggest using a different platform. In general FPGA platforms from Terasic have suitable external clocking inputs. I've used the Cyclone GT board with the DDC ADC/DAC add-on daughter cards with success. It even has PCIe. Intel based boards generally have proper clock inputs and output SMA connectors, as do the Xiinx name branded boards.

Since you want both ADC and DAC conversion the Eclypse-Z doesn't have a spare ZYZYGY port for connecting an external clock source. It has two PMODs but even if on of the pins is connected to a clock capable pin on the Z7020 the design probably isn't suitable. Unfortunately, the Eclypse-Z7 just wasn't designed by people who know what they'd want in a platform for robust general purpose applications that the SYZYGY standard can support. It's the little details that might be missed by someone not actually involved in developing these kinds of projects that can be a make or break condition as to whether or not a platform is suitable for the application.

I've done board level design and had to worry about jitter through a signal chain. Even if you were able to replace the external 100 MHz clock module with a better one are you sure that you can maintain whatever jitter specification you require throughout all of the PLL and MMCM clock generators you will need to use throughout your system? The ZYNQ will complicate that considerably.

You are likely to get opinions about an easy way to do what you want but I'm doubtful that they will be the correct ones. System clock jitter analysis is isn't trivial even if you know what kind of jitter you know needs to be taken into account. A non-ARM FPGA based board would be easier to work out.

Link to comment
Share on other sites

On 2/6/2021 at 7:22 AM, zygot said:

If you don't have to have an ARM processing complex I'd suggest using a different platform. In general FPGA platforms from Terasic have suitable external clocking inputs. I've used the Cyclone GT board with the DDC ADC/DAC add-on daughter cards with success. It even has PCIe. Intel based boards generally have proper clock inputs and output SMA connectors, as do the Xiinx name branded boards.

Thanks, I looked at the Terasic options, and they are pretty old (circa 2008), but they do offer everything I need in hardware. Lots of clock inputs and outputs for FPGA, ADC and DAC. The problem is that I need a dev board and card combination with some basic documentation and examples for getting started with FPGA signal processing. For instance, a simple ADC --> FIR --> DAC "hello world" example would at least get me rolling. In my observation, FPGA development tools and documentation is like CPUs back in the 1980s. Try coding up a signal processing routine for an Intel 80286 by reading only the 4000 page CPU reference documentation. By and large, that's what I've found for FPGA options. Digilent has such a "hello world" example, at least, for a supported board + ADC + DAC card combination.

As a result, I have two options:

  1. Digilent can advise how to add external clocking for FPGA, DAC and ADC to their Eclypse Z7 and Zmod cards. 
  2. Somebody can suggest an alternative combination of FPGA dev board, ADC and DAC cards (with external clock inputs like the Terasic) that have good documentation and some basic signal input -> filtering -> signal output examples, like the Eclypse does.

You would think this would be widely available in 2021, but I'm just not able to find it. The assumption seems to be that you have a team of FPGA engineers and a $30K budget for hardware and software just to do some simple signal processing.

Link to comment
Share on other sites

16 hours ago, lauser said:

The problem is that I need a dev board and card combination with some basic documentation and examples for getting started with FPGA signal processing

The documentation provided by Terasic is actually pretty good. Also, there are example designs for all of the boards that I can afford to use. The exceptions are for Intel designed boards. Intel makes it really hard to find usable projects for their own boards. You just didn't look hard enough. You might have to create a user account with Terasic to access this information, but it's all there.

Just because some of the older Cyclone IV or V hardware has been around for a while doesn't make the boards a bad choice. The DDC provides 2 channels of ADC and DAC that operate at higher sampling rates than the Digilent ZMODs. In fact I suggest sticking with the Cyclone V or earlier boards as you don't need to purchase a license for the tools. I still use many of these platforms for current projects and have no issues with the current version of Quartus. ModelSim is superior to the Vivado simulator in a number of ways.

16 hours ago, lauser said:

The assumption seems to be that you have a team of FPGA engineers and a $30K budget for hardware and software just to do some simple signal processing.

I don't understand how you came to this conclusion. I have posted a number of signal processing type projects, and posted about others here on the Digilent Forums. All you need is the correct hardware and some expertise with Verilog or VHDL.... oh, and a bit of insight so that you avoid trying to implement your algorithms the same way that you might do in software.

The Eclypse-A7 is a flawed platform but Digilent has recently vowed to address most of its biggest support shortcomings. This will take a while and the finsl result still might not be close to the initial product concept. In the mean time there are inexpensive options for hardware that you can use tight now.

The Cyclone V GT board and one DDC will set you back about $1800. But the board has 4 lanes of Gen2 PCIe so you can either do conversion in hardware and Signal Processing using the latest version of Windows or Linux tools; or you can do some processing using an HDL. The correct way to do this is to use OCTAVE to model the general algorithm design and then create a similar but functionally equivalent algorithm suitable for FPGA resources.  If you don't want to spend that much on hardware the cheapest HSMC equipped Cyclone board and the cheapest ADC/DAC board from Terasic will allow you to get your feet wet.

If you are limited to using FPGA vendor IP for your Signal Processing projects then you are on your own. Make sure that all of that IP is free and does what you expect it to do.  

From reading your post I'm suspecting that your concept of what constitutes a 'basic Signal Processing' example... and more importantly the value of such a demo project is pretty naive.

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...