摘 要:轉置存儲器 (CTM)是合成孔徑雷達(SAR)實時處理器的一個重要組成部分,本文提出了在基于FPGA和 DDR2 SDRAM的實時成像系統中CTM的設計方法,詳述了其功能和設計思想,并使用ALTERA的EP2S60F1020C5 FPGA和SAMSUNG的M378T6553CZ3 DDR2 SDRAM進行了實現和驗證,同時給出了設計與實現中應注意的若干問題。
關鍵詞:轉置存儲器;合成孔徑雷達;可編程邏輯器件;DDR2 SDRAM控制器
中圖分類號:TN41,TP33 文獻標識碼:B
文章編號:1004373X(2008)0104803
Realization of CTM in SAR Imaging System Based on DDR2 SDRAM and FPGA
BAI Hailong,QUAN Yinghui,WANG Hongxian,WANG Tong
(National Key Lab. of Radar Signal Processing,Xidian University,Xi′an,710071,China)
Abstract:The Corner Turning Memory(CTM) is the most important portion of real-time SAR imaging system.In this article,the FPGA-based character of CTM are introduced,then the main structures and design anamnesis of CTM is discussed as well as its simulation and validation on StratixII EP2S60F1020C5 and Samsung K4T1G084QC.Also some key points is given in realization on FPGA,the last result show the feasibility of design.
Keywords:corner turning memory;SAR;FPGA;DDR2 SDRAM controller
1 引 言
合成孔徑雷達(Synthetic Aperture Radar,SAR)成像信號處理的特點是運算復雜,數據量大,這就要求系統在進行快速運算的同時能進行大數據量的快速傳輸和存儲。轉置存儲器 (Corner Turning Memory,CTM)是合成孔徑雷達實時處理器的一個重要組成部分,他實現將距離向壓縮處理后的數據按幀進行轉置,以適應方位壓縮的需要。此間高達數百MB的數據吞吐對轉置存儲器的速度和容量都有較高的要求。
當前通用的方法是使用DSP作為成像處理的核心,配合DSP內建的SDRAM控制器,使用軟件的方法,利用SDRAM對數據進行轉置運算。隨著國防及國土資源探測領域對SAR微型化、迷你化的需求越來越強烈,采用DSP的SAR系統無論是功耗、體積還是抗輻射等方面都不能滿足這種趨勢的要求,必須采用新型的器件在不降低運算能力的前提下降低功耗、增加集成度以達到SAR系統的微型化。
可編程邏輯陣列(FPGA)經過數十年的發展,功能日趨完善。當前主流的FPGA內部集成大量的乘法器、RAM甚至處理器核,連同基于數據流的強大定點處理能力使FPGA在信號處理領域異軍突起。同時,FPGA具有軍品級的產品,可以滿足航空航天等極端環境下的系統級應用。本文將討論基于FPGA和DDR2 SDRAM的SAR成像系統設計,主要包括DDR2 SDRAM控制器的FPGA實現和其在CTM方面的具體應用。
2 基于FPGA的SAR成像信號處理機介紹
本系統是一個通用的基于FPGA的雷達成像數字信號處理機,板卡結構如圖1所示。
板卡選用4片ALTERA公司Stratix II系列的EP2S60F1024C5高性能FPGA作為主處理單元。而考慮到SAR成像、匹配等算法大數據量的存儲與轉化,板卡選用SAMSUNG的K4T1G084QC大容量高速DDR2 SDRAM作為存儲器,每個用戶可編程的FPGA可訪問的RAM容量最高達1 GB,并擁有32 GB/s@400 MHz的數據傳送率。同時,4片FPGA以環形的拓撲結構通過32 b LVDS雙向連接以滿足并行運算的要求。這樣,可在線重構的大規模高性能FPGA配合高容量高帶寬的DDR2 SDRAM可以完成所需的彈載SAR的實時仿真驗證。另外,板卡采用66 MHz,64 b的PCI橋接芯片PCI9656和主機進行通信,一片FLASH配合非易失的CPLD控制對4片FPGA的配置。
相對于基于DSP的SAR成像系統,基于FPGA的SAR成像信號處理板卡在帶來各種性能提升的同時也有開發困難的缺點。其中,基于DDR2 SDRAM的SAR成像轉置存儲器的FPGA實現便是本系統的重點和難點之一。
3 FPGA中DDR2 SDRAM控制器的設計
3.1 DDR2 SDRAM概述
在當前流行的存儲器中,DRAM相對SRAM來說具有簡單的結構,同時對于FLASH又具有高的即時存取速度。但是因其結構的特殊性,需要周期性地對存儲單元進行刷新來保持信息,這就限制了DRAM的應用。隨著微電子技術的不斷發展,集成同步控制邏輯和定時刷新邏輯的SDRAM克服了DRAM的缺點走向主流應用平臺。而其繼任者DDR SDRAM、DDR2 SDRAM更在前代的基礎上引入新的特性,占領了主要的隨機存儲器市場。
DDR2 SDRAM器件使用DDR架構實現高速運行,同時采用SSTL18-class2低電壓IO標準降低功耗并增強信號完整性。存儲器使用控制器提供的差分時鐘,命令在時鐘的每個上升沿寄存。雙向數據選通脈沖(DQS)與接收端中的用于采樣的數據一起傳輸。DQS是一個選通脈沖,在讀取期間由 DDR2 SDRAM器件傳輸,在寫入期間由控制器傳輸。DQS與用于讀取的數據邊沿對準,與用于寫入的數據中心對準。對DDR2 SDRAM器件的讀取和寫入訪問為突發式,訪問以激活命令寄存開始,然后是讀取或寫入命令。在激活命令下寄存的地址位用于選擇要訪問的組和行,在讀取或寫入命令下寄存的地址位用于為突發訪問選擇組和起始列位置。
3.2 DDR2 SDRAM的初始化時序和指令系統
相對于前代,DDR2 SDRAM 創新性的加入了片內端接電阻(ODT)、CAS附加延遲(Posted CAS Additive Letency)等特性。前者使用可配置的片內端接,簡化了PCB的設計;后者可以在AL時鐘周期內延遲DDR2 SDRAM的內部指令,優先載入讀取指令而無須等待行激活延時,從而提高對DDR2 SDRAM的讀寫訪問效率。這些特性一般都是在DDR2 SDRAM的初始化過程中通過設置模式寄存器來實現的。DDR2 SDRAM的初始化時序如圖2所示。
初始化進程通過對一個內部模式寄存器和3個外部模式寄存器的設置來定義DDR2 SDRAM的具體運行模式,包括突發長度、突發類型、DLL使能、驅動輸出強度等。這些參數根據所使用的內存芯片由其DATASHEET給出。
初始化時序結束后,控制器即可以對DDR2 SDRAM進行存取操作。激活(Active)目標行(Row)是所有的讀寫命令的先導,而又以對該行的預充電(Precharge)結束。行被激活后,讀取或寫入命令就可以按照tRCD指標發送到行。讀寫命令用于發起對活動行的突發式讀取訪問,BA0和BA1上的值選擇組地址,A0~Ai上提供的地址輸入選擇起始列位置。讀寫突發結束后,只要還未預充電,此行仍可用于后面的訪問。DDR2器件需周期性刷新,控制器使用一個刷新計時器每隔78 μs對DDR2 SDRAM發起自動刷新指令。自動刷新命令在此控制器設計中擁有最高優先級。DDR2 SDRAM的指令系統如表1所示。
3.3 在FPGA中設計DDR2 SDRAM控制器
根據DDR2 SDRAM使用接口時鐘雙沿采樣指令、DQS雙沿采樣數據的特點,控制器主要由控制(Controller)模塊和數據通路(Data Path)模塊組成。控制模塊實現功能為:在系統上電時對DDR2 SDRAM進行初始化,在系統正常工作時把本地的讀寫請求解析成DDR2 SDRAM物理接口命令,并控制數據通路按照接口時序發送接收數據、定時發送刷新指令等。模塊的狀態機轉移如圖3所示。
數據通路是本地端和存儲器端的橋接接口。因為DDR2 SDRAM的數據工作在雙倍數率下,本地的數據總線的位寬是存儲器端數據總線的2倍。鎖相環(PLL)模塊用于為控制模塊和數據通路模塊提供同步的時鐘。這里還使用反饋時鐘配合一個額外的鎖相環模塊,用于重同步讀回數據。數據通路的框圖如圖4所示。
4 CTM的設計
經典R-D SAR成像算法的本質是實現距離壓縮和方位壓縮,距離向壓縮輸出的離散數據可以看成是一個按行輸出的矩陣,之后的方位向壓縮需要按列進行處理。CTM 作為一個獨立的部件正是為了適應成像處理器中方位處理部分對輸入數據的要求,將距離向處理后的數據重新排序,使得沿著距離向順序輸入的數據變換成沿著方位向順序輸出。
對于單幀圖像數據的轉置,在算法上是輸入數據流到存儲器的映射和存儲器到輸出數據流的映射,這兩個映射通過對存儲器的讀寫操作來實現,實現這兩個映射必須保證對存儲器的讀寫操作不能沖突。另外,SAR圖像處理中相鄰幀圖像數據是相關的,在R-D算法中,正確的方位壓縮運算要用到相鄰兩幀圖像數據。而且為了保證對一幀圖像數據方位向處理的同時并行地對下一幀圖像數據進行距離向處理,就必須對數據進行分頁式存儲。
本文采用了三頁式的設計,CTM的結構如圖5所示。將存儲器按照實際的需求分為A、B、C 三頁,在每頁將距離壓縮后每個距離向的數據按行的方式存儲,而列的長度為方位向采樣的一半,按行寫入而按列讀出。這樣,在寫入A頁的同時,可以讀B、C頁;寫入B頁的同時,可以讀A、C頁;寫入C頁的同時,可以讀A、B頁。這樣輪轉式對存儲器的操作在實現矩陣轉置的同時以最小的代價保證了距離向和方位向的并行處理。
5 CTM基于DDR2 SDRAM和FPGA的實現
CTM的實現基于FPGA邏輯對DDR2 SDRAM地址的控制。本系統實現的一種成像算法為距離向8 192點采樣數據,每個數據占用2 B RAM,則每個距離向的數據需要16 384 B的RAM。方位向合成孔徑長度為4 096點采樣數據,每個數據同樣是占用2 B RAM,需要8 192 B的RAM。根據上述方法對存儲器分頁,每頁的一行為8 192 B,一列的長度為2 048 B,則CTM共需8 192*4 096*3*2=192 MB的存儲器空間。整個設計的讀寫仿真時序如圖6所示。
在設計的實現過程中,需要特別注意以下問題:
(1) FPGA已經針對DDR2 SDRAM提供了相應的I/O電平標準SSTL18[CD#*2]class II和相應的I/O Bank。因為每個參考電平管腳只能關聯最多20個SSTL18電平輸入輸出,在做PCB設計時要在仿真的基礎上分配相應的管腳,避免超出限制。
(2) 在做PCB時應針對DDR2 SDRAM數據和控制信號在SDRAM端進行飛越式(Fly-By)并行端接,以盡可能地保證信號完整性,提高工作頻率。
(3) 在FPGA開發環境中打開SDRAM信號引腳的串行端接電阻(25 Ω)。注意根據器件DATASHEET的具體時序要求設計控制電路。
(4) 存儲器片上DLL有工作時鐘范圍的限制,調試時工作時鐘不能太低,否則會引起DLL不能同步時鐘而引起器件工作失常。
6 結 語
此設計實例現已應用于本所上述基于FPGA的SAR成像系統。經過長時間實際運行的檢驗,CTM穩定工作在200 MHz下,64位數據最大總線傳輸率達到32 GB/s。在以后的改進設計中,通過換用更高速度等級的FPGA并優化系統,可以達到更高的存儲帶寬。
針對SAR系統通過FPGA集成而小型化的趨勢,本文設計了一種基于DDR2 SDRAM和FPGA的SAR成像轉置存儲器。本設計使用當前主流的器件,通過模塊化的設計方法,縮短了設計時間并達到了理想的性能。
參 考 文 獻
[1]保錚,邢孟道,王彤.雷達成像技術[M].北京:電子工業出版社,2005.
[2]夏宇聞.Verilog數字系統設計教程[M].北京:北京航空航天大學出版社,2003.
[3]Gang Ren,Jizhong Han,Chengde Han.CTM on Multiprocessor:Solution for Bottleneck of SAR.Proceedings of ICSP2000 ,IEEE.
[4]Stratix II Device Handbook[Z].Altera Corporation,2006.
[5]全英匯,王宏現,邢孟道.分布式多DSP系統的CPCI總線接口設計和驅動開發[J].現代電子技術,2006,29(20):91-93.
[6]邢孟道.基于實測數據的雷達成像算法研究[D].西安:西安電子科技大學,2002.
作者簡介 白海龍 男,1982 年出生,河南駐馬店人,碩士研究生。主要研究方向為數字系統設計與高速實時信號處理。
全英匯 男,1981年出生,浙江麗水人,博士研究生。主要研究方向為雷達成像信號處理。
王虹現 男,1979年出生,河南商丘人,博士研究生。主要研究方向為雷達成像與高速實時信號處理。
王 彤 男,1974年出生,陜西西安人,教授。主要研究方向為雷達成像、地面動目標檢測和空時二維信號處理。
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。”