数値積分手続きにおいて,非線形項が多項式で記述されるため,
状態に関するその多項式の値を一次的にメモリに保管しておかねば
ならない点が,アナログ回路が非線形素子を通じて解を生成する
メカニズムとの本質的な違いである.
前回の報告[1]で用いた固定小数点型DSPでは,時刻および
状態変数のスケーリングを行なわねばならないのはもちろん,
Runge-Kutta(RK)アルゴリズム中の積すべてにおいて
整数部のダイナミックレンジを確保することが問題となっていた.
非線形多項式の各項における値域の正規化や,
元の力学系の性質を失なわない程度のスケーリング係数を
決定することは固定小数点型変数では至難である.
そこで本研究では,プロセッサを浮動小数点型を採用した
C3x シリーズに変更した.これにより,スケーリングの手間を
プログラマに負担させることなく,演算精度が維持されるようになった.
実験機器としては, Texas Instrument社のプロセッサ
C3x(50MHz, 32Bit floating point 25MIPS, 50MFLOPS,
internal RAM: 2K word)を搭載した実験ボード TMS320C3x DSKを
ベースに,外部 SRAM: 32K word (256kBit 4),
16Bit stereo audio CODEC(標本化周波数 4〜50kHz可変)
を拡張したものを用いた.図3にその概要を示す.
ソフトウェアとしては,C言語を用いることができる.
UNIX 上で g++
を用いてクロス開発を行なう.
生成したバイナリは,専用デバッガを用いて実験ボードにロードさせた.
実験対象としては,物理モデルを伴わない3次元自律系 Chen 方程式[2]
を用いた.
![]() |
![]() |
RK法の積分刻み は,問題に依存するが,ある程度
任意に変えられるため,カオス発振の中心周波数の
設計も自由度が高い.
図 3 では
と取った場合の FFT結果を示している.
ほぼ DC〜5KHz のレンジでカオス的な性質である一様な
スペクトルがみられる.
図 4 では
と刻みを大きく取ることにより,
スペクトルは高い周波数にシフトし,「速いカオス」が
表現されていることが分かる.刻み
,標本化周波数,
計算アルゴリズムの速さにはそれぞれトレードオフが
あると考えられ,今後はできるだけ速いカオスの
出力のための最適化が課題となる.