新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 利用Xilinx FPGA和存儲器接口生成器簡化存儲器接口

利用Xilinx FPGA和存儲器接口生成器簡化存儲器接口

作者: 時間:2012-10-09 來源:網(wǎng)絡(luò) 收藏

正如 Spartan-3 系列 中所實(shí)現(xiàn)的那樣,使用讀數(shù)據(jù) DQS 可以把讀數(shù)據(jù)采集到可配置邏輯塊 (CLB) 中,但是使用 LUT 把 DQS 或時鐘與數(shù)據(jù)有效窗口中心對齊時,所用的延遲 tap 卻很粗糙。CLB 中實(shí)現(xiàn)的延遲 tap 具有大約幾百微微秒 (ps) 的分辨率,然而,對于超過 400 Mb/s 的數(shù)據(jù)速率的讀取采集時序,所需的分辨率要比基于CLB 的 tap 高一個數(shù)量級。Virtex-4 和 Virtex-5 采用 I/O 模塊中的專用延遲和時鐘資源(稱為 ChipSync? 技術(shù))來解決這一難題。內(nèi)置到每個 I/O 中的 ChipSync模塊都含有一串延遲單元(tap 延遲),在 Virtex-4 中稱為 IDELAY,而在 Virtex-5 中稱為 IODELAY,其分辨率為 75 ps (見圖6)。

此實(shí)現(xiàn)的架構(gòu)基于幾個構(gòu)建模塊。用戶界面負(fù)責(zé)把存儲器控制器和物理層接口橋接到其余 FPGA 設(shè)計(jì),它使用 FIFO 架構(gòu)(圖7)。FIFO 有三套:命令/ 地址 FIFO、寫FIFO、讀 FIFO。這些 FIFO 保存著命令、地址、寫數(shù)據(jù)和讀數(shù)據(jù)。主要的控制器模塊控制讀、寫和刷新操作。其他兩個邏輯模塊執(zhí)行讀操作的時鐘-數(shù)據(jù)中心對齊:初始化控制器和校準(zhǔn)邏輯。

用于地址、控制和數(shù)據(jù)的物理層接口在 I/O 模塊 (IOB) 中實(shí)現(xiàn)。讀數(shù)據(jù)在鎖存器的第二級(也是 IOB 的一部分)重新采集。

Virtex-4 和 Virtex-5 FPGA 參考設(shè)計(jì)支持兩種讀數(shù)據(jù)采集技術(shù)。Virtex-4FPGA 支持的直接時鐘技術(shù)延遲了讀數(shù)據(jù),因而使用 IOB 的輸入 DDR 觸發(fā)器中的系統(tǒng)時鐘可直接寄存讀數(shù)據(jù)。為將 FPGA 時鐘對齊到最佳狀態(tài),對每個讀數(shù)據(jù)位都會單獨(dú)進(jìn)行校驗(yàn)。這種技術(shù)為高達(dá) 240 MHz 的時鐘速率提供了足夠的性能。

第二種技術(shù)稱為基于 DQS 的技術(shù)。此技術(shù)用于更高的時鐘速率,Virtex-4 和 Virtex-5FPGA 二者都支持此技術(shù)。它使用存儲器 DQS 來采集相應(yīng)的讀數(shù)據(jù),數(shù)據(jù)被此 DQS

的延遲信號(通過一個局部 I/O 時鐘緩沖器 (BUFIO) 分配)寄存。此數(shù)據(jù)然后在觸發(fā)

器的第二級與系統(tǒng)的時鐘域同步。IOB 中的輸入串行器/ 解串器功能用于讀數(shù)據(jù)采集;第一對觸發(fā)器把數(shù)據(jù)從延遲的 DQS 域中傳輸?shù)较到y(tǒng)的時鐘域(圖8)。

兩種技術(shù)都涉及到 tap 延遲 (IDELAY) 單元的應(yīng)用, 在由校驗(yàn)邏輯實(shí)現(xiàn)的校驗(yàn)程序中,這些延遲單元會有所變化。在系統(tǒng)初始化期間,會執(zhí)行此校準(zhǔn)程序以設(shè)置 DQS、數(shù)據(jù)和系統(tǒng)時鐘之間的最佳相位。這樣做的目的是使時序余量最大化。校準(zhǔn)會消除任何由過程相關(guān)的延遲所導(dǎo)致的不確定性,從而補(bǔ)償對于任何一塊電路板都不變的那些通路延遲成分。這些成分包括 PCB 跡線延遲、封裝延遲和過程相關(guān)的傳播延遲成分(存儲器和 FPGA 中都有),以及 FPGA I/O 模塊中采集觸發(fā)器的建立/ 保持時間。有的延遲是由系統(tǒng)初始化階段的過程、電壓和溫度所決定的,校準(zhǔn)即負(fù)責(zé)解決這些延遲的變動。

在校準(zhǔn)過程中會增加 DQS 和數(shù)據(jù)的延遲 tap 以執(zhí)行邊沿檢測,檢測方式是通過連續(xù)從存儲器中讀回?cái)?shù)據(jù)并對預(yù)編寫培訓(xùn)模式或存儲器 DQS 本身進(jìn)行采樣,直到確定數(shù)據(jù)選通脈沖 (DQS) 的前沿或前后兩沿。之后數(shù)據(jù)或 DQS 的 tap 數(shù)被設(shè)定,以提供最大的時序余量。對“基于 DQS”的采集而言,DQS 和數(shù)據(jù)可以有不同的 tap 延遲值,因?yàn)?p>同步實(shí)質(zhì)上分為兩個階段:一個先在 DQS 域中采集數(shù)據(jù),另一個把此數(shù)據(jù)傳輸?shù)较到y(tǒng)時鐘域。

在更高的時鐘頻率下,“基于 DQS ”的采集方法就變得十分必要,其二階段方法能提供更好的采集時序余量,因?yàn)?DDR 時序的不確定性主要限于 IOB 中觸發(fā)器的第一級。此外,因?yàn)槭褂?DQS 來寄存數(shù)據(jù),與時鐘-數(shù)據(jù) (Tac) 變化相比較, DQS -數(shù)據(jù)變化的時序不確定性要小一些。例如,對于 DDR2 而言,這些不確定性就是由器件的tDQSQ 和 tQHS 參數(shù)給出的。

正如 Spartan-3 系列 FPGA 中所實(shí)現(xiàn)的那樣,Virtex-4 和 Virtex-5 FPGA 的寫時序由DCM 所支持,此 DCM 生成系統(tǒng)時鐘的兩相輸出。存儲器的 DQS 由一個輸出 DDR 寄存器來輸出,這個 DDR 寄存器由系統(tǒng)時鐘的同相時鐘驅(qū)動。寫數(shù)據(jù)則由超前系統(tǒng)時鐘90° 的一個 DCM 時鐘輸出進(jìn)行時鐘控制。這種技術(shù)確保了在 FPGA 的輸出部分,DQS 與寫操作的數(shù)據(jù)中心對齊。

此設(shè)計(jì)的其他方面包括整體控制器狀態(tài)機(jī)的邏輯生成和用戶接口。為了使設(shè)計(jì)人員更容易完成整個設(shè)計(jì), 開發(fā)了 (MIG) 工具。



關(guān)鍵詞: Xilinx FPGA 存儲器接口 生成器

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉