第1章 绪论
1.1 系统仿真的基本概念
1.1.1 仿真的概念和意义
系统仿真技术也称为系统模拟技术,本书特指自1970年以来发展起来的利用现代计算机和仿真软件来进行的计算机仿真技术。由于计算机仿真具有精度高、通用性强,重复性好、建模迅速及成本低廉等许多优点,尤其是近年来发展了LabVIEW、MATLAB/Simulink、System Vue、Network Simulator等多种科学计算和系统仿真语言,使用起来比传统的C/C++语言进行仿真方便快捷得多。系统仿真技术在国内外学术界科技界的迅速普及,也大大提高了科学研究的效率。本书采用LabVIEW为仿真语言进行通信系统的仿真,并要在具有LabVIEW和数值计算的基础知识,并对信号与系统、数字信号处理、通信原理、现代通信系统等有所了解的基础上进行。
仿真技术是分析、研究各种系统,尤其是复杂系统的重要工具。随着信息科学的迅速发展,用于研发、测试的仪器更新速度加快,技术含量提高,价格越来越昂贵,采用仿真的方法可以在一定程度上克服仪器设备的不足。随着各种先进的仿真技术的涌现,使仿真不再局限于虚拟,而是软、硬件相结合,仿真软件和硬件设备相结合可实现真正系统。计算机仿真可以用于大部分电子工程、现代通信技术和通信系统的研究工作[1]。
1.1.2 仿真的步骤
计算机仿真的一般步骤有以下几个方面[2]。
① 仿真问题的提出。系统设计之前,应该有一个完整、准确的需求说明。建立系统仿真的第一步,必须清楚、准确地提出仿真所要解决的问题。
② 仿真系统分析。对所提出的仿真系统给出详细的定义,明确系统中的模块、系统构成、模块之间的相互关系,系统的输入/输出、边界条件及系统的约束条件,并确定仿真所要达到的目标。
③ 建立系统的数学模型。数学建模是系统仿真的关键。所建立的模型必须尽可能准确地反映所关心的真实系统的特性,而又不能过于复杂,以免减低模型的效率。建模需要根据求解问题的要求,在模型的近似程度与复杂度之间折中。通信系统模型通常以方框图形式来表达。
④ 数据收集。根据建立的数学模型,收集与模型系统有关的数据。
⑤ 根据数学模型建立系统仿真的计算机仿真模型。根据数学模型和所收集的数据,确定各子模块的结构、输入/输出接口、输入/输出的数据表达形式、数据的存储方式等,然后编制相应的程序流程,选择某种程序设计语言编程实现。
⑥ 仿真模型验证。目的是确定计算机仿真模型是否准确表达了数学模型。验证方法通常是将数学模型的解析结果与在相同条件下的仿真结果相比较。
⑦ 计算机仿真模型的运行。在运行过程中观察各种不同的输入/输出,得到试验数据,从而预测系统在实际环境中的运行情况。
⑧ 仿真结果分析。对仿真模型运行中所产生的数据进行分析,找出系统运行的规律,对仿真系统的性能做出评价,为系统方案的最终决策提供支持。通常采用统计学的分析方法,对仿真数据的可靠性、一致性、置信度等做出判定,最终将结果以曲线、图表等形式形成报告。在LabVIEW中提供了非常方便的数据分析函数和显示工具,如信号分析工具箱中各种频谱测量、统计、插值等函数。
1.2 通信系统仿真
1.2.1 通信系统概述
用于通信的设备硬件、软件和传输介质的集合称为通信系统。需要强调的是,过去对通信系统的定义没有软件部分,但随着计算机进入通信系统,通信软件成为组成通信系统的基本要素,因此在定义中加入软件这一模块。
通信系统主要由信源、信宿、传输介质和收信、发信设备五部分组成,如图1.2.1所示。根据信道传输信号种类的不同,通信系统可分为两大类:模拟通信系统和数字通信系统。根据传输信号是否经过调制,通信系统又分为基带传输系统和频带传输系统。
图1.2.1 模拟通信系统的一般模型
基带信号:没有经过调制的信号,即原始电信号。如待传输的语音、图像、数据等。
基带传输:基带信号不经过调制直接传输。
为了有效传输,在发射端将基带信号频谱搬移到较高频率进行发送称为调制。解调是调制的逆过程,在通信系统的接收端从已调信号中恢复基带信号的过程就叫解调。从频域上看,调制是将基带信号的频谱搬移到载频处,解调是将调制时搬移到载频处的调制信号频谱搬回到原来的基带范围内。
1.2.2 仿真在通信系统中的作用
通信系统的性能可以用基于公式的计算方法,波形级仿真或通过硬件样机研究和测量来估计得到。基于公式的计算方法只适用于比较简单的、可解析处理的通信系统,而硬件样机研究与测量则开销较大,且不够灵活,因此一般采用波形级仿真。现代通信系统的迅猛发展使得系统越来越复杂,新技术不断出现,使得分析和设计系统的时间和开销也相应提高,要做到短时、高效、省力地实现新技术的设计要求,使用强大的计算机辅助分析和设计工具是必不可少的。仿真已成为深入理解通信系统特性的有价值的工具,一个开发得好的仿真与硬件实现的系统很类似,有时完全相同,可以很方便地对要研究的系统进行多点测量,可以很容易地做参数研究,观测到参数改变对系统性能的影响,可以很容易地产生直观的波形,如时域波形、信号频谱、眼图等。
仿真在通信系统工程设计的各个阶段都起着十分重要的作用。通信系统设计过程开始于用户需求分析和性能期望,包括误码率或误比特率、中断概率,以及对带宽、功率、复杂度、成本和系统的生存期等的约束。通信系统设计的整体目标是研究系统拓扑结构和参数值,以便同时满足系统性能指标和设计约束。设计的初始阶段通常由有通信系统设计经验的人来完成,多数情况下,是在成熟系统的基础上提出改进方案,完成初始设计。
对于一般的通信系统,系统工程师要从系统初始配置、A级指标和链路预算开始。系统初始配置包括系统结构、调制方式、多址技术、编码与抗多径干扰技术等。同时,也要确定一组叫A级指标的参数值,如功率级、带宽等[3]。
对于个人蜂窝移动通信系统配置,人们已经设计了三代移动通信空中接口标准,这些标准确定了移动通信系统的结构、调制方式、编码与抗多径干扰技术等。而对于蜂窝移动通信的运营商,则需要通过对实际传输环境进行链路预算,从而确定实际运营的各种参数,包括基站的个数、位置等。
通信系统的仿真往往涉及较多的研究领域,包括通信原理、数字信号处理、概率论、信号检测与估计、随机过程理论、信号与系统理论、计算机科学和数论。掌握通信原理是通信系统仿真的关键,主要涉及系统结构、各种通信技术,如调制解调技术、多址技术及编码技术等。而数字信号处理是用于开发构成通信系统仿真模型的算法,现代通信系统的许多新技术都涉及算法,如智能天线、自适应均衡和滤波、参数模型估计等。通信系统的性能指标通常以概率形式表示,如差错概率。在许多情况下,仿真要处理的信号和噪声均是随机过程的一个样本,而且对于无线信道的描述也需要随机过程理论,常用到统计与自适应信号处理[4]。
新通信系统的设计中几乎都包括一些信号处理新算法和新硬件技术。在设计的前期阶段,为了验证这些新算法和新硬件技术,仿真提供了极佳的环境。
1.2.3 通信系统的建模与仿真
通信系统是指完成信息传输所需要的一切设备及传输媒质的总和。广义地讲,通信系统涵盖全球通信网络、地球同步通信卫星、陆地微波传输系统、集群通信系统、个人通信系统或者一个调制解调器。每个系统都涉及不同层次。
点对点数字通信模型一般由信源编译码、信道编译码、调制解调器、信道等组成。考虑信道的共享,则必须用频率、时间、空间分割等办法来共享,即频分复用、时分复用、空分复用等技术。对于多点之间的通信,涉及多址技术和交换技术,整个通信系统就构成了一个通信网。
通信系统的仿真同所有仿真问题一样,都涉及以下基本步骤:
① 将给定问题映射为仿真模型;
② 把整个问题分解为一组子问题;
③ 选择一套合适的建模、仿真和估计方法,并将其用于解决这些子问题;
④ 综合各子问题的解决结果,以提供对整个问题的解决方案。
对整个通信系统的仿真是一个复杂的问题,往往需要把问题分层,不同层次的仿真,其方法与目的不同。一般把仿真分为4个层次:系统级、子系统级、元件级和电路层仿真。越高层次的仿真抽象越多,涉及的模型细节越少;越低层次的仿真与实际硬件越相近,涉及的硬件细节和参数越多。对于电路层的仿真人们更多地使用硬件原形来进行验证和测试,在通信系统波形级仿真,很少涉及这一层次。
一个通用的通信系统系统级模型,包括13个功能模块,每个功能模块可视为一个子系统,可进一步分解。例如,以TD-SCDMA空中接口为例,如图1.2.2所示,其基带调制与脉冲成形器、射频调制器又可进一步分解,如图1.2.3所示。
图1.2.2 通信系统的系统级模型
图1.2.3 子系统模型
再进一步分解会产生“元件”级,甚至“电路”级模型。但在通信系统波形级仿真场合,很少分解至“元件”级,人们用尽可能高的抽象程度来仿真,因为越高的抽象意味着越少的参数和越高效的仿真。
1.3 基于LabVIEW的通信系统仿真概述
1.3.1 系统功能及特点
鉴于通信系统理论性强,偏重理论分析,系统构成具有模块化的特点,本仿真通信系统采用当前最流行、最先进的虚拟仪器开发工具LabVIEW开发。在LabVIEW8.2平台上开发了一整套完整的通信系统常用模块化子程序,如图1.2.2和图1.2.3中的各模块化子程序。从模拟系统到数字系统,每种模拟和数字调制解调器,从信源编码、模拟信号各种数字化方法,到信道各种编解码器,设计了频分复用、时分复用、码分复用、数字基带通信系统,以及匹配滤波器及相关器形式的最佳接收系统,对语音信号处理系统进行了仿真分析。
LabVIEW功能强大,丰富的库函数专门为信号处理、通信等功能而设计,非常适合通信系统的设计、分析与应用。LabVIEW程序特点是程序框图化,通过前面板的输入控件和显示控件可观察输入条件及输出结果,通过后面板的框图化程序可以看到前面板运行结果是如何具体实现的。采用模块化程序设计语言,软件形式灵活,易于理解,能充分反映通信系统的每一步实现,各点波形和参数生动形象。利用LabVIEW的窗函数、滤波器、卷积、傅里叶变换、频谱分析、功率谱分析等控件,可以构成、观察和分析通信系统,特别适合通信系统的设计、项目开发与应用。
采用LabVIEW进行通信系统仿真,具有如下特点。
① 它采用图形化编程语言——G语言,产生方框图程序,通过前面板的输入控件和显示控件显示在输入条件下的输出结果,通过后面板的框图化程序可以看到前面板运行结果是如何具体实现的。在程序非执行状态下双击前面板中的控件,可在后面板显示控件在后面板中的位置。
② 用它提供的图形控件,可以设计与传统仪器面板类似的美观实用的虚拟仪器面板。可以像操纵传统仪器一样来操纵虚拟仪器,区别在于不是动手旋转开关而是由计算机鼠标来对其进行操作。另外,传统仪器面板只有一个,其上布置着种类繁多的显示与操作元件,易导致认读与操作错误。虚拟仪器面板可以根据需要设计多个,通过在几个分面板的操作来实现比较复杂的功能。示波器功能可以方便地显示信号处理前、后及中间各点的波形,可以显示信号时域及频域波形。框图化的程序与通信系统的方框图类似,易于读懂和理解。
③ 它功能强大,其丰富的库函数专门为信号处理、通信等功能而设计,非常适合仿真通信系统的设计。可以通过编写子程序构成自己的模块化程序,构成通信系统,也可以供调用,来构成综合通信系统。其程序运行可以在前面板上看结果,还可以在后面板程序框图上全速、断点及单步执行。在程序框图上单步执行时,可以显示数据流执行过程,这一点特别适合通信系统分析。
④ 仿真通信系统可用于验证预开发的大型通信系统原理是否合理、结果是否正确。先用数据采集卡、图像采集卡等将数据或图像输入计算机,用本仿真通信系统中的各种通信方式子程序,如调制与解调、编码与解码、信道仿真等模块,进行通信系统的综合设计,用LabVIEW提供的丰富的库函数仿真处理,如频谱分析、小波分析、矩阵运算,达到预期效果后再具体用软硬件实现,这样可以大大缩小产品开发周期。本仿真通信系统可以为通信系统科研开发提供基础平台和设计参考。
LabVIEW平台还提供输入/输出接口卡、射频卡等,在此基础上,利用本仿真系统开发的通信软件包,可以实现真正的通信系统,包括信源;模拟、数字通信系统;基带、频带通信系统;编/解码系统。
虚拟仪器是仪器技术与计算机技术深层次结合的产物。它是全新概念的仪器,是对传统仪器概念的重要突破。虚拟仪器将传统仪器由硬件实现的数据分析处理与显示功能,改由功能强大的计算机来完成。以这种方式构成的虚拟仪器实质上是计算机仪器系统,它可以实现传统仪器的任何功能,又优于传统仪器,是今后仪器发展的主流方向。从某种意义上说,“软件就是仪器”。
仿真技术、计算机通信技术与网络技术是信息技术最重要的组成部分。通信系统的仿真是通信理论研究和通信系统设计的重要环节。本书总结了作者近年来对各种通信系统的仿真程序,程序涵盖了常用基本通信系统,包括模拟调制系统、数字基带系统、数字频带传输系统、模拟信源数字化、信源编码、最佳接收系统、信道编码系统、系统同步等部分,并结合科研给出许多实例。该系统给出各种通信系统的模块化程序及模块的内部实现,利用该软件提供的通信模块,可以进一步构建复杂通信系统,为科研开发提供了一个基础平台,是通信领域理论研究与科研开发的有力技术支持与保证。
本书针对从事通信系统仿真、通信理论研究、通信系统工程设计的科研人员。对学习和教授“通信原理”、“通信系统”、“现代通信原理”、“数字通信”等课程的大、中专院校学生、老师的教学和实验及课程设计和毕业设计也很有帮助。
1.3.2 系统总体构成
仿真通信系统的总体构成包括基本通信系统和通信系统综合设计两部分。
基本通信系统包括模拟调制系统、数字基带系统、数字频带传输系统、模拟信源数字化(包括信源编码)、最佳接收系统、信道编码系统六部分,涵盖了通信系统的全部主要内容。每个系统又分为发送部分、信道部分、接收部分,采用模块化设计,易于理解。本书提供各种通信方式的模块化子程序及模块的内部实现,详细给出了每个模块的前面板和后面板框图程序。
根据基本通信系统中设计的模块化程序构建综合通信系统。该部分内容穿插在各个基本通信系统的设计中间,如频分复用(FDM)系统的设计在第3章3.3节,第Ⅰ类部分响应系统的设计在第4章4.2节,数字基带系统综合设计在第4章4.4节,时分复用系统设计在第6章6.6节,编解码系统的综合设计在第8章8.5节。
图1.3.1、图1.3.2分别为通信系统仿真的进入界面的前、后面板,后面板是前面板的流程图程序,称为程序框图。在图1.3.1中单击“系统概述”和“系统组成”选项卡,可初步了解该系统。单击“系统选择”选项卡,再单击各个系统,可进入相应系统。单击“返回”按钮,返回上一界面。图1.3.1中8个按钮中的前6个对应本书第3~8章,“信源编码器”的介绍归入到“模拟信号的数字传输中”。如单击“模拟信号的数字传输”按钮,进入图1.3.3界面,此界面内的6个按钮分别对应第6章6.1~6.6节所介绍的内容,单击相应按钮可进入各个相应的具体系统,各个具体系统将在后续章节中详细介绍。
图1.3.1 通信系统仿真进入界面前面板
图1.3.2 通信系统仿真进入界面后面板
在图1.3.2中,用条件结构循环实现功能选择,当循环条件为真时,执行循环体内的程序。如模拟信号的数字传输,单击图1.3.1中的“模拟信号的数字传输”按钮,则图1.3.2中模拟信号的数字传输的循环条件为真(true),执行该循环体,即执行该循环体内的“数字化”程序。显示“数字化”程序的前、后面板如图1.3.3和图1.3.4所示。“数字化”程序是第6章的主程序,在此做成了可供调用的子程序。如在图1.3.3中单击“stop”按钮,返回上一界面,单击“PCM脉冲编码调制”按钮,进入图6.3.3(将在6.3节介绍)。
图1.3.3 模拟信号的数字传输进入界面前面板
图1.3.4 模拟信号的数字传输进入界面后面板