gpt4 book ai didi

verilog - 系统verilog开关没有变化

转载 作者:行者123 更新时间:2023-12-03 07:49:11 25 4
gpt4 key购买 nike

此代码用于在开关打开时打开 LED。这是顶部模块。

module myb(
input clk,
input execute,
input switch,
output reg k

);
logic [5:0] led;
always@(posedge clk)
begin
if(switch)
led[0] = 1;
end


endmodule

这就是约束

set_property PACKAGE_PIN U16 [get_ports {led[0]}]                   
set_property IOSTANDARD LVCMOS33 [get_ports {led[0]}]
set_property PACKAGE_PIN E19 [get_ports k]
set_property IOSTANDARD LVCMOS33 [get_ports k]
set_property PACKAGE_PIN U19 [get_ports {led[2]}]
set_property IOSTANDARD LVCMOS33 [get_ports {led[2]}]
set_property PACKAGE_PIN V19 [get_ports {led[3]}]
set_property IOSTANDARD LVCMOS33 [get_ports {led[3]}]

set_property PACKAGE_PIN T18 [get_ports execute]
set_property IOSTANDARD LVCMOS33 [get_ports execute]

#------------------------------------------------------------
#---------------------- Clock signal ------------------------
#------------------------------------------------------------
set_property PACKAGE_PIN W5 [get_ports clk]
set_property IOSTANDARD LVCMOS33 [ get_ports clk]
create_clock -period 10.000 -name sys_clk_pin -waveform {0.000 5.000} -add [get_ports clk]

set_property PACKAGE_PIN V17 [get_ports {switch]
set_property IOSTANDARD LVCMOS33 [get_ports {switch]

但不知何故,什么都没有改变。我也尝试过使用按钮、防抖器等。我做错了什么?

最佳答案

正如 Serge 所说:对于从 FPGA 发出的信号,您的顶部模块应该有一个输出端口。您的工具没有给您发出警告或错误吗?因为你的约束无法满足!

其次,我会生成两个输出:一个高,一个低。这保证了至少一个 LED 会亮起。

确保彻底检查端口到 FPGA 引脚的映射。除了编码错误之外,它是 I/O 引脚不工作时最常见的错误来源。

您非常擅长返回基本代码来测试您的 I/O。这才是正确的调试方法。您可以再迈出一步,并省略时钟。只需:分配 led = 6'b101010; 然后在让它们工作后添加时钟。

最后一句话:您的输出k未使用且未定义。

关于verilog - 系统verilog开关没有变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53900187/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com