カスタマーサポートセンター

FAQ~よくある質問~ | FAQマスタ詳細表示

FAQ詳細情報

ID 10810704
FAQカテゴリ(大) コンパイラ
最終更新日 2014-03-19

質問内容

CortexM4の浮動小数点演算でソフトウェアライブラリが呼ばれてしまうのですが?

回答内容

CortexM4では浮動小数点演算器がオプションとなっており、実装されている場合には高速に浮動小数点演算を実行することが出来ます。

EWARMでは、コンパイラオプションを開き、[一般オプション]-[ターゲット]-[FPU]にてVFPv4を選択ください。

オプションをつけてもハードウェア命令が呼ばれない場合には、以下のような理由が考えられます。

1) CortexM4の浮動小数点演算は単精度(float)のみの対応です。

2) 浮動小数点の定数を使っていませんか?

    10.345*a*b ; などとすると、10.345が倍精度のため、以後の計算が倍精度になります。

   (float)10.345*a*b ; とすることで、倍精度演算を使わないで計算することが出来ます。

 

FAQ作成対象製品:EWARM  バージョン:7.10.1

 

参考資料URL