EDA & Tools
 | Comp-Arch | EDA & Tools | VHDL | Verilog | E-group Extracts

About the EDA Industry: EDA stands for Electronic Design Automation. To understand the rapidly growing, three and one-half billion dollar EDA industry, it helps to define what we mean for the words behind those three letters, "EDA":

Electronic - everything electronic, from stand alone computer chips to a full fledged 1.7GHz computer, new generation devices like cell phones, palms, pacemakers and routers, servers switches that run the internet, everything developed by the 1 trillion electronics industry is supported by the EDA tools and services.

Design - where creativity, ingenuity and new ideas come to the fore front. This is where the designers model the behavior of the designs and verification engineers spend their sleepless nights to ensure correctness, completeness and manufacturability of the product. It is all because of the fact that it is expensive and time consuming to "build it first and fix it later"
Considering the fact that it is only the electrical and computer engineers involved, EDA is often known as CAE (Computer Aided Engineering) and ECAD (Electronic Computer-Aided Design), acknowledging the crucial role EDA plays in the design phase.

Automation - Imagine a tailor stitching a shirt and a textile factory producing shirts in bulk. For the textile industry, it is absolutely essential to have sophisticated stitching equipments. Similarly imagine constructing a small house and a mile-high skyscraper. For the skyscraper you need to design sophisticated structural, electrical, plumbing, security and environmental systems, communications and computer networks, elevators, etc. all working together. These are the examples indicating the dramatic increase in the complexity involved and the designers should take care of today. It is this complexity—enabled by the relentless onslaught of Moore's Law** Moore's Law - A trend observed by Intel cofounder Gordon Moore in 1965 in which the number of transistors in integrated circuits doubles every 18 months. Engineers need to visualize their concepts, validate their designs and place and route their chips..... and it is EDA that gets it done.

The Electronic Design Automation (EDA) industry provides tremendous value to designers with its automated software and services to create and validate electronic designs. The unrelenting drive to produce ever-smaller and more complex electronic components and microprocessors -- for use in computers, automobiles, household devices and in thousands of other areas of modern life -- has fueled the need for ultra-powerful EDA platforms to design these systems and subsystems. 

While EDA is critical to the design of electronic subsystems, ironically, it is relatively young and curiously small when compared to the electronic systems and semiconductor markets it serves. Worldwide EDA revenues for 2000 was greater than $3.0 billion, which included maintenance, services and virtual components or Intellectual Property (IP).


Scripting needs for EDA
In any VLSI Industry EDA plays a very important role as a whole. The whole process of designing, from HDL to Silicon, it is necessary to have automation in many of the stages. As a part of that automation, scripting is a small but powerful aid in improving the effectiveness of any individual design stage. For example, Verification is one major stage in the design cycle. Anything can be designed, but to make sure what is designed is indeed designed up to the requirements is verification. This is where scripting helps the verification engineers in automating their verification process. Lets consider a case where a module is being designed and it needs to be validated. Verification engineer exercises that module with the verification suite (testcases) he has developed and brings up the features that are not compliant with the specifications (normally called as bugs). Then it is the designer's responsibility to fix that bug and ask the verification engineer to revalidate that module. From complete validation point of view, it is necessary to verify with the whole verification suite again. In such a case being able to write some automation scripts, verification engineer can be more efficient and save some valuable time. He can use that script to automate the verification process. It could only be an ideal case that we considered a situation with only one bug found. But in reality, there could be many and scripts become absolute necessity as they improve efficiency and also accuracy.

Now, the question is how do we learn scripting ?
The following links provide pointers to some scripting sources (tutorials) on the web:

Apart from this normal shell scripting, one should be aware of Perl also. Perl is a scripting language that is so powerful that u can achieve anything u need for automation within a matter of few mins. What actually I mean to say is, it contains a lot of features and lots of inbuilt functions which enable fast development of any required scripts. One might be knowing unix shell commands like grep and sort, and stream editors like sed and other unix utilities. Perl contains the features of all of those in itself, thus making it a powerful scripting language. Believe me it is very easy to learn. Some online links to Perl resources on the web are as follows:  Tcl for Scripting
Perl is ofcourse the preferred one for general purpose scripting. When it comes to Tool Enhancing Scripts, I would prefer Tcl to Perl. This is only for the reason that, Modelsim being the best simulator so far and since it supports Tcl scripting, it is very advantageous to know Tcl. One can do wonders with it. I may not be able to tell how exactly you can use Tcl and what can be dome with it. But I would definitely say that its one thing which can greatly help in automation of some processes. It is possible to write Tcl routines and use those routines to do your job on Modelsim. You get to access the internal structures and variables while simulating a testcase and this is something quite interesting. So I would strongly suggest studying Tcl to some extent. You can start with some online tutorials, and if u feel interested then get a book for urself from a near by store. 
Some Online tutorials and reference stuff scattered across the web are presented here.  Tk for GUI based applications
Once you know Tcl and Perl, you would definitely wish to use it creatively building some utilities for urself. May be small or may be a full fledge robust productivity tool, anything is possible to achieve with either Perl and Tk or Tcl and Tk. Now what is Tk ? Tk stands for Tool kit, but that doesn't comprehend the use of Tk. It is a package, which provides Graphic User Interface to any available utility/tool written in Perl or Tcl. Infact, Tk is avaible for C also. But what I prefer is using Tk either with Perl or Tk. I have extensively used Tk with Perl (my favourite scripting language). I could create a Text Editor, an a general Calculator in no time, ofcourse both with their GUI. When I first did it, it was a fabulous experience for me. Try it urself, 'am sure u will like it.
At every stage of Chip Design, from HDL to Silicon, we need Automation Tools. Well, literally speaking, since these tools aids Electronic Design, these are known as Electronic Design Automation tools.

Some EDA Tools
Allianceby ASIM-LIP6
Alliance is a complete set of free CAD tools and portable libraries for VLSI design. It includes a 
VHDL compiler and simulator, logic synthesis tools, and automatic place and route tools.
Advanced verification tools for functional abstraction and static timing analysis are part of the system.
complete set of portable CMOS libraries is provided, including a RAM generator, a ROM 
generator and a data-path compiler.
StateCAD by Visual Software Solutions
StateCAD automates state machine development in VHDL and Verilog. Using the FSM wizard, complex, concurrent state machines are specified. Random logic and Mealy/Moore outputs are added to complete the design. To meet tough product requirements, StateCAD optimizes the code it generates for speed, area, loading and more. Vendor specific code generation guarantees the design will function, with your tools, as you expect. StateCAD had code generators for all top name products from Synopsys, Viewlogic, Altera, Xilinx, Mentor and more!
A|RT Builder by Frontier Design
A|RT Builder generates fully synthesizable RT-level VHDL and Verilog HDL from a large subset of ANSI C. A|RT Designer 2.3 lets you interactively drive and explore multiple dedicated hardware 
architectures from software, using only ANSI-C or SystemC programs. When the design is 
optimized, the tool automatically generates a fully synthesizable Verilog or VHDL description. This
latest version of the tool has enhancements geared specifically to FPGA architectures from Altera
and Xilinx. Available for HP-UX, Sun Solaris and Windows NT platforms.
Active-HDL by Aldec Inc.
Active-HDL is a completely integrated, powerful HDL design and simulation environment. Active-HDL is offered in three product configurations to adapt to all design styles.
TestBencher Pro by SynaptiCAD, Inc.
TestBencher Pro generates reactive VHDL and Verilog test benches and bus-functional models from language-independent timing diagrams.

Site Meter