微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 请教关于hard macro的error问题

请教关于hard macro的error问题

时间:10-02 整理:3721RD 点击:
我在使用hard macro时遇到了一个Error,我用的是virtex-6,软件是planAhead 14.7,并创建了一个hard macro的.nmc文件。用-sd定位了.nmc文件的位置,并且也对hard macro做了LOC。但是在NGDbild后的MAP总出现如下error。"[Place 835] Given the original pre-placement, no legal placements can be found for 1 group(s). The following is the description of these group(s). The relative offsets of the components are shown in brackets next to the component names.
     LUT AND_test_inst/C_OBUF (0, 0)
     LUT AND_test_inst/C_OBUF (0, 0)
     LUT AND_test_inst/C_OBUF (0, 0)
     LUT AND_test_inst/C_OBUF (0, 0)
     LUT AND_test_inst/C_OBUF (0, 0)
     LUT AND_test_inst/C_OBUF (0, 0)
     LUT AND_test_inst/C_OBUF (0, 0)
     LUT AND_test_inst/C_OBUF (0, 0)
     FF AND_test_inst/C_OBUF (0, 0)
     FF AND_test_inst/C_OBUF (0, 0)
     FF AND_test_inst/C_OBUF (0, 0)
     FF AND_test_inst/C_OBUF (0, 0)
     FF AND_test_inst/C_OBUF (0, 0)
     FF AND_test_inst/C_OBUF (0, 0)
     FF AND_test_inst/C_OBUF (0, 0)
     FF AND_test_inst/C_OBUF (0, 0)"

还有一个比较奇怪的地方是,我对hard macro本身做LOC
"INST "AND_test_inst" LOC = SLICE_X0Y78;"
,会出现以下warning" [Constraints 18-5] Cannot loc instance 'AND_test_inst' at site SLICE_X0Y78, AND_test_inst is not a leaf level instance [/localtemp/yzhang/uemu/ml605_core_vfsm_subsystem/syn/project_AND_test/project_AND_test.srcs/constrs_1/new/AND_test_subsystem.ucf:2]"

但是对Net做LOC,则不会,"NET "A_in_IBUF" LOC = AA34;
NET "B_in_IBUF" LOC = AA33;
NET "C_out_OBUF" LOC = AA30;"这也让我很奇怪。

程序本身很小,就是个与门,只是想知道hard macro怎么用。

还想请问,如果hard macro成功调用,会在软件内有什么提示吗?如何知道我这个模块就是调用成功的hard macro而不是普通的一个component?

谢谢各位帮助!



   没有试过对一个AND gate做LOC,个人认为不需要吧,又不是大的IP,就算是大的IP,也有推荐的loc约束。


用AND只是想了解hard macro如何使用,真正用的模块比较大,Syn/Imp比较耗时

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top