日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ARM WFI和WFE指令

發布時間:2025/4/5 编程问答 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ARM WFI和WFE指令 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. 前言

蝸蝸很早以前就知道有WFI和WFE這兩個指令存在,但一直似懂非懂。最近準備研究CPU idle framework,由于WFI是讓CPU進入idle狀態的一種方法,就下決心把它們弄清楚。

WFI(Wait for interrupt)和WFE(Wait for event)是兩個讓ARM核進入low-power standby模式的指令,由ARM architecture定義,由ARM core實現。聽著挺簡單,但怎么會有兩個指令?它們的區別是什么?使用場景是什么?深究起來,還挺有意思,例如:能想象WFE和spinlock的關系嗎?

2. WFI和WFE

1)共同點

WFI和WFE的功能非常類似,以ARMv8-A為例(參考DDI0487A_d_armv8_arm.pdf的描述),主要是“將ARMv8-A PE(Processing Element, 處理單元)設置為low-power standby state”。

需要說明的是,ARM architecture并沒有規定“low-power standby state”的具體形式,因而可以由ARM core自行發揮,根據ARM的建議,一般可以實現為standby(關閉clock、保持供電)、dormant、shutdown等等。但有個原則,不能造成內存一致性的問題。以Cortex-A57?ARM core為例,它把WFI和WFE實現為“put the core in a low-power state by disabling the clocks in the core while keeping the core powered up”,即我們通常所說的standby模式,保持供電,關閉clock。

2)不同點

那它們的區別體現在哪呢?主要體現進入和退出的方式上。

對WFI來說,執行WFI指令后,ARM core會立即進入low-power standby state,直到有WFI Wakeup events發生。

而WFE則稍微不同,執行WFE指令后,根據Event Register(一個單bit的寄存器,每個PE一個)的狀態,有兩種情況:如果Event Register為1,該指令會把它清零,然后執行完成(不會standby);如果Event Register為0,和WFI類似,進入low-power standby state,直到有WFE Wakeup events發生。

WFI wakeup event和WFE wakeup event可以分別讓Core從WFI和WFE狀態喚醒,這兩類Event大部分相同,如任何的IRQ中斷、FIQ中斷等等,一些細微的差別,可以參考“DDI0487A_d_armv8_arm.pdf“的描述。而最大的不同是,WFE可以被任何PE上執行的SEV指令喚醒。

所謂的SEV指令,就是一個用來改變Event Register的指令,有兩個:SEV會修改所有PE上的寄存器;SEVL,只修改本PE的寄存器值。下面讓我們看看WFE這種特殊設計的使用場景。

3. 使用場景

1)WFI

WFI一般用于cpuidle。

2)WFE

WFE的一個典型使用場景,是用在spinlock中(可參考arch_spin_lock,對arm64來說,位于arm64/include/asm/spinlock.h中)。spinlock的功能,是在不同CPU core之間,保護共享資源。使用WFE的流程是:

a)資源空閑

b)Core1訪問資源,acquire lock,獲得資源

c)Core2訪問資源,此時資源不空閑,執行WFE指令,讓core進入low-power state

d)Core1釋放資源,release lock,釋放資源,同時執行SEV指令,喚醒Core2

e)Core2獲得資源

以往的spinlock,在獲得不到資源時,讓Core進入busy loop,而通過插入WFE指令,可以節省功耗,也算是因禍(損失了性能)得福(降低了功耗)吧。

?

原創文章,轉發請注明出處。蝸窩科技,www.wowotech.net。

總結

以上是生活随笔為你收集整理的ARM WFI和WFE指令的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日本黄页网站免费大全 | 国产精品久久久网站 | 日韩在线影视 | 欧美福利网| 人妻天天爽夜夜爽一区二区三区 | 香蕉视频久久 | 欧美成人中文字幕 | 精品国产免费观看 | 国产免费看av | 久久入| 新超碰在线 | 日韩久久久久久久 | 激情视频在线播放 | 亚洲免费成人av | 亚洲av综合色区无码二区爱av | 欧美三级在线看 | 亚洲 欧美 另类 综合 偷拍 | 久草国产在线 | 中国a级大片 | 91成人在线免费观看 | 制服.丝袜.亚洲.中文.综合懂 | 日韩亚洲欧美精品 | 99一区二区 | 欧美无马| 亚洲一区二区免费在线观看 | 一区二区三区免费毛片 | 欧美区在线观看 | 麻豆视频一区二区三区 | 永久免费看成人av的动态图 | 欧美韩国日本 | 国产美女无遮挡网站 | 九九九热视频 | 青娱乐在线视频免费观看 | 亚洲第一av网站 | 日韩中文字幕免费视频 | 日韩极品视频 | 草在线| 强行挺进皇后紧窄湿润小说 | www..com黄色 | 在线视频观看免费 | 日本精品视频在线观看 | 在线观看亚洲 | 国产精品亚洲а∨天堂免在线 | 国产又粗又黄 | 国产高清免费在线播放 | 91色视频在线观看 | 日韩国产成人在线 | 中国亚洲女人69内射少妇 | 国产一级视频在线观看 | 韩国成人理伦片免费播放 | 黄色网址在线播放 | 青青视频网 | 国产在线a视频 | 欧美极品在线视频 | 国产精品无码电影 | 久久新 | 欧美日免费 | 76少妇精品导航 | 久久高潮视频 | 精品自拍第一页 | 男女免费视频 | 深爱开心激情 | 亚洲性色视频 | 狠狠躁夜夜躁av无码中文幕 | 国产成人av电影 | 精品女同一区二区三区 | 爽妇综合网 | 亚洲AV无码精品久久一区二区 | 国产精品理论片 | 亚洲依依| 亚洲精品少妇一区二区 | 另类视频一区 | 高清中文字幕mv的电影 | 国精产品一二三区精华液 | 日日射夜夜 | 国产成人精品一区在线播放 | 成人免费视频视频 | 欧美精品久久久久久久 | 狼性av| 久久伊人成人网 | 色噜噜成人| 国产美女精品久久 | 精品人妻大屁股白浆无码 | 青草草在线观看 | 国产又色又爽又高潮免费 | 欧美一级高潮片 | 蜜臀av性久久久久蜜臀aⅴ | 一级肉体全黄裸片中国 | 国产精品国产精品国产专区不卡 | 在线看91| 国产精品国产三级国产专播品爱网 | 在线观看亚洲大片短视频 | 999一区二区三区 | 91中文字日产乱幕4区 | 午夜大片| 狠狠干女人 | 奇米影视在线视频 | 日日操天天射 | 国产一区二区视频在线播放 |