問題タブ [simulink]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
fpga - Simulink での 2 つの複素ベクトルの行列乗算
本当に2つの質問ですが、もっと説明的にしたいと思います:
複雑なベクトルの行列乗算を含む変調器を実装しています:
例を挙げると:
基本的に、これを Simulink (Xilinx) で、最終的にハードウェアで実装する必要があります。
私の質問は、複雑なベクトルを使用して行列乗算をモデル化する方法です。私の理解は、Complex Multiplierを使用することです。しかし、それは2つの複素ベクトルのみを乗算することです
1 つのクロックで 2 つ以上の複素数ベクトルを乗算する必要がある場合、それは可能です。
モデル自体のような答えは期待していませんが、問題を解決するためのアプローチ/方向性があれば
読んでくれてありがとう、キラン
synchronization - ザイリンクス Simulink でのタイミング信号の理解
Simulink (Xilink ライブラリ) のタイミング信号の概念を理解するのに苦労しています。
例を挙げて説明しますが、
シリアル ビットストリームがあり、奇数ビットと偶数ビットの合計を取りたいとします。
したがって、おそらく次のような Matlab コードを記述します。
少しの間、このコードが機能しない可能性がある最適化と特殊なケースをすべて無視するとします。
これをハードウェアに実装する必要があると仮定すると、これData_Bits
はシリアルに行われるため、基本的に 2 クロック サイクル待って 2 入力ビットを取得し、それを追加して出力を生成します。
したがって、2 クロック サイクルごとに、出力があります。
有効な出力が得られるようにザイリンクスでタイミング信号を管理することは可能ですか。
だから私は出力で中間結果を得たくありません。
どうすればそれを達成できますか?フリーランニングクロック(カウンター)である種のイネーブル入力を使用することを考えています。
しかし、本当に複雑なシステムを設計する際に、これをどのように管理すればよいのでしょうか?
ハードウェア設計の経験はあまりありません。したがって、私の質問が危険なほど単純で愚かである場合、私の知性に申し訳ありません。
読んでくれてありがとう
キラン
simulink - 信号が Simulink のバスから発信されているかどうかを確認する
Simulink でバス信号をサポートしない S-Function があるため、プログラムを使用して、入力ポート/出力ポートの信号タイプがバスから発信されているかどうか、またはバスに向かうかどうかを判断する方法を見つけようとしています。必要に応じて自動的に信号を送ります。残念ながら、ポートがバスから来ているかバスに行くかを確実に伝えることができる唯一のブロック プロパティは、バスからプロパティを継承するかどうかであり、すべての場合に当てはまるとは限りません。これを理解する方法について何か考えはありますか?
fpga - Simulink でのスライス ブロックの使用
スライス ブロック (Xilinx Bit Slice Extractor) の使用に問題があります。入力の Binary Point の前に 2 ビットを抽出する必要があります。
したがって、入力が 2 の補数で表され、入力がたとえば 2.25 の場合
000* 10 *.01000000 として表されます。したがって、2 進小数点の前に 2 ビットだけを抽出する必要があります。(この場合は 10)
スライス ブロックでない場合、必要なビットをより柔軟に抽出できる手法はありますか。
Bitbasher ブロックを使用して同様の問題が発生しています。
ありがとうキラン
fpga - ザイリンクスでの ceil 関数の実装
Simulink(ザイリンクス ライブラリ)で信号の天井を取りたいと思っています。たとえば、信号値が 1.5 の場合、出力は 2 になります。
Simulink でどのように実装できるかについて何か提案はありますか?
また、たとえばフロア、ラウンド関数も実装する方法を理解したいと思っています。
それを行うザイリンクス ライブラリのブロックはありますか?
ありがとう
キラン
fpga - Simulink での CORDIC ATAN ブロックの構成
Simulink で CORDIC ATAN ブロックを使用しています。このブロックを使用して位相差を計算しています。
ここに私が使用しているモデルの一部があります:
入力 a と b を 0 として指定していますが、 の値Phase_Signal
もゼロになると予想していました。
しかし、明らかにそうではありません。私はPhase_Signal
1.7277として取得しています。
CORDIC ブロックを正しく構成していない場合はお知らせください。
ATAN ブロック パラメーター:
ありがとう
キラン
fpga - Simulinkで最大数を取得するにはどうすればよいですか?
私は、8つの信号のセットの最大値を見つけ、最大値のインデックスも見つける必要があるモデルを構築しています。
Simulink(ザイリンクスライブラリ)でこのようなモデルを構築するにはどうすればよいですか?
Compareブロックの後にcounterブロックが続くと推測しています。しかし、どういうわけか、私はすべてのものを一緒に理解することができません。
ありがとう
matlab - s-function から呼び出される別の c ファイルにあるときに printf を機能させるにはどうすればよいですか?
別のファイル myFoo.c に実装されている関数 foo() を呼び出すファイル mySFun.c に s-function があります。mySFun.c の mdlOutput 関数内に printf ステートメントを記述すると、正常に動作します。しかし、myFoo.c の関数 foo() 内に printf を配置すると、コマンド ウィンドウに出力が表示されません。
printf が s-function から呼び出される別のファイル内にある場合、printf 機能を有効にするにはどうすればよいですか?
binary - Simulink でのパターン マッチング
特定のビット パターンの入力を比較するモデルを構築しようとしています。
たとえば、入力パターン 1110 をチェックする必要がある場合、3 つの遅延要素を持つモデルを作成して入力を取得し、それを連結してから、コンパレータを使用して 14(Hex E) と比較します。
現在、128 ビットのパターン マッチングを行う必要があります。前の例から言えば、理想的には、127 個の遅延要素を使用してブロックを比較する同様のモデルを構築できます。
しかし、それを行うための最適で「より良い」方法があるかどうかを知りたいです。
この点について何か提案をお待ちしております。
興味のある方は、8 ビットを抽出するために作成した小さなモデルを次に示します。
fpga - Simulink のケース ステートメント
続行する方法がわかりません:
私はモデルを構築しようとしています:
- 4 つの入力 (ブール i/p) があります。
- 1つの出力があります(符号付き:8ビット)
次のことを実行します。
- どの入力が 1 であるかに基づいて、DataRate を反映した対応する出力が得られます。
Matlab で書く必要がある場合は、次のように記述します。
同じ機能のために開発しているモデルの一部を添付しています。
続行する方法、コードの修正、または改善方法に関する提案についてのアイデアは本当に役に立ちます。
ありがとう