GSM Multiframe Generation in Simulink
This example shows how to model a GSM® waveform generator to generate a 51-frame multiframe in Simulink®. For more information see GSM TDMA Frame Parameterization for Waveform Generation Example.
Introduction
This model generates a 51-frame GSM downlink multiframe with the following configuration. Downlink frames can carry normal burst (NB), frequency correction burst (FB), synchronization burst (SB) and dummy burst. The first frame is [FB NB NB NB NB Dummy NB NB], the second frame is [SB NB NB NB NB Dummy NB NB], and the next 49 frames are [NB NB NB NB NB Dummy NB NB]. Repeat this structure 3 times.
cfg1 = gsmDownlinkConfig with properties: BurstType: [FB NB NB NB NB Dummy NB NB] SamplesPerSymbol: 8 TSC: [0 1 2 3 4 5 6 7] Attenuation: [0 0 0 0 0 0 0 0] RiseTime: 2 RiseDelay: 0 FallTime: 2 FallDelay: 0 cfg2 = gsmDownlinkConfig with properties: BurstType: [SB NB NB NB NB Dummy NB NB] SamplesPerSymbol: 8 TSC: [0 1 2 3 4 5 6 7] Attenuation: [0 0 0 0 0 0 0 0] RiseTime: 2 RiseDelay: 0 FallTime: 2 FallDelay: 0 cfg3 = gsmDownlinkConfig with properties: BurstType: [NB NB NB NB NB Dummy NB NB] SamplesPerSymbol: 8 TSC: [0 1 2 3 4 5 6 7] Attenuation: [0 0 0 0 0 0 0 0] RiseTime: 2 RiseDelay: 0 FallTime: 2 FallDelay: 0
GSM 51-frame Multiframe Generation
Double click the TDMA Frame 0
block. The gsmDownlinkFrame0
function uses the gsmDownlinkConfig
function to configure the GSM downlink TDMA frame for the first frame. The gsmFrame
function generates the samples of the frame. Double click the TDMA Frame 2 to 50
block. This block generates 49 frames at once using the y = gsmFrame(cfg,49)
function call.
Setup Model
The GSM standard [1] specifies the symbol rate as R = 1625e3/6 symbols per second. Set the gsmDownlinkWaveform
blocks' sample time to match the GSM specifications. Use the gsmInfo
function to get information on the generated waveform based on the configuration object, cfg.
wfInfo = struct with fields: SymbolRate: 2.7083e+05 SampleRate: 2.1667e+06 BandwidthTimeProduct: 0.3000 BurstLengthInSymbols: 156.2500 NumBurstsPerFrame: 8 BurstLengthInSamples: 1250 FrameLengthInSamples: 10000
Setup MATLAB Function Block
Select each MATLAB Function
block and open the Property Inspector. In the Modeling tab, expand the Design group and click on the Property Inspector under the General category. In the Properties tab, make sure that Update method is set to Discrete and Sample Time is set to 51*wfInfo.FrameLengthInSamples/Rs. Close the Property Inspector.
Results
Running the simulation displays the time domain signal and the spectrogram.
Selected Bibliography
3GPP TS 45.001, Radio Access Network; Physical layer on the radio path; General description (Release 8)
3GPP TS 45.002, Radio Access Network; Multiplexing and multiple access on the radio path (Release 8)