STM32F7が発表になってCMSISヘッダファイルもようやくV4.00になった

20150717追
STM32F7はぢめました
20150717追


少し前にCortex-M4をさらに進化させたCortex-M7が発表され、ねむいさんを含む一部の
方の間で騒然としておりました。同時にSTMicroさんからも同コアが搭載されたSTM32F7
シリーズ
が発表され、既にBGA品がサンプルとして出荷されているそうです。

既にSTM32F7用のサイトもあってデータシートも公開されております(RMはまだです。)
Cortex-M7コアではAXI+AHBのマトリクスになり、密結合メモリ(TCM)もインストラクション
とデータ専用に用意されさらに外部メモリ用にI/Dとも4kByteずつL1キャッシュも搭載されて
おります。ねむいさんがSTM32F7で着目したのはLPC4300シリーズではおなじみのクアッド
SPI-ROMの対応
です。
これによりリニアなアドレスに配置されて内蔵フラッシュと同じ感覚で使用できることに
なるためFONTX2のような大容量のデータを扱うプログラムも組み易くなりますね♥
内蔵フラッシュが1MBに抑えられているのもデータの塊はSPI-ROMに押し込めよという
意図があると思います。

あとCortex-M7では浮動小数点演算ユニット(FPv5)が倍精度まで対応しています…が、
STM32F7ではSTM32F4と同じ単精度のみの対応となるそうでF**K!発表された当初は
データシートよく読み込んでおらず、ついに倍精度に対応かー!と思い込んでたので
ぬか喜びでしたorz

アーキテクチャとしてはCortex-M4Fと同じARMv7E-Mとなるのでバイナリは互換出来る
そうです。STM32F4ではTCMではなくCCMがありましたがそれが配置されていたアドレスは
TCMとは全く異なりますので凝った使い方されている方は結局リンカスクリプトから組み直し
になりますのでご注意ください。しかしながらCCMではできなかったDMA転送がDTCMでは
可能
になっていますのでかなり素直にプログラムを組むことができるようになるでしょう。


さて、発表されたばっかで商用はともかくGCCコンパイラもこれから対応開始となるようです
のでSTM32F7を実際に入手して遊べるようになるのは半年くらい先になるかなと思います。
STM32F2の時見たくES品が中華から流れてきてくれたらもっと早いかも。
20141001追:
LauchpadのARM-GCCがアップデートされましたがなんとCortex-M7の対応が
ギリギリで突っ込まれたようです!
STM32F7対応にする場合はSTM32F4からは以下のようにオプションを変えることに
より可能です。
STM32F4:
-mthumb -mcpu=cortex-m4 -march=armv7e-m -mtune=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16
STM32F7:
-mthumb -mcpu=cortex-m7 -march=armv7e-m -mtune=cortex-m7 -mfloat-abi=hard -mfpu=fpv5-sp-d16

そしてCMSISのサポートの方ですがこちらの方は発表と同時にCMSISもアップデートして
ヘッダライブラリもやっとこ3.30->4.00に更新されています。もちろんCortex-M7コアの
ヘッダも追加されております。ようやくメジャーナンバの更新になりましたが私が試した
ところでは全く影響はなかったのでそのまま差し替えて使用が可能かと思います。
おきぱのプログラムも10月度の更新から順次V4.00版CMSISヘッダファイルに差し替えて
更新していきますのでよろしくおねがいします。




おまけ

STM32F411RE-Nucleoが夏前に手に入りました。STM32F411シリーズはF401の機能拡張版
の位置づけのようです。PCM1723氏が非常に詳しく考察されています。
PCM1723氏もCubeMXのバグに言及されてますね…
なお、おきぱのF401-Nucleo向けのバイナリはそのままSTM32F411版でも使用可能です。

OpenOCDはSTM32F411シリーズは未対応だったので対応させております。本来はOpenOCD
小ネタ行きの案件ですが小ネタ過ぎて載せられなかったのでこちらで告知させていただきます。
次回は大物の更新が控えていますのでご期待下さい♥
おきぱにあるWindows用バイナリもすでに対応済ですのでご利用ください。

おまけのおまけ

ああああああああああああ!!
RTC用のチップコンデンサは位置的に物が当たり易い位置にあってすぐ欠けるorz

Go to top of page