Verilogで配列構造を初期化する方法?

Y

yuenkit

Guest
例えば、REG [7:0] MEM [0:3]、1。私はその方法MEM = 0、内のすべての要素を初期化したいですか? 2。私はmemを初期化するようにMEM [0] = 2、MEM [1] = 4、MEM [2] = 1、MEM [3] = 5。それをどうすればよいですか?
 
ファイル内のすべての値を書き留めて、$ readmemhコマンドを使用します。
 
$ readmemhまたは$ readmembは合成可能ではありません。 uは、シミュレーションの目的のためにそれを使用することができます。 U合成部で実現する方法? uは合成のためのシンプルなRAMを設計する必要があります。 Aravind
 
もしメモリをしないレジスタを使用する場合、初期化するために、forループを使用してください!
 
私はカントJJWW110を理解する。 uは簡単な例を与えることができます。感謝
 
私はjjwwが言ったことを推測した[コード]パラメータMEM_SIZE = 1024 REG [7:0] MEM [0:MEM_SIZE -1]初期(kは= 0; K <MEM_SIZE - 1; K = K + 1)の開始を開始MEM [ K] = 0;エンドエンド[/コード]
 
これは正しいですか?あなたが実際にシングルビットの信号ではなく、バス信号としてMEMを扱うように見えます。
 
もちろん、それが正しいと、私はしばしばそのように行います。
 
方法については、私だけMEMのビットのいずれかを初期化したい場合は?例えば、私が0にすべてのMEMの配列のビット0を初期化したいですか?
 
コード:パラメータMEM_SIZE = 1024 REG [7:0] MEM [0:MEM_SIZE -1]初期のために開始さ(k = 0; K <MEM_SIZEは、K = K + 1)を開始MEM [K] = 8'h00、エンドエンド
 
かどうかREG [7:0] MEM [0:MEM_SIZE -1] memが、それがRAMメモリとして利用MEMまたはVerilog自体の名前で、ramファイルはありますか。 IMは512 × 8のRAMのライブラリ(ファイル名RAM512X8.v)どのように記述したり、上記のような配列構造を使用してそれを参加させるを有し(ラム[7:0] ---)
 
@あなたはこのようにあなたのビット0が初期化できますウェン、パラメータMEM_SIZE = 1024 REG [7:0] MEM [0:MEM_SIZE -1]初期(kは= 0; K <MEM_SIZE - 1; K = K + 1)のために開始を開始MEM [K] [0] = 0;終わりの終わり
 

Welcome to EDABoard.com

Sponsor

Back
Top