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

Bug report: Quartus schematic to VHDL netlister produces incorrect VHDL code.

EHepl
Beginner
663 Views

We have been using Quartus as a teaching tool for many years, but unfortunately have been "stuck" on version 13.0sp1 due to the FPGA board (DE2) we had for students (13.0sp1 is the latest version that supports the FPGA on that board). One lab sequence designs, simulates, and exercises a subset of the MIPS architecture as presented in the Hennesey/Patterson text book. The ALU is built hierarchically, starting with a 1-bit ALU to generate a 32-bit ALU. (Remember, this is a teaching exercise!). The VHDL code generated by Quartus II for the 1-bit ALU is incorrect (would fail compilation in Modelsim) due to the output of the LPM_ADDSUB with a width parameter of 1 bit not be handled correctly. For years, we instructed the students how to edit the generated VHDL to "fix" the error since we figured this was probably reported and fixed in later Quartus releases. This year we purchased newer FPGA boards (DE10) and I'm in the process of updating the labs to use Quartus Prime (v18.1.1) and have found that it still produces this error.

 

The edit to the VHDL code is simple, but the tool should not produce bad code. The attached files show the "generated" VHDL and the corrected VHDL. The error occurs on line 80 and is due to the signal SYNTHESIZED_WIRE_8 being declared (properly) as a STD_LOGIC, but being referenced on line 80 as a single bit slice (via the "(0)" indication).

 

The LPM_ADDSUB module was selected as "Add only" with a width of 1 bit, and has both a carry-in and carry-out (eg. 1-bit full adder).

 

I looked all over the web site to try to figure out where to report a Quartus problem... I take it that the forums are the appropriate place...

 

 

0 Kudos
3 Replies
KhaiChein_Y_Intel
348 Views

Hi EHepl,

 

Can you provide the full design to reproduce the error? You may archive the project by clicking on Project > Archive Project > Archive

 

Thanks.

0 Kudos
EHepl
Beginner
348 Views

Here is the archive for my solution to Lab3. It includes a schematic named "ALU_1b" which is the source of the problem. You can see the problem on line 80 when you create VHDL for this schematic sheet.

 

Thanks,

Ed Hepler

0 Kudos
KhaiChein_Y_Intel
348 Views
Hi EHepl, Thanks for reporting this to us. I have filed a case to report this to the team. Please edit the HDL file generated as a workaround at the moment. Thanks. (1507282593)
0 Kudos
Reply