《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 航電FC接口板存儲模塊設計與硬件電路實現(xiàn)
航電FC接口板存儲模塊設計與硬件電路實現(xiàn)
2016年微型機與應用第23期
李炳乾,王勇,劉達,譚小虎
空軍工程大學 航空航天工程學院,,陜西 西安 710038
摘要: 航電光纖通道接口板是實現(xiàn)航電系統(tǒng)統(tǒng)一網絡的基礎,,在高速傳輸過程中,,光纖通道接口板需要及時對未處理的幀進行緩存,。文章基于DDR2的大容量,、高速率存儲模塊為這一問題提出了解決方案,。對DDR2的功能及結構進行了簡要闡述,,根據輸入和輸出需求,,設計實現(xiàn)了DDR2芯片組電路,,采用FPGA IP核實現(xiàn)DDR2控制器,,測試仿真控制器的讀寫時序。測試結果表明,,所設計的DDR2控制器能夠按照規(guī)則的時序進行操作,,實現(xiàn)了高速讀寫,可以實現(xiàn)功能集成并節(jié)約成本,,很好地滿足光纖通道接口板的設計需求,。
Abstract:
Key words :

  李炳乾,王勇,劉達,譚小虎

  (空軍工程大學 航空航天工程學院,陜西 西安 710038)

       摘要:航電光纖通道接口板是實現(xiàn)航電系統(tǒng)統(tǒng)一網絡的基礎,,在高速傳輸過程中,,光纖通道接口板需要及時對未處理的幀進行緩存。文章基于DDR2的大容量,、高速率存儲模塊為這一問題提出了解決方案,。對DDR2的功能及結構進行了簡要闡述,根據輸入和輸出需求,,設計實現(xiàn)了DDR2芯片組電路,,采用FPGA IP核實現(xiàn)DDR2控制器,測試仿真控制器的讀寫時序,。測試結果表明,,所設計的DDR2控制器能夠按照規(guī)則的時序進行操作,實現(xiàn)了高速讀寫,,可以實現(xiàn)功能集成并節(jié)約成本,,很好地滿足光纖通道接口板的設計需求。

  關鍵詞:光纖通道,;DDR2控制器,;FPGA;IP核

  中圖分類號:TP27文獻標識碼:ADOI: 10.19358/j.issn.16747720.2016.23.010

  引用格式:李炳乾,王勇,劉達,,等. 航電FC接口板存儲模塊設計與硬件電路實現(xiàn)[J].微型機與應用,,2016,35(23):35-37,41.

0引言

  光纖通道(Fibre Channel,FC)總線接口板是綜合模塊化航電系統(tǒng)結構中的重要組成部分,依據航電系統(tǒng)網絡中心化設計要求,,光纖通道總線接口板要實現(xiàn)數(shù)據的接收與發(fā)送[1],。由于數(shù)據傳輸量巨大,,為減輕主機CPU收發(fā)處理負擔,還要具備包括數(shù)據緩存在內的多種功能,。數(shù)據緩存功能就是要構建光纖通道接口板數(shù)據的接收和發(fā)送隊列,,緩存未及時處理的數(shù)據和接口板狀態(tài)信息。

  DDR2作為當前主流的內存芯片,,具有存取速度快,、儲量大、成本較低等特點[2-3],,被廣泛地運用到通用計算機系統(tǒng),、嵌入式系統(tǒng)等電子行業(yè)的各大領域當中。根據課題要求,,采用DDR2可以滿足需求,,因此,,充分利用板上已有硬件資源,,包括FPGA、DDR2芯片等,,在FPGA中進行DDR2控制器設計,,實現(xiàn)航電光纖通道接口卡上的存儲模塊設計。

  光纖通道接口板的整體功能模塊設計如圖1所示,。

圖像 001.png

  光纖通道接口板傳輸速率為1~2 Gb/s,,緩存數(shù)據讀寫量大,必須采用高速電路設計,,因此時序的嚴格約束十分必要,,存儲模塊的合理設計占據光纖通道板卡設計十分關鍵的地位。

1DDR2性能與結構特點

  1.1DDR2性能特點

  DDR2(全稱為Double Data Rate 2) 是一種可以在時鐘上升沿和下降沿進行數(shù)據傳輸?shù)膬却婕夹g標準,,由電子設備工程聯(lián)合委員會(JEDEC)負責標準的開發(fā)和制定[1],。由于DDR2芯片采用4n-bit 預抽取架構以實現(xiàn)高速操作[4],每個IO引腳被設計為每個時鐘周期可傳輸2個數(shù)據字,,在不改變內核時鐘頻率的情況下實現(xiàn)了數(shù)據傳輸速率的加倍增長,。

  1.2DDR2結構特點

  光纖通道接口板設計選用的是2G容量的DDR2芯片MT47H128M16RT[4],其芯片內部包括控制邏輯,、地址注冊,、BANK控制邏輯、存儲陣列,、IO接口和時鐘等,,存儲陣列設有8個內部Bank,每個Bank大小為16 384×256×64=256 MB,,以實現(xiàn)并行讀寫操作,。

  在芯片外部,,雙向數(shù)據選通引腳DQS和DQS#用于接收端及時獲取數(shù)據,當處于READ工作狀態(tài)時信號由DDR2發(fā)送出去,,反之由存儲器控制器發(fā)送,,本設計選取的芯片數(shù)據寬度為16 bit,分為高8位和低8位,。此雙向數(shù)據選通分別由LDQS,、LDQS#和UDQS、UDQS#信號進行控制,。與此同時,,DDR2 SDRAM工作于差分時鐘下,當CK上升,、CK#下降時,,表示時鐘的正邊沿??刂泼睿ǖ刂稟[13:0]/BA[2:0]和控制信號CS#等)在時鐘的正邊沿觸發(fā),,數(shù)據在DQS(同時也是時鐘CK)的雙邊沿觸發(fā)。

2光纖通道接口板存儲模塊硬件設計

  2.1存儲模塊供電設計

  光纖通道接口板采用美光(Micro)公司生產的MT47H128M16RT-25E:C型號84腳FBGA封裝DDR2 SDRAM芯片,。DDR2工作電壓采用的SSTL_1.8標準較DDR的SSTL_2.5有較大的優(yōu)勢,,能夠很好地減小板上功率消耗和熱量生成。設計中,,將FPGA生成的1.8 V電源引腳接入DDR2電源引腳VDD,、VDDQ、VDDL等,,為DDR2芯片供電,。

  與此同時,DDR2芯片還需要直流0.9 V的參考電壓VREF輸入,,參考了Xilinx公司ML555 developing kit中的電源電路設計,,利用PTH05050Y芯片對DDR2的0.9 V供電電源進行穩(wěn)壓。由于DDR電路VREF消耗電流很小,,因此將1.8 V直流電源電壓經串聯(lián)電阻分壓處理,,得到0.9 V作為芯片輸入參考電壓VREF,PTH05050Y輸出電壓為0.9 V經過穩(wěn)壓的DDR2參考電壓,。

  2.2接收/發(fā)送緩存芯片組設計

  DDR2 SDRAM負責存儲從FC-1層發(fā)往FC-0層的待發(fā)送幀和從FC-0層發(fā)往協(xié)議層的接收幀,,由于光纖傳輸速率快,需要大容量的緩存單元,,同時,,接收與發(fā)送端口同時對存儲器中某一地址進行操作可能引起未知錯誤,產生不可預測的后果。因此,,利用4片MT47H128M16RT DDR2芯片兩兩組合分別設置為發(fā)送緩存和接收緩存,,如圖2所示為兩片DDR2芯片組成的接收/發(fā)送數(shù)據緩存模塊。

  兩片DDR2構成的數(shù)據緩存需要32條數(shù)據線,,而選用的MT47H128M16RT芯片只有16條數(shù)據引腳,,因此將32位數(shù)據線分為高位和低位,分別接入兩片DDR2存儲芯片,,存儲器控制器通過控制片選CS#,、命令輸入RAS#、CAS#和WE#等引腳,,實現(xiàn)數(shù)據的讀寫操作,。

圖像 002.png

  利用DDR2所具有的OCD、ODT和POST CAS功能可以很好地對輸出信號品質進行控制和調整,,使內存單元模塊的設計更為簡化和精確,。通過離線驅動調整(OCD)功能設置上拉/下拉電阻,實現(xiàn)對DQS和DQS#,、DQ和DQ#的電壓調整,,使DQ與DQS的電壓相同,減小DQ-DQS傾斜,,提高信號完整性和信號品質,。參考上一節(jié)DDR2芯片內部結構,,DDR2芯片數(shù)據DQ,、數(shù)據選擇DQS端引腳設有內建核心終結電阻(ODT),因此在設計中,,將ODT引腳經下拉電阻接地,,芯片初始化時接低電平,在讀寫數(shù)據時置高啟動ODT功能,,減少主板上電阻的設置數(shù)量,,同時也提高了信號質量。

3DDR2控制器設計

  3.1DDR2控制器功能

  DDR2 SDRAM是光纖通道接口板的核心組件,,硬件的搭建基于DDR2的接口板,,更重要的是通過嚴整的時序和規(guī)范的操作控制對DDR2進行初始化、數(shù)據讀寫等,,DDR2控制器就是完成這樣工作的部件[5],。根據實際使用需要,本文設計的DDR2控制器主要實現(xiàn)的功能如下:

 ?。?)完成DDR2的初始化操作,;

  (2)可對DDR2參數(shù)進行配置,;

 ?。?)完成突發(fā)長度為4的讀寫操作,;

  (4)自動發(fā)送激活和預充電控制命令,,減少用戶對底層控制時序的復雜定義,;

  (5)自動刷新操作,。

  3.2基于FPGA的DDR2控制器設計

  DDR2控制器設計包含4個主要模塊:時鐘生成模塊,、存儲控制模塊、數(shù)據鏈路模塊和用戶接口模塊,,如圖3所示,。

圖像 003.png

  時鐘生成模塊為控制器提供時鐘信號,輸出多相位時鐘,,同時對DQ與DQS間的時延進行校準,,使DQS邊沿準確對齊DQ有效窗口的中心位置。

  讀寫接口模塊負責將用戶數(shù)據DQ和數(shù)據選擇DQS信號按照規(guī)定時序寫入DDR2,;從DDR2讀取數(shù)據時,,DDR2發(fā)送DQ和DQS信號,F(xiàn)PGA將DQS信號經延時校準后作為其寫時鐘,,讀取DDR2數(shù)據,。

  存儲控制模塊為數(shù)據讀寫提供地址和命令信號。組成在DDR2上電復位后進入初始化進程,。DDR2經過20 μs的穩(wěn)定期,,CKE時鐘使能信號置高,400 ns后開始預充電操作,,配置寄存器后再次預充電和刷新,,判斷時鐘是否鎖定后配置離線驅動電壓,完成初始化,。在初始化完成后,,可進行數(shù)據讀寫。刷新操作優(yōu)先級高于讀寫操作,,因此兩者沖突時控制器將通知用戶停止發(fā)送讀寫命令,,待刷新操作完成后進行讀寫操作。

  DDR2讀寫操作采用的是突發(fā)(burst)模式,,需要讀寫命令,、讀寫數(shù)據和讀寫地址,在讀寫突發(fā)操作完成時發(fā)送突發(fā)信號完成(burst_done),,保持兩個時鐘周期有效后終止讀寫操作,。

  光纖通道板卡采用Xilinx公司生產的Virtex-5系列XC5VLX85T進行邏輯設計,在設計光纖通道協(xié)議邏輯后,F(xiàn)PGA的空置邏輯可以進行DDR2控制器的邏輯設計,,在充分利用FPGA上資源的同時節(jié)約了板上另外焊接專用DDR2控制器芯片的成本和空間,。

  在Xilinx ISE開發(fā)套件中提供有存儲器接口生成器(Memory Interface Generator,MIG)IP核開發(fā)工具,,可以直接根據用戶需求例化與硬件設備相適應的DDR2存儲控制器設計模塊[6],。MIG具有GUI界面,根據需要可以對存儲器件的類型,、位寬,、速度級別、控制參數(shù)和引腳分配進行準確配置,,大大縮短設計DDR2控制器的時間周期,,尤其對系統(tǒng)設計很有幫助。

  在設計過程中無需再了解DDR2嚴格的物理層時序及工作特性就可以設計實現(xiàn)DDR2的讀寫功能,,用戶操作流程如圖4所示,,滿足設計需求。

  上電后,,通過初始化配置,,得到置高的init_over信號,說明初始化成功,;將標識START信號置1,,并通過WRITE_BUSY[1]和READ_BUSY[1]信號判斷是否滿足命令發(fā)送條件,當兩位均為1時允許命令發(fā)送。若發(fā)送命令條件滿足,,則通過用戶接口發(fā)送CMD,、操作首地址CMD_ADDR和數(shù)據操作計數(shù)CMD_CNT,若WRITE_BUSY[0]和READ_BUSY[0]互斥取0值時,,用戶接口完成響應的寫入或讀取數(shù)據的操作,。

圖像 004.png

4調試過程與結果分析

  4.1測試過程

  設計采用內部狀態(tài)機實現(xiàn)對FPGA DDR2 IP核控制信號、讀寫數(shù)據信號,、地址信號輸出和輸入的數(shù)據采集。測試機理為:利用FPGA上DDR2控制器對外部硬件DDR2執(zhí)行一個burst寫操作,,然后在同一地址執(zhí)行相同burst的讀操作,,讀取剛寫入的數(shù)據,對比寫入數(shù)據與讀出數(shù)據是否一致,。

  DDR2硬件驗證測試流程如下:

 ?。?)系統(tǒng)復位;

 ?。?)等待用戶接口信號“init_over”為高,;

  (3)對DDR2進行寫操作;

 ?。?)對DDR2進行讀操作,;

  (5)對比讀出數(shù)據與寫入數(shù)據是否相同,,若相同ERROR置0,,反之置1。

  4.2調試結果

  測試程序向DDR2中發(fā)送一個Burst=4的數(shù)據,,寫入數(shù)據的時序如圖5所示,。

圖像 005.png

  然后對數(shù)據進行讀取,讀取數(shù)據的時序如圖6所示,。

圖像 006.png

  在init_over得到高電平后,,初始化完成,在相同地址進行數(shù)據的寫入和讀取,,從中可以看到寫入DDR2和讀取到FPGA中的數(shù)據一致,,說明數(shù)據操作正確。

5結束語

  基于FPGA設計的DDR2控制器可以很好地滿足時序關系,,經過對輸入輸出數(shù)據的比較表明,,數(shù)據一致,讀寫速度達到了光纖通道接口板的設計需求,。

  參考文獻

 ?。?] 支超有,唐長紅.機載數(shù)據總線技術及其應用[M].北京:國防工業(yè)出版社,,2009.

 ?。?] 陳平,張春,,張一山,,等.DDR2 SDRAM 控制器IP功能測試與FPGA驗證[J].微電子學,2016,46(2):251-254.

 ?。?] JEDEC solid state technology association. JEDEC Standard: DDR2 SDRAM Specification[EB/OL].(2006-07-01)[2016-07-10], http://www.jedec.org/download/search/JESD792C  .pdf.

 ?。?] Micron. DDR2 SDRAM MT47H128M16XX Datasheet,2010[EB/OL].[2016-07-01].http://download.micron.com/pdf/datasheet/dram/2g_ddr2.pdf.

  [5] Xilinx Inc. Ug086.pdf. 2011[EB/OL].(2006-07-01)[2016-07-10].http://www.xilinx.com/support/documentation/ip_documentation.

 ?。?] 范澤明.DDR2 SDRAM 控制器設計與驗證[D].西安:西安電子科技大學,,2009.



此內容為AET網站原創(chuàng),未經授權禁止轉載,。