Open-source movements get behind GNU EDA tools
SAN JOSE, Calif. The open-source software movement is bearing its first fruits in the EDA world, where several individuals and companies are offering tools under the Free Software Foundation's GNU Public License (GPL). Such software can be freely used, modified and distributed, bypassing the high price tags for commercial EDA tools.
GPL-based EDA software is under development by at least two volunteer projects: GNU EDA (gEDA), which is working on schematic and board-design tools, and FreeHDL, which is building a VHDL simulator. A small IC CAD vendor, Electric Editor Inc., recently put nearly all its software under GPL, and a commercial startup, SureFire Verification Inc., is offering a GPL Verilog editor.
The GNU licensing scheme has been around for nearly two decades and is grounded in the Free Software Foundation's belief that software should be free and that providers should make their money on services and support. Source code provided under GPL can be used, distributed or modified by anyone but cannot be resold commercially, even if modified.
GNU compilers have long enjoyed widespread use among embedded-systems designers. In the EDA world, much of the impetus for the new GPL-based software is the growing support for the open-source Linux operating system, which is offered by all of the existing projects.
The idea of free EDA software may be unsettling to those companies that make their living by selling it. But SureFire Verification (Campbell, Calif.), which is preparing a line of commercial functional verification tools, doesn't see it that way, said Mike McNamara, the company's president.
"I don't think you'll see a GPL place-and-route tool, synthesis tool or simulator that's real credible," he said. "There is value in having somebody you can write checks to, and they fix bugs. If you use free software, you get to fix it."
Where GPL will make the most sense, said McNamara, is for utilities that don't carry a high market value such as his own Mac's Verilog Mode for Emacs software, available from SureFire's Web site under GPL for Unix, Linux, and Windows. The site also offers a GPL-based Verilog preprocessing tool.
The gEDA project, with its focus on schematic entry, net-listing and pc-board CAD, takes aim at some mainstream EDA tools. But gEDA founder Ales Hvezda readily acknowledges that the available software is an "alpha" version that's a long ways away from the capabilities of commercial tools.
Hvezda, a radar engineer at the Massachusetts Institute of Technology's Lincoln Labs, said that gEDA has no connection to his job and that he expects no financial remuneration for his role. "It's just for the sake of doing it," he said.
Hvezda said gEDA originated when he was working on a project outside of his job. He couldn't afford commercial EDA tools, so he started writing his own. Alpha code is currently available for gschem, a schematic editor, and gnetlist, a net-list-generation and -verification tool. Work is just getting started on pc-board-layout software.
In addition to the software Hvezda has written or is writing, the gEDA Web site offers two programs written by outside contributors. They are gmos, a MOS simulator, and gwave, an analog-waveform viewer.
One reason for going through all the effort, said Hvezda, is to create a "framework" of Linux-based EDA tools. "Through the open-source model, there's a lot of extensibility," he said. "You can change the software and add the features you want."
The gEDA Web site is hosted by Simple End User Linux (SEUL), a volunteer project aimed at helping Linux become an easily used operating system. Hvezda develops under Linux, but the software will run on any Unix platform.
Hvezda's software is getting a road test at Coelacanth Engineering (Middleborough, Mass.), a design-services firm in the wireless- and cable-communications market. Roger Williams, a partner in the firm, said that gEDA software is easier to use than OrCAD or Viewlogic tools and that his company is already using it for schematic capture and block-diagram creation.
One attraction of gEDA, Williams said, is that Linux preserves scripting and command-line support abandoned by Windows NT. "The other motivation driving our support of gEDA is that our experience has shown that open-source software not only gives us greater flexibility and control but actually results in a higher-quality application," he said.
Another all-volunteer attempt at creating GPL-based Linux EDA tools is the FreeHDL project, which emerged late last year. The project started with the goal of creating an open-source VHDL simulator with many of the features of commercial tools, including graphical waveform viewing, source-level debugging and full IEEE 1076-93 language compliance.
The project is starting with Vaul, a VHDL-93 parser from the University of Dortmund (Germany) that's already available under GPL. It plans to use the Advanced Intermediate Representation with Extensibility (Aire) format, a proposed industry standard. Like gEDA, FreeHDL's Web page is hosted by SEUL.
Phil Tomson, a FreeHDL founder, updated the project's progress this week in the Linux EDA e-mail reflector. "While there seemingly hasn't been much activity going on in FreeHDL, we do now have the first version of the kernel code and a front end (Vaul)," he wrote. "Code generation from Vaul's internal data structures is the next step, and there is someone working on this."
Tomson expressed the hope that the project will branch into synthesis in the future. GPL-based synthesis has been a recent discussion topic in the Linux EDA e-mail reflector.
While gEDA and FreeHDL involve the creation of new tools, Electric Editor (Los Gatos, Calif.) has decided to place a venerable piece of EDA software under GPL. That company's Electric VLSI Design System was originally written in 1982 and was commercially sold in the 1980s under the Applicon BravoVLSI label. Electric Editor was formed in 1988 to market the product.
The offering is a complete custom-IC design system, including schematic entry, full-custom layout, design-rule checking, simulation, silicon compilation and many other utilities. Electric Editor decided to take the public-domain route as a matter of survival, said Steve Rubin, chief technology officer and original developer of the product.
"The truth of the matter is, we couldn't compete with the likes of Cadence," he said. "So we decided to go the Netscape route give away the razors and sell the blades. We put it in the public domain, and we offer consulting, custom solution development, training and documentation, so there is still plenty of work for us."
GPL was the best route to take, Rubin said, because it guarantees the code won't be resold. "If we just took the code, said 'It's for free' and put it on our Web site, a competitor could take the code and start to sell it. That would annoy me," he said.
The Electric VLSI Design System claims platform independence through an ability to compile for Unix, Linux, Windows and Macintosh.
SureFire Verification's GPL offering has also been around for a while. McNamara started developing it in 1992, while working for Chronologic, and has been personally maintaining and upgrading it ever since. Mac's Verilog Mode for Emacs is a context-sensitive editor offering such features as automatic indentation and colorization of Verilog words.
The editor is in the public domain because it has to be. It's built around Emacs, a more general-purpose editor that is distributed under GPL itself. Thus, McNamara can't modify Emacs and turn it into a commercial product.
"There's no binary, so from a moral and engineering perspective we're tied to shipping the source," he said. "Besides, it's a 'give a little bit back to the world' type of thing."