專利名稱::抗雜訊干擾的系統(tǒng)及其方法
技術(shù)領(lǐng)域:
:本發(fā)明是關(guān)于一種抗雜訊干擾的方法,尤其是應(yīng)用于數(shù)字電路當中,譬如應(yīng)用于電腦中。
背景技術(shù):
:一般電子產(chǎn)品如電腦內(nèi)部的電子訊號常常會產(chǎn)生雜訊(signalbounce)問題,為了確保訊號的正確性,一種處理的方式是針對可能出現(xiàn)雜訊的狀態(tài)時予以延遲處理,譬如當數(shù)字訊號改變時(如從1改變?yōu)?時)即是雜訊產(chǎn)生可能的時機。請參見圖1,在時間為t0與t1時,所接受到的數(shù)字訊號D0及D1分別為1;到了t2時,D2=0,此時為訊號改變的狀態(tài);因此在t3,t4的時間點這時不管D3或D4的訊號為何,都先假設(shè)所接收到的訊號仍為D1,等到t5的時間點若D5仍為0,則確認訊號是由1改變?yōu)?。此種處理雜訊的方法通常應(yīng)用于遵循通用輸入/輸出(GPIO,GeneralPurposeInputOutput)的較慢速的訊號,但亦可應(yīng)用于高速訊號,如電腦的中央處理器與南橋晶片之間的訊號傳遞。請參見圖2,顯示了三個接腳P1、P2、P3的訊號改變時間點的示意圖,圖2顯示上述傳統(tǒng)的作法,當訊號改變時,會一段延遲時間的忽略時段,過了一段延遲時間后再進行確認訊號。圖2顯示三個接腳的訊號改變時間點常常是不一致的,因此傳統(tǒng)的作法必須分別針對接腳P1、P2、P3進行延遲時間的計數(shù),因此會占用計數(shù)器(timer)的硬體資源以及軟體計數(shù)的資源。在如筆記型電腦中,遵循GPIO的接腳有上百個,因此筆記型電腦中必須耗費資源針對上百個GPIO接腳進行延遲時間的計數(shù);且當每次改設(shè)計時,每增加一個GPIO接腳就會增加不少的程序碼,不但沒有效率,而且常容易出錯。
發(fā)明內(nèi)容本發(fā)明的主要目的是要解決傳統(tǒng)的缺點,提供一種抗雜訊干擾的系統(tǒng)及其方法,使得每次改設(shè)計時能夠減少程序碼的撰寫。本發(fā)明的另一主要目的是提供一種抗雜訊干擾的系統(tǒng)及其方法,可同步針對數(shù)個接腳進行訊號的確認。為達成上述的目的,本發(fā)明的抗雜訊干擾的方法,是用于數(shù)字晶片避免因接收的訊號出現(xiàn)雜訊時的誤判,該方法包括下列步驟步驟A以數(shù)字邏輯運算的方式檢查目前所接收的目前訊號以及n個從前訊號是否相同一致,其中n個從前訊號是指接收到目前訊號之前的第1個到第n個訊號,且1≤n≤5,在實施例中n=2,意即共采用三個Samples(樣本)。步驟B根據(jù)前一次確認后的訊號以及步驟A以數(shù)字邏輯運算的方式?jīng)Q定一新的確認后的訊號,其中方式如下狀況一當步驟A的結(jié)果為目前所接收的目前訊號以及n個從前訊號都相同一致,則新的確認后的訊號設(shè)定為目前訊號。以及狀況二當步驟A的結(jié)果為目前所接收的目前訊號以及n個從前訊號不相同一致,則新的確認后的訊號設(shè)定為前一次確認后的訊號。為達成步驟A與步驟B,并不一定需要有判斷式(IF指令),譬如在實施例中,針對目前所接收的目前訊號以及n個從前訊號進行AND以及OR邏輯運算等步驟亦可完成步驟A與步驟B。本發(fā)明的效果本發(fā)明的抗雜訊干擾的系統(tǒng)及其方法使得每次改設(shè)計時能夠減少程序碼的撰寫;可同步針對數(shù)個接腳進行訊號的確認;本發(fā)明使數(shù)字晶片避免因接收的訊號出現(xiàn)雜訊時的誤判。本發(fā)明無論就目的、手段及功效,均顯示其區(qū)別于現(xiàn)有技術(shù)的特征,對社會有益。為進一步說明本發(fā)明的上述目的、結(jié)構(gòu)特點和效果,以下將結(jié)合附圖對本發(fā)明進行詳細的描述。圖1是現(xiàn)有技術(shù)處理訊號的示意圖。圖2是現(xiàn)有技術(shù)處理三個接腳時,需耗費資源的示意圖。圖3是顯示一電腦外觀圖。圖4是電腦內(nèi)部的抗雜訊干擾的系統(tǒng)的第一實施例。圖5是本發(fā)明關(guān)于抗雜訊干擾的流程圖。圖6是輔助解釋本發(fā)明抗雜訊干擾的邏輯運算示意圖。圖7是輔助解釋本發(fā)明抗雜訊干擾的邏輯運算示意圖。圖8是本發(fā)明的抗雜訊干擾的系統(tǒng)的第二實施例。圖9是本發(fā)明的抗雜訊干擾的系統(tǒng)的第三實施例。圖10是輔助解釋本發(fā)明抗雜訊干擾可針對數(shù)接腳進行邏輯運算的示意圖。附圖中元件代表符號的說明電腦10屏幕15抗雜訊干擾的系統(tǒng)20連線21訊號產(chǎn)生元件30,30a,30b,30c鍵盤裝置31南橋晶片32按鈕33數(shù)字晶片40鍵盤控制晶片具體實施方式下面結(jié)合實施例的附圖,對本發(fā)明的抗雜訊干擾的系統(tǒng)及其方法的實施方式進行詳細說明。請參考圖3,一般電腦10具有屏幕15、鍵盤裝置31、一些功能性按鈕33,以及主機板(圖未示)、記憶體(圖未示)等等。圖4顯示電腦10內(nèi)部的抗雜訊干擾的系統(tǒng)20的第一實施例,抗雜訊干擾的系統(tǒng)20包括一訊號產(chǎn)生元件30以及一數(shù)字晶片40。訊號產(chǎn)生元件30如鍵盤裝置31與按鈕33等是與至少一數(shù)字晶片40(如鍵盤控制晶片41)電性連接(基本上為GPIO的接腳)。請參考圖5,是本發(fā)明關(guān)于抗雜訊干擾的流程圖,此流程圖針對訊號產(chǎn)生元件30與數(shù)字晶片40其中之一的連線21進行訊號處理的說明。圖5流程圖內(nèi)所謂的Sample(樣本)代表訊號產(chǎn)生元件30所產(chǎn)生的訊號,Sample1代表第1個訊號,Sample2代表第2個訊號,以此類推。DebounceHigh、DebounceLow以及StableSignal為邏輯運算中的變數(shù),其中StableSignal代表的意義為數(shù)字晶片40確認后的訊號,亦即數(shù)字晶片40認為穩(wěn)定的訊號,以下請一并參考圖6及圖7以更詳細了解本發(fā)明的技術(shù)。步驟301針對目前所接收的目前訊號以及n個從前訊號進行AND邏輯運算,在本實施例中,n=2,亦即取3個Sample,公式為DebounceHigh=(Sample1)AND(Sample2)AND(Sample3)請參考圖6,譬如針對Sample1,Sample2,Sample3運算,由于Sample1,Sample2,Sample3都為”1”,因此DebounceHigh(3)=1。又譬如針對Sample2,Sample3,Sample4運算,由于Sample4=0,所以DebounceHigh(4)=0。步驟301的意義為只有當所有Sample都為”1”,DebounceHigh才為”1”,其他狀況DebounceHigh為”0”。需注意的是,上述n可以為其他數(shù)目,但n最好在1到5之間。譬如當n=1時,公式為DebounceHigh=(Sample1)AND(Sample2)步驟302針對目前所接收的目前訊號以及n個從前訊號進行OR邏輯運算,公式為DebounceLow=(Sample1)OR(Sample2)OR(Sample3)請參考圖6,譬如針對Sample1,Sample2,Sample3運算,由于Sample1,Sample2,Sample3都為”1”,因此DebounceLow(3)=1。又譬如針對Sample4,Sample5,Sample6運算,由于Sample4,Sample5,Sample6者為”0”,所以DebounceLow(6)=0。步驟302的意義為只有當所有Sample都為”0”,DebounceLow才為”0”,其他狀況DebounceLow為”1”。步驟303根據(jù)前一次確認后的訊號以及步驟301的結(jié)果進行OR數(shù)字邏輯運算,接著再與步驟302的結(jié)果進行AND數(shù)字邏輯運算,公式為StableSignal=(StableSignalORDebounceHigh)AND(DebounceLow)請參考圖6,譬如想計算StableSignal(3)為多少?假設(shè)StableSignal(2)=1時(意即前一次確認后的訊號為”1”),此時StableSignal(3)=(1OR1)AND(1)=1,亦即新的確認后的訊號為1。又譬如StableSignal(6)=(1OR0)AND(0)=0,意即前一次確認后的訊號為”1”,而新的確認后的訊號為0。以上步驟的公式的背后是有其意義的,現(xiàn)說明如下其實步驟301及步驟302的代表意義為以數(shù)字邏輯運算的方式檢查目前所接收的目前訊號以及n個從前訊號是否相同一致。DebounceHigh主要在檢查是否所有的Sample都為1,而DebounceLow主要在檢查是否所有的Sample都為0。當所有的Sample都為1(訊號相同一致的狀況),DebounceHigh=1,DebounceLow=1;當所有的Sample都為0(訊號相同一致的狀況),DebounceHigh=0,DebounceLow=0。當訊號不一致的狀況(有的Sample為”1”,有的Sample為”0”),此時DebounceHigh=0,DebounceLow=1。而步驟303的意義則是根據(jù)前一次確認后的訊號以及步驟301及步驟302的結(jié)果決定新的確認后的訊號,此時分為兩種狀況第一種狀況步驟301及步驟302找出訊號相同一致的狀況,則新的確認后的訊號設(shè)定為目前訊號,亦即采用訊號相同一致的訊號,而不管前一次確認后的訊號。譬如當所有的Sample都為1時(DebounceHigh=1,DebounceLow=1)StableSignal=(StableSignalORDebounceHigh)AND(DebounceLow)=(StableSignalOR1)AND1=1此時不管StableSignal(前一次確認后的訊號)為”1”還是”0”,新的確認后的訊號為”1”。當所有的Sample都為0時(DebounceHigh=0,DebounceLow=0)StableSignal=(StableSignalOR0)AND0=0此時不管StableSignal(前一次確認后的訊號)為”1”還是”0”,新的確認后的訊號為”0”。第二種狀況步驟301及步驟302找出訊號不一致的狀況,此時新的確認后的訊號設(shè)定為前一次確認后的訊號。StableSignal=(StableSignalORDebounceHigh)AND(DebounceLow)=(StableSignalOR0)AND1=StableSignal(注,此處的訊號不一致,是以DebounceHigh=0,DebounceLow=1為例作說明)又,請參考圖6,當訊號不一致時,Sample2=1,Sample3=1,Sample4=0StableSignal(4)=StableSignal(3)=1請參考圖7,當訊號不一致時,Sample2=0,Sample3=0,Sample4=1StableSignal(4)=StableSignal(3)=0請見圖8,是本發(fā)明的抗雜訊干擾的系統(tǒng)的第二實施例,與第一實施例主要不同處在于訊號產(chǎn)生元件不只一個,譬如有三個訊號產(chǎn)生元件30a,30b,30c都接到同一數(shù)字晶片40。請見圖9,是本發(fā)明的抗雜訊干擾的系統(tǒng)的第三實施例,與第一實施例主要不同處在于訊號產(chǎn)生元件30可為南橋晶片32(北橋晶片亦可),亦即非GPIO的接腳亦可應(yīng)用本發(fā)明的技術(shù)。圖10是輔助解釋本發(fā)明抗雜訊干擾可針對數(shù)接腳進行邏輯運算的示意圖,譬如處理p1-p8八個接腳,而每一接腳計算StableSignal時可同步運算。譬如8位系統(tǒng)則一次可計算8個接腳,而16位系統(tǒng)則一次可計算16個接腳,此為本發(fā)明技術(shù)的另外一個優(yōu)點,而不是像圖2(傳統(tǒng)的方法)所示,每一個接腳的確認訊號需分別確認。上述實施例中所述的邏輯運算,可以由數(shù)字晶片40執(zhí)行的。本發(fā)明的方法重點在于檢查最近幾個接收的目前訊號是否相同一致,若一致則采用穩(wěn)定的訊號,若不一致則采用前一次確認后的訊號。應(yīng)注意的是,上述諸多實施例僅是為了便于說明而舉例而已,譬如可以有其他公式或流程圖能表達本發(fā)明的技術(shù),如當DebounceHigh=1時,根本不用再去計算DebounceLow等于多少,而直接將StableSignal設(shè)定為”1”;又如DebounceLow=0時,可直接將StableSignal設(shè)定為”0”,當然加入判斷式(IF指令)實際上會比較沒有效率,因此本發(fā)明的實施例不采用具有判斷式的實施例。本
技術(shù)領(lǐng)域:
中的普通技術(shù)人員應(yīng)當認識到,以上的實施例僅是用來說明本發(fā)明,而并非用作為對本發(fā)明的限定,只要在本發(fā)明的實質(zhì)精神范圍內(nèi),對以上所述實施例的變化、變型都將落在本發(fā)明權(quán)利要求書的范圍內(nèi)。權(quán)利要求1.一種抗雜訊干擾的方法,是用于數(shù)字晶片避免因接收的訊號出現(xiàn)雜訊時的誤判,該方法的特征在于包括下列步驟步驟A以數(shù)字邏輯運算的方式檢查目前所接收的目前訊號以及n個從前訊號是否相同一致,其中n個從前訊號是指接收到目前訊號之前的第1個到第n個訊號,且1≤n≤5;步驟B根據(jù)前一次確認后的訊號以及步驟A以數(shù)字邏輯運算的方式?jīng)Q定一新的確認后的訊號,其中方式如下狀況一當所述步驟A的結(jié)果為目前所接收的目前訊號以及n個從前訊號都相同一致,則新的確認后的訊號設(shè)定為目前訊號;以及狀況二當所述步驟A的結(jié)果為目前所接收的目前訊號以及n個從前訊號不相同一致,則新的確認后的訊號設(shè)定為前一次確認后的訊號。2.如權(quán)利要求1所述的抗雜訊干擾的方法,其特征在于所述步驟A的數(shù)字邏輯運算的方式包括以下兩個數(shù)字邏輯運算邏輯運算A1針對目前所接收的目前訊號以及n個從前訊號進行AND邏輯運算,以及邏輯運算A2針對目前所接收的目前訊號以及n個從前訊號進行OR邏輯運算。3.如權(quán)利要求2所述的抗雜訊干擾的方法,其特征在于所述步驟B的數(shù)字邏輯運算的方式包括邏輯運算B1針對前一次確認后的訊號以及邏輯運算A1的結(jié)果進行OR邏輯運算,以及邏輯運算B2針對邏輯運算B1的結(jié)果以及邏輯運算A2的結(jié)果進行AND邏輯運算。4.一種抗雜訊干擾的系統(tǒng),其特征在于包括至少一數(shù)字晶片;至少一訊號產(chǎn)生元件,其中該至少一訊號產(chǎn)生元件是與該至少一數(shù)字晶片電性連接并傳送訊號至該至少一數(shù)字晶片;其特征在于該至少一數(shù)字晶片為避免因接收的訊號出現(xiàn)雜訊時的誤判而采用一抗雜訊干擾的方法,該方法包括下列步驟步驟A以數(shù)字邏輯運算的方式檢查目前所接收的目前訊號以及n個從前訊號是否相同一致,其中n個從前訊號是指接收到目前訊號之前的第1個到第n個訊號,且1≤n≤5;步驟B根據(jù)前一次確認后的訊號以及步驟A以數(shù)字邏輯運算的方式?jīng)Q定一新的確認后的訊號,其中方式如下狀況一當所述步驟A的結(jié)果為目前所接收的目前訊號以及n個從前訊號都相同一致,則新的確認后的訊號設(shè)定為目前訊號;以及狀況二當所述步驟A的結(jié)果為目前所接收的目前訊號以及n個從前訊號不相同一致,則新的確認后的訊號設(shè)定為前一次確認后的訊號。5.如權(quán)利要求4所述的抗雜訊干擾的系統(tǒng),其特征在于所述步驟A的數(shù)字邏輯運算的方式包括以下兩個數(shù)字邏輯運算邏輯運算A1針對目前所接收的目前訊號以及n個從前訊號進行AND邏輯運算,以及邏輯運算A2針對目前所接收的目前訊號以及n個從前訊號進行OR邏輯運算。6.如權(quán)利要求5所述的抗雜訊干擾的系統(tǒng),其特征在于步驟B的數(shù)字邏輯運算的方式包括邏輯運算B1針對前一次確認后的訊號以及邏輯運算A1的結(jié)果進行OR邏輯運算,以及邏輯運算B2針對邏輯運算B1的結(jié)果以及邏輯運算A2的結(jié)果進行AND邏輯運算。7.一種電腦,包括數(shù)個數(shù)字晶片以及數(shù)個訊號產(chǎn)生元件,其中至少一訊號產(chǎn)生元件與至少一數(shù)字晶片電性連接并傳送訊號至該至少一數(shù)字晶片,其特征在于包括該至少一數(shù)字晶片為避免因接收的訊號出現(xiàn)雜訊時的誤判而采用一抗雜訊干擾的方法,該方法包括下列步驟步驟A以數(shù)字邏輯運算的方式檢查目前所接收的目前訊號以及n個從前訊號是否相同一致,其中n個從前訊號是指接收到目前訊號之前的第1個到第n個訊號,且1≤n≤5;步驟B根據(jù)前一次確認后的訊號以及步驟A以數(shù)字邏輯運算的方式?jīng)Q定一新的確認后的訊號,其中方式如下狀況一當所述步驟A的結(jié)果為目前所接收的目前訊號以及n個從前訊號都相同一致,則新的確認后的訊號設(shè)定為目前訊號;以及狀況二當所述步驟A的結(jié)果為目前所接收的目前訊號以及n個從前訊號不相同一致,則新的確認后的訊號設(shè)定為前一次確認后的訊號。8.如權(quán)利要求7所述的電腦,其特征在于所述步驟A的數(shù)字邏輯運算的方式包括以下兩個數(shù)字邏輯運算邏輯運算A1針對目前所接收的目前訊號以及n個從前訊號進行AND邏輯運算,以及邏輯運算A2針對目前所接收的目前訊號以及n個從前訊號進行OR邏輯運算。9.如權(quán)利要求8所述的電腦,其特征在于所述步驟B的數(shù)字邏輯運算的方式包括邏輯運算B1針對前一次確認后的訊號以及邏輯運算A1的結(jié)果進行OR邏輯運算,以及邏輯運算B2針對邏輯運算B1的結(jié)果以及邏輯運算A2的結(jié)果進行AND邏輯運算。10.如權(quán)利要求7所述的電腦,其特征在于該至少一訊號產(chǎn)生元件為鍵盤裝置,而該至少一數(shù)字晶片為鍵盤控制晶片。全文摘要一種抗雜訊干擾的系統(tǒng)及其方法,是用于數(shù)字晶片避免因接收的訊號出現(xiàn)雜訊時的誤判,包括步驟A以數(shù)字邏輯運算的方式檢查目前所接收的目前訊號以及n個從前訊號是否相同一致,其中n個從前訊號是指接收到目前訊號之前的第1個到第n個訊號,且1≤n≤5;步驟B根據(jù)前一次確認后的訊號以及步驟A以數(shù)字邏輯運算的方式?jīng)Q定一新的確認后的訊號,其中方式如下狀況一當步驟A的結(jié)果為目前所接收的目前訊號以及n個從前訊號都相同一致,則新的確認后的訊號設(shè)定為目前訊號;以及狀況二當步驟A的結(jié)果為目前所接收的目前訊號以及n個從前訊號不相同一致,則新的確認后的訊號設(shè)定為前一次確認后的訊號。文檔編號G06F1/00GK1920732SQ20051009594公開日2007年2月28日申請日期2005年8月24日優(yōu)先權(quán)日2005年8月24日發(fā)明者林同聲申請人:緯創(chuàng)資通股份有限公司