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
1,086 Views

Enabling VADJ on ZCU104

Jump to solution

Hi,

 

My question is: what's the best way to handle adjustments to the VADJ setting on the ZCU104 board (eg. enabling/disabling, voltage level)?

 

The ZCU104 doesn't have an independent system controller device on it like the MSP430 on the ZCU102 or the Zynq on the KCU105 board. So when you turn it on, there's nothing that automatically reads the EEPROM of the FMC and switches on VADJ. So does the user application have to handle this?

 

After some reading about the power management device on the ZCU104 (IRPS5401), I get the idea that to change it's parameters I need to get a dongle and software from Infineon. Is this the way that we're expected to handle adjustments to VADJ? Or does Xilinx have some code or example design to make it easier? I have a few FMCs with different voltages, so I don't want to be using the dongle every time I switch over, if there is an easier/better integrated solution.

 

I am also aware of the system controller software that can be run on the ZCU104 board (RDF0456), but this is not a good solution because it doesn't allow me to store the settings in non-volatile memory (ie. the VADJ setting is lost after a power cycle).

 

Thanks for the help.

 

Jeff

 

 

Tags (1)
0 Kudos
1 Solution

Accepted Solutions
161 Views

Re: Enabling VADJ on ZCU104

Jump to solution

@toshas

I finally got around to working on this and it turned out to be very easy. You'll first need to buy the Infineon USB005 dongle and install the PowIRCenter software onto your PC. It's also handy to have an FMC card with power good LED just so that you can be sure that the VADJ voltage is getting applied. Here are the steps to configure the ZCU104 to enable VADJ to 1.8V automatically on power-up (you only need to do this once):

1. Plug the USB005 dongle into J175 of the ZCU104 board (near the power connector). Note that the pinout of the dongle cable and J175 is reversed! The black cable is GND and must line up with pin 3 of the J175 header (on the dongle it is labelled pin 1).

2. Start the PowIRCenter software.

3. Click the button in the top left corner "Auto Populate Devices". Two IRPS5401 devices will appear. The one with I2C address 0x14, and PMBus address 0x44 is the one that generates VADJ.

4. Click on the "Switcher D" for the device that generates VADJ. Notice that the "VOUT_COMMAND" command has a value of 1.801V - just check this to make sure that you're modifying the right switcher.

5. Click on the "01 OPERATION" command, set it to "On" and click "Write". The VADJ power good LED should turn on at this point. Note that by default, the voltage will be already configured for 1.8V, but if you need to configure it to something else, you should make that setting first with the "VOUT_*" commands (there are more than one to set).

6. Click on the "02 ON_OFF_CONFIG" command, set it to "Respond to EN pin only" and click "Write".

7. Click on the "15 STORE_USER_ALL" command (in the dropdown menu), and click "Write". This will store the current settings into the non-volatile memory so that they will be used the next time you power-cycle the board.

8. Close the software and power-cycle the ZCU104.

So now when you power-cycle the board, VADJ should power up at 1.8V. Remember to change these settings if you ever want to plug an FMC card with a lower VADJ rating.

Sorry for the delayed response!

Jeff

 

11 Replies
Moderator
Moderator
1,007 Views

Re: Enabling VADJ on ZCU104

Jump to solution

Hello @jeffrey.johnson,

 

Yes, your understanding about the ZCU104 power supply is correct.

 

The correct way to set the FMC supply values is SCUI tool provided by Xilinx.

VADJ.JPG

You can download the SCUi from following link:

https://www.xilinx.com/support/documentation/boards_and_kits/zcu104/2017_4/xtp502-zcu104-system-controller-c-2017-4.pdf

 

Hope this helps.

Thank you.

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
994 Views

Re: Enabling VADJ on ZCU104

Jump to solution

@kvasantr

 

Thanks for your reply. As I mentioned, I am aware of that software, but the problem with it is that it does not permit storing those settings into non-volatile memory. In other words, it doesn't allow you to make the changes permanent.

 

It is not a workable solution for me, because I cannot run that software every time I power up the board. I can't imagine many customers who would find this a workable solution either.

 

Jeff

0 Kudos
Moderator
Moderator
974 Views

Re: Enabling VADJ on ZCU104

Jump to solution

Hello @jeffrey.johnson,

 

Thank you for asking  this question.

 

SCUI tool will program the DC output values into the registers of power IC. 

So I believe it will hold the FMC VADJ value; even after power cycling the board.

 

Please contact Infineon for more understanding about how PMBus IC works.

Please refer there given below datasheet.

https://www.infineon.com/dgdl/Infineon-IR38263M-DS-v03_03-EN.pdf?fileId=5546d4625b62cd8a015bcf81f90a6e52

 

Thank you.

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
967 Views

Re: Enabling VADJ on ZCU104

Jump to solution

@kvasantr

 

Unfortunately when I power cycle my board, the VADJ setting is not retained.

 

I have purchased the USB005 tool and I will try configuring VADJ using the Infineon tools.

 

Jeff

 

0 Kudos
Moderator
Moderator
948 Views

Re: Enabling VADJ on ZCU104

Jump to solution

Hello @jeffrey.johnson,

 

Can you please confirm how you are checking the VADJ value on board ?

are you probing the source to oscilloscope ?

Share screen shots if possible.

 

Thank you.

-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
920 Views

Re: Enabling VADJ on ZCU104

Jump to solution

@kvasantr

 

I have two ways to confirm the VADJ voltage using a multimeter:

 

* There is a test point on the ZCU104 board (identified by J172, also has text "VADJ" on the silkscreen)

* I have an FMC card with a VADJ testpoint, which also reads the same voltage

 

Both testpoints give the same value which is close to 0V. If the FMC is not connected, I also get the same reading. The VADJ power good LED is also turned OFF. This agrees with my measurements.

 

When I use the system controller software, I can enable VADJ and I can read 1.8V on both testpoints. Also, the VADJ power good LED is ON.


When I power cycle the board, the VADJ power good LED is OFF and I measure approximately 0V on both testpoints again.

 

I have not yet had the chance to try the Infineon USB005 dongle, but I will do this in the next few days and post my results.

 

Jeff

0 Kudos
Adventurer
Adventurer
737 Views

Re: Enabling VADJ on ZCU104

Jump to solution

Hi, @jeffrey.johnson!

Do you have any update about storing VADJ values ?

Thanks!

0 Kudos
730 Views

Re: Enabling VADJ on ZCU104

Jump to solution

@toshas

 

No news yet, sorry, I've been working on a more urgent project the past few weeks. I'll post my results as soon as I do the test.

 

Jeff

 

0 Kudos
162 Views

Re: Enabling VADJ on ZCU104

Jump to solution

@toshas

I finally got around to working on this and it turned out to be very easy. You'll first need to buy the Infineon USB005 dongle and install the PowIRCenter software onto your PC. It's also handy to have an FMC card with power good LED just so that you can be sure that the VADJ voltage is getting applied. Here are the steps to configure the ZCU104 to enable VADJ to 1.8V automatically on power-up (you only need to do this once):

1. Plug the USB005 dongle into J175 of the ZCU104 board (near the power connector). Note that the pinout of the dongle cable and J175 is reversed! The black cable is GND and must line up with pin 3 of the J175 header (on the dongle it is labelled pin 1).

2. Start the PowIRCenter software.

3. Click the button in the top left corner "Auto Populate Devices". Two IRPS5401 devices will appear. The one with I2C address 0x14, and PMBus address 0x44 is the one that generates VADJ.

4. Click on the "Switcher D" for the device that generates VADJ. Notice that the "VOUT_COMMAND" command has a value of 1.801V - just check this to make sure that you're modifying the right switcher.

5. Click on the "01 OPERATION" command, set it to "On" and click "Write". The VADJ power good LED should turn on at this point. Note that by default, the voltage will be already configured for 1.8V, but if you need to configure it to something else, you should make that setting first with the "VOUT_*" commands (there are more than one to set).

6. Click on the "02 ON_OFF_CONFIG" command, set it to "Respond to EN pin only" and click "Write".

7. Click on the "15 STORE_USER_ALL" command (in the dropdown menu), and click "Write". This will store the current settings into the non-volatile memory so that they will be used the next time you power-cycle the board.

8. Close the software and power-cycle the ZCU104.

So now when you power-cycle the board, VADJ should power up at 1.8V. Remember to change these settings if you ever want to plug an FMC card with a lower VADJ rating.

Sorry for the delayed response!

Jeff

 

Adventurer
Adventurer
138 Views

Re: Enabling VADJ on ZCU104

Jump to solution

@jeffrey.johnson

Wonderful! Thanks!

0 Kudos
119 Views

Re: Enabling VADJ on ZCU104

Jump to solution

@toshas

There is one more thing to get this working in Xilinx SDK 2018.2 or PetaLinux 2018.2.

It seems that in 2018.2 they added some code to the FSBL that reads the FMC card's EEPROM and then enables VADJ to the correct value - so normally, you wouldn't have to make any changes to the power management IC's configuration using the dongle. Great! However, they've got a small bug in the code so it doesn't actually work. It actually reads from the ZCU104's onboard EEPROM, not the FMC card's EEPROM. So the code for the FSBL must be patched.

The code to be patched is here:

https://github.com/Xilinx/embeddedsw/blob/master/lib/sw_apps/zynqmp_fsbl/src/xfsbl_board.c

I've submitted a pull request for these changes:

Line 103: u16 EepromAddr = 0x54U; should actually be 0x50U;

Line 137:

/* Select the Channel-1 of MUX for I2C EEprom Access */

WriteBuffer[0] = 0x1; should actually be 0x20; because the FMC's I2C bus is connected to channel 6, not 1.

For PetaLinux, the FSBL can be patched by following the instructions provided in this forum post:

https://forums.xilinx.com/t5/Embedded-Linux/How-to-enable-FSBL-customization-in-petalinux/td-p/756694

I've created the patch already and will add it to our project that you can find here if you're interested:

https://github.com/fpgadeveloper/ethernet-fmc-zynq-gem

So to anyone coming across this forum post, I suggest that you patch the FSBL rather than reprogramming the Infineon power management IC with a dongle.

Jeff

 

0 Kudos