C Code Generation Support List for System Objects and Functions

The following System objects and functions support code generation in MATLAB® via the MATLAB Coder™ product. To use the codegen function, you must have a MATLAB Coder license.

An asterisk (*) indicates that the reference page has usage notes and limitations for C/C++ code generation.

algdeintrlv

Restore ordering of symbols using algebraically derived permutation table

algintrlv

Reorder symbols using algebraically derived permutation table

alignsignals

Align two signals by delaying earliest signal

apskdemod

Amplitude phase shift keying (APSK) demodulation

apskmod

Amplitude phase shift keying (APSK) modulation

awgn*

Add white Gaussian noise to signal

bchgenpoly*

Generator polynomial of BCH code

bi2de

Convert binary vectors to decimal numbers

bin2gray

Convert positive integers into corresponding Gray-encoded integers

bleATTPDU

Generate BLE ATT PDU

bleATTPDUConfig

Create configuration object for BLE ATT PDU

bleATTPDUDecode

Decode BLE ATT PDU

bleChannelSelection*

Select BLE channel index

bleGAPDataBlock

Generate BLE GAP data block

bleGAPDataBlockConfig

Create configuration object for BLE GAP data block

bleGAPDataBlockDecode

Decode BLE GAP data block

bleIdealReceiver

Ideal receiver for BLE PHY waveform

bleL2CAPFrame

Generate BLE L2CAP frame

bleL2CAPFrameConfig

Create configuration object for BLE L2CAP frame

bleL2CAPFrameDecode

Decode BLE L2CAP frame

bleLLAdvertisingChannelPDU

Generate BLE LL advertising channel PDU

bleLLAdvertisingChannelPDUDecode

Decode BLE LL advertising channel PDU

bleLLControlPDUConfig

Create configuration object for BLE LL control PDU payload configuration

bleLLDataChannelPDU*

Generate BLE LL data channel PDU

bleLLDataChannelPDUConfig

Create configuration object for BLE LL data channel PDU

bleLLDataChannelPDUDecode*

Decode BLE LL data channel PDU

bleWaveformGenerator

Waveform generator for BLE PHY

bsc*

Binary symmetric channel

comm.ACPR*

Adjacent Channel Power Ratio measurements

comm.AGC*

Adaptively adjust gain for constant signal-level output

comm.AlgebraicDeinterleaver*

(To be removed) Deinterleave input symbols using algebraically derived permutation vector

comm.AlgebraicInterleaver*

(To be removed) Permute input symbols using algebraically derived permutation vector

comm.APPDecoder*

Decode convolutional code using the a posteriori probability method

comm.AWGNChannel*

Add white Gaussian noise to input signal

comm.BarkerCode*

Generate bipolar Barker code

comm.BasebandFileReader*

Read baseband signals from file

comm.BasebandFileWriter*

Write baseband signals to file

comm.BCHDecoder*

Decode data using BCH decoder

comm.BCHEncoder*

Encode data using BCH encoder

comm.BinarySymmetricChannel*

(To be removed) Introduce binary errors

comm.BlockDeinterleaver*

(To be removed) Deinterleave input symbols using permutation vector

comm.BlockInterleaver*

(To be removed) Permute input symbols using permutation vector

comm.BPSKDemodulator*

Demodulate using BPSK method

comm.BPSKModulator*

Modulate using BPSK method

comm.CarrierSynchronizer*

Compensate for carrier frequency offset

comm.CCDF*

Measure complementary cumulative distribution function

comm.CoarseFrequencyCompensator*

Compensate for frequency offset for PAM, PSK, or QAM

comm.ConstellationDiagram*

Display constellation diagram for input signals

comm.ConvolutionalDeinterleaver*

Restore ordering of symbols using shift registers

comm.ConvolutionalEncoder*

Convolutionally encode binary data

comm.ConvolutionalInterleaver*

Permute input symbols using shift registers with same property values

comm.CPFSKDemodulator*

Demodulate using CPFSK method and Viterbi algorithm

comm.CPFSKModulator*

Modulate using CPFSK method

comm.CPMCarrierPhaseSynchronizer*

(To be removed) Recover carrier phase of baseband CPM signal

comm.CPMDemodulator*

Demodulate using CPM method and Viterbi algorithm

comm.CPMModulator*

Modulate using CPM method

comm.CRCDetector*

Detect errors in input data using CRC

comm.CRCGenerator*

Generate CRC code bits and append to input data

comm.DBPSKDemodulator*

Demodulate using DBPSK method

comm.DBPSKModulator*

Modulate using DBPSK method

comm.DecisionFeedbackEqualizer

Equalize modulated signals using decision feedback filtering

comm.Descrambler*

Descramble input signal

comm.DifferentialDecoder*

Decode binary signal using differential decoding

comm.DifferentialEncoder*

Encode binary signal using differential coding

comm.DiscreteTimeVCO*

Generate variable frequency sinusoid

comm.DPD*

Digital predistorter

comm.DPDCoefficientEstimator*

Estimate memory-polynomial coefficients for digital predistortion

comm.DPSKDemodulator*

Demodulate using M-ary DPSK method

comm.DPSKModulator*

Modulate using M-ary DPSK method

comm.DQPSKDemodulator*

Demodulate using DQPSK method

comm.DQPSKModulator*

Modulate using DQPSK method

comm.ErrorRate*

Compute bit or symbol error rate of input data

comm.EVM*

Measure error vector magnitude

comm.EyeDiagram*

Display eye diagram of time-domain signals

comm.FMBroadcastDemodulator*

Demodulate broadcast FM signal

comm.FMBroadcastModulator*

Modulate broadcast FM signal

comm.FMDemodulator*

Demodulate using FM method

comm.FMModulator*

Modulate using FM method

comm.FSKDemodulator*

Demodulate using M-ary FSK method

comm.FSKModulator*

Modulate using M-ary FSK method

comm.GeneralQAMDemodulator*

Demodulate using arbitrary QAM constellation

comm.GeneralQAMModulator*

Modulate using arbitrary QAM constellation

comm.GeneralQAMTCMDemodulator*

Demodulate convolutionally encoded data mapped to arbitrary QAM constellation

comm.GeneralQAMTCMModulator*

Convolutionally encode binary data and map using arbitrary QAM constellation

comm.GMSKDemodulator*

Demodulate using GMSK method and the Viterbi algorithm

comm.GMSKModulator*

Modulate using GMSK method

comm.GMSKTimingSynchronizer*

Recover symbol timing phase using fourth-order nonlinearity method

comm.GoldSequence*

Generate Gold sequence

comm.HadamardCode*

Generate Hadamard code

comm.HDLCRCDetector*

Detect errors in input data using CRC

comm.HDLCRCGenerator*

Generate CRC code bits and append to input data

comm.HDLRSDecoder*

Decode message using Reed-Solomon decoder

comm.HDLRSEncoder*

Encode message using Reed-Solomon encoder

comm.HelicalDeinterleaver*

Restore ordering of symbols using helical array

comm.HelicalInterleaver*

Permute input symbols using helical array

comm.IntegrateAndDumpFilter*

Integrate discrete-time signal with periodic resets

comm.IQImbalanceCompensator*

Compensate for I/Q imbalance

comm.KasamiSequence*

Generate Kasami sequence

comm.LDPCDecoder*

Decode binary low-density parity-check code

comm.LDPCEncoder*

Encode binary low-density parity-check code

comm.LinearEqualizer

Equalize modulated signals using linear filtering

comm.LTEMIMOChannel*

(To be removed) Filter input signal through LTE MIMO multipath fading channel

comm.MatrixDeinterleaver*

(To be removed) Deinterleave input symbols using permutation matrix

comm.MatrixHelicalScanDeinterleaver*

(To be removed) Deinterleave input symbols by filling a matrix along diagonals

comm.MatrixHelicalScanInterleaver*

(To be removed) Permute input symbols by selecting matrix elements along diagonals

comm.MatrixInterleaver*

(To be removed) Permute input symbols using permutation matrix

comm.MemorylessNonlinearity*

Apply memoryless nonlinearity to input signal

comm.MER*

Measure modulation error ratio

comm.MIMOChannel*

Filter input signal through MIMO multipath fading channel

comm.MLSEEqualizer*

Equalize using maximum likelihood sequence estimation

comm.MSKDemodulator*

Demodulate using MSK method and the Viterbi algorithm

comm.MSKModulator*

Modulate using MSK method

comm.MSKTimingSynchronizer*

Recover symbol timing phase using fourth-order nonlinearity method

comm.MultiplexedDeinterleaver*

Deinterleave input symbols using set of shift registers with specified delays

comm.MultiplexedInterleaver*

Permute input symbols using set of shift registers with specified delays

comm.OFDMDemodulator*

Demodulate using OFDM method

comm.OFDMModulator*

Modulate using OFDM method

comm.OQPSKDemodulator*

Demodulation using OQPSK method

comm.OQPSKModulator*

Modulation using OQPSK method

comm.OSTBCCombiner*

Combine inputs using orthogonal space-time block code

comm.OSTBCEncoder*

Encode input using orthogonal space-time block code

comm.PAMDemodulator*

(Not recommended) Demodulate using M-ary PAM method

comm.PAMModulator*

(Not recommended) Modulate using M-ary PAM method

comm.PhaseFrequencyOffset*

Apply phase and frequency offsets to input signal

comm.PhaseNoise*

Apply phase noise to baseband signal

comm.PNSequence*

Generate a pseudo-noise (PN) sequence

comm.PreambleDetector*

Detect preamble in data

comm.PSKCoarseFrequencyEstimator*

(To be removed) Estimate frequency offset for PSK signal

comm.PSKDemodulator*

Demodulate using M-ary PSK method

comm.PSKModulator*

Modulate using M-ary PSK method

comm.PSKTCMDemodulator*

Demodulate convolutionally encoded data mapped to M-ary PSK signal constellation

comm.PSKTCMModulator*

Convolutionally encode binary data and map using M-ary PSK signal constellation

comm.QAMCoarseFrequencyEstimator*

(To be removed) Estimate frequency offset for QAM signal

comm.QPSKDemodulator*

Demodulate using QPSK method

comm.QPSKModulator*

Modulate using QPSK method

comm.RaisedCosineReceiveFilter*

Apply pulse shaping by decimating signal using raised cosine filter

comm.RaisedCosineTransmitFilter*

Apply pulse shaping by interpolating signal using raised cosine filter

comm.RayleighChannel*

Filter input signal through a Rayleigh multipath fading channel

comm.RBDSWaveformGenerator*

Generate RDS/RBDS waveform

comm.RectangularQAMDemodulator*

(To be removed) Demodulate using rectangular QAM signal constellation

comm.RectangularQAMModulator*

(To be removed) Modulate using rectangular QAM signal constellation

comm.RectangularQAMTCMDemodulator*

Demodulate convolutionally encoded data mapped to rectangular QAM signal constellation

comm.RectangularQAMTCMModulator*

Convolutionally encode binary data and map using rectangular QAM signal constellation

comm.RicianChannel*

Filter input signal through a Rician fading channel

comm.RSDecoder*

Decode data using Reed-Solomon decoder

comm.RSEncoder*

Encode data using Reed-Solomon encoder

comm.Scrambler*

Scramble input signal

comm.SphereDecoder*

Decode input using sphere decoder

comm.SymbolSynchronizer*

Correct symbol timing clock skew

comm.ThermalNoise*

Add thermal noise to signal

comm.TurboDecoder*

Decode input signal using parallel concatenated decoding scheme

comm.TurboEncoder*

Encode input signal using parallel concatenated encoding scheme

comm.ViterbiDecoder*

Decode convolutionally encoded data using Viterbi algorithm

comm.WalshCode*

Generate Walsh code from orthogonal set of codes

convenc

Convolutionally encode binary data

de2bi

Convert decimal numbers to binary vectors

deintrlv

Restore ordering of symbols

doppler*

Construct Doppler spectrum structure

dpskdemod

Differential phase shift keying demodulation

dpskmod

Differential phase shift keying modulation

dsp.ArrayPlot*

Display vectors or arrays

dsp.DCBlocker*

Block DC component (offset) from input signal

dsp.SpectrumAnalyzer*

Display frequency spectrum of time-domain signals

dsp.TimeScope*

Time domain signal display and measurement

dvbs2ldpc*

Low-density parity-check codes from DVB-S.2 standard

dvbsapskdemod

DVB-S2/S2X/SH standard-specific amplitude phase shift keying (APSK) demodulation

dvbsapskmod

DVB-S2/S2X/SH standard-specific amplitude phase shift keying (APSK) modulation

finddelay

Estimate delay(s) between signals

fogpl*

RF signal attenuation due to fog and clouds

fspl*

Free space path loss

gaspl*

RF signal attenuation due to atmospheric gases

genqamdemod

General quadrature amplitude demodulation

genqammod

General quadrature amplitude modulation

gray2bin

Convert Gray-encoded positive integers to corresponding Gray-decoded integers

gsmCheckTimeMask*

Inspect GSM burst against time mask

gsmDownlinkConfig*

Create GSM downlink TDMA frame configuration object

gsmFrame

Create GSM waveform

gsmInfo

View GSM waveform information

gsmUplinkConfig*

Create GSM uplink TDMA frame configuration object

helscandeintrlv

Restore ordering of symbols in helical pattern

helscanintrlv

Reorder symbols in helical pattern

intrlv

Reorder sequence of symbols

iqcoef2imbal

Convert compensator coefficient to amplitude and phase imbalance

iqimbal

Apply I/Q imbalance to input signal

iqimbal2coef

Convert I/Q imbalance to compensator coefficient

istrellis

True for valid trellis structure

matdeintrlv

Restore ordering of symbols by filling matrix by columns and emptying it by rows

matintrlv

Reorder symbols by filling matrix by rows and emptying it by columns

mil188qamdemod

MIL-STD-188-110 B/C standard-specific quadrature amplitude demodulation

mil188qammod

MIL-STD-188-110 B/C standard-specific quadrature amplitude modulation (QAM)

oct2dec

Convert octal to decimal numbers

ofdmdemod

Demodulate time-domain signal using orthogonal frequency division multiplexing (OFDM)

ofdmmod

Modulate frequency-domain signal using orthogonal frequency division multiplexing (OFDM)

pamdemod

Pulse amplitude demodulation

pammod

Pulse amplitude modulation

poly2trellis*

Convert convolutional code polynomials to trellis description

qamdemod

Quadrature amplitude demodulation

qammod

Quadrature amplitude modulation

rainpl*

RF signal attenuation due to rainfall

randi*

Uniformly distributed pseudorandom integers

rangeangle*

Range and angle calculation

rcosdesign*

Raised cosine FIR pulse-shaping filter design

rsgenpoly*

Generator polynomial of Reed-Solomon code

rsgenpolycoeffs*

Generator polynomial coefficients of Reed-Solomon code

tpcdec*

Turbo product code (TPC) decoder

tpcenc*

Turbo product code (TPC) encoder

vitdec

Convolutionally decode binary data using Viterbi algorithm

wgn*

Generate white Gaussian noise samples

zadoffChuSeq

Generate root Zadoff-Chu sequence