在哪里强制xilinx ISE使用block-rams?

JCL*_*CLL 3 fpga vhdl xilinx

我合成了一个小设备来测试block-ram推理.

我收到了来自XST的消息:

小型RAM将在LUT上实现,以最大限度地提高性能并节省Block RAM资源.如果要在块上强制执行,请使用 选项/约束ram_style.

但是,我不知道在ISE(在我的情况下为11.1)或约束文件中哪里可以找到此选项/约束...

我不想在我的代码中直接使用VHDL属性.

Saa*_*mer 5

在项目目录中,您将找到名为"your-design.xst"的文件.您可以在列表末尾(或"运行"之后的任何位置)添加以下内容:

-ram_style block # ( | auto | distributed )
-rom_style block # ( | auto | distributed )
Run Code Online (Sandbox Code Playgroud)

这些应该确保你将获得BRAM映射而不是分布式RAM(这意味着基于LUT的内存).

这个选项也可以派上用场:

-auto_bram_packing yes # ( | no )
Run Code Online (Sandbox Code Playgroud)

请记住,每个都必须在他们自己的行上,并且您需要删除"#"以及之后的任何内容.

如果您正在使用ISE GUI,请转到

Synthesis -> Process Properties -> HDL options
Run Code Online (Sandbox Code Playgroud)

并在那里选择上述选项.

(顺便说一下,我们正在尝试创建一个专门用于FPGA的SE站点......考虑支持它... http://area51.stackexchange.com/proposals/20632/programmable-logic-and-fpga-design?referrer= YmxhQ2OJUo-FAaI1gMp5oQ2)