可通过多种方式指定 RAM 和 ROM。每种方法都有各自的优缺点。
- 推断
优点:
- 便于移植
- 便于读取和理解
- 自我文档化
- 快速仿真
不足:
- 不能访问所有可用的 RAM 配置
- 结果可能并非最佳
由于推断结果一般较为理想,因此建议采用推断,除非给定用例不受支持,或者无法可实现的时钟频率、面积或功耗方面产生足够的结果。在此类情况下,请尝试其他方法。
推断 RAM 时,AMD 建议您使用 Vivado 工具中提供的 HDL 模板。如前文所述,使用异步复位会给 RAM 推断造成不利影响,应避免使用。
- 赛灵思可参数化宏 (XPM)
优点:
- 可在各 AMD 器件系列之间进行移植
- 快速仿真
- 支持非对称宽度
- 可预测的结果质量 (QoR)
不足:
- 仅支持 XPM 选项
XPM 是基于使用固定模板的推断构建的,此类模板无法修改。因此,其 QoR 有保证,并且可以支持标准推断所不具备的功能。当标准推断不支持所需功能时,AMD 建议您改为使用 XPM。
- 直接例化 RAM 原语
优点:
- 对实现方案有最高控制权限
- 能访问块的各项功能
不足:
- 代码可移植性差
- 功能和用途冗长繁琐,难以理解
- IP 目录提供的 IP 核
优点:
- 在使用多个组件时一般能提供更优化的结果
- 易于指定和配置
不足:
- 代码可移植性差
- 需要管理核