You are currently viewing SemiWiki as a guest which gives you limited access to the site. To view blog comments and experience other SemiWiki features you must be a registered member. Registration is fast, simple, and absolutely free so please, join our community today!

Keeping It Fresh with the Veloce Deterministic ICE App

In The Times They Are A Changin’ Nobel Laureate Bob Dylan advised us to “heed the call” of change or suffer the consequences. This couldn’t be more true, considering what design and verification engineers face every day in the midst of the technological revolution.

Change has never been so rapid. And it requires we constantly adapt. Within the world of emulation, we are witnessing tremendous efforts to keep pace, making emulators more useful, more available, and more efficient. Virtualization and around-the-clock, concurrent availability of emulator resources to multiple project teams are primary strategies for better serving global design teams and the growing number of emulation use models and applications.

Yet traditional ways of doing things continue to have value. For example, in-circuit emulation (ICE) is needed for many SoC verification scenarios. Used to exercise a design under test (DUT) by connecting physical targets to an emulator, ICE delivers the significant advantage, among other things, of being able to run real-world usage scenarios before tape-out.

However, even when it is advantageous to use an ICE-based verification environment, verification engineers face four challenges:

Insufficient trace depth

Iterative and long debug cycles

Randomness

Lack of flexibility

To address these debug challenges, and keep ICE current with modern design and verification trends, Mentor developed the Veloce® Deterministic ICE App.

The Veloce Deterministic ICE App takes the randomness out of ICE, dramatically shortening the time to find and fix bugs. It delivers a repeatable and virtual debug flow for an ICE-based environment. It addresses debug limitations, including randomness, by creating a virtual debug model of an ICE run and generating a replay database to repeat a test without cabling to physical ICE targets.

Figure 1: The Veloce Deterministic ICE App use model.

The Veloce Deterministic ICE App use model is very simple. To generate a replay database, you specify your requirements and enable the Veloce Deterministic ICE App replay mode. Veloce generates the replay database while it runs the standard ICE test case with the ICE targets connected. Once the run is complete, the test case can be run as often as necessary using the replay database without the use of ICE targets.

Figure 2: Veloce Deterministic ICE use model.

Because the replay database has eliminated the use of ICE targets, you can run this database on any Veloce hardware. The emulator ICE targets are freed up for use by other project teams, and you can stop a run and inspect both data and full waveforms. This provides a rich debug platform and increased productivity in addition to efficient use of emulation resources.

The Veloce Deterministic ICE App also enables advanced debug methodologies like assertions, protocol monitors, and $display, which are commonly used in today’s advanced verification methodologies. You can also do power analysis, coverage closure, and offline SW debug using the Veloce Deterministic ICE App within an existing ICE setup.