2013-03-28 11 views

答えて

9

これらの用語の厳密な定義はIEEE Std。しかし、通常、構造は、モジュールインスタンス(特に、ANDゲートおよびフリップフロップなどの下位レベルのビルディングブロック用)を使用してデザインを記述することを指します。ビヘイビアは、alwaysブロックを使用してデザインを記述することを指します。

ゲートネットリストは常に構造であり、RTLコードは通常ビヘイビアです。 RTLにはクロックゲートとシンクロナイザセルのインスタンスがあるのが一般的です。ここ

3

構造

機能は、それがちょうど 接続及び配置などである..例えばインバータ等の基本的な構成要素、 MUX、加算器、デコーダ、基本的なデジタル論理ゲートなどを使用して定義され が利用できる回路の異なる部分が機能を実装しています。

Behavorial

Verilogで動作記述は、アルゴリズム的方法で設計の機能 を記述するために使用されます。 Verilogの動作モデリング は、C言語の構造体と同様の構造体を使用します。さらに、 は2つのサブカテゴリに分割されています。データの

  • (A)連続割当出力に連続しています。これは、明示的な "assign"ステートメントを使用して実装された であるか、宣言中にワイヤに 値を割り当てることによって実現されます。 入力に変更があった場合は、すぐに に出力します。したがって、出力は、ここではデータの割り当てではなく連続的に行われていないことが 感度で指定された特定のイベントで発生 wire

  • として宣言される(B)手続き

ありますリスト。このタイプの モデリングスキームは、 "always"または "initial"のような手続き型ブロックを使用して実装されます。

出力変数は、指定された機密リストの変更後に新しい割り当てが発生するまで、 は前の値を保持する必要があるため、regと定義する必要があります。

希望はこのことができます:)

0

構造Verilogのは、通常は合成可能であるVerilogコード(正確かつ意味のあるハードウェアの実現を持っている)と呼ばれ、通常はレジスタ転送レベル(RTL)で記述されています。 一方、Behavioral Verilogは通常、上位レベルのハードウェアまたは機能の動作記述です。ビヘイビアコードを合成する必要はありません。たとえば、タイムスケールでスケールされたVerilogコードで遅延を定義した場合、シンセサイザはコードをロジックやハードウェアに変換するときには考慮しません。 同じことが構造上および動作上のVHDLにも当てはまります。

0

動作は論理ゲートの説明を使用しません。また、すでにVerilogで定義されているゲートではありません 構造はロジックゲートを使用しますが、(And/Or /何をしているのかを説明してください。&/| /〜。