基于GPS15L的移动自组网终端系统设计_无线通信论文
关键词:全球定位系统 移动自组网 时分多工同步码分多址系统 帧同步
移动自组网(manet)是一种由相互间能直接通信而没有中心控制的移动节点组成的无线通信网络。基于td-scdma的manet是在充分利用td-scdma蜂窝网无线资源的条件下而设计的自组织网络。基于td-scdma的manet的移动终端不但能够进行内部的交互,而且能够接入td-scdma蜂窝网并进而连接到internet。本文分别从底层硬件、软件和协议的角度设计了基于gps15l的td-scdma自组网移动终端。
1 manet终端系统总体设计
与德国fleetnet移动自组网不同,基于td-scdma的manet没有固定的网关、独立的频率资源和单独的无线传输技术(rtt)等。因此,在移动终端(mt)的软硬件平台、通信协议设计及组网方式上与fleetnet均有较大差异。同时,基于td-scdma的manet各个移动终端由于没有网络侧(包括node b)的协调控制,使得mt既可充当纯manet的移动终端,也可是td-scdma蜂窝网的普通用户设备(ue),或是集mt和ue于一身的网关(gw)。因此,在manet终端系统设计上,较普通的ue系统设计为更为复杂和深奥。
充分利用现有的研究成果是系统设计的首要原则。硬件平台上,在原有的现场试验移动台(ftms;相当于ue)上增加omap1510开发板(含手写显示彩屏、键盘、鼠标等外设)和gps模块。为使增加的外部设备能够与原有的ftms协调工作,必须增加相应的硬件接口和驱动软件等。同时,从层到应用层的协议软件均需做相应的修改或重写。
对基于td-scdma的manet移动终端系统设计本着从整体到局部、先概要设计到详细设计和软硬件并发设计的原则来进行。
2 硬件及接口设计
基于td-scdma的manet移动终端系统由以下几部分组成:射频及中频模块、模拟基带处理模块、数字基带处理模块、协议处理模块、语音编解码模块、sim卡及电源管理模块、键盘及显示模块、gps模块、pc接口模块和电源等。其组成和相互关系如图1所示。
2.1 gps15l模块
为什么使用全球定位系统(gps)?gps是一种使基于td-scdma的移动自组网得以正常通信的最为简洁而高效的设备。td-scdma中的“s”代表上行同步,即所有发送到node b(基站)的用户设备(ue)信号同时到达node b。由于移动自组网是一种无中心控制的网络,所以基于td-scdma的移动自组网节点之间的通信需要一个统一的时间标志,使各个终端之间的信号接收和发送以一定的节拍进行(帧同步)。美国garmin公司的gps15l提供了秒脉冲(pps),其精度为±100ns。利用这一特性,当一个秒脉冲到来时(上升沿),把它定义为每200个5ms无线子帧的起始点。在这里pps的作用相当于node b发送的dwpts。
除了提供pps之外,gps15l通过rs-232接口还提供了时间信息和位置信息,这些对设计功率控制算法和路由算法极为有利。有了对方的相对位置,终端在计算发射功率时就更为准准确确可靠,路由寻址就更有目的性。gps15l的接口如图2所示。
gps的pps送到fpga以后,与5ms的帧中断(帧同步)计数器进行比较。如果在两个pps之间多于200个帧中断信号,则减少帧中断计数器值,否则增加其计数值,直到刚好有200个帧中断信号为止。
gps的位置位置信息直接送到omap1510开发板,由运行在该开发板上的高层协议处理。另外,gls15l的串口速率是可以调整的,可以通过omap1510以一定的指令来调整其最佳工作速率(默认值为4800bps)。由于gps送出位置信息不是主动的,因此必须编写适当的指令以定期读取这些。
2.2 omap1510接口模块
omap(open multimedia application platform)则由ti公司生产的集成tms320c5510数字信号处理器和arm9 risc处理器的高性能开放式多媒体应用平台。dsp+muc是未来嵌入式应用的必然趋势。omap1510开发板提供了嵌入式操作系统、彩色显示屏、键盘和鼠标等外设,因此用它在未来的开发中替代目前配置的一个协议pc机和一个应用pc机,使ftms具有更大的移动性和可靠性。其接口如图3所示。
omap1510与gps的接口比较简单,它通过rs-232接口从gps得到位置信息。位置经omap内的arm9处理后送到其上运行的路由层。omap1510通过双端口随机存储器(dpram)与ftms的层控制芯片arm7交换数据。
omap1510还提供了usb接口,用它做前期的仿真调试。最初的路由和应用层协议将运行在pc机上。为使pc与omap1510之间能有高速的数据交互(至少需要144kbps),使用了usb总线。当这些协议都运行成功之后,将逐步移植到omap1510中。因此,usb在这里只是过渡性质的。
2.3 usb接口模块
omap1510上的usb控制器既可以在主控模式下(master),也可以在从属模式下(slave)工作。在这里,只把它设置在slave方式下工作,它允许外部usb主设备通过usb总线进行配置和读写。
3 usb驱动程序及应用软件设计
实际上,usb驱动程序包括两部分:工作在(omap1510上的)sybian操作系统中的主usb驱动程序以及工作在windows 2000/xp(pc)中的从属usb驱动程序。由于sybian操作系统中的usb驱动程序由omap1510开发板供应商提供,只需要设计windows环境下的usb驱动程序和应用程序即可。
笔者用jungo公司的windriver设计这些程序。首先,用kerneldriver 6.11驱动程序设计向导完成驱动程序源代码的生成(包括安装文件)。然后用vc++6.0等c++语言工具对这些源程序进行编辑、修改和编译以产生系统文件(.dll或.sys)。驱动程序生成之后还需要在pc上安装以测试其可靠性和稳定性。最后,用kerneldriver生成的应用程序加以修改和编译。对编译生成的.exe文件做usb配置测试。
4 基于td-scdma的manet协议软件设计
与td-scdma的manet协议栈相类似,基于td-scdma的移动自组网协议软件由物理层(l1)、层控制层(l1c)、无线链路控制(rlc)/媒体接入控制(mac)层、逻辑链路控制(llc)、tcp/ip(含manet路由)层和应用层组成。它们的相互关系及运行实本如图4所示。
l1层。层包括编码、突发成帧、用户检测/联合检测、信道解码、测量和控制等模块。由于基于td-scdma的移动自组网使用了td-scdma一致的无线帧/时隙结构及信道编解码技术,因此它们的层基本一致。
l1c层。层控制层包括公共服务、接口处理、过程控制等。主要用来解析高层命令和消息并把它转换成对l1的命令(cmd)或请求(req)。接收来自l1的数据和信令,解析该数据/信令并把数据转发或在本软件中加以处理。
rlc/mac层。该层主要做开环/闭环功控策略、层调度和自动重传请求(arq)等以保证一定的链路质量等。
llc层。该层主要用来控制逻辑链路以使链路建立/保持/拆除连接。
tcp/ip层。该层主要实现manet的ip分配与绑定、自组网节点路由/寻径和传输控制等。这一层和应用层目前在pc机上实际,下一步将把它们移植到omap开发板上。
应用层。该层实现诸如http、ftp等的网络应用。
以上简单介绍了基于td-scdma的移动自组网协议栈设计。更详细的请参看文献[3~4]。
目前,基于gps15l的td-scdma自组网移动终端正在测试之中,还有许多关键技术需要测试和调整。勿庸置疑,未来的基于td-scdma的自组网移动终端将采用长码(pn码)自同步方式而不需要gps的支持。在终端的节电机制及唤醒机制等方面还需要更多更深入的研究。