Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
AMS.pdf
Скачиваний:
70
Добавлен:
05.06.2015
Размер:
2.68 Mб
Скачать

Virtuoso AMS Environment User Guide

Variables for ams.env Files

amsDirect.simcntl

useScwritefinal

boolean

t

amsDirect.vlog

allowDeviantBuses

cyclic

"no"

amsDirect.vlog

allowIllegalIdentifiers

cyclic

"warn"

amsDirect.vlog

allowNameCollisions

cyclic

"warn"

amsDirect.vlog

allowSparseBuses

cyclic

"warn"

amsDirect.vlog

amsEligibleViewTypes

string

"schematic"

amsDirect.vlog

checkAndNetlist

boolean

nil

amsDirect.vlog

checkOnly

boolean

nil

amsDirect.vlog

compileAsAMS

boolean

t

amsDirect.vlog

excludeViewNames

string

""

amsDirect.vlog

headerText

cyclic

"none"

amsDirect.vlog

ifdefLanguageExtensions

boolean

nil

amsDirect.vlog

includeFiles

string

"(disciplines.vams)"

amsDirect.vlog

ncvlogArguments

string

""

amsDirect.vlog

netlistAfterCdfChange

boolean

nil

amsDirect.vlog

paramDefVals

string

""

amsDirect.vlog

paramGlobalDefVal

string

"0"

amsDirect.vlog

processViewNames

string

""

amsDirect.vlog

prohibitCompile

boolean

nil

amsDirect.vlog

templateFile

string

""

amsDirect.vlog

templateScript

string

""

amsDirect.vlog

useDefparam

boolean

nil

amsDirect.vlog

useNowarn

boolean

t

amsDirect.vlog

useProcessViewNamesOnly

boolean

nil

amsDirect.vlog

verboseUpdate

boolean

t

amsDirect.vlog

checktasks

boolean

nil

amsDirect.vlog

ieee1364

boolean

nil

amsDirect.vlog

noline

boolean

nil

amsDirect.vlog

incdir

string

""

amsDirect.vlog

lexpragma

boolean

nil

amsDirect.vlog

logFileAction

cyclic

"Overwrite log file"

amsDirect.vlog

macro

string

""

amsDirect.vlog

markcelldefines

boolean

nil

amsDirect.vlog

netlistUDFAsMacro

boolean

nil

amsDirect.vlog

bindCdsAliasLib

boolean

t

amsDirect.vlog

bindCdsAliasView

boolean

t

amsDirect.vlog

maxErrors

int

50

amsDirect.vlog

messages

boolean

nil

amsDirect.vlog

neverwarn

boolean

nil

amsDirect.vlog

nomempack

boolean

nil

amsDirect.vlog

nopragmawarn

boolean

nil

amsDirect.vlog

nostdout

boolean

nil

amsDirect.vlog

nowarn

string

""

amsDirect.vlog

pragma

boolean

nil

amsDirect.vlog

status

boolean

nil

amsDirect.vlog

update

boolean

t

amsDirect.vlog

vloglinedebug

boolean

nil

amsDirect.vlog

ncvlogUseAddArgs

boolean

nil

amsDirect.vlog

iterInstExpFormat

string

"%b_%i"

amsDirect.vlog

netClashFormat

string

"%b_netclash"

amsDirect.vlog

instClashFormat

string

"%b_instclash"

amsDirect.vlog

aliasInstFormat

string

"ams_alias_inst_%i"

Detailed Descriptions of ams.env Variables

The next sections discuss each of the ams.env file variables in detail. The sections are arranged alphabetically by variable.

April 2004

366

Product Version 5.3

Virtuoso AMS Environment User Guide

Variables for ams.env Files

aliasInstFormat

Specifies the format to be used to create instances of thecds_alias module.

Syntax

amsDirect.vlog aliasInstFormat string "format"

Values

 

 

format

All characters, except those listed below, are printed exactly as

 

included in format. The following characters have the

 

indicated special meanings.

 

%i

Index number of the current cds_alias

 

 

instance

 

%%

Prints the % character

The default value of format is ams_alias_inst_%i, which produces names such as ams_alias_inst_1, ams_alias_inst_2, and so on.

If the resulting name is illegal in Verilog-AMS, the name is mapped. If the mapped name clashes with the name of another object, the name undergoes collision mapping.

Example

amsDirect.vlog aliasInstFormat string "cds_alias_%i"

Tells AMS netlister to create instance names with a suffixed index number. In this example, instances of the cds_alias module are given names like:

cds_alias_1 cds_alias_2 cds_alias_3

April 2004

367

Product Version 5.3

Virtuoso AMS Environment User Guide

Variables for ams.env Files

allowDeviantBuses

Controls the netlisting of bus specifications when there are conflicting bus ranges. Bus ranges conflict when, in references to the same bus, the indexes sometimes go from smaller to larger and other times go from larger to smaller.

Syntax

amsDirect.vlog allowDeviantBuses cyclic "no" | "warn" | "yes

Values

 

no

Netlisting halts immediately when the AMS netlister encounters

 

conflicting bus ranges. This is the default. This value

 

corresponds to the No – Print Errors value used in the

 

graphical user interface (GUI).

warn

Netlisting continues when the AMS netlister encounters

 

conflicting bus ranges if it is possible to create a valid netlist. The

 

AMS netlister tells you how the non-compliant bus data is

 

transformed. The generated netlist is likely to be less readable

 

than one created from compliant bus data. This value

 

corresponds to the Yes – Print Warnings value used in the

 

GUI.

yes

Netlisting continues when the AMS netlister encounters

 

conflicting bus ranges if it is possible to create a valid netlist. The

 

AMS netlister does not issue a warning. This value corresponds

 

to the Yes – Silently value used in the GUI.

Example

An example of conflicting bus ranges in CDBA data is shown below:

a<0:7>

a<7:6>

a<5:0>

a<2:4>

The same example in Verilog-AMS is shown below:

a[0:7]

{a[7],a[6]}

{a[5],a[4],a[3],a[2],a[1],a[0]}

a{2:4}

April 2004

368

Product Version 5.3

Virtuoso AMS Environment User Guide

Variables for ams.env Files

Using the variable

amsDirect.vlog allowDeviantBuses cyclic "yes"

tells the AMS netlister to handle conflicting bus ranges whenever possible, without issuing a warning. This example sets the netlisting behavior for data netlisted into the Verilog® -AMS language.

April 2004

369

Product Version 5.3

Virtuoso AMS Environment User Guide

Variables for ams.env Files

allowIllegalIdentifiers

Controls the netlisting of non-compliant identifiers.

Syntax

amsDirect.vlog allowIllegalIdentifiers cyclic "no" | "warn" | "yes

Values

 

no

Netlisting halts immediately when the AMS netlister encounters

 

a non-compliant identifier. This value corresponds to theNo –

 

Print Errors value used in the graphical user interface (GUI).

warn

Maps non-compliant identifiers to names that are legal in the

 

target language, and issues a warning telling you how the name

 

is mapped. This is the default. This value corresponds to the

 

Yes – Print Warnings value used in the GUI.

yes

Maps non-compliant identifiers to names that are legal in the

 

target language. The AMS netlister does not issue a warning.

 

This value corresponds to the Yes – Silently value used in the

 

GUI.

Description

If you specify warn or yes, the AMS netlister maps non-compliant identifiers to the target language. However, mapping identifiers results in a less readable netlist.

Identifiers are non-compliant if one or more of the following situations applies:

Identifiers do not follow the syntax required by the netlist language you plan to use

Identifiers are reserved words in the netlist language

For a list of Verilog-AMS reserved words, see the “Verilog-AMS Keywords” appendix, in the Cadence Verilog-AMS Language Reference.

Identifiers do not map cleanly to the netlist language

Identifiers are not unique within the design

Because the determination of non-compliance depends on the target netlist language, it is possible to have identifiers that are compliant for one target language and non-compliant for

April 2004

370

Product Version 5.3

Virtuoso AMS Environment User Guide

Variables for ams.env Files

another. To ensure that identifiers are compliant for every target netlist language, use the following syntax.

basic_identifier ::=

letter {[_] letter_or_digit}

letter_or_digit ::= a-z | 0-9

For example, the following identifiers are compliant for every target language.

an_identifier_name a_2nd_name a_name2

The following identifiers, because they do not use the suggested syntax, might be non-compliant for some target languages.

2identifier

// Should

begin with

a letter.

My_identifer

// Should

not use

uppercase

letters.

an_identifier_

//

Should

end

with a

letter

or digit.

a&b

//

Should

not

use

characters other than a-z, 0-9, and underscore.

April 2004

371

Product Version 5.3

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]