Completing the Design with NI Multisim and NI Ultiboard: Annotation Fundamentals

Updated Nov 10, 2020

Once a design is completed and validated with NI Multisim, it is time to transfer to a layout and routing environment to define the prototype. At this point in the design flow it becomes important to ensure that a design is properly managed.

The design once transferred to layout exists in two different (though integrated) applications. It is important that as a design engineer, the project be managed such that both in schematic and layout form, the topology be consistent.

This can be difficult to manage as changes can now occur both in Multisim and Ultiboard.

In order to facilitate the management of such changes, the integration between Multisim and Ultiboard allows you to annotate changes from one form of the design to the other.

Definition: Annotation is the transfer of design changes from schematic to layout, or layout to schematic.

In this article the transfer and annotation of changes in NI Multisim and NI Ultiboard is documented. This article provides a how-to-guide, tips-and-tricks as well as best practices on how to use the annotation process in the National Instruments Circuit Design Suite.

1. Introduction

Forward annotation is the process by which a designer transfers changes from a schematic to a PCB layout environment. Back annotation is the opposite of this procedure, when changes are made at the layout level and  transferred back to the schematic.

Forwards and backwards annotation are import aspects of the design process. Changes that are made at every incarnation of a design should be appropriately merged into other design stages, so that iterative work is properly documented. This is important for both the present design process as well as future maintenance.  

Many products are on the market for multiple years and elements of the design (such as components and devices) may become obsolete or require alteration during this time period. The need for incremental changes to a design means that a complete set of files which depict the design at both schematic and layout stages can avoid frustration and save time in the future. 

Due to the importance of this task a designer should take great care to ensure that the schematic and layout of a design are completely in sync. 

To forward and backward annotate changes in either the schematic or the PCB layout is a very simple and straight forward procedure, however to reduce the possibility of error it is important to understand how annotation works from the fundamental elements (the netlist) to the actual annotation procedure.

Accompanying this tutorial is a  7321_annotation.zip file which contains various examples to help in the tutorials in this article.

 

2. What is Annotation?

The forward and backwards annotation process is based upon the transfer of a netlist file. The netlist file is a text based representation of your design and as changes are made either at the schematic or layout level, it is through the netlist that this information is transferred. In this article we will investigate:

  1. How does a netlist facilitate annotation
  2. Transferring a file to layout
  3. Forward Annotation
  4. Backwards Annotation

 

3. What is a Netlist?

When a design is created in NI Multisim and NI Ultiboard, the components, devices, and net connections are automatically defined in an ASCII file. This ASCII file contains:

  • The Reference IDs (which are unique identifiers) of design components
  • Net names and connections between each device/component

When a user transfers  this netlist from Multisim  to Ultiboard a new netlist file with a .ewnet extension is created which contains:

  • The name of the Landpattern (or footprint) associated with each Reference ID
  • The unique pin names of each device

This netlist is the fundamental representation of a design, as well as the method through which the design can be transferred either from schematic to layout, or vice-versa.

 

4. Transferring from Multisim to Ultiboard

Before one can begin the iterative procedure of forward and backward annotation of design changes, the file must be transferred from the NI Multisim schematic capture environment to NI Ultiboard layout.

 

How to transfer a schematic to layout

With the following six steps we will transfer an example Multisim schematic to Ultiboard

  1. Open the Forward Annotate 1.ms10 example file
  2. In Multisim select Transfer > Transfer to Ultiboard 10
  3. Multisim instructs you to save a netlist representation of the file in a .ewnet format. 
  4. Save the file to the default location in the same folder in which the original schematic was saved.
  5. Ultiboard automatically launches
  6. The Default Track and Clearances dialog box appears. Accept the default setting by clicking on the OK button.
  7. The Import Netlist Action selection dialog box appears. Accept the default setting (to import all components and nets) by clicking on the OK button.

The schematic has been transferred from Multisim to Ultiboard.

 

What exactly happens when a netlist is imported into Ultiboard?

When the netlist is imported from NI Multisim (as in the steps above), Ultiboard iteratively undergoes a four step procedure to:

  • Locate the landpattern or footprint name of a particular device as it is defined in the netlist file
  • Search the Ultiboard component database in order to locate the landpattern.
  • Place the landpattern on the work area.  
  • Assign each pin on the placed landpattern to a net.

The above four step procedure is repeated by Ultiboard until all landpatterns are placed onto the work area and nets have been assigned to all pins.

 

5. Important Considerations

Throughout the design process, particularly through the transfer process, there are a number of events that can occur which can potentially cause errors. In order to help effectively handle these situations, the following section will outline a possible issue encountered in the transfer process. You will learn the correct procedure to resolve this issue.

 

Component not found during transfer … Part 1

When Ultiboard opens a netlist file it ascertains the name of a landpattern for a particular device and searches its database for a part that corresponds to this name to place on the work space. If a landpattern has been incorrectly named in the netlist or if it has not yet been created in the Ultiboard database then you have a situation in which a landpattern for a device cannot be correctly placed into the project.

To demonstrate what occurs when a landpattern cannot be found:

  1. Open Forward Annotate 1.ms10 in NI Multisim.
  2. Select Transfer>>Transfer to Ultiboard 10
  3. Multisim instructs you to save a netlist representation of the file in a .ewnet format. Save this file to the default location in the same folder in which the original schematic was saved.
  4. Ultiboard automatically launches
  5. The Default Track and Clearances dialog box appears. Accept the default setting by clicking on the OK button.
  6. The Import Netlist Action selection dialog box appears. Accept the default setting (to import all components and nets) by clicking on the OK button.
  7. Ultiboard is not able to locate one or more landpatterns defined in the netlist file within its database and therefore prompts the user with the following message:

  1.  Select the OK button to continue.
  2. Save the layout file as Forward Annotate 1.ewprj


When Ultiboard cannot find a component (as in this situation) it will map the element to a default square shape with multiple pins in order to not drop (or lose) nets and components due to an improper transfer. The default landpattern is shown below:

 

The red X through the landpattern indicates that the transferred landpattern name does not exist. In order to fix this situation and ensure that the change is properly reflected both at the schematic and layout level requires back and forward annotation.

We will now investigate what exactly back and forward annotation are, and will return to our above documented design error later in the article.

This error resolution is to be continued…

 

6. Forward Annotation

The Forward Annotation process is similar to a transfer to Ultiboard, however it transfers to a layout that already exists. This means that prior to forward annotation, a schematic has already been transferred to Ultiboard.

Forward Annotation only transfers incremental changes to the design to layout. Therefore it is not the entire design that is transferred, but only the changes in the schematic that have not yet been defined at the layout stage.

  1. Open Forward Annotate 3.m10 in NI Multisim
  2. Open Forward Annotate 3.ewprj with NI Ultiboard.

Previously the schematic was completed and transferred to layout. At this time we need to make additional changes to the schematic but must ensure that this change is properly represented at the layout level.

  1. Return to Forward Annotate 3.m10 in the Multisim environment
  2. Select LED1 and right click upon the device. Select copy from the short-cut menu.
  3. Paste the copied LED (named LED2) to the left of LED1 without connecting it to the design.
  4. Select R1 and right click upon the device. Select copy from the short-cut menu.
  5. Paste the copied resistor (named R5) to the left of R1 without connecting it to the design.
  6. Connect R5 and LED2 to the design according to the figure below.

 

You have now changed your original design and must annotate these changes to layout. The following is the forward annotation process.

TIP: In order to safeguard your work it is always recommended to backup your layout file prior to a forward annotation. Before continuing make a backup of the Forward Annotate 3.ewprj file, saving it as Forward_Annotate_3_backup.ewprj

  1. Select Transfer>>Forward Annotate to Ultiboard 10 in Multisim
  2. Save the netlist to the default path.
  3. Click OK on the following warning message.  

        

 

  1. Click OK on the Default Track and Clearances dialog box.
  2. Click OK on the Import Netlist Action Selection dialog

LED 2 and R5 are now merged into the Ultiboard layout and are placed outside of the board outline. These components can now be placed and configured as needed for the design.

 

7. Back Annotation

The Back Annotation process, like forward annotation, requires a schematic to have already been transferred to layout. After this primary step, back annotation allows an engineer to make changes at the layout stage and have these changes merge back into the schematic file.

 

Limitations

It is important to note that in making changes to your design, it is preferred (and advantageous) to forward annotate changes made in the schematic to Ultiboard. This is because the back annotation process does have limitations upon what changes can be effectively transferred back to the schematic. 

 

What can you back annotate?

  • A changed in the Reference ID of a component
  • The new name for a net
  • A deleted footprint
  • A changed footprint

 

What can you not back annotate?

  • Components added to the design
  • A modified net connection between components
  • A pin and/or gate swap

It is important to note these limitations, as a faulty back annotation can create schematics out-of-sync with layout. In larger designs where a back annotation may not be glaringly obvious, this can become an issue overlooked which can cause major issues in a design.

 

How to Back Annotate

To demonstrate how to back annotate we will begin making some changes to our design to annotate back to the schematic.

  1. Open Back Annotate 1.ewprj in Ultiboard.
  2. Open Back Annotate 1.ms10 in Multisim

Changing the name of all the landpatterns (or footprints) in the design:

  1. In Ultiboard select Tools>>Renumber Footprints.
  2. Apply the default renumbering settings by clicking on the Apply button.  All landpatterns will now be renamed in a logical order based upon the settings of the dialog box.

Deleting a device:

  1. In the Ultiboard file locate the LED1 landpattern. Select the device and delete if from the layout.

Changing the landpattern dimensions of a device:

  1. Locate the C2 device.
  2. Select Tools>>Change Shape. In the NI Ultiboard database locate the CAPC0603X33N landpattern (this can be found in the Surface Mount Technology – Capacitors – SMD hierarchy).
  3. In the database dialog and click the OK button to replace the landpattern in the work area.
  4. There are three similar footprints in the work area you will be asked if you wish to replace them all, select Yes.

 

Having completed all of the changes to the layout file we are now ready to back annotate.

  1. Select File>Save in Ultiboard.

Ultiboard creates a log of all the changes made since last saving. These changes (documented in a log file) is saved in the same folder as the Ultiboard design file.

  1. Return to the Multisim environment in which Back Annotate 1.ms10 is already open.
  2. Select Transfer>>Back Annotate from Ultiboard to annotate the changes from Ultiboard.
  3. A dialog box will open in which to select the annotation log file. Navigate to the Back Annotate 1.log file and click on the Open button.
  4. A summary of all the changes made in Ultiboard appears. Click OK to approve the changes.

  1. A Notepad session will open to provide a summary of what was done to the Multisim schematic.

 

A component not found during transfer…part 2

In our first example in this article we had encountered a situation in which a landpattern that was to be transferred from Multisim to Ultiboard could not be found within the Ultiboard database, and therefore a default “landpattern missing” shape has been placed into the layout.

 

With a better understanding of how to forward and back annotate we can now fix this issue with these important design tools.

To fix this problem you have two options, replace the unknown landpattern/footprint in Ultiboard and back annotate the change or make the change in Multisim and forward annotate the new landpattern.

 

Back Annotation from Ultiboard

With the back annotation approach we must select a new footprint/landpattern from the NI Ultiboard database and merge this back into our original schematic.

  1. Return to Forward Annotate 1.ewprj.
  2. Click once upon the “unknown shape” to select it
  3. Select Tools>Change Shape.
  4. In the part selection dialog locate the SO8S landpattern from the Master database.

TIP:   Under Available Parts field start typing SO8S and as you type Ultiboard filters out all footprints that do not contain the letters that was typed making component search much easier.

  1. Highlight the SO8S and press the OK button to replace the unknown shape.

It is now time to back annotate the change to the Multisim schematic.

  1. Select File>Save in Ultiboard.
  2. Ultiboard creates the log file of changes to the design.
  3. Return to the Multisim environment in which Forward Annotate 1.ms10 is already open.
  4. Select Transfer > Back Annotate from Ultiboard to annotate the changes from Ultiboard.
  5. A dialog box will open in which to select the annotation log file. Navigate to the Forward Annotate 1.log file and click on the Open button.

 

Forward Annotation from Multisim

We will now make the same change, but use the forward annotation process to have the same result.

  1. In Forward Annotate 1.ms10, locate the U4 component in the schematic.
  2. Double-click on U4.
  3. Select the Edit Footprint button.
  4. Click on the Select From Database button.
  5. In the Select a Footprint dialog, select the Master database.
  6. Scroll through the dialog box to locate the SO8S landpattern.
  7. Select SO8S and click on the Select button.

  1. DOUBLE CHECK the symbol to footprint mapping table to ensure that the symbol pins are correctly mapped to the footprint pins.  If the mapping table is incorrect in here, your final product will not work.
  2. Click on the OK button.

 

  1. Select Transfer>>Forward Annotate to Ultiboard 10 in Multisim
  2. Save the netlist to the default path.
  3. Click OK on the following warning message. 
  4. Click OK on the Default Track and Clearances dialog box.
  5.  Click OK on the Import Netlist Action Selection dialog

 The changes will now merge into the layout, and again you have successfully annotated changes.

 

8. Important Considerations

It is important to note that if in Ultiboard a change is made (for example a part deleted) and saved, that change is logged within the log file. If however at this point an undo is done upon the change (Edit > Undo …) and is again saved, the log file will not represent the undo. Therefore, if a back annotation procedure is done the component originally deleted in the first step will be annotated into the design.

The following exercise showcases the steps to recreate such an issue for clarification.

  1. Open Back Annotate 2.ewprj
  2. Locate and select the capacitor C3 on the design
  3. Press the Delete key on your keyboard
  4. Select File>Save. NI Ultiboard will create a Back Annotate 2.log file
  5. Select Edit>Undo and C3 should reappear on the design.
  6. Select Tools>Renumber Footprints  and click OK
  7. Select File>Save and NI Ultiboard will update the log file previously created
  8. Startup NI Multisim and open Back Annotate 2.ms10
  9. Select Transfer>Back Annotate from Ultiboard
  10. Locate the log file and select it. 
  11. Click on Open
  12. Review the summary report and notice that C3 was not back annotated.

When Undo was performed in step 5 above Ultiboard placed C3 back on the design but the log file was not updated. The Undo action in this case is similar to adding a new landpattern in the Ultiboard design. As mentioned earlier NI Multisim does not back annotate landpatterns added in the layout.

To avoid this situation, it is good practice to always modify changes such as landpatterns changes, schematic connections, pin names etc… in NI Multisim and then forward annotate to NI Ultiboard.