最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Xilinx DDR SDRAM IP核結(jié)構(gòu)

2023-01-19 18:02 作者:開發(fā)員阿夢  | 我要投稿

Xilinx IP核接口總結(jié)。

參考文檔為Xilinx官方文檔,鏈接:

https://docs.xilinx.com/v/u/en-US/pg150-ultrascale-memory-ip

本次內(nèi)容總結(jié)不是DDR接口規(guī)范的總結(jié)。DDR的規(guī)范屬于照本宣科的內(nèi)容。這里為DDR IP核的實踐學(xué)習(xí)鋪平道路,在實踐之前對DDR IP核的內(nèi)部結(jié)構(gòu)有個充分的認識。大部分內(nèi)容屬于在閱讀IP核內(nèi)容時的筆記。現(xiàn)在開始總結(jié)。

本次Xilinx UltraScale Architecture-Based FPGAs Memory IP v1.4 中包含DDR3 SDRAM 1.3和DDR4 SDRAM 2.2兩種IP核產(chǎn)品。在我們項目中使用的是DDR4 SDRAM的IP核。在我所閱讀的內(nèi)容中,兩類產(chǎn)品的結(jié)構(gòu)是一樣的。以下統(tǒng)稱為DDR SDRAM IP核。

IP核方案

對于DDR SDRAM IP核,有兩套解決方案:

存儲器控制器接口(Memory Controller)方案和物理層(physical layer)方案。

IP核內(nèi)部結(jié)構(gòu)

DDR SDRAM的IP核一共是三層。


與SDRAM物理介質(zhì)最近的一層是物理層(Physical Layer),對我項目來說比較有用的信息是,物理層返回校準信息,這個信息最終能夠被XIlinx的debug工具捕捉到。校準完成后,物理層將原始接口(raw interface)暴露給SDRAM介質(zhì)。

物理層上一層是控制器層,全稱應(yīng)該是存儲器控制器(Memory Controller)。結(jié)合文檔圖文,該層與物理層之間的接口應(yīng)該就是上述的原始接口(raw interface)。該層從用戶接口層接收接收突發(fā)事務(wù)(transaction),將發(fā)送到SDRAM的請求或者SDRAM發(fā)來的響應(yīng)生成事務(wù)。結(jié)合之前看的SSD內(nèi)部“事務(wù)”的概念,這個事務(wù)應(yīng)該也是將請求切分或者包裝為SDRAM或者用戶接口約定的大小格式。此外,該層對讀寫事務(wù)進行優(yōu)化,提高周期利用率和數(shù)據(jù)總線利用率。

面向用戶邏輯的是,用戶接口(User Interface, UI),或者叫應(yīng)用接口(application interface)。該層提供的接口很簡單,和FIFO接口的風格很像。讀寫數(shù)據(jù)在這層會被緩存;待讀取的數(shù)據(jù)會按照請求的順序反饋給用戶邏輯。用戶接口層和存儲器控制器層之間的接口叫做native interface,就翻譯為“本地接口”吧。用戶邏輯是無法訪問到本地接口的。本機接口負責通過存儲器控制器層接收SDRAM返回的數(shù)據(jù),這個數(shù)據(jù)的返回順序可能與請求順序不一樣。因此用戶接口需要緩存讀取的數(shù)據(jù)并將數(shù)據(jù)重新排序(按照用戶邏輯所需)。

DDR3DDR4的特征總結(jié)與區(qū)別

文檔定位:[Page 16-17],對比DDR3 SDRAM,DDR4 SDRAM多了對3DS RDIMM和LRDIMM的支持。其他很多重要特征都一樣,如 對8字長的突發(fā)操作的支持、存儲器時鐘頻率與FPGA接口時鐘頻率為4:1、對于非AXI4的72位寬度的用戶接口可選糾錯碼(ECC)等。

在不同負載測試下,DD3DDR4的性能測試結(jié)果對比

文檔定位[Page 20-22],總的來說,這里對比了多種負載下,使用IP核對DDR SDRAM進行讀寫操作的數(shù)據(jù)總線利用率。明顯地看到,連續(xù)寫的效率比連續(xù)讀要差,因為連續(xù)寫操作中被插入了周期性的讀操作;突發(fā)讀寫的工作負載,可以達到一個介于連續(xù)讀性能和連續(xù)寫性能之間的性能。理論上,突發(fā)的讀事務(wù)的頻率足夠高,使得周期性讀不影響到存儲器控制器。但是由于讀寫總線的turnaround?,突發(fā)讀寫下的效率還是比純粹的連續(xù)讀操作低。

IP核的端口信號描述

對于一個完整的存儲器控制器解決方案(Memory Controller solution)來說,IP核有三類端口,叫做“user design”。

1. 與SRAM直接交互的存儲器接口信號。由JEDEC定義。(物理層與SDRAM介質(zhì)之間)

2. 應(yīng)用接口信號。(連接用戶接口層)

3. 其他保證操作正常進行的必要信號。如時鐘、復(fù)位、狀態(tài)信號等。高位有效的信號init_calib_complete信號表示初始化和校準完成,接口可以接收命令。

另一套方案是只有物理層的方案(PHY Only Solution)。

存儲器控制器

IP核的此部分處理來自于用戶接口層的請求。

存儲器控制器被設(shè)計以用于來自用戶接口模塊的讀寫事務(wù)以及read-modify-write事務(wù);將這些事務(wù)以低時延高效地傳輸?shù)酱鎯橘|(zhì),同時滿足所有DRAM的協(xié)議和時序要求,并使用最少的FPGA資源。再次強調(diào),DRAM中的時鐘頻率和FPGA的時鐘頻率比率是4:1。存儲器控制器的結(jié)構(gòu)框圖如下圖所示。

存儲器控制器中命令路徑的關(guān)鍵部分包括:

1. Group FSMs:排隊事務(wù)、檢查DRAM時序、決定何時請求Precharge,Activate, CAS和這些DRAM命令。

2. "Safe"邏輯和仲裁單元:基于額外的DRAM時序,重新排序Group FSMs之間的事務(wù), 同時確保所有DRAM命令請求的處理進度。

3. Final Arbiter:最終仲裁邏輯,最終決定哪些命令被發(fā)送到物理層,并將結(jié)果反饋到先前階段。

本地接口(用戶接口層和存儲器控制器之間的接口)

用戶接口通過與存儲器控制器相連.用戶接口通過此接口向存儲器控制器提供地址編碼和讀寫數(shù)據(jù)緩存。

在寫操作中,存儲器控制器通過在本機接口上提供數(shù)據(jù)緩沖地址,在需要數(shù)據(jù)前一個周期請求數(shù)據(jù)。繼而在下一個周期,用戶接口層當提供該數(shù)據(jù)。因此,在本地接口中沒有任何數(shù)據(jù)的緩存。

在讀操作中,數(shù)據(jù)將在其數(shù)據(jù)有效的周期內(nèi)被存儲器控制器提供到本地接口。一旦讀數(shù)據(jù)準備就緒,它就會和緩沖區(qū)地址一起顯示在本機接口上。數(shù)據(jù)應(yīng)當被用戶接口層接收。

本地接口的邏輯中,會根據(jù)來自于UI層中的讀寫事務(wù)的解碼地址的bank組和bank地址位,將讀寫事務(wù)映射到一個mcGroup實例中。

mcGroup是按照順序處理I/O事務(wù)的。因此可以防止read-after-write和write-after-write操作中的地址沖突。

控制邏輯(Control Path, 控制路徑)

存儲器控制器中的控制邏輯始于本地接口中的mcGroup實例。SDRAM bank組和SDRAM bank地址到mcGroup實例的映射,確保了發(fā)送到同一個完整地址的事務(wù)被映射到相同的mcGroup實例。mcGroup是按照順序處理I/O事務(wù)的。因此可以防止read-after-write和write-after-write操作中的地址沖突。

Xilinx DDR SDRAM IP核結(jié)構(gòu)的評論 (共 條)

分享到微博請遵守國家法律
北流市| 和田市| 枞阳县| 永泰县| 新安县| 宜君县| 舒城县| 安岳县| 大港区| 宁都县| 尼玛县| 长垣县| 电白县| 丁青县| 沙洋县| 安岳县| 清远市| 石门县| 玉溪市| 南投县| 北票市| 广安市| 仙游县| 中卫市| 大关县| 池州市| 蕲春县| 清丰县| 横山县| 五台县| 光泽县| 丰原市| 台中县| 广东省| 平果县| 抚远县| 浦东新区| 三门县| 长寿区| 宜昌市| 微山县|