專利名稱:具有停機(jī)方式的時鐘發(fā)生器和時鐘發(fā)生方法
技術(shù)領(lǐng)域:
本發(fā)明涉及時鐘驅(qū)動的電子系統(tǒng),尤其涉及用于減少時鐘驅(qū)動電子系統(tǒng)的功耗的電路。
將功耗降至最少是許多電路設(shè)計(jì)的一個重要目標(biāo)。要求降低功耗通常有許多原因,對于電池供電的電路來說,原因之一是要延長電池的壽命。在電池供電的電路中,電子器件功耗的減少通??赏娱L為電路供電的電池的壽命。延長的電池壽命在許多應(yīng)用中是有益的。例如,對于無繩電話的由電池供電的電路,延長后的電池壽命可允許有較長的閑置時間,即各次使用之間的時間間隔。
眾所周知,在電力領(lǐng)域中,通過采用一系列不同的供電方式,其中某些方式允許系統(tǒng)中的一些功能塊停用,一個由眾多功能塊構(gòu)成的電子系統(tǒng)的功耗就可得到控制。這些供電方式可以包括所有功能塊都在運(yùn)行的全運(yùn)行方式,僅有最低限定的操作所必需的功能塊被啟動的部分運(yùn)行方式,和除了辨識將迫使系統(tǒng)回到運(yùn)行方式的關(guān)鍵事件所需要的功能塊之外余者皆停電方式。在停電方式下消耗功率最少。
在電子系統(tǒng)中保存電力的一種已知方法,是在將電子系統(tǒng)中決定功能塊時序的內(nèi)部時鐘信號禁止期間實(shí)行停電方式。熟悉本技術(shù)領(lǐng)域的人員還知道一種方法,是在停電方式下,停用產(chǎn)生內(nèi)部時鐘信號的振蕩器或時鐘發(fā)生電路。時鐘信號失效后,功能塊就被停用,功率減至最少。
停電方式的進(jìn)入可置于軟件控制之下。軟件程序?qū)νk姺绞降倪x擇使得系統(tǒng)控制器能對某一預(yù)定數(shù)量的系統(tǒng)時鐘周期開始作內(nèi)部的向下計(jì)數(shù),在計(jì)數(shù)完后,振蕩器或時鐘發(fā)生電路被停用。微處理器可利用這一向下計(jì)數(shù)的時間在時鐘停止之前為停電方式作好準(zhǔn)備。通常通過啟動一內(nèi)部計(jì)數(shù)器來完成向下計(jì)數(shù)。例如,可由-8位計(jì)數(shù)器執(zhí)行256個時鐘周期的向下計(jì)數(shù)。在向下計(jì)數(shù)過程中如果發(fā)生中斷,向下計(jì)數(shù)即被取消。
通過建立各種狀態(tài),例如進(jìn)行硬件復(fù)位和其它類型的中斷,可從停電方式退出。
盡管停電方式是保存電力的有效手段,但在此之前它還有很多缺點(diǎn)和不足。缺陷之一是,為提供從提出進(jìn)入停電方式的請求到停用振蕩器之間的延遲而采用的計(jì)數(shù)器會引起成本增加。
利用停電方式保存電力的另一個缺陷是,當(dāng)振蕩器開始啟動時所產(chǎn)生的不穩(wěn)定的時鐘脈沖可能引起出錯。
此外,由于停電方式的進(jìn)入可由軟件控制,因而以前也遇到過這樣的問題,即,因軟件錯誤或噪聲導(dǎo)致裝置偶然地進(jìn)入停電方式,結(jié)果使大多數(shù)功能塊意外地停用。
與采用停電方式有關(guān)的另一個問題是,裝置可能過早地進(jìn)入停電方式,導(dǎo)致沒有足夠的時間來完成必需的內(nèi)務(wù)操作。這種過早的進(jìn)入可能是由一個不同的軟件程序先前發(fā)出的進(jìn)入停電方式的請求所引起的。
所遇到的再一個問題是進(jìn)入停電方式的裝置可能不具備任何退出停電方式并返回運(yùn)行方式的手段。例如,在進(jìn)入停電方式之前,若程序未能對使處理器退出停電方式的中斷信號開放中斷,就會存在這種可能性。
本發(fā)明提供一種時鐘發(fā)生器,它能置于停機(jī)方式下,在該方式下時鐘發(fā)生器不產(chǎn)生任何時鐘信號,從而克服了已有技術(shù)的不足和缺陷。本發(fā)明響應(yīng)進(jìn)入停機(jī)方式的請求而禁止時鐘脈沖輸出,并且響應(yīng)退出停機(jī)方式的請求而恢復(fù)時鐘脈沖輸出,從而可用于降低功耗。在停機(jī)方式下停用振蕩器,而在運(yùn)行方式下啟動振蕩器,也可以減少功耗。
時鐘發(fā)生器包括用于接收停機(jī)請求信號的結(jié)構(gòu),用于響應(yīng)停機(jī)請求信號而將時鐘發(fā)生器置位于停機(jī)方式下的結(jié)構(gòu)、用于將上述置位結(jié)構(gòu)的動作在接收結(jié)構(gòu)接收到停機(jī)請求信號之后延遲某一預(yù)定的最小時間的結(jié)構(gòu)。在本發(fā)明的實(shí)施例中,延遲結(jié)構(gòu)可包括延遲進(jìn)入停機(jī)的定時器,它在經(jīng)過預(yù)定的最小時間之后產(chǎn)生一個停止振蕩信號,而置位結(jié)構(gòu)可包括一個振蕩器,它在確證有振蕩停止信號后停止振蕩。停機(jī)延遲進(jìn)入定時器可以由脈沖驅(qū)動。預(yù)定的最小時間可以由兩個脈沖之間的時間值限定。這些脈沖可從一個不變的時鐘信號源產(chǎn)生。
在本發(fā)明的某些實(shí)施例中,時鐘發(fā)生器可以包括用于發(fā)生至少一個時鐘信號輸出的結(jié)構(gòu)、用于在接收到停止驅(qū)動信號后停止該發(fā)生結(jié)構(gòu)的結(jié)構(gòu)、用于接收停機(jī)請求信號的結(jié)構(gòu)、和用于確證所接收到停機(jī)請求信號符合預(yù)定的規(guī)約要求的結(jié)構(gòu)。該用于確證的結(jié)構(gòu)可以包括至少兩個寄存器,在確定所接收到的停機(jī)請求信號符合預(yù)定的規(guī)約要求時產(chǎn)生停止驅(qū)動信號;該信號由停止結(jié)構(gòu)接收。在本發(fā)明的一些實(shí)施例中,確證結(jié)構(gòu)還可包括能夠檢測出對至少兩個的寄存器作寫入訪問的聯(lián)鎖機(jī)構(gòu)。至少兩個的寄存器中可以有一個是偽寄存器。聯(lián)鎖機(jī)構(gòu)可以防止對至少兩個的寄存器中的一個作寫入訪問,除非預(yù)定的規(guī)約要求得到滿足。預(yù)定的規(guī)約要求可以是在預(yù)定的次序下對至少兩個的寄存器寫入預(yù)定的次數(shù)。
本發(fā)明的時鐘發(fā)生器可以提供至少一個時鐘信號輸出,并包括用于接收停機(jī)請求信號的結(jié)構(gòu)、用于產(chǎn)生時鐘信號的結(jié)構(gòu)(該結(jié)構(gòu)在確證有退出停機(jī)請求信號后激活)、用于產(chǎn)生由時鐘信號源導(dǎo)出的至少一個時鐘信號輸出的結(jié)構(gòu)、和用于將至少一個的時鐘信號的產(chǎn)生時間延遲到從確證有退出停機(jī)請求的信號起再經(jīng)過一段計(jì)數(shù)長度的時間的結(jié)構(gòu)。在本發(fā)明的某些實(shí)施例中,用于產(chǎn)生時鐘信號的結(jié)構(gòu)可以包括一個振蕩器。而用于至少輸出一個時鐘信號的結(jié)構(gòu)可以包括一個時鐘分頻器。用于延遲的結(jié)構(gòu)可包括一個計(jì)數(shù)器,它在退出停機(jī)請求信號確證后初始化,并在一個計(jì)數(shù)長度的時間之后產(chǎn)生時鐘有效信號。時鐘有效信號可傳達(dá)給分頻器,該分頻器在接收到信號后啟動。
本發(fā)明還提供一種用于控制至少輸出一個時鐘信號的系統(tǒng),它包括一個時鐘發(fā)生電路和一個中斷旁路電路。時鐘發(fā)生電路可以包括用于接收停止時鐘的請求信號的結(jié)構(gòu)、用于在接收到停止時鐘的請求信號起預(yù)定長時間之后使至少有一個的時鐘信號停止輸出的結(jié)構(gòu)、用于接收啟動時鐘的請求信號的結(jié)構(gòu)和用于在接收到啟動時鐘的請求信號之后開始輸出至少一個的時鐘信號的結(jié)構(gòu)。中斷旁路電路可以包括用于響應(yīng)即使受到屏蔽也還可能產(chǎn)生的至少一個的中斷請求信號,產(chǎn)生啟動時鐘的請求信號的結(jié)構(gòu)。
本發(fā)明還提供一種用于控制至少輸出一個時鐘信號的系統(tǒng),它包括用于接收停止時鐘請求信號的結(jié)構(gòu)、用于接收啟動時鐘請求信號的結(jié)構(gòu)和用于在接收到停止時鐘請求信號起預(yù)定長時間之后停止至少一個的時鐘信號輸出的結(jié)構(gòu)。該用于停止至少一個的時鐘信號輸出的結(jié)構(gòu)可以包括一個在接收到停止時鐘請求信號之后和在預(yù)定長時間結(jié)束之前若又接收到啟動時鐘請求信號就不停止至少一個的時鐘信號輸出的結(jié)構(gòu)。
此外,本發(fā)明還提供一種用于控制至少一個的時鐘信號輸出的方法。該方法包括下列步驟接收一個停止時鐘請求信號;在接收到停止時鐘請求信號起預(yù)定長時間之后停止至少一個的時鐘信號輸出;接收啟動時鐘的請求信號;在接收到啟動時鐘請求信號之后開始至少一個的時鐘信號輸出。在本發(fā)明的某些實(shí)施例中,開始至少一個的時鐘信號輸出的步驟包括下列步驟開始第一個時鐘信號;接著上一步驟在經(jīng)過一段延遲之后開始至少為一個的時鐘信號輸出。該至少為一個的時鐘信號輸出可以從第一個時鐘信號得到。
停止至少為一個的時鐘信號輸出的步驟可包括下列步驟確證停止時鐘請求信號滿足預(yù)定規(guī)約要求;僅當(dāng)停止時鐘請求信號滿足預(yù)定規(guī)約要求時,才處理停止時鐘的請求信號。
根據(jù)本發(fā)明的教導(dǎo),停止至少為一個的時鐘信號輸出的步驟可包括在停止時鐘請求信號收到之后及預(yù)定長時間結(jié)束之前若收到啟動時鐘請求信號就不停止至少為一個的時鐘信號輸出的步驟。
本發(fā)明的某些實(shí)施例中,停止至少為一個的時鐘信號輸出的步驟可包括從停止時鐘請求信號最近一次被確認(rèn)起在預(yù)定長時間之后停止至少為一個的時鐘信號輸出的步驟。
根據(jù)本發(fā)明的教導(dǎo),用于控制至少一個時鐘信號輸出的方法還可包括因響應(yīng)至少一個中斷請求信號而產(chǎn)生啟動時鐘請求信號的步驟,即使至少為一個的中斷請求信號遭屏蔽,該啟動請求信號也會發(fā)生。
因此,本發(fā)明目的之一是提供具有停機(jī)方式的時鐘發(fā)生器,該方式可用于節(jié)約時鐘發(fā)生器工作于其中的電子系統(tǒng)所消耗的功率。
本發(fā)明另一目的是提供防止偶然進(jìn)入停機(jī)方式的能力。
本發(fā)明再一目的是提供在所有中斷請求信號被屏蔽時退出停機(jī)方式的能力。
本發(fā)明的又一目的在于提供在最近一次請求進(jìn)入停機(jī)方式后允許用最小的時間來為進(jìn)入停機(jī)方式作準(zhǔn)備的能力。
從下文結(jié)合附圖對本發(fā)明作出的詳細(xì)說明中,可以清楚地看到本發(fā)明的其它目的、優(yōu)點(diǎn)和新特點(diǎn)。
圖1是一個電子系統(tǒng)的框圖,該系統(tǒng)采用了基于本發(fā)明教導(dǎo)的時鐘發(fā)生器的一個實(shí)施例;
圖2示出圖1所述時鐘發(fā)生器的時序;
圖3是圖1所示時鐘發(fā)生器進(jìn)入停機(jī)方式的狀態(tài)圖;
圖4是基于本發(fā)明教導(dǎo)的中斷啟動旁路電路的詳細(xì)框圖;
圖5是一電子系統(tǒng)的框圖,其中采用了基于本發(fā)明教導(dǎo)的時鐘發(fā)生器和中斷旁路電路,以及一個微控制器;
圖6(由圖6a和6b組成)是單塊集成電路的框圖,其中采用了基于本發(fā)明教導(dǎo)的時鐘發(fā)生器和中斷旁路電路,和一微控制器;
圖7是無繩電話機(jī)送受話器的框圖,其中采用了一塊包括有基于本發(fā)明教導(dǎo)的時鐘發(fā)生器及中斷旁路電路的集成電路。
圖8是無繩電話機(jī)機(jī)體單元的框圖,其中采用了一塊集成電路,該電路包括基于本發(fā)明教導(dǎo)的時鐘發(fā)生器和中斷旁路電路。
現(xiàn)在參見附圖,圖1示出一個電子系統(tǒng)2,它采用了基于本發(fā)明教導(dǎo)的具有停機(jī)方式的時鐘發(fā)生器4。該電子系統(tǒng)2可包括一個或多個模塊6,每一模塊由時鐘發(fā)生器4所產(chǎn)生的一個模塊時鐘信號8定序。時鐘發(fā)生器4可工作于運(yùn)行方式下,或依靠軟件編程進(jìn)入停機(jī)方式。將時鐘發(fā)生器4編程進(jìn)入停機(jī)方式的能力使得有時鐘發(fā)生器4工作于其中的電子系統(tǒng)2功耗最小。在運(yùn)行方式下,時鐘發(fā)生器4輸出多個模塊時鐘信號8,用于決定電子系統(tǒng)2中各個模塊6的時序。在停機(jī)方式下,時鐘發(fā)生器4停止所有模塊時鐘信號8,有效地使由模塊時鐘信號定序的所有模塊6停止工作,從而減少這些模塊消耗的功率。由此導(dǎo)出模塊時鐘信號8的振蕩器10也停止了工作,進(jìn)一步實(shí)現(xiàn)了停機(jī)方式下的功耗降低。
在較佳實(shí)施例中,時鐘發(fā)生器4包括圖1所示的6個功能塊振蕩器10、停機(jī)控制電路12、停機(jī)延遲進(jìn)入定時器14、分頻器16、時鐘有效延遲定時器18和寄存器訪問電路20。
振蕩器10在線路22上給出一個輸出時鐘信號CLK,傳送至分頻器16和時鐘有效延遲定時器18。振蕩器10依靠半導(dǎo)體技術(shù)中典型的振蕩電路來發(fā)生CLK。例如,振蕩器10可通過外部線路XTAL1和XTAL2連至外部并聯(lián)共振晶體40,如圖1所示,或者通過外部線路XTAL2連至一外部時鐘源(未示出)。
在本發(fā)明的一個實(shí)施例中,振蕩器10在運(yùn)行方式下啟動,產(chǎn)生CLK信號,而在停機(jī)方式下停用,不產(chǎn)生CLK信號。在停機(jī)方式下,響應(yīng)在線路24上從停機(jī)延遲進(jìn)入定時器14傳來的“停振”信號,振蕩器停止工作。一旦處于停機(jī)方式,在確證線路26上從停機(jī)控制電路12傳來的“復(fù)振”信號后,振蕩器重新起動。
如前所述,振蕩器10運(yùn)行或停機(jī)方式的設(shè)置是通過從停機(jī)控制電路12和停機(jī)延遲進(jìn)入定時器14接收到的控制信號實(shí)現(xiàn)的。停機(jī)控制電路12或者響應(yīng)在線路28上接收到的信號SDEXIT,或者響應(yīng)在線路30上接收到的信號SDENTR,對兩者的確證分別表示退出停機(jī)或進(jìn)入停機(jī)的兩種請求。停機(jī)控制電路12響應(yīng)這些信號而產(chǎn)生控制信號,控制信號包括在線路32上輸出給停機(jī)延遲進(jìn)入定時器14的“定時開始”信號,和在線路26上傳送給振蕩器10和時鐘有效延遲定時器18的“振蕩恢復(fù)”信號。另一控制信號是在線路34上傳送給停機(jī)延遲進(jìn)入定時器14的“時序撤消”信號。
停機(jī)延遲進(jìn)入定時器14在進(jìn)入停機(jī)方式的請求與振蕩器10停止工作之間給出一段延遲時間。該延遲時間可用于使電子系統(tǒng)2中的一個或多個模塊6編程至閑置狀態(tài),或者用來完成任何必需的內(nèi)務(wù)操作。本發(fā)明的一個實(shí)施例中,停機(jī)延遲進(jìn)入定時器14在線路36上接收輸入的時鐘信號。它還分別通過線路32和34從停機(jī)控制電路接收定時開始信號和時序撤消信號。停機(jī)延遲進(jìn)入定時器14響應(yīng)這些信號,在線路24上給出“停振”信號,傳送給振蕩器10和時鐘有效延遲定時器18。
停機(jī)延遲進(jìn)入定時器14在定時開始信號確定之后及停振信號確定之前給出3.56至7.12ms的延遲。為了提供這一延遲,停機(jī)延遲進(jìn)入定時器14在線路36上接收一280.9Hz的時鐘信號,并在該信號的每個上升沿各產(chǎn)生一個內(nèi)部脈沖。這樣,該內(nèi)部脈沖每隔3.56ms發(fā)生一次。后文中,該脈沖信號(未示出)稱為3.56ms執(zhí)行脈沖。在確定定時開始信號之后,停機(jī)延遲進(jìn)入定時器14將在這種執(zhí)行脈沖的第二個脈沖產(chǎn)生后再確定停振信號。因而,從進(jìn)入停機(jī)方式被請求之時起到系統(tǒng)進(jìn)入停機(jī)方式為止,用戶至少有3.56ms的時間將模塊編程進(jìn)入閑置狀態(tài),并執(zhí)行任何必需的內(nèi)務(wù)操作。
應(yīng)該注意到,采用系統(tǒng)中現(xiàn)成的一個慢時鐘,例如圖1所示的280.9Hz的時鐘,是在進(jìn)入停機(jī)方式前提供延遲量的一種有效和節(jié)省成本的手段。采用已有的慢時鐘消除了用一個昂貴得多的多位計(jì)數(shù)器將較快的系統(tǒng)時鐘進(jìn)行分頻的需要。
分頻器16在線路22上接收來自振蕩器10的時鐘信號CLK,并將其分成多個不同頻率的模塊時鐘信號8,用作同一電子系統(tǒng)2中多個模塊6的時序信號。分頻器16在CLK停止時中止模塊時鐘信號8,而當(dāng)CLK恢復(fù)并且線路38上已確證收到時鐘有效信號CLKVLD后給出模塊時鐘信號。應(yīng)該注意到,即使振蕩器10正在運(yùn)行,在線路38上的CLKVLD信號未得到確證之前,分頻器將不產(chǎn)生模塊時鐘信號。
時鐘有效延遲定時器18提供從振蕩器10啟動到模塊時鐘輸出有效為止的一段延遲。這段延遲為CLK信號在被分頻器16用來產(chǎn)生模塊時鐘信號之前提供一個達(dá)到穩(wěn)定的時間。該延遲防止了由不穩(wěn)定的時鐘脈沖引起的出錯。在一個實(shí)施例中,時鐘有效延遲定時器18內(nèi)部的一個計(jì)時器(未示出)在確證停機(jī)延遲進(jìn)入定時器14已產(chǎn)生停振信號后被清零。進(jìn)而該計(jì)數(shù)器又在確證停機(jī)控制電路12已產(chǎn)生振蕩恢復(fù)信號后開始其向下計(jì)數(shù)。在完成向下計(jì)數(shù)后,時鐘有效延遲定時器18在線路38上確立CLKVLD信號,該信號由分頻器16接收。當(dāng)CLKVLD被確立并且振蕩器10啟動后,分頻器16產(chǎn)生模塊時鐘信號,用為電子系統(tǒng)2中的模塊時序信號。
停機(jī)方式的進(jìn)入處于軟件控制之下,在初始化時,可以將適當(dāng)?shù)臄?shù)據(jù)經(jīng)由數(shù)據(jù)總線48寫入一個停機(jī)控制寄存器,例如寫入圖1所示的UCCCR寄存器42中。例如,通過將停機(jī)控制寄存器的最高有效位(后文稱為UCCCR〔7〕)置“1”,即可開始進(jìn)入停機(jī)方式。對UCCCR的寫入訪問可以由一個訪問控制機(jī)構(gòu)保護(hù),以避免將時鐘發(fā)生器4無意中置于停機(jī)方式下。這類訪問控制機(jī)構(gòu)可以包括一個聯(lián)鎖機(jī)構(gòu)44,連同一個停機(jī)保護(hù)寄存器UCCCP46之類的偽寄存器,兩者都示出在圖1的寄存器訪問控制電路20中。聯(lián)鎖機(jī)構(gòu)44識別對UCCCP寄存器46和UCCCR寄存器42的寫入,并且只有當(dāng)一個特定的停機(jī)寄存器存取序列完成之后才允許數(shù)據(jù)寫入UCC-CR寄存器中。該序列可以包括以預(yù)定順序?qū)CCCP和UCCCR寄存器進(jìn)行預(yù)定次數(shù)的寫入。在成功地將適當(dāng)?shù)臄?shù)據(jù)寫入UCCCR寄存器中后,在線路30上將確立SDENTR信號,提出進(jìn)入停機(jī)方式的請求。這種訪問保護(hù)方法避免了時鐘發(fā)生器無意中被置于停機(jī)方式下的情況,從而減少了由于可能的軟件問題使時鐘意外停止的風(fēng)險。
根據(jù)前面的說明,現(xiàn)在應(yīng)該清楚地看到,本發(fā)明提供了一種能夠依靠軟件編程進(jìn)入停機(jī)方式的時鐘發(fā)生器,該停機(jī)方式可用于減少電子系統(tǒng)中的功耗。本發(fā)明包括一個振蕩器、一個停機(jī)控制裝置和一個第一延時裝置。本發(fā)明的實(shí)施例還可包括一個分頻器、一個第二延時裝置和寄存器訪問保護(hù)裝置。
現(xiàn)在參照圖2所示的波形,說明圖1的時鐘發(fā)生器4在進(jìn)入和退出停機(jī)方式過程中的動作。在時間t0之前,時鐘發(fā)生器4處于運(yùn)行方式下,振蕩器10啟動,模塊時鐘信號8有效。假設(shè)在時間t0,UCCCR〔7〕由軟件置位。UCCCR〔7〕的置位使寄存器訪問電路20在線路30上確立SDENTR信號。停機(jī)控制電路12響應(yīng)SDENTR的確立,在線路32上建立定時開始信號,該信號傳送給停機(jī)延遲進(jìn)入定時器14。定時開始信號的確立將使停機(jī)延遲進(jìn)入定時器14從停機(jī)進(jìn)入請求信號之后的第二個3.56ms執(zhí)行脈沖起建立停振信號。時間t1標(biāo)志第一個這種執(zhí)行脈沖,而t2標(biāo)志第二個。因此,時間t2處在t0之后的3.56ms與7.12ms之間。在時間t2,停機(jī)延遲進(jìn)入定時器在線路24上確立停振信號,該信號導(dǎo)致振蕩器10停止工作。此外,所有模塊時鐘輸出在時間t2都停止,時鐘有效信號也被清除。
通過在線路28上建立SDEXIT可以開始從停機(jī)方式的退出,如圖2所示,該信號發(fā)生在時間t3。如果時鐘發(fā)生器4處于停機(jī)方式下,SDEXIT的確立會使停機(jī)控制電路12在線路26上建立振蕩恢復(fù)信號,該信號會啟動振蕩器10,并激活時鐘有效延遲定時器18內(nèi)部的計(jì)數(shù)器。此外,SDEXIT的建立還使UCCCR〔7〕清零。在時間t4,時鐘有效延遲定時器18內(nèi)部的計(jì)數(shù)器完成一次向下計(jì)數(shù)。這使CLKVLD在線路38上建立,進(jìn)而使分頻器16輸出模塊時鐘信號8。
參照圖3中的狀態(tài)圖,說明基于本發(fā)明教導(dǎo)的時鐘發(fā)生器的其它方面。在該狀態(tài)圖中,狀態(tài)S0表示時鐘發(fā)生器的運(yùn)行方式。在狀態(tài)S0,振蕩器10啟動,由此產(chǎn)生所有的模塊時鐘信號8。對UCC-CR〔7〕的成功置位在線路30上建立SDENTR,藉此可以起動一個停機(jī)時序。停機(jī)時序的起動如圖3的狀態(tài)S1所示。在停機(jī)時序開始后,停機(jī)延遲進(jìn)入定時器在隨后的第一個3.56ms執(zhí)行脈沖時轉(zhuǎn)入狀態(tài)S2。第二個3.56ms脈沖引起狀態(tài)S2至S3的轉(zhuǎn)換,狀態(tài)S3代表時鐘發(fā)生器置于停機(jī)方式下。在進(jìn)入停機(jī)方式后,停機(jī)延遲進(jìn)入定時器14產(chǎn)生一個停振信號給振蕩器10,CLKVLD信號消除,UCCCR〔7〕清零。
在停機(jī)時序起始之后,時鐘發(fā)生器4實(shí)際進(jìn)入停機(jī)方式之前所發(fā)生的一些情況會引起停機(jī)時序重新開始或停止。例如,當(dāng)時鐘發(fā)生器處于狀態(tài)S1時,亦即在SDENTR已確立之后及隨后的第一個3.56ms執(zhí)行脈沖之前的任何時候,若UCCCR〔7〕由軟件清零,或SDEXIT確立,則停機(jī)時序可以停止,并且時鐘發(fā)生器置于狀態(tài)S0。這些情況,即SDEXIT的確立或UCCCR〔7〕的清零,若發(fā)生在狀態(tài)S2期間,就是說,發(fā)生在SDENTR確立之后第一、第二個3.56ms執(zhí)行脈沖之間,也會引起停機(jī)時序的中止。
此外,當(dāng)時鐘發(fā)生器4處于狀態(tài)S2時,即在第一個3.56ms執(zhí)行脈沖之后但在第二個這類脈沖之前的時候,若UCCCR〔7〕由軟件復(fù)位,則停機(jī)時序可以重新起動。這樣,一個特定的軟件程序至少有3.56ms時間為進(jìn)入停機(jī)方式作準(zhǔn)備,即在作出該停機(jī)請求時,時鐘發(fā)生器正在根據(jù)先前的一個停機(jī)請求準(zhǔn)備進(jìn)入停機(jī)方式。這種再起動功能是重要的,因?yàn)橛捎谀承┸浖绦虻膹?fù)雜性,可能會有一個以上的軟件程序獨(dú)立地請求系統(tǒng)進(jìn)入停機(jī)方式。如果沒有再起動功能,若作出停機(jī)請求時時鐘發(fā)生器正在處理由另一軟件程序先前提出的進(jìn)入停機(jī)方式的請求,則當(dāng)前請求進(jìn)入停機(jī)方式的程序?qū)⑷鄙俪浞值臅r間為停機(jī)作準(zhǔn)備。
從以上的詳細(xì)說明中可以看出,本發(fā)明提供了一種時鐘發(fā)生器,它在運(yùn)行方式下產(chǎn)生模塊時鐘信號用作同一電子系統(tǒng)中各模塊的時序信號,而在停機(jī)方式下不產(chǎn)生模塊時鐘信號。此外,本發(fā)明的時鐘發(fā)生器提供從請求進(jìn)入停機(jī)方式到模塊時鐘信號停止為止的預(yù)定時間延遲,從而留出時間讓模塊準(zhǔn)備停機(jī),以及完成任何必需的內(nèi)務(wù)程序。本發(fā)明的某些實(shí)施例還提供了從振蕩器停止到模塊時鐘信號開始為止的時間延遲,以給出時間讓振蕩器的輸出穩(wěn)定。某些實(shí)施例還提供了用于防止電子系統(tǒng)無意中置于停機(jī)方式下的停機(jī)訪問保護(hù)裝置。此外,某些實(shí)施例提供了在進(jìn)入停機(jī)方式的請求提出之后及振蕩器停止之前,用于中止停機(jī)進(jìn)入時序并返回運(yùn)行方式的裝置。某些實(shí)施例還提供了將振蕩器的停止延遲到最近一次作出進(jìn)入停機(jī)方式的請求之后再加一個預(yù)定時間的裝置。
本發(fā)明的另一方面是中斷允許旁路電路。這種電路提供一個即使所有中斷都被禁止也能脫離停機(jī)方式的裝置。圖4中示出這類中斷允許旁路電路的一個實(shí)施例,它是數(shù)字邏輯設(shè)計(jì)電路中一個典型的中斷控制電路。該中斷控制電路50能夠接收來自內(nèi)部或外部的多個中斷請求,如線路52上傳來的實(shí)時時鐘中斷請求,或者線路54上傳來的任何鍵盤按鍵中斷請求。接收到輸入的中斷請求后,中斷控制電路50產(chǎn)生一個中斷信號,例如線路55上的INT1。
通常,輸入的中斷請求信號將和來自主屏蔽寄存器56的相應(yīng)的屏蔽信號進(jìn)行“與”運(yùn)算。這樣,只有當(dāng)中斷請求信號在主屏蔽寄存器56中的對應(yīng)位已置“1”時,它才能被識別。若對應(yīng)位未置“1”,中斷請求信號不會通過主屏蔽寄存器,也就不會使INT1信號確立。中斷屏蔽寄存器56的各個輸出加到主中斷源寄存器58,然后全部作“或”運(yùn)算,在線路55上,產(chǎn)生INT1信號。主中斷源寄存器58可被讀出,以確定哪一個未被屏蔽的中斷請求已經(jīng)確立。
線路55上的INT1信號傳至或門60,其輸出是線路28上的SDEXIT信號,傳至圖1所示的停機(jī)控制電路12。前文已說明,SDEXIT信號的確立使時鐘發(fā)生器4退出停機(jī)方式。
中斷允許旁路電路62提供一個即使所有中斷請求信號都被屏蔽也能產(chǎn)生SDEXIT信號的裝置。線路52上的實(shí)時時鐘信號和線路54上的任何鍵盤按鍵信號等中斷請求信號將進(jìn)一步傳至或門64,或門的輸出和線路66上的停機(jī)狀態(tài)信號相“與”。若時鐘發(fā)生器處于停機(jī)方式,停機(jī)狀態(tài)信號為高電平,反之則為低電平。若時鐘發(fā)生器處于停機(jī)方式,且實(shí)時時鐘信號或按鍵信號也已建立,則與門68將輸出高電平。當(dāng)線路70上與門的輸出從0轉(zhuǎn)換至1時,會使SR-鎖存器72建立輸出,該輸出與主中斷源寄存器58的輸出相或,產(chǎn)生INT1中斷信號。如前所述,INT1的確立引起SDEXIT信號在線路28上建立。這樣,SDEXIT仍然可以響應(yīng)某些諸如實(shí)時時鐘或按鍵信號之類的中斷請求而建立,即使這些請求信號已被屏蔽。
根據(jù)前面的說明可以看到,中斷允許旁路電路62提供一個即使所有中斷請求信號已被屏蔽也能退出停機(jī)方式的裝置。這一點(diǎn)是重要的,因?yàn)榇嬖谥环N危險情況,即正在使用的軟件程序不可能排除在程序請求進(jìn)入停機(jī)方式之前所有中斷已被屏蔽,從而無法退出停機(jī)方式的可能性。
前文的說明僅示出了本發(fā)明的某些特定實(shí)施例。但是,本技術(shù)領(lǐng)域中的熟練人員會意識到,對此可作出許多修改和變化,實(shí)質(zhì)上并未脫離本發(fā)明的精神和范圍。因此,應(yīng)該清楚地認(rèn)識到,上面說明的本發(fā)明的形式僅作為舉例,不是對本發(fā)明范圍的限制。
此外應(yīng)該認(rèn)識到,本發(fā)明的時鐘發(fā)生器和中斷旁路電路可以用在許多系統(tǒng)中。例如,它們可用在如圖5所示、包括一個諸如Ad-vancedMicroDevices80C51之類的微控制器的電子系統(tǒng)中。在該結(jié)構(gòu)中,時鐘發(fā)生器4在線路82上提供的時鐘信號,可用于微控制器80的時序。此外,微控制器80可以運(yùn)行控制系統(tǒng)進(jìn)入停機(jī)方式的軟件程序。中斷旁路電路則可包含在用于對微控制器80產(chǎn)生中斷請求的中斷控制模塊84中。
圖1所示系統(tǒng)的另一種可能的變化是采用處在一塊集成電路(IC)中的時鐘發(fā)生器和模塊。圖6示出這類系統(tǒng)的一個實(shí)施例。在該實(shí)施例中,時鐘發(fā)生器4可用于將IC90中除實(shí)時時鐘模塊92之外的所有模塊置于停機(jī)方式下。
此外,圖6所示的IC90可用在無繩電話機(jī)中。圖7示出將IC90用在無繩電話機(jī)送受話器96中的情況。圖8示出將該IC用在無繩電話機(jī)98的機(jī)體單元中的情況。IC90中的時鐘發(fā)生器可用于將送受話器96或機(jī)體單元98在閑置時間中,即在各次使用之間的時間間隔中置于備用方式下。因?yàn)殚e置時間的長短受限于向送受話器或機(jī)體供電的電池的壽命,所以這種系統(tǒng)中功率的節(jié)省是很重要的。這樣,時鐘發(fā)生器將無繩電話機(jī)的送受話器或機(jī)體單元置于備用方式下的功能起到了延長無繩電話機(jī)閑置時間的作用。
權(quán)利要求
1.一種時鐘發(fā)生器,能夠置于無時鐘信號發(fā)生的停機(jī)方式下,其特征在于,它包括用于將時鐘發(fā)生器設(shè)置于所述停機(jī)方式下的裝置,該裝置響應(yīng)停機(jī)請求信號而動作;用于接收所述停機(jī)請求信號的裝置;和用于在所述接收裝置接收到停機(jī)請求信號之后將所述設(shè)置裝置的動作延遲預(yù)定的最小時間的裝置。
2.如權(quán)利要求1所述的時鐘發(fā)生器,所述延遲裝置包括一個停機(jī)延遲進(jìn)入定時器,所述設(shè)置裝置包括一個振蕩器,該振蕩器響應(yīng)一個停振信號的確立而停止,所述停機(jī)延遲進(jìn)入定時器在經(jīng)過所述預(yù)定的最小時間之后產(chǎn)生所述的停振信號。
3.如權(quán)利要求2所述的時鐘發(fā)生器,所述停機(jī)延遲進(jìn)入定時器由脈沖驅(qū)動。
4.如權(quán)利要求3所述的時鐘發(fā)生器,所述預(yù)定的最小時間由兩個脈沖間的時間值限定。
5.如權(quán)利要求4所述的時鐘發(fā)生器,所述脈沖從一個不變的時鐘信號源得出。
6.一種電子系統(tǒng)的時鐘發(fā)生器,能夠產(chǎn)生至少一個時鐘信號輸出,其特征在于,它包括用于產(chǎn)生所述至少一個的時鐘脈沖輸出的裝置;用于在接收到停止動作信號后使所述用于產(chǎn)生脈沖的裝置停止的裝置;用于接收停機(jī)請求信號的裝置;用于確證所接收到的停機(jī)請求信號符合預(yù)定的規(guī)約要求的裝置,它包括至少兩個寄存器,該裝置在證實(shí)所接收到的停機(jī)請求信號確已滿足所述預(yù)定的規(guī)約要求時產(chǎn)生所述的停止動作信號,該信號傳至所述停止裝置。
7.如權(quán)利要求6所述的時鐘發(fā)生器,所述確證裝置還包括一個聯(lián)鎖機(jī)構(gòu),該機(jī)構(gòu)能檢測對所述至少兩個的寄存器的寫入,所述至少兩個的寄存器中的一個是偽寄存器。
8.如權(quán)利要求7所述的時鐘發(fā)生器,所述聯(lián)鎖機(jī)構(gòu)阻止對所述至少兩個的寄存器中的一個進(jìn)行寫入訪問,除非所述預(yù)定的規(guī)約要求得到滿足。
9.如權(quán)利要求8所述的時鐘發(fā)生器,所述規(guī)約要求包括在預(yù)定順序下對所述至少兩個的寄存器寫入預(yù)定的次數(shù)。
10.一種用于電子系統(tǒng)的時鐘發(fā)生器,能產(chǎn)生至少一個時鐘信號輸出,其特征在于,它包括用于接收退出停機(jī)請求信號的裝置;用于產(chǎn)生時鐘信號的裝置,該裝置在所述退出停機(jī)請求信號建立后啟動;用于產(chǎn)生從所述時鐘信號導(dǎo)出的所述至少一個的時鐘信號輸出的裝置;和用于將產(chǎn)生所述至少一個時鐘信號輸出的時間從確證所述退出停機(jī)請求信號建立起推遲一段計(jì)數(shù)長度的時間的裝置。
11.如權(quán)利要求10所述的時鐘發(fā)生器,所述產(chǎn)生時鐘信號的裝置包括一個振蕩器,所述產(chǎn)生至少一個時鐘信號輸出的裝置包括一個分頻器。
12.如權(quán)利要求11所述的時鐘發(fā)生器,所述延遲裝置包括一個計(jì)數(shù)器,該計(jì)數(shù)器在所述退出停機(jī)請求信號確立后起始,并在所述計(jì)數(shù)長度的時間之后產(chǎn)生一個時鐘有效信號,該信號傳送至所述分頻器,該分頻器在接收到所述時鐘有效信號后啟動。
13.一種用于控制至少一個時鐘信號輸出的系統(tǒng),其特征在于,它包括一個時鐘發(fā)生電路,該電路包括用于接收一個停止請求信號的裝置;用于在接收到所述停止請求信號起預(yù)定長時間之后停止所述至少一個的時鐘信號輸出的裝置;用于接收一個啟動請求信號的裝置;和用于在接收到所述啟動請求信號之后開始所述至少一個的時鐘信號輸出的裝置;一個中斷旁路電路,它包括用于響應(yīng)至少一個中斷請求信號而產(chǎn)生所述允許中斷請求信號的裝置,即使所述至少一個的中斷請求信號被屏蔽,所述允許中斷請求信號也被產(chǎn)生。
14.一種用于控制至少一個時鐘信號輸出的系統(tǒng),其特征在于,它包括用于接收一個停止請求信號的裝置;用于接收一個啟動請求信號的裝置;和用于在接收到所述停止請求信號起預(yù)定長時間之后停止所述至少一個的時鐘信號輸出的裝置,該裝置包括若在所述停止請求信號收到之后及所述預(yù)定長時間結(jié)束之前接收到所述啟動請求信號,就不停止所述至少一個的時鐘信號輸出的裝置。
15.一種用于控制至少一個時鐘信號輸出的系統(tǒng),其特征在于,它包括用于接收一個停止請求信號的裝置;用于在接收到所述停止請求信號起預(yù)定長時間后停止所述至少一個的時鐘信號輸出的裝置,該裝置包括用于在最近一次建立所述停止請求信號起經(jīng)過所述預(yù)定長時間之后停止所述至少一個的時鐘信號輸出的裝置。
16.一種時鐘發(fā)生器,能夠在置于運(yùn)行方式下時提供至少一個時鐘信號輸出,而在置于停機(jī)方式下時,不提供所述至少一個的時鐘信號輸出,其特征在于,它包括用于接收一個停機(jī)請求信號的裝置;用于接收一個退出停機(jī)請求信號的裝置;用于產(chǎn)生所述至少一個時鐘信號輸出的裝置,它包括用于產(chǎn)生一個時鐘信號的裝置和用于產(chǎn)生從所述的時鐘信號得到的所述至少一個時間信號輸出的裝置;用于響應(yīng)所述退出停機(jī)請求信號而啟動所述產(chǎn)生裝置的裝置;用于響應(yīng)所述停機(jī)請求信號而停止所述產(chǎn)生裝置的裝置;用于將所述停止裝置的動作自所述接收停機(jī)請求信號的裝置接收到信號起延遲預(yù)定的最小時間的裝置;用于將所述產(chǎn)生裝置的動作自所述退出停機(jī)請求信號確立起延遲一段計(jì)數(shù)長度的時間的裝置;用于驗(yàn)證所接收到的停機(jī)請求信號符合預(yù)定的規(guī)約要求的裝置,該裝置包括至少兩個寄存器,在驗(yàn)證出所接收到的停機(jī)請求信號確已符合所述預(yù)定的規(guī)約要求時啟動所述停止裝置;用于當(dāng)所述接收裝置在所述停機(jī)請求信號接收到之后及所述預(yù)定長時間結(jié)束之前接收到所述退出停機(jī)請求信號時,使所述停止裝置停止作用的裝置;用于在最近一次建立所述停機(jī)請求信號起經(jīng)過所述預(yù)定長時間之后再啟動所述停止裝置的裝置;和用于響應(yīng)至少一個外部中斷請求信號而產(chǎn)生所述退出停機(jī)請求信號的裝置,即使所述至少一個的外部中斷請求信號被屏蔽,所述退出停機(jī)請求信號也會產(chǎn)生。
17.一種用于控制至少一個時鐘信號輸出的方法,其特征在于,它包括下列步驟接收一個停止請求信號;在接收到所述停止請求信號起預(yù)定長時間之后停止所述至少一個的時鐘信號輸出;接收一個啟動請求信號;和在接收到所述啟動請求信號之后開始所述至少一個的時鐘信號輸出。
18.如權(quán)利要求17所述的方法,所述開始至少一個的時鐘信號輸出的步驟包括下列步驟起始一個第一時鐘信號;和在上一步驟之后經(jīng)過一段延遲再開始所述至少一個的時鐘信號輸出,所述至少一個的時鐘信號輸出可自所述第一時鐘信號導(dǎo)出。
19.如權(quán)利要求17所述的方法,所述停止至少一個的時鐘信號輸出的步驟包括下列步驟驗(yàn)證所述停止請求信號滿足預(yù)定的規(guī)約要求;和僅當(dāng)所述停止請求信號滿足所述預(yù)定的規(guī)約要求時處理所述停止請求信號。
20.如權(quán)利要求17所述的方法,所述停止至少一個的時鐘信號輸出的步驟包括若在所述停止請求信號接收到之后及所述預(yù)定長時間結(jié)束之前接收到所述啟動請求信號,則不停止所述至少一個的時鐘信號輸出的步驟。
21.如權(quán)利要求17所述的方法,停止所述至少一個的時鐘信號輸出的步驟也包括在最近一次建立所述停止請求信號起所述預(yù)定長時間后停止所述至少一個的時鐘信號輸出的步驟。
22.如權(quán)利要求17所述的方法,還包括響應(yīng)至少一個中斷請求信號而產(chǎn)生所述允許中斷請求信號的步驟,即使所述至少一個的中斷請求信號被屏蔽,所述允許中斷請求信號也會產(chǎn)生。
全文摘要
一種時鐘發(fā)生器和中斷旁路電路,用于減少應(yīng)用它的電子系統(tǒng)的功耗。時鐘發(fā)生器提供模塊時鐘信號用作同一電子系統(tǒng)內(nèi)諸模塊的時序信號,在運(yùn)行方式下能產(chǎn)生這些模塊時鐘信號,而在備用方式下不產(chǎn)生這些信號。時鐘發(fā)生器還能提供從請求進(jìn)入停機(jī)方式到實(shí)際進(jìn)入停機(jī)方式的預(yù)定長時間延遲。中斷旁路電路提供一種在相關(guān)的中斷請求被屏蔽的情況下退出停機(jī)方式的裝置。
文檔編號H04B7/26GK1083947SQ93108708
公開日1994年3月16日 申請日期1993年7月21日 優(yōu)先權(quán)日1992年7月21日
發(fā)明者D·古利克, J·W·彼得遜, A·F·漢得利克遜, D·格倫姆羅斯 申請人:先進(jìn)顯微設(shè)備股份有限公司