芯片上系统集成电路、电子系统及在其内传送数据的方法转让专利

申请号 : CN200680009670.3

文献号 : CN100595744C

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : J·普拉喀什·苏布拉马尼亚姆·贾纳桑佩里·威尔曼·小雷马克吕斯

申请人 : 高通股份有限公司

摘要 :

一种芯片上系统(SoC)集成电路(IC)减少了总线争用并改进了总线利用率。所述SoC IC包含开关矩阵型总线控制器。与所述总线控制器互连的主设备发布对数据的请求并响应于所述请求而接收请求的数据。与所述总线控制器互连的从设备接收所述对数据的请求并将所述请求的数据提供给所述请求主设备。由所述总线控制器发布的控制信号向每个从设备指示哪些主设备未准备就绪从所述从设备处接收其请求的数据。所述从设备延迟对任何未对所述请求的数据准备就绪的主机传送数据,并将数据提供给准备就绪从所述从设备处接收其请求的数据的不同主设备。

权利要求 :

1.一种芯片上系统集成电路,其包括:

总线控制器;

复数个从设备,所述复数个从设备经由各自的从设备总线与所述总线控制器互 连;

复数个主设备,所述复数个主设备经由各自的主设备数据总线与所述总线控制器 互连,所述复数个主设备的第一者经配置以对所述复数个从设备的第一者和所述复 数个从设备的第二者发布请求,所述复数个主设备的第二者经配置以对所述复数个 从设备的所述第一者发布请求,其中所述复数个从设备的所述第一和第二者接收对 数据的请求,且响应于所述复数个主设备的所述第一者发布的请求而同时提供所请 求的数据;

其中所述总线控制器发布控制信号,以向每个从设备指明所述复数个主设备的所 述第一者从该从设备接收所请求数据的准备情况,所述复数个从设备的所述第二者 发送所请求的数据到所述复数个主设备的所述第一者,引起所述复数个从设备的所 述第一者发送所述复数个主设备的所述第二者所请求的数据到所述复数个主设备 的所述第二者,而不需要停下来等待所述复数个主设备的所述第一者变为准备就 绪。

2.根据权利要求1所述的芯片上系统集成电路,其中所述控制信号向所述复数个从设 备指示所述复数个主设备的哪一个或哪几个未准备就绪接收请求的数据。

3.根据权利要求2所述的芯片上系统集成电路,其中所述控制信号进一步向所述复数 个从设备指示哪一个或哪几个主设备准备就绪接收请求的数据。

4.根据权利要求2所述的芯片上系统集成电路,其中当所述控制信号的第一控制信号 指示所述复数个主设备的所述第一者未准备就绪接收第一数据时,所述复数个从设 备的所述第一者延迟对所述复数个主设备的所述第一者请求的所述第一数据的传 送。

5.根据权利要求4所述的芯片上系统集成电路,其中所述第一控制信号进一步指示所 述复数个主设备的所述第二者准备就绪从所述复数个从设备的所述第一者接收由 其请求的第二数据,所述复数个从设备的所述第一者响应于所述第一控制信号将所 述第二数据传送到所述复数个主设备的所述第二者。

6.根据权利要求2所述的芯片上系统集成电路,所述从设备中的每一者均包含各自的 缓冲器,当相应的控制信号向特定从设备指明请求的主设备未准备就绪接收请求的 数据时,所述请求主设备从所述特定从设备请求的所述数据被保留在所述特定从设 备的缓冲器中,所述请求的数据被保留在所述特定从设备的缓冲器中,直到所述相 应的控制信号向所述特定从设备指示所述主设备准备就绪从所述特定从设备接收 所述请求的数据为止。

7.一种电子系统,其包括:

总线控制器;

复数个从设备,所述复数个从设备经由从设备总线与所述总线控制器互连;

复数个主设备,所述复数个主设备经由主设备数据总线与所述总线控制器互连, 所述复数个主设备的第一者经配置以对所述复数个从设备的第一者和所述复数个 从设备的第二者发布请求,所述复数个主设备的第二者经配置以对所述复数个从设 备的所述第一者发布请求,其中所述复数个从设备的所述第一和第二者经配置以接 收对数据的请求,且响应于所述复数个主设备的所述第一者发布的请求而同时提供 所请求的数据;

其中所述总线控制器对所述复数个从设备发布控制信号,所述控制信号向所述从 设备指示所述复数个主设备接收所请求数据的准备情况,所述复数个从设备的所述 第二者发送所请求的数据到所述复数个主设备的所述第一者,引起所述复数个从设 备的所述第一者发送所述复数个主设备的所述第二者所请求的数据到所述复数个 主设备的所述第二者,而不需要停下来等待所述复数个主设备的所述第一者变为准 备就绪。

8.根据权利要求7所述的电子系统,其中所述控制信号向所述复数个从设备指示所述 复数个主设备的哪一个或哪几个未准备就绪接收请求的数据。

9.根据权利要求8所述的电子系统,其中所述控制信号向所述复数个从设备指示所述 复数个主设备的哪一个或哪几个准备就绪接收请求的数据。

10.根据权利要求8所述的电子系统,其中当所述控制信号的第一控制信号指示所述复 数个主设备的所述第一者未准备就绪接收第一数据时,所述复数个从设备的所述第 一者延迟对所述复数个主设备的所述第一者请求的所述第一数据的传送。

11.根据权利要求10所述的电子系统,其中所述第一控制信号进一步指示所述复数个 主设备的所述第二者准备就绪从所述复数个从设备的所述第一者接收由其请求的 第二数据,所述复数个从设备的所述第一者响应于所述第一控制信号将所述第二数 据传送到所述复数个主设备的所述第二者。

12.根据权利要求8所述的电子系统,所述从设备中的每一者均包含各自的缓冲器,当 相应的控制信号向特定从设备指明请求的主设备未准备就绪接收请求的数据时,所 述请求主设备从所述特定从设备请求的所述数据被保留在所述特定从设备的缓冲 器中,所述请求的数据被保留在所述特定从设备的缓冲器中,直到所述相应的控制 信号向所述特定从设备指示所述主设备准备就绪从所述特定从设备接收所述请求 的数据为止。

13.一种芯片上系统集成电路,其包括:

衬底;

总线控制器,其设置在所述衬底上;

设置在所述衬底上的复数个从设备,所述复数个从设备经由同样设置在所述衬底 上的各自从设备数据总线与所述总线控制器互连,设置在所述衬底上的复数个主设备,所述复数个主设备经由同样设置在所述衬底 上的各自主设备数据总线与所述总线控制器互连,所述复数个主设备的第一者经配 置以对所述复数个从设备的第一者和所述复数个从设备的第二者发布对数据的请 求,所述复数个主设备的第二者经配置以对所述复数个从设备的所述第一者发布请 求;

所述复数个从设备经配置以接收对数据的请求且提供所请求的数据;

其中所述总线控制器对所述从设备发布控制信号,所述控制信号向所述从设备指 示所述复数个主设备的所述第一者接收所请求数据的准备情况,所述复数个从设备 的所述第二者发送所请求的数据到所述复数个主设备的所述第一者,引起所述复数 个从设备的所述第一者发送所述复数个主设备的所述第二者请求的数据到所述复 数个主设备的所述第二者,而不需要停下来等待所述复数个主设备的所述第一者变 为准备就绪。

14.根据权利要求13所述的芯片上系统集成电路,其中所述控制信号向所述复数个从 设备指示所述复数个主设备的那一个或那几个未准备就绪接收请求的数据。

15.根据权利要求14所述的芯片上系统集成电路,其中所述控制信号向所述复数个从 设备指示哪一个或哪几个主设备准备就绪接收请求的数据。

16.根据权利要求13所述的芯片上系统集成电路,其中当所述控制信号的第一控制信 号指示所述复数个主设备的所述第一者未准备就绪接收第一数据时,所述复数个从 设备的所述第一者延迟对所述复数个主设备的所述第一者请求的所述第一数据的 传送。

17.根据权利要求13所述的芯片上系统集成电路,其中所述第一控制信号进一步指示 所述复数个主设备的所述第二者准备就绪从所述复数个从设备的所述第一者接收 由其请求的第二数据,所述复数个从设备的所述第一者响应于所述第一控制信号将 所述第二数据传送到所述复数个主设备的所述第二者。

18.根据权利要求13所述的芯片上系统集成电路,所述从设备中的每一者均包含各自 的缓冲器,当相应的控制信号向特定从设备指明请求的主设备未准备就绪接收请求 的数据时,所述请求主设备从所述特定从设备请求的所述数据被保留在所述特定从 设备的缓冲器中,所述请求的数据被保留在所述特定从设备的缓冲器中,直到所述 相应的控制信号向所述特定从设备指示所述主设备准备就绪从所述特定从设备接 收所述请求的数据为止。

19.一种在电子系统内传送数据的方法,其包括:

发布请求,以请求复数个从设备向第一主设备提供请求的数据;

发布从第二主设备到所述复数个从设备的第一者的请求,以将请求的数据提供到 所述第二主设备;

向所述复数个从设备的所述第一者指明何时所述第一主设备未准备就绪从所述 复数个从设备的所述第一者接收其已请求的数据;以及延迟从所述复数个从设备的所述第一者到所述第一主设备的数据传送;以及

不需要停下来等待所述第一主设备变为准备就绪,而从所述复数个从设备的所述 第一者传送数据到所述第二主设备。

20.根据权利要求19所述的传送数据的方法,其中所述指明步骤包括向所述复数个从 设备中的每一者发布控制信号,所述控制信号指示所述第一或第二主设备是否准备 就绪从所述复数个从设备接收数据。

说明书 :

技术领域

所涉及的技术领域大体上为芯片上系统(SoC)集成电路(IC)。更确切地说,所涉 及的技术领域为一种用于在SoC IC内改进总线利用率的方法。

背景技术

术语芯片上系统(SoC)IC用来指代所有所要和/或必要功能均集成到并制造在单个 管芯或衬底上的系统。由此,SoC IC大体上包含各种电路系统功能块,例如,举例来说 微处理器、数字信号处理器、存储器阵列、缓冲器等。此种电路系统功能块有时称为核 心。所述核心中每一者均电连接到SoC IC内的系统总线,其通过所述系统总线与彼此且 与其它任何连接到所述总线的装置交换数据。
更确切地说,在SoC IC内,发布存取(向其写入数据或从其读取数据)另一核心的 请求的核心具有各种名称:起始核心、起始器或总线主设备(master)。起始器或主设备 想要存取的核心(即,接收写入数据或提供读取数据的核心)称为目标或从设备(slave)。 为了避免总线争用(其是在两个或两个以上核心试图在总线上放置数据或从总线检索数 据时发生的冲突),在SoC IC内并入总线控制器。
总线控制器通常包含仲裁器,所述仲裁器选择在任何给定时间准许哪个主设备存取 从设备。因此,通过确保在任何给定存取或数据传送循环内仅有一个主设备存取给定从 设备,可避免总线争用和总线上的数据冲突。这种方法向主设备提供对从设备的循序存 取,即,主设备轮流存取从设备。此种循序存取相对缓慢且低效,并且可对系统性能造 成负面影响。
有时使用开关矩阵型总线控制器来提高总线利用率并藉此改进系统性能。每个从设 备和每个主设备均通过相应的主设备或从设备总线线路连接到开关矩阵总线控制器。因 此,开关矩阵向主设备提供对从设备的并行存取,即,不同主设备可同时存取相应的和 不同的从设备,反之亦然。然而,通过使用开关矩阵型总线控制器并不能完全避免总线 争用。当(例如)一个主设备试图存取两个或两个以上从设备时,可能会在SoC IC中发 生总线争用和/或数据冲突。由于每个主设备通过单个相应的总线线路连接到开关矩阵, 所以当两个或两个以上从设备同时准备向单个请求主设备返回数据和/或响应单个请求 主设备的请求时,可能会发生数据冲突。此外,进行一序列请求的主设备可能要求以与 进行请求的次序相同的次序返回响应或完成。
为了避免数据冲突,并且为了确保对主设备请求的完成次序,开关矩阵通常包含用 于延迟或路由请求的逻辑和/或用于存储数据或响应的请求队列或缓冲器。路由逻辑通过 阻挡或延迟其它所有响应直到先前响应成功完成为止而确保仅在总线上放置单个一组数 据。响应队列或缓冲器可存储来自主设备的多个请求(通常以先进先出的方式),并且通 过在队列中保持数据直到总线准备好接收数据且从设备准备好将数据传递到总线或主设 备准备好接收数据为止,来避免数据冲突。响应队列也可为较新请求保持响应或数据, 同时等待另一从设备对于较旧请求完成响应或返回数据,以便维持主设备的请求的程序 次序。
然而,将一个或一个以上待决请求延迟或排队直到先前请求成功完成为止会浪费总 线容量,尤其是当由于从设备尚未准备就绪将请求的数据放置在总线上或主设备尚未准 备就绪从总线接收数据的缘故而使先前请求完成延迟时。在此种情形下,总线并非正用 于传送数据而是在等待传送数据。换句话说,在此类情形下,总线并不是瓶颈。因此, 在所述过渡期间,总线可更加有效地用于传送可用的且准备就绪以待处理的数据,而不 是在系统等待其它核心完成先前请求或数据传送时处于空闲状态。
因此,所属领域中需要一种用于在芯片上系统集成电路内改进总线利用率的方法和 设备。

发明内容

提供一种具有改进的总线利用率和更加有效的数据传送的芯片上系统(SoC)集成电 路(IC)。还提供一种用于改进总线利用率和数据传送的方法。
根据本发明的其中一方面,一种芯片上系统集成电路,其包括:总线控制器;复数 个从设备,所述复数个从设备经由各自的从设备总线与所述总线控制器互连;复数个主 设备,所述复数个主设备经由各自的主设备数据总线与所述总线控制器互连,所述复数 个主设备的第一者经配置以对所述复数个从设备的第一者和所述复数个从设备的第二者 发布请求,所述复数个主设备的第二者经配置以对所述复数个从设备的所述第一者发布 请求,其中所述复数个从设备的所述第一和第二者接收对数据的请求,且响应于所述复 数个主设备的所述第一者发布的请求而同时提供所请求的数据;其中所述总线控制器发 布控制信号,以向每个从设备指明所述复数个主设备的所述第一者从该从设备接收所请 求数据的准备情况,所述复数个从设备的所述第二者发送所请求的数据到所述复数个主 设备的所述第一者,引起所述复数个从设备的所述第一者发送所述复数个主设备的所述 第二者所请求的数据到所述复数个主设备的所述第二者,而不需要停下来等待所述复数 个主设备的所述第一者变为准备就绪。
根据本发明的其中一方面,一种电子系统,其包括:总线控制器;复数个从设备, 所述复数个从设备经由从设备总线与所述总线控制器互连;复数个主设备,所述复数个 主设备经由主设备数据总线与所述总线控制器互连,所述复数个主设备的第一者经配置 以对所述复数个从设备的第一者和所述复数个从设备的第二者发布请求,所述复数个主 设备的第二者经配置以对所述复数个从设备的所述第一者发布请求,其中所述复数个从 设备的所述第一和第二者经配置以接收对数据的请求,且响应于所述复数个主设备的所 述第一者发布的请求而同时提供所请求的数据;其中所述总线控制器对所述复数个从设 备发布控制信号,所述控制信号向所述从设备指示所述复数个主设备接收所请求数据的 准备情况,所述复数个从设备的所述第二者发送所请求的数据到所述复数个主设备的所 述第一者,引起所述复数个从设备的所述第一者发送所述复数个主设备的所述第二者所 请求的数据到所述复数个主设备的所述第二者,而不需要停下来等待所述复数个主设备 的所述第一者变为准备就绪。
根据本发明的其中一方面,一种芯片上系统集成电路,其包括:衬底;总线控制器, 其设置在所述衬底上;设置在所述衬底上的复数个从设备,所述复数个从设备经由同样 设置在所述衬底上的各自从设备数据总线与所述总线控制器互连,设置在所述衬底上的 复数个主设备,所述复数个主设备经由同样设置在所述衬底上的各自主设备数据总线与 所述总线控制器互连,所述复数个主设备的第一者经配置以对所述复数个从设备的第一 者和所述复数个从设备的第二者发布对数据的请求,所述复数个主设备的第二者经配置 以对所述复数个从设备的所述第一者发布请求;所述复数个从设备经配置以接收对数据 的请求且提供所请求的数据;其中所述总线控制器对所述从设备发布控制信号,所述控 制信号向所述从设备指示所述复数个主设备的所述第一者接收所请求数据的准备情况, 所述复数个从设备的所述第二者发送所请求的数据到所述复数个主设备的所述第一者, 引起所述复数个从设备的所述第一者发送所述复数个主设备的所述第二者请求的数据到 所述复数个主设备的所述第二者,而不需要停下来等待所述复数个主设备的所述第一者 变为准备就绪。
根据本发明的其中一方面,一种在电子系统内传送数据的方法,其包括:发布请求, 以请求复数个从设备向第一主设备提供请求的数据;发布从第二主设备到所述复数个从 设备的第一者的请求,以将请求的数据提供到所述第二主设备;向所述复数个从设备的 所述第一者指明何时所述第一主设备未准备就绪从所述复数个从设备的所述第一者接收 其已请求的数据;以及延迟从所述复数个从设备的所述第一者到所述第一主设备的数据 传送;以及不需要停下来等待所述第一主设备变为准备就绪,而从所述复数个从设备的 所述第一者传送数据到所述第二主设备。
在一个实施例中,提供一种具有总线控制器的SoC IC。与所述总线控制器互连的主 设备发布对数据的请求并响应于所述请求而接收请求的数据。与所述总线控制器互连的 从设备接收所述对数据的请求并将所述请求的数据提供给所述请求主设备。由所述总线 控制器所发布的控制信号向每个从设备指示哪些主设备未准备就绪从所述从设备处接收 其请求的数据。所述从设备延迟对任何未对所述请求的数据准备就绪的主机传送数据, 而将数据提供给准备就绪从所述从设备处接收其请求的数据的不同主设备。
当需要从设备来延迟特定数据传送时,从设备可继续传送其它数据,因此提高总线 利用率和数据传送效率,从而有助于避免总线争用和数据冲突。
此外,可减少对SoC IC的总线控制器中的存储缓冲器/寄存器的需要,且因此也可 减少总线控制器的大小和功率消耗。

附图说明

通过结合附图参看以下对一个实施例的描述,将容易了解并更好地理解上述和其它 特征和优点以及获得其的方式,其中:
图1是芯片上系统集成电路的一个实施例的方框图;和
图2是说明用于在芯片上系统集成电路中改进总线利用率的方法的一个实施例的时 序图。
在若干视图中,相应参考符号始终指示相应部件。本文中阐述的例证说明一种形式 的一个优选实施例,且所述例证不应理解为以任何方式限制本文献或权利要求书的范围。

具体实施方式

现在参看图式且尤其是图1,图中展示芯片上系统(SoC)集成电路(IC)10的一个 实施例。SoC IC 10包含衬底12,SoC IC 10的全部电路系统均制造在所述衬底12上。 SoC IC 10包含用于执行各种功能的多个电路系统块。
更确切地说,SoC IC 10包含多个主设备14A、14B、14C……和14N(下文统称为主 设备14)和多个从设备16A、16B、16C……和16N(下文统称为从设备16)。主设备14 和从设备16配置为常规主装置和从装置,例如,举例来说分别为微处理器和存储器阵列。 主设备14中的每一者经由单独和相应的总线22A、22B、22C……和22N(下文有时称为 主设备到控制器总线22或简称为主设备总线22)与总线控制器20互连。类似地,从设 备16中的每一者经由单独和相应的总线24A、24B、24C……和24N(下文有时称为从设 备到控制器总线24或简称为从设备总线24)与总线控制器20互连。主设备14和从设 备16还通常经由SoC IC 10内的到达其它核心的其它总线或信号线(图中均未示)而互 连。主设备14中的每一者均优选包含各自的主设备缓冲器32A、32B、32C……和32N, 且类似地从设备16中的每一者均优选包含各自的从设备缓冲器34A、34B、34C……34N。
总线控制器20除了执行常规开关矩阵类型总线控制器的功能之外,还包含分别向从 设备16A、16B、16C……和16N发布控制信号50A、50B、50C……50N(下文统称为控 制信号50)的逻辑电路系统40。一般来说,控制信号50向从设备16指示每个主设备 14对接收数据的准备情况。更确切地说,控制信号50向每个从设备16指示主设备14 是否准备就绪并且能够从所述特定从设备接收数据。因此,从相反角度看,控制信号50 向每个从设备16指示何时主设备14“繁忙”或因其它原因而无法接收请求的数据和/或 完成特定的数据传送。控制信号50可共享或从总线控制器20从设备16点到点。
每个控制信号50A、50B、50C……和50N至少部分地依赖于主设备14的状况或操 作状态。当主设备14准备好从从设备16中标识出的一者处接收其请求的数据时,控制 器20向所述标识出的从设备16发布相应的控制信号50,指示请求主设备14准备就绪 接收请求的数据(下文中称为“准备就绪”控制信号)。相反,当主设备14未准备好从 从设备16中标识出的一者处接收其请求的数据时,例如,举例来说当请求主设备14正 在从从设备16中不同一者接收先前请求的数据或者因其它原因“繁忙”时,控制器20 向标识出的从设备16发布控制信号50,指示请求主设备14未准备好接收先前请求的数 据(下文称为“未准备就绪”或“繁忙”控制信号)。
控制信号50确保在任何给定读取循环期间,从设备16中只有一者将用于单个请求 主设备的数据放置在从设备到控制器总线24上,且因此放置在控制器到主设备总线22 上。因此,控制信号50会避免原本当两个或两个以上从设备16向控制器20提供期望用 于同一请求主设备14的数据时可能在控制器到主设备总线22上发生的数据冲突。
此外,当请求主设备已指示其并未准备就绪从特定从设备接收请求的数据时,控制 信号50指令从设备(如果准备就绪的话)执行对不同请求主设备的不同数据传送。因此, 从设备不是空闲地等待主设备“准备就绪”接收数据。而是,从设备进行对不同的“准 备就绪”接收数据的请求主设备的不同数据传送。通过执行不同数据传送操作而不是等 待完成被延迟的数据传送操作,处理数据的效率得到改进且因此对总线的利用率得到改 进。这也会降低请求的整体等待时间,因为可将其它响应阻挡在控制器可能由于总线争 用而无法接受的响应后面。
在图2中展示且在下文中描述示范性数据传送过程,其说明SoC 10的操作和用于在 芯片上系统集成电路中改进总线利用率的方法。在时间t0处,主设备14A经由主设备总 线22A向总线控制器20发布从从设备16A读取数据的请求M0R0。此外,在时间t0期 间,主设备14B经由主设备总线22B向总线控制器20发布也从从设备16A读取数据的 请求M1R0。在时间t1处,主设备14A经由主设备总线22A向总线控制器20发布从从 设备16B读取数据的请求M0R1。因此,两个主设备(主设备14A和14B)正在从同一 从设备(从设备16A)请求数据,且一个主设备(主设备14A)已从两个不同从设备(从 设备16A和16B)请求数据。
此外,在时间t1处,总线控制器20经由从设备总线24A将由主设备14A在时间t0 处发布的从从设备16A请求数据的请求M0R0传递给从设备16A。类似地,在时间t2处, 总线控制器20经由从设备总线24A将由主设备14B在时间t0处发布的从从设备16A请 求数据的请求M1R0传递给从设备16A。此外,在时间t2处,总线控制器20经由从设备 总线24B将由主设备14A在时间t1处发布的从从设备16B请求数据的请求M0R1传递给 从设备16B。
如图2所示,控制信号50A和50B首先在时间t0处设置成默认值或情形(例如,举 例来说“准备就绪”)且因此指示所有主设备14均准备就绪接收数据。在时间t3处,总 线控制器20发布或更新控制信号50以启用对至少一组请求的数据的传送。更确切地说, 控制信号50B经更新以指示主设备14A准备好从从设备16B接收其先前请求的数据。由 于在此实例中控制信号50被初始化成“准备就绪”状态,所以控制信号50B没有变化。 相反,控制信号50A、50C……和50N经更新以分别向从设备16A、16C……和16N指示 主设备14A正“繁忙”于准备接收数据或者正处于接收数据的过程当中。
出于简单清晰的原因,图2中只展示了控制信号50A和50B。此外,出于相同原因, 虽然所属领域的普通技术人员将认识到每个控制信号50实际上是多个信号,但图2对于 每个控制信号只展示一个信号线,且用符号表示出所述信号线相对于主设备14的相关情 形或状态。
在时间t4处,从设备16A和16B中的每一者均准备好将主设备14A先前请求的数据 传送到主设备14A。更确切地说,在时间t4处,从设备16A准备好将与请求M0R0相关 联的数据传送到主设备14A,且从设备16B准备好将与请求M0R1相关联的数据提供给 主设备14A。虽然从设备16A和16B均准备好将数据提供给主设备14A,但如上所述, 通过由控制器20发布的控制信号50将优先权给予从设备16B。尤其应当注意的是,根 据所属领域普通技术人员已知的任何所要或优选方法,预先确定在任何给定读取循环准 备好将数据提供给单个主设备14的从设备16之间的相对优先权。举例来说,所述优先 权是任意建立的、根据按照特定电路或应用对特定从设备可能提供的数据预测或预料的 重要性建立的、或者通过其它任何所希望标准建立的。
从设备16A在时间t4处试图将与请求M0R0相关联的数据返回给主设备14A,但向 从设备16A指示(如上所述)主设备14A“繁忙”的控制信号50A阻止从设备16A进行 此操作。在现有技术SoC IC系统中,此种情形将:在从设备16A试图将数据返回给主设 备14A时导致主设备总线22A上出现数据冲突,从而需要控制器20对正返回的数据进 行缓冲;或者导致从设备16A延迟将其它所有请求的数据传送到主设备14中的任一者, 直到从设备16A能够完成向主设备14A传送与请求M0R0相关联的数据为止。与此对照, 且如下文更确切描述,从设备16A将其它请求的数据传送到其它请求主设备14,并且因 此更有效地利用总线22和24并实现更加有效的数据传送。
也在时间t4处,从设备16B开始将与请求M0R1相关联的数据传送到主设备14A。 此数据传送至少部分地是通过以下操作实现的:由控制器20设定控制信号50B以在时间 t3处指示主设备14A“准备就绪”从从设备16B接收数据,并设定控制信号50A、50C…… 和50N以指示主设备14A正“繁忙”且因此并未准备就绪从从设备16A、16C……和16N 接收数据。在时间t4直到时间t6,将与请求M0R1相关联的数据经由从设备总线24B从 从设备16B返回到总线控制器20并经由主设备总线22A从总线控制器20返回到主设备 14A。
尤其应当注意的是,在上述数据传送方法中,即,大体上经由相应的从设备总线24 从从设备16到总线控制器20且经由相应主设备总线22从总线控制器20到主设备14的 数据传送中,总线控制器20实质上充当在主设备与从设备之间简单地建立连接的开关矩 阵。待传送的数据保持存储在从设备16的缓冲器34处或之内,而不是存储在控制器20 处。因此,在较大程度上减少对在总线控制器20内的缓冲或存储寄存器的需要。因此, 与需要大量缓冲器/存储寄存器的常规总线控制器相比,总线控制器20的大小能够减小, 且能够消耗较少的功率。
如上所述,不是迫使从设备16和总线22和/或24的一部分直到请求主设备14“准 备就绪”接收数据之前处于空闲状态,本文中描述的SoC IC 10和用于在芯片上系统集成 电路中改进总线利用率的方法使得从设备能够将其它请求的数据传送到其它请求主设备 14,且因此更有效地利用总线22和24并实现更有效的数据传送。图2中说明了这个方 面,此时,从设备16A不是延迟对所有数据的传送直到主设备14A准备就绪接收与延迟 的请求M0R0相关联的数据为止,而是在时间t5处开始将与请求M1R0相关联的数据传 送到主设备14B。通过控制信号50A来启用对与请求M1R0相关联的数据的传送,所述 控制信号50A向从设备16A指示虽然主设备14A“繁忙”,但主设备14B“准备就绪” 接收数据。
因此,通过在时间t4处延迟从从设备16A到主设备14A的数据传送,并在时间t5 处使得从设备16A能够开始向主设备14B传送数据,避免了在时间t4处主设备到控制器 总线22A上的数据冲突,且提高了时间t4处对主设备到控制器总线22A和从设备到控制 器总线24A的利用率,因而提高了数据传送的效率。
从设备16A在时间t9处完成对主设备14B的与请求M1R0相关联的传送。因此,在 时间t10处,控制信号50由控制器20更新,以向从设备16指示主设备14B再次“准备 就绪”接收数据(图2中未展示)。在所描绘的实例中,不再将另外的数据传送到主设备 14B。
在时间t6处,从设备16B完成向主设备14A传送与请求M0R1相关联的数据。因此, 在时间t7处,控制信号50由控制器20更新,以向从设备16指示主设备14A再次“准 备就绪”接收数据。在时间t8处,控制信号50再次由控制器20更新,以指示主设备14A 再次准备接收数据或正在接收数据的过程当中。更确切地说,在时间t8处,控制信号50 由控制器20更新,使得控制信号50A向从设备16A指示主设备14A“准备就绪”接收 与请求M0R0相关联的数据,且控制信号50B、50C……50N经更新以指示主设备14A“繁 忙”。此后,在时间t9处,开始从从设备16A向主设备14A传送与请求M0R0相关联的 数据。
虽然以上描述参看了优选设计,但可在本发明内容的精神和范围内对优选设计进行 进一步修改。因此,本申请案被用来涵盖使用本文揭示的普遍原理对优选设计所作出的 任何改变、使用或调整。进一步地,本申请案被用来涵盖属于相关领域中的已知或惯例 实践并且属于所附权利要求书的限制内的自本发明揭示内容的改变。