用NI技术设计的OFDM发射接收系统

用ni技术设计的ofdm发射接收系统
ofdm是一种多载波的数字传输体制,以其特有的优势被广泛地应用到数字音频广播,数字电视广播和无线宽带等领域,并将进入到更多的领域中。对ofdm系统的仿真可以用软件完成,但是对于硬件平台的搭建往往需要大量的开销和时间。针对这种情况,如果具备一套软件仿真代码移植方便且硬件平台搭建便捷的系统,可以极大地缩短ofdm系统的开发周期,才能在标准层出不穷的今天具有较强的竞争优势。
应用方案:基于ni虚拟仪器之pxi5671上变频卡、pxi5661下变频卡和labwindows/cvi8.5正版软件实现ofdm发射机与接收机的样机。
使用产品:
labwindows/cvi8.5 软件开发平台;pxi5671(pxi5441+pxi561);pxi5441 中频输出卡;pxi5610 射频输出卡;pxi5661(pxi5600+pxi5142);pxi5600 射频接收卡;pxi5142 下变频卡。
介绍:
ofdm是一种多载波的数字传输体制,由于具有频谱利用率高和良好的抗多径干扰等优点,已经被广泛应用到数字音频广播,数字地面电视和无线局域网等领域,并且被看作第四代移动通信的核心技术之一。但是对ofdm样机的研制和开发无论在软件算法的编写,还是硬件电路平台的搭建,都需要大量的人员和开销,且存在较高的风险。本文提出一种基于ni平台的ofdm实时收发系统的设计方法,即在cvi软件仿真平台上实现ofdm符号的数字基带处理算法的编写,用ni pxi5671和ni pxi5661实现ofdm射频模拟信号的发射与接收。对ofdm系统进行有效的验证,为今后大规模芯片生产提供了可靠的解决方案和理论指导。
ofdm系统简介
正交频分复用(ofdm,orthogonalfrequency division multiplexing)是把高速串行数据分成多条并行的低速数据,分别对多个正交子载波进行调制,从而达到更高的频谱效率、更大的系统容量,并且符号持续时间大大加长,在移动、多径、衰落环境下有很大的优势。
本系统的主要功能是用前端的usb设备对声音信号进行采集、处理,调制到ofdm符号中,并上变频到射频信号发射。收端将接收到的射频信号进行下变频处理得到数字信号,并解出音频帧由usb设备播放。发端系统的基带数据处理部分主要包括信源编码、fec、映射、ofdm成帧,硬件平台的处理部分包括数字上变频和射频调制等。接收系统的基带处理部分要主要包括同步、均衡、解映射、解fec、音频译码等,硬件平台的处理部分包括射频解调和数字下变频。
ofdm系统硬件平台架构
整个系统由两台ni主机,两个usb声卡设备,两台显示器,一台安杰伦频谱仪4440a组成,如图1所示:
图1系统结构图
首先由发端的usb设备对输入的声音信号进行采样,样点送入ni主机,然后在发端的上层软件中编写ofdm基带处理等算法,生成的ofdm基带数据输出到pxi5671上变频到中心频率为10mhz的射频信号。pxi5671由两块可分离的板卡pxi5441和pxi5610组成,其中pxi5441分为板卡ram模块和osp(onboard signal process,板卡数字信号处理)模块,板卡ram模块负责主机和pxi板卡间的数据传递,osp模块可对信号进行重采样滤波,数字上变频和da转换等。pxi5610为射频板卡,经过两级混频放大滤波可将pxi5441输出的模拟if信号调制到范围为250khz-2.7ghz的射频信号。收端由pxi5661对输入的射频信号进行解调,下变频到数字基带信号,并输出到ni主机上。pxi5661同样由两块分离的板卡pxi5600和pxi5142组成。pxi5661完成射频信号到中频信号的转换,pxi5142的两个模块osp模块和板卡ram模块,分别完成ad采样、数字下变频、重采样滤波和主机与pxi板卡数据传递等功能,最后由收端的软件上层算法解出音频信号输出给usb声卡播放。无论收端还是发端系统,上层软件算法产生的数据和pxi板卡的数据交互需要由主机内存和板卡ram来完成,其中dma控制主机内存和板卡ram间的数据传递,最大可达到1gbytes/s的数据吞吐量。板卡ram采用的是一种smc(synchronization and memory core)技术,该技术无须将指令和数据分开存储,ram中的fpga模块不但能处理上层软件产生的所有指令,对osp各模块进行配置,而且能对数据流进行缓存,最后由osp的读取引擎,并以上层软件中所设的iq速率读取数据,送入osp中进行重采样、滤波、变频等处理。
基带处理算法的设计与实现
基带处理算法的实现是基于labwndows/cvi8.5的软件平台,它是一个交互式开发平台,集成了标准c的编译、链接、调试等,并且采用简单直观的用户界面设计,用户只需在函数面板上直接输入参数,就会以事件驱动回调函数的方式运行整个程序,并可以将数据以图形的形式在界面上显示,提高了整个工程的运行效率。图2为本系统发端和收端的应用界面。
图2 ofdm发、收系统界面
对于单线程系统,一般分为数据的采集模块、分析处理模块、显示存储模块。这三个模块在时间上是顺序执行的,即后一个模块需等待前一个模块数据的到来时才开始工作。然而本系统对实时性要求比较高,比如在收端,usb声卡的播放需要收端的音频译码模块在400ms内处理完一帧,才能及时提供给usb声卡样点连续地播放声音,这就需要音频译码模块前的所有基带处理部分需要在400ms内完成一个物理帧到音频帧的解调。同样在发端,usb声卡每秒采集19200个样点给音频编码模块进行编码,每400ms输出一音频编码帧,fec、映射及ofdm成帧等模块也必须在400ms内处理完成,否则会出现丢帧和覆盖的现象。可以肯定,用单线程这种顺序化的执行方式效率很低,每个模块都要等待前一个模块的数据,对于实时性要求较高和复杂性较高的系统不适用。
本系统使用的是多线程技术,可以将处理模块拆分成多个线程,使多个线程并行运行,只要保证每个线程的运行时间小于音频处理模块,系统就会正常工作。其中发端算法用3个线程完成音频编码,fec、映射、ofdm成帧等处理,并将ofdm数据写到板卡ram中。收端算法用6个线程完成从板卡ram中读取ofdm基带数据、同步、均衡、fft、解映射、解fec等处理,最后由音频译码模块将音频帧送给usb声卡进行播放。为了保证线程间数据传递有序进行,cvi还提供了事件通知、安全队列、线程优先级等函数,保证线程间的同步和数据的传递。本系统使用的是全局buffer和安全队列回调函数方式使两个线程间获得同步。即两个线程间共享一个buffer和安全队列,前一个线程将每次计算得到的数据写到buffer中,并产生一标志位flag,写入安全队列,后一线程捕捉到安全队列中的flag,判断是否满足回调函数的条件,满足则启动该线程,并将buffer中的数据读出,不满足则继续捕捉flag。通过对安全队列中flag的读写,控制线程启动的时间,使得两线程对数据的读写达到平衡。程序中控制流程如图3所示。图4为由pxi5671输出到频谱仪e4440a的ofdm频谱。
图3 线程控制流程图
图4 pxi5671输出的ofdm频谱
结论
本系统用labwindows/cvi8.5软件完成ofdm的数字基带处理,在pxi硬件平台上完成射频信号的处理,有效地对ofdm系统进行验证。而搭建fpga pcb平台完成ofdm demo样机,首先在芯片的选型、制板上就需要大量的时间和人员,且具有一定的风险性;其次在软件代码开发方面,需要花大量的时间对fpga代码进行仿真测试和集成,而且改动起来灵活性差。然而基于ni技术的ofdm系统的开发,由于在软件上仿真代码的可移植性,和上变频等硬件平台的实用性,减少了ofdm系统的开发周期,节约了开发成本和人员。

简易机器人的制作
新iPhone方形3摄+A13 但是5G苹果手机尚无时间表
关于汽车LED前灯的演变过程分析
四核处理器简介
三星S8带光学指纹震撼来袭, 超高屏占比 这是要“炸”呀
用NI技术设计的OFDM发射接收系统
你的自选股里,99%的ChatGPT概念股没有技术含量
第四代磁传感器——TMR隧道磁阻传感器
基于SPAD的高性能3D ToF深度传感器输出亚毫米级精度的点云
电容电阻屏办不到的事电磁屏解决
苹果新品发布会公布了三款Mac家族的新品—MacBook Air等系列
FCC向Wi-Fi开放全频段6GHz,Wi-Fi 6起飞在即...
北斗星通高度适配的云芯一体解决方案解决高精度定位连续稳定难题
人工智能正在推动业务的巨大变革
变压器的保护主要有哪些?主变跳闸后应该如何处理?
爱立信连续第二年被评为5G网络基础设施市场领导者
基于CPLD技术的枪械电磁扳机控制仪
i7930怎么样 10年老U依然强悍
荣耀平板5将成为荣耀史上首款搭载GPU Turbo技术的荣耀平板
RX测试和RxEQ测试对比