专利名称:虚拟硬件系统及基于虚拟硬件系统的指令执行方法
技术领域:
本发明涉及计算机技术,特别涉及虛拟硬件系统及基于虛拟硬件系统的 指令执行方法。
背景技术:
计算机系统中,包括用于执行特定系统指令集的处理器。不同种类的处 理器仅能够执行该类处理器所对应的指令集,即不同处理器的指令集不兼 容。然而,通过执行不同的指令集,各类型的处理器能够体现出不同的性能优势,例如Intel80X86中央处理单元(CPU)的指令集基于复杂指令集计算 机(CICS)格式,能够实现复杂的处理功能;而Motorola Power PC的指令 集,则基于精简指令集计算机(RISC)格式,能够高速执行简单处理功能。 现有技术通过在一种处理器中,由仿真逻辑单元构成另一种处理器,并 通过仿真另一种处理器的指令运行过程,来解决不同指令集的不兼容性。实 际存在的处理器中,实现原有功能的硬件资源称为父硬件,由仿真逻辑单元 构成的硬件资源称为虚拟硬件。基于虚拟硬件技术的虚拟硬件系统中,父硬 件能够融合不同处理器的性能优势,具有跨平台无关性,当父硬件平台更换 时可以保证为虚拟硬件编写的代码的二进制兼容;而且,当父硬件的开发工具不易实现时,可通过拥有丰富开发资源的虚拟硬件来进行编译,从而降低 开发的难度。图1为现有技术中基于虛拟硬件系统的指令执行方法流程图。如图l所 示,以父硬件为A处理器、虚拟硬件为B处理器为例,现有技术中基于虚 拟硬件系统的指令执行方法包括以下步骤步骤101,将A处理器的存储空间分配给B处理器,作为B处理器的 指令存储器和数据存储器等的存储空间;步骤102, A处理器按B处理器对应的指令集规则读取B处理器指令存 储器空间的指令数据;步骤103, A处理器将读取的数据,按照B处理器指令集的规则转化为 A处理器能够执行的指令;步骤104, A处理器执行转化后的指令,并将该指令的处理结果返回给 B处理器的数据存储器空间,返回步骤102, A处理器继续读取B处理器的 下一条指令数据。上述流程中,A处理器在利用虚拟硬件B处理器运行指令流程的过程 中,需要读取并转换每一条指令,执行一条B处理器的指令,可能需要多条 A处理器的指令来实现。由此可见,现有的虚拟硬件系统中,父硬件通过逐条读取、转化指令的 方式来模拟虚拟硬件的指令执行过程,因此,父硬件执行每一条虚拟硬件的 指令都需要几十个甚至上百个指令周期,执行速度慢,无法满足高性能要求 的运算处理过程。而且,由于父硬件通过逐条读取、转化指令的方式来模拟 虚拟硬件的指令执行过程,指令执行仅限于底层指令,因而,现有的虚拟硬 件也无法使用父硬件中的高级资源,仅能使用父硬件分配的有限资源,使得 虚拟硬件系统的应用范围较小。发明内容有鉴于此,本发明的一个主要目的在于提供一种虚拟硬件系统,能够 高速执行指令。本发明的另一个主要目的在于提供一种基于虚拟硬件系统的指令执行 方法,能够基于虚拟硬件高速执行指令。根据上述的一个主要目的,本发明提供了一种虚拟硬件系统,包括父 硬件和虚拟硬件,其中,父硬件,从虚拟硬件中读取指令数据,运行读取的指令数据对应的处理
流程;向虚拟硬件发送处理结果;虚拟硬件,用于存储与预先约定的指令具有映射关系的指令数据;接收 来自所述父硬件的处理结果。所述父硬件包括主控单元、主用指令存储单元和资源调用单元,其中,主控单元,用于接收来自主用指令存储单元的所述父硬件的指令,从虚 拟硬件中读取指令数据,将读取到的指令数据转化为父硬件能够执行的指 令;根据转化后的指令,从虛拟硬件中读取该指令对应的运算变量;当转化 后的指令为外部调用指令时,通过系统调用接口调用资源调用单元中的内部 资源,所述系统调用接口为各种特殊指令与内部资源之间的映射关系表;利 用读取到的运算变量,运行来自资源调用单元的内部资源,并将得到的处理 结果发送到虚拟硬件;主用指令存储单元,用于存储所述父硬件的指令,并在系统上电时,将 指令提供给主控单元;资源调用单元,用于存储内部资源,并通过系统调用接口提供给主控单元。所述主控单元进一步用于,当所述转化后的指令为普通指令时,执行普 通指令,并将普通指令的处理结果发送给所述虚拟硬件。所述系统进一步包括主用数据存储单元,用于存储父硬件的所有指令 对应的运算变量,并提供给主控单元;主控单元进一步用于将每一条指令对应的运算中间值发送给主用数据 存储单元,并在运行下一条指令时,根据该指令从主用数据存储单元中读取 运算中间值。所述主控单元为电可擦写只读存储器E2PROM或者随机存储器RAM; 所述主用指令存储单元为只读存储器ROM; 所述主用数据存储单元为RAM; 所述资源调用单元为E2PROM。所述虚拟硬件包括虚拟指令存储单元和虚拟数据存储单元,其中,
虚拟指令存储单元,用于存储所述虚拟硬件的指令数据,并将指令数据提供给所述父硬件;虚拟数据存储单元,用亍接收来自所述父硬件的处理结果。 所述虚拟指令存储单元为E2PROM; 所述虚拟数据存储单元为RAM。所述父硬件为XA2处理器,所述虚拟硬件为8051处理器。 根据上述的另一个主要目的,本发明提供了一种基于虚拟硬件系统的指 令执行方法,包括以下步骤A、 父硬件读取虚拟硬件中的指令数据,根据预先设置的约定指令与父 硬件内部资源的映射关系,调用读取到的指令数据对应的内部资源;B、 父硬件利用调用的内部资源,运行转化后的指令对应的处理流程, 将处理结果返回给虚拟硬件>所述步骤A之前进一步包括将所述父硬件的存储空间分配给虚拟硬 件,作为所述虚拟硬件的指令存储空间和数据存储空间;步骤A所述读取虚拟硬件中的指令数据为父硬件根据内部存储的指 令,从虚拟硬件的指令存储空间中读取指令数据。所述步骤A进一步包括父硬件从虚拟硬件的数据存储空间中,读取所 述从虚拟硬件读取的指令数据对应的运算变量。步骤A所述转化虚拟硬件中的指令数据为按照虚拟硬件对应的指令集 规则,将读取的指令数据转化为父硬件能够执行的指令。所述约定指令为外部调用指令;步骤A所述调用内部资源为判断转化后的指令是否为外部调用指令, 如果是,则根据转化后的外部调用指令,通过所述映射关系,调用父硬件内 部存储的功能函数。所述判断转化后的指令是否为外部调用指令为判断转化后的指令调用 的子程序地址是否处于正常范围内,如果不是,再判断所述指令是否与父硬 件内部资源存在映射关系,如果是,则判定所述转化后的指令为外部调用指令。所述判断转化后的指令是否为外部调用指令为判断转化后的指令是否 为特殊编码,且所述指令是否与父硬件内部资源存在映射关系,如果是,则 所述转化后的指令为外部调用指令。所述步骤A进一步包括在判断出所述转化后的指令不是外部调用指令 之后,执行所述转化后的指令,将处理结果返回给虛拟硬件。步骤B所述运行转化后的指令对应的处理流程为根据读取的运算变 量,运行调用的内部资源。步骤B所述将处理结果返回给虚拟硬件为将处理结果发送到虚拟硬 件的数据存储空间。由上述技术方案可见,恭发明通过父硬件读取转化一条虚拟硬件的指令 数据,根据该指令调用内部资源,例如功能函数和多种高级资源,并利用调 用的内部资源,运行该指令对应的处理流程,替代与虚拟硬件的多条指令交 互过程,减少了指令执行周期,从而提高了虛拟硬件的指令执行速度。而且, 本发明通过调用父硬件的内部资源,不需要在父硬件和虚拟硬件中分别存储 用于实现相同功能的相同逻辑代码,节省了系统资源。
图1为现有技术中基于虛拟硬件系统的指令执行方法流程图。图2为本发明中虚拟硬件系统的示例性结构图。图3为本发明中基于虚拟硬件系统的指令执行方法的示例性流程图。图4为本发明实施例中虚拟硬件系统的结构图。图5为本发明实施例中基于虚拟硬件系统的指令执行方法流程图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举 实施例,对本发明进一步详细说明。
本发明的基本思想是父硬件读取转化一条虚拟硬件的指令数据,才艮据 该指令调用内部资源,并利用调用的内部资源,运行该指令对应的处理流程。其中,用于父硬件调用内部资源的指令为父硬件与虛拟硬件预先约定的 指令,如外部调用指令等,即在预先约定的指令和内部资源之间存在映射关 系。其中,内部资源可以为功能函数,也可以为文件系统等高级资源。图2为本发明中虚拟硬件系统的示例性结构图。如图2所示,本发明的 虚拟硬件系统包括父硬件201和虛拟硬件202。父硬件201,用于从虚拟硬件202中读取指令数据,运行读取的指令对 应的处理流程;向虚拟硬件202发送处理结果;虚拟硬件202,用于存储与预先约定的指令具有映射关系的指令数据; 接收来自所述父硬件201的处理结果。其中,虚拟硬件202的指令集中,包括与父硬件的外部调用指令对应的 指令数据,也包括与父硬件的普通指令对应的指令数据,父硬件201只有在 读取到与外部调用指令对应的指令数据后,才能够调用内部资源,如存储的 功能函数等。图3为本发明中基于虚拟硬件系统的指令执行方法的示例性流程图。如 图3所示,本发明基于虛拟硬件系统的指令执行方法包括以下步骤步骤301,父硬件读取虚拟硬件中的指令数据,根据预先设置的映射关 系,调用读取到的指令数据对应的内部资源;步骤302,父硬件利用调用的内部资源,运行转化后的指令对应的处理 流程,将处理结果返回给虚拟硬件,并返回步骤301,即父硬件继续读取虚 拟硬件的下 一条指令数据。其中,当父硬件转化后的指令为普通指令时,可以按照现有技术的方法, 逐条读取转化指令集中的指令。下面,结合具体实施例,对本发明的虚拟硬件系统和基于虚拟硬件系统 的指令执行方法进行详细说明。本实施例以物理硬件为飞利浦(Philips Semiconductors ) 司的高速扩
展结构微处理器(Smart extended Architecture 2nd generation, SmartXA2 ) 为例,SmartXA2简称XA2,是一个16位的微处理器,适用于作为软件开发平台。图4为本发明实施例中虛拟硬件系统的结构图。如图4所示,以虚拟'硬 件为虚拟8051处理器为例,本发明的虛拟硬件系统包括XA2处理器401 和虚拟8051处理器402。其中,XA2处理器401包括主控单元410、主用指令存储单元411和 资源调用单元412;主控单元410对应的物理实体可以为物理硬件XA2的电 可擦写只读存储器(E2PROM)中的任意存储空间,也可以为随机存储器 (RAM)中的任意存储空间;主用指令存储单元411对应的物理实体为物 理硬件XA2的只读存储器(ROM);资源调用单元412对应的物理实体为 物理硬件XA2的E2PROM的低位存储空间。主控单元410,用于接收来自主用指令存储单元411的XA2处理器的 指令,从虚拟8051处理器402中读取指令数据,并按照虚拟8051处理器 402对应的指令集规则,将读取到的指令数据转化为XA2处理器401能够执 行的指令;根据转化后的指令,从虚拟8051处理器402中读取该指令对应 的运算变量;当转化后的指令为外部调用指令时,根据外部调用指令,并通 过系统调用接口调用资源调用单元412中的内部资源,如功能函数,系统调 用接口为各种特殊指令与内部资源之间的映射关系表;利用读取到的运算变量,运行来自资源调用单元412的内部资源;将运行内部资源得到的处理结 果发送到虚拟8051处理器401。主用指令存储单元411'用于存储XA2处理器401的指令,并在系统 上电时,将指令提供给主控单元400。资源调用单元412,用于存储内部资源,并通过系统调用接口提供给主 控单元。虚拟8051处理器402包括虚拟指令存储单元421和虛拟数据存储单元422;虚拟指令存储单元421对应的物理实体为物理硬件XA2的E2PROM的
高位存储空间;虚拟数据存储单元422对应的物理实体为物理硬件XA2的 RAM的高位存储空间。虚拟指令存储单元421,用于存储虚拟8051处理器402的指令数据, 并将指令数据提供给XA2处理器401的主控单元410;虛拟数据存储单元422,用于存储虚拟8051处理器402的所有指令对 应的运算变量,并提供给XA2处理器401的主控单元410;接收来自XA2 处理器401的主控单元410的处理结果。实际应用中,主控单元410还用于当转化后的指令为普通指令时,执行 转化后的普通指令,并将普通指令的处理结果发送到虚拟8051处理器402。XA2处理器401进一步包括主用数据存储单元413,作为XA2处理器 401的数据存储空间,对应的物理实体为物理硬件XA2的RAM的低位存储 空间,用于存储XA2处理器401的所有指令对应的运算变量,并提供给主 控单元410。在这种情况下,主控单元410进一步用于将每一条指令对应的运算中间 值发送给主用数据存储单元413,并在运行下一条指令时,根据该指令从主 用数据存储单元413中读取运算中间值。本实施例的虚拟硬件系统是基于XA2来实现的,系统调用接口为各种 特殊指令与内部资源之间的映射关系表;资源调用单元412和虛拟指令存储 单元421分别为XA2中E2PROM的低位存储空间和高位存储空间,空间的 大小可以根据需要预先设定,也可将低位存储空间分配给虚拟8051处理器 402作为虚拟指令存储单元421、将高位存储空间设置为资源调用单元412; 主用数据存储单元413和虚拟数据存储单元422分别为XA2中RAM的低位 存储空间和高位存储空间,空间的大小可以根据需要预先设定,也可将低位 存储空间分配给虚拟8051处理器402作为虚拟数据存储单元422、将高位 存储空间设置为主用数据存储单元413。本实施例中,虚拟硬件为虚拟8051处理器,将物理硬件中RAM的存 储空间作为虚拟数据存储单元422,当虚拟硬件为其他类型的处理器时,也
可以将E2PROM的存储空间作为虚拟硬件的数据存储单元422,接收来自 XA2处理器401的处理结果。本实施例的虚拟硬件系统,也可以基于其他物理硬件,例如增强型精简 指令集单片机(Advanced RISC Machines, ARM),来实现;本实施例中的 虚拟硬件,也可以为AVR爭其他处理器,还可以为XA2本身。下面,对基于上述系统的指令执行方法进行详细说明。图5为本发明实施例中基于虚拟硬件系统的指令执行方法流程图。如图 5所示,本发明基于虚拟硬件系统的指令执行方法包括以下步骤步骤501,为虚拟805处理器分配资源空间。本实施例中,将XA2处理器中E^ROM的高位存储空间分配给主控单 元;将E2PROM的低位存储空间分配给虛拟8051处理器,作为虛拟8051 处理器的虚拟指令存储空间;将E2PROM的剩余存储空间分配给XA2处理 器,作为XA2处理器的资源调用单元;将RAM的高位存储空间分配给虚拟 8051处理器,作为虚拟8051处理器的数据存储空间;将RAM的低位存储 空间分配给XA2处理器,作为XA2处理器的数据存储空间。 步骤502, XA2处理器从虚拟8051处理器中读取指令数据。 本实施例中,XA2处理器从E^ROM的高位存储空间,即虚拟8051处 理器的虛拟指令存储空间中,读取8051指令集的相应指令数据,按照虛拟 8051处理器对应的指令集规则,将读取到的指令数据转化为XA2处理器能 够执行的指令;同时,从虚拟8051处理器的数据存储空间中,读取该指令 对应的运算变量。本步骤中,XA2处理器中存储有8051指令集与XA2指令集的映射表, XA2读取到8051指令之后.查找内部的映射表,即可将8051指令转化为 XA2指令,也可以通过其他方式转化。步骤503, XA2判断转化后的指令是否为外部调用指令,如果是,则执 行步骤504;如果不是,则执行步骤505。本步骤中,普通指令中的指针指向的地址在虚拟8051处理器的正常地
址范围内,当指针指向的地址为预先约定的特殊地址时,且该指令与内部资源存在映射关系,则判断该指令为外部调用指令;或者,当读取到的指令编 码为A5的特殊指令时,且该指令与内部资源存在映射关系,则判断该指令 为外部调用指令;构造外部调用指令,也可以采用其他方式。虚拟8051处理器的指令集中,将需要进行函数运算的指令设定为上述 的特殊指令,而XA2处理器中存储有特殊指令映射表,即可实现功能函数 的调用。例如,虚拟8051处理器中执行正弦函数运算的指令为调用2000H ( 16 进制)地址子程序的指令,而虚拟8051处理器的正常地址范围为1400H, 该指令为特殊指令。XA2和虚拟8051处理器可以事先约定2000H为进行正 弦运算的特殊地址,当虚拟8051硬件执行到调用2000H地址子程序的指令 时,XA2处理器先判断出该指令中的地址不属于正常范围内,再从内部存 储的映射表中查找该地址,查找到该地址后,根据该地址在映射表中的映射 关系,即可判断出需要调用的功能为正弦函数,并调用正弦函数。现有技术中,调用2000H地址子程序的指令为非法指令,执行正弦函 数需要调用一段数百甚至上千条指令的子程序段,并将上千条指令逐条转换 为父硬件能执行的指令,运算速度显然非常慢;而本发明中,XA2处理器根 据内部存储的指令映射表,判断出该指令对应的XA2指令为正弦函数。步骤504,根据转化后的外部调用指令,并通过系统调用接口,即各种 特殊指令与内部资源之间的映射关系,调用XA2存储的内部资源,如功能 函数;根据读取到的运算变量,运行来自资源调用单元的内部资源,然后将 处理结果发送给虚拟8051处理器的虛拟数据存储空间,并返回步骤502, XA2处理器继续读取虛拟8051处理器的下一条指令数据。本步骤中,由于执行的是父硬件XA2的函数,不需要转换,因此速度 大大高于虚拟硬件执行的速度,同时也避免了现有技术中为了在父硬件和虚 拟硬件上实现相同功能而必须实现两段逻辑相同的函数造成的资源浪费,对 于虚拟8051处理器来说,执行步骤504与调用一个虚拟8051处理器内部子 程序并没有明显的区别,几乎不影响虚拟8051处理器的正常运行;当特殊 指令映射表中的映射结果为调用高级资源时,XA2处理器则调用计算机系统 中的上层资源,例如文件系统或者高级函数库。步骤505,执行转化后的普通指令,并将处理结果发送到虛拟8051处 理器的数据存储空间,并返回步骤502, XA2处理器继续读取虛拟8051处 理器的下一条指令。本步骤的执行过程可以与现有技术相同,转化后的普通指令可以为多条 XA2指令;当根据虚拟8051处理器的指令转化后的XA2处理器的指令为多 条时,可以在执行每一条指令之后,将处理结果存储到XA2处理器的数据 存储空间中,在执行下一条指令时,再从XA2处理器的数据存储空间中读 取上一条指令的处理结果。本实施例的指令执行方法中,也可以在步骤502的转化过程中,判断读 取到的指令数据是否对应父硬件的外部调用指令,判断方法为先对读取到 的指令数据进行转化,如果指令数据能够按照现有技术中虚拟硬件的指令规 则进行转化,则转化结果为普通指令,并执行步骤505;如果读取到的指令 数据无法按照现有技术中虛拟硬件的指令规则进行转化,则从外部调用指令 映射表中,查找该指令数据,如果查找到该指令数据,则根据映射关系得到 的指令为外部调用指令,并执行步骤504,如果映射表中不包括该指令数据, 则该指令数据对应的父硬件指令为非法指令,并结束本流程。本实施例中,虚拟8051处理器的数据存储空间可以为RAM,也可以为 分配到的E2PROM的高位存储空间。本实施例中基于虚拟硬件系统的指令执行方法,也适用于其他基于其他 物理硬件,例如基于ARM的虚拟硬件系统;本实施例中的方法,也适用于 虛拟硬件为其他处理器的虚拟硬件系统,例如AVR、 XA2等。以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范 围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等, 均应包含在本发明的保护范围之内。
权利要求
1、一种虚拟硬件系统,其特征在于,包括父硬件和虚拟硬件,其中,父硬件,从虚拟硬件中读取指令数据,运行读取的指令数据对应的处理流程;向虚拟硬件发送处理结果;虚拟硬件,用于存储与预先约定的指令具有映射关系的指令数据;接收来自所述父硬件的处理结果。
2、 如权利要求1所述的系统,其特征在于,所述父硬件包括主控单 元、主用指令存储单元和资源调用单元,其中,主控单元,用于接收来自主用指令存储单元的所述父硬件的指令,从虚 拟硬件中读取指令数据,将读取到的指令数据转化为父硬件能够执行的指 令;根据转化后的指令,从虛拟硬件中读取该指令对应的运算变量;当转化 后的指令为外部调用指令时,通过系统调用接口调用资源调用单元中的内部 资源,所述系统调用接口为各种特殊指令与内部资源之间的映射关系表;利 用读取到的运算变量,运行来自资源调用单元的内部资源,并将得到的处理 结果发送到虚拟硬件;主用指令存储单元,用于存储所述父硬件的指令,并在系统上电时,将 指令提供给主控单元;资源调用单元,用于存储内部资源,并通过系统调用接口提供给主控单元。
3、 如权利要求2所述的系统,其特征在于,所述主控单元进一步用于, 当所述转化后的指令为普通指令时,执行普通指令,并将普通指令的处理结 果发送给所述虚拟硬件。
4、 如权利要求2所述的系统,其特征在于,所述系统进一步包括主 用数据存储单元,用于存储父硬件的所有指令对应的运算变量,并提供给主 控单元;主控单元进一步用于将每一条指令对应的运算中间值发送给主用数据 存储单元,并在运行下一条指令时,根据该指令从主用数据存储单元中读取 运算中间值。
5、 如权利要求4所述的系统,其特征在于,所述主控单元为电可擦写 只读存储器E2PROM或者随机存储器RAM;所述主用指令存储单元为只读存储器ROM; 所述主用数据存储单元为RAM; 所述资源调用单元为E2PROM。
6、 如权利要求2至5中任意一项所述的系统,其特征在于,所述虚拟 硬件包括虚拟指令存储单元和虚拟数据存储单元,其中,虚拟指令存储单元,用于存储所述虛拟硬件的指令数据,并将指令数据 提供给所述父硬件;虚拟数据存储单元,用于接收来自所述父硬件的处理结果。
7、 如权利要求6所述的系统,其特征在于,所述虛拟指令存储单元为 E2PROM;所述虚拟数据存储单元为RAM。
8、 如权利要求1所述的系统,其特征在于,所述父硬件为XA2处理器, 所述虚拟硬件为8051处理器。
9、 一种基于虚拟硬件的指令执行方法,其特征在于,包括以下步骤A、 父硬件读取虛拟硬件中的指令数据,根据预先设置的约定指令与父 硬件内部资源的映射关系,调用读取到的指令数据对应的内部资源;B、 父硬件利用调用的内部资源,运行转化后的指令对应的处理流程, 将处理结果返回给虚拟硬件,
10、 如权利要求9所述的方法,其特征在于,所述步骤A之前进一步包 括将所述父硬件的存储空间分配给虚拟硬件,作为所述虚拟硬件的指令存 储空间和数据存储空间;步骤A所述读取虚拟硬件中的指令数据为父硬件根据内部存储的指 令,从虚拟硬件的指令存储空间中读取指令数据。
11、 如权利要求9或10所述的方法,其特征在于,所述步骤A进一步 包括父硬件从虚拟硬件的数据存储空间中,读取所述从虚拟硬件读取的指 令数据对应的运算变量。
12、 如权利要求9所述的方法,其特征在于,步骤A所述转化虚拟硬件 中的指令数据为按照虚拟硬件对应的指令集规则,将读取的指令数据转化 为父硬件能够执行的指令。
13、 如权利要求9所述的方法,其特征在于,所述约定指令为外部调用 指令;步骤A所述调用内部资源为判断转化后的指令是否为外部调用指令, 如果是,则根据转化后的外部调用指令,通过所述映射关系,调用父硬件内 部存储的功能函数。
14、 如权利要求13所述的方法,其特征在于,所述判断转化后的指令 是否为外部调用指令为判断转化后的指令调用的子程序地址是否处于正常 范围内,如果不是,再判断所述指令是否与父硬件内部资源存在映射关系, 如果是,则判定所述转化后的指令为外部调用指令。
15、 如权利要求13所述的方法,其特征在于,所述判断转化后的指令 是否为外部调用指令为判断转化后的指令是否为特殊编码,且所述指令是 否与父硬件内部资源存在映射关系,如果是,则所述转化后的指令为外部调 用指令。
16、 如权利要求13所述的方法,其特征在于,所述步骤A进一步包括 在判断出所述转化后的指令不是外部调用指令之后,执行所述转化后的指 令,将处理结果返回给虚拟硬件。
17、 如权利要求11所述的方法,其特征在于,步骤B所述运行转化后 的指令对应的处理流程为根据读取的运算变量,运行调用的内部资源。
18、 如权利要求9所述的方法,其特征在于,步骤B所述将处理结果返 回给虛拟硬件为将处理结果发送到虚拟硬件的数据存储空间。
全文摘要
本发明公开了一种虚拟硬件系统,包括父硬件和虚拟硬件,其中,父硬件,从虚拟硬件中读取指令数据,运行读取的指令数据对应的处理流程;向虚拟硬件发送处理结果;虚拟硬件,用于存储与预先约定的指令具有映射关系的指令数据;接收来自所述父硬件的处理结果。本发明还公开了一种基于虚拟硬件的指令执行方法。本发明通过父硬件读取转化一条虚拟硬件的指令数据,根据该指令调用内部资源,例如功能函数和多种高级资源,并利用调用的内部的资源,运行该指令对应的处理流程,减少了指令执行周期,从而提高了虚拟硬件的指令执行速度。而且,本发明不需要在父硬件和虚拟硬件中分别存储用于实现相同功能的相同逻辑代码,节省了系统资源。
文档编号G06F9/38GK101154155SQ20061015967
公开日2008年4月2日 申请日期2006年9月30日 优先权日2006年9月30日
发明者殷广英 申请人:北京深思洛克数据保护中心