STM32F7x[7,8,9] double prec FPU

ChibiOS public support forum for topics related to the STMicroelectronics STM32 family of micro-controllers.

Moderator: RoccoMarco

User avatar
alex31
Posts: 445
Joined: Fri May 25, 2012 10:23 am
Has thanked: 57 times
Been thanked: 88 times

STM32F7x[7,8,9] double prec FPU

Post by alex31 »

A new stm32f7 line, with double precision FPU, is now available :
stm32F7X7 line

This line of products bring the long awaited double precision fpu, and (sounds weird to me, but i won't complain) it's cheaper that
the single precision version.

Is the support for this line is planned ? and if it is, for which chibios version is it scheduled ?

We will launch a new openhardware autopilot for opensource paparazzi project, we have prototype board with single prec
F7, but since double prec MCU is pin to pin compatible, it will allow us to run computing intensive filter that need double precision
for numerical stability.

Thanks
Alexandre
User avatar
Giovanni
Site Admin
Posts: 14893
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 997 times

Re: STM32F7x[7,8,9] double prec FPU

Post by Giovanni »

Hi,

As soon we get a board we will introduce support, the only difference should be in makefiles because the compiler must use another FPU mode.

Giovanni
User avatar
alex31
Posts: 445
Joined: Fri May 25, 2012 10:23 am
Has thanked: 57 times
Been thanked: 88 times

Re: STM32F7x[7,8,9] double prec FPU

Post by alex31 »

the only difference should be in makefiles because the compiler must use another FPU mode.


Woah, this simple ?, ok, i can manage to try :-)

I was thinking that something has to be done on the context saving side, fpu registers will be larger so the saving routine has to be adapted no ?

Code: Select all

As soon we get a board we will introduce support

We will order some 100 pins chip as they are available now, if disco boards with that chip are late,
i can send you one autopilot fitted with that chip as soon as we built it.

Alexandre
User avatar
Giovanni
Site Admin
Posts: 14893
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 997 times

Re: STM32F7x[7,8,9] double prec FPU

Post by Giovanni »

If I remember well double types simply take 2 registers.

Giovanni
User avatar
alex31
Posts: 445
Joined: Fri May 25, 2012 10:23 am
Has thanked: 57 times
Been thanked: 88 times

Re: STM32F7x[7,8,9] double prec FPU

Post by alex31 »

You are right, so using fpv5-d16 instead fpv5-sp-d16 should be sufficient.

there will also be a need for a slight modification of .ld file since this new families have 512ko ram instead of 384ko.
With the new organisation of ld file, it will be easy.

ps: ST will soon reach the 640ko limit, does chibios plan to add a himem extension :-) (joking of course)

Alexandre --
User avatar
Giovanni
Site Admin
Posts: 14893
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 997 times

Re: STM32F7x[7,8,9] double prec FPU

Post by Giovanni »

Of course, you will just need to add some .sys file to the project.

Giovanni
User avatar
Giovanni
Site Admin
Posts: 14893
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 997 times

Re: STM32F7x[7,8,9] double prec FPU

Post by Giovanni »

Hi,

I added a new option to modify FPU settings in STM32F7 makefiles.

Giovanni
User avatar
piers
Posts: 42
Joined: Fri Apr 06, 2012 1:02 am
Been thanked: 15 times

Re: STM32F7x[7,8,9] double prec FPU

Post by piers »

Thanks, I'm trying to get my hands on some STM32F767's, seems well worth the upgrade (I'm now using STM32F745).
User avatar
alex31
Posts: 445
Joined: Fri May 25, 2012 10:23 am
Has thanked: 57 times
Been thanked: 88 times

Re: STM32F7x[7,8,9] double prec FPU

Post by alex31 »

Hello,

I have tried to port some stuff from nucleo F746 to nucleo F767, using master branch, and
i have met a strange bug : RTC works on F746 but not on F767.

there is infinite loop at init :

Code: Select all

 while ((RTCD1.rtc->ISR & RTC_ISR_INITF) == 0)


So, for a mystery reason, RTC_ISR_INITF bit did not rise.
I have compare cmsys files stm32f746xx.h and stm32f767xx.h, and for the RTC peripheral, it's exactly the same stuff.

To reproduce the bug, just enable RTC in halconf.h of the RT-STM32F767ZI-NUCLEO144 demo and flash it.

What is very strange is that all the fields of RTCD1.rtc structure are zeroed

can be because peripheral (or his RCC) is not enabled ?

Alexandre
User avatar
Giovanni
Site Admin
Posts: 14893
Joined: Wed May 27, 2009 8:48 am
Has thanked: 1202 times
Been thanked: 997 times

Re: STM32F7x[7,8,9] double prec FPU

Post by Giovanni »

Is the xtal present on the board? Is the RTC clock enabled?

Giovanni
Post Reply