スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

DSP処理速度上がらず

DTC+DSPによるエンコーダ処理の高速化プログラムを作っている.
動作するプログラムはできたが,DSPを使う部分で逆に処理が遅くなってしまっている.

調べてみるとDSPにデータを入れた後の積和演算は目論見どおり劇的に速くなっているが,
その前処理のデータ並び替えに時間がかかり,全体としてのパフォーマンスが下がっていることがわかった.
DTC→【前処理 x DTC転送データ数】→DSP→後処理

 リングバッファの循環アドレスをリニアに展開する処理,Inputキャプチャのタイマカウンタの差分を取る処理,回転方向判別と補正用LUTの並べ替え処理などをForループ内でDTCで転送したデータ数ぶん実行しているが,データ個数が多くなるほど時間がかかり,DSPの足を引っぱっている.
理想的にはこうした変換処理はゼロにしてDTC→DSPとダイレクトにデータを流したい.
しかし,現状のアルゴリズムでは条件分岐が入るためソフトの介在がどうしても必要になる.

今一度アルゴリズムをゼロから見直し,なんとかDSPのメリットが活きる形にもって行きたい.
スポンサーサイト

この記事へのコメント

トラックバック

URL :

プロフィール

もやね

Author:もやね
長野県在住の会社員(メカニカル・エンジニア).
ロボットは完全な趣味としてやってます.
E-mail:
mo_ya_ne[a]yahoo.co.jp
[a]⇒@

最近の記事
最近のコメント
最近のトラックバック
月別アーカイブ
カテゴリー
FC2カウンター
ブログ内検索
RSSフィード
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。