DSPプログラムを効率よく作成するために、 C言語を一部拡張しています。 代表的なものとして、以下のものがあります。
この中で絶対に必要なものはdm
, pm
です。
SHARCプロセッサは
DM (Data Memory) とPM (Program Memory) という
2つのメモリ空間を持っています。
dm
とpm
は、このどちらを使うかを指定します。
static
と同じように使います。
例えば、下記のようになります。
dm float delay[TAPNUM+1]; /* データはDMに置かれます */ pm float coef[TAPNUM]; /* データはPMに置かれます */ float pm * dm ptr; /* PMに置かれたfloatデータに対するポインタがDMに置かれます */なお、メモリ指定を省略した場合には、 データはDMに、プログラムはPMに置かれます。
実際に関数を呼び出すのではなく、 関数に相当する処理を呼び出し元に展開します。 ただし、再帰呼び出しをするような関数などは通常の関数と同様に扱われます。 下記のように使用します。
inline int Function(int x) { ....... }
(作成: 2000年6月12日, 最終更新: 2001年9月17日)