专利名称:基于fpga的sar成像信号处理数据转置方法
技术领域:
本发明属于数字信号处理技术领域,涉及DDRII SDRAM转置存储器,特别是一种利用FPGA实现SAR成像信号处理数据转置方法,可应用于合成孔径雷达成像系统设计。
背景技术:
合成孔径雷达SAR作为一种主动式微波传感器,能不受光照和气候条件的限制实现全天时、全天候对地观测,获取高分辨的地面场景信息,还可以透过地表和植被获取地表下信息,并能探测隐蔽目标。这些特点使它在军事领域如战场地形探测及预警、民用领域如资源考察、环境监测、水文观测等应用具有独特的优势。SAR成像信号处理的特点是运算复杂,数据量大,这就要求系统在进行快速运算的同时能进行大数据量的快速传输和存储。转置存储器CTM是SAR实时处理器的一个重要组成部分,它是实现从原始数据生成图像的重要过程,通过将距离连续数据转为方位连续数据,或将方位连续数据转为距离连续数据,实现SAR成像处理,此间高达数百兆的数据吞吐对转置存储器的速度和容量提出了很高的要求,转置实现的效率成为制约SAR实时成像处理的一个主要因素。随着SAR实时成像处理的发展,对于CTM的研究取得了很大的进展,许多研制成功的实用CTM已经应用在实时成像系统中。通常情况下,采用DSP作为成像处理的核心,配合 DSP内建的SDRAM控制器,使用软件的方法,利用SDRAM对数据进行转置运算,具体是通过地址跳变的存取方式,相当于“软件”转置。然而,“软件”转置没有“硬件”转置功耗低、速度快和效率高,同时DSP没有足够的硬件资源可以利用,处理速度不够快,灵活性不强,随着对SAR处理性能的要求越来越高,采用DSP的实现方式在效率方面远不能满足这种趋势的要求。另一方面,近年来随着星载SAR系统的发展,星上实时成像成为SAR领域的一个研究热门。对于星上实时成像处理,CTM必须满足星上环境对硬件的抗辐照要求。由于目前 DSP没有航天级抗辐照产品,采用DSP作为成像处理核心的方案不适应星上系统的要求,星上实时成像处理CTM必须采用新的方案实现。
发明内容
本发明的目的在于克服上述已有技术的不足,提供一种基于FPGA的SAR成像信号处理数据转置方法,实现“硬件”转置,使得CTM系统运行更稳定、功耗更低、速度更快、效率更高,以完全能满足实时成像处理转置存储的要求。实现本发明目的的技术思路是,基于“矩阵分割”思想,将大矩阵分割成小矩阵, 分别针对对角模式的矩阵块、对称非对角模式的矩阵块、非对称非对角模式的矩阵块,利用 FPGA的DDRII SDRAM控制器设计和FPGA内部的RAM资源,其实现步骤包括如下(1)将SAR成像信号处理数据按距离向从前端连续地传入FPGA,再由FPGA将数据存入DDRII SDRAM存储器,形成矩阵数据;(2)将DDRII SDRAM存储器中的矩阵数据进行矩阵分割
(2a)以64X64小矩阵块为单位,按方阵的对角线方向,将矩阵数据划分出对称模式矩阵块;(2b)以64X64小矩阵块为单位,以方阵的对角线作为对称轴,将矩阵数据划分出对称非对角模式矩阵块;(2c)以64X64小矩阵块为单位,将除去方阵以外的剩余矩阵数据划分出非对称非对角模式矩阵块;(3)使用FPGA中的RAM存储器资源,将单位对角模式矩阵块数据存入RAM,利用地址跳变每隔64个地址读出RAM中的数据,完成单位对角模式矩阵块方位向数据与距离向数据转换,实现对角模式矩阵块的转置处理;(4)对称非对角模式矩阵块的转置处理(4a)将方阵对角线以上的单位对称非对角模式矩阵块横向分成两个相等的半单位矩阵块,再将方阵对角线以下的单位对称非对角模式矩阵块纵向分成两个相等的半单位矩阵块;Gb)使用FPGA中的RAM存储器资源,将横向半单位矩阵块数据和与其对称的纵向半单位矩阵块数据存入RAM,利用地址跳变先每隔32个地址读出RAM中的数据,写入到横向半单位矩阵块中,再每隔64个地址读出RAM中的数据,写入到纵向半单位矩阵块中,完成横向半单位矩阵块数据和与其对称的纵向半单位矩阵块数据转换;(5)当距离向采样点数和方位向采样点数不相等时,使用FPGA中的RAM存储器资源,将单位非对称非对角模式矩阵块数据存入RAM,利用地址跳变每隔64个地址读出RAM中的数据,完成单位非对称非对角模式矩阵块方位向数据与距离向数据转换,实现非对称非对角模式矩阵块的转置处理;反之不需要进行非对称非对角模式矩阵块的转置处理;(6)转置完成后,进行复位操作,以便再次进行转置处理;(7)将DDRII SDRAM存储器中转置处理完成后的数据,根据要求通过FPGA按方位向读出。本发明与现有技术相比具有以下优点其一,本发明由于通过,使得转置存储器CTM系统运行更稳定、功耗更低、速度更快、效率更高。当前主流的FPGA由于其内部集成有大量的乘法器、RAM甚至处理器核,连同基于数据流的强大定点处理能力,使FPGA在信号处理领域异军突起。同时,FPGA具有军品级的产品,可以满足航空航天等极端环境下的FPGA进行SAR成像信号处理数据转置系统级应用,特别是对通过DSP进行SAR成像信号处理数据转置,FPGA具有更多的硬件资源可以利用,处理速度更快,灵活性更好,提高了整个系统的实时性,实现“硬件”转置。其二,由于本发明是采用“矩阵分害Γ思想,将前端矩阵数据划分为大小相等的小矩阵块,并根据对角模式、对称非对角模式和非对称非对角模式进行转置处理,避免了每次都连续地对DDRII SDRAM存储器进行跨行的读写操作,只有极少的操作需要连续地对同一 bank的不同行操作,所以相对于使用三页式来说极大的提高了 DDRIISDRAM存储器的工作效率。其三,根据雷达成像处理数据的距离向和方位向点数都是2的η次幂,本发明使用 64X64小矩阵块作为单位,使得矩阵的纵向和横向点数都能够满足64的整数倍,这样在所有的SAR成像基本算法中都能使用该?榻凶么。其四,由于本发明对矩阵进行了分块和使用FPGA中的RAM资源,使得对数据的读写存储和转置操作都只需使用一组DDRII SDRAM存储器就可以实现,极大的对DDRII SDRAM 存储器的控制逻辑进行了利用,使得在SAR实时成像系统中,通过一片FPGA同时控制两组 DDRII SDRAM存储器,对于连续的数据流,通过FPGA控制两组DDRII SDRAM存储器轮流接收数据并进行转置处理,可形成流水作业,以达到实时处理的效果。
图1是本发明基于FPGA的SAR成像信号处理数据转置方法的实现框图;图2是本发明转置前的模式分块图;图3是本发明转置完成后的模式分块图;图4是用本发明对转置处理前的输入数据和转置处理后的输出数据的功能仿真图;图5是用本发明对转置处理前的输入数据的板级测试图。图6是用本发明对转置处理后的输出数据的板级测试图。
具体实施例方式下面结合附图对本发明做进一步的描述。本发明通过FPGA对SAR成像信号处理数据进行转置,所使用的FPGA芯片是 StratixIII EP3SL340H1152I3,或者使用 MratixII EP2S90F1020I4型号,但不局限于这两种。参照图1,本发明的具体实施步骤如下步骤1.将SAR成像信号处理数据按距离向从前端连续地传入FPGA,再由FPGA将数据存入DDRII SDRAM存储器,形成矩阵数据。由于用户端和DDRII SDRAM存储器端的吞吐率不一样,这一步主要是调用FPGA中异步FIFO存储器对数据进行缓存处理,同时实现FIFO两端时钟的同步。步骤2.将DDRII SDRAM存储器中的矩阵数据进行矩阵分割。参照图2,本步骤的具体实现如下(2a)以64X64小矩阵块为单位,按方阵的对角线方向,将矩阵数据划分出对称模式矩阵块;(2b)以64X64小矩阵块为单位,以方阵的对角线作为对称轴,将矩阵数据划分出对称非对角模式矩阵块;(2c)以64X64小矩阵块为单位,将除去方阵以外的剩余矩阵数据划分出非对称非对角模式矩阵块;将前端矩阵数据划分为大小相等的64X64小矩阵块,将SAR成像信号处理数据的距离向采样点数和方位向采样点数进行比较,以两者中小的点数作为边构成方阵,并且经过比较所得到的结果决定是使用两种模式还是三种模式,当距离向采样点数和方位向采样点数相等,按对角模式和对称非对角模式进行转置处理;当距离向采样点数和方位向采样点数不相等,按对角模式、对称非对角模式和非对称非对角模式进行转置处理。
步骤3.使用FPGA中的RAM存储器资源,将单位对角模式矩阵块数据存入RAM,利用地址跳变每隔64个地址读出RAM中的数据,完成单位对角模式矩阵块方位向数据与距离向数据转换,实现对角模式矩阵块的转置处理。这一步调用了 FPGA中的双口 RAM存储器资源,RAM的大小为64X 64,对对角模式的矩阵块进行处理,即对图2中的白色矩阵块进行如下处理首先,将第一块64X64小块矩阵数据按行从DDRII SDRAM存储器读入RAM ;然后,利用地址跳变每隔64个地址对RAM进行跳着读。恿愕刂房迹扛64 个地址读出数据,当跳变到地址4032后,返回到地址1,依次循环直到读出最后一个地址的数据。把读出的数据再按行存入DDRII SDRAM存储器中,存入位置为之前读出该矩阵块的位置,即完成对该小矩阵块的转置处理;最后,进行下一个对角小矩阵块的转置处理。期间除了将单位对角模式矩阵块数据存入RAM和读出RAM中的数据对地址的连续操作外,还需要有以下地址跳变操作从单位矩阵块一行的最后一个地址转到下一行的起始地址;从单位矩阵块最后一个地址回到该单位矩阵块的起始地址;从单位矩阵块的最后一个地址转到下一个单位矩阵块的起始地址。步骤4.对称非对角模式矩阵块的转置处理。(4a)将方阵对角线以上的单位对称非对角模式矩阵块横向分成两个相等的半单位矩阵块,再将方阵对角线以下的单位对称非对角模式矩阵块纵向分成两个相等的半单位矩阵块,如图2反斜纹矩阵块;Gb)使用FPGA中的RAM存储器资源,将横向半单位矩阵块数据和与其对称的纵向半单位矩阵块数据存入RAM,利用地址跳变先每隔32个地址读出RAM中的数据,写入到横向半单位矩阵块中,再每隔64个地址读出RAM中的数据,写入到纵向半单位矩阵块中,完成横向半单位矩阵块数据和与其对称的纵向半单位矩阵块数据转换;使用步骤3中的RAM存储器资源,对对称非对角模式的矩阵块进行处理,即对图2 中的反斜纹矩阵块进行如下处理首先,将方阵对角线以上的单位对称非对角模式矩阵块横向分成两个相等的半单位矩阵块,再将方阵对角线以下的单位对称非对角模式矩阵块纵向分成两个相等的半单位矩阵块,在该模式下读写数据的顺序和位置是先按行连续读出小矩阵块1的数据,再按行连续读出小矩阵块4的数据;接着,利用地址跳变先每隔32个地址读出RAM中小矩阵块4的数据,写入到横向小矩阵块1中,再每隔64个地址读出RAM中小矩阵块1的数据,写入到纵向小矩阵块4中, 即完成对小矩阵块1和小矩阵块4的转置处理;接着,按行连续读出小矩阵块2的数据,再按行连续读出小矩阵块5的数据,用地址跳变先每隔32个地址读出RAM中小矩阵块5的数据,写入到横向小矩阵块2中,再每隔 64个地址读出RAM中小矩阵块2的数据,写入到纵向小矩阵块5中,完成对小矩阵块2和小矩阵块5的转置处理;用同样的操作完成小矩阵块3和小矩阵块6的转置处理;接着,按行连续读出小矩阵块Ia的数据,再按行连续读出小矩阵块如的数据,用地址跳变先每隔32个地址读出RAM中小矩阵块如的数据,写入到横向小矩阵块Ia中,再每隔64个地址读出RAM中小矩阵块Ia的数据,写入到纵向小矩阵块如中,完成对小矩阵块Ia和小矩阵块如的转置处理;根据上述操作再完成小矩阵块2b和小矩阵块恥的转置处理,小矩阵块3c和小矩阵块6c的转置处理;用同样的操作完成对称非对角模式矩阵块所有小矩阵块的转置处理,如图3所示。步骤5.当距离向采样点数和方位向采样点数不相等时,使用FPGA中的RAM存储器资源,将单位非对称非对角模式矩阵块数据存入RAM,利用地址跳变每隔64个地址读出 RAM中的数据,完成单位非对称非对角模式矩阵块方位向数据与距离向数据转换,实现非对称非对角模式矩阵块的转置处理;反之不需要进行非对称非对角模式矩阵块的转置处理。这一步与步骤3相同,也调用了 FPGA中的双口 RAM存储器资源,RAM的大小为 64X64,对非对称非对角模式的矩阵块进行处理,即对图2中的斜纹矩阵块进行如下处理首先,将第一块64X64小块矩阵数据按行从DDRII SDRAM存储器读入RAM ;然后,利用地址跳变每隔64个地址对RAM进行跳着读。讯脸龅氖菰侔葱写嫒隓DRII SDRAM存储器中,存入位置为之前读出该矩阵块按对角线对称的矩阵块位置,即完成对该小矩阵块的转置处理;最后,进行下一个非对称非对角小矩阵块的转置处理。步骤6.转置完成后,将部分寄存器和计数器进行软件复位,使得下一次基于FPGA 的SAR成像信号处理数据转置能够正确完成。步骤7.将DDRII SDRAM存储器中转置处理完成后的数据,根据要求通过FPGA按方位向读出。由于用户端和DDRII SDRAM存储器端的吞吐率不一样,这一步主要是调用FPGA中异步FIFO存储器对数据进行缓存处理,同时实现FIFO两端时钟的同步。本发明的效果可以通过以下实测进一步说明1.验证和实测条件在功能仿真时,由于数据量过大使得仿真时测试效率过低,所以仿真时采用输入数据的方位向采样数据点数是128,距离向采样数据点数是192,即输入数据矩阵块是 192X128的矩阵。设计输入数据为第一行的数据为1 个1,第二行的数据为1 个2, 以此类推产生192行数据,最后一行的数据为1 个192。在板级测试时输入完整数据,方位向采样数据点数是4096,距离向采样数据点数是512,即输入数据矩阵块是512X4096的矩阵。设计输入数据为第一行的数据为1 4096个连续的4096个数,第二行的数据也是1 4096个连续的4096个数,以此类推每一行都是1 4096个连续的4096个数,总共512行。2.验证和实测结果2A)验证输入数据矩阵192X 1 经过转置后所得到的数据矩阵是U8X 192,验证结果如图4所示,其中图4(a)是转置处理前的输入数据,说明从FPGA写入DDRIISDRAM的每一行内的数据是相同的,并且每一行的数据都是递增的;图4(b)是转置处理前的第一行输入数据;图4(c)是转置处理后从DDRII SDRAM存储器输出的数据,转置处理后输出数据为第一行的数据为1 192个连续的192个数,第二行也是1 192个连续的192个数,以此类推每一行都是1 192个连续的192个数,总共1 行,说明从DDRII SDRAM存储器内输出的数据每一行内的数据都是递增的,即转置处理后得数据矩阵是U8X192。通过功能仿真,从这三幅图可以看出该矩阵转置?橥瓿闪耸莸淖霉δ堋
2B)验证输入数据矩阵512 X 4096经过转置后所得到的数据矩阵是4096 X 512,验证结果如图5和图6所示,其中图5(a)是转置处理前的输入数据;图5(b)是图5(a)的前端放大图,说明输入数据是从1开始递增;图5(c)是图5(a)的后端放大图,说明输入数据从1开始递增直到4096 ;图6 (a)是转置处理后从DDRII SDRAM存储器输出的数据;图6 (b) 是转置处理后从DDRII SDRAM存储器输出的第一行数据;图6(c)是转置处理后从DDRII SDRAM存储器输出的最后一行数据,说明转置处理后输出数据为第一行的值为512个1 ;第二行为512个2,以此类推产生4096行数据,最后一行为512个4096,即转置处理后得数据矩阵是4096X512。从图5和图6可见,本发明可以实现基于FPGA的SAR成像信号处理数据转置。
权利要求
1.一种基于FPGA的SAR成像信号处理数据转置方法,包括如下步骤(1)将SAR成像信号处理数据按距离向从前端连续地传入FPGA,再由FPGA将数据存入 DDRII SDRAM存储器,形成矩阵数据;(2)将DDRIISDRAM存储器中的矩阵数据进行矩阵分割(2a)以64X64小矩阵块为单位,按方阵的对角线方向,将矩阵数据划分出对称模式矩阵块;(2b)以64X64小矩阵块为单位,以方阵的对角线作为对称轴,将矩阵数据划分出对称非对角模式矩阵块;(2c)以64X64小矩阵块为单位,将除去方阵以外的剩余矩阵数据划分出非对称非对角模式矩阵块;(3)使用FPGA中的RAM存储器资源,将单位对角模式矩阵块数据存入RAM,利用地址跳变每隔64个地址读出RAM中的数据,完成单位对角模式矩阵块方位向数据与距离向数据转换,实现对角模式矩阵块的转置处理;(4)对称非对角模式矩阵块的转置处理(4a)将方阵对角线以上的单位对称非对角模式矩阵块横向分成两个相等的半单位矩阵块,再将方阵对角线以下的单位对称非对角模式矩阵块纵向分成两个相等的半单位矩阵块;(4b)使用FPGA中的RAM存储器资源,将横向半单位矩阵块数据和与其对称的纵向半单位矩阵块数据存入RAM,利用地址跳变先每隔32个地址读出RAM中的数据,写入到横向半单位矩阵块中,再每隔64个地址读出RAM中的数据,写入到纵向半单位矩阵块中,完成横向半单位矩阵块数据和与其对称的纵向半单位矩阵块数据转换;(5)当距离向采样点数和方位向采样点数不相等时,使用FPGA中的RAM存储器资源,将单位非对称非对角模式矩阵块数据存入RAM,利用地址跳变每隔64个地址读出RAM中的数据,完成单位非对称非对角模式矩阵块方位向数据与距离向数据转换,实现非对称非对角模式矩阵块的转置处理;反之不需要进行非对称非对角模式矩阵块的转置处理;(6)转置完成后,进行复位操作,以便再次进行转置处理;(7)将DDRIISDRAM存储器中转置处理完成后的数据,根据要求通过FPGA按方位向读出。
2.根据权利要求1所述的基于FPGA的SAR成像信号处理数据转置方法,其特征在于 步骤O)中所涉及的方阵,是将SAR成像信号处理数据的距离向采样点数和方位向采样点数进行比较,以两者中小的点数作为边构成方阵。
3.根据权利要求1所述的基于FPGA的SAR成像信号处理数据转置方法,其特征在于 步骤⑶中所述的每隔64个地址读出RAM中的数据,是从零地址开始,每隔64个地址读出数据,当跳变到地址4032后,返回到地址1,依次循环直到读出最后一个地址的数据。
4.根据权利要求1所述的基于FPGA的SAR成像信号处理数据转置方法,其特征在于 步骤(6)中所述的复位操作,是指部分寄存器和计数器的软件复位。
全文摘要
本发明公开了一种基于FPGA的SAR成像信号处理数据转置方法,主要解决基于DSP实时成像处理CTM功耗高、速度慢、效率低和不能抗辐射的问题。其实现步骤为将信号处理数据通过FPGA存入到DDRII SDRAM存储器中;将DDRII SDRAM存储器中的矩阵数据进行矩阵分割;依次进行对角模式矩阵块的转置处理和对称非对角模式矩阵块的转置处理;当距离向采样点数和方位向采样点数不相等时,进行非对称非对角模式矩阵块的转置处理;转置完成后进行复位操作;根据要求通过FPGA读出DDRII SDRAM中转置处理完成后的数据。本发明极大地提高了DDRII SDRAM的工作效率,使转置存储器CTM系统运行更稳定、功耗更低、速度更快、效率更高、能抗辐射,可应用于合成孔径雷达成像系统设计。
文档编号G01S13/90GK102279386SQ20111012283
公开日2011年12月14日 申请日期2011年5月12日 优先权日2011年5月12日
发明者张佳佳, 梁毅, 王一鸣, 王虹现, 邢孟道, 陈皓 申请人:西安电子科技大学