2013年2月3日日曜日

DFT IPの作成 21

あっ! ....................................................................................................... っと言う間にもう2月だ。


DFT IPの作成を開始したのが昨年の10月27日だからもう4ヵ月近くやってるのか。
前回、固定小数版は32bit版でまっいっか!ということにしたので、後回しにしていたメモリへの書き込み機能をやろうかと考えた。DFTの結果をメモリに書き出してどうしたいかというと、最終的に以下のような3D表示をなるべくリアルタイムに近い速度でやって見たかったからだ。


このDFT IPはサンプリング周期毎に1024@CH分のスペクトル値が算出されるので、これをメモリに書出しておいて、CPUで上記のような3Dグラフに変換して描画できれば面白いかなと考えたのだが、よくよく考えると、Atlysボードのメモリ容量が全然足りない。   Atlysボードには128MByteのDDR2 SDRAMが搭載されている。 スペクトルデータは32bit floatで複素数形式なので、1024点で 4Byte x 2 x 1024 = 8KByteになり、サンプリングレートを最高の48KHzとした場合は秒当たり 8K x 48000 = 375MByteと、かる~く 128MByteを越えてしまう。。。間引くかサンプリングレートを下げるかしないととても無理だ。 また、間引いてメモリに書き込んだとして、今度はメモリのデータをPCにどう転送するかが問題になる。現状USB-Serialは1Mbps(100KByte/sec)弱しか出せていないので、帯域が全然たりない。。。

ということで、メモリ書き込み機能へのモチベーションが失せてしまった。

ここらでDFTネタは一区切りして、他のネタに移ろうかな? それとも、DFT-IPのALTERA版(DE0への実装)をやってみようか?。。。


2 件のコメント:

  1. 3DレンダリングパイプラインをFPGAで実装とかやってほしいです

    もしできたら見た目的にすごく楽しそうです

    返信削除
  2. こんばんは。コメントありがとうございます。

    3Dレンダラーですか。
    この分野はあまり詳しく無いんですが、確かに面白そうですね。
    勉強にもなりそうだし。
    ダメ元でやってみます。

    お題頂戴しました。(笑)

    返信削除

ERROR: Failed to spawn fakeroot worker to run ...

なにかと忙しくてなかなか趣味の時間を確保できない。 ...orz  家の開発機のOSはLinux Mintなのだが、最近バージョンを22に更新したところ、myCNC用のpetalinuxをビルドできなくなってしまった。ビルドの途中で ERROR: Failed to spawn ...