接口延时保护方法、协处理器及数据处理系统的制作方法

文档序号:6338788阅读:177来源:国知局
专利名称:接口延时保护方法、协处理器及数据处理系统的制作方法
技术领域
本发明涉及计算机的数据处理技术领域,更具体地说,涉及一种接口延时保护方法、协处理器及一种数据处理系统。
背景技术
计算机中用于数据处理的构件主要为处理器,如各种CPU (Central Processing Unit,中央处理器)、NP (Network Processor,网络处理器)等,但是,在某些情况下,处理器并不适合完成所有的功能,对于一些不适合处理器实现的功能,就需要外接协处理器来实现。处理器用于完成整个系统的主要处理工作,处理器接收网络接口的报文并进行处理,将处理内容缓存至内存,当出现某些处理器不能单独完成的信息处理的情况时,由协处理器协助处理器对相应信息进行处理。处理器通过某种接口与协处理器连接,通过该接口,处理器可以把需要协处理器处理的数据发送给协处理器处理,同理,协处理器完成相应的数据处理后,再通过该接口将处理结果返回给处理器。通常情况下,使用处理器上的QDR (Quard Date Rate,四倍数据倍率接口)、 LA-I (Look Aside Interface, LAf^^hS^n ) NSE (Network Search Engines, N^g 找引擎接口)等接口连接协处理器,这类接口的共同点是对于一次访问操作有最大延时要求,即规定了从处理器向协处理器发出访问请求,到协处理器返回结果的时间(以下简称总协处理延时)不能超过该最大延时,如果超过该最大时间后,处理器还没有收到协处理器的处理结果,处理器就会发生异常,进而导致整个系统的不可靠,因此,必须避免这种情况的发生。现有技术中为了使协处理器的总协处理延时不超过处理器接口的最大延时,在设计协处理器时,将协处理时间设计的尽量小,以使得协处理的时间不会超过接口的要求。但是,这种方法并不能适用于所有情况,由于系统设计方案的问题,或者突发情况,处理器发出请求的速度可能会超过协处理器的处理性能时,这时协处理器的处理时间很可能超时。 从而导致处理器不能在接口允许的延时范围内接收到处理结果,使得处理器和系统的稳定性没有保证。

发明内容
有鉴于此,本发明提供一种接口延时保护方法,解决现有技术中的问题,使得处理器能够在接口允许的延时范围内,接收到协处理器的处理结果,保证了处理器和系统的稳定。本发明还提供了一种协处理器,可以在接口允许的延时范围内,将处理结果返回给处理器,以保证处理器和系统的稳定。为实现上述目的,本发明提供了如下技术方案一种接口延时保护方法,包括协处理器接收处理器的操作指令;
记录接收所述操作指令的时间;将所述操作指令写入指令缓存先入先出队列FIFO中;读取所述指令缓存FIFO中的操作指令并进行协处理,将处理结果发送给结果 FIFO ;当协处理时间未达到最大处理延时且所述结果FIFO中有处理结果时,返回所述处理结果给所述CPU ;当协处理时间达到最大处理延时且所述结果FIFO中没有处理结果时,返回指示协处理超时的处理结果给所述CPU。一种协处理器,包括接收单元,用于接收处理器发送的操作指令;计时单元,用于记录接收所述操作指令的时间;指令缓存FIFO,用于缓存所述操作指令,并将所述操作指令提供给内部处理单元;内部处理单元,用于读取指令缓存FIFO中的操作指令,对所述操作指令进行协处理,并发送处理结果;结果FIFO,用于接收并存储内部处理单元对所述操作指令的处理结果;判断单元,用于将当前时间与记录的最早接收所述操作指令的时间相比较,判断协处理时间是否到达接口的最大延时时间;第一发送单元,用于当协处理时间未达到最大处理延时且所述结果FIFO中有处理结果时,返回所述处理结果给所述CPU ;第二发送单元,用于当协处理时间达到最大处理延时且所述结果FIFO中没有处理结果时,返回指示协处理超时的处理结果给所述CPU。一种数据处理系统,包括处理器、内存以及协处理器,所述协处理器,用于接收所述处理器的操作指令,记录接收所述操作指令的时间,并将所述操作指令写入指令缓存FIFO中,读取所述指令缓存FIFO中的操作指令并进行协处理,将处理结果发送给结果 FIFO,当协处理时间达到最大处理延时且所述结果FIFO中没有处理结果时,返回指示协处理超时的处理结果,当协处理时间未达到最大处理延时且所述结果FIFO中有处理结果时, 返回所述处理结果;所述内存,用于缓存所述处理器的处理数据。从上述的技术方案可以看出,本发明实施例增加了记录接收操作指令时间的步骤,以便在协处理的过程中,判断系统内部协处理的时间是否到达接口的最大延时时间,然后判断所述结果FIFO中是否有处理结果,如果所述结果FIFO中有处理结果,则不论协处理时间是否到达接口的最大延时时间,都返回相应的处理结果;当系统内部的协处理时间到达接口的最大延时时间时,结果FIFO中仍没有处理结果,则返回指示协处理延时超过接口要求的处理结果。本发明实施例在系统内部的总协处理延时超过接口的最大延时时,返回指示协处理延时超过接口要求的处理结果,进而不会出现因协处理器的协处理超时,而导致的处理器在超过接口的最大延时时接收不到处理结果的情况,从而避免了处理器因无结果返回而发生异常,提高了处理器和整个系统的稳定性。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例一公开的接口延时保护方法流程图;图2为本发明实施例二公开的接口延时保护方法流程图;图3为本发明实施例三公开的接口延时保护方法流程图;图4为本发明实施例四公开的接口延时保护方法的部分流程图;图5为本发明实施例一公开的一种协处理器的结构图;图6为本发明实施例二公开的一种协处理器的结构图;图7为本发明实施例三公开的一种协处理器的结构图;图8为本发明实施例四公开的一种协处理器的结构图;图9为本发明实施例五公开的一种数据处理系统的结构图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。为了引用和清楚起见,文中使用的技术名词、简写或缩写总结如下CPU =Central Processing Unit,中央处理器;NP :Network Processor,网络处理器;QDR =Quard Date Rate,四倍数据倍率接口 ;LA-I =Look Aside Interface,LA 协处理接口 ;NSE =Network Search Engines,网络查找引擎接口 ;FIFO =First-In First-Out,先入先出队列。现有技术中,为了尽量避免接口带宽大于协处理器处理性能而导致的处理器和系统的不稳定,在协处理器中必须使用一个指令缓存FIFO (First-In First-Out,先入先出队列)以暂时缓存超过协处理器处理性能的指令。此时,总协处理延时就是两部分时间之和, 一部分是指令在指令缓存FIFO中等待的时间,一部分是处理器内部对指令的真正的协处理延时。虽然,处理器内部真正的协处理延时是固定的,即处理器设计时已经确定的协处理时间,但是,指令在FIFO中的等待时间却是不固定的,因为指令在指令缓存FIFO中等待的时间与指令所在队列的位置是相关的,指令在队列的前面,等待的时间就较短,反之,时间就较长。当接口带宽大于协处理器处理性能时,协处理器处理指令的速度较慢,使得指令在指令缓存FIFO中累积,进而导致指令在指令缓存FIFO中的等待时间随着指令缓存FIFO中指令数量的增多而变长。因此,当突发指令数量较多时,总协处理延时也随之变长,在某种大的突发情况下,总协处理延时也可能会超过接口的最大延时要求,进而引起处理器和系统的不稳定。实施例一本实施例提供的接口延时保护方法基本上包括三个处理过程指令接收过程、协处理过程和处理结果发送过程,这三个过程实际上可以由三个独立的进程完成。为了描述方便,本实施例将这三个处理过程融合成一体,基本流程如图1所示,包括以下步骤步骤S101、接收处理器发送的操作指令。步骤S102、记录接收到所述操作指令的时间。步骤S103、将该操作指令写入指令缓存先入先出队列FIFO。其中,将操作指令写入指令缓存FIFO中,以便系统内部的指令处理模块读取相应操作指令。步骤S104、读取所述指令缓存FIFO中的操作指令,并对该操作指令进行协处理, 将协处理结果发送给结果FIFO。本步骤中,协处理的具体过程属于现有技术,在此不对其进行详细描述。步骤S105、当协处理时间未达到最大处理延时且所述结果FIFO中有处理结果时, 返回该处理结果。步骤S106、当协处理时间达到最大处理延时且所述结果FIFO中没有处理结果时, 返回指示协处理超时的处理结果。需要说明的是,上述步骤S105和步骤S106之间可以同时进行,也可以以任意顺序执行。不一定要等到达到最大延时时才判断所述结果FIFO中是否有结果,判断所述结果 FIFO中是否有结果这个操作可以在达到最大延时前任意时刻执行。可以看出,上述步骤S101-步骤S102属于指令接收过程,步骤S203为协处理过程,步骤S104-步骤S106属于处理结果发送过程。步骤S105-步骤S106的具体实现方式可以是先判断处理时间是否超过接口的最大延时,再判断结果FIFO中是否有处理结果。从而保证后续在在处理时间达到接口的最大延时时能给CPU返回一个处理结果,包括协处理结果或指示协处理延时超过接口要求的处理结果(即指示协处理超时的处理结果)。判断处理时间是否达到接口的最大延时的具体方式可以是计算根据接收操作指令的最早时间tl(这里指的是未返回处理结果的操作指令中,指令FI FO最先接收的操作指令的接收时间)及判断处理时间时的时间t2之间的差值(t2-tl),将该差值与已知的接口的最大延时进行比较,若两者相等,则意味着处理时间已达到接口的最大延时。本实施例公开的接口延时保护方法,在正常情况下,即对于一次访问,协处理器能够在接口允许的最大延时时间内完成协处理操作的情况下,返回正常的协处理结果,而不管得到该处理结果的时间是否到达接口允许的最大延时时间,只要结果FIFO中有结果,就会立即返回该结果给处理器;在协处理器处理超时的情况下,本实施例公开的方法也会在协处理时间到达接口允许的最大延时时,返回一个处理结果给处理器,该处理结果用以表示协处理延时超过接口允许的最大延时时间,从而解决了现有技术中因协处理器处理超时而导致的处理器在接口允许的最大延时时间范围内不能接收到相应的处理结果,进而导致处理器异常的问题。实施例二
本实施例公开的接口延时保护方法如图2所示,其中步骤S201、S202、S203、 S205-S207与实施例一的步骤S101、S102、S103、S104-S106依次对应相同,所不同的是,增加了步骤S304,将接收到的操作指令和记录的接收该指令的时间.缓存至预设容器。本实施例增加了预设容器,用于缓存接收到的操作指令和接收时间,与实施例一不同的是,判断是否到达接口的最大延时的方式,本实施例中将此刻的时间与预设容器中缓存的最早接收的操作指令的时间相比较,进而判断是否到达接口的最大延时,其它步骤的处理方式和实施例一相同,这里不再赘述。实施例三本实施例公开的接口延时保护方法如图3所示,包括以下步骤步骤S301,在接口输入处,控制操作指令向系统内部数据处理模块发送的速度,使其符合系统内部处理性能的要求,具体操作为,调整读取指令缓存FIFO对所述操作指令的读取速度,使指令缓存FIFO的读取速度不超过所述内部处理单元的协处理性能,和/或控制所述指令缓存FIFO的大小,使操作指令在所述指令缓存FIFO中的缓存时间不超过所述内部处理单元的协处理延时的裕量;步骤S302、接收处理器发送的操作指令;步骤S303、判断指令缓存FIFO是否已满,若指令缓存FIFO已满,进入步骤S304, 否则,进入步骤S306 ;步骤S304、在该操作指令上打上表示协处理超时的标识,并将其缓存至预设容器, 表示没有真正发起内部处理操作;步骤S305、读取预设容器中缓存的指令时,判断是否读取到带有超时标识的操作指令,若是,进入步骤S311,否则,进入步骤S308 ;步骤S306、记录接收到所述操作指令的时间,并将该操作指令写入指令缓存先入先出队列FIFO,以便系统内部的指令处理模块读取相应操作指令;步骤S307、将接收到的操作指令和记录的接收该操作指令的时间缓存至预设容器 FIFO ;步骤S308、读取所述指令缓存FIFO中的操作指令,并对该操作指令进行协处理, 将协处理结果发送给结果FIFO ;步骤S309、判断处理时间T是否达到最大延时Δ T及结果FIFO中是否有处理结果,若T彡八1~且结果?正0中有结果,则进入步骤5310;若11< Δ T且结果FIFO中无结果, 则继续判断;若T = Δ T且结果FIFO中无结果,则进入步骤S311 ;判断处理时间T是否达到最大延时Δ T的具体方式可以是依据当前时间与所述预设容器中缓存的最早接收操作指令的时间的差值确定处理时间Τ,将T与最大延时ΔΤ相比,判断处理时间是否到达接口的最大延时时间。步骤S310、向处理器返回该处理结果;步骤S311、向处理器返回指示协处理超时的处理结果。本实施例公开的接口延时保护方法,能够调整指令缓存FIFO的读取速度和/或大小,使其符合系统内部的处理性能。具体的,控制指令缓存FIFO对接收的操作指令的读取速度,使指令缓存FIFO的读取速度不超过所述内部处理单元的协处理性能,进而使得操作指令的等待时间只是在指令缓存FIFO中缓存的时间;控制所述指令缓存FIFO的大小,使操作指令在指令缓存FIFO中的缓存时间不超过所述内部处理单元的协处理延时的裕量,进而保证了所有存入指令缓存FIFO的操作指令,都能够在接口允许的最大延时时间范围内被处理完成。由于设置了指令缓存FIFO的大小,就会出现接收的操作指令过多而超过指令缓存FIFO的容量的情况,当指令缓存FIFO已满时,如果还有操作指令需要写入指令缓存 FIFO,就写不进去了,本发明实施例这种情况下,在操作指令上打上表示协处理超时的标识并存入预设容器,后续在结果发送过程中当读取到带有超时标识的操作指令后,就表示此次访问肯定会超时,就不去判断结果FIFO中是否有处理结果,也不去判断是否到达接口最大延时时间,直接返回指示协处理延时超过接口要求的结果。需要说明的是,无论操作指令是否写入到指令缓存FIFO中,都要写入预设容器中,所不同的是,没有写入指令缓存FIFO中的操作指令会有一个表示协处理超时的标识, 以便后续步骤的处理。实施例四上述实施例二、三和四在接收操作指令时指令尚未超时,但是在协处理时间达到最大延时时间时结果FIFO中没有结果的情况下,发送指示协处理超时的处理结果。于是, 在对应操作指令的处理结果存进结果FIFO时,如不进行相应处理,则会导致返回结果混乱。针对此情况,本实施例在因协处理时间达到最大延时时间而结果FIFO中没有结果而发送指示协处理超时的处理结果之后,增加了后续处理步骤,即丢弃所述结果FIFO中存进的协处理超时的处理结果,图4示出了一种具体实现过程,包括以下步骤步骤S401、返回指示协处理延时超过接口要求的处理结果;步骤S402、记录返回指示协处理延时超过接口要求的处理结果的数量,为步骤 S403做准备工作;步骤S403、当确定结果FIFO中存进有处理结果时,丢弃排在最前面的处理结果, 以避免返回结果的混乱;步骤S404、将记录的数量减1 ;步骤S405、判断该记录的数量是否为0,若是,则进入步骤S506,否则,返回步骤 S403 ;步骤S406、开始按照正常流程返回处理结果。下面以一个实例说明,正如前文实施例一所述,协处理器的工作包括三个独立的工作流程,即指令接收过程、协处理过程和处理结果发送过程,其中,指令接收过程中,指令缓存FIFO中依据先后顺序依次存储有操作指令a、操作指令b、操作指令C、操作指令d、操作指令e和操作指令f等6个操作指令。协处理过程中,指令缓存FIFO将这些指令依据顺序提供给协处理器的内部处理单元,内部处理单元进行协处理后会将处理结果按照顺序存储进结果FIFO中,协处理器首先接收操作指令a并进行协处理,并把处理结果A存储进结
果FIFO,然后接收操作指令b并进行协处理,并把处理结果B存储进结果FIFO,......,以
此类推,直到把最后一个操作指令完成为止。处理结果发送过程中,协处理器实时判断结果 FIFO中是否有结果,若有结果且处理时间未达到或已达到最大延时,则将所述处理结果返回给处理器,若已达到最大延时但FIFO中无结果,则返回指示协处理超时的处理结果。
当协处理器对某操作指令(如操作指令d)进行协处理过程中,协处理时间超过最大延时,则向处理器发送指示协处理超时的处理结果,并继续等待,在对应所述操作指令d 的处理结果D存进结果FIFO时,将该处理结果D丢弃。需要说明的是,由于对应操作指令 c的处理结果C已经被发送出去了,因此,该处理结果D位于结果FIFO中的最前面,因此直接将该位于结果FIFO最前面的处理结果丢弃即可。当等待超过一定时间时,对应操作指令 e的处理时间也超过最大延时,也需要返回指示协处理超时的处理结果,而由于协处理器一般是顺序指令操作指令,因此,对应操作指令e的操作结果E在结果FIFO中的位置会在操作结果D之后。针对此特点,本实施例利用计数器记录返回所述指示协处理超时的处理结果的数量(本例中,数量为幻,依据该数量丢弃后续存入结果FIFO中的两个处理结果,并将计数器清零,然后按照正常程序处理操作指令f。本实施例增加的后续处理步骤,可以避免返回结果的混乱,提高协处理器的可靠性。当所述结果FIFO中有处理结果时,丢弃相应数量的指示协处理延时超过结果要求的处理结果。此外,在记录的指示协处理延时超过接口要求的处理结果丢弃完之前,还有操作指令需要返回处理结果,则继续返回指示协处理超时的处理结果,并记录返回指示协处理延时超时的处理结果的数量,直到把所有没有返回的处理结果读取出来为止。本领域技术人员可以理解,本实施例公开的后续处理步骤,可以和上述三个实施例配合使用,不仅可以避免处理器不能及时接收到协处理结果而发生异常的情况,同时也可避免返回结果的混乱。参见图5,为本实施例公开的方法所对应的协处理器,包括接收单元502、计时单元503、发送单元504、判断单元505、指令缓存FIF0506、内部处理单元507和结果FIF0508。发送单元504包括第一发送单元5041和第二发送单元5042。本实施例公开的协处理器的工作原理为接收单元502接收由处理器501发送的操作指令,记录收到该操作指令的时间,并将该操作指令写入指令缓存FIF0506,内部处理单元507从指令缓存FIF0506中读取相应的操作指令,并对其进行协处理,将协处理结果发送给结果FIF0508,计时单元503为接收单元502和发送单元504提供时间,判断单元505 用于将当前的时间与最早接收操作指令的时间相比较,判断此时的时间是否到达接口的最大延时时间,第一发送单元5041和第二发送单元5042获取所述判断单元505的判断结果, 在没有超过接口的最大延时的情况下,实时地向结果FIF0508取结果,如结果FIF0508存在处理结果,则第一发送单元5041向处理器501返回该结果,当到达接口的最大延时时间时, 结果FIF0508还没有处理结果,第二发送单元5042则向处理器501返回指示协处理延时超过接口要求的处理结果,由处理器5601决定下一步如何处理。图6为本实施公开的接口延时保护方法所对应的协处理器,结构与图5所示协处理器基本相同,不同的是,增加了预设容器FIF0609,用于缓存接收单元602接收到的操作指令和记录的接收该指令的时间,判断单元605用于将当前的时间与预设容器FIF0609中缓存的最早接收操作指令的时间相比较,判断此时的时间是否到达接口的最大延时时间, 当到达接口的最大延时时间时,若结果FIF0608还没有处理结果,第二发送单元6042则向处理器601返回指示协处理延时超过接口要求的处理结果,由处理器601决定下一步如何处理。其它各单元的功能和连接关系参见图5,不再赘述。本领域技术人员可以理解,由预设容器FIFO的本身特征决定,判断是否到达接口的最大延时时间的方法为,判断单元先读取预设容器FIFO中存储的位于队列最前面的一个操作指令的接收时间,与计时单元提供的当前时间相比较,进而判断是否到达应该返回结果的时间。图7为本实施例公开的接口延时保护方法所对应的协处理器,与实施例二不同的是增加了指令缓存FIFO控制单元710,用于控制所述指令缓存FIFO读取所述操作指令的速度,使所述指令缓存FIFO的读取速度不超过所述内部处理单元的协处理性能;和/或控制所述指令缓存FIFO的大小,使所述操作指令在所述指令缓存FIFO中的缓存时间不超过所述内部处理单元的协处理延时的裕量。相应的,根据本实施例所述的方法,预设容器 FIF0709中存储有接收单元702接收的所有操作指令及其接收时间,其中包括因指令缓存 FIF0706已满而被打上表示协处理超时标识的操作指令,发送单元704由新增的第三发送单元(图中未示出)实时的读取预设容器FIF0709中的操作指令,如果读取到带有超时标识的操作指令,就直接向处理器701返回指示协处理延时超过接口要求的处理结果,而不去判断结果FIF0708中是否有处理结果以及是否到达接口的最大延时。其他单元的功能与图5、图6中的同名单元基本相同,在此不再赘述。下面仅以实施例三与本实施例相结合为例,公开了一种协处理器,如图8所示。本实施例在实施例三的基础上,增加了丢弃单元811,所述丢弃单元811用于在所述第二发送单元8042返回所述指示协处理延时的处理结果之后,丢弃所述结果FIF0808中存进的与带有超时标识的操作指令相应的处理结果。其他单元的功能与图5、图6和图7中的同名单元基本相同,在此不再赘述。具体的,所述丢弃单元811可以包括计数器和删除单元,弃计数器用于记录返回指示协处理延时超过接口要求的处理结果的数量,删除单元用于与计数器相配合,配合完成下列工作当结果FIF0808中有结果时,删除单元删除与所述计数器记录的数量相应数量的处理结果,计数器清理完之前,如果还有操作指令需要返回结果,则由发送单元 804(具体由第二发送单元804 返回指示协处理延时超过结果要求的处理结果,同时计数器记录返回该结果的数量,直到计数器被清理完,即所有需要处理的操作指令均处理完成之后,发送单元804按照正常的处理流程向处理器801返回结果FIF0808中存储的处理结
果。
本领域技术人员可以理解,本发明各实施例所公开的接口延时保护方法,不仅可以应用中协处理器上,只要是有延时限制的接口连接器件,均可以采用本发明的思想进行相应的处理。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能, 但是这种实现不应认为超出本发明的范围。实施例五本发明实施例还公开了一种数据处理系统,该系统的结构图如图9所示,包括处理器910、协处理器911以及内存912。其中,处理器910用于完成整个系统的主要处理工作,协处理器911用于协助处理器910进行数据处理。系统整体工作方式为处理器910接收报文并进行处理,将处理内容缓存至内存912,当出现某些处理器 910不能单独完成的信息处理的情况时,由协处理器911协助处理器910对相应信息进行处理。处理器通过QDR、LA-I或NSE等接口与协处理器连接,通过该接口,处理器可以把需要协处理器处理的数据发送给协处理器处理,同理,协处理器完成相应的数据处理后,再通过该接口将处理结果返回给处理器;所述内存912缓存所述处理器的处理数据。本发明实施例所公开的数据处理系统中的协处理器可为上述四个实施例所公开的协处理器中的任意一种,其主要功能为接收所述处理器910的操作指令,记录接收所述操作指令的时间,并将所述操作指令写入指令缓存FIFO中,读取所述指令缓存FIFO中的操作指令并进行协处理,将处理结果发送给结果FIFO ;当协处理时间达到最大处理延时且所述结果FIFO中没有处理结果时,返回指示协处理超时的处理结果给处理器910,当协处理时间未达到最大处理延时且所述结果FIFO中有处理结果时,返回该处理结果给处理器 910。本实施例所公开的数据处理系统,在协处理器912内部的总协处理延时超过接口的最大延时时,返回指示协处理延时超过接口要求的处理结果,进而不会出现因协处理器的协处理超时,而导致的处理器910在超过接口的最大延时时接收不到处理结果的情况, 从而避免了处理器910因此而发生异常,处理器910和整个系统的稳定性较现有技术中有所提高。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如 ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。以上对本发明进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种接口延时保护方法,其特征在于,包括 协处理器接收处理器的操作指令;记录接收所述操作指令的时间; 将所述操作指令写入指令缓存先入先出队列FIFO中;读取所述指令缓存FIFO中的操作指令并进行协处理,将处理结果发送给结果FIFO ; 当协处理时间未达到最大处理延时且所述结果FIFO中有处理结果时,返回所述处理结果给所述CPU ;当协处理时间达到最大处理延时且所述结果FIFO中没有处理结果时,返回指示协处理超时的处理结果给所述CPU。
2.根据权利要求1所述的接口延时保护方法,其特征在于,还包括将接收到的操作指令和记录的接收所述指令的时间缓存至预设容器。
3.根据权利要求2所述接口延时保护方法,其特征在于,接收所述操作指令之后,将所述操作指令写入指令缓存FIFO之前,还包括当所述指令缓存FIFO已满时,在所述操作指令上打上表示协处理超时的标识,并将此带有超时标识的操作指令缓存至所述预设容器。
4.根据权利要求3所述接口延时保护方法,其特征在于,还包括读取所述预设容器中缓存的操作指令,若读取到所述带有超时标识的操作指令后,则返回指示协处理延时的处理结果。
5.根据权利要求1或2所述接口延时保护方法,其特征在于,返回所述指示协处理超时的处理结果之后,还包括丢弃所述结果FIFO中存进的协处理超时的处理结果。
6.一种协处理器,其特征在于,包括接收单元,用于接收处理器发送的操作指令; 计时单元,用于记录接收所述操作指令的时间;指令缓存FIFO,用于缓存所述操作指令,并将所述操作指令提供给内部处理单元; 内部处理单元,用于读取指令缓存FIFO中的操作指令,对所述操作指令进行协处理, 并发送处理结果;结果FIFO,用于接收并存储内部处理单元对所述操作指令的处理结果; 判断单元,用于将当前时间与记录的最早接收所述操作指令的时间相比较,判断协处理时间是否到达接口的最大延时时间;第一发送单元,用于当协处理时间未达到最大处理延时且所述结果FIFO中有处理结果时,返回所述处理结果给所述CPU ;第二发送单元,用于当协处理时间达到最大处理延时且所述结果FIFO中没有处理结果时,返回指示协处理超时的处理结果给所述CPU。
7.根据权利要求6所述协处理器,其特征在于,还包括,预设容器,用于缓存接收到的操作指令和记录的接收所述指令的时间。
8.根据权利要求7所述协处理器,其特征在于,还包括丢弃单元,用于在所述第二发送单元返回所述指示协处理超时的处理结果之后,丢弃所述结果FIFO中存进的协处理超时的处理结果。
9.一种数据处理系统,包括处理器、内存以及协处理器,其特征在于,所述协处理器,用于接收所述处理器的操作指令,记录接收所述操作指令的时间,并将所述操作指令写入指令缓存FIFO中,读取所述指令缓存FIFO中的操作指令并进行协处理, 将处理结果发送给结果FIFO,当协处理时间达到最大处理延时且所述结果FIFO中没有处理结果时,返回指示协处理超时的处理结果,当协处理时间未达到最大处理延时且所述结果FIFO中有处理结果时,返回所述处理结果; 所述内存,用于缓存所述处理器的处理数据。
全文摘要
本发明实施例公开了一种接口延时保护方法,包括协处理器接收处理器的操作指令,记录接收所述操作指令的时间,将所述操作指令写入指令缓存先入先出队列FIFO中,读取所述指令缓存FIFO中的操作指令并进行协处理,将处理结果发送给结果FIFO,当协处理时间未达到最大处理延时且所述结果FIFO中有处理结果时,返回所述处理结果给所述CPU,当协处理时间达到最大处理延时且所述结果FIFO中没有处理结果时,返回指示协处理超时的处理结果给所述CPU。本发明解决了现有技术的问题,在接口允许的延时范围内,将处理结果返回给处理器,避免了处理器因此发生异常,提高了处理器和整个系统的稳定性。
文档编号G06F15/167GK102156684SQ201010590049
公开日2011年8月17日 申请日期2010年12月15日 优先权日2010年12月15日
发明者张君秋, 曹学成, 王建文, 顾堃 申请人:成都市华为赛门铁克科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1