Skip to main content
Graduate II
May 21, 2025
Solved

Different Voltage Level on IO Pins

  • May 21, 2025
  • 2 replies
  • 995 views

Hello,

 

I am developing an application using STM32N657

I have datasheet DS14791 Rev 4.

 

There are pins for VDDIO2 to VDDIO5 and the datasheet implies that I can run the GPIO on an independent voltage supply. Chapter 5.3.17 even specifies low levels and high levels for 1.8V mode and 3.3V mode.

 

I need SPI and UART at 3.3V level.

 

I know that VDDCORE is 0.8 V, for this I will use the internal SMPS at 1.8V

Some of the voltage signals have 1V8 in their name so obviously these run at 1.8V

 

However I am not completely sure how I can/must supply the rest of the chip.
Can i supply VDD and VDDIOx with 3.3V and have all the GPIO work at 3.3V? What else do I have to keep in mind when using 3.3V on this chip?

 

Thanks

Lucas

    This topic has been closed for replies.
    Best answer by RomainR.

    Hello @Panda 

    I confirm that GPIOs (I exclude CSI Phy and USB Phy) are 3.3V Tolerant and can be independently powered at 1.8V or 3.3V.
    As example, STM32N6 VFBGA264 package had VDD, VDDIO2, VDDIO3, VDDIO4 and VDDIO5 supplies.
    VDD is used for GPIOA and GPIOB, some of GPIOC to GPIOH supply.
    VDDIO2 is dedicated to GPIOO and GPIOP for XSPIM port1
    VDDIO3 is dedicated for GPION for XSPIM port2 
    VDDIO4 is dedicated for GPIOC and GPIOH for SDMMC1
    VDDIO5 is dedicated for GPIOC and GPIOE for SDMMC2

    You can refer to DS14791 Rev 4 Table 18. Pin description on each column "Notes", corresponds a note under the last table which indicate the VDD or VDDIOx dependency. 

    I can also suggest the AN5967 - Rev 2 in section 3.1 Main power supplies.

    By default, all the GPIOs are 3.3V tolerant. Refer to RM0486 Rev 2 in Table 18. OTP fuse description.
    If you need to change a GPIOs group voltage level at 1.8V,

    1) you need to fuse in OTP124, the corresponding bit HSLV_VDDIO5, HSLV_VDDIO4, HSLV_VDDIO3, HSLV_VDDIO2 or HSLV_VDD.
    This fuse operation is irreversible.

     2) in the firmware, you also need to set the corresponding VDDIOxVRSEL in PWR_SVMCRx, refer to RM0484 Rev 2 in section 13.9.10 

    For VDDIOx specifications and Absolute Maximum Recommended value, you must refer to the corresponding tables in the Datasheet as explained by @mƎALLEm 

    Best regards,

    Romain,

     

     

    2 replies

    Technical Moderator
    May 21, 2025

    Hello @Panda and welcome to the ST community,


    @Panda wrote:

    Can i supply VDD and VDDIOx with 3.3V and have all the GPIO work at 3.3V?


    This is what the datasheet is saying:

    mALLEm_0-1747834953497.png

    So if you need all the IOs working at 3.3V you need to connect all the VDDIOx to 3.3V power supply (minimum 2.7V).

    PandaAuthor
    Graduate II
    May 21, 2025

    Hello,

    thanks for the confirmation!

    I guess VDD is independent from VDDIOx and supplies all GPIO that are not in the scope of VDDIOx, correct?

    Technical Moderator
    May 21, 2025

    Yes VDD is independent from VDDIOx. Some IOs are power supplied from the VDD rails others from VDDIOx.

    The VDD/VDDIOs distribution is described in the table 51 in the reference manual of the product::

    mALLEm_0-1747837386447.png

     

    RomainR.Answer
    ST Employee
    May 21, 2025

    Hello @Panda 

    I confirm that GPIOs (I exclude CSI Phy and USB Phy) are 3.3V Tolerant and can be independently powered at 1.8V or 3.3V.
    As example, STM32N6 VFBGA264 package had VDD, VDDIO2, VDDIO3, VDDIO4 and VDDIO5 supplies.
    VDD is used for GPIOA and GPIOB, some of GPIOC to GPIOH supply.
    VDDIO2 is dedicated to GPIOO and GPIOP for XSPIM port1
    VDDIO3 is dedicated for GPION for XSPIM port2 
    VDDIO4 is dedicated for GPIOC and GPIOH for SDMMC1
    VDDIO5 is dedicated for GPIOC and GPIOE for SDMMC2

    You can refer to DS14791 Rev 4 Table 18. Pin description on each column "Notes", corresponds a note under the last table which indicate the VDD or VDDIOx dependency. 

    I can also suggest the AN5967 - Rev 2 in section 3.1 Main power supplies.

    By default, all the GPIOs are 3.3V tolerant. Refer to RM0486 Rev 2 in Table 18. OTP fuse description.
    If you need to change a GPIOs group voltage level at 1.8V,

    1) you need to fuse in OTP124, the corresponding bit HSLV_VDDIO5, HSLV_VDDIO4, HSLV_VDDIO3, HSLV_VDDIO2 or HSLV_VDD.
    This fuse operation is irreversible.

     2) in the firmware, you also need to set the corresponding VDDIOxVRSEL in PWR_SVMCRx, refer to RM0484 Rev 2 in section 13.9.10 

    For VDDIOx specifications and Absolute Maximum Recommended value, you must refer to the corresponding tables in the Datasheet as explained by @mƎALLEm 

    Best regards,

    Romain,

     

     

    PandaAuthor
    Graduate II
    May 21, 2025

    Thank you both for the great answers!

     

    Best Regards

    Lucas