生成的起始块必须命名

问题描述 投票:0回答:1

我正在用Xilinx编译一个名为“ ODIN”的SNN模拟器。对于Generate块,我得到此错误,但我认为此块没有错。您可以帮我吗?

'''
genvar i;
generate
    for (i=0; i<8; i=i+1) begin

        sdsp_update #(
            .WIDTH(3)
        ) sdsp_update_gen (
            // Inputs
                // General
            .SYN_PRE(CTRL_PRE_EN[i] & (SPI_UPDATE_UNMAPPED_SYN | SYNARRAY_RDATA[(i<<2)+3])),
            .SYN_BIST_REF(CTRL_BIST_REF),
                // From neuron
            .V_UP(NEUR_V_UP_int[i]),
            .V_DOWN(NEUR_V_DOWN_int[i]),    
                // From SRAM
            .WSYN_CURR(SYNARRAY_RDATA[(i<<2)+3:(i<<2)]),

            // Output
            .WSYN_NEW(SYNARRAY_WDATA_int[(i<<2)+3:(i<<2)])
        );
    end
endgenerate

我收到这些错误:

必须命名生成的起始块

非法重新声明”

for-loop verilog hdl generate
1个回答
0
投票
''' genvar i; generate for (i=0; i<8; i=i+1) begin : sdsp_gen // <<< Name for begin/end block sdsp_update #( .WIDTH(3) ) sdsp_update_gen ( // Inputs // General .SYN_PRE(CTRL_PRE_EN[i] & (SPI_UPDATE_UNMAPPED_SYN | SYNARRAY_RDATA[(i<<2)+3])), .SYN_BIST_REF(CTRL_BIST_REF), // From neuron .V_UP(NEUR_V_UP_int[i]), .V_DOWN(NEUR_V_DOWN_int[i]), // From SRAM .WSYN_CURR(SYNARRAY_RDATA[(i<<2)+3:(i<<2)]), // Output .WSYN_NEW(SYNARRAY_WDATA_int[(i<<2)+3:(i<<2)]) ); end endgenerate
© www.soinside.com 2019 - 2024. All rights reserved.