Getting Started

   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