91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

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

安芯 ? 來(lái)源:jf_29981791 ? 2025-12-13 14:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

全稱(chēng)為Core Local Interruptor(核心本地中斷控制器),是 RISC-V 特權(quán)架構(gòu)規(guī)范(Privileged Architecture Specification)中明確定義的內(nèi)建于每個(gè)核心 / 硬件線程(hart)的中斷控制器,專(zhuān)門(mén)處理「核心本地、非共享」的中斷類(lèi)型,區(qū)別于處理外設(shè)共享中斷的 PLIC(Platform-Level Interrupt Controller,平臺(tái)級(jí)中斷控制器)。

1、為什么需要 CLINT?

RISC-V 核心在運(yùn)行時(shí),需要處理兩類(lèi)截然不同的中斷需求:

一類(lèi)是全局共享中斷(如 UART 收發(fā)、GPIO 電平變化、SPI 通信完成等),這類(lèi)中斷來(lái)自外部外設(shè),需多個(gè)核心共享處理;

另一類(lèi)是核心本地中斷(如定時(shí)任務(wù)、核心間通信),這類(lèi)中斷僅屬于單個(gè)核心,要求極低的響應(yīng)延遲,無(wú)需總線仲裁。

CLINT 的設(shè)計(jì)初衷正是為了解決第二類(lèi)需求 —— 通過(guò)將中斷控制器 “內(nèi)嵌” 到每個(gè) hart 中,避免總線傳輸帶來(lái)的延遲,確保核心對(duì)本地關(guān)鍵事件(如定時(shí)器到期、核心間喚醒)的快速響應(yīng),這也是其 “Core Local”(核心本地)命名的由來(lái)。

CLINT 模塊產(chǎn)生 CSR****寄存器的定時(shí)器中斷、軟件中斷和計(jì)時(shí)器。

CLINT的系統(tǒng)架構(gòu)示意圖

2、CLINT 功能說(shuō)明

CLINT 由軟件中斷觸發(fā)器、定時(shí)器中斷觸發(fā)器、計(jì)數(shù)器組成。 軟件中斷觸發(fā)器由一個(gè)寄存器構(gòu)成,直連 CPU 的機(jī)器級(jí)軟件中斷。 計(jì)數(shù)器負(fù)責(zé)提供 CPUTIMETIMEH ,并參與定時(shí)器中斷的觸發(fā)。 定時(shí)器中斷觸發(fā)器用于定時(shí)器中斷 的觸發(fā),當(dāng)計(jì)數(shù)器值大于配置的值時(shí)會(huì)觸發(fā)定時(shí)器中斷**,**定時(shí)器中斷是嵌入式系統(tǒng)中最常用的中斷類(lèi)型,幾乎所有 RTOS(如 FreeRTOS、RT-Thread)的任務(wù)調(diào)度都依賴(lài)定時(shí)器中斷提供的 “時(shí)鐘節(jié)拍”

2.1 CLINT初始化

2.2 軟件中斷:

寫(xiě) 0 則清除中斷掛起狀態(tài)

2.3定時(shí)器中斷:

中斷處理函數(shù)中,更新比較閾值(實(shí)現(xiàn)周期性觸發(fā)),并執(zhí)行調(diào)度邏輯(如 RTOS 的任務(wù)切換)。

2.3讀取CLINT計(jì)數(shù)器:

2.4延時(shí)函數(shù)通過(guò)計(jì)數(shù)器功能計(jì)算延時(shí)時(shí)間

CLINT 的 64 位全局計(jì)數(shù)器time/timeh提供了高精度的時(shí)間基準(zhǔn),可直接用于實(shí)現(xiàn)微秒級(jí) / 毫秒級(jí)精準(zhǔn)延時(shí),無(wú)需依賴(lài)外部定時(shí)器。

延時(shí)函數(shù)實(shí)現(xiàn)原理:

進(jìn)入延時(shí)函數(shù)時(shí),讀取當(dāng)前計(jì)數(shù)器值told;

計(jì)算需要的總時(shí)鐘節(jié)拍數(shù)(ticks = 延時(shí)時(shí)間(us) × 時(shí)鐘頻率(MHz));

循環(huán)讀取當(dāng)前計(jì)數(shù)器值tnow,計(jì)算累計(jì)節(jié)拍數(shù)tcnt;

當(dāng)tcnt >= ticks時(shí),延時(shí)結(jié)束。

3、CLINT 的常見(jiàn)應(yīng)用場(chǎng)景

① RTOS 時(shí)鐘節(jié)拍生成

FreeRTOS 等 RTOS 的任務(wù)調(diào)度依賴(lài)固定周期的時(shí)鐘節(jié)拍,通常將 CLINT 定時(shí)器中斷配置為 1ms 觸發(fā)一次,在中斷處理函數(shù)中調(diào)用vTaskIncrementTick(),實(shí)現(xiàn)任務(wù)就緒狀態(tài)更新和調(diào)度器切換。

② 多核系統(tǒng)啟動(dòng)

在 RISC-V 多核芯片中,主核心啟動(dòng)后,通過(guò)向從核心的SOFTICR寄存器寫(xiě) 1,觸發(fā)從核心的軟件中斷,從核心在中斷處理函數(shù)中完成棧初始化、應(yīng)用加載,實(shí)現(xiàn)多核心協(xié)同工作。

③ 精準(zhǔn)數(shù)據(jù)采樣

工業(yè)控制、傳感器采集等場(chǎng)景中,需按固定時(shí)間間隔(如 100us)采集數(shù)據(jù),通過(guò) CLINT 定時(shí)器中斷觸發(fā)采樣函數(shù),確保采樣周期的穩(wěn)定性和精準(zhǔn)度。

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

    關(guān)注

    147

    文章

    18934

    瀏覽量

    398503
  • 中斷控制器
    +關(guān)注

    關(guān)注

    0

    文章

    63

    瀏覽量

    9821
  • RISC-V
    +關(guān)注

    關(guān)注

    48

    文章

    2888

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    易靈思Sapphire SoC中RISC-V平臺(tái)級(jí)中斷控制器深度解析

    隨著 RISC -V處理在 FPGA 領(lǐng)域的廣泛應(yīng)用,易靈思 FPGA 的 Sapphire RISC-V 內(nèi)核憑借軟硬核的靈活支持,為開(kāi)發(fā)者提供多樣選擇。本文深入探討 Sapph
    的頭像 發(fā)表于 11-08 09:35 ?7836次閱讀
    易靈思Sapphire SoC中<b class='flag-5'>RISC-V</b>平臺(tái)級(jí)<b class='flag-5'>中斷控制器</b><b class='flag-5'>深度</b><b class='flag-5'>解析</b>

    如何在RISC-V處理上使用FreeRTOS?

    芯片使用向量中斷控制器,需為每個(gè)向量安裝freertos_risc_v_trap_handler。7. 移植到新的32/64位RISC-V實(shí)現(xiàn)
    發(fā)表于 11-29 15:54

    ARM的中斷控制器

    文主要粗略的講述了ARM體系結(jié)構(gòu)當(dāng)中,GICv2版本的中斷控制器邏輯和原理(現(xiàn)在GICv3, GICv4越來(lái)越多,這里先描述簡(jiǎn)單一點(diǎn)的V2)。 什么是中斷控制器呢?中斷控制器就是負(fù)責(zé)將
    發(fā)表于 08-29 08:39

    ESP32-C6技術(shù)參考手冊(cè)

    CPU 內(nèi)核具有 4 級(jí)有序標(biāo)量流水線,針對(duì)面積、功耗、性能等進(jìn)行了優(yōu)化。CPU 內(nèi)核架構(gòu)包含調(diào)試模塊 (DM)、中斷控制器 (INTC)、核心本地中斷 (CLINT) 和用于訪問(wèn)存
    發(fā)表于 09-18 07:19

    華芯微特MCU的嵌套向量中斷控制器與外部中斷/事件控制器的使用方法

    01. 嵌套向量中斷控制器(NVIC) NVIC的全稱(chēng)是Nested vectoredinterrupt controller,即嵌套向量中斷控制器。 Cortex-M0和Cortex-M4提供了
    的頭像 發(fā)表于 06-04 12:08 ?4606次閱讀
    華芯微特MCU的嵌套向量<b class='flag-5'>中斷控制器</b>與外部<b class='flag-5'>中斷</b>/事件<b class='flag-5'>控制器</b>的使用方法

    中斷控制器的驅(qū)動(dòng)解析(上)

    這里主要分析 linux kernel 中 GIC v3 中斷控制器的代碼(drivers/irqchip/irq-gic-v3.c)。設(shè)備樹(shù)先來(lái)看下一個(gè)中斷控制器的設(shè)備樹(shù)信息:gic
    發(fā)表于 12-04 16:36 ?10次下載
    <b class='flag-5'>中斷控制器</b>的驅(qū)動(dòng)<b class='flag-5'>解析</b>(上)

    扒開(kāi) ARM 中斷控制器的底褲

    GIC 硬件原理GIC,Generic Interrupt Controller。是ARM公司提供的一個(gè)通用的中斷控制器。主要作用為:接受硬件中斷信號(hào),并經(jīng)過(guò)一定處理后,分發(fā)給對(duì)應(yīng)的CPU...
    發(fā)表于 12-04 17:36 ?6次下載
    扒開(kāi) ARM <b class='flag-5'>中斷控制器</b>的底褲

    細(xì)說(shuō)STM32的中斷控制器(NVIC)那些事

    分組、中斷優(yōu)先級(jí)的配置、讀中斷請(qǐng)求標(biāo)志、清除中斷請(qǐng)求標(biāo)志、使能中斷、清除中斷等,它控制著STM3
    發(fā)表于 01-14 15:54 ?6次下載
    細(xì)說(shuō)STM32的<b class='flag-5'>中斷控制器</b>(NVIC)那些事

    關(guān)于ARM中斷控制器的介紹

    GIC 硬件原理 GIC,Generic Interrupt Controller。是ARM公司提供的一個(gè)通用的中斷控制器。主要作用為:接受硬件中斷信號(hào),并經(jīng)過(guò)一定處理后,分發(fā)給對(duì)應(yīng)的CPU進(jìn)行處理
    的頭像 發(fā)表于 07-08 09:34 ?3444次閱讀

    STM32外部中斷控制器EXTI詳解

    什么是外部中斷控制器,外部中斷控制器在STM32芯片中處于什么位置,它的作用是什么,EXTI與GPIO的映射關(guān)系?
    的頭像 發(fā)表于 04-20 11:44 ?4029次閱讀
    STM32外部<b class='flag-5'>中斷控制器</b>EXTI詳解

    中斷控制器級(jí)聯(lián)的類(lèi)型有哪幾種

    中斷控制器的級(jí)聯(lián) 根據(jù)中斷數(shù)量的不同,中斷控制器可以級(jí)聯(lián),以此來(lái)滿(mǎn)足需求。比如在 GIC 中斷控制器之前都會(huì)連接 EINT中斷控制器,或者其
    的頭像 發(fā)表于 09-28 14:15 ?1486次閱讀
    <b class='flag-5'>中斷控制器</b>級(jí)聯(lián)的類(lèi)型有哪幾種

    PLIC平臺(tái)級(jí)中斷控制器介紹

    平臺(tái)級(jí)中斷控制器(PLIC) PLIC:Platform-Level Interrupt Controller. 實(shí)際上,除了CLINT管理的軟件中斷和定時(shí)
    的頭像 發(fā)表于 10-07 17:53 ?2405次閱讀
    PLIC平臺(tái)級(jí)<b class='flag-5'>中斷控制器</b>介紹

    CLINT中斷控制器優(yōu)先級(jí)和搶占

    內(nèi)核本地中斷CLINT) 下圖為CLINT示意圖,CLINT通過(guò)固定的中斷號(hào)和優(yōu)先級(jí),可將軟件中斷
    的頭像 發(fā)表于 10-08 09:30 ?1571次閱讀
    <b class='flag-5'>CLINT</b><b class='flag-5'>中斷控制器</b>優(yōu)先級(jí)和搶占

    RISC-V SiFive U54內(nèi)核的中斷介紹

    類(lèi)型的 RISC-V 中斷本地和全局。 本地中斷:U54內(nèi)核的本地中斷只有2種,軟件中斷和定時(shí)
    的頭像 發(fā)表于 10-08 09:39 ?1562次閱讀
    <b class='flag-5'>RISC-V</b> SiFive U54內(nèi)核的<b class='flag-5'>中斷</b>介紹

    RISC-V異常中斷機(jī)制全解析

    RISC-V 作為開(kāi)源、模塊化的精簡(jiǎn)指令集架構(gòu),其異常中斷機(jī)制是保障系統(tǒng)可靠運(yùn)行、響應(yīng)外部事件與處理內(nèi)部錯(cuò)誤的核心支撐。
    的頭像 發(fā)表于 12-28 14:41 ?1462次閱讀
    <b class='flag-5'>RISC-V</b>異常<b class='flag-5'>中斷</b>機(jī)制全<b class='flag-5'>解析</b>