0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

車載PHY的喚醒與睡眠的正確姿勢

UtFs_Zlgmcu7890 ? 來源:工程師曾玲 ? 2019-02-02 17:10 ? 次閱讀

適應汽車網(wǎng)聯(lián)趨勢,以及舒適性的需求,車載以太網(wǎng)將會在汽車車載網(wǎng)絡中得到普遍應用。而基于安全考慮,往往汽車的相關產(chǎn)品和協(xié)議規(guī)范會將工程師們繞的暈頭轉向。小編在這就給各位看官解鎖汽車以太網(wǎng)PHY睡眠和喚醒的正確姿勢。

1相關命令介紹

由于IEEE802.3bw規(guī)范沒有制定鏈路睡眠和喚醒的機制,因此,OPEN聯(lián)盟制定了該規(guī)范并定義了新命令作為對IEEE802.3bw規(guī)范的補充。新命令包括LPS、WUR和WUP,這三個命令在PHY芯片手冊十分常見,故而理解這些命令是十分必要的。

Low Power Sleep(LPS)

低功耗睡眠(LPS)是某節(jié)點向鏈路伙伴指示睡眠請求的命令。當鏈路已建立起連接時,LPS由請求轉換到睡眠狀態(tài)的節(jié)點發(fā)送。

Wake-Up Request(WUR)

喚醒請求(WUR)是某節(jié)點向鏈路伙伴指示喚醒請求的命令。WUR可以由節(jié)點PHY或交換機PHY發(fā)送,并通過活動鏈路轉發(fā)。

Wake-Up Pulse(WUP)

喚醒脈沖(WUP)也是對鏈路伙伴指示喚醒請求的命令。但與WUR不同,WUP通過非活動鏈路轉發(fā)喚醒請求。

該規(guī)范定義的這三個命令,用于請求斷電或通過活動鏈路和非活動鏈路發(fā)出喚醒信號。

2睡眠與喚醒規(guī)范

如果暫時不需要節(jié)點的功能并為了降低功耗,可以進入睡眠模式。在睡眠模式下,除喚醒輸入和活動檢測外,所有內部功能都將關閉。

如果網(wǎng)絡中有節(jié)點處于睡眠狀態(tài),當需要該節(jié)點工作時,通過喚醒并配合喚醒轉發(fā),可以靈活地使得一些節(jié)點或快速使全局節(jié)點退出睡眠模式。喚醒分為本地喚醒和遠程喚醒,本地喚醒是通過喚醒引腳喚醒節(jié)點,而遠程喚醒是通過雙絞線遠程喚醒節(jié)點。

網(wǎng)絡管理可選擇關閉網(wǎng)絡所選節(jié)點并協(xié)調,這種可選擇性鏈路關閉和快速全局喚醒的網(wǎng)絡概念特別適用于汽車以太網(wǎng)。

2.1 睡眠轉換過程規(guī)范

車載PHY的喚醒與睡眠的正確姿勢

圖1

首先假設鏈路已連接,此時鏈路雙方均處于正常模式,則經(jīng)歷以下步驟:

如果一端PHY決定要進入睡眠模式,則PHY將先進入睡眠請求狀態(tài)并將發(fā)送LPS命令;

接收到LPS命令的鏈路伙伴進入睡眠確認狀態(tài)并啟動一個“睡眠確認定時器”,如果沒有設置睡眠拒絕且在該定時器超時前沒有接受到數(shù)據(jù)消息,則鏈路伙伴也將進入睡眠請求狀態(tài)并發(fā)送LPS命令;

此時PHY和鏈路伙伴檢測到它已發(fā)送和接收LPS命令,則它轉換到靜音狀態(tài)并最終進入睡眠模式;而如果PHY在“睡眠請求定時器”超時之前未完成握手,則PHY進入睡眠失敗并返回正常模式。

2.2 喚醒及喚醒轉發(fā)規(guī)范

對于喚醒及喚醒轉發(fā)規(guī)范應注意以下幾點:

喚醒的命令取決于鏈路的狀態(tài)。如果鏈路已連接,則PHY將通過活動鏈路發(fā)送WUR命令;如果鏈路斷開,PHY將發(fā)送WUP命令。如果連接尚未建立,例如因為連接建立仍在準備中,則首先建立連接,然后發(fā)送WUR命令。

多PHY設備(例如,交換機)實現(xiàn)了選擇性喚醒轉發(fā)機制。如果多PHY設備在一個端口上檢測到WUR或WUP,則必須可以將請求轉發(fā)到設備的其他PHY。通過斷開鏈路(WUP)喚醒或通過連接鏈路(WUR)喚醒到另一個PHY。此外,還應該在喚醒事件時發(fā)生時產(chǎn)生指示標志。喚醒檢測過程的實現(xiàn)留給PHY供應商,且不得超過2ms。

鏈路上任何傳輸?shù)腎DLE模式都將觸發(fā)喚醒檢測。如果在設計時不注意這一點,可能使得一些不期望的喚醒發(fā)生,故本文將在之后以TJA1101作為實例應用時說明。

車載PHY的喚醒與睡眠的正確姿勢

圖2

LP1、LP2、LP3可以是PHY或交換機,它們的端口P1和P2可以是MDI或喚醒I/O引腳。當LP的某一端口檢測到WUP/WUR或本地喚醒時且轉發(fā)使能,則在其端口通過喚醒I/O輸出喚醒信號或發(fā)送WUP/WUR轉發(fā)喚醒信息至另一端口,如LP1中的P2和P1的喚醒過程。喚醒轉發(fā)功能使得網(wǎng)絡具有了快速全局喚醒能力。

該規(guī)范規(guī)定PHY的喚醒過程應滿足以下要求:

必須有專用I/O引腳喚醒,且引腳應支持喚醒轉發(fā)輸出和本地喚醒輸入;

對于多PHY設計,可以連接這些引腳,且必須為高電平有效,但I/O電壓留給設計者;

在本地喚醒引腳處識別喚醒請求的脈沖持續(xù)時間閾值應至少為10us,低于此值的脈沖將被忽略,必須保證檢測到超過40us的脈沖持續(xù)時間,因此,本地喚醒輸出脈沖必須具有至少40us的持續(xù)時間才能被可靠地檢測到。

3TJA1101睡眠與喚醒應用實例

車載PHY的喚醒與睡眠的正確姿勢

圖3

它展示了TJA1101各種狀態(tài)轉換,轉換條件限于篇幅有限不便解釋未標出,它完全遵循了睡眠轉換過程規(guī)范,即實現(xiàn)了圖1所示的睡眠轉換途徑。

3.1TJA1101睡眠功能

TJA1101除了遵循睡眠轉換過程規(guī)范外,還進行了擴展,其表現(xiàn)如下:

擴展了一些進入睡眠模式的其他方式,比如PHY睡眠時可以不通過握手確認;

鏈路伙伴可以拒絕接受LPS命令而不進入睡眠請求狀態(tài)。

此外,TJA1101要成功進行睡眠轉換還應注意以下問題:

在進入睡眠請求模式后,應停止鏈路數(shù)據(jù)傳輸和訪問PHY寄存器操作,并保證沒有喚醒事件發(fā)生(除非拒絕喚醒);

需要握手確認睡眠請求的,應使鏈路伙伴進行相應配置,例如禁止睡眠拒絕;

當PHY配置為SLAVE時且鏈路已連接時,若想主動進行睡眠轉換,則還需要禁止遠程喚醒,否則PHY無法進入睡眠模式,對于該點的解釋將在下文介紹。

3.2TJA1101喚醒及喚醒轉發(fā)TJA1101的喚醒及喚醒轉發(fā)機制也遵循了該規(guī)范,但除了喚醒持續(xù)時間與喚醒檢測時間可以配置等比較基礎的擴展外而無明顯的功能擴展,但受到該規(guī)范啟發(fā),在利用該功能時應注意以下問題:

相比TJA1101引入了待機(STANDBY)模式,但TJA1101被喚醒后進入待機模式而不會直接進入正常模式;

當PHY配置為MASTER時且處于正常模式時,若鏈路伙伴處于睡眠狀態(tài)時,即便沒有主動設置喚醒,鏈路伙伴也會退出睡眠模式,出現(xiàn)該現(xiàn)象的原因是因為PHY在這種情況下會發(fā)送IDLE使鏈路伙伴被喚醒,正如上文“喚醒及喚醒轉發(fā)規(guī)范”第三點規(guī)定,如需避免該問題可使鏈路伙伴設置為禁止喚醒。

4結語

以上就是車載PHY的喚醒與睡眠規(guī)范概要及應用實例,盡管各半導體制造商設計的車載PHY在擴展功能上會有所差異,但萬變不離其宗——規(guī)范,它們均會參照OPEN聯(lián)盟制定的規(guī)范,所以掌握該規(guī)范會使得你可以更輕松利用各種車載PHY的喚醒和睡眠功能

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 以太網(wǎng)

    關注

    40

    文章

    5343

    瀏覽量

    170803
  • 脈沖
    +關注

    關注

    20

    文章

    882

    瀏覽量

    95475

原文標題:你不知道的車載以太網(wǎng)睡眠喚醒姿勢!

文章出處:【微信號:Zlgmcu7890,微信公眾號:周立功單片機】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    一文搞懂Linux進程的睡眠喚醒

    用完時,此進程會進入就緒態(tài),如果此進程正在執(zhí)行一些IO操作(阻塞操作)會進入阻塞態(tài),完成IO操作(阻塞結束)后又可進入就緒態(tài),等待CPU的調度,當進程運行結束即進入結束態(tài)。 一、睡眠機制與喚醒機制
    發(fā)表于 11-04 15:15

    如何設置以及喚醒stm32 ucos下睡眠?

    請教一下ucos進入睡眠模式,是不是應該先掛起所有任務然后進入睡眠,還是直接進入睡眠等待喚醒(等待喚醒任務是否還在執(zhí)行調度)?
    發(fā)表于 07-29 00:42

    睡眠時的BOR/LPBOR無法喚醒

    。但我的意思是,如果棕色的持續(xù)時間很長,那么PIC通常會醒來嗎?棕色是否會導致PIC無法正常喚醒或根本無法喚醒的情況?如果可能的話,那么我會在睡眠時也啟用BOR。我可以在沒有睡眠時啟用
    發(fā)表于 10-12 14:46

    求助!關于arduino睡眠喚醒

    我用arduino讀取數(shù)據(jù)寫了一個睡眠 用看門狗定時喚醒讀取數(shù)據(jù)但是喚醒后arduino的AI針腳不能讀取求大佬答疑??!
    發(fā)表于 07-02 19:06

    imx8qm中的睡眠喚醒順序是怎樣的?

    )設置為喚醒模式。3.向SCFW發(fā)送命令到DDR(自刷新)和所有A53進入掛起模式。4.等待SCU喚醒a53核。5. 從 OCRAM 執(zhí)行喚醒序列。我對睡眠
    發(fā)表于 04-20 07:44

    UJA1166ATK如何喚醒睡眠模式?

    WAKE 引腳進行本地喚醒。我將高到低信號應用于“喚醒”引腳。UJA1166ATK 仍處于睡眠模式。如果我嘗試從 canbus 應用遠程喚醒,我不知道 uja1166a 在正?;虼龣C
    發(fā)表于 04-20 07:54

    SJA1110喚醒-睡眠功能故障怎么解決?

    我將 SJA1110 的 100base-t1 phys 之一的喚醒-睡眠功能選擇配置為“ISO21111-7/OA TC-10 喚醒-睡眠功能”,將其他五個配置為“基本
    發(fā)表于 05-19 08:18

    從深度睡眠喚醒并不總是正確喚醒的原因?怎么解決?

    。 我正在做很多其他人似乎已經(jīng)嘗試過的事情(成功率有限),那就是制作一個電池供電的環(huán)境傳感器,將溫度和濕度數(shù)據(jù)發(fā)布到網(wǎng)絡上。我們似乎都想做的是使用 DeepSleep 功能每隔幾分鐘喚醒一次采樣、發(fā)布
    發(fā)表于 05-30 07:42

    漸響式睡眠喚醒器電路圖

    漸響式睡眠喚醒器電路圖
    發(fā)表于 05-25 13:43 ?1485次閱讀
    漸響式<b class='flag-5'>睡眠</b><b class='flag-5'>喚醒</b>器電路圖

    Linux進程的睡眠喚醒

    設想有兩個進程 A 和 B,A 進程正在處理一個鏈表,它需要檢查這個鏈表是否為空,如果不空就對鏈表里面的數(shù)據(jù)進行一些操作,同時 B 進程也在往這個鏈表添加節(jié)點。當這個鏈表是空的時候,由于無數(shù)據(jù)可操作,這時 A 進程就進入睡眠,當 B 進程向鏈表里面添加了節(jié)點之后它就喚醒
    的頭像 發(fā)表于 03-20 14:34 ?4326次閱讀

    安全充電的正確姿勢是怎樣的

    今天咱們就來聊聊第二步——論安全充電的正確姿勢
    的頭像 發(fā)表于 05-20 14:27 ?3156次閱讀

    GD32低功耗:深度睡眠喚醒系統(tǒng)時鐘變慢問題

    一、問題1、進入深度睡眠后,通過外部中斷喚醒,發(fā)現(xiàn)系統(tǒng)時鐘變慢。2、進入休眠模式,通過任何中斷喚醒,系統(tǒng)時鐘正常。二、原因1、從電源管理章節(jié)可知,睡眠模式下使用沒有什么需要需要注意的,
    發(fā)表于 12-02 15:06 ?21次下載
    GD32低功耗:深度<b class='flag-5'>睡眠</b><b class='flag-5'>喚醒</b>系統(tǒng)時鐘變慢問題

    STM32 低功耗睡眠模式(SLEEP)事件(EVENT)喚醒實現(xiàn)及優(yōu)化

    STM32 低功耗睡眠模式(SLEEP)事件(EVENT)喚醒實現(xiàn)及優(yōu)化1. 介紹STM32具有多種低功耗模式,當前以STM32L4系列的低功耗模式最為豐富,此處基于STM32L476
    發(fā)表于 12-31 19:08 ?34次下載
    STM32 低功耗<b class='flag-5'>睡眠</b>模式(SLEEP)事件(EVENT)<b class='flag-5'>喚醒</b>實現(xiàn)及優(yōu)化

    AN010 從深度睡眠模式2喚醒并恢復

    AN010 從深度睡眠模式2喚醒并恢復
    發(fā)表于 02-27 18:18 ?1次下載
    AN010 從深度<b class='flag-5'>睡眠</b>模式2<b class='flag-5'>喚醒</b>并恢復

    高效穩(wěn)定管理電源的正確姿勢”!

    高效穩(wěn)定管理電源的正確姿勢”!
    的頭像 發(fā)表于 11-23 09:04 ?381次閱讀
    高效穩(wěn)定管理電源的<b class='flag-5'>正確</b>“<b class='flag-5'>姿勢</b>”!