AURIX 微控制器將三種強大的技術集成在一個硅芯片上,為嵌入式應用實現了新的功率、速度和經濟性水平。AURIX 微控制器旨在滿足最苛刻的嵌入式控制系統應用需求,在這些應用中,價格/性能、實時響應能力、計算能力、數據帶寬和功耗等相互競爭的因素是關鍵的設計要素。
TriCore 架構手冊描述了 Infineon Technologies TriCore 微控制器架構的核心架構和指令集。TriCore 是一種統一的 32 位微控制器-DSP 單核架構,針對實時嵌入式系統進行了優化。
TriCore 架構具有以下特點:
高性能和低功耗:TriCore 架構具有高效的指令集和流水線設計,可以實現高性能和低功耗。
實時響應能力:TriCore 架構具有多個實時特性,如多個優先級級別、硬體計時器和事件管理器,可以滿足實時嵌入式系統的嚴格要求。
安全性:TriCore 架構具有多種安全特性,如記憶體保護和片上加密引擎,可以保護系統免受攻擊。
TriCore 微控制器廣泛應用于汽車、工業和消費電子領域,如汽車發動機控制、安全系統、工業自動化控制和智能家居設備等。
AURIX TC3xx為TriCore 162 generation, 最多有6個300Mhz CPUs
AURIXTC3xx family system architecture
依不同的需求,AURIX TC3xx 有著先進的封裝技術提供最佳的價格/性能比,客戶可以在同一引腳兼容封裝中選擇不同的包裝。
AURIX TC3xx family package scalability
中斷管理模塊(Interrupt Router (IR))
在真實的應用中,存在大量的中斷事件。例如ADC采樣,通訊模組(CAN, UART, SPI, I2C....)等等,這些事件的處理都會中斷服務者停止運行程序,進而執行中斷優先權高的程序。完成后回到中斷處,繼續運行主程序。而AURIX TC3xx提供了最多六個CPUs核心,這些事件中都需要使用者來分配相對應的事件給各個CPUs執行,以減輕單一CPU的負擔。本文章主要介紹AURIX的系統中斷和事件處理,主要包含外部中斷、內部中斷和軟件中斷。中斷服務包含CPU與DMA。
Feature List
支持多達 1024 個服務請求的中斷系統
每個 ICU / 服務提供者支持多達 255 個服務請求優先級級別
支持多達 8 個 ICU / 服務提供者
為每個已實現的 CPU / DMA 模塊(服務提供者)提供一個專用的 ICU
低延遲仲裁 - 從收到服務請求到將其發送到服務提供者需要 3/4 個時鐘周期
每個外圍設備中斷都有一個專用的服務請求節點 (SRN)
每個 SRN 都有一個可編程的 8 位優先級向量
每個 SRN 都可以映射到一個已實現的 ICU / 服務提供者
SRN 在配置的服務提供者確認中斷時由硬件自動清除
支持完整性的中斷系統
每個 CPU 有 8 個通用服務請求 (GPSR),可用作軟件中斷(未分配給外圍設備或外部中斷)
服務請求廣播寄存器 (SRB) 可同時向多個服務提供者發送通用服務請求(軟件中斷)
優先級相關的中斷請求屏蔽(對于 CPU,相關控制寄存器包含在 CPU 中)
具有濾波模式和觸發模式的外部中斷(例如,下降沿、上升沿、高電平或低電平)。模式可以在運行時配置
CPU 喚醒支持(向 CPUx 發送服務請求會發信號給 SCU,在 CPUx 處于 IDLE 狀態時喚醒 CPUx)
Overview
中斷請求可以由 CPU 或 DMA 模塊來處理。中斷請求被稱為“Service Requests“,而不是“Interrupt Requests“,因為它們可以由任何一個Service Provider來處理。中斷系統在中斷路由器模塊(Interrupt Router)中實現,該模塊包括服務請求節點 (SRN)、中斷控制單元 (ICU) 和用于軟件開發支持的其他功能。
如下圖所示,每個可以生成服務請求的模塊都連接到中央中斷路由器模塊(Interrupt Router)中的一個或多個服務請求節點 (SRN)。中斷路由器模塊(Interrupt Router)還包括幾個用于軟件 (SW) 觸發服務請求的通用服務請求節點 (SRN)。每個 SRN 都包含一個服務請求控制寄存器 (SRC),用于配置服務請求,例如優先級、映射到可用Service Provider之一。
Block Diagram of the Interrupt System
每個Service Request 必須配置為由其中之一Service Provider來服務
每個 SRN 都連接到中斷路由器模塊(Interrupt Router)中的所有 ICU,其中 SRN 控制寄存器設置定義了目標Service Provider和服務請求的優先級。每個 ICU 處理來自映射到 ICU 的 SRN 的競爭服務請求之間的中斷仲裁。每個 ICU 都連接到一個Service Provider(CPU 或 DMA 模塊),其中 ICU 在仲裁回合中提供有效的獲勝Service Request/SRN,Service Provider反過來向 ICU 發信號表示何時以及正在處理哪個服務請求。
Tos
為每個服務請求分配優先級
每個服務請求必須分配一個從 0 到 255 的服務請求優先級號 (SRPN):
取決于所選的服務提供者 (TOS),SRPN 表示以下內容:
CPUx:相關服務請求的中斷優先級(SRPN 0 為不觸發)
DMA:要觸發的 DMA 通道的編號。
仲裁
對于每個 ISPx,IR (Interrupt Router)在映射到該 ISPx 的掛起服務請求組中進行仲裁。仲裁回合的獲勝者是具有最高優先級(SRPN 號碼)的掛起 SR。
仲裁是中斷系統中的一個重要過程,用于確定應由哪個服務提供者處理服務請求。在仲裁過程中,中斷路由器模塊 (IR) 會檢查映射到每個服務提供者 (ISPx) 的掛起服務請求組。IR 會選擇具有最高優先級(SRPN 號碼)的掛起服務請求,并將其發送到該 ISPx。
仲裁過程可以確保最緊急的服務請求得到優先處理。例如,如果一個外部設備需要立即傳輸重要數據,則 IR 會確保該設備的服務請求得到優先處理。
仲裁過程通常在一個硬件模塊中實現,該模塊能夠快速高效地進行仲裁。這確保了中斷系統能夠快速響應服務請求。
以下是一個仲裁過程的示例:
一個外部設備向中斷路由器模塊 (IR) 發送服務請求。
IR 檢查映射到該設備的服務提供者 (ISPx) 的掛起服務請求組。
IR 選擇具有最高優先級(SRPN 號碼)的掛起服務請求。
IR 將所選服務請求發送到 ISPx。
ISPx 處理服務請求。
Arbitration
結論
中斷系統是嵌入式系統中的重要組成部分,用于接收、管理和處理來自外圍設備和其他模塊的服務請求。Interrupt Roter是Aurix中斷系統的核心。每個外圍設備中斷都有專門的服務請求節點 (SRN),服務提供者和服務請求優先級號配置,中斷溢出,軟件中斷設置/清除。每個服務提供者都有專門的中斷控制單元 (ICU)對映射到不同 ISP 的待處理服務請求進行并行和獨立的仲裁。
支持優先級仲裁,以確保最緊急的服務請求得到優先處理。
支持多種Service Provider,包括 CPU 和 DMA 模塊。
支持多種Service Request,包括中斷請求和軟件(SW)觸發的服務請求。
提供使用者靈活的應用,以及可靠性的事件處理,采用硬件加速可快速響應服務的請求。
-
微控制器
+關注
關注
48文章
7487瀏覽量
151042 -
Infineon
+關注
關注
2文章
89瀏覽量
28975 -
中斷服務
+關注
關注
0文章
9瀏覽量
6828 -
Aurix
+關注
關注
1文章
71瀏覽量
10892
發布評論請先 登錄
相關推薦
評論