適應汽車網聯趨勢,以及舒適性的需求,車載以太網將會在汽車車載網絡中得到普遍應用。而基于安全考慮,往往汽車的相關產品和協議規范會將工程師們繞的暈頭轉向。小編在這就給各位看官解鎖汽車以太網PHY睡眠和喚醒的正確姿勢。
1相關命令介紹
由于IEEE802.3bw規范沒有制定鏈路睡眠和喚醒的機制,因此,OPEN聯盟制定了該規范并定義了新命令作為對IEEE802.3bw規范的補充。新命令包括LPS、WUR和WUP,這三個命令在PHY芯片手冊十分常見,故而理解這些命令是十分必要的。
Low Power Sleep(LPS)
低功耗睡眠(LPS)是某節點向鏈路伙伴指示睡眠請求的命令。當鏈路已建立起連接時,LPS由請求轉換到睡眠狀態的節點發送。
Wake-Up Request(WUR)
喚醒請求(WUR)是某節點向鏈路伙伴指示喚醒請求的命令。WUR可以由節點PHY或交換機PHY發送,并通過活動鏈路轉發。
Wake-Up Pulse(WUP)
喚醒脈沖(WUP)也是對鏈路伙伴指示喚醒請求的命令。但與WUR不同,WUP通過非活動鏈路轉發喚醒請求。
該規范定義的這三個命令,用于請求斷電或通過活動鏈路和非活動鏈路發出喚醒信號。
2睡眠與喚醒規范
如果暫時不需要節點的功能并為了降低功耗,可以進入睡眠模式。在睡眠模式下,除喚醒輸入和活動檢測外,所有內部功能都將關閉。
如果網絡中有節點處于睡眠狀態,當需要該節點工作時,通過喚醒并配合喚醒轉發,可以靈活地使得一些節點或快速使全局節點退出睡眠模式。喚醒分為本地喚醒和遠程喚醒,本地喚醒是通過喚醒引腳喚醒節點,而遠程喚醒是通過雙絞線遠程喚醒節點。
網絡管理可選擇關閉網絡所選節點并協調,這種可選擇性鏈路關閉和快速全局喚醒的網絡概念特別適用于汽車以太網。
2.1 睡眠轉換過程規范
圖1
首先假設鏈路已連接,此時鏈路雙方均處于正常模式,則經歷以下步驟:
如果一端PHY決定要進入睡眠模式,則PHY將先進入睡眠請求狀態并將發送LPS命令;
接收到LPS命令的鏈路伙伴進入睡眠確認狀態并啟動一個“睡眠確認定時器”,如果沒有設置睡眠拒絕且在該定時器超時前沒有接受到數據消息,則鏈路伙伴也將進入睡眠請求狀態并發送LPS命令;
此時PHY和鏈路伙伴檢測到它已發送和接收LPS命令,則它轉換到靜音狀態并最終進入睡眠模式;而如果PHY在“睡眠請求定時器”超時之前未完成握手,則PHY進入睡眠失敗并返回正常模式。
2.2 喚醒及喚醒轉發規范
對于喚醒及喚醒轉發規范應注意以下幾點:
喚醒的命令取決于鏈路的狀態。如果鏈路已連接,則PHY將通過活動鏈路發送WUR命令;如果鏈路斷開,PHY將發送WUP命令。如果連接尚未建立,例如因為連接建立仍在準備中,則首先建立連接,然后發送WUR命令。
多PHY設備(例如,交換機)實現了選擇性喚醒轉發機制。如果多PHY設備在一個端口上檢測到WUR或WUP,則必須可以將請求轉發到設備的其他PHY。通過斷開鏈路(WUP)喚醒或通過連接鏈路(WUR)喚醒到另一個PHY。此外,還應該在喚醒事件時發生時產生指示標志。喚醒檢測過程的實現留給PHY供應商,且不得超過2ms。
鏈路上任何傳輸的IDLE模式都將觸發喚醒檢測。如果在設計時不注意這一點,可能使得一些不期望的喚醒發生,故本文將在之后以TJA1101作為實例應用時說明。
圖2
LP1、LP2、LP3可以是PHY或交換機,它們的端口P1和P2可以是MDI或喚醒I/O引腳。當LP的某一端口檢測到WUP/WUR或本地喚醒時且轉發使能,則在其端口通過喚醒I/O輸出喚醒信號或發送WUP/WUR轉發喚醒信息至另一端口,如LP1中的P2和P1的喚醒過程。喚醒轉發功能使得網絡具有了快速全局喚醒能力。
該規范規定PHY的喚醒過程應滿足以下要求:
必須有專用I/O引腳喚醒,且引腳應支持喚醒轉發輸出和本地喚醒輸入;
對于多PHY設計,可以連接這些引腳,且必須為高電平有效,但I/O電壓留給設計者;
在本地喚醒引腳處識別喚醒請求的脈沖持續時間閾值應至少為10us,低于此值的脈沖將被忽略,必須保證檢測到超過40us的脈沖持續時間,因此,本地喚醒輸出脈沖必須具有至少40us的持續時間才能被可靠地檢測到。
3TJA1101睡眠與喚醒應用實例
圖3
它展示了TJA1101各種狀態轉換,轉換條件限于篇幅有限不便解釋未標出,它完全遵循了睡眠轉換過程規范,即實現了圖1所示的睡眠轉換途徑。
3.1TJA1101睡眠功能
TJA1101除了遵循睡眠轉換過程規范外,還進行了擴展,其表現如下:
擴展了一些進入睡眠模式的其他方式,比如PHY睡眠時可以不通過握手確認;
鏈路伙伴可以拒絕接受LPS命令而不進入睡眠請求狀態。
此外,TJA1101要成功進行睡眠轉換還應注意以下問題:
在進入睡眠請求模式后,應停止鏈路數據傳輸和訪問PHY寄存器操作,并保證沒有喚醒事件發生(除非拒絕喚醒);
需要握手確認睡眠請求的,應使鏈路伙伴進行相應配置,例如禁止睡眠拒絕;
當PHY配置為SLAVE時且鏈路已連接時,若想主動進行睡眠轉換,則還需要禁止遠程喚醒,否則PHY無法進入睡眠模式,對于該點的解釋將在下文介紹。
3.2TJA1101喚醒及喚醒轉發TJA1101的喚醒及喚醒轉發機制也遵循了該規范,但除了喚醒持續時間與喚醒檢測時間可以配置等比較基礎的擴展外而無明顯的功能擴展,但受到該規范啟發,在利用該功能時應注意以下問題:
相比TJA1101引入了待機(STANDBY)模式,但TJA1101被喚醒后進入待機模式而不會直接進入正常模式;
當PHY配置為MASTER時且處于正常模式時,若鏈路伙伴處于睡眠狀態時,即便沒有主動設置喚醒,鏈路伙伴也會退出睡眠模式,出現該現象的原因是因為PHY在這種情況下會發送IDLE使鏈路伙伴被喚醒,正如上文“喚醒及喚醒轉發規范”第三點規定,如需避免該問題可使鏈路伙伴設置為禁止喚醒。
4結語
以上就是車載PHY的喚醒與睡眠規范概要及應用實例,盡管各半導體制造商設計的車載PHY在擴展功能上會有所差異,但萬變不離其宗——規范,它們均會參照OPEN聯盟制定的規范,所以掌握該規范會使得你可以更輕松利用各種車載PHY的喚醒和睡眠功能
-
以太網
+關注
關注
40文章
5419瀏覽量
171603 -
脈沖
+關注
關注
20文章
889瀏覽量
95620
原文標題:你不知道的車載以太網睡眠喚醒姿勢!
文章出處:【微信號:Zlgmcu7890,微信公眾號:周立功單片機】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論