FPGA如何同DDR3存儲器進行接口?
大家好,我叫Paul Evans,是Stratix III產品營銷經理。到目前為止,我已經從事了6年的雙倍數據速率存儲器工作,今天和大家一起討論一下DDR3。DDR3的主要難題之一是它引入了數據交錯,如屏幕上所示。
本文引用地址:http://www.ex-cimer.com/article/80076.htm為了更好地進行演示,我們將使用這里所示的Stratix III DDR3存儲器電路板。它上面有幾個高速雙倍數據速率存儲器,例如DDR2 UDIMM插槽、RLD RAM、QDR,當然,還有DDR3 UDIMM插槽。因此,我們所要做的就是通過Quartus軟件來下載一個簡單設計,FPGA進行簡單的數據寫入并讀回。
我們還采用了一些測試設備來幫助進行演示,Nexus DDR3模塊可以插入到DDR3插槽中,使我們能夠在Techtronics邏輯分析儀上看到所有的信號。
下面,讓我們開始。先將模塊插入到DDR3插槽中,然后對電路板上電,并通過ByteBlaster對器件進行編程。正如我所說的,這是Quartus軟件中的一個簡單設計,我們把它下載到電路板上,開始演示DDR3。
現在已經下載了設計,整個設計在FPGA中,燈光開始閃爍,表明它在工作。那么,我們首先要看的是時鐘速率,它應該是533 MHz,實現每秒1066 Mbits的DDR3。
下面,我要做的是探測FPGA背面的時鐘信號。在示波器上我們現在能看到533 MHz的時鐘波形。下一步,我們將檢查533 MHz信號一個DQ位的眼圖質量,探測DIMM的背面。
在這里您可以看到眼圖,眼圖張開非常好,大約為900 ps。里面很干凈。眼圖質量不錯。
下面,我們繼續(xù),看一下數據寫入,實際是到達DDR3 UDIMM的數據。對此,我們使用Nexus儀表和Techtronics邏輯分析儀,對寫入數據進行快速采集。
完成這一操作后,您可以看到FPGA發(fā)送寫入的數據,實現了DDR3所需的DIMM寫調平?,F在,我們反過來操作,看一下FPGA數據讀回。現在您看到的是讀操作,因為數據DQS邊沿對齊,而不是離開FPGA時的中心對齊。
最后,我們跟蹤數據由UDIMM返回至FPGA,以及SignalTap,看一下FPGA中發(fā)生了什么。我們將迅速運行這些信號,我們看到讀有效信號,返回了正確的數據。我們之所以知道這是正確數據,是因為出現了通過信號,而不是失效的高電平標志。在此結束我們的DDR3 533 MHz演示。
如果您希望詳細了解FPGA是怎樣和DDR3存儲器進行接口的,Altera.com上為您準備了很有幫助的白皮書。我是Paul Evans。感謝您的參與。
存儲器相關文章:存儲器原理
評論