实现错误 - [Place 30-58] IO 布局不可行。 您好,我一直在努力完成这项我一直在工作的作业,因为我不知道如何克服这个实施错误。 每当我认为事情会起作用时,我都会收到错误 IO 放置不可行。 s 数(100)。
我一直遵循我的项目的所有指导方针,但我对如何克服这个错误感到非常困惑。
以下是顶级模块,应该跟踪我的管道流程的第一阶段。
顶级模块 I/O -
module datapath(clk, pc, dinstOut, ewreg, em2reg, ewmem, ealuc, ealuimm, edestReg, eqa, eqb, eimm32);
input clk;
output wire [31:0] pc;
output wire [31:0] dinstOut;
output wire ewreg;
output wire em2reg;
output wire ewmem;
output wire [3:0] ealuc;
output wire ealuimm;
output wire [4:0] edestReg;
output wire [31:0] eqa;
output wire [31:0] eqb;
output wire [31:0] eimm32;
我使用的零件是XC7Z010-CLG400-1
这是我收到的错误 -
[放置30-58] IO放置不可行。未放置的 IO 端口数 (173) 大于可用站点数 (100)。 以下是具有可用引脚的银行: IO 组:1,其中:SioStd:LVCMOS18 VCCO = 1.8 终止:0 TermDir:Out RangeId:2 Drv:12 设备上只有 100 个可用站点,但需要 173 个站点。
Term: dinstOut[0]
Term: dinstOut[1] .....
Term: dinstOut[31]
Term: eimm32[0] .......
Term: eimm32[31]
Term: eqa[0] .......
Term: eqa[31]
Term: eqb[0] ......
Term: eqb[31]
Term: pc[0] .......
Term: pc[31]
Term: edestReg[0]
Term: edestReg[1]
Term: edestReg[2]
Term: edestReg[3]
Term: edestReg[4]
Term: ealuc[0]
Term: ealuc[1]
Term: ealuc[2]
Term: ealuc[3]
Term: ealuimm
Term: em2reg
Term: ewmem
Term: and ewreg
任何帮助都非常有用!拜托我很绝望
我期望一切都按照 RTL 分析显示的那样正确连接,但每次我尝试运行实现时都只会出现实现错误。我觉得无论我尝试什么都不起作用。
该设计在物理上不适合零件。
该工具表明该器件有 100 个引脚,RTL 设计有 173 个。
我看到有两个选项可以消除此错误:
见 ds190-Zynq-7000-概述 表 2 和表 3 可查看每个器件/封装组合中可用的 IO 数量。