安全控制的多处理器系统的制作方法与工艺

文档序号:11964971阅读:200来源:国知局
安全控制的多处理器系统的制作方法与工艺
安全控制的多处理器系统相关申请的交叉参考本申请要求于2012年4月27日提出申请的美国临时专利申请号61/639,394的权益和于2012年6月7日提出申请的美国专利申请号13/491,309的权益,其全部内容结合于此以作参考。技术领域本发明涉及计算机安全,更具体地,涉及安全处理系统。

背景技术:
安全性是现代计算机系统的关键部分。计算机安全系统和技术确保有价值的信息和系统不会被黑客或恶意软件危害。为此,许多组织公开了安全标准,供应商可以使用这些安全标准作为硬件和/或软件安全性的准则。信息技术安全评估的通用标准(“通用标准(CommonCriteria)”或“CC”)是目前用作开发、评估、和/或采购具有安全功能的IT产品的准则。CC提供一组公共需求用于IT产品的安全功能和在安全评估期间应用于这些IT产品的保证措施。这些IT产品可以以硬件、固件或软件实施。在CC下的评估过程创建应用于IT产品的IT产品的安全功能和保证措施满足预定义的需求的置信水平。可以证明遵守CC是国家批准授权的,例如美国的国家标准与技术研究院(NIST)国家自愿实验室认证程序(NVLAP)。用户要求的一个公共安全需求是,只有通过认证(或信任的)代码可以在系统的安全域(例如,安全处理器)中执行。先前用于实现该需求的方法使用硬件机制允许单个处理器作为两个处理器在逻辑上工作。然而,从安全的角度来看,该结构要求设备的安全部分不能与应用处理器同时工作。对于高安全性应用来说,该结构进一步不允许经过认证的处理器响应篡改系统的攻击。而且,在实现该需求的过程出现的困难在多应用环境中逐渐增加。例如,安全(经过认证的)应用(例如,经过认证的金融应用程序)必须与用户编写的小应用程序共存。因此,一旦将用户编写(不受信任的)的小应用程序增加至环境中,任何认证要求会变得无效。因此,需要保持系统的安全部件的认证同时允许在系统中执行不受信任代码的系统和方法。

技术实现要素:
为了解决上述问题,本发明提供了以下系统和方法:(1)一种系统,包括:安全处理系统,包括:硬件存储保护单元(HMPU),被构造为限制对所述安全处理系统的访问,安全存储器被构造为存储安全策略,以及安全处理器被构造为执行安全代码,其中,所述安全处理器被构造为基于所述安全策略确定是否准许访问所述安全处理系统的安全服务的请求;以及第一处理器,与所述安全处理系统和一组系统外围设隔离,其中,所述第一处理器被构造为:在所述安全处理器的指示下执行代码,以及将访问所述安全服务的所述请求放入所述共享内存中。(2)根据(1)所述的系统,其中,所述安全处理系统进一步包括隔离桥,所述隔离桥被构造为将所述安全处理系统耦接至非安全外围设备,其中,所述安全处理器进一步被构造为基于所述安全策略确定是否指示所述隔离桥将所述安全处理器耦接至所述非安全外围设备。(3)根据(2)所述的系统,进一步包括耦接至所述第一处理器的内存,其中,所述内存与所述安全处理系统和所述一组系统外围设备隔离。(4)根据(3)所述的系统,其中,所述安全处理器进一步被构造为指示所述隔离桥将所述内存耦接至非安全外围设备以使所述代码能够加载到所述内存中。(5)根据(3)所述的系统,其中,所述HMPU通过执行沙盒限制访问所述安全处理系统,其中,所述沙盒包括所述内存、所述第一处理器和所述共享内存。(6)根据(1)所述的系统,其中,所述安全处理器被认证为只执行安全代码。(7)根据(1)所述的系统,其中,所述安全处理系统进一步包括加密总线。(8)根据(1)所述的系统,其中,所述安全处理器被构造为执行安全操作系统代码。(9)根据(1)所述的系统,其中,所述安全处理系统包括安全监控模块,所述安全监控模块被构造为检测篡改所述安全处理系统的攻击。(10)一种系统,包括:第一处理器,安全处理系统,包括:安全内存,存储安全策略,隔离桥,被构造为将系统外围设备耦接至所述安全处理系统,以及安全处理器,其中,所述安全处理器被构造为基于所述安全策略确定是否指示所示隔离桥将所述系统外围设备耦接至所述安全处理系统;以及硬件内存保护单元(HMPU),被构造为将所述第一处理器与所述安全处理系统和所述系统外围设备隔离。(11)根据(10)所述的系统,其中,所述第一处理器和所述安全处理系统都被耦接到共享内存,其中,所述HMPU进一步被构造为将所述第一处理器和所述共享内存与所述安全处理系统和所述系统外围设备隔离。(12)根据(11)所述的系统,其中,所述第一处理器被构造为将向所述系统外围设备释放数据的请求放入所述共享内存。(13)根据(12)所述的系统,其中,所述安全处理器进一步被构造为:基于所述安全策略确定是否准许所述请求;以及响应于确定应当准许所述请求,指示所述隔离桥将所述系统外围设备耦接至所述安全处理系统。(14)根据(10)所述的系统,其中,所述HMPU通过在所述内存、所述第一处理器和所述共享内存周围执行沙盒将所述第一处理器与所述安全处理系统和所述系统外围设备隔离。(15)根据(10)所述的系统,其中,所述安全处理器被认证为只执行安全代码。(16)一种方法,包括:利用安全处理器检测对安全服务的第一请求,其中,通过与所述安全处理器物理隔离的非安全处理器将所述第一请求放入共享内存中;利用所述安全处理器分析存储的安全策略以确定是否准许所述第一请求;以及响应于应当准许所述第一请求的确定:利用所述安全处理器处理所述第一请求,以及将响应放入所述共享内存中。(17)根据(16)所述的方法,进一步包括:从安全监控器接收表明已经出现对所述安全处理器的试图攻击的信息;以及响应于接收所述信息确定不应当准许所述第一请求。(18)根据(16)所述的方法,进一步包括:检测将数据释放至系统外围设备的第二请求,其中,所述第二请求通过所述非安全处理器被放入所述共享内存中,以及其中所述系统外围设备通过隔离桥与所述安全处理器隔离;利用所述安全处理器分析存储的安全策略以确定是否准许所述第二请求;以及响应于应当允许所述第二请求的确定,指示所述隔离桥将所述非安全处理器耦接至所述系统外围设备。(19)根据(18)所述的方法,进一步包括:从安全监控器接收表明已经出现对所述安全处理器的试图攻击的信息;以及响应于接收所述信息确定不应当准许所述第二请求。(20)根据(16)所述的方法,进一步包括:利用所述安全处理器接收将额外的非安全代码加载到非安全内存中的第三请求,其中,所述非安全内存被耦接至所述非安全处理器,并且与所述安全处理器隔离;以及基于所述安全策略确定是否准许所述第三请求。附图说明包括在说明书中并构成说明书的部分示出本发明的实施方式的附图,连同以上提供的一般说明和以下提供的实施方式的详细描述用于说明本发明的原理。在附图中:图1是根据本发明实施方式的包括安全处理系统和用于执行不受信任代码的非安全沙盒的系统的方框图。图2是根据本发明实施方式的包括安全处理系统和用于执行不受信任代码的非安全沙盒的系统的另一个方框图。图3是根据本发明实施方式的用于请求安全服务的方法的流程图。结合附图,根据下面阐述的详细说明将更明显地看出本发明的特征和优势,在附图中相似的参考字符表示相对应的元件。在附图中,相似的参考数字一般表示相同的、功能相似的、和/或结构相似的元件。第一次出现元件的附图由相对应的参考数字中的最左边的数字指示。具体实施方式在下面的描述中,阐述了许多具体细节以便于更透彻地理解本发明。然而,本领域的技术人员将理解,本发明,包括结构、系统和方法,可以在无这些特定细节的情况下实施。本文中的描述和表示是本领域的有经验或普通技术人员使用的常见方法,从而将其作品的本质最有效地传递给本领域的技术人员。在其他情况下,为了避免不必要地模糊本发明的方面,未详细描述众所周知的方法、过程、部件和电路。说明书中引用的“一个实施方式”、“实施方式”“实例实施方式”等表明所描述的实施方式包括特定特征、结构或特点,但是每个实施方式不一定包括特定特征、结构或特点。而且,这些短语不一定是指相同的实施方式。进一步,当结合实施方式描述特定特征、结构、或特点时,特定特征、结构或特点在本领域技术人员的知识范围内,无论是否明确描述,结合其他示例性的实施方式会影响这些特征、结构或者特点。1、概要本发明实施方式提供了用于实施安全处理系统的系统和方法,其中安全处理系统具有可以认证为安全处理器的处理器和支持由安全处理器定义和管理的用于执行不受信任代码的“沙盒”的另一个隔离处理器。沙盒隔离代码(例如,未经认证的代码和/或不安全代码)访问或查看安全处理系统。安全处理器管理内存空间和允许在第二处理器上运行的应用程序。因为安全处理系统只处理安全代码和/或经过认证的代码,所以执行安全处理系统的产品/系统可以保持安全处理器的安全认证。隔离处理器执行安全处理器定义的隔离边界(“沙盒”)内的代码。安全处理器定义沙盒的边界(例如,利用硬件边界或逻辑安全边界),以便于在沙盒内执行的代码不能访问沙盒外部的安全处理系统的安全元件。因此,实施方式有利地提供包括经过认证的安全处理器的安全处理系统,其中经过认证的安全处理器只执行经过认证的代码和/或安全代码,同时允许执行安全处理系统外部的隔离沙盒内的不受信任代码。因为沙盒的安全边界由安全处理器执行,所以在不危害安全处理系统的安全性的情况下可以支持在沙盒中执行不受信任代码。2、系统图1是根据本发明实施方式的多处理器系统的方框图,该多处理器系统包括安全处理系统116和一个或多个非安全部件。在实施方式中,安全处理系统116包括安全处理器100、一个或多个加密处理引擎123、一个或多个安全外围设备120、安全监控器122和只读存储器(ROM)118。CPU1100被构造为只执行安全代码和/或经过认证的代码。CPU1100不执行非安全代码和/或未经过认证的代码(例如,供应商或用户的自定义码)。此外,CPU11100管理内存空间和允许在CPU2108上运行的应用程序。安全处理系统116具有相关联的安全边界。该安全边界有助于防止非安全代码访问和/或篡改安全处理系统116的要素。可以例如利用硬件和/或加密技术创建安全边界。用于提供安全边界的硬件技术可以包括,例如,将部件放置在单个集成电路中。此外,利用诸如环氧树脂密封的防破坏和/或防篡改技术通过物理结构可以保护一个或多个集成电路。用于创建安全边界的加密技术可以包括,例如,在离开安全处理系统116内的部件之前加密敏感信息。为此,安全处理系统116包括一个或多个加密处理器,并且将相关联的加密/解密密钥存储在安全处理系统116内部的安全内存中(例如,在ROM118或在以前的可编程存储器)。2.1、沙盒对系统的许多攻击通过在软件程序内包括恶意代码实现。例如,黑客可以将代码植入程序中,从而访问安全信息(例如,密码、密钥等)或干扰系统运行(例如,病毒)。任何非安全或不受信任代码都可能含有这些恶意代码。如上所述,沙盒104可以用于执行非安全代码或不受信任代码(例如,用户或供应商的自定义代码)。该不受信任代码可能不是(通常不是)安全代码。为了防止任何危害代码篡改安全处理系统116的元件,安全处理系统116包括隔离的沙盒104。如上所述,安全处理系统116内的CPU1100定义沙盒104。沙盒104包括CPU2108和内存106。CPU2108与安全处理系统116隔离。CPU2108可以只执行沙盒104内的代码(例如,Java代码或本机代码)。因此,CPU2108用作“实机”(例如,与“虚拟机”相对)执行应用程序。硬件内存保护单元(HMPU)102被构造为执行CPU2108和安全处理系统116之间的隔离。HMPU102包括共享内存110、I/O模块112、和静态随机存取存储器(SRAM)114。在实施方式中,共享内存110包括在沙盒104内。共享内存110作为在CPU2108上执行的应用程序请求的信箱。CPU2108将每个请求放置在共享内存110中。一旦接收请求,CPU1100就构造为确定是否处理该请求。防止CPU2108将可执行代码写入共享内存110。更确切地,通过CPU2108仅不可执行请求(例如,安全服务的请求)可以写入共享内存110。ROM106将CPU2108要执行的非安全代码和/或未经过认证的代码存储在沙盒104中。在实施方式中,在制造期间可以将某些非安全代码和/或未经过认证的代码存储在ROM106中。如果用户和/或供应商希望存储额外的非安全代码和/或未经过认证代码用于执行,那么可以利用隔离桥124将来自开放外围设备126的代码输入共享内存110。例如,用户可以选择执行小应用程序(例如,Javaapplet)。以下将更详细地说明隔离桥124的操作。2.2、安全处理系统安全处理系统116包括与CPU1100相关联的安全边界内的元件。例如,安全处理系统116包括可以由在安全CPU1100上执行的代码访问的安全元件。在CPU2108上执行的代码不能直接访问安全处理系统116的安全元件。相反,如果CPU2108要求使用在安全处理系统116内提供的安全服务,那么CPU2108将安全服务请求放入共享内存110。通过CPU1100评估该请求。以下将参考图3更详细地描述用于评估CPU2108请求安全服务的过程。在实施方式中,HMPU102的I/O模块112和SRAM114在安全处理系统116内。安全处理系统116还可以包括安全处理器CPU1100可访问的ROM118、安全外围设备120、安全监控器122、加密处理引擎123、和隔离桥124。在实施方式中,ROM118存储安全代码和/或经过认证的代码。在实施方式中,安全处理系统116的元件只可以由在CPU1100上执行的安全代码和/或经过认证的代码访问。安全监控器122监控安全处理系统116的安全性,和可以检测篡改安全处理系统116的尝试。如果检测到攻击,那么安全监控器122可以通知CPU1100已经出现攻击或尝试攻击,CPU1100可以采取行动响应该攻击。在实施方式中,安全处理系统116具有一个或多个安全策略。这些策略可以例如用于定义应当如何处理请求(例如,来自CPU2108的安全服务请求),和当观察到某些事件时应当采取何种行为(如果有的话)。在实施方式中,安全策略可以存储在ROM118中。2.3、隔离桥隔离桥124将安全处理系统116的部件与外部非安全部件(例如,开放外围设备126)隔离。隔离桥124受到CPU1100的控制,并且被构造为打开和关闭安全处理系统116和开放外围设备126之间的逻辑或硬线数据通道。开放外围设备126的隔离防止安全数据泄露至开放外围设备126。进一步,该隔离确保具有开放外围设备126的部件的任何问题不会影响安全处理系统116。例如,该隔离可以确保安全处理系统116的安全性不会受到开放外围设备126的危害。通过将外围设备126与安全处理系统116中的时钟信息隔离,隔离桥124在安全处理系统116和开放外围设备126之间产生异步边界。该异步边界防止安全处理系统116外部的非安全元件检测安全处理系统116内的总线上传播的检测信息。在实施方式中,隔离桥124被构造为耦接安全处理系统116和开放外围设备126之间的一个或多个数据通道。通过将数据通道切换成打开和关闭状态,隔离桥124可以耦接和解耦安全处理系统116的元件和开放外围设备126。例如,隔离桥124可以被构造为利用第一数据通道128将I/O模块112耦接至开放外围设备126。隔离桥124可以被构造为利用第二数据通道130将开放外围设备126耦接至安全处理系统116的加密总线132。例如,如果用户或供应商希望将非安全数据和/或未经过认证的数据加载到ROM106中,那么用户或供货商可以将请求发送至CPU1100以将该信息加载到共享内存ROM106中。CPU1100可以基于一个或多个存储的安全策略确定是否同意该请求。如果CPU1100同意该请求,那么CPU1100可以指示隔离桥124切换数据通道128。在已经将非安全数据和/或未经过认证的数据传输至ROM106之后,CPU1100可以指示隔离桥再次切换数据通道128以解耦开放外围设备126和I/O模块112。数据通道120可以用于将来自安全处理系统116和/或ROM106的数据通过加密总线132发送至开放外围设备126。例如,如果CPU1100同意数据从安全处理系统116和/或ROM106转移至开放外围设备126,那么CPU1100可以指示隔离桥124切换数据通道128。在已经将非安全数据和/或未经过认证的数据传输至开放外围设备126之后,CPU1100可以指示隔离桥再次切换数据通道130以解耦开放外围设备126和加密总线132。2.4、加密处理引擎和安全外围设备图2示出根据本发明实施方式的包括安全处理系统116和沙盒104的系统的更详细的图示。如图2中所示,开放外围设备126可以包括直接存取存储器(DMA)模块230、内置集成电路(I2C)模块232、安全外围接口(SPI)设备234、和SPI设备236,这在图2中通过通用输入/输出(GPIO)模块238示出。AHB从设备201和AHB主设备203是用于将隔离桥124连接至这些开放外围设备的总线。安全处理系统116包括根据本发明实施方式的一个或多个加密处理引擎123。例如,在图2中,循环冗余校验(CRC)模块200通过加密总线132被耦接至CPU。在图2中,加密处理引擎123包括用于安全服务的安全模块。例如,安全处理系统116可以包括不对称加密引擎204、一个或多个对称加密引擎(例如,3DEX206和/或AES208)、加密散列模块210。实施方式可以进一步包括流加密模块(例如,RC4模块)。APB桥212将安全外围设备连接至CPU1100。在实施方式中,加密经过该桥的流量。例如,这些其他安全外围设备包括I2C主设备/从设备216、SPI主设备218、非易失性内存(NVM)224、以及设备配置和管理模块226。定时器220、定时器随机数发生器(TRNG)222和时钟213也通过APB桥212被耦接至CPU1100。在图2中,上电复位(POR)模块228被耦接至安全监控器122。在实施方式中,POR模块228检测何时将电源应施加至实施安全监控器122的电路(例如,POR模块228检测何时设备已被复位)。2.5、实施本文中公开的实施方式有利地允许通过诸如通用准则的标准认证安全处理系统116的硬件(例如,CPU1100和相关联的硬件)。CPU2108由CPU1100安全地控制,因此,可以允许CPU2108在隔离的沙盒104内运行用户应用程序,而不会错过认证CPU1100。在本发明的实施方式中,图1和图2中所示的所有元件均位于相同的集成电路(IC)中。在另一个实施方式中,图1和/或图2中所示的某些元件位于单独的IC。例如,在实施方式中,外围设备(例如,安全外围设备120和/或开放外围设备126)位于与图1和/图2中所示的剩余元件分离IC中。应当理解,图1和/图2中所示的任何元件可以在与用于实施图1和/或图2中所示的任何其他元件相同或不同的IC中。在实施方式中,CPU1100和CPU2108实施为两个分离的处理器。在另一个实施方式中,CPU1100和CPU2108实施为共享处理器的两个核。本发明实施方式可以在许多设备中实施。例如,本发明实施方式可以实施在手机或个人计算机上。通过示出而非限制的方式提供这些实例。本领域的普通技术人员将理解,本发明实施方式的多种实施是可行的。3、方法现在将更详细地说明用于执行CPU2108与安全处理系统116的隔离的方法。图3描述了根据本发明实施方式的用于执行CPU2108和沙盒104隔离的方法300。参考图1和图2中所示的实施方式说明方法300。然而,方法300不限于这些实施方式。在实施方式中,CPU1100执行图1和图2中所示的所有系统元件的主要处理功能。例如,CPU1100可以被构造为执行操作系统的安全的经过认证的代码。如上所述,CPU1100不执行非安全代码和/或未经过认证的代码。在步骤302中,CPU1100指示CPU2108处理沙盒104内的非安全代码。如果非安全代码还未加载到共享内存110中,那么此时可以将非安全代码(例如,来自开放外围设备126)加载到共享内存110中。或者,可以将非安全代码加载到沙盒104内的另一个存储器中(例如,ROM106中)。例如,CPU1100可以安排命令执行共享内存110中的非安全代码。CPU2108可以检测该命令、处理请求、和在已经完成执行非安全代码之后(可选地)将响应放入共享内存110中。由于共享内存110不存储可执行代码,所以防止黑客将恶意可执行代码植入该响应。CPU1100可以从共享内存110中读取该响应,然后可以继续处理安全代码。当CPU2108在处理非安全代码时,CPU2108需要访问沙盒104外部的元件。例如,正在CPU2108上执行的代码可以请求利用加密散列模块210进行散列数据。因为CPU2108与安全处理系统116隔离,所以CPU2108无法直接访问沙盒104外部的元件。相反,在步骤304中,CPU2108将访问该元件的请求放在共享内存110中。在步骤306中,CPU1100检测该请求并确定是否应当同意该请求。例如,CPU1100可以评估一个或多个存储安全策略,从而确定是否准许该请求。在实施方式中,这些一个或多个策略可以存储在ROM118中。例如,这些一个或多个策略可以规定,如果安全监控器122检测到恶意第三方进行的攻击或试图攻击那么不应当执行非安全代码。本领域的普通技术人员将理解,可以通过多种方式配置安全策略。在实施方式中,制造商或终端用户可以定制和/或修改安全策略。在步骤308中,如果CPU1100确定应当拒绝请求,那么CPU1100发送响应至CPU2108(例如,通过将消息放入共享内存110中),表明拒绝该请求。如果CPU1100同意该请求,那么在步骤310中CPU1100处理该请求。例如,CPU1100可以指示加密散列模块210散列数据。在已经处理该请求之后,在步骤312中CPU1100将响应放入共享内存110中。例如,CPU1100可以将来自加密散列模块210的散列输出放入共享内存110中。CPU2108可以访问该响应并继续执行沙盒104内的代码。现在将参考图3描述根据本发明实施方式的执行CPU2108和沙盒104的隔离的方法300的实例。在步骤302中,CPU1指示CPU2执行沙盒104内的非安全代码。在沙盒104中执行的代码最终生成向用户释放数据的请求。在步骤304中,CPU2在共享内存110中放置释放数据的请求,以及在步骤306中CPU1100检测该请求并确定是否同意该请求。如果请求是将数据释放至安全外围设备120(例如,SPI主设备218)的请求,那么CPU1100准许该请求,因为安全外围设备120位于安全处理系统116的安全边界内。CPU1100可以检测将数据释放至开放外围设备126(例如,SPI设备234)的请求。在实施方式中,CPU1100可以基于一个或多个存储安全策略确定是否同意该请求。例如,CPU1100可以确定拒绝将存储的加密密钥释放至开放外围设备126的请求。例如,如果安全监控器122检测到恶意第三方的攻击或试图攻击,那么CPU1100可以确定拒绝将数据释放至开放外围设备的请求。如果CPU1100拒绝该请求,那么在步骤308中CPU1100发送表明拒绝访问数据的响应。例如,CPU1100可以通过安全外围设备120发送响应至用户,或CPU1100可以指示隔离桥切换数据通道130,使得可以通过开放外围设备126将响应发送至用户。如果CPU1100同意该请求,那么在步骤310中CPU1100处理该请求。例如,CPU1100可以指示隔离桥124切换数据通道130,使得可以将数据发送至在请求中识别的开放外围设备。在可选步骤312中,CPU1100可以将响应放入共享内存110中以告知CPU2108已经处理该请求。通过遵循图3的过程,CPU1100可以请求执行非安全代码和/或未经认证的代码,而不会危害安全处理系统116的安全。进一步,CPU2108可以请求访问沙盒104外部的元件,而不会危害安全处理系统116的安全性。因为硬件沙盒104隔离CPU2108,所以避免了传统Java(或本机代码)的任何可能的安全问题。根据本发明实施方式,经过认证的安全操作系统(例如,在CPU1100上执行)能够与非安全应用程序(例如,在CPU2108上执行)同时运行。利用本发明实施方式,当检测到篡改安全处理系统116的潜在尝试时,经过认证的安全处理器CPU1100可以做出反应(例如,通过安全监控器122)。4、结论以上借助于示出本发明的具体功能及其关系的实施的功能构件方框描述了本发明。为了便于描述,本文中已经任意地定义这些功能构件方框的边界。只要合适地执行具体功能和其关系就可以定义可选的边界。前述的具体实施例将完全揭示本发明的一般特征,以致于在不偏离本发明的一般概念的情况下,无需过量实验,通过应用本领域普通技术人员的知识可以容易地修改和/或使之适于不同的应用。因此,基于本文中提出的教导和引导,这些适应和修改旨在在所发明实施方式的等价物的意义和范围内。应当理解,本文中的词组或术语是为了描述而非限制,因此根据教导和引导本领域的技术人员说明本说明书的术语或词组。以上系统和方法可以实施为在机器上执行的计算机程序、计算机程序产品、或已经存储指令的有形和/或非易失性计算机可读介质。例如,本文中描述的功能可以通过计算机处理器或以上列举的任何一个硬件设备执行的计算机程序指令体现。计算机程序指令使处理器执行本文中描述的信号处理功能。计算机程序指令(例如,软件)可以存储在有形易失性计算机可使用介质、计算机程序介质、或计算机或处理器可以访问的任何存储介质。该介质包括诸如RAM或ROM的存储设备,或诸如计算机磁盘或CDROM的其他类型的计算机存储介质。因此,具有使处理器执行本文中描述的信号处理功能的计算机程序代码的任何有形非易失性计算机存储介质在本发明的保护范围和精神内。尽管以上已经描述了本发明的不同实施方式,但是应当理解,仅仅通过实例而非限制地呈现了这些实施例。相关领域的技术人员将明显看出,在不偏离本发明的精神和保护范围的情况下,可以对本发明的形式和细节做出改变。因此,本发明的广度和保护范围不应当受到任何以上所述的示例性实施方式的限制,而应当只根据所附权利要求及其等价物限定。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1