会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~

微处理器

阅读:791发布:2020-05-11

IPRDB可以提供微处理器专利检索,专利查询,专利分析的服务。并且本申请涉及微处理器。具体地,是在流水线结构中执行程序的微处理器。其包括:任务寄存器管理单元,如果在多个单元执行第一任务时发出了切换到第二任务的切换指令,则在完成第一任务的执行之后将任务寄存器的值切换到执行第二任务时使用的第二寄存器信息;以及任务管理器,在所述值被切换到第二寄存器信息之后,将任务标识信息寄存器的值切换到第二任务标识信息,并允许所述多个单元中的每一个执行所述第二任务。,下面是微处理器专利的具体信息内容。

1.一种微处理器,包括: 具有多个单元、被配置来处理任务的流水线; 被配置为保存当前任务标识信息的任务标识信息寄存器; 被配置为保存在所述多个单元处理一个任务时使用的寄存器信息的任务寄存器; 任务完成检测器,被配置为:如果在流水线的所述多个单元中的一个执行单元执行第一任务时发出了切换到第二任务的切换指令,则检测所述流水线是否完成了已经进入了所述执行单元的第一任务的处理; 任务寄存器管理器,被配置为:如果所述任务完成检测器检测到所述流水线完成了第一任务的处理,则将任务寄存器的值切换到在执行第二任务时使用的第二寄存器信息;以及 任务管理器,被配置为:如果所述任务寄存器管理器切换到第二寄存器信息,则将任务标识信息寄存器的值切换到标识第二任务的第二任务标识信息,并允许每一个所述单元执行所述第二任务。

2. 如权利要求1所述的微处理器,还包括任务设置设备,任务 设置设备被配置为:在发出所述切换指令后,设定所述各单元以中止 指令取出,直到所述任务寄存器管理器完全切换到第二寄存器信息。

3. 如权利要求l所述的微处理器,还包括: 切换标记指定设备,被配置为:当发出切换指令时,向所述多个单元中执行指令的执行单元执行的第 一任务指定切换标记;其中,所述执行单元将所述第一任务和所述切换标记指定设备所指定的切换标记发送到下一个单元,并且,如果流水线的最后一个单元获取了所述切换标记,则所述任务完成检测器检测第 一任务的执行的完成,

4. 一种被配置为在流水线结构中执行程序的微处理器,包括: 多个被配置来执行任务的单元;被配置为以使对应的单元能够被标识的格式保存任务标识信息 的任务标识信息寄存器,所述任务标识信息标识由每一个所述单元执行的任务;任务标识信息指定设备,被配置为:如果从所述单元接收到预定 的处理请求,则指定在任务标识信息寄存器中保存的用于所述单元的 任务标识信息;以及控制器,被配置为:基于所述任务标识信息指定设备指定的任务 标识信息,控制根据所述处理请求的处理过程;以及任务寄存器,被配置为保存在所述多个单元执行任务时使用的寄 存器信息,其中,如果从所述单元接收到对寄存器信息的访问请求,则所述 任务标识信息指定设备指定保存在任务标识信息寄存器中的、所述单 元的任务标识信息,并且基于所述任务标识信息指定设备指定的任务标识信息,所述控制 器控制对保存在任务寄存器中的寄存器信息的访问。

5. 如权利要求4所述的微处理器,其中,根据保存在任务寄存 器中的寄存器信息,所述控制器禁止先前设置的任务标识信息之外的 任务标识信息所对应的单元访问任务寄存器。

6. 如权利要求5所述的微处理器,还包括:寄存器表,其保存用来标识在任务寄存器中保存的寄存器信息的 寄存器信息标识信息,以及任务标识信息;以及 多个任务寄存器,其中,所述控制器禁止保存寄存器信息的任务寄存器访问所述寄 存器表中任务标识信息所对应的寄存器信息标识信息所标识的其它寄 存器信息。

7. 如权利要求6所述的微处理器,还包括:寄存器表设置设备, 被配置为在寄存器表中设置寄存器信息标识信息以及任务标识信息,其中,所迷寄存器表保存由所述寄存器表设置设备设直的寄存器 信息标识信息和任务标识倌息.

8. —种被配置为在流水线结构中执行程序的微处理器,包括: 多个被配置来执行任务的单元;被配置为以使对应的单元能够被标识的格式保存任务标识信息 的任务标识信息寄存器,所述任务标识信息标识由每一个所述单元执 行的任务;任务标识信息指定设备,被配置为:如果从所述单元接收到预定 的处理请求,则指定在任务标识信息寄存器中保存的用于所述单元的 任务标识信息;控制器,被配置为:基于所述任务标识信息指定设备指定的任务 标识信息,控制根据所述处理请求的处理过程;以及存储器,被配置为保存在所述多个单元执行任务时所使用的信息,其中,如果从所述单元接收到对存储器的访问请求,则所述任务 标识信息指定设备指定保存在任务标识信息寄存器中的、所述单元的 任务标识信息,并且,基于所述任务标识信息指定设备指定的任务标识信息,所述控制 器控制对存储在存储器中的信息的访问。

9. 一种被配置为在流水线结构中执行程序的微处理器,包括: 多个被配置来执行任务的单元;被配置为以使对应的单元能够被标识的格式保存寄存器信息标 识信息的寄存器信息标识寄存器,所述寄存器信息标识信息标识由每 一个所述单元使用的寄存器组;寄存器信息标识指定设备,被配置为:如果从所述单元接收到预 定的处理请求,則指定在寄存器信息标识寄存器中保存的用于所述单 元的寄存器信息标识信息;以及控制器,被配置为:基于所述寄存器信息标识指定设备指定的寄 存器信息标识倌息,控制根据存储器访问处理请求的处理过程;存储器,被配置为保存在所述多个单元执行任务时使用的倌息;任务标识信息表设置设备,被配置为以对应的方式保存任务标识信息和任务寄存器;任务标识信息表,被配置为以对应的方式保存寄存器信息标识信 息和任务标识信息;以及任务标识信息指定设备,被配置为:如果从所述单元接收到对存 储器的访问请求,则指定所述任务标识信息表中的寄存器信息标识信 息所对应的任务标识信息,其中,所述控制器使用所述任务标识信息指定设备所指定的任务 标识信息来控制存储器访问。

10. —种方法,包括:在具有多个单元的流水线中处理任务; 在任务标识信息寄存器中保存当前任务标识信息; 在任务寄存器中保存寄存器信息;如果在流水线的所述多个单元中的一个执行单元执行笫一任务时发出了切换到第二任务的切换指令,则检测所述流水线是否完成了 已经进入了所述执行单元的第一任务的处理;将任务寄存器的值切换到在执行第二任务时使用的第二寄存器 信息;以及,将任务标识信息寄存器的值切换到标识笫二任务的笫二任务标 识信息,并允许每一个所述单元执行所述笫二任务.

11. 如权利要求10所述的方法,还包括:在发出所述切换指令 后,设定所述各单元以中止指令取出,直到完成向第二寄存器信息的 切换,

12. 如权利要求IO所述的方法,还包括: 当发出切换指令时,向所述多个单元中执行指令的执行单元执行的第一任务指定切换标记;其中,所迷执行单元将所述笫 一任务和所述切换标记发送到下一 个羊元,并且,如果流水线的最后一个单元获取了所述切换标记,則检测第一任 务的执行的完成.

13. —种方法,包括: 在多个单元中执行任务;以使对应的单元能够被标识的格式在任务标识信息寄存器中保 存任务标识信息,所述任务标识信息标识由每一个所述单元执行的任务;如果从所述单元接收到预定的处理请求,则在任务标识信息指定 设备中指定在任务标识信息寄存器中保存的用于所述单元的任务标识信息;以及,基于所述任务标识信息指定设备指定的任务标识信息,在控制器 中控制根据所述处理请求的处理过程;在任务寄存器中保存在所述多个单元执行任务时使用的寄存器信息,如果从所述单元接收到对寄存器信息的访问请求,则在所述任务 标识信息指定设备中指定保存在任务标识信息寄存器中的、所述单元 的任务标识信息,并且,基于所述任务标识信息指定设备指定的任务标识信息,在所述控 制器处控制对保存在任务寄存器中的寄存器信息的访问。

14. 如权利要求13所述的方法,其中,在所述控制器中,根据 保存在任务寄存器中的寄存器信息,禁止先前设置的任务标识信息之外的任务标识信息所对应的单元访问任务寄存器。

15. 如权利要求14所述的方法,还包括:在寄存器表中保存用来标识在任务标识信息寄存器中保存的寄 存器信息的寄存器信息标识信息,以及任务标识信息;以及 提供多个任务寄存器,其中,所述控制器禁止对保存下述寄存器信息的任务标识倌息寄 存器的访问:所述寄存器信息不同于寄存器表中的任务标识倌息所对 应的寄存器信息标识倌息所标识的寄存器信息.

16. 如权利要求15所述的方法,还包括: 在寄存器表设置设备中,在寄存器表中设置寄存器信息标识信息 以及任务标识信息,其中,所述寄存器表以对应的方式保存由所述寄存器表设置设备 设置的寄存器信息标识信息和任务标识信息。

17. —种方法,包括: 在多个单元中执行任务;以使对应的单元能够被标识的格式在任务标识信息寄存器中保 存任务标识信息,所述任务标识信息标识由每一个所述单元执行的任 务;如果从所述单元接收到预定的处理请求,则在任务标识信息指定 设备中指定在任务标识信息寄存器中保存的用于所述单元的任务标识 信息;以及,基于所述任务标识信息指定设备指定的任务标识信息,在控制器中控制根据所述处理请求的处理过程;在存储器中存储在所述多个单元执行任务时所使用的信息, 其中,如果从所述单元接收到对存储器的访问请求,则所述任务标识信息指定设备指定保存在任务标识信息寄存器中的单元的任务标识信息,并且,基于所述任务标识信息指定设备指定的任务标识信息,所述控制 器控制对存储在存储器中的信息的访问。

18. —种方法,包括: 在多个单元中执行任务;以使对应的单元能够被标识的格式在寄存器信息标识寄存器中 保存寄存器信息标识信息,所述寄存器信息标识信息标识由每一个所 述单元使用的寄存器组;如果从所述单元接收到预定的处理请求,则指定在寄存器倌息标识寄存器中保存的用于所述单元的寄存器信息标识信息;以及,基于所指定的寄存器信息标识倌息,在控制器中控制根据存储器访问处理请求的处理过程;在存储器中保存在所迷多个单元执行任务时使用的信息; 以对应的方式保存任务标识信息和任务寄存器;在任务标识信息表中以对应的方式保存寄存器信息标识信息和 任务标识信息;以及如果从所述单元接收到对存储器的访问请求,则在任务标识信息 指定设备中指定所述任务标识信息表中的寄存器信息标识信息所对应 的任务标识信息,其中,所述控制器使用所述任务标识信息指定设备所指定的任务 标识信息来控制存储器访问。

说明书全文

微处理器对相关申请的引用本申请基于2004年7月7日递交的在先日本专利申请No. 2004-200366并要求其优先权。该申请的全部内容通过引用结合在本申 请中。技术领域本发明涉及在流水线结构中执行程序任务的微处理器。 背景技术最近,在通常使用的开放系统中,公开了构成针对普通用户的计 算机比如个人计算机(PC)的硬件部件或者操作系统(OS )的源代码。因此,最终用户能够使用这些公开的内容修改os。同时,在大多数在开放系统上运行的应用程序中,要求保陣有关 应用程序的信息的版权,或者应用程序本身的版权。为此,需要有一 种保全应用程序的秘密的结构,也就是防止攻击应用程序的结构。尽管OS被设计为保护应用程序不受攻击,但是不可能在OS被修改了的情况下防止对应用程序的攻击。有鉴于此,需要有一种硬件能够保全应用程序的秘密。 一般而言,与修改os相比,第三方侵入者更难以修改硬件。作为一种具有上述特性的硬件,尤其是微处理器,例如在JP-A-2001-230770中提出了 一种抗篡改的处理器.这种防墓改的处理 器具有对多任务环境中的程序以及程序中使用的信息加密的功能,这能够防止程序或者信息泄漏到笫三方,或者防止程序等被修改.另外,最近公开了这样一种技术:为了有效地利用徵处理器的指令执行功能,当存在存储器访问的等待时间时,指令切换到另外的线

程,然后被执行,从而消除空闲时间,提高处理能力。作为该技术的一个例子,例如,Deborah T. Marr et al" architecture and micro architecture of hyper threading technique, Intel Technology Journal (February, 2002) 7>开了 一种超线程技术(hyper threading techniques),其中, 一个物理处理器被当作两个虚拟处理器。在这些技术中,在两个虚拟处理器之间共享指令执行功能,但是 在每一个处理器中提供必要的资源,比如寄存器或者翻译后援緩冲存 储器(Translation Look-aside Buffer (TLB))。另外,当线程被切换 时,选择足够的资源。另外,在存储器访问的等待时间(空闲时间、 待机时间),不是必须等待的线程的线程仍然运行。在其它时间,各 线程交替执行。为了执行上述过程,该技术包括一种寄存器重命名功能,用于将 被写入指令文件的寄存器号转换为物理寄存器号。另外,每一个虚拟 处理器具有用于对寄存器重命名的寄存器别名表(Register Alias Table (RAT))。为了实现对任务的加密保护,需要禁止其它任务非法访问受保护 的任务的资源,比如寄存器或者存储器。例如,攻击者可能可以访问 使用OS受到保护的任务。因此,如果发出中断/任务恢复指令,则一个指令执行单元控制处 理器硬件,在中断/恢复之前保存任务内容,并在中断/恢复之后返回任 务的内容。同时,指令执行单元更新任务ID寄存器的值。这可以防止 其它任务访问受保护的任务或者存储器信息的寄存器组的内容。但是,大多数高性能的处理器具有流水线结构,在这种流水线结 构中,并行地处理和执行多个指令。在流水线中,存在这样的期间: 在中断/恢复之前和之后属于各任务的指令被混合起来了 。如果在指令混合期间有对寄存器的访问或者有重写,则不可能以 安全和正确的方式控制受保护任务的寄存器的内容。例如,如果在产 生中断之后立即执行寄存器的切换,則会出现这样一种情况:应当在 产生中断之前处理的任务被中断,并在产生中断之后被写入任务的寄 存器。

另外,如果在产生中断之后立即更新任务ID寄存器的值,则会 出现这样一种情况:中断之前的任务使用中断之后的任务ID寄存器的 值执行高速緩存访问或者存储器访问。另外,通过具有使用其它任务 ID对高速緩存或者存储器的访问权,根据用不同于任务所对应的密钥 的密钥所加密/解密的值,执行读写操作。

另外,作为执行对应于任务的寄存器组的切换的方法,有这样一 种方法:使用在超线程技术等中用来有效地利用指令执行功能的寄存 器重命名功能,在每一个任务中维护RAT。

即使使用这种技术,由于任务ID寄存器只是一个,会出现这样 一种情况:当中断/恢复之前的任务和中断/恢复之后的任务共存时,任 务ID寄存器的值与中断/恢复之前或者中断/恢复之后的任务ID寄存器的值不匹配。因此,存在一个问题:不可能使用其它任务ID寄存器防止高速緩存访问或者存储器访问。

发明内容根据本发明的一个方面,提供一种微处理器,包括:具有多个单 元、被配置来处理任务的流水线;被配置为保存当前任务标识信息的 任务标识信息寄存器;被配置为保存在所述多个单元处理一个任务时 使用的寄存器信息的任务寄存器;任务完成检测器,被配置为:如果 在流水线的所述多个单元中的一个执行单元执行第 一任务时发出了切 换到第二任务的切换指令,则检测所述流水线是否完成了已经进入了 所述执行单元的第一任务的处理;任务寄存器管理器,被配置为:如 果所述任务完成检测器检测到所述流水线完成了第一任务的处理,则将任务寄存器的值切换到在执行第二任务时使用的第二寄存器信息; 以及任务管理器,被配置为:如果所述任务寄存器管理器切换到笫二寄存器信息,则将任务标识信息寄存器的值切换到标识笫二任务的笫二任务标识信息,并允许每一个所述单元执行所述笫二任务.

根据本发明的另一个方面,提供一种被配置为在流水线结构中执

行程序的微处理器,包括:多个被配置来执行任务的单元;被配置为 以使对应的单元能够被标识的格式保存任务标识信息的任务标识信息寄存器,所述任务标识信息标识由每一个所述单元执行的任务;任务 标识信息指定设备,被配置为:如果从所述单元接收到预定的处理请 求,则指定在任务标识信息寄存器中保存的用于所述单元的任务标识 信息;以及控制器,被配置为:基于所述任务标识信息指定设备指定 的任务标识信息,控制根据所述处理请求的处理过程;以及任务寄存 器,被配置为保存在所述多个单元执行任务时使用的寄存器信息,其 中,如果从所述单元接收到对寄存器信息的访问请求,则所述任务标 识信息指定设备指定保存在任务标识信息寄存器中的、所述单元的任 务标识信息,并且基于所述任务标识信息指定设备指定的任务标识信 息,所述控制器控制对保存在任务寄存器中的寄存器信息的访问。根据本发明的另一个方面,提供一种被配置为在流水线结构中执 行程序的微处理器,包括:多个被配置来执行任务的单元;被配置为 以使对应的单元能够被标识的格式保存任务标识信息的任务标识信息 寄存器,所述任务标识信息标识由每一个所述单元执行的任务;任务 标识信息指定设备,被配置为:如果从所述单元接收到预定的处理请 求,则指定在任务标识信息寄存器中保存的用于所述单元的任务标识 信息;控制器,被配置为:基于所述任务标识信息指定设备指定的任 务标识信息,控制根据所述处理请求的处理过程;以及存储器,被配 置为保存在所述多个单元执行任务时所使用的信息,其中,如果从所 述单元接收到对存储器的访问请求,则所述任务标识信息指定设备指 定保存在任务标识信息寄存器中的、所述单元的任务标识信息,并且, 基于所迷任务标识信息指定设备指定的任务标识信息,所迷控制器控 制对存储在存储器中的信息的访问。根据本发明的另一个方面,提供一种被配置为在流水线结构中执 行程序的微处理器,包括:多个被配置来执行任务的单元;被配置为 以使对应的单元能够被标识的格式保存寄存器信息标识信息的寄存器 信息标识寄存器,所述寄存器信息标识信息标识由每一个所述单元使

用的寄存器组;寄存器信息标识指定设备,被配置为:如果从所述单 元接收到预定的处理请求,则指定在寄存器信息标识寄存器中保存的 用于所述单元的寄存器信息标识信息;以及控制器,被配置为:基于 所述寄存器信息标识指定设备指定的寄存器信息标识信息,控制根据 存储器访问处理请求的处理过程;存储器,被配置为保存在所述多个 单元执行任务时使用的信息;任务标识信息表设置设备,被配置为以 对应的方式保存任务标识信息和任务寄存器;任务标识信息表,被配 置为以对应的方式保存寄存器信息标识信息和任务标识信息;以及任 务标识信息指定设备,被配置为:如果从所述单元接收到对存储器的 访问请求,则指定所述任务标识信息表中的寄存器信息标识信息所对 应的任务标识信息,其中,所述控制器使用所述任务标识信息指定设 备所指定的任务标识信息来控制存储器访问。根据本发明的另一个方面,提供一种方法,包括:在具有多个羊 元的流水线中处理任务;在任务标识信息寄存器中保存当前任务标识 信息;在任务寄存器中保存寄存器信息;如果在流水线的所述多个单 元中的一个执行单元执行第 一任务时发出了切换到第二任务的切换指 令,则检测所述流水线是否完成了已经进入了所述执行单元的第一任 务的处理;将任务寄存器的值切换到在执行第二任务时使用的第二寄 存器信息;以及,将任务标识信息寄存器的值切换到标识第二任务的 第二任务标识信息,并允许每一个所述单元执行所述第二任务。根据本发明的另一个方面,提供一种方法,包括:在多个单元中 执行任务;以使对应的单元能够被标识的格式在任务标识信息寄存器 中保存任务标识信息,所述任务标识信息标识由每一个所述单元执行 的任务;如果从所述单元接收到预定的处理请求,则在任务标识信息 指定设备中指定在任务标识信息寄存器中保存的用于所述单元的任务 标识信息;以及,基于所述任务标识信息指定设备指定的任务标识信 息,在控制器中控制根据所述处理请求的处理过程;在任务寄存器中 保存在所述多个单元执行任务时使用的寄存器信息,如果从所述单元 接收到对寄存器信息的访问请求,则在所述任务标识信息指定设备中指定保存在任务标识信息寄存器中的、所述单元的任务标识信息,并 且,基于所述任务标识信息指定设备指定的任务标识信息,在所述控 制器处控制对保存在任务寄存器中的寄存器信息的访问。根据本发明的另一个方面,提供一种方法,包括:在多个单元中 执行任务;以使对应的单元能够被标识的格式在任务标识信息寄存器 中保存任务标识信息,所述任务标识信息标识由每一个所述单元执行 的任务;如果从所述单元接收到预定的处理请求,则在任务标识信息 指定设备中指定在任务标识信息寄存器中保存的用于所述单元的任务 标识信息;以及,基于所述任务标识信息指定设备指定的任务标识信 息,在控制器中控制根据所述处理请求的处理过程;在存储器中存储 在所述多个单元执行任务时所使用的信息,其中,如果从所述单元接 收到对存储器的访问请求,则所述任务标识信息指定设备指定保存在 任务标识信息寄存器中的单元的任务标识信息,并且,基于所述任务 标识信息指定设备指定的任务标识信息,所述控制器控制对存储在存 储器中的信息的访问。根据本发明的另一个方面,提供一种方法,包括:在多个单元中 执行任务;以使对应的单元能够被标识的格式在寄存器信息标识寄存 器中保存寄存器信息标识信息,所述寄存器信息标识信息标识由每一 个所述单元使用的寄存器组;如果从所述单元接收到预定的处理请求, 则指定在寄存器信息标识寄存器中保存的用于所述单元的寄存器信息 标识信息;以及,基于所指定的寄存器信息标识信息,在控制器中控 制根据存储器访问处理请求的处理过程;在存储器中保存在所述多个 单元执行任务时使用的信息;以对应的方式保存任务标识信息和任务 寄存器;在任务标识信息表中以对应的方式保存寄存器信息标识信息 和任务标识信息;以及如果从所述单元接收到对存储器的访问请求, 则在任务标识信息指定设备中指定所述任务标识信息表中的寄存器信 息标识信息所对应的任务标识信息,其中,所述控制器使用所述任务 标识信息指定设备所指定的任务标识信息来控制存储器访问. 附图说明图l是表示根据某些实施例的微处理器的总体结构的框图;图2是密钥表142的数据结构的示意图;图3是指令高速緩存122的数据结构的示意图;图4是同步设备116的状态转换示意图;图5是一个五站流水线112执行第一受保护任务的状态的示意图;图6是在产生了 一个中断时所述五站流水线112执行第一任务的 状态的示意图;图7是所述五站流水线112、所述同步设备116、所述安全环境 切换单元131以及高速緩存控制器121中的每一个在产生中断时的处 理的流程图;图8是根据某些实施例的处理器内核511的结构的框图; 图9是处理器内核511执行第一受保护任务的状态的示意图; 图10是在产生了中断时处理器内核511执行任务时的示意图; 图11是在解码单元5122请求寄存器访问控制功能516在图10的步骤S6252中读寄存器的情况下的处理的流程图;图12是在寄存器写入单元5125请求寄存器访问控制功能516在图10的在时刻tl3的步骤S6245中写寄存器的情况下的处理的流程图; 图13是在指令取出单元5121在图10的时刻t13的步猓S6241中执行指令取出的情况下的处理的流程图;图14是存储器访问单元5124在图10的时刻t13的步猓S6244中执行存储器访问的情况下的处理的流程图。具体实施方式图1是根据某些实施例的微处理器101的总体结构的框图。处理 器101包括处理器内核111、高速緩存控制器121、安全环境转换器 131、总线接口单元(BIU) 141以及任务管理器161.

制器121获取任务ID和访问类型。在这种情况下,任务ID指的是标 识将要由处理器内核111执行的任务的标识信息。另外,访问类型指 的是标识要访问的信息是程序还是数据的标识信息。图2是示意图图示了密钥表142的数据结构。密钥表142包括程 序密钥、数据密钥以及环境(上下文)密钥,作为分别用于对程序、 数据和环境(上下文)加密/解密的密钥,以及对应的任务ID。BIU 141用来使用密钥表142基于从高速緩存控制器121获得的 任务ID和访问类型选择密钥。BIU 141还使用所选择的密钥对相应的 程序或者数据加密或者解密,并将解密的指令或者数据输出到高速緩 存控制器121。高速緩存控制器121包括指令高速緩存122和数据高速緩存 123。高速緩存控制器121根据来自处理器内核111的指令通过BIU 141 获取指令或者数据。指令高速緩存122接收从BIU141获取的明文的指令。图3的示 意图图示了指令高速緩存122的数据结构。指令高速緩存122存储任 务ID标记和对应于指令的地址标记。任务ID标记指的是取决于对应 的指令的解密的任务的标识信息。在这种情况下,地址标记指的是指 示存储对应的指令的地址的信息。指令高速緩存122还基于地址或者 任务ID控制对每一个指令的访问。数据高速緩存123存储对应于从BIU 141获取的明文的数据的任 务ID。数据高速緩存123的数据结构与上面参照图3描述的指令高速 緩存122的数据结构相同。数据高速緩存123也基于地址或者任务ID 控制对每一个指令的访问。现在回头看图1,处理器内核111包括五站流水线112、同步设 备116、当前任务ID寄存器114以及寄存器组115,当前任务ID寄存器114存储正在五站流水线112中执行的任务 的标识信息。寄存器组115具有要由正在五站流水线112中执行的任 务使用的信息.五站流水线112包括程序计数器(program counter (PC) ) 1120、

指令取出单元(instruction fetch unit (IFU) ) 1121、解码单元(decode unit (DEC) ) 1122、执行单元(execution unit (EXU)) 1123、存储 器访问单元(memory access unit (MEM) ) 1124以及寄存器写入单 元(register write unit (WBU) )1125。五站流水线112还包括EXU 切换标记寄存器1133、 MEM切换标记寄存器1134以及WBU切换标 记寄存器1135。该五站流水线112从高速緩存控制器121获取指令, 并执行所获取的指令。程序计数器1120具有指令取出(取指令)目的地的地址。指令 取出单元1121取出程序计数器1120中存储的地址所指的指令。解码 单元1122对取出的指令解码。执行单元1123执行被解码单元1122解 码的指令。存储器访问单元1124能够基于执行单元1123的执行结果 访问高速緩存控制器121,并从之载入数据。寄存器写入单元1125将 数据写入寄存器组115。在EXU切换标记寄存器1133、 MEM切换标记寄存器1134和 WBU切换标记寄存器1135中设置分别对应于流水线的EXU 1123、 MEM 1124和WBU 1125的单元处理的任务的切换标记。切换标记具 有两个值:0和1。切换标记"l"表示在切换任务的情况下,在切换之 前的最后一条指令。例如,在中断和任务恢复时,EXU切换标记寄存器1133可以被 设置为切换标记"l"。另外,设置在EXU切换标记寄存器1133中的切 换标记的内容与流水线连锁地移动到MEM切换标记寄存器1134和 WBU切换标记寄存器1135。也就是,取决于WBU切换标记寄存器 1135的切换标记是"l"还是"O",可以判断中断之前的任务是否已完成,图4图示了同步设备116的状态转换示意图。同步设备116可以 在"空闲"状态411、"等待1"状态412和"等待2"状态413之间转换。 同步设备116采用每一个状态下每一个所述单元的同步,如果产生一个中断,或者发出一个任务恢复指令,则同步设备116 从"空闲,,状态411转换为"等待1,,状态412.此时,同步设备116请 求指令取出单元1121中止指令取出.也就是,取决于中断或者任务恢复指令,同步设备116禁止指令取出单元1121读出任务。另外,如果接收到任务执行完成通知,则同步设备116从"等待1" 状态412转换到"等待2"状态413。此时,同步设备116向安全环堍切 换单元131输出切换寄存器组115的值的寄存器切换请求。另外,如果接收到任务切换完成通知,则同步设备116从"等待2" 状态413转换到"空闲"状态411。此时,同步设备116停止请求指令 取出单元1121中止指令取出。任务管理器161也设置当前任务ID寄 存器114中的切换之后的任务的任务ID。安全环境切换单元131包括用于緩冲存储环境(上下文)的环境 緩沖存储器132,以及在寄存器组115之间执行控制的环境控制器133。 环境控制器133根据同步设备116作出的寄存器切换请求,读取处理 器内核111的寄存器组115,并控制要存储在环境緩沖存储器132中 的读出的内容。环境控制器133还将中断/返回后对应于任务的环境从 环境緩冲存储器132返回到处理器内核111的寄存器组115。任务管理器161管理由处理器内核111执行的任务。任务管理器 161还在寄存器的内容被完全切换的情况下在当前任务ID寄存器114 中设置任务ID。下面描述在下述情况下处理器101的处理:当受保护任务l正在 五站流水线112中执行时,产生了一个中断处理。图5的示意图图解了五站流水线112执行受保护任务1的状态。 在图5中,在左侧图示了每一个时刻程序计数器1120的值、当前任务 ID寄存器114的值以及同步设备116的状态。首先,在初始化处理中,处理器内核111使同步设备116的状态 成为"空闲"状态411。如果开始执行受保护任务1,则任务管理器161 在当前任务ID寄存器114中设置"1",并在程序计数器1120中设置开 始地址。这里,任务ID"1,,是标识受保护任务1的任务ID,在图5所示的时刻tl,程序计数器1120是地址E,当前任务ID 寄存器114的值是1.通过访问程序计数器1120的值和当前任务ID 寄存器114,指令取出单元1121向高速緩存控制器121发送一个读受

保护任务1的存在于地址E的指令的读请求,并取出该指令(步骤 S2111)。然后,解码单元1122对地址D的受保护任务1的指令(在时刻 tl之前的时刻取出)解码(步骤S2112)。接下来,执行单元1123执 行受保护任务l的对应于地址C、在时刻tl之前的时刻解码的指4K步 骤S2113)。然后,存储器访问单元1124基于受保护任务1的对应于 地址B的指令(在时刻tl之前的时刻执行)的执行结果,访问存储器, 从存储器读出信息(步骤S2114)。寄存器写入单元1125基于受保护任务1的对应于地址A的指令 在时刻tl之前一个时刻的执行结果,向寄存器组115中写入读出的信 息。这样,如果作为流水线最后一个单元的寄存器写入单元1125的处 理完成了,则受保护任务1的对应于地址A的执行完成了 (步骤 S2115)。在时刻t2,程序计数器1120改变到地址F。然后,指令取出单 元1121读出受保护任务的存在于地址F的指令(步骤S2121)。然后, 解码单元1122、执行单元1123和存储器访问单元1124执行相应的处 理,每一个指令移动到流水线的下一站(步驟S2122到步骤S2124), 寄存器写入单元1125完成受保护任务1的对应于地址B的指令的执行 (步骤S2125)。类似地,在时刻t3之后,每一个单元根据程序计数 器中设置的值执行任务。图6的示意图图示了五站流水线112在下述情况下执行任务的状 态:在结合图5描述的在时刻t3的处理开始之前,无论因为什么原因 产生了中断,在这种情况下,假设在中断之前正在被执行的受保护任 务l被称为在前任务,与所产生的中断相关的任务称为在后任务.在这种情况下,在时刻t3,所述五站流水线112在程序计数器1120 中设置OS的中断处理程序的首部地址X。另外,处理器内核lll使 指令取出单元1121和解码单元1122中设置的指令无效(步蘇S2231、 步骤S2232 ),另外,五站流水线112在对应于执行单元1123的EXU切换标记

寄存器1133中设置"l"(步骤S2233)。切换标记"l"指示在前任务中 的最后一条指令。另外,切换标记"l"与流水线连锁地转移到存储器访 问单元1124和寄存器写入单元1125。下面描述当产生中断时,五站流水线112、同步设备116、安全 环境切换单元131和高速緩存控制器121中的每一个的处理。图7的 流程图图示了当产生中断时,五站流水线112、同步设备116、安全环 境切换单元131和高速緩存控制器121中的每一个的处理。如果产生了中断,五站流水线112向同步设备116通知已经产生 了中断的事实(步骤S300)。同步设备116根据图4的状态转换图从 "空闲"状态411转换到"等待1"状态412(步骤S302)。同步设备116 然后请求指令取出单元1121中止指令取出(步骤S304)。 一直执行 中止指令取出的请求,直到状态返回"空闲,,状态411。另外,当被通知了中断的产生时,任务管理器161同时更新程序 计数器1120。指令取出单元1121试图执行对在后任务的指令取出请 求。但是,由于同步设备116已经在步骤S304获取了中止指令取出的 请求,五站流水线112等待指令取出。由于指令取出单元1121因中止指令取出的请求而不能对在后任 务执行指令取出,其用空指令填充流水线而不操作程序计数器1120, 然后,在图6的时刻《执行留在流水线中的在前任务的指令(步骤 S2231、步骤S2241、步骤S2251)。在这种情况下,空指令是即使被 执行也不对寄存器或者存储器产生影响的指令。在图7中,如果留在五站流水线112中的在前任务是数据存储指 令,则五站流水线112指定一个任务ID "1",向高速緩存控制器121 发出一个对数据Dl的存储器写入请求(步骤S310).高速緩存控制 器121在将数据完全写入数据高速緩存123之后向处理器内核111 返回确认信息(ACK)(步稞S312)。在图6的时刻t5,对应于切换标记"l,,的指令到达寄存器写入单 元1125.这使得在前任务的执行被完成,从而允许寄存器组115被切 换(步骤S2251到步棵S2255),此时,在图7中,五站流水线112向同步设备116发送一个在前 任务执行完成通知(步骤S320)。同步设备116然后根据图4的状态 转换图从"等待l"状态412转换到"等待2"状态413 (步骤S322 )。然 后,同步设备116向安全环境切换单元131发送一个寄存器切换请求 (步骤S324 )。

安全环境切换单元131从寄存器组115读出一个值,在环境緩冲 存储器132中保存一个寄存器。或者,安全环境切换单元131对所述 值加密,并在外部存储器102中保存所述寄存器。安全环境切换单元 131进一步向寄存器组115返回从外部存储器102读出,然后被解密 的环境,或者从环境緩冲存储器132读出的环境(步骤S326)。

如果完成了寄存器的值的切换,则安全环境切换单元131向同步 设备116发出 一个寄存器切换完成通知(步骤S328 )。同步设备116然 后根据图4的状态转换图从"等待2"状态413转换到"空闲"状态411 (步骤S330)。同步设备116然后请求指令取出单元1121停止对指 令取出的中止(步骤S332)。此时,任务管理器161在当前任务ID 寄存器114中设置"0"。在这种情况下,任务ID"O,,是与中断有关的任 务也就是在后任务的任务ID。

如图6中时刻t6所示,只要还有中止指令取出的请求,则指令取 出单元1121继续设置空指令(步骤S2261到S2265)。另外,如果发 出了切换完成通知,并且中止指令取出的请求消失了,则指令取出单 元1121指定当前任务ID "0",并向同步设备116发出对应于地址X 的指令读取请求,如图6中的时刻t7所示(步骤S2271到S2275)。

如果指令取出单元1121输出对地址X的指令读出请求,则同步 设备116从五站流水线112接收中止指令取出的请求(步骤S340), 向高速緩存控制器121发出指令读出请求(步骤S342),如图7所示。 如果高速緩存内地址X中的指令消失,则高速緩存控制器121通过BIU 141从外部存储器102读取明文的指令,并将读出的指令写入到高速 緩存。髙速緩存控制器121然后将从高速緩存读出的指令发送到处理 器内核111处的五站流水线112 (步稞S344)。这样就完成了中断处理。这样,根据某些实施例的处理器内核lll将在后任务的指令取出控制在等待(standby)状态,直到在中断之前已经寄存在五站流水线 112中的在前任务的执行已完成,并且在前任务的寄存器信息和在后 任务的寄存器信息已切换。这可以防止其它任务试图进行寄存器访问。另外,当寄存器信息的切换完成时,同时切换当前任务ID。这样, 由于可以根据任务所对应的任务ID执行高速緩存控制,可以由高速緩 存控制器121有效地执行访问控制。这样,就可以保护受到保护的任务的寄存器信息,或者OS或任 务的存储区。另外,由于所有处理,比如针对中断请求切换寄存器的值或者切 换当前任务ID,都可以由硬件执行,可以防止第三方通过OS读取寄 存器信息、存储器信息等。上面结合图6和图7描述了在产生中断的情况下的处理。在产生 中断之后发出了任务的恢复指令的情况下的返回处理与前面结合图6 所描述的处理相同。另外,上面在某些实施例中,已经描述了流水线U2具有五站的 情况。但是,应当理解,流水线的站数不限于此,而可以大于或者小 于5。另外,上面在实施例中已经描述了处理器内核lll具有一个寄存 器组115。但是应当注意到,处理器内核111可以有多个寄存器组115。 在处理器内核111具有多个寄存器组115的情况下,切换之后的在后 任务的寄存器值可以被预先返回到一个附加寄存器組,该寄存器组可 以在完全执行了在切换之前正在执行的在前任务之后被切换.这使得 不需要在任务正在被切换时保存或者返回寄存器。因此,可以节约寄 存器组的保存和返回所发生的中止时间。下面描述根据其它实施例的处理器101.图8是根据其它实施例 的处理器内核511的结构框图.处理器内核511包括五站流水线512、第一寄存器组5151、笫二

寄存器组5152、寄存器访问控制器516以及寄存器组表514。该五站流水线512包括保存指令取出目的地的地址的程序计数器 5120、指令取出单元5121、解码单元5122、执行单元5123、存储器 访问单元5124以及寄存器写入单元5125。另外,单元5121到5125 分别具有任务ID寄存器5131到5135。任务ID寄存器5131到5135 分别具有单元5121到5125正在执行的任务的ID信息。单元5121到5125分别通过总线711到715连接到寄存器访问控 制器516。另外,指令取出单元5121和存储器访问单元5124分别通 过总线720和722连接到高速緩存控制器121。寄存器组表514保存相互对应的任务ID和寄存器ID。在这里, 寄存器ID指的是标识寄存器组的标识信息。在根据本实施例的寄存器 组表514中,标识第一寄存器组5151的寄存器ID "1"对应于任务ID "0"。另外,标识第二寄存器组5152的寄存器ID "2"对应于任务ID "1"。寄存器访问控制器516使用寄存器组表514控制单元5121到 5125对第一寄存器组5151和第二寄存器组5152的访问。确切地说, 寄存器访问控制器516从五站流水线512的每一个单元5121到5125 接收对第一寄存器组5151和/或第二寄存器组5152的访问请求。然后, 寄存器访问控制器516指定一个访问请求源的单元的任务ID寄存器中 保存的任务ID。寄存器访问控制器516从寄存器组表514中指定对应于任务ID 的寄存器ID。其然后授予对访问请求源指定的寄存器ID的访问权。 另外,寄存器访问控制器516禁止对在寄存器组表514中不对应的寄 存器组的访问。即使其它任务在多个单元中执行,这也可以防止每一个任务访问 对应的寄存器之外的寄存器组。下面描述在下述情况下的处理器101的处理:当在五站流水线512 中执行一个受保护任务1时产生了中断处理.在这种愔况下,受保护 任务1也就是在前任务的任务ID被称为"1",在产生中断之后的在后 任务的任务ID被称为"O"。根据该中断的在后任务是由OS执行的任务。图9的示意图图解了处理器内核511执行受保护任务1的状态。 在图中,左侧图示了在每一个时刻程序计数器5120的值。处理器内核511首先寄存任务ID"O",其对应于OS或者明文, 以及寄存器ID"l,,,其标识寄存器组表514中的第一寄存器组5151。如果开始受保护任务的执行,则任务管理器161在指令取出单元 5121的任务ID寄存器5131中设置"1"。任务管理器161进一步寄存 任务ID "l,,和标识寄存器组表514中的第二寄存器组5152的寄存器 ID "2"。在图9所示的时刻t10,指令取出单元(IFU) 5121向高速緩存 控制器121发出对受保护任务1的存在于地址E的指令的读出请求, 同时参考程序计数器5120的值(步骤S6111)。此后,在步骤S6112到步骤S6115的每一步由每一个单元5122 到5125执行的处理与已经参照图5描述的在时刻tl由每一个单元1122 到1125执行的处理相同。在步骤S6111,如果执行受保护任务l,则指令取出单元5121使 用地址E和受保护任务1的任务ID "1"(保存在指令取出单元5121 的任务ID寄存器51M中)向高速緩存控制器121请求指令取出。高速緩存控制器121从指令高速緩存122或者外部存储器102读 出地址E和对应于任务ID "1"的指令。其然后将读出的指令发送到处 理器内核511 (步骤S6111、步骤S6121)。读出的指令和任务ID在流水线中同步。例如,从指令高速緩存 122读出的指令被保存在指令取出单元5121中,对应于预定指令的任 务ID被保存在指令取出单元5121的任务ID寄存器5131中.另外, 如果预定指令转移到解码单元5122,则对应于该预定指令的任务ID 也转移到解码单元5122的任务ID寄存器5131.当单元5121和5125可以访问寄存器组5151和5152时,它们使 用单元5121到5125的任务ID寄存器5131到5135的值执行对寄存器 访问控制器516的访问请求.

寄存器访问控制器516从寄存器组表514选择对应的寄存器組和 任务ID,也就是,其选择第一寄存器组5151或者第二寄存器组5152。 寄存器访问控制器516还执行对所选择的寄存器组5151和5152的访问请求。具体地说,例如,在时刻t10,对于来自解码单元5122的访问请 求,寄存器访问控制器516根据存在于解码单元中的任务ID寄存器 5132的值执行对寄存器组5151或者5152的访问请求(步骤S6112 )。 另外,对于来自寄存器写入单元5125的访问请求,寄存器访问控制器 516根据存在于寄存器写入单元中的任务ID寄存器5135的值执行对 寄存器组5151或者5152的访问请求(步骤S6115 )。这样,五站流水线512的单元5121到5125分别可以使用任务ID 寄存器5131到5135的值访问寄存器访问控制器516。因此,即使在 五站流水线512中存在其它任务时从其它任务产生了寄存器访问,单 元5121到5125也能访问对应于相应的任务的寄存器组5151和5152。 因此,可以防止每一个任务可以访问未被授予访问权的寄存器组。另外,当单元5121到5125访问高速緩存控制器121时,它们通 知其任务ID寄存器5131到5135的值,并执行访问请求。具体地,例如,在时刻t10,存储器访问单元5124通知存储器访 问单元中的任务ID "1",然后访问高速緩存控制器121 (步骤S6114),这样,五站流水线512的单元5121到5125分别使用任务ID寄 存器5131到5135的值访问高速緩存控制器。因此,即使在五站流水 线512中存在其它任务时从其它任务产生了存储器访问,高速緩存控 制器121也能使用对应于每一任务的任务ID执行访问控制。这样,就 可以防止每一任务访问未被授予访问权的高速緩存控制器的明文数 据,如上所述,当执行受保护任务l时,单元5121到5125的每一个 任务ID寄存器5131到5135保存受保护任务1的任务ID "1".这样就 授予对寄存器组表514中对应于任务ID "1"的笫一寄存器组5151的访 问权。

另外,指令取出单元5121和存储器访问单元5124指定任务ID "1",并执行存储器访问。例如,在时刻t10,指令取出单元5121通过 总线720向高速緩存控制器121指定任务ID "1",然后读出地址E的 数据(步骤S6111)。另外,存储器访问单元5124通过总线722向高速緩存控制器121 指定任务ID"1",然后访问地址B (步骤S6114)。无论在哪种情况下,在任务ID"1,,对应于高速緩存控制器121中 的访问请求所指的地址时,读出对应的数据。另外,在指定的任务ID 不与访问请求所指定的地址对应时,禁止对数据的访问。这可以防止 每一个单元基于任务ID访问数据。图IO的示意图图示了在开始已经参照图9描述的在时刻tl2的处 理之前产生中断时,五站流水线512执行任务的状态,在这种情况下, 五站流水线512使指令取出单元5121和解码单元5122的指令无效(步 骤S6231、步骤S6232)。另外,任务管理器161在指令取出单元5121 的任务ID寄存器5131中设置任务ID "0"。图11的流程图图解了解码单元5122请求寄存器访问控制功能 516在图10的步骤S6252读取寄存器的情况下的处理。在这种情况下, 在解码单元5122中对OS任务的指令解码。解码单元5122中的任务 ID寄存器5132被设置为"0"。为此,解码单元5122通过总线712指 定任务ID "0",并向寄存器访问控制功能516发送寄存器访问请求(步 骤S700)。如果接收到寄存器访问请求,则寄存器访问控制器516从寄存器 组表514中指定对应于寄存器访问请求中所包括的任务ID "0"的寄存 器,也就是,寄存器访问控制器516选择第一寄存器组5151.然后, 寄存器访问控制器516读取笫一寄存器组5151 (步骤S702)。如果从 第一寄存器组5151获取了寄存器信息(步跺S704),则寄存器访问 控制器516将所获得的寄存器信息发送到解码单元5122(步骤S706).图12的流程困困解了寄存器写入单元5125在图10的时刻t13 请求寄存器访问控制器516在步骤S6245在寄存器中写入的情况下的

处理。此时,在寄存器写入单元5125中执行受保护任务l的指令,寄 存器写入单元5125中的任务ID寄存器5135被设置为"l"。寄存器写 入单元5125通过总线715向寄存器访问控制器516发送指定寄存器写 入单元5125的任务ID寄存器5135中设置的任务ID "l"的寄存器访问 请求(步骤S710 )。如果接收到寄存器访问请求,则寄存器访问控制器516从寄存器 组表514中指定对应于寄存器访问请求中所包括的任务ID "l,,的寄存 器。也就是,其选择第二寄存器组5152。然后,寄存器访问控制器516 执行对第二寄存器组5152的写请求(步骤S712)。如果完成了写操作,则笫二寄存器组5152向寄存器访问控制器 516发送完成通知(步骤S714)。然后,寄存器访问控制器516向解 码单元5122发送完成通知(步骤S716)。这样,由于解码单元5122保存有任务ID "0",其能够访问寄存 器组表514中对应于任务ID"0,,的第一寄存器组5151。但是,解码单 元5122不能访问第二寄存器组5152。另外,由于寄存器写入单元5125 保存有任务ID"1",其能够访问寄存器组表514中对应于任务ID"1" 的第二寄存器组5152。但是,寄存器写入单元5125不能访问第一寄 存器组5151。这样,根据每一个单元的任务ID寄存器保存的任务ID 的值,控制每一个单元对第一寄存器组5151和第二寄存器组5152的 访问。这样,就可以防止其它任务访问寄存器信息。图13的流程图图解了在指令取出单元5121在图10的时刻t13 在步骤S6241执行指令取出的情况下的处理.此时,OS任务的一个指 令正在指令取出单元5121中执行,指令取出单元5121中的任务ID寄 存器5131被设置为"O",指令取出单元5121通过总线720向高速緩存 控制器121指定任务ID "0",并执行对地址Y的访问请求(步跺S720).如果接收到访问请求,高速緩存控制器121在指令高速緩存122 中搜索被请求访问的指令.如果在指令高速緩存122中没有保存对应 于任务ID "O,,的指令和地址Y (步猓S722中的"否,,),则高速緩存控 制器121向BIU 141指定地址Y和任务ID "0",并执行存储器访问请 求(步骤S724 )。BIU141向外部存储器102发出对地址Y对应的指令的读请求(步 骤S726 ) 。 BIU 141从外部存储器102获取指令(步骤S728),然后 将所获取的指令发送到高速緩存控制器121 (步骤S730 )。在本实施例中,对应于密钥表142中的任务ID"O,,的指令为没有 加密的明文指令,并被存储在外部存储器102中。这样,指令无需由 加密设备143解密就被发送到高速緩存控制器121。另外,如果在外 部存储器102中存储对应于任务ID的指令时对其进行了加密,则加密 设备143对加密的指令解密,并将解密的指令作为明文指令发送给高 速緩存控制器121。高速緩存控制器121将从BIU 141接收的指令写入指令高速緩存 122 (步骤S732)。高速緩存控制器121然后将从指令高速緩存122 读出的指令发送到处理器内核511 (步骤S734)。同时,如果判定被请求访问的指令被存储在指令高速緩存122中 (步骤S722的"是"),则过程前进到步骤S734。图14的流程图图解了存储器访问单元5124在图10的时刻t13 在步骤S6244执行存储器访问的处理。此时,受保护任务l的指令正 在存储器访问单元5124中执行,存储器访问单元5124中的任务ID寄 存器5134被设置为"l"。存储器访问单元5124通过总线722向高速緩 存控制器121指定任务ID "1",并执行对地址P的访问请求(步骤 S740)。如果接收到了访问请求,高速緩存控制器121在数据高速緩存 123中搜索被请求访问的数据。如果判定在数据高速緩存123中不存 在地址P和对应于任务ID"1"的指令(步驟S742,否),则高速緩存 控制器121将地址P和任务ID "l"指定给BIU 141,并执行存储器访 问请求(步骤S744).BIU 141向外部存储器102发出对地址P对应的数据的读请求(步 骤S746) . BIU141然后从外部存储器102获得地址P对应的加密数 据E [DATA (P)l (步骤S748 ) . BIU 141从密钥表142选择对应于任

务ID "1"的密钥。然后,BIU 141对从加密设备143读出的加密数据E [DATA (P)J 解密,获得明文的被解密数据DATA(P)(步骤S750) 。 BIU 141将获 得的明文数据发送给高速緩存控制器121(步骤S752),高速緩存控制 器121将从BIU 141接收到的明文数据写入数据高速緩存123(步骤 S754)。高速緩存控制器121然后将明文数据发送给处理器内核511(步 骤S756)。同时,如果判定被请求访问的数据被存储在数据高速緩存123中 (步骤S742,是),则过程前进到步骤S756。从而完成图10中时刻 tl3的步骤S6244的处理。这样,由于指令取出单元5121具有任务ID "0",其能够使用任 务ID "0"访问高速緩存控制器121。另外,由于存储器访问单元5124 具有任务ID"1",其能够使用任务ID"1"访问高速緩存控制器121. 高速緩存控制器121根据任务ID的值控制对明文指令或者数据的访 问。这样,就可以防止其它任务访问明文指令或者数据。另外,在某些实施例中,在完成在产生中断之前已经寄存于五站 流水线512中的在前任务之前,可以开始执行产生中断后的在后任务。 这导致响应性的改善和处理能力的提高。另外,上面描述了每一个单元的任务ID寄存器具有由每一个单 元处理的任务的任务ID。但是应当理解,每一个单元的任务ID寄存 器可以具有正在由每一个单元处理的任务的访问目的地的寄存器ID。 在这种情况下,为了在存储器访问时指定任务ID,需要有一个包含寄 存器ID和任务ID的任务ID表。另外,从每一个单元的寄存器ID及 其任务ID的对应表中选择任务ID,执行对存储器的访问.即使在这 种情况下,同样地,可以控制每一个单元对寄存器或者存储器的访问。对于本领域普通技术人员来说,其它的优点和修改是显然的.因此,本发明的范围应较宽而不是局限于在这里所图示和描述的具体细 节和代表性实施例.因此,在所附权利要求及其等效方案所限定的本 发明的总体发明构思的实质范围内,可以作出各种修改.

高效检索全球专利

IPRDB是专利检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,专利查询、专利分析

电话:13651749426

侵权分析

IPRDB的侵权分析产品是IPRDB结合多位一线专利维权律师和专利侵权分析师的智慧,开发出来的一款特色产品,也是市面上唯一一款帮助企业研发人员、科研工作者、专利律师、专利分析师快速定位侵权分析的产品,极大的减少了用户重复工作量,提升工作效率,降低无效或侵权分析的准入门槛。

立即试用