hdl.RAM
メモリの読み取り/書き込みアクセスのための Single Port RAM、Simple Dual Port RAM、Dual Port RAM、True Dual Port RAM、または Simple Tri Port RAM
説明
hdl.RAM System object™ は、Single Port RAM、Simple Dual Port RAM、Dual Port RAM、True Dual Port RAM、または Simple Tri Port RAM について、メモリ位置での読み取りと書き込みを行います。出力データは 1 ステップ遅延します。入力データに応じて次のようになります。
スカラー – アドレス入力と書き込みイネーブル入力はスカラーでなければなりません。HDL Coder™ は単一の RAM ブロックのみを操作していると推定します。
ベクトル – アドレス入力と書き込みイネーブル入力はスカラーまたはベクトルにすることができます。HDL Coder は並列 RAM バンクの配列が必要であると推定します。書き込みイネーブル端子とアドレス端子にスカラー入力を指定すると、System object は同じ操作をそれぞれの RAM バンクに適用します。
バス – アドレス入力と書き込みイネーブル入力はスカラーでなければなりません。HDL Coder は並列 RAM バンクの配列が必要であると推定します。
hdl.RAM System object は、231 バイトの内部ストレージをもつことができます。RAM のサイズはアドレス幅、各ワードを格納するのに使用されるバイト数、RAM バンクの数を考慮します。
RAM のメモリ位置からの読み取り、または書き込みを行うには、次のようにします。
hdl.RAMオブジェクトを作成して、そのプロパティを設定します。関数と同様に、引数を指定してオブジェクトを呼び出します。
System object の機能の詳細については、System object とはを参照してください。
作成
プロパティ
使用法
構文
説明
[ は、wrDataOutA,wrDataOutB] = ram(wrDataA,wrAddressA,wrEnA,wrDataB,wrAddressB,wrEnB)wrEnA が true の場合に値 wrDataA をメモリ位置 wrAddressA に書き込み、wrEnB が true の場合に値 wrDataB をメモリ位置 wrAddressB に書き込みます。wrDataOutA はメモリ位置 wrAddressA にある新しいデータまたは古いデータです。wrDataOutB はメモリ位置 wrAddressB にある新しいデータまたは古いデータです。wrAddressA と wrAddressB を同じアドレスにすることはできません。True Dual Port RAM System object を作成する場合は、この構文を使用します。
[ は、rdDataOutA,rdDataOutB] = ram(wrData,wrAddress,wrEn,rdAddressA,rdAddressB)wrEn が true の場合に値 wrData をメモリ位置 wrAddress に書き込みます。rdDataOutA はアドレス位置 rdAddressA にある古いデータです。rdDataOutB はアドレス位置 rdAddressB にある古いデータです。Simple Tri Port RAM System object を作成する場合は、この構文を使用します。
入力引数
出力引数
オブジェクト関数
オブジェクト関数を使用するには、System object を最初の入力引数として指定します。たとえば、obj という名前の System object のシステム リソースを解放するには、以下の構文を使用します。
release(obj)