减少芯片上系统互连中的传送等待时间的方法和设备的制作方法

文档序号:6553473阅读:176来源:国知局
专利名称:减少芯片上系统互连中的传送等待时间的方法和设备的制作方法
技术领域
本发明的实施例针对于一种用于对芯片上系统(“SOC”)互连上的从总线主控器到总线受控器的传送请求进行排序的方法和设备。具体地说,实施例针对于一种用于通过改变SOC互连中的请求的优先级来减少总线主控器与总线受控器之间的传送等待时间的方法和设备。
背景技术
芯片上系统(SOC)技术操作并控制各种类型的系统。一般来说,SOC技术是将“系统”(例如,手机或数码相机)所有必需的电子电路和零件组装在单个集成电路(“IC”)(其通常称为微芯片)上。
SOC通常包含起始器(也称为总线主控器)(例如,处理器、图形引擎、直接存储器存取(“dma”)引擎等)、总线目标(例如,存储器控制器)和系统总线(也称为互连)。为了操作SOC期望控制的系统,总线主控器经由系统总线或互连而起始针对目标(也称为受控器)的传送请求。如果多个主控器需要同时访问特定受控器,那么必须通过中央仲裁器或仲裁系统处理所述多个主控器的请求。仲裁系统控制主控器与受控器之间的通信;具体地说,其控制主控器与受控器进行通信的次序。
如果来自主控器的请求受等待时间或时间限制,那么主控器与受控器进行通信的次序可为重要的。通常,SOC中的每一主控器可对于每一请求具有等待时间要求。等待时间要求识别用于实现请求的时间约束(如果有的话)。举例来说,可要求视频引擎每秒写入一定数目的帧来建立图片或图像,且所述视频引擎可将这些帧从其内部缓冲器写入到主存储器中。如果存储器控制器(也就是说,受控器)不能及时地接受或服务这些请求,那么视频引擎中的缓冲器将溢出,且所产生的图片将为不完整并具有锯齿的。
可由特定主控器或特定类型的请求规定等待时间要求,而不管传输请求的主控器如何。尽管请求的等待时间要求可能是重要的,但在当前系统中,不存在从主控器到受控器的等待时间要求传送。因此,受控器认为所有具有相同优先级的请求是具有相同紧急性的。因而,在某些例子中,可能不会及时地对等待时间较为重要的请求作出响应。
当主控器将请求传输到仲裁系统以访问受控器时,主控器将请求信号传输到仲裁系统。如上文所述,某些传送请求是等待时间较为重要的,也就是说,在请求的实现方面存在时间约束。在这些例子中,可将优先级与请求进行关联。不考虑与请求相关联的优先级,仲裁系统就不知道等待时间约束,且因此将相同地管理每一请求,除非另有指示。
为了克服缺少对请求的等待时间要求的识别,在某些SOC中,特定主控器将始终被赋予最高优先级,而不管请求如何。由于来自所述特定主控器的所有请求被赋予最高优先级,因而来自所述主控器的具有较低优先级的请求将被放置在来自另一主控器的较高优先级请求之前。在这些例子中,难以优化总线的使用。
为了避免来自代替特定主控器的某些主控器的请求受不到处理,某些SOC中的仲裁系统将准许主控器使用公平循环机制与受控器进行通信。举例来说,包括主控器M0、M1……Mn和受控器S的系统如下区分与受控器S进行通信的优先级M0、M1……Mn;→M1……Mn、M0;→……→Mn、M0……Mn-1。尽管这较均匀地允许主控器对受控器的访问,但其不能解决与具有不同等待时间标准的请求相关联的问题。
因为请求可在得到仲裁系统许可之前驻存在内部缓冲器中,所以出现其它问题。由于仲裁器不辨识逝去时间量,因而在不考虑自从主控器起始请求以来已逝去的时间量的情况下传输请求。即使请求得到仲裁器许可,其也可能被传送到另一互连层或桥接装置而并非最终目标。另外,一旦请求被传输到最终目标,便可将其放置在队列中位于其它较早接收到的请求之后的地方,而不管已在初始请求与到达最终目标之间逝去的时间量。在这点上,主控器的等待时间要求可能在请求被处理之前已经到期。
业界存在一种需要,即允许将附属于请求的等待时间要求从请求主控器传送到受控器。对于系统还存在另一需要,即可根据请求的等待时间要求,将先前界定的请求响应进程重新区分优先级,且从而减少传送等待时间。

发明内容
本发明实施例针对于一种用于减少芯片上系统中的传送等待时间的方法和设备。所述芯片上系统的实施例包括总线主控器、总线受控器和仲裁器,其中所述总线主控器、总线受控器和仲裁器之间处于电连通。将具有优先级信号的请求从总线主控器传输到仲裁器,其中所述优先级信号与等待时间要求相关联。仲裁器在将请求传输到总线受控器之前检查等待时间要求,以确定是否要提升所述优先级信号。接着将请求信号从仲裁器传输到总线受控器。所述总线受控器传输对所述请求的响应,其中所述传输可包含优先级信号。
本发明实施例的特征在于,将请求的等待时间要求与请求一起从主控器传输到受控器。此特征的优点是,可根据等待时间要求来实现请求。
本发明实施例的另一特征在于,总线受控器可基于指令的等待时间要求将对指令的响应次序重新区分优先级。此特征的优点是,总线受控器可减少系统资源的消耗。
本发明实施例的另一特征在于,受控器将请求的优先级与返回数据一起返回到仲裁器。此特征的优点是,仲裁器能够确定去往单个主控器的返回数据的传输次序。


图1是具有一个主控器、受控器和仲裁器的SOC互连的方框图。
图2是具有多个主控器、受控器和仲裁器的SOC互连的方框图。
图3是用于减少传送等待时间的方法的流程图。
图4是优先级和相关联的等待时间要求的示范性表格。
图5是耦合到仲裁器的主控器请求队列的示意图。
图6是说明优先级提升机制的示意图。
图7是总线受控器将对所接收指令作出响应的次序重新区分优先级的示意图。
图8是具有两个受控器和单个主控器的配置的方框图。
具体实施例方式
本发明实施例针对于一种用于对SOC互连上的总线主控器与总线受控器之间的传送请求进行排序的方法和设备。本发明实施例在SOC互连上操作,其中至少一个总线主控器经由仲裁器与总线受控器进行通信。参考图1,SOC互连10包括至少一个总线主控器12、总线受控器14和仲裁器16,其中所述总线主控器12、总线受控器14和仲裁器16之间经由总线15和17而处于电连通。
总线主控器12可以是经配置以在总线15上起始事务的任何类型的装置,所述事务例如为将数据存储在存储器中或从存储器读取数据的指令。举例来说,总线主控器12包含(但不限于)处理器和图形引擎。
总线主控器12将请求信号传输到仲裁器16。所述请求信号指示总线主控器12正请求对位于总线17上的总线受控器14进行访问。依据总线主控器与仲裁器之间的总线15协议而定,请求信号可包含期望用于总线受控器14的指令。如果请求信号不包含期望用于总线受控器14的指令,那么总线主控器12将所述指令存储在存储装置(未图示)中,且等待来自仲裁器的信号以传输指令。如果请求信号包含用于总线受控器14的指令,那么可将指令存储在仲裁器16中的内部存储装置或耦合到仲裁器16的外部存储装置(未图示)中。
总线主控器12可具有与每一类型的指令相关联的预定优先级,或动态地将优先级指派给每一指令。优先级与等待时间要求相关,所述等待时间要求界定必须完成特定指令的时间范围。所述等待时间要求可以是固定的要求,例如,单个数字或描述符(例如,高、中或低),可为分频段值(binned value),或可为特定周期或时间值。如果等待时间要求被分频段,那么等待时间分频段将代表要求群组,例如范围或容限上限。举例来说,等待时间要求可为3(固定值)、高(描述符)、在20-40个周期之间或高达40个周期(分频段)。在某些实施例中,优先级等于直到必须实现请求为止所剩余的时钟周期数目(或时间)。在这些实施例中,与请求一起传输的等待时间要求对应于用以完成所述请求的剩余周期数目。无论以何种方式界定,在传输请求信号时或在仲裁器授权传输指令时,与所述指令相关联的优先级且(因此)相关联的等待时间要求与指令一起传输。
尽管总线主控器可为每一请求指派优先级,但在某些实施例中,可由仲裁器指派优先级。因此,可在主控器向仲裁器发出请求时或当主控器的请求在仲裁器中排队时由主控器指派优先级。如果由仲裁器指派优先级,那么优先级可对于来自主控器的所有请求为单个静态值,或可为由主控器发出的请求的类型确定的值。
总线受控器14为经配置以响应或服务来自总线主控器12的指令但不产生指令的目标装置。举例来说,总线受控器14可为存储器控制器。在优选实施例中,总线受控器14经配置以接收指令(包含所述指令的优先级状态和相关联的等待时间要求),且根据所述等待时间要求处理所述指令。
总线受控器经配置以从一个或一个以上主控器接收多个指令。所述多个接收到的指令被放置在队列中,直到总线受控器能够执行给定指令为止。在某些实施例中,总线受控器仅辨识传入指令的优先级,且因此,根据每一指令的优先级将对所述指令的响应次序重新区分优先级。然而,在其它实施例中,总线受控器知道等待时间要求,且因此,总线受控器可根据等待时间要求将其队列中指令的响应次序重新区分优先级。
一旦总线受控器已根据指令执行,总线受控器便将返回数据(如果有的话)传输到仲裁器16。返回数据可包含任何类型的信息,包含(但不限于)由总线主控器请求的一组数据、对查询的响应或关于指令已被完成的确认。在某些例子中,总线受控器在完成指令时不会返回任何响应,除非总线主控器进一步请求对任务完成的证实。
仲裁器16是控制器,其接收来自总线主控器12的请求信号,且控制从主控器到受控器的指令传输以及从受控器到主控器的返回数据传输。在某些实施例中,仲裁器仅接收请求信号,且指令存储在总线主控器中。在此例子中,当去往总线受控器的总线17可用时,仲裁器将信号传输到总线主控器12,指示其传输指令。
在接收到请求信号时,仲裁器给所述请求信号加标签(即,加时戳)。如果请求信号耦合到指令,那么仲裁器也可给指令加时戳。接着将指令存储在仲裁器中的队列中。时戳允许仲裁器跟踪在接收到请求信号与最终将指令传输到总线受控器14之间已逝去的时间量。
不管何时将指令传输到仲裁器,如上文论述,将指令的优先级和相关联的等待时间要求与指令一起传输。如下文将论述,仲裁器在将指令传输到总线受控器之前利用指令的等待时间要求和时戳或信号请求的时戳来确定是否需要提升(即,更新)指令的优先级。如果自从总线主控器传输初始请求信号以来已逝去太多时间,那么仲裁器经配置以提升指令的优先级状态。在这点上,将自动改变等待时间要求以反映新的优先级状态。优先级状态将提醒总线受控器关于用以对指令作出响应的实际时间约束。在某些实施例中,仲裁器存储请求信号和其时戳,且经配置以在请求驻存在总线受控器中的时期期间继续提升请求的优先级状态。在这点上,仲裁器依据来自总线受控器的请求返回而知道请求的等待时间要求。
参考图2,SOC互连可包含多个主控器、受控器、仲裁器或其任意组合。仲裁器的多重性建立多个互连级别。因此,为了到达某些所需的受控器(例如,S1和S2),请求必须通过多个仲裁器,每一仲裁器具有其自身的传输队列。在多层互连中,当将指令从一个级别传递到下一级别时,仲裁器可提升指令的优先级。在这点上,并未丢失或忽视与指令相关联的等待时间要求,从而允许总线受控器对指令提供及时响应。
总的来说且参考图3,在一个用于减少传送等待时间的实施例中,主控器向仲裁器传输请求,其中所述请求包含优先级信号20。在接收到请求时,仲裁器给所述请求加时戳或加标签,并将其放置在队列中22。在许可任何请求之前,仲裁器检查所述队列中待决的每一请求的相对优先级,且当相对于初始等待时间要求而逝去针对所述请求的周期时,提高所述队列中老化请求的优先级24。如果将等待时间要求界定为优先级,其中最低数字是最紧急的,那么请求驻存在队列中的每一周期将导致从其优先级值中减去一(1)。仲裁器在许可等待时间较不重要的请求之前许可等待时间较为重要的请求25。一旦请求获得许可,仲裁器便检查时戳连同等待时间要求,并在必要时更新请求的优先级26。接着将请求从仲裁器传输到指定受控器或中间仲裁器28。如果将请求传输到受控器,那么受控器实现所述请求,并经由仲裁器将数据返回到主控器30。如果将请求传输到中间仲裁器,那么中间仲裁器给所述请求加时戳22,并如上文所述那样处理请求。
如上文论述,当主控器12传输请求时,所述请求包含优先级信号。在某些实施例中,优先级信号包含在与请求一起传输的边带信号中,其中所述边带信号是与请求相关联的信号的集合,且识别传送限定符。举例来说,边带信号可包含(但不限于)传送类型、传送大小、待访问的装置的地址和指令的优先级信号。传送限定符可改变,且可取决于总线15、17协议。
优先级信号具有可被编码的可变宽度,其中所述编码与等待时间要求相关联。参考图4,由优先级识别符32(例如“0bxy”)识别优先级信号,其中xy识别等待时间分频段34。在此实例中,宽度为两位,然而,将了解宽度可为任何合适的宽度。用于识别等待时间分频段的位的较大数目增加用以确定等待时间要求的粒度量。
每一优先级识别符32与等待时间识别符36相关联。等待时间识别符36界定等待时间要求,包含识别出请求不具有等待时间要求。可通过任何合适的方式界定等待时间要求,所述方式包含(但不限于)周期数目或一定范围的周期。举例来说,优先级识别符0b00不具有等待时间要求,且0b01与“100个周期内得到服务”的等待时间识别符36相关联。在另一实例中,可将等待时间要求识别为在30-50个周期之间得到服务。在某些实施例中,可通过仲裁器中的寄存器来编程对应于总线主控器的优先级编码的等待时间要求。在这点上,可相对于优先级识别符32改变等待时间要求。
在接收并接受优先级信号后,仲裁器给接着排队进行仲裁的传入请求加时戳或加标签。如上文论述,在许可请求之前,仲裁器检查所接收请求的相对优先级,所述请求可从同一主控器或不同主控器发出。一般在许可具有较高等待时间要求的请求之前许可具有较低等待时间要求的请求。可以任何合适的次序许可具有相等优先级的请求,包含(但不限于)基于最早的时戳来许可请求。
一旦请求待被许可,仲裁器关于请求的标签或时戳来检查优先级识别符32。在这点上,仲裁器确定优先级识别符32是否需要提升或更新。参考图5,如上文论述,在接收到来自主控器(例如,主控器1)的请求时,仲裁器将时戳“0”放置在所述请求上。依照时戳和优先级将请求放置在主控器请求队列40中。在‘n’个时钟周期的每一间隔处,仲裁器使每一主控器的队列中的所有待决请求的时戳递增或老化。因此,参看图5,仲裁器使主控器1的队列中的请求0、请求1和请求2的时戳递增,且还使主控器2的队列中的请求0的时戳递增。时戳的增加允许仲裁器确定所述请求相对于所述请求的等待时间要求的老化。在这点上,当请求被许可时,可基于老化时戳来更新优先级。举例来说,再次参考图4,假定起初具有优先级0b10的请求具有为三的老化时戳。如果‘n’个时钟周期代表间隔值10,那么请求在获得许可之前已处于待决状态持续至少30个周期。根据图4,优先级0b10需要在50个周期内得到服务。由于现在必须在20个周期内对请求作出响应,因而必须提升优先级以反映新的时间约束。因此,在此例子中,仲裁器将把优先级识别符从0b10改变为0b11,以反映在20个周期内得到服务的必要性。因而,当将此请求传输到受控器或另一互连级别时,接收方知道必须在20个周期内服务所述请求。在将请求传输通过多个互连时,优先级得到调整,从而实时更新请求的等待时间要求。针对‘n’的间隔值可编程到仲裁器中,且因此可作出改变。
为了确定许可哪个请求,在某些实施例中,仲裁器检查每一主控器的每一队列中的最老请求。举例来说,仲裁器将检查主控器1的队列中的请求0(假定请求0为最老的)和主控器2的队列中的请求0。仲裁器将把所述两个请求进行比较,以确定哪个请求是等待时间较为重要的,且许可那个请求。在其它实施例中,仲裁器不管请求的年龄而确定在每一主控器的队列中哪个请求是等待时间最为重要的。举例来说,假定主控器1的队列中的请求1在所述三个待决请求中是等待时间最为重要的,那么仲裁器将把请求1与主控器2的队列中的请求0的等待时间要求进行比较,以确定许可哪个请求。
在另一实例中,且参考图6,两个主控器M0和M1大致上同时将请求信号与指令(总起来说,请求)一起传输到仲裁器42。每一请求具有优先级0b10。所述两个请求都由仲裁器确认44、46;然而,对每一请求的确认发生在不同周期处。具体地说,对M0的确认发生在第四周期处44,且对M1的确认较早发生在第三周期处46。在时间x处,仲裁器许可M1的请求。由于请求已在逝去的时间量需要提升所述请求的优先级之前获得许可,因而仲裁器不改变M1的优先级。在时间y处,仲裁器许可M0的请求。然而,在时间y处已逝去充分数目的周期,使得现在必须将M0的优先级提升到0b11。因此,仲裁器以提升的优先级将请求M0传输到总线受控器。由受控器接收所述请求,包含优先级信息。在总线受控器不辨识等待时间信息且仅检查指令的优先级状态的实施例中,总线受控器首先实现最高优先级的指令。在某些实施例中,某些受控器还可不辨识优先级信息。尽管这些受控器将等同地对待所有传入请求,但仲裁器将以对于减少等待时间为最佳的方式把请求呈现给受控器。
因此,在上述实例中,不管在接收到M1的请求之后接收到M0的请求的事实,受控器起初知道应在对M1的请求进行作用之前对来自M0的请求进行作用。因为仲裁器已相对于等待时间要求检查了指令的优先级,所以与在仲裁器不提升优先级的系统中相比,优先级更准确地反映指令的状态。如果总线受控器不辨识请求的优先级,那么总线受控器以接收请求的次序来实现所述请求。然而,如上文指示,在这些例子中,仲裁器已以对于减少等待时间为最佳的方式将请求呈现给总线受控器。
如上文论述,在某些实施例中,可基于队列中的指令的等待时间要求来将受控器对指令作出响应的实际次序重新区分优先级。在某些实施例中,通过将队列中的指令的等待时间要求进行比较,总线受控器可将对指令作出响应的次序重新区分优先级,以提高系统资源的有效使用。举例来说,基于指令的等待时间要求,总线受控器可估计其是否能够在实现较高优先级指令之前实现较低优先级指令且仍满足所述两个指令的等待时间要求。
有时,对指令重新排序可允许总线受控器减少系统资源(例如,电力)的消耗,因为其可有效地访问给定系统装置。举例来说且参考图7,总线受控器接收第一指令I1以从第一存储器装置MEM1检索数据。当总线受控器正在检索数据时,第二指令I2和第三指令I3被传输到总线受控器。第二指令具有比第三指令P2高的优先级P5。然而,第三指令I3正指示总线受控器访问第一存储器装置MEM1,且第二指令I2正指示总线受控器访问第三存储器装置MEM3。在完成针对第一指令I1的数据检索后,总线受控器可检查所述两个剩余指令的等待时间要求,并确定其是否可在受到第二指令I2的等待时间要求的约束的情况下在实现第二指令I2之前实现第三指令I3。举例来说,如果第二指令I2的等待时间要求需要在30个周期内实现指令,且总线受控器确定其可在10个周期内实现第三指令I3,且接着在15个周期内实现第二指令I2,那么总线受控器可及时地实现所述两个指令。如果总线受控器可有效地实现所有三个指令,那么系统的资源将得以节省,因为总线受控器将在不关闭存储器装置的情况下重新访问同一存储器装置,并接着回去继续针对第三指令检索所请求的数据。这将减少系统中的功率消耗。
在由受控器实现请求后,受控器传输返回数据。除了返回数据之外,受控器可返回经更新的优先级识别符32。在某些实施例中,总线受控器经配置以将当其接收到指令时的时戳与用以实现所述指令的逝去时间进行比较,所述逝去时间是从总线受控器接收到所述指令开始计算的。如上文论述,如果逝去时间将指令放置在新的等待时间分频段中,那么在某些实施例中,总线受控器经配置以通过将优先级识别符32更新为第二高优先级识别符32以反映经提升的优先级来提升指令的优先级。接着将返回数据传输到仲裁器。
为了确定从针对给定主控器的一个或一个以上受控器传输返回数据的次序,仲裁器利用由受控器返回的优先级识别符32以及当由互连观察到第一(或仅有的)块返回数据时得到的时戳,来估计哪些请求是等待时间较为重要的。在某些实施例中,受控器不返回优先级识别符。代替地,仲裁器维持所传输的请求连同请求的优先级的记录,且随着时间逝去而更新优先级,如上文所述。基于竞争访问特定主控器的所有返回传送的相对优先级,仲裁器确定哪些请求(如果有的话)将受到缓冲或扼制(也就是说,向受控器传输关于其不能接受返回数据的信号),且较快地传送对等待时间较为敏感的请求而没有通过扼制传送或将其放置在缓冲器中引起的进一步延迟。相对优先级的使用允许仲裁器对返回数据重新确定优先级而不管从总线受控器返回的次序。
参考图8,在一个实例中,双向纵横仲裁器互连50经由总线(3)耦合到主控器,且经由总线(1)和(2)耦合到多个受控器S0和S1。主控器将两个读取请求传输到不同的受控器,其中去往S0的读取请求的等待时间要求低于去往S1的请求。所述两个请求都经由总线(3)被传输到仲裁器50,所述仲裁器50又以上文所述的方式将请求传输到不同的受控器。所述请求由受控器完成,且在此实例中,准备大致上同时传输到仲裁器50。由于存在多个用于传输的总线(1)和(2),因而在将返回读取数据传输到仲裁器50的次序方面不存在问题。然而,由于仅单个总线(3)可用于主控器,因而仲裁器必须确定哪个读取数据将被优先传输到主控器。此基于请求的等待时间要求来确定。因而,仲裁器选择来自S0的读取数据,因为仲裁器知道请求的等待时间要求。因此,来自S0的读取数据被传输到主控器,且在仲裁器内部对来自S1的读取数据进行扼制或缓冲或者将其放置在队列中,直到连接到主控器的总线(3)在传送来自S0的读取数据之后可用为止。
尽管前文用优选实施例描述了本发明,但并不期望这限制本发明。实际上,期望前文涵盖在所附权利要求书中表述的本发明精神和范围内的所有修改和替代构造,其中如果未在权利要求书中陈述,那么并不明确性地或暗示性地期望本揭示内容的任何部分贡献给公众领域。
权利要求
1.一种用于减少芯片上系统中的传送等待时间的方法,所述芯片上系统具有总线主控器、总线受控器和仲裁器,所述总线主控器、总线受控器和仲裁器处于电连通,所述总线受控器经配置以对请求作出响应,所述方法包括将具有优先级信号的请求从所述总线主控器传输到所述仲裁器,所述优先级信号与等待时间要求相关联;检查所述等待时间要求以确定是否要提升所述优先级信号;将所述请求和优先级信号从所述仲裁器传输到所述总线受控器;以及将对所述请求的响应和所述优先级信号从所述总线受控器传输到所述仲裁器。
2.根据权利要求1所述的方法,其进一步包括给所述优先级信号加时戳。
3.根据权利要求1所述的方法,其进一步包括提升所述优先级信号。
4.根据权利要求2所述的方法,其进一步包括将所述时戳与所述等待时间要求进行比较,以确定是否要提升所述优先级信号。
5.根据权利要求1所述的方法,其进一步包括将所述请求放置在队列中以用于传输到所述受控器总线。
6.根据权利要求1所述的方法,其中所述请求是第一请求,所述优先级信号是第一优先级信号,且所述等待时间要求是第一等待时间要求,所述方法进一步包括将具有第二优先级信号的第二请求从所述总线主控器传输到所述仲裁器,所述第二优先级信号与第二等待时间要求相关联,其中所述第二优先级信号高于所述第一优先级信号;以及将所述第二请求和第二优先级信号从所述仲裁器传输到所述总线受控器。
7.根据权利要求6所述的方法,其进一步包括将所述第一优先级信号与所述第二优先级信号进行比较;以及由所述总线受控器在实现所述第一请求之前实现所述第二请求。
8.根据权利要求6所述的方法,其进一步包括将所述第一等待时间要求与所述第二等待时间要求进行比较;以及由所述总线受控器在实现所述第二请求之前实现所述第一请求。
9.根据权利要求1所述的方法,所述芯片上系统具有第一仲裁器、第二仲裁器、第一总线受控器和第二总线受控器,所述第一仲裁器耦合到所述主控器和所述第二仲裁器,所述第一总线受控器耦合到所述第一仲裁器,且所述第二总线受控器耦合到所述第二仲裁器,其中来自所述总线主控器的请求通过所述第一仲裁器和所述第二仲裁器从所述总线主控器传输到所述第二总线受控器,所述方法进一步包括在将所述请求传输到所述第二仲裁器之前检查所述等待时间要求,以确定是否要提升所述优先级信号;以及在将所述请求传输到所述第二总线受控器之前检查所述等待时间要求,以确定是否要提升所述优先级信号。
10.根据权利要求9所述的方法,其进一步包括由至少一个仲裁器提升所述等待时间要求。
11.根据权利要求9所述的方法,其进一步包括在将所述请求传输到第二仲裁器之前提升所述等待时间要求;在将所述请求传输到所述总线受控器之前提升所述等待时间要求。
12.根据权利要求1所述的方法,其进一步包括在所述将对所述请求的响应传输到所述仲裁器之前由所述总线受控器提升所述请求的优先级。
13.一种芯片上系统互连,其包括总线主控器,所述总线主控器经配置以传输请求信号,所述请求信号与优先级信号和等待时间识别符相关联,所述优先级信号识别所述请求的优先级状态,且所述等待时间识别符识别用于对所述请求作出响应的时间要求;总线受控器,其经配置以接收所述请求信号、所述优先级信号和所述等待时间识别符;以及仲裁器,所述仲裁器耦合到所述总线主控器和总线受控器,其中所述请求信号、优先级信号和等待时间识别符经由所述仲裁器从所述总线主控器传输到所述总线受控器,且其中所述总线受控器经配置以将所述优先级信号和等待时间识别符传输到所述仲裁器。
14.根据权利要求13所述的系统,所述优先级信号经配置以被编码,其中所述编码与所述等待时间识别符相关联。
15.根据权利要求13所述的系统,所述优先级信号包括可变宽度,所述可变宽度经配置以用于编码。
16.根据权利要求13所述的系统,所述等待时间识别符选自具有固定数字、描述符、一定范围的时钟周期和周期上限的群组中的一者。
17.根据权利要求13所述的系统,其中所述总线受控器经配置以提升所述优先级信号,并将所述提升的优先级信号传输到所述仲裁器。
18.根据权利要求13所述的系统,其进一步包括多个仲裁器,第一仲裁器耦合到所述总线主控器且进一步耦合到第二仲裁器,每一仲裁器经配置以提升所述优先级信号,所述优先级信号的提升与新的等待时间识别符相关联;多个总线受控器,第一总线受控器耦合到所述第一仲裁器,且第二总线受控器耦合到所述第二仲裁器,每一总线受控器经配置以提升所述优先级信号。
19.根据权利要求13所述的系统,其进一步包括多个仲裁器,第一仲裁器耦合到所述总线主控器且进一步耦合到第二仲裁器,每一仲裁器经配置以提升所述优先级信号,多个总线受控器,第一总线受控器耦合到所述第一仲裁器,且第二总线受控器耦合到所述第二仲裁器,每一仲裁器经配置以在所述请求驻存在所述总线受控器中时提升所述优先级信号。
20.根据权利要求13所述的系统,其中所述仲裁器经配置以在所述请求驻存在所述总线受控器中时提升所述优先级信号。
21.根据权利要求1所述的方法,其进一步包括在所述请求驻存在所述总线受控器中时,由所述仲裁器提升所述请求信号。
全文摘要
本发明的实施例针对于一种用于减少芯片上系统中的传送等待时间的方法和设备,所述芯片上系统包括总线主控器、总线受控器和仲裁器,其中所述总线主控器、总线受控器和仲裁器之间处于电连通。将请求从所述总线主控器传输到所述仲裁器,其中优先级信号与等待时间要求相关联。所述仲裁器在将所述请求传输到所述总线受控器之前检查所述等待时间要求,并确定是否要提升所述优先级信号。接着将所述请求信号从所述仲裁器传输到所述总线受控器。所述总线受控器实现所述请求,并传输对所述请求的响应,其中所述传输包含所述优先级信号。
文档编号G06F13/36GK101091170SQ200580045175
公开日2007年12月19日 申请日期2005年12月23日 优先权日2004年12月30日
发明者贾亚·普拉喀什·苏布拉马尼亚姆·贾纳桑, 佩里·威尔曼·小雷马克吕斯 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1