(模式识别与智能系统专业论文)数字脉压与恒虚警检测器的fpga实现.pdf_第1页
(模式识别与智能系统专业论文)数字脉压与恒虚警检测器的fpga实现.pdf_第2页
(模式识别与智能系统专业论文)数字脉压与恒虚警检测器的fpga实现.pdf_第3页
(模式识别与智能系统专业论文)数字脉压与恒虚警检测器的fpga实现.pdf_第4页
(模式识别与智能系统专业论文)数字脉压与恒虚警检测器的fpga实现.pdf_第5页
已阅读5页,还剩47页未读 继续免费阅读

(模式识别与智能系统专业论文)数字脉压与恒虚警检测器的fpga实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 近年来,c p l d 胛g a 技术迅速发展,己经成为实现数字信号处理的重要技术 之一。本文讨论的就是应用f p g a 实现两个数字信号处理模块,它们分别是数字 脉冲压缩系统与选大恒虚警检测器。在第一部分中,首先说明了数字脉压技术是 现代雷达中重要的信号处理技术之一。而f f t 变换模块则是硬件实现脉压技术的 核心部分;然后介绍了f f t 的基本知识以及基于f p g ai pc , o r e 实现的数字脉压的详 细设计方案,并给出了设计的仿真结果、仿真波形以及与软件仿真结果的对比, 最后给出了设计的优化建议。第二部分,首先也是说明了c f a r ( c o n s t a n tf a l s e a l a r mr a t e ) 检测器是雷达信号检测领域的一个重要组成部分,并从理论上阐述了 多种恒虚警检测器的实现方法,然后给出了一种利用f p g a 来实现g o - c f a r 检测 器的方案,并介绍了c n 恻佥测器各个模块的设计和实现。 关键词:数宇脉压恒虚警f f tf p g a a b s t r a c t a b s t r a c t i nr e c e n ty e a r s , t h er a p i dd e v e l o p m e n to fc p l d f p g ah a sb e e no n eo ft h em o s t i m p o r t a n tt e c h n o l o g i e so fr e a l i z i n gd i g i t a ls i g n a lp r o c e s s i n g i nt h i sp a p e r , i tf o c u s e s 0 it h eh a r d w a r ei m p l e m e n t a t i o no f t w om o d u l e so f s i g n a lp r o c e s s i n gb yf p g a , w h i c h a r ed i g i t a lp u l s ec o m p r e s s i n gs y s t e ma n dc k ) - c f a rd c t c 吼叫i nt h ef i r s tp a a , w e p r e s e n tt h ef a c t t h a td i g i t l 凼c o m p r e s s i n gi s o n eo ft h em o s ti m p o r t a n t t e c h n o l o g i e si nm o d e ml 钺l a r ot h em o d u l eo ff f ri s t h ec o r eo ft h eh a r d w 盯e i m p l e m e n t a t i o no f p u l s ec o m p r e s s i n g t h e nt h eb a s i ck n o w l e d g eo f f f t a n dt h ed e t a i l d e s i g no fd i 咖lp u l s ec o m p r e s s i n gb a s e do ni pc o r eo ff p g a a r ei n t r o d u c e d t h e s i m u l a t i o nr e s u l t , s i m u l a t i o nw a v e sa n dt h ec o m p a r i s o no fs i m u l a t i o no fs o f 咖l r ea 坞 p r e s e n t e d i nt h el a s t , i tg i v e s8 0 m co p t i m i z c da d v i s e sa b o u td e s i g n i nt h es e c o n dp a r t , w ea l s op o i n to u tt h a tc f a r ( c o n s t a n tf a l s ea l a r mr a t e ) 出眦ri sa ni m p o r t a n tp a r t i nt h ef i e l do fr a d a rs i g n a ld e t e c t o ra n ds e v e r a lm e t h o d s 撇i l l u s t r a t e dt h e o r e t i c a l l y w h i c hc a nr e a l i z et h ec f a rp r o c e s s i n g t h e n , t h ed e s i g nm e t h o do fg o - c f a r & t e c t o rb yf p g ai sp r 黜- n ta n dt h ei m p l e m e n to fe a c hm o d u l eo fd e t e c t o rw a s i m r o d u c e c l k e y w o r d :d i g i t a lp u h ec o m p r e s s i o n c f a rf f rf p g a 创新性声明 本人声明所呈交的论文是我个人在导师的指导下进行的研究工作及所取得的 研究成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文 中不包含其它人己发表或撰写过的研究成果:也不包含为获得西安电子科技大学 或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志所做的任何 贡献均已在论文中做了明确的说明并表示了谢意。 本人签名: 日期: 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究生 在校攻读学位期日j 论文工作的知识产权单位属西安电子科技大学。本人保证毕业 离校后,发表论文或使用论文工作成果时署名单位仍然为西安电子科技大学。学 校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部 或部分内容,可以允许采用影印、缩印或其它复制手段保存论文。( 保密的论文在 解密后遵守此规定) 本学位论文属于保密,在一年解密后适用本授权书。 本人签名: 导师签名: 日期 日期塑2 :苎 第一章绪论 第一章绪论 1 i 引言 所谓数字脉冲压缩技术就是指主要采用数字器件实现的脉冲压缩技术。随着 现代武器和现代飞行技术的发展,对雷达的作用距离、分辨力和测量精度等性能 指标提出了越来越高的要求。为增加雷达系统的检测能力,要求增大雷达发射的 平均功率,如果峰值功率受限,则要求发射脉冲尽量宽:而为提高系统的距离分 辨力,又要求发射脉冲尽量窄,可以看出提高雷达距离分辨力同增加检测能力是 相互矛盾的。通常的解决办法是在发射机端发射时间展宽了的信号,信号内部进 行必要的调制,在接收端通过压缩滤波器来产生窄的时间脉冲,这一过程就称为 脉冲压缩。作为现代雷达的关键技术,脉冲压缩有效地解决了分辨力同平均功率 的矛盾,并在现代雷达中广泛应用。脉冲压缩的实现有两类,一类是用模拟器件 实现的模拟方式,另一种则是采用数字器件来实现的数字方式。本文介绍基于 f p g a 的数字脉冲压缩的实现。 雷达是一种靠辐射电磁能量和检测反射体回波的存在以及特性来进行工作的 有源装置。雷达的主要目的是检测远距离目标和确定目标的空间位置。 但是雷达信号总是有干扰的,接收回来的雷达信号一般由三部分组成:回波 信号、杂波和噪声,所以在干扰中检测目标是雷达信号检测的关键。通常来讲, 雷达回波首先经过检波和积累,然后对处理后的数据进行目标检测,检测目标是 否存在的依据是信号检测理论设定的检测门限:当回波大于设定的检测门限时, 则认为目标是存在的,否则认为目标不存在。由于在雷达回波中包含杂波和目标, 如何在杂波背景条件下设定检测门限与雷达检测的检测性能要求相关,雷达信号 检测的基本准则是n e 触p c 掷o n 准则,即在保持虚警率和其它条件不变的情况下 使目标的发现概率最大。检测门限的设定与雷达杂波的分布形式及其参数有关, 这些参数一般可以用来表征杂波的强度等特征。为保证雷达信号检测时的虚警概 率不随杂波强度的变化而变化,检测门限应当随着杂波强度的变化做出相应地调 整,目的就是在保持给定虚警概率不变的情况下,使得发现概率达到最大,从而 改善雷达在实际杂波干扰下的目标检测性能,这就是信号的恒虚警( c o n s t a n tf a l s e a l a r mr a t e ,c f a r ) 。本文就是介绍基于f p g a 的恒虚警检测器的实现。 从上面可以知道,本文两个数字信号处理模块的实现都是基于f p g a ,主要是 因为f p g a 具有以下的优点: ( 1 ) f p g a 提供了大量的并行结构与算术逻辑单元, 而与a s i c 相比较其设计周期较短; ( 2 ) 基于第一点,f p g a 非常适合于实现并行 结构,如p i p e l i n e 等;( 3 ) 设计的修改与产品升级非常方便;( 4 ) 相对比专用数 2 数字脉压与恒虚警检测器的f p g a 实现 字信号处理模块( d s p ) ,f p g a 实现数字信号处理的速度更快,同时更容易将一 个数字信号处理系统集成到单片f p g a 上。上面的这些优点并不是f p g a 优点的全 部,但却是选择其来实现数字信号处理器的原因。 1 2 论文的主要工作及内容安排 1 2 1 论文的主要工作 论文的主要工作,就是基于f p g a ,结合v h d l 语言的自顶向下设计方法, 进行两个数据处理模块的设计与实现。这两个模块分别是数字脉冲压缩系统( 基 于x i l i n x 公司的f p g a - v i r t e x 2x c 2 v 3 0 0 0 ) 和g o - c f a r 恒虚警检测器( 基于 x i l i n x 公司的f p g a - - v i r l e x 2x c 2 v 3 0 0 0 ) 。 数字脉冲压缩系统完成了整个系统的设计与实现:首先对输入数据进行f f l r 正变换,然后乘以一个滤波系数做滤波压缩处理,最后再通过f f t 反变换回来。 设计这个数字脉压系统的目的主要是为了获得较高的处理速度,实现对数字信号 的实时处理,所以整个设计都是将速度放在性能优化的首位。为了获得最快的速 度,充分利用了x i l i n x 公司提供的f f t 变换核,在设计中正变换与反变换都是利 用变换核来实现的。同时,为了获到更高的处理速度,还牺牲了一部分逻辑资源, 以换取更好的速度上的性能,充分体现了面积换取速度的思想。然后对整个设计 迸行了仿真,将硬件的仿真结果与软件的仿真结果迸行了比较,同时还对整个设 计的性能进行了分析,并与其它的设计作了对比。最后给出了系统设计的优化建 议,针对性能与资源的优化都给出了改进方法。 在实现恒虚警检测器时,首先是对恒虚警的概念及其设计恒虚警检测器的必 要性做了简单说明;然后研究了一些常用的恒虚警算法,并对各种算法进行了总 结,分析比较了各种算法的优缺点。根据前面的理论工作,利用f p g a 实现了 g o c f a r 恒虚警检测器,并对其进行了仿真。同样对设计的性能进行了分析, 与其它的设计进行了比较。最后给出了整个设计的优化建议。 1 2 2 论文内容安排 论文一共分为五章,各章内容安排如下: 在第一章首先介绍了所做工作的背景来源,简单地说明了两个理论,然后对 为何选择f p g a 实现算法做了论述;最后就论文的主要工作和论文的章节安排做 了说明。 第二章首先介绍了数字脉冲压缩的原理及其实现方法,然后重点介绍了基于 频域的实现方法:而后又对频域实现方法中的核心算法f f t 做了详细的说明;最 第一章绪论 后介绍了几种f f t 处理器硬件实现的结构,后面的设计方案选择就是基于这里的 介绍。 第三章开始设计基于f p g a 的数字脉压系统。由于这里的设计是为了获得更 高的速度,又考虑到数字脉压系统对资源的需求,首先对f p g a 进行了选型,并 对选择的f p g a 做了简要的介绍;然后就对数字脉压的整个设计做了说明,并做 了仿真验证,仔细分析了其性能,并给出了优化建议。 第四章介绍了恒虚警的基本理论,并研究了几种常见的恒虚警检测器,随后 对这几种检测器在算法性能上以及硬件实现的难易程度上都做了详细的比较,最 后选择了一个性能与实现折衷的算法来进行硬件设计。 在第五章讨论了g o c f a r 僵虚警检测器的f p g a 实现,并做了仿真,分析 了其性能,最后给出了进一步优化的建议。 第二章数字脉冲压缩的基本原理及其实现方法! 第二章数字脉冲压缩的基本原理及其实现方法 脉冲压缩是提高雷达距离分辨力的一种主要技术。通常脉冲压缩的实现方法 有两类,一类是用模拟器件实现的模拟方式,另一种是使用数字方式实现的,主 要采用数字器件实现。模拟器件实时性好,频带宽,成本低,其缺点是多模实现 时电路复杂,调试、调整困难。数字器件则因其可靠性高,灵活性好,可编程, 便于固化而受到重视。所以本文讨论的是关于采用数字方法,硬件实现脉冲压缩 的方案。 f f t 是当前一种实现脉冲压缩的较为高效的方法,而且也是另一种实现脉冲 压缩频率分析法的核心部分。将其模块化实现具有重要的意义。 2 1 数字脉冲压缩及其实现方法 2 1 1 数字脉冲压缩的定义及优点 随着现代武器和现代飞行技术的发展,对雷达的作用距离、分辨力和测量精 度等性能指标提出了越来越高的要求。为增加雷达系统的检测能力,要求增大雷 达发射的平均功率;在峰值功率受限时,要求发射脉冲尽量宽;而为提高系统的 距离分辨力,又要求发射脉冲尽量窄,可见提高雷达距离分辨力同增加检测能力 是相互矛盾的。通常解决的办法是在发射机端发射时间展宽了的信号,信号内部 进行必要的调制,在接收端通过压缩滤波器处理来产生窄的时间脉冲,这一过程 称为脉冲压缩。作为现代雷达的关键技术,脉冲压缩有效地解决了分辨力同平均 功率的矛盾,并在现代雷达中广泛应用。所谓数字脉冲压缩是指主要采用数字器 件来实现的脉冲压缩技术。 早期的脉冲压缩经常使用模拟电路来实现,随着数字技术的发展,脉冲压缩 已广泛采用数字技术与模拟技术相比,数字脉冲压缩技术有很多优点。 脉冲压缩处理时必须解决降低距离旁瓣的问题,否则强信号脉冲压缩的旁瓣 会掩盖或干扰附近的弱信号的反射回波,这种情况在实际工作中是不允许的。采 用加权的方法可以降低旁瓣,理论设计旁瓣可以达n d , 于4 0 d b 的量级。但用模拟 技术实现时,实际结果与理论结果有很大差别。而用数字技术实现脉冲压缩时实 际输出的距离旁瓣与理论值非常接近。 数字脉压技术的另一突出优点是灵活。对于同一个数字脉压滤波器,改变其 参数即可改变它的脉冲响应。因而同一个数字脉压滤波器,不仅适用于各种线性 调频信号,也适用于非线性调频信号和各种编码信号。 数字脉压技术可用时域卷积法或频域快速卷积法实现。随着集成电路技术的 6 数字脉压与恒虚警检测器的f p g a 实现 不断发展,各种高速d s p 芯片、p l d 芯片和各种专用f f r 芯片的性能越来越好, 使用越来越方便,使得频域脉压法得到越来越广泛的应用。 2 1 2 数字脉压的实现方法 l ,根据实现时所使用的波形 脉冲压缩分为线性调频( l f m ) 脉压、非线性调频( n u m ) 脉压和相位编码脉 压三种。 线性调频脉压信号容易产生,压缩脉冲波形和信噪比损失对多普勒频移不敏 感。其研究和应用已相当成熟,其缺点是有较大的距离旁瓣,尤其是在多目标环 境里,距离旁瓣将淹没小的回波信号,从而造成丢失目标为降低距离旁瓣,需 对压缩脉冲加权。对于线性调频脉压雷达,加权意味着不能采用严格的匹配滤波 器,将造成信噪比损失,并使压缩后的脉冲主瓣展宽。 非线性调频脉压系统产生和处理非线性调频信号,由于所要求的调频波形由 给定的输出信号谱直接确定,故对距离旁瓣而言,非线性调频不需要时域或频域 加权,仅使用匹配滤波器就可得到较低的旁瓣电平,因为匹配滤波器接收同要求 低旁瓣在设计时是一致的,因而可减小不必要的信噪比损失。非线性调频信号用 于脉冲压缩雷达的主要好处在于不需要如何加权就可以获得良好的旁瓣抑制性 能,而且没有信噪比损失;而且在小时宽带宽积的情况下仍能获得较好的主副瓣 比。其缺点是实现起来有一定困难。 相位编码信号在时宽带宽积较小的情况下,主副瓣比大,压缩性能好。缺点 是相位编码信号对多普勒敏感,当回波信号存在多普勒频移时,会严重影响脉压 的性能。其中简单常用的是二相编码信号,包括巴克编码、m 序列编码、l 序列 编码和互补码等。 。 2 、根据处理域的不同 根据处理域的不同可分为时域方法和频域方法。至于采用那种方法,要根据 具体情况而定。一般而言,对于大时宽带宽积信号,用频域脉压较好;对于小时 宽带宽积信号,用时域脉压较好。但随着各种高速d s p 芯片和p l d 芯片的性能 价格比不断提高,在实时性要求比较高的情况下,对于大时宽带宽积信号,频域 脉压的优越性很明显。 ( 1 ) 时域卷积法实现数字脉压 时域脉冲压缩是通过对接收信号s ( o 与匹配滤波器脉冲响应_ i l ( f ) 求卷积的方 法实现的。根据匹配滤波理论:h ( t ) = s ( t o 一0 ,即匹配滤波器是输入信号的共轭 镜像,并有相应的时移矗。 用数字方法实现时,输入离散信号为“岫,其匹配滤波器为i l ( 甩) ,匹配滤波 第二章数字脉冲压缩的基本原理及其实现方法二 器的输出为输入信号s ( 吣与匹配滤波器h ( n ) 的卷积: j ,( 胛) 2 丕3 ( 七) 厅( 眦) 。荟矗( 七) s ( n - 助 汜1 式中n 为信号采样点数。 按式( 2 i ) 构成的滤波器如图2 i 所示,这是一种非递归的横向滤波器。由 式( 2 1 ) 可以排列出其他的计算方法,因此下图所示的横向滤波器结构还有许多 其他的等效网络结构。 图2 1 经典横向滤渡器 需要指出的是,图2 ,1 所示仅是原理性的,实际应用中最后往往在复数域进 行滤波处理,因此在实际应用中采用正交双通道滤波器,按式( 2 1 ) 完成复卷积 运算。 ( 2 ) 频域快速卷积法实现数字脉压 脉冲压缩过程是对接收信号与匹配滤波器的脉冲响应求卷积的过程。由傅立 叶变换的性质可知,时域卷积相当于频域相乘。 设输入离散信号为 :5 ( 玎)其傅立叶变换为:s ( w ) 匹配滤波器脉冲响应为:五( 刀)其傅立叶变换为:日( 谚 匹配滤波器输出为 :y ( 功其傅立叶变换为:以w ) 则对式( 2 1 ) 两边同时进行傅立叶变换可得: h w ) = ( 计s ( 叻 ( 2 2 ) 则输出灭哪为: y ( 哟= i f f t ( y ( w ) ) ( 2 3 ) 根据式( 2 3 ) 可以画出频域快速卷积法实现脉冲压缩的原理框图,如图2 2 2 2 频域快速卷积法实现数字脉压原理框图 8 数字脉压与恒虚警检测器的f p g a 实现 所不。 其基本思想是将输入的信号经h 叮正变换到频域,然后乘以匹配滤波器所要 求的频域加权系数,再经过刺变换到时域得到压缩脉冲。图2 2 只是频域脉压 的原理性框图,在具体工程实现时,常常将匹配滤波器的加权系数存于只读存储 器( r o m ) 中,当需要加权以降低距离旁瓣时,存于只读存储器中的权系数应当 是匹配滤波器的频率响应与加权函数的乘积。 在时域用横向滤波器实现数字脉压时,对于n 点长度的输入信号,需要进行 2 次复数乘法;而采用频域快速卷积法实现数字脉压,可以大大减少复数乘法的 次数,两种方法的复数乘法次数对比如下: 时域卷积法的复数乘法次数:n 2 频域法的复数乘法次数 :+ l o g ,n 这样可以知道,v f r 舅t 法是高效的,用f f t 算法可以节省一些工作量,使运算 速度更快。 2 2f f t 的基本原理与算法设计 一个长度为n 的有限长序列的离散傅立叶变换为: - i 删珊碘例= 删略;k = o , l ,n - 1 ( 2 4 ) n = 0 式中蝾= 跣p 弦厅砒) ,称为d i 叮的旋转因子,旋转因子定义在复平面上 离散傅里叶反变化为: 1 ,一 x 似2 i d y r x o ) 2 专荟z ( 七) 阡焉艟;扣傀。,。7 2 式( 2 4 ) 和式( 2 5 ) 为一对变换对,称为离散傅立叶( d f r ) 变换对式中, j 例和j 倒均可以是复数。因为式( 2 4 ) 和式( 2 5 ) 仅在等号右边的w 箩指数上 差一个符号,并相差一个比例因子i n , 所以有关式( 2 4 ) 计算步骤的讨论稍加修 改可以直接用于式( 2 。5 ) 。 根据上面的公式。可以推导出在d f t 变换时总的计算量,由此引出使用f f t 的必要性。 普通的d f t 的计算可以用下面的公式来表示:x = 助c ;其中肭维的列向量, 向量的每个元素均为复数形式;而卿为的方阵,其中的每个元素也是为复 数形式;x 为维的列向量,表示离散时间信号,可以为复数,也可以是实数。由 此可以看出计算一个鼬q 值,需要次复数乘法和n - 1 次复数加法。因此计算 7 个r 第二章数字脉冲压缩的基本原理及其实现方法 ! 的值,总共需要次复数乘法和n ( n q ) 次复数加法。而我们又知道,每次复乘 法包括4 次实数乘法和2 次实数加法,每次复数加法包括两次实数加法,则完成一 次长度为的d f t 需要4 n 次实数乘法和( 2 n * n + 2 n * ( n - 1 ) ) 次实数加法。可以看 出,如果 吁艮大时,总的计算量将非常的大。比如,需要计算一个长度为1 0 2 4 的 序列的傅立叶变换,仅仅是其进行的实数乘法次数就将达到4 1 0 2 4 1 0 2 4 ,也就是 4 0 0 多万次,这样的计算量在硬件实现时是不能接受的,基本上不可能做到数据的 实时处理。这样就有必要寻求更好的计算傅立叶变换的方法。 2 2 1 快速傅立叶变换1 1 i 库利( j w c o o l e y ) 和图基( j w t u k e y ) 在1 9 6 5 年最早提出了快速傅立叶变 换( f a s tf o u r i e rt r a n s f o r m , f f t ) 算法。f f t 算法的实现主要是利用了旋转因子的 两个性质: ( 1 ) 对称性,( 时) = f 嘣- k ( 2 6 ) 即自身的复共轭等于其变换长度减去本身的复数; ( 2 ) 周期性,孵+ r n = 噼,为任意整数 ( 2 7 ) 为了利用上述的特性,需要将x ( 力和x ( | | ) 的排列次序按某些特定的规律重 排,或者对两个序列砌) 和z ( 后) 分别按一定的规律,将其分解成一些短序列进 行运算,这样可以减少复数乘法次数,提高d f t 的运算速度。如果算法是通过对 “疗) 进行逐次分解的,那么这种分解算法称为时间抽取( d e c i m a t i o n - i n - t i m e , d i t ) f f t 算法;同理,如果算法是通过对x ( 七) 进行逐次分解的,那么这种分解 算法称为频率抽取( d e c i m a t i o n - i n - f r e q u e n c y ,d f t ) f f t 算法 2 2 2 傅立叶变换快速算法硬件实现的选择【l l 自从f f r 算法被提出来以后,至今已经有许多计算d f t 的快速算法,其中主 要的包括基- 2f f t 算法、基- 4f f t 算法、分裂基算法、主因子分解算法和w i n o g r a d “小n ”算法。这些快速算法都利用了旋转因子的周期性和对称性,通过将一个 大点数序列的d f t ,分解为若干小点数的d f t 的组合,来减少运算量。 在上面的几个快速算法中,分裂基算法、主因子分解算法和w i n o g r a d “d , n ” 算法由于控制比较复杂并且模块性差,比较适合于软件程序实现。而对于硬件实 现来说,则基2f f t 算法和基_ 4f f t 算法比较合适。所以在下面,将简单介绍这 两种算法,并对他们做一个比较。 l 、基2 快速傅立叶变换( 基2f f t ) 竺数字脉压与恒虚警检测器的f p g a 实现 下面介绍按时间抽取的方式进行快速傅立叶变换。 设n = 2 e ( p 1 ) ,将输入序列矗按照下标分别分为偶数和奇数的序列: 吃。) , j c 2 。l ,于是点d f t 就成为: n 1 2 - 1_ ,2 - l 以= 吃孵畦胛咿 n n n t lr t = _ t l q = n 磊1 2 - 1 而彬弗i n 丕1 2 - 1 吻州咿 k = o , 1 2 ,n 2 - 1 ( 2 8 ) 这种方法就称为时间抽取法。按照上面的方法可以继续将序列分成更小的序 列,直到每个序列只有两个成员为止。 下面以8 点( k 8 ) 的f i 吓为例,说明快速算法在计算量上的改进。如图2 3 , 为8 点时间抽取的f f t 流程图。由图2 3 可以看出,变换数据是按乱序输入( 实际上 也是有规律的) ,而输出则是顺序的。下面分析计算量。 从图上可以看出,f f t 算法明显减少了复乘计算的次数。通过前面的分析我 们可以知道,在没有使用快速变换的算法时,完成一个序列长度为8 的傅立叶变 换需要8 * 8 次复乘。而我们从耶t 的流程图上可以看出,实际上只是需要计算1 2 次 复乘即可,并且我们还可以通过8 点的f f t 落一步推广到点序列的情况;当变换 序列的长度为点时,其需要的复乘次数为:n 1 2 1 0 9 ,n ,即每一级需要n 2 次复 乘,总共有l 0 9 2n 级蝶形运算 在减少运算量的同时,也减少了旋转因子的数量。从流程图中明显可以看出, 旋转因子从d f t 公式中的8 * 8 个减少到了只有4 个,b p n 2 个尽管从图上看是1 2 个,但是很明显,只有四个是不同的值,其他的都是重复的,这样在硬件实现时 只需要存储一遍即可,也节省了存储器的容量。 第二章数字脉冲压缩的基本原理及其实现方法 旦 x ( o ) 4 ) x ( 2 ) 6 ) x ( d x ( 5 ) 3 ) x ( 7 ) x ( o ) x ( 4 ) x ( 2 ) x ( 6 ) x ( 1 ) x ( 5 ) x ( 3 ) x ( 7 ) 图2 3 时间抽取的f f f t 流程图( 芦8 ) 111 图2 a 频率抽取的i f f t 流程图( i v = - 8 ) x ( o ) x o ) x ( 2 ) x ( 3 ) x ( 4 ) x ( 5 ) x ( 6 ) x ( 7 ) x ( o ) x o ) 2 ) 3 ) x ( 4 ) x ( 5 ) x ( 6 ) x ( 7 ) 对于i f 玎来说,其完全是与f f f t x ;j 称的,见图2 4 。从其流程图可以看出来, 1 2 数字脉压与恒虚警检测器的f p g a 实现 只是旋转因子的指数变成了负号,并且其结果乘了一个j 枷q 因子我们在这里将 这个因子拆成了i o g :n 个i 趁相乘,也可以在最后的结果处直接乘一个n o 从这 里可以知道,f f f t 与i f f t 的实现结构完全样,只是所乘旋转因子不一样。也就 是说,实现f f f t 的结构也能够实现i f f t ,只要完成了正变换的设计,同时也就实 现了反变换。 从上面的分析可以知道,f f t 算法可以有效减少计算量,同时比较适合硬件 的模块化实现。实际上整个算法就是由一个蝶形运算单元的阵列组成的,每个蝶 形单元完全类似,只是所乘的旋转因子不样。其实,上面的关于基。2f f t 的计 算量并不准确。其所需要的乘法和加法都要比上面分析的要少,其计算量的公式 见式2 9 ,这里的计算公式都是针对实数的计算,其中,朋表示乘法需要计算 的次数,彳( ) 则表示加法需要计算的次数。 m ( n h 3 n | 锑q n - s n 墙 一( i a ;j 2 ) 五矛十8 ( 2 9 ) 2 、基- 4 快速傅立叶变换( 基- 4f f t ) 基4 快速傅立时交换的思想与基- 2 快速傅立叶变换一样,不同的是将需要变 换的序列分成四个子序列,分解过程与基2f y r 完全类似,就不再重复。下面直 接给出基4f f t 算法的实数乘法和实数减法的运算量,见式( 2 1 0 ) 同样,埘【 d 表示乘法需要计算的次数,a ( 帅h f j 表示加法需要计算的次数。 lm ( n ) = ( 9 n 8 ) l o g , , n - 4 3 n 1 2 + 1 6 3 14 ( ) 2 5 8 ) l o 茜4 3 1 2 + 1 6 3 ( 2 1 0 ) 3 、算法比较 表2 1 基- 2 、基4 f f 呵算法运算量比较 蝶形单元 基一2 f f t 算法 基- 4f f t 算法 n 实数乘法( m )实数加法( a )实数乘法( m )实数加法( a ) 1 62 81 4 82 4 1 4 4 6 4 3 3 29 “2 6 4 9 2 0 2 5 62 3 1 65 3 8 01 s o o 5 0 8 0 1 0 2 41 3 3 2 42 7 6 5 2 1 0 2 4 82 5 9 4 4 4 0 9 6 6 9 6 4 41 3 5 1 7 2 5 3 2 5 61 2 6 9 2 6 上面简单介绍了基- 2 和基4 肿算法。可以看出,两个算法都减少了相当可 观的运算量,但两者又各有优点。基2f f t 算法结构规则、易实现,但相对基- 4f i 叮 所需的运算量较大;而基- 4f f r 算法结构较复杂,但是运算量相比基2f f t 有所 第二章数字脉冲压缩的基本原理及其实现方法竖 减少。两种算法的运算量比较见表2 1 从上面可以看出,基4f f t 算法的运算量小于基- 2f f t 算法的运算量,当 越大时,性能上优势越明显。这样就需要根据设计的目的进行选择,当计算速度 更重要时,应该选择基- 4f f t 算法;当资源紧张,对处理速度的要求不高时,可 以选择基- 2f f t 算法。这最终还是一个资源与速度的选择,需要依据实际情况而 定。 2 3 专用f f t 处理器硬件结构的选择【5 1 前面介绍的两种算法,只是介绍了算法的基本原理。可以看出,蝶形运算单 元都是他们基本运算模块,如何使用基本的蝶形运算单元模块来实现f f r 就是本 节的内容,这里给出f f t 算法的四种硬件结构,即递归结构、级联结构、并行结 构和阵列结构在最后还将对四种结构做一个总结。 2 3 1 递归结构 图2 5 给出了递归结构实现的f f t 的框图。该结构只使用一个蝶形运算单元 作为f f t 算法的核心模块,每级蝶形运算都按递归的方式运行,这样使得蝶形运 算单元一直处于“忙”状态 2 3 2 级联结构 图2 5f f t 递归结构 与递归结构不同的是,级联结构采用了多个蝶形单元,如图2 6 所示。每个 蝶形单元负责一级处理。对于变换长度为的序列来说,一般相应有l o g :n 个蝶 形单元。 1 4 数字脉压与恒虚警检测器的f p g a 实现 2 3 3 并行结构 图2 6 f f t 级联结构 并行结构就是采用2 个蝶形运算单元并联,与每级的蝶形运算单元一一对 应,如图2 7 所示。 一蝶形运算单元卜_ 一 数 数 蝶形运算单元卜i _ 据 据 交 存 ; 换 储 开 器 一蝶形运算单元卜_ 关 i 一蝶形运算单元卜一_ 2 3 4 阵列结构 图2 7 f f t 并行结构 阵列结构就是将f f t 中每个蝶形单元都用硬件实现,采用流水操作以后将保 证每个时钟周期完成一个序列的变换,处理速度非常快。但是在硬件实现时这是 不可取的。如果我们需要变换1 0 2 4 点的序列,那么需要的蝶形运算单元将达到 5 1 2 1 0 个,这在硬件上消耗的资源是非常惊人的到目前为止,只有很少的f p g a 实现了阵列运算,但也只是针对小点数( 如:= 2 5 6 ,1 2 8 等) 的变换。 第二章数字脉冲压缩的基本原理及其实现方法 2 3 5 总结 上面讨论了硬件实现f f t 的四种结构,各个结构各有优缺点,下面做一个总 结,以便于选出最适合的实现方法。 递归结构只是采用一个蝶形运算单元,所有的运算全部通过这一个蝶形单元 来进行如果一个蝶形运算需要花费的时间为l 则完成整个序列的运算需要的 时间为t n 2 l o g ,n ,这是消耗时间最多的结构,但是使用的资源最少;对于级联 结构来说,其使用了1 0 9 ,个蝶形运算单元级联,这样在进行流水操作时可以节 省不少时间。对第一个序列仍然需要t n 2 l o g ,n 才能完成变换,但是对于后面的 每一个序列都是只需要t n 2 :对于并联结构,其是由n 2 个蝶形单元并联,这样 就可以每个丁得到一级变换的结果,经过l o g :个周期即t l o g :n 以后就完成了 整个序列的运算;对于阵列来说,就是所有的蝶形单元全部用硬件实现。在流水 运行时,除了第一个序列以外,剩下所有的序列全部是一个r 出结果,数据吞吐 率相当高,但是硬件消耗量也非常大,对于实现较长序列的傅立叶变换来说,这 是不可取的。 综合上面的考虑,对于递归方案只是在硬件资源非常紧张,并且对速度要求 不高时才可以采用,而当需要考虑速度时,此方案不予考虑:级联方案是比较适 中的,在流水操作时速度有较大的提升,而硬件资源的消耗也可以忍受,即便是 4 0 9 6 个点,也只是需要1 2 个蝶形运算单元就够了;关于并行方案,如果直接按 照一级 舱个蝶形运算来看的话,对于长度为4 0 9 6 的序列来说,将需要2 0 4 8 个 蝶形运算单元,这在资源使用上是不可行的;至于阵列方案可以直接舍弃,需要 资源太多,完全不能接受的。 2 4 本章小节 本章首先介绍了数字脉冲压缩的定义及其实现方法,然后重点介绍了实现数 字脉压的核心算法:快速傅立叶变换。重点介绍了两个f f t 交换,并对其进行了 对比,然后给出了几个f f t 处理器硬件实现的结构,并对每个结构做了分析总结, 为后面的硬件实现方案做好了理论准备。 第三章基于f p g a 的数字脉压系统的设计与实现旦 第三章基于f p g a 的数字脉压系统的设计与实现 在前面的一章中详细介绍了数字脉冲压缩的基本概念以及采用数字方法实现 的优点,并且说明了f f t 变换是实现数字脉压的核心算法。本章将介绍数字脉压 系统的f p g a 实现,并重点介绍利用x i l i n x 公司提供的1 1 ) 实现f f t 模块。 最后对实现的系统进行了仿真与性能分析,并给出了优化建议。 3 。l 数字脉压的总体设计及其各个模块的实现 本节介绍数字脉压的总体设计以及各个模块的实现。下面- d , 节简单介绍 x i l i n x 公司的v m a x i i 系列芯片,首先说明其基本特征,然后针对本设计的特点, 重点介绍芯片中将使用到的模块。 3 1 1v i r t e x - i i 系列芯片 1 、w t r t e x - h 系列芯片的基本资源脚 v l r t c x i t 系列芯片具有丰富的资源,从普通的逻辑资源,时钟资源,存储器 资源到多种多样的i p c o t e ,为开发人员设计时提供了强大的支持。下面的表格总 结了w 廊x - h 系列芯片的基本资源,见表3 1 。 表3 1v l r t e x - l l 系列芯片资源列表 c l b l c i b _ 4 l e = m a x l 2 8b b )9 i d 从一b l o c i m i d a x l m u r l ) 勘f 蜘a m l y d i s t r i b u t e d 一u f f i i 竹 l a 瑚tr 盯i 船 d 懒 g a t 劓t r o w xc a i s l i c e s r hi m i t sb k 柏 b l o d u l ( k b l t ) o c u p a c l h ( i ) x c 2 v 4 04 0 k8 x 82 5 887 24 x c 2 v s o鲥(1 8 x 8 5 1 21 6 8 81 4 4 41 x c 2 v 2 5 02 5 喊0 x e1 5 3 s4 82 42 抛b2 x g 2 v 5 5 0 矾雹x 2 4 3 , 0 7 2 管 匏5 7 e82 科 x c 州1 0 0 0m4 0 x 匏s 1 2 01 4 04 07 b4 越 x c 2 v 1 5 0 01 5 m4 8 x4 0 7 , 6 8 0绷 4 84 8e “85 x c 2 v 2 0 0 02 m5 6 x4 8 1 0 , 7 5 2嘲 5 65 e 1 。o o e be “ x c 2 v 3 0 d o3 mb x 5 6 铷4 4 81 7 2 81 27 x c 2 v 4 0 0 0 4 m 帅x 7 22 3 0 4 0搿1 2 01 2 02 1 6 01 29 1 2 x c 2 v s k ix 3 3 , 7 9 21 0 5 61 4 4 1 4 4 2 5 9 21 21 1 0 4 x c 州8 0 0 08 m”2 x 1 0 4 4 6 j r 嗑21 4 & s 1 曲1 a 0 2 421 。1 0 8 我们在这里的设计选用的是v n t e x i i 系列的x c 2 v 3 0 0 0 ,从上表可以看到, 其拥有3 0 0 万门,9 6 个1 8 b i t * 1 8 b i t 的乘法器,9 6 块b l o c kr a m ,1 2 个d c m 。特 别是其丰富的乘法器与存储器,为下面的设计提供了充足的资源,能够让后面的 设计将速度作为优化的第一优先级来考虑,充分发挥其变换核的速度。 数字脉压与恒虚警检测器的f p g a 实现 2 、v i r t e x i i 芯片的f f t 变换核” x i l i n x 公司的芯片最大的特点是提供了多种多样的免费i pc o r e ,这些i pc o l e 能充分利用f p g a 的资源,将性能最大的发挥出来,同时还能够在达到更好性能 的前提下使用更少的资源。在数字脉压的设计中,对其实现的核心模块f f t 就是 调用了x i l i n x 提供的m c 0 倍垌盯变换核。这里首先对其做简要的说明,在后 面具体实现时将对其进行详细的介绍。 下面简单介绍f f t 核的基本特征: 同时支持h 可的正交换与逆变换;这在前面的理论分析时就证明了两者结构 的一致性; 变换序列的长度从8 到6 5 5 3 6 ;设计中实现的是长度为4 0 9 6 的f f i ; 数据精度可选:8 ,1 2 ,1 6 ,2 0 ,2 4 ;设计中使用的数据为1 6 位定点; 相移因子精度可选:8 ,1 2 ,1 6 ,2 0 ,2 4 ;设计中使用的数据精度为1 6 位定 点; 计算类型有三种:全精度,定点缩小,块浮点;这里使用了定点缩小: 蝶形运算后对结果的处理可选:截断或四舍五入;设计中是对蝶形运算的结 果四舍五入; 实时配置变换类型:正变换或反变换可自定义; 可选的变换长度实时配置; 三种变换结构可选; 可以看出,f f t 变换核的功能相当齐全,并且留给了设计者很大自由度来使 用这个核,在下一节中将详细介绍该核的使用与配置。 3 1 2 数字脉压的总体设计 这里首先介绍数字脉压的总体设计,如图3 1 所示。从图中可以看出,数字 羚惑8 瓮 t 。 嗨。 3 颡“j : 蓦 籍商 黔,7 矿、9 ” 剖r o mi ” ”勺:* 女差 叫 , 乜自 、 乜 : 自 觏。一,鬻 嚣避 ,f 、莎;j j 囊,。 。巅 图3 ,1 数字脉压的工作框图 脉压主要由三个部分组成:f f t 正变换( f o r w a r df f t ,f f v r ) 、滤波器( f i l t e r ) 第三章基于f p g a 的数字脉压系统的设计与实现旦 和f f t 反变换( i n v e r s ef f t ,i f f t ) 实际上f f f t 与i f f t 是类似的,设计好了 f f f t ,i f f t 也就设计出来了,这两个部分都是调用了1 1 f t 变换核,下面介绍各 个模块时,这两个模块将放在一起同时介绍。中间的滤波模块,是对变换过的数 据乘以一个滤波系数,然后将滤波后的数据再进行反变换,就完成了数字脉压的 整个过程。从工作框图可以看到,滤波部分由两个模块组成:一个存储滤波系数 的只读存储器( i 的m ) ,一个滤波模块。实际上滤波模块就是一个乘法器,具体 的设计将在后面的模块介绍中详细说明。 这里简单介绍一下与外部的接口。接口比较简单,输入除了时钟,复位信号, 就是数据( 实部和虚部) 与数据同步信号,数据同步是低有效,表示有数据输入。 输出则就是数据( 实部和虚部) 与数据有效信号,这里的数据有效信号是高电平 有效。 3 1 3 快速傅立叶正变换与反变换的实现 这里将详细介绍如何使用i pc o r ef f t 模块实现正变换与反变换,这里正变换 与反交换同时介绍,是因为二者的实现非常相似。后面的介绍中在没有说明的情 况下将默认为正变换,以介绍正变换为主,在反变换有不同以及需要注意的地方 将会特别列出来做说明。 l 、f f t 变换核的三种变换结构”1 这一小节首先介绍f f t 变换核的三种变换结构,并对三个结构进行比较,然 后根据设计的目的选择合适的结构。这里是使用f f t 变换核的核心部分,决定了 设计最后的性能与资源使用。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论