Академический Документы
Профессиональный Документы
Культура Документы
All the processing has been done in MatLab (mixed with some manual calculations). I chose
to use MatLab instead of trying to write new GnuRadio blocks because:
- I have more experience with MatLab and the available time was short
- The files are relatively short and to get the maximum amount of information out of
them they cannot be processed the same way one would do with data from the air.
- Several of the functions needed (channel impulse response calculation, viterbi
detection, block (de)coding) where already available in GSMsim, which runs in
MatLab.
I have submitted all the MatLab files that I have used. It is very easy to single step through a
MatLab function to learn how it works. I believe that the files can be used equally well with
Octave, but the functions from the signal processing tool box might have to be replaced if you
do not have it installed.
Message header:
L2 pseudo length = 18 octets
L3 protocol discriminator = Radio Resource Management
Message type = SYSTEM INFORMATION TYPE 3 [44.018: 9.1.35]
Cell identity = 0x3b2d
Location area identifier:
Mobile Country Code = 272 = “Ireland”
Mobile Network Code = 02 = “O2 / Digifone mmO2”
Location Area Code = 0x3aa8
Control channel description [3GPP TS 44.018: 10.5.2.11]:
MSCR = 1 = “MSC is Release ’99 onwards”
ATT = 1 = “MSs in the cell shall apply IMSI attach and detach procedure”
BS-AG-BLKS-RE = 2 = “2 blocks reserved for access grant”
CCCH_CONF = 0 = “1 basic physical channel for CCCH, not combined with SDCCH”
BS-PA-MFRMS = 3 = “5 multiframes periods for PAGING REQUEST“
CBQ3 = 0 = “/u mode not supported”
T3212 timeout vaule = 60
Cell options (BCCH):
Radio link timeout = 4
DTX = 1 = “The MS shall use uplink discontinuous transmission”
PWRC = 1
DN-IND = 0 = “Dynamic AFRCN mapping not used”
Cell Selection Parameters [44.018: 10.5.2.4]:
MS-TXPWR-MAX-CCH = 5
CELL-RESELECT-HYSTERESIS = 3
RXLEV-ACCESS-MIN = 6
NECI = 0
ACS = 0
RACH Control Parameters [10.5.2.29]:
RE = 1 = “Call reestablishment not allowed in the cell”
CELL BARR ACCESS = 0 = “Cell is not barred”
Tx-Integer = 14 = “32 slots used to spread transmission”
Max retrans = 2 = “Maximum 4 retransmissions”
Access Control Class = 0
The above message contents were manually interpreted from the layer 3 data extracted from
the sample file by the MatLab script bcch.m. The location of BCCH bursts were manually
calculated based on SCH information.
Physical channel 7
This channel is sending mostly dummy bursts, but there are 2 normal bursts in the file, 26
frames apart. There is not enough information to tell what data is being transferred. Run
MatLab script phych7.m to have a look at the bursts.
GSMSP_20070204_robert_dbsrx_941.0MHz_128.cfile
Physical channel 0
Frequency Correction Channel (FCCH)
The file contains 3 frequency correction bursts. They start at sample 14939, 64937 and
114936 (sample numbers are after re-sampling). The MatLab script fcch.m shows their
location and calculates the frequency error to be 7819 Hz, 7806 Hz and 7833 Hz. The error
should probably the same for all of them, but the calculation method is not that accurate.
Message 3:
Protocol discriminator = 6 = Radio Resource Management [04.07: 11.2.3.1.1]
Message type = 0x21 = PAGING REQUEST TYPE 1 [44.018: 10.4][44.018: 9.1.22]
Page mode = 0 = Normal [44.018: 10.5.2.26]
First channel needed = 2 = TCH/F
Second channel needed = 2 = TCH/F
Mobile identity 1 = TMSI 0x2402810b [24.008: 10.5.1.4]
Mobile identity 2 = TMSI 0x18000312 [24.008: 10.5.1.4]
Message 4:
Protocol discriminator = 6 = Radio Resource Management [04.07: 11.2.3.1.1]
Message type = 0x21 = PAGING REQUEST TYPE 1 [44.018: 10.4]
Page mode = 0 = Normal [44.018: 10.5.2.26]
First channel needed = 2 = TCH/F
Second channel needed = 0
Mobile identity 1 = TMSI 2e020e94
Physical channel 1- 7
All these channels are sending dummy bursts only.
View them by running for example phych1.m.
GSMSP_20070204_robert_dbsrx_953.6MHz_64.cfile
Physical channel 0
Frequency Correction Channel (FCCH) information
The file contains 2 frequency correction bursts. They start at sample 25695 and 75700
(sample numbers are after re-sampling). The MatLab script fcch.m shows their location and
calculates the frequency error to be 8047 Hz and 8050 Hz. The error should probably the
same for all of them, but the calculation method is not that accurate.