配列深度が 64 ビットを大きく超える ROM は、分散 RAM ではなくブロック RAM として推論するのが適しています。合成ツールはデフォルトでブロック RAM への推論を試みますが、コーディング スタイルや制約条件によっては、正しく推論できない場合があります。
ブロック RAM が推論されない最も一般的な理由は、ブロック RAM は同期読み出しのみに対応しており、出力レジスタが存在しないためです。分散 RAM にはこの制約はありません。また、配列の読み出し方法や、分散 RAM の推論を強制する ROM_STYLE 属性を使用していることも原因となります。
わずかなコーディング上の調整を加えるだけで、LUT 使用量、タイミング、および状況によっては密集を改善できます。