RAM ブロックや HDL Operations ライブラリのブロックを設計する際の考慮事項
設計をモデル化する際に RAM ブロックや [HDL Operations] ライブラリのブロックを使用する方法については、以下のガイドラインに従います。
各ガイドラインに準拠要件のレベルを示す重大度レベルが割り当てられています。詳細については、HDL モデリング ガイドラインの重大度レベルを参照してください。
RAM ブロックのアクセスに関する考慮事項
ガイドライン ID
2.1.1
重大度
推奨
説明
[HDL RAMs] ブロック ライブラリには、7 つの異なる RAM ブロックと HDL FIFO ブロックがあります。ブロック名の一部に System
という用語が含まれる RAM ブロックが表示される場合 (Single Port RAM System など)、名前の一部に System
が含まれない (Single Port RAM など) 等価のブロックではなく、このブロックを使用することをお勧めします。ブロックの実装は hdl.RAM
System object™ に基づいているため、これらのブロックの名前の一部には System
が含まれます。System ブロックではベクトル入力がサポートされ、Simulink® モデルで使用する場合にはるかに高速なシミュレーションを実現します。
これらのブロックを使用する場合は、入力サンプル時間と出力サンプル時間が同じであることを確認してください。次の表に、使用可能なさまざまな RAM ブロックとその目的を示します。これらのブロックに対して生成された HDL コードはほとんどの FPGA で RAM にマッピングされます。
ブロック名 | 推奨される使用方法 |
---|---|
Single Port RAM System | このブロックを使用して、モデル内の Single Port RAM ブロックを置き換えます。このブロックをモデル内で使用すると、より高速なシミュレーション結果が得られます。 ブロックの実装は ブロックでは boolean 入力はサポートされません。ブロックへの入力については、 |
Simple Dual Port RAM System | このブロックを使用して、モデル内の Simple Dual Port RAM ブロックを置き換えます。このブロックをモデル内で使用すると、より高速なシミュレーション結果が得られます。 ブロックの実装は ブロックでは boolean 入力はサポートされません。ブロックへの入力については、 |
Dual Port RAM System | このブロックを使用して、モデル内の Dual Port RAM ブロックを置き換えます。このブロックをモデル内で使用すると、より高速なシミュレーション結果が得られます。 ブロックの実装は ブロックでは boolean 入力はサポートされません。ブロックへの入力については、 |
True Dual Port RAM System | ブロックの実装は ブロックでは boolean 入力はサポートされません。ブロックへの入力については、 |
Simple Tri Port RAM System | ブロックの実装は ブロックでは boolean 入力はサポートされません。ブロックへの入力については、 |
Dual Rate Dual Port RAM | このブロックには等価の System object ベース実装がありません。 このブロックを使用し、異なるクロック レートで動作する 2 つの異なるアドレスに対して読み取りおよび書き込みの同時処理を実行します。RAM の同じアドレスに対して同時アクセスを実行することはできません。 複数のクロック レートで RAM ポートを実行するには、[クロックの入力] を |
HDL FIFO | HDL FIFO ブロックは、先入れ先出し (FIFO) レジスタにサンプルのシーケンスを保存します。 入力 (
信号 FIFO ブロックの入力レートと出力レートは互いに同期しています。 |
シリアルからパラレルへの変換
ガイドライン ID
2.1.2
重大度
情報
説明
Serializer1D ブロックと Deserializer1D ブロックを使用してシリアルからパラレルおよびパラレルからシリアルへの変換を実行できます。