`5,983,366
`[11] Patent Number:
`[45] Date of Patent:
`King
`Nov. 9, 1999
`
`US005983366A
`
`[54] DATA PROCESSING SYSTEM HAVING
`MONITORING OF SOFTWARE ACTIVITY
`
`Attorney, Agent, or Firm—Dickstein Shapiro Morin &
`Oshinsky LLP
`
`[75]
`
`Inventor: Michael Roy King, Axams, Austria
`
`[57]
`
`ABSTRACT
`
`[73] Assignee: Optimay Corporation
`
`[21] Appl. No.: 08/820,836
`
`[22]
`
`Filed:
`
`Mar. 19, 1997
`
`[SD]
`Tint, (de oeccc cceessccsssssneeecceesnsnneeeee G06F 11/00
`
`[52] US. CD. oe eesssesssesesesstenecneecneeneceneestenneeneees 714/38
`[58] Field of Search oe. 395/183.14, 183.15,
`395/183.21, 184.01, 185.04, 183.22, 704,
`705, 712; 371/25.1, 27.5
`
`[56]
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`3,707,725
`4,802,165
`5,121,489
`5,124,103
`5,297,274
`5,347,649
`5,642,478
`5,671,351
`5,748,964
`
`12/1972 Dellheim oo... eee 395/185.14
`1/1989 Ream ........
`. 395/183.14
`6/1992 Andrews ..
`.. 395/183.14
`6/1992 Hill et al. ..
`« 395/183.21
`3/1994 Jackson.....
`w 395/183.11
`9/1994 Alderson ...
`. 395/183.04
`...
`6/1997 Chen etal.
`395/183.21
`....
`9/1997 Wild et al.
`.. 395/183.14
`5/1998 Gosling 0. 395/183.14
`
`
`
`
`Primary Examiner—Robert W. Beausoliel, Jr.
`Assistant Examiner—Pierre E. Elisca
`
`A methodof tracing execution of a computer program of a
`data processing system with print messagesis disclosed. The
`method includes providing a trace definition file containing
`a plurality of trace definitions, each trace definition is an
`encodedidentification of each print message to be used with
`the tracing of execution of the computer program ofthe data
`processing system and a format display specification of an
`output for providing a trace of the execution of the computer
`program; providing information from thetrace definitionfile
`to the data processing system which is executed with the
`computer program; providing information from the trace
`definition file to a host processor; the host processor com-
`municating with the data processing system to identify
`selected parts of the computer program to be traced;
`in
`response to execution of the computer program transmitting
`trace information from the data processor to the host pro-
`cessor associated with the selected parts of the application
`program being traced; and the host processor, in response to
`transmission of the trace information from the data proces-
`sor and in response to the information provided from the
`trace definition file causing the output for enabling tracing of
`the execution of the selected parts of the computer program.
`
`36 Claims, 5 Drawing Sheets
`
`Microfiche Appendix Included
`(2 Microfiche, 196 Pages)
`
`SAMSUNG 1044
`
` EMBEDDED
`SYSTEM
`INFORMATION
`
`
`HOST
`
`PROCESSOR
`
`TRACE SYSTEM
`
`INFORMA-
`
`
`TION
`IDENTIFY SELECTED PARTS
`
`
`OF COMPUTER PROGRAM
`
`OF DATA PROCESSING
`CALLS TO ROUTINES
`
`SYSTEM TO BE TRACED
`IN DATA PROCESSING
`
`
`AND PROCESS
`SYSTEM
`
`
`INFORMATION FROM HOST
`
`PROCESSOR AND TRACE
`
`INFORMATION FROM DATA
`PROCESSING SYSTEM
`
`
`
`OUTPUT
`
`
`(DISPLAY) OF PRINT
`MESSAGES FOR
`TRACING EXECUTION OF
`
`
`SELECTED PARTS OF
`
`
`COMPUTER
`
`PROGRAM
`
` 1
`
`SAMSUNG 1044
`
`1
`
`
`
`U.S. Patent
`
`Nov. 9, 1999
`
`Sheet 1 of 5
`
`5,983,366
`
`12
`
`76
`
`FIG.1PRIORART
`
`88
`
`GSMNETWORK
`
`WwW
`
`8
`
`5m
`
`ezSO
`
`o
`pd
`
`ero)Leas|RAM_|82Se)
`
`2
`
`
`
`U.S. Patent
`
`Nov. 9, 1999
`
`Sheet 2 of 5
`
`5,983,366
`
`FIG. 2
`(PRIOR ART)
`
`
`PORTABLE
`
`
`
`
`LAYERS 2& 3
`
` NON PORTABLE
`
`
`NON CYCLIC
`CYCLIC
`SCHEDULER
`SCHEDULER
`
`
`110
`108
`
`
`114
`
`LAYER 4
`
`
`
`DOWNLINK STATISTICS
`AND CONTROL
`ie
`
`
`
`UPLINK CONTROL
`
`
`
` GSM ENCODING &
`
`DECODING SUBSYSTEM
`
`102
`
`
`3
`
`
`
`U.S. Patent
`
`Nov. 9, 1999
`
`Sheet 3 of 5
`
`5,983,366
`
`FIG. 3
`
`PRIOR ART '
`
`4
`
`
`
`U.S. Patent
`
`Nov.9, 1999
`
`Sheet 4 of 5
`
`5,983,366
`
`vS¢
`
`HOSS390ud
`
`
`
`AW1dS10HLIM
`
`LSOH
`
`
`
`SluVvdGSL03135S
`
`HAINdNOD4O
`
`WVH9Okd
`
`OS¢/ YS
`4ONOILNOAXS(YAAISOSNVHL
`
`NOILLVWHOSANISNISSSOOUd
`
`FJOVHLOLWS)WSLSAS
`
`JOVHL4OVivd
`
`5
`
`
`
`U.S. Patent
`
`Nov. 9, 1999
`
`Sheet 5 of 5
`
`5,983,366
`
`300
`
`FIG. 5
`
`302
` TRACE
`
`FILE
`DEFINITION
`
`304
`
`TRANSLATION
`PROCESS
`
`306
`
`308
`
`
`EMBEDDED
`HOST
`
`
`PROCESSOR
`
`DATAevenNG
`TRACE SYSTEM
`
`
`
`
`
`INFORMATION
`INFORMA- TION
`
`
`
`
`
`
`310
`
`CALLS TO ROUTINES
`IN DATA PROCESSING
`SYSTEM
`
`312
`
`
`
`IDENTIFY SELECTED PARTS
`OF COMPUTER PROGRAM
`OF DATA PROCESSING
`
`
`SYSTEM TO BE TRACED
`
`
`AND PROCESS
`
`
`INFORMATION FROM HOST
`
`
`PROCESSOR AND TRACE
`
`
` INFORMATION FROM DATA
`
`
`PROCESSING SYSTEM
`314
`
`
`
`OUTPUT
`(DISPLAY) OF PRINT
`
`MESSAGES FOR
`TRACING EXECUTION OF
`SELECTED PARTS OF
`
`
`COMPUTER
`
`
`PROGRAM
`
`
`
`6
`
`
`
`5,983,366
`
`1
`DATA PROCESSING SYSTEM HAVING
`MONITORING OF SOFTWARE ACTIVITY
`
`TECHNICAL FIELD
`
`The present invention relates to the monitoring and the
`tracing of execution of software in data processing systems
`and, more particularly,
`to the monitoring and tracing of
`execution of applications programs in data processing sys-
`tems such as GSM transceivers.
`
`BACKGROUND ART
`
`The GSM communication system (global system for
`mobile communications) is a TDMA telecommunications
`system providing time multiplexed communications
`between mobile units and base stations contained in the
`GSM communication system. The GSM communication
`system, including transceiver units, is defined by published
`specifications which have been adopted over the years. The
`totality of the GSM published specifications are expressly
`incorporated by reference herein in their entirety.
`The functionality of a GSM transceiver in the GSM
`communication system is defined by the aforementioned
`GSMspecifications and includes a multilayer protocol stack
`containing software executed with a microprocessor.A first
`layer of the protocol stack interfaces with the hardware and
`controls communications to and from the second and third
`
`protocol layers. The second andthird protocol layers control
`communications to and from the first
`layer and utilize
`services provided bythe first protocol layer to communicate
`between the GSM network. The communications between
`the GSM network and GSM transceivers are time multi-
`
`plexed into GSM frames. Each GSM framehasa fixed time
`duration and is divided into multiple segments each con-
`taining a plurality of bits all in accordance with the afore-
`mentioned published GSM specifications.
`FIG. 1 illustrates a block diagram ofa prior art transceiv-
`ing unit which is disclosed in a catalog entitled “ICs for
`Communications” published by Siemens AG andidentified
`as Product Overview 09.95. Standard functional notations
`
`are utilized to identify the functional elements in the block
`diagram of FIG. 1. Only a brief overview description of FIG.
`1 will be given to describe the overall design of a GSM
`transceiver in which the present invention may be practiced
`and its relationship to a GSM network.
`The GSMtransceiver 10 is a double conversion hetero-
`dyne PM receiver with phase shifting circuitry for I/Q
`demodulation. Antenna 12 is connected through filter 14 to
`low noise amplifier 16 whichis in turn connected to filter 18.
`The outputof filter 18 is connected to mixer 20 which shifts
`the received signal down to an intermediate frequency. The
`output of mixer 20 is connectedto filter 22 and the output of
`filter 22 is connected to amplifier 24. The output of amplifier
`24 is connected to mixer 26 which shifts the signal to the
`baseband. The output of mixer 26 is connected to amplifiers
`28 whose I and Q outputs are respectively connected to
`filters 30 having outputs applied to A to D converters 32. The
`outputs of the Ato D converters 32 are connected to a digital
`signal processor 34 which includes filters 36 which are
`connected to the outputs of the A to D converters 32, a soft
`equalizer 38 which is connected to the output of the filters
`36 and a speech and channel decoder 40. The output of the
`speech and channel decoder 40 is connected to filter 42
`whose output is connected to D to A converter 44 whose
`output is applied to amplifier 46 which drives speaker 48 to
`provide audio to a user. Speech of the user is detected by
`microphone 50 which is connected to amplifier 52 having an
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`output connected to A to D converter 54. The output of A to
`D converter 54 is connected to filter 56 having an output
`connected to speech and channel encoder 58. The outputs of
`speech and channel encoder 58 are connected to a GMSK
`encoder 60 having a pair of outputs which are applied to D
`to Aconverters 62 with the outputs thereof being connected
`to filters 64 which respectively output I and Q signals. The
`I and Q signals are connected to mixers 66 which are driven
`by RFVCO68to convert the signal from the basebandto the
`RF band. The output of mixers 66 is connected to output
`stage 68'. The output of output state 68 is connected to filter
`70. The output of filter 70 is connected to output amplifier
`72 whichis controlled by a power amplifier control 74 in the
`form of a D to A converter. Microprocessor 76 controls the
`overall system including the power amplifier control 74 and
`provides a system interface 77. The system interface 77
`generates chip select signals, internal clock signals, GSM
`specific control and timing signals via programmable timers
`for programmable interrupts on timer values and provides a
`chip card interface to a SIM card 78. The interface 77 also
`provides connectivity to a keypad 80. The microprocessor
`76 is connected to a E7PROM 82,a flash memory 85, and
`RAM 86.
`
`As illustrated, a GSM network 84, which is in accordance
`with GSM specifications including base stations and related
`switching architecture, transmits and receives communica-
`tions between individual transceiver units 10 via RF trans-
`
`mission 87. The communications are time multiplexed into
`GSM frames each containing 8 time slots each containing
`multiple bits. Base stations (not illustrated) of the GSM
`network 84 each have an antenna 88 which transmits and
`receives the aforementioned time multiplexed GSM frames.
`Each GSMtransceiver, such as the unit 10 illustrated in
`FIG. 1 in accordance with the published GSM specifications,
`has a multilayer protocol stack including first, second and
`third layers. Instructions must be issued to the hardware to
`allow the hardware to perform in accordance with the
`published GSM specifications in the GSM frames with
`either a frame advance or a frame delay which is required to
`be an integer multiple of the time duration of a GSM frame.
`This permits designers of hardware for implementing GSM
`transceivers to provide for pipeline frame delays or frame
`advancesin terms of an integer multiple of the time duration
`of a GSM frame between the protocol stack and the hard-
`ware which suit the design requirements of the hardware.
`Thefirst three layers of the GSM protocol stack conformsto
`the overall OSI network model for providing a universal
`multi-layer protocol stack.
`FIG. 2 illustrates a block diagram of a GSM prior art
`multiple layer protocol stack 100 of the type utilized with a
`transceiver unit 10 of FIG. 1. The overall protocol stack 100,
`as illustrated, may be associated with hardware 102 whichis
`represented by the hardware 10 of FIG. 1. Layers 2 and 3
`identified by reference numeral 104 are well known and
`comply with the published GSM specifications including
`timing requirements. Layer 2 implements the LAPDm pro-
`tocol specified in GSM specifications 04.05 and 04.06 which
`specify the transceiver protocol. Layer 3 conforms to GSM
`specifications 04.07, 04.08 and 04.8x and is described in
`more detail below in conjunction with FIG. 3. Layer 1,
`whichis identified by reference numeral 106, is comprised
`of multiple software modules which exist in diverse imple-
`mentations for performing the overall functions contained in
`the layer 1 block diagram.
`Cyclic scheduler 108 takes a GSM channel configuration
`description from layer 3 and arranges for appropriate
`instructions to be given to the GSM encoding and decoding
`7
`
`7
`
`
`
`3
`subsystem 102 at the required times in order for the required
`channel structure to be implemented. The channel configu-
`rations are described in GSM specifications 05.02, section
`6.4.
`
`Non-cyclic scheduler 110 performsthe task of scheduling
`instructions to be carried by out by layer 1 which do not
`occur on a cyclical basis. The scheduled instructions typi-
`cally are requests from the layer 3 to deliver information
`about base stations other than the base station currently
`campedonto by the transceiver unit 10 which is controlled
`by the cyclical scheduler 108. The non-cyclical scheduler
`110 finds idle GSM frames into which requests from the
`layer 3 can be placed without interfering with the ongoing
`work of the cyclic scheduler 108.
`Downlinkedstatistics and control 112 performsthe task of
`monitoring the absolute radio frequency channel control
`number to determine the absolute power and reception
`quality as measured in accordance with GSM published
`specifications 05.08, chapter 8. The result is reported to the
`layer 3. Synchronization and MS carrier frequency are
`maintained as specified in GSM specifications 05.10, section
`6.
`
`the uplinked
`Uplink control 114 functions to control
`transmitted power of the transceiver on a frame by frame
`basis as ordered by the base station in accordance with
`published GSM specifications 05.08, section 4.7.
`FIG. 3 illustrates a block diagram of the three layer
`protocol stack 200 associated with the hardware 202 of a
`GSMtransceiver which maybeasillustrated in FIG. 1 and
`a user interface 204 which is implemented to conform to
`GSMspecifications 0.2.30 permitting different product con-
`figurations. Layer 1 is identified by the legend “L1” and
`reference numeral 106 and layer2 is identified by the legend
`“L2” and reference numeral 206. Layer 1 conformsto the
`description of FIG. 2. Layer 3 is identified by reference
`numeral 208 and performs a plurality of functions as
`described below. Speech 210 is transmitted between the
`hardware 202 and the user interface 204. Data 212 is
`transmitted between hardware 202 and the user interface
`204.
`
`The purpose of the User Interface layer 204 is to provide
`an entity which allows the user to interact with the trans-
`ceiver in a controlled way. The User Interface 204 guides the
`user through any interaction that may occur between the user
`and the other layers within the protocol stack 200. The user
`interface 204 is an application specific part of a transceiver,
`and as such, does not form a part of the protocol stack.
`Specifically, the user interface 204 is required by the GSM
`specifications to provide the user with the means to perform
`the following functions:
`(1) To Authenticate the user with the SIM card 78 via the
`personalidentification number (PIN) procedures. In orderto
`do this, the user interface 204 must make useof the services
`provided thereto by the interface between the SIM entity 224
`described below and the user interface.
`
`(4) To provide the user with a service indicator which
`indicates whether the user has GSMservice available or not,
`
`The first subtask of the radio resources entity 214 is cell
`selection which involves searchingfor all base stations. This
`is performed by determining the signal strengths for the
`candidate channels, and then, in decreasing signal strength
`order, determining whether these channels are indeed base
`station broadcast channels (BCCh). The BCCh broadcast
`information for base stations must be decoded to determine
`the suitability of the base station. It must be determined
`whetherthe base station belongs to the network requested by
`the mobility managemententity 216. If unsuccessful, details
`of all available networks are passed up to the mobility
`managemententity 216 where the decision is madeto select
`a particular network. The decision to select a particular
`network is passed downto radio resources entity 214 where
`the best base station for this network is then selected as a
`server base station. It should be noted that while the radio
`resources entity 214 has the responsibility for selecting a
`particular base station, the mobility managemententity 216
`is responsible for selecting the network. This includes han-
`dling automatic and manual networkselection.
`The next subtask is idle mode monitoring. After the
`transceiver has camped on a particular base station, radio
`(2) To allow the user to switch the transceiver into manual
`resources idle mode monitoring must then monitor the base
`or automatic network selection mode. In orderto do this, the
`station and the neighboring base stations to determine
`user interface 204 must makeuse of the services provided to
`whether the current serving base station remains suitable.
`the UI by the UI-MMinterface.
`Once the radio resources entity 214 determines that the
`(3) To allow the user to select a network fromalist of
`current base station is not the most suitable, a message is
`available networks.In orderto do this, the user interface 204
`passed to the mobility management entity 216 when then
`must make use of the services provided to the user interface
`orders the radio resources entity to perform a further cell
`by the interface between the mobility management entity
`selection on the basis of its stored information. The paging
`216 described below and the user interface.
`channel must be continuously monitored in order to see if
`the mobile is being called. The radio resources entity 214 has
`a stored TMSI and IMSI and if these correspond to an
`8
`
`5,983,366
`
`4
`making use of information provided via the interface
`between the mobility management entity 216 described
`below and the user interface 204.
`
`(5) To provide the user with an indication of the Network
`(PLMN)into which the user is currently booked. This is
`done using information providedto the user interface 214 by
`the mobility managemententity 216 via the interface ther-
`ebetween.
`
`(6) To provide the capability of making an emergencycall
`by entering the number ‘112’. In order to do this, the user
`interface 204 must make use of the services provided to the
`user interface by the mobile network entity 220 described
`below via the interface therebetween.
`
`(7) To allow the user to control the supplementary ser-
`vices entity 226 described below via a set of instructions
`defined in the GSM specifications. This is performed using
`the services provided by the supplemental services entity via
`the interface therebetween.
`
`In addition, any normal user interface 204 will provide a
`large number of additional
`features such as Call
`Establishment, Abbreviated Dialling numbers, entering,
`sending and reading short messages,etc.
`Radio resources entity 214 performs a plurality of func-
`tions specified by GSM specifications 04.07 and 04.08. The
`radio resources entity 214 is that part of layer 3 of the
`protocol stack 200 which performsthe signalling protocols
`necessary to control layer 1 and layer 2 to establish and
`maintain a wireless link between the transceiver and the
`GSM network. The radio resources entity 214 configures
`and controls layer 1 so that passive and active connections
`can be maintained between the transceiver and a base
`
`station. The responsibilities of the radio resources entity 214
`are divided into a numberof subtasks as follows:
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`
`
`
`5,983,366
`
`6
`GSMspecifications 02.11, registration and authentication
`functions as specified in GSM specification 04.08 4 and
`connection management functions.
`The mobility management entity 216 performs network
`selection. Onthe basis of information stored on the SIM card
`
`5
`then the mobility
`identity found on the paging channel,
`managemententity 216 is informed that the transceiver may
`be being paged.In fact, only the mobility managemententity
`216 knows whether the TMSI and IMSI are valid.
`CB-SHORT messageservices are sent on the cell broadcast
`channel. The radio resources entity 214 must piece these
`78 of FIG. 1, the mobility managemententity 216 is respon-
`messages together and pass complete messages to the short
`sible for indicating to the radio resources 214 which network
`messages services entity to support this service.
`should be sought by the radio resources entity 214 when
`The next task is dedicated connection establishment. The
`selecting cells upon which to camp. If the radio resources
`radio resources entity 214 is responsible for establishing a
`entity 214 is unsuccessful
`in this activity,
`the mobility
`dedicated connection when requested to do so by the mobil-
`managemententity 216 is then responsible for choosing an
`ity managemententity 216. It uses its knowledge of the base
`alternative network on the basis of information returned by
`station to control the layer 1 identified by reference numeral
`the radio resources entity 214. This may be onthe basis of
`106 in orderto establish a channel in the current serving base
`the network selection field on the SIM card 78 or user
`station using the random access procedures. The radio
`intervention, whereby the user selects a network fromalist
`resources entity 214 instructs the first layer 106 to send an
`access burst on the random access channel. It then monitors
`of networks presented in the user interface.
`A second responsibility of the mobility management
`entity 216 is to control the period for re-attempts of cell
`selection in the absence of any useful signals.
`The network selection responsibilities of the mobility
`management entity 216 also involve the storage of the
`neighboring cell information on the SIM card 78, so that the
`radio resources entity 214 can perform stored-information
`cell selection. It should be noted that the radio resources
`entity 214 does not automatically reselect other cells even
`whenthey belong to the chosen network.
`The mobility managemententity 216 performs registra-
`tion and authentication. The mobility management entity
`216 is responsible for recognizing the conditions where
`location updating should be performed, and for responding
`to mobility management messages from the base station
`pertaining to both registration and authentication. Both
`registration and authentication involve interactions with the
`SIM manager either to perform the authentication, or to
`insure that the SIM card 78 contents reflect the location
`
`the access grant channel for a response corresponding to the
`access burst. If such a response occurs, the radio resources
`214 then instructs the first Layer 1 to seize the channel
`indicated in the response. If no such response occurs, the
`process is repeated a maximum numberof times before a
`failure is indicated to the mobility managemententity 216.
`Seizing the channel consists of informing Layer 1 of the
`channelto use and requesting Layer2 identified by reference
`206 to establish multiple frame operation on the channel.
`The next task is modifying the channel. When a dedicated
`channel has been established,
`the radio resources must
`respond to instructions from the base station in the form of
`messages from Layer 3 identified by reference numeral 208
`messages to control the dedicated channel. These instruc-
`tions include changesin the physical channelused (intra-cell
`handovers), changes between base stations (inter-cell
`handovers), or minor modifications to existing channels.
`These channels involve correct sequencing of the operations
`of both the second layer and the first layer (second layer
`suspends/resumes operations of the protocol stack). These
`changes are largely transparent to the higher layers of the
`protocol stack.
`There are three possible ways in which a dedicated
`channel may be released. These are, on commandofthe base
`station, on command of the mobility management entity
`216, or when the radio resources entity 214 detects specific
`error on the link. Once again, this requires correct sequenc-
`ing of the activity of Layer 1 and Layer 2. Having released
`the channel, the radio resources entity 214 waits for instruc-
`tions from mobility management entity 216 to select an
`appropriate base station.
`The next task is dedicated mode monitoring. While a
`dedicated channel is active, the radio resources entity 214
`must control Layer 1 to perform appropriate monitoring of
`the neighboring cells in order to present measurements
`reports to the base station. This is done so that the base
`station can make suitable decisions about controlling power
`levels and whenaninter-cell handover should be performed.
`The last task is Layer 3 message transfer. Layer 3 mes-
`sages from higher level entities in the protocol stack are
`relayed through the radio resources entity on their way to
`layer 2.
`The mobility management entity 216 follows the GSM
`specifications 02.11, 04.07 and 04.08. The mobility man-
`agement entity 216 is that part of layer 3 of the protocol
`stack which performs the signalling protocols necessary to
`establish and authenticate services provided by the GSM
`network.
`
`The mobility management entity 216 performs three
`majoractivities. These are networkselection, as specified in
`
`20
`
`25
`
`30
`
`update status of the transceiver. It should be noted that the
`majority of the activities are under the control of the base
`station, and having recognized the requirements to perform
`a location update,
`the mobility management entity 216
`simply follows the instructions of the base station as speci-
`fied as mobility management comment procedures in GSM
`specifications 04.08 4.3. The exception to this general prin-
`cipal is when errors occur, when the mobility management
`entity 216 performs the actions for abnormal cases as
`specified in GSM specifications 04.08, 4.4.4.8.
`The mobility managemententity 216 also performs con-
`nection management. The mobility managemententity 216
`is responsible for recognizing the requirement for a dedi-
`cated connection with a basestation. Thisis a result of either
`a legitimate request for the connection managementlayer, or
`the result of a valid paging message from the basestation.
`A further function of the mobility management is that it
`keeps track of open connection management layer transac-
`tions ofthe third layer so that it can automatically disconnect
`the connection onceall transactions are completed, and also
`inform interested parties should the connection be inter-
`rupted.
`The call control entity 218 follows the mandatory recom-
`mendations of GSM specifications regarding call manage-
`mentand the call control aspects of GSM specification 04.07
`and 04.08. The call control entity 218 conforms closely to
`GSMspecification 04.08 5 regarding elementary procedures
`for circuit switch call control. The call control entity 218
`communicates with the mobile network entity 220 as
`described below and the mobility managemententity 216 as
`described above. More than one mobility managemententity
`9
`
`45
`
`50
`
`55
`
`60
`
`65
`
`9
`
`
`
`5,983,366
`
`7
`216 connection maybeestablished at the same time to allow
`parallel transactions. Since more than onecall control entity
`is defined in the call managementsublayer, parallel calls can
`be handled on different mobility management connections.
`Every call has a unique transaction identifier (TI), composed
`of the TI-value 0-6, and a TI flag which indicates whether
`the call is transceiver originated or transceiver terminated.
`Byusing the TI as a call identifier, up to seven outgoing and
`seven incomingcall control calls can be handled in parallel.
`The call identifier is distinguished at the mobility manage-
`mententity 216 level by having a different protocol descrip-
`tor (PD) to the same call identifier which could, for example,
`be used simultaneously by the supplementary services entity
`226.
`
`The call control entity 218 is wholly concerned with the
`stepwise progress through the different call control states for
`the call, as defined in GSM specifications 04.08, Chapter 5.
`The call control entity 218 contains the necessary error
`handling and management of timers to insure the correct
`progress through the states. In moststates, not including the
`idle and active states, a timer insures that the call control
`entity 218 remains in that state for a maximum period of
`time. These timers are described in GSM specifications
`04.08. When a timer expires, the actions described in GSM
`specification 04.08 are carried out. Any call specific
`information, for example, bearer capabilities is handled and
`stored in the mobile network entity 220 described below.
`Call establishment is controlled as follows. Before call
`
`8
`clearing by sending a disconnect message to the transceiver.
`The transceiver answers by sending a release message and
`the network concludes the procedure by sending a
`RELEASE COMPLETEmessage. In the event of a discon-
`nect message containing a PROGRESS INDICATORsaying
`that in-band information is available, then instead of sending
`a RELEASE,the transceiver enters a state which waits for
`the user to terminate the call with a Release Request. In
`practice, this can be used, for example, to allow the network
`to clear a call, and pass information to the transceiver
`explaining why the call was cleared (e.g. SIM cash limit
`exceeded). If the call was the last active call in the traffic
`channel, then the traffic channel was no longer needed and
`the mobility management entity 216 will perform a channel
`release. A tranceiverinitiated disconnect occursas a result of
`a Disconnect Request primitive, originally sent by the user
`interface. A disconnect message is sent
`to the network,
`which then responds by sending a release message to which
`the mobile answers by sending a Release Complete and
`returning this call to the idle state. When the Release or
`Release Complete message is received from the network,
`depending upon whetherthe call is released from the mobile
`or the network,a release indication is passed onto the mobile
`network entity 220, which then frees the corresponding
`transaction identifier and releases any memory orstate
`information whichrelates to the call.
`
`10
`
`15
`
`20
`
`25
`
`The call control entity 218 performs handling of miscel-
`laneous messages. The miscellaneous messages are DTMF,
`establishment can be initiated, the peer-to-peer connection
`Status, Notify, Congestion and Control Messages. The
`between the mobility management entity 216 sublayers in
`DTMF messages are used by the mobility management
`the transceiver and in the GSM network (mobile network
`DTMFstate machine for the purposes of handling DTMF
`connection) must be established. Call establishmentis ini-
`for a particular call. All of the information regarding the
`tiated on the receipt of the SETUP REQ PRIMITIVE from
`DTMFcontrol and timing is handled by the mobile network
`the mobile network entity 220 for a mobile originated call,
`entity 220. The status and status inquiry messages provide a
`or the Est Ind primitive for the mobility managemententity
`mechanism whereby the peer control entities in the trans-
`216 for a mobile terminated call. The Est Ind primitive
`ceiver and the network and inquire of each other the current
`contains the SETUP message for the network. Each call is
`status at any time. The status information contains the cause
`then handled using a state machine approach, with indepen-
`and call state for the particularcall. This is used to allow the
`dent states stored for each call in an array of CCSTATES.
`network to check for test purposesthat the call control entity
`The call establishment procedures are documented thor-
`of the transceiver is in the expected state. The call control
`oughly in GSM specifications 04.08 7.3.2 (MOCE) and
`entity 218 responds to the Status Inquire by sending the
`7.3.3 (MTCE).
`Status message to the network. The Notify message is used
`to send information from the network to the transceiver or
`Call information is processed as follows. Call information
`vice versa to indicate the information pertaining to the call,
`messages are either call modification messages or user
`such as user suspended. A received Notify messageis simply
`modification messages. Call modification is used to request
`passed on to the mobile network entity 220.
`a change in bearer capability during a call, for example, to
`switch between speech and facsimile during a call. Note that
`The mobile network entity 220 follows the requirements
`this must have been previously indicated during the setup of
`of the GSM specifications and, in particular, the call man-
`a call in question. A successful modification is indicated by
`agement aspects of GSM specifications 04.07 and 04.08 as
`50
`the receipt of MODIFY COMPLETE,andafailure by the
`well as the supplementary services recommendations in
`receipt of MODIFY REJECT primitive. The call control
`04.8x. The mobile network entity 220 lies between the user
`state changes accordingly and the messageis relayed to the
`interface 204 and the call control entity 218. The mobile
`mobile network entity 220. For this case, when the MODIFY
`network entity provides services to the user interface 204 in
`has been sent by the network, the call control 218 entity
`a more easily usable form than if the user interface were to
`decides whether the modification is acceptable with