用于中断处理的方法和加速器单元与流程

文档序号:11620511阅读:203来源:国知局
用于中断处理的方法和加速器单元与流程
本公开总体上涉及一种数据处理系统,更具体地,涉及一种用于中断处理的方法和加速器单元。
背景技术
:通常,与数据处理系统通信地耦接的处理器从中断控制器传输中断。由于中断能够在多种装置(诸如,处理器外部的外部装置)中产生,中断控制系统通常用于收集从多个中断源接收的外部中断信号并将所述外部中断信号作为中断请求信号(irq)发送到处理器。数据处理系统的示例可包括嵌入式系统、移动装置、计算机等。irq向处理器通知不规则和/或特殊事件的发生。中断通常是在中央处理器之外发生的事件(诸如在外部装置或从内部组件发生的事件)的结果,这需要处理器暂停正在被执行的当前操作并切换到存储于存储器中的中断服务程序(isr)。通常,isr被专门地配置为处理中断。之后,处理器重返正常指令程序。此外,中断控制器可为每个外部中断信号提供向量地址。中断控制器可与被用于对中断进行优先化以向处理器提供最高优先级中断的中断控制器硬件(例如,向量中断控制器(vic)、通用中断控制器(gic))相关联。一旦处理器从vic接收到对应于外部中断信号的向量地址,如果从vic接收的中断请求未执行完,则处理器放弃当前执行的程序并重新开始多周期指令(诸如加载或存储加载多个暂存器(ldm),push或pop)。当数据高速缓存行充满时,能够从指令高速缓存器、存储器或紧耦合存储器(tcm)获得isr。例如,为了使-r4使用专用的快速中断请求(fiq)对中断进行响应花费20个周期,这是最好的情况并且假定isr在r4tmc或高速缓存中立即可用。最坏的情况下当使用irq时响应增加到30个周期。此外,在后isr调度期间,由调度决策程序识别将被激活的最高就绪任务而消耗的时间以及针对抢占或放弃的任务的上下文恢复导致处理irq的延迟。虽然存在通过使用允许当当前服务中断程序时再发生中断的嵌套的中断处理程序来减少中断延迟的一些传统方法,但这些传统方法仅用在一些系统中,并且不存在关于任何真正减少中断延迟的太多证据。当运行的任务被中断,即使优化的实时操作系统(rtos)也需要最小的程序代码来存储返回状态(上下文)。此外,快速中断响应在任何数据处理系统中都是至关重要的。因此,存在减少用于数据处理系统的确定性行为的中断延迟的需要。技术实现要素:本公开的一方面提供了一种用于中断处理的方法和加速器单元。本公开的另一方面提供了一种用于在加速器单元接收中断请求的机制。本公开的另一方面提供了一种机制,其中,通过该机制,加速器单元被用于使通用寄存器或多个通用寄存器入栈到内置的后进先出(lifo)单元中。本公开的另一方面提供了一种机制,其中,通过该机制,加速器单元能够将对应于中断请求的向量地址发送到处理中断请求的处理器。本公开的另一方面提供了一种用于由处理器从加速器单元接收中断请求并处理该中断请求的机制。本公开的另一方面提供了一种用于由处理器检测与中断请求相关联的调度器指示的机制。当中断服务程序(isr)调用实时操作系统应用程序接口(api)时,调度器指示指示中断请求的isr是api依赖的。当中断服务程序(isr)不调用实时操作系统应用程序接口(api)时,调度器指示指示中断请求的isr是api独立的。调度器指示是可配置的,其中,调度器指示可用于指示与中断请求相应的中断服务程序(isr)是应用程序接口(api)依赖的还是api独立的。本公开的另一方面提供了一种用于由处理器基于指示与中断请求相应的后处理的调度器指示执行动作的机制。根据本公开的一方面提供了一种用于中断处理的方法。所述方法包括:由加速器单元接收中断请求;由加速器单元使多个通用寄存器入栈到内置的后进先出(lifo)单元中;由加速器单元将对应于中断请求的向量地址发送到处理中断请求的处理器。根据本公开的另一方面提供了一种用于处理中断的方法。所述方法包括:由处理器从加速器单元接收中断请求;由处理器处理中断请求;由处理器检测与中断请求相关联的调度器指示;由处理器基于调度器指示执行动作。所述动作可包括以下动作之一:当调度器指示指示中断请求的中断服务程序(isr)是应用程序接口(api)依赖的时,调用任务调度器;当调度器指示指示中断请求的中断服务程序(isr)是应用程序接口(api)独立的时,向加速器单元发送中断指示的结束。调度器指示可以是可配置的,其中,调度器指示可指示与中断请求相应的中断服务程序(isr)是应用程序接口(api)依赖的还是api独立的。根据本公开的另一方面提供了一种用于中断处理的中断控制器,其中,所述中断控制器包括:处理器、以及包括内置的后进先出(lifo)单元的加速器单元。所述加速器单元被配置为:接收中断请求,使多个通用寄存器入栈到内置的后进先出单元中,将对应于中断请求的向量地址发送到处理中断请求的处理器。根据本公开的另一方面提供了一种加速器单元,其中,加速器单元包括用于中断处理的内置的后进先出(lifo)单元。加速器单元被配置为接收中断请求。此外,加速器单元被配置为使多个通用寄存器入栈到内置的lifo单元中。此外,加速器单元被配置为将对应于中断请求的向量地址发送到处理中断请求的处理器。根据本公开的另一方面提供了一种加速器单元,其中,加速器单元包括:主单元,接收中断请求的;内置的后进先出(lifo)单元,使多个通用寄存器入栈到内置的lifo单元中。主单元还被配置为将对应于中断请求的向量地址发送到处理中断请求的处理器。根据本公开的另一方面提供了一种用于处理中断的处理器。所述处理器被配置为:从加速器单元接收中断请求;处理中断请求;检测与中断请求相关联的调度器指示;基于调度器指示执行动作。附图说明从结合附图进行的以下详细描述,本公开的特定实施例的上述和其他方面、特征和优点将更清楚,在附图中:图1a示出在用于中断处理的传统机制期间的中央处理单元(cpu)周期延迟;图1b示出传统的后isr调度延迟;图2a示出根据本公开的实施例的用于中断处理的中断控制器和处理器单元;图2b示出根据本公开的实施例的与用于中断处理的中断控制器相关联的加速器单元;图3示出根据本公开的实施例的用于中断处理的中断控制器;图4是示出根据本公开的实施例的用于处理中断的方法的流程图;图5示出根据本公开的实施例的在中断期间的后isr调度延迟;图6是根据本公开的实施例的减少在中断期间的后isr调度延迟的方法的流程图;图7示出根据本公开的实施例的用于实现用于处理中断的方法的计算环境。具体实施方式将参照附图详细地描述本公开的各种实施例。在下列描述中,诸如详细的配置和组件的具体细节仅被提供以帮助对本公开的这些实施例的全面的理解。因此,本领域的技术人员应该清楚的是:在不脱离本公开的范围和精神的情况下能够对这里描述的实施例做出各种改变和修改。此外,为了清楚和简明,省略了对公知的功能和结构的描述。贯穿附图,相同的参考字符可指相应的特征。此外,这里使用的示例仅仅是为了促进对能够实践这里的实施例的方法的理解,并进一步使本领域的技术人员能够实践这里的实施例。因此,这些示例不应被理解为限制公开的范围。这里,除非另有说明,否则术语“或”指非排他的或。除非另有定义,否则这里使用的所有技术术语具有与本公开所属
技术领域
的普通技术人员通常所理解的含义相同的含义。术语“应用程序接口(api)依赖的”可非排他性地指可调用影响内核的任务调度决策的rtosapi的中断的isr。术语“api独立的”可非排他性地指可不调用影响内核的任务调度决策的rtosapi的中断的isr。当中断服务程序(isr)调用实时操作系统应用程序接口(api)时,调度器指示指示中断请求的isr是api依赖的。当中断服务程序(isr)不调用实时操作系统应用程序接口(api)时,调度器指示指示中断请求的isr是api独立的。此外,调度器指示是可配置的,其中,调度器指示可指示与中断请求相应的中断服务程序(isr)是应用程序接口(api)依赖的还是api独立的。根据本公开的实施例,提供了一种用于中断处理的方法,其中,该方法包括:在加速器单元接收中断请求;由加速器单元使多个通用寄存器入栈到内置的lifo单元中;由加速器单元将与中断请求对应的向量地址发送到处理中断请求的处理器。此外,所述方法可包括:由加速器单元检测中断指示的结束,并使所述多个通用寄存器从内置的lifo单元出栈。例如,对于以较高的用户设备(ue)能力操作的长期演进(lte)调制解调器,在峰值数据吞吐量期间,将存在将针对上行链路数据传输和下行链路数据传输被处理的大量的中断。每个中断的中断延迟对处理器调度任务负责,这反过来影响数据处理系统的性能。在lte高数据吞吐量期间,协议栈(调制解调器)处理器每毫秒处理多个中断。因此,每毫秒在整个系统中处理的中断总数将为每秒几千个。对于多核平台,总中断数进一步增加,其中,较高数量的中断由rtos调度器用于核间通信。与传统机制不同,依照本公开的实施例方法和系统能够通过中断控制器和处理器两者减少在处理中断中涉及的延迟。此外,提供了独特的硬件逻辑以减少中断延迟并提高数据处理系统的性能。图1a示出用于中断处理的传统机制期间的cpu周期延迟。参照图1a,在第一阶段,当在中断控制器从多个装置(例如,外部装置)中的一个接收irq时,由于硬件的中断延迟发生。中断控制器与用于处理irq的中断请求逻辑相关联,并向cpu提供与irq对应的向量地址。在第二阶段,当cpu访问与从中断控制器接收的irq对应的向量地址时,由于cpu而导致的中断延迟发生。此外,与cpu相关联的处理器调用相应的isr以进行下列操作:使与cpu相关联的多个通用寄存器入栈;切换寄存器组;检查是否中断需要isr被调用;定位或分支(branch)到中断处理器的开始;在isr结束时使保存的寄存器出栈。因此,处理器在中断期间执行用于使cpu寄存器入栈和出栈的独立操作。提取、解码和执行管线活动也在irq重置,因此,在硬件中断处理之后,处理器通过从管线提取指令而恢复。作为第一阶段和第二阶段发生的结果,在实际的isr被调用之前,由于由硬件和处理器导致的中断延迟,在数据处理系统中存在显著的延迟。图1b示出传统的后isr调度延迟。参照图1b,在已经在处理器接收到中断请求信号之后,处理器放弃当前处理并切换到isr,以对接收的中断请求信号进行响应。存储相应的cpu寄存器上下文。在isr完成后,调度器决定是继续中断的任务还是安排另一更高优先级任务。例如,如图1b所示,对于任务驱动(非强制的)抢占,任务a的优先级高于任务b的优先级,任务b的优先级高于任务c的优先级。首先,任务a因为队列-x上的消息而被暂停。由于任务a被暂停,内核调度任务b。当由内核调度任务b时,任务b向队列-x发送消息。因此,内核识别存在更高优先级的任务在队列-x上等待。因此,内核抢占任务b,并重返任务a。这是针对任务调度的可预测抢占模式。作为另一示例,对于中断驱动的(强制的)抢占(其中,任务b当前正在运行),只要存在外部中断信号,控制跳转到抢占任务b执行的中断处理器。内核存储被抢占的任务b(堆栈中的任务b上下文)。当服务了接收的中断信号时,内核调用调度器以识别最高优先级就绪任务(在这种情况下的任务b)并存储被抢占的任务(来自堆栈的任务b上下文)。这种抢占由于异步的外部因素(如中断)而是强制的(或诱导的)。通常,在isr完成后,原始操作重返到被抢占的点。可选地,当任务a的优先级高于任务b的优先级并且任务b的优先级高于任务c的优先级时,首先,任务a因为队列-x上的消息而被暂停。在任务a被暂停时,内核调度任务b。每当存在外部中断被发送时,cpu程序控制(被称为计算机处理器的程序计数器)跳转到抢占任务b执行的中断处理器。内核将被抢占的任务上下文存储在任务b堆栈中。在发送的中断之后,内核向队列-x发送消息,从而激活任务a。因此,内核调用调度器以识别最高优先级就绪任务(在这种情况下的任务a)并从堆栈恢复放弃的任务(任务a上下文)。内核从其已放弃处理器的点重返任务a,并推迟抢占的任务b的执行。图2a示出根据本公开的实施例的用于中断处理的中断控制器和处理器单元。参照图2a,中断控制器200a包括加速器单元202,处理器单元200b包括寄存器单元204。寄存器单元204可包括至少一个中央处理单元(cpu)寄存器。图2b示出根据本公开的实施例的与用于中断处理的中断控制器相关联的加速器单元。参照图2b,加速器单元202包括:控制寄存器单元211、主单元212、总线单元213和内置的lifo单元214。与图1a示出的传统机制不同,可仅通过使用加速器单元202在中断控制器200a执行cpu寄存器的入栈和出栈。具体地,加速器单元202从与中断控制器200a相关联的中断请求逻辑接收irq。控制寄存器单元211被耦接到中断控制器200a的处理器单元200b访问,以对加速器单元202进行配置。cpu寄存器通过与总线单元213相关联的主单元212从加速器单元202被访问。总线单元213能够一次读取所有的cpu寄存器值并将寄存器值存储到内置的lifo单元214中。内置的lifo单元214可通过使用一般的lifo存储器逻辑实现,主单元212和控制寄存器单元211可具有基于在本公开讨论的功能而实现的逻辑硬件。当中断从irq控制器被接收到加速器单元202时,主单元212接收中断。主单元212通过访问控制寄存器单元211找到将被存储在内置的lifo单元214中的cpu寄存器的数量。控制寄存器单元211在系统初始化期间通过在处理器单元200b中运行的程序被配置。控制寄存器单元211包括关于将被存储为上下文存储操作的一部分的cpu寄存器的数量的信息,该信息取决于系统中使用的rtos。主单元212通过使用内置的总线单元213从处理器单元200b访问cpu寄存器值来执行上下文存储操作,并将cpu寄存器值存储到内置lifo单元214。在完成上下文存储操作时,主单元212向处理器单元200b触发中断nirq,并还提供向量地址。在完成针对触发的中断的isr的执行时,处理器单元200b清除中断向量以指示中断处理的完成。主单元212接收该指示,并针对在控制寄存器单元211中配置的指定的cpu寄存器数量通过使用总线单元213从内置的lifo单元214将cpu寄存器值取回到处理器单元200b来执行上下文恢复操作。此外,cpu寄存器在向cpu提供向量地址的同时能够被入栈到内置的lifo单元214中。被压到堆栈的寄存器的数量能够由cpu不同地决定,并相应地配置在控制寄存器单元211中。与cpu相关联的处理器单元200b能够被配置为处理与从中断控制器200a接收的irq对应的向量地址。与中断控制器200a相关联的内置的lifo单元214可以是内置的专用存储器(例如,随机存取存储器(ram))。包括在处理器单元200b中的寄存器单元204被用于存储寄存器值(即,cpu寄存器)。虽然图2a和图2b示出中断控制器200a和加速器单元202的各种单元,但是本公开不限于此。例如,中断控制器200a和加速器单元202可包括比此处更少或更多的单元,并且/或者这里的一个或更多的组件能够被组合以执行在中断控制器200a和加速器单元202中如上所述的相同或本质上相似的功能。此外,图2a和图2b中的组件的符号和名称仅用于示意性的目的,并不限制本公开的范围。图3示出根据本公开的实施例的中断控制器。参照图3,通过包括在中断控制器300中的加速器单元302将irq-n和vectaddr-n发送到处理器单元。此时,与加速器单元302相关联的总线单元一次读取cpu寄存器并将所需要的cpu寄存器的数量存储到内置的lifo单元中。例如,存储的值可以是在中断期间的cpu上下文。处理irq(包括在cpu中)的处理器单元因此能够在不存储任何cpu寄存器上下文的情况下启动isr,这节省了大约存储所有的17个-r4寄存器(r0-r15和cpsr(当前程序状态寄存器))的17个周期。通常,‘n’个周期能够基于rtos实现而被节省,其中,在rtos实现中,存储的cpu寄存器的数量能够在r0-r(n-1)(其中,n<=17)之间变化。此外,在完成isr时,处理器单元清除中断,而这反过来通知中断控制器300:isr已完成并且中断能够被标记为无效。在该操作期间,加速器单元302从内置lifo单元恢复cpu寄存器。相同的实施适用于中断控制器300以进行嵌套中断和中断优先化。可基于存储最坏的情况下的cpu寄存器的数量和支持嵌套中断的深度所需要的存储器来选择内置的lifo单元的存储器尺寸。例如,表1和表2示出使用基于具有向量中断控制器的-r4的硬件平台遵循周期消耗的rtos的分析结果。表1表2(当代码在tcm中时分析)如上所示,如果如上所述cpu寄存器上下文存储和恢复使用加速器单元发生,则在上述数据中存在10到26个周期的减少(即,针对存储r0到r12的rtos减少固定的26个周期,而针对仅存储r0到r5的rtos减少10个周期)。图4是示出根据本公开的实施例的用于处理中断的方法的流程图。例如,图4的方法将被描述为由图2a示出的加速器单元202和处理器200b执行。参照图4,在步骤402中,加速器单元202接收irq。在步骤404,加速器单元202使多个通用寄存器入栈到内置的lifo单元中。在步骤406,加速器单元202将与irq对应的向量地址发送到处理接收的irq的处理器单元200b。在步骤408,处理器单元200b处理从加速器单元202接收的irq。在步骤410,处理器单元200b检测与irq相关联的调度器指示。这里,当中断服务程序(isr)调用实时操作系统应用程序接口(api)时,调度器指示指示中断请求的isr是api依赖的。当中断服务程序(isr)不调用实时操作系统应用程序接口(api)时,调度器指示指示中断请求的isr是api独立的。另外,调度器指示是可配置的,其中,调度器指示可用于指示与中断请求相应的中断服务程序(isr)是应用程序接口(api)依赖的还是api独立的。在步骤412,处理器单元200b基于指示与irq相应的后处理的调度器指示执行动作。例如,与加速器单元202相关联的vic接收中断。vic处理接收的中断并基于中断的优先级向cpu提供向量地址。与传统机制不同,图4中示出的方法允许与中断对应向量地址和来自vic寄存器单元的cpu寄存器通过加速器单元202(vic扩展(extn))与cpu进行通信。此外,与加速器单元202相关联的总线单元可一次读取所有cpu寄存器,并将cpu寄存器存储于与加速器单元202相关联的lifo单元中。此外,加速器单元202和与和cpu相关联的处理器单元200b进行通信。处理器单元200b因此执行isr并向加速器单元202提供中断指示的结束。处理器单元200b从内置的lifo单元恢复cpu寄存器,更新中断的状态(标记为无效)。如图4所示的各种动作、行为、块、步骤等可以以呈现的顺序、以不同的顺序或同时被执行。此外,在一些实施例中,在不脱离本公开的范围的情况下,动作、行为、块、步骤等中的一些可被省略、添加、修改、跳过等。图5示出根据本公开的实施例的在中断期间的后isr调度延迟。与图1b示出的传统机制不同,在图5中,isr不调用能够改变调度决定的任何api,从而通过省略调度器操作来减少延迟。例如,提出的机制可被大致分类为api独立的或api依赖的,其中,api独立的不调用会影响调度决定的任何rtosapi,api依赖的调用可能影响后续的中断调度决定的rtosapi。作为示例,当调度器指示指示中断请求的中断服务程序(isr)是应用程序接口(api)依赖的时,可调用任务调度器。当调度器指示指示中断请求的中断服务程序(isr)是应用程序接口(api)独立的时,可向加速器单元发送中断指示的结束。由于特定的分类在通过加速器单元202和中断控制器200a的中断处理的开始时是已知的,因此,能够避免在中断处理结束时的调度器,并且减少了在上下文存储和上下文恢复操作中花费的时间量。图6是根据本公开的实施例的用于减少后isr调度延迟的方法的流程图。例如,图6的方法将被描述为由图2a所示的加速器单元202和处理器200b执行。参照图6,在步骤602,在处理器单元200b执行任务a。在步骤604,处理器单元200b接收外部中断。每个中断可以与将相关联的isr分类为api依赖或api独立的“黏着位(sticky-bit)”相关联。用户(例如,程序员)在定义或注册isr时配置能够被存储在全局中断表的黏着位。在步骤606,在加速器单元202,cpu程序通过抢占任务a执行来控制向中断处理器的跳转,并且内核将被抢占的任务上下文存储在任务a堆栈中。在步骤608,处理器单元200b从与加速器单元202相关联的中断处理器接收针对isr的外部中断。在步骤610,处理器单元200b决定是否调用api依赖的配置。如果处理器单元200b决定api依赖的配置将被调用,则处理器单元200b基于全局中断表中可用的信息来调用内核调度器。在步骤614,内核调度器确定任务a是否仍然具有最高优先级就绪。在步骤616,处理器单元200b恢复针对下一最高级就绪任务的上下文。如果在步骤614任务a仍然具有最高优先级就绪,则处理器单元200b在步骤618执行针对任务a的上下文恢复。例如,在当前的基于的平台中实现的所有方法之一是通过将所有api依赖的isr映射到nirq,将所有api独立的isr映射到nfiq,并如所示出的针对api独立的isr仅执行最小的上下文存储(例如srs指令,将cpsr(当前的程序状态寄存器)&lr(链路寄存器)保存在任务堆栈中)。nirq是中断向量数。‘n’表示范围从值1到系统中支持的中断的总数的中断数。nirq是表示中断数n的通用arm文献术语。在‘nfiq’中的‘n’表示范围从值1到系统中支持的快速中断的总数的快速中断发生的数量。nfiq是表示快速中断数n的通用arm文献术语。也可执行嵌套中断支持,其中,api依赖的isr的后第一调用、所有进一步的isr(即,api依赖的和api独立的)能够被当作api依赖的isr对待。例如,下面表3示出后isr活动期间的延迟减少。表3后isr活动调度器上下文恢复总数周期375471如表3所示,存在在调度器活动中发生的37周期的固定减少,这大约减少了后isr调度延迟的40%。虽然上述实施例中描述的方法和加速器202是用于中断处理的,但是应该理解的是其他实施例不限于此。本领域的普通技术人员可识别提出的方法或加速器单元202能够被用于执行处理、线程组件、任务、工作等中的各种操作,从而与传统机制相比减少了cpu周期的数量。例如,在传统系统中,当用户产生的指令需要将从寄存器读取的信息时,cpu使用push和pop操作从寄存器读取信息。cpu为每个这样的push/pop操作分配单独的cpu周期。与传统机制不同,提出的加速器单元202提供在单个cpu周期内触发硬件辅助的push和pop操作的选项。具体地,cpu指示加速器单元202从寄存器读取信息。加速器单元202在单个cpu周期内通过push和pop操作使用总线单元一次读取所有寄存器,从而减少了在cpu指令周期中涉及的延迟。图7示出根据本公开的实施例的用于实现用于中断处理的方法的计算环境。参照图7,计算环境702包括:处理单元708、控制单元704、算术逻辑单元(alu)706、内存710、存储单元712、多个网络装置716和多个输入输出(i/o)装置714。处理单元708负责处理方案的指令。处理单元708从控制单元704接收命令以执行命令的处理。此外,使用alu706计算在指令的执行中涉及的任何逻辑和算术操作。存储单元712可包括一个或更多个计算机可读存储介质。存储单元712可包括非易失性存储器元件。这样的非易失性存储器元件的示例可包括:磁性硬盘、光盘、软盘、闪存、或电可编程存储器(eprom)或电可擦除可编程存储器(eeprom)的形式。此外,在一些实施例中,存储单元712可被认为是非暂时性存储介质。术语“非暂时性”可表示存储介质不以载波或传播的信号实现。然而,术语“非暂时性”不应被解释为存储单元712是不可移动的。存储单元712可被配置为存储比内存710更多的信息。例如,非暂时性存储介质可存储能够随着时间变化的数据(例如,随机存取存储器(ram)或高速缓存)。整体计算环境702可由多个同质和/或异质核、多个不同种类的cpu、特殊的介质和其他加速器构成。处理单元708负责处理技术的指令。此外,多个处理单元708可被置于单个芯片或多个芯片上。包括进行实现所需的指令和代码的技术被存储在内存单元710和/或存储单元712中。在执行时,指令可从相应的内存710和/或存储单元712被提取并由处理单元708执行。在任何硬件实现的情况下,各种网络装置716或外部i/o装置714可内连接到计算环境,以通过网络单元和i/o装置单元支持实现。网络装置716可被用于执行从加速器单元接收的指令。网络装置716可被用于与中断控制器的各种单元以及与cpu的各种单元进行与irq相关联的中断信号的通信。这里公开的实施例能够通过在至少一个硬件装置上运行且执行网络控制功能以控制元件的至少一个软件程序实现。图1到图7中示出的元件包括可以是以下项中的至少一个的块:硬件装置、或硬件装置和软件模块的组合。尽管已参照本公开的特定实施例具体地示出并描述了本公开,但是本领域的普通技术人员将理解的是:在不脱离由权利要求和它们的等同物所限定的本公开的精神和范围的情况下,可做出形式或细节上的各种改变。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1