DDR3 SDRAM內存的總線(xiàn)速率達到600 Mbps to 1.6 Gbps (300 to 800 MHz),1.5V的低功耗工作電壓,采用90nm制程達到2Gbits的高密度。這個(gè)架構毫無(wú)疑問(wèn)更快、更大,每比特的功耗也更低,但是如何實(shí)現FPGA和DDR3 SDRAM DIMM條的接口設計呢? 關(guān)鍵字:均衡(leveling) 如果FPGA I/O結構中沒(méi)有包含均衡功能,那么它與DDR3的連接將會(huì )很復雜,需要有很多外圍器件包括延遲線(xiàn)及相關(guān)控制。 均衡的定義和重要性 為了提高高速電路的信號完整性,JEDEC通過(guò)時(shí)鐘和命令/地址線(xiàn)定義了fly-by端接方案,它通過(guò)在時(shí)鐘和數據間人為的加入走線(xiàn)擺率(flight-time skew)來(lái)降低共同切換噪聲(SSN)。 走線(xiàn)擺率可以達到0.8tCK,這個(gè)寬度導致無(wú)法確定在哪兩個(gè)時(shí)鐘周期獲取數據,因此,JEDEC為DDR3定義了校準功能,它可以使控制器通過(guò)調整每byte的時(shí)序來(lái)補償走線(xiàn)擺率。 目前的FPGA在連接雙倍速SDRAM內存時(shí)都有很多功能,但是如何與最新的DDR3連接還需要一個(gè)新的調整方案。 FPGA I/O結構 高性能的Altera Stratix III 系列FPGA的I/O速率最高可以達到400MHz(800Mbps)。 讀均衡 讀操作時(shí)內存控制器必須補償fly-by內存拓撲所引起的延時(shí),此時(shí)不僅僅要考慮數據通路上的I/O延時(shí),還需要1T(用來(lái)保存一個(gè)完整雙數據周期數據的寄存器)和負沿寄存器來(lái)對準和調整所有的數據。每一個(gè)DQS需要獨立去調整resync時(shí)鐘的相移。 最初,每一個(gè)獨立的DQS看上去相移90°并捕獲到相應的DQ數據;接下來(lái),一個(gè)自由振蕩resync時(shí)鐘將數據將數據從捕獲區轉移到均衡電路,此時(shí)每一個(gè)DQS組有獨立的Resynd時(shí)鐘。 然后,DQ數據進(jìn)入1T寄存器。此時(shí)1T寄存器就可以對特定DQS組的DQ數據按照需要進(jìn)行延時(shí)處理,對于給定通道是否進(jìn)行處理可以由PHY IP核中的均衡方案自動(dòng)確定。 最后,所有DQS組進(jìn)入負沿寄存器。同樣的,由自動(dòng)均衡方案可確定有哪些寄存器參與工作。至此,可以把上下兩個(gè)通道的數據同步在同一個(gè)resync時(shí)鐘上,實(shí)現了一個(gè)源同步的接口,FPGA可以得到一個(gè)完全對齊或均衡的單速率數據。 寫(xiě)均衡 寫(xiě)均衡和讀過(guò)程方向相反,過(guò)程類(lèi)似。DQS組為了統一時(shí)鐘在不同時(shí)刻啟動(dòng)工作,它們必須滿(mǎn)足tDQSS參數±0.25 tCK?刂破魍ㄟ^(guò)建立反饋回路來(lái)調整DQS-to-CK的關(guān)系,數據捕獲點(diǎn)為了最佳建立和保持時(shí)間就在寫(xiě)周期的中間位置。 FPGA I/O的其它創(chuàng )新點(diǎn) 高端FPGA在I/O特性上還有許多創(chuàng )新點(diǎn)可以用來(lái)簡(jiǎn)化和增強內存接口設計,比如動(dòng)態(tài)片內端接(OCT),可變I/O延時(shí)以及半數據率功能。 FPFA 晶圓和封裝的設計必須考慮到在高速內存接口設計時(shí)所需的信號完整性。另外,FPGA除了具有可編程的驅動(dòng)能力來(lái)匹配不同的標準外,還應該能夠提供動(dòng)態(tài)的OCT和可變擺率,以此來(lái)管理信號的上升和下降時(shí)間。 結論 DDR3在未來(lái)即將超越DDR2的使用,高端FPGA提供的低成本、高效能、高密度和良好的信號完整性方案必須滿(mǎn)足JEDEC讀寫(xiě)均衡要求。 |