Jump to content
  • 0

How best to diagnose FMC fault on GenesysZU3


DaleD

Question

I have a custom FPGA design and OS built in PetaLinux 2020.1.  I am attaching an Analog Devices ADC board via the FMC connector.

On boot, the red PMCU LED is blinking: long blink, short pause, short blink, long pause -- the reference manual for the GenesysZU lists this as a SYZYGY or FMC fault.  We have nothing on a SYZYGY connector, so assuming this is an FMC fault.

The reference manual shows a serial port between the PMU and PS, and a protocol to read registers for more information in PMU register 0x70.

  • Is there a Digilent demo application for the purpose of reading PMU registers?
  • I'm having trouble finding this interface in the Xilinx documentation, can you point me to it?

-- UPDATE:

It looks like there is a device /sys/firmware/zynqmp/config_reg that gives access to registers in user space.  And it looks like the PMU_GLOBAL registers are mapped starting at 0x00ffd80000, according to UG1087, UltraScale+ Register Reference.

But,

# echo 0xffd80070 > /sys/firmware/zynqmp/config_reg
# cat /sys/firmware/zynqmp/config_reg
0x0

gives 0 (no error).  Is 0x70 the right offset? I'm having trouble making sense of this.

Edited by DaleD
Clarified question
Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 1
I do not have any experience with Digilent's Genesys ZU boards, though I do have quite a bit with FMC.

The first thing to be sure of, before connecting your FMC mezzanine card and powering up your system, is to make sure that the Vadj voltages are compatible: 1.2V, 1.5V or 1.8V for the Genesys ZU platforms. If not then don't connect your FMC mezzanine card.

You won't find PMCU information in the AMD/Xilinx documentation because it's a Digilent thing. For SYZYGY, which is somewhat "plug and play" there's a whole configuration process that happens before the power supplies on the interface are brought up. This involves a specific DNA chat between uProcessors on the SYZYGY pod and the Digilent PMCU. Digilent has chosen to implement SYZYGY DNA a bit differently than other SYZYGY vendors, though they do abide by the tandard. FMC isn't a plug and play interface though most FMC mezzanine cards have an EEPROM that can be accessed on the carrier board to identify certain parameters about the card. Not all FMC mezzanine cards use this facility.

I don't have a clue as to how Digilent uses the PMCU to set Vadj for the FMC interface but there might be a document that tells you how to interpret PCMU LED blinking messages. Hopefully, someone with better information will reply to your question.

FMC, as used on FPGA platforms, require extensive due diligence to ensure compatibility before trying to use them, especially if LVDS clocking is involved. There are a lot of older FMC mezzanine cards the are not compatible with most UltraScale based boards having an FMC connector due to a need for Vadj to be 2.5V or 3.3V. Don't assume that any FMC mezzanine card can be used with any carrier board having an FMC interface. Edited by zygot
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...