- Design Database Become a Design Workspace & Projects
- Importing a 99 SE Design Database
- Creating the Altium Designer Project(s)
- Manually Adding and Removing Files from the Projects
- File Format Changes
- Links and Unique IDs
- Net Identification Scope
- PCB Import Wizard
- Simulation Model References and Configurations
- Multi-Channel Designs
- Design Outputs
- Transferring a Design Back to 99 SE
Protel 99 SE uses the design database, or DDB, to store design files. Altium Designer stores files on the hard drive and now include the concept of the Project. The 99SE Import Wizard gives control and visibility over the process of importing a 99SE design database into Altium Designer.
Design Database Become a Design Workspace & Projects
Protel 99 SE stores all design documents inside a single design database. The database acts as a storage container, and also as a way that the designer can group project-related design files.
There is no hard and fast requirement on what is stored in a design database, or how the design documents might be grouped into folders within the design database (DDB). Some designers use a single DDB for each board design, others keep all revisions of a design in a single DDB, while other designers keep all board designs for the one product in a single DDB.
In Altium Designer, all design files are stored on the hard drive. The basis of every design created in Altium Designer is a project file. Multiple types of projects are supported in the environment, including:
- PCB projects (*.PrjPcb)
- FPGA projects(*.PrjFpg)
- Embedded projects (*.PrjEmb)
- Core projects (*.PrjCor)
- Integrated libraries (*.LibPkg)
- Script projects (*.PrjScr)
Apart from script projects, a fundamental requirement is that each project targets a single implementation - for example a PCB project includes all the sources required to define a single PCB, and an FPGA project is implemented in a single FPGA. The project file itself is an ASCII file that stores project information, such as links to the documents that are in the project, output settings, compilation settings, error checking settings, and so on.
Above the project level, Altium Designer uses the Design Workspace. A Design Workspace (*.DsnWrk) is used to cluster related projects together, so you could use a Design Workspace for all projects for one client, all boards in one product, and so on. When you open a Design Workspace, all projects that are in that Workspace will appear in the Projects panel.
Figure 1 shows the default mapping from a 99 SE design database to the equivalent objects in Altium Designer; a Workspace is created for the DDB, a PCB project for each folder that includes a PCB file, and a Library Package for each folder that only includes libraries. During import, you have the opportunity to change all of the mappings, except the DDB to Workspace.
While Altium Designer allows direct editing of any individual schematic, PCB, HDL, or any other design file, to perform any project-type operations, such as updating the board from the schematic or printing all the schematics in the project, you must open the project.
Protel 99 SE Windows File System designs can also be imported. Use the 99 SE Import Wizard in the same way as you would with an Access® Database DDB.
Importing a 99 SE Design Database
To import a 99 SE database, select File » Importer Wizard from the File menu. Select the 99SE DDB File Type to import. The import process requires all files, projects and design workspaces that are currently open in Altium Designer to be closed. If this is not the case, you will be prompted to do this first.
The Wizard can be used to import a single DDB or all DDBs in a folder. This article is focused on a single DDB import.
The wizard performs the following steps:
- Extract the files from the database into the nominated folder on your hard drive. Any folder structure within the database will be recreated on the hard drive. All files in the database will be extracted, regardless of whether they are part of the project structure or not.
- Convert schematic documents to the current file format (if this option is enabled).
- Add a recognized file extension to all schematic and PCB files. Altium Designer uses the file extension to recognize which documents it can edit. For schematics, this extension must be Sch, SchDoc, or the original DOS schematic S01, S02, etc naming convention. If there are schematics inside the DDB that do not have an extension, *.SchDoc will be appended to the filename. Note that this will not break the hierarchy, the Altium Designer compiler will automatically detect this situation and maintain the design hierarchy and connectivity. Note that non-Altium files without a standard file extension will not be automatically renamed.
- Create a project file for each nominated project, of the type PrjPcb (PCB project) or LibPkg (library package), and add the relevant project files.
- Create a Design Workspace (*.DsnWrk), and add all created projects to it.
- Open the design workspace. When the created Design Workspace opens, it will display all the Altium Designer projects that were built. Figure 2 shows the result of importing the Z80 Microprocessor design that is included in the Protel 99 SE\Examples folder.
Creating the Altium Designer Project(s)
As you work through the pages of the Wizard, you will note that on the Set Import Options page you will be asked if the Wizard should:
- Create one Altium Designer project for each DDB - choose this option if you typically use one DDB for each board design.
- Create one Altium Designer project for each DDB folder - choose this option if your DDB contains more than one board design.
Select which ever is most appropriate for how you use DDBs. There will be an opportunity to tune Review Project Creation page later in the wizard.
On the Review Project Creation page, you will see the assumptions that the Wizard has made about how it should build projects based on the contents of the DDB, as shown in Figure 3. Take time to configure these options to ensure you achieve the best result at the completion of the import process.
Manually Adding and Removing Files from the Projects
Once the Wizard is complete, Altium Designer will present the projects and their documents, as shown in the example in Figure 4. Note that the hierarchy of the schematic project will not be displayed until the project is compiled for the first time; this is covered later in the article.
If you find after import that some of the documents are not correctly assigned to projects, use the following techniques to tidy them up:
- Move a file from one project to another by clicking, dragging and dropping it, or include it in both projects by holding CTRL as you do this.
- Remove a document from a project by right-clicking and selecting Remove from Project from the pop-up menu.
- Add a missing file to a project by right-clicking the project file and selecting Add Existing to Project from the pop-up menu. Remember that the document must have an appropriate file extension to be recognized as a Altium Designer file.
- To add a new file to the project, right-click the project name and select Add New to Project from the pop-up menu.
File Format Changes
The file format for schematics, schematic libraries, PCBs and PCB libraries has changed from the formats used in Protel 99 SE.
You can open and use 99 SE format schematic and schematic library files directly in Altium Designer, but you will be asked if you wish to convert them whenever you save them.
99 SE PCB files must be converted to the Altium Designer file format before they can be edited. Whenever you open an older format PCB, the PCB Import Wizard will launch and guide you through this process.
The following topics cover various differences in objects and design approaches that it is important to be aware of.
Components have been greatly enhanced in the DXP versions. They now support unlimited component parameters and have an improved model definition and linking system, such as the ability to visually browse for a PCB footprint.
Double-click to edit a component and you will find that all the 99 SE text fields and part fields have been converted to parameters. While 99 SE supported up to eight text fields and 16 part fields per component, Altium Designer has no limit on the number of parameters that can be added.
Parameters can be used for any purpose in an Altium Designer design. They can also be linked to your company database using a DbLink document. Parameters can be included in a report generated from the project. Add an OutJob document to the project and configure the reporting engine to generate a report in the required output format. Parameters can also be used to link to datasheets, or a web URL.
Links and Unique IDs
In 99 SE and Altium Designer alike, Unique ID (UID) values allow schematic and PCB objects to remain associated with one another even when their component designators have been modified in one editor.
However, you will find that all links between schematic and PCB components are removed when you import a 99 SE design. Re-establishing the UID linking is easy, but it must be done based on the designators.
First, reset all Unique ID values on the schematic side, by selecting Tools » Convert » Reset Component Unique IDs from the schematic editor menus. Then on the PCB side, pair components with footprints in the Component Links dialog (Project » Component Links in the PCB editor menus). A fully synchronized 99 SE database should make this a two-click process. First, add pairs by matching designators (the default correlation), then perform the update.
An underlying difference between Altium Designer and 99 SE is that establishing links is not a prerequisite to synchronization. If, for example, you skip the sequence described above and simply try running update/import commands on a PCB design you brought into Altium Designer from 99 SE, you will be informed that, although synchronization by Unique IDs has failed, you may still proceed to match by designators. Doing so will not have any effect upon the Unique ID fields in your design, meaning that if you repeat the process, the same status will be reported. Assigning the same Unique ID values to schematic components and PCB footprints is the only way to create persistent links between them.
Net Identification Scope
It may be appropriate to assign a specific net identification scope to your schematic projects. By default, this setting in the Options for Project dialog will be automatic (based upon design contents). This means that if your project contains any sheet symbols with sheet entries inside, the scope will be set to Hierarchical (sheet entry <-> port connections). If your project contains ports but no sheet entries, then the scope will be set to Flat (only ports global). If your project contains neither sheet entries nor ports, then net labels will become global.
If you do not wish to use this automatic detection, you may assign an individual scope to be applied to the project regardless of its contents. This is recommended for 99 SE projects that used the Global scope for both ports and net labels, as this scope is not available through Altium Designer's automatic detection.
Note that Altium Designer also supports flat projects, without the use of a top sheet. To explore this option, try removing the top sheet from your flat design and recompiling it. The Altium Designer Navigator panel will show the connective structure in the design, where you can explore the design connectivity.
PCB Import Wizard
The first time you open a legacy board in Altium Designer, an Import Wizard will open to help you make assignments for board shape, split planes and special rule conversions.
All PCB designs in Altium Designer require a board shape. Since this did not exist in earlier versions of Protel, it must be added to boards you bring in from previous versions.
The Import Wizard gives you two options: a rectangular shape encompassing all of your design objects, or a more precise board outline based upon shapes detected within your design. If you choose the latter option, your Keep-Out and Mechanical layers will be analyzed for shapes which might yield a shape for your PCB. Whatever option you choose, a preview pane will show the proposed Board Shape. If none of these appear correct, then choose the rectangular option and the use the Design » Board Shape menu options to configure the board shape in Altium Designer.
The board shape defines the physical extents of the board, and as such, provides the outline for pullback tracks on internal planes. Because planes are negative images, pullback tracks create a thin no-copper ("blowout") zone between the board edge and the plane, preventing shorts along the edge of the manufactured board. These tracks are not accessible for direct editing on the plane layers, but the board shape may be redefined at any time within Altium Designer, and the pullback tracks will be rearranged accordingly. The Layer Stackup Manager will allow you to change the initial pullback distance you set in the Import Wizard.
Altium Designer has changed the way split planes are defined. Previously, each split plane area was placed as a closed region (essentially an empty polygon) on an internal plane layer. In contrast, splitting a plane into separate regions in Altium Designer is a process of defining blowouts (copper free areas) by placing lines, arcs and fills on the plane layer. Each time you terminate a placement process on a plane layer, the plane is analyzed and all isolated regions are detected. Double-click on a region to assign it to a net. These blowout sections do not belong to one split region or another; Altium Designer designs no longer require overlapping or exactly aligned tracks alongside adjacent split planes. Altium Designer also supports defining nested split regions.
There is one exception to this behavior - the Import Wizard allows you to operate in legacy split plane mode. It is recommended that you only choose this mode if you encounter problems with the import of planes in your design, or if your PCB includes split planes that will require further editing in an earlier version. Later, you may convert your design to Altium Designer plane mode; in the meantime, new split planes must be placed as closed boundaries on internal planes, rather than inferred from blowouts.
When you do convert your designs to the new method, you will be able to simplify your split plane definitions. You don't have to, as your legacy split planes will still work in Altium Designer, but they may include redundant lines that make your board more complex and calculation-intensive than it ought to be. The easiest way to update 99 SE split plane definitions in Altium Designer is to add a new plane layer, then trace the existing regions onto the new plane. Once this is done, select all objects on the old plane layer and delete them. After the net assigned to that layer has been disconnected, the layer can be deleted from the layer stack. Finally, check that the net assignment for each split region is correctly assigned, either by double-clicking on each region, or using the Split Plane Editor in the PCB panel.
From-Tos that have been defined between specific pads in 99 SE will have to be redefined in Altium Designer, so switch the Altium Designer PCB panel to From-To Editor mode to do this.
Special Rule Conversions
Some older versions of Protel did not allow pad settings to override general mask expansion rules, meaning that some older designs might have had solder or mask expansion rules that targeted single pads only. The Import Wizard will detect any such rules in your design, and offer to convert them to pad settings, thus simplifying your set of design rules. On the other hand, the Import Wizard will offer to create a new rule disconnecting vias from planes, as some older Protel versions did not allow via-plane connections.
Simulation Model References and Configurations
Specific fields in 99 SE components are reserved for simulation data. When these fields include simulation data, Altium Designer translates their values to the simulation Model linkage for that component.
In 99 SE, all simulation models were contained in the SimulationModels.ddb supplied with the installation. Altium Designer, on the other hand, allows you to include the model in the project, or define a search path for the project if you prefer to keep simulation models in a central location. Yet another approach is to build integrated libraries, where the simulation models are compiled into the integrated library file along with the symbol, the footprint, and any other models linked to the components.
Because all 99 SE components use a defined model path to link from the schematic component to the simulation model, the easiest way to keep your 99 SE simulations working in Altium Designer is to export all the folders and models from the 99 SE simulation models database, into the Library\Sim folder of your Altium Designer installation.
Altium Designer supports referencing a model using a full path. When a 99 SE schematic with simulation-ready components on it is imported, the simulation model link is automatically transferred to the Altium Designer Full Path Model Location field. Altium Designer includes an internal check to always include the Library folder of your Altium Designer installation when searching a full path model location, ensuring that your 99 SE design will simulate once the simulation models are in their new location.
In 99 SE, the settings in the Analysis Setup dialog are stored in a configuration file (*.cfg) within the database. When Altium Designer simulates the design for the first time, if no specific simulation setup parameters have been configured, it will look for and use that *.cfg file. When you save your new Altium Designer project, the simulation settings will be written to the project file and the old *.cfg file becomes redundant.
Perhaps those PCB projects that will require the most attention are your multi-channel designs.
In 99 SE, multi-channel design was really a matter of making copies of the child sheet, which were then re-annotated and referenced by separate sheet symbols. Now that Altium Designer lets you truly reference the same child sheet repeatedly, you will first need to modify your schematics. First, remove all but one of the copied child sheets from your project. Then, update the corresponding sheet symbols with distinct names but all referencing the one remaining child sheet.
A wiser strategy, however, would be to delete all but one sheet symbol for each channel, and replace its Name field with an appropriate Repeat command. This way the number of channels may be changed at any future time by changing this one field. Repeat commands can also be applied to nets; refer to the Multi-Channel Mixer.PrjPcb to see an example.
There are numerous features related to multi-channel design, including the ability to transfer 'channel' information to PCB layout, place and route one channel, and then have the software repeat the placement and routing for all other channels.
The 99 SE CAM Manager (*.cam) and Power Print Configuration (*.ppc) files are not recognized by Altium Designer, so outputs will need to be reconfigured for imported designs.
In Altium Designer, there are two approaches to configuring outputs: settings defined through the Schematic and PCB Editor menus are stored in the Project file, or you can add an Output Job file (*.OutJob) to the project. To learn more about design outputs, see Design to Manufacturing.
Transferring a Design Back to 99 SE
Both the Schematic and PCB Editors support saving schematic, schematic library, PCB and PCB library files in the V4 (99 SE) format. Data that can not be transferred back includes:
- New schematic design objects, including notes, compile masks, parameter set objects and offsheet connectors.
- New PCB design objects, including regions, solid polygon pours (the older hatched style polygons can be transferred), the board outline, dimensions, and complex padstacks
- Design rules that can not map back to 99 SE design rules.
- Split plane definitions (Altium Designer calculates split regions based on objects placed on plane layers; it does not use empty polygons to define split regions).