What Is the Communications Toolbox?
Expected Background
Studying Components of a Communication System
Modulating a Random Signal
Plotting Signal Constellations
Pulse Shaping Using a Raised Cosine Filter
Using a Convolutional Code
Simulating a Communication System
Using BERTool to Run Simulations
Varying Parameters and Managing a Set of Simulations
Learning More
Online Help
Demos
The MathWorks Online
Examples
Signal Sources
White Gaussian Noise
Random Symbols
Random Integers
Random Bit Error Patterns
Performance Evaluation
Performance Results via Simulation
Using Simulated Data to Compute Bit and Symbol Error Rates
Example: Computing Error Rates
Comparison of Symbol Error Rate and Bit Error Rate
Performance Results via the Semianalytic Technique
When to Use the Semianalytic Technique
Procedure for the Semianalytic Technique
Example: Using the Semianalytic Technique
Theoretical Performance Results
Plotting Theoretical Error Rates
Comparing Theoretical and Empirical Error Rates
Error Rate Plots
Creating Error Rate Plots Using semilogy
Curve Fitting for Error Rate Plots
Example: Curve Fitting for an Error Rate Plot
Eye Diagrams
Example: Eye Diagrams
Scatter Plots
Example: Scatter Plots
Selected Bibliography for Performance Evaluation
BERTool: A Bit Error Rate Analysis GUI
Summary of Features
Opening BERTool
The BERTool Environment
Components of BERTool
Interaction Among BERTool Components
Computing Theoretical BERs
Example: Using the Theoretical Panel in BERTool
Available Sets of Theoretical BER Data
Using the Semianalytic Technique to Compute BERs
Example: Using the Semianalytic Panel in BERTool
Procedure for Using the Semianalytic Panel in BERTool
Running MATLAB Simulations
Example: Using a MATLAB Simulation with BERTool
Varying the Stopping Criteria
Plotting Confidence Intervals
Fitting BER Points to a Curve
Preparing Simulation Functions for Use with BERTool
Requirements for Functions
Template for a Simulation Function
Example: Preparing a Simulation Function for Use with BERTool
Running Simulink Simulations
Example: Using a Simulink Model with BERTool
Varying the Stopping Criteria
Preparing Simulink Models for Use with BERTool
Requirements for Models
Tips for Preparing Models
Example: Preparing a Model for Use with BERTool
Managing BER Data
Exporting Data Sets or BERTool Sessions
Importing Data Sets or BERTool Sessions
Managing Data in the Data Viewer
Source Coding
Quantizing a Signal
Representing Partitions
Representing Codebooks
Scalar Quantization Example 1
Scalar Quantization Example 2
Determining Which Interval Each Input Is In
Optimizing Quantization Parameters
Example: Optimizing Quantization Parameters
Differential Pulse Code Modulation
DPCM Terminology
Representing Predictors
Example: DPCM Encoding and Decoding
Optimizing DPCM Parameters
Example: Comparing Optimized and Nonoptimized DPCM Parameters
Companding a Signal
Example: A µ-Law Compander
Huffman Coding
Creating a Huffman Code Dictionary
Example: Creating and Decoding a Huffman Code
Arithmetic Coding
Representing Arithmetic Coding Parameters
Example: Creating and Decoding an Arithmetic Code
Selected Bibliography for Source Coding
Error-Control Coding
Block Coding
Block Coding Features of the Toolbox
Block Coding Terminology
Representing Words for Reed-Solomon Codes
Parameters for Reed-Solomon Codes
Creating and Decoding Reed-Solomon Codes
Representing Words for BCH Codes
Parameters for BCH Codes
Creating and Decoding BCH Codes
Representing Words for Linear Block Codes
Parameters for Linear Block Codes
Creating and Decoding Linear Block Codes
Performing Other Block Code Tasks
Selected Bibliography for Block Coding
Convolutional Coding
Convolutional Coding Features of the Toolbox
Polynomial Description of a Convolutional Encoder
Trellis Description of a Convolutional Encoder
Creating and Decoding Convolutional Codes
Examples of Convolutional Coding
Selected Bibliography for Convolutional Coding
Interleaving
Block Interleavers
Block Interleaving Features of the Toolbox
Example: Block Interleavers
Convolutional Interleavers
Convolutional Interleaving Features of the Toolbox
Example: Convolutional Interleavers
Delays of Convolutional Interleavers
Selected Bibliography for Interleaving
Modulation
Modulation Features of the Toolbox
Baseband Versus Passband Simulation
Modulation Terminology
Analog Modulation
Representing Analog Signals
Analog Modulation Example
Digital Modulation
Representing Digital Signals
Baseband Modulated Signals Defined
Examples of Digital Modulation and Demodulation
Plotting Signal Constellations
Selected Bibliography for Modulation
Special Filters
Noncausality and the Group Delay Parameter
Example: Compensating for Group Delays When Analyzing Data
Designing Hilbert Transform Filters
Example with Default Parameters
Filtering with Raised Cosine Filters
Sampling Rates
Designing Filters Automatically
Specifying Filters Using Input Arguments
Controlling the Rolloff Factor
Controlling the Group Delay
Combining Two Square-Root Raised Cosine Filters
Designing Raised Cosine Filters
Sampling Rates
Example Designing a Square-Root Raised Cosine Filter
Other Options in Filter Design
Selected Bibliography for Special Filters
Channels
Channel Features of the Toolbox
AWGN Channel
Describing the Noise Level of an AWGN Channel
Fading Channels
Overview of Fading Channels
Specifying Fading Channels
Configuring Channel Objects
Using Fading Channels
Examples Using Fading Channels
Using the Channel Visualization Tool
Binary Symmetric Channel
Example: Introducing Noise in a Convolutional Code
Selected Bibliography for Channels
Equalizers
Equalizer Features of the Toolbox
Overview of Adaptive Equalizer Classes
Symbol-Spaced Equalizers
Fractionally Spaced Equalizers
Decision-Feedback Equalizers
Using Adaptive Equalizer Functions and Objects
Basic Procedure for Equalizing a Signal
Example Illustrating the Basic Procedure
Learning More About Adaptive Equalizer Functions
Specifying an Adaptive Algorithm
Choosing an Adaptive Algorithm
Indicating a Choice of Adaptive Algorithm
Accessing Properties of an Adaptive Algorithm
Specifying an Adaptive Equalizer
Defining an Equalizer Object
Accessing Properties of an Equalizer
Using Adaptive Equalizers
Equalizing Using a Training Sequence
Equalizing in Decision-Directed Mode
Delays from Equalization
Equalizing Using a Loop
Using MLSE Equalizers
Equalizing a Vector Signal
Equalizing in Continuous Operation Mode
Using a Preamble or Postamble
Selected Bibliography for Equalizers
Galois Field Computations
Galois Field Terminology
Representing Elements of Galois Fields
Creating a Galois Array
Example: Creating Galois Field Variables
Example: Representing Elements of GF(8)
How Integers Correspond to Galois Field Elements
Example: Representing a Primitive Element
Primitive Polynomials and Element Representations
Arithmetic in Galois Fields
Example: Addition and Subtraction
Example: Multiplication
Example: Division
Example: Exponentiation
Example: Elementwise Logarithm
Logical Operations in Galois Fields
Testing for Equality
Testing for Nonzero Values
Matrix Manipulation in Galois Fields
Basic Manipulations of Galois Arrays
Basic Information About Galois Arrays
Linear Algebra in Galois Fields
Inverting Matrices and Computing Determinants
Computing Ranks
Factoring Square Matrices
Solving Linear Equations
Signal Processing Operations in Galois Fields
Filtering
Convolution
Discrete Fourier Transform
Polynomials over Galois Fields
Addition and Subtraction of Polynomials
Multiplication and Division of Polynomials
Evaluating Polynomials
Roots of Polynomials
Roots of Binary Polynomials
Minimal Polynomials
Manipulating Galois Variables
Determining Whether a Variable Is a Galois Array
Extracting Information from a Galois Array
Speed and Nondefault Primitive Polynomials
Selected Bibliography for Galois Fields
Galois Fields of Odd Characteristic
Galois Field Terminology
Representing Elements of Galois Fields
Exponential Format
Polynomial Format
List of All Elements of a Galois Field
Nonuniqueness of Representations
Default Primitive Polynomials
Converting and Simplifying Element Formats
Converting to Simplest Polynomial Format
Example: Generating a List of Galois Field Elements
Converting to Simplest Exponential Format
Arithmetic in Galois Fields
Arithmetic in Prime Fields
Arithmetic in Extension Fields
Polynomials over Prime Fields
Cosmetic Changes of Polynomials
Polynomial Arithmetic
Characterization of Polynomials
Roots of Polynomials
Other Galois Field Functions
Selected Bibliography for Galois Fields
Functions — Categorical List
Signal Sources
Performance Evaluation
Source Coding
Error-Control Coding
Interleaving/Deinterleaving
Analog Modulation/Demodulation
Digital Modulation/Demodulation
Pulse Shaping
Special Filters
Lower-Level Functions for Special Filters
Channels
Equalizers
Galois Field Computations
Computations in Galois Fields of Odd Characteristic
Utilities
Graphical User Interface
Functions — Alphabetical List