新闻中心

EEPW首页 > 手机与无线通信 > 基于双NIOS II的IP无线收发机

基于双NIOS II的IP无线收发机

—— (Wireless IP/Ethernet Transceiver)
作者:(北京航空航天大学) 王鹏 常青(导师)时间:2006-08-09来源:收藏

摘要:介绍了基于NIOS II 软核处理器的SOPC 技术,分析了传统方法和基于SOPC技术的方法实现扩频收发机的优劣,详细说明了嵌有双NIOS II的SOPC技术的方案设计。该设计增强了系统功能,改善了系统的灵活性,并提高了其适应不同应用需求的伸缩性。


Abstract: Introduce the technique of SOPC with softcore processor NIOS II . Analyze the traditional design and the SOPC design in a Direction-Sequence Spread-Spectrum Receiver And Transmitter system. Explain the design with SOPC method in which two NIOS II are embedded. The functions are enhanced , while the flexibility and scalability is extended.
Keywords: SOPC;  NIOS II;  Spread-Spectrum Receivers And Transmitter

一:概述
目前,日益蓬勃发展的网络技术促使许多应用产品向新一代工业及商务网络应用方向发展。一些不带网络功能的产品越来越不符合当今产品的需要。具有更多功能的集成、支持网络协议已成为目前产品研发的主流[1]。 
  传统的无线收发机具有体积大,可配置性差,功耗高,成本大,开发时间长等缺点,且不支持网络。
基于以上诸多因素考虑,我们将设计一个新式的支持网络的便携式的无线收发机来取代传统的收发机。该系统是无线网络的解决方案,采用先进的扩频技术,实现长距离数据传输。本系统是基于双NIOS II核的扩频收发机。该系统以全双工的方式进行无线方式的收发,并通过以太口进行网络传输。发射方面,系统通过网络收到数据进行扩频调制,经由射频装置从天线发射出去,完成发射部分。接收方面,系统从天线收到远端的信号,进行解调解扩并传给网络,完成接收部分。
其中一个NIOS II核完成无线收发机接收和发送的信号处理和运算,另一个核运行操作系统,完成以太网传输和其他相关控制。
之所以选择使用NIOS II来完成该系统,而不选择目前通用的(MCU+DSP)方式,我们主要考虑是首先双NIOS II的处理能力完全能够完成任务且开发方便,周期短。另外SOPC硬件线路可以规划到芯片内部,有效缩小PCB面积,减小体积。还有,由于NIOS II的软硬件自由配置空间极大,可以方便的调整系统不断提到系统性能。这几乎能够克服传统无线收发机的所有不足。另外NIOS II内核的可编程性,为以后支持更多网络协议等附加功能可能。
二:功能描述
本系统是基于IP的无线收发装置,具备网络功能的收发机其应用范围将大大增加。系统提供由键盘和液晶显示器组成的人机界面,可以实现本地系统设置,实现码分多址,在允许的作用距离内,设备间可以通过配置实现点对点和组网传输。


 
本系统是基于双NIOS II核的结构,其中一个核(CORE 1)运行操作系统,完成以太网传输,其他相关控制和人机交互任务。另一个NIOS II核(CORE 2)完成无线收发机接收和发送的信号处理和运算。两个NIOS II的数据和命令交互是通过FPGA内部的共享内存(双口RAM)来实现的。见下图:
 


三:各模块详细说明:
1  NIOS II CORE 1 功能说明
CORE 1运行MicroC/OS-II操作系统,进行以太网传输,人机交互,控制等方面的处理。
首先在上电后NIOS II初始化操作系统,初始化lwIP和其它的一些外设并初始化液晶显示器执行人机界面程序。在该用户程序中,通过用户的键盘输入对系统进行设置,调整系统的运行方式,同时将系统状态显示到液晶显示器。其中人机交互程序的系统的设置包括:数据传输方式配置(串口,以太口等),发射功率的选择,网络的配置,扩频序列的选择,环路参数的选择等等。其软件流程图如下: 


在该系统中,人机交互程序是用户的顶层程序,实现该程序的功能需要操作系统,lwIP,NIOS II的HAL,驱动程序等的支持。为实现程序要调用各层次的接口并编写驱动程序。其中的大部分程序直接移植altera公司提供的HAL即可。其关系如下: 
 

2  NIOS II CORE 2 功能说明
CORE 2 主要是完成直序扩频收发的信号的处理和运算,是收发机的核心按功能分为接收和发送部分。
发送部分:从共享内存中取来来自网络的数据(也可以来自其它接口),形成一路数字信号,然后加密,卷积编码(2,1,7),交织,组帧,差分,再扩频(127位),成型滤波,BPSK调制后通过射频模块发射出去。
功能框图: 
 
接收部分:接收部分接收来自射频的模拟信号经过AD后,复数下变频,相关器(匹配滤波),然后叉积鉴频,然后环路滤波,解帧,解交织,然后解卷积,解密等将一路数据信号存入共享内存供另一个核读取传输。
功能框图: 
 
2.1 软件流程图:
    接收通道中的载波和码的捕获跟踪控制比较复杂,运算较多所以在软核上用软件实现,流程图如下: 


2.2 成形滤波器
(1)设计实现[2]
用数字方法进行基带频谱成形,一般采用BTF(二进制横向滤波器)法和查表法。查表法即预先存储所有可能的基带成形波形的样本值,根据发送的数据序列,在存储器中查找相应的波形输出。BTF法则根据输入的数据序列实时计算输出波形。当基带信号为二进制数据时,采用这两种方法可以达到较高的性能价格比。
本文成形滤波器采用查找表方式实现,系统的输入数据为二进制双极性数据,映射逻辑为: , 。采用滚降系数为 的升余弦滤波器,升余弦滚降函数的系统函数为:
 ,                      
取波形的截短长度为输入数据码元宽度的四倍,则当输入信号为“1111”时,系统的输出波形如图所示。

    输入信号为“1111”,系统输出波形
图中,h1(t) 为h(t)的截短。可以看出,  时间段的波形为前后时刻波形的叠加,即连续输入的四个信号才能确定一段波形。若在一个 时间段内采8个样点,因为每个样点有24个可能值,所以共需要24 8=128个数据。这些样点值可以由上式计算得出,将它们以二进制补码表示,存入ROM中,就构成了查找表。样点数据存储格式见下图。 
 
图   波形数据存储格式
本系统所实现的成形滤波器主要由移位寄存器、计数器和查找表组成,输出为8比特的波形数据,硬件结构如下图所示。其中查找表为一个地址宽度为7比特,输出为8位比特的ROM,在FPGA内部实现。移位寄存器由4个带异步复位端的D触发器级联而成,基带数据串行输入,并行输出,其输出构成查找表的高4位地址,而低3位的地址由一个八进制计数器输出,其计数频率为基带数据频率的8倍,复位端连接数据时钟,即每送进来一位数据,计数器便清零。

    成形滤波器实现框图
(2)仿真验证
为了验证成形滤波器模块,在其数据输入端加入一数据源作激励,并将模块输出转化为十进制数,以模拟形式表示。仿真结果如下,其中din为输入二进制数据,q为输出的成形数据。可以看出,各个取样点之间的串扰很小,达到了基带成形的目的。 
 

2.3 相关器
    本系统使用匹配滤波其进行相关,其特点是捕获速度快,但同时消耗资源较多,该模块的设计难点是在不降低速度的前提下,尽可能的减小资源消耗。所以我们采用折叠型滤波器
当伪码长度较长或硬件资源紧张时,可以对倒置型滤波器进行“折叠”处理来进一步压缩资源。折叠滤波器是一种改进的倒置型滤波器,其实现原理基于以下等式:
 
    (5.6)
其中  , 为折叠次数。  
折叠型滤波器的工作时钟同步于输入采样时钟,即每进入一个采样数据,加法链中的数据向后移动一级。如式x所示,m次折叠滤波器将相关运算分为m步进行,每一步的相关运算长度为整个相关运算的1/m。在采样速率不变的情况下,折叠滤波器必须在一个采样时钟内执行完所有步骤。这就需要提高折叠滤波器的处理时钟,折叠几次,处理时钟就变为原来的几倍。另外如图x所示,倒置型滤波器的结构具有重复对称性,所示可以重复利用1/m长的相关运算单元完成整个相关运算。在FPGA的设计中,这种方法称为以速度换取面积,通过提高处理时钟节省了大量的硬件资源。下图所示为本系统所采用的2次折叠匹配滤波器,用64抽头实现了127位码长8倍过采样匹配滤波器。
由图x可知,折叠匹配滤波器主要由加法器、延时单元、伪码寄存器和反馈逻辑组成。其中本地127位伪码通过末尾添零变成128位,以折叠格式存放在伪码寄存器中。因为采用8倍过采样并且折叠系数为2,加法链每级之间的延时应该为16个处理时钟单位,但加法器本身占用了一个时钟延时,所以延时单元只需产生15个时钟延时即可。
折叠匹配滤波器的处理时钟为采样速率的两倍,每两个时钟周期出现一个采样数据。在第一个时钟周期,code0到code63被送入64个抽头单元中,同时code0加法器的反馈输入端被置为零。第一个时钟周期结束时,加法器的结果移入保存寄存器中。在第二个时钟周期,code64到code127送入抽头单元,code64加法器的输入来自保持寄存器。第二个时钟周期结束,最终结果送入捕获寄存器。
   


以下为时序仿真图,综合工具quartus5.0, 仿真工具 modelsim 5.8。其中clk_32k为发送符号时钟,I_corr为匹配滤波器输出的相关值。可以看出,在每一个符号周期内,相关结果都会出现一个峰值。 
 

2.4 叉积鉴频
    该模块是频率鉴别器,当输入同向和正交两个分量的时候,输出为当时的频差,其结果在送入环路滤波器进行闭环的反馈。 


其仿真图如下:

 
上图是在modelsim5.7上的布线后仿真图,第一个信号是频差,第二个信号是未下变频的信号,第三个信号是下变频以后的信号。由图可见频差在不断缩小变成零,下变频信号最后频率消失,同步成为一条直线[3]。


3  CORE 1与CORE 2通讯
CORE 1与CORE 2的通讯:采用FPGA内部的双口RAM形成一块共享内存,进行数据交互。其中接收和发送分别拥有独立的存储空间,另外一些交互命令也独立存储。如图: 
 


三:设计特点
1 本系统是一种基于网络的无线收发机,通过网络使无线收发机的功能大大丰富。本系统可以实现点对点传输,一点对多点传输,和组网功能。大大增强了无线收发机的应用范围。
2 使用SOPC能够非常方便快捷的搭建很有特色双核NIOS II系统,同时NIOS II支持操作系统并提供lwIP,对进行网络开发大大有利,这些都加快了系统开发进度。
3 我们做过评估,采用双核NIOS II完全可以胜任IP无线收发机。而不需要使用传统通的(MCU+DSP)结构,不仅节省了成本,而且缩小了PCB面积,更重要的是功耗大大降低。
4 NIOS II为我们提供了强大的软硬件选择性。在信号处理的接收方面,由于解扩解调计算复杂,对于环路滤波器和叉积鉴频中的一些运算使用了NIOS II的自定义指令。而能量捕获则作为硬件加速,完全在硬件中实现。
系统提供了键盘和液晶显示器,可以直接对系统的运行方式进行调整,并显示调整结果。
综上:采用新方法实现的无线收发机在许多方面比传统方案都有所改进和提高,为今后实现无线收发机提供了一个新的方向。



参考文献:
[1]    SOPC/FPGA教程 www.21control.com
[2]    李博 直序扩频接收机数字中频模块的FPGA实现 北京航空航天大学硕士论文 2006
[3]     姚廷燕 SOPC 技术在软件无线电平台中的应用 遥控遥测 2005.7



关键词:

评论


相关推荐

技术专区

关闭