衡阳派盒市场营销有限公司

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

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

3天內不再提示

ARM處理器中斷向量表

麥辣雞腿堡 ? 來源:TrustZone ? 作者:TrustZone ? 2023-10-30 17:19 ? 次閱讀

ARM處理器中,當一個中斷信號被觸發時,中斷控制器會發出一個中斷請求,并將該請求傳遞給CPU

CPU接收到中斷請求后,會根據中斷號在中斷向量表中查找對應的中斷服務程序入口地址。

中斷向量表是一個預定義的表,其中每個條目都包含一個指向特定中斷服務程序的入口地址。當CPU接收到中斷請求時,它會根據中斷號在表中查找對應的條目,獲取對應的入口地址,并跳轉到該地址執行相應的中斷服務程序。

在這個過程中,程序員可以通過設置中斷向量表中的條目來定義不同中斷源的中斷服務程序入口地址。

這樣可以實現自定義的中斷處理邏輯,根據不同的中斷事件執行相應的操作。

需要注意的是,在ARM處理器中,不同的工作模式(例如User、FIQ、IRQ、SVC等)使用不同的寄存器集和特權級別。

當中斷發生時,CPU會根據當前的工作模式和中斷向量表中的條目,確定要跳轉到的中斷服務程序的入口地址。然后它會將CPU的狀態保存到相應的棧中,并跳轉到該地址執行中斷服務程序。

在ARM處理器中,中斷向量表是一個預定義的表,它通常在系統啟動時由引導加載器(Bootloader)或操作系統進行定義和初始化。

引導加載器在系統啟動時負責加載和啟動操作系統的內核。在這個過程中,它會讀取存儲器中的中斷向量表數據,并將其復制到指定的內存地址。

這個地址通常是在系統配置時確定的,以確保中斷向量表可以在正確的位置被CPU訪問。操作系統在啟動后也會接管中斷向量表的管理和配置。它會根據系統中斷控制器和其他硬件設備的配置,將中斷向量表中的條目映射到相應的中斷服務程序入口地址。

這樣,當中斷發生時,CPU可以根據中斷號在中斷向量表中查找對應的條目,并跳轉到對應的地址執行相應的中斷服務程序。

需要注意的是,中斷向量表的定義方式和具體實現可能會因不同的ARM處理器架構和系統設計而有所不同。

因此,具體的定義位置和方式可能會因硬件平臺和操作系統而有所差異。

Raw Interrupt和Masked Interrupt

Raw Interrupt和Masked Interrupt是兩種中斷類型,它們在ARM處理器中被用來處理中斷。

Raw Interrupt(原始中斷)是指外部中斷源的狀態,無論ARM芯片是否屏蔽該中斷源,這個中斷源的中斷狀態都會被寄存器存儲,從而可以通過相應的函數讀取。

Masked Interrupt(屏蔽中斷)是指是否屏蔽的狀態。在ARM處理器中,每個中斷源都有一個與之對應的屏蔽觸發器,如果該中斷源被屏蔽(即MASK=1),那么即使INTR被置為1,CPU也不會響應這個中斷請求。換句話說,屏蔽觸發器可以阻止特定的中斷源向CPU發送中斷請求。所有的屏蔽觸發器組合在一起,構成了屏蔽寄存器。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19407

    瀏覽量

    231180
  • ARM
    ARM
    +關注

    關注

    134

    文章

    9165

    瀏覽量

    369184
  • 中斷
    +關注

    關注

    5

    文章

    900

    瀏覽量

    41750
  • 架構
    +關注

    關注

    1

    文章

    519

    瀏覽量

    25551
收藏 人收藏

    評論

    相關推薦

    ARM體系架構處理器中斷程序分析

    基礎知識 ARM體系架構的處理器中通常將低地址32字節作為中斷向量表,當中斷產生時會執行以下操作: ① 保存處理器當前狀態,設置
    的頭像 發表于 11-21 11:10 ?2603次閱讀
    <b class='flag-5'>ARM</b>體系架構<b class='flag-5'>處理器</b>的<b class='flag-5'>中斷</b>程序分析

    ARM中斷向量表問題

    請問圖中代碼時ARM中斷向量表的實現嗎?如果是,為何中斷服務程序中最后都有指令B .它的作用是什么,看不懂它為何要跳轉到當前地址,這樣不是死循環了嗎下面這張圖是我找了STM32的啟動代碼,也是有B .
    發表于 02-20 13:55

    MM32 IAP中斷向量表重定義

    = FLASH_BASE | VECT_TAB_OFFSET;該寄存的值來實現中斷向量表的重定義。但用戶反饋在MM32L0xx系列以Cortex-M0為內核的單片機中卻怎么也找不到這個設置中斷向量表的寄存
    發表于 02-01 17:22

    一種基于ARM嵌入式系統的中斷向量表的動態配置方法設計

    編代碼編程的程序員尤其如此。當需要在程序運行過程中動態修改中斷向量的程序時會感到更為不便,不得不增加很多分支處理指令才能實現。為此本文提出一種簡便高效的配置方法,實現了ROM固化程序在運行時動態配置ARM嵌入式系統
    發表于 06-18 07:20

    怎么理解中斷向量

    256個),它的地址范圍是0~3FFH在arm處理器中斷向量的大小為4個字節。在中斷向量里面不是存儲的中斷服務程序的入口地址,而是跳轉到
    發表于 08-27 10:24

    中斷號定義與中斷向量表

    1、中斷號定義在stm32f10x.h中定義枚舉類型IRQn中,定義了各個中斷中斷號。2、中斷向量表嵌套向量
    發表于 08-13 06:27

    智能設置中斷向量表的方法

    來源:公眾號【魚鷹談單片機】作者:魚鷹OspreyID :emOsprey在有 boot 的情況下,一般需要重新設置 app 的中斷向量表,使得中斷向量表從 boot 切換到 APP ...
    發表于 01-21 07:51

    設置中斷向量表的過程

    在有 boot 的情況下,一般需要重新設置 app 的中斷向量表,使得中斷向量表從 boot 切換到 APP 部分,大部分的工程師會使用類似下面這種方式設置中斷向量表的地址 0x0800 ...
    發表于 02-14 06:34

    ARM中斷向量表異常處理過程解析

    現場如果CPU正在處理別的中斷,當前中斷不能得到及時處理,0.5秒后按鍵抬起,中斷消失,解決辦法:CPU通過
    發表于 05-05 10:16

    ARM中斷向量兩種設置方法

    在32位ARM系統中,一般都是在中斷向量表中放置一條分支指令或PC寄存加載指令,實現程序跳轉到中斷服務例程的功能。
    發表于 01-12 19:06 ?4660次閱讀

    ARM中斷向量表與響應流程的系列資料詳細說明

    本文檔的主要內容詳細介紹的是ARM中斷向量表與響應流程的系列資料詳細說明包括了:一首先中斷向量表定義在哪里?如何加載?,二 中斷向量表中斷
    發表于 07-05 17:41 ?2次下載
    <b class='flag-5'>ARM</b><b class='flag-5'>中斷向量表</b>與響應流程的系列資料詳細說明

    一文了解Cortex-M中斷向量表對齊原則

    來源 | 痞子衡嵌入式 一、Cortex-M中斷向量表對齊原則 ? 中斷向量表就是一個集中保存系統全部中斷處理函數(xxxIRQHandler)地址的常量數組(函數地址要占 4 個字節
    的頭像 發表于 10-19 11:06 ?5153次閱讀
    一文了解Cortex-M<b class='flag-5'>中斷向量表</b>對齊原則

    【stm32】STM32F0系列MCU中斷向量表的重映射

    【stm32】STM32F0系列MCU中斷向量表的重映射
    發表于 11-18 16:36 ?13次下載
    【stm32】STM32F0系列MCU<b class='flag-5'>中斷向量表</b>的重映射

    一文了解Cortex-M中斷向量表對齊原則

    關注+星標公眾號,不錯過精彩內容來源| 痞子衡嵌入式一、Cortex-M中斷向量表對齊原則中斷向量表就是一個集中保存系統全部中斷處理函數(xxxIRQHandler)地址的常量數組(函
    發表于 12-01 12:21 ?9次下載
    一文了解Cortex-M<b class='flag-5'>中斷向量表</b>對齊原則

    如何智能設置中斷向量表?| 簡單實用技能

    在有 boot 的情況下,一般需要重新設置 app 的中斷向量表,使得中斷向量表從 boot 切換到 APP 部分,大部分的工程師會使用類似下面這種方式設置中斷向量表的地址 0x0800 ...
    發表于 12-09 10:36 ?13次下載
    如何智能設置<b class='flag-5'>中斷向量表</b>?| 簡單實用技能
    百家乐出千桌| 大发888备用a99.com| 大发888 xp缺少 casino| 博王娱乐| 百家乐官网赌场代理合作| 百家乐官网实战玩法| 百家乐官网三国| 信誉好百家乐平台| 大发888游戏场下载| 百家乐官网庄闲的分布| 百家乐规则澳门| 太阳城娱乐官方网站| 百家乐官网实战技术| 正品百家乐官网网站| 百家乐五铺的缆是什么意思| 尚义县| 百家乐官网麻将筹码币镭射贴膜| 百家乐博乐城| 网上博彩业| 免费百家乐官网过滤软件| 水果机规律| 定制百家乐官网桌垫| 属猪属蛇做生意怎么样| 百家乐技巧经| 九寨沟县| 亚洲百家乐官网博彩的玩法技巧和规则 | 大发888娱乐方下载| 百家乐官网开户优惠多的平台是哪家 | 百家乐官网网真人真钱群| 百家乐技巧头头娱乐| bet365注册找谁| 百家乐官网大天堂| 百家乐荷| 百家乐官网鸿泰棋牌| 狮威百家乐赌场娱乐网规则| 百家乐官网线上游戏| 玩百家乐输澳门百家乐现场| 百家乐博彩| 百家乐注册优惠平台| 百家乐官网代理新闻| 什么是24山风水|