一種晶體振蕩器的停振監(jiān)測電路的制作方法
【技術領域】
一種晶體振蕩器的停振監(jiān)測電路的設計方法,涉及集成電路中數(shù)字電路設計,屬于微電子技術與應用領域。
【背景技術】
振蕩器可分為RC振蕩器、LC振蕩器和晶體振蕩器,在芯片中常用的有RC振蕩器和晶體振蕩器。RC振蕩器性能穩(wěn)定,一般不會出現(xiàn)停振故障,但是精確度低;晶體振蕩器精確度高,但是性能不穩(wěn)定,會出現(xiàn)停振故障。一般在集成電路設計中,晶體振蕩器用作片外振蕩器,RC振蕩器用作片內振蕩器,軟件可以選擇使用片外的晶體振蕩器還是片內的RC振蕩器。由于晶體振蕩器性能不穩(wěn)定,會出現(xiàn)停振故障,為了使芯片能夠在晶體振蕩器出現(xiàn)停振故障后仍可以正常工作,需要在芯片內設計一個監(jiān)測電路,監(jiān)測晶體振蕩器是否工作正常,若正在使用晶體振蕩器時,晶體振蕩器出現(xiàn)停振現(xiàn)象,監(jiān)測電路能發(fā)出停振信號,然后將時鐘自動切換到片內RC振蕩器輸出的時鐘。
[0003]本文所設計的電路主要監(jiān)測晶體振蕩的停振故障,以及晶體振蕩器出現(xiàn)停振故障時對時鐘的處理。
【發(fā)明內容】
一種晶體振蕩器的停振監(jiān)測電路的設計方法,包括振蕩器的監(jiān)測方法、監(jiān)測電路的啟停條件控制、振蕩器停振后對系統(tǒng)時鐘的處理、振蕩器停振后向處理發(fā)出中斷信號、監(jiān)測電路發(fā)出的時鐘失敗信號。
優(yōu)選的停振監(jiān)測電路,其特征在于利用片內的高頻振蕩器OSCl和片內低頻時鐘0SC2來監(jiān)測晶體振蕩器XO是否正常工作,振蕩器OSCl的頻率高于0SC2和晶體振蕩器XO時鐘頻率的2倍。
在停振監(jiān)測電路中,利用高頻振蕩器OSCl輸出的時鐘對低頻振蕩器0SC2和晶體振蕩器XO的時鐘進行采樣,當振蕩器0SC2和晶體振蕩器XO正常振蕩時,得到跳變的時鐘沿。在監(jiān)測電路中設置一個寄存器,振蕩器0SC2的時鐘的上升沿將寄存器設置為低電平,晶體振蕩器XO的時鐘下降沿將寄存器設置為高電平,在0SC2的時鐘下降沿監(jiān)測寄存器的值,若此時寄存器為高電平,則晶體振蕩器運行正常,若此時寄存器為低電平,則晶體振蕩器已經停止了振蕩。
優(yōu)選的停振監(jiān)測電路的啟??刂?,其特征在于可以由軟件控制監(jiān)測電路的啟停。只有軟件激活了停振監(jiān)測電路并且晶體振蕩器輸出時鐘穩(wěn)定后,監(jiān)測電路才開始監(jiān)測晶體振蕩器是否工作正常,軟件控制增加了停振監(jiān)測電路使用的靈活性,不使用晶體振蕩器時,可以將監(jiān)測電路關閉,可以降低功耗。
優(yōu)選的晶體振蕩器XO停振后對系統(tǒng)時鐘的處理,其特征在于當晶體振蕩器XO停止振蕩后,時鐘切換模塊將晶體振蕩器XO所提供的時鐘快速切換到振蕩器OSCl或振蕩器0SC2輸出的時鐘。 優(yōu)選的晶體振蕩器停振后向處理器發(fā)出的中斷請求,其特征在于:當停振信號變?yōu)楦唠娖胶螽a生CPU中斷申請,CPU進行相應的中斷處理。
監(jiān)測電路向外發(fā)出時鐘失敗事件,該失敗事件可以用于特殊事件的處理。比如在一些含有PWM模塊的芯片中,可以將此時鐘失敗事件作為PWM的剎車信號,避免PWM處于混亂狀態(tài)而導致燒壞其他器件。
【附圖說明】
為了更清楚地說明本申請實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明具體實施例中的時鐘安全系統(tǒng)框圖;
圖2為本發(fā)明具體實施例中的晶體振蕩器停振監(jiān)測電路結構圖;
圖3為本發(fā)明具體實施例中的晶體振蕩器停止振蕩時產生中斷申請的電路結構圖;
圖4為本發(fā)明具體實施例中的晶體振蕩器停止振蕩時產生時鐘失敗信號的電路結構圖;
【具體實施方式】
晶體振蕩器輸出的時鐘精確度尚,可以為芯片提供尚精度的時鐘,但是晶體振蕩器性能不穩(wěn)定,會出現(xiàn)停振故障,所以在芯片設計時需要增加晶體振蕩器的停振監(jiān)測電路,當晶體振蕩器出現(xiàn)停振故障時,監(jiān)測電路發(fā)出停振信號,芯片將時鐘切換到備用振蕩器輸出的時鐘,這樣芯片可以繼續(xù)正常工作。
晶體振蕩器的停振監(jiān)測電路以及相應的時鐘處理模塊可以統(tǒng)稱為時鐘安全系統(tǒng),如圖1所示。時鐘安全系統(tǒng)包括晶體振蕩器XO 100、晶體振蕩器的停振監(jiān)測電路304、中斷處理模塊301、特殊事件處理模塊305、時鐘切換模塊303、片內高頻振蕩器0SC1302和片內低頻振蕩器0SC2306.整個時鐘安全系統(tǒng)共同完成晶體振蕩器停振故障的處理。
監(jiān)測電路如圖2所示,電路由三部分組成:時鐘沿檢測電路401、寄存器設置電路402和停振信號產生電路403。其中時鐘沿檢測電路包括片內低頻振蕩器0SC2時鐘上升沿監(jiān)測電路501和晶體振蕩器XO時鐘下降沿監(jiān)測電路502。在監(jiān)測電路中設置一個寄存器R 503,利用振蕩器OSCl輸出的時鐘對0SC2時鐘和晶體振蕩器XO的時鐘進行采樣,得到晶體振蕩器XO和振蕩器0SC2時鐘的跳變沿,振蕩器0SC2時鐘的上升沿將寄存器R設置為低電平,晶體振蕩器XO的時鐘下降沿將寄存器R設置為高電平。403為停振信號產生信號,在片內低頻振蕩器0SC2時鐘低電平半周期內監(jiān)測寄存器R 503的值,若此時寄存器R為低電平,則晶體振蕩器運行正常,若此時寄存器R為高電平,則晶體振蕩器已經停止了振蕩,若此時軟件激活了監(jiān)測電路,則產生晶體振蕩器XO的停振信號。
為了更方便的控制監(jiān)測電路的啟停,增加了軟件開關,若通過軟件配置寄存器關閉監(jiān)測電路,則監(jiān)測電路不起作用,無論晶體振蕩器有沒有停振,監(jiān)測電路都不會發(fā)出停振信號。
若芯片正在使用晶體振蕩器的輸出時鐘作為時鐘源,當晶體振蕩器出現(xiàn)故障停振時,芯片中各個模塊的時鐘停止振蕩,使用此時鐘的模塊停止工作,為了使相應的模塊能自動恢復工作,監(jiān)測電路自動將相應模塊的時鐘源由晶體振蕩器XO輸出的時鐘切換至振蕩器OSCl或0C2輸出的時鐘。
當晶體振蕩器XO停振時,時鐘切換的具體步驟為:
①監(jiān)測電路將停振信號置為有效電平;