Simulating Wireless Communication Systems: Practical Models in C++
C. Britton Rorabaugh
The practical, inclusive reference for engineers simulating wireless systems
In order to keep prices within reach of the average consumer, cellular phone and wireless data transceiver manufacturers resort to mass producing millions of units from a single design. Considering the design complexity and fabrication expense involved, typical prototyping is not practical–designs must first be tested and honed using simulation.
Author C. Britton Rorabaugh brings to the table more than 20 years of experience simulating large, state-of-the-art communications systems. In Simulating Wireless Communication Systems, Rorabaugh explores, using C++, practical and authoritative techniques for simulating even the most complex wireless communication systems. Along the way he shows you how to create custom simulations that fit your project's intended design, so that you and your engineering team aren't forced to resort to inadequate commercial simulation packages.
This book includes nearly two hundred models of practical devices for implementing wireless communication systems and major subsystems. Mathematical and statistical appendices are also included to provide useful information for those seeking to understand, set up, and use any of Rorabaugh's detailed device models.
If you're an engineer or wireless communication project manager, then Simulating Wireless Communication Systems: Practical Models in C++ will prove to be both a convenient reference and an ideal instructional manual for the creation of specialized wireless communication simulations that will enable you to bring your product to market in a cost-effective and efficient manner.
C. BRITTON RORABAUGH has a BS and MS in Electrical Engineering from Drexel University and currently holds the position of Chief Scientist for a company that develops and manufactures specialized military communications equipment. He is the author of several publications on topics such as DSP, Digital Filters, and Error Coding and has experience in object-oriented design, realtime software, numerical methods, computer graphics, C++, C, SPW, MATLAB®, Visio®, TEX/LATEX, Microsoft® Office, and assembly languages for various microprocessors and DSP devices.
Professional Technical Reference
Upper Saddle River, NJ 07458
© Copyright Pearson Education. All rights reserved.
These files provide software that is intended to illustrate the various approaches for modeling communications devices and systems as discussed in the book. All of the software provided is either discussed directly in the book or its use is illustrated in one of the example simulations provided. Therefore, the Web Site does not need a great deal of explanation, and a few simple comments regarding the directory structure are sufficient to get started using the software.
The overall system of software models and the top-level directory are both named PracSim.
Each simulation requires a main program similar to the examples provided in the sims directory.
A few main programs which are not simulations are provided in the nonsims directory.
The support directory includes the classes and routines needed to provide a simulation infrastructure that performs common tasks such as defining signals, error handling, generating signal output, parameter input, results reporting.
All of the individual models, as well as the PracSimModel base class, are provided in the models directory.
The utils directory includes support functions which are not an integral part of the simulation infrastructure. These functions include specialized mathematical functions, theoretical results for various modulation schemes, and statistical functions.
All C++ header files are provided in the include directory.
All of the other directories within PracSim contain Microsoft Visual Studio .NET 2003 projects, each implementing a simulation that illustrates the modeling of a particular communications device or system as discussed in the book.
1. Simulation: Background and Overview.
2. Simulation Infrastructure.
3. Signal Generators.
Elementary Signal Generators.
Sampling Baseband Signals.
Baseband DataWaveform Generators.
Modeling Bandpass Signals.
4. Random Process Models.
Random Sequence Generators.
Continuous-Time Noise Processes.
Additive Gaussian Noise Generators.
Parametric Models of Random Processes.
5. Discrete Transforms.
Discrete Fourier Transform.
Small -N Transforms.
Prime Factor Algorithm.
6. Spectrum Estimation.
Windowing and Other Issues.
7. System Characterization Tools.
8. Filter Models.
Analog Filter Responses.
Classical Analog Filters.
Simulating Filters via Numerical Integration.
Using IIR Digital Filters to Simulate Analog Filters.
Filtering in the Frequency Domain.
9. Modulation and Demodulation.
Quadrature Phase Shift Keying.
Binary Phase Shift Keying.
Multiple Phase Shift Keying.
Frequency Shift Keying.
Minimum Shift Keying.
10. Amplifiers and Mixers.
Characterizing Nonlinear Amplifiers.
Two-Box Nonlinear Amplifier Models.
11. Synchronization and Signal Shifting.
Shifting Signals in Time.
Correlation-Based Delay Estimation.
Phase-Slope Delay Estimation.
Changing Clock Rates.
12. Synchronization Recovery.
Linear Phase-Locked Loops.
Digital Phase-Locked Loops.
13. Channel Models.
Discrete Memoryless Channels.
Characterization of Time-Varying Random Channels.
Diffuse Multipath Channels.
Discrete Multipath Channels.
14. Multirate Simulations.
Basic Concepts of Multirate Signal Processing.
Filter Design for Interpolators and Decimators.
Multirate Processing for Bandpass Signals.
15. Modeling DSP Components.
Quantization and Finite-Precision Arithmetic.
16. Coding and Interleaving.
Viterbi Decoding with Soft Decisions.
A. Mathematical Tools.
Table of Integrals.
Modified Bessel Functions of the First Kind.
B. Probability Distributions in Communications.
C. Galois Fields.
Computer Generation of Extension Fields.
Minimal Polynomials and Cyclotomic Cosets.