Irrational Exuberance Meets High-Level Design

Garbage in will still produce garbage out, no matter how much the tools improve.

popularity

By Jon McDonald

Irrational exuberance is running rampant. Design managers believe all their systems engineers and software programmers are going to be able to drive the hardware design process from a high-level description.

OK, perhaps irrational exuberance is a bit strong and it may not be quite rampant, but I’ve heard statements recently both from customers and suppliers pushing in this direction. For those of you who were around for the last big design shift—from schematics to RTL—you may remember hearing these kinds of statements back then. Managers believed or were sold the story that hardware design was going to be more like software as design moved to RTL. Back then there were a number of projects that tried to have software programmers writing the RTL code. What I remember most are some spectacular failures, primarily because the people writing the RTL did not understand the hardware implications of the choices they were making.

Fast forward 20-plus years and everyone is excited about another change in the abstraction of hardware design. We have many hardware design projects starting at a transaction level. Combine this with the growth of UML and other abstract descriptions for driving the systems engineering and software processes, and we have people again thinking that the need for hardware engineers is going to be replaced by software, and systems engineers having their abstract descriptions automatically synthesized to hardware. The problem with this kind of thinking is similar to what happened two decades ago. Without a good understanding of what you want, and the implications of your choices on power and performance of the hardware, you will end up with a very fast path from an abstract model to a garbage implementation.

High-level languages are not causing the problem. High-level descriptions give us phenomenal power to explore the requirements of our systems and the potential tradeoffs of different implementations. Still, we have to understand the implications of the approaches we are pursuing. Abstract descriptions and high-level synthesis tremendously leverage the power of a hardware designer to explore the design space much more thoroughly than would be possible in RTL, but we must be realistic. Nothing comes for free. Garbage in will give us garbage out in our transformation from a high-level description to RTL, just like it does in every other area of human endeavor.

Personally, I don’t see the need for good hardware designers diminishing. I see the need for hardware designers capable of leveraging the power and capabilities of high-level design exploding. Perhaps irrational exuberance is not appropriate, but at least some excitement about the possibilities enabled by high-level design is warranted.

–Jon McDonald is a technical marketing engineer for the design and creation business unit at Mentor Graphics.