簡體   English   中英

錯誤 (10170): CRC_configurable.v(62) 附近文本的 Verilog HDL 語法錯誤:“整數”; 期待“結束”

[英]Error (10170): Verilog HDL syntax error at CRC_configurable.v(62) near text: "integer"; expecting "end"

我正在使用 Quartus Prime Lite Edition 並有一個case聲明:

S2: begin
            dat[WID_DAT-1 :1] <= dat[WID_DAT-2 :0];
            dat[0] <= 0;
            crc[0] <= crc_temp[0];
            integer i;
            for (i = 1; i < WID_CRC; i = i+1) begin
                crc[i] <= crc_temp[i] ^ crc[i-1];
            end
            
            if(count != 0) begin
                r_ns <= S2;
                count <= count -1;
            end
            
            else begin
            r_ns <= S_DONE;
            done <= 1;
            end
        end

並在我開始分析和細化時收到錯誤消息:

錯誤 (10170): CRC_configurable.v(62) 附近文本的 Verilog HDL 語法錯誤:“整數”; 期待“結束”。

為什么會這樣,我應該如何避免它?

您不得在begin/end塊的中間聲明integer 您可以將integer聲明行移到always塊之外(在它之前)。

integer i;

always ... 
...
S2: begin
            dat[WID_DAT-1 :1] <= dat[WID_DAT-2 :0];
            dat[0] <= 0;
            crc[0] <= crc_temp[0];
            for (i = 1; i < WID_CRC; i = i+1) begin
                crc[i] <= crc_temp[i] ^ crc[i-1];
            end

或者,如果你給你的開始塊一個名字,你應該能夠在begin行之后立即聲明integer

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM