Adding a Netlist

A boundary scan system needs information about the circuit’s components and how they are connected before it can perform a test. That information is provided in the form of a netlist, and this is the first file to import when entering board information.

  • If a netlist is unavailable, information about the board can be entered manually - click here for details of this process.

XJDeveloper supports ODB++ and many different formats of ASCII netlist files. ODB++ is the recommended format when it's available because it allows XJTAG's layout viewer to enhance the experience of debugging errors found during boundary scan tests. However, because it is good practice to consider DFT using boundary scan tools during the initial schematic design, it can be best to start with an ASCII netlist and to update it with an ODB++ version later, once the layout is complete.

Netlists are added from the Add Board or Edit Board dialog box:

Select a directory containing an uncompressed ODB++ structure as the netlist source Choose an ASCII or compressed ODB++ file as the netlist

Figure 3: Adding Netlist Information

ODB++ Netlists

XJDeveloper supports ODB++ netlists in uncompressed directory structures and as single compressed files (most compressed file formats are supported). To import a compressed file, use the Browse... button as shown in Figure 3 to locate the file; if it is an uncompressed directory structure, use the Browse ODB++ Directory... button instead to navigate to the top-level folder.

Importing may take several seconds for a large circuit.

If the netlist contains BOM information, a dialog box will open offering the user the opportunity to extract that information. When a separate BOM file is available, it is usual to select No at this point and to wait until data from the external BOM has been reviewed before incorporating any BOM data from the netlist.

  • There are 2 reasons why the user may choose not to use BOM data from the ODB++ netlist if a separate BOM file is available:
    • The quality of BOM information contained in an ODB++ netlist is dependent on what the schematic capture tools added to the files, and may be incomplete.
    • The ODB++ netlist will normally show all components as fitted, even though selected parts may not have been placed when the board was manufactured. A separate BOM will more accurately reflect what was actually built.

ASCII netlists

An ASCII netlist is also imported using the Browse... button shown in Figure 3.

XJDeveloper will automatically attempt to identify the format of netlist being used. Over eighty different ASCII formats are supported, including P-CAD®, Protel, Board Station®, PADS® PCB, RINF, and IPC-356-D. If the netlist is not recognized, this will be indicated by the software listing the format as "Invalid" in the Add Boards dialog box:

Figure 4: Identification of an Unsupported ASCII Netlist Format

If this occurs when attempting to load an ASCII netlist, the file can be sent to XJTAG Support, who will convert it to a supported format and add support for it in the next software release.

  • Although XJTAG supports EDIF netlists, it is not a recommended format to use: not only can their complex structure make them slow to parse, but the files produced by some common EDA tools frequently contain syntactical violations that can cause parsing failures.

XJDeveloper can also extract BOM data from ASCII netlists if it exists but, again, the user may wish to avoid importing it at this stage if a separate BOM file exists (see above on ODB++ netlists).