FM4の例外処理(アンダーフロー例外)

Tip / ログイン to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
TeMa_2997106
Level 6
Level 6
Distributor - TED (Japan)
10 likes received 10 solutions authored 250 replies posted

下記スレッドにて、FM4の例外処理について問い合わせましたが、その続きです。

FM4の例外処理

ご指摘いただいた資料

https://www.cypress.com/file/276616/download

のp.357以降に例外の一覧があり、確認は致しましたが、その例外に入った場合の処理の詳細は

どこかに記載されているマニュアルはありますでしょうか。

知りたいのは、FM4として単刀直入に浮動小数点演算のアンダーフローを検出した際の例外処理はFM4にあるかどうか、です。

下記のM4のテクニカルリファレンスマニュアルには「アンダーフロー例外」と記載がありました。

http://infocenter.arm.com/help/topic/com.arm.doc.ddi0439cj/DDI0439CJ_cortex_m4_r0p1_trm_ja-JP.pdf

具体的にどのようなルーチンなのかが理解できませんでした。

意図としては、先のスレッドの質問同様ですが、過去の他社MCUでの例として、ソースコードの実装上の都合で浮動小数点演算でアンダーフローが発生した場合に、MCUが例外処理のルーチン(浮動小数点例外)に入ってしまい動作が停止してしまったことがあったため、FM4側の設定で、そのような場合に例外処理を発生させず、処理を継続するような設定が可能かどうかを確認したい、ということです。

以上です。

0 件の賞賛
1 解決策
Takashi_M
Moderator
Moderator
Moderator
1000 replies posted 500 solutions authored 750 replies posted

FM4に搭載されているVFPについて確認しました。

結論から申し上げますと、VFPのExceptionに付きましては発生いたしません。

これはデバイスのデザイン上で、そのようになっております。

よって、浮動小数演算に於いてアンダーフローが発生した場合、デバイスレベルで例外は発生いたしません。

元の投稿で解決策を見る

4 返答(返信)
Takashi_M
Moderator
Moderator
Moderator
1000 replies posted 500 solutions authored 750 replies posted

FM4に搭載されているVFPについて確認しました。

結論から申し上げますと、VFPのExceptionに付きましては発生いたしません。

これはデバイスのデザイン上で、そのようになっております。

よって、浮動小数演算に於いてアンダーフローが発生した場合、デバイスレベルで例外は発生いたしません。

TeMa_2997106
Level 6
Level 6
Distributor - TED (Japan)
10 likes received 10 solutions authored 250 replies posted

ご回答ありがとうございます。了解しました。

アンダーフロー例外が発生しない、という前提であるので、浮動小数点の例外発生時は

当該の浮動小数点型のデータを0として処理を進める、という認識で正しいでしょうか。

※アンダーフロー例外が発生しない≒処理が継続される≒0に丸めて処理を継続する

 という意味で理解しました。

以上です。

0 件の賞賛

アンダーフロー時の振る舞いについてですが、モードにより変わります。

詳しくはARMのドキュメントを参照ください。

以上です。

0 件の賞賛
TeMa_2997106
Level 6
Level 6
Distributor - TED (Japan)
10 likes received 10 solutions authored 250 replies posted

了解致しました。確認いたします。

以上です。

0 件の賞賛