semianalytic

Calculate bit error rate using semianalytic technique

Syntax

ber = semianalytic(txsig,rxsig,modtype,M,Nsamp)
ber = semianalytic(txsig,rxsig,modtype,M,Nsamp,num,den)
ber = semianalytic(txsig,rxsig,modtype,M,Nsamp,EbNo)
ber = semianalytic(txsig,rxsig,modtype,M,Nsamp,num,den,EbNo)
[ber,avgampl,avgpower] = semianalytic(...)

Graphical Interface

As an alternative to the semianalytic function, invoke the BERTool GUI (bertool) and use the Semianalytic panel.

Description

ber = semianalytic(txsig,rxsig,modtype,M,Nsamp) returns the bit error rate (BER) of a system that transmits the complex baseband vector signal txsig and receives the noiseless complex baseband vector signal rxsig. Each of these signals has Nsamp samples per symbol. Nsamp is also the sampling rate of txsig and rxsig, in Hz. The function assumes that rxsig is the input to the receiver filter, and the function filters rxsig with an ideal integrator. modtype is the modulation type of the signal and M is the alphabet size. The table below lists the valid values for modtype and M.

Modulation SchemeValue of modtypeValid Values of M
Differential phase shift keying (DPSK) 'dpsk'2, 4
Minimum shift keying (MSK) with differential encoding'msk/diff'2
Minimum shift keying (MSK) with nondifferential encoding'msk/nondiff'2
Phase shift keying (PSK) with differential encoding, where the phase offset of the constellation is 0 'psk/diff'2, 4
Phase shift keying (PSK) with nondifferential encoding, where the phase offset of the constellation is 0 'psk/nondiff'2, 4, 8, 16, 32, or 64
Offset quaternary phase shift keying (OQPSK) 'oqpsk'4
Quadrature amplitude modulation (QAM) 'qam'4, 8, 16, 32, 64, 128, 256, 512, 1024

When the function computes the BER, it assumes that symbols are Gray-coded. The function calculates the BER for values of Eb/N0 in the range of [0:20] dB and returns a vector of length 21 whose elements correspond to the different Eb/N0 levels.

ber = semianalytic(txsig,rxsig,modtype,M,Nsamp,num,den) is the same as the previous syntax, except that the function filters rxsig with a receiver filter instead of an ideal integrator. The transfer function of the receiver filter is given in descending powers of z by the vectors num and den.

ber = semianalytic(txsig,rxsig,modtype,M,Nsamp,EbNo) is the same as the first syntax, except that EbNo represents Eb/N0, the ratio of bit energy to noise power spectral density, in dB. If EbNo is a vector, then the output ber is a vector of the same size, whose elements correspond to the different Eb/N0 levels.

ber = semianalytic(txsig,rxsig,modtype,M,Nsamp,num,den,EbNo) combines the functionality of the previous two syntaxes.

[ber,avgampl,avgpower] = semianalytic(...) returns the mean complex signal amplitude and the mean power of rxsig after filtering it by the receiver filter and sampling it at the symbol rate.

Examples

A typical procedure for implementing the semi-analytic technique is in Procedure for the Semianalytic Technique. Sample code is in Example: Using the Semianalytic Technique.

Limitations

The function makes several important assumptions about the communication system. See When to Use the Semianalytic Technique to find out whether your communication system is suitable for the semianalytic technique and the semianalytic function.

See Also

noisebw, qfunc, Performance Results via the Semianalytic Technique

References

[1] Jeruchim, Michel C., Philip Balaban, and K. Sam Shanmugan, Simulation of Communication Systems, New York, Plenum Press, 1992.

[2] Pasupathy, Subbarayan, "Minimum Shift Keying: A Spectrally Efficient Modulation," IEEE Communications Magazine, July, 1979, pp. 14-22.


© 1994-2005 The MathWorks, Inc.