sce_map

Name

sce_map -- scripting of System-On-Chip Environment (SCE)

Synopsis

sce_map [options] [action...] design

DESCRIPTION

sce_map allows to query and manipulate meta-information about the intended mapping of behaviors, variables and channels to PEs and busses in a given design.

sce_map reads the SIR file for a given design, performs each action specified via the command line and writes out the resulting modified SIR (if any). An output SIR file is only written if modifications to the design have been made through the actions. If no action is specified, no operations are performed, no output is produced and the specified design is left unchanged.

On successful completion, the exit value 0 is returned. In case of errors, a diagnostic message is written to standard error and the program execution is aborted with a non-zero exit value. In this case, no output is produced.

ARGUMENTS

design

specifies the design to work with; if no -i or -o options are specificed, the suffix '.sir' will be appended to this name in order to obtain the default SIR file to read and write, respectively.

action

specifies the action to perform on the design; actions include operations to query or manipulate the design, and to set up options for following operations; command line actions are processed strictly in order, i.e. multiple operations are performed in the order specified on the command line and earlier options have effect until they are overwritten by later ones.

OPTIONS

-h

prints a short usage and version information and then quits;

-i input file

specifies the name of the input file explicitly; the name '-' can be used to specify reading from standard input;

-n

suppresses the creation of new log information when generating the output SIR file; by default, log information in the main design file is updated automatically (see also section ANNOTATIONS below);

-o output file

specifies the name of the output design file explicitly; the name '-' can be used to specify writing to standard output;

-v

set the verbosity level so that progress reports about actions performed are logged to standard error (default: be silent);

ACTIONS

-b def

show the bus(es) the object def is mapped to (route); def specifies the path to a variable or channel instance as a dotted hierarchical name, i.e. as a sequence of instance names concatenated and separated by dots ("."); the path is first searched starting from the top-level behavior; if not found under the top-level, the path is searched at the global level; if both lookups fail, an error is produced;

-b def=[name[:protocol][+sync],...]

map object def to the list of busses (route) with given name (default: remove mapping); in case of a multi-protocol bus, a specific protocol to map to has to be given as either a string or a numeric index; optionally, synchronization on each hop can be mapped to a dedicated sync bus separately from the regular data transfer bus; def specifies the path to a channel instance as a dotted hierarchical name, i.e. as a sequence of instance names concatenated and separated by dots ("."); the path is first searched starting from the top-level behavior; if not found under the top-level, the path is searched at the global level; if both lookups fail, an error is produced;

-l def

show the parameters for logical link def; def specifies the path to an interface or a channel instance as a dotted hierarchical name, i.e. as a sequence of instance names concatenated and separated by dots ("."); the path is first searched starting from the top-level behavior; if not found under the top-level, the path is searched at the global level; if both lookups fail, an error is produced;

-l def=[address[:mode]][,interrupt], -l def=[address[:mode],period]

set parameters for logical link def to the given address, the given transfer mode and optionally using the specified interrupt or the given polling period (default: remove mapping); addresses are specificed numerically in either decimal or hexidecimal (prefixed with '0x') form, or as a "auto" to let the script automatically assign an address; modes are specified either as names (strings) or numerically (mode index as integer); interrupts are specified as strings and polling periods as integers in ps; def specifies the path to an interface or a channel instance as a dotted hierarchical name, i.e. as a sequence of instance names concatenated and separated by dots ("."); the path is first searched starting from the top-level behavior; if not found under the top-level, the path is searched at the global level; if both lookups fail, an error is produced;

-p def

show the PE the object def is mapped to; def specifies the path to a behavior, a variable or a channel instance as a dotted hierarchical name, i.e. as a sequence of instance names concatenated and separated by dots ("."); the path is first searched starting from the top-level behavior; if not found under the top-level, the path is searched at the global level; if both lookups fail, an error is produced;

-p def=[name]

map object def to the PE with the given name (default: remove mapping); def specifies the path to a behavior or a channel instance as a dotted hierarchical name, i.e. as a sequence of instance names concatenated and separated by dots ("."); the path is first searched starting from the top-level behavior; if not found under the top-level, the path is searched at the global level; if both lookups fail, an error is produced;

-t behavior

specify the top-level behavior to operate on for all actions following on the command line (default: use top-level behavior specified in the design);

ENVIRONMENT

HOME

determines the location of the user's home directory and consequently the default path to the file with user-specific application preferences ($HOME/.sce/scerc);

SCERC_PATH

determines the list of directories where files "scerc" with user-specific application preferences are stored; multiple directories can be provided, separated by colons (":"); directories are searched for and preference files are read in the given order, i.e. preference files in later directories override settings in earlier ones; if SCERC_PATH is not set, the location (directory) of the user-specific "scerc" file defaults to $HOME/.sce;

SPECC_LICENSE_FILE

determines the license file (path and file name) to be used by the SIR tool set; if undefined, the environment variable SPECC is used as the path to the license file called "license.sir"; if neither SPECC_LICENSE_FILE nor SPECC exist, the file "license.sir" is searched in the current directory;

FILES

/ECEnet/Apps1/sce/latest/etc/scerc

File with system-wide default settings for application preferences; system-wide settings are read on startup before user-specific settings;

$SCERC_PATH/scerc or $HOME/.sce/scerc

File(s) with user-specific settings for application preferences; user-specific settings are read on startup after system-wide settings, i.e. user-specific settings override system-wide settings;

ANNOTATIONS

The following SpecC annotations are recognized by sce_map:

_SCE_LOG

contains the log information of the SIR file; this global annotation is created and maintained automatically by the SpecC compiler and the SCE tool set and can be used to determine the origin and the operations performed on the design model; _SCE_LOG is a composite annotation consisting of a list of log entries, ordered by time of creation; each log entry consists of a time stamp, command line, source file, version info, and an optional comment;

VERSION

The System-On-Chip Environment (SCE) is version 2.2.1.

AUTHOR

Andreas Gerstlauer <gerstl@cecs.uci.edu>

COPYRIGHT

(c) 2001-2010 CECS, UC Irvine

SEE ALSO

sce_import(l), sce_retype(l), sce_top(l), sce_allocate(l), sce_schedule(l), sce_connect(l), sce_project(l),

BUGS, LIMITATIONS

None know.