Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
17117 Discussions

Is this a bug or just me with Quartus detecting the clock in an always_block.

TuckerZ
New Contributor I
658 Views

Hello, 

I have the following code and the following error when trying to compile in Quartus Prime. Line 72 refers to line 4 of the code snippet. And line 75 refers to line 7 of the code snippet. 

 

 

 

Critical Warning (10237): Verilog HDL warning at xxx.sv(72): can't infer register for assignment in edge-triggered always construct because the clock isn't obvious. Generated combinational logic instead
Critical Warning (10237): Verilog HDL warning at xxx.sv(75): can't infer register for assignment in edge-triggered always construct because the clock isn't obvious. Generated combinational logic instead
logic [AVALON_BUS_WIDTH - 1 : 0] read_write_combined [NUM_TOTAL_REG - 1: 0]; 
always_ff @ (posedge csi_clk or negedge rsi_n) begin
    if (!rsi_n) begin
        read_write_combined                         <= '{default:'0}; 
    end
    else begin
        for (int i = 0; i < NUM_CONTROL_REG; i++) begin
            read_write_combined[i]                   <= coe_control_reg  [((AVALON_BUS_WIDTH)*(i)) +: AVALON_BUS_WIDTH];
        end   
        for (int i = 0; i < NUM_STATUS_REG; i++ ) begin
            read_write_combined[i + NUM_CONTROL_REG] <= coe_status_reg   [((AVALON_BUS_WIDTH)*(i)) +: AVALON_BUS_WIDTH];  
        end
    end
end

 

 

 

My question is why is this error being thrown? I have other constructs that look very similar are not throwing this error. Reset is the very first thing in the always block, followed by an else statement with the rest of the code. Clock isn't mentioned at all. 

 

Also, how can I fix this? 

 

Thank you, 

Tucker Z

 

Labels (1)
0 Kudos
1 Solution
TuckerZ
New Contributor I
644 Views

This is embarrassing, the problem was me. 

The links to my files were wrong so Quartus wasn't getting changes I made to the file and had an old copy that was incorrect. 

View solution in original post

0 Kudos
2 Replies
TuckerZ
New Contributor I
645 Views

This is embarrassing, the problem was me. 

The links to my files were wrong so Quartus wasn't getting changes I made to the file and had an old copy that was incorrect. 

0 Kudos
ShengN_Intel
Employee
620 Views

I’m glad that your question has been addressed, I now transition this thread to community support. If you have a new question, Feel free to open a new thread or login to ‘https://supporttickets.intel.com', view details of the desire request, and post a feed/response within the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support. The community users will be able to help you on your follow-up questions.

 

0 Kudos
Reply