Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
Announcements
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.
15469 Discussions

Quartus Pro 22.2: enum logic vs logic : Error(16983): arrays have different elements

alexislms
New Contributor III
232 Views

 

 

module tb;
  enum logic [7:0] {A, B, C} fsm [4];
  logic [7:0] state [4];
  assign state = fsm;
endmodule

 

Never had an issue with Vivado and never had an issue with Modelsim: https://www.edaplayground.com/x/S3Va

 

With Quartus Pro 22.2, I get Error(16983): arrays have different elements 

 

I believe this should be allowed by the specs.

 

Regards,

0 Kudos
1 Solution
RichardTanSY_Intel
97 Views

Yes, there is a plan to fix this but it may takes time and I do not have the exact detail on when it will be fix. As this is subject to change.


View solution in original post

11 Replies
RichardTanSY_Intel
209 Views

Let me check this with the engineering team.


RichardTanSY_Intel
183 Views

Fyi, the engineering team is working on this.

Please do expect that any work involves engineering may takes some time depending on the issue complexity. 


Best Regards,

Richard Tan


RichardTanSY_Intel
159 Views

May I know are these code for testbench usage?

 

alexislms
New Contributor III
154 Views

Not only, we mainly use it in our synthesizable code.

RichardTanSY_Intel
138 Views

A workaround suggested by the engineering team is to change RTL a little bit.

By changing the assignment of unpacked type to bit by bit instead of complete.


for the given design example


module tb; 

 enum logic [7:0] {A, B, C} fsm [4];

 logic [7:0] state [4];

 assign state[0] = fsm[0];

 assign state[1] = fsm[1];

assign state[2] = fsm[2];

 assign state[3] = fsm[3];

//assign state = fsm;      

endmodule


The engineering team will check with the tool vendor on fixing this issue.


alexislms
New Contributor III
132 Views

@RichardTanSY_Intel  Thank you for the follow-up.

The workaround defeats the purpose of these data types, we will wait for the fix.

 

Regards,

RichardTanSY_Intel
116 Views

Do you able to escape the error based on the last email that I sent?


alexislms
New Contributor III
108 Views

Can we expect this to be fixed in a new release?

RichardTanSY_Intel
98 Views

Yes, there is a plan to fix this but it may takes time and I do not have the exact detail on when it will be fix. As this is subject to change.


alexislms
New Contributor III
89 Views

Thank you, please feel free to close the case.

RichardTanSY_Intel
62 Views

With that, I will now transition this thread to community support. If you have a new question, feel free to open a new thread to get the support from Intel experts. Otherwise, the community users will continue to help you on this thread. Thank you.

 

Best Regards,

Richard Tan

 

p/s: If any answer from the community or Intel Support are helpful, please feel free to give best answer or rate 9/10 survey.


Reply