徐藝 黃靜
摘 要:隨著雷達(dá)實時成像處理器的發(fā)展,使得系統(tǒng)中的運算愈加復(fù)雜且數(shù)據(jù)量大,這就要求系統(tǒng)在進(jìn)行快速運算的同時能對大量數(shù)據(jù)進(jìn)行快速傳輸和存儲。轉(zhuǎn)置存儲器是合成孔徑雷達(dá)實時處理器和逆合成孔徑雷達(dá)實時處理器的一個重要組成部分,它的效率直接決定了整個系統(tǒng)的性能。文中創(chuàng)新性地提出了一種將FPGA作為控制邏輯,DDR2作為外部緩存的轉(zhuǎn)置存儲器方案,該方案針對DDR2連續(xù)對同一bank的同一行進(jìn)行讀寫操作時效率最高這一特點,設(shè)計了一種可以在雷達(dá)成像系統(tǒng)中通用的轉(zhuǎn)置存儲器,使用該存儲器對4 096×512×32 b的數(shù)據(jù)在125 M時鐘下做轉(zhuǎn)置,只需80 ms,完全滿足系統(tǒng)實時性的要求。
關(guān)鍵詞:實時成像處理器;FPGA;轉(zhuǎn)置存儲器;DDR2
中圖分類號:TP211 文獻(xiàn)標(biāo)識碼:A 文章編號:2095-1302(2016)06-00-02
0 引 言
轉(zhuǎn)置存儲器(Corner Turning Memory,CTM)是合成孔徑雷達(dá)實時處理器和逆合成孔徑雷達(dá)實時處理器的一個重要組成部分,它的效率直接決定了整個系統(tǒng)的性能。在實時性要求不高的系統(tǒng)中,通常使用DSP作為成像處理的核心,配合DSP內(nèi)建的SDRAM控制器,使用軟件的方法,利用SDRAM對數(shù)據(jù)進(jìn)行轉(zhuǎn)置運算。但是采用DSP作為處理核心,DSP在功耗體積和抗輻射方面都不能滿足當(dāng)前對于SAR成像信號處理的實時性和微型化要求。也有同樣基于DDR2的CMT在FPGA中的實現(xiàn)方法,此方法基于三頁式思想來設(shè)計,其設(shè)計圖如圖1所示。將存儲器按照實際需求分為A、B、C三頁,在每頁將距離壓縮后每個距離向的數(shù)據(jù)按行的方式存儲,而列的長度為方位向采樣的一半,按行寫入而按列讀出。這樣, 在寫入A頁的同時,可以讀B、C頁;寫入B頁的同時, 可以讀A、C頁;寫入C頁的同時,可以讀A、B頁。雖然用頁的輪轉(zhuǎn)工作實現(xiàn)了處理上的流水作業(yè),在功能上可滿足需求,但其并沒有對DDR2的使用效率加以考慮,因為每次連續(xù)對DDR2進(jìn)行跨行的讀寫操作會產(chǎn)生很長的延時,對DDR2的利用率降低,很難提高外部輸入輸出數(shù)據(jù)的時鐘頻率。
本設(shè)計充分考慮了DDR2的工作效率,即當(dāng)對DDR2進(jìn)行讀寫操作,連續(xù)對同一bank的同一行進(jìn)行尋址時,DDR2對于連續(xù)的讀或?qū)懨铋g需要保持的延時最小,即對DDR2來說,進(jìn)行此種操作的工作效率最高。同時也考慮到雷達(dá)實時成像系統(tǒng)所處理的數(shù)據(jù)大小是變化的,且方位向點數(shù)和距離向點數(shù)都是2的n次冪,所以可以利用數(shù)據(jù)大小的特點把轉(zhuǎn)置存儲器設(shè)計為通用的,將處理的方位向點數(shù)和距離向點數(shù)設(shè)計為輸入,并對分塊矩陣進(jìn)行轉(zhuǎn)置來實現(xiàn)矩陣轉(zhuǎn)置功能。
1 基于矩陣分塊思想的設(shè)計方案
為了在讀寫數(shù)據(jù)時都是對同一bank的同一行進(jìn)行操作,設(shè)計將輸入矩陣數(shù)據(jù)按行寫入DDR2,然后把該矩陣劃分為大小相等的矩陣塊,再按照其位置和不同的尋址規(guī)律把矩陣塊劃分為三類,對分類的矩陣塊按規(guī)律一行一行從DDR2中讀出并寫入FPGA中的RAM資源內(nèi),對RAM內(nèi)的數(shù)據(jù)進(jìn)行地址跳變的讀出,相當(dāng)于對小的矩陣塊做了轉(zhuǎn)置處理,最后把轉(zhuǎn)置后的數(shù)據(jù)存入同一片DDR2內(nèi)的正確地址處。矩陣分塊方法如圖2所示。
(1)白色矩陣塊表示對角模式的分塊,對此種模式的矩陣塊進(jìn)行處理,首先要按行將數(shù)據(jù)讀入RAM,然后再對RAM進(jìn)行跳讀,即對矩陣塊進(jìn)行轉(zhuǎn)置處理,并把轉(zhuǎn)置后的數(shù)據(jù)按行存入DDR2,存入位置為之前讀出該矩陣塊的位置。完成對一個矩陣塊的處理后再進(jìn)行下一矩陣塊的轉(zhuǎn)置處理。其間,除了對地址的連續(xù)操作外,還需要轉(zhuǎn)到下一行,回到轉(zhuǎn)置矩陣的最初位置,轉(zhuǎn)入下一個矩陣模塊等地址跳變操作。
(2)灰色矩陣塊表示非對角模式的分塊,對此種模式的矩陣塊進(jìn)行處理,首先要把上三角的矩陣塊橫向分成兩個相等的部分,如圖2所示的矩陣塊1和矩陣塊1a,再把下三角的矩陣塊縱向分成兩個相等的部分,如圖2所示的矩陣塊4和矩陣塊4a。這是因為如果按照對角模式的處理方法,對數(shù)據(jù)進(jìn)行轉(zhuǎn)置處理后存入DDR2相應(yīng)的轉(zhuǎn)置位置會與仍停留在位置內(nèi)的數(shù)據(jù)產(chǎn)生沖突。所以在該模式下讀和寫數(shù)據(jù)的順序和位置為先按行連續(xù)讀出模塊1的數(shù)據(jù),再按行連續(xù)讀出模塊4的數(shù)據(jù),然后對RAM中的模塊4數(shù)據(jù)進(jìn)行跳讀,轉(zhuǎn)置處理后按行存入模塊1所在的位置,最后對RAM中的模塊1數(shù)據(jù)進(jìn)行跳讀,轉(zhuǎn)置處理后按行存入模塊4所在的位置。接下來其轉(zhuǎn)入下一模塊的順序為先對(2,5)、(3,6)模塊分別進(jìn)行上述操作,再對(1a,4a)、(2b,5b)、(3c,6c)進(jìn)行操作。其中矩陣塊(3,6)表示MAX位置(標(biāo)志對非對角分塊每行或每列的最后一個矩陣塊進(jìn)行讀寫操作),矩陣塊(3c,6c)表示LAST位置(標(biāo)志對非對角分塊偶數(shù)行或偶數(shù)列的最后一個矩陣塊進(jìn)行讀寫操作)。其間,除對地址的連續(xù)操作外,還需要轉(zhuǎn)到下一行,操作到MAX位置后的地址跳變,操作到LAST位置后的地址跳變等對地址跳變不同規(guī)律的控制邏輯。
(3)斜紋的矩陣塊表示非對稱模式的分塊,對此種模式的矩陣塊進(jìn)行處理,首先要按行將數(shù)據(jù)讀入RAM,然后再對RAM進(jìn)行跳讀,即對矩陣塊進(jìn)行轉(zhuǎn)置處理,并把轉(zhuǎn)置后的數(shù)據(jù)按行存入DDR2,存入轉(zhuǎn)置后該矩陣該塊所對應(yīng)的位置。完成對一個矩陣塊的處理后再進(jìn)行下一矩陣塊的轉(zhuǎn)置處理。在此種模式下,操作到每行的最后一個矩陣塊為MAX位置。其間,除了對地址的連續(xù)操作外,還需要轉(zhuǎn)到下一行,正確尋址轉(zhuǎn)置后的存入地址,讀寫完一個矩陣塊后如何轉(zhuǎn)到下一個矩陣塊,操作到MAX位置后的地址跳變操作。
按照這樣的操作順序是為了對DDR2的地址操作有規(guī)律可循,同時簡化控制著不同規(guī)律的地址跳轉(zhuǎn)的邏輯設(shè)計。轉(zhuǎn)置完成后各模式分塊的新位置如圖3所示。
2 本設(shè)計的特點
在本設(shè)計中,每個矩陣塊的大小是固定的,這樣更有利于控制邏輯的編寫。RAM的大小由FPGA中RAM緩沖資源的大小來確定,這樣間接通過RAM來進(jìn)行轉(zhuǎn)置能保證對DDR2讀寫時的大部分操作都是對連續(xù)地址進(jìn)行的,只有極少的操作需要連續(xù)對同一bank的不同行操作,所以相對于三頁式而言極大地提高了對DDR2的利用率。設(shè)計的用于轉(zhuǎn)置的RAM大小為64×64×32 b。
3 結(jié) 語
文中設(shè)計的通用矩陣轉(zhuǎn)置模塊建立在altera DDR2核可以穩(wěn)定的對DDR2進(jìn)行連續(xù)讀寫操作的基礎(chǔ)之上,充分利用DDR2連續(xù)對同一行進(jìn)行讀寫能夠達(dá)到最大的帶寬利用率這一特點,對需要做轉(zhuǎn)置的數(shù)據(jù)先按照矩陣的形狀一行一行連續(xù)存入DDR2,再對矩陣按照不同的跳址規(guī)律劃分為三種矩陣塊,對每一種矩陣塊都完成轉(zhuǎn)置變化后再存入DDR2內(nèi)的對應(yīng)位置,當(dāng)用戶需要時就可按行將轉(zhuǎn)置完后的數(shù)據(jù)讀出。測試中將4 096×512的數(shù)據(jù)在外部時鐘100 M的條件下,需要80 ms,由于系統(tǒng)設(shè)計時采用了兩組DDR2進(jìn)行乒乓操作,所以當(dāng)?shù)谌鵖AR圖像數(shù)據(jù)到來時可以被繼續(xù)處理,不會產(chǎn)生沖突。本方案能夠滿足雷達(dá)實時成像處理器的性能要求,達(dá)到對雷達(dá)信號進(jìn)行實時成像處理的效果。
參考文獻(xiàn)
[1]白海龍,全英匯,王虹現(xiàn),等.基于DDR2SDRAM的SAR成像轉(zhuǎn)置存儲器的FPGA實現(xiàn)[J].現(xiàn)代電子技術(shù),2008,31(1):48-50.
[2]保錚,鄧文彪,楊軍.ISAR成像處理中的一種運動補償方法[J].電子學(xué)報,1992, 20(6): 1-6.
[3]盧光躍.逆合成孔徑雷達(dá)成像技術(shù)的改進(jìn)[D].西安:西安電子科技大學(xué),1999.
[4]劉暢,牛曉麗,王巖飛.基于微處理器的SAR成像處理轉(zhuǎn)置存儲[J].現(xiàn)代雷達(dá),2005,27(4):32-34.
[5] Hiroki Fujisawa,Masayuki Nakamura.1.8V 800Mb/s/pin DDR2 and 2.5V400Mb/s/pin DDRI Compatibly Designed 1-Gb SDRAM With Dual-ClockInpnt-Latch Scheme and Hybrid Multi-Oxide Output Buffer[Z]. IEEE,2005.
[6] Blagomir Donchev,Georgi Kuzmanov.External Memory Controller for Virtex IIpro[Z]. 2006.
[7] DDR_PHY_Interface_Specification_v2_1[EB/OL]. http://wenku.baidu.com/view/cc2ba76527d3240c8447ef5a.html