You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vivado 2023.1 IP块设计问题:RTL模块输出无法连接至AXI GPIO的LED接口

解决Vivado 2023.1中自定义RTL模块与AXI GPIO输出端口的连接问题

问题描述

我正在使用Vivado 2023.1,无法将自定义RTL模块的输出连接到用于驱动LED的AXI GPIO输出端口。

自定义RTL代码(优化冗余写法)

module led_blinker (
    input wire sysclk,
    input wire rst,
    output wire led
);

    reg [26:0] counter;
    reg led_state;

    // 与PS复位逻辑匹配,采用低电平复位
    always @(posedge sysclk or negedge rst) begin
        if (~rst) begin
            counter <= 27'd0;
            led_state <= 1'b0;
        end else begin
            if (counter == 27'd99999999) begin  // 修改该值可调整LED闪烁频率
                counter <= 27'd0;
                led_state <= ~led_state;
            end else begin
                counter <= counter + 1'b1;
            end
        end
    end

    // 简化组合逻辑赋值
    assign led = led_state;

endmodule

连接与配置步骤

  • 配置AXI GPIO IP
    打开AXI GPIO配置窗口,将目标通道设置为输出模式,位宽至少设为1(对应单个LED);若无需双通道,取消“Enable Dual Channel”勾选。

  • 在Block Design中完成模块连接

    1. 点击Block Design界面的+按钮,选择“Add Module”,导入led_blinker模块。
    2. 连接时钟与复位:将PS端的FCLK_CLK0连接到led_blinker的sysclk端口;将PS端的低电平复位信号FCLK_RESET0_N连接到led_blinker的rst端口(与模块低电平复位逻辑匹配)。
    3. 连接输出信号:将led_blinker的led输出端口连接到AXI GPIO的GPIO_IO对应位(例如GPIO_IO[0])。
  • 生成设计并验证

    1. 点击“Generate Output Products”生成IP输出文件,再选择“Create HDL Wrapper”创建顶层封装。
    2. 完成综合、实现后生成比特流,下载到开发板测试LED是否正常闪烁。

排查补充

若仍无法连接,检查Block Design中是否存在未解决的约束冲突,或确认AXI GPIO的输出通道已正确映射到开发板LED引脚(可通过“Open Implemented Design”查看引脚分配)。

内容的提问来源于stack exchange,提问作者user2979872

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 06:50:12