信号と変数VHDLの

A

ahmadagha23

Guest
こんにちは実装をVHDLの信号と変数の間diffrenceものです(ハードウェアいるか、信号、変数にマップする?)、なぜ次のプログラム:std_logic_vector(0〜:テストのアーキテクチャvarはプロセス(CLK)は変数cを始めることです7)、変数はd:std_logic_vector(0〜7)を開始する場合clkに= '1'し、C:=と、d:= cのと、b
 
[を/のURL]このリンク[のurl] http://www.edaboard.com/ftopic78950.html読んで、あなたの答えを見つけ出す。
 
変数は、論理関数を記述するために使用されています。一般的には、ハードウェアobject.Inに機密性の高いリストだの"clkに"を持っている一連の処理を合成していません。信号はDフリップフロップに合成される。その後のは、つのアーキテクチャを見てみましょう。それは、変数cと変数dは合成ツールによって取り消された問だとして、それはDとは'b'です'のように接続一DFFのを推測最初のアーキテクチャ。第二のアーキテクチャは、3つのDFF.DFF1はある推論'は、Dとして、'c'は、それは、Qを見るように。DFF2は'c'がDとと'd'をQとして、DFF3には'd'の開発としては'b'としてあなたの最初のアーキテクチャでは、信号bは、1つclkは後の信号の値に設定されている問だから。しかし、2番目のアーキテクチャでは、信号bは3つのCLKの後の信号bの値に設定されている。
 
[URLを] http://www.ece.concordia.ca/〜kasiar / variables_signals.pdf [/URL]、トラック、このリンクを試してください
 
こんにちはahmadagha23、信号および変数間の主な違いは、その値を更新する瞬間です。可変>このタイプは、プロセスのブロック(は並行して実行)内で定義されます。それらの値が適切な割り当てを行うときに更新しています。信号 - >この型は、プロセスのうち定義することができる信号内の任意の新しいイベントがバッファに格納され、実行中のプロセスの実行が終了するまで更新されませんでした。
 
こんにちは、私はあなたが最初のコードが悪いコーディングスタイルの例です。拳コードと意味は何かはしらないは、最初のコードようにワイヤ"意味"の2つの変数を使用して、単に私が思うにもかかわらず次の場合は、追加する必要がありますレジスタです。 clk'eventとclk = '1、それにしかしCLKとしてmightworkを混乱させるようレジスタをするかは、プロセス感度リストに含まれているが、私はその、2番目のコードわからない'"rising_edge"私は、CLK = '1'の場合書き込みは決して'は、シフトレジスタのかもしれませんが、場合として実現されている場合"ワイドシフトレジスタを3つのレジスタ"clk'eventとclk =変数を扱う一般的では、1つは、"他のプロセスのすべての条件に変数を割り当てることに注意する必要があります'1'、またはケースの状態やevenaのデフォルト値は"他がある可能性がある場合は非ラッチを歓迎した。 Ibelieveそれはかなり良いですHDLデザインの本を読んでください
 
プロセス文とclkに関与するすべての変数はな感度リストに含まれている必要があります。プロセスは、(clkは、var_a、var_b)変数var_a、var_b:整数;開始する場合clkに= '1':= bのendifのエンドプロセス
 
eemapi、あなたは、edaboardに優れたVHDLのチュートリアルをたくさん見つけることができますフォーラム内の検索
 
プロセス文とclkに関与するすべての変数はな感度リストに含まれている必要があります...あなたはよろしいですか?
 

Welcome to EDABoard.com

Sponsor

Back
Top