“Wenn Zwei sich streiten, freut sich der Dritte” - When two are fighting, the third is happy.
Many of us recently have been following an interesting “battle” between Ucamco’s Karel Tavernier and Mentor Graphics’ Julian Coates about which format is better: on Karel’s side is Gerber, and more importantly the recently updated standard Gerber X2 versus the more mature ODB++ which was originally developed by Valor, later acquired by Mentor Graphics. It’s worth mentioning that Julian Coates (Mentor) has made some effort to keep ODB++ open to combat fear of monopoly, and has actually done quite a good job of it - yet adoption of ODB++ in industry can be viewed as nothing short of pathetic. Is this really because of it’s potential monopoly support or because it’s lacking in some way? For background, the article(s) I am referring to can be found here.
While there has been much debate in the PCB industry over the past few years about new file formats for sending board designs to fabricators, one thing is absolutely clear - the old RS-274x (“Gerber”) is no longer adequate. Meanwhile, IPC2581 consortium members are diligently marketing this new format which promises to solve the same problems as ODB++ or Gerber X2, and like Gerber X2 in an open industry-owned standard.
...but why all the fuss?
The old “Gerber” standard is mature (30+ years old) and is accepted by all but the most primitive board fabricators. But it suffers from significant limitations. Anyone who’s had a few years experience getting boards fabbed with RS-274X has encountered delays to production because drills were missing or not aligned, or the board fab did not understand your gerber file extensions and had to have you rename files to suit their wants, or at worst received boards that had layers out of their correct order. It’s good to number the copper layers in the board so you can check after fab - many designers do this on every board:
...but I have to say this is a clear indicator that the way we communicate designs to fabricators is seriously flawed. And, practices like this, while they are very good, are really workarounds to missing information in the file formats we have traditionally used for data hand-off. I would even go as far as to say fabrication drawings - in theory - should not be necessary (gasp!). Yeah, I said it.
Just a few of the serious limitations of RS-274x as it’s commonly used are:
- A separate physical file is needed for each layer of PCB information (ie. copper images, fabrication notes, assembly drawing layer etc.)
- The layer stack is not defined - it must be manually communicated to the fabricator by way of diagrams, file names, and text documentation.
- It does not include drill information - that has to be sent in a separate “N.C. Drill” file, which is often mistakenly generated to a different scale or offset than the gerbers.
- It contains no electrical connectivity information (netlist) so it requires a separate net list file to be sent for electrical bare board testing - again which may not necessarily match the gerbers.
- It contains no component placement or Bill Of Materials information - for pick-and-place and procurement separate files must be generated. This causes additional delay and problems for turn-key manufacturers that do both bare board fabrication as well as final assembly.
IPC-2581 and Gerber X2 Output Generators
IPC-2581 is a new standard from the IPC (International Printed Circuit association). Altium is a member of the IPC-2581 consortium, and will soon support generation of fabrication data to the IPC-2581B specification from Altium Designer 15. The beauty of IPC-2581 is that it generates a single XML file which is capable of including all information needed to fabricate and assemble the printed circuit board assembly - whether you’re just doing a bare board or the entire manufacturing process including pick-and-place and final test. IPC-2581 files include:
- Copper image information for etching PCB layers.
- Board layer stack information (including rigid and flexible sections).
- Netlist for bare board and in-circuit testing.
- Components Bill-of-Materials for purchasing and assembly (pick-and-place).
- Fabrication and Assembly notes and parameters.
Using this new standard means only a single file needs to be sent to the fabricator, without drill files, printouts, PDFs or even fab and assembly drawings - all the information needed to make the board is described within the IPC-2581 XML database.
While it is an extension of the existing Gerber RS-274X standard, Gerber X2 provides some of the same benefits as IPC-2581, by adding the information that was missing - such as layer stack definitions, pad and via attributes, impedance controlled tracks - into original Gerbers in a backwards-compatible set of Gerber files. Netlists for testing, drills and other outputs can still be sent to manufacturers in their respective file formats. In this way, Gerber X2 provides an improved manufacturing output format that is backwards compatible with existing workflows, software, and fabrication equipment. It is therefore going to be a preferred choice for users who take a more conservative upgrade approach.
Either way, the industry must move forward, and which output you choose will largely depend on your fabricator.
In Europe and North America, PCB fabricators are urging designers to use newer intelligent formats, because the NRE costs of “plain old Gerber” are really high. Any fab that has up-to-date CAM software can now support IPC-2581, ODB++, and Gerber X2, so there’s really no excuse. All the fabs I have spoken to about this agree - Sierra, Hughes, Precision…
But I’d like to know your thoughts - would you take the more conservative route (pardon the pun) of sticking with Gerber, or go with IPC-2581? If you chose the newer format, what steps would you take with your fab to guarantee the correct manufacture of your boards?
About the Author
Ben is a Computer Systems and PCB Engineer with over 20 years of experience in embedded systems, FPGA, and PCB design. He is an avid tinkerer and is passionate about the creation of electronic devices of all kinds. Ben holds a Bachelor of Engineering (CompSysEng) with First Class Honors from the University of Southern Queensland and is currently Director of Community Tools and Content.More Content by Ben Jordan