毕业设计(论文)-基于PC机声卡的数据传输系统设计与实现.doc_第1页
毕业设计(论文)-基于PC机声卡的数据传输系统设计与实现.doc_第2页
毕业设计(论文)-基于PC机声卡的数据传输系统设计与实现.doc_第3页
毕业设计(论文)-基于PC机声卡的数据传输系统设计与实现.doc_第4页
毕业设计(论文)-基于PC机声卡的数据传输系统设计与实现.doc_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

重庆大学本科学生毕业设计(论文)基于PC机声卡的数据传输系统设计与实现学 生:陈毅学 号:20094982指导教师:曾孝平 专 业:集成电路设计与集成系统重庆大学通信工程学院二O一三年六月Graduation Design(Thesis) of Chongqing UniversityDesign and Implementation of Data Transmission System basedon Sound CardUndergraduate: Yi ChenSupervisor: Prof. Xiao-ping ZengMajor: Integrated Circuit Design and Integrated SystemCollege of Communication EngineeringChongqing UniversityJune 2013重庆大学本科学生毕业设计(论文) 中文摘要摘 要软件无线电概念(SDR)从90年代提出至今,由于其灵活性和可重配置性特点符合通信的发展趋势,一直是通信系统设计及研究的热点1。另一方面,超大规模集成电路技术的发展使得个人计算机和PC声卡性能不断提升而成本不断降低,这使得利用计算机和声卡进行虚拟仿真和信号处理也越来流行。本文基于软件无线电思想,利用计算机和PC声卡搭建一个通信仿真验证平台。该通信仿真验证平台在计算机上用可重复利用的代码动态配置各通信功能模块,并以DQPSK通信为例验证了整个系统功能的完整性与可行性。本文首先从原理上介绍整个通信仿真验证平台的模块构成,主要包括信源的可变长度编码,信道的卷积编码和维特比译码,DQPSK调制与解调,脉冲成型,载波同步和位同步;接着,介绍该仿真验证平台的搭建和界面设计,及其MFC实现与通信测试。该仿真验证平台采用模块化编写方法,具有简单易实现、波形可视化、可软件重配置等优点,主要适用于性能适中、成本较低的应用场合,如通信教学实验、业余无线电等。不仅如此,该平台所用的声卡是计算机的一个模拟接口,可以扩展用于电台和电话网中进行通信,因此具有一定的应用前景。关键词:声卡,通信仿真验证平台,卷积码和维特比译码,DQPSK II重庆大学本科学生毕业设计(论文) ABSTRACTABSTRACTSince put forward in the 90s, Software Defined Radio (SDR) has always been the focus of the design and research of communication system, because it has the characteristics of flexibility and reconfiguration. Furthermore, due to the development of large scale integrated circuit technology, the performance of computer and sound card are constantly improved with the dropping down cost, which leads to the use of computer and sound card for virtual simulation and signal processing becoming more and more popular.This thesis aim to build a communication simulation platform based on the idea of SDR with the use of computer and sound card. The communication simulation platform can reuse code so that dynamically configure each communicational module on computer, and verify the integrity and feasibility of the whole system with the example of DQPSK.The first part of the thesis introduces the main elements of the communication simulation platform: the source Variable-length coding, Channel convolution coding and Viterbi decoding, DQPSK modulation and demodulation, pulse shaping, carrier synchronization and bit synchronization. And the next part introduces the structure of the simulation platform, the design of GUI and the MFC communication test.This communication simulation platform is compiled with modular method, which has so many advantages like the convenience of the implement, the visualization of the waveform, the reconfiguration of software, etc. In addition, this communication simulation platform is mainly applied to the occasion that the performance requirement is moderate and the cost is low like communication teaching experiments and amateur radio. In the end, the sound card applied in the platform is an analog interface of computer which can also be applied to the radio and the network of telephone for communication. Accordingly, this communication simulation platform will be used in some potential application scenarios.Key words:sound card, communication simulation platform, convolution coding and Viterbi decoding, DQPSK重庆大学本科学生毕业设计(论文) 目录目 录摘 要IABSTRACTII1 绪论11.1 选题背景意义11.2 论文主要内容21.3 总体方案设计32 数字编译码52.1 信源编译码52.2 信道编译码62.2.1 差错控制技术概述62.2.2 卷积码编码的实现72.2.3 维特比译码的实现93 数字调制解调与同步113.1 DQPSK数字调制实现113.1.1 DQPSK调制113.1.2 脉冲成型123.2 DQPSK数字解调实现163.3 系统同步183.3.1 载波同步183.3.2 位同步214 通信仿真验证平台224.1 声卡的编程控制224.2 通信平台的GUI设计及程序实现244.2.1 通信平台的GUI设计244.2.2 通信平台的程序设计实现264.3 通信软件功能介绍及测试294.3.1 实时通信界面介绍294.3.2 实时通信测试314.3.3 波形查看窗口335 总结与展望355.1 总结355.2 展望35致 谢37参 考 文 献3839重庆大学本科学生毕业设计(论文) 1 绪论1 绪论1.1 选题背景意义近年来随着技术的进步,特别是超大规模集成电路技术和工艺的发展,个人计算机等多媒体终端不仅在性能上大幅度提升,而且制造成本的降低也使得计算机等多媒体终端更为普及。而另一方面,设计并实现一个通信系统必须专业的通信设备支持,虽然专业设备性能更好,但专业设备较为复杂、开发难度高、开发周期较长、成本高,这对于学生通信实验及研究、通信功能仿真与验证、简单通信系统设计与开发等非常不利。软件无线电概念从90年代提出至今,发展迅速;并由于其灵活性和可重配置性特点符合通信的发展趋势,所以其一直是通信领域的研究重点1。它的出现已然使无线电通信经历了由硬件到软件的第三次变革,其创新及意义丝毫不亚于无线电通信由固定到移动、由模拟到数字的两次变革。软件无线电是基于软件定义的无线通信协议而非硬件连线实现,换而言之,频带、空中接口协议和通信功能均由软件实现,并可进行修改、更新和动态加载2。其核心思想就是构造一个具有开放性、标准化、模块化的通用通信平台,将各种通信功能如频带、波形、调制解调类型、信道编解码、通信协议等用软件来实现,通过动态加载软件来实现不同的通信功能,从而研制出具有高度开放性、灵活性和可重配置的无线通信系统3。软件无线电的一般组成框图如图1.1.1所示,主要由前端的射频模块和高速A/D-D/A转换器,以及后端的实时信号处理器和各功能软件模块组成4。软件无线电由于其开放性的系统结构、功能的模块化及软件化、平台的通用性及兼容性强等技术特点,其必然会成为未来无线电的发展方向。图1.1.1 软件无线电基本结构由于软件无线电发展还不够成熟,现今的软件无线电设备特别是高带宽的软件无线电设备还非常的昂贵。而得益于超大规模集成电路技术等的进步,计算机和声卡的性能得到大幅度提升,且制造成本的降低也使得计算机得以普及5。PC声卡可进行A/D-D/AD的转换,其采样频率和采样精度均可编程控制。采样频率能够满足一般的基带信号的采样,市场现有声卡最高可达200KHz;而采样位数可达24位,分辨率高;采样通道为多通道,灵活性强且计算机可为其分配较大的缓存空间。专业的DSP数字信号处理器虽然处理信号速度快,但它也有一些弊端,比如开发难度较高、周期长、成本较高、需要其它器件如存储器的辅助支持。而现在的CPU性能已经大幅度提升,CPU的处理速度和内存的容量已经能够完全代替DSP胜任常规数字信号的实时处理6。所以本文基于软件无线电思想,利用计算机和声卡来构建一个通信仿真验证平台。该通信仿真验证平台用软件来实现并动态加载各通信功能模块,并以DQPSK为例验证了整个系统功能的可行性。该平台基本架构与软件无线电的基本架构相似,声卡对应于高速A/D-D/A转换器,计算机CPU对应于DSP。基于计算机和PC声卡搭建的这个通信仿真验证平台具有很多优势:平台结构是标准化、模块化的,具有较强的开放性,易于新技术的应用。其硬件可以随着技术的发展而更新,而其软件部分也可以不断的升级,其兼容性也较强,可以同其它通信设备进行通信。平台是用面向对象的高级语言VC+编写的,开发简单、开发周期短;平台是基于软件无线电思想搭建的,通信功能均由模块化软件实现,通用性、可重配置性、灵活性更强,可以实现ASK、PSK、FSK等多种通信方式;平台可编写噪声信号程序仿真信道特性等,能够很好的进行抗干扰性能测试等仿真验证;PC声卡作为计算机的一个模拟信号输入输出接口,其作用不同于串口和USB口传输数据信息,它可以直接输出经过调制好后的模拟信号到电台或电话网进行传输。这在短波通信领域特别是应急通信领域作用非常大,可以直接在计算机上用软件实现多种短波通信,如CW、RTTY、PACTOR、PSK31等,并通过音频线连接到电台进行远程传输;同样也可以通过有线信道进行传输,如电话线和音频线等,可利用现有电话网进行传输7。平台的硬件设备是计算机和PC声卡,普及率极高,不需另外购置硬件设备,相对于昂贵的专业软件无线电设备,更适合学生进行通信实验及研究、通信系统仿真验证、简单通信系统的开发。1.2 论文主要内容本论文基于软件无线电思想,利用声卡和计算机的硬件平台来搭建一个通信仿真验证平台,并在此平台用软件实现DQPSK双工通信。整个通信系统的调制与解调、信源编译码、信道编译码等通信功能均由软件实现并动态加载,并最终利用MFC生成相应通信软件。主要内容: 可变长度编解码、卷积码编码和维特比译码原理及软件实现; DQPSK信号调制与解调原理及软件实现 载波同步、锁相环、脉冲成型原理及软件实现 VC+对声卡的编程控制; 基于PC声卡的仿真验证平台的搭建及整体通信系统的MFC实现。1.3 总体方案设计要实现基于PC声卡的通信系统,如图1.3.1为通信方案结构图。图形用户界面层主要用于输入输出消息、命令、通信参数、波形等信息。而通信接口层主要用于上层图形用户界面层与下层通信执行层的一个接口层,传递各种参数、指针、消息、启动接收或发射线程等。下层通信执行层即通信协议层,主要执行相应通信方式的具体功能,有编译码和调制解调,还有控制声卡将调制后的数字信号转换成模拟信号输出,或者控制声卡对输入模拟信号进行采样转换成数字信号。图1.3.1 通信方案结构图如图1.3.2、图1.3.3和图1.3.4为三种通信实物连接图,声卡在其中的主要作用是将数字信号转换成模拟信号输出或对模拟信号采样转换成数字信号输入。而信号的信道传输可以直接通过3.5mm音频线连接两台电脑,进行传输如图1.3.2;也可以用音频线连接一台电脑的输入输出,在一台电脑上进行发送和接收信号;还可以通过音频线将信号连接到射频端如电台将信号通过无线信道进行传输,这种可以用短波电台进行远程传输非常方便。图1.3.2 音频线连接两台电脑通信图1.3.3 音频线连接一台电脑的输入输出进行通信图1.3.4 连接电台进行无线通信有了可实现通信的平台,仍需要一个具体的通信方式来在这个平台进行实现。查阅了一些相关资料之后,最终选择了差分四相键控(DQPSK),它是较为常用的数字信号调制方式,具有频谱利用率低、抗干扰性强、实现简单等优点,被广泛应用于无线通信中。通信流程如图1.3.5所示,而具体的每一个通信模块原理及实现方式将在后续章节详细介绍。图1.3.5 主通信流程重庆大学本科学生毕业设计(论文) 2 数字编译码2 数字编译码2.1 信源编译码信息源将消息转换成原始电信号之后,为了提高信息传输效率、减小输出序列的剩余度、提高平均信息量,通过某种数据压缩编码技术对信源输出符号序列进行压缩变换,减少码元数量降低码元速率,最终降低传输带宽提高通信有效性,而信源译码或称解码是其逆过程。具体说来,就是针对信源输出的统计特性寻找一种编码方法将序列变成最短码字并输出,使码元平均信息量增大同时又保证能无失真的恢复原始序列。信源编码有多种,此处采用了编码效率很高的Varicode码,Varicode码是一种哈夫曼编码(Huffman Coding)。哈夫曼编码属于可变字长编码(VLC),即用长度不等的码字提高有效性。该方法完全依据字符出现的概率来构造长度最短、最佳的码字,有时候又称其为最佳编码8。该编码是一种基于符号的概率分布来进行编码的,符号在信息源中出现概率越大码字长越短,即最常出现的符号相应的码字越短;同样,出现概率越小的符号相应的码字越长,从而使信源在传输信息时传输的码最短即传输效率最高,它在可变字长的编码中也是最佳的。而在计算机信息处理中,哈夫曼编码是一种一致性编码,用于无损耗数据压缩。程序中我们用一张特殊码表如图2.1.1,采用查表法对信源数据进行编码。这张码表特别之处是建立在源字符出现估算的概率上的,为了提高效率,将常用字符分配短的编码,如字母“e”是英语中经常使用的字符分配二进制11,而将长的编码分配给不常用的字符,如“z”分配111010101。可变长度编码方式提高了编码效率,加快了字符传输速度。图2.1.1 可变长编码在CPSKMode类中有:m_TsShiftReg=VARICODE_TABLEch&0xFF,其中变量ch是从键盘输入得到的8bit的ASCII字符。而VARICODE_TABLE256是一个256个元素的数组即为编码表,程序通过ch&0FF对数组VARICODE_TABLE进行查表并将得到的可变长码字输入变量m_shiftReg保存用于后面进行信道编码。而信源译码同样是采用查表技术,只不过是信源编码的逆过程。2.2 信道编译码2.2.1 差错控制技术概述一个通信系统的性能指标最为主要的就是有效性和可靠性,而有效性和可靠性的提高往往存在一定矛盾,必须根据系通信统实际要求折中考虑。一般来说在满足一定的可靠性指标下,尽量提高通信的有效性即提高信息的传输速度。上一小节讲的“信源编码解码”技术,主要作用是提高通信的有效性;而这一小节讲的“信道编解码”技术即“差错控制编码”技术,主要是用于提高数字通信系统的可靠性传输技术。由于数字信号在传输的过程中,必然会受到各种干扰的影响,而致使其码元波形产生了变形,故当接收端收到变形的码元波形之后可能会产生错误的判决而导致误码的产生。信号传输中的干扰有两种,第一种“乘性干扰”,由于信道传输特性的不理想产生的误差,通常采用频域均衡或时域均衡技术加以纠正抵消干扰;二种“加性干扰”,信号在传输过程中叠加的噪声信号产生了误差导致了误码,需要采用其它方法加以解决,如合理选择调制解调方以及发送功率,当达不到误码率要求时通常采用差错控制编码技术来加以纠正。从差错控制的角度来看,按照加性干扰引起的错码分布规律不同,可将信道分成三类,即突发信道、随机信道和混合信道。不同信道类型采用不同的差错控制技术,常采用的差错控制技术有以下几种:检错重发法(ARQ)如图2.21,当接收端检测出接收到的信码出错时,即设法通知发送端让发送端重发,一直到正确接收为止。而所谓的检测到错码,是指在接收到的码组中发现有一个或多个错码,但是又不知道具体是哪个码错了,也不能对错码进行纠正而只能要求发端重发。接收端要通知发端重发必须一个反向信道,所以这种差错控制方法需具备双向信道,这也是一个缺陷。图2.2.1 ARQ系统原理框图前向纠错法(FEC)在发送端序列通过差错控制编码,即在发送序列中按照一定的规律加入冗余码即监督码元,而接收端利用这些监督码元和他们的关系不仅能够发现错码,还能纠正错码。对于二进制系统,只要能确定错码位置,就能够纠正它。采用前向纠错法无需反向信道传输指令,也不会因为反复重发而造成大的延时,实时性好,所以此次采用了前向差错控制编码。反馈校验法(IF)此法不需加入差错控制编码,接收端将收到的码元原封不动传回给发端,并在发送端与原码进行逐一比对,如果发现错码再重发。此法原理和设备都简单,但是需要双向信道,而且传输效率也低。以上三种差错控制方法也可以结合使用,如将ARQ和FEC结合使用,当发现较少的错码时采用FEC进行纠正,当发现较多的错码而超过FEC纠正能力则采用ARQ重发机制重发。此外,某些特定场合可以采用检错删除机制,此法只能适用于信息内容有大量冗余度或者多次重发的场合。在信息码元序列中加入的监督码元称差错控制编码也常称纠错编码,一般说来加入的监督码元越多检错纠错能力也越强,但编码效率也越低。根据著名的香农编码理论,对于有噪信道,存在信道编码可以实现可靠的通信,它能在发射速率RC(C为香农公式中给出的在加性白噪声下的信道容量)的情况下达到所期望的任意小的差错概率,当不满足时无论什么编码方式都不能使差错概率趋于零。不同的编码方式有不同的检错纠错性能和编码效率,现在较为常见的编码有分组码、卷积码和Turbo码。每种码都有自己的优缺点,根据具体通信系统、具体信道和具体要求来选择不同的编码方式。卷积码又称连环码是一种非分组码,对于前向纠错特别适用。在许多实际情况下它的性能更由于分组码,并且运算也简单,所以此次我们也采用了卷积编码。虽然卷积码也是将k个信息码元编成n个码元的码组,但是不同的是,监督码元不仅与当前的k个信息段相关,而且还同时和前面的m=(N-1)个信息段相关9。所以其中任一码组的监督码元都监督着N组信息段,N即为编码约束度而nN则称为编码约束长度,将卷积码记为(n,k,N)10。卷积码中,n和k值一般较小,而N一般视通信性能具体要求而定,当然N越大检错纠错性能越好,但译码延时和运算也会越大。相比较而言,在同种复杂度情况下卷积码性能明显优于分组码,而Turbo码译码又过于复杂,并且卷积码很适用于前向纠错法,所以选择了卷积编码方式,编译码简单且性能又比较好。2.2.2 卷积码编码的实现卷积编码的描述方式有多种,大体可以分为两大类:解析法和图形法。其中解析法常用于编码器部分的描述和说明,包括有矩阵生成法、离散卷激法和码多项式法等。而译码器部分则用图形法进行描述和说明,包括有状态图描述法、网格描述法和树图描述法。综合考虑,此次通信中采用了(2,1,5)卷积编码,但由于(2,1,5)编码器有24=16种状态并有25=32种情况,复杂度较高不易讲解,所以暂以(2,1,3)编码器举例进行说明。如下图2.2.2为卷积编码器结构图,由移位寄存器、模二加法器和开关组成。它的编码方法为,信息序列依次移入一个两级的移位寄存器中,每输入一组信息序列,输出端开关就旋转一周输出编码后的码组即和。输出码组C就由下式(2.2.1)确定: (2.2.1)图2.2.2 (2,1,3)卷积编码器因为卷积编码器的记忆性是有限的, m级寄存器既有个状态,每个状态代表寄存器不同值,输入K值时,根据不同寄存器状态输出不同值C1C2,据此画成状态转移图,如下图2.2.3。图2.2.3 (2,1,3)编码器状态转移图程序中,我们采用了查表法来实现(2,1,5)卷积编码,有24=16个状态并有25=32种情况,所以可以生成一个有32个元素的数组进行查表生成卷积码。在数组中,把5个比特(当前输入1个比特及先前输入存储的4个比特)涉及的情况罗列出来,按照每个输入对应一个输出(输出为2个比特)形式写成表格即数组。在进行编码时,直接用当前的1个比特输入和先前输入存储的4个比特来查表,得到编码后的2比特输出。查表法简单、运算速度快。下式(2.2.2)即为此次设计的卷积编码器的表达式,式(2.2.3)即为对应的多项式,式(2.2.4)为对应的脉冲冲击响应式。 (2.2.2) (2.2.3) (2.2.4) 进行卷积编码的代码为:symb= ConvolutionCodeTablem_TxShiftReg&01F其中变量m_TxShiftReg是用来存储当前1bit输入和前4bit输入,再根据5bit输入对ConvolutionCodeTable进行查表得到卷积编码后的2bit输出,表中输出结果3表示输出11,结果2表示输出10,结果1表示输出01,而结果0表示输出00,编码简单、快速。2.2.3 维特比译码的实现发送端的信道编码器对信码进行卷积编码后,接收端的信道译码器对其进行译码,卷积码的译码方式主要有两大类:代数译码和概率译码。代数译码是利用生成矩阵和监督矩阵来译码,是一种不考虑信道的统计特性而直接利用编码器本身的结构进行译码而。而概率译码又可称其为最大似然译码,是利用信道的统计特性和卷积码码元特性进行计算译码的。实用的有序列译码和维特比译码(Viterbi),当码的约束长度较短时,维特比译码效率更高、速度更快,目前得到广泛应用,所以此次也同样选用维特比进行译码。维特比译码是一种最大似然译码算法,即译码器的输出总是选择条件概率最大的码字。其基本思想是将接收序列与所有可能的发送序列进行比较,从中选择与接收序列汉明距最小即最大概率的发送序列对应的原始信息码作为译码输出。维特比译码常采用网格图描述卷积码,如下图2.2.4其中每一种可能的发送序列都与网格图中的一条路径对应。如在某一节点发现某一条路径已不可能与接收序列具有最短汉明距的话就舍弃。即对于k=1的每个节点只有两种走向,每次均可舍弃一条,也就是译码每次舍弃一半的可能序列,这样一直到最后一级仅保留了一条路径即为最终的译码输出。图2.2.4 (2,1,3)卷积码对应的网格图维特比译码算法设计为以下三步:从时刻l=m(m为存储器级数)开始,计算进入每一个状态的单路径的部分度量值,并且存储每一状态的幸存路径及度量值。当序列L增加1即l=m+1进入下一时刻,将进入的某状态分支度量值与前一时段度量值进行累加并计算进入此状态所有路径的度量值,保存度量值最大的(汉明距最小的)一条路径,删除其它路径。若lL+m,重复步骤2,不然停止。在进行Viterbi译码时,理论上来说必须接收完完整的数据块后才能进行判决输出,但这需要很大的存储空间并且也会造成比较大的延时,所以在实际运用中需要对接收序列进行截断判决法,截断长度即为译码深度,越长越深其误码判决概率越小但时延也越大,所以综合考虑此次译码深度为约束长度的4倍即收到20个符号之后判决输出,之后一直这样分段处理直至译完整个序列。调用函数BOOL CPSKMode:ViterbiDcode(double angle)实现维特比译码。程序是根据接收端解调器计算的前后符号相位差angle进行译码,其核心思想就是将所有可能的原始信息码进行编码ConvolutionCodeTablej得可能的相位差,再与收到的相位差相减即可以计算其度量,差值越大偏离越大,有点类似于汉明距,不过更为精确,为软解调。重庆大学本科学生毕业设计(论文) 3 数字调制与解调3 数字调制解调与同步3.1 DQPSK数字调制实现3.1.1 DQPSK调制调制过程就是将低频信号调制搬移到高频的过程,一般是未调信号控制载波的某些参数如幅度、相位或频率随未调信号变化来实现调制,解调是其反过程。而调制又分数字调制和模拟调制,数字调制相对模拟调制来说具有更好的抗干扰性能,而常见的数字调制方式有幅值键控(ASK)、相移键控(PSK)和频移键控(FSK)。其中PSK综合性能最好,所以选用QPSK进行调制,QPSK调制简单实用、性能优良,其频带利用率也较高。MPSK信号均可用式(3.1.1)表示: (3.1.1)式中为基带信号包络波形,理论上来说为矩形波,但由于频带较宽易产生码间干扰等原因,常常需要进行波束成型滤波,后面再具体进行叙述。TS为码元时间宽度即周期,而为载波的角频率,为第n个码元对应的相位,对于QPSK来说有四种情况即有四个相位。式(3.1.1)进行展开得到式(3.1.2),这样调制信号也可以表示为正交形式的两IQ支路。(3.1.2)其中,。QPSK信号的单边功率谱密度的主瓣比BPSK窄,其频谱利用率也高,这也是选用QPSK进行调制的原因。QPSK调制后的每个码元含有2bit信息,用a、b表示2bit的信息则共有四种组合,即00、01、10、11。他们对相位的控制是按格雷(Gray)码进行排序的,这样可以减小误码率,如果邻近相位误判那么最多也就错1比特,如表3.1.2所示。表中I和Q表示要生成相应相位的载波调制信号,需脉冲发生器产生双极性信号对载波和进行调制。QPSK编码表 表3.1.2abIQ1145o1101135 o-1100225 o-1-110315 o1-1图3.1.1为DQPSK信号的产生方法,其中的差分编码器是为了让QPSK变成DQPSK差分调制。由于对于PSK信号在相干解调时容易产生相位模糊现象导致误码严重,所以我我们采用了差分相位键控可以很好的解决这一问题。差分相位键控即调制前后码元的相位差,即使相干解调时载波初相出错也不影响后面的解码,因为是检测前后码元的相位差来进行解码的。表3.1.4为DQPSK编码规则,注意的是调制的是相位变化值,必须基于前面码元的初相,而I/Q值是对应载波的绝对相位的。图3.1.1 DQPSK信号产生方法图DQPSK编码表表3.1.4ab000o0190 o11180 o10270 o3.1.2 脉冲成型脉冲成型其实就是信道信号成型,在前面已经提到过理论上来说基带信号波形一般为矩形波,但是它并不适合于信道传输。矩形波频谱很宽,经过带限信道或带限滤波器时会有频谱损失,进而导致解调后的基带波形出现严重的失真和码间干扰,对抽样判决产生严重干扰,最终导致误码率急剧上升。为了解决这个问题,奈奎斯特第一准则指出,只要把通信系统(包括接收发机和信道)的整个相应设计成在接收端的每个采样时刻只对当前的符号有相应,而其它符号在此处的相应均为零,码间干扰就可以抵消。无码间串扰时的基带传输特性因满足公式(3.1.3),此即为奈奎斯特第一准则。 (3.1.3)而理想的低通滤波器虽然满足此公式,但这种特性在物理上是不可实现的,为了解决这个问题可以使理想低通滤波器的边缘缓慢下降称为“滚降”。较为常用的为余弦滚降特性,只要在滚降端频率中心处呈奇对称振幅特性就能满足3.1.3式从而实现无码间串扰传输。按照余弦滚降特性设计的脉冲成型设计的波形后可以明显发现在载波相位跳变处幅度很小,也就是说频带也确实变窄了。但是这样的设计对位同步要求很高,要想没有码间串扰,在接收端采样判决时间点必须严格的落在每个符号的中间,否则仍会产生码间串扰。为此,采用了一种特殊的脉冲成型,其基本规则如果是发送连1或连0码时,相位未变,脉冲成型输出为+1或1,只有 当前后码元不一样发生跳变时,才从前一码元的中间点开始到后一码元的中间点,用正弦或余弦函数来过度,其过度点幅值为0,而且在这过程中只能单调下降或上升一次。这种设计频带也会很窄,经过带限信道或滤波器也不会造成太大的损失。同时这样的设计也使一个符号的波形限制在了一个符号周期内,不会延展到其它符号周期内,同样也不会造成码间串扰。最大好处还有,在收端采样点处不需严格对准符号中点,只要在符号周期内找一个最大点,再进行采样判决就行了。DQPSK调制的程序实现框图如图3.1.2所示,调制器的相关参数为:采样速率8000采样点/s,符号速率为31.25符号/s(根据常规打字速度确定的速度),载波频率200-2000Hz范围(可自行设定),信号带宽31Hz左右11。在实现时为了减小系统运算量,脉冲成型和载波生成均采用查表法来实现。图3.1.2 DQPSK调制器的程序实现框图脉冲成型表如图3.1.3所示,由于信号采样率为8K,而符号速率为31.25符号/s,因此每个符号共有8000/31.25=256个采样点,脉冲成型表共8个符号宽度即2048个采样点。系统每输入一个符号,脉冲成型表就输出256个点与后面载波相乘进行数字调制,但输出的这256点的数据段并不是一个符号,而是前面符号的半段和后面符号的一半段。这样设计有两方面的作用,一是在完成波形成型的同时可以进行差分编码,其二是因为本身这种脉冲成型的设计就是当前符号波形与前后符号波形相关的。其对应的程序数组为PSKShapeTble2048。图3.1.3 脉冲成型波形表具体在进行脉冲成型查表时是根据脉冲地址生成函数进行的,即是利用相位查询表PSKphaseTable来查询符号波形地址的,再用这个地址去PSKShapeTble中查询波形输出的。前面已经讲过DQPSK有四种可能的绝对相位,但是不是一直有信息输入需要调制器进行调制,如果没有信息输入那么应该关掉载波的发送,所以除了以上四种相位状态外,还应加上一个0载波即载波关闭状态。同时为了实现差分编码,我们需要根据输入信息计算出相位变化值,再根据前一相位状态计算出现在相位状态。除了前面四种相位状态变化,还应增加两种相位状态变化,即载波的打开和关闭。这样的话我们就用数组PSKphaseTable65来进行查表实现脉冲波形成型地址生成。这个二维数组由6组数组组成,每组5个整数。6组代表六种相对于前一相位状态的相位变化量依次为:增加0o、增加90o,增加180o、增加270o、载波关闭、载波打开。而每组的5个整数的位置排序代表5中相位状态:45o、135 o、225 o、315 o、无信号。当知道前一符号相位状态和现在符号的相位变换量,就可以查表输出一个整数结果。载波生成也是采用查表法,这样可以简化运算和提高计算速度。如图3.1.4为1/4周期正弦波的数据表存储在Sin_Table1025数组中,由这1/4周期的正弦表利用Sin_lookup(int phase)函数就可以组成完整的正弦或余弦波形并输出一个周期内任一位置的数据,这样可以节省存储空间。因为调制器采用频率很难和采用频率8K形成整数倍关系,因此每个采样点在一个载波周期内也不会是完美位置,所以只能让载波数据表数据尽量准确,即一个载波周期有4096个点,精度为2/40960.088o,当然根据具体精度需求可以增加载波数据点数。3.1.4 1/4载波生成数据表对于的数字正弦载波信号,采用频率,只要知道载波此时相位就可以算出相应phase值了,推导如下式(3.1.4)。此刻采样点的相位phase等于前一采样点phase+,为两个采样点间的相位增量。这样每一个采样点时刻均有相应的载波值输出,与前面脉冲成型后输出的值进行相乘,实现I/Q支路调制。再将I支路和Q支路相乘调制后的值相加后传给DA,转换成模拟信号输出,就得到了真正模拟的被调制到音频载波的DQPSK信号了。 (3.1.4)3.2 DQPSK数字解调实现当接收端接收到DQPSK信号时,需要对其解调将频带信号还原成基带信号。由于前面采用了差分相位调制,所以解调方法主要分为两类:相干解调加逆码变换,以及相位比较法。最为常用的是第一种,即相干解调加逆码变换,与第二种方法比在相同信噪比情况下,误码率更低。如图3.2.1为DQPSK相干解调基本原理框图。DQPSK可以看成是两路正交的BDPSK的叠加,所以也可以用两路相互正交的相干载波去解调,将解调出两路正交的BDPSK信号。将进过采样判决得到码进行差分解码,得到原始信息码a和b,再将a和b进行并串转换就可以恢复出原始信息码了。在程序中,输入的AD采样数据存入pInDatai中,而数组cos(m_tRxPhase)和sin(m_tRxPhase)均是提取的载波生成表,输入信号采样数据分别与两路载波数据相乘,得到的数据temp.x和temp.y分别为I、Q两支路数据,进过滤波后再进行采样判决、差分译码等。图3.2.1 相干解调器基本原理图如图3.2.2为接收器原理图,其相干解调基本如上所述。其中有一个自动增益控制环路(AGC),其主要功能就是对信号进行幅度控制,使其信号经过AGC处理后,幅值基本达到1左右。主要程序如下所示,其中AGCave是信号的平均幅值,让I、Q信号除以AGCave就可以实现幅度在1左右的目的了,当然如果其幅度已经小于1了可以不进行处理,其具体实现为函数AGC(_complex* FreqSignal, _complex* BitSignal),其中第一个参数为输入的I、Q复信号指针,第二个参数为经过AGC处理的输出I、Q信号指针。图3.2.2 接收器原理图实现差分译码首先得计算符号间的相位差angle,相位差的计算公式推导如下式(3.2.1)。其中ZK和ZK-1分别为第K和K-1个符号的复信号,而和分别是两个符号的绝对相位,则可以依此计算出相邻两个符号的相位差angle。 (3.2.1)由于计算出相位差之后可以直接传送给维特比译码器进行软判决译码,软判决译码更为准确,所以差分译码就只需计算出相位值即可不需将其译码成相应二进制码。而维特比译码是调用函数BOOL CPSKMode:ViterbiDcode(double angle)实现的软判决译码,在第二章已经详细讲解在此不再叙述。维特比译码后再进行可变长度译码之后,就可以解码得到相应字符并输出了。3.3 系统同步3.3.1 载波同步同步在系统中举足轻重,严重影响系统通信性能。当采用相干解调时,接收端必须提供一个本地相干载波,此相干载波必须与发端的调制载波保持同频同相。我们常说的载波提取或者说载波同步,就是相干载波的提取过程。提取载波的方法一般可以分为两大类:插入导频法和直接法。插入导频法是对于某些信号中不含载频成分的,可以在发送信号时插入一个(或多个)被称为导频的正弦信号。在接收端就可以利用窄带滤波器将导频提取出来,进行辅助产生相干载波,但是这种方法需要额外插入导频,就相应增大了发射功率。另一种方法称为直接法,通过在接收端进行非线性变换,直接提取出载波,这种方法比较常用发射功率也更低。直接法中较为常用的、经典的是科斯塔斯环(Costas),其原理框图如图3.3.1所示。科斯塔斯环又称同相正交环法或边环法,它是利用了锁相环来提取出载波。锁相环路(PLL)是一个能自动跟踪输入信号相位的,闭环相位自动控制系统,利用锁相环路的相位跟踪作用迫使输出信号跟踪上输入信号的相位变化12。锁相环路是一个相位负反馈控制系统,通常由三个基本部件组成:鉴相器(PD)、环路滤波器(LP)、压控震荡器(VCO),各模块都有其独特作用。鉴相器是一个相位比较装置,用来检测输入信号和输出信号的相位误差,并输出相位误差信号用于后面控制压控震荡电路。环路滤波器具有低通作用,但更为重要的是它可以用来调节环路参数,它的低通特性决定误差信号是否能够通过,也就决定了环路是否能跟踪上相应相位变化。压控震荡器是一个电压-频率变换装置,它的频率受输入的误差电压信号线性控制变化,它有一个中心频率和相位控制灵敏度K,当相位误差电压信号为零时输出为的正弦信号,K越大相位误差信号控制灵敏度越大、反应越快。锁相环有很多应用,常见的应用情况有调制跟踪和载波跟踪。载波跟踪主要用于输入信号的初相变化信号的变化速度较慢的时候。即误相位差信号的时,相位误差信号就能通过环路滤波器,那么压控震荡器的输出就能完全跟踪上输入信号的相位变化,使输出信号与输入信号保持同频同相13。工作在载波跟踪状态的情况下的环路称为调制跟踪环,这种常应用于调频信号的解调器。载波跟踪是指输入信号的初相变化过快导致误差信号不能通过环路滤波器器,即误差信号时,相位误差信号也就不能控制压控震荡的频率变化,输出就是未调制载波。这种常应用于相干解调的载波提取中,由多普勒效应等导致的载波频率漂移相位变化缓慢的,环路能跟踪上相位变化;而由信号调制引起的相位变化较快,环路不能跟踪上相位变化,最后就提取出了载波,并且环路的滤波器作用相当一个性能很好的载带滤波器,能有效过滤噪声信号,将环路滤波器设计成窄带滤波器也是常见应用之一。锁相环应用于载波提取还有一个重要作用,输出的载波稳定,当输入信号衰落时锁相环能保持一定时间载波输出。图3.3.1 载波提取科斯塔斯环科斯塔斯环的关键是计算出本地载波(即压控振荡器的中心频率)与接收信号载波的相位差,但是接收信号是相位调制信号即每个符号的相位都与调制信息息息相关,为了提取准确的载波必须消除调制信息的干扰,使锁相环不能跟踪调制相位但却能跟踪上多普勒效应引起的频移和相移。因为我们采用的差分相位调制,对相位的同步要求并不高,只要保证输出载波与接收载波同频即可,所以我们仅需对频率进行锁定即可,而允许一个固定的相位差存在,那么载波同步过程中就不需要设法消除相位调制信息的影响了。图3.3.1 载波恢复流程图所以现在就需要估计频差,用来控制压控振荡器的输出信号的频率,如图3.3.1为现在的载波同步流程图,频差计算推导公式如式(3.3.1)。但如果用式(3.3.1)来计算频差的话有一个问题,在信号较小时会出现比较大的误差。而解调器的AGC处理让信号的平均幅度接近1即I2+Q21,但当幅度小于1时又未作处理,这时误差就会比较大了,而且信号幅度小的时候正是绝对相位不同的相邻符号切换的时候,此时频差也很大。所以直接领I2+Q21,这样就算出来就会变得比较小,而对输出频率恢复的影响也会很小,保证了系统的稳定性。所以式(3.3.1)简化成了(3.3.2),并转换成了相应数字信号计算方法。数字系统中是时间常数,而我们需要的频差控制信号也只是个相对值,其结果对比例系数并不重要,只需在最后根据需

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论