原创 Cyclone10GX位置约束问题

2023-9-14 11:16 2603 8 8 分类: FPGA/CPLD 文集: ALTERA FPGA
这个问题应该从CycloneV时代就开始存在,主要是因为FPGA逻辑资源中LAB模块的位置定义的XY坐标对应的资源有差异。LAB资源的这种差异体现在纵向坐标,即X列。我们在Assignment Editor里查找节点的时候,如图1所示

图1:在AE中进行Location约束的时候查找约束节点
此时在图1所示的动作中,弹出查找约束的定位节点时,回发现在“Element”中可以找到很多资源,这里我们只关心LAB有关的,这时候LAB相关的资源有两种,一种时LAB combinational cell,另一种测试如图1所示的MLAB combinational cell。点开X coordinate可以发现,不同列对应的逻辑资源是不一样的,但是某一列整列的LAB资源类型是一致的。所以在使用TCL对位置进行约束的时候,如果忽略了这种差异,就很可能会造成位置约束在Fit的时候报错。如果缺乏上述知识点,在出现报错的时候,往往疑惑Quartus为何有的时候报错,有点时候又正常。
所以正常的做法是,先确认被约束节点被约束位置的资源类型,当资源为MALB combinational cell时,正确约束代码为:
  1. set_location_assignment MLABCELL_X84_Y49_N0 -to "inst1|u_TDL_CC_Top|u_CarryChainInC10GX|gen[20].mycarry|s"

当资源为LAB combinational cell时,正确约束代码为:
  1. set_location_assignment LABCELL_X84_Y49_N0 -to "inst1|u_TDL_CC_Top|u_CarryChainInC10GX|gen[20].mycarry|s"


作者: coyoo, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-1010859.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
8
关闭 站长推荐上一条 /1 下一条