Trends:EDA Design Environment Trends.

EDA Design Environment Trends

EDA is evolving rapidly to address the many new design issues facing the chip designer. We mentioned a few of these issues previously. The trends associated with the overall design environment include:

  • Integrated Design Suites

  • Run-Time Control

  • Distributed Design

  • System Design Links to Chip Design

Integrated Design Suites

Design tools are moving from (possibly incompatible) point tools to integrated suites of compatible tools. Some integrated suites simply use a compatible data transfer format to move data from tool to tool. Others use a common data structure or database to allow tools to share access to common data.

Interface formats for files or data may be proprietary or non-proprietary, open or closed. Proprietary means a vendor owns and controls it. Non-proprietary means the format is published and available to the public. Open means that it is free or for sale to the public. Closed means that it is available only with tools of the vendor.

Run-Time Control Tools

A design flow involves many tools, many steps, and many files. Every change to a file requires a revision number change to the file name. After a design error is detected and fixed, many related files may need updating as well. (Very often, fixing one error affects several files. Any steps we previously ran may also need to be rerun after a design file is changed.)

With all the interruptions to fix errors, it is easy for the designer to lose track of where he is in the design flow. Where are we in the flow? What is the state of the design? Which files were not affected, which files need to get updated, and which design flow steps need to be re-run? These issues are called run-time control.

Increasingly, design groups are using EDA run-time control tools. These tools include features that guide an engineer through the design flow. They include automatic revision control and tracking of files (possibly) invalidated by a design change. They reduce errors from the inadvertent mistyping of a file name.

Some tools handle automatic launching of a tool and its associated data, parameters, and output files. The tools provide automatic iteration tracking, display a history log of all the design steps and files involved, and so forth.

Distributed Design

EDA tools are evolving to support design teams separated by time, geography, language, and culture. Some issues include sharing enormous design data files, revision control, and backup.

Backup is particularly important since a damaged or lost file is very costly. Re-creating a file requires a great deal of work. The designer may have to repeat many steps in the design flow to re-create the lost file.

Other distributed design issues are security and fast file transfers (both incremental changes and whole files). Video-conferences, net meetings, and long teleconferences supplement the non-EDA side of the challenge.

System Design Links to Chip Design

Traditionally, system engineers do electronic system level design and chip designers do IC design. They exchange information manually, since their tools do not communicate.

However, several groups are trying to connect system level design directly to chip level design. Some emerging system level design languages link directly into the chip design system. These include extensions of the C and C++ programming languages, or the Verilog HDL. They are competing to be recognized as a standard.

Other groups are trying to develop a high-level, executable specification language for either hardware or software. One could create hardware description code or software code directly from the design specification. Related work includes ways to describe system design constraints (such as size, power, or speed).

Did You Know?

Some system designers prefer using a programming language to describe the system. Others prefer a hardware description. There are heated debates over which is the best approach.

Their preference tends to follow their experience: C programming experience, or graphical and HDL experience.

Hardware designers are used to thinking about concurrent systems, where operations are going on in parallel. In contrast, most programming languages are inherently sequential. Therefore, most programmers have learned to use a sequential design approach (even if a language has recent extensions to support concurrency).

Comments

Popular posts from this blog

Design using Standard Description Languages:The simulation model in VHDL

EDA Tutorial:Place and Route in a Standard Cell Design Style

Overview of EDA Tools and Design Concepts:Major Classes of EDA Tools.