###
LEF/DEF 5.8 Language Reference

# 2

# ALIAS Statements

This chapter contains information about the following topics.

| ALIAS Statements

|  | ALIAS Definition

|  | ALIAS Examples

|  | ALIAS Expansion

## ALIAS Statements

You can use alias statements in LEF and DEF files to define commands or parameters associated with the library or design. An alias statement can appear anywhere in a LEF or DEF file as follows:

> &ALIAS &&aliasName = aliasDefinition &ENDALIAS

&ALIAS and &ENDALIAS are both reserved keywords and are not case sensitive. An alias statement has the following requirements:

| &ALIAS must be the first token in the line in which it appears.

| aliasName is string name and must appear on the same line as &ALIAS. It is case sensitive based on the value of NAMESCASENSITIVE in the LEF input, or the value of Input.Lef.Names.Case.Sensitive.

| aliasName cannot contain any of the following special characters: #, space, tab, or control characters.

| &ENDALIAS must be the last token in the line in which it appears.

| Multiple commands can appear in the alias definition, separated by semicolons. However, the last command must not be terminated by a semicolon.

### ALIAS Definition

The alias name (aliasName) is an identifier for the associated alias definition (aliasDefinition). The data reader stores the alias definition in the database. If the associated alias name already exists in the database, a warning is issued and the existing definition is replaced.

Alias definitions are text strings with the following properties:

| aliasDefinition is any text excluding "&ENDALIAS".

| All EOL, space, and tab characters are preserved.

| aliasDefinition text can expand to multiple lines.

### ALIAS Examples

The following examples include legal and illegal alias statements:

| The following statement is legal.

> &ALIAS &&MAC = SROUTE ADDCELL AREA &&CORE &ENDALIAS

| The following statement is illegal because MAC does not start with "&&".

> &ALIAS MAC = SROUTE AREA &&CORE &ENDALIAS

| The following statement is illegal because &ALIAS is not the first token in this line.

> ( 100 200 ) &ALIAS &&MAC = SROUTE AREA &&CORE &ENDALIAS

| The following statement is legal. It contains multiple commands; the last command is not terminated by a semicolon.

> $ALIAS $$ = INPUT LEF myfile.txt;
> VERIFY LIBRARY
> ENDALIAS

The following examples show legal and illegal alias names:

| "Engineer_change" is a legal alias name.

> &&Engineer_change

| "&Version&History&&" is a legal alias name.

> &&&Version&History&&

| "design history" is an illegal alias name. It contains a space character and is considered as two tokens: an aliasName token "&&design," and a non-aliasName token "history".

> &&design history

| "someName#IO-pin-Num" is an illegal alias name. It contains a "#" character and is translated as one aliasName token "&&someName". The "#" is considered a comment character.

> &&someName#IO-pin-Num

### ALIAS Expansion

Alias expansion is the reverse operation of alias definition. The following is the syntax for alias expansion.

> &&aliasName

where aliasName is any name previously defined by an alias statement. If an aliasName does not exist in the database, no substitution occurs.

You use aliases as string expansion parameters for LEF or DEF files. An alias can substitute for any token of a LEF or DEF file.

Return to top of page

For support, see Cadence Online Support service.
Copyright © 2016, Cadence Design Systems, Inc.
All rights reserved.