私は静的なlibをMATLAB関数から生成しようとしています。生成されたコードには、FPGAプロジェクトのvivado HLSでこのコードを使用したいので、私がしたくないmemsetとmemcpy関数呼び出しが含まれています。許可されます。codegen:matlabでmemcとmemcpyを生成コードに取り除くには?
私は以下を試しました 1)Matlabコーダーアプリから「変数サイジングを有効にする」のチェックを外してください。 2)
cfg = coder.config('lib');
cfg.GenCodeOnly = true;
cfg.EnableVariableSizing = false;
cfg.EnableMemcpy = false;
cfg.SupportNonFinite = false;
cfg.InitFltsAndDblsToZero = false;
cfg.FilePartitionMethod = 'SingleFile';
cfg.DynamicMemoryAllocation = 'off';
codegen -config cfg harris -args { zeros(640,480,'uint8'),zeros(1,1,'int32')}
ラインcfg.InitFltsAndDblsToZero =偽次のコマンドラインスクリプトを使用します。は、配列の初期化のためのmemset呼び出しを排除するはずですが、生成されたコードではまだmemset関数呼び出しが表示されます。
したがって、どちらの方法も私にとっては機能しません。
設定の変更が必要かどうか、これがmatlabコーダーguiで可能な場合は教えてください。
P.S. 私はこのリンクを使用してcodegen設定オブジェクトのプロパティを設定しました。http://www.mathworks.com/help/coder/ref/coder.embeddedcodeconfig-class.html
これを再現するためのサンプルコードがありますか? – Navan