Plenty of niche tools fall under the electronic system level
(ESL) label, but putting them together into a cohesive flow has been elusive.
At the recent Design Automation Conference, consultant Brian Bailey (and
blogger at techbites.com) described how
he's been working with Cadence on a flow that will link virtual prototypes to
high-level synthesis (HLS).
In a short presentation at the Cadence booth, as well as in
the video clip embedded in this posting, Brian talked about the need for a more
cohesive ESL flow and the challenges it poses. "ESL has been a bunch of
islands," he said at the booth presentation. "Each island is isolated. We have
failed to create an ecosystem in which the benefits of each piece can be fully
Bringing Islands Together
If virtual prototypes and HLS were linked into a cohesive
flow, the same models used to build virtual prototypes could be synthesized and
brought into implementation. Several developments in recent years have made
this kind of connection more feasible. One is SystemC, which Brian described as
a "major advance" that provides a common language for ESL tools. But SystemC
alone was not enough. The Open SystemC Initiative transaction-level modeling
(TLM 2.0) interface standard was also critical, because it allowed IP
There is, however, a roadblock -- TLM 2.0 is not
synthesizable. "That's a very big problem when it comes to putting together
complete flows and methodologies," Brian said. To get around that roadblock,
Brian has been working with Cadence on the definition of interfaces that allow
the separation of computation and communications within the modeling
environment. This can result in blocks that can be run through high-level
synthesis. The video interview below, conducted right after Brian's Cadence
booth presentation, provides more details.
If video does not play, click here
While re-use of virtual prototype models by the hardware
team is one advantage of the flow Brian describes here, the benefits extend to
the software team as well. As Brian says in the interview, virtual prototypes
today are primarily used to develop and debug low-level software. If we can
build fast models comprised of computational blocks, then higher levels of the
software stack could potentially be developed
using virtual platforms.
A cohesive ESL flow is more than just a productivity aid. It's a pathway to the creation of integrated hardware/software platforms ready for applications
deployment. As such, it's a key enabler for System Realization as described in
the EDA360 vision paper. And the first stage of this integrated flow is a link between virtual platforms and implementation.
Here's a related white paper on system-level computer-aided-design (CAD) tools that allow early hardware
and software co-development, hardware and software performance evaluation and fast system-level modeling.