專利名稱:一種高速串行通訊接口自適應(yīng)時序校準方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種邏輯電路設(shè)計,特別是一種高速串行通訊接口自適應(yīng)時序校準方法,適用于高速串行通訊接口的時序校準。
背景技術(shù):
交會對接任務(wù)對光學敏感設(shè)備的像素和圖像處理效率有了更高的要求,因此需采用更高速度的串行總線將圖像數(shù)據(jù)下傳到處理單元進行運算。由于星載應(yīng)用,國內(nèi)尚無法獲取專用的宇航等級圖像收發(fā)芯片,因此一般采用具有抗輻照能力的FPGA芯片作為圖像收發(fā)和處理單元。高速串行總線分為一路公用時鐘,一路控制信號,若干路數(shù)據(jù)傳輸。FPGA若采用常規(guī)全同步設(shè)計方法,根據(jù)香濃采樣定律,F(xiàn)PGA的采樣時鐘需為串行總線時鐘的2倍以上,當傳輸頻率達到百兆bps或以上時,實現(xiàn)如此高頻率的FPGA設(shè)計,極大的增加了芯片選型的難度和設(shè)計難度,同時也增加了功耗。在高速串行通訊接口設(shè)計時也存在著如下應(yīng)用問題需要解決由于電纜、PCB等鏈路延時,造成各路數(shù)據(jù)信號、控制信號與時鐘信號之間產(chǎn)生相位偏差,使得某些通道的數(shù)據(jù)超前于時鐘沿,某些滯后于時鐘沿,某些甚至在時鐘沿附近數(shù)據(jù)處于不穩(wěn)定狀態(tài),對數(shù)據(jù)的正確接收產(chǎn)生影響;串行數(shù)據(jù)的接收是通過移位寄存器將串行數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù),并加以鎖存,供外部設(shè)備讀取。但由于每個像素數(shù)據(jù)沒有相關(guān)的同步信號,如何在一個數(shù)據(jù)序列中確認每一個像素數(shù)據(jù)位的起始和結(jié)束并加以鎖存,確保串行數(shù)據(jù)正確接收也是需要解決的關(guān)鍵問題。
發(fā)明內(nèi)容
本發(fā)明的技術(shù)解決問題是提供一種高速串行通訊接口時序自適應(yīng)校準方法,該方法實現(xiàn)簡單并有效降低了功耗。本發(fā)明的技術(shù)解決方案是一種高速串行通訊接口自適應(yīng)時序校準方法,其特點在于采用FPGA實現(xiàn),步驟如下(I)將高速串行通訊接口設(shè)定為校準模式;(2)將高速串行通訊接口收到的串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù);(3)調(diào)整采樣時鐘相位或采樣延時,得到最佳采樣點;(4)將步驟(3)的最佳采樣點對高速串行通訊接口進行配置;(5)高速串行通訊接口重新將接收到的串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù);(6)將步驟(5)得到的并行數(shù)據(jù)與預(yù)設(shè)值進行比對,根據(jù)比對結(jié)果調(diào)整并行數(shù)據(jù)鎖存時刻,使得高速串行通訊接口接收到的并行數(shù)據(jù)與預(yù)設(shè)值一致;(7)將步驟(6)得到的數(shù)據(jù)鎖存時刻結(jié)果對高速串行通訊接口進行配置;(8)將高速串行通訊接口設(shè)定為傳數(shù)模式。所述步驟(3)具體實現(xiàn)如下對于具有IO端口延遲調(diào)整功能的FPGA,調(diào)整采樣延時,得到最佳采樣點,方法如下
設(shè)置IDELAY模塊的延遲參數(shù)為n,n = 0 63,并對高速串行通訊接口數(shù)據(jù)進行多次連續(xù)采樣,若多次連續(xù)采樣值相等,則說明采樣處于穩(wěn)定區(qū)域,否則說明采樣處于不穩(wěn)定區(qū)域;當11從0以I為當量遞增過程中,尋找到采樣由不穩(wěn)定到穩(wěn)定或由穩(wěn)定變化為不穩(wěn)定時n的對應(yīng)值,即為nl和n2 ;若n = 0時即為穩(wěn)定,或n = 63時即為穩(wěn)定,則對應(yīng)的邊界值設(shè)定為0或63 ;最終選擇nl與n2的中間值,即N = (nl+n2)/2作為IDELAY模塊最終的延遲參數(shù),即最佳采樣點。所述步驟(3)具體實現(xiàn)如下對于具有時鐘相位管理功能的FPGA,調(diào)整采樣時鐘相位,得到最佳采樣點,方法如下利用FPGA內(nèi)部的鎖相環(huán)或數(shù)字時鐘管理器對采樣時鐘進行相位調(diào)整;生成以360 ° /N為變化的N個時鐘,記為pclkl pclkN ;分別利用每個時鐘對高速串行通訊接口數(shù)據(jù)進行采樣,若連續(xù)多次采樣正確則認為穩(wěn)定;找到臨界的兩個時鐘Pclk(Nl)與pclk (N2),則選擇pclk((Nl+N2)/2)作為最終的采樣時鐘從而尋找到最佳的采樣點。所述步驟(6)具體實現(xiàn)如下若串并轉(zhuǎn)換結(jié)果與預(yù)設(shè)值不同,則產(chǎn)生一個控制信號,使得串并轉(zhuǎn)換舍棄一個bit的采樣數(shù)據(jù),重新進行串并轉(zhuǎn)換后再進行比較,如此往復(fù)執(zhí)行,直至串并轉(zhuǎn)換結(jié)果與預(yù)設(shè)值相同,表明數(shù)據(jù)已同步;若已經(jīng)循環(huán)M次,M為串并轉(zhuǎn)換的數(shù)據(jù)位寬,比對仍失敗,則返回步驟(3),重新調(diào)整最佳采樣點。本發(fā)明與現(xiàn)有技術(shù)相比有益效果為(I)本發(fā)明采用異步設(shè)計,以高速串行總線時鐘作為高速串行通訊接口采樣時鐘而不是FPGA的系統(tǒng)時鐘,F(xiàn)PGA的系統(tǒng)時鐘可低于采樣時鐘,從而降低了 FPGA的系統(tǒng)時鐘頻率,低功耗的;(2)本發(fā)明對高速串行通訊接口的采樣時鐘相位或采樣延時進行自適應(yīng)調(diào)整,并保證了數(shù)據(jù)對齊與同步,確保數(shù)據(jù)采樣準確。(3)本發(fā)明邏輯簡單,可進一步在ASIC領(lǐng)域得到應(yīng)用。
圖1為本發(fā)明中高速串行接口接收端但通道數(shù)據(jù)校準流程示意圖;圖2為本發(fā)明中高速串行接口接收端組織結(jié)構(gòu)示意圖;圖3為本發(fā)明中高速串行接口接收端最佳采樣點校準示意圖;圖4為本發(fā)明中多通道情況下校準流程示意圖。
具體實施例方式本發(fā)明利用FPGA實現(xiàn),為高速串行通訊接口加入了一種校準模式,流程圖如圖1所示。在校準模式下,發(fā)送端發(fā)送特定的指令序列,利用采樣、比對、校準、再采樣,如此往復(fù)的閉環(huán)校準方法,實現(xiàn)接收端對高速串行數(shù)據(jù)采樣的動態(tài)自適應(yīng)調(diào)整,達到高速串行接口時序自動校準的目的,使得接收端采樣準確、數(shù)據(jù)對齊、數(shù)據(jù)同步。高速串行總線的接收端組織結(jié)構(gòu)如圖2所示。串行數(shù)據(jù)傳輸內(nèi)容分為時鐘、數(shù)據(jù)、控制信號,分別由不同的通道進行傳輸。其中發(fā)送端數(shù)據(jù)與控制信號與時鐘信號的邊沿對齊,允許采用雙沿對齊(ddr)傳輸模式。控制信號根據(jù)需要可用于標識數(shù)據(jù)狀態(tài)空閑狀態(tài)、校準狀態(tài)還是有效數(shù)據(jù)傳輸狀態(tài)。當處于空閑狀態(tài)時,接收端忽略總線上的數(shù)據(jù)。當處于校準狀態(tài)時發(fā)送端發(fā)送已經(jīng)約定好的校準碼,接收端啟動校準邏輯。校準需對各個通道逐一進行校準,流程如下(I)將高速串行通訊接口設(shè)定為校準模式(2)將高速串行通訊接口收到的串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù);串并轉(zhuǎn)換的時鐘為采樣時鐘,與FPGA系統(tǒng)時鐘異步。設(shè)據(jù)數(shù)據(jù)位寬為m,當完成一個word的串并轉(zhuǎn)換(接收m個bit數(shù)據(jù))時將轉(zhuǎn)換結(jié)果鎖存入寄存器Q,同時產(chǎn)生一個鎖存信號lock,lock信號保持一半的數(shù)據(jù)位寬(m/2個采樣時鐘)。那么利用系統(tǒng)時鐘對Q和lock信號進行采樣,可以大大的降低對系統(tǒng)時鐘頻率的要求。(3)調(diào)整采樣時鐘相位或采樣延時,得到最佳采樣點;信號從發(fā)送端發(fā)送時數(shù)據(jù)與時鐘沿嚴格對齊,但是經(jīng)過數(shù)據(jù)鏈路傳輸已經(jīng)產(chǎn)生相對偏移,因此要進行端口采樣的校準,校準流程如圖3所示。 對于具有IO端口延遲調(diào)整功能的FPGA,如VIRTEX4FPGA具備IDELAY模塊,可動態(tài)調(diào)整IO端口的數(shù)據(jù)延遲,則采用如下方法設(shè)置IDELAY模塊的延遲參數(shù)為n,n = 0 63,并對高速串行通訊接口數(shù)據(jù)進行多次連續(xù)采樣,若多次連續(xù)采樣值相等,則說明采樣處于穩(wěn)定區(qū)域,否則說明采樣處于不穩(wěn)定區(qū)域;當11從0以I為當量遞增過程中,尋找到采樣由不穩(wěn)定到穩(wěn)定或由穩(wěn)定變化為不穩(wěn)定時n的對應(yīng)值,即為nl和n2 ;若n = 0時即為穩(wěn)定,或n = 63時即為穩(wěn)定,則對應(yīng)的邊界值設(shè)定為0或63 ;最終選擇nl與n2的中間值,即N = (nl+n2)/2作為IDELAY模塊最終的延遲參數(shù),即最佳采樣點。對于具有時鐘相位管理功能的FPGA,調(diào)整采樣時鐘相位,得到最佳采樣點,方法如下利用FPGA內(nèi)部的鎖相環(huán)或數(shù)字時鐘管理器對采樣時鐘進行相位調(diào)整;生成以360。/N為變化的N個時鐘,記為pclkl pclkN;以N = 8為例,則生成以45。為變化的8個時鐘,記為pclkl pclk8。分別利用每個時鐘對高速串行通訊接口數(shù)據(jù)進行采樣,若連續(xù)多次采樣正確則認為穩(wěn)定;找到臨界的兩個時鐘Pclk(Nl)與pclk(N2),則選擇pclk((N1+N2)/2)作為最終的采樣時鐘從而尋找到最佳的采樣點。(4)將步驟(3)的最佳采樣點對高速串行通訊接口進行配置;(5)高速串行通訊接口重新將接收到的串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù);(6)將步驟(5)得到的并行數(shù)據(jù)與預(yù)設(shè)值進行比對,根據(jù)比對結(jié)果調(diào)整并行數(shù)據(jù)鎖存時刻,使得高速串行通訊接口接收到的并行數(shù)據(jù)與預(yù)設(shè)值一致由于數(shù)據(jù)為連續(xù)發(fā)送,有必要將接收端的串并轉(zhuǎn)換與發(fā)送端進行數(shù)據(jù)同步對齊,確保數(shù)據(jù)接收正確。具體方法如下若串并轉(zhuǎn)換結(jié)果與預(yù)設(shè)值不同,則產(chǎn)生一個控制信號,使得串并轉(zhuǎn)換模塊舍棄一個bit的采樣數(shù)據(jù),重新進行串并轉(zhuǎn)換后再進行比較,如此往復(fù)執(zhí)行,直至串并轉(zhuǎn)換結(jié)果與預(yù)設(shè)值相同,表明數(shù)據(jù)已同步。若已經(jīng)循環(huán)M次,M為串并轉(zhuǎn)換的數(shù)據(jù)位寬,比對仍失敗,則退回步驟(3),重新進行端口采樣校準。(7)將步驟(6)得到的數(shù)據(jù)鎖存時刻結(jié)果對高速串行通訊接口進行配置;
(8)將高速串行通訊接口設(shè)定為傳數(shù)模式。步驟(6)結(jié)束后由校準狀態(tài)切換至有效數(shù)據(jù)傳輸狀態(tài),由于整個通訊鏈路已經(jīng)固定,因此鏈路上的延時以及采樣相位誤差已經(jīng)固定,校準狀態(tài)下的調(diào)整參數(shù)仍適用,發(fā)送端發(fā)送有效數(shù)據(jù)接收端可以正確接收,從而確保了高速串行通訊過程中數(shù)據(jù)采樣的準確性和
可靠性。若高速串行通訊接口含有多個通道,則需按圖4所示,對各個通道逐一進行校準。本發(fā)明未公 開技術(shù)屬本領(lǐng)域技術(shù)人員公知常識。
權(quán)利要求
1.一種高速串行通訊接口自適應(yīng)時序校準方法,其特征在于采用FPGA實現(xiàn),步驟如下 (1)將速串行通訊接口設(shè)定為校準模式; (2)將高速串行通訊接口收到的串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù); (3)調(diào)整采樣時鐘相位或采樣延時,得到最佳采樣點; (4)將步驟(3)的最佳采樣點對高速串行通訊接口進行配置; (5)高速串行通訊接口重新將接收到的串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù); (6)將步驟(5)得到的并行數(shù)據(jù)與預(yù)設(shè)值進行比對,根據(jù)比對結(jié)果調(diào)整并行數(shù)據(jù)鎖存時刻,使得高速串行通訊接口接收到的并行數(shù)據(jù)與預(yù)設(shè)值一致; (7)將步驟(6)得到的數(shù)據(jù)鎖存時刻結(jié)果對高速串行通訊接口進行配置; (8)將高速串行通訊接口設(shè)定為傳數(shù)模式。
2.根據(jù)權(quán)利要求1所述的高速串行通訊接口自適應(yīng)時序校準方法,其特征在于所述步驟(3)具體實現(xiàn)如下對于具有IO端口延遲調(diào)整功能的FPGA,調(diào)整采樣延時,得到最佳采樣點,方法如下 設(shè)置IDELAY模塊的延遲參數(shù)為n,n = 0 63,并對高速串行通訊接口數(shù)據(jù)進行多次連續(xù)采樣,若多次連續(xù)采樣值相等,則說明采樣處于穩(wěn)定區(qū)域,否則說明采樣處于不穩(wěn)定區(qū)域;當1!從0以I為當量遞增過程中,尋找到采樣由不穩(wěn)定到穩(wěn)定或由穩(wěn)定變化為不穩(wěn)定時n的對應(yīng)值,即為nl和n2 ;若n = 0時即為穩(wěn)定,或n = 63時即為穩(wěn)定,則對應(yīng)的邊界值設(shè)定為0或63 ;最終選擇nl與n2的中間值,即N = (nl+n2)/2作為IDELAY模塊最終的延遲參數(shù),即最佳采樣點。
3.根據(jù)權(quán)利要求1所述的高速串行通訊接口自適應(yīng)時序校準方法,其特征在于所述步驟(3)具體實現(xiàn)如下對于具有時鐘相位管理功能的FPGA,調(diào)整采樣時鐘相位,得到最佳采樣點,方法如下 利用FPGA內(nèi)部的鎖相環(huán)或數(shù)字時鐘管理器對采樣時鐘進行相位調(diào)整;生成以360° /N為變化的N個時鐘,記為pclkl pclkN ;分別利用每個時鐘對高速串行通訊接口數(shù)據(jù)進行采樣,若連續(xù)多次采樣正確則認為穩(wěn)定;找到臨界的兩個時鐘Pclk(Nl)與pclk(N2),則選擇pclk((Nl+N2)/2)作為最終的采樣時鐘從而尋找到最佳的采樣點。
4.根據(jù)權(quán)利要求1所述的高速串行通訊接口自適應(yīng)時序校準方法,其特征在于所述步驟(6)具體實現(xiàn)如下 若串并轉(zhuǎn)換結(jié)果與預(yù)設(shè)值不同,則產(chǎn)生一個控制信號,使得串并轉(zhuǎn)換舍棄一個bit的采樣數(shù)據(jù),重新進行串并轉(zhuǎn)換后再進行比較,如此往復(fù)執(zhí)行,直至串并轉(zhuǎn)換結(jié)果與預(yù)設(shè)值相同,表明數(shù)據(jù)已同步;若已經(jīng)循環(huán)M次,M為串并轉(zhuǎn)換的數(shù)據(jù)位寬,比對仍失敗,則返回步驟(3),重新調(diào)整最佳采樣點。
全文摘要
一種高速串行通訊接口自適應(yīng)時序校準方法,采用FPGA實現(xiàn),步驟如下將高速串行通訊接口設(shè)定為校準模式;將高速串行通訊接口收到的串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù);調(diào)整采樣時鐘相位或采樣延時,得到最佳采樣點;將最佳采樣點對高速串行通訊接口進行配置;高速串行通訊接口重新將接收到的串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù);將得到的并行數(shù)據(jù)與預(yù)設(shè)值進行比對,根據(jù)比對結(jié)果調(diào)整并行數(shù)據(jù)鎖存時刻,使得高速串行通訊接口接收到的并行數(shù)據(jù)與預(yù)設(shè)值一致;將得到的數(shù)據(jù)鎖存時刻結(jié)果對高速串行通訊接口進行配置;將高速串行通訊接口設(shè)定為傳數(shù)模式。本發(fā)明實現(xiàn)簡單并有效降低了功耗。
文檔編號H04L7/00GK103036667SQ201210516499
公開日2013年4月10日 申請日期2012年11月30日 優(yōu)先權(quán)日2012年11月30日
發(fā)明者孫強, 施蕾, 田宇斌, 葉有時, 劉群, 劉波, 吳一帆 申請人:北京控制工程研究所