本發(fā)明涉及計算機領(lǐng)域,具體涉及一種主機喚醒方法。
背景技術(shù):
1、在本專業(yè)領(lǐng)域,外設部件互連高速總線(peripheral?component?interconnectexpress,pcie)和通用串行總線(universal?serial?bus,usb)是兩種廣泛認知的接口技術(shù)。現(xiàn)代計算機系統(tǒng)普遍采用pcie作為其內(nèi)部高速總線標準,并在主板上集成多個pcie插槽,以便附加硬件設備通過這些插槽直接與中央處理器相連。同時,計算機大多配備usb主機控制器接口,用于連接各類usb外設。值得注意的是,許多usb主機接口實質(zhì)上也是經(jīng)由pcie總線與cpu通信的。為此,專門設計了pcie轉(zhuǎn)usb的轉(zhuǎn)換芯片或電路模塊,以實現(xiàn)pcie插槽與usb接口間的信號適配與轉(zhuǎn)換。
2、為優(yōu)化能源效率,計算機在空閑或無任務執(zhí)行時會進入低功耗待機狀態(tài)或休眠模式,而非完全關(guān)機,從而避免重啟所導致的時間損耗。休眠期間,若需重新激活計算機,通常由連接至usb主機接口的設備(例如,鍵盤輸入)觸發(fā)喚醒事件。具體過程涉及該usb設備向pcie轉(zhuǎn)usb芯片中的usb主機模塊發(fā)出喚醒信號,隨后此喚醒信號被轉(zhuǎn)發(fā)至pcie部分,進而向系統(tǒng)主機傳達特定的喚醒指令。
3、在典型的休眠管理策略中,pcie鏈路會切換至l1模式或l2模式等低功耗模式以節(jié)約能源。標準操作規(guī)程中,l1模式維持pcie的復位信號(pcie?reset,perst)信號為高電平,確保參考時鐘有效且主電源未切斷。一旦接收到喚醒請求,l1模式下的pcie設備將利用電源管理事件(power?management?event,pme)消息通過鏈路通知主機,促使主機脫離休眠并指示所有的pcie端點(end?point,ep)退出l1模式。
4、相反,在l2模式下perst信號被拉低,指示主電源斷開且參考時鐘停供,而不再是指示復位信號。喚醒操作依賴于拉低外部喚醒信號,因鏈路通信在此階段不可用。主機蘇醒后,會重啟主電源和時鐘源,恢復pcie鏈路活動。
5、然而,市場上存在一些非標準的主機,它們在休眠期間對pcie鏈路的管理及喚醒機制與上述標準做法相異,導致現(xiàn)有喚醒技術(shù)難以應用于這些特殊設備。
6、這類計算機進入休眠后,不僅令pcie鏈路轉(zhuǎn)入l1模式,還異常地拉低perst信號,并切斷主電源,僅依靠拉低帶外的喚醒信號作為喚醒途徑。這種特異行為挑戰(zhàn)了現(xiàn)有的pcie喚醒解決方案,迫切需求開發(fā)新型喚醒機制以兼容并解決這類非標準的主機喚醒難題。
7、概括地,非標準的主機進入休眠后與標準的主機行為不一樣,主要表現(xiàn)在以下幾個方面:
8、(1)標準的主機進入休眠后,可選擇性地讓pcie鏈路進入l1模式或者l2模式,而非標準的主機只能讓pcie鏈路進入l1模式。
9、(2)標準的主機進入l2模式后,才會拉低perst信號,關(guān)閉參考時鐘,移除主電源;非標準的主機進入l1模式后,也會拉低perst信號,關(guān)閉參考時鐘,移除主電源。
10、(3)標準的主機進入l1模式后,pcie設備可以通過pcie鏈路發(fā)送pme消息喚醒主機,而標準的主機在l2模式下才需要利用喚醒信號喚醒;而非標準的主機需要通過拉低喚醒信號才能被喚醒。
11、此外,現(xiàn)在市面上的pcie端點芯片必須在進入l2模式后,收到應用層發(fā)過來的喚醒信號,才會拉低pcie鏈路的喚醒信號,而在l1模式下則不能發(fā)出喚醒信號;并且,在l1模式下,會把pcie的perst信號當作復位信號而不是主電源撤銷信號。因此,當該perst信號被拉低,會將整個芯片復位,從而丟失所有的配置信息,pcie鏈路也會斷鏈,從而導致pcie與主機的連接關(guān)系失效。
12、對于市面上的一些非標準的主機,由于其進入休眠模式后的行為與傳統(tǒng)的標準的主機不一樣,用傳統(tǒng)的pcie的喚醒方式,無法將其喚醒。本發(fā)明主要是為了解決這類非標準的主機在pcie鏈路進入l1模式下無法通過pcie鏈路喚醒的問題。
技術(shù)實現(xiàn)思路
1、為了緩解或部分緩解上述技術(shù)問題,本發(fā)明的解決方案如下所述:
2、一種主機喚醒方法,應用于pcie轉(zhuǎn)usb芯片中,包括如下步驟:usb設備發(fā)送遠程喚醒請求至usb主機模塊;usb主機模塊發(fā)送第一喚醒信號至pcie模塊中的休眠與喚醒模塊;休眠與喚醒模塊從ltssm模塊中獲取鏈路狀態(tài),并根據(jù)獲取的鏈路狀態(tài)判斷是否處于l1模式;若判斷結(jié)果指示處于l1模式,則進一步判斷從pcie插槽獲取的perst信號是否為低電平;若判斷結(jié)果指示perst信號是低電平,則拉低休眠與喚醒模塊向pcie插槽發(fā)送的第二喚醒信號;若判斷結(jié)果指示perst信號是高電平,則發(fā)送pme消息至pcie插槽,以喚醒主機;此外,所述pcie模塊中還包括perst處理模塊;當pcie模塊中的perst處理模塊接收到perst信號,判斷perst信號是否為低電平;若是,則進一步判斷鏈路狀態(tài)判斷是否處于l1模式或l2模式;若判斷結(jié)果指示鏈路狀態(tài)沒有處于l1模式或l2模式,則復位pcie轉(zhuǎn)usb芯片;其中,所述pcie轉(zhuǎn)usb芯片包括所述pcie模塊和所述usb主機模塊。
3、進一步地,所述usb主機模塊發(fā)送第一喚醒信號具體為:所述usb主機模塊中的功耗控制模塊,發(fā)送所述第一喚醒信號。
4、進一步地,所述usb設備是鍵盤或鼠標。
5、進一步地,所述ltssm模塊發(fā)送鏈路狀態(tài)至perst處理模塊和休眠與喚醒模塊。
6、進一步地,所述主機是標準的主機或非標準的主機。
7、本發(fā)明技術(shù)方案,具有如下有益的技術(shù)效果之一或多個:
8、本發(fā)明既可以在標準的主機上實現(xiàn)通過usb設備喚醒主機的目的,也能實現(xiàn)在非標準的主機上通過usb設備喚醒主機的目的。
9、此外,本發(fā)明還具有的其它有益效果將在具體實施例中提及。
1.一種主機喚醒方法,應用于pcie轉(zhuǎn)usb芯片中,其特征在于,包括如下步驟:
2.根據(jù)權(quán)利要求1所述的主機喚醒方法,其特征在于:
3.根據(jù)權(quán)利要求2所述的主機喚醒方法,其特征在于:
4.根據(jù)權(quán)利要求3所述的主機喚醒方法,其特征在于:
5.根據(jù)權(quán)利要求4所述的主機喚醒方法,其特征在于: