亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

四倍數(shù)據(jù)速率qdr控制器及其實(shí)現(xiàn)方法

文檔序號:6772521閱讀:579來源:國知局
專利名稱:四倍數(shù)據(jù)速率qdr控制器及其實(shí)現(xiàn)方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)傳輸技術(shù)領(lǐng)域,尤其涉及網(wǎng)絡(luò)交換設(shè)備中的一種四倍數(shù)據(jù)速率 QDR控制器及其實(shí)現(xiàn)方法。
背景技術(shù)
QDRII SRAM (Quad-Data Rate Static Random Access Memory,四倍數(shù)據(jù)速率的靜態(tài)隨機(jī)接入存儲器)器件是為滿足更高的帶寬存儲要求而開發(fā),以網(wǎng)絡(luò)和電信應(yīng)用為目標(biāo)。基本的QDR架構(gòu)具有獨(dú)立的讀、寫數(shù)據(jù)通路,便于同時操作。每個時鐘周期內(nèi),兩個通路均使用雙倍數(shù)據(jù)速率(DDR)傳輸發(fā)送兩個字,一個在時鐘上升沿發(fā)送,一個在時鐘下降沿發(fā)送。在每個時鐘周期內(nèi)會傳輸四個總線寬度的數(shù)據(jù)(兩個讀和兩個寫),這就是四倍數(shù)據(jù)速率的由來。QDR控制器設(shè)計有如下兩種常見的方法(1)用異步FIF0(First In First Out,先入先出)將QDRII SRAM的讀數(shù)據(jù)同步到系統(tǒng)時鐘域,其優(yōu)點(diǎn)是簡單易行、可靠性好,缺點(diǎn)是讀延時較長,一般在8個時鐘周期以上;(2)用可編程延遲器件延遲QDRII SRAM的讀數(shù)據(jù),同步到系統(tǒng)時鐘域,優(yōu)點(diǎn)是讀延時較短,一般為6-8個時鐘周期,缺點(diǎn)是有些ASIC廠家沒有配置可編程延遲器件,在此情況下則不能實(shí)現(xiàn)QDR控制器。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題在于,提出了一種四倍數(shù)據(jù)速率QDR控制器及其實(shí)現(xiàn)方法,用以克服現(xiàn)有QDR控制器讀延時大或依賴于可編程延遲器件的缺點(diǎn),實(shí)現(xiàn)讀延時小且不需要可編程延遲器件的四倍數(shù)據(jù)速率QDR數(shù)據(jù)讀寫。本發(fā)明提供一種四倍數(shù)據(jù)速率QDR的控制器,包括仲裁器(101),控制狀態(tài)機(jī)(102),讀數(shù)據(jù)采樣時鐘生成模塊(103),讀數(shù)據(jù)通路模塊(104),讀數(shù)據(jù)通路校準(zhǔn)模塊 (105),其中仲裁器,用于根據(jù)控制狀態(tài)機(jī)的狀態(tài)對命令和數(shù)據(jù)進(jìn)行仲裁;控制狀態(tài)機(jī),用于管理四倍數(shù)據(jù)速率QDR控制器的狀態(tài),為仲裁器仲裁命令和數(shù)據(jù)提供狀態(tài)依據(jù);讀數(shù)據(jù)采樣時鐘生成模塊,用于生成同源同頻異相的讀數(shù)據(jù)采樣時鐘;讀數(shù)據(jù)通路校準(zhǔn)模塊,用于在控制狀態(tài)機(jī)為“讀數(shù)據(jù)通路校準(zhǔn)狀態(tài)”時,通過讀訓(xùn)練字從所生成的讀數(shù)據(jù)采樣時鐘中,分別確定讀數(shù)據(jù)通路模塊進(jìn)行讀數(shù)據(jù)時的正沿數(shù)據(jù)和負(fù)沿數(shù)據(jù)的采樣時鐘;讀數(shù)據(jù)通路模塊,用于根據(jù)讀數(shù)據(jù)通路校準(zhǔn)模塊確定的采樣時鐘,將非系統(tǒng)時鐘域的正沿讀數(shù)據(jù)和負(fù)沿讀數(shù)據(jù)同步到系統(tǒng)時鐘域。所述四倍數(shù)據(jù)速率QDR的控制器還包括物理層模塊(105),用于完成仲裁器的具體命令的執(zhí)行和讀數(shù)據(jù)通路模塊對數(shù)據(jù)
5的訪問操作;寄存器管理模塊(106),用于處理來自CPU的對控制狀態(tài)機(jī)和物理層的配置信息。所述讀數(shù)據(jù)通路校準(zhǔn)模塊,包括校準(zhǔn)控制狀態(tài)機(jī)(1051),校準(zhǔn)寫命令發(fā)生器 (1052),校準(zhǔn)讀命令發(fā)生器(1053),校準(zhǔn)控制狀態(tài)機(jī)(1054),讀數(shù)據(jù)通路選擇信號生成器 (1055);其中控制狀態(tài)機(jī)的狀態(tài)指示為“讀數(shù)據(jù)通路校準(zhǔn)狀態(tài)”時,校準(zhǔn)控制狀態(tài)機(jī)跳轉(zhuǎn)到寫訓(xùn)練字狀態(tài),使能校準(zhǔn)寫命令發(fā)生器生成校準(zhǔn)寫命令和寫訓(xùn)練字,經(jīng)仲裁器和物理層寫入 QDRII SRAM 器件;校準(zhǔn)寫命令完成后,校準(zhǔn)控制狀態(tài)機(jī)跳轉(zhuǎn)到讀訓(xùn)練字狀態(tài),使能校準(zhǔn)讀命令發(fā)生器生成校準(zhǔn)讀命令,經(jīng)仲裁器和物理層寫入QDRII SRAM器件;校準(zhǔn)讀命令完成后,校準(zhǔn)控制狀態(tài)機(jī)跳轉(zhuǎn)到讀訓(xùn)練字檢測狀態(tài),使能讀數(shù)據(jù)檢測器分別檢測來自讀數(shù)據(jù)通路模塊的正沿讀數(shù)據(jù)與訓(xùn)練字正沿數(shù)據(jù)的一致性,檢測來自讀數(shù)據(jù)通路模塊的負(fù)沿讀數(shù)據(jù)與訓(xùn)練字負(fù)沿數(shù)據(jù)的一致性,記錄讀數(shù)據(jù)檢測結(jié)果;讀訓(xùn)練字檢測完成后,校準(zhǔn)控制狀態(tài)機(jī)跳轉(zhuǎn)到讀數(shù)據(jù)通路選擇信號生成狀態(tài),使能讀數(shù)據(jù)通路選擇信號生成器根據(jù)讀數(shù)據(jù)檢測器記錄的讀數(shù)據(jù)檢測結(jié)果,生成讀數(shù)據(jù)通路選擇信號。所述讀數(shù)據(jù)采樣時鐘生成模塊生成的同源同頻異相的讀數(shù)據(jù)采樣時鐘,包括4個讀數(shù)據(jù)采樣時鐘 sys_clk,sys_clk_90、sys_clk_180 和 sys_clk_270。所述讀數(shù)據(jù)通路選擇信號生成器根據(jù)讀數(shù)據(jù)檢測器記錄的讀數(shù)據(jù)檢測結(jié)果,生成讀數(shù)據(jù)通路選擇信號的選擇方式包括如果4個采樣時鐘采樣到的讀數(shù)據(jù)均與訓(xùn)練字一致,根據(jù)在一個系統(tǒng)時鐘周期內(nèi)采樣數(shù)據(jù)與訓(xùn)練字一致的時鐘個數(shù)以及下一個系統(tǒng)時鐘周期內(nèi)采樣數(shù)據(jù)與訓(xùn)練字一致的時鐘個數(shù),選擇其中一個作為采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;如果4個采樣時鐘采樣到的讀數(shù)據(jù)中有且僅有3個與訓(xùn)練字一致,從一致的3個連續(xù)時鐘中選擇中間的采樣時鐘為采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;如果4個采樣時鐘采樣到的讀數(shù)據(jù)中僅有2個或少于2個與訓(xùn)練字一致,則報錯。所述讀數(shù)據(jù)通路選擇信號生成器根據(jù)讀數(shù)據(jù)檢測器記錄的讀數(shù)據(jù)檢測結(jié)果,生成讀數(shù)據(jù)通路選擇信號,如果4個采樣時鐘采樣到的讀數(shù)據(jù)均與訓(xùn)練字一致,則在一個系統(tǒng)時鐘周期內(nèi),4個時鐘采樣數(shù)據(jù)均與訓(xùn)練字一致,選擇sys_Clk_180采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;在一個系統(tǒng)時鐘周期內(nèi),3個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),1 個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_Clk_270采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;在一個系統(tǒng)時鐘周期內(nèi),2個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),2 個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_clk采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;在一個系統(tǒng)時鐘周期內(nèi),1個時鐘采樣到得數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),3個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_Clk_90采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路。本發(fā)明還提供一種四倍數(shù)據(jù)速率QDR的控制器的實(shí)現(xiàn)方法,包括采用同源同頻異相的4個時鐘采樣讀數(shù)據(jù);根據(jù)各時鐘采樣數(shù)據(jù)的結(jié)果,確定讀數(shù)據(jù)的采樣時鐘;
按所確定的采樣時鐘將讀數(shù)據(jù)同步到系統(tǒng)時鐘域。其中,所述同源同頻異相的讀數(shù)據(jù)采樣時鐘,包括4個讀數(shù)據(jù)采樣時鐘sys_Clk, sys_clk_90、sys_clk_180 禾口 sys_clk_270。所述根據(jù)各時鐘采樣數(shù)據(jù)的結(jié)果確定讀數(shù)據(jù)的采樣時鐘的步驟,是由讀數(shù)據(jù)通路校準(zhǔn)模塊在QDR控制器的控制狀態(tài)機(jī)為“讀數(shù)據(jù)通路校準(zhǔn)狀態(tài)”時,通過讀訓(xùn)練字從所生成的讀數(shù)據(jù)采樣時鐘中,分別確定讀數(shù)據(jù)通路模塊進(jìn)行讀數(shù)據(jù)時的正沿數(shù)據(jù)和負(fù)沿數(shù)據(jù)的采樣時鐘。所述同源同頻異相的讀數(shù)據(jù)采樣時鐘包括4個sys_Clk,sys_clk_90, sys_ clk_180和sys_Clk_270 ;所述根據(jù)各時鐘采樣數(shù)據(jù)的結(jié)果確定讀數(shù)據(jù)的采樣時鐘的步驟, 具體分為如果4個采樣時鐘采樣到的讀數(shù)據(jù)均與訓(xùn)練字一致,根據(jù)在一個系統(tǒng)時鐘周期內(nèi)采樣數(shù)據(jù)與訓(xùn)練字一致的時鐘個數(shù)以及下一個系統(tǒng)時鐘周期內(nèi)采樣數(shù)據(jù)與訓(xùn)練字一致的時鐘個數(shù),從所述4個采樣時鐘中選擇其中一個為采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;如果4個采樣時鐘采樣到的讀數(shù)據(jù)中有且僅有3個與訓(xùn)練字一致,從一致的3個連續(xù)時鐘中選擇中間的采樣時鐘為采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;如果4個采樣時鐘采樣到的讀數(shù)據(jù)中僅有2個或少于2個與訓(xùn)練字一致,則報錯。進(jìn)一步地,所述如果4個采樣時鐘采樣到的讀數(shù)據(jù)均與訓(xùn)練字一致,根據(jù)在一個系統(tǒng)時鐘周期內(nèi)采樣數(shù)據(jù)與訓(xùn)練字一致的時鐘個數(shù)以及下一個系統(tǒng)時鐘周期內(nèi)采樣數(shù)據(jù)與訓(xùn)練字一致的時鐘個數(shù),選擇其中一個作為采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路,具體又分為在一個系統(tǒng)時鐘周期內(nèi),4個時鐘采樣數(shù)據(jù)均與訓(xùn)練字一致,選擇sys_Clk_180采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;在一個系統(tǒng)時鐘周期內(nèi),3個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),1 個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_Clk_270采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;在一個系統(tǒng)時鐘周期內(nèi),2個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),2 個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_clk采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;在一個系統(tǒng)時鐘周期內(nèi),1個時鐘采樣到得數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),3個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_Clk_90采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路。本發(fā)明的所述方法和裝置,與現(xiàn)有技術(shù)相比,減小了 QDR控制器的讀延時,避免了對可編程延遲器件的依賴,本發(fā)明讀延時小且不需要可編程延遲器件、易于實(shí)現(xiàn)。


圖1是本發(fā)明QDR控制器的實(shí)現(xiàn)裝置示意圖;圖2是本發(fā)明控制狀態(tài)機(jī)示意圖;圖3是本發(fā)明讀數(shù)據(jù)采樣時鐘生成模塊實(shí)現(xiàn)示意圖;圖4是本發(fā)明讀數(shù)據(jù)采樣時鐘生成示意圖;
圖5是讀數(shù)據(jù)通路模塊實(shí)現(xiàn)示意圖;圖6是本發(fā)明讀數(shù)據(jù)通路校準(zhǔn)模塊實(shí)現(xiàn)示意圖;圖7是本發(fā)明讀數(shù)據(jù)通路校準(zhǔn)狀態(tài)機(jī)示意圖;圖8是本發(fā)明讀數(shù)據(jù)通路時鐘選擇情況1示意圖9是本發(fā)明讀數(shù)據(jù)通路時鐘選擇情況2示意圖。
具體實(shí)施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,以下結(jié)合附圖對本發(fā)明作進(jìn)一步地詳細(xì)說明。如圖1所示,顯示了本發(fā)明的一種QDR控制器的實(shí)現(xiàn)模塊圖,該QDR控制器100包括仲裁器101,用于根據(jù)控制狀態(tài)機(jī)102的狀態(tài)指示仲裁命令和數(shù)據(jù);控制狀態(tài)機(jī)102,如圖1和圖2所示,該控制狀態(tài)機(jī)102用于管理QDR控制器的各個狀態(tài),為仲裁器101仲裁命令和數(shù)據(jù)提供依據(jù)。其中,控制狀態(tài)機(jī)102控制的狀態(tài)共4個, 即空閑狀態(tài)、物理層配置狀態(tài)、讀數(shù)據(jù)通路校準(zhǔn)狀態(tài)和正常工作狀態(tài)。讀數(shù)據(jù)采樣時鐘生成模塊103,用于生成同源同頻異相的讀數(shù)據(jù)采樣時鐘sys_ clk_90、sys_clk_180 禾口 sys_clk_270 ;讀數(shù)據(jù)通路模塊104,如圖1和圖5所示,用于將非系統(tǒng)時鐘域的正沿讀數(shù)據(jù)和負(fù)沿讀數(shù)據(jù)同步到系統(tǒng)時鐘域;讀數(shù)據(jù)通路校準(zhǔn)模塊105,如圖1、圖6和圖7所示,用于通過讀訓(xùn)練字分別確定正沿數(shù)據(jù)和負(fù)沿數(shù)據(jù)的采樣時鐘;寄存器管理模塊106,如圖1所示,用于處理來自CPU的配置信息;物理層107,如圖1所示,用于完成具體命令的執(zhí)行和數(shù)據(jù)的訪問操作;此物理層部分不在本發(fā)明說明范圍內(nèi),但要依靠此完成工作。如圖2所示,顯示了控制狀態(tài)機(jī)102控制的空閑狀態(tài)、物理層配置狀態(tài)、讀數(shù)據(jù)通路校準(zhǔn)狀態(tài)和正常工作狀態(tài),以及各狀態(tài)變化過程系統(tǒng)復(fù)位時和系統(tǒng)復(fù)位撤銷時,控制狀態(tài)機(jī)102為空閑狀態(tài);系統(tǒng)復(fù)位撤銷后,自動跳轉(zhuǎn)到物理層配置狀態(tài);在物理層配置狀態(tài),需配置物理層相關(guān)參數(shù),配置完成跳轉(zhuǎn)到讀數(shù)據(jù)通路校準(zhǔn)狀態(tài);在讀數(shù)據(jù)通路校準(zhǔn)狀態(tài),需根據(jù)校準(zhǔn)規(guī)則分別確定正沿讀數(shù)據(jù)和負(fù)沿讀數(shù)據(jù)的采樣時鐘,校準(zhǔn)完成跳轉(zhuǎn)到正常工作狀態(tài);在正常工作狀態(tài),用戶可以讀寫QDRII SRAM。所述仲裁器101對之進(jìn)行仲裁的命令和數(shù)據(jù),包括用戶寫命令、用戶寫數(shù)據(jù)、用戶讀命令、校準(zhǔn)寫命令、校準(zhǔn)寫數(shù)據(jù)和校準(zhǔn)讀命令。上述仲裁過程是根據(jù)控制狀態(tài)機(jī)102的狀態(tài)進(jìn)行仲裁指示的,其中在空閑狀態(tài)和物理層配置狀態(tài)時,仲裁器101輸出的寫命令、寫數(shù)據(jù)、讀命令和用戶讀數(shù)據(jù)均無效;在讀數(shù)據(jù)通路校準(zhǔn)狀態(tài)時,仲裁器101分別選擇校準(zhǔn)寫命令、校準(zhǔn)寫數(shù)據(jù)和校準(zhǔn)讀命令作為寫命令、寫數(shù)據(jù)和讀命令輸出,而輸出的用戶讀數(shù)據(jù)無效;在正常工作狀態(tài)時,仲裁器101分別選擇用戶寫命令、用戶寫數(shù)據(jù)和用戶讀命令作為寫命令、寫數(shù)據(jù)和讀命令輸出,將來自讀數(shù)據(jù)通路模塊104的讀數(shù)據(jù)作為用戶讀數(shù)據(jù)輸出。
如圖1、圖3和圖4所示,所述讀數(shù)據(jù)采樣時鐘生成模塊103生成讀數(shù)據(jù)采樣時鐘 sys_clk_90、sys_clk_180 和 sys_clk_270 的具體方式如下sys_clk_90 由 clk_500m 的負(fù)沿采樣 sys_clk 得到;sys_clk_180 由 clk_500m 的正沿采樣 sys_clk_90 得到;sys_clk_270 由 clk_500m 的負(fù)沿采樣 sys_clk_180 得到;sys_clk 為 250MHz 時鐘,sys_clk 是由 clk_500m 二分頻得到;其中,clk_500m為 500MHz 時鐘,如圖1、圖6和圖7所示,讀數(shù)據(jù)通路校準(zhǔn)模塊105通過讀訓(xùn)練字分別確定正沿數(shù)據(jù)和負(fù)沿數(shù)據(jù)的采樣時鐘,其具體又包括如下子模塊校準(zhǔn)控制狀態(tài)機(jī)1051,用于管理讀數(shù)據(jù)通路校準(zhǔn)的各個狀態(tài);校準(zhǔn)寫命令發(fā)生器1052,用于生成校準(zhǔn)寫命令和寫訓(xùn)練字;校準(zhǔn)讀命令發(fā)生器1053,用于生成校準(zhǔn)讀命令;讀數(shù)據(jù)檢測器1054,用于檢測各讀數(shù)據(jù)通路模塊104輸出的讀數(shù)據(jù)與訓(xùn)練字的一致性,并記錄檢測結(jié)果;讀數(shù)據(jù)通路選擇信號生成器1055,根據(jù)讀數(shù)據(jù)檢測器1054記錄的讀數(shù)據(jù)檢測結(jié)果,生成讀數(shù)據(jù)通路選擇信號?;趫D1所示的QDR控制器,本發(fā)明的QDR控制器的實(shí)現(xiàn)方法,如圖1、圖5、圖6、 圖7、圖8和圖9所示,該方法的核心思想為采用同源同頻異相的4個時鐘采樣讀數(shù)據(jù),根據(jù)各時鐘采樣數(shù)據(jù)的結(jié)果,確定讀數(shù)據(jù)的采樣時鐘,將讀數(shù)據(jù)同步到系統(tǒng)時鐘域。下面結(jié)合圖1所示的QDR控制器具體說明如何實(shí)現(xiàn)QDR控制器的具體過程。如圖7所示,并結(jié)合圖6 —起描述了讀數(shù)據(jù)通路校準(zhǔn)模塊105進(jìn)行讀數(shù)據(jù)通路校準(zhǔn)的過程。讀數(shù)據(jù)通路校準(zhǔn)模塊105中校準(zhǔn)控制狀態(tài)機(jī)1051的初始狀態(tài)為空閑狀態(tài),當(dāng)QDR 控制器的控制狀態(tài)機(jī)102的狀態(tài)指示為“讀數(shù)據(jù)通路校準(zhǔn)狀態(tài)”時,校準(zhǔn)控制狀態(tài)機(jī)1051跳轉(zhuǎn)到寫訓(xùn)練字狀態(tài);校準(zhǔn)控制狀態(tài)機(jī)1051的狀態(tài)為寫訓(xùn)練字狀態(tài)時,使能校準(zhǔn)寫命令發(fā)生器1052,校準(zhǔn)寫命令發(fā)生器1052生成校準(zhǔn)寫命令和寫訓(xùn)練字,經(jīng)仲裁器101和物理層107寫入QDRII SRAM器件,校準(zhǔn)寫命令完成后校準(zhǔn)控制狀態(tài)機(jī)1051跳轉(zhuǎn)到讀訓(xùn)練字狀態(tài);校準(zhǔn)控制狀態(tài)機(jī)1051的狀態(tài)為讀訓(xùn)練字狀態(tài)時,使能校準(zhǔn)讀命令發(fā)生器1053,校準(zhǔn)讀命令發(fā)生器1053生成校準(zhǔn)讀命令,經(jīng)仲裁器101和物理層107寫入QDRII SRAM器件, 校準(zhǔn)讀命令完成后校準(zhǔn)控制狀態(tài)機(jī)1051跳轉(zhuǎn)到讀訓(xùn)練字檢測狀態(tài);如圖1和圖5所示,QDRII SRAM器件收到讀訓(xùn)練字命令后,發(fā)出讀數(shù)據(jù)到物理層, 物理層采樣來自QDRII SRAM器件的讀數(shù)據(jù),輸出正沿讀數(shù)據(jù)p0S_rd_data和負(fù)沿讀數(shù)據(jù) neg_rd_data,其中,pos_rd_data 禾口 neg_rd_data 均非系統(tǒng)時鐘域。如圖5所示,以正沿讀數(shù)據(jù)為例描述讀數(shù)據(jù)在讀數(shù)據(jù)通路模塊104中的處理過程sys_clk、sys_clk_90、sys_clk_180和sys_clk_270分別采樣來自物理層的正沿讀數(shù)據(jù) pos_rd_data,分別得到采樣數(shù)據(jù) pos_rd_data_0、pos_rd_data_90、pos_rd_data _80 和 pos_rd_data_270 ;接著,系統(tǒng)時鐘 sys_clk 采樣 pos_rd_data_0、pos_rd_data_90、pos_rd_data_180禾口 pos_rd_data_270,分另Ij 得至Ij 數(shù)據(jù) pos_rd_data_0_r> pos_rd_data_90_r> pos_rrd_ data_180_r 禾口 pos_rd_data_270_r ;負(fù)沿讀數(shù)據(jù)的處理方式與正沿讀數(shù)據(jù)一致,參見圖5。如圖1、圖6和圖7所示,校準(zhǔn)控制狀態(tài)機(jī)1051的狀態(tài)為讀訓(xùn)練字檢測狀態(tài)時,使能讀數(shù)據(jù)檢測器1054,讀數(shù)據(jù)檢測器1054分別檢測來自讀數(shù)據(jù)通路模塊104的正沿讀數(shù)據(jù) pos—rd—data—0—r、pos—rd—data—90—r、pos—rd—data—180—r 禾口 pos—rd—data—270—r 與訓(xùn)練字正沿數(shù)據(jù)的一致性,檢測來自讀數(shù)據(jù)通路模塊104的負(fù)沿讀數(shù)據(jù)neg_rd_data_0_r、neg_ rd_data_90_r、pos_rd_data_180_r 和 pos_rd_data_270_r 與訓(xùn)練字負(fù)沿數(shù)據(jù)的一致性,記錄檢測結(jié)果。以圖9中正沿數(shù)據(jù)為例,讀數(shù)據(jù)檢測器1054首先在一個系統(tǒng)時鐘周期內(nèi)檢測到 pos_rd_data_90_r>pos_rd_data_180_r 禾口 pos_rd_data_270_r 與訓(xùn)練、字正沿數(shù)據(jù)一致,然后在下一系統(tǒng)時鐘周期內(nèi)檢測到pOS_rd_data_0_r與訓(xùn)練字正沿數(shù)據(jù)一致,記錄結(jié)果為4個采樣時鐘采樣到的讀數(shù)據(jù)均與訓(xùn)練字正沿數(shù)據(jù)一致,且一個系統(tǒng)時鐘周期內(nèi) 3個時鐘采樣數(shù)據(jù)與訓(xùn)練字正沿數(shù)據(jù)一致,下一系統(tǒng)時鐘周期內(nèi)1個時鐘采樣數(shù)據(jù)與訓(xùn)練字正沿數(shù)據(jù)一致。讀訓(xùn)練字檢測完成后,校準(zhǔn)控制狀態(tài)機(jī)1054跳轉(zhuǎn)到讀數(shù)據(jù)通路選擇信號生成狀態(tài)。如圖1、圖6和圖7所示,校準(zhǔn)控制狀態(tài)機(jī)1051的狀態(tài)為讀數(shù)據(jù)通路選擇信號生成狀態(tài)時,使能讀數(shù)據(jù)通路選擇信號生成器1055,讀數(shù)據(jù)通路選擇信號生成器1055根據(jù)讀數(shù)據(jù)檢測器1054記錄的讀數(shù)據(jù)檢測結(jié)果,生成讀數(shù)據(jù)通路選擇信號。生成讀數(shù)據(jù)通路選擇信號的方法如下如果4個采樣時鐘采樣到的讀數(shù)據(jù)均與訓(xùn)練字一致,讀數(shù)據(jù)通路選擇分以下幾種情況1)在一個系統(tǒng)時鐘周期內(nèi),4個時鐘采樣數(shù)據(jù)均與訓(xùn)練字一致,選擇sys_clk_180 采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路,見圖8中正沿數(shù)據(jù);2)在一個系統(tǒng)時鐘周期內(nèi),3個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),1個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_Clk_270采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路,見圖9中正沿數(shù)據(jù);3)在一個系統(tǒng)時鐘周期內(nèi),2個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),2個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_Clk采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路,見圖8中負(fù)沿數(shù)據(jù);4)在一個系統(tǒng)時鐘周期內(nèi),1個時鐘采樣到得數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),3個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_Clk_90采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路,見圖 9中負(fù)沿數(shù)據(jù)。如果4個采樣時鐘采樣到的讀數(shù)據(jù)中有且僅有3個與訓(xùn)練字一致,從3個連續(xù)時鐘中,選擇中間的采樣時鐘的采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路。例如時鐘順序為…sys_clk、sys_clk_90、sys_clk_180、sys_clk_270、sys_clk、 sys_clk_90, sys_clk_180, sys_clk_270···,若有3個時鐘采樣到的數(shù)據(jù)與預(yù)期值(訓(xùn)練字)相同,3個時鐘是連續(xù)的,選3個連續(xù)時鐘中間的一個。比如情況1,sys_Clk、sys_ clk_90、sys_clk_180,選 sys_clk_90 ;情況 2,sys_clk_90、sys_clk_180、sys_clk_270,選sys_clk_180 ;個青況 3,sys_clk_180、sys_clk_270、sys_clk,選 sys_clk_270 ;個青況 4,sys_ clk_270、sys_clk> sys_clk_90,選 sys_clk。如果4個采樣時鐘采樣到的讀數(shù)據(jù)中僅有2個或少于2個與訓(xùn)練字一致,則報錯。在讀數(shù)據(jù)通路選擇信號生成完畢后,校準(zhǔn)控制狀態(tài)機(jī)1051跳轉(zhuǎn)到校準(zhǔn)結(jié)束狀態(tài), 讀數(shù)據(jù)通路校準(zhǔn)結(jié)束,QDR控制器狀態(tài)機(jī)102跳轉(zhuǎn)到正常工作狀態(tài)。綜上,本發(fā)明解決了 QDR控制器讀延時大和依賴于可編程延遲器件的問題,提供一種讀延時小且不需要可編程延遲器件的QDR控制器設(shè)計方法。并且本發(fā)明提供的實(shí)現(xiàn)裝置,可以廣泛的應(yīng)用于FPGA和ASIC邏輯電路中。以上所述僅為本發(fā)明的實(shí)施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、 等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的權(quán)利要求范圍之內(nèi)。
1權(quán)利要求
1.一種四倍數(shù)據(jù)速率QDR的控制器,包括仲裁器(101),控制狀態(tài)機(jī)(102),讀數(shù)據(jù)采樣時鐘生成模塊(103),讀數(shù)據(jù)通路模塊(104),讀數(shù)據(jù)通路校準(zhǔn)模塊(105),其中仲裁器,用于根據(jù)控制狀態(tài)機(jī)的狀態(tài)對命令和數(shù)據(jù)進(jìn)行仲裁;控制狀態(tài)機(jī),用于管理四倍數(shù)據(jù)速率QDR控制器的狀態(tài),為仲裁器仲裁命令和數(shù)據(jù)提供狀態(tài)依據(jù);讀數(shù)據(jù)采樣時鐘生成模塊,用于生成同源同頻異相的讀數(shù)據(jù)采樣時鐘;讀數(shù)據(jù)通路校準(zhǔn)模塊,用于在控制狀態(tài)機(jī)為“讀數(shù)據(jù)通路校準(zhǔn)狀態(tài)”時,通過讀訓(xùn)練字從所生成的讀數(shù)據(jù)采樣時鐘中,分別確定讀數(shù)據(jù)通路模塊進(jìn)行讀數(shù)據(jù)時的正沿數(shù)據(jù)和負(fù)沿數(shù)據(jù)的采樣時鐘;讀數(shù)據(jù)通路模塊,用于根據(jù)讀數(shù)據(jù)通路校準(zhǔn)模塊確定的采樣時鐘,將非系統(tǒng)時鐘域的正沿讀數(shù)據(jù)和負(fù)沿讀數(shù)據(jù)同步到系統(tǒng)時鐘域。
2.如權(quán)利要求1所述的控制器,其特征在于,還包括物理層模塊(105),用于完成仲裁器的具體命令的執(zhí)行和讀數(shù)據(jù)通路模塊對數(shù)據(jù)的訪問操作;寄存器管理模塊(106),用于處理來自CPU的對控制狀態(tài)機(jī)和物理層的配置信息。
3.如權(quán)利要求1所述的控制器,其特征在于,所述讀數(shù)據(jù)通路校準(zhǔn)模塊,包括校準(zhǔn)控制狀態(tài)機(jī)(1051),校準(zhǔn)寫命令發(fā)生器(1052),校準(zhǔn)讀命令發(fā)生器(1053),校準(zhǔn)控制狀態(tài)機(jī) (1054),讀數(shù)據(jù)通路選擇信號生成器(1055);其中控制狀態(tài)機(jī)的狀態(tài)指示為“讀數(shù)據(jù)通路校準(zhǔn)狀態(tài)”時,校準(zhǔn)控制狀態(tài)機(jī)跳轉(zhuǎn)到寫訓(xùn)練字狀態(tài),使能校準(zhǔn)寫命令發(fā)生器生成校準(zhǔn)寫命令和寫訓(xùn)練字,經(jīng)仲裁器和物理層寫入QDRII SRAM器件;校準(zhǔn)寫命令完成后,校準(zhǔn)控制狀態(tài)機(jī)跳轉(zhuǎn)到讀訓(xùn)練字狀態(tài),使能校準(zhǔn)讀命令發(fā)生器生成校準(zhǔn)讀命令,經(jīng)仲裁器和物理層寫入QDRII SRAM器件;校準(zhǔn)讀命令完成后,校準(zhǔn)控制狀態(tài)機(jī)跳轉(zhuǎn)到讀訓(xùn)練字檢測狀態(tài),使能讀數(shù)據(jù)檢測器分別檢測來自讀數(shù)據(jù)通路模塊的正沿讀數(shù)據(jù)與訓(xùn)練字正沿數(shù)據(jù)的一致性,檢測來自讀數(shù)據(jù)通路模塊的負(fù)沿讀數(shù)據(jù)與訓(xùn)練字負(fù)沿數(shù)據(jù)的一致性,記錄讀數(shù)據(jù)檢測結(jié)果;讀訓(xùn)練字檢測完成后,校準(zhǔn)控制狀態(tài)機(jī)跳轉(zhuǎn)到讀數(shù)據(jù)通路選擇信號生成狀態(tài),使能讀數(shù)據(jù)通路選擇信號生成器根據(jù)讀數(shù)據(jù)檢測器記錄的讀數(shù)據(jù)檢測結(jié)果,生成讀數(shù)據(jù)通路選擇信號。
4.如權(quán)利要求1所述的控制器,其特征在于,所述讀數(shù)據(jù)采樣時鐘生成模塊生成的同源同頻異相的讀數(shù)據(jù)采樣時鐘,包括4個讀數(shù)據(jù)采樣時鐘sys_Clk,sys_clk_90, sys_ clk_180 和 sys_clk_270。
5.如權(quán)利要求3所述的控制器,其特征在于,所述讀數(shù)據(jù)采樣時鐘生成模塊生成的同源同頻異相的讀數(shù)據(jù)采樣時鐘包括4個讀數(shù)據(jù)采樣時鐘SyS_clk,sys_clk_90, sys_ clk_180 和 sys_clk_270 ;所述讀數(shù)據(jù)通路選擇信號生成器根據(jù)讀數(shù)據(jù)檢測器記錄的讀數(shù)據(jù)檢測結(jié)果,生成讀數(shù)據(jù)通路選擇信號的選擇方式包括如果4個采樣時鐘采樣到的讀數(shù)據(jù)均與訓(xùn)練字一致,根據(jù)在一個系統(tǒng)時鐘周期內(nèi)采樣數(shù)據(jù)與訓(xùn)練字一致的時鐘個數(shù)以及下一個系統(tǒng)時鐘周期內(nèi)采樣數(shù)據(jù)與訓(xùn)練字一致的時鐘個數(shù),選擇其中一個作為采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;如果4個采樣時鐘采樣到的讀數(shù)據(jù)中有且僅有3個與訓(xùn)練字一致,從一致的3個連續(xù)時鐘中選擇中間的采樣時鐘為采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;如果4個采樣時鐘采樣到的讀數(shù)據(jù)中僅有2個或少于2個與訓(xùn)練字一致,則報錯。
6.如權(quán)利要求4所述的控制器,其特征在于,所述讀數(shù)據(jù)通路選擇信號生成器根據(jù)讀數(shù)據(jù)檢測器記錄的讀數(shù)據(jù)檢測結(jié)果,生成讀數(shù)據(jù)通路選擇信號,如果4個采樣時鐘采樣到的讀數(shù)據(jù)均與訓(xùn)練字一致,則在一個系統(tǒng)時鐘周期內(nèi),4個時鐘采樣數(shù)據(jù)均與訓(xùn)練字一致,選擇sys_Clk_180采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;在一個系統(tǒng)時鐘周期內(nèi),3個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),1個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_Clk_270采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;在一個系統(tǒng)時鐘周期內(nèi),2個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),2個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_clk采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;在一個系統(tǒng)時鐘周期內(nèi),1個時鐘采樣到得數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),3 個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_Clk_90采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路。
7.一種四倍數(shù)據(jù)速率QDR的控制器的實(shí)現(xiàn)方法,其特征在于,包括 采用同源同頻異相的4個時鐘采樣讀數(shù)據(jù);根據(jù)各時鐘采樣數(shù)據(jù)的結(jié)果,確定讀數(shù)據(jù)的采樣時鐘; 按所確定的采樣時鐘將讀數(shù)據(jù)同步到系統(tǒng)時鐘域。
8.如權(quán)利要求7所述的實(shí)現(xiàn)方法,其特征在于,所述同源同頻異相的讀數(shù)據(jù)采樣時鐘, 包括 4 個讀數(shù)據(jù)采樣時鐘 sys_clk,sys_clk_90、sys_clk_180 和 sys_clk_270。
9.如權(quán)利要求7所述的實(shí)現(xiàn)方法,其特征在于,所述根據(jù)各時鐘采樣數(shù)據(jù)的結(jié)果確定讀數(shù)據(jù)的采樣時鐘的步驟,是由讀數(shù)據(jù)通路校準(zhǔn)模塊在QDR控制器的控制狀態(tài)機(jī)為“讀數(shù)據(jù)通路校準(zhǔn)狀態(tài)”時,通過讀訓(xùn)練字從所生成的讀數(shù)據(jù)采樣時鐘中,分別確定讀數(shù)據(jù)通路模塊進(jìn)行讀數(shù)據(jù)時的正沿數(shù)據(jù)和負(fù)沿數(shù)據(jù)的采樣時鐘。
10.如權(quán)利要求9所述的實(shí)現(xiàn)方法,其特征在于,所述同源同頻異相的讀數(shù)據(jù)采樣時鐘包括4個SyS_clk,sys_clk_90,sys_clk_180和 sys_clk_270 ;所述根據(jù)各時鐘采樣數(shù)據(jù)的結(jié)果確定讀數(shù)據(jù)的采樣時鐘的步驟,具體分為 如果4個采樣時鐘采樣到的讀數(shù)據(jù)均與訓(xùn)練字一致,根據(jù)在一個系統(tǒng)時鐘周期內(nèi)采樣數(shù)據(jù)與訓(xùn)練字一致的時鐘個數(shù)以及下一個系統(tǒng)時鐘周期內(nèi)采樣數(shù)據(jù)與訓(xùn)練字一致的時鐘個數(shù),從所述4個采樣時鐘中選擇其中一個為采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;如果4個采樣時鐘采樣到的讀數(shù)據(jù)中有且僅有3個與訓(xùn)練字一致,從一致的3個連續(xù)時鐘中選擇中間的采樣時鐘為采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;如果4個采樣時鐘采樣到的讀數(shù)據(jù)中僅有2個或少于2個與訓(xùn)練字一致,則報錯。
11.如權(quán)利要求10所述的實(shí)現(xiàn)方法,其特征在于,所述如果4個采樣時鐘采樣到的讀數(shù)據(jù)均與訓(xùn)練字一致,根據(jù)在一個系統(tǒng)時鐘周期內(nèi)采樣數(shù)據(jù)與訓(xùn)練字一致的時鐘個數(shù)以及下一個系統(tǒng)時鐘周期內(nèi)采樣數(shù)據(jù)與訓(xùn)練字一致的時鐘個數(shù),選擇其中一個作為采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路,具體又分為在一個系統(tǒng)時鐘周期內(nèi),4個時鐘采樣數(shù)據(jù)均與訓(xùn)練字一致,選擇sys_Clk_180采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;在一個系統(tǒng)時鐘周期內(nèi),3個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),1個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_Clk_270采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;在一個系統(tǒng)時鐘周期內(nèi),2個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),2個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_clk采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路;在一個系統(tǒng)時鐘周期內(nèi),1個時鐘采樣到得數(shù)據(jù)與訓(xùn)練字一致,下一系統(tǒng)時鐘周期內(nèi),3 個時鐘采樣數(shù)據(jù)與訓(xùn)練字一致,選擇sys_Clk_90采樣讀數(shù)據(jù)的讀數(shù)據(jù)通路。
全文摘要
本發(fā)明公開了四倍數(shù)據(jù)速率QDR的控制器及實(shí)現(xiàn)方法,所述控制器包括仲裁器(101),控制狀態(tài)機(jī)(102),讀數(shù)據(jù)采樣時鐘生成模塊(103),讀數(shù)據(jù)通路模塊(104),讀數(shù)據(jù)通路校準(zhǔn)模塊(105)。仲裁器根據(jù)控制狀態(tài)機(jī)的狀態(tài)對命令和數(shù)據(jù)進(jìn)行仲裁;讀數(shù)據(jù)采樣時鐘生成模塊生成同源同頻異相的讀數(shù)據(jù)采樣時鐘;讀數(shù)據(jù)通路校準(zhǔn)模塊在控制狀態(tài)機(jī)為“讀數(shù)據(jù)通路校準(zhǔn)狀態(tài)”時,通過讀訓(xùn)練字從所生成的讀數(shù)據(jù)采樣時鐘中確定讀數(shù)據(jù)通路模塊進(jìn)行讀數(shù)據(jù)時的正沿數(shù)據(jù)和負(fù)沿數(shù)據(jù)的采樣時鐘;讀數(shù)據(jù)通路模塊根據(jù)確定的采樣時鐘,將非系統(tǒng)時鐘域的正沿讀數(shù)據(jù)和負(fù)沿讀數(shù)據(jù)同步到系統(tǒng)時鐘域。本發(fā)明讀延時小且不需要可編程延遲器件、易于實(shí)現(xiàn)。
文檔編號G11C11/413GK102254569SQ20101018259
公開日2011年11月23日 申請日期2010年5月21日 優(yōu)先權(quán)日2010年5月21日
發(fā)明者丁己善, 于克東, 廖智勇, 王建兵, 賴偉, 黃煒 申請人:中興通訊股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1