提升印表機並行口乾擾適應性和數據速率的方法和系統的製作方法
2023-07-18 13:10:36 4
專利名稱:提升印表機並行口乾擾適應性和數據速率的方法和系統的製作方法
技術領域:
本發明涉及計算機技術領域,尤其涉及一種提升印表機並行接口的實用性能的方法,及系統。
背景技術:
IEEE1284高速並行接口是目前最為廣泛使用的印表機接口標準之一。在高速印表機的接口設計中,抗幹擾能力和數據傳輸速率方面的設計質量,對印表機產品的用戶環境適應性、工作穩定性和列印速度有著重要的影響。
隨著PC主機軟硬體性能的高速發展,目前比較複雜的列印作業,如漢字雷射列印和圖形圖象輸出應用領域,幾乎全部或越來越多地採用傳輸數據量較大的光柵圖象壓縮方式,因而對印表機並行口的數據傳輸速率的要求越來越高。為了滿足數據傳輸速率方面的要求,人們往往不得不犧牲幹擾防護方面的性能,因而對主機接口控制器的性能或接口電氣環境的要求隨之提高。另一方面,為了不過分降低幹擾防護能力,目前多數產品設計中一般又不得不把數據傳輸速率限定在500K Byte/S之內,因而對充分發揮高速雷射印表機的性能很不利。
圖1所示的是一種典型的印表機並行接口抗幹擾解決方案。xCtrol[3..0]表示印表機並行口的4條輸入控制線nInit,nSelectIn,nAutoFd,nStrobe,;XD[7..0]表示8條雙向數據線;xStatus[4..0]表示5條輸出狀態線Perror,nAck,Busy,nFault,Select。圖2a和圖2b是常規印表機並行接口常用的抗幹擾電原理圖W為限幅保護二極體,Rup為邏輯上拉電阻,T為schmitt反相整形器。在實際電路設計中,一般滿足條件R<<Rup,R<<Rsr(反相器輸入電阻),所以R和C的參數選擇和schmitt整形器的V+和V-參數,基本上決定了該電路的抗幹擾能力和可能達到的數據傳輸速率。
典型的RC低通濾波網絡具有電路簡單和硬體成本低等優點,但在提高干擾防護能力和數據速率方面存在一些難以兼顧的矛盾。例如選擇較大的RC時間常數對提高干擾防護能力有利,但數據傳輸速率方面的性能很容易變劣。例如根據IEEE1284並行接口規範,在高速ECP工作模式下的nStrobe信號線的信號脈衝寬度可能小到500ns(參見圖3)。根據脈衝電路的暫態分析知識,我們知道為了滿足較大數據傳輸速率的要求,RC參數的選擇一般需要滿足3RC<500ns。進一步工程估算表明,為了滿足1Mbyte/S左右數據速率的要求,該電路可有效濾除的幹擾脈衝的最大寬度不容易超過40ns,所以如果在非信號區間(本例中40ns..500ns)內出現脈衝幹擾,那麼只要幅度突破schmitt整形器的門檻電壓V+(約1.6V)和V-(約0.8V),就很可能導致列印誤碼或其他穩定性問題。
在主機和印表機的並行口接駁方式中,在設備端觀察到的幹擾多以單脈衝「毛刺」形式出現,但跳變振鈴和隨機序列脈衝也偶有發生實例。如果幹擾出現在數據線,容易引起列印誤碼問題;如果幹擾出現在控制線,除了誤碼之外還往往導致IEEE1284接口協議狀態機的混亂。考察上述常規的解決方法,在幹擾有效防護區(=<40ns)和信號區(>=500ns)之間存在一個很寬的過渡區域,是限制幹擾防護和數據速率性能提升的外在表現。換言之,如果設法把該過渡區域的下限提高,但上限保持不變甚至下移,那麼等效於同時提升印表機並行接口的上述兩個主要的性能指標,對高速印表機應用很有意義。就目前常見的產品設計應用技術而言,傳統的模擬幹擾防護技術很難有效和高性能價格比地解決這類問題。
發明內容
本發明的目的在於提供一種兼除控制線和數據線幹擾的簡單實用的數位化解決方法,以及適用於這種方法的系統。
本發明的方法,在印表機並行接口的所有控制線和數據線迴路中加入數位化幹擾防護模塊,在去除幹擾脈衝,再輸出給後繼的IEEE1284邏輯模塊。
所述的控制線的數位化幹擾防護模塊包括參數寄存器A,輸入比較器A,延遲計數器A,延遲比較器A,取樣鎖存器A、取樣鎖存器C,該模塊的工作步驟包括1)根據經驗數據,在參數寄存器A中設置幹擾信號防護的計數閾值X;2)輸入比較器A通過比較取樣鎖存器A和對應的控制線信號Ctrol[3..0],實時監視控制信號線的各種跳變;當兩組對應信號線的邏輯電平完全相同時,輸入比較器A將輸出正有效的計數控制信號CountA,對延遲計數器A執行「同步計數」的操作,對取樣鎖存器A執行「數據保持」的操作;當兩組對應信號線的邏輯電平不同時,輸入比較器A將輸出無效的計數控制信號CountA,對延遲計數器A執行「復位清0」的操作,對取樣鎖存器A執行「取樣更新」的操作;3)當延遲計數器A的計數值等於或大於參數寄存器A的預設計數閾值X時,延遲比較器A輸出正有效的取樣控制信號SampleEna;4)當SampleEna=1時,取樣鎖存器C執行「取樣更新」的操作,取樣更新數據來自取樣鎖存器A的輸出Ctrolm[3..0];5)取樣鎖存器C輸出去除了幹擾的並行口控制信號CtrolQ[3..0];所述數據線的數位化幹擾防護模塊包括參數寄存器B,輸入比較器B,延遲計數器B,延遲比較器B,取樣鎖存器B、取樣鎖存器D,其工作步驟包括1)由參數寄存器B根據經驗數據,設定幹擾信號防護的計數閾值X值;2)輸入比較器B通過比較取樣鎖存器B和對應的數據線信號D[7..0],實時監視數據線信號的各種跳變。當兩組對應信號線的邏輯電平完全相同時,輸入比較器B將輸出正有效的計數控制信號CountB,對延遲計數器B執行「同步計數」的操作,對取樣鎖存器B執行「數據保持」的操作;當兩組對應信號線的邏輯電平不同時,輸入比較器B將輸出無效的計數控制信號CountB,對延遲計數器B執行「復位清0」的操作,對取樣鎖存器B執行「取樣更新」的操作;3)當延遲計數器B的計數值等於或大於參數寄存器B的預設限值計數閾值X的值時,延遲比較器B產生正有效的取樣控制信號SampleD,對取樣鎖存器D執行「取樣更新」的操作,取樣更新數據來自取樣鎖存器B的輸出Dm[7..0];4)取樣鎖存器D輸出去除了幹擾的數據線輸入信號DI[7..0]。
本發明還對控制線的數位化幹擾防護模塊和數據線的數位化幹擾防護模塊作同步處理,控制線的數位化幹擾防護模塊還包括取樣脈衝器C,數據線的數位化幹擾防護模塊還包括輸出比較器B,輸出比較器B通過實時比較取樣鎖存器B和取樣鎖存器D,給出數據線信號是否穩定可用的指示信號ReadyDx;當SampleEna=1時,如果有ReadyDx=1,取樣脈衝器C將馬上輸出正有效的取樣允許信號SampleC;否則,取樣脈衝器C等待ReadyDx=1條件的出現;當SampleC=1,取樣鎖存器C執行「取樣更新」操作。
本發明的參數寄存器A,B可通過CPU優化算法獲取計數閾值X的動態設置。參數寄存器A和B可為同一個參數寄存器,即控制線的數位化幹擾防護模塊和數據線的數位化幹擾防護模塊共用一個參數寄存器。
本發明的計數閥值X滿足Xmin=<X<Xmax,Xmin=Round(Tnoise/Tclock),Xmax=Round(Tsignal/Tclock-2),其中,Xmax表示在最大數據傳輸速率期望值限定條件下,預值X的最大取值限制;Round表示對後面計算的結果進行取整運算;Tclock表示取樣時鐘的周期;Tsignal表示控制線中可能出現的最小信號脈衝寬度,與數據傳輸速率的期望值密切關聯;Tnoise=Tnoise_p,,表示設計希望的可有效抑制的最大單脈衝幹擾的寬度。
本發明中的控制線輸入可通過RC低通濾波網絡和schmitt整形器與外部接口隔離。如果對數據速率有較高的要求,應選擇適當的RC參數值,以免對設計期望值產生明顯的影響。本發明中的數據線輸入可通過雙向總線收發器隔離,輸入端RC低通濾波網絡在實際產品設計中可考慮部分省去。
本發明適合如下苛刻的幹擾模型1)在1條或多條控制線或者數據線上可同時出現脈衝幹擾;2)單脈衝幹擾的最大寬度Tnoise_p不大於設計限值Tnoise;序列脈衝幹擾的最大持續時間Tnoise_c在協議限制範圍內沒有限制。
本發明方法的主要特點在於1)在保持較高數據傳輸速率前提條件下,可有效抑制控制線和數據線上出現的寬度不大於Tnoise的單脈衝幹擾;2)在保持較高數據傳輸速率前提條件下,可有效抑制控制線和數據線上出現的序列脈衝幹擾,幹擾持續時間在協議允許範圍內沒有限制;3)當序列脈衝幹擾出現時,該數位化幹擾防護技術具有自動動態調整數據速率的能力;4)在印表機並行口的抗幹擾能力和數據速率之間確立了一種準定量的關係式和簡單可行的數位化轉換途徑。通過可編程參數寄存器引入的CPU控制接口,不但可以增加工程設計的靈活性(如時鐘頻率選擇),而且可以根據實際需要進一步優化控制參數,使這種數位化轉換途徑在更大範圍內靈活切換;5)本發明方法亦可施加在部分控制線和數據線的組合上面;6)本發明方法適合採用FPGA或者ASIC的產品設計工藝。
圖1典型的印表機並行接口抗幹擾原理塊2a、2b基於RC模擬濾波技術的抗幹擾原理圖(nStrobe信號線為例)圖3ECP工作模式下高速並行口的部分信號線的時序圖示例圖4印表機並行口的數位化抗幹擾模塊的引入位置說明5數位化抗幹擾模塊的基本構成形式圖6控制線幹擾去除和數據速率自動調節的過程示意7數據線幹擾去除和數據速率自動調節的過程示意圖實施方案參見圖5,本發明的控制線數字抗幹擾模塊由參數寄存器A根據經驗數據,設定幹擾信號的計數閾值X的值;輸入比較器A通過比較取樣鎖存器A和控制信號線的輸出,實時監視輸入控制信號線的各種跳變;當兩組對應信號線的邏輯電平完全相同時,輸入比較器A將輸出正有效的計數控制信號CountA,對延遲計數器A執行「同步計數」的操作,對取樣鎖存器A執行「數據保持」的操作;當兩組對應信號線的邏輯電平不同時,輸入比較器A將輸出無效的計數控制信號CountA,對延遲計數器A執行「復位清0」的操作,對取樣鎖存器A執行「取樣更新」的操作;當延遲計數器A的計數值等於或大於參數寄存器A的預設限值計數閾值X的值時,產生正有效的取樣控制信號SampleA,這時如果ReadyDx=1,將馬上產生正有效的取樣允許信號SampleC,對取樣鎖存器C執行「取樣更新」的操作,取樣更新數據來自取樣鎖存器A的輸出,取樣鎖存器C的輸出CtrolQ[3..0]送往後繼IEEE1284模塊,是滿足設計要求的去除了幹擾的控制線輸入信號。
數據線的數字抗幹擾模塊由,參數寄存器B根據經驗數據,設定幹擾信號的計數閾值X的值;輸入比較器B通過比較取樣鎖存器B和數據線信號,實時監視數據線信號的各種跳變;當兩組對應信號線的邏輯電平完全相同時,輸入比較器B將輸出正有效的計數控制信號CountB,對延遲計數器B執行「同步計數」操作,對取樣鎖存器B執行「數據保持」的操作;當兩組對應信號線的邏輯電平不同時,輸入比較器B將輸出無效的計數控制信號CountB,對延遲計數器B執行「復位清0」的操作,對取樣鎖存器B執行「取樣更新」的操作;當延遲計數器B的計數值等於或大於參數寄存器B的預設限值計數閾值X的值時,產生正有效的取樣控制信號SampleD,對取樣鎖存器D執行「取樣更新」的操作,取樣更新數據來自取樣鎖存器B的輸出。取樣鎖存器D的輸出DI[7..0]送往後繼IEEE1284模塊,是滿足設計要求的去除了幹擾的數據線輸入數據信號。此外,輸出比較器B給出的數據線數據是否穩定可用的指示信號ReadyDx。
參數寄存器提供X限值設置。X限值可以是一個或幾個固定的經驗數據,也可以通過CPU接口實現動態最優設置。動態最優設置一般需要通過CPU自適應學習算法獲取。
本例中,如果取樣時鐘頻率Clock=40MHz,預值x=10,那麼可有效濾除250ns之內的各種幹擾脈衝,脈衝幹擾防護能力遠遠超過常規的解決方案。在X的最大取值限定範圍內,預值X取得越大,可有效提供防護的幹擾範圍也就越大,但留給IEEE1284模塊的相關應答邏輯的延遲時間裕度也會越小。超過一定的範圍,隨著預值X的上升,數據傳輸速率將開始下降,表明進入需要通過降低數據傳輸速率獲取幹擾防護能力提升的區域。
圖6波形示意圖可用於說明抗幹擾能力和數據傳輸速率具有自動轉換的能力。仍以ECP工作模式中的一部分信號邏輯關係為例nStrobe表示主機並行口控制器驅動的原始選通控制信號;xLpStrb表示原始nStrobe信號受到某種幹擾之後出現在Schmitt整形器的輸出,其中陰影線部分表示該區域存在一個序列脈衝幹擾,原始邏輯關係被明顯破壞;/LpStrb表示經過本專利方法去幹擾處理過的與nStrobe對應的波形,原始邏輯關係被正確恢復;Busy表示由印表機並行接口送回主機的應答信號,通知主機並行口控制器完成該字節的傳送周期。參見nStrobe信號波形,在nStrobe_1st字節傳送周期中由於線路沒有受到幹擾,本幹擾防護電路在延遲了Tnoise時間之後馬上把信號傳遞到後繼模塊並返回Busy應答信號,所以主機側並行口控制器可較快地結束該傳送周期,使數據傳輸速率得以提高;nStrobe_2nd傳送周期中由於控制線受到幹擾,本幹擾防護電路往往需要附加的延遲時間才能從控制信號線中「析出」正確的控制信號,所以主機不得不順延該傳送周期的寬度,使數據傳輸速率自動調低。由此可見,本發明方法不但可以更好地消除控制線脈衝幹擾,而且具有一定的數據傳送速率的動態調節能力。
圖7波形示意圖可用於說明數據線幹擾消除的過程。仍以ECP工作模式為例,而且假設只有數據線受到幹擾。圖7中nStrobe表示由主機並行口控制器驅動的原始選通信號線波形;/LpStrb表示選通信號線經過數字抗幹擾模塊處理後的對應信號波形;Busy由後繼的IEEE1284模塊產生,是印表機並行接口返回主機的應答信號;D[7..0]表示數據線輸入信號,其中陰影部分表示受到序列脈衝幹擾,這時數據線信號不穩定;DI[7..0]表示經過消除序列脈衝幹擾處理之後的數據線信號。nStrobe_1st字節傳送期間,主機在t0時刻把數據送到數據線,在t1時刻令選通線nStrobe負有效,因為線路沒有受到幹擾,所以D[7..0]信號在延遲了Tnoise之後,準時地在t2時刻反映到ReadyDx=1和DI[7..0],導致/LpStrb和Busy信號能夠按照設計節拍最快發出,使得主機能夠在t5時刻及時結束該字節傳送,因此具有較高的數據傳輸速率。nStrobe_2nd字節傳送期間,主機在t6時刻把數據送到數據線,t7時刻令選通線nStrobe負有效,在主機側雖然有t7-t6=t1-t0,但因為受到幹擾,所以D[7..0]信號在延遲了Tx=Max(Tnoise,Tnoise_c)之後,在t9時刻才反映到ReadyDx=1和DI[7..0],導致主機把該傳送周期順延到t12時刻,使數據速率自動調慢。
實側表明,在雷射印表機控制器設計中採用本發明提出的優化方法,在ECP工作模式下的數據傳輸速率可以高達1.2M Byte/S以上,比常規的500Kbyte/S有了很明顯的提高。曾經在一個特殊用戶主機幹擾環境下與兩臺國外名牌雷射印表機產品進行過一次有趣的對比性測試,結果是國外名牌雷射印表機分別採用壓縮光柵圖象驅動和PCL-5代碼驅動,它們在文本和圖象輸出測試時都出現過嚴重的亂碼現象;而採用本發明方法的測試樣機在相同測試環境下幾乎沒有出現亂碼現象。
權利要求
1.一種提升印表機並行口乾擾適應性和數據速率的方法,在印表機並行接口的所有控制線和數據線迴路中加入數位化幹擾防護模塊,在去除幹擾脈衝後,再輸出給後繼的IEEE1284邏輯模塊;所述控制線的數位化幹擾防護模塊包括參數寄存器A,輸入比較器A,延遲計數器A,延遲比較器A,取樣鎖存器A、取樣鎖存器C,其工作步驟包括1)根據經驗數據,在參數寄存器A中設置幹擾信號防護的計數閾值X;2)輸入比較器A通過比較取樣鎖存器A和對應的控制線信號Ctrol[3..0],實時監視控制信號線的各種跳變;當兩組對應信號線的邏輯電平完全相同時,輸入比較器A將輸出正有效的計數控制信號CountA,對延遲計數器A執行「同步計數」的操作,對取樣鎖存器A執行「數據保持」的操作;當兩組對應信號線的邏輯電平不同時,輸入比較器A將輸出無效的計數控制信號CountA,對延遲計數器A執行「復位清0」的操作,對取樣鎖存器A執行「取樣更新」的操作;3)當延遲計數器A的計數值等於或大於參數寄存器A的預設計數閾值X時,延遲比較器A輸出正有效的取樣控制信號SampleEna;4)當SampleEna=1時,取樣鎖存器C執行「取樣更新」的操作,取樣更新數據來自取樣鎖存器A的輸出Ctrolm[3..0];5)取樣鎖存器C輸出去除了幹擾的並行口控制信號CtrolQ[3..0];所述數據線的數位化幹擾防護模塊包括參數寄存器B,輸入比較器B,延遲計數器B,延遲比較器B,取樣鎖存器B、取樣鎖存器D,其工作步驟包括1)由參數寄存器B根據經驗數據,設定幹擾信號防護的計數閾值X值;2)輸入比較器B通過比較取樣鎖存器B和對應的數據線信號D[7..0],實時監視數據線信號的各種跳變。當兩組對應信號線的邏輯電平完全相同時,輸入比較器B將輸出正有效的計數控制信號CountB,對延遲計數器B執行「同步計數」的操作,對取樣鎖存器B執行「數據保持」的操作;當兩組對應信號線的邏輯電平不同時,輸入比較器B將輸出無效的計數控制信號CountB,對延遲計數器B執行「復位清0」的操作,對取樣鎖存器B執行「取樣更新」的操作;3)當延遲計數器B的計數值等於或大於參數寄存器B的預設限值計數閾值X的值時,延遲比較器B產生正有效的取樣控制信號SampleD,對取樣鎖存器D執行「取樣更新」的操作,取樣更新數據來自取樣鎖存器B的輸出Dm[7..0];4)取樣鎖存器D輸出去除了幹擾的數據線輸入信號DI[7..0]。
2.如權利要求1所述的提升印表機並行口乾擾適應性和數據速率的方法,其特徵在於對控制線的數位化幹擾防護模塊和數據線的數位化幹擾防護模塊作同步處理控制線的數位化幹擾防護模塊還包括取樣脈衝器C,數據線的數位化幹擾防護模塊還包括輸出比較器B,輸出比較器B通過實時比較取樣鎖存器B和取樣鎖存器D,給出數據線信號是否穩定可用的指示信號ReadyDx;當SampleEna=1時,如果有ReadyDx=1,取樣脈衝器C將馬上輸出正有效的取樣允許信號SampleC,取樣鎖存器C執行「取樣更新」操作;否則,取樣脈衝器C等待ReadyDx=1條件的出現。
3.如權利要求1所述的提升印表機並行口乾擾適應性和數據速率的方法,其特徵在於參數寄存器A,B通過CPU優化算法獲取計數閾值X的動態優化設置。
4.如權利要求1所述的提升印表機並行口乾擾適應性和數據速率的方法,其特徵在於控制線的數位化幹擾防護模塊和數據線的數位化幹擾防護模塊共用一個參數寄存器。
5.如權利要求1所述的提升印表機並行口乾擾適應性和數據速率的方法,其特徵在於計數閥值X滿足Xmin=<X<Xmax,Xmin=Round(Tnoise/Tclock),Xmax=Round(Tsignal/Tclock-2),
6.如權利要求1所述的提升印表機並行口乾擾適應性和數據速率的方法,其特徵在於控制線輸入通過RC低通濾波網絡和schmitt整形器與外部接口隔離;數據線輸入通過雙向總線收發器隔離。
7.一種提升印表機並行口乾擾適應性和數據速率的系統,包括IEEE1284協議模塊,印表機控制器模塊,其特徵在於印表機並行接口的所有控制線和數據線迴路中加入數位化幹擾防護模塊;所述控制線的數位化幹擾防護模塊包括參數寄存器A,輸入比較器A,延遲計數器A,延遲比較器A,取樣鎖存器A、取樣鎖存器C;所述數據線的數位化幹擾防護模塊包括參數寄存器B,輸入比較器B,延遲計數器B,延遲比較器B,取樣鎖存器B、取樣鎖存器D。
8.如權利要求7所述的提升印表機並行口乾擾適應性和數據速率的系統,其特徵在於控制線的數位化幹擾防護模塊還包括取樣脈衝器C,數據線的數位化幹擾防護模塊還包括輸出比較器B。
9.如權利要求7所述的提升印表機並行口乾擾適應性和數據速率的系統,其特徵在於參數寄存器A和B為同一個參數寄存器。
10.如權利要求7所述的提升印表機並行口乾擾適應性和數據速率的系統,其特徵在於控制線輸入通過RC低通濾波網絡和schmitt整形器與外部接口隔離;數據線輸入通過雙向總線收發器隔離。
全文摘要
本發明涉及一種提升印表機並行口乾擾適應性和數據速率的方法和系統,在印表機並行接口的所有控制線和數據線迴路中加入數位化幹擾防護模塊,在通過數位化幹擾防護模塊去除幹擾脈衝後,再輸出給後繼的IEEE1284邏輯模塊。在保持較高數據傳輸速率前提條件下,可有效抑制控制線和數據線上出現的單脈衝幹擾和序列脈衝幹擾;具有自動動態調整數據速率的能力;在印表機並行口的抗幹擾能力和數據速率之間確立了一種準定量的關係式和簡單可行的數位化轉換途徑。可廣泛應用於印表機控制領域。
文檔編號G06F3/12GK1487405SQ0314885
公開日2004年4月7日 申請日期2003年6月13日 優先權日2003年6月13日
發明者陳文先, 徐忠良 申請人:上海北大方正科技電腦系統有限公司