From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

NI製品ディスカッション

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

FPGAã�«ã��ã��ã��移å��å¹³å��ã��ã�­ã�°ã�©ã�

 

現在、入力信号10Hz(サンプリング周波数1000Hz)に対して、 1周期分(100点)のデータの平均値を出力し、

1サンプル移動して同様に100点のデータの平均値を出力する、というような移動平均のプログラムをFPGAで書きたいと考えております。

FPGAを利用しなければ上記の仕様を満たしたプログラムを構築できるのですが、FPGAを利用するとサポートされていない関数が含まれておりコンパイルできません。

 

FPGAで構築する場合は、フィードバックノード(またはシフトレジスタ)を用いて構築する方法があるかと思いますが、それ以外に方法はありますか。

この方法だと、100点ずらすのに100回フィードバックノードを利用することになると思われるので、できれば避けたいです。

 

ご教授、アドバイス等宜しくお願いいたします。

0 件の賞賛
メッセージ1/2
2,930件の閲覧回数

1000点のデータについて100点ずつ更新を行っていき、その1000点分の平均を取りたい、という理解で正しいでしょうか?

 

ひとつ思いついたのは、

1. 1000要素の空配列を作成

2. 100点ずつデータを挿入していく

3. 1000点たまったら平均

4. 古いデータ(たぶん900から999)を新しいデータと配列置換

5. 平均を取る

6. 4, 5の繰り返し

というのはいかがでしょう?

Certified LabVIEW Developer
There are only two ways to tell somebody thanks: Kudos and Marked Solutions

GCentral
0 件の賞賛
メッセージ2/2
2,898件の閲覧回数