用于总线互连的总线时钟频率缩放及其相关装置、系统和方法

文档序号:6494694阅读:195来源:国知局
用于总线互连的总线时钟频率缩放及其相关装置、系统和方法
【专利摘要】本发明揭示用于总线互连的总线时钟频率缩放及其相关装置、系统和方法。在一个实施例中,所述总线互连包括可配置以将主控端口连接到从属端口的互连网络。总线互连时钟信号对所述互连网络进行计时。控制器经配置以接收与在所述主控端口和所述从属端口上传送的业务相关的带宽信息。所述控制器进一步经配置以在所述主控端口和/或所述从属端口的带宽满足相应的带宽条件的情况下且/或在所述主控端口的等待时间满足所述主控端口的相应的等待时间条件的情况下缩放(例如,增加或减小)所述总线互连时钟信号的频率。所述主控端口和/或所述从属端口还可响应于所述总线互连时钟信号的频率改变而被重新配置,从而优化性能并节省电力。
【专利说明】用于总线互连的总线时钟频率缩放及其相关装置、系统和方法
【技术领域】
[0001]本发明的技术涉及用于将不同电子组件通信地介接在一起的电子总线互连。作为一实例,可在系统芯片(SOC)设计中提供总线互连。
【背景技术】
[0002]通常使用专用集成电路(ASIC)设计来制造例如移动电话、个人数字助理(PDA)等便携式电子装置。在实现高度硅集成方面的发展已允许创建复杂的ASIC和现场可编程门阵列(FPGA)设计。可在单个芯片中提供这些ASIC和FPGA以提供系统芯片(SOC)。SOC在单个半导体芯片上提供多个起作用的子系统,例如,处理器、乘法器、高速缓冲存储器以及其它电子组件。SOC在便携式电子装置中特别有用,这是由于SOC的可在单个芯片中提供多个特征和应用的多个子系统的集成。此外,通过使用可能原本使用多个芯片提供的单个芯片,SOC可允许更小的便携式电子装置。
[0003]为了在芯片(作为一实例,其可为S0C)上提供的电路内将多个不同组件或子系统通信地介接在一起,提供一互连通信总线,所述互连通信总线还被称作总线互连。使用电路(包含计时电路)提供总线互连,作为实例,所述电路可包含寄存器、队列以及用以管理各种子系统之间的通信的其它电路。使用从主控时钟信号产生的一个或一个以上时钟信号对总线互连中的电路进行计时,所述主控时钟信号在所要的总线时钟频率下操作以提供所要的处理量。在其中需要减少的电力消耗的应用中,可根据众所周知的等于fCV2的电力消耗等式来降低总线时钟频率,其中‘f’是频率,‘C’是电容,且‘V’是电压。然而,降低总线时钟频率降低了总线互连的性能。如果降低总线时钟频率使总线等待时间增加超过耦合到总线互连的子系统的等待时间要求或条件,那么子系统的性能可能降级或完全失效。不冒降级或失效的风险,可将总线时钟频率设定到较高的频率以减少等待时间且提供性能裕度。然而,为总线互连提供较高的总线时钟频率会消耗更多电力。

【发明内容】

[0004]详细描述中所揭示的实施例包含用于总线互连的总线时钟频率缩放,以及相关装置、系统、方法和计算机可读媒体。总线互连可配置以允许一个或一个以上主控装置(各自连接到总线互连的多个主控端口中的一主控端口)通信地连接到多个从属装置中的任一者,所述多个从属装置各自连接到总线互连的一从属端口。所述主控端口和从属端口可为可配置的,以在不同频率下操作,从而促进在一个频率下操作的主控装置与在不同频率下操作的从属装置互连以便与所述从属装置通信。提供总线互连时钟信号以对互连网络进行计时。为了节省由总线互连消耗的电力,可基于相应带宽和/或相应等待时间条件来缩放(例如,增加或减小)总线互连时钟信号的频率。以此方式,可在维持总线互连的所要的性能条件要求的同时优化总线互连的电力消耗。
[0005]在此方面,在一个实施例中,提供一种总线互连。所述总线互连包括互连网络,所述互连网络可配置以将多个主控端口中的一个或一个以上主控端口连接到一个或一个以上从属端口。所述总线互连还包括控制器,所述控制器经配置以产生总线互连时钟信号以对互连网络进行计时。所述控制器经配置以接收与在至少一个主控端口上传送的业务相关的至少一个第一带宽信息。所述控制器还经配置以接收与在至少一个从属端口上传送的业务相关的至少一个第二带宽信息。所述控制器还经配置以响应于以下各者中的至少一者而缩放(例如,增加或减小)总线互连时钟信号的频率:(a)所述至少一个第一带宽信息满足相应的至少一个第一带宽条件,以及(b)所述至少一个第二带宽信息满足相应的至少一个第二带宽条件。
[0006]所述控制器可经配置以响应于所述至少一个第一带宽信息满足相应的至少一个第一带宽条件且所述至少一个第二带宽信息满足相应的至少一个第二带宽条件而减小总线互连时钟信号的频率。所述控制器还可经配置以响应于所述至少一个第一带宽信息满足相应的至少一个第一带宽条件或所述至少一个第二带宽信息满足相应的至少一个第二带宽条件而增加总线互连时钟信号的频率。
[0007]在另一实施例中,提供一种缩放用于总线互连的总线互连时钟信号的方法。所述方法包括接收与在连接到互连网络的多个主控端口中的至少一个主控端口上传送的业务相关的至少一个第一带宽信息,所述互连网络经配置以将所述至少一个主控端口连接到至少一个从属端口。所述方法还包括接收与在至少一个从属端口上传送的业务相关的至少一个第二带宽信息。所述方法还包括响应于以下各者中的至少一者而缩放对互连网络进行计时的总线互连时钟信号的频率:(a)所述至少一个第一带宽信息满足相应的至少一个第一带宽条件,以及(b)所述至少一个第二带宽信息满足相应的至少一个第二带宽条件。
[0008]在另一实施例中,提供一种计算机可读媒体。所述计算机可读媒体具有存储于其上的计算机可执行指令以致使总线互连(包括可配置以将多个主控端口中的一主控端口连接到从属端口的互连网络)响应于以下各者中的至少一者而缩放(例如,增加或减小)由控制器产生且经配置以对互连网络进行计时的总线互连时钟信号的频率:(a)与在所述至少一个主控端口上传送的业务相关的至少一个第一带宽信息满足相应的至少一个第一带宽条件,以及(b)与在所述至少一个从属端口上传送的业务相关的至少一个第二带宽信息满足相应的至少一个第二带宽条件。
[0009]在其它实施例中,所述控制器还可经配置以仅在主控端口的等待时间满足主控端口的相应的等待时间条件的情况下才另外缩放(例如,增加或减小)总线互连时钟信号的频率。举例来说,所述控制器可经配置以在主控端口的等待时间小于主控端口的最大等待时间阈值且主控端口和从属端口的带宽小于余裕带宽阈值的情况下减小总线互连时钟信号的频率。作为另一实例,所述控制器可经配置以在主控端口的等待时间大于主控端口的最大等待时间阈值或者主控端口或从属端口的带宽大于余裕带宽阈值的情况下增加总线互连时钟信号的频率。
[0010]此外,本文中所揭示的实施例使得主控端口和从属端口能够经配置以用于响应于总线互连时钟信号的改变的同步和/或上升沿同步操作,(如果可能),从而减少或避免总线互连中的等待时间。主控端口接口和从属端口接口还可经配置以用于与总线互连时钟信号的异步操作。【专利附图】

【附图说明】
[0011]图1是示范性总线互连系统的方框图,所述总线互连系统包括互连网络,所述互连网络经配置以通过使用频率经缩放的总线互连时钟信号进行计时的互连网络将多个主控端口连接到多个从属端口中的任一者;
[0012]图2是在连接到从属端口的主控端口之间的图1的总线互连中设置的通信路径中的示范性电路子系统的方框图;
[0013]图3A和3B说明基于针对主控端口和从属端口而配置的相应带宽条件和/或针对主控端口而配置的相应等待时间条件而提供对用于图1的总线互连的总线互连时钟信号的频率缩放的示范性流程图;
[0014]图4是在图1的总线互连中提供的控制器中所包含的示范性组件的方框图;
[0015]图5是说明与总线互连时钟信号同步地、上升沿同步地以及异步地操作的端口时钟信号的示范性图;
[0016]图6是说明在总线互连时钟信号被缩放时与总线互连时钟信号的同步、上升沿同步以及异步操作的端口时钟信号的示范性配置的流程图;
[0017]图7是可缩放图1的总线互连中的端口时钟信号和/或总线互连时钟信号的频率的示范性时钟改变电路的方框图;
[0018]图8是缩放端口时钟信号和/或总线互连时钟信号的图7的时钟改变电路的示范性时序图;
[0019]图9是停止端口时钟信号和/或总线互连时钟信号的图7的时钟改变电路的示范性时序图;以及
[0020]图10是使用根据本文中所描述的实施例的总线互连的示范性中央处理单元(CPU)电路和相关系统的方框图。
【具体实施方式】
[0021]现在参考附图,描述本发明的若干示范性实施例。词语“示范性”在本文中用于表示“充当实例、例子或示例”。本文中被描述为“示范性的”任何实施例不一定被理解为比其它实施例优选或有利。
[0022]详细描述中所揭示的实施例包含用于总线互连的总线时钟频率缩放,以及相关装置、系统、方法和计算机可读媒体。总线互连可配置以允许一个或一个以上主控装置(各自连接到总线互连的多个主控端口中的一主控端口)通信地连接到多个从属装置中的任一者,所述多个从属装置各自连接到总线互连的一从属端口。所述主控端口和从属端口可为可配置的,以在不同频率下操作,从而促进在一个频率下操作的主控装置与在不同频率下操作的从属装置互连以与所述从属装置通信。提供总线互连时钟信号以对互连网络进行计时。为了节省由总线互连消耗的电力,可基于相应带宽和/或相应等待时间条件来缩放(例如,增加或减小)总线互连时钟信号的频率。以此方式,可在维持总线互连的所要的性能条件要求的同时优化总线互连的电力消耗。
[0023]在此方面在一个实施例中,图1是示范性总线互连系统10的方框图。总线互连系统10包括总线互连12。作为实例,总线互连12可由现场可编程门阵列(FPGA)、专用集成电路(ASIC)、控制器、微控制器或执行软件指令的微处理器,或其任何组合来提供。如将在下文更详细地描述,总线互连12可配置以允许一个或一个以上主控装置14 (O-M)(各自连接到由总线互连12提供的一主控端口 16(0-M))通信地连接到多个从属装置18 (O-N)中的一者或一者以上,所述多个从属装置各自连接到由总线互连12提供的一从属端口 20(0-N)。如果需要,总线互连12可提供于半导体裸片21中且可提供于系统芯片(SOC)集成电路设计中。主控装置14(O-M)和从属装置IS(O-N)可为任何类型的电子装置或子系统,其实例包含(但不限于)中央处理单元(CPU)、数字信号处理器(DSP)、直接存储器存取(DMA)控制器、存储器控制器、图形处理器等。
[0024]通过耦合到主控端口 16 (O-M)的主控端口总线22 (O-M)在主控装置14 (O-M)与总线互连12之间支持通信。类似地,通过耦合到从属端口 20 (O-N)的从属端口总线24 (O-N)在从属装置IS(O-N)与总线互连12之间支持通信。提供单独的主控端口总线22(0-M)和从属端口总线24(0-N)允许总线互连12将在不同时钟频率下操作的主控装置14(0-M)和从属装置IS(O-N)互连。为了配置主控装置14(0-M)与特定从属装置IS(O-N)之间的连接,总线互连12含有互连网络26。如图2中所说明,互连网络26包含计时电路,例如门、锁存器和寄存器(作为实例),其可配置以耦合所要的主控装置H(O-M)与所要的从属装置IS(O-N)。举例来说,如图2中所说明,说明在总线互连12中提供的示范性组件,其可配置以在互连网络26中在一个主控装置14 (O-M)与一个从属装置IS(O-N)之间提供通信路径。
[0025]参考图2,主控端口 16 (O-M)各自包含连接到主控端口总线22 (0_M)的主控端口接口 28(0-M)以从主控装置14(0-M)接收通信。因为互连网络26可能在与主控端口总线22(0-M)和从属端口总线24(O-N)两者不同的频率下操作,所以可提供主控端口队列30 (O-M)来存储提供给仲裁器32的总线事务或命令,从而仲裁主控端口队列30 (O-M)与从属端口队列34 (O-N)之间的通信。仲裁器32可包含与从属端口 20 (O-N)相关联的单独寻址仲裁器36 (O-N)以仲裁到从属端口 20 (O-N)的总线事务,以及与主控端口 16 (O-M)相关联的数据(读取/写入)仲裁器38 (O-M)以仲裁来自从属端口 20 (O-N)的读取数据和写入完成响应。从属端口队列34(0-N)向连接到从属端口总线24 (O-N)的从属端口接口40 (O-N)提供通信。应注意,虽然图2说明在耦合到一个主控装置14(0-M)的一个主控端口 16 (O-M)与耦合到一个从属装置IS(O-N)的一个从属端口 20 (O-N)之间的通信路径,但在总线互连12中提供的仲裁器36 (O-N)、38 (O-M)可经配置以仲裁主控端口 16(0_M)和从属端口 20 (O-N)中的任一者之间的通信路径。
[0026]返回参考图1,互连网络26中的通信路径可由在总线互连12中提供的仲裁器36 (O-N)、38 (O-M)配置,从而配置所要的主控装置14 (O-M)与从属装置18 (O-N)之间的互连。提供可为时钟控制器的控制器42,其包含总线时钟改变电路44,总线时钟改变电路44经配置以产生总线互连时钟信号(bus_clk) 46来对互连网络26中的计时电路进行计时。控制器42通过向总线时钟改变电路44发布命令来控制总线互连时钟信号46的频率。总线时钟改变电路44从由时钟产生器50产生的时钟源信号(clk_src) 48而产生总线互连时钟信号46。在图1中将时钟产生器50展示为从总线互连12的外部提供,但在需要时,时钟产生器50可替代地包含于总线互连12中。时钟产生器50在源频率下产生时钟源信号48,随后可由总线时钟改变电路44提供或分割时钟源信号48以提供总线互连时钟信号46来对互连网络26进行计时。应注意,将控制器42说明为包含于总线互连12中,但在需要时,可替代地将控制器42提供在总线互连12的外部。[0027]根据fCV2,其中‘f’是频率,‘C’是电容,且‘V’是电压,降低总线互连时钟信号46的频率可减少总线互连12的电力消耗。电容‘C’是基于用于总线互连12的时钟缓冲树以及驱动时钟缓冲树的电路。降低总线互连时钟信号46的频率可增加由总线互连12执行的总线事务的等待时间,且因此降低总线互连12的性能。在一些例子中,降低总线互连时钟信号46的频率将不会导致主控端口 16 (O-M)和从属端口 20 (O-N)的带宽和等待时间的不可接受的降级(例如,超过所定义的条件,例如阈值)。在其它时间,降低总线互连时钟信号46的频率将会导致主控端口 16 (O-M)和从属端口 20 (O-N)的带宽和等待时间的不可接受的降级(例如,超过所定义的条件,例如阈值)。不是使总线互连时钟信号46的频率维持在比足以维持针对主控端口 16 (O-M)和从属端口 20 (O-N)而配置的相应带宽条件和针对主控端口 16 (O-M)而配置的相应等待时间条件的频率更高的频率下(这可能会在总线互连12中提供不必要地消耗额外电力的性能裕度),本文中所揭示的实施例缩放总线互连时钟信号46的频率。
[0028]相应带宽条件意味着可针对每一主控端口 16 (O-M)和从属端口 20 (O-N)来配置用于确定总线互连时钟信号46的缩放的带宽条件。作为非限制性实例,可针对每一主控端口16 (O-M)和每一从属端口 20 (O-N)来唯一地配置这些带宽条件,将这些带宽条件配置为对于所有主控端口 16 (O-M)都相同,配置为对于所有从属端口 20 (O-N)都相同,或配置为对于所有主控端口 16 (O-M)和从属端口 20 (O-N)都相同,或其任何组合。类似地,相应等待时间条件意味着可针对每一主控端口 16(0-M)来配置用于确定总线互连时钟信号46的缩放的等待时间条件。作为非限制性实例,可针对每一主控端口 16 (O-M)来唯一地配置等待时间条件,或将等待时间条件配置为对于所有主控端口 16(0-M)都相同。
[0029]举例来说,如果确定总线互连12的性能超过主控端口 16(0_M)和从属端口20 (O-N)的带宽需要,那么可降低总线互连时钟信号46的频率以在不影响性能的情况下节省电力。如果总线互连时钟信号46的频率将主控端口 16 (O-M)和从属端口 20 (O-N)的带宽降低到所要的性能以下,那么可升高总线互连时钟信号46的频率以增加总线互连12的性能。
[0030]此外,主控装置14(0-M)可具有用于通过总线互连12执行事务的最大等待时间。所述最大等待时间是事务的广播与响应的接收之间的最大可接受的等待时间。举例来说,读取等待时间是在通过总线互连12将读取请求从主控装置14(0-M)传送到从属装置18 (O-N)时与在主控装置14 (O-M)处接收到读取响应时之间的时间。写入等待时间是在通过总线互连12将写入请求从主控装置14 (O-M)传送到从属装置IS(O-N)时与在将数据写入到从属装置IS(O-N)且在主控装置14(0-M)处接收到写入响应时之间的时间。因此,在某些实施例中,如果除了总线互连12的性能超过主控端口 16(0-M)和从属端口 20(0-N)的带宽需要之外,另外还确定总线互连12的性能超过针对主控端口 16 (O-M)而配置的最大等待时间(即,等待时间小于最大阈值条件),那么可降低总线互连时钟信号46的频率以节省电力。如果总线互连时钟信号46的频率致使总线互连12不满足针对主控端口 16 (O-M)而配置的相应最大等待时间条件,那么可升高总线互连时钟信号46的频率以增加总线互连12的性能且进而减小存取等待时间。
[0031]在此方面,如图1和2中所说明,分别针对每一主控端口 16(0_M)和从属端口20 (O-N)而提供主控端口业务监视电路60 (O-M)和从属端口业务监视电路62 (O-N)。主控端口业务监视电路60 (O-M)和从属端口业务监视电路62 (O-N)经配置以通过分别监视主控端口总线22 (O-M)和从属端口总线24 (O-N)上的通信而分别监视主控端口 16 (O-M)和从属端口 20 (O-N)的业务或带宽。主控端口业务监视电路60 (O-M)还经配置以监视主控端口16 (O-M)的等待时间。将此带宽信息提供给控制器42以在总线互连时钟信号46的频率的缩放(例如,增加或减小)中使用。
[0032]如还将在下文更详细地论述,可缩放总线互连时钟信号46的频率。举例来说,如果可改变主控端口总线22 (O-N)和从属端口总线24 (O-N)的频率,那么可降低总线互连时钟信号46的频率以节省电力,同时维持主控端口 16(0-M)和从属端口 20(0-N)的相应带宽需要以及针对主控端口 16(0-M)而配置的相应等待时间条件。在此方面,如图1和2中所说明,此实施例中的控制器42还将时钟源信号48提供给时钟改变电路52 (O-M)和时钟改变电路54 (O-N)。控制器42可向时钟改变电路52 (O-M)、54 (O-N)中的每一者发布命令以改变主控端口总线22 (O-M)和从属端口总线24 (O-N)中的每一者的频率。如图2中所说明,时钟改变电路52 (O-M)和时钟改变电路54 (O-N)是时钟产生器,其分别将主控端口时钟信号56 (O-M)和从属端口时钟信号58 (O-N)分别提供给主控端口接口 28 (O-M)和从属端口接口 40 (O-N)。
[0033]图3A和3B说明基于针对主控端口 16 (O-M)和从属端口 20 (O-N)而配置的相应带宽条件和针对主控端口 16 (O-M)而配置的相应等待时间条件而提供对用于图1的总线互连12的总线互连时钟信号46的频率缩放的示范性流程图。图3A和3B中的流程图由此实施例中的控制器42执行。在此实例中,在进入频率缩放循环之前,控制器42通过针对主控端口 16 (O-M)和从属端口 20 (O-N)而配置余裕带宽寄存器以及最大等待时间和间隔计数器而配置相应带宽和等待时间条件(图3A中的方框70)。控制器42还针对总线互连12配置频率下限和频率上限(图3A中的方框70)。余裕带宽寄存器将需要在主控端口 16 (O-M)和从属端口 20(0-N)上保持为可用的多余带宽的量提供为带宽条件。多余带宽可经配置以使得存在用以检测带宽的增加以相应地调整频率的余裕。
[0034]举例来说,余裕带宽寄存器可提供一带宽条件,S卩,读取或写入数据业务在任何给定时间不应消耗主控端口总线22 (O-M)中的一者或一者以上或从属端口总线24 (O-N)中的一者或一者以上的最大带宽阈值的百分之九十(90%)带宽以上。用于每一主控端口 16(0-M)的相应最大等待时间条件可为总线互连12针对主控端口 16(0-M)与从属端口20 (O-N)之间的数据通信所必须满足的最大阈值等待时间条件。业务监视电路60 (O-M)、62 (O-N)使用间隔计数器来监视主控端口 16 (O-M)和从属端口 20 (O-N)的带宽以及主控端口 16(0-M)的等待时间。频率下限和频率上限分别提供针对总线互连12操作而指定的总线互连时钟信号46的不应违反的最小和最大频率,而不管针对主控端口 16 (O-M)和从属端口 20 (O-N)而配置的相应带宽条件和针对主控端口 16 (O-M)而配置的相应等待时间条件如何。
[0035]控制器42使用业务监视电路60 (O-M)、62 (O-N)来监视主控端口 16 (O-M)和从属端口 20 (O-N)的带宽(图3A中的方框72)。控制器42接收与在主控端口 16 (O-M)和从属端口 20 (O-N)上传送的业务相关的带宽信息。如在下文所论述,如果带宽不满足针对主控端口 16 (O-M)和从属端口 20 (O-N)而配置的相应带宽条件,那么可缩放总线互连时钟信号46的频率。举例来说,如果主控端口 16 (O-M)和从属端口 20 (O-M)的带宽小于针对所有主控端口 16 (O-M)和从属端口 20 (O-N)而配置的余裕带宽阈值(图3A中的方框74),那么降低总线互连时钟信号46的频率可为可能的。如果控制器42确定带宽等于针对主控端口16 (O-M)和从属端口 20 (O-N)而配置的余裕带宽(图3A中的方框74),那么控制器42可返回继续监视主控端口 16 (O-M)和/或从属端口 20 (O-N)(图3A中的方框72)。如果控制器42在方框72中确定带宽中的任一者大于针对主控端口 16(0-M)和从属端口 20 (O-N)而配置的余裕带宽,那么控制器42可增加总线互连时钟信号46的频率,如将在下文关于图3A中的方框86所论述。如果控制器42在图3A中的方框74中确定带宽小于针对主控端口16 (O-M)和从属端口 20(0-N)而配置的余裕带宽,那么控制器42确定主控端口 16(0_M)的等待时间是否满足针对主控端口 16 (O-M)而配置的相应等待时间条件,例如最大等待时间阈值(图3A中的方框76)。如果是,那么在新的较低频率将高于针对总线互连12而配置的频率下限的情况下,控制器42可能够降低总线互连时钟信号46的频率。在此方面,控制器42确定总线互连时钟信号46的新的较低频率是否将高于针对总线互连12而配置的频率下限(图3B中的方框78)。如果不是,那么控制器42返回监视主控端口 16 (O-M)和从属端口 20(0-N)的带宽以及主控端口 16(0-M)的等待时间(图3A中的方框72、74、76)。
[0036]如果总线互连时钟信号46的新的较低频率将高于针对总线互连12而配置的频率下限(图3B中的方框78),那么控制器42可降低总线互连时钟信号46的频率以减小电力消耗,而不会影响主控端口 16 (O-M)和从属端口 20 (O-N)的性能超过所配置的性能水平。在此实施例中,控制器42仅抑制图2中的将归因于总线互连时钟信号46的频率的缩放而需要重新配置同步模式的必要的主控端口队列30(0-M)和从属端口队列34(0-N)(图3B中的方框80)。下文论述的图6提供了归因于总线互连时钟信号46的频率的缩放而重新配置同步模式的实例。返回参考图3B,这些主控端口队列30 (O-M)和从属端口队列34 (O-N)将不处理总线事务,直到总线互连时钟信号46的频率被降低且端口时钟信号56 (O-M)、58 (O-N)可用为止(图3B中的方框80)。仅抑制必要的主控端口队列30 (O-M)和从属端口队列34 (O-N)允许其它主控端口 16 (O-M)和从属端口 20 (O-N)在总线互连时钟信号46的频率改变期间继续执行总线事务。如果可能,控制器42随后在重新同步改变之前停止必要的主控端口时钟信号56 (O-M)和从属端口时钟信号58 (O-N)(图3B中的方框81),随后减小总线互连时钟信号46的频率(图3B中的方框82)。在减小总线互连时钟信号46的频率之后,重新启动主控端口时钟信号56 (O-M)和从属端口时钟信号58 (O-N)(方框83),且不抑制主控端口队列30 (O-M)和从属端口队列34 (O-N)(方框84)。停止主控端口时钟信号56 (O-M)和从属端口时钟信号58 (O-N),虽然不要求(因为必要的主控端口队列30 (O-M)和从属端口队列34(O-N)被抑制),但可减小在重新同步的重新配置期间的电力消耗。可以按控制器42中所配置的增量来降低总线互连时钟信号46的频率。
[0037]如果根据总线互连12中所提供的配置,将违反方框74或76中的带宽条件或等待时间条件,那么可能需要增加总线互连时钟信号46的频率,如图3A中所说明。如果在频率增加之后的总线互连时钟信号46的新频率将不高于针对总线互连12而配置的频率上限(图3A中的方框86),那么控制器42可增加总线互连时钟信号46的频率。在此例子中,控制器42抑制图2中的将归因于将进行的总线互连时钟信号46的频率的增加而需要重新配置的必要的主控端口队列30 (O-M)和从属端口队列34 (O-N)(图3A中的方框88)。在此方面,这些主控端口队列30 (O-M)和从属端口队列34 (O-N)将不处理总线事务,直到总线互连时钟信号46的频率被增加且端口时钟信号56 (O-M)、58 (O-N)可用为止。再次,仅抑制必要的主控端口队列30 (O-M)和从属端口队列34 (O-N)允许其它主控端口 16 (O-M)和从属端口20 (O-N)在总线互连时钟信号46的频率改变期间继续执行总线事务。如果可能,控制器42随后停止必要的主控端口时钟信号56 (O-M)和从属端口时钟信号58 (O-N)以允许重新同步的改变(图3B中的方框89),随后增加总线互连时钟信号46的频率(图3B中的方框90)。
[0038]控制器42 (循序地或并行地)将总线互连时钟信号46的频率增加到新的较高频率(图3A中的方框90),且重新启动主控端口时钟信号56 (O-M)和从属端口时钟信号58 (O-N)(图3A中的方框91)。控制器42不抑制曾在图3A中的方框88中抑制的任何主控端口队列30 (O-M)和从属端口队列34 (O-N),以允许开始用新的较高频率下的总线互连时钟信号46进行通信(图3A中的方框92)。控制器42随后返回监视主控端口 16 (O-M)和从属端口 20 (O-N)的带宽以及主控端口 16 (O-M)的等待时间(图3A中的方框72、74、76)。
[0039]图4是在图1的总线互连12中提供的控制器42中所包含的用以确定总线互连时钟信号46的频率的缩放的示范性组件的方框图。在此方面,提供有限状态机(FSM)93,其接收与主控端口 16 (O-M)和从属端口 20 (O-N)的事务的带宽以及主控端口 16 (O-M)的等待时间相关的信息以确定总线互连时钟信号46的缩放。可用硬件、软件或两者的组合来提供FSM 93。
[0040]继续参考图4,提供最大读取等待时间寄存器94和最大与入等待时间寄存器96以配置针对主控端口 16(0-M)必须满足的等待时间条件,以便缩放总线互连时钟信号46。举例来说,所述等待时间条件可为最大等待时间阈值。在如图4中所说明的一个实例中,提供读取余裕带宽寄存器98和写入余裕带宽寄存器100以配置针对主控端口 16 (O-M)或从属端口 20(0-N)必须满足的最小余裕带宽,以便缩放总线互连时钟信号46。还提供读取业务监视器102和写入业务监视器104以确定从业务监视电路60 (O-M)或62 (O-N)接收的针对主控端口 16 (O-M)或从属端口 20 (O-N)的读取和写入等待时间和带宽信息。提供读取业务比较器106和写入业务比较器108以确定读取和写入等待时间是否分别低于最大读取和写入等待时间寄存器94、96,且读取和写入带宽是否分别在存储于读取和写入余裕带宽寄存器98、100中的带宽的界限内(即,小于或等于)。
[0041]继续参考图4,如果未满足最大读取等待时间或最大写入等待时间或未维持带宽的余裕,如由来自“或”逻辑112的输出信号110提供,那么FSM 93将寄存此条件,且将不准许降低总线互连时钟信号46的频率。作为实例,可针对最大读取等待时间寄存器94和最大写入等待时间寄存器96来配置基于绝对时间(例如,一百纳秒(IOOns))或者基于使用参考时钟信号的相对时序(作为实例)的最大等待时间阈值以作为等待时间条件。在读取余裕带宽寄存器98和/或写入余裕带宽寄存器100中配置的余裕带宽的实例可为总线互连时钟信号46的当前频率下可能的最大带宽的百分之九十(90% )。
[0042]可在本文中所描述的实施例中提供且在下文关于图5更详细地描述的另一特征是允许独立于总线互连时钟信号46对主控端口 16(0-M)和从属端口 20(0-N)中的每一者进行计时的能力。以此方式,主控端口 16 (O-M)和从属端口 20 (O-N)中的每一者可以按照同步性关系在与总线互连时钟信号46的频率不同的频率下操作,从而实现将可能具有不同带宽需要的主控装置H(O-M)与从属装置IS(O-N)互连方面的灵活性。举例来说,如图1中所说明,分别针对每一主控端口 16(0-M)和从属端口 20(0-N)提供单独的时钟改变电路52 (O-M)、54 (O-N)允许主控端口 16 (O-M)和从属端口 20 (O-N)的频率独立于总线互连时钟信号46的频率。因此,在需要时,可在所要的频率下执行总线互连时钟信号46的缩放以节省电力且减少或避免性能裕度,同时允许主控端口 16(0-M)和从属端口 20(0-N)继续在不同频率下操作。在图5中说明在与主控端口 16(0-M)不同的频率下操作的总线互连时钟信号46的实例。在此实例中,总线互连时钟信号46在100兆赫兹(MHz)下操作。用于主控端口 16(0)的主控端口时钟信号56 (O)与总线互连时钟信号46同步地操作,这意味着操作沿在相同频率下,或在此实例中是IOOMHz下相位对准。因此,主控端口接口 28(0)可被配置成与总线互连时钟信号46同步。在此方面,如所配置的主控端口接口 28(0)不引入额外的时钟信号来同步于总线互连时钟信号46以执行事务。用于主控端口 16(0)的主控端口接口 28 (O)可与总线互连时钟信号46同步地执行事务(即,以相同速度),而不需要总线互连时钟信号46的额外时钟循环来用于同步,因此不向事务添加等待时间。
[0043]在图5的实例中的用于主控端口 16(1)的主控端口时钟信号56(1)与总线互连时钟信号46上升沿同步地操作。上升沿同步意味着主控端口时钟信号56(1)的上升沿与总线互连时钟信号46的上升沿同步,但不处于与总线互连时钟信号46相同的操作频率。这在总线互连时钟信号46是主控端口时钟信号56(1)的整数倍/可除尽时发生。在此实例中,主控端口时钟信号56(1)在50MHz的频率下操作,其为总线互连时钟信号46的速度的一半。如果主控端口接口 28(1)被配置为上升沿同步,那么与异步相比,可减少等待时间。然而,如果在主控端口接口 28(1)的事务请求之后主控端口时钟信号56(1)的下一上升沿与总线互连时钟信号46的下一上升沿同步,那么可执行用于互连网络26中的主控端口接口 28(1)的事务,而不会有额外的等待时间。
[0044]在图5的实例中的用于主控端口 16⑵的主控端口时钟信号56⑵经配置以与总线互连时钟信号46异步地操作。异步意味着总线互连时钟信号46不是主控端口时钟信号56(2)的整数倍/可除尽。因此,主控端口时钟信号56 (2)与总线互连时钟信号46异步。举例来说,在此实例中,主控端口时钟信号56(2)在30MHz的频率下操作。对于异步操作,主控端口接口 28(2)的事务请求必须被总线互连时钟信号46双倍同步,这可增加大于上升沿同步性的等待时间。
[0045]如果缩放总线互连时钟信号46的频率,那么在必要时或从电力和/或性能角度来看有利时,将主控端口接口 28 (O-M)和从属端口接口 40 (O-N)重新配置为与总线互连时钟信号46的新频率兼容,从而允许与互连网络26介接。在此方面,本文中所揭示的实施例允许控制器42在总线互连时钟信号46的频率被缩放时将主控端口 16 (O-M)和从属端口20 (O-N)配置为同步或上升沿同步,从而减少等待时间。当如此配置时,可与总线互连时钟信号46的缩放成比例地缩放主控端口时钟信号56 (O-M)和从属端口时钟信号58 (O-N)的频率(如果这是可能的),而不会影响主控端口 16 (O-M)和从属端口 20 (O-N)的带宽性能超出所要的配置。因此,当总线互连时钟信号46被缩放时,可减少或避免总线互连12中的同步循环,因此减少等待时间。如果将主控端口 16(0-M)和从属端口 20(0-N)配置为同步或上升沿同步是不可能的,那么可将主控端口 16 (O-M)和从属端口 20 (O-N)配置为与总线互连时钟信号46异步。
[0046]图6是说明在总线互连时钟信号被缩放时与总线互连时钟信号同步、上升沿同步以及异步操作的端口时钟信号的示范性配置的流程图。控制器42基于配置而针对每一主控端口 16 (O-M)和从属端口 20 (O-N)来确定是否有可能将主控端口 16 (O-M)或从属端口20 (O-N)中的任一者配置为与总线互连时钟信号46的新频率同步(方框121)。如果可能,那么控制器42还可确定将分别针对此些主控端口 16 (O-M)和从属端口 20 (O-N)的主控端口时钟信号56 (O-M)或从属端口时钟信号58 (O-N)需要作出的频率改变将是否违反此些主控端口 16 (O-M)和从属端口 20 (O-N)的任何相应带宽条件(方框122)。如果不可能,那么控制器42抑制可归因于总线互连时钟信号46的频率的改变而被重新配置到同步操作的必要的主控端口队列30 (O-M)和从属端口队列34 (O-N)(方框124)。在此方面,这些主控端口队列30(0-M)和从属端口队列34(0-N)将不处理总线事务,直到这些必要的主控端口接口28 (O-M)和从属端口接口 40 (O-N)被重新配置(方框126)、总线互连时钟信号46的频率被改变(方框128),且必要的主控端口队列30 (O-M)和从属端口队列34 (O-N)不被抑制(方框129)为止。
[0047]在确定是否可针对同步操作来配置任何主控端口 16 (O-M)和从属端口 20 (O-N)之后,控制器42确定是否可针对与总线互连时钟信号46的新频率的上升沿同步操作来配置任何主控端口 16 (O-M)和从属端口 20 (O-N)(方框131)。如果是,那么控制器42确定将针对此些主控端口 16 (O-M)和从属端口 20 (O-N)的主控端口时钟信号56 (O-M)或从属端口时钟信号58 (O-N)需要作出的频率改变将是否违反此些主控端口 16 (O-M)和从属端口 20 (O-N)的任何相应带宽条件(方框132)。如果不是,那么控制器42抑制可归因于总线互连时钟信号46的频率的改变而被重新配置到上升沿同步操作的必要的主控端口队列30 (O-M)和从属端口队列34 (O-N)(方框124)。在此方面,这些主控端口队列30 (O-M)和从属端口队列34(O-N)将不处理总线事务,直到这些必要的主控端口接口 28 (O-M)和从属端口接口40 (O-N)被重新配置(方框126)、总线互连时钟信号46的频率被改变(方框128),且必要的主控端口队列30 (O-M)和从属端口队列34 (O-N)不被抑制(方框129)为止。
[0048]在确定是否可针对同步和上升沿同步操作来配置任何主控端口 16 (O-M)和从属端口 20 (O-N)之后,控制器42通过针对此些主控端口 16 (O-M)和从属端口 20 (O-N)执行方框124到130而针对异步操作来配置任何剩余的主控端口接口 28(0-M)和从属端口接口40 (O-N)(方框133)。其后,过程结束(方框130)。
[0049]应注意,虽然图6说明确定是否可以按连续方式针对同步操作和上升沿同步操作来配置主控端口 16 (O-M)和从属端口 20 (O-N),之后针对异步操作来配置任何剩余的主控端口 16 (O-M)和从属端口 20 (O-N),但不要求此处理次序。举例来说,起初可针对异步操作来配置所有主控端口 16 (O-M)和从属端口 20 (O-N),其中起初针对所有主控端口 16 (O-M)和从属端口 20(0-N)而抑制总线业务。其后,可确定是否可针对同步和上升沿同步操作来配置任何主控端口 16 (O-M)和从属端口 20 (O-N)。
[0050]此外,作为另一替代方案,控制器42可将所有主控端口接口 28 (O-M)和从属端口接口 40 (O-N)的配置改变为异步操作。如果不需要在主控端口接口 28 (O-M)和从属端口接口 40 (O-N)中提供逻辑来响应于总线互连时钟信号46的频率改变而提供同步和/或上升沿同步操作且/或改变主控端口时钟信号56 (O-M)和从属端口时钟信号58 (O-N)的频率,那么可由控制器42提供此操作。
[0051]图7是可用于缩放例如图6的方框128中所提供的端口时钟信号56 (O-M)、58 (O-N)的频率的示范性时钟改变电路52 (O-M)、54 (O-N)的方框图。在需要时,时钟改变电路52 (O-M)、54 (O-N)也可用于控制器42中以缩放总线互连时钟信号46。在此方面,时钟改变电路52 (O-M)、54 (O-N)经配置以接收时钟源信号48和总线互连时钟信号46。时钟改变电路52 (O-M)、54 (O-N)可接收另一时钟信号。多路复用器134将选择这些时钟信号中的一者以供时钟改变电路52(0-M) >54 (O-N)使用来提供端口时钟信号56 (O-M) >58 (O-N)。为了本文中的论述目的,将假定多路复用器134选择总线互连时钟信号46。将总线互连时钟信号46提供给时钟分割器135以分割且因此缩放总线互连时钟信号46以便作为端口时钟信号56 (O-M)、58 (O-N)而提供。如果时钟改变时钟启用信号(clk_chng_clk_en) 136是有效的,以启用分支单元138,那么将时钟分割器135的输出(Clk_div_srC)作为端口时钟信号56 (O-M)、58 (O-N)而提供。
[0052]可在电路或电路与软件的组合中提供的有限状态机(FSM) 140控制时钟分割器135来缩放端口时钟信号56 (O-M)、58 (O-N)的频率。FSM 140还控制时钟改变时钟启用信号136来启用将作为分支单元138的输出而提供的端口时钟信号56 (O-M) >58 (O-N)。举例来说,可能需要在对应的主控端口 16 (O-M)和/或从属端口 20 (O-N)不在使用中时停止端口时钟信号56 (O-M)、58 (O-N)以节省电力。在此方面,FSM 140去活时钟改变时钟启用信号136来停止端口时钟信号56 (O-M)、58 (O-N)。
[0053]为了控制时钟分割器135来选择端口时钟信号56 (O-M)、58 (O-N)的频率,FSM 140经配置以接收时钟改变请求信号(clk_chng_req)142、本地状态机时钟信号(sm_clk) 144以及时钟改变命令信号(clk_chng_cmd) 146上的来自控制器42的时钟改变命令以作为输入。时钟改变命令请求指示端口时钟信号56 (O-M)、58 (O-N)是否将被停止,或频率增加或减小。FSM 140可依据时钟改变确认信号(clk_chng_ack)148提供此请求的接收和完成的指示。FSM 140可经由时钟关闭状态信号(clk_off_stat)150而获得端口时钟信号56 (O-M)、58 (O-N)的状态。
[0054]当FSM 140从图1中的控制器42接收到用以增加或减小端口时钟信号56 (0_M)、58 (O-N)的频率的时钟改变请求信号(clk_chng_req) 142以及时钟改变命令信号(clk_chng_cmd) 146时,FSM 140控制时钟分割器135来改变总线互连时钟信号46的频率以产生端口时钟信号56 (O-M)、58 (O-N)。此实施例中的FSM 140将不会在新频率将变得高于频率上限或低于频率下限(如分别由频率上限和频率下限信号(div_ceiling,div_fl00r) 152,154来配置)的情况下改变端口时钟信号56 (O-M)、58 (O-N)的频率。FSM 140将以由更新信号(div_update) 156上的配置所选择的步幅来递增/递减端口时钟信号56 (O-M)、58 (O-N)的频率。如果时钟改变命令请求将停止端口时钟信号56 (O-M)、58 (O-N),那么FSM 140去活时钟改变时钟启用信号136。
[0055]图8是缩放端口时钟信号56 (O-M)、58 (O-N)和/或总线互连时钟信号46的图7的时钟改变电路的示范性时序图。如其中所说明,时钟改变请求信号(clk_chng_req) 142以及时钟改变命令信号(clk_chng_cmd) 146被控制器42断言到图7中的时钟改变电路52 (O-M)、54(O-N)。时钟改变命令提供编码以请求FSM 140减小(降,DOWN)端口时钟信号56 (O-M)、58 (O-N)的频率。作为响应,FSM 140断言时钟改变确认信号(clk_chng_ack) 148且从“稳定(STEADY) ”状态转变为“缩放(SCALE) ”状态。通过控制时钟分割器135来减小端口时钟信号56 (O-M)、58 (O-N)的频率。时钟改变确认信号(clk_chng_ack) 148保持被断言,直到频率改变请求完成为止。其后,时钟改变请求信号(clk_chng_req) 142被解除断言,且时钟改变命令信号(clk_chng_cmd) 146变为对FSM 140“随意(DON' T CARE) ”(DC)。类似地,在FSM 140返回到“稳定”状态之后,控制器42可指示时钟改变电路52 (O-M) >54 (O-N)增加(升,UP)端口时钟信号56 (O-M)、58 (O-N)的频率,如图8中所说明。时钟关闭状态信号(clk_off_stat) 150 指示端 口 时钟信号 56 (O-M)、58 (O-N)开启。
[0056]图9是停止端口时钟信号56(0_M) ,58 (O-N)的图7的时钟改变电路的示范性时序图。为了停止端口时钟信号56 (O-M)、58 (O-N),时钟改变请求信号(clk_chng_req) 142以及时钟改变命令信号(clk_chng_cmd) 146被控制器42断言到图7中的时钟改变电路52 (O-M)、54 (O-N)。时钟改变命令信号(clk_chng_cmd) 146提供编码以请求FSM 140停止(STOP)端口时钟信号56 (O-M)、58 (O-N)。作为响应,FSM 140断言时钟改变确认信号(clk_chng_ack) 148且从“稳定”状态转变为“待命(STANDBY) ”状态。通过FSM 140将时钟改变启用信号(clk_chng_clk_en) 136解除断言到图7中的分支单元138来停止端口时钟信号56 (O-M)、58 (O-N)。时钟改变确认信号(clk_chng_ack) 148保持被断言,直到解除断言停止请求为止。其后,时钟改变请求信号(clk_chng_req) 142保持被断言,且时钟改变命令信号(clk_chng_cmd) 146 变为对FSM 140“随意”(DC)。时钟关闭状态信号(clk_off_stat) 150 指示端口时钟信号56 (O-M)、58 (O-N)被停止。在时钟改变请求信号(clk_chng_req) 142被解除断言之后,可重新启动端口时钟信号56 (O-M)、58 (O-N),借此,FSM 140从“等待(WAIT)”状态转变,且接着解除断言时钟改变确认信号(clk_chng_ack) 148,且转变到“稳定”状态以等待新的命令。
[0057]支持本文中所论述的总线互连时钟频率缩放的总线互连以及相关装置、系统和方法以及计算机可读媒体可用于任何电路或系统中,包含(但不限于)同步数字电路、CPU系统以及存储电路或系统。存储电路或系统可为任何类型的存储器。实例包含(不限制)静态随机存取存储器(RAM) (SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、数据双倍速率(DDR)SDRAM、数据双倍速率二(DDR2) SDRAM、数据双倍速率三(DDR3) SDRAM、移动DDR(MDDR)SDRAM、低功率(LP)DDR SDRAM以及LP DDR2 SDRAM。这些形式的存储器还可为含有能够确定如本文中所论述的计时存储元件的模型输出延迟的软件指令的计算机可读媒体。
[0058]支持本文中所论述的总线互连时钟频率缩放的总线互连以及相关装置、系统和方法以及计算机可读媒体可包含或集成于半导体裸片、集成电路和/或装置(包含电子装置和/或基于处理器的装置或系统)中。在这些方面,此些装置的实例包含(不限制)机顶盒、娱乐单元、导航装置、通信装置、个人数字助理(PDA)、固定位置数据单元、移动位置数据单元、移动电话、蜂窝式电话、计算机、便携式计算机、桌上型计算机、监视器、计算机监视器、电视机、调谐器、无线电、卫星无线电、音乐播放器、数字音乐播放器、便携式音乐播放器、视频播放器、数字视频播放器、数字视频光盘(DVD)播放器,以及便携式数字视频播放器。
[0059]在此方面,图10说明可包含于电子装置中的基于处理器的系统160,所述电子装置可包含本文中所揭示的总线互连。基于处理器的系统160包含计时存储元件,可使用本文中所提供的时序模型和模型输出延迟确定实施例来模型化所述计时存储元件。而且,基于处理器的系统160可执行针对其它电路执行时序模型化和模型输出延迟确定的软件指令。可将所述软件指令提供于计算机可读媒体中。基于处理器的系统160可包含于电子装置162中,包含先前在上文所引用的电子装置中的任一者。在此实例中,基于处理器的系统160包含CPU 164,CPU 164包含处理器166和集成的高速缓冲存储器系统168。高速缓冲存储器系统168包含高速缓冲存储器管理单元170,高速缓冲存储器管理单元170控制对可由处理器166存取的高速缓冲存储器172的存取,以针对频繁存取的数据对临时存储装置进行快速存取。CPU 164耦合到系统总线174,系统总线174将包含于基于处理器的系统160中的其它装置互连。如众所周知的,CPU 164通过在系统总线174上交换地址、控制和数据信息来与这些其它装置通信。这些装置可包含任何类型的装置。如图10中所说明,这些装置可包含(作为实例)系统存储器176、一个或一个以上输入装置178、一个或一个以上输出装置180、网络接口装置182,以及显示控制器184。系统存储器176是计算机可读媒体的一个实例。
[0060]一个或一个以上输入装置178可包含任何类型的输入装置,包含(但不限于)输入键、开关、话音处理器、存储器驱动器、磁盘、压缩光盘(CD)、数字视频光盘(DVD)等。这些输入装置178还可为含有软件指令的计算机可读媒体。一个或一个以上输出装置180可包含任何类型的输出装置,包含(但不限于)音频、视频、其它视觉指示符等。网络接口装置182可为经配置以允许经由有线连接或经由天线187无线地交换去往和来自网络186的数据的任何装置。网络186可为任何类型的网络,包含(但不限于)有线或无线网络、专用或公共网络、局域网(LAN)、广域网(WLAN)、因特网、第三代(3G)网络,以及第四代(4G)网络的实例。网络接口装置182可支持任何类型的所要的通信协议。
[0061]CPU 164还可经由系统总线174存取系统存储器176。系统存储器176可包含先前在上文所描述的用以存取系统存储器176的电路和方法。系统存储器176可包含静态存储器和/或动态存储器。系统存储器176可包含用于CPU 164的程序存储装置188和数据存储装置190。CPU 164还可经由系统总线174存取显示控制器184以控制发送到显示器192的信息。显示控制器184可包含存储器控制器194和存储器196以存储将响应于与CPU164的通信而被发送到显示器192的数据。显示控制器184将信息发送到显示器192以经由视频处理器198进行显示,视频处理器198处理所述信息以显示为适合于显示器192的格式。显示器192可包含任何类型的显示器,包含(但不限于)阴极射线管(CRT)、液晶显示器(IXD)、等离子体显示器等。
[0062]所属领域的技术人员将进一步了解,结合本文中所揭示的实施例而描述的各种说明性逻辑块、模块、电路和算法可实施为电子硬件、存储于存储器中或另一计算机可读媒体中且由处理器或其它处理装置执行的指令,或两者的组合。为清楚说明此互换性,上文已大体上关于其功能性而描述了各种说明性组件、块、模块、电路及步骤。如何实施所述功能性取决于特定应用、设计选择和/或强加于整个系统的设计约束。所属领域的技术人员可针对每一特定应用以不同方式来实施所描述的功能性,但此些实施决策不应被解释为会导致脱离本发明的范围。
[0063]可使用处理器、DSP、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件,或其经设计以执行本文中所描述的功能的任何组合来实施或执行结合本文中所揭示的实施例而描述的各种说明性逻辑块、模块和电路。处理器可以是微处理器,但在替代方案中,处理器可以是任何常规处理器、控制器、微控制器或状态机。处理器还可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器、一个或一个以上微处理器与DSP核心的联合,或任何其它此类配置。
[0064]本文中所揭示的实施例可用硬件以及存储于存储器中的指令来体现,且可例如驻存在随机存取存储器(RAM)、快闪存储器、只读存储器(ROM)、电可编程ROM (EPROM)、电可擦除可编程ROM(EEPROM)、寄存器、硬盘、可装卸磁盘、CD-ROM或此项技术中已知的任何其它形式的计算机可读媒体中。将示范性存储媒体耦合到处理器,使得处理器可从存储媒体读取信息及将信息写入到存储媒体。在替代方案中,存储媒体可与处理器成一体式。处理器和存储媒体可驻存于ASIC中。ASIC可驻存于远程站中。在替代方案中,处理器和存储媒体可作为离散组件驻存在远程站、基站或服务器中。本文中被称作“信号”的任何元件还可为电路线或迹线,或其它通信线,且提供于电路线或迹线,或其它通信线上。
[0065]还应注意,描述在本文中的示范性实施例中的任一者中所描述的操作步骤以提供实例和论述。所描述的操作可以按不同于所说明的顺序的众多不同顺序来执行。此外,在单个操作步骤中所描述的操作可实际上在许多不同步骤中来执行。另外,可将在示范性实施例中所论述的一个或一个以上操作步骤进行组合。将理解,流程图中所说明的操作步骤可经受众多不同修改,如所属领域的技术人员将容易明白的。所属领域的技术人员还将了解,可使用多种不同技术和技艺中的任一者来表示信息和信号。举例来说,可由电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示贯穿以上描述所参考的数据、指令、命令、信息、信号、位、符号及码片。
[0066]提供本发明的先前描述以使所属领域的技术人员能够制作或使用本发明。所属领域的技术人员将容易明白对本发明的各种修改,且本文中界定的一般原理可应用于其它变化而不背离本发明的精神或范围。因此,不希望本发明受限于本文中描述的实例和设计,而是将赋予本发明与本文中揭示的原理和新颖特征相一致的最广范围。
【权利要求】
1.一种总线互连,其包括: 互连网络,其可配置以将多个主控端口中的至少一个主控端口连接到至少一个从属端口 ;以及 控制器,其经配置以产生总线互连时钟信号以对所述互连网络进行计时; 其中所述控制器经配置以: 接收与在所述至少一个主控端口上传送的业务相关的至少一个第一带宽信息; 接收与在所述至少一个从属端口上传送的业务相关的至少一个第二带宽信息;以及 响应于以下各者中的至少一者而缩放所述总线互连时钟信号的频率: (a)所述至少一个第一带宽信息满足相应的至少一个第一带宽条件;以及 (b)所述至少一个第二带宽信息满足相应的至少一个第二带宽条件。
2.根据权利要求1所述的总线互连,其中所述控制器经配置以响应于所述至少一个第一带宽信息满足所述相应的至少一个第一带宽条件且所述至少一个第二带宽信息满足所述相应的至少一个第二带宽条件而减小所述总线互连时钟信号的所述频率。
3.根据权利要求2所述的总线互连,其中所述控制器经配置以响应于所述至少一个第一带宽信息小于至少一个第一余裕带宽阈值且所述至少一个第二带宽信息小于至少一个第二余裕带宽阈值而减小所述总线互连时钟信号的所述频率。
4.根据权利要求2所述的总线互连,其中所述控制器进一步经配置以响应于以下各者而减小所述总线互连时钟信号的所述频率:所有所述多个主控端口的所述至少一个第一带宽信息满足所述相应的至少一 个第一带宽条件,且所有所述多个从属端口的所述至少一个第二带宽信息满足所述相应的至少一个第二带宽条件。
5.根据权利要求1所述的总线互连,其中所述控制器经配置以响应于所述至少一个第一带宽信息不满足所述相应的至少一个第一带宽条件或所述至少一个第二带宽信息不满足所述相应的至少一个第二带宽条件而增加所述总线互连时钟信号的所述频率。
6.根据权利要求5所述的总线互连,其中所述控制器经配置以响应于所述相应的至少一个第一带宽信息大于相应的至少一个第一余裕带宽阈值或所述相应的至少一个第二带宽信息大于相应的至少一个第二余裕带宽而增加所述总线互连时钟信号的所述频率。
7.根据权利要求1所述的总线互连,其中所述相应的至少一个第一带宽条件包括相应的第一读取余裕带宽条件和相应的第一写入余裕带宽条件。
8.根据权利要求1所述的总线互连,其中所述控制器进一步经配置以: 接收与在所述至少一个主控端口上传送的业务相关的至少一个等待时间信息;以及 响应于所述等待时间信息中的所述至少一者满足相应的等待时间条件而额外地缩放所述总线互连时钟信号的所述频率。
9.根据权利要求8所述的总线互连,其中所述控制器经配置以响应于所述至少一个等待时间信息满足所述相应的等待时间条件而额外地减小所述总线互连时钟信号的所述频率。
10.根据权利要求9所述的总线互连,其中所述控制器经配置以响应于所述相应的至少一个等待时间信息小于相应的至少一个最大等待时间阈值而额外地减小所述总线互连时钟信号的所述频率。
11.根据权利要求9所述的总线互连,其中所述控制器进一步经配置以响应于所有所述多个主控端口的所述至少一个等待时间信息满足所述相应的等待时间条件而额外地减小所述总线互连时钟信号的所述频率。
12.根据权利要求8所述的总线互连,其中所述相应的等待时间条件包括最大读取等待时间阈值和最大写入等待时间阈值。
13.根据权利要求1所述的总线互连,其进一步包括: 至少一个主控端口时钟产生器,其经配置以产生至少一个主控端口时钟信号以对所述至少一个主控端口进行计时;以及 至少一个从属端口时钟产生器,其经配置以产生至少一个从属端口时钟信号以对所述至少一个从属端口进行计时。
14.根据权利要求13所述的总线互连,其中所述控制器进一步经配置以将所述至少一个主控端口时钟信号和所述至少一个从属端口时钟信号中的一者或一者以上配置为与所述总线互连时钟信号同步。
15.根据权利要求13所述的总线互连,其中所述控制器进一步经配置以将所述至少一个主控端口时钟信号和所述至少一个从属端口时钟信号中的一者或一者以上配置为与所述总线互连时钟信号上升沿同步。
16.根据权利要求13所述的总线互连,其中所述控制器进一步经配置以将所述至少一个主控端口时钟信号和所述至少一个从属端口时钟信号中的一者或一者以上配置为与所述总线互连时钟信号异步。
17.根据权利要求13 所述的总线互连,其中所述至少一个主控端口时钟产生器和所述至少一个从属端口时钟产生器中的至少一者是所述控制器。
18.根据权利要求13所述的总线互连,其中所述至少一个主控端口时钟信号和所述至少一个从属端口时钟信号是从所述总线互连时钟信号产生的。
19.根据权利要求13所述的总线互连,其中所述控制器进一步经配置以针对将在缩放所述总线互连时钟信号的所述频率之前重新配置的所述至少一个主控端口和所述至少一个从属端口中的一者或一者以上而停止所述至少一个主控端口时钟产生器和所述至少一个从属端口时钟产生器中的一者或一者以上。
20.根据权利要求1所述的总线互连,其被集成在至少一个半导体裸片中。
21.根据权利要求1所述的总线互连,其进一步包括选自由以下各者组成的群组的装置:机顶盒、娱乐单元、导航装置、通信装置、个人数字助理PDA、固定位置数据单元、移动位置数据单元、移动电话、蜂窝式电话、计算机、便携式计算机、桌上型计算机、监视器、计算机监视器、电视机、调谐器、无线电、卫星无线电、音乐播放器、数字音乐播放器、便携式音乐播放器、视频播放器、数字视频播放器、数字视频光盘DVD播放器,以及便携式数字视频播放器,所述总线互连被集成到所述装置中。
22.—种总线互连,其包括: 互连网络,其可配置以将多个主控端口中的至少一个主控端口连接到至少一个从属端口 ;以及 控制器,其经配置以产生总线互连时钟信号以对所述互连网络进行计时; 其中所述控制器经配置以: 接收与在所述至少一个主控端口上传送的业务相关的至少一个第一带宽信息;接收与在所述至少一个从属端口上传送的业务相关的至少一个第二带宽信息; 接收与在所述至少一个主控端口上传送的业务相关的至少一个等待时间信息;以及 响应于以下各者而增加所述总线互连时钟信号的频率: (a)所述至少一个第一带宽信息不满足相应的至少一个第一带宽条件;或 (b)所述至少一个第二带宽信息不满足相应的至少一个第二带宽条件;或 (C)所述至少一个等待时间信息满足相应的等待时间条件。
23.根据权利要求22所述的总线互连,其中所述至少一个第一带宽信息包括至少一个第一余裕带宽阈值,且所述至少一个第二带宽信息包括至少一个第二余裕带宽阈值。
24.根据权利要求22所述的总线互连,其中所述至少一个等待时间信息包括至少一个最大等待时间阈值。
25.一种总线互连,其包括: 互连网络,其可配置以将多个主控端口中的至少一个主控端口连接到至少一个从属端口 ;以及 控制器,其经配置以产生总线互连时钟信号以对所述互连网络进行计时; 其中所述控制器经配置以: 接收与在所述至少一个主控端口上传送的业务相关的至少一个第一带宽信息; 接收与在所述至少一个从属端口上传送的业务相关的至少一个第二带宽信息; 接收与在所述至少一个主控端口上传送的业务相关的至少一个等待时间信息;以及 响应于以下各者而减小所述总线互连时钟信号的频率: (a)所述至少一个第一带宽信息不满足相应的至少一个第一带宽条件;以及 (b)所述至少一个第二带宽信息不满足相应的至少一个第二带宽条件;且 (C)所述至少一个等待时间信息满足相应的等待时间条件。
26.根据权利要求25所述的总线互连,其中所述至少一个第一带宽信息包括至少一个第一余裕带宽阈值,且所述至少一个第二带宽信息包括至少一个第二余裕带宽阈值。
27.根据权利要求26所述的总线互连,其中所述至少一个等待时间信息包括至少一个最大等待时间阈值。
28.一种总线互连,其包括: 互连网络装置,其用于将多个主控端口中的至少一个主控端口连接到至少一个从属端口 ;以及 控制器装置,其用于通过以下各者而产生总线互连时钟信号以对所述互连网络进行计时: 接收与在所述至少一个主控端口上传送的业务相关的至少一个第一带宽信息; 接收与在所述至少一个从属端口上传送的业务相关的至少一个第二带宽信息;以及 响应于以下各者中的至少一者而缩放所述总线互连时钟信号的所述频率: (a)所述第一带宽信息中的所述至少一者满足相应的至少一个第一带宽条件;以及 (b)所述第二带宽信息中的所述至少一者满足相应的至少一个第二带宽条件。
29.—种缩放用于总线互连的总线互连时钟信号的方法,其包括: 接收与在连接到互连网络的多个主控端口中的至少一个主控端口上传送的业务相关的至少一个第一带宽信息,所述互连网络经配置以将所述至少一个主控端口连接到至少一个从属端口; 接收与在所述至少一个从属端口上传送的业务相关的至少一个第二带宽信息;以及响应于以下各者中的至少一者而缩放对所述互连网络进行计时的所述总线互连时钟信号的频率: (a)所述至少一个第一带宽信息满足相应的至少一个第一带宽条件;以及 (b)所述至少一个第二带宽信息满足相应的至少一个第二带宽条件。
30.根据权利要求29所述的方法,其中所述缩放包括响应于所述至少一个第一带宽信息满足所述相应的至少一个第一带宽条件且所述至少一个第二带宽信息满足所述相应的至少一个第二带宽条件而减小所述总线互连时钟信号的所述频率。
31.根据权利要求30所述的方法,其进一步包括响应于以下各者而减小所述总线互连时钟信号的所述频率:所有所述多个主控端口的所述至少一个第一带宽信息满足所述相应的至少一个第一带宽条件,且所有所述多个从属端口的所述至少一个第二带宽信息满足所述相应的至少一个第二带宽。
32.根据权利要求29所述的方法,其中所述缩放包括响应于所述至少一个第一带宽信息不满足所述相应的至少一个第一带宽条件或所述至少一个第二带宽信息不满足所述相应的至少一个第二带宽条件而增加所述总线互连时钟信号的所述频率。
33.根据权利要求29所述的方法,其进一步包括: 接收与在所述至少一个主控端口上传送的业务相关的至少一个等待时间信息;以及响应于所述等待时间信息中的所述 至少一者满足相应的等待时间条件而额外地缩放所述总线互连时钟信号的所述频率。
34.根据权利要求33所述的方法,其中所述缩放包括响应于所述至少一个等待时间信息满足所述相应的等待时间条件而额外地减小所述总线互连时钟信号的所述频率。
35.根据权利要求29所述的方法,其进一步包括: 产生至少一个主控端口时钟信号以对所述至少一个主控端口进行计时;以及 产生至少一个从属端口时钟信号以对所述至少一个从属端口进行计时。
36.根据权利要求35所述的方法,其进一步包括将所述至少一个主控端口时钟信号和所述至少一个从属端口时钟信号中的一者或一者以上配置为与所述总线互连时钟信号同止/J/ O
37.根据权利要求35所述的方法,其进一步包括将所述至少一个主控端口时钟信号和所述至少一个从属端口时钟信号中的一者或一者以上配置为与所述总线互连时钟信号上升沿同步。
38.根据权利要求35所述的方法,其进一步包括将所述至少一个主控端口时钟信号和所述至少一个从属端口时钟信号中的一者或一者以上配置为与所述总线互连时钟信号异止/J/ O
39.根据权利要求29所述的方法,其进一步包括针对将在缩放所述总线互连时钟信号的所述频率之前重新配置的所述至少一个主控端口和所述至少一个从属端口中的一者或一者以上而停止所述至少一个主控端口时钟产生器和所述至少一个从属端口时钟产生器中的一者或一者以上。
40.一种计算机可读媒体,其具有存储于其上的计算机可执行指令以致使包括可配置以将多个主控端口中的至少一个主控端口连接到至少一个从属端口的互连网络的总线互连响应于以下各者中的至少一者而缩放由控制器产生且经配置以对所述互连网络进行计时的总线互连时钟信号的频率:(a)与在所述至少一个主控端口上传送的业务相关的至少一个第一带宽信息满足相应的至少一个第一带宽条件;以及(b)与在所述至少一个从属端口上传送的业务相关的至少一个第二带宽信息满足相应的至少一个第二带宽条件。
41.根据权利要求40所述的计算机可读媒体,其中所述计算机可执行指令进一步致使所述控制器响应于所述至少一个第一带宽信息满足所述相应的至少一个第一带宽条件且所述至少一个第二带宽信息满足所述相应的至少一个第二带宽条件而减小所述总线互连时钟信号的所述频率。
42.根据权利要求40所述的计算机可读媒体,其中所述计算机可执行指令进一步致使所述控制器响应于所述至少一个第一带宽信息不满足所述相应的至少一个第一带宽条件或所述至少一个第二带宽信息不满足所述相应的至少一个第二带宽条件而增加所述总线互连时钟信号的所述频率。
43.根据权利要求40所述的计算机可读媒体,其中所述计算机可执行指令进一步致使所述控制器: 接收与在所述至少一个主控端口上传送的业务相关的至少一个等待时间信息;以及 响应于所述等待时间信息中的所述至少一者满足相应的等待时间条件而额外地缩放所述总线互连时钟信号的所述频率。
44.根据权利要求40所述的计算机可读媒体,其中所述控制器进一步经配置以将至少一个主控端口时钟信号和至少一个从属端口时钟信号中的至少一者配置为与所述总线互连时钟信号同步。
45.根据权利要求40 所述的计算机可读媒体,其中所述控制器进一步经配置以:将经配置以产生至少一个主控端口接口时钟信号以对所述至少一个主控端口进行计时的至少一个主控端口时钟产生器和经配置以产生至少一个从属端口时钟信号以对所述至少一个从属端口进行计时的至少一个从属端口时钟产生器中的至少一者配置为与所述总线互连时钟信号异步。
46.根据权利要求40所述的计算机可读媒体,其中所述控制器进一步经配置以:将经配置以产生至少一个主控端口时钟信号以对所述至少一个主控端口进行计时的至少一个主控端口时钟产生器和经配置以产生至少一个从属端口时钟信号以对所述至少一个从属端口进行计时的至少一个从属端口时钟产生器中的至少一者配置为与所述总线互连时钟信号上升沿同步。
【文档编号】G06F1/04GK103477334SQ201280014553
【公开日】2013年12月25日 申请日期:2012年1月30日 优先权日:2011年1月28日
【发明者】理查德·杰拉尔德·霍夫曼, 贾亚·普拉喀什·苏布拉马尼亚姆·贾纳桑, 布兰登·韦恩·刘易斯 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1