The Beginning

Identifying the challenges in moving from a static spec to a live one.

popularity

We all want our creations to transcend time. Our products, our designs—even our specifications.

Specifications are more than just ideas or collections of requirements or static collections of implementation details. They live inside many chips and many designs, and the more flexible and portable they are, the longer they remain relevant. End devices may be replaced relatively quickly, but specifications can stick around much longer.

In many cases, that can be as long as a decade or more. For image processing and networking chips relying on established industry standards or designs following the familiar “platform pattern” – when a platform is created and several derived products are created from it, these specs do last several product generations.

In the past, rich specifications – those with annotations, formatting, diagrams, etc. – in short, more than just ASCII text, were confined to just capturing design ideas in word processing documents. They were stale at the instant they were completed.

As an industry we have progressed significantly since then. We are now at a point where you can create a specification and transform the information into useful code at the click of a button.

The evolution from a static specification to a live one has its set of challenges, though. Among them:

  • How to create complex design intent naturally, in a form that can be extracted and processed unambiguously.
  • How to create a portable specification, targeted for multiple platforms – design, verification, emulation, validation.
  • How to create comprehensive specification that promotes IP reuse and integration.
  • How to create self-checking specification that avoids data duplication.

Still, the rewards outnumber the challenges. In many respects, this remains the Holy Grail of EDA — the ultimate Shift-Left – to write a specification, and have IP generated automatically, all correct-by-specification.

This blog will dig into new and existing challenges, what progress is being made to solve them, and what needs to be done to bring these solutions to market. It may sound like a crazy endeavor, but we are firm believers this approach can be realized in the future, reducing the amount of effort, time and money it takes to deliver robust designs across all markets.