2023-10-30 11:23 PM - edited 2023-10-30 11:28 PM
I have a few questions about how the LPR works.
First off, the RM says "Low-power run mode: This mode is achieved when the system clock frequency is
reduced below 2 MHz."
1. What is meant by system clock here? SYSCLK or core clock (HCLK)? As far as I can see from clock tree, you can't have SYSCLK < 4 MHz if your clock source is external crystal (HSE), so if SYSCLK is meant here, the LPRun mode is achievable only when clocking from HSI16 with /8+ prescaler.
2. What would be with LPR if I exceed 2 MHz? As far as I understand, the MCU has no straight way to determine the actual clock frequency. So now even if my HCLK exceeds 2 MHz, I can successfully activate LPR in the register (and even the power consumption lowers by 10-20% which is nice, but this isn't that much the datasheet claims for actual LPR). What are the consequences? (Unstable work? The mode is actually not activated?)
(STM32G0B1)
Solved! Go to Solution.
2023-10-31 03:32 AM
Hello @AYash.1 ,
Thank you for those interesting questions, I will try to help you
1. The sentence in the reference manual "Low-power run mode: This mode is achieved when the system clock frequency is reduced below 2 MHz." refers to the SYSCLK and not the HCLK. And yes I am agree with you the minimum input frequency for the HSE is 4 MHz, so in order to use the Low Power Run mode the user should use another clock as System clock source before entering in Low Power Run. After the Low Power Run you can switch on the HSE as input for the SYSCLK
2. Yes the MCU can not determine the running frequency, so if you exceed the 2MHz your application might works.
But you have to know that in Low Power Run mode, you switch from the Main regulator to the Low Power regulator which reduces the voltage on VCORE in order to reduce the consumption, depending of your application, your system might be unstable.
We test and validate the use of the low power regulator until 2MHz in Low Power Run mode and it is not recommended to exceed this frequency. Exceeding this frequency is for us out of specification and it is not guarantee.
Thanks
Aime
2023-10-31 03:32 AM
Hello @AYash.1 ,
Thank you for those interesting questions, I will try to help you
1. The sentence in the reference manual "Low-power run mode: This mode is achieved when the system clock frequency is reduced below 2 MHz." refers to the SYSCLK and not the HCLK. And yes I am agree with you the minimum input frequency for the HSE is 4 MHz, so in order to use the Low Power Run mode the user should use another clock as System clock source before entering in Low Power Run. After the Low Power Run you can switch on the HSE as input for the SYSCLK
2. Yes the MCU can not determine the running frequency, so if you exceed the 2MHz your application might works.
But you have to know that in Low Power Run mode, you switch from the Main regulator to the Low Power regulator which reduces the voltage on VCORE in order to reduce the consumption, depending of your application, your system might be unstable.
We test and validate the use of the low power regulator until 2MHz in Low Power Run mode and it is not recommended to exceed this frequency. Exceeding this frequency is for us out of specification and it is not guarantee.
Thanks
Aime
2023-10-31 06:01 AM - edited 2023-10-31 06:02 AM
Thanks for the reply!
May I ask you one more question about LPR then? 🙂
The RM states some peripherals like USB and FDCAN won't work ("not available") in LP-run mode.
I didn't test USB, but FDCAN seems to work in LPR.
Also the datasheet lists these peripheral's power consumption in LP-run mode, and it's pretty much the same (give or take) as in normal Run mode (so, they appear functioning in this mode at least according to this particular table).
So, am I missing something or it is indeed a discrepancy here (should I expect FDCAN & USB working properly in LPR or not?).
Thanks.
2023-10-31 09:08 AM
Hi @AYash.1 ,
I can double check with the team, but for me the FDCAN and the USB should work in Low Power Run and Low Power Sleep modes.
Because the Low Power Run has no effect on the clocks and keep them ON.
For instance, you can use the HSI48 as kernel clock for the USB and the HSE as kernel for the FDCAN and it should work.
I escalated this, to check if we should update the reference manual or not.
Best regards,
Aime