1

我已经为此工作了大约一个星期,并设法进入比特流,但它一直在那里失败。我收到此错误,但我不知道这意味着我尝试过:

[DRC UCIO-1] 不受约束的逻辑端口:5 个逻辑端口中的 5 个没有用户分配的特定位置约束 (LOC)。这可能会导致 I/O 争用或与电路板电源或连接不兼容,从而影响性能、信号完整性,或者在极端情况下会损坏设备或其连接的组件。要纠正此违规行为,请指定所有引脚位置。除非所有逻辑端口都定义了用户指定的站点 LOC 约束,否则此设计将无法生成比特流。要允许使用未指定的管脚位置(不推荐)创建比特流,请使用以下命令:set_property SEVERITY {Warning} [get_drc_checks UCIO-1]。注意:使用 Vivado Runs 基础架构(例如,launch_runs Tcl 命令)时,将此命令添加到 . tcl 文件并将该文件添加为实现运行的 write_bitstream 步骤的预挂钩。问题端口:Cout、W、X、Y 和 Z。

这是我的代码-

module sevenseg(
input w,
input x,
input y,
input z,
input clk,
output reg a,
output reg b,
output reg c,
output reg d,
output reg e,
output reg f,
output reg g,
output reg an3,
output reg an2,
output reg an1,
output reg an0
);

reg [18:0] count = 0;
always@(posedge(clk))
count = count +1;

always@(w,x,y,z)
if (count[18])
begin

an3=1;
an2=0;
an1=1;
an0=1;

a=~((~x&~z)|(w&~x)|(y&~z)|(~w&y)|(x&~y&z));
b=~((~y&~z)|(~w&~x)|(w&~y)|(w&x)|(x&y&z));
c=~((~y)|(z)|(~w&x)|(w&~x));
d=~((~x&~z)|(~x&y)|(y&~z)|(x&~y&z));
e=~((~x&~z)|(y&~z));
f=~((~y&~z)|(w&~x&y)|(~w&x&~y)|(~w&x&~z));
g=~((w&~z)|(x&~z)|(~x&y)|(x&~y));
end

else

begin

an3=0;
an2=1;
an1=1;
an0=1;

a=1;
b=1;
c=1;
d=1;
e=1;
f=1;
g=~w;
end

endmodule

module flipflop(
input enable,
input clk,
input a,
input b,
input c,
output q3,
output q2,
output q1,
output q0
);

and(a,clk);
and(b, clk);
and(c, clk);
xor(q3, clk);
xor(q2, clk);
xor(q1, clk);
xor(q0, clk);

endmodule

module fourflipflops(
input A,
input B,
input cc,
input D,
input count,
output Q3,
output Q2,
output Q1,
output Q0
);
wire C[7:1];


xor (C[3],Q3,A);
xor (C[2],Q2,B);
xor (C[1],Q1,cc);
xor (C[0],Q0,D);

endmodule

module package(
input A,
input B,
input cc,
input D,
input CLK,
input Cin,
output W,
output X,
output Y,
output Z,
output Cout

);

always@(W,X,Y,Z,Cout);
sevenseg(a);
sevenseg(b);
sevenseg(c);
sevenseg(d);
sevenseg(e);
sevenseg(f);
sevenseg(g);

endmodule
4

0 回答 0