《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的DDR3六通道讀寫防沖突設計
基于FPGA的DDR3六通道讀寫防沖突設計
2018年電子技術應用第7期
張鳳麒,張延彬,王忠勇
鄭州大學 產業技術研究院,河南 鄭州450000
摘要: 為了解決期貨行情數據加速處理中多個通道同時訪問DDR3時出現的數據讀寫沖突問題,實現了一種基于FPGA的DDR3六通道讀寫防沖突設計,完成了對單片DDR3內存條的多通道實時訪問控制需求。通過ChipScope工具采樣結果證明了設計的可行性,提高了并行處理的速度,極大程度地降低了期貨行情數據處理中行情計算的時間開銷,最高通道速率可達5.0 GB/s以上,帶寬利用率可達80%以上,在多通道數據讀寫應用中具有很高的實用價值。
關鍵詞: 多通道 防沖突 DDR3 FPGA
中圖分類號: TP334.4
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.175167
中文引用格式: 張鳳麒,張延彬,王忠勇. 基于FPGA的DDR3六通道讀寫防沖突設計[J].電子技術應用,2018,44(7):68-71,80.
英文引用格式: Zhang Fengqi,Zhang Yanbin,Wang Zhongyong. Anti-conflict design for reading and writing of DDR3 six channels based on FPGA[J]. Application of Electronic Technique,2018,44(7):68-71,80.
Anti-conflict design for reading and writing of DDR3 six channels based on FPGA
Zhang Fengqi,Zhang Yanbin,Wang Zhongyong
Industrial Technology Research Institute,Zhengzhou University,Zhengzhou 450000,China
Abstract: In order to solve the problem of data conflict of reading and writing when multiple channels access DDR3 at the same time in the acceleration processing of futures market data, an anti-conflict design for reading and writing of DDR3 six channels based on FPGA is implemented and the requirement of multiple channels′ real-time access control for monolithic DDR3 memory bar is completed. The result of ChipScope sampling proves the feasibility of the design, it improves the parallel processing speed and reduces the prices of time overhead in the calculation of futures market data processing. The highest channel rate can reach more than 5.0 GB/s and the bandwidth utilization rate can reach more than 80%. The design has a very high practical value in the application of multiple channels′ reading and writing.
Key words : multiple channels;anti-conflict;DDR3;FPGA

0 引言

    基于FPGA的期貨行情數據加速處理過程中,不同的消息類型采用并行處理的方式,并且每一次的處理結果需要使用內存來緩存一次行情數據信息。行情數據信息容量巨大,片上存儲難以滿足需求,采用DDR3 SDRAM成為首選方法[1]。但由于DDR3只有一套數據訪問通道,不能滿足多個通道同時訪問的需求[2]。此前的對于SDRAM的多通道解決方案中,比如曹一江[3]等設計的基于NPI總線的片外存儲器,最大帶寬可達743 Mb/s;樊博[4]等使用UI接口,DDR3通信的最大帶寬可達3.8 Gb/s;張宇嘉[5]等設計的基于AXI4的DDR3多端口方案雖然傳輸速率有所提高,但由于AXI4協議本身的復雜性增加了開發使用的難度。本文實現并驗證了期貨行情數據加速處理中基于FPGA的DDR3六通道UI接口讀寫防沖突設計,簡化了DDR3多通道讀寫的復雜度,隨著有效數據周期的提升,最高端口速率可達5.0 GB/s以上,帶寬利用率可達80%以上。

1 總體設計架構

    本文所設計的六通道讀寫防沖突總體架構如圖1所示,主要包括通道判優仲裁模塊、讀寫邏輯控制模塊和DDR3存儲器控制模塊。

qrs3-t1.gif

    DDR3存儲控制器模塊采用Xilinx公司的MIG核,用戶只需要通過IP核的GUI選擇內存芯片并進行相關參數設置,即可完成DDR3的配置工作[6]。

    通道判優仲裁模塊將對六路通道進行仲裁,對于同一時刻有讀寫請求的不同通道,該模塊按照優先級的高低判定訪問DDR3的順序,利用中斷思想解決多通道讀寫的沖突問題。

    讀寫邏輯控制模塊控制DDR3的接口生成,根據不同操作完成對應接口的時序控制[7],進而實現對DDR3的正確讀寫訪問。

2 DDR3存儲器控制模塊設計

    DDR3 IP核生成的控制器邏輯框圖如圖2所示,采用UI接口的方式相比于AXI4接口,不需要自己組織數據,容易操作,大大簡化了DDR3的使用復雜度,為DDR3的擴展使用帶來了方便[8]

qrs3-t2.gif

2.1 存儲控制模塊寫操作

    DDR3寫操作接口信號如表1所示。

qrs3-b1.gif

    寫操作過程:當app_rdy和app_wdf_rdy同時為高的情況下,寫入DDR3的地址app_addr與app_cmd綁定對齊,寫入DDR3的數據app_wdf_data與數據掩碼app_wdf_mask綁定對齊,app_cmd置為3′b000,與此同時app_en、app_wdf_wren、app_wdf_end置高,即可將數據寫到對應的地址中。

    因為DDR3的寫時序不只一種,為了簡化系統設計,本文設計的用戶接口寫操作時序為地址和數據完全對齊,便于理解和操作[9]。

2.2 存儲控制模塊讀操作

    DDR3的讀操作接口信號如表2所示。

qrs3-b2.gif

    讀操作過程:在app_rdy為高時,用戶發送讀命令并同時將app_en置高,則讀命令和讀地址會寫到DDR3中,DDR3會返回數據和有效指示信號,兩者共同決定返回的數據是否有效。

    通常情況下,DDR3的讀請求結束之后不會馬上返回數據,需要延遲一定的時鐘周期。

3 通道判優仲裁模塊設計

    通常情況下,由于DDR3只有一組控制、地址和數據總線,因此同一時刻只能有一個通道在訪問。根據期貨交易的處理規則,優先級由高到低的順序依次為合約信息消息、市場狀態消息、品種交易狀態消息、成交統計行情消息、多檔定單簿行情消息、多檔成交量統計行情消息。在通道判優的過程中,首先將6種不同的消息經封裝后分別寄存到相應的消息緩存中,每一通道寫入消息緩存中的數據格式,從高到低位依次為寫使能、讀使能、寫數據、寫地址、讀地址;然后首先判斷合約信息消息緩存是否為空,如果不為空,則證明當前有合約信息消息的請求發生,此時狀態機會跳轉到合約信息消息處理狀態;待合約信息消息的緩存全部讀取完畢之后,再次按優先級順序判斷其他消息緩存是否為空,狀態機隨即做相應的跳轉,完成不同通道之間的切換,如圖3所示。

qrs3-t3.gif

    對于不同的消息類型,對應著不同的消息處理單元,目的是增加系統的并行處理操作,降低處理延遲。

4 讀寫邏輯控制模塊

    讀寫邏輯控制模塊主要對不同類型消息做并行化處理,生成DDR3的接口信號,每個消息的處理流程如圖4所示。

qrs3-t4.gif

    對于期貨交易中的各種合約行情,種類多,但占用空間小,通常DDR3中一個地址就可完成一個行情的存儲,在行情的還原、計算、發布中,需要讀取多個行情。由于DDR3的突發長度為8,為了便于對行情的準確存取,6個通道的數據位寬均設定為DDR3位寬的1/8,即一次只存取一個地址的數據。

    對于通道判優仲裁模塊輸出的數據,寫使能與讀使能均為1 bit位寬,高電平表示請求發生;寫數據為64 bit位寬;寫地址和讀地址為28 bit位寬,DDR3的數據位寬在IP核中配置為512 bit,地址位寬為28 bit。因寫數據位寬與DDR3數據位寬不匹配,所以DDR3的寫操作需要掩碼配合共同完成。

    處理過程如下:首先進行讀寫判斷,若寫使能置高,則跳轉到寫操作狀態;若讀使能置高,則跳轉到讀操作狀態,若無讀寫操作,處于等待狀態。(期貨行情消息處理中不會出現同一通道讀寫同時進行的情況,因此同一通道讀寫使能同為高電平的情況不會出現。)

    如果是寫操作,一方面生成寫入DDR3的地址和命令,另一方面將寫數據封裝成512 bit位寬。其中寫入DDR3的地址app_addr為{寫地址[27:3],3′d0},寫入的數據app_wdf_data和掩碼app_wdf_mask由寫地址[2:0]確定。數據地址命令控制模塊也會相應的產生app_en、app_wdf_wren、app_wdf_end控制信號,這些信號共同作用關于DDR3 SDRAM存儲器,配合完成DDR3的寫入操作,如圖5所示。

qrs3-t5.gif

    如果是讀操作,地址命令選擇模塊將讀地址[27:3]賦值給app_addr作為寫入DDR3的基地址,同時將讀地址[2:0]作為寫入DDR3的偏移地址存入對應通道的偏移地址緩存中,在數據地址命令控制模塊生成其他的控制信號傳送給DDR3 SDRAM存儲器。DDR3 SDRAM根據地址返回相應的512 bit位寬的數據。在返回數據的同時讀取對應通道偏移地址緩存中的偏移地址,并根據此偏移提取對應的64 bit數據從而完成DDR3的一次讀取操作,如圖6所示。

qrs3-t6.gif

5 實驗結果與分析

5.1 實驗結果

    本文以Xilinx公司的Kintex-7系列XC7K325T FPGA芯片和Micron公司的JBF9C256x72AKZ DDR3芯片為硬件平臺,并以此來驗證本文設計的正確性,分析其性能。

    測試方法:六通道在同一時刻發起DDR3的讀寫請求,其中1~4通道進行DDR3的寫請求,5、6通道進行DDR3的讀請求,狀態機按照消息優先級的順序依次進行狀態跳轉完成處理,最后將數據分別返回到相應通道中,ChipScope結果如圖7所示。

qrs3-t7.gif

5.2 實驗分析

    為了更好描述設計的性能,本文引入以下參數。仲裁時間:請求信號發生到通道開始處理的時間間隔;IP核處理時間:DDR3 IP核從接收指令到返回數據的時間;有效提取時間:從512 bit的DDR3返回數據中提取對應的64 bit的時間間隔;有效數據時間:數據有效的維持時間;總時間:消息請求到數據返回的時間,即仲裁時間、IP核處理時間與有效數據時間之和。因此:

     qrs3-gs1-2.gif

    在本設計中,實測仲裁時間為3個時鐘周期,IP核處理時間為22個時鐘周期,有效提取時間2個時鐘周期,如圖8所示。

qrs3-t8.gif

    每個通道的有效數據時間不相同,性能也不相同,具體測試結果如表3所示。

qrs3-b3.gif

    測試結果表明,本設計能穩定高效地完成多通道對DDR3的訪問,隨著有效數據周期的提升,通道速率可達5 GB/s以上,帶寬利用率可達80%以上,能夠滿足期貨行情數據處理過程中的實時性要求。

6 結論

    本文設計并實現了基于FPGA的DDR3六通道讀寫防沖突設計,能有效地解決在期貨行情數據處理中多通道同時訪問DDR3的沖突問題,在現有的Kintex-7系列FPGA平臺期貨行情數據處理系統中取得了良好的應用效果。測試結果表明該防沖突設計能高效正確地完成多通道對DDR3的訪問,具有穩定性好、仲裁時間固定、效率高等特點。本文設計的DDR3多通道讀寫防沖突設計簡化了多通道讀寫DDR3的復雜度,降低了在期貨行情數據處理過程中的延遲,提高了并行處理速度。

參考文獻

[1] 曠立強.基于FPGA的DDR3設計與實現[D].長沙:國防科學技術大學,2014.

[2] 吳連慧.基于FPGA的DDR3多端口讀寫存儲管理設計[J].單片機與嵌入式系統應用,2015,14(11):71-74.

[3] 曹一江,馬寧,王建民.MPMC高速存儲器接口IP核設計[J].哈爾濱理工大學學報,2012,17(6):75-80.

[4] 樊博,王延東,孫宏海,等.FPGA實現高速實時多端口SDRAM控制器的研究[J].計算機工程與應用,2013,49(12):60-64.

[5] 張宇嘉,楊曉非,姚行中.基于AXI4的衛星接收機DDR3多端口存儲的設計[J].電子器件,2016,39(3):74-78.

[6] 梁晨,趙邦信.基于FPGA和DDR3 SDRAM的大規模查找表設計與實現[J].電子器件,2017,40(4):849-855.

[7] 宋明,趙英瀟,林錢強.基于FPGA的DDR3 SDRAM控制器的設計與優化[J].電子科技,2016,29(11):47-50.

[8] 姜文博,陳維蛇,司蓉蓉.Xilinx系列FPGA對DDR3的訪問接口設計[J].通訊世界,2016,15(5):243-247.

[9] 潘一飛,余海.基于FPGA的DDR3用戶接口設計[J].電子制作,2013,24(15):9-13.



作者信息:

張鳳麒,張延彬,王忠勇

(鄭州大學 產業技術研究院,河南 鄭州450000)

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美性生交xxxxx久久久| 国产精品电影网站| 一区二区欧美在线观看| 欧美在线视频不卡| 亚洲一区亚洲| 一卡二卡3卡四卡高清精品视频| 影音先锋亚洲精品| 激情综合网激情| 国产在线精品成人一区二区三区 | 在线一区二区三区四区五区| 美女精品在线观看| 亚洲国产成人精品女人久久久| 亚洲综合精品四区| 亚洲高清不卡在线观看| 欧美一级理论性理论a| 亚洲婷婷免费| 亚洲伦理中文字幕| 久久蜜桃香蕉精品一区二区三区| 欧美日韩在线播| 欧美1区2区3区| 欧美mv日韩mv亚洲| 欧美91大片| 欧美a级片网| 欧美成人精品三级在线观看| 免费人成网站在线观看欧美高清| 久久综合九色综合欧美就去吻| 久久精品一二三区| 久久精品99国产精品日本| 久久成年人视频| 久久久久九九九| 久久躁狠狠躁夜夜爽| 老牛影视一区二区三区| 牛牛国产精品| 欧美日本一区| 欧美伦理91i| 国产精品成人在线观看| 国产亚洲激情在线| 午夜视黄欧洲亚洲| 欧美视频官网| 黄色亚洲在线| 好男人免费精品视频| 激情伊人五月天久久综合| 亚洲第一久久影院| 亚洲开发第一视频在线播放| 一区二区三区 在线观看视频| 亚洲在线播放| 亚洲福利视频免费观看| 日韩一区二区久久| 午夜精品久久久久久久| 久久久久高清| 欧美精品福利| 国产精品视频xxx| 激情久久久久| 亚洲精品国产精品国自产观看浪潮 | 午夜精品久久久久久久99樱桃| 日韩视频一区二区三区在线播放| 亚洲视频网站在线观看| 欧美在线首页| 欧美成人精品在线观看| 欧美视频一区在线| 国产一区二区电影在线观看| 亚洲黄色性网站| 亚洲一区二区三区免费观看| 亚洲成在人线av| 中文国产一区| 久久久亚洲人| 欧美午夜精品久久久久久孕妇| 国产一区二区三区av电影 | 午夜在线精品偷拍| aa亚洲婷婷| 欧美在线不卡视频| 欧美激情a∨在线视频播放| 国产麻豆午夜三级精品| 亚洲欧洲日产国产综合网| 亚洲欧美日韩在线| 99精品视频免费| 久久久久久成人| 国产精品久久久久99| 亚洲福利小视频| 香蕉av777xxx色综合一区| 99re热这里只有精品免费视频| 久久精品99国产精品酒店日本| 欧美日韩精品一区二区天天拍小说 | 欧美激情四色| 国产欧美精品日韩区二区麻豆天美| 一区二区在线看| 亚洲永久免费视频| 一区二区三区免费观看| 噜噜噜躁狠狠躁狠狠精品视频| 国产精品伦理| 日韩视频一区二区三区| 久久精品久久99精品久久| 亚洲香蕉在线观看| 亚洲精品少妇网址| 久久岛国电影| 国产精品入口| 亚洲精品少妇| 国产精品高潮呻吟久久| 亚洲午夜精品17c| 久久综合久久综合久久| 国产酒店精品激情| 夜夜嗨av色综合久久久综合网| 亚洲国内欧美| 久久久久久久一区| 国产精品女同互慰在线看| 最新国产精品拍自在线播放| 亚洲电影第1页| 久久国产黑丝| 国产毛片精品国产一区二区三区| 亚洲视频综合| 亚洲尤物在线| 欧美视频二区| 一本色道久久综合狠狠躁篇怎么玩 | 午夜亚洲一区| 亚洲欧美综合精品久久成人 | 国产揄拍国内精品对白| 亚洲女性裸体视频| 亚洲女女女同性video| 国产精品亚洲视频| 国产精品黄色| 欧美a级片网站| 亚洲性线免费观看视频成熟| 美腿丝袜亚洲色图| 国产精品免费小视频| 9国产精品视频| 一区二区三区日韩在线观看| 欧美久久成人| 日韩视频在线一区| 在线亚洲免费| 欧美午夜精品久久久久久浪潮| aa亚洲婷婷| 亚洲影院免费| 国产精品综合不卡av | 亚洲人成亚洲人成在线观看图片| 亚洲人成7777| 欧美高潮视频| 亚洲精品欧美在线| 在线一区亚洲| 欧美日韩在线免费视频| 99精品欧美一区二区蜜桃免费| 这里只有视频精品| 国产精品福利久久久| 亚洲午夜精品一区二区| 欧美一区二区三区视频在线观看 | 亚洲精选在线| 欧美日韩三级视频| 亚洲午夜精品17c| 欧美有码在线视频| 国产字幕视频一区二区| 亚洲国产综合在线| 欧美日韩网址| 亚洲欧美在线免费观看| 久久综合给合久久狠狠色| 亚洲国产精品精华液网站| 一区二区三区四区精品| 欧美丝袜一区二区| 午夜久久久久久| 欧美大胆a视频| 99热在这里有精品免费| 亚洲永久免费av| 国内免费精品永久在线视频| 亚洲国产视频a| 欧美日韩亚洲天堂| 午夜精品免费在线| 蜜桃av噜噜一区二区三区| 亚洲精品午夜精品| 午夜欧美大尺度福利影院在线看 | 亚洲国产高清高潮精品美女| 亚洲高清在线观看一区| 欧美日韩免费观看一区二区三区| 亚洲一区视频在线| 麻豆freexxxx性91精品| 99re在线精品| 久久久噜噜噜久久中文字免 | 一区二区精品在线观看| 久久精品国产清自在天天线 | 日韩午夜剧场| 欧美中文字幕在线| 亚洲国内自拍| 欧美一区二区三区四区夜夜大片 | 午夜精品久久久久久99热软件 | 影音先锋亚洲视频| 中文精品99久久国产香蕉| 国产亚洲成年网址在线观看| 亚洲九九精品| 国产一区二区精品久久91| 一区二区三区欧美成人| 国内精品免费午夜毛片| 亚洲视频1区| 在线播放日韩专区| 欧美亚洲一级片| 亚洲三级电影全部在线观看高清 | 老色批av在线精品| 亚洲一区视频在线观看视频| 欧美激情中文字幕一区二区 | 亚洲电影免费| 国产欧美精品日韩精品| 亚洲视频播放| 91久久黄色| 久久久综合网站|