Critical Issue
Due to a problem in the Quartus® Prime Pro Edition Software version 24.3 and 24.3.1, you might see that data written to an M20K RAM is incorrect in hardware. This problem occurs when the ENFORCE_CLK_ENABLE_INFERENCING_IN_M20KS is set to ON (Default Value), the RAM type is M20K, and the RTL for the write enable signal is coded as multiplexer as shown in the screenshot below.
Screenshot of sample code that might show this problem
To solve this problem in the Quartus® Prime Pro Edition Software versions 24.3 and 24.3.1, set the option ENFORCE_CLK_ENABLE_INFERENCING_IN_M20KS to OFF in the project QSF.
This problem is scheduled to be fixed in a future release of the Quartus® Prime Pro Edition Software.