マイコン(MCU)用 IQmath ライブラリ

テキサス・インスツルメンツの IQmath ライブラリは、C/C++ プログラマ向けの高度に最適化された高精度の数学関数ライブラリで、浮動小数点アルゴリズムを固定小数点コードにシームレスに変換できます。通常、これらのルーチンは、大量の計算を必要とし、最適な処理速度と高い精度が重要とされるリアルタイム・アプリケーションで使用されます。これらのルーチンを使用することにより、標準 ANSI C 言語で作成された同等のコードよりも大幅に処理速度を向上できます。IQmath ライブラリは、プログラマブルなダイナミック・レンジと分解能を定義することで、固定小数点の計算に伴う制限も緩和します。

IQmath は現在、Stellaris® ARM® Cortex™-M3 の StellarisWare®、および C2000™ マイコン用 controlSUITE™ の全リリースで利用できます。

DK-LM3S9B96 に付属の IQmath のデモでは、浮動小数点のエミュレーションと IQmath を切り替えて、回転する十二面体を描画します。

  

IQmath を使用すると、浮動小数点のシミュレーションとアルゴリズムの固定小数点マイコン(MCU)への移植を簡素化できます(画像をクリックすると拡大)。



IQmath による利点
»  固定小数点プロセッサ用演算ライブラリにより、浮動小数点の値の計算を高速化
— サイン、コサイン、タンジェント、アーク・サイン、アーク・コサイン、平方根、小数の乗算と除算など
»  次の用途での計算の高速化
— モーター制御
— サーボ制御
— オーディオ/イメージのエンコーディングとデコーディング
— 固定小数点の Qmath
— グラフィカルな回転
»  アプリケーションの要件に基づいて分解能を調整可能
— #define GLOBAL_Q 18
»  固定小数点デバイスと浮動小数点デバイスの間でシームレスなコード移植性を実現
  
関数一覧
形式変換ユーティリティ
atoIQN、IQN、IQNfrac、IQNint、IQNtoa、IQNtoD、IQNtoF、IQNtoIQ、IQtoIQN、IQtoQN、QNtoIQ
算術関数
IQdiv、IQmpy、IQNdiv、IQNmpy、IQNmpy、IQNmpyI32、IQNmpyI32frac、IQNmpyI32int、IQNmpyIQX、IQNrmpy、IQNrsmpy
三角関数
IQNacos、IQNasin、IQNatan、IQNatan2、IQNatan2PU、IQNcos、IQNcosPU、IQNsin、IQNsinPU
数学関数
IQNexp2、IQNisqrt、IQNmag、IQNsqrt
その他
IQNabs、IQNsat
  


DriveTechLogo.png


「当社では TI の C2000 コントローラを使用したリアルタイム・モーター制御アプリケーションで、IQmath を 5 年以上にわたって活用しています。IQmath を使用すると、スケーリングや飽和(アンダーフローやオーバーフロー)を心配する必要がないので、固定小数点デバイスのコーディングがいっそう容易になります。効率的なライブラリ・セットが提供されているので動作はより高速になり、浮動小数点のコードを記述することも、直接統合することもでき、ダイナミック・レンジの変更や必要な精度の選択ができるので、信頼性もより向上します。私が設計している、複雑な電源用途で安定性の高い制御システムを製作するには、正確なレンジと精度が不可欠です。さらに、同じコードを現在使用可能な C2000 浮動小数点デバイスに移植することもできます」
—  Dal Ohm 博士、Drivetech, Inc.

 

詳細

DriveTechLogo.png Dal Ohm 博士、
DriveTech Inc.
DrOhm.png
IQmath を活用しているモーター制御の専門家の事例

「リアルタイム・モーター制御アプリケーションで、IQmath を 5 年以上にわたって活用しています...」
詳細


最新情報



C2000 技術リソース



Stellaris 技術リソース

Stellaris® マイクロコントローラ・ファミリ・カタログ Stellaris® マイクロコントローラ・ファミリ・カタログ

2010 年版カタログでは、開発を容易にする Stellaris MCU と評価キット全般を特集しています。

詳細
controlSUITE™ カタログ controlSUITE™ カタログ

controlSUITE™、コンポーネント、アプリケーションの重点を説明する controlSUITE カタログ

詳細