電音の工場ブログ

当ブログは…

自作エフェクターシンセサイザ製作のネタや開発覚え書きなど、筆者の電音活動を記録しています。お探しの記事が見つからない方は、検索カテゴリ一覧をご利用ください。

スパマーが来訪すると、ときどきコメントをはてなユーザのみに絞ったり開放したりすることがあります。

2005-05-25

Chaotic LFOのためのメモ

|  Chaotic LFOのためのメモ - 電音の工場ブログ を含むブックマーク はてなブックマーク -  Chaotic LFOのためのメモ - 電音の工場ブログ  Chaotic LFOのためのメモ - 電音の工場ブログ のブックマークコメント

id:Chuck:20050515#p2 にトラックバックを打ちつつ、

AVRのATmega88をターゲットに a = 10, b = 28, c = 8 / 3 で float で演算式を並べてみたら*1、ざっくりと Intel Hex ファイルが 3KBというサイズになった。値の正規化、DACへの出力、値の更新周期を変える機構 を入れて ATmega88 のコード領域にぎりぎり入るかな? 入らなければ、Strawberry-Linuxさんで取り扱いを始めた ATmega168を使えば良いだろう*2

追記

なにも考えずに float で書いたプログラムを動かして、AVRシミュレータで処理時間計測。8MHz で、Lorenz Attractor の 1tick に 388μsec。

値の正規化とクリッピング処理、offset binary 変換*3をしても 500μsec で1サンプル出力できそう。

float の1ワード には 4byteが割り当てられていた。IEEE の単精度浮動小数点フォーマットなのかな(ちゃんと調べろ→自分)。ビット数をケチる方向でフォーマットを変えると自分で演算ライブラリも作らなければいけないが、容量的・処理時間的に間に合うならそのままでいこうと思う。

*1:基本的には以前DSPでやったもの。

*2:といってしまうあたり 大名プログラミング(c)Chuck。あるいは 富豪プログラミング(c)増井さん。

*3:AD7528には 2's compliment のモードは無いよねぇ…