問題タブ [gtkwave]

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.

0 投票する
1 に答える
311 参照

vhdl - 関連するすべてのシグナルが定義されている間、シグナルは未定義にドロップされます

すべての着信ビットを探し、受信したビットの合計が 1 であるかどうかを追跡し、時間が来たら値を参照値と比較する必要があるプロセスを作成しています。プロセスは次のとおりです。

ここで問題が発生します: プロセス感度リストで定義されているすべてのシグナルが定義されていますが、GHDL (シミュレーター) によると、parity_test が true になるたびに値が未定義に変わります: シグナル 何が間違っているのでしょうか?

ラップトップに変更したときにエラーが変更されたため、ここにあったものを削除しました。ケーススイッチに関するものです。理由はまだわかりません。parity_bit_in_type は、範囲(0 ~ 3)の汎用 Natural です。必要なステートメント (この場合は 0) を取り出してケースを削除すると、すべてが期待どおりに機能します。WebPack ISE はそれについて不平を言うようには見えないので、GHDL のバグのように感じ始めます。

GHDL のバージョン管理:

同じ動作を示す最小限の例

0 投票する
2 に答える
1863 参照

vhdl - テストベンチでの入力割り当てと出力値 (ghdl および gtkwave)

具体的にいきます。

シミュレーションには Ubuntu 14.04LTS、GHDL コンパイラ、および GTKWave を使用しています。

シンプルな 2 マルチプレクサーをシミュレートするための 2 つのファイルがあります: mux2.vhd と mux2_testbench.vhd

これは、mux2.vhd のコードです。

テストベンチのコード

私がやっていること:

エラーなしで端末経由でコンパイルしています: ghdl -a mux2.vhdおよびghdl -a mux2_testbench.vhd

次に、テストベンチの実行可能ファイルを作成します: ghdl -e mux2_testbench

最後に、gtkwave を使用するために必要な vcd ファイルを作成します 。ghdl -r mux2_testbench --vcd=test.vcd &

シミュレーション: gtkwave test.vcd

このコードには 2 つの問題があります。 1. 信号 e0 と e1 に異なる値を書き込んでいますが、e1 はシミュレーションで何も示しません。常に「0」です。

  1. 出力信号はシミュレーションで値「U」を示します。これが何を意味するのかさえわからず、Googleで明確なものを見つけることができませんでした。

仲間の皆さん、よろしくお願いします。

0 投票する
2 に答える
1171 参照

c++ - sc_buffer と sc_signal の違いを確認するにはどうすればよいですか?

sc_bufferとの使用の違いを確認したいと思いsc_signalます。2 つの乱数を追加するモジュールをコーディングしてから、2 つのテストを並行して実行します。1 つは を使用sc_bufferし、もう 1 つは を使用しsc_signalます。それにもかかわらず、私が確認するとgtkwave、両方の例で同じトレースが表示されるため、この場合は違いはないと思います. どうすれば違いを確認できますか?それとも、これら 2 つの異なるタイプのチャネルが異なるアプリケーションを対象としているということですか?