用户名: 密码: 免费注册 免费试用 简体中文 | ENGLISH
中国·芯片交易在线  
www.ic112.com
IC72论坛
广告服务
网页制作
用户帮助
首页 供应信息 求购信息 库存查询 新闻中心 展会资讯 IC厂商 技术资料 自由区域
当前位置:首页>> 技术资料 >> 正文
用成型滤波器组提高测距精度的一种方法
时间:2007/3/8 13:14:00  作者:  来源:ic72   浏览人数:1107
 
 

      在许多测距系统中,用户端接收到基站发送的帧信号后,便以该帧中特定的位置(称为帧参考时标)为基准发送“回复帧"给基站。基站收到回复帧后,提取它的帧参考时标,并以其作为测距的依据。通常用户端的系统时钟精度较低(本文提到的系统时钟均指用户端的系统时钟),因此接收到的帧参考时标会存在误差。在用户端经过计算估计出帧参考时标的误差,再用该误差调整发送回复帧的时刻,可实现精确测距。因此测距精度取决于两个因素:帧参考时标误差的估计精度和回复帧发送时刻的调整精度。本文主要讨论如何提高回复帧发送时刻的调整精度。回复帧是由基带码组成的,因此下文中讲的发送时刻的调整均指基带码发送时刻的调整。

      发送时刻的调整精度是由发送时刻的调整步长决定的。在一般的数字系统中,发送时刻的调整步长不小于一个系统时钟的周期。本文利用Altera公司的EP20K300EQC240-3型FPGA器件设计了一种成型滤波器组,使发送时刻的调整步长缩短为时钟周期的五分之一,从而将发送时刻的调整精度大幅度地提高。

      1 成型滤波器组调整发送时刻的原理

      成型滤波器组的设计原理图如图1所示。成型滤波器组包括一组成型滤波器。相同的发送基带码经成型滤波器组中不同的成型滤波器滤波后,会产生不同延时的发送数据波形。发送数据波形的延时不同,则发送时刻也不同。这就是说,相同的基带码经过不同的成型滤波器滤波后可产生不同发送时刻的波形。因此,以测距误差作为选择字,根据误差的大小选择相应的成型滤波器,就可间接地调整发送基带码的

ic72新闻中心

图1 成型滤波器组的设计原理图

      2 用FPGA设计成型滤波器
 
      通常,系统时钟频率远高于基带码的速率,因此在成型滤波前,要在基带码的相邻码之间进行内插。内插的方式有多种,通常的内插方法是在发送的基带码的相邻码之间内插“0”。将基带码插“0”后,与低通滤波器的冲激响应卷积,再送到D/A转换器转换成模拟波形就可以实现滤波成型。设计低通滤波器时,为了得到较好的波形,通常采用高阶的FIR滤波器。如果在FPGA中用逻辑单元实现高阶FIR滤波器,会占用大量的逻辑单元。比如在Altera公司的FPGA中用逻辑单元实现一个50阶的FIR滤波器,需要26个乘法器和50个加法器,要占用一千多个逻辑单元。而本文利用FPGA中的ROM,用查表的方法设计同样的FIR滤波器,则只需占用几十个逻辑单元。图2是成型滤波器的设计原理图。该设计包括用数学工具——MATLAB预先设计的部分和在FPGA中实现的部分,MATLAB完成成型滤波后的数据波形文件的设计。FPGA存储设计好的数据波形文件,并用发送的基带码选通相应波形的存储地址,完成滤波成型。 

ic72新闻中心

图2 成型滤波器的设计原理图

      首先用MATLAB设计数据波形文件。设系统基带码速率为N MHz,系统时钟频率为B MHz。FIR滤波器的阶数为(C为奇数,可根据滤波器的阶数要求进行选择)。FIR滤波器的系数可通过MATLAB进行设计。将C个基带码排列组合成2C种情况。对于每种组合,在C个基带码的相邻码间内插-1个0后,与设计好的滤波器的冲激响应卷积。卷积结果的中间个数据波形值就是该C个基带码组合的中间基带码(简称中间码)的滤波结果值。这个数据波形值可以存储在以该种组合(C个码)为基地址的ROM中。MATLAB可以计算出所有组合下C个基带码的中间码的滤波结果值。
 
      FPGA将所有滤波结果值存入ROM,将每个滤波结果值所对应的基带码组合作为该滤波结果值的存储地址。系统运行时,用一个C位移位寄存器存储C个基带码,作为地址选通ROM,则ROM输出的滤波结果值是C个基带码的中间码的滤波结果值。随着基带码依次到达移位寄存器,移位寄存器中C个基带码的中间码也被后面的基带码依次替换, ROM输出的将是依次到达的中间码的滤波结果值,从而实现基带码的滤波成型。

      图2中ROM存储的数据是设计一个成型滤波器得到的波形数据,为了与下面成型滤波器组的存储数据相区别,将图2中ROM存储的所有波形数据统称为一个子波形。

      3 在FPGA中用成型滤波器组调整发送时刻的方法

      图3是成型滤波器组的实现方案图。图中的FPGA的ROM中存储了E个子波形,称为一个成型滤波器组。第一个子波形就是图2所设计的子波形,称为原来的子波形。之后的E-1个子波形是原来的子波形以时钟周期的1/E循环左移1,2,...,E-1次得到的。如何得到这些移位后的子波形是设计的关键。由于波形的移位在MATLAB中是以数值的变化体现出来的,而通过MATLAB计算可以得到数值精度很高的波形数据,所以用MATLAB设计的波形,移位可以远小于时钟周期,因此可以很容易用MATLAB得到以时钟周期的1/E循环左移后的各个子波形。

ic72新闻中心

图3 成型滤波器组的实现方案图

      各移位后的子波形按循环左移大小依次存储在ROM中。因此一个时钟周期的延时被划分成了E个区间,将测距误差除以时钟周期,得到余数R,计算出R落在了E个区间中的哪个。选择该区间的子波形,将该子波形送到D/A转换器转换成模拟波形后再输出,就可将发送时刻的调整步长降到时钟周期的1/E。实际设计时,在MATLAB中将FIR滤波器的冲激响应以时钟周期的1/E循环左移,再与插零后的基带码卷积,就实现了子波形的循环左移。而通常的系统实时产生的波形是由系统时钟控制的,延时不会小于一个时钟周期,因此其调整精度远不如用MATLAB设计的成型滤波器组的方法。
 
      上面介绍的是子波形循环左移的方法,也可以将子波形循环右移,道理是一样的。

      4 实例与仿真

      4.1 子波形的设计与仿真

      本设计所应用的测距系统的基带码速率为2MHz,系统时钟频率为20MHz,因此在2MHz基带码的相邻比特间内插个“0”,然后通过阶(C选为5)的FIR滤波器就可实现成型滤波。5个基带码可排列成32种组合,图4是其中的一种基带码组合——11011的成型滤波的仿真结果。图中显示了该组合插零后与成型滤波器的冲激响应进行卷积的过程。可以看出,卷积后的中间10点数据波形正好是插零前5个基带码中间的信号0经滤波器平滑后的波形。这10点数据波形存在以11011为基地址的ROM中。

ic72新闻中心

图4 基带码组合11011的成型滤波的仿真结果

      4.2 成型滤波器组的设计

      由于时钟周期为50ns,当要求最小调整步长不大于10ns时,在MATLAB中将FIR滤波器的冲激响应以时钟周期的1/5循环左移,再与插零后的基带码进行卷积,就可以得到以时钟周期的1/5循环左移0,1,2,3,4次后形成的五个子波形。图5是组合为11011的基带码经上述方式产生的五个子波形的图。

ic72新闻中心

图5组合为11011的基带码经上述方式产生的五个子波形的图

      从图5中中央的两条虚线可以看出,经五次移位后的第五个子波形的0码与原来的子波形的0码相比,延时为4/5个时钟周期。这样就将调整发送时刻的步长减小到时钟周期的1/5,大幅度提高了测距精度。
 
      假设估计出的测距误差是72ns,如果不采用成型滤波器的方法,调整步长为50ns,调整一个时钟后,会产生72-50=22ns的调整精度误差。而采用成型滤波器后,调整的步长缩小为10ns,在发送时将第三个数据波形送到D/A转换器转换成模拟波形,再将模拟波形送出就可使调整精度的误差降低到72-50-2×10=2ns。图6是采用成型滤波器组前后调整精度的误差对比图(假设测距误差估计服从高斯分布,均值为25ns,标准差为25ns)。

ic72新闻中心

采用成形滤波器组前的发送调整误差  

ic72新闻中心

 采用成形滤波器组后的发送调整误差

            图6 采用成型滤波器组前后调整精度的误差对比图

      经图中的数据计算得出:在不采用成型滤波器组的情况下,发送调整误差的标准差为18.17ns。采用成型滤波器组后,发送调整误差的标准差为4.42ns,是不采用成型滤波器组时的。

      成型滤波器组占用ROM的数量是由发送时刻调整的精度、成型滤波器的阶数、波形数值量化的比特数、每个基带码的时钟采样点个数等因素决定的。对上面的例子而言,每五个基带码组合要生成10个8比特的波形数据,因此所存储的地址长度为4比特,存储单位是字节。五个基带码共有32种组合,所以一个子波形的地址长度为4+5=9位。在调整步长是时钟的1/5的要求下,要另加3比特基地址来存储五个子波形。所以整个成型滤波器组总共消耗的ROM的数量为2(4+5+3)×8=32768比特。

      除采用数字电路方式外,许多系统还用模拟电路的方式调整发送时刻:将基带码通过模拟触发电路发送,而测距误差通过模拟触发电路控制基带码的发送时刻。这种方式在理论上调整发送时刻的步长更小,但与数字电路相比,易受到温度、噪声等多种因素的影响,可靠性差得多。而本文提出的方法是用数字的方式实现的,稳定性和可靠性均有无可比拟的优越性。

      本文设计的成型滤波器充分地利用了硬件中所剩的ROM资源,占用了很少的逻辑单元。用该成型滤波器构成的成型滤波器组,可将基带码发送时刻的调整步长减小到时钟周期的几分之一,甚至十几分之一,因此大幅度提高了发送时刻的调整精度。本文的设计已被应用于某个测距系统中,取得了很好的效果。该设计还可应用于其它许多测距系统中,如定位系统、二次雷达等,因此有较高的实用价值。

 
【相关文章】
·单相电能计量芯片MCP3906及其应用
·DSP程序构造的加密体制
·CMOS为移动通信设备设置影像标准
·满足IC制造需求 半导体材料创新是关键
·ARM公司推出三维图形系统解决方案
·用成型滤波器组提高测距精度的一种方法
·旋转变压器在转子位置测量中的应用
·基于GPS的电压向量测量的新方法及其应用
·三相混合式多细分步进电机驱动器的设计
 
 
新闻搜索
 
新闻热点
基于红外超声光电编码器的室内移动小车定位系
基于闪烁存储器的TMS320VC5409DSP并行引导装载方法
非移动市场需求飙升,ARM预计2010年出货量超50亿片
一种快速响应的电容式湿度传感器感湿薄膜设计
利用特殊应用模拟开关改进便携式设计
无线传感器网络跨层通信协议的设计
基于GSM技术的汽车防盗系统的设计
热电阻在烟叶初烤炕房温度控制中的应用
高速数据转换系统对时钟和数据传输的性能要求
Zetex迷你晶体管功率达1.25W
友情连接
 关于我们  IC论坛  意见反馈  设置首页  广告服务  用户帮助  联系我们
copyright:(1998-2005) IC72 中国·芯片交易在线
(北京)联系电话:(010)82614113、82614123 传真:(010)82614123 客户服务:service@IC72.com 库存上载:IC72@IC72.com
在线MSN咨询:ic72sale8@hotmail.com 通信地址:北京市西城区西直门内大街2号大厦15层 邮政编码:100013
(深圳)联系方式: 在线MSN咨询:ic72sale6@hotmail.com 在线QQ咨询:191232636 通信地址:深圳市福田区振华路
注 册 号: 1101081318959(1-1)

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9