Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Features

Preplace IP : new feature that allows to call an IP already preplaced, then place it in another project. All TILE and CGB instances are supported. An example is available in the Nxmap User Manual

Constraint

  • [Constraint] setSite() command: compliance with LUT DFF and CY / Constraint can be set at any moment before Placing 1/5 (included)

  • [Constraint] constrainPath: DSP, RF, RAM and CY recognized. Distinction between Hard constrainPath (only instances in path are constrained) and Soft constrainpath (registers connected to all instances in path are constrained too).

  • [Constraint] reportRegisters: report the list of all registers at any step of progress

  • [Constraint] NxRegExp: Check Appendix “NxRegExp”

Primitive

  • [Primitive] NX_GCK: ‘MUX’ mode with input generated into the fabric

  • [Primitive] NX_RAM: Support of Multi-Register Memory Read Port (case when no pipe at the output)

Logging

  • [Logging] Options table for bitstreaming in logs

  • [Logging] Added GCK to reportInstances table

Tool

  • [Tool] addVlogDefine command: command to override ‘Define’ in verilog file

Bug fix

Constraint

  • [Constraint] IO: Wrong IO name must not reserve a pad

Logging

  • [Logging] Termination: TerminationReference only allowed for pads with termination

  • [Logging] Multiple Emitter: Name of the signal concerned by error is reported to user

  • [Logging] Termination: No termination for 3.3V for MEDIUM + LARGE / User IO name is reported in case of wrong termination value

Netlist

  • [Netlist] NX_IOB: generics set by addPad are now passed through the macro cell

Known issues

  • Changed behavior in Regioning due to new algorithms. It might have an impact on performance.

Appendix

NxRegExp

Impacted methods:

The following methods allow regular expressions / wildcard formats in order to match with multiple instances:

·       addDSPLocation

·       addModule

·       addRAMLocation

·       constrainPath

·       getInstances

·       getModels

·       getRegisters

·       setSite

·       …

 

Maintainability:

It is no longer necessary to escape (with the ‘\’ character) special characters for these methods.

Affected special characters are:

·       ‘[‘

·       ‘]’

·       ‘(‘

·       ‘)’

·       ‘|’

For instance, the constraint:

addModule('timing_pipe\(X2A98C8C6\)', 'GEN_HIER0.GEN_COL\[0\].COL_PIPE', 'GEN_HIER0_COL-%')

can be replaced by:

addModule('timing_pipe(X2A98C8C6)', 'GEN_HIER0.GEN_COL[0].COL_PIPE', 'GEN_HIER0_COL-%')

However, the old format is still compliant and still operates.

 

User use:

In a usual way, a copy/paste of a path from a log file works for the constraint.

In addition, it is comfortable to use ‘*’ and ‘+’ characters to match several paths.

‘*’ matches with any character: can be very useful to match with all paths beginning with a specified path.

‘+’ matches with any character but ‘|’: can be very useful to match with all paths beginning with a specified path without matching with lower hierarchy levels.

Hereafter an example with existing paths and constraints:

Existing Path \ Path in constraint

start_path|mycell_*

start_path|mycell_+

start_path|mycell_12

Match

Match

start_path|mycell_12|some_sub_cell

Match

No match

 

If the user needs to use regular expressions ignoring auto-escaping of special characters, it is possible to set the constraint under quotes as follow:

addMappingDirective("getModels('add_[1-2][0-9]u_.*')", …)

  • No labels