国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

淺談ARM體系CPU的7種工作模式

發布時間:2017-11-24 11:34    發布者:傲壹電子
ARM有37個寄存器,其中31個通用寄存器,6個狀態寄存器。本文主要討論的是ARM體系的CPU的7種工作模式。

  一、存儲器格式(字對齊)

  Arm體系結構將存儲器看做是從零地址開始的字節的線性組合。從零字節到三字節放置第一個存儲的字(32位)數據,從第四個字節到第七個字節放置第二個存儲的字數據,一次排列。作為32位的微處理器,arm體系結構所支持的最大尋址空間為4GB。

  存儲器格式

  1、大端格式:高字節在低地址,低字節在高地址;

  2、小端格式:高字節在高地址,低字節在低地址。

  指令長度

  Arm微處理器的指令長度是32位的,也可以為16位(thumb狀態下)。Arm微處理器中支持字節(8位),半字(16位),字(32位)三種數據類型,其中,字需要4字節對齊,半字需要2字節對齊。

  注:所謂的指令長度是一條完整的指令的長度,而不是單純的mov這3個字母長度。

淺談ARM體系CPU的7種工作模式

  二、ARM體系的CPU有兩種工作狀態

  1、ARM狀態:處理器執行32位的字對齊的ARM指令;

  2、Thumb狀態:處理器執行16位的、半字對齊的Thumb指令。

  在程序運行的過程中,可以在兩種狀態之間進行相應的轉換。處理器工作狀態的轉變并不影響處理器的工作模式和相應寄存器中的內容。

  CPU上電處于ARM狀態。

  三、ARM體系的CPU有以下7種工作模式

  1、用戶模式(Usr):用于正常執行程序;

  2、快速中斷模式(FIQ):用于高速數據傳輸;

  3、外部中斷模式(IRQ):用于通常的中斷處理;

  4、管理模式(svc):操作系統使用的保護模式;

  5、數據訪問終止模式(abt):當數據或指令預取終止時進入該模式,可用于虛擬存儲以及存儲保護。

  6、系統模式(sys):運行具有特權的操作系統任務;

  7、未定義指令中止模式(und):當未定義的指令執行時進入該模式,可用于支持硬件。

  CPU的模式可以簡單的理解為當前CPU的工作狀態,比如:當前操作系統正在執行用戶程序,那么當前CPU工作在用戶模式,這時網卡上有數據到達,產生中斷信號,CPU自動切換到一般中斷模式下處理網卡數據(普通應用程序沒有權限直接訪問硬件),處理完網卡數據,返回到用戶模式下繼續執行用戶程序。

  特權模式

  除用戶模式外,其它模式均為特權模式(Privileged Modes)。ARM內部寄存器和一些片內外設在硬件設計上只允許(或者可選為只允許)特權模式下訪問。此外,特權模式可以自由的切換處理器模式,而用戶模式不能直接切換到別的模式。

  異常模式

  特權模式中除系統(system)模式之外的其他5種模式又統稱為異常模式。它們除了可以通過在特權下的程序切換進入外,也可以由特定的異常進入。比如硬件產生中斷信號進入中斷異常模式,讀取沒有權限數據進入中止異常模式,執行未定義指令時進入未定義指令中止異常模式。其中管理模式也稱為超級用戶模式,是為操作系統提供軟中斷的特有模式,正是由于有了軟中斷,用戶程序才可以通過系統調用切換到管理模式 。

  (1)用戶模式

  用戶模式是用戶程序的工作模式,它運行在操作系統的用戶態,它沒有權限去操作其它硬件資源,只能執行處理自己的數據,也不能切換到其它模式下,要想訪問硬件資源或切換到其它模式只能通過軟中斷或產生異常。

  (2)系統模式

  系統模式是特權模式,不受用戶模式的限制。用戶模式和系統模式共用一套寄存器,操作系統在該模式下可以方便的訪問用戶模式的寄存器,而且操作系統的一些特權任務可以使用這個模式訪問一些受控的資源。

  (3)一般中斷模式

  一般中斷模式也叫普通中斷模式,用于處理一般的中斷請求,通常在硬件產生中斷信號之后自動進入該模式,該模式為特權模式,可以自由訪問系統硬件資源。

  (4)快速中斷模式

  快速中斷模式是相對一般中斷模式而言的,它是用來處理對時間要求比較緊急的中斷請求,主要用于高速數據傳輸及通道處理中。

  (5)管理模式

  管理模式是CPU上電后默認模式,因此在該模式下主要用來做系統的初始化,軟中斷處理也在該模式下,當用戶模式下的用戶程序請求使用硬件資源時通過軟件中斷進入該模式。

  (6)終止模式

  中止模式用于支持虛擬內存或存儲器保護,當用戶程序訪問非法地址,沒有權限讀取的內存地址時,會進入該模式,Linux下編程時經常出現的segment fault通常都是在該模式下拋出返回的。

  (7)未定義模式

  未定義模式用于支持硬件協處理器的軟件仿真,CPU在指令的譯碼階段不能識別該指令操作時,會進入未定義模式。

技術資料出處:電子發燒友網
該文章僅供學習參考使用,版權歸作者所有。

AO-Electronics 傲壹電子
官網:www.aoelectronics.com 中文網:www.aoelectronics.cn

本文地址:http://m.qingdxww.cn/thread-519848-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區
關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 白百合在线观看| 日产精品一区二区| 午夜视频18| 亚洲国产精选| 色综综| 中文字幕伦伦精品| 永久免费黄色软件| 久久99国产精品蜜臀AV| 特级毛片内射WWW无码| 清纯唯美亚洲综合五月天| 天天看片天天爽| 亚洲色图欧美偷拍| 精品久久久噜噜噜久久7| 最新在线黄色网址| 欧美综合国产精品日韩一| 亚洲大片免费观看| 又粗又大的机巴好爽7| 好大好爽好深舒服死了| 永久免费观看视频| 亚州中文字幕| 亚洲天天| 伊人久久精品线影院| 精品国产5g影院天天爽| 最近日本免费观看MV免费| 青青青免费高清在线观看视频在线| 石原莉奈在线观看| 4438成人情人网站| 免费一级片网站| 一级毛片日韩| 欧美写真视频一区| 亚洲欧美日韩中文不卡| 在线免费看高清视频大全| 欧美506070| 亚洲欧美一区二区三区在线观看| 青娱乐在线观看| 婷婷久久综合九色综合九七| 高hnp全肉| 一区二一二| 天天干狠狠干| 失禁尿丝袜vk| 国产99久久久国产精品成人 |