Posted by Colin Warwick
Occupy? Offspring? Occlude? According to an article Which Data Transfer Format is Best for the Industry? the “O” in “ODB++” stands for Open as in Open DataBase. So, kudos to the Mentor Graphics’ Open Door program for opening the new, improved ODB++ Solutions Alliance. But I’m wondering if this new attempt to add a little openness to ODB++ is in response to the relaunch last year of the competing computer aided design to computer aided manufacturing (“CAD-to-CAM”) data format, namely IPC-2581 aka “Offspring” backed by IPC and by Mentor’s two main competitors in the enterprise printed circuit board (PCB) tool market: Zuken and Cadence… Long story…
How did we get here?
As everyone knows, inside every electronic gadget is a PCB that connects the semiconductor and other components together. Almost all printed circuits boards are designed virtually in a CAD system. To physically realize the design, the computerized design information must be transferred to a photolithographic CAM system. Since the CAD and CAM systems are generally produced by different companies, they have to agree on a CAD-to-CAM data exchange format to transfer the data. Over the years, there have been several formats. First there was Gerber, named after Heinz Joseph Gerber’s company, Gerber Systems. On August 27, 1980 the first edition of the Gerber Format: a subset of EIA RS-274-D; plot data format reference book was published as a specification to drive their CAM photoplotters. As the title of the manual implies, it was a proprietary subset of EIA RS-274-D, an industry standard for numerically controlled machines. These were the days of 7-bit punched tape data storage, which drove it to be a very terse standard. It took a skilled operator to infer the design intent from those few ASCII rows.
Since Gerber defined exactly what’s in and what’s out, Gerber was a proprietary standard, even though it was derived from an industry standard. The advantage of a proprietary standard is that things can move quickly: no red tape and fractious committee meetings. And to the proprietor there’s the big advantage of being able to call the shots. If partners and users of the standard have some way to benefit, an nice little ecosystem builds up around the proprietor, like App developers around Apple’s App Store, or Windows applications around Microsoft Windows API. In contrast, industry standards move more slowly, but they can offer a level playing field.
New kid on the block
In 1995 a CAM company, Valor Computerized Systems, Ltd., came up with a much more complete CAD-to-CAM data exchange format first called ODB. The ++ part — evocative of C++ — was added for the 1997 revision. ODB++ covers the specification of not only conductor layer artwork and drill data, but also material stack up, netlist with test points, component bill of materials, component placement, fabrication data, and dimension data. How would the Gerber camp respond?
By this time Gerber had sold the CAM part of its business to Barco and with it the Gerber standard. On September 21, 1998 the new owner published “extended Gerber” in RS-274X Format User’s Guide. Each Gerber file still specified a single conductor or mask layer image but ambiguities inherent in the terse older version were cleaned up. This was nicer than standard Gerber, but still nowhere near as complete as the new kid on the block, ODB++. Workarounds were found: the drill data could be specified in Excellon. The netlist could be specified using IPC-D-356. Layer names, material stack up could be provided piecemeal in informal text files or drawings. So now we had two workable, proprietary standards with varying degrees of completeness. There was a need for a industry standard, one that was complete, neutral, open, unencrypted, and public. Maybe a third standard, IPC-2511 (“GenCAM”), which resulted from a donation of technology by Teradyne/GenRAD to IPC, could fill the need? In 2002, after a two year effort by the National Electronics Manufacturing Initiative to build a consensus, a compromise format based not on GenCAM but on ODB++ and XML, ODB++(X), emerged. But without complete supply chain support, it was mostly ignored. Companies carried on with extended Gerber (owned by Ucamco by this time) plus the workarounds and Valor’s version of ODB++!
IPC launched the IPC-2581 “Offspring” effort to merge ODB++(X) and GenCAM around 2004 but progess was slow at first. Then the need for an industry standard grew more urgent and intense when Mentor Graphics acquired Valor (and ODB++) in 2010. Mentor’s main rivals in PCB CAD, Cadence and Zuken, joined the effort. Mentor declined saying “our strategy is based around ODB++.” To avoid the slow start that GenCAM and ODB++(X) suffered, a supply chain consortium gathered together to promote the standard.
So here we are
Gerber is still the most widely used format. Ucamco owns it and revises it from time to time. The latest version, revision H, was released as a freely downloadable PDF in January 2012. The ODB++ spec is available but only if you meet Mentor’s Open Door criteria which include:
- Provide a commercially available software product that complements a Mentor Graphics product offering to provide a more complete design solution to our joint customers.
- Demonstrate a customer need for this integration through references from mutual customers.
- Provide a recommendation from a Mentor Graphics product division or demonstrate the incremental value of this integration to both Mentor Graphics and the partner company.
Gulp. Not exactly vendor neutral. So my point (and I do have one) is that if Mentor chooses not to place ODB++ into the public domain (which is their right), the industry needs to get behind IPC-2581 Offspring in order to move forward. What do you think? Please leave a comment below.