2016-07-17 3 views

答えて

1

条件のこのリストは不完全であるかもしれない:

  • サイズ
    メモリが小さいのであれば、ISEは、代わりにブロックRAMの分散形RAM(LUT-RAM)を使用します。メモリのサイズ/面積は、BlockRAMの単一またはグループにマップ可能でなければなりません。 1つのBlockRAMは、データポートあたり8,9,16,18,32,36,64,72ビットを持つことができます。メモリ行の数が一致する場合、他のサイズも可能です。
  • ポート
    ブロックRAMをサポートしています。

    • シングルポート(SP)、
    • シンプル・デュアル・ポート(SDP)、
    • 強化 - シンプルなデュアル・ポート(ESDP)そして
    • 真のデュアルポート(TDP)

    思い出。 1つの書き込みポートとn個の読み出しポートとの組み合わせも可能である。

  • リセット
    ブロックRAMはリセットをサポートしていません。だからあなたはメモリをリセットすることができれば、BRAMとして推論することができます。
  • ClockEnable(CE)、ライトイネーブル(WE)、バイトライトイネーブル(BWE)
    ブロックRAMは、CEとWEが、通常はありませんBWEをサポートしています。
  • タイミング
    メモリは同期して書き込まれ、同期読み取りまたは非同期読み取りのいずれかで登録されたアドレスから読み取られる必要があります。
  • 出力レジスタ(OUT_REG)
    出力レジスタはオプションですが、全体のタイミングを改善します。シンセサイザはOUT_REGを論理からブロックレジスタに移動させることができます。

私たちのオープンソースライブラリPoCには、汎用VHDLコードで書かれた実装可能な4つのon-chip RAMがあり、これはザイリンクスBlockRAMにマップできます。私は、これらのVHDLスニペットを読んで理解し、Verilogコードに変換することができます:)。代わりに、ザイリンクスでは、合成可能なコードのVHDLおよびVerilogデザインパターンを一覧表示するsynthesis guide(UG 626、v14.4、p.73)を提供しています。

関連する問題