Verilog:1位全加器将无法在FPGA上运行

Verilog:1位全加器将无法在FPGA上运行,verilog,fpga,spartan,Verilog,Fpga,Spartan,使用Verilog和Xilinx ISE网页包,将其闪烁到Mimas V2 Spartan 6上,当按下任何开关时,都不会输出,有人能看到我遗漏了什么吗 module OneBitFullAdder( input wire ci, input wire a, input wire b, output wire sum, output wire co ); assign co = (a&b)|(ci&(a^b)); assign sum = (a^b^ci); endmodu

使用Verilog和Xilinx ISE网页包,将其闪烁到Mimas V2 Spartan 6上,当按下任何开关时,都不会输出,有人能看到我遗漏了什么吗

module OneBitFullAdder(
input wire ci,
input wire a,
input wire b,
output wire sum,
output wire co
 );

assign co = (a&b)|(ci&(a^b));
assign sum = (a^b^ci);

endmodule
以下是我的限制:

NET "b" PULLDOWN;
NET "a" PULLDOWN;
NET "ci" PULLDOWN;

NET "sum" LOC = T18;
NET "b" LOC = L18;
NET "a" LOC = M18;
NET "ci" LOC = M16;
NET "co" LOC = T17;
下面是端口分配的电路板示意图:

它在模拟中工作,在实践中,我发现如果我将任何输入组合设置为上拉,LED输出正确的逻辑,但按下开关没有效果。我试过分配不同的开关


如果我遗漏了一些有用的信息,请告诉我,这里的初学者(Verilog和FPGA)都很认真。

看起来您应该在这些输入上使用上拉而不是下拉。如果查看示意图,按下按钮时信号接地。因此,当按钮未按下时,信号被拉低至逻辑0,当按钮按下时,信号接地至逻辑0

我也有同样的感觉。在输入@GJFT处使用下拉菜单的原因是什么?这确实解决了问题。我的想法是“pulldown=初始化为零”,然后在按下开关时会变高,但我现在明白了为什么这是错误的。谢谢你花时间来解决我的新手问题!