1

过去,我使用过一些 Xilinx FPGA,并且能够使用 VHDL 属性(例如 RLOC)轻松创建触发器的相对布局。

目前我正在使用 SmartFusion2 FPGA 并试图在 Libero SoC 中实现相同的目标。在浏览了“Synopsys FPGA Synthesis Synplify Pro for Microsemi Edition: Attribute Reference”之后,我找到了“alsloc”,这似乎是 RLOC 的直接等价物。

但是,添加此属性根本不会改变或影响 MACRO 的放置。

进一步看,我发现可以在设计约束文件中使用“set_location”约束来修复 MACRO 的位置​​。不幸的是,这将宏的位置限制在芯片上的绝对位置,并且会干扰其余的自动布局和布线优化工作。

那么有没有办法使用 VHDL 属性或设计约束文件指令来约束 Libero SoC 中 MACRO(特别是触发器)的相对位置?

4

1 回答 1

1

据我所知,没有直接的等价物。最接近的可能是 define_region/assign_region 约束。

使用“assign_region”将一组相关的触发器或整个组件实例关联到用户定义的区域。“define_region”指定区域的大小和位置。Libero 会将相关部件放置在该区域内。

该区域仍然具有绝对位置,但要移动触发器,您只需要更改“define_region”约束。它不像 RLOC 那样优雅,但可以胜任。

于 2015-12-25T13:38:29.820 回答