cdma2000ForwardWaveformGenerator
Generate cdma2000 forward link waveform
Description
[
returns
the cdma2000® forward link
baseband primary waveform, waveform1
,waveform2
]
= cdma2000ForwardWaveformGenerator(cfg
)waveform1
, and the
forward link diversity waveform, waveform2
, as
defined by the parameter definition structure, cfg
.
The top-level parameters and lower-level substructures of cfg
specify
the waveform and channel properties the function uses to generate
a cdma2000 waveform. You
can generate cfg
by using the cdma2000ForwardReferenceChannels
function.
The top-level parameters of cfg
are SpreadingRate
, Diversity
, QOF
, PNOffset
, LongCodeState
, PowerNormalization
, CustomFilterCoefficients
, OversamplingRatio
, FilterType
, InvertQ
, EnableModulation
, ModulationFrequency
,
and NumChips
. To enable specific channels, add
their associated substructures, for example, the forward paging channel, FPCH
.
Note
The tables herein list the allowable values for the top-level
parameters and substructure fields. However, not all combinations
of spreading rate, radio configuration, frame length, and data rate
are supported. To ensure that the input argument is valid, use the cdma2000ForwardReferenceChannels
function.
If you input the structure fields manually, consult [1] to ensure that the input parameter combinations
are permitted.
Examples
Generate Waveform for RC2 Forward Traffic Channels
Create a parameter structure, config
, for all forward traffic channels (F-FCH and F-SCCH) that are supported by radio configuration 2.
config = cdma2000ForwardReferenceChannels('ALL-RC2')
config = struct with fields:
SpreadingRate: 'SR1'
Diversity: 'NTD'
QOF: 'QOF1'
PNOffset: 0
LongCodeState: 0
PowerNormalization: 'Off'
OversamplingRatio: 4
FilterType: 'cdma2000Long'
InvertQ: 'Off'
EnableModulation: 'Off'
ModulationFrequency: 0
NumChips: 1000
FPICH: [1x1 struct]
FAPICH: [1x1 struct]
FTDPICH: [1x1 struct]
FATDPICH: [1x1 struct]
FPCH: [1x1 struct]
FSYNC: [1x1 struct]
FBCCH: [1x1 struct]
FCACH: [1x1 struct]
FCCCH: [1x1 struct]
FCPCCH: [1x1 struct]
FQPCH: [1x1 struct]
FFCH: [1x1 struct]
FOCNS: [1x1 struct]
FSCCH: [1x1 struct]
Examine the fields for the Forward Fundamental Channel (F-FCH). The data rate is 14,400 bps and the frame length is 20 ms.
config.FFCH
ans = struct with fields:
Enable: 'On'
Power: 0
RadioConfiguration: 'RC2'
DataRate: 14400
FrameLength: 20
LongCodeMask: 0
EnableCoding: 'On'
DataSource: {'PN9' [1]}
WalshCode: 7
EnableQOF: 'Off'
PowerControlEnable: 'Off'
Generate the complex waveform using the corresponding waveform generator function.
waveform = cdma2000ForwardWaveformGenerator(config);
A waveform composed of the channels specified by each substructure of config
is generated by cdma2000ForwardWaveformGenerator
.
Generate Forward Traffic Channel for RC4
Configure a cdma2000 forward link supporting a 307.2 kbps forward supplemental channel (F-SCH) using radio configuration 4.
config = cdma2000ForwardReferenceChannels( ... "TRAFFIC-RC4-4800", ... 20000, ... "F-SCH-307200-20")
config = struct with fields:
SpreadingRate: 'SR1'
Diversity: 'NTD'
QOF: 'QOF1'
PNOffset: 0
LongCodeState: 0
PowerNormalization: 'Off'
OversamplingRatio: 4
FilterType: 'cdma2000Long'
InvertQ: 'Off'
EnableModulation: 'Off'
ModulationFrequency: 0
NumChips: 20000
FPICH: [1x1 struct]
FFCH: [1x1 struct]
FSCH: [1x1 struct]
Generate the waveform and plot its spectrum. The sample rate is equal to the product of the chip rate and the oversampling ratio. RC4 uses spreading rate 1, which is equivalent to a 1.2288 Mcps chip rate.
wv = cdma2000ForwardWaveformGenerator(config); fs = 1.2288e6 * config.OversamplingRatio;
Change the filter type to "cdma2000Short"
.
config.FilterType = "cdma2000Short";
wvShortFilt = cdma2000ForwardWaveformGenerator(config);
Use the spectrumAnalyzer
object with Method="welch"
to plot the spectrum for both waveforms. The 'cdma2000Short'
filter does not provide as much out-of-band attenuation as does the 'cdma2000Long'
filter.
sa = spectrumAnalyzer( ... SampleRate=fs, ... Method="welch", ... ChannelNames=["cdma2000Long","cdma2000Short"]); sa(wv,wvShortFilt)
Generate cdma2000 Waveform with Two Forward Supplemental Channels
Create a parameter structure that specifies a forward traffic channel. Use it to generate a forward channel waveform.
Create a parameter structure specifying a traffic channel consisting of a 4800 bps fundamental channel, 5000 chips, and a 614.4 kbps supplemental channel (F-SCH) having a 20 ms frame duration.
cfg = cdma2000ForwardReferenceChannels('TRAFFIC-RC7-4800', ... 5000,'F-SCH-614400-20');
Based on the first F-SCH, create a second F-SCH.
cfg(2).FSCH = cfg.FSCH;
Set the data rate of the second F-SCH to 38.4 kbps. Set the frame duration to 40 ms.
cfg(2).FSCH.DataRate = 38400; cfg(2).FSCH.FrameLength = 40; cfg.FSCH
ans = struct with fields:
Enable: 'On'
Power: 0
RadioConfiguration: 'RC7'
DataRate: 614400
FrameLength: 20
LongCodeMask: 0
EnableCoding: 'On'
DataSource: {'PN9' [1]}
WalshCode: 2
EnableQOF: 'Off'
CodingType: 'conv'
ans = struct with fields:
Enable: 'On'
Power: 0
RadioConfiguration: 'RC7'
DataRate: 38400
FrameLength: 40
LongCodeMask: 0
EnableCoding: 'On'
DataSource: {'PN9' [1]}
WalshCode: 2
EnableQOF: 'Off'
CodingType: 'conv'
Set the Walsh code of the second F-SCH so that it is not identical to the Walsh code of the first F-SCH.
cfg(2).FSCH.WalshCode = 3;
Generate the forward link waveform.
wv = cdma2000ForwardWaveformGenerator(cfg);
Input Arguments
cfg
— Configuration of the parameters and channels used by the waveform generator
structure
Configuration of the parameters and channels used by the waveform generator. The configuration structure is defined in these tables.
Top-Level Parameters and Substructures
Parameter Field | Values | Description |
---|---|---|
SpreadingRate | 'SR1' | 'SR3' | Spreading rate of the waveform. SR3 supports direct sequence spreading only. |
Diversity | 'NTD' | 'OTD' | 'STS' | Transmit diversity type (applicable only for |
QOF | 'QOF1' | 'QOF2' | 'QOF3' | Quasi-orthogonal function type |
PNOffset | Nonnegative scalar integer | PN offset of the base station |
LongCodeState | Positive scalar integer | Initial long code state |
PowerNormalization | 'Off' | 'NormalizeTo0dB' | 'NoiseFillTo0dB' | Power normalization of the waveform |
NumChips | Positive scalar integer | Number of chips in the waveform |
FilterType | 'cdma2000Long' | 'cdma2000Short' | 'Off' | 'Custom' | Type of output filtering |
CustomFilterCoefficients | Real vector | Custom filter coefficients, used only when the |
OversamplingRatio | Positive scalar integer | Oversampling ratio at output |
InvertQ | 'Off' | 'On' | Negate the quadrature output |
EnableModulation | 'Off' | 'On' | Enable carrier modulation |
ModulationFrequency | Nonnegative scalar integer | Carrier modulation frequency (applies when |
FPICH | Structure | See FPICH Substructure.
Optional. |
FAPICH | Structure | See FAPICH Substructure.
Optional. |
FTDPICH | Structure | See FTDPICH Substructure.
Optional. |
FATDPICH | Structure | See FATDPICH Substructure.
Optional. |
FSYNC | Structure | See FSYNC Substructure.
Optional. |
FPCH | Structure | See FPCH Substructure.
Optional. |
FCCCH | Structure | See FCCCH Substructure.
Optional. |
FCACH | Structure | See FCACH Substructure.
Optional. |
FQPCH | Structure | See FQPCH Substructure.
Optional. |
FCPCCH | Structure | See FCPCCH Substructure.
Optional. |
FBCCH | Structure | See FBCCH Substructure.
Optional. |
FFCH | Structure | See FFCH Substructure.
Optional. |
FDCCH | Structure | See FDCCH Substructure.
Optional. |
FSCCH | Structure | See FSCCH Substructure.
Optional. |
FSCH | Structure | See FSCH Substructure.
Optional. |
FOCNS | Structure | See FOCNS Substructure.
Optional. |
FPICH Substructure
Include the FPICH
substructure in the cfg
structure
to configure the forward pilot channel (F-PICH). The FPICH
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
FAPICH Substructure
Include the FAPICH
substructure in the cfg
structure
to configure the forward auxiliary pilot channel (F-APICH). The FAPICH
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
WalshLength | 64 | 128 | 256 | 512 | Walsh code length |
WalshCode | Nonnegative integer scalar, such that 0 ≤ | Walsh code number |
LongCodeMask | Positive scalar integer | Long code identifier |
FTDPICH Substructure
Include the FTDPICH
substructure in the cfg
structure
to configure the forward transmit diversity pilot Channel (F-TDPICH).
The FTDPICH
substructure contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
FATDPICH
Include the FATDPICH
substructure in the cfg
structure
to configure the forward auxiliary transmit diversity pilot channel
(F-ATDPICH). The FATDPICH
substructure contains
these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
WalshLength | 64 | 128 | 256 , 512 | Walsh code length |
WalshCode | Nonnegative integer scalar, such that 0 ≤ WalshCode ≤ WalshLength –
1 | Walsh code number |
LongCodeMask | Positive scalar integer | Long code identifier |
FSYNC Substructure
Include the FSYNC
substructure in the cfg
structure
to configure the forward sync channel (F-SYNC). The FSYNC
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
EnableCoding | 'On' | 'Off' | Enable or disable channel coding |
DataSource | Cell array: Standard
PN types are | Data source. Specify a standard PN sequence with a random
number seed, a binary vector, or a |
SyncMessage | Structure | See SyncMessage Substructure.
Optional. |
SyncMessage Substructure
If the DataSource
field of the FSYNC
substructure
is set to 'SyncMessage'
, add the SyncMessage
substructure
to the cfg
.FSYNC
substructure
to configure the sync channel message. The SyncMessage
substructure
contains these fields.
Parameter Field | Typical Value | Description |
---|---|---|
P_REV | 6 | Protocol revision |
MIN_P_REV | 6 | Minimum protocol revision |
SID | hex2dec('14B') | System identifier |
NID | 1 | Network identification |
PILOT_PN | 0 | Pilot PN offset |
LC_STATE | hex2dec('20000000000') | Long code state |
SYS_TIME | hex2dec('36AE0924C') | System time |
LP_SEC | 0 | Leap second |
LTM_OFF | 0 | Local time offset |
DAYLT | 0 | Daylight saving time indicator |
PRAT | 0 | Paging channel data rate |
CDMA_FREQ | hex2dec('2F6') | CDMA frequency |
EXT_CDMA_FREQ | hex2dec('2F6') | Extended CDMA frequency |
FPCH Substructure
Include the FPCH
substructure in the cfg
substructure
to configure the forward paging channel (F-PCH). The FPCH
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
DataRate |
| Data rate (bps) |
LongCodeMask | Positive scalar integer | Long code identifier |
WalshCode | Nonnegative integer scalar, such that 0 ≤ | Walsh code number |
EnableCoding | 'On' | 'Off' | Enable or disable channel coding |
DataSource | Cell array: Standard
PN types are Paging message options
include | Data source. Specify a standard PN sequence with a random number seed, a binary vector, or one of three paging messages. For a description of paging message contents see footnote 1. |
|
FCCCH Substructure
Include the FCCCH
substructure in the cfg
structure
to configure the forward common control channel (F-CCCH). The FCCCH
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
DataRate | 9600 | 19200 | 38400 | Data rate (bps) |
FrameLength | 5 | 10 | 20 | Frame length (ms) |
CodingType | 'conv' | 'turbo' | Type of error correction coding |
WalshCode | Nonnegative integer scalar such that 0 ≤ | Walsh code number |
LongCodeMask | Positive scalar integer | Long code identifier |
EnableCoding | 'On' | 'Off' | Enable or disable channel coding |
DataSource | Cell array: Standard PN sequence options are | Data source. Specify a standard PN sequence with a random number seed or a custom vector. |
FCACH Substructure
Include the FCACH
substructure in the cfg
structure
to configure the forward common assignment channel (F-CACH). The FCACH
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
CodingType | 'conv' | 'turbo' | Type of error correction coding |
WalshCode | Nonnegative integer scalar such that 0 ≤ | Walsh code number |
LongCodeMask | Positive scalar integer | Long code identifier |
EnableCoding | 'On' | 'Off' | Enable or disable channel coding |
DataSource | Cell array: Standard PN sequence options are | Data source. Specify a standard PN sequence with a random number seed or a custom vector. |
FQPCH Substructure
Include the FQPCH
substructure in the cfg
structure
to configure the forward quick paging channel (F-QPCH). The FQPCH
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
DataRate | 2400 | 4800 | Data rate (bps) |
WalshCode | Nonnegative integer scalar such that 0 ≤ | Walsh code number |
LongCodeMask | Positive scalar integer | Long code identifier |
EnableCoding | 'On' | 'Off' | Enable or disable channel coding |
DataSource | Cell array: Standard PN sequence options are | Data source. Specify a standard PN sequence with a random number seed or a custom vector. |
FCPCCH Substructure
Include the FCPCCH
substructure in the cfg
structure
to configure the forward common power control channel (F-CPCCH). The FCPCCH
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
WalshCode | Nonnegative integer scalar such that 0 ≤ | Walsh code number |
LongCodeMask | Positive scalar integer | Long code identifier |
EnableCoding | 'On' | 'Off' | Enable or disable channel coding |
DataSource | Cell array: Standard PN sequence options are | Data source. Specify a standard PN sequence with a random number seed or a custom vector. |
FBCCH Substructure
Include the FBCCH
substructure in the cfg
structure
to configure the forward broadcast control channel (F-BCCH). The FBCCH
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
DataRate | 4800 | 9600 | 19200 | Data rate (bps) |
CodingType | 'conv' | 'turbo' | Type of error correction coding |
WalshCode | Nonnegative integer scalar such that 0 ≤ | Walsh code number |
LongCodeMask | Positive scalar integer | Long code identifier |
EnableCoding | 'On' | 'Off' | Enable or disable channel coding |
DataSource | Cell array: Standard PN sequence options are | Data source. Specify a standard PN sequence with a random number seed or a custom vector. |
FFCH Substructure
Include the FFCH
substructure in the cfg
structure
to configure the forward fundamental traffic channel (F-FCH). The FFCH
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
RadioConfiguration | 'RC1' through 'RC9' | Radio configuration channel |
DataRate | 1200 | 1500 | 1800 | 2400 | 2700 | 3600 | 4800 | 7200 | 9600 | 14400 | Data rate (bps) |
FrameLength | 5 | 10 | 20 | Frame length (ms) |
WalshCode | Nonnegative integer scalar such that 0 ≤ | Walsh code number |
LongCodeMask | Positive scalar integer | Long code identifier |
EnableQOF | 'On' | 'Off' | Enable QOF spreading |
EnableCoding | 'On' | 'Off' | Enable or disable channel coding |
DataSource | Cell array: Standard PN sequence options are | Data source. Specify a standard PN sequence with a random number seed or a custom vector. |
PowerControlEnable | 'On' | 'Off' | Enable or disable power control subchannel |
PowerControlPower | Real scalar | Power control subchannel power (relative to F-FCH) |
PowerControlDataSource | Cell array: Standard PN sequence options are | Power control subchannel data source |
FDCCH Substructure
Include the FDCCH
substructure in the cfg
structure
to configure the forward dedicated control channel (F-DCCH). The FDCCH
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
RadioConfiguration | 'RC3' through 'RC9' | Radio configuration channel |
DataRate | 9600 | 14400 | Data rate (bps) |
FrameLength | 5 | 20 | Frame length (ms) |
WalshCode | Nonnegative integer scalar such that 0 ≤ | Walsh code number |
LongCodeMask | Positive scalar integer | Long code identifier |
EnableQOF | 'On' | 'Off' | Enable QOF spreading |
EnableCoding | 'On' | 'Off' | Enable or disable channel coding |
DataSource | Cell array: Standard PN sequence options are | Data source. Specify a standard PN sequence with a random number seed or a custom vector. |
FSCCH Substructure
Include the FSCCH
substructure in the cfg
structure
to configure the forward supplemental code channel (F-SCCH). The FSCCH
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
RadioConfiguration | 'RC1' | 'RC2' | Radio configuration channel |
WalshCode | Nonnegative integer scalar such that 0 ≤ | Walsh code number |
LongCodeMask | Positive scalar integer | Long code identifier |
EnableCoding | 'On' | 'Off' | Enable or disable channel coding |
DataSource | Cell array: Standard PN sequence options are | Data source. Specify a standard PN sequence with a random number seed or a custom vector. |
FSCH Substructure
Include the FSCH
substructure in the cfg
structure
to configure the forward supplemental channel (F-SCH). The FSCH
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
RadioConfiguration | 'RC3' | 'RC4' | 'RC5' | 'RC6' | 'RC7' | 'RC8' | 'RC9' | Radio configuration channel |
DataRate | 1200 | 1350 | 1500 | 1800 | 2400 | 2700 | 3600 | 4800 | 7200 | 9600 | 14400 | 19200 | 28800 | 38400 | 57600 | 76800 | 115200 | 153600 | 230400 | 307200 | Data rate (bps) |
FrameLength | 20 | 40 | 80 | Frame length (ms) |
CodingType | 'Conv' | 'Turbo' | Channel coding type, convolutional or turbo |
WalshCode | Nonnegative integer scalar such that 0 ≤ | Walsh code number |
LongCodeMask | Positive scalar integer | Long code identifier |
EnableQOF | 'On' | 'Off' | Enable QOF spreading |
EnableCoding | 'On' | 'Off' | Enable or disable channel coding |
DataSource | Cell array: Standard PN sequence options are | Data source. Specify a standard PN sequence with a random number seed or a custom vector. |
FOCNS Substructure
Include the FOCNS
substructure in the cfg
structure
to configure orthogonal channel noise source information. The FOCNS
substructure
contains these fields.
Parameter Field | Values | Description |
---|---|---|
Enable | 'On' | 'Off' | Enable or disable the channel |
Power | Real scalar | Relative channel power (dB) |
WalshLength | 64 | 128 | 256 | Walsh code length |
WalshCode | Nonnegative integer scalar such that 0 ≤ | Walsh code number |
Output Arguments
waveform1
— Modulated baseband waveform comprising the primary physical channels
complex vector array
Modulated baseband waveform comprising the primary cdma2000 physical channels, returned as a complex vector array.
waveform2
— Modulated baseband waveform comprising the diversity physical channels
complex vector array
Modulated baseband waveform comprising the diversity cdma2000 physical channels, returned as a complex vector array.
References
[1] 3GPP2 C.S0002–F v2.0. “Physical Layer Standard for cdma2000 Spread Spectrum Systems.” 3rd Generation Partnership Project 2.
[2] 3GPP2 C.S0004–F v1.0. “Signaling Link Access Control (LAC) Standard for cdma2000 Spread Spectrum Systems.” 3rd Generation Partnership Project 2.
Version History
Introduced in R2015b
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)