摘要: 本文主要對Armv7-M架構中的同步和信號進行介紹。
關鍵字:Armv7-M架構、同步、信號、
在Armv7-M中,內存訪問語句(加載或存儲)支持非阻塞同步,允許在讀寫階段對信號量執(zhí)行計算,在多處理器系統(tǒng)設計中可以方便的應用。
在Armv7-M中,支持的同步語句:
加載獨占指令:LDREX,LDREXB,LDREXH
存儲獨占指令:STREX,STREXB,STREXH
清除獨占指令:CLREX
本文以LDREX和STREX指令為例,對同步操作進行介紹。其他語句LDREXB和STREXB、LDREXH和STREXH于此相同不再贅述。
使用加載獨占/存儲獨占指令對內存地址x的模型為:
加載指令總是可以從內存地址x中正確的讀出一個值;
對應的存儲指令,只有當其他處理器或進程沒有對地址x進行存儲時,才能正確的寫入內存地址x。同時會返回一個狀態(tài)位,表示內存寫入成功。
不可共享內存的獨占指令:
訪問內存指令與本地監(jiān)視器標記的地址相同,則可以完成指令。
共享內存的獨占指令:
對于共享內存,全局監(jiān)視器將物理地址標記為特定處理器獨占訪問。全局監(jiān)視器保存每個標記的地址,維護訪問狀態(tài)。
只有當所訪問的物理地址被標記為請求的處理器獨占訪問,并且請求處理器的本地監(jiān)視器和全局監(jiān)視器狀態(tài)機都處于獨占訪問時,則可以完成指令。
來源:《Armv7-M Architecture Reference Manual 》
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
關于億道電子
億道電子技術有限公司(英文名稱:Emdoor Electronics Technology Co.,Ltd)是國內資深的研發(fā)工具軟件提供商,公司成立于 2002 年,面向中國廣大的制造業(yè)客戶提供研發(fā)、設計、管理過程中使用的各種軟件開發(fā)工具,致力于幫助客戶提高研發(fā)管理效率、縮短產品設計周期,提升產品可靠性。
20 年來,先后與 Altium、ARM、Ansys、QT、Adobe、Visu-IT、Minitab、Testplant、EPLAN、HighTec、GreenHills、PLS、Ashling、MSC Software 、Autodesk、Source Insight、TeamEDA、MicroFocus等多家全球知名公司建立戰(zhàn)略合作伙伴關系,并作為他們在中國區(qū)的主要分銷合作伙伴服務了數千家中國本土客戶,為客戶提供從芯片級開發(fā)工具、EDA 設計工具、軟件編譯以及測試工具、結構設計工具、仿真工具、電氣設計工具、以及嵌入式 GUI 工具等等。億道電子憑借多年的經驗積累,真正的幫助客戶實現了讓研發(fā)更簡單、更可靠、更高效的目標。

歡迎關注“億道電子”公眾號
了解更多研發(fā)工具軟件知識

首頁 > 新聞資訊
