基于DSP 的扩频通信接收系统的研究
2014-07-02姚新敏
姚新敏
(西安邮电大学 自动化学院,陕西 西安 710121)
0 引言
扩频技术是将基带信号的频谱扩展至和宽的频带进行传输,接收端采用相关接收的原理,将扩展的频谱恢复到基带信号的频谱,从而抑制传输过程中的干扰。软件无线电充分利用嵌入通信设备里的单片微机和专用芯片的可编程能力, 提供一种通用的采用宽带A/D 转换器、DSP 和通用中央处理器(CPU)相结合的无线电台硬件平台。 本课题研究完成扩频通信的捕获、跟踪、同步过程,实现对信号的最终解调,并对该系统的可行性进行分析。
1 扩频通信基础理论
扩频通信技术这种信息传输方式,把要发送的信息扩展到一个很宽的频带上, 扩展后的频带宽度远大于所传信息必需的最小带宽;频带的扩展是通过一个码序列来实现的, 该码序列与所传信息数据无关;在接收端则用同样的码序列进行相关处理,就可以恢复所传信息。扩频通信具有抗干扰能力强、可进行多址通信、安全保密、抗多径干扰、定时和测距等特点。
1.1 扩频通信的工作原理
在发送端输入信息比特流,先经扩频码发生器产生的扩频码调制以展宽信号的频谱, 频谱展宽后的信号再搬移到射频载波上发送出去。
接收端收到宽带射频信号后,将它变频至中频,然后由本地产生的与发端相同的扩频码序列进行相关解扩、解调、恢复成原始信息输出。 与一般数字通信系统比较,扩频通信就是多了扩频调制和解扩部分。
1.2 扩频信号的解扩
相关解扩运算是通过本地参考信号同接收信号相乘实现的。这个本地信号是发射扩频信号的副本,两者保持严格同步。经过相关运算,被扩频码展宽的有用信号频谱压缩回基带信息频谱,而无用信号的频谱反而被本地参考信号展宽, 从而降低了无用信号的功率谱宽度,提高了基带滤波器输出端的信噪比。解扩用的相关器有直接式和外差式两种。
1.3 扩频序列的捕获
扩频序列的捕获是指接收机在开始接收发送来的扩频信号时,调整和选择接收机的本地扩频序列相位,使它与发送来的扩频序列相位一致,也就是接收机捕获住发送的扩频序列相位的过程,又叫扩频序列的初始同步。
1.4 跳频序列的同步
跳频序列的同步是由跳频序列同步跟踪环使用延迟鉴相器,环路中的频率合成器在跳频序列发生器作用下,产生两个与接收到的跳频信号的跳变频率超前和滞后一段时间的信号。信号频率与接收信号的频率正好相差一个中频,经乘法器混频滤波器滤波、平方后相减,就获得了超前一段时间的本振信号与接收信号混频后的中频信号,同滞后一段时间的本振信号与接收信号混频后的中频信号相差的电压,是有超前滞后鉴别能力的信号,能实现跳频信号的同步跟踪。
2 基于DSP 的扩频通信接收系统
2.1 DSP 系统概述
输入信号首先进行带限滤波和抽样, 然后进行A/D (Analog to Digital)变换将信号变换成数字比特流。 根据奈奎斯特抽样定理,为保证信息不丢失,抽样频率至少必须是输入带限信号最高频率的2 倍。
DSP 芯片的输入是A/D 变换后得到的以抽样形式表示的数字信号,DSP 芯片对输入的数字信号进行某种形式的处理。 数字处理是DSP 的关键,在交换系统中,处理器的作用是进行路由选择,再经过处理后的数字样值再经D/A(Digital to Analog)变换转换为模拟样值,之后再进行内插和平滑滤波就可得到连续的模拟波形。
2.2 DSP 系统的设计思路
实时DSP 系统的设计包括硬件设计和软件设计两个方面。 硬件设计首先要根据系统运算量的大小、对运算精度的要求、系统成本限制以及体积、功耗等要求选择合适的DSP 芯片,然后设计DSP 芯片的外围电路及其他电路。 软件设计和编程主要根据系统要求和所选的DSP 芯片编写相应的DSP 汇编程序, 若系统运算量不大且有高级语言编译器支持,也可用高级语言(如C 语言)编程。 由于现有的高级语言编译器的效率还比不上手工编写汇编语言的效率,因此在实际应用系统中常常采用高级语言和汇编语言的混合编程方法。 采用这种方法,既可缩短软件开发的周期,提高程序的可读性和可移植性,又能满足系统实时运算的要求。
2.3 程序的设计思路
Matlab 程序是按照扩频通信中直扩的方法实现的,CCS 中程序是它的一个实现同步的部分。 程序的开始是做初始化的预设值,程序的思路是读取从Matlab 产生的发射端扩频后数据, 在接收端先实现系统同步,然后将这些数据恢复,它做的是第一部分工作,即同步过程,因此数据的获得是通过读取文本的数据产生。
在CCS 程序中做一次同步处理,不能是先读取一帧数据,然后完全处理这一帧数据, 再读下一帧数据。 FIFO 是一个先入先出的缓存器,即先到的数据先输出,它可以缓存一段数据。如果完全处理完一帧数据的话,再从FIFO 读数据,就可能出现一种情况,AD 采样的数据源源不断输入FIFO,输满后,就不能输入数据。
2.4 TMS320C6416 环境下对代码进行优化分析
编译器可以对代码进行不同级别的优化,高级优化由专门的优化器完成,低级的和目标DSP 有关的优化由代码生成器(code generator)完成。 最优代码只有通过高级优化才能实现。
其中主要观测数据为:代码长度(Code Size)和Incl.Total: 在统计工程中剖析代码段消耗的所有时钟周期(Incl.Total)。
上图左边运行时没有进行任何优化,优化时代码长度为3100,消耗时钟周期为372524971,时钟周期乘以1.67ns 可以估算出代码执行一次消耗时间约为0.622 秒。
上图右边运行时进行程序优化,代码长度长度为2332,消耗时钟周期为271801505,时钟周期乘以1.67ns 可以估算出代码执行一次消耗时间约为 0.454 秒。
从结果可以看出,对程序进行优化可以不同程度的改善代码性能和程序运行时间, 对程序进行较为完善的优化可以大大减小代码长度,减小消耗的时钟周期,从而提高了系统的处理能力。
3 小结
扩频通信具有很强的抗干扰特性, 在军事和民用上具有重要价值。TMS320C64X 系列DSP 具有强大的数据处理能力,它配合好芯片外围硬件设计可以满足大部分高速率, 高性能的要求。 本文主要介绍基于DSP来完成扩频后信号的解扩, 在此基础上进行的优化, 研究了性能最强的TMS320C6416 的优化策略, 并针对TI 的DSP 处理芯片TMS320C6416的特点,提高系统了的处理能力,并对优化前后进行了对比分析。
[1]王前,李韬.利用DSP Builder 设计直序扩频通信系统[J].实验技术与管理,2009,26(4):55-57.
[2]Texas Instruments Incorporated;TMS320C6000 系列 DSP 编程工具与指南[M].北京:清华大学出版社,2006.
[3]江思敏,刘畅,主编.TMS320C6000DSP 应用开发教程:DSP 应用开发教程系列[M].北京:机械工业出版社,2005.
[4]TMS320C6X 系列用户手册[S].TI 公司.
[5]李柳婵.DSP 在扩频通信技术中的应用[J].企业科技与发展,2011(16):36-37.