You are on page 1of 26

Design and

implementation of the
operation and
maintenance software
for a new GSM
transcoder
Author: Paavo Markkola

Supervisor: Professor Raimo Kantola


Instructor: M.Sc. Juha Pajuvirta

© NOKIA 1 paavo.markkola@nokia.com 18.10.2005


General Information
• Thesis written at Nokia networks during 2004 – 2005

© NOKIA 2 paavo.markkola@nokia.com 18.10.2005


Contents
• Objectives of the thesis
• Methodology
• Transcoders in GSM networks
• Nokia transcoders
• Operation and maintenance software
• Implementation
• Test bench
• Conclusions

© NOKIA 3 paavo.markkola@nokia.com 18.10.2005


Objectives of the thesis
• To design and implement the operation and maintenance (O&M)
software for the Nokia third generation GSM transcoder and
submultiplexer (TCSM3i).
• TCSM3i hardware is based on the current, second generation
transcoder and submultiplexer (TCSM2).
• TCSM2 O&M software can be used as the basis for the TCSM3i
O&M software.
• This work is about the changes required to the TCSM2 O&M
software so that it can be used with the TCSM3i hardware.

© NOKIA 4 paavo.markkola@nokia.com 18.10.2005


Methodology
• Nokia software development procedure
• Requirement specification
• The changes needed to the O&M software from TCSM2 level
• Implementation specification
• Describes the principles how the feature is to be implemented
• Implementation
• Changes to code in assembler, PLM and C languages
• Testing the that the implementation works

© NOKIA 5 paavo.markkola@nokia.com 18.10.2005


Transcoders in GSM networks (1)
• The GSM system features several codecs that are used in order to reduce
the number of bits transferred over the radio interface
• On the network side these codecs are implemented in Transcoding and
Rate Adaptation Unit (TRAU)
• The purpose of the TRAU is to
• Transcode speech between the standard 64 kb/s PCM format and the
encoded formats used on the GSM radio interface
• Perform rate adaptation for data calls between 64 kb/s and limited bit
rates on the radio interface
• Speech codecs
• Full Rate (FR) 16 kb/s
• Half Rate (HR) 8 kb/s
• Enhanced Full Rate (EFR) 16 kb/s
• Adaptive Multirate (AMR) 16 kb/s
• Bits rates for data calls
• GSM data 9.6 kb/s
• GSM data 14.4 kb/s
• High Speed Circuit Switched Data (HSCSD) allows more than one
channel to be used for the same connection, max 40 – 50 kb/s
• Every call in a GSM network must eventually go through TRAU

© NOKIA 6 paavo.markkola@nokia.com 18.10.2005


Transcoders in GSM networks (2)
Um A

MS BSS NSS
BTS BSC TRAU MSC/VLR GMSC

PSTN

Gb

GPRS Packet Core


SGSN GGSN

Data
Networks

• TRAU is part of the Base Station Subsystem (BSS) although it is


usually located next MSC
• TRAU operates on physical level and does not handle GSM
signaling
• TRAU can be integrated with a submultiplexer
• Four 16 kb/s, or eight 8 kb/s, channels can be submultiplexed
in to one 64 kb/s channel
• The closer to the MSC the TRAU is located the better utilization of
the transmission capacity
© NOKIA 7 paavo.markkola@nokia.com 18.10.2005
Nokia Transcoders (1)
• Transcoder and submultiplexer (TCSM)
• Submultiplexer is fully intergraded to the device
• Based on the Nokia DX200 platform
• Three generations of transcoders
• The first generation transcoder is obsolete and no longer supported
• The current transcoder product is TCSM2
• The new transcoder, TCSM3i, does not directly replace TCSM2,
instead it provides an alternative solution
• Always located in between BSC and MSC, and can be considered as an
internal part of the BSC
• Digital Signal Processors (DSP) are used to implement the TRAU
functionality
• Exchange Terminals (ET) provide PCM lines (either E1 or T1) towards BSC
and MSC
• Provides one PCM line towards BSC (Ater interface) and four (with full
rate channels) or seven (with half rate channels) PCM lines towards MSC
(A interface)

© NOKIA 8 paavo.markkola@nokia.com 18.10.2005


Nokia transcoders (2), TCSM2
• TCSM2 consist of four different plug-in units
• Transcoder controller plug-in unit (TRCO) TCSM2
• Controls the operation of the transcoder
• Transcoder plug-in unit (TR12/16)
• Incorporates 12 (ANSI) or 16 (ETSI) on board
DSPs
• Two plug-in units required per A interface
PCM line
• Exchange terminals plug-in units (ET2E/A)
• Implements two E1 or T1 PCM lines
• Power source plug-in unit (PCS1)
• All plug-in units except the power source require
software
• Full rate capacity is 120 (ETSI) or 95 (ANSI)
channels
• Eight units in can be equipped to a cabinet
• Cabinet
© NOKIA 9 capacity is 960/768 channels
paavo.markkola@nokia.com 18.10.2005
Nokia Transcoders (3), TCSM3i
• Consist of only one plug-in unit, TR3E/A
• Motherboard is based on the TRCO plug-in unit
TCSM3i
• Daughter board consist of 6 (ANSI) or 7 (ETSI)
DSPs.
• DSPs have six cores each capable of handling
three traffic channels
• Does not support half rate
• ET16 plug-in units provide PCM lines for
several TCSM3i units
• External clocks provide synchronization
• TCSM3i cartridge holds 16 TR3E/A units and six
cartridges can be equipped to TCSM3i cabinet

© NOKIA 10 paavo.markkola@nokia.com 18.10.2005


Nokia Transcoders (4), Why TCSM3i?
• The main reason to develop TCSM3i is to accommodate the
transcoding capacity to the capacity of the new high capacity
BSCs
• One TCSM3i cabinet replaces several TCSM2 cabinets
• Another reason is to upgrade the DSP platform
• Capacity of the DSPs in TCSM2 is limited

© NOKIA 11 paavo.markkola@nokia.com 18.10.2005


Operation and Maintenance Software
• Runs on the controlling unit; TRCO in TCSM2 or TR3E/A motherboard in
TCSM3i
• Built for 16-bit 186 type processors with 1 MB memory range
• Stored to flash memory in the controlling unit and the maximum size is
512 kB
• TCSM2 also has a ROM version which ensures that the flash version is up-
to-date
• The responsibilities of the O&M software are
• making sure that the software modules used by the transcoder are
up-to-date,
• loading devices with appropriate software modules,
• supervising the operation of the transcoder,
• performing diagnostics on the transcoder unit,
• configuring the transcoder and maintaining configuration data, and
• implementing local and remote interfaces to the transcoder.
• Built around the Nokia proprietary operating system called PECTUS
• Functionality implemented with a number of PECTUS processes with
defined purposes and responsibilities
Processes
•© NOKIA 12 communicate with each other by sending
paavo.markkola@nokia.com messages
18.10.2005
Implementation, Hardware Changes
• Host processor is different Intel 80186EB @ 16 MHz  AMD Am186ER @ 50 MHz
• Instruction set is the same
• Boot procedure is different
• Boots from flash instead of ROM as in TCSM2
• Must also copy itself from flash to RAM  execution continues from RAM
• Submultiplexer implemented with a Field Programmable Gate Array (FPGA) device
• Needs to be loaded and configured
• Storage flash memory is different
• Size increased from 512 kB to 8 MB, but bank size decreased from 256 kB to
64 kB
• DSP code loading memory is used to load DSPs
• Banked to 64 kB pages with total size 512 kB
• The DSP block and the interface to it are completely different
• Use of High-Level Data Link Control (HDLC) channels to external devices (ET and
clock units) depends on the location of the TR3E/A plug-in unit
• Units have different roles
• Internal clock replaced with cabinet level external clocks
• Only cabinet head master can control external clocks
• Exchange terminals have 16 units instead of just two
• Only cartridge master (Ater and A interface) and masters (A interface) have
control over exchange terminals

© NOKIA 13 paavo.markkola@nokia.com 18.10.2005


Implementation, Boot Procedure
• Two phased boot procedure FFFFFH

• In the first phase boots from flash flash UCS

• Copy everything from flash to RAM 80000H

• Using only host processor’s registers


RAM
• The first phase completed when I/O pin is turned LCS

by software 00000H

• Memory configuration is altered


• Next instruction is fetched from the same
address in RAM FFFFFH

• Flash and DSP code loading memories are now RAM UCS

mapped to 64 kB areas after 256 kB data memory 80000H

Flash and
• Second phase then initializes hardware devices DSP
MCS
40000H

Data LCS
00000H

© NOKIA 14 paavo.markkola@nokia.com 18.10.2005


Implementation, FPGA Configuration
• The FPGA device must be configured during boot – otherwise the
plug-in unit won’t work
• The device is loaded with a code stored to flash
• Loading proceeds with five software controlled I/O pins
• Proceeds one bit at a time
• The size of the FPGA code is about 5 million bits

T1 T2 T3 T4 T5

CCLK

DIN Bit1 Bit2 Bit3

PROGRAM

INIT

1 2 3 4 5 6 7

© NOKIA 15 paavo.markkola@nokia.com 18.10.2005


Implementation, HDLC channels
• HDLC channel is connected to a time slot in a PCM line
• Link Access Protocol – channel D (LAPD) protocol is used on top of
HDLC channels to established links to other systems
• TCSM2 has five HDLC channels; one to BSC (16 kb/s) and four to
ET plug-in units (64 kb/s)
• TCSM3i has four channels but their usage depends on the role of
the unit
• All units have BSC connection
• Cabinet head master has two connections to the external
clocks
• Cartridge master has two connections ET plug-in units (Ater
and A interfaces
• Master has one connection to ET plug-in unit (A interface)
• HDLC channel configuration needs an update; PCM time slot etc.
• For simplicity LAPD process tries to establish all four links
• Only links using a working HDLC channel can get up
• LAPD process must also be able to send messages through proper
link according to their destination
© NOKIA 16 paavo.markkola@nokia.com 18.10.2005
Implementation, Flash Manager
• Needs to control all accesses to banked memories
• flash and DSP code loading memory
• Totally redesigned
• Cannot handle operations that cross page boundaries
• Page size is reduced from 256 kB to 64 kB
• Flash interface is different as the flash device is different
• Flash operations
• Read – reads a number of words from flash
• Write – programs a number of words to flash
• Blank – erases (sets bits high) a number words in flash
• Checksum – calculates checksum over an area in flash
• Search – searches for a user defined string in flash
• Flash sector size increased from 32 kB to 64 kB
• Equal size flash buffer is required for flash write operations
• 64 kB out of 256 kB data memory is too much  moved to
DSP code loading memory
• Write operations are not allowed when DSPs are being loaded

© NOKIA 17 paavo.markkola@nokia.com 18.10.2005


Implementation, Software
Downloading
• The O&M software loads all used software modules from BSC
during restart
• Compares modules to see whether software update is
necessary
• The user can also upload modules from PC through the serial port
with kermit protocol
• TR3E/A plug-in unit is useless if the O&M or FPGA modules on
flash are corrupted
• Cannot rely on ROM module anymore
• Update procedure must be safe
• Due to the slow connection (16 kb/s) download takes several
minutes for each software module
• Needs a temporary location in flash for downloaded modules
• If download successful then copy software to primary location
• In TCSM2 the software update process has its own flash interface
• Flash manager interface needed

© NOKIA 18 paavo.markkola@nokia.com 18.10.2005


Implementation, DSP Management
• DSP supervision proceeds as in TCSM2 but the interface to the DSP block
is different
• Only one 16-bit message register per DSP core
• Three channels must use the same register
• Problematic as DSP cores have interrupts disabled in 125 µs periods
• To minimize worst case delay the protocol must make consecutive
writes to different registers
• Channel failures cause restart of the corresponding DSP core
• If the channel is in the first core then the whole DSP must be
restarted
• DSP load procedure is also different
• Software is first copied from flash to DSP code loading memory
• Hardware logic loads the DSPs
• Once complete the host processors is interrupted
• All PCM lines connected the transcoder may use different codec
• In TCSM3i one software can implement all codecs and features
• TCSM2 has several softwares due to the limitations of the DSPs
• In TCSM3i the same software must be loaded to all DSPs as no
combination DSPs matches one PCM

© NOKIA 19 paavo.markkola@nokia.com 18.10.2005


Implementation, ET Management
• In principle ET management works as before
• Less ET plug-in units
• More ET units
• The capacity of the control link to an ET16 plug-in unit is 64 kb/s
• Delays are needed otherwise the link is overflowed
• ET16 plug-in units must be loaded
• Software is much larger than in TCSM2  takes more time
• Needs message interface to flash manager
• Not all TCSM3i units have ET plug-in units in their control
• One ET16 plug-in unit provides Ater interface PCM line for all
units in a TCSM3i cartridge
• One ET16 plug-in unit provides A interface PCM lines for four
TCSM3i units
• TR3E/A might be swapped  must recognize in which role
configuration in flash was lat used
• If the TCSM3i does not control any ET16 plug-in units then ET
managements goes idle

© NOKIA 20 paavo.markkola@nokia.com 18.10.2005


Implementation, Diagnostics
• Some of the tests require changes due to the new hardware
• Read/write test for DSP code loading memory
• Flash manager must do this
• It is not possible to set loops in ET units as the TCSM3i units may
not have control over their ET units
• Loop in the submultiplexer part
• External clocks must be tested
• Clock units can perform their own diagnostics
• Flash test calculates checksums from code memory
• Changed to calculate checksum from storage flash as well

© NOKIA 21 paavo.markkola@nokia.com 18.10.2005


Implementation, Synchronization
• Internal clock unit has been replaced with two external clock units
• Common for the whole TCSM3i cabinet
• Working and spare units
• Cabinet head master is the only TCSM3i unit with the control links
to the clock units
• Head master is the second TCSM3i in the first cartridge of the
cabinet
• The responsibilities of the head master include
• Supervision – supervises the clock units once every 30 seconds
• Configuration – forwards user defined configuration to the
clock units
• Diagnostics – forwards diagnostics request from the user to
the clock units
• Alarms – informs BSC of the alarms sent by the clock units

© NOKIA 22 paavo.markkola@nokia.com 18.10.2005


Implementation, User Interfaces
• User can connect to the transcoder locally through serial port or
remotely from BSC through a message interface
• The serial port is the host processors internal serial port
• Driver needs an update as host processors are different
• The user interface consist of Man-Machine Interface (MMI) style
commands
• Several commands require minor updates as they reflect the
hardware configuration

© NOKIA 23 paavo.markkola@nokia.com 18.10.2005


Test Bench
• One TR3E/A plug-in unit
and a cartridge
• ETSI and ANSI
daughter boards
• Two ET16 plug-in units
• Prototypes
• Two external clock units
• Power source
• PRTA plug-in unit
• Provides service
terminal interface to
PECTUS
• New software has to be
burned to a flash chip

© NOKIA 24 paavo.markkola@nokia.com 18.10.2005


Conclusions
• New hardware – lots of difficult problems
• Lot more work than expected
• Including several small things that needed changes
• At the moment seems quite stable

© NOKIA 25 paavo.markkola@nokia.com 18.10.2005


Questions?

© NOKIA 26 paavo.markkola@nokia.com 18.10.2005

You might also like