日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

3天內(nèi)不再提示

arm中斷是怎么實現(xiàn)的

工程師鄧生 ? 來源:未知 ? 作者:劉芹 ? 2023-09-05 16:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

arm中斷是怎么實現(xiàn)的

首先,了解什么是中斷。中斷是指在CPU執(zhí)行某個程序時,突然發(fā)生的一些事件需要CPU立即停止正在執(zhí)行的程序并去執(zhí)行該事件相應的程序,這個過程叫做中斷。中斷是系統(tǒng)中一個重要的機制,能夠提高系統(tǒng)的實時性和可靠性。在ARM處理器中,中斷的實現(xiàn)主要涉及到下面的幾點。

一、中斷控制器

ARM系統(tǒng)中,中斷控制器是實現(xiàn)中斷的重要組成部分。中斷控制器的主要作用是監(jiān)控外部硬件中斷請求并向CPU發(fā)出中斷請求信號,同時還需要根據(jù)優(yōu)先級為CPU分配中斷請求。

ARM中斷控制器有兩種類型:簡單中斷控制器(Simple Interrupt Controller,簡稱SIC)和通用中斷控制器(Generic Interrupt Controller,簡稱GIC)。SIC適用于較為簡單的系統(tǒng),而GIC則適用于較為復雜的系統(tǒng),支持更多的中斷請求。具體地,GIC一般包含一個中央控制器,多個本地控制器和一個分配器。中央控制器負責處理高優(yōu)先級中斷故障,本地控制器負責處理本地外設的中斷,分配器負責將中斷請求分配給本地控制器。

二、中斷向量表

在ARM中,中斷向量表是用來存儲中斷服務例程(Interrupt Service Routine,簡稱ISR)的一組內(nèi)存區(qū)域。中斷向量表中有多個向量表項,每個向量表項對應一種中斷類型,其中存儲著相應的中斷服務例程的入口地址。

中斷服務例程是中斷處理程序,用于響應中斷事件。當中斷請求發(fā)生時,中斷控制器會向CPU發(fā)送中斷請求,此時CPU讀取中斷向量表中相應的向量表項得到ISR的入口地址,然后跳轉(zhuǎn)到該地址執(zhí)行ISR。ISR會負責處理中斷事件,并將處理結果返回。

三、中斷的優(yōu)先級

在ARM中,設備的中斷請求有不同的優(yōu)先級,優(yōu)先級越高的請求將先被響應。中斷優(yōu)先級是在編譯鏈接時靜態(tài)確定的,每個設備都有一個預設的中斷請求優(yōu)先級,這些優(yōu)先級由系統(tǒng)設計人員在初始化系統(tǒng)時進行設置。

在中斷處理時,如果有多個中斷同時發(fā)生,CPU會先執(zhí)行優(yōu)先級最高的中斷,而其他中斷則被掛起。一旦執(zhí)行完畢,CPU會返回到掛起的中斷程序中繼續(xù)執(zhí)行,如此循環(huán)直至所有中斷都被處理完畢。

四、中斷處理流程

當外部設備發(fā)生中斷請求時,中斷控制器會對請求進行處理:

1、中斷請求的產(chǎn)生:外部設備發(fā)生某種事件的時候,向外部中斷控制器發(fā)出中斷請求。

2、中斷控制器的處理:中斷控制器接收到請求后,通過優(yōu)先級算法,確定優(yōu)先級最高的中斷,然后發(fā)送一個中斷請求到CPU。

3、中斷向量表的查詢:CPU響應中斷請求后,根據(jù)請求所對應的中斷類型,查詢中斷向量表得到對應的ISR入口地址。

4、執(zhí)行ISR:CPU通過跳轉(zhuǎn)到ISR入口地址開始執(zhí)行ISR代碼,中斷服務例程開始處理中斷事件。

5、保存現(xiàn)場:ISR代碼中,對于需要暫停程序的部分,需要保存當前程序現(xiàn)場以保證中斷處理結束后能正確恢復執(zhí)行的指令。

6、處理中斷:在ISR中,處理中斷的對應邏輯,確定該中斷事件對應的操作,并執(zhí)行相應的操作完成該中斷的處理。

7、恢復現(xiàn)場:中斷處理結束后,ISR需要恢復保存的現(xiàn)場,以便中斷結束后程序能繼續(xù)執(zhí)行。

通過以上的流程,ARM的中斷處理功能才可以有效地響應外部設備中斷請求,并完成對應的中斷處理工作,起到保障系統(tǒng)實時性和可靠性的作用。

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

    關注

    135

    文章

    9589

    瀏覽量

    393778
  • 中斷控制器
    +關注

    關注

    0

    文章

    64

    瀏覽量

    9853
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    一文看懂PCIe中斷機制

    PCIe 中斷機制主要分為兩類:一類是繼承自傳統(tǒng) PCI 的 物理中斷線(INTx)中斷,通過硬件引腳觸發(fā);另一類是 MSI(Message Signaled Interrupt)中斷
    的頭像 發(fā)表于 03-11 09:35 ?513次閱讀
    一文看懂PCIe<b class='flag-5'>中斷</b>機制

    Linux中斷“搬家”指南:從應用到操作,手把手教你轉(zhuǎn)移中斷核心(RK3588)

    在高性能服務器或嵌入式設備(如瑞芯微 RK3588)上,中斷處理的 CPU 核心綁定是優(yōu)化性能的關鍵手段之一。比如網(wǎng)卡中斷默認綁在小核上時,高網(wǎng)絡負載會導致小核過載,而大核卻“閑置”;通過中斷轉(zhuǎn)移,把網(wǎng)卡
    的頭像 發(fā)表于 02-04 16:20 ?937次閱讀
    Linux<b class='flag-5'>中斷</b>“搬家”指南:從應用到操作,手把手教你轉(zhuǎn)移<b class='flag-5'>中斷</b>核心(RK3588)

    最小化ARM Cortex-M CPU功耗的方法與技巧分享

    效率,降低了CPU時間浪費。除了更快進入中斷處理程序之外,NVIC也使得中斷之間切換更加高效。   在ARM7-TDMI內(nèi)核實現(xiàn)中,需要先花費數(shù)個時鐘周期從
    發(fā)表于 01-21 06:19

    CW32F030中斷解析

    中斷 1 概述 ARM? Cortex?-M0+ 內(nèi)核的嵌套向量中斷控制器 (NVIC),用于管理中斷和異常。NVIC 和處理器內(nèi)核緊密相連,可 以
    發(fā)表于 01-12 08:41

    RISC-V怎么實現(xiàn)核間中斷?核心本地中斷控制器(CLINT)深度解析

    全稱為Core Local Interruptor(核心本地中斷控制器),是 RISC-V 特權架構規(guī)范(Privileged Architecture Specification)中明確定義的內(nèi)建
    的頭像 發(fā)表于 12-13 14:06 ?2686次閱讀
    RISC-V怎么<b class='flag-5'>實現(xiàn)</b>核間<b class='flag-5'>中斷</b>?核心本地<b class='flag-5'>中斷</b>控制器(CLINT)深度解析

    電能質(zhì)量在線監(jiān)測裝置是如何實現(xiàn)對電壓中斷事件的識別的?

    30137-2013/IEC 61000-4-30 標準的中斷事件。具體實現(xiàn)流程可拆解為以下 6 個關鍵步驟,每個環(huán)節(jié)都有明確的技術邏輯和參數(shù)要求: 一、前置基礎:明確識別的 “國標門檻”(統(tǒng)一判定標準) 裝置首先內(nèi)置電壓中斷
    的頭像 發(fā)表于 11-27 16:32 ?1343次閱讀
    電能質(zhì)量在線監(jiān)測裝置是如何<b class='flag-5'>實現(xiàn)</b>對電壓<b class='flag-5'>中斷</b>事件的識別的?

    芯源MCU中斷相關寄存器

    5.5.1 NVIC 中斷使能和禁止使能 ARM? Cortex-M0+ 處理器支持最多32 個外部中斷源,分別對應中斷使能設置寄存器NIVC_ISER 的32 個使能位, 和
    發(fā)表于 11-27 07:23

    NVIC中斷使能與禁止使能

    ARM?Cortex-M0+ 處理器支持最多 32 個外部中斷源,分別對應中斷使能設置寄存器 NIVC_ISER 的 32 個使能位,和中斷使能清除寄存器 NVIC_ICER 的 32
    發(fā)表于 11-13 07:14

    關于蜂鳥E203內(nèi)核中斷硬件實現(xiàn)中斷嵌套的設計

    嵌套,都不應該響應這個新的中斷請求 要實現(xiàn)中斷嵌套,需要在中斷控制器中增加一個新的模塊,用于存儲當前被占用的IRQ編號,同時需要在處理每個IRQ時檢查當前正在處理的IRQ是否比新的I
    發(fā)表于 10-23 07:07

    瑞薩RA系列MCU的中斷過程介紹

    中斷來臨的時候會最先經(jīng)過IRQ寄存器,IRQ寄存器檢測到中斷的時候,會向中央處理嵌套向量中斷控制器NVIC發(fā)送中斷信號,當NVIC檢測到中斷
    的頭像 發(fā)表于 09-23 09:45 ?1547次閱讀
    瑞薩RA系列MCU的<b class='flag-5'>中斷</b>過程介紹

    Arm神經(jīng)技術是業(yè)界首創(chuàng)在 Arm GPU 上增添專用神經(jīng)加速器的技術,移動設備上實現(xiàn)PC級別的AI圖形性能

    Arm 神經(jīng)技術是業(yè)界首創(chuàng)在 Arm GPU 上增添專用神經(jīng)加速器的技術,首次在移動設備上實現(xiàn) PC 級別的 AI 圖形性能,為未來的端側 AI 創(chuàng)新奠定基礎 神經(jīng)超級采樣是 Arm
    的頭像 發(fā)表于 08-14 17:59 ?2946次閱讀

    Arm KleidiAI與XNNPack集成實現(xiàn)AI性能提升

    INT4 矩陣乘法 (matmul) 優(yōu)化以增強 Google Gemma 2 模型性能開始,到后續(xù)完成多項底層技術增強,Arm 在 XNNPack 上實現(xiàn)了顯著的性能提升。
    的頭像 發(fā)表于 08-08 15:19 ?3121次閱讀
    <b class='flag-5'>Arm</b> KleidiAI與XNNPack集成<b class='flag-5'>實現(xiàn)</b>AI性能提升

    Arm Neoverse N2平臺實現(xiàn)DeepSeek-R1滿血版部署

    頗具優(yōu)勢。Arm 攜手合作伙伴,在 Arm Neoverse N2 平臺上使用開源推理框架 llama.cpp 實現(xiàn) DeepSeek-R1 滿血版的部署,目前已可提供線上服務。
    的頭像 發(fā)表于 07-03 14:37 ?1452次閱讀
    <b class='flag-5'>Arm</b> Neoverse N2平臺<b class='flag-5'>實現(xiàn)</b>DeepSeek-R1滿血版部署

    第六章 外部中斷

    本章介紹W55MH32的IO口作為外部中斷輸入的使用。先闡述了NVIC(嵌套向量中斷控制器) 的結構、寄存器、優(yōu)先級及相關函數(shù),再說明EXTI(外部中斷和事件控制器)的功能??驁D及IO口與
    的頭像 發(fā)表于 05-26 16:27 ?1695次閱讀
    第六章 外部<b class='flag-5'>中斷</b>

    AS32X601驅(qū)動系列教程 PLIC_中斷應用詳解

    平臺中斷控制器(Platform Level Interrupt Controller,PLIC)是國科安芯AS32系列MCU芯片的中斷控制器,主要對中斷源進行采樣,優(yōu)先級仲裁和分發(fā)。各外設
    的頭像 發(fā)表于 05-23 17:10 ?833次閱讀
    AS32X601驅(qū)動系列教程 PLIC_<b class='flag-5'>中斷</b>應用詳解
    黄石市| 齐齐哈尔市| 门源| 武汉市| 平阳县| 乐清市| 乐山市| 阳高县| 大理市| 班玛县| 莱州市| 若尔盖县| 巴彦淖尔市| 海晏县| 安乡县| 莲花县| 岱山县| 马关县| 荣成市| 合作市| 大田县| 涿鹿县| 涟源市| 响水县| 赤水市| 广安市| 高尔夫| 那曲县| 丹寨县| 余干县| 桓台县| 陵水| 浮梁县| 嘉义市| 宁明县| 吉隆县| 和田市| 阿拉尔市| 台南县| 皮山县| 新和县|