TLM modeling and RTL emulation both work, but that doesn’t mean they’re equal in all tasks.
By Jon McDonald
Many people—engineers especially, myself included—are naturally biased against change. To get an organization to change takes significant energy. This isn’t a new trend. Much of the sentiment of the camp against change can be summed up by referring back to an 1899 quote from Missouri Sen. Willard Vandiver: “… frothy eloquence neither convinces nor satisfies me. I am from Missouri. You have got to show me.” I often find myself expressing this same sentiment when evaluating something new.
Recently I’ve been working with a customer that has been split over acceptance of a system-level design approach. A portion of the organization was willing to invest in SystemC transaction-level modeling and a portion relied solely on RTL and emulation for both system verification and software development. The situation has evolved to the point where the customer now can show the benefits and tradeoffs associated with both approaches. To me, one of the most satisfying outcomes of the customer’s activities is a growing understanding and appreciation that both approaches are valuable and worth investing in, and both provide specific benefit that will far outweigh the costs associated with the activity.
On the RTL side the customer believed, based on what they’ve seen in the past and a small amount of “frothy eloquence,” that they could perform the full-platform verification and achieve reasonable software execution speeds using emulation. This they have shown. And because the RTL is the final specification of what is being implemented, this is the ideal final sign off before tapeout.
On the TLM side they believed, based on industry information and relying slightly more on that “frothy eloquence,” that they could achieve a robust software development platform, which would also provide some level of system validation and performance feedback. Additionally this TLM approach would be more flexible, easier to deploy and experiment with, and significantly faster than the RTL implementation. They’ve now proven this is the case, and with significantly less effort they’ve been able to show that the software runs very efficiently on the TLM platform. They can both debug and verify detailed system attributes of the software interacting with the hardware. They’ve been able to quickly expand the usage of the TLM virtual platform model to additional software developers. And they’ve shown that the TLM platform executes approximately 50 times faster than the RTL on the emulator.
In this instance it’s nice to see an organization progressing from needing to believe the eloquent promises of a system-level design approach, to being able to quantitatively show, based on their own experience, the benefits of adding system-level design to their process.
—Jon McDonald is a technical marketing engineer for the design and creation business at Mentor Graphics.
Leave a Reply