如何在Microsemi / Actel Libero中创建人字拖鞋的相对位置?

时间:2015-12-21 20:29:56

标签: vhdl fpga flip-flop

过去我曾使用过一些Xilinx FPGA,并且能够使用VHDC属性(如RLOC)轻松创建翻转翻转位置。

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

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

进一步观察我发现" set_location"可以在设计约束文件中使用约束来修复MACRO的位置。不幸的是,这限制了MACRO在芯片上的ABSOLUTE位置的位置,并且可能干扰其余的自动放置和布线优化工作。

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

1 个答案:

答案 0 :(得分:1)

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

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

该区域仍然具有绝对位置,但要移动触发器,您只需要更改“define_region”约束。 它没有RLOC那么优雅,但它确实起到了作用。