【方輝專(zhuān)欄】ARM64體系結(jié)構(gòu)編程與實(shí)踐學(xué)習(xí)筆記(六) ARM 通用中斷控制
2022-07-26
摘要: 本文主要對(duì)Arm通用中斷控制進(jìn)行簡(jiǎn)單介紹。關(guān)鍵字:Armv8、體系結(jié)構(gòu)、ARM架構(gòu)、中斷控制、GIC、通用中斷控制、GIC-7001. 中斷控制的發(fā)展在早期ARM系統(tǒng)中(例如ARM7/ARM9),采用單核處理器設(shè)計(jì),系統(tǒng)支持的中斷源比較少并且是單核處理器系統(tǒng),使用簡(jiǎn)單的寄存器表示每個(gè)中斷源的使能、關(guān)閉以及狀態(tài)。假設(shè)系統(tǒng)一共有64個(gè)中斷源,每個(gè)寄存器有32位,每位描述一個(gè)中斷,那么只需要兩個(gè)中斷使能寄存器(Interrupt Enable Register ,IER)和兩個(gè)中斷狀態(tài)寄存器(Interrupt Status Register,ISR)?,F(xiàn)在隨著處理器設(shè)計(jì)越來(lái)越復(fù)雜,中斷源變得越來(lái)越多,有的系統(tǒng)中斷源有幾百甚至上千個(gè),同時(shí)中斷類(lèi)型也越來(lái)越多。由于以上原因,ARM公司開(kāi)發(fā)了通用中斷控制(Generic Interrupt Controller,GIC)專(zhuān)門(mén)用于管理中斷。目前版本為GIC-4,典型的IP是GIC-700.2. GIC-700組成GIC-700包含以下幾個(gè)模塊,通過(guò)這些模塊,在系統(tǒng)內(nèi)實(shí)現(xiàn)符合GICv3 、GICv3.1 和 GICv4.1的中斷管理控制。2.1 GIC分配器(GIC Distributor ,GICD)分配器是所有 GIC 通信的中心,包含所有共享外設(shè)中斷 (SPI) 以及特定于位置的外設(shè)中斷 (LPI)的功能2.2 GIC集群接口 (GIC Cluster Interface,GCI)GIC集群接口維護(hù)一組特定內(nèi)核的專(zhuān)用外設(shè)中斷 (PPI) 和軟件生成中斷 (SGI)。GIC集群接口可以 從 1 到 64 個(gè)內(nèi)核擴(kuò)展,最好放置在它所服務(wù)的處理器旁邊,以減少到內(nèi)核的布線。GCI也稱(chēng)為再分配器。2.3 中斷翻譯服務(wù)(Interrupt Translation Service ,ITS)ITS轉(zhuǎn)換來(lái)自外部 PCI Express (PCIe) 根聯(lián)合體 (RC) 或其他來(lái)源的基于消息的中斷、消息信號(hào)中斷 (MSI/MSIx)。ITS 還在核心電源管理期間管理 LPI。GIC-700每個(gè)芯片最多支持 32 個(gè) ITS 模塊。2.4 SPI整理器(SPI Collator)GIC-700支持多達(dá)1984個(gè)分布在系統(tǒng)中的SPI 。 SPI Collator 使SPI 可以從Distributor 遠(yuǎn)程轉(zhuǎn)換為消息。這使得分配器的分層時(shí)鐘門(mén)控和其他更積極的低功耗狀態(tài)的使用成為可能。單個(gè)配置中最多可支持 32個(gè)SPI 整理器。1984 SPI 可以分布在 32 個(gè) SPI Collator 中,一個(gè) SPI Collator 中最多有1024個(gè) SPI。2.5 喚醒請(qǐng)求(Wake Request)喚醒請(qǐng)求包含芯片上每個(gè)內(nèi)核的所有架構(gòu)定義的喚醒請(qǐng)求 信號(hào)。 它是一個(gè)單獨(dú)的塊,可以遠(yuǎn)離分配器放置,例如靠近系統(tǒng)控制處理器。+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++關(guān)于億道電子億道電子技術(shù)有限公司(英文名稱(chēng):Emdoor Electronics Technology Co.,Ltd)是國(guó)內(nèi)資深的研發(fā)工具軟件提供商,公司成立于 2002 年,面向中國(guó)廣大的制造業(yè)客戶(hù)提供研發(fā)、設(shè)計(jì)、管理過(guò)程中使用的各種軟件開(kāi)發(fā)工具,致力于幫助客戶(hù)提高研發(fā)管理效率、縮短產(chǎn)品設(shè)計(jì)周期,提升產(chǎn)品可靠性。20 年來(lái),先后與 Altium、ARM、Ansys、QT、Adobe、Visu-IT、Minitab、Testplant、EPLAN、HighTec、GreenHills、PLS、Ashling、MSC Software 、Autodesk、Source Insight、TeamEDA、MicroFocus等多家全球知名公司建立戰(zhàn)略合作伙伴關(guān)系,并作為他們?cè)谥袊?guó)區(qū)的主要分銷(xiāo)合作伙伴服務(wù)了數(shù)千家中國(guó)本土客戶(hù),為客戶(hù)提供從芯片級(jí)開(kāi)發(fā)工具、EDA 設(shè)計(jì)工具、軟件編譯以及測(cè)試工具、結(jié)構(gòu)設(shè)計(jì)工具、仿真工具、電氣設(shè)計(jì)工具、以及嵌入式 GUI 工具等等。億道電子憑借多年的經(jīng)驗(yàn)積累,真正的幫助客戶(hù)實(shí)現(xiàn)了讓研發(fā)更簡(jiǎn)單、更可靠、更高效的目標(biāo)。歡迎關(guān)注“億道電子”公眾號(hào)了解更多研發(fā)工具軟件知識(shí)
查看更多→