Main Content

Simple Dual Port RAM System

初期値を指定できる hdl.RAM System object に基づく Simple Dual Port RAM ブロック

  • Simple Dual Port RAM System block

ライブラリ:
HDL Coder / HDL RAMs

説明

これらのブロックは、hdl.RAM System object™ を使用する MATLAB System ブロックです。RAM タイプを Dual portSimple dual portSingle portTrue dual port、または Simple tri port として指定できます。シミュレーション動作については、Dual Port RAM SystemDual Port RAMSingle Port RAM SystemSingle Port RAM のように、それぞれ対応するブロックと同様の動作になります。MATLAB System ブロックでは次のことが可能です。

  • RAM の初期値を指定できます。[ブロック パラメーター] ダイアログ ボックスで、[Specify the RAM initial value] の値を入力します。

  • これらのブロックを Simulink® モデル内で使用すると、より高速なシミュレーション結果が得られます。

  • ベクトル データの使用時に hdl.RAM System object の機能を利用して並列 RAM バンクを作成できます。

  • 大規模なデータ メモリのパフォーマンスとサポートが向上します。

制限

  • ブロックでは boolean 入力はサポートされません。ブロックへの入力については、すべての boolean 型を ufix1 にキャストします。

  • RAM の FPGA ビットストリームを作成する場合、RAM の内容はグローバルなリセット ロジックでリセットされません。RAM をリセットするには、必ずリセット ロジックを実装してください。

  • RAM 書き込みアドレスは fixed-point (fi) または integer のいずれかで、符号なしの 231 ビット長でなければなりません。

端子

入力

すべて展開する

we が true の場合に RAM のメモリ位置に書き込むデータ。この値は doublesingleinteger、または fixed-point (fi) オブジェクトのいずれかで、実数または複素数にできます。

バスのサポート:

HDL コード生成用にデータ端子で非バーチャル バスを使用できます。

データ型: single | double | int8 | int16 | uint8 | uint16 | fixed point

データを書き込む RAM のアドレス。この値は fixed-point (fi) または integer のいずれかで、符号なしの 231 ビット長でなければなりません。

依存関係

この端子を有効にするには、[Specify the type of RAM] パラメーターを [Simple dual port] または [Dual port] に設定します。

データ型: uint8 | uint16 | fixed point

we が true の場合、RAM の指定したメモリ位置にデータが書き込まれます。[Specify the type of RAM][Single port] に設定した場合、we が false であれば、RAM のメモリ位置 addr から値が読み取られます。

データ型: Boolean

データを読み取る RAM のアドレス。この値は fixed-point (fi) または integer のいずれかで、符号なしの実数でなければなりません。

依存関係

この端子を有効にするには、[Specify the type of RAM] パラメーターを [Simple dual port] または [Dual port] に設定します。

データ型: uint8 | uint16 | fixed point

出力

すべて展開する

RAM のメモリ位置 rd_addr から読み取られた古い出力データ。

依存関係

この端子を有効にするには、[Specify the type of RAM] パラメーターを [Simple dual port] に設定します。

パラメーター

すべて展開する

RAM のタイプ。次のいずれかとして指定します。

  • Single port — Single Port RAM を作成します。入力は書き込みデータ、アドレス、および書き込みイネーブル、出力は読み取りデータです。

  • Simple dual port — Simple Dual Port RAM を作成します。入力は書き込みデータ、書き込みアドレス、書き込みイネーブル、および読み取りアドレス、出力は読み取りアドレスからのデータです。

  • Dual port — Dual Port RAM を作成します。入力は書き込みデータ、書き込みアドレス、書き込みイネーブル、および読み取りアドレス、出力は読み取りアドレスと書き込みアドレスからのデータです。

  • True dual port — True Dual Port RAM を作成します。入力は書き込みデータ ab、書き込み/読み取りアドレス ab、書き込みイネーブル ab で、出力は書き込みアドレス ab からのデータです。

  • Simple tri port — Simple Tri Port RAM を作成します。入力は書き込みデータ、書き込みアドレス、書き込みイネーブル、および読み取りアドレス ab で、出力は読み取りアドレス ab からのデータです。

指定した RAM タイプに基づいて、ブロックの入力端子と出力端子がコード ジェネレーターによって動的に構成されます。

ターゲット ハードウェアで非同期読み取り機能を使用するかどうか。チェック ボックスとして指定します。非同期読み取りがサポートされているボードでは、ハードウェアで 1 サイクル待機せずに即時に読み取り命令を実行できます。

データ型: Boolean

出力の書き込み動作。次のいずれかとして指定します。

  • 'New data' — アドレスの新しいデータを出力に送ります。

  • Old data' — アドレスの古いデータを出力に送ります。

System object の最初のシミュレーション出力。次のいずれかとして指定します。

  • スカラー値。

  • 初期値と RAM ワードが 1 対 1 でマッピングされたベクトル。

拡張機能

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

バージョン履歴

R2017b で導入