(Page 4 of 6 in this chapter)


4.3 AG Configuration File Statements

The following is a summary of the AG configuration file statements.
Keyword

Allowed Values

Description

Mandatory?

Address

base

Base address of board

YES

Board

boardnum [..endboard] | ALL

Beginning of section defining configuration of one or more boards

YES

ClockRef

MVIP | OSC | NET1 | SEC8K

Configures MVIP clock

Only if EnableMVIP, DrvieSec8K, or MvipSlot statements are present

Diagnostics

level

Determines diagnostics level at board initialization time

NO

DigitalMode

CAS | PRI | RAW

Determines how voice and signaling information is routed to and from an T1 or E1 trunk.

NO

DriveSec8K

NET1 | NO

Determines if T1 or E1 clock drives the Sec8k line

NO

DSP_OS

filename

Defines DSP operating system used

NO

DspFile

filename

Installs a DSP function module

YES

EnableMvip

YES | NO

Determines whether board is electrically connected to the MVIP bus

NO

End Board

Ends section defining the configuration of one or more boards

NO

FrameType

D4 | ESF | CEPT

Defines T1 or E1 trunk framing format

NO

IdleCode

MU-LAW | A-LAW | evencode [,oddcode]

Defines bit pattern transmitted on idle MVIP bus

NO

Interrupt

vector

Defines IRQ shared by all boards

YES

LineCode

AMI | B8ZS | AMI_ZCS | AMI_BELL | AMI_DDS | AMI_GTE | HDB3

Defines AG-T1 or AG-E1 trunk line encoding algorithm

NO

LineLength

value [, DSX1 | DSX1A | G703_75_OHM | G703_120_OHM ] or

DSX1 | DSX1A | G703_75_OHM | G703_120_OHM

Specifies length and type of cable connecting AG-T1 or AG-E1 to the network

NO

LineType

LOOPSTART | LOOP | GROUNDSTART | GS | E&M | E&M1A | DID

Configures analog telephone line interfaces on AG-8/F

NO

LoadFile

filename

Defines boot loader

NO

MvipClock

NONE | SLAVE | MASTER

(obsolete)

MvipSlot

stream: slot[..endslot][,idlecode]

Defines a range of MVIP timeslots driven by board

NO

RunFile

filename

Defines coprocessor software used

YES

TCP

filename

Installs trunk control program

NO

The AG configuration file statements are presented in detail in the following sections. They are listed in alphabetical order by keyword.

Address

Address = base

This statement specifies the current board's ISA bus address. Every AG board must be assigned a unique address. An Address statement is only meaningful for exactly one board, i.e., in a board-specific section.

Note that a board's address is actually set by DIP switches on the board; this statement simply assigns the current board number to the physical board which has its switches set to the specified address.

The base I/O address is a hexadecimal number.

The Address statement is mandatory.

Example: Address = 2C0

See Also: Board, Interrupt

Board

Board [=] boardnum [..endboard] | ALL

This statement begins a section of the configuration file, and sets the scope to all boards, a range of boards, or a single board. The section is described in this manual as common, range-specific, or board-specific, respectively.

The End Board statement is optional; it ends the context of the previous Board statement, as does a subsequent Board statement.

There is an implicit Board = ALL at the top of each configuration file. This context is referred to as the common section. Statements in the common section apply to all boards.

The Board statement is mandatory.

Example:    Board 3
or:
Board = 0..2
or:
Board = ALL

ClockRef

ClockRef = MVIP | OSC | NET1 | SEC8K

This statement configures the clock. The allowed values for ClockRef are defined as shown below:

:
Value

Definition

MVIP

Derive the local clock from the MVIP bus (another board must drive the MVIP clock on the bus).

OSC

For the AG-T1/E1, drive the T1/E1 line transmit clock using the on-board oscillator, and derive the local clock using the extracted clock from the T1/E1 line. For the AG-8, use the on-board oscillator as a reference.

NET1

Derive the local clock using the extracted clock from the T1/E1 line (AG-T1/E1 only). Fall back to OSC if no clock signal is detected.

SEC8K

Derive the local clock from the Sec8k line on the MVIP bus.

ClockRef is optional for all boards; however, it must be present if any of the following statements are also present for the specified board: EnableMvip, DriveSec8k, or (for all boards except AG-24/24+/30/48/60) MvipSlot.

The default ClockRef value for the AG-8 is OSC; for the AG-T1 and
AG-E1, the default is NET1; and for the AG-24/24+/30/48/60, the default (and only valid value) is MVIP.

Note: The ClockRef = OSC option on an AG-T1 and AG-E1 should only be used when the T1 or E1 connection is isolated from the public network. This would apply, for example, when a T1 link is used as a link between two adjacent computers, or when using one T1 card to simulate network traffic to another.

Two T1s connected back-to-back for testing should not be on the same MVIP bus unless a third board is providing the bus clock. The hardware is designed so that, if the T1 or E1 card is clock master to an MVIP bus, the bus clock is always derived from the T1 or E1 line, even if ClockRef = OSC is specified.

Example: ClockRef = MVIP

See Also: EnableMvip, DriveSec8k

Diagnostics

Diagnostics = level

This statement specifies the level of diagnostics during initialization for the current board(s). The valid values for level are 0, 1, 2, and 3. 0 indicates no diagnostics, and 3 is the maximum level. The default value is 2. The trade-off for higher levels of diagnostics is increasing time to initialize each AG board at load time.

The Diagnostics statement is optional. Typically, you specify a level to apply to all boards in the common section.

Alias: Diag

Example: Diagnostics = 0 # no diagnostics
Diag = 1 # minimal diagnostics

DigitalMode

DigitalMode = CAS | PRI | RAW

This statement determines how voice and signaling information is routed to and from the E1 or T1 trunk and processing resources. DigitalMode determines the default LineCode setting.

The values for DigitalMode are:

CAS To use a channel-associated signaling protocol (CAS)

PRI To use primary-rate ISDN

RAW To use primary-rate ISDN with Network Facility
Associated Signaling (NFAS). (AG-T1 only)

The DigitalMode statement is optional. DigitalMode defaults to CAS.

DriveSec8k

DriveSec8k = NET1 | NO

This statement controls whether the clock extracted from the T1 or E1 line drives the Sec8k line on the MVIP bus.

The DriveSec8k statement is optional. The default value is NO. In most cases, Sec8k can be ignored when configuring a single network interface as the clock reference. To switch to a secondary reference at any time, a secondary board must drive the Sec8k signal to the board that is the MVIP master. Note that agmon only configures Sec8k, and will not automatically switch clock references if there is a clock failure. This must be done by application software.

Example: DriveSec8k = NET1

See Also: ClockRef, EnableMvip

DSP_OS

DSP_OS = filename

This statement specifies the digital signal processor (DSP) operating system to use on the current board(s).

The DSP_OS statement is optional. By default, agmon uses dsposd.bin for AG-24 boards, dsposh.bin for the other digital boards
(AG-24+/30/48/60) as well as for AG-T1 and AG-E1 boards, dsposa.bin for analog boards (AG-8), and dsposw.bin for higher speed analog boards (AG-8 80).

Example:
NT and OS/2: DSP_OS =c:\nms\ag\load\dsposd.bin
DSP_OS = dsposd.bin
UnixWare, SCO and Solaris:
DSP_OS =/opt/nms/ag/load/dsposd.bin
DSP_OS = dsposd.bin

DspFile

DspFile = filename

This statement installs a digital signal processor (DSP) function module on the current board(s).

Every board requires at least one DSP file; typically there are several. If the same DSP files are required for all boards, you should place them in the common, or Board All, section.

agmon configures each board's DSPs to run functions from one or more DSP files. The following DSP files are currently included with AG Access:

:
mu-law version

A-law version

Description

adsir.dsp

adsir_a.dsp

Caller ID and ADSI receive functions

adsix.dsp

adsix_a.dsp

ADSI send function

callp.dsp

callp_a.dsp

Call progress detection function

dtmf.dsp

dtmf_a.dsp

DTMF, silence and cleardown detector functions

dtmfe.dsp

dtmfe_a.dsp

dtmf.dsp optimized for use with Echo Canceller

echo.dsp

echo_a.dsp

Echo canceller function

g726p.dsp

g726p_a.dsp

ITU G726 ADPCM play function

g726r.dsp

g726r_a.dsp

ITU G726 ADPCM Record function

mf.dsp

mf_a.dsp

Multi-Frequency Receiver function

okiply.dsp

okiply_a.dsp

OKI ADPCM Play functions

okirec.dsp

okirec_a.dsp

OKI ADPCM Record functions

rvoice.dsp

rvoice_a.dsp

Unformatted (raw) play and record

signal.dsp

signal_a.dsp

Signaling, ring detector and pulse functions

tone.dsp

tone_a.dsp

Tone and DTMF generation functions

voice.dsp

voice_a.dsp

NMS ADPCM play and record

voxp.dsp

voxp_a.dsp

NMS ADPCM play with speed-up

voxr.dsp

voxr_a.dsp

NMS ADPCM record function

wavply.dsp

wavply_a.dsp

WAVE Play functions

wavrec.dsp

wavrec_a.dsp

WAVE Record functions

The DspFile statement is mandatory.

Example:
NT and OS/2: DspFile = c:\nms\ag\load\dtmf.dsp
DspFile = dtmf.dsp
UnixWare, SCO and Solaris:
DspFile = /opt/nms/ag/load/dtmf.dsp
DspFile = dtmf.dsp

EnableMvip

EnableMvip = YES | NO

This statement specifies whether the current board(s) should be electrically connected to the MVIP bus.

If EnableMvip = NO:

If EnableMVIP = YES:

The EnableMvip statement is optional. The defaults for the AG-T1,
AG-E1, and AG-8 depend on the value of the ClockRef, DriveSec8k, and MvipSlot statements. If ClockRef = MVIP or SEC8K, DriveSec8k = NET1, or there are MvipSlots specified, then EnableMvip = YES. Otherwise, EnableMvip = NO. The default, and only valid value, for
AG-24/24+/30/48/60 boards is YES.

Example: EnableMvip = YES

See Also: ClockRef, DriveSec8k, MvipClock

End Board

End Board

This statement ends a section of the configuration file for a range of boards or a single board.

The End Board statement is optional; it ends the context of the previous Board statement, as does a subsequent Board statement.

FrameType

FrameType = D4 | ESF | CEPT

This statement defines the T1 or E1 trunk framing format for the current board(s).

The valid T1 formats are:

D4: Standard superframe formatting

ESF: Extended superframe formatting

The only valid E1 format is:

CEPT: Framing format conforming to ITU recommendation
G.703 for PCM 30 (30 telephone channels with channel
associated signaling).

The FrameType statement is optional. By default, agmon uses D4 for the AG-T1, and CEPT for AG-E1.

Example: FrameType = D4

See Also: LineCode

IdleCode

IdleCode = MU-LAW | A-LAW | evencode[,oddcode]

This statement specifies the bit pattern to transmit on an MVIP timeslot when it is idle. This code applies to all timeslots specified in MvipSlot statements for the current board(s), except for those with idle codes specified in the MvipSlot statements.

In general, a timeslot is considered to be idle when no application is driving it.

If MU-LAW or A-LAW is specified, then the idle code for all configured timeslots in even-numbered streams is the appropriate voice silence pattern. The idle code for all timeslots configured in odd-numbered streams is 0.

If both evencode and oddcode are specified, they apply to even and odd streams respectively. If only evencode is given, then it is the idle code for all streams. Typically, even-numbered streams refer to voice channels and odd-numbered streams refer to signaling channels. Thus, the oddcode specifies the A, B, C, and D bits sent to an idle timeslot, according to the following bitmasks:

Signal bit

Hex mask

Binary mask

A

0x08

00001000

B

0x04

00000100

C

0x02

00000010

D

0x01

00000001

For example, to assert only the A and D bits on idle signaling timeslots, oddcode should be set to 0x09.

The IdleCode statement is optional. If no idle code is specified for a board, then MU-LAW is the default.

Example: IdleCode = A-LAW
IdleCode = 0x5B,0x09 #A-law voice, R2 signal

See Also: MvipSlot

Interrupt

Interrupt = vector

This statement specifies the interrupt (IRQ) shared by all of the boards. This statement may only be used in a common section, outside the context of a specific board.

There are no interrupt selection jumpers on the boards; the selection is programmed by agmon. Allowable values are 5, 7, 9, 10, 11, 12, and 15.

The Interrupt statement is mandatory.

Alias: IRQ

Example: Interrupt = 12

See Also: Address

LineCode

LineCode = AMI | B8ZS | AMI_ZCS | AMI_BELL | AMI_DDS | AMI_GTE | HDB3

This statement specifies the trunk line coding algorithm for an AG-T1 or AG-E1 board.

The valid AG-T1 formats are:

:
Format

Definition

AMI

Alternate marks inverted - standard line coding with no zero code suppression (also valid for AG-E1).

B8ZS

Binary 8-zero suppression (uses patterns of bipolar violations to replace zero data bytes; especially useful for clear channel transmission).

AMI_ZCS

AMI with "jammed bit 7" zero code suppression.

AMI_BELL

Same as AMI_ZCS.

AMI_DDS

AMI with zero data byte replaced with "10011000"

AMI_GTE

AMI with "jammed bit 8" zero code suppression, except in signaling frames when "jammed bit 7" is used if the signaling bit is zero.

The valid AG- E1 formats are:

:
Format

Definition

AMI

Alternate marks inverted - standard line coding with no zero code suppression (also valid for AG-T1).

HDB3

High density bipolar 3 code - uses patterns of bipolar violations to replace sequences of 4 zero data bits in order to maintain 1's density on clear channel transmission.

The LineCode statement is optional. For AG-T1, LineCode defaults to AMI_ZCS if DigitalMode is set to CAS; otherwise it defaults to B8ZS. For AG-E1, LineCode defaults to HDB3.

Example: LineCode = AMI_ZCS

See Also: FrameType

LineLength

For AG-T1 boards:

LineLength = length [, DSX1]
or
LineLength = DSX1

For AG-E1 boards:

LineLength = length, DSX1A
or
LineLength = G703_75_OHM | G703_120_OHM | DSX1A

This statement specifies the length and type of the cable connecting an AG-T1 or AG-E1 board to the network. For DSX1 and DSX1A, length specifies the length of the cable (in feet) and is useful for adjusting the pulse shape for a given length of DSX1 or DSX1A compatible cables.

The LineLength statement is optional. The default value for cable length is 0 (which usually works on lines of up to 100 feet). The default value for the cable type is DSX1 for AG-T1 boards and G703_75_OHM for AG-E1 boards.

Example: LineLength = 200, DSX1 (AG-T1 only)
LineLength = G703_120_OHM (AG-E1 only)

LineType

LineType[line [..endline]] = LOOPSTART | LOOP | GROUNDSTART |
GS | E&M | E&M1A
| DID

This statement configures one or more analog telephone line interfaces on an AG-8. If no line number is specified, the statement applies to all line interfaces.

The LineType statement is optional. Each line interface device has a default line type: the default for the LS/GS interface is LOOPSTART and the default for the DID/E&M interface is DID.

Example: LineType = LOOP # configures all 8 lines
as loop start lines

LineType 2 = GS # configures line 2 as
a ground start line

LineType 0..7 = E&M # configures lines 0-7
as E+M lines

LoadFile

LoadFile = filename

This statement specifies the boot loader for the current board(s).

The LoadFile statement is optional. By default, agmon uses mother.lod.

Example:
NT & OS/2: LoadFile =c:\nms\ag\load\mother.lod
UnixWare, SCO and Solaris:
LoadFile =/opt/nms/ag/load/mother.lod

MvipSlot

MvipSlot = stream: slot[..endslot][,idlecode]

This statement specifies an MVIP timeslot or range of MVIP timeslots driven by the current board. It optionally specifies the bit pattern transmitted on the MVIP timeslot(s) when idle.

It is an error if any MVIP timeslot is defined to be driven by more than one board. Therefore, this statement must not be in the common section. If used, it must be included in each board-specific section with different values.

This statement is not typically used for AG-8, AG-T1, or AG-E1 boards; however, it can be used to configure these boards as MVIP resource boards. In this case, the line interface(s) will not be connected.

The idle code, if included, must be specified with no space to the left of the comma. If an idle code is not specified here, then the IdleCode statement that applies to the current board is used.

The MvipSlot statement is optional.

Example: MvipSlot = 6:0..23,0x7F
MvipSlot = 6:0..23

See Also: IdleCode

RunFile

RunFile = filename

This statement specifies the coprocessor software for the current boards.

The following are examples of run files:

sysdn.run - Digital board (AG-24/24+/30/48/60)

sysan.run - Analog board (AG-8/4/0)

systn.run - Linecard board (AG-T1, AG-E1)

The RunFile statement is mandatory.

Example:
NT & OS/2: RunFile = c:\nms\ag\load\sysdn.run
RunFile = sysdn.run
UnixWare, SCO and Solaris:
RunFile = /opt/nms/ag/load/sysdn.run
RunFile = sysdn.run

TCP

TCP = filename

This statement specifies the trunk control program for the current board(s). A trunk control program implements a channel associated signaling protocol.

The following trunk control programs are available:
Trunk Control Program

Description

nocc

"no call control"

lps0.tcp

AG-8; Analog Loop-start

lps8.tcp

AG-T1; Digital Loop-start (OPS-FX)

lps9.tcp

AG-T1; Digital Loop-start (OPS-SA)

gst8.tcp

AG-T1; Digital Ground-start (OPS-FX)

gst9.tcp

AG-T1; Digital Ground-start (OPS-SA)

wnk0.tcp

AG-T1 or AG-8/DID; Digital/Analog Wink-start

did0.tcp

AG-T1 or AG-8/DID; Digital/Analog Wink-start (inbound only)

ogt0.tcp

AG-T1 or AG-8/DID; Digital/Analog Wink-start (outbound only)

wnk1.tcp

AG-8/E&M; Analog Wink-start

fdi0.tcp

Feature Group D (inbound only)

Note: International TCPs (e.g., loopstart for WTI-8, MFC-R2 for
AG-E1, etc.) are not shipped with AG Access.

The TCP statement is optional.

Alias: TrunkControlProgram

Example:
NT and OS/2: TCP =c:\nms\ag\load\did0.tcp
TrunkControlProgram =did0.tcp

UnixWare, SCO and Solaris:
TCP =/opt/nms/ag/load/did0.tcp
TrunkControlProgram =did0.tcp



(Page 4 of 6 in this chapter)


Tech_Support@nmss.com
Copyright © 1996, Natural MicroSystems, Inc. All rights reserved.