无线应用的通信系统模拟原理

5星 · 超过95%的资源 需积分: 49 13 下载量 90 浏览量 更新于2024-07-30 收藏 6.74MB PDF 举报
"Principles of Communication Systems Simulation with Wireless Applications" 是一本由William H. Tranter、K. Sam Shanmugan、Theodore S. Rappaport和Kurt L. Kosbar合著的专业书籍,主要关注通信系统模拟,特别是与无线应用相关的原理。这本书属于Prentice Hall的通信工程和新兴技术系列,编号16。 通信系统模拟是数字通信领域中的一个重要研究方向,它涉及到如何使用计算机模型来模拟和预测通信系统的性能。在无线通信中,模拟技术尤其重要,因为无线环境的复杂性和不可预测性,如多径传播、信号衰落、干扰以及射频特性等,都使得实际测试变得困难。本书旨在帮助读者理解这些概念,并提供一个平台来测试和优化设计。 书中可能涵盖了以下核心知识点: 1. **通信系统基础**:包括信号传输的基本原理,如模拟和数字信号的区别,调制、编码和解码技术,以及信道建模。 2. **无线通信理论**:涉及无线传播的物理过程,如自由空间传播损耗、阴影衰落和多径效应,以及它们对通信质量的影响。 3. **无线网络模拟**:讨论了如何模拟多用户、多基站的无线网络,包括移动通信系统(如蜂窝网络)和无线局域网(WLAN)。 4. **信号处理技术**:涵盖接收机设计中的滤波、均衡和信噪比分析,以及如何在模拟环境中实现这些技术。 5. **系统性能评估**:通过仿真来分析通信系统的性能指标,如误码率(BER)、吞吐量、覆盖范围和容量。 6. **随机过程与统计建模**:在无线通信中,信道条件往往被视为随机变量,因此书中可能讲解如何使用随机过程来描述这些变化,并进行统计建模。 7. **软件工具和平台**:介绍用于通信系统模拟的软件工具,如Matlab、Simulink或者专用的通信系统模拟软件,以及如何使用它们进行实验和分析。 8. **案例研究**:书中可能会包含实际的无线通信系统模拟案例,如3G/4G/5G网络、卫星通信或物联网(IoT)系统,以帮助读者将理论知识应用于实践。 9. **文献引用和索引**:提供相关研究的参考文献,便于深入学习和扩展阅读。 10. **技术应用与新兴技术**:由于是2003年出版,书中可能探讨了当时的最新技术,例如蓝牙、Wi-Fi等,也可能预见到未来通信技术的发展趋势。 通过这本书,读者不仅可以获得通信系统模拟的基础知识,还能了解如何运用这些知识解决实际的无线通信问题。对于从事通信工程、无线网络设计或相关研究的人员来说,这是一本宝贵的参考资料。
2009-12-31 上传
Principles of Communication System Simulation with Wireless Aplications 【作者】: William H. Tranter K. Sam Shanmugan Theodore S. Rappaport Kurt L. Kosbar 【页数 】:800 【出版社】 :PRENTICE HALL 【出版日期】:2003 【文件格式】:pdf CONTENTS PREFACE xvii Part I Introduction 1 1 THEROLEOF SIMULATION 1 1.1 Examples of Complexity 2 1.1.1 The Analytically Tractable System 3 1.1.2 The Analytically Tedious System 5 1.1.3 The Analytically Intractable System 7 1.2 Multidisciplinary Aspects of Simulation 8 1.3 Models 11 1.4 Deterministic and Stochastic Simulations 14 1.4.1 An Example of a Deterministic Simulation 16 1.4.2 An Example of a Stochastic Simulation 17 1.5 The Role of Simulation 19 1.5.1 Link Budget and System-Level Specification Process 20 1.5.2 Implementation and Testing of Key Components 22 1.5.3 Completion of the Hardware Prototype and Validation of the Simulation Model 22 1.5.4 End-of-Life Predictions 22 1.6 Software Packages for Simulation 23 1.7 A Word of Warning 26 1.8 The Use of MATLAB 27 1.9 Outline of the Book 27 1.10 Further Reading 28 2 SIMULATION METHODOLOGY 31 2.1 Introduction 32 2.2 Aspects of Methodology 34 2.2.1 Mapping a Problem into a Simulation Model 34 2.2.2 Modeling of Individual Blocks 41 2.2.3 Random Process Modeling and Simulation 47 2.3 Performance Estimation 49 2.4 Summary 52 2.5 Further Reading 52 2.6 Problems 52 Part II Fundamental Concepts and Techniques 55 3 SAMPLINGANDQUANTIZING 55 3.1 Sampling 56 3.1.1 The Lowpass Sampling Theorem 56 3.1.2 Sampling Lowpass Random Signals 61 3.1.3 Bandpass Sampling 61 3.2 Quantizing 65 3.3 Reconstruction and Interpolation 71 3.3.1 Ideal Reconstruction 71 3.3.2 Upsampling and Downsampling 72 3.4 The Simulation Sampling Frequency 78 3.4.1 General Development 79 3.4.2 Independent Data Symbols 81 3.4.3 Simulation Sampling Frequency 83 3.5 Summary 87 3.6 Further Reading 89 3.7 References 90 3.8 Problems 90 4 LOWPASSSIMULATION MODELS FOR BANDPASS SIGNALS AND SYSTEMS 95 4.1 The Lowpass Complex Envelope for Bandpass Signals 95 4.1.1 The Complex Envelope: The Time-Domain View 96 4.1.2 The Complex Envelope: The Frequency-Domain View 108 4.1.3 Derivation of Xd(f) and Xq(f) from X (f) 110 4.1.4 Energy and Power 111 4.1.5 Quadrature Models for Random Bandpass Signals 112 4.1.6 Signal-to-Noise Ratios 115 4.2 Linear Bandpass Systems 118 4.2.1 Linear Time-Invariant Systems 118 4.2.2 Derivation of hd(t) and hq(t) from H(f) 122 4.3 Multicarrier Signals 125 4.4 Nonlinear and Time-Varying Systems 128 4.4.1 Nonlinear Systems 128 4.4.2 Time-Varying Systems 130 4.5 Summary 132 4.6 Further Reading 133 4.7 References 134 4.8 Problems 134 4.9 Appendix A: MATLAB Program QAMDEMO 139 4.9.1 Main Program: c4 qamdemo.m 139 4.9.2 Supporting Routines 140 4.10 Appendix B: Proof of Input-Output Relationship 141 5 FILTERMODELSAND SIMULATION TECHNIQUES 143 5.1 Introduction 144 5.2 IIR and FIR Filters 146 5.2.1 IIR Filters 146 5.2.2 FIR Filters 147 5.2.3 Synthesis and Simulation 147 5.3 IIR and FIR Filter Implementations 148 5.3.1 Direct Form II and Transposed Direct Form II Implementations 148 5.3.2 FIR Filter Implementation 154 5.4 IIR Filters: Synthesis Techniques and Filter Characteristics 155 5.4.1 Impulse-Invariant Filters 155 5.4.2 Step-Invariant Filters 156 5.4.3 Bilinear z-Transform Filters 157 5.4.4 Computer-Aided Design of IIR Digital Filters 165 5.4.5 Error Sources in IIR Filters 167 5.5 FIR Filters: Synthesis Techniques and Filter Characteristics 167 5.5.1 Design from the Amplitude Response 170 5.5.2 Design from the Impulse Response 177 5.5.3 Implementation of FIR Filter Simulation Models 180 5.5.4 Computer-Aided Design of FIR Digital Filters 184 5.5.5 Comments on FIR Design 186 5.6 Summary 186 5.7 Further Reading 189 5.8 References 189 5.9 Problems 190 5.10 Appendix A: Raised Cosine Pulse Example 192 5.10.1 Main program c5 rcosdemo.m 192 5.10.2 Function file c5 rcos.m 192 5.11 Appendix B: Square Root Raised Cosine Pulse Example 193 5.11.1 Main Program c5 sqrcdemo.m 193 5.11.2 Function file c5 sqrc.m 193 5.12 Appendix C: MATLAB Code and Data for Example 5.11 194 5.12.1 c5 FIRFilterExample.m 195 5.12.2 FIR Filter AMP Delay.m 196 5.12.3 shift ifft.m 198 5.12.4 log psd.m 198 6 CASESTUDYHASE-LOCKED LOOPS AND DIFFERENTIAL EQUATION METHODS 201 6.1 Basic Phase-Locked Loop Concepts 202 6.1.1 PLL Models 204 6.1.2 The Nonlinear Phase Model 206 6.1.3 Nonlinear Model with Complex Input 208 6.1.4 The Linear Model and the Loop Transfer Function 208 6.2 First-Order and Second-Order Loops 210 6.2.1 The First-Order PLL 210 6.2.2 The Second-Order PLL 214 6.3 Case Study: Simulating the PLL 215 6.3.1 The Simulation Architecture 215 6.3.2 The Simulation 216 6.3.3 Simulation Results 219 6.3.4 Error Sources in the Simulation 220 6.4 Solving Differential Equations Using Simulation 223 6.4.1 Simulation Diagrams 224 6.4.2 The PLL Revisited 225 6.5 Summary 230 6.6 Further Reading 231 6.7 References 231 6.8 Problems 232 6.9 Appendix A: PLL Simulation Program 236 6.10 Appendix B: Preprocessor for PLL Example Simulation 237 6.11 Appendix C: PLL Postprocessor 238 6.11.1 Main Program 238 6.11.2 Called Routines 239 6.12 Appendix D: MATLAB Code for Example 6.3 241 7 GENERATING AND PROCESSING RANDOM SIGNALS 243 7.1 Stationary and Ergodic Processes 244 7.2 Uniform Random Number Generators 248 7.2.1 Linear Congruence 248 7.2.2 Testing Random Number Generators 252 7.2.3 Minimum Standards 256 7.2.4 MATLAB Implementation 257 7.2.5 Seed Numbers and Vectors 258 7.3 Mapping Uniform RVs to an Arbitrary pdf 258 7.3.1 The Inverse Transform Method 259 7.3.2 The Histogram Method 264 7.3.3 Rejection Methods 266 7.4 Generating Uncorrelated Gaussian Random Numbers 269 7.4.1 The Sum of Uniforms Method 270 7.4.2 Mapping a Rayleigh RV to a Gaussian RV 273 7.4.3 The Polar Method 275 7.4.4 MATLAB Implementation 276 7.5 Generating Correlated Gaussian Random Numbers 277 7.5.1 Establishing a Given Correlation Coefficient 277 7.5.2 Establishing an Arbitrary PSD or Autocorrelation Function 278 7.6 Establishing a pdf and a PSD 282 7.7 PN Sequence Generators 283 7.8 Signal Processing 290 7.8.1 Input/Output Means 291 7.8.2 Input/Output Cross-Correlation 291 7.8.3 Output Autocorrelation Function 292 7.8.4 Input/Output Variances 293 7.9 Summary 293 7.10 Further Reading 294 7.11 References 294 7.12 Problems 295 7.13 Appendix A: MATLAB Code for Example 7.11 299 7.14 Main Program: c7 Jakes.m 299 7.14.1 Supporting Routines 300 8 POSTPROCESSING 303 8.1 Basic Graphical Techniques 304 8.1.1 A System Example—π/4 DQPSK Transmission 304 8.1.2 Waveforms, Eye Diagrams, and Scatter Plots 307 8.2 Estimation 309 8.2.1 Histograms 309 8.2.2 Power Spectral Density Estimation 316 8.2.3 Gain, Delay, and Signal-to-Noise Ratios 323 8.3 Coding 329 8.3.1 Analytic Approach to Block Coding 330 8.3.2 Analytic Approach to Convolutional Coding 333 8.4 Summary 336 8.5 Further Reading 336 8.6 References 338 8.7 Problems 339 8.8 Appendix A: MATLAB Code for Example 8.1 342 8.8.1 Main Program: c8 pi4demo.m 342 8.8.2 Supporting Routines 344 9 INTRODUCTION TO MONTE CARLO METHODS 347 9.1 Fundamental Concepts 347 9.1.1 Relative Frequency 348 9.1.2 Unbiased and Consistent Estimators 349 9.1.3 Monte Carlo Estimation 349 9.1.4 The Estimation of π 351 9.2 Application to Communications Systems—The AWGN Channel 354 9.2.1 The Binomial Distribution 355 9.2.2 Two Simple Monte Carlo Simulations 359 9.3 Monte Carlo Integration 366 9.3.1 Basic Concepts 368 9.3.2 Convergence 370 9.3.3 Confidence Intervals 371 9.4 Summary 375 9.5 Further Reading 375 9.6 References 375 9.7 Problems 376 10 MONTE CARLO SIMULATION OF COMMUNICATION SYSTEMS 379 10.1 Two Monte Carlo Examples 380 10.2 Semianalytic Techniques 393 10.2.1 Basic Considerations 394 10.2.2 Equivalent Noise Sources 397 10.2.3 Semianalytic BER Estimation for PSK 398 10.2.4 Semianalytic BER Estimation for QPSK 400 10.2.5 Choice of Data Sequence 404 10.3 Summary 405 10.4 References 406 10.5 Problems 406 10.6 Appendix A: Simulation Code for Example 10.1 408 10.6.1 Main Program 408 10.6.2 Supporting Program: random binary.m 409 10.7 Appendix B: Simulation Code for Example 10.2 410 10.7.1 Main Program 410 10.7.2 Supporting Programs 414 10.7.3 vxcorr.m 414 10.8 Appendix C: Simulation Code for Example 10.3 415 10.8.1 Main Program: c10 PSKSA.m 415 10.8.2 Supporting Programs 416 10.9 Appendix D: Simulation Code for Example 10.4 418 10.9.1 Supporting Programs 419 11 METHODOLOGY FOR SIMULATING A WIRELESS SYSTEM 421 11.1 System-Level Simplifications and Sampling Rate Considerations 423 11.2 Overall Methodology 424 11.2.1 Methodology for Simulation of the Analog Portion of the System 429 11.2.2 Summary of Methodology for Simulating the Analog Portion of the System 441 11.2.3 Estimation of the Coded BER 441 11.2.4 Estimation of Voice-Quality Metric 441 11.2.5 Summary of Overall Methodology 442 11.3 Summary 443 11.4 Further Reading 443 11.5 References 444 11.6 Problems 444 Part III Advanced Models and Simulation Techniques 447 12 MODELING AND SIMULATION OF NONLINEARITIES 447 12.1 Introduction 448 12.1.1 Types of Nonlinearities and Models 448 12.1.2 Simulation of Nonlinearities—Factors to Consider 449 12.2 Modeling and Simulation of Memoryless Nonlinearities 451 12.2.1 Baseband Nonlinearities 452 12.2.2 Bandpass Nonlinearities—Zonal Bandpass Model 453 12.2.3 Lowpass Complex Envelope (AM-to-AM and AM-to-PM) Models 455 12.2.4 Simulation of Complex Envelope Models 461 12.2.5 The Multicarrier Case 462 12.3 Modeling and Simulation of Nonlinearities with Memory 468 12.3.1 Empirical Models Based on Swept Tone Measurements 470 12.3.2 Other Models 472 12.4 Techniques for Solving Nonlinear Differential Equations 475 12.4.1 State Vector Form of the NLDE 476 12.4.2 Recursive Solutions of NLDE-Scalar Case 479 12.4.3 General Form of Multistep Methods 483 12.4.4 Accuracy and Stability of Numerical Integration Methods 483 12.4.5 Solution of Higher-Order NLDE-Vector Case 485 12.5 PLL Example 486 12.5.1 Integration Methods 486 12.6 Summary 488 12.7 Further Reading 488 12.8 References 489 12.9 Problems 490 12.10 Appendix A: Saleh’s Model 493 12.11 Appendix B: MATLAB Code for Example 12.2 494 12.11.1 Supporting Routines 495 13 MODELING AND SIMULATION OF TIME-VARYING SYSTEMS 497 13.1 Introduction 497 13.1.1 Examples of Time-Varying Systems 498 13.1.2 Modeling and Simulation Approach 499 13.2 Models for LTV Systems 500 13.2.1 Time-Domain Description for LTV System 500 13.2.2 Frequency Domain Description of LTV Systems 503 13.2.3 Properties of LTV Systems 505 13.3 Random Process Models 511 13.4 Simulation Models for LTV Systems 515 13.4.1 Tapped Delay Line Model 515 13.5 MATLAB Examples 518 13.5.1 MATLAB Example 1 518 13.5.2 MATLAB Example 2 520 13.6 Summary 522 13.7 Further Reading 523 13.8 References 523 13.9 Problems 523 13.10 Appendix A: Code for MATLAB Example 1 525 13.10.1 Supporting Program 526 13.11 Appendix B: Code for MATLAB Example 2 527 13.11.1 Supporting Routines 528 13.11.2 mpsk pulses.m 528 14 MODELING AND SIMULATION OF WAVEFORM CHANNELS 529 14.1 Introduction 529 14.1.1 Models of Communication Channels 530 14.1.2 Simulation of Communication Channels 531 14.1.3 Discrete Channel Models 532 14.1.4 Methodology for Simulating Communication System Performance 532 14.1.5 Outline of Chapter 533 14.2 Wired and Guided Wave Channels 533 14.3 Radio Channels 534 14.3.1 Tropospheric Channel 536 14.3.2 Rain Effects on Radio Channels 537 14.4 Multipath Fading Channels 538 14.4.1 Introduction 538 14.4.2 Example of a Multipath Fading Channel 538 14.4.3 Discrete Versus Diffused Multipath 545 14.5 Modeling Multipath Fading Channels 546 14.6 Random Process Models 547 14.6.1 Models for Temporal Variations 14.6.2 Important Parameters 550 14.7 Simulation Methodology 552 14.7.1 Simulation of Diffused Multipath Fading Channels 553 14.7.2 Simulation of Discrete Multipath Fading Channels 558 14.7.3 Examples of Discrete Multipath Fading Channel Models 565 14.7.4 Models for Indoor Wireless Channels 571 14.8 Summary 571 14.9 Further Reading 572 14.10 References 572 14.11 Problems 575 14.12 Appendix A: MATLAB Code for Example 14.1 577 14.12.1 Main Program 577 14.12.2 Supporting Functions 578 14.13 Appendix B: MATLAB Code for Example 14.2 580 14.13.1 Main Program 580 14.13.2 Supporting Functions 581 15 DISCRETE CHANNEL MODELS 583 15.1 Introduction 584 15.2 Discrete Memoryless Channel Models 586 15.3 Markov Models for Discrete Channels with Memory 589 15.3.1 Two-State Model 589 15.3.2 N-state Markov Model 596 15.3.3 First-Order Markov Process 597 15.3.4 Stationarity 597 15.3.5 Simulation of the Markov Model 598 15.4 Example HMMs—Gilbert and Fritchman Models 601 15.5 Estimation of Markov Model Parameters 604 15.5.1 Scaling 611 15.5.2 Convergence and Stopping Criteria 612 15.5.3 Block Equivalent Markov Models 613 15.6 Two Examples 615 15.7 Summary 621 15.8 Further Reading 622 15.9 References 622 15.10 Problems 623 15.11 Appendix A: Error Vector Generation 627 15.11.1 Program: c15 errvector.m 627 15.11.2 Program: c15 hmmtest.m 628 15.12 Appendix B: The Baum-Welch Algorithm 629 15.13 Appendix C: The Semi-Hidden Markov Model 632 15.14 Appendix D: Run-Length Code Generation 636 15.15 Appendix E: Determination of Error-Free Distribution 637 15.15.1 c15 intervals1.m 637 15.15.2 c15 intervals2.m 637 16 EFFICIENT SIMULATION TECHNIQUES 639 16.1 Tail Extrapolation 640 16.2 pdf Estimators 642 16.3 Importance Sampling 645 16.3.1 Area of an Ellipse 646 16.3.2 Sensitivity to the pdf 655 16.3.3 A Final Twist 656 16.3.4 The Communication Problem 657 16.3.5 Conventional and Improved Importance Sampling 659 16.4 Summary 660 16.5 Further Reading 660 16.6 References 662 16.7 Problems 662 16.8 Appendix A: MATLAB Code for Example 16.3 665 16.8.1 Supporting Routines 669 17 CASE STUDY: SIMULATION OF A CELLULAR RADIO SYSTEM 671 17.1 Introduction 671 17.2 Cellular Radio System 673 17.2.1 System-Level Description 673 17.2.2 Modeling a Cellular Communication System 676 17.3 Simulation Methodology 688 17.3.1 The Simulation 688 17.3.2 Processing the Simulation Results 700 17.4 Summary 706 17.5 Further Reading 706 17.6 References 707 17.7 Problems 708 17.8 Appendix A: Program for Generating the Erlang B Chart 710 17.9 Appendix B: Initialization Code for Simulation 712 17.10 Appendix C: Modeling Co-Channel Interference 714 17.10.1 Wilkinson’s Method 715 17.10.2 Schwartz and Yeh’s Method 717 17.11 Appendix D: MATLAB Code for Wilkinson’s Method 718 18 TWO EXAMPLE SIMULATIONS 719 18.1 A Code-Division Multiple Access System 720 18.1.1 The System 720 18.1.2 The Simulation Program 724 18.1.3 Example Simulations 726 18.1.4 Development of Markov Models 729 18.2 FDM System with a Nonlinear Satellite Transponder 734 18.2.1 System Description and Simulation Objectives 734 18.2.2 The Overall Simulation Model 737 18.2.3 Uplink FDM Signal Generation 738 18.2.4 Satellite Transponder Model 740 18.2.5 Receiver Model and Semianalytic BER Estimator 741 18.2.6 Simulation Results 742 18.2.7 Summary and Conclusions 744 18.3 References 746 18.4 Appendix A: MATLAB Code for CDMA Example 747 18.4.1 Supporting Functions 750 18.5 Appendix B: Preprocessors for CDMA Application 753 18.5.1 Validation Run 753 18.5.2 Study Illustrating the Effect of the Ricean K-Factor 753 18.6 Appendix C: MATLAB Function c18 errvector.m 755 18.7 Appendix D: MATLAB Code for Satellite FDM Example 756 18.7.1 Supporting Functions 760

The programme should have the following features: ● A menu including Open and Exit where Open starts a JFileChooser to select the file with the questions inside and Exit ends the programme. ● Once a file is loaded, the GUI should display one question and its answers at a time. ● The user should be able to select an answer and they should be informed if they were correct or not. ● The user should be made aware of the number of correctly answered and the total number of questions answered. ● The user should only be able to proceed to the next question once they answered the current one. ● Once all questions have been answered, the user should be informed of their overall score and that the game has finished. The Open menu item should now be enabled to start a new quiz. Optionally, you can add a restart menu item to redo the current quiz. Concrete sub-tasks: a) define a class called Question to hold a single question, i.e. the text, the possible answers, and the correct answer index; (0.25P) b) write a method to select a file via a JFileChooser and to read all the questions from that file into an array/list of Question objects (assume that file has the structure mentioned above); (0.25P) c) design and implement a GUI with the components mentioned above: A menu, ability to display the question and answers, ability to select an answer, show the outcome and score, and proceed to the next question. (Appropriate layout: 1P, Class extends JFrame: 0.25P, Class follows OOP principles: 0.25P, Global set-up in main method: 0.25P)1 d) write a method to display a question on the GUI you designed; (0.25P) e) implement an actionPerformed method to respond to user interactions with the GUI. Make sure to enable and disable interactive components as required, e.g. the user should not be able to skip to the next question without selecting an answer first and they should not be able to load a new quiz before finishing the current one;

2023-05-29 上传