Products & Services Solutions Academia Support User Community Company

Learn more about Communications Blockset   

Version 3.0 (R14) Communications Blockset Software

This table summarizes what's new in Version 3.0 (R14):

New Features and ChangesVersion Compatibility ConsiderationsFixed Bugs and Known ProblemsRelated Documentation at Web Site
Yes
Details below
Yes
Summary
Fixed bugs
No

New features and changes introduced in this version are

Timing Phase Recovery

The blocks in the table below perform timing phase recovery, determining the best instant within a symbol period to sample a signal at the receiver. Sampling at the best instant improves the receiver's performance on a noisy signal. All blocks listed in the table are in the Timing Recovery sublibrary of the Synchronization library.

BlockPurpose
Early-Late Gate Timing RecoveryRecover the symbol timing phase using the early-late gate method
Gardner Timing RecoveryRecover the symbol timing phase using Gardner's method
MSK-Type Signal Timing RecoveryRecover the symbol timing phase using a fourth-order nonlinearity method
Mueller-Muller Timing RecoveryRecover the symbol timing phase using the Mueller-Muller method
Squaring Timing RecoveryRecover the symbol timing phase using a squaring method

For more information and an example, see Timing Phase Recovery in the Using the Communications Blockset documentation. For demos, enter gardner_vfracdelay or msk_sync in the MATLAB Command Window.

Carrier Phase Recovery

The blocks in the table below perform carrier phase recovery. They are in the Carrier Recovery sublibrary of the Synchronization library.

BlockPurpose
M-PSK Phase RecoveryRecover the carrier phase using the M-Power method
CPM Phase RecoveryRecover the carrier phase using the 2P-Power method

For more information and an example, see Carrier Phase Recovery in the Using the Communications Blockset documentation. For a demo, enter msk_sync in the MATLAB Command Window.

Equalizers

The blocks in the table below enable you to equalize a signal using a linear equalizer, a decision feedback equalizer, or a maximum-likelihood sequence estimation equalizer based on the Viterbi algorithm. All blocks listed in the table are in the Equalizers library.

BlockPurpose
CMA EqualizerEqualize using the constant modulus algorithm
LMS Decision Feedback EqualizerEqualize using a decision feedback equalizer that updates weights with the LMS algorithm
LMS Linear EqualizerEqualize using a linear equalizer that updates weights with the LMS algorithm
MLSE EqualizerEqualize using the Viterbi algorithm
Normalized LMS Decision Feedback EqualizerEqualize using a decision feedback equalizer that updates weights with the normalized LMS algorithm
Normalized LMS Linear EqualizerEqualize using a linear equalizer that updates weights with the normalized LMS algorithm
RLS Decision Feedback EqualizerEqualize using a decision feedback equalizer that updates weights with the RLS algorithm
RLS Linear EqualizerEqualize using a linear equalizer that updates weights with the RLS algorithm
Sign LMS Decision Feedback EqualizerEqualize using a decision feedback equalizer that updates weights with the signed LMS algorithm
Sign LMS Linear EqualizerEqualize using a linear equalizer that updates weights with the signed LMS algorithm
Variable Step LMS Decision Feedback EqualizerEqualize using a decision feedback equalizer that updates weights with the variable-step-size LMS algorithm
Variable Step LMS Linear EqualizerEqualize using a linear equalizer that updates weights with the variable-step-size LMS algorithm

For more information, see Equalizers. For an example, see the new Defense Communications: US MIL-STD-188-110B demo (milstd_188110Bmodel).

Filtering and Pulse Shaping

The blocks in the table below perform filtering and pulse shaping. All blocks listed in the table are in the Comm Filters library.

BlockPurpose
Gaussian FilterFilter the input signal, possibly downsampling, using a Gaussian FIR filter
Ideal Rectangular Pulse FilterShape the input signal using ideal rectangular pulses
Raised Cosine Receive FilterFilter the input signal, possibly downsampling, using a raised cosine FIR filter
Raised Cosine Transmit FilterUpsample and filter the input signal using a raised cosine FIR filter

Trellis-Coded Modulation

The blocks in the table below perform trellis-coded modulation. All blocks listed in the table are in the TCM sublibrary of Digital Baseband Modulation, in the Modulation library.

BlockPurpose
General TCM DecoderDecode trellis-coded modulation data, mapped using an arbitrary constellation
General TCM EncoderConvolutionally encode binary data and map using an arbitrary constellation
M-PSK TCM DecoderDecode trellis-coded modulation data, modulated using the PSK method
M-PSK TCM EncoderConvolutionally encode binary data and modulate using the PSK method
Rectangular QAM TCM DecoderDecode trellis-coded modulation data, modulated using the QAM method
Rectangular QAM TCM EncoderConvolutionally encode binary data and modulate using the QAM method

Utility Blocks for Working with Delays

The blocks in the table below help you compute or manipulate the delay through one or more blocks in your model. This is especially useful when you are comparing two signals to compute error rates, or when you need to align boundaries of codewords or other groupings with Simulink frame boundaries. All blocks listed in the table are in the Utility Blocks library.

BlockPurpose
Align SignalsAlign two signals by finding the delay between them
Find DelayFind the delay between two signals

The reference pages for these blocks include examples of how to use them in a variety of situations.

Enhanced Source Coding Blocks

The new Quantizing Encoder and Quantizing Decoder blocks replace the older Sampled Quantizer Encode and Quantizer Decode blocks, which are obsolete. The new blocks perform scalar quantization encoding and decoding operations, respectively. The new blocks can process frame-based column vectors in addition to other kinds of vectors. The new Quantizing Encoder block does not require you to specify the vector length or sample time as parameters in the dialog box.

The older encoder produced a third output signal that represented the mean square distortion, while the new Quantizing Encoder block does not. The older encoder produced a discrete-time output signal even if its input was continuous-time, whereas the new Quantizing Encoder block preserves sample times.

AWGN Channel Enhancement for RSim Target

Selected parameters of the AWGN Channel block are now compatible with the Real-Time Workshop rapid simulation (RSim) target. This means that if you use Real-Time Workshop to build an RSim executable, then you can tune selected parameters without recompiling the model. This is useful for Monte Carlo simulations in which you run the simulation multiple times (perhaps on multiple computers) with different amounts of noise. The table below indicates, for different modes of the block, which parameters are tunable.

ModeTunable Parameters
Eb/NoEb/No, Input signal power
Es/NoEs/No, Input signal power
SNRSNR, Input signal power
Variance from maskVariance

For more information about the RSim target, see the Real-Time Workshop documentation set.

New Demos

New demos in Release 14 are listed in the table below. You can open the demos by finding them in the Demos pane of the MATLAB Help browser or by entering the corresponding model names in the MATLAB Command Window.

TitleModel Name
Convolutional Encoder with Uncoded Bits and Feedback conv_encoderdemo
Soft-Decision GMSK Demodulator gmsk_softdecision
Adjacent and Co-Channel Interference adjcochanint
Adaptive Equalization Using Embedded MATLAB equalizer_eml
Gardner Timing Phase Recovery gardner_vfracdelay
MSK Signal Recovery msk_sync
IEEE 802.11a WLAN Physical Layer wlan80211a
Physical Layer Model of the cdma2000® Standard cdma2000_phlayer
Defense Communications: US MIL-STD-188-110B milstd_188110Bmodel

Demonstration models have also been reorganized into categories to make it easier for you to find relevant demos. You can view the categories using the Demos pane of the MATLAB Help browser.

Changes in BCH Encoder and BCH Decoder

The BCH Decoder block has been changed such that the second output port is optional and the error-correction capability is no longer a parameter. Also, this block and the BCH Encoder block no longer accept sample-based inputs.

Compatibility Considerations

If you built models with earlier versions of these two blocks, then you should

Changes in Fading Channel Blocks

Compatibility Considerations

The Multipath Rayleigh Fading Channel and Rician Fading Channel blocks are designed to process only sample-based scalars or frame-based column vectors. In Release 13, the blocks mistakenly accepted sample-based column vectors as input. In Release 14, the blocks correctly produce an error message if the input signal is a sample-based vector or a matrix.

Changes in Integrators

The new Communications Filters library contains a new Integrate and Dump block and a new Windowed Integrator block.

Compatibility Considerations

These blocks behave differently compared to the respective blocks of the same names in Release 13.

The new Integrate and Dump block

The new Windowed Integrator block

To learn more about the new blocks, see the Integrate and Dump and Windowed Integrator online reference pages, respectively.

Legacy Models Containing Integrator Blocks.   If you built models with the older Integrate and Dump block or the older Windowed Integrator block, then the block is unchanged there. You can update the block manually by replacing it with the newer block from the Communications Filters library. You might need to change parameters or other parts of your model to make the new block fit into your model.

To find the older blocks in their default library setting, type comminteg2 in the MATLAB Command Window.

Change in Error Rate Calculation Block

Compatibility Considerations

If you set Output data to Workspace in the Error Rate Calculation block, then the variable containing the output data resides in the base MATLAB workspace. In previous releases, the variable resided in the calling workspace.

This change is relevant if you invoke the simulation from a function. If you need to access the output data within the function, use evalin. For example, in a function, the command below accesses a variable called ErrorVec in the base MATLAB workspace and assigns its value to a variable by the same name in the function workspace.

ErrorVec = evalin('base','ErrorVec;');

If you invoke the simulation directly from the model window or by entering a sim command in the MATLAB Command Window, then the change in behavior of the Error Rate Calculation block does not affect you.

Version 1.3 Libraries Removed

Compatibility Considerations

The block libraries from the Communications Toolbox Version 1.3 (Release 10) are no longer installed as part of Release 14. The block libraries from the Communications Toolbox Version 1.5 (Release 11) might be removed from a future release.

Obsolete Blocks

Compatibility Considerations

The table below lists blocks from Release 13 that are obsolete as of Release 14. In particular, all digital passband modulation, digital passband demodulation, analog baseband modulation, and analog baseband demodulation blocks are obsolete. In place of digital passband blocks, use their digital baseband counterparts. In place of analog baseband blocks, use their analog passband counterparts.

Where applicable, the second column lists blocks that provide similar functionality. In some cases, the similar block requires different parameter settings, data formats, or signal attributes compared to the original block. Therefore, you should read the documentation for the similar block before using it in your model.

Obsolete BlockSimilar Block(s), if Any
Continuous-Time Eye and Scatter Diagrams Discrete-Time Eye Diagram Scope, Discrete-Time Scatter Plot Scope, Discrete-Time Signal Trajectory Scope
CPFSK Demodulator Passband CPFSK Demodulator Baseband
CPFSK Modulator Passband CPFSK Modulator Baseband
CPM Demodulator Passband CPM Demodulator Baseband
CPM Modulator Passband CPM Modulator Baseband
Discrete Modulo Integrator  
DPCM Decoder  
DPCM Encoder  
DSB AM Demodulator Baseband DSB AM Demodulator Passband
DSB AM Modulator Baseband DSB AM Modulator Passband
DSBSC AM Demodulator Baseband DSBSC AM Demodulator Passband
DSBSC AM Modulator Baseband DSBSC AM Modulator Passband
Enabled Quantizer Encode Quantizing Encoder
FM Demodulator Baseband FM Demodulator Passband
FM Modulator Baseband FM Modulator Passband
General QAM Demodulator Passband General QAM Demodulator Baseband
General QAM Modulator Passband General QAM Modulator Baseband
GMSK Demodulator Passband GMSK Demodulator Baseband
GMSK Modulator Passband GMSK Modulator Baseband
M-DPSK Demodulator Passband M-DPSK Demodulator Baseband
M-DPSK Modulator Passband M-DPSK Modulator Baseband
M-FSK Demodulator Passband M-FSK Demodulator Baseband
M-FSK Modulator Passband M-FSK Modulator Baseband
Modulo Integrator  
M-PAM Demodulator Passband M-PAM Demodulator Baseband
M-PAM Modulator Passband M-PAM Modulator Baseband
M-PSK Demodulator Passband M-PSK Demodulator Baseband
M-PSK Modulator Passband M-PSK Modulator Baseband
MSK Demodulator Passband MSK Demodulator Baseband
MSK Modulator Passband MSK Modulator Baseband
OQPSK Demodulator Passband OQPSK Demodulator Baseband
OQPSK Modulator Passband OQPSK Modulator Baseband
PM Demodulator Baseband PM Demodulator Passband
PM Modulator Baseband PM Modulator Passband
Quantizer Decode Quantizing Decoder
Rectangular QAM Demodulator Passband Rectangular QAM Demodulator Baseband
Rectangular QAM Modulator Passband Rectangular QAM Modulator Baseband
Sampled Quantizer Encode Quantizing Encoder
SSB AM Demodulator Baseband SSB AM Demodulator Passband
SSB AM Modulator Baseband SSB AM Modulator Passband
Triggered Read From File From File (Simulink)
Triggered Write to File To File (Simulink)

Blocks Now in Different Library Locations

Compatibility Considerations

The table below lists blocks that reside in different libraries in Release 14, compared to Release 13. If you used these blocks in models that you saved in Release 13, then the blocks will still work in Release 14. However, you should be aware of the changed locations in case you look for these blocks in Release 14 in the library windows or the Simulink Library Browser.

BlockRelease 13 LocationRelease 14 Location
Baseband PLL Synchronization Components sublibrary of Synchronization
Binary Error Pattern Generator Data Sources sublibrary of Comm Sources Noise Generators sublibrary of Comm Sources
Charge Pump PLL Synchronization Components sublibrary of Synchronization
Complex Phase Difference Sequence Operations sublibrary of Basic Comm Functions Utility Blocks
Complex Phase Shift Sequence Operations sublibrary of Basic Comm Functions Utility Blocks
Discrete-Time VCO Controlled Sources sublibrary of Comm Sources Components sublibrary of Synchronization
Integrate and Dump Integrators sublibrary of Basic Comm Functions Communications Filters
Linearized Baseband PLL Synchronization Components sublibrary of Synchronization
Phase-Locked Loop Synchronization Components sublibrary of Synchronization
Voltage-Controlled Oscillator Controlled Sources sublibrary of Comm Sources Components sublibrary of Synchronization
Windowed Integrator Integrators sublibrary of Basic Comm Functions Communications Filters

Utility Functions Library Renamed.   The Utility Functions library is now called Utility Blocks.

Contents of Basic Comm Function Library Moved.   The Basic Comm Functions library, which consisted of the Integrators sublibrary and the Sequence Operations sublibrary, is no longer in the Communications Blockset. Sequence Operations has become a top-level library. The Integrate and Dump block and the Windowed Integrator block, formerly in the Integrators sublibrary, are now in the Communications Filters library. The Discrete Modulo Integrator and Modulo Integrator blocks are now obsolete.

Changes in Block Dialog Boxes

A few blocks have renamed some of their parameters or made other dialog box changes.

Compatibility Considerations

Legacy models might issue warnings when you first open them with Release 14. After you resave the models with Release 14, the warnings will not recur. Specific changes are listed below.

BlockRelease 13 CharacteristicChange in Release 14
BCH Decoder Show number of errors check box Output number of corrected errors check box
Binary-Output RS Decoder Output port for number of corrected errors check box Output number of corrected errors check box
Discrete-Time Eye Diagram Scope Dialog box uses check boxes to show or hide groups of parameters Dialog box uses tabbed panels to organize parameters
Discrete-Time Scatter Plot Scope
Discrete-Time Signal Trajectory Scope
Discrete-Time VCO Oscillation frequency parameter Renamed as Quiescent frequency parameter
Voltage-Controlled Oscillator

Changes in commstartup Function

The commstartup function, which changes the default Simulink model settings to values more appropriate for the simulation of communication systems, has changed some of its settings.

Compatibility Considerations

When you run commstartup, it

Simulation Settings of Legacy Models

Compatibility Considerations

Your legacy models might issue warnings if they use settings other than the ones listed in Changes in commstartup Function above. You can suppress the warnings by changing certain settings and resaving the model.

Discrete Solver.   If you have legacy models that issue a warning like

Warning: The model 'untitled' does not have continuous states,
hence using the solver 'VariableStepDiscrete' instead of the
solver 'ode45' specified in the Configuration Parameters dialog.

when you start the simulation in R14, then consider changing the solver to a discrete solver and resaving the model. To change the solver, use the Configuration Parameters option on the model window's Simulation menu.

Sample Time of Source Blocks.   Some Communications Blockset blocks internally inherit sample times, which can be a useful and valid modeling technique. If you have legacy models that issue a warning like

Warning: Source 'untitled/DSP Constant' specifies that its sample
time (-1) should be back-inherited. You should explicitly specify
the sample time of sources.

when you start the simulation in R14, then consider changing the diagnostic setting manually and resaving the model. To change the setting manually, choose the Configuration Parameters option on the model window's Simulation menu, expand Diagnostics in the left pane, select Sample Time in the left pane, and then set Source block specifies -1 sample time to none in the right pane.

  


Related Products & Applications

Learn more about Simulink through this collection of videos, articles, technical literature and the Getting Started with Simulink Guide.

 © 1984-2009- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS