CN101203839A - 用以经由开关矩阵改进数据传送的流控制方法 - Google Patents
用以经由开关矩阵改进数据传送的流控制方法 Download PDFInfo
- Publication number
- CN101203839A CN101203839A CNA2006800096703A CN200680009670A CN101203839A CN 101203839 A CN101203839 A CN 101203839A CN A2006800096703 A CNA2006800096703 A CN A2006800096703A CN 200680009670 A CN200680009670 A CN 200680009670A CN 101203839 A CN101203839 A CN 101203839A
- Authority
- CN
- China
- Prior art keywords
- data
- slave unit
- request
- main equipment
- control signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0038—System on Chip
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Bus Control (AREA)
- Information Transfer Systems (AREA)
- Communication Control (AREA)
- Credit Cards Or The Like (AREA)
- Small-Scale Networks (AREA)
- Input Circuits Of Receivers And Coupling Of Receivers And Audio Equipment (AREA)
- Optical Communication System (AREA)
Abstract
一种芯片上系统(SoC)集成电路(IC)减少了总线争用并改进了总线利用率。所述SoCIC包含开关矩阵型总线控制器。与所述总线控制器互连的主设备发布对数据的请求并响应于所述请求而接收请求的数据。与所述总线控制器互连的从设备接收所述对数据的请求并将所述请求的数据提供给所述请求主设备。由所述总线控制器发布的控制信号向每个从设备指示哪些主设备未准备就绪从所述从设备处接收其请求的数据。所述从设备延迟对任何未对所述请求的数据准备就绪的主机传送数据,并将数据提供给准备就绪从所述从设备处接收其请求的数据的不同主设备。
Description
技术领域
所涉及的技术领域大体上为芯片上系统(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(下文有时称为从设备到控制器总线22或简称为从设备总线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相关联的数据。
虽然以上描述参看了优选设计,但可在本发明内容的精神和范围内对优选设计进行进一步修改。因此,本申请案被用来涵盖使用本文揭示的普遍原理对优选设计所作出的任何改变、使用或调整。进一步地,本申请案被用来涵盖属于相关领域中的已知或惯例实践并且属于所附权利要求书的限制内的自本发明揭示内容的改变。
Claims (25)
1.一种芯片上系统(SoC)集成电路(IC),其包括:
总线控制器;
至少一个主设备,每个至少一个主设备经由各自的主设备数据总线与所述总线控制器互连,所述主设备发布对数据的请求并响应于所述对数据的请求而接收请求的数据;
至少一个从设备,每个至少一个从设备经由各自的从设备数据总线与所述总线控制器互连,所述从设备接收所述对数据的请求并响应于此而提供所述请求的数据;以及
控制信号,其由所述总线控制器发布,并且向每个从设备指示主设备从所述从设备接收其请求的数据的准备情况。
2.根据权利要求1所述的SoC IC,其中所述控制信号向每个从设备指示哪些主设备未准备就绪接收请求的数据。
3.根据权利要求2所述的SoC IC,其中所述控制信号进一步向每个从设备指示哪些主设备准备就绪接收请求的数据。
4.根据权利要求2所述的SoC IC,其中当第一控制信号指示第一主设备未准备就绪接收第一请求的数据时,第一从设备延迟对所述第一主设备请求的所述第一数据的传送。
5.根据权利要求2所述的SoC IC,其中所述第一控制信号进一步指示第二主设备准备就绪从所述第一从设备接收由其请求的第二数据,所述第一从设备响应于所述第一控制信号将所述第二请求的数据传送到所述第二主设备。
6.根据权利要求2所述的SoC IC,所述从设备中的每一者均包含各自的缓冲器,当相应的控制信号向特定从设备指示请求主设备未准备就绪接收请求的数据时,所述请求主设备从所述特定从设备请求的所述数据被保留在所述特定从设备的缓冲器中,所述请求的数据被保留在所述特定从设备的缓冲器中,直到所述相应的控制信号向所述特定从设备指示所述主设备准备就绪从所述特定从设备接收所述请求的数据为止。
7.一种电子系统,其包括:
总线控制器;
至少一个主设备,每个至少一个主设备经由各自的主设备数据总线与所述总线控制器互连,所述主设备发布对数据的请求并响应于所述对数据的请求而接收请求的数据;
至少一个从设备,每个至少一个从设备经由各自的从设备数据总线与所述总线控制器互连,所述从设备经配置以接收所述对数据的请求并提供所述请求的数据;以及
控制信号,其由所述总线控制器向所述从设备发布,所述控制信号向所述从设备指示所述主设备接收请求的数据的准备情况。
8.根据权利要求7所述的电子系统,其中所述控制信号向所述从设备指示哪些主设备未准备就绪接收请求的数据。
9.根据权利要求8所述的电子系统,其中所述控制信号向所述从设备指示哪些主设备未准备就绪接收请求的数据。
10.根据权利要求8所述的电子系统,其中当第一控制信号指示第一主设备未准备就绪接收第一请求的数据时,第一从设备延迟对所述第一主设备请求的所述第一数据的传送。
11.根据权利要求8所述的电子系统,其中所述第一控制信号进一步指示第二主设备准备就绪从所述第一从设备接收由其请求的第二数据,所述第一从设备响应于所述第一控制信号将所述第二请求的数据传送到所述第二主设备。
12.根据权利要求8所述的电子系统,所述从设备中的每一者均包含各自的缓冲器,当相应的控制信号向特定从设备指示请求主设备未准备就绪接收请求的数据时,所述请求主设备从所述特定从设备请求的所述数据被保留在所述特定从设备的缓冲器中,所述请求的数据被保留在所述特定从设备的缓冲器中,直到所述相应的控制信号向所述特定从设备指示所述主设备准备就绪从所述特定从设备接收所述请求的数据为止。
13.一种芯片上系统(SoC)集成电路(IC),其包括:
衬底;
总线控制器,其设置在所述衬底上;
至少一个主设备,其设置在所述衬底上,每个至少一个主设备经由也设置在所述衬底上的各自的主设备数据总线与所述总线控制器互连,所述主设备发布对数据的请求并响应于所述对数据的请求而接收请求的数据;
至少一个从设备,其设置在所述衬底上,每个至少一个从设备经由也设置在所述衬底上的各自的从设备数据总线与所述总线控制器互连,所述从设备经配置以接收所述对数据的请求并提供所述请求的数据;以及
控制信号,其由所述总线控制器向所述从设备发布,所述控制信号向所述从设备指示所述主设备接收请求的数据的准备情况。
14.根据权利要求13所述的SoC IC,其中所述控制信号向所述从设备指示哪些主设备未准备就绪接收请求的数据。
15.根据权利要求14所述的SoC IC,其中所述控制信号向所述从设备指示哪些主设备准备就绪接收请求的数据。
16.根据权利要求13所述的SoC IC,其中当第一控制信号指示第一主设备未准备就绪接收第一请求的数据时,第一从设备延迟对所述第一主设备请求的所述第一数据的传送。
17.根据权利要求13所述的SoC IC,其中所述第一控制信号进一步指示第二主设备准备就绪从所述第一从设备接收由其请求的第二数据,所述第一从设备响应于所述第一控制信号将所述第二请求的数据传送到所述第二主设备。
18.根据权利要求13所述的SoC IC,所述从设备中的每一者均包含各自的缓冲器,当相应的控制信号向特定从设备指示请求主设备未准备就绪接收请求的数据时,所述请求主设备从所述特定从设备请求的所述数据被保留在所述特定从设备的缓冲器中,所述请求的数据被保留在所述特定从设备的缓冲器中,直到所述相应的控制信号向所述特定从设备指示所述主设备准备就绪从所述特定从设备接收所述请求的数据为止。
19.一种在电子系统内传送数据的方法,其包括:
发布对一个或一个以上从设备向一个或一个以上主设备提供请求的数据的请求;
向第一从设备指示何时一个或一个以上第一主设备未准备就绪从所述第一从设备接收其已请求的数据;以及
延迟从所述第一从设备到所述一个或一个以上第一主设备的数据传送。
20.根据权利要求19所述的传送数据的方法,其中所述延迟步骤进一步包括将数据从所述第一从设备传送到已请求且准备就绪从所述第一从设备接收数据的第二主设备。
21.根据权利要求19所述的传送数据的方法,其中所述延迟步骤包括将所述第一主设备请求的数据保留在所述第一从设备的缓冲器内。
22.根据权利要求19所述的传送数据的方法,其中所述指示步骤包括向所述一个或一个以上从设备中的每一者发布控制信号,所述控制信号指示所述一个或一个以上主设备中的每一者是否准备就绪从所述一个或一个以上从设备中的每一者接收数据。
23.一种在芯片上系统(SoC)集成电路(IC)中减少总线争用并改进总线利用率的方法,所述SoC IC具有一个或一个以上主设备,所述主设备经配置以用于经由各自的主设备总线从一个或一个以上从设备接收数据,所述方法包括:
发布对所述一个或一个以上从设备经由其各自的主设备总线向所述一个或一个以上主设备提供请求的数据的请求;
向第一从设备指示何时所述第一主设备中的一者或一者以上正经由其各自的主设备总线接收数据且因此未准备就绪从所述第一从设备接收其已请求的数据;以及
通过延迟从所述第一从设备到所述一个或一个以上正经由其各自的主设备总线接收数据且因此未准备就绪从所述第一从设备接收数据的第一主设备的数据传送来减少总线争用。
24.根据权利要求23所述的方法,其进一步包括以下步骤:通过将数据从所述第一从设备传送到已请求且准备就绪从所述第一从设备接收数据的第二主设备来改进总线利用率。
25.根据权利要求24所述的方法,其中所述减少总线争用的步骤包含将所述第一主设备请求的数据保留在所述第一从设备的缓冲器内。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/055,922 | 2005-02-10 | ||
US11/055,922 US7246188B2 (en) | 2005-02-10 | 2005-02-10 | Flow control method to improve bus utilization in a system-on-a-chip integrated circuit |
PCT/US2006/004936 WO2006086732A1 (en) | 2005-02-10 | 2006-02-09 | Flow control method to improve data transfer via a switch matrix |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101203839A true CN101203839A (zh) | 2008-06-18 |
CN100595744C CN100595744C (zh) | 2010-03-24 |
Family
ID=36588894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200680009670A Expired - Fee Related CN100595744C (zh) | 2005-02-10 | 2006-02-09 | 芯片上系统集成电路、电子系统及在其内传送数据的方法 |
Country Status (13)
Country | Link |
---|---|
US (1) | US7246188B2 (zh) |
EP (1) | EP1846831B1 (zh) |
JP (3) | JP4861339B2 (zh) |
KR (1) | KR100932408B1 (zh) |
CN (1) | CN100595744C (zh) |
AT (1) | ATE491993T1 (zh) |
DE (1) | DE602006018862D1 (zh) |
ES (1) | ES2355054T3 (zh) |
HK (1) | HK1114213A1 (zh) |
IL (1) | IL185067A0 (zh) |
MX (1) | MX2007009732A (zh) |
PL (1) | PL1846831T3 (zh) |
WO (1) | WO2006086732A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105190583A (zh) * | 2013-03-25 | 2015-12-23 | 三菱电机株式会社 | 总线主设备、总线系统以及总线控制方法 |
CN106371966A (zh) * | 2015-07-23 | 2017-02-01 | Arm 有限公司 | 收集与数据处理系统的操作相关的监视数据 |
CN107566296A (zh) * | 2016-06-30 | 2018-01-09 | Arm 有限公司 | 接口设备和接口方法 |
CN111797051A (zh) * | 2020-06-04 | 2020-10-20 | 深圳云天励飞技术有限公司 | 片上系统、数据传送方法及广播模块 |
CN113765824A (zh) * | 2021-10-15 | 2021-12-07 | 合肥移瑞通信技术有限公司 | 基于mbim接口的响应消息发送方法、装置、mbb设备及介质 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2407662B (en) * | 2003-11-03 | 2006-02-22 | Compxs Uk Ltd | Two way serial communication |
US7788625B1 (en) * | 2005-04-14 | 2010-08-31 | Xilinx, Inc. | Method and apparatus for precharacterizing systems for use in system level design of integrated circuits |
DE102005026436B4 (de) * | 2005-06-08 | 2022-08-18 | Austriamicrosystems Ag | Schnittstellenanordnung, insbesondere für ein System-on-Chip, und deren Verwendung |
US20070255874A1 (en) * | 2006-04-28 | 2007-11-01 | Jennings Kevin F | System and method for target device access arbitration using queuing devices |
US7908412B2 (en) * | 2006-05-10 | 2011-03-15 | Microsoft Corporation | Buffer passing mechanisms |
KR100854973B1 (ko) * | 2007-02-13 | 2008-08-28 | 삼성전자주식회사 | 버스 매트릭스를 포함하는 시스템 |
DE102007015122A1 (de) * | 2007-03-29 | 2008-10-02 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren zum Transfer von Daten in mehrere Steuergeräte |
WO2008126418A1 (ja) * | 2007-04-11 | 2008-10-23 | Panasonic Corporation | データ退避システム及びデータ復帰システム、並びにデータ退避方法及びデータ復帰方法 |
US8156273B2 (en) * | 2007-05-10 | 2012-04-10 | Freescale Semiconductor, Inc. | Method and system for controlling transmission and execution of commands in an integrated circuit device |
CN101453313B (zh) * | 2007-12-06 | 2013-03-20 | 鸿富锦精密工业(深圳)有限公司 | 主从设备通信电路 |
EP2416253B1 (en) * | 2009-03-31 | 2014-07-23 | Fujitsu Limited | Data transmission circuit and data transmission method |
US8984195B2 (en) * | 2011-12-02 | 2015-03-17 | Atmel Corporation | Microcontroller including alternative links between peripherals for resource sharing |
US9552317B2 (en) * | 2012-10-19 | 2017-01-24 | Fairchild Semiconductor Corporation | Apparatus and method for operating and switching a single conductor interface |
DE102021106379A1 (de) | 2021-03-16 | 2022-09-22 | Infineon Technologies Ag | Master, Slave, Master-Slave-Kommunikations-System, On-Chip-Interconnect-System, Verfahren zum Betreiben eines Masters, Verfahren zum Betreiben eines Slaves, Verfahren zum Betreiben eines Master-Slave-Kommunikations-Systems und Verfahren zum Betreiben eines On-Chip-Interconnect-Systems |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5956524A (en) * | 1990-04-06 | 1999-09-21 | Micro Technology Inc. | System and method for dynamic alignment of associated portions of a code word from a plurality of asynchronous sources |
EP0608663B1 (en) | 1993-01-25 | 1999-03-10 | Bull HN Information Systems Italia S.p.A. | A multi-processor system with shared memory |
US5581729A (en) * | 1995-03-31 | 1996-12-03 | Sun Microsystems, Inc. | Parallelized coherent read and writeback transaction processing system for use in a packet switched cache coherent multiprocessor system |
US5907485A (en) | 1995-03-31 | 1999-05-25 | Sun Microsystems, Inc. | Method and apparatus for flow control in packet-switched computer system |
US5761516A (en) * | 1996-05-03 | 1998-06-02 | Lsi Logic Corporation | Single chip multiprocessor architecture with internal task switching synchronization bus |
US6516442B1 (en) * | 1997-12-07 | 2003-02-04 | Conexant Systems, Inc. | Channel interface and protocols for cache coherency in a scalable symmetric multiprocessor system |
US6065077A (en) * | 1997-12-07 | 2000-05-16 | Hotrail, Inc. | Apparatus and method for a cache coherent shared memory multiprocessing system |
US6347344B1 (en) * | 1998-10-14 | 2002-02-12 | Hitachi, Ltd. | Integrated multimedia system with local processor, data transfer switch, processing modules, fixed functional unit, data streamer, interface unit and multiplexer, all integrated on multimedia processor |
US6715023B1 (en) * | 1999-09-23 | 2004-03-30 | Altera Corporation | PCI bus switch architecture |
US6441479B1 (en) * | 2000-03-02 | 2002-08-27 | Micron Technology, Inc. | System-on-a-chip with multi-layered metallized through-hole interconnection |
JP4024484B2 (ja) * | 2001-03-13 | 2007-12-19 | 株式会社リコー | バスアービタ |
JP2003030134A (ja) * | 2001-07-12 | 2003-01-31 | Matsushita Electric Ind Co Ltd | バスアービタ及びバスアービトレーション方法 |
IL144789A0 (en) | 2001-08-07 | 2002-06-30 | Broadlight Ltd | System architecture of a high bit rate switch module between functional units in a system on a chip |
US6857035B1 (en) * | 2001-09-13 | 2005-02-15 | Altera Corporation | Methods and apparatus for bus mastering and arbitration |
DE60211874T2 (de) * | 2002-06-20 | 2007-05-24 | Infineon Technologies Ag | Anordnung von zwei Geräten, verbunden durch einen Kreuzvermittlungsschalter |
JP2004126646A (ja) * | 2002-09-30 | 2004-04-22 | Canon Inc | バス制御方法 |
JP2005234932A (ja) * | 2004-02-20 | 2005-09-02 | Oki Electric Ind Co Ltd | マトリックス状バス接続システムとその低電力方法 |
-
2005
- 2005-02-10 US US11/055,922 patent/US7246188B2/en active Active
-
2006
- 2006-02-09 KR KR1020077020415A patent/KR100932408B1/ko active IP Right Grant
- 2006-02-09 JP JP2007555297A patent/JP4861339B2/ja active Active
- 2006-02-09 WO PCT/US2006/004936 patent/WO2006086732A1/en active Application Filing
- 2006-02-09 CN CN200680009670A patent/CN100595744C/zh not_active Expired - Fee Related
- 2006-02-09 DE DE602006018862T patent/DE602006018862D1/de active Active
- 2006-02-09 PL PL06720664T patent/PL1846831T3/pl unknown
- 2006-02-09 ES ES06720664T patent/ES2355054T3/es active Active
- 2006-02-09 AT AT06720664T patent/ATE491993T1/de not_active IP Right Cessation
- 2006-02-09 MX MX2007009732A patent/MX2007009732A/es active IP Right Grant
- 2006-02-09 EP EP06720664A patent/EP1846831B1/en not_active Not-in-force
-
2007
- 2007-08-06 IL IL185067A patent/IL185067A0/en unknown
-
2008
- 2008-08-29 HK HK08109652.2A patent/HK1114213A1/xx not_active IP Right Cessation
-
2010
- 2010-09-24 JP JP2010214177A patent/JP5456632B2/ja not_active Expired - Fee Related
-
2011
- 2011-09-09 JP JP2011197213A patent/JP5456743B2/ja not_active Expired - Fee Related
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105190583A (zh) * | 2013-03-25 | 2015-12-23 | 三菱电机株式会社 | 总线主设备、总线系统以及总线控制方法 |
CN106371966A (zh) * | 2015-07-23 | 2017-02-01 | Arm 有限公司 | 收集与数据处理系统的操作相关的监视数据 |
CN106371966B (zh) * | 2015-07-23 | 2021-07-30 | Arm 有限公司 | 收集与数据处理系统的操作相关的监视数据 |
CN107566296A (zh) * | 2016-06-30 | 2018-01-09 | Arm 有限公司 | 接口设备和接口方法 |
CN111797051A (zh) * | 2020-06-04 | 2020-10-20 | 深圳云天励飞技术有限公司 | 片上系统、数据传送方法及广播模块 |
CN113765824A (zh) * | 2021-10-15 | 2021-12-07 | 合肥移瑞通信技术有限公司 | 基于mbim接口的响应消息发送方法、装置、mbb设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
PL1846831T3 (pl) | 2011-04-29 |
CN100595744C (zh) | 2010-03-24 |
US7246188B2 (en) | 2007-07-17 |
EP1846831B1 (en) | 2010-12-15 |
WO2006086732A1 (en) | 2006-08-17 |
IL185067A0 (en) | 2007-12-03 |
MX2007009732A (es) | 2007-09-26 |
JP4861339B2 (ja) | 2012-01-25 |
JP5456743B2 (ja) | 2014-04-02 |
JP2008530694A (ja) | 2008-08-07 |
WO2006086732A9 (en) | 2006-10-19 |
KR20070104929A (ko) | 2007-10-29 |
ES2355054T3 (es) | 2011-03-22 |
JP2012038325A (ja) | 2012-02-23 |
KR100932408B1 (ko) | 2009-12-17 |
EP1846831A1 (en) | 2007-10-24 |
HK1114213A1 (en) | 2008-10-24 |
DE602006018862D1 (de) | 2011-01-27 |
US20060179192A1 (en) | 2006-08-10 |
JP5456632B2 (ja) | 2014-04-02 |
JP2011048838A (ja) | 2011-03-10 |
ATE491993T1 (de) | 2011-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100595744C (zh) | 芯片上系统集成电路、电子系统及在其内传送数据的方法 | |
KR101720134B1 (ko) | 버스 브리지 장치 | |
CN100472494C (zh) | 支持多总线多类型存储器的内存仲裁实现系统和方法 | |
US11080220B2 (en) | System on chip having semaphore function and method for implementing semaphore function | |
EP1564646A2 (en) | Configurable embedded processor | |
CN101091170A (zh) | 减少芯片上系统互连中的传送等待时间的方法和设备 | |
EP0872799A2 (en) | PCI bus System | |
CN109656851B (zh) | 一种时间确定的包括多路高速总线通道及共享接口的系统 | |
US20070124558A1 (en) | Apparatus and methods for controlling output of clock signal and systems including the same | |
CN101160569A (zh) | 改进具有多个存储器控制器的电路的带宽的设备 | |
CN114185823B (zh) | 仲裁器、仲裁方法、控制器和芯片 | |
KR20080043406A (ko) | 지연된 메모리 억세스 요청 조정 | |
US9798492B2 (en) | Semiconductor device including a plurality of function blocks | |
US20080195782A1 (en) | Bus system and control method thereof | |
JP2002123484A (ja) | バス・システム用の即時許可バス・アービタ | |
US8209453B2 (en) | Arbiter, a system and a method for generating a pseudo-grant signal | |
US7865645B2 (en) | Bus arbiter, bus device and system for granting successive requests by a master without rearbitration | |
CN111679992A (zh) | 用于管理对共享总线访问的方法和对应的电子设备 | |
US8135878B1 (en) | Method and apparatus for improving throughput on a common bus | |
JP3206585B2 (ja) | バス制御装置、マスタ装置及びスレーブ装置並びにバス制御方法 | |
CN100419722C (zh) | 用于生成伪授予信号的仲裁器、系统和方法 | |
CN101710310A (zh) | 一种amba接口电路 | |
CN118733498A (zh) | 内存控制器 | |
JPH09305320A (ja) | データ記憶装置 | |
CN115762596A (zh) | 一种mcu的存取记忆体数字电路架构 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1114213 Country of ref document: HK |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: GR Ref document number: 1114213 Country of ref document: HK |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100324 Termination date: 20220209 |