微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > IR-UWB通信系统高速USB接口的设计与实现

IR-UWB通信系统高速USB接口的设计与实现

时间:03-13 来源:互联网 点击:
IR-UWB(Ultra Wide Band Impulse Radio)无线通信是一种不用载波,而采用时间间隔极短的脉冲进行通信的方式,也称作脉冲无线电(Impulse Radio)、无载波(Cartier Free)通信。 2001年4月我国发布了“十五”863计划,其中把UWB无线通信关键技术以及共存与兼容技术列为有关通信技术主体研究项目,许多高校也将对UWB的研究作为重点科研项目,取得了很多进展。其中,某高校参与研发的UWB通信演示系统,要求可在室内10 m距离内传输流媒体,文中以该UWB通信演示系统为依托,分析了UWB通信系统与终端设备的接口需求,选用高速USB接口方案,运用FPGA技术实现了USB接口硬件控制电路及计算机终端与UWB通信系统基带模块的数据传输。

1 高速IR-UWB通信系统方案和实现

如图l,图2所示。IR-UWB通信系统由计算机端信源信宿、UWB发射机、UWB接收机、基带信号处理、超宽带收发天线组成。该系统中,传输信号中心频率达到3.5 GHz,UWB脉冲包络宽度在4~6 ns之间,频谱带宽不小于500 MHz,室内传输距离在10 m以内,发射信号谱型满足FCC频谱模板要求,其信道传输速率可以达到100 MB·S-1。



1.1 基带传输方案

基带部分是UWB通信设备的关键模块。它主要完成信道编解码、终端与通信系统的连接,如图3所示。



UWB通信系统已经实现,该通信系统发端采用内置信源,收端通过示波器观测数据是否达到指标要求。显然这样的方式无法反映UWB通信系统的性能,因此必须为该通信系统扩充终端接口。文中对高速USB接口进行了讨论。USB是一种应用在计算机领域的新型接口技术,最早由 Compaq,Intel,Microsoft等多家公司于1994年11月共同提出,其目的是使用USB取代PC机现有的各种外围接口,使外设的连接具有单一化、即插即用、热插拔等特点。为了支持UWB通信系统100 MB/s的传输速率,并保证流媒体实时、流畅的传输,文中最终选用高速USB设备作为通信系统的扩展接口。USB2.0接口设备通过USB数据线与计算机相连,并且通过8位数据线与通信系统相连。在发送端,USB2.0接口设备的作用是采集计算机发送的数据,并转发到UWB通信系统的基带模块中;在接收端,UWB接收机将收到的数据经过基带处理,再通过USB2.0接口设备转发给计算机。

1.2 USB接口芯片分析与选用

文中选用EZ-USB FX2系列芯片作为USB接口芯片,并设计了USB接口电路。该电路控制USB芯片与UWB通信系统基带模块的数据传输,实现了计算机与UWB通信系统的互连。

USB2.0协议中规定,USB芯片支持3种传输速率,分别为1.5 MB·s-1低速传输、12 MB·s-1全速传输、480 MB·s-1高速传输。一般有3种常用的USB功能设备接口芯片:低速传输芯片CY7C630/1xxA、全速传输芯片EZ-USB系列和高速传输芯片 EZ-USB FX2系列。为了支持UWB通信系统高达100 MB·s-1的传输速率,并且保证流媒体传输的实时性、流畅性,系统选用高速传输系列芯片CY7C68013作为USB接口芯片。

2 发端计算机与UWB通信系统接口的实现

2.1 发送端USB接口方案

如图4所示,控制电路收发端计算机传送的数据,将其存入USB芯片内部512 bit的FIFO中,同时产生表示FIFO空或非空的状态信号u_flagc,当u_flagc为高电平表示FIFO非空,反之即空。1 kBFIFO模块是用来进行数据缓冲,同时产生写满wrfull的标志信号与表示FIFO中还有多少bit数据未读出的信号usedw。USB发送端状态检测与控制模块用于检测相应状态的标志信号,以产生异步读取USB接口FIFO中数据的信号u_slrd,在u_slrd的上升沿将USB接口FIFO中的l bit读出,同时将数据写入到l kBFIFO中。数据打包模块是将数据按照帧格式打包处理。



若u_flagc=1表示USB设备中有数据。FPGA控制电路从USB芯片中读取数据,接下来判断FPGA控制电路的缓存是否还有空间,如果缓存未满,则将从USB芯片中读得的数据写入FPGA缓存中。在实际调试中发现,wrfull为高电平不会出现,因为在有效时间段内,读取数据的速率要比写入快。

2.3数据组帧模块

完成将数据组帧和短包发送功能。当1 kB FIFO中数据有512 bit时,进行数据打包发送,即首先发送帧头数据E25F35,接着发送表示帧长度的数据,最后发送512 bit的帧数据。当传输文件的最后一帧数据不足512 bit时,才用短包发送功能。首先将剩余数据打包,先发送帧头数据,再发送剩余数据大小,最后发送剩余数据。

数据流在物理层上是以帧为单位进行传送的,因此将数据送入物理层之前必须对数据进行组帧。数据帧结构,如图7所示。



24 bit代表这个包的包头,其值为E25F35。9 bit代表这个包中有效数据的bit数。512×8 bit代表512 bit数据,其中有效数据的个数由包头前面的9 bit所标识。接收端只有在检测到包头E25F35后,才会处理包头前面的9 bit和包头后面的512×8 bit。



组帧的流程,如图6所示。usedw表示1 kB FIFO内所存储的未读数据的bit数。若usedw≥512则表1 kB FIFO内有512个数据可以被打成一个完整的包。若usedw<512表示缓存中的数据不足一帧,这时判断1 kB FIFO中是否还有数据。若usedw>0,则表示FIFO内还有数据。 Timer_ count是一个特殊的计数器,它表示连续多少个时钟周期没有从USB读取过数据,当从USB读取数据时,它会被清零。若Time_count=1 024l贝0表示l 024个时钟周期都没有从USB读取过数据,便把1 kB FIFO中剩余的数据补零打包发送出去。

2.4发送端OSB接口电路实现

发送端USB接口电路,如图8所示。



2.5 发送端接口电路数据波形

图9是利用FPGA开发工具QuartusⅡ6.O提供的虚拟逻辑分析仪逻辑分析测试图。如图9所示,u_flagc是USB芯片中FIFO的空满信号,它表示USB的FIFO中是否有数据,若u_flagc为高电平表示有数据。bit_out是数据进行组帧打包后输出的比特流,比特流将送入通信系统的基带部分进行信道编码。 bit_valid为高电平对应bit_out中的有效数据。rdusedw表示FPGA控制电路FIFO中的剩余数据。当FPGA控制电路FIFO中的数据满512 bit时,控制电路从FIF0中读取一帧数据。state表示状态机的状态转换,0表示等待状态,状态1时发送帧头数据,状态2时发送帧长数据,状态3时发送有效数据。



Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top