Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Image RemovedImage Added

READ_PIN_REPORT

The READ_PIN_REPORT goes through several steps:


Read and Verify Pin Report File

The First step is to read the Selected PIN_REPORT_FILE. The PIN_REPORT_TYPE setting tells PartBuilder what kind of file to expect

PartBuilder builds an internal database of all the pins it finds in the PIN_REPORT and stores:

  • Pin name,
  • Pin Number,
  • Pin Type
  • IO_STD if present
  • Pin Delay if present

Rename Pins

If a RENAME_RULE is provided or if RENAME_RULES points to a file containing multiple RENAME_RULES, PartBuilder will go through the current pin database and rename any pins that match the RENAME_RULES. PartBuilder stores off the orginal name and then uses the new Name going forward

See:SIG_RENAME_RULES Information




Override Pin Types

if  a PinTypeOverride file exists,  PartBuilder will go through the current pin database and change the PIN_TYPE for any pinnames that match the override rule

Override rules can be created in a text file by hand, or the PinExplorer pop-up can be used to add pin-mapping types to the file

See:PIN_TYPE_OVRD FILE Information

Find Diff Pairs

After the Pins have been Renamed and PIN_TYPES assigned, PartBuilder goes through the internal Pin database and hunts for DIFF_PAIRS using the DIFF_PAIR_MATCH_POL rules.


Report Warnings

PartBuilder will report the following warnings

  1. Unrecognized lines in the specified PIN_REPORT_FILE
  2. The specified NUM_PINS entry does not match the number of pins found in the PIN_REPORT_FILE
    1. If the user sets up the configuration setting for PIN_ROW_CHK and PIN_COL_CHK in the PINOUT_CONTROL TAB of CONFIGURATION SETTINGS, PartBuilder will report the pins it didn't find
  3. Any Pins that do not have a PIN_TYPE mapped

Smart-Frac

After all the pins have been renamed and pin_types resolved, Smart-Frac runs on the internal pin database and uses a proprietary advanced sorting algorithm to create the 2 SDL Template files.

  1. It finds and slices  multi-level busses into manageable Chunks
  2. It finds and groups diff_pairs and adds the dpair modifier to reduce the amount of match_statements necessary to define the symbols
  3. It separates I/O and power signals into 2 groups of MATCH_STATEMENTS
    1. typically the POWER pins will not need to be sliced into smaller buses since they will just be added onto a symbol in large chunks
       
  4. It auto assigns the left locator to inputs, the right locator to outputs and a CHOOSE_SIDE placeholder locator for all other signal types

These provide the user a head start to create the SDL

  1. auto_SDL_template.txt 
    1. Plain text file for use with a text editor.
  2. auto_SDL_template.csv 
    1. csv file to edit in EXCEL or another spreadheet editor

The user can copy one of the template files to the working SDL file.

The SDL creation process then becomes a matter of

  1. organizing the pre-generated MATCH_STATEMENTS into SYMBOL_DEFINTION wrappers
  2. changing the LOCATOR elements to place the pins onto the desired the side of the symbols 
  3. adding SPACER directives to tweak the layout of the symbols



...