Preface

Making a frequency counter is nothing fancy? Yes, but how about to create specialized frequency counter hardware with say up to 16 channels with max input clock rate >= 800MHz within 10 minutes? And verify this software defined hardware in the next 20? And implement this on open source software defined hardware platform?

Step 1:

 

Step X:

We have added a frequency Counter IP and connected it to our test signal sources and to Vivado labtools VIO (Virtual Input Output).

 

 

Step Z:

Result: it works from idea to result no trial and error, no just do it, try it out and it just works. This was the very first project on the open source software define hardware OZoM Model-A.

There are 12 frequency measurement channels implemented, connected to ZYNQ Fabric Clock, to both Zynq PS Timer wavegen outputs (no frequency as those timers are not initialized) and to two Clock Manager MMCM that generates two clocks.

So our frequency meter displays the measured frequency of an 800MHz signal. Using hardware that did not exist in 30 minutes ago. Hardware that anyone anywhere can load into the "software defined hardware".

Those are the Fabric clocks generated by the Zynq PS subsystem, all of them are measured correctly.

Two additional clocks generated by the Clock Manager in the Zynq PL are also correctly measured.

But is the clock really 800MHz? Lets try to measure it with some other methods!

Measurement setup 1: OZoM-A is powered from lab supply, power consumption 0.76W, 800MHz clock is connected to signal in the header, Signal hound with air-loop is used to measure the frequency.

Here it is the generated 800MHz signal has been measured to be really 800MHz. Well but maybe this is harmonic and not the signal itself?

Here is more proof that there really was a 800MHz signal that we measured.