Article ID: 000074158 Content Type: Troubleshooting Last Reviewed: 09/11/2012

Why does LeonardoSpectrum™ version 2002c produce incorrect synthesis results for my Stratix™ design that uses a Nios® embedded processor or a combination of synchronous and asynchronous control signals?

Environment

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Description There is a synthesis problem that affects Stratix designs in LeonardoSpectrum version 2002c when a design contains certain combinations of synchronous and asynchronous control signals. Nios designs produced by the SOPC Builder may not function correctly in Stratix devices due to this issue. The synthesis problem has been fixed in LeonardoSpectrum version 2002d.

You may experience this synthesis problem in Stratix designs if you have a process or always block with an asynchronous set (aset, at least one non-zero bit), as well as a synchronous load (sload) or synchronous clear (sclr). If your design contains an aset along with an sload or sclr signal, you may find that your sload or sclr result is inverted. For example, a synchronous loadable downcounter with an asynchronous preset signal might exhibit this failure. Since NIOS designs contain these types of logic configurations, your NIOS design may not boot correctly in a Stratix device.

To avoid this problem, synthesize your design using LeonardoSpectrum 2002d (released late September 2002 with the Quartus® II software version 2.1 SP1) or later. If the failure occurs in your own HDL (hardware description language) code, you can work around the problem in LeonardoSpectrum 2002c by avoiding these specific combinations of synchronous and asynchronous control signals for Stratix. Use an asynchronous clear (aclr) signal instead of aset, or avoid mixing the use of aset with a synchronrous load or clear control signal.

Related Products

This article applies to 1 products

Intel® Programmable Devices