Professional Documents
Culture Documents
Summary
This article looks at reverse-engineering a PCB layout directly from CAM files loaded into Altium Designers CAM Editor.
After importing CAM data into a CAM document, you will notice that the Export to PCB option is grayed-out, regardless of the current CAM Editor mode (CAM or NC). This command allows you to reverse-engineer a PCB layout directly from CAM files. This does not follow a regular export-import process, but rather loads data directly into Altium Designers PCB Editor. The following sections detail steps to be taken to reverse engineer a PCB design from the CAM data from initial import into a CAM document, through the required pre-export preparation and ultimately on to export of the design data to the PCB Editor.
Import Data
The starting point for the whole process is the loading of ODB++, or Gerber and NC Drill files, into a new CAM document. If you have an IPC netlist, you should import this as well when importing Gerber and NC Drill data. When importing ODB++, only import an IPC file if the netlist is not in the ODB++ directory. The IPC netlist will allow you to update the extracted nets with their original names, and differentiate between through-hole vias and free (non-component) pads. The File Import submenu commands all search for files with certain extensions within a given folder. When importing drill files, for instance, the specified directory will filter out all files except those with .DR*, .ROU, .RTE, .NC* and .TX* extensions. If you receive drill files with different extensions than these, you may extend this list on the CAM Editor Miscellaneous page of the Preferences dialog (DXP Preferences). From here you can alter any of the default extension lists associated with Gerber, Aperture, HPGL and Netlist files as well. The CAM Editor Import/Export page of the Preferences dialog lets you change the default import and export settings for Gerber files. For example, if you regularly receive CAM data generated using P-CAD, you might consider changing the coordinate precision format from 2:3 (Altium Designer defaults) to 4:4 (P-CAD defaults). If you dont you will still have the opportunity to change these settings from their default state each time you import a job.
one for the Top-Bottom pair (thru-holes) one for the Top-InternalPlane1 pair one for the MidLayer1-MidLayer2 pair one for the Bottom-InternalPlane2 pair.
Remember that you are determining a drill set, not just outermost pairs. For blind/buried drill layers, all layers that are drilled need to be in the layers set. For through hole drill layers, the start and end layers should suffice.
Netlist Extract
This step (Tools Netlist Extract) relies on the accuracy of the steps preceding it. You cant do it at all unless youve got a layer type assignment for every layer in your board (you should set mechanical layers to Temporary). The CAM Editor will trace connectivity from one layer to another, consulting the NC drill files to make layer to layer connections. For this reason, the layer stackup you defined in the Create/Update Layers Order dialog, and the drill pairs you selected in the Create/Update Layers Sets dialog, are critical precursors to extracting an accurate netlist from the CAM data. If you have included an IPC netlist file with your imported Gerber and NC Drill files, you may restore the original net names (Tools Netlist Rename Nets) and differentiate between through-hole vias and free pads in your new PCB file. But much more importantly, an IPC netlist gives you a reference with which the extracted netlist can be compared (Tools Netlist Compare). For IPC netlists generated from Altium Designers PCB Editor, you will notice that the CAM Editors compare function will usually find a series of missing nets without names. This is because the PCB Editors IPC format includes single-pin nets the CAM Editor, on the other hand, disregards pads without any copper connections as far as the netlist is concerned. In fact, its DRC has an option to remove non-functional pads.
Exporting Polygons
The CAMt Editor Import/Export page of the Preferences dialog provides additional options to handle how polygons in the CAM document are exported to the PCB document. If the polygons are rectangular in shape, they can be created as fills on the PCB document. For non-rectangular polygons, you can create polygon pours on the PCB either Hatched or Solid. Access to options dialogs for these two polygon pour types are provided, giving greater control over how the exported polygons will be handled on the PCB side.
When enabling the option to Create Hatched Polygons, the CAM Editor will use a single grid size and a single track width to fill all of the polygons in your file. Should your CAM data include very small polygons, then you should make sure that the export options are calibrated down to that level. The Polygon Options dialog (accessed by clicking the associated Hatched Polygon Options button), allows you to modify the grid size, track width and minimum primitive length for your polygons. If you want your polygons to be completely filled with high accuracy, then these values should all be kept within a tight range around the smallest requirements on your board. Otherwise, you might risk blank spaces within your polygons, hatching patters instead of complete fills, or even entire polygons left out upon export. These values, on the other hand, will apply to all exported polygons, so very small values will increase the bulk and related management issues (such as redraw speed) pertaining to the exported file. Accordingly, you should always use the largest values possible that will still yield the required accuracy for all of the polygons on your board. When enabling the option to Create Solid Polygons, each polygon will be filled with one or more solid copper regions. The number of copper regions used depends on the number of individual areas created inside the polygon by existing net objects, such as tracks and pads. The Solid Polygon Options dialog (accessed by clicking the associated Solid Polygon Options button), allows you to determine how copper islands and narrow copper nets are handled, and also pour behavior when poured over net objects belonging to the same net as the copper pour: Pour Over All Same Net Objects - choose this option if you want a polygon pour to automatically connect to all objects on the same net as the pour Pour Over Same Net Polygons Only - choose this option (default) if you want the polygon pour to automatically connect to only polygon pour objects inside its boundary, and which are associated to the same net Don't Pour Over Same Net Objects - choose this option if you specifically do not wish the polygon pour to connect to any other net objects - either belonging to the same or different parent net as itself.
If either of the first two options are chosen and the polygon pour is assigned to No Net, it will pour around all objects regardless of their net assignments.
Export to PCB
After a netlist has been extracted from your CAM data, the File Export Export to PCB command becomes enabled, provided you have a license for your Altium Designer software that enables access to, and use of, the PCB Editor. Executing this command after all necessary steps have been taken will create a PCB document containing a board design that appears very much like the original. To truly rebuild a board will still take some additional effort, such as replacing component primitives with footprints (you might do this by copying and pasting groups of primitives into a PCB library, then replace the originals with the new footprints). Altium Designers PCB Editor will not create drill-pairs automatically from the Layer Sets information in the CAM document; you will have to redefine them manually in the Layer Stack Manager dialog.
Revision History
Date 18-Dec-2003 01-Jul-2005 4-Mar-2008 26-Mar-2008 02-Aug-2011 Version No. 1.0 1.1 1.2 1.3 Revision New product release Updated for Altium Designer SP4 Converted to A4 Filename changed. Updated template.
Software, hardware, documentation and related materials: Copyright 2011 Altium Limited. All rights reserved. You are permitted to print this document provided that (1) the use of such is for personal use only and will not be copied or posted on any network computer or broadcast in any media, and (2) no modifications of the document is made. Unauthorized duplication, in whole or part, of this document by any means, mechanical or electronic, including translation into another language, except for brief excerpts in published reviews, is prohibited without the express written permission of Altium Limited. Unauthorized duplication of this work may also be prohibited by local statute. Violators may be subject to both criminal and civil penalties, including fines and/or imprisonment. Altium, Altium Designer, Board Insight, DXP, Innovation Station, LiveDesign, NanoBoard, NanoTalk, OpenBus, P-CAD, SimCode, Situs, TASKING, and Topological Autorouting and their respective logos are trademarks or registered trademarks of Altium Limited or its subsidiaries. All other registered or unregistered trademarks referenced herein are the property of their respective owners and no trademark rights to the same are claimed.