サンプルコードとドキュメント

商&余り 関数を使わない方法

コードとドキュメント

添付

すべてをダウンロード

概要

商&余り関数を使わず、別の方法で機能を実装します。

詳細

LabVIEWに商&余り関数がありますが、この関数はFPGA上での使用が非推奨です。

『FPGA VIで可能な限り大きなVIおよび関数の使用を回避する(FPGAモジュール)』

http://zone.ni.com/reference/ja-XX/help/371599J-0112/lvfpgaconcepts/avoid_large_functions/

この関数は、非常に大量のFPGAリソースを消費します。

そのため、別の方法でこの機能を実装する必要があります。

『Dividing in FPGA?』

http://forums.ni.com/t5/LabVIEW/Dividing-in-FPGA/td-p/189324

こちらにてEdが提案していた方法を、VIとして書き出してみました。

また、割り算は分母が"0"となることは許されていないため、

その場合にエラーが発生するように作り直しています。

FPGAの最適化については、こちらの資料をご覧ください。

『FPGA のリソースやスピードをを最適化する方法はありますか?』

http://digital.ni.com/public.nsf/websearch/D4708C8DFA0DA1BC8625773400102D71?opendocument&Submitted&&...

実装・実行方法

1. VIを開きます。

2. AとBの制御器に値を入力して、VIを実行します。

3. Remainderに余り、Quotientに商が出力されます。

必要なもの

ソフトウェア

・LabVIEW 2012以降

w.png

NIコミュニティのサンプルコード交換のサンプルコードは、MIT Licenseによりライセンス供与されています。

コメント
M.Arafuka
NI Employee (retired)

Quotient_Remainder.viと93901Quotient_Remainder.viの違いは何でしょうか?

あと2つのVIで、Falseのケースにエラークラスタ定数が配線されていないで残っているのですが、何か意図がありますでしょうか?

寄稿者