CN116578530A - 片上系统、中断隔离方法及计算机设备 - Google Patents

片上系统、中断隔离方法及计算机设备 Download PDF

Info

Publication number
CN116578530A
CN116578530A CN202310486128.2A CN202310486128A CN116578530A CN 116578530 A CN116578530 A CN 116578530A CN 202310486128 A CN202310486128 A CN 202310486128A CN 116578530 A CN116578530 A CN 116578530A
Authority
CN
China
Prior art keywords
interrupt
execution environment
execution
identifier
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310486128.2A
Other languages
English (en)
Inventor
陈志星
郑文斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou C Sky Microsystems Co Ltd
Original Assignee
Pingtouge Shanghai Semiconductor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Pingtouge Shanghai Semiconductor Co Ltd filed Critical Pingtouge Shanghai Semiconductor Co Ltd
Priority to CN202310486128.2A priority Critical patent/CN116578530A/zh
Publication of CN116578530A publication Critical patent/CN116578530A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Microcomputers (AREA)

Abstract

本申请提供了一种片上系统、中断隔离方法及计算机设备,属于计算机技术领域。系统包括:中断控制器、基于RISC‑V架构的处理器及片内总线,中断控制器与处理器通过片内总线连接;中断控制器,用于存储不同执行环境对应的执行环境标识,并在接收到第一中断指令后,将第一中断指令发送至处理器,第一中断指令中携带目标中断源标识;处理器,用于响应于第一中断指令,从中断控制器中获取目标中断源标识对应的第一执行环境标识,并在第一执行环境标识与第二执行环境标识相同的情况下,在当前执行环境的相应执行域内执行第一中断指令,第二执行环境标识为当前执行域所属执行环境的执行环境标识。本申请能够提高中断指令的响应速度,缩短中断延迟。

Description

片上系统、中断隔离方法及计算机设备
技术领域
本申请涉及计算机技术领域,特别涉及一种片上系统、中断隔离方法及计算机设备。
背景技术
基于RISC-V(Reduced Instruction Set Computing-Five,第五代精简指令集)的处理器通过配置PLIC(Platform-Level Interrupt Controller,平台级中断控制器)和TF(Trusted Firmware,可信固件),能够实现REE(Rich Execution Environment,通用执行环境)和TEE(Trusted Execution Environment,可信执行环境)的中断隔离。
通常不同的执行环境对应不同的执行域,不同执行域之间需要进行中断隔离。为实现不同执行域的隔离,PLIC将外部的中断源均配置成机器模式(Machine Mode,简称M模式)。当接收到中断源的中断指令后,处理器切换至M模式,由运行在M模式的可信固件识别出该中断指令的中断源所属的执行域,将该中断指令转发至该执行域,然后处理器切换至超级用户模式(Supervisor Mode,简称S模式),由该执行域对应的操作系统执行该中断指令。
上述中断指令的处理需要借助可信固件进行转发,导致中断指令的响应速度较慢,中断响应延迟较大。
发明内容
本申请实施例提供了一种片上系统、中断隔离方法及计算机设备,能够提高中断指令的响应速度,缩短中断响应延迟。所述技术方案如下:
第一方面,提供了一种片上系统,所述系统包括:中断控制器、处理器及片内总线,所述中断控制器与所述处理器通过所述片内总线连接;
所述中断控制器,用于存储不同执行环境对应的执行环境标识,并在接收到第一中断指令后,将所述第一中断指令发送至所述处理器;
所述处理器,用于响应于所述第一中断指令,从所述中断控制器中获取所述第一中断指令对应的第一执行环境标识,并在所述第一执行环境标识与第二执行环境标识相同的情况下,在当前执行环境的相应执行域内执行所述第一中断指令,所述第二执行环境标识为当前执行域所属执行环境的执行环境标识。
第二方面,提供了一种中断隔离方法,所述方法应用于第一方面所述的片上系统,所述方法包括:
接收第一中断指令;
获取所述第一中断指令对应的第一执行环境标识;
在所述第一执行环境标识与第二执行环境标识相同的情况下,在所述当前执行环境的相应执行域内执行所述第一中断指令,所述第二执行环境标识为当前执行域所属的执行环境的执行环境标识。
第三方面,提供了一种片上系统,所述系统包括:中断控制器、处理器及片内总线,所述中断控制器与所述处理器通过所述片内总线连接;
所述中断控制器,用于存储不同执行环境对应的执行环境标识,并在接收到第一中断指令后,获取所述第一中断指令对应的第一执行环境标识,将所述第一执行环境标识添加到所述第一中断指令中,得到第二中断指令,将所述第二中断指令发送至所述处理器;
所述处理器,用于响应于所述第二中断指令,在所述第一执行环境标识与第二执行环境标识相同的情况下,在所述当前执行环境的相应执行域内执行所述第一中断指令,所述第二执行环境标识为当前执行域所属的执行环境的执行环境标识。
第四方面,提供了一种中断隔离方法,所述方法应用于第二方面所述的片上系统,所述方法包括:
接收第二中断指令,所述第二中断指令包括第一执行环境标识,所述第一执行环境标识为中断控制器发送的第一中断指令所属执行环境的执行环境标识;
响应于所述第二中断指令,在所述第一执行环境标识与第二执行环境标识相同的情况下,在当前执行环境的相应执行域内执行所述第二中断指令,所述第二执行环境标识为当前执行域所属的执行环境的执行环境标识。
第五方面,提供了一种计算机设备,包括片上系统、片外总线及存储器,所述片上系统与所述存储器通过所述片外总线连接;
所述片上系统如第一方面所述的片上系统,或,如第二方面所述的片上系统;
所述存储器用于存储至少一条计算机程序,所述至少一条计算机程序被所述片上系统的处理器加载并执行,以实现第三方面所述的中断隔离方法,或,实现第四方面所述的中断隔离方法。
第六方面,提供了计算机可读存储介质,所述计算机可读存储介质中存储有至少一条计算机程序,所述至少一条计算机程序被上述第一方面或第二方面所述的片上系统的处理器加载并执行,以实现第三方面或第四方面所述的中断隔离方法。
第七方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被上述第一方面或第二方面所述的片上系统的处理器加载并执行,以实现第三方面或第四方面所述的中断隔离方法。
本申请实施例提供的技术方案带来的有益效果是:
为不同的执行环境设置不同的执行环境标识,并由中断控制器存储不同执行环境对应的执行环境标识,使得不同的执行环境拥有各自独立的中断。当中断控制器接收到第一中断指令并将该第一中断指令发送至处理器后,处理器能够基于中断控制器中所存储的执行环境标识,确定出第一中断指令对应的第一执行环境标识,并将第一执行环境标识与当前执行域所属执行环境的第二执行环境标识进行比较,在第一执行环境标识与第二执行环境标识相同的情况下,即接收到与当前执行域所属执行环境相同的中断,直接在当前执行环境的相应执行域内执行该第一中断指令。该方法不仅确保了不同中断指令在相应的执行环境中执行,实现了不同执行环境的中断隔离,而且无需借助可信固件对第一中断指令进行转发,提高了中断指令的响应速度,缩短了中断响应延迟。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是一种基于RISC-V架构的处理器的架构图;
图2是现有的一种中断指令的传递流程图;
图3是现有的另一种中断指令的传递流程图;
图4是本申请实施例的一种中断指令的传递流程图;
图5是本申请实施例的另一种中断指令的传递流程图;
图6是本申请实施例提供的一种片上系统的结构示意图;
图7是本申请实施例提供的一种中断隔离方法的流程图;
图8是本申请实施例提供的另一种中断隔离方法的流程图;
图9是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
可以理解,本申请实施例所使用的术语“每个”、“多个”及“任一”等,多个包括两个或两个以上,每个是指对应的多个中的每一个,任一是指对应的多个中的任意一个。举例来说,多个词语包括10个词语,而每个词语是指这10个词语中的每一个词语,任一词语是指10个词语中的任意一个词语。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
首先在执行本申请实施例之前,对本申请实施例中涉及的名词进行解释。
中断(Interrupt)是指计算机运行过程中,出现某些意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理新情况的程序,处理完毕后又返回原被暂停的程序继续运行。
执行环境是指应用服务的运行环境。出于安全考虑,不同的应用服务需要运行在不同的执行环境。执行环境通常包括通用执行环境和可信执行环境。其中,通用执行环境用于运行通用操作系统和应用程序,比如Linux操作系统、安卓操作系统等。可信执行环境用于运行对安全具有特殊要求的操作系统和应用程序,比如支付应用程序等。
可信固件是一个开源软件,运行在一个硬件隔离的安全环境中并提供安全服务。硬件隔离是指基于处理器的多核结构通过一个独立的处理器核来实现的安全隔离。安全服务包括执行域切换功能及中断拦截功能等。安全服务仅仅暴露出有限的接口,这样可以降低被攻击的概率。可信固件拥有自己的资源和唯一的执行线程,进一步降低了被攻击的概率。
寄存器是有限存贮容量的高速存贮部件,用来暂存指令、数据及地址。在处理器的控制部件中包含的寄存器包括指令寄存器和程序计数器;在处理器的算术及逻辑部件中包含的寄存器包括累加器。
随着互联网和物联网的快速发展,联网设备数量高速增长,“万物互联”成为网络未来发展的重要方向。与此同时也催生了多样化的安全问题,目前应用普遍存在被破解、数据被窃取篡改等安全风险,对金融数据安全、个人隐私数据保护、服务数据完整性等造成极大的威胁。为了解决智能设备、物联网设备所面临的安全威胁,电子设备的芯片通常需要提供可信执行环境,确保芯片内的系统程序、设备参数、安全数据和用户数据不被篡改或非法获取。目前可信执行环境在移动、支付、DRM(Digital Rights Management,数字版权管理)、汽车、无人机、物联网等应用领域已广泛应用。
传统的RISC-V处理器并没有提供安全隔离技术,整体运行在通用执行环境中,无法实现可信执行环境。为了在RISC-V架构上实现可信执行环境,本申请基于RISC-V架构提供的PMP(Physical Memory Protection,物理内存保护)和多层特权模型,将处理器的访问空间划分出任意大小的物理内存区域,不同的物理内存区域授予不同的访问权限。同时针对每个物理内存区域虚拟出一个相互隔离的执行域(Domain),并为每个执行域设置一个域标识(Zone ID),例如,Zone0、Zone1、Zone2等,从而使得每个执行域可以独立地运行相应物理内存区域内的操作系统以及基于该操作系统的应用程序。处理器通过分时地运行在不同的执行域内,配合SoC(System on Chip,系统级芯片)等其他的保护机制,共同构建一个基于软硬件协同工作的安全系统,实现了内存访问隔离、外设隔离、I/O(Input/Output,输入输出)隔离、执行隔离及中断隔离等,满足了可信执行环境的隔离要求,避免每个执行域内的软硬件信息受到其他执行域的非法操作。
上述PMP机制是RISC-V架构提供的一种具有安全扩展能力的属性,用于隔离M模式与S/U模式下的内存访问。通常只有M模式才有权限配置PMP。PMP包含几组(通常是8到16个)地址寄存器以及相应的配置寄存器,这些配置寄存器可以授予或拒绝S/U模式对物理内存区域的读(R)、写(W)和执行(X)权限。PMP同时也能保护内存映射I/O(MMIO),M模式下的可信固件通过配置PMP来约束处理器对外设I/O的访问。
上述PMP机制要求每个执行域都有一个PMP配置信息,每个执行域的PMP配置信息中写有相应物理内存区域允许的访问权限。当处理器从一个执行域切换到另一个执行域时,PMP配置信息由可信固件进行更新。具体来说,M模式下的可信固件先保存当前执行域的PMP配置信息,然后载入下一个即将切换的执行域的PMP配置信息,完成对内存和内存映射I/O(MMIO)访问权限的切换。当多个执行域需要共享内存时,可以将需要共同访问的物理内存区域的访问权限同时授予给多个执行域,即将该块物理内存区域的允许访问权限写到每个执行域的PMP配置信息里。
上述多层特权模型是RISC-V架构提供的另一种具有安全扩展能力的属性,包括但不限于三种工作模式,如M模式、S模式及用户模式(User Mode,简称U模式)。M模式运行的是管理员执行环境,S模式运行的是操作系统,U模式运行的是应用程序。M模式具有最高权限,用于管理多个S模式环境的执行,并能拦截来自任何S/U模式环境的中断和异常。一般来说,M模式为必选模式,S/U模式为可选模式,通过不同的模式组合,可实现不同的系统。
在M模式下,可以通过PMP的锁定功能将M模式的访问限制在有限的物理内存区域内,比如只允许M模式访问、执行划分给可信固件的物理内存区域,以减少受到对M模式攻击的影响。该PMP的锁定功能可以为SMAP(Supervisor Memory Access Prevention,管理程序内存访问阻止)机制和SMEP(Supervisor Memory Execution Prevention,监督内存执行防止)机制,通过采用PMP的锁定功能,增加了对关键信息的保护。
图1示出了一种基于RISC-V架构的处理器,参见图1,该基于RISC-V架构的处理器包括多个硬件资源,比如RISC-V cores(RISC-V核心)、IOPMP(输入输出物理内存保护)、Root of Trust(可信根)、Optional Trusted HW(可选可信固件设计)等,以及部署在硬件资源上的多层软件堆栈,比如运行在M模式下的可信固件、运行在S模式下的操作系统(OS)及运行在U模式下的应用程序(APP)等。上述RISC-V处理器能够实现通用执行环境和可信执行环境。不同的执行环境对应不同的执行域,其中,通用执行环境对应的执行域为Domain#0,可信执行环境对应的执行域为Domain#1~Domain#N。图中以通用执行环境的操作系统为linux为例,实际上通用执行环境的操作系统还可以为其他操作系统,例如,安卓系统等。上述通用执行环境的操作系统与其上运行的各个应用程序以及各个应用程序之间通过MMU(Memory Management Unit,内存管理单元)进行隔离,通用执行环境的操作系统与可信执行环境的操作系统通过PMP机制或IOPMP机制进行隔离,可信执行环境的各个操作系统之间通过PMP机制或IOPMP机制进行隔离,可信固件与操作系统通过PMP机制或IOPMP机制进行隔离,可信固件与硬件设备通过MMU进行隔离。通过对软硬件进行隔离,RISC-V处理器实现了可信执行环境与通用执行环境的隔离。
现有技术提供了一种片上系统,该片上系统包括图1所示的基于RISC-V架构的处理器、平台级中断控制器等,该平台级中断控制器用于配置外部中断源的中断优先级以及外部中断源的特权模式和中断目标等。出于安全考虑,平台级中断控制器将外部所有中断源设置为M模式,且只允许M模式访问该平台级中断控制器,这样基于RISC-V架构的处理器在接收到外部中断源的中断指令后,需要切换到M模式,然后由M模式下的可信固件对中断指令进行转发。
图2示出了基于现有的片上系统的一种中断指令的传递流程图,参见图2,基于RISC-V架构的处理器在运行过程中,当接收到平台级中断控制器发送的REE中断指令(REE中断指令是指REE侧的中断源生成的中断指令),处理器切换到M模式,由运行在M模式下的可信固件存储当前执行域的上下文信息,然后确定出REE中断指令所属的执行域,进而将该REE中断指令发送至该执行域,并从M模式切换为S模式,在S模式下通过运行该执行域,执行该REE中断指令。当执行完该REE中断指令,处理器从S模式切换至M模式,可信固件获取该REE中断指令执行前所存储的执行域的上下文信息,然后从S模式切换至M模式,继续运行该执行域。对于TEE中断指令(TEE中断指令是指TEE侧的中断源生成的中断指令)处理过程也是如此。具体来说,当接收到平台级中断控制器发送的TEE中断指令,处理器切换到M模式,由运行在M模式下的可信固件存储当前执行域的上下文信息,然后确定出TEE中断指令所属的执行域,进而将该TEE中断指令发送至该执行域,并从M模式切换为S模式,在S模式下通过运行该执行域,执行该TEE中断指令。当执行完该TEE中断指令,处理器从S模式切换至M模式,可信固件获取该TEE中断指令执行前所存储的执行域的上下文信息,然后从S模式切换至M模式,继续运行该执行域。
图3也示出了基于现有的片上系统的一种中断指令的传递流程图,参见图3,中断指令:interrupt0、interrupt1、interrupt2分别属于Zone#0、Zone#1、Zone#2,当接收到interrupt0,基于RISC-V架构的处理器切换到M模式,然后将该interrupt0发送至Zone#0进行执行;当接收到interrupt1,基于RISC-V架构的处理器切换到M模式,然后将该interrupt1发送至Zone#1进行执行;当接收到interrupt2,基于RISC-V架构的处理器切换到M模式,然后将该interrupt2发送至Zone#2进行执行。
通过图2和图3可以看出,现有的中断指令的处理方法,无论是REE中断指令,还是TEE中断指令,所有的中断指令均需要借助可信固件进行转发,不仅增加了可信固件设计的复杂度,而且会导致一定的中断响应延迟。此外,出于安全考虑,只允许M模式访问平台级中断控制器,各执行域运行在S模式,这样中断服务程序对平台级中断控制器的访问需要切换到M模式,进一步增加固件设计复杂度和中断响应延时。
为了提升中断响应速度,缩短中断响应延迟,同时减低可信固件设计的复杂度,本申请实施例对原有的片上系统进行了改进,该改进体现在软件和硬件两方面。
软件方面,按照中断源所属的执行环境,对中断源进行分组,比如将中断源划分为REE的中断源及TEE的中断源等,并针对不同组别的中断源设置不同的工作模式。考虑到处理器接收到的大部分中断都是REE侧的中断,为了保障REE侧的中断性能,同时减低可信固件设计的复杂度,本申请实施例将REE的中断源设置为S模式,将TEE的中断源设置为M模式。当然,为了提升TEE侧性能,可适当增加可信固件设计的复杂度,将TEE的中断源也设置为S模式。
基于上述软件方面的创新,图4是本申请实施例提供的一种中断指令的传递流程图,参见图4,平台级中断控制器将REE的中断源设置为S模式,将TEE的中断设置为M模式。当接收到平台级中断控制器发送的REE中断指令,基于RISC-V架构的处理器在REE中断指令所属的执行域与当前执行域相同的情况下,无需切换到M模式,可直接执行该REE中断指令。当接收到平台级中断控制器发送的TEE中断指令,基于RISC-V架构的处理器切换到M模式,由运行在M模式下的可信固件进行转发,整个处理流程与图2中TEE的处理流程相同。通过对比可以看出,本申请实施例在REE中断指令的执行域与当前执行域相同的情况下,无需借助可信固件进行转发,提升了REE侧的中断性能。
硬件方面,可信固件初始化时,可为不同的执行环境设置不同的执行环境标识,并由中断控制器存储不同执行环境对应的执行环境标识。通过存储不同执行环境对应的执行环境标识,一方面,可实现REE、TEE、CEE、DEE等多种执行环境的隔离,相比于现有技术所能实现的REE和TEE隔离,在保障运行安全性的前提下,提高了基于RISC-V架构的处理器的处理能力;另一方面,在中断源所属的执行环境与当前执行环境相同的情况下,无需切换到M模式,基于RISC-V架构的处理器可直接访问中断控制器,提高了中断响应速度,缩短了中断响应延迟,提升了REE侧的中断性能和TEE侧的中断性能。
基于上述硬件方面的创新,图5是本申请实施例提供的一种中断指令的传递流程图,参见图5,在当前执行环境为REE时,基于RISC-V架构的处理器接收到平台级中断控制器发送的REE中断指令,确定该中断指令对应的执行环境与当前执行环境相同,直接在该执行环境的相关执行域内执行该中断指令。在当前执行环境为TEE时,基于RISC-V架构的处理器接收到平台级中断控制器发送的TEE中断指令,确定该中断指令对应的执行环境与当前执行环境相同,直接在该执行环境的相关执行域内执行该中断指令。采用本申请实施例提供的方法无论是REE侧的中断,还是TEE侧的中断,在当前执行环境与中断源所属的执行环境相同的情况下,均无需借助可信固件进行转发,提升了各个执行环境的中断性能,缩短了中断响应延迟。
图6是本申请实施例提供的一种片上系统,参见图6,该片上系统600包括中断控制器601、处理器602及片内总线603。该处理器602为基于RISC-V架构的处理器,该中断控制器601和处理器602通过片内总线603连接。
其中,中断控制器601可以为平台级中断控制器等。该中断控制器601在原有的中断控制器基础上进行了改进,不仅如现有的中断控制器可配置外部中断源的中断优先级以及外部中断源的特权模式和中断目标等,还存储不同执行环境对应的执行环境标识,该不同的执行环境标识由可信固件在初始化时进行设置。通过存储不同执行环境对应的执行环境标识,相当于将中断控制器601的中断进行了执行环境的划分,每个执行环境都可以拥有各自独立的中断,而不再需要可信固件进行转发。
在本申请实施例中,不同执行环境至少包括可信执行环境和通用执行环境,还包括其他执行环境,例如,CEE、DEE等。中断控制器中所存储的执行环境标识的数量,可根据中断控制器的内存确定,如果中断控制器的内存为4bit,则该中断控制器可支持存储16种执行环境的执行环境标识。
为了提高中断响应速度,降低中断响应延迟,中断控制器还将为不同的执行环境对应的中断源设置不同的工作模式。具体来说,可将通用执行环境对应的中断源设置为超级用户模式,将可信执行环境对应的中断源设置为超级用户模式。为了降低软件设计的复杂度,还可将可信执行环境对应的中断源设置为机器模式。通过为不同执行环境对应的中断源设置不同的工作模式,可从软件层面上保障REE侧的中断性能,同时最大限度地提升了TEE侧的中断性能。
处理器602的寄存器中存储有当前执行域的执行域标识,当处理器602的执行域发生切换时,该寄存器中存储的执行域标识也将随着执行域的切换而更新。处理器602的寄存器中还存储有执行域标识与执行环境标识之间的对应关系,从而能够基于当前执行域的执行域标识,确定出当前执行环境的第二执行环境标识。
在申请实施例中,中断控制器601可接收外部中断源产生的中断指令,进而将接收到的中断指令转发给处理器602,由处理器102执行该中断指令。中断控制器601在对中断指令进行转发时,可直接进行转发;也可以对该中断指令进行处理,生成携带中断源所属执行环境的执行环境标识的新的中断指令。针对这两种情况,下面将分别进行介绍。
第一种情况、中断控制器直接对中断指令进行转发
当目标中断源产生第一中断指令,目标中断源将该第一中断指令发送至中断控制器601,当接收到该第一中断指令,中断控制器601将该第一中断指令发送至处理器602。响应于该第一中断指令,处理器602从中断控制器601中获取第一中断指令对应的第一执行环境标识,并获取当前执行域所属执行环境的第二执行环境标识,进而将第一执行环境标识与第二执行环境标识进行比较,在第一执行环境标识与第二执行环境标识相同的情况下,也即是当前执行域所属的执行环境与发送第一中断指令的中断源所属的执行环境相同,处理器602在该当前执行环境的相应执行域内执行该第一中断指令。
其中,第一中断指令中携带目标中断源标识。为了更好地对不同中断源的中断进行管理,中断控制器601的寄存器中存储有中断源标识与执行环境标识之间的对应关系。处理器602从中断控制器601中获取第一中断指令对应的第一执行环境标识的过程为:在接收到该第一中断指令后,处理器602可向该中断控制器601发送访问请求,该访问请求中携带目标中断源标识,响应于该访问请求,中断控制器601根据存储的中断源标识与执行环境标识之间的对应关系,获取该目标中断源标识对应的第一执行环境标识,进而将该第一执行环境标识发送至处理器602。
为了提高中断控制器601中存储的数据的安全性,现有技术需要处理器陷入到机器模式才可访问该中断控制器601,而本申请实施例中的处理器602可直接访问该中断控制器601,加速了中断响应的同时,减低了软件设计的复杂度。
进一步地,为避免处理器602对中断控制器601的非法访问导致出现异常,处理器602可在访问请求中携带第二执行环境标识。当接收到处理器发送的访问请求,中断控制器对该访问请求进行解析,得到第二执行环境标识,进而判断该第二执行环境标识是否属于存储的执行环境标识,在第二执行环境标识属于存储的执行环境标识的情况下,也即是,该处理器602具有对该中断控制器的访问权限,则允许处理器访问,以执行获取目标源标识对应的第一执行环境标识的操作。在第二执行环境标识不属于存储的执行环境标识的情况下,也即是,该处理器602不具有对该中断控制器的访问权限,则拒绝处理器的访问,从而避免不具有访问权限的处理器对中断控制器的非法访问。
本申请实施例在处理器访问中断控制器时,基于当前执行环境的执行环境标识对处理器的访问进行校验,使得处理器对中断控制器的访问被限制在各自执行环境中,增加了片上系统的安全性。
在本申请实施例中,当基于物理内存机制和多层特权模型,为不同执行环境划分出相应的执行域后,可直接基于所划分的执行域,对相应执行环境的中断进行处理,也即是,属于同一执行环境的中断由同一执行域进行执行;还可对每种执行环境对应的执行域进一步细化,将其划分成多个更小的执行域,每个更小的执行域可对属于该执行环境的不同中断源的中断进行处理。为便于后续应用,处理器602还将执行环境标识与执行域标识的对应关系存储在寄存器中。
针对不同执行环境对应的执行域的不同划分机制,在第一执行环境标识与第二执行环境标识相同的情况下,处理器在当前执行环境的相应执行域内执行第一中断指令的方法是不同的。如果属于同一执行环境的中断由同一执行域进行执行,则处理器602可直接在当前执行域执行该第一中断指令;如果属于同一执行环境的中断由不同执行域执行,则处理器可根据存储的中断源标识与执行域标识之间的对应关系,获取该目标中断源标识对应的执行域标识,进而通过运行该执行域标识对应的执行域执行该第一中断指令。
进一步地,在第一执行环境标识与第二执行环境标识不相同的情况下,处理器切换到机器模式,通过运行当前执行域,将第一中断指令发送至运行在机器模式下的可信固件,然后有可信固件对第一中断指令进行转发。
对于上述片上系统对中断指令的处理过程,下面结合图5进行说明。假设平台级中断控制器将REE对应的中断源和TEE对应的中断源均设置为S模式,REE对应的执行域为domain0和domain1,TEE对应的执行域为domain2和domain3,中断指令①为REE对应的中断源发送的中断指令,且中断源所属的执行域为domain1,中断指令②为TEE对应的中断源发送的中断指令,且中断源所属的执行域为domain3,中断指令③为REE对应的中断源发送的中断指令,且中断源所属的执行域为domain0,中断指令④为TEE对应的中断源发送的中断指令,且中断源所属的执行域为domain2。
针对当前执行环境为REE的处理流程:
步骤S11,处理器当前运行在执行域domain0。
步骤S12,PLIC接收到中断指令①,该中断指令①中携带中断源标识,并将该中断指令①发送至处理器。
步骤S13,处理器在执行域domain1执行中断指令①对应的中断处理程序。
具体地,在接收到中断指令①后,处理器从PLIC中获取中断指令①对应的执行环境标识,并获取执行域domain0所属执行环境的执行环境标识,由于均属于REE执行环境,因而处理器根据中断指令①中携带的中断源标识,确定所属的执行域为domain1,进而直接在执行域domain1内执行中断指令①对应的中断处理程序。
上述处理器在运行执行域domain0的过程中,如果接收到的是中断指令④,由于中断指令④所属的执行环境为TEE,与当前执行环境REE不同,因而处理器需要切换到M模式,由M模式下的可信固件将该中断指令④发送至domain2,然后切换为S模式,进而在domain2内执行该中断指令④。
针对当前执行环境为TEE的处理流程:
步骤S21,处理器当前运行在执行域domain2。
步骤S22,PLIC接收到中断指令②,该中断指令②中携带中断源标识,并将该中断指令②发送至处理器。
步骤S23,处理器在执行域domain3执行中断指令②对应的中断处理程序。
具体地,在接收到中断指令②后,处理器从PLIC中获取中断指令②对应的执行环境标识,并获取执行域domain0所属执行环境的执行环境标识,由于均属于TEE执行环境,因而处理器根据中断指令②中携带的中断源标识,确定所属的执行域为domain3,进而直接在执行域domain3内执行中断指令②对应的中断处理程序。
上述处理器在运行执行域domain1的过程中,如果接收到的是中断指令③,由于中断指令③所属的执行环境为REE,与当前执行环境TEE不同,因而处理器需要切换到M模式,由M模式下的可信固件将该中断指令③发送至domain0,然后切换为S模式,进而在domain0内执行该中断指令③。
第二种情况、中断控制器对中断指令处理后转发
当接收到第一中断指令后,中断控制器获取第一中断指令对应的第一执行环境标识,然后将第一执行环境标识添加到第一中断指令中,得到第二中断指令,进而将该第二中断指令发送至处理器。当接收到该第二中断指令,处理器从第二中断指令中解析出第一执行环境标识,进而从获取当前执行环境对应的第二执行环境标识,然后将该第一执行环境标识和第二执行环境标识进行比较,在第一执行环境标识与第二执行环境标识相同的情况下,在当前执行环境的相应执行域内执行该第二中断指令。
其中,第一中断指令中携带目标中断源标识。为了更好地对不同中断源的中断进行管理,中断控制器601的寄存器中存储有中断源标识与执行环境标识之间的对应关系。中断控制器基于第一中断指令生成第二中断指令的过程为:中断控制器根据目标中断源标识,从中断源标识与执行环境标识之间的对应关系中,获取目标中断源标识对应的第一执行环境标识,进而将第一执行环境标识添加到第一中断指令中,得到第二中断指令。
采用该种处理方式,减少了处理器对中断控制器的访问次数,提高了中断控制器内存储数据的安全性。
进一步地,在第一执行环境标识与第二执行环境标识不同的情况下,处理器切换到机器模式,通过运行当前执行域,将第二中断指令发送至运行在机器模式下的可信固件,由可信固件对第二中断指令进行转发。
对于上述片上系统对中断指令的处理过程,下面结合图5进行说明。假设平台级中断控制器将REE对应的中断源和TEE对应的中断源均设置为S模式,REE对应的执行域为domain0和domain1,TEE对应的执行域为domain2和domain3,中断指令①为REE对应的中断源发送的中断指令,且中断源所属的执行域为domain1,中断指令②为TEE对应的中断源发送的中断指令,且中断源所属的执行域为domain3,中断指令③为REE对应的中断源发送的中断指令,且中断源所属的执行域为domain0,中断指令④为TEE对应的中断源发送的中断指令,且中断源所属的执行域为domain2。
针对当前执行环境为REE的处理流程:
步骤S31,处理器当前运行在执行域domain0。
步骤S32,PLIC接收到中断指令①,该中断指令①中携带中断源标识,PLIC根据该中断源标识,获取到中断源标识对应的执行环境标识,将该执行环境标识添加到中断指令①中,得到中断指令⑤,并将该中断指令⑤发送至处理器。
步骤S33,处理器在执行域domain1执行中断指令⑤对应的中断处理程序。
具体地,在接收到中断指令⑤后,处理器从中断指令⑤中解析出对应的执行环境标识,并获取执行域domain0所属执行环境的执行环境标识,由于均属于REE执行环境,因而处理器根据中断指令⑤中携带的中断源标识,确定所属的执行域为domain1,进而直接在执行域domain1内执行中断指令⑤对应的中断处理程序。
上述处理器在运行执行域domain0的过程中,如果接收到的是中断指令⑥,即携带执行环境标识的中断指令④,由于中断指令⑥所属的执行环境为TEE,与当前执行环境REE不同,因而处理器需要切换到M模式,由M模式下的可信固件将该中断指令⑥发送至domain2,然后切换为S模式,进而在domain2内执行该中断指令⑥。
针对当前执行环境为TEE的处理流程:
步骤S41,处理器当前运行在执行域domain2。
步骤S42,PLIC接收到中断指令②,该中断指令②中携带中断源标识,PLIC根据该中断源标识,获取到中断源标识对应的执行环境标识,将该执行环境标识添加到中断指令②中,得到中断指令⑦,并将该中断指令⑦发送至处理器。
步骤S43,处理器在执行域domain3执行中断指令⑦对应的中断处理程序。
具体地,在接收到中断指令⑦后,处理器从中断指令⑦中解析出对应的执行环境标识,并获取执行域domain2所属执行环境的执行环境标识,由于均属于TEE执行环境,因而处理器根据中断指令⑦中携带的中断源标识,确定所属的执行域为domain3,进而直接在执行域domain3内执行中断指令⑦对应的中断处理程序。
上述处理器在运行执行域domain1的过程中,如果接收到的是中断指令⑧,即携带执行环境标识的中断指令③,由于中断指令⑧所属的执行环境为REE,与当前执行环境TEE不同,因而处理器需要切换到M模式,由M模式下的可信固件将该中断指令⑧发送至domain0,然后切换为S模式,进而在domain0内执行该中断指令⑧。
通过上述两个例子可以看出,本申请实施例通过扩展执行环境标识,当TEE侧发生TEE中断后,TEE的Domain可以直接查询中断信息进行响应,而不需要到可信固件响应该中断,再转发到TEE的相应执行域内;当REE侧发生REE中断后,REE的Domain可以直接查询中断信息进行响应,而不需要到可信固件响应该中断,再转发到REE的相应执行域内。简言之,对于同一执行环境内的中断,无需切换到M模式,即可获取到该中断的中断信息,进而直接处理中断;对于不同执行环境的中断,需要切换到M模式,借助可信固件将该中断转发到相应的执行域内进行执行。采用该种处理方法,提升了中断响应效率。
另外,通过扩展执行环境标识,处理器无需陷入到M模式,即可访问PLIC,提高了对PLIC的访问速度,缩短了中断响应延迟。
上述仅以REE侧中断和TEE侧中断为例进行说明,对于其他执行环境该方法也同样适用,此处不再一一说明。
本申请实施例提供了一种中断隔离方法,以基于RISC-V架构的处理器执行本申请实施例为例,参见图7,本申请实施例提供的方法流程包括:
701、接收第一中断指令。
其中,第一中断指令中携带目标中断源标识。
702、获取第一中断指令对应的第一执行环境标识。
响应于该第一中断指令,处理器通过访问中断控制器,获取目标中断源标识对应的第一执行环境标识。具体地,处理器向中断控制器发送访问请求,该访问请求携带目标中断源标识,当接收到该访问请求,中断控制器根据目标中断源标识,从中断源标识与执行环境之间的对应关系中,获取目标中断源标识对应的第一执行环境标识,进而将该第一执行环境标识发送至处理器。
703、在第一执行环境标识与第二执行环境标识相同的情况下,在当前执行环境的相应执行域内执行第一中断指令,该第二执行环境标识为当前执行域所属的执行环境的执行环境标识。
进一步地,在第一执行环境标识与第二执行环境标识不同的情况下,处理器通过运行当前执行域,将第一中断指令发送至运行在机器模式下的可信固件,从而由可信固件对第一中断指令进行转发。
本申请实施例提供了一种中断隔离方法,参见图8,本申请实施例提供的方法流程包括:
801、接收第二中断指令。
其中,第二中断指令包括第一执行环境标识,该第一执行环境标识为中断控制器发送的第一中断指令所属执行环境的执行环境标识。
802、响应于第二中断指令,在第一执行环境标识与第二执行环境标识相同的情况下,在当前执行环境的相应执行域内执行第二中断指令,该第二执行环境标识为当前执行域所属的执行环境的执行环境标识。
进一步地,在第一执行环境标识与第二执行环境标识不同的情况下,处理器通过运行当前执行域,将第二中断指令发送至运行在机器模式下的可信固件,由可信固件对第二中断指令进行转发。
采用本申请实施例提供的片上系统可在中断源所属执行环境和当前运行执行域的执行环境相同的情况下,无需借助可信固件进行转发,对该中断源的中断指令进行响应,提高了响应速度,缩短了响应延迟。该片上系统可形成多种场景使用的计算机设备,例如物联网领域使用的物联网设备以及日常生活中使用的智能设备。这些场景下,通过中断及时响应使得信号控制更加灵敏,提升用户体验。
图9示出了本申请一个示例性实施例提供的一种计算机设备900的结构框图。通常,计算机设备900包括上述实施例所述的片上系统600、片外总线902及存储器903,该片上系统600与存储器903通过片外总线902连接。该片上系统600包括中断控制器601、处理器602及片内总线603。
其中,处理器602可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable LogicArray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器602也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器;协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器602可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器602还可以包括人工智能处理器,该人工智能处理器用于处理有关机器学习的计算操作。
存储器903可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是CD-ROM(Compact Disc Read-Only Memory,只读光盘)、ROM、RAM(Random AccessMemory,随机存取存储器)、磁带、软盘和光数据存储设备等。该计算机可读存储介质中存储有至少一条计算机程序,该至少一条计算机程序被执行时能够实现中断隔离方法。
当然,上述计算机设备必然还可以包括其他部件,例如输入/输出接口、通信组件等。输入/输出接口为处理器和外围接口模块之间提供接口,上述外围接口模块可以是输出设备、输入设备等。通信组件被配置为便于计算机设备和其他设备之间有线或无线方式的通信等。
本领域技术人员可以理解,图9中示出的结构并不构成对计算机设备900的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本申请实施例提供了计算机可读存储介质,该计算机可读存储介质中存储有至少一条计算机程序,该至少一条计算机程序被上述片上系统的处理器加载并执行,以实现中断隔离方法。
本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序被上述片上系统的处理器加载并执行,以实现中断隔离方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (14)

1.一种片上系统,其特征在于,所述系统包括:中断控制器、处理器及片内总线,所述中断控制器与所述处理器通过所述片内总线连接;
所述中断控制器,用于存储不同执行环境对应的执行环境标识,并在接收到第一中断指令后,将所述第一中断指令发送至所述处理器;
所述处理器,用于响应于所述第一中断指令,从所述中断控制器中获取所述第一中断指令对应的第一执行环境标识,并在所述第一执行环境标识与第二执行环境标识相同的情况下,在当前执行环境的相应执行域内执行所述第一中断指令,所述第二执行环境标识为当前执行域所属执行环境的执行环境标识。
2.根据权利要求1所述的系统,其特征在于,所述中断控制器的寄存器中存储有中断源标识与执行环境标识之间的对应关系,所述第一中断指令中携带目标中断源标识;
所述处理器,还用于响应于所述第一中断指令,向所述中断控制器发送访问请求,所述访问请求携带所述目标中断源标识;
所述中断控制器,还用于响应于所述访问请求,根据存储的中断源标识与执行环境标识之间的对应关系,获取所述目标中断源标识对应的所述第一执行环境标识,并将所述第一执行环境标识发送至所述处理器。
3.根据权利要求2所述的系统,其特征在于,所述访问请求中携带所述第二执行环境标识;
所述中断控制器,还用于判断所述第二执行环境标识是否属于存储的执行环境标识,在所述第二执行环境标识属于存储的执行环境标识的情况下,执行所述获取所述目标中断源标识对应的所述第一执行环境标识的操作。
4.根据权利要求3所述的系统,其特征在于,所述中断控制器,还用于在所述第二执行环境标识不属于存储的执行环境标识的情况下,拒绝所述处理器的访问。
5.根据权利要求1所述的系统,其特征在于,所述处理器,还用于在所述第一执行环境标识与所述第二执行环境标识不同的情况下,通过运行当前执行域,将所述第一中断指令发送至运行在机器模式下的可信固件,由所述可信固件对所述第一中断指令进行转发。
6.根据权利要求1至5中任一项所述的系统,其特征在于,所述当前执行环境至少包括可行执行环境和通用执行环境,每种执行环境包括至少一个执行域,每个执行域包括相应的操作系统和应用程序。
7.根据权利要求6所述的系统,其特征在于,所述中断控制器,还用于将所述通用执行环境对应的中断源设置为超级用户模式,将所述可信执行环境对应的中断源设置为超级用户模式或机器模式。
8.一种中断隔离方法,其特征在于,所述方法应用于权利要求1至7中任一项所述的片上系统,所述方法包括:
接收第一中断指令;
获取所述第一中断指令对应的第一执行环境标识;
在所述第一执行环境标识与第二执行环境标识相同的情况下,在所述当前执行环境的相应执行域内执行所述第一中断指令,所述第二执行环境标识为当前执行域所属的执行环境的执行环境标识。
9.根据权利要求8所述的方法,其特征在于,所述第一中断指令中携带目标中断源标识,所述获取所述第一中断指令对应的第一执行环境标识,包括:
根据所述目标中断标识,通过访问所述中断控制器,获取所述目标中断源标识对应的第一执行环境标识。
10.根据权利要求8所述的方法,其特征在于,所述方法还包括:
在所述第一执行环境标识与所述第二执行环境标识不同的情况下,通过运行当前执行域,将所述第一中断指令发送至运行在机器模式下的可信固件,由所述可信固件对所述第一中断指令进行转发。
11.一种片上系统,其特征在于,所述系统包括:中断控制器、处理器及片内总线,所述中断控制器与所述处理器通过所述片内总线连接;
所述中断控制器,用于存储不同执行环境对应的执行环境标识,并在接收到第一中断指令后,获取所述第一中断指令对应的第一执行环境标识,将所述第一执行环境标识添加到所述第一中断指令中,得到第二中断指令,将所述第二中断指令发送至所述处理器;
所述处理器,用于响应于所述第二中断指令,在所述第一执行环境标识与第二执行环境标识相同的情况下,在、当前执行环境的相应执行域内执行所述第一中断指令,所述第二执行环境标识为当前执行域所属的执行环境的执行环境标识。
12.根据权利要求11所述的系统,其特征在于,所述处理器,还用于在所述第一执行环境标识与所述第二执行环境标识不同的情况下,通过运行当前执行域,将所述第二中断指令发送至运行在机器模式下的可信固件,由所述可信固件对所述第二中断指令进行转发。
13.一种中断隔离方法,其特征在于,所述方法应用于权利要求11或12所述的片上系统,所述方法包括:
接收第二中断指令,所述第二中断指令包括第一执行环境标识,所述第一执行环境标识为中断控制器发送的第一中断指令所属执行环境的执行环境标识;
响应于所述第二中断指令,在所述第一执行环境标识与第二执行环境标识相同的情况下,在所述当前执行环境的相应执行域内执行所述第二中断指令,所述第二执行环境标识为当前执行域所属的执行环境的执行环境标识。
14.一种计算机设备,其特征在于,包括片上系统、片外总线及存储器,所述片上系统与所述存储器通过所述片外总线连接;
所述片上系统如权利要求1至7中任一项所述的片上系统,或,如权利要求11或12所述的片上系统;
所述存储器用于存储至少一条计算机程序,所述至少一条计算机程序被所述片上系统的处理器加载并执行,以实现权利要求8至10中任一项所述的中断隔离方法,或,实现权利要求11或12所述的中断隔离方法。
CN202310486128.2A 2023-04-28 2023-04-28 片上系统、中断隔离方法及计算机设备 Pending CN116578530A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310486128.2A CN116578530A (zh) 2023-04-28 2023-04-28 片上系统、中断隔离方法及计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310486128.2A CN116578530A (zh) 2023-04-28 2023-04-28 片上系统、中断隔离方法及计算机设备

Publications (1)

Publication Number Publication Date
CN116578530A true CN116578530A (zh) 2023-08-11

Family

ID=87538927

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310486128.2A Pending CN116578530A (zh) 2023-04-28 2023-04-28 片上系统、中断隔离方法及计算机设备

Country Status (1)

Country Link
CN (1) CN116578530A (zh)

Similar Documents

Publication Publication Date Title
US11016906B2 (en) GPU virtualisation
US9628279B2 (en) Protecting application secrets from operating system attacks
US8677457B2 (en) Security for codes running in non-trusted domains in a processor core
US10192067B2 (en) Self-described security model for resource access
EP3842973B1 (en) Security schemes for multiple trusted-execution-environments (tees) and multiple rich-execution-environments (rees)
CN111651778A (zh) 基于risc-v指令架构的物理内存隔离方法
CN104318182A (zh) 一种基于处理器安全扩展的智能终端隔离系统及方法
WO2014188160A1 (en) A method and apparatus for interrupt handling
CN112817780B (zh) 一种实现安全与高性能进程间通信的方法和系统
CN113139175A (zh) 处理单元、电子设备以及安全控制方法
US20210334361A1 (en) Processing apparatus, embedded system, system-on-chip, and security control method
CN110276214A (zh) 一种基于从机访问保护的双核可信soc架构及方法
CN116578341A (zh) 处理器、中断隔离方法、指令模拟方法、片上系统及设备
CN116578530A (zh) 片上系统、中断隔离方法及计算机设备
WO2023173102A2 (en) Zero trust endpoint device
CN111045605B (zh) 利用处理器缓存和安全处理器改进系统安全性的技术方案
CN115298655A (zh) 控制具有多个子系统的数据处理系统中的存储器访问
JP2001175486A (ja) 計算機システム
Schnarz et al. Towards attacks on restricted memory areas through co-processors in embedded multi-os environments via malicious firmware injection
EP4372551A1 (en) Virtual machine management method and related system, and storage medium
US20230350815A1 (en) Trust domains for peripheral devices
US20220188139A1 (en) Security for microengine access
CN117892306A (zh) 一种基于risc-v的tee构建方法、系统及装置
Oh et al. Building Hardware Components for Memory Protection of Applications on a Tiny Processor
WO2019148447A1 (zh) 数据保护方法和数据保护装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20240202

Address after: 310052 Room 201, floor 2, building 5, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Applicant after: C-SKY MICROSYSTEMS Co.,Ltd.

Country or region after: China

Address before: 201207 Floor 5, No. 366, Shangke Road and No. 2, Lane 55, Chuanhe Road, Pudong New Area (Shanghai) Pilot Free Trade Zone, Shanghai

Applicant before: Pingtouge (Shanghai) semiconductor technology Co.,Ltd.

Country or region before: China