インテル® Agilex™ エンベデッド・メモリー・ユーザーガイド

ID 683241
日付 4/25/2022
Public

このドキュメントの新しいバージョンが利用できます。お客様は次のことを行ってください。 こちらをクリック 最新バージョンに移行する。

ドキュメント目次

4.1.3. RAM: 2-PORT Intel® FPGA IPのパラメーター

次の表に、RAM: 2-PORT Intel® FPGA IPのパラメーターを示します。
表 24.  RAM: 2-PORT Intel® FPGA IPのパラメーター設定
パラメーター 選択可能な値 詳細
パラメーター設定: General
How will you be using the dual port RAM?

Operation mode:

  • With one read port and one write port
  • With two read/write ports
デュアルポートRAMの使用方法を指定します。
How do you want to specify the memory size?

Type:

  • As a number of words
  • As a number of bits
メモリーサイズをワードで指定するかビットで指定するかを決定します。
パラメーター設定: Widths/Blk Type
How many words of memory? ワード数を指定します。
Use different data widths on different ports On/Off 異なるポートで異なるデータ幅を使用するかを指定します。
With one read port and one write portまたはWith two read/write portsを選択している場合は、次のオプションを利用することができます。
  • How wide should the ‘q_a’ output bus be?
  • How wide should the ‘data_a’ input bus be?
  • How wide should the ‘q_b’ output bus be?
入力ポートおよび出力ポートの幅を指定します。
Ram block type
  • Auto
  • MLAB
  • M20K
  • LCs
メモリーブロックのタイプを指定します。選択可能なメモリーブロックのタイプは、ターゲットデバイスによって異なります。
Set the maximum block depth to
  • Auto: Auto3264128256512102420484096819216384
  • MLAB: Auto32
  • M20K: Auto51210242048
  • LCs: Auto
最大ブロック深度をワード数で指定します。
How should the memory be implemented?
  • Use default logic cell style
ロジックセルの実装方法を指定します。
  • 小さく速いメモリー容量が必要な場合は、Use default logic cell styleを選択します。
パラメーター設定: Clks/Rd, Byte En
Which clocking method do you want to use?
  • Single
  • Dual clock: use separate ‘read’ and ‘write’ clocks
  • Dual clock: use separate ‘input’ and ‘output’ clocks
  • Customize clocks for A and B ports
使用するクロック供給方式を指定します。
  • Single - 単一のクロックとクロックイネーブルでメモリーブロックのすべてのレジスターを制御します。
  • Dual clock: use separate ‘read’ and ‘write’ clock - 書き込みクロックでは、データ入力、書き込みアドレス、および書き込みイネーブルレジスターを制御します。読み出しクロックでは、データ出力、読み出しアドレス、および読み出しイネーブルレジスターを制御します。
  • Dual Clock: use separate ‘input’ and ‘output’ clocks - 入力クロックでは、エンベデッド・メモリー・ブロックへのデータ入力に関係するすべてのレジスターを制御します。これには、データ、アドレス、バイト・イネーブル、読み出しイネーブル、および書き込みイネーブルが含まれます。出力クロックでは、データ出力レジスターを制御します。
  • Dual clock: use separate clocks for A and B ports - クロックAではポートA側のすべてのレジスターを制御します。クロックBではポートB側のすべてのレジスターを制御します。また、各ポートではそれぞれ、ポートAとポートBのレジスターに対する独立したクロックイネーブルをサポートします。
  • Customize clocks for A and B ports - このオプションを使用するには、Emulate TDP dual clock modeオプションを有効にする必要があります。
With two read/write portsおよびCustomize clocks for A and B portsのクロック供給方式を選択している場合は、次のオプションが利用可能です。

Emulate TDP dual clock mode

On/Off TDPのデュアルクロック・モードをエミュレートするかを指定します。ポートAへのクロック接続は低速クロックにし、ポートBへのクロック接続は高速クロックにする必要があります。
With one read port and one write portを選択している場合は、次のオプションが利用可能です。

Create a ‘rden’ read enable signal

On/Off 読み出しイネーブル信号をポートBに対して作成するかを指定します。
With two read/write portsを選択している場合は、次のオプションが利用可能です。

Create a ‘rden_a’ and ‘rden_b’ read enable signals

読み出しイネーブル信号をポートAとポートBに対して作成するかを指定します。
Create byte enable for port A On/Off ポートAおよびポートBのバイト・イネーブルを作成するかを指定します。入力データをマスクし、データの特定のバイト、ニブル、またはビットのみを書き込む場合はこれらのオプションをオンにします。

ポートBのバイト・イネーブルを作成するオプションは、With two read/write portsのオプションを選択している場合にのみ利用可能です。

Create byte enable for port B On/Off

What is the width of a byte for byte enables?

  • MLAB: 510
  • M20K: 8910
バイト・イネーブルのバイト幅を指定します。

このオプションは、Create byte enable for port AまたはCreate byte enable for port Bのオプション、もしくはその両方を選択している場合にのみ利用可能です。

Enable Error Correction Check (ECC) On/Off ECC機能を有効にするかを指定します。ECCは、シングルビット・エラー、ダブル隣接ビット・エラー、トリプル隣接ビット・エラーをメモリーの出力で訂正します。
Enable ECC Pipeline Registers On/Off 出力デコーダーの前にECCパイプライン・レジスターを有効にするかを指定します。有効にすると、1サイクルのレイテンシーが発生する代わりに、ECCなしのモードと同じパフォーマンスが実現します。
Enable ECC Encoder Bypass On/Off ECCのエンコーダー・バイパス機能を有効にするかを指定します。この機能では、メモリーへの選択的なパリティービットの挿入をccencparityポートを介して行うことができます。
Enable Coherent Read On/Off コヒーレント読み出し機能を有効にしてコヒーレント・メモリー読み出しを提供するかを指定します。この機能を使用すると、同じサイクルで、現在のメモリーコンテンツを読み出し、そのコンテンツで操作を行い、同じ位置に書き戻すことができます。
パラメーター設定: Regs/Clkens/Aclrs/Sclrs
Which ports should be registered?

With one read port and one write portを選択している場合は、次のオプションを利用することができます。

  • All write input ports
  • raddress port
  • q_b port

With two read/write portsを選択している場合は、次のオプションを利用することができます。

  • All write input ports
  • raddress port
  • q_a port
  • q_b port
On/Off 読み出しまたは書き込み入力ポートおよび出力ポートをレジスターするかを指定します。

Clock Enables

With one read port and one write portを選択している場合は、次のオプションを利用することができます。

  • Use different clock enables for registers
  • Use clock enable for write input registers
  • Use clock enable for read input registers
  • Use clock enable for output registers

With two read /write portsを選択している場合は、次のオプションを利用することができます。

  • Use different clock enables for registers
  • Use clock enable for port A input registers
  • Use clock enable for port A output registers
  • Use clock enable for port B input registers
  • Use clock enable for port B output registers
On/Off 読み出しおよび書き込みレジスターにクロックイネーブルを作成するかを指定します。

Addressstalls

With one read port and one write portを選択している場合は、次のオプションを利用することができます。

  • Create a ‘wr_addressstall’ input port.
  • Create a ‘rd_addressstall’ input port.

With two read /write portsを選択している場合は、次のオプションを利用することができます。

  • Create an addressstall_a input port
  • Create an addressstall_b input port
On/Off クロックイネーブルをアドレスレジスターに対して作成するかを指定します。これらのポートを作成すると、アドレスレジスターに対するアクティブLowの追加クロックイネーブル入力として機能させることができます。

Aclr Options

With one read port and one write portを選択している場合は、次のオプションを利用することができます。

  • rdaddress port
  • q_b port

With two read /write portsを選択している場合は、次のオプションを利用することができます。

  • q_a port
  • q_b port
On/Off

非同期クリアポートをレジスターされるポートに対して作成するかを指定します。「rdaddress」、「q_a」、「q_b」ポートをaclrポートによってクリアするかを指定します。

Sclr Options

With one read port and one write portを選択している場合は、次のオプションを利用することができます。

  • rdaddress port
  • q_b port

With two read/write portsを選択している場合は、次のオプションを利用することができます。

  • q_a port
  • q_b port
On/Off 同期クリアポートをレジスターされるポートに対して作成するかを指定します。「rdaddress」、「q_a」、「q_b」ポートをsclrポートによってクリアするかを指定します。
パラメーター設定: Mixed Port Read-During-Write (このタブは、With one read port and one write portsを選択している場合にのみ適用されます)

How should the q_a and q_b outputs behave when reading a memory location that is being written from the other port?

  • New Data
  • Old Data
  • Don't Care

Read-During-Write発生時の出力動作を指定します。

  • New Data - 新しいデータは、データが書き込まれたクロックサイクルと同じクロックサイクルの立ち上がりエッジで利用可能です。
  • Old Data - RAMの出力は、書き込み動作が行われる前にそのアドレスの古いデータを反映します。
  • Don't Care - このオプションをオンにしている場合、その機能は選択しているメモリー・ブロック・タイプに応じて異なります。
    • メモリー・ブロック・タイプをAutoM20K、または他のブロックRAMに設定している場合、Read-During-Write動作でのRAMの出力は、「don't care」または「unknown」の値になります。タイミングパスは解析されません。
    • メモリー・ブロック・タイプをMLAB (LUTRAMの場合) に設定している場合、Read-During-Write動作でのRAMの出力は、「don't care」または「unknown」の値になります。タイミングパスが解析され、準安定状態を防ぎます。
パラメーター設定: Same Port Read-During-Write (このタブは、With two read/write portsを選択している場合にのみ利用可能です)
What should the ‘q_a’ output be when reading from a memory location being written to?
  • New Data
  • Old Data

Read-During-Write発生時の出力動作を指定します。

  • New Data - 新しいデータは、データが書き込まれたクロックサイクルと同じクロックサイクルの立ち上がりエッジで利用可能です。
  • Old Data - RAMの出力は、書き込み動作が行われる前にそのアドレスの古いデータを反映します。
What should the ‘q_b’ output be when reading from a memory location being written to?
Get x’s for write masked bytes instead of old data when byte enable is used On/Off このオプションをオンにして、マスクされているバイトで「X」を取得します。
パラメーター設定: Mem Init
Do you want to specify the initial content of the memory?
  • No, leave it blank
  • Yes, use this file for the memory content data

メモリーの初期コンテンツを指定します。

メモリーを0に初期化するには、No, leave it blankを選択します。

メモリー初期化ファイル (.mif) または16進数 (インテル形式) ファイル (.hex) を使用するには、Yes, use this file for the memory content dataを選択します。

Initialize memory content data to XX..X on power-up in simulation On/Off
The initial content file should conform to which port's dimension?
  • PORT_A
  • PORT_B
初期コンテンツファイルをメモリーコンテンツのデータに使用することを選択している場合は、ファイルを準拠させるポートを選択します。
Implement clock-enable circuitry for use in a partial reconfiguration region On/Off

クロックイネーブル回路を実装してパーシャル・リコンフィグレーション領域で使用するかを指定します。クロックイネーブル回路は、パーシャル・リコンフィグレーション領域での使用に向けて実装します。

パラメーター設定: Performance Optimization
Enable Force to Zero On/Off 読み出しイネーブル信号をデアサートする際に、出力を0に設定するかを指定します。

選択しているメモリー深度が単一のメモリーブロックよりも大きい場合は、この機能を有効にすると、グルーロジックのパフォーマンス向上につながります。

Which timing/power optimization option do you want to use?
  • Auto
  • High Speed
  • Low Power
使用するタイミングまたは消費電力の最適化オプションを指定します。このオプションは、 インテル® Agilex™ デバイスでM20K のメモリータイプを選択している場合にのみ適用されます。