CN1301364A - 具有实时动态带宽分配的全流水线固定等待时间的通信系统 - Google Patents

具有实时动态带宽分配的全流水线固定等待时间的通信系统 Download PDF

Info

Publication number
CN1301364A
CN1301364A CN98810932A CN98810932A CN1301364A CN 1301364 A CN1301364 A CN 1301364A CN 98810932 A CN98810932 A CN 98810932A CN 98810932 A CN98810932 A CN 98810932A CN 1301364 A CN1301364 A CN 1301364A
Authority
CN
China
Prior art keywords
bus
initiator
subsystem
period
mentioned
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
Application number
CN98810932A
Other languages
English (en)
Other versions
CN1150460C (zh
Inventor
D·E·温加德
G·P·罗赛尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sonics Inc
Original Assignee
Sonics Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sonics Inc filed Critical Sonics Inc
Publication of CN1301364A publication Critical patent/CN1301364A/zh
Application granted granted Critical
Publication of CN1150460C publication Critical patent/CN1150460C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
    • G06F13/37Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a physical-position-dependent priority, e.g. daisy chain, round robin or token passing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units

Abstract

本发明提供具有全分布控制的片上(on-chip)通信方法,它以两级仲裁方案将全流水线,固定等待时间及同步总线(35)结合起来。这里的第一级仲裁是按帧的时分多路仲裁方案,第二级是用令牌传递机构实现的公平分配传阅方案,等待时间和带宽分配都可按系统的实时操作以软件编程实现。本发明还提供一通信系统,它用通信协议控制使用共享资源(10,15,20),子系统存入和取出共享资源(10,15,20)是通过总线接口模件(40,45,50,55,60)实现的,总线接口模件(40,45,50,55,60)提供连到共享资源(10,15,20)及子系统(25,30)之间的间接层面,这使得能与系统的操作要求脱离连结,通过总线(35)的通信是完全存储器映射的。

Description

具有实时动态带宽分配的全流水线固定 等待时间的通信系统
发明背景
1.本发明的领域
本发明涉及连结计算装置的总线系统。
2.技术背景
随着电子计算和通信系统在特性和复杂度方面的不断地增长,以及物理尺寸和单位功能价格的减小,越来越多的约束落在系统设计者的肩上,对这类系统的需求集中在高销量、价格敏感的市场,如象消费电子市场,急速进入市场的时间(time-to-market)是商业的需要。在较短的时间以较低的价格推出更复杂的系统,其唯一可行的方法是做到有效地使用先进的集成电路技术,把功能性的东西做进软件中,以及迁移子系统部件从一个设计到相继的设计中。
在相继的设计中重用(re-use)子系统部件已经变得相当普遍,它除了节省时间以外还能得到很多其它好处。首先,当分析一新系统设计的要求和性能时,可能为考验过的子系统编号的模块能提供精确的结果;如新的未考验过的子系统的模块看来既没有考验过的子系统的精确,制作也不能即时,影响设计。第二,考验过的子系统能当成构件块使用,这就简化了整个设计过程,借此使系统设计者专注于更高层次的抽象,同时提供最终系统实现中更好的可预测性。第三,硬件子系统的重用省去了控制这些子系统的软件投资,并且一旦这些硬件构件块被选定,允许立即着手系统软件实现。最后,子系统的重用避免了校验和测试方面的投入。由于期望的系统是高度集成的,所要的子系统最后深深地嵌入在集成电路中,在深嵌入的设计中,校验设计的功能性变得非常复杂,并且测试各自系统以保证它被正确地构建会导致高昂代价的延缓或费用巨大的返工。因此,支持完整子系统的校验和测试看来是从设计的重用中得到的一项最大受益。
设计的重用的传统方法有许多长处和弱点。这些方法的基本方面是不同的子系统通信接口是各不相同,一种办法是在一子系统和与之必需通信的每个对等方之间定义用户化的点对点接口。这种接口方式在数据流从第一子系统进到正在设计的子系统的应用场合是尤其流行,后者处理此数据并输出数据到第二子系统。用户化的方法提供的协议简单,性能有保证,并且与无关的子系统隔离。然而,用户化的接口其本性是不灵活。如果一新的应用需要现存的子系统连接到,不与其共享接口的系统上,则需要再进行设计。如果应用要求子系统与不同的子系统通信,子系统或接口的多个复制品可能需要,导致系统低效。另外,如果更新的算法要在子系统中实现,此新算法要被楔入老的用户化接口,以允许与现存的对等方子系统通信。
第二种办法是定义使用标准化接口的系统。通常见到标准化接口与各种形式的共享内连配对以形成通信子系统。许多标准化接口是基于预先建立的计算机总线协议。这种办法的一大明显优点是通信模式的灵活性:在系统中具有每个中介与每个其它中介通信的能力。计算机总线在系统设计中提供灵活性,因为只要总线具有足够的性能,根据系统要求许多中介能连接在一起。最后一个优点是自然地映射地址/数据传送(这是处理器-存储器的基本通信),系统中,用软件来实现的复杂算法。要与硬件子系统通信伴随共享内连,产生要求在各种始发器装置和目标子系统之中分配通信资源,在计算机总线的情况下,资源的分配一般称作仲裁。
标准化的总线接口主要缺点是传输延迟(通常叫做等待时间)的不确定性,这是由于仲裁而造成的。等待时间的不确定,对必需满足实时约束的子系统造成麻烦,因为数据未能符合最后期限而即时到达,会产生不合适的系统行为。第二个缺点是缺乏总的可用传输时机(一般称作带宽),这是计算机系统继承物造成的。历史上,以及现在,总线一般设计成支持连接到它上面的处理器的峰值传输率,而且未被处理器要求的传输时机能被其它中介可用。因而具有组合带宽超过峰值处理器带宽的系统必需借助多级总线方案或总线混合以及专用连接,以便分离带宽。最后一缺点是无能力有效支持那种不易映射成地址/数据传输的通信(例如两中介之间的握手信号),或者是原来不属始发器的中间引发的通信(例如由目标子系统驱动的中断信号,用以通知始发器装置数据可用)。
总之,现存的通信方法不满足有效地设计重用的要求,所需要的是一种新的结构,它允许在跨越宽性能特性范围的系统中最大量的子系统重用。如果一计算机总线能被扩展以去除它的性能和通信式样的限制,它可很好用作许多高集成系统的基础。
还有,子系统的通信要求差异巨大,某些子系统如像键盘,红外遥控器以及LED显示这些输入/输出装置,具有极低的带宽要求,并能容忍大范围的等待时间变化。另一些子系统如RISC CPU或数字信号处理器,需要到存储器的高可用带宽和低等待时间,但以降低程序的执行为代价能容忍带宽极限和可变化的等待时间。还有另外的子系统如T1电讯链路或SVGA显示,具有中等的高带宽要求,但不能容忍带宽及等待时间的不确定。这类实时子系统需要有保证的带宽和等待时间,并且不存在任何提供额外性能的好处。
因此,需要一种让不同性能、宽范围的子系统能共同操作的通信机构,并且通过提供标准化的接口,大大地改善子系统的重用。然而,这里还没有处理通信机构的操作频率必需变动以支持设计中的系统要求的带宽问题。如果标准化的接口在通信接口上,改变通信接口的频率要求改变子系统的操作频率。增加子系统的频率超过其要求会浪费电能,能导致算法上的问题(某些子系统需要在固定的频率下操作),当新频率高于以前设计的子系统所能工作的频率时能防止全部地设计重用。所需的方法是解除通信接口的频率与各种客户机子系统的操作频率的连系,以便各自能基于自己的要求而工作。
发明概述
本发明通过提供高度可预测的通信能力使非常复杂的系统设计合理化,它允许更高的设计重用度,更简单的性能分析,灵活的通信能力,以及更短的设计时间。
在这实施例中,单片计算机总线系统包含至少一个始发器装置和至少一目标子系统。这些总线周期被划分为重复帧。至少一始发器装置被预先分配某些请求帧以传送请求,和在请求帧之后的预定数目时钟周期传送一确定的回答帧。当一请求要被发出时,始发器装置在预先分配的帧期间发出请求。请求中包含标识目标子系统的地址和指示目标应采取的动作的命令。每个连到总线的目标子系统监视这些发出的请求包,并对那些包含的地址对应该目标子系统地址的请求包做出响应。目标通过执行在包中所指明的命令做出响应,并在请求包发出之后预定数目的时钟周期传送响应包。
这个最好是在具有大的变化约束的子系统之间统一通信的系统中实现,例如在这实施例中,周期被预先分配给具有高带宽和低等待时间要求的始发器。其余的始发器,例如基于传阅(round-robin)方式仲裁得到可用的帧。
附图的简要说明
根据下面的详细说明,本发明的目标,特点和优点会被显现,其中:
图1说明按本发明教导操作的单片通信系统的实施例。
图2a说明始发器接口模件实施例的简化方块图。
图2b,2c,2d,2e,2f,2g,2h描述进出图2a中接口模件的一些信号。
图3a是为访问总线设置仲裁处理过程实施例的简化流程图。
图3b描述发出请求和回答这些请求过程的实施例。
图4a和4b说明第二级仲裁的仲裁状态实施例。
图5是按本发明教导,显示总线事务的时间关系图。
图6说明按照本发明教导的重试处理。
详细说明
本发明在单片半导体器件上提供革新的通信协议和总线结构,以支持具有各种时序约束的不同子系统。特别是,如将在下面所说的,本发明的系统和方法提供一有效的机构,为两个或多个子系统之间给出高带宽和低等待时间的通信路径;还提供一有效的机构,为需要实时特性的任何子系统给出最小有保证的带宽,另外,本发明的系统和方法还提供一有效的机构以解除子系统的要求与系统级要求的联结,这就使得联结的子系统在系统等待时间和带宽要求大范围变化的系统中被重用而不需要修改子系统。此外,本发明的系统和方法提供一种有效的机构以实现地址/数据式样的存储器映射通信,专门的点对点通信,以及一点对多点广播方式的通信。建议的通信方法管理不同的子系统之间的通信,这些子系统是更大系统的一部分,并且它们通过共享的通信总线相互进行通信。系统能够由一个或多个集成电路或芯片组成,以及一子系统可能是在包含许多逻辑块的集成电路上的一个逻辑块,或者是完成单一逻辑功能的一集成电路。
图1显示了按照本发明教导操作的系统实施例。系统联到三个目标子系统10,15和20以及二个通过通信总线35相互通信的始发器子系统。目标子系统10,15,20在此被规定为只能接收并响应请求的子系统。通常的目标子系统是存储器子系统和输入/输出(I/O)装置。始发器子系统25,30是能接收和响应请求的子系统,同时还能发出请求。通常的始发器子系统是中央处理单元(CPU)芯,数字信号处理器(DSP)芯,直接存储器存取(DMA)引擎,协处理器等。在这实施例中,接口单元40,45,50,55,60被联在每个子系统10,15,20,25,30和总线35之间。这些接口模件40,45,50,55,60包含按照总线协议发生和/或回答包的逻辑。另外,如在下面要说明的,为了有效的数据传输,最好接口同步子系统和总线时钟,最后,在本发明中不需要专门的控制器单元以管理通信总线上的事务,这是因为这里最好功能分布在接口单元40,45,50,55,60之间。还有,接口单元可被并入到子系统的逻辑中,或当作联接到总线上的单独块而实施。
在这实施例中,图1中的通信总线35包含下面的一些线:命令/地址线65,认定(assert)线70,时钟线75,数据/响应线80和标志线85。系统还包含令牌环线,例如为实现下面将会说明的第二级仲裁的线90,95。
地址/命令线65用于传送标识目标子系统的地址。最好,地址线还标识该目标中的资源。可取的是,在特定目标子系统的地址和子系统中的资源之间的线的具体分配能被改变,而且每个目标各不相同。另外,最好这种分配是可编程的。
认定线70最好是一由始发器子系统使用的单线,以指示将要使用预先分配给它的包用来传送请求。如认定线未被激活,则持有令牌的始发器将获得对这种包的访问。时钟线75载有时钟,根据它这些子系统跨在总线上同步操作。地址/响应线80用于传送数据和传达被寻址的目标对请求的响应。标志线85是可用于特定通信的通用目的线,从而进一步增加了总线系统的灵活性和鲁棒性。这特别有利于支持那些不容易映射到地址/数据传输中的通信,例如,如像接着将要说明的,这些通用目的线能用来支持两个子系统之间的握手信号或由不是始发器的子系统引发的通信,如由目标子系统驱动的中断信号,以通知始发器子系统数据可用。
图2a和2b说明联到始发器接口模件的实施例的简化方块图。模件包含有执行这里所描述的功能所必需的逻辑及存储器,包括发出请求(例如逻辑250),与客户机的连接(时钟/同步器245),维护配置(配置寄存器240)以及按照接收到的命令更新配置(例如逻辑250)。为了接收命令以更新模件的操作配置,始发器也能当做目标工作,因而包含有地址/解码逻辑242。为了讨论的方便,描述的始发器是具有嵌入的目标而其主要功能为始发器,因此它维持这里所说的目标的功能。然而,子系统可能不同时间按目标工作或按始发器工作,维持其灵活性是要进一步思考的。图2b的表中汇总了一些信号。具体说来,“cycle(周期)”指示总线时钟(sbclock)状态该信号被激活。因为总线是流水线方式,多个事务能同时处于进行中,然而,因为最好全部事务都具有相同的等待时间。每个事务精确地遵循相同的样板。周期S0这里称作仲裁周期,周期S1这里称作命令/地址周期。周期SM为S1后面出现的预定数目的几个周期,是地址/响应周期。周期SN是出错周期。
参考图2a,时钟信号线sbclock 205接受总线的时钟。如果客户机同总线同步工作或按某一得到的频率工作,时钟电路242实现驱动到客户机的联接所需的任何时钟划分。信号sbTokenIn(传阅令牌允许入)和SbTokenOut(传阅令牌允许出)207,209用于在一令牌环中完成的第二级仲裁,分别指示令牌入和令牌出。SbAssent 211由预先分配包的所有者认定以说明使用该包的意图。信号sbCmd 213如在图2c所示,标识事务的类型。信号sbAddr 215运载目标的地址。除了idle和broadcast命令外,所有的命令都使用此地址机构。sbWidth 217信号指出数据宽度,sbData 219运载数据,sbResp 221运载像图2d所描述的那些响应信息。sbFlagNum 223如后面将要说明的,标识信号接收器到监示器的特殊标志sbFlag225。信号sbFlag 225是可配置的标志线,它们可被用于取决于执行过程的多种方式。
与目标客户机连接的接口模件还包含与目标客户机连接的目标子系统信号线230,该信号在图2e中被讨论,这包括示于图2f中的事务类型、范例类型。另外,与始发器客户机连接的接口模件还包括如图2g所示的始发器子系统信号线235,包含有如在图2h中所示的那些始发器客户机事务类型。
通信由下列的组合来完成:组帧操作(framed operation),时分多址联结,同步操作,流水线操作,恒定等待时间操作,以及事务分裂(split-transactions)。在时分多址(TDMA)系统中,总线周期被分成帧。预先决定的源和目的装置之间的装置传输是预先分配的帧。同步系统是其中装置基于同样的时钟执行传输的系统。在本实施例中,流水线总线是一种其中与事务有关的地址和命令字段在数据和响应被传送之前的一时钟周期在总线上传输,允许后面事务的地址/命令部分与第一事务的地址/响应重叠。在全流水线的总线中,新的事务能在时钟的每个周期被启动。因此,附加的事务可在前一事务完成之前被启动。另外,在本发明中已确定通过固定事务的开始及事务完成之间的等待时间能得到某些性能上的好处。所以,在全流水线、固定等待时间、分裂的事务总线中,命令和相关的数据传输之间的等待时间是已知的有保证的值,此特性对于与处理器或数字信号处理核通信的总线尤其重要,它们自身工作在固定等待时间的全流水方式下。
TDMA是现有技术的通信系统,帧通常针对预先确定的点对点通信,例如点对点的语音通信被分配。点对点通信的任何变化发生得很慢,并且通常是由于点对点通信链两端的变化引起的。本发明通过仅分配启动传输/操作命令的权利,克服了这些不足。允许始发器子系统在实时的基础上易于与许多目标子系统通信。始发器子系统发出包含标识目标子系统地址的地址信息的请求,从而,在帧期间始发器能根据使用的命令和地址,与一个或多个目标子系统通信。
本发明的通信系统提供很高的性能,并且子系统之间通过共享内连提供低等待时间的通信通道。为了支持所要求的系统带宽,可能要求通信总线必须工作在比各个子系统更高的工作频率上。总线频率与子系统频率之间的差异为子系统的设计提出了重大的挑战,它取决于每个子系统要求的通信模式。特别是,单个子系统在进出子系统的长期连续通信量上,似乎跟不上快速通信总线,问题是子系统不应当去处理比它自己要求的峰值带宽更为迅速的数据。
本发明的系统和方法还试图最少地利用突发式传输。突发式是在连续的总线周期发生的系列数据传输,通常包含有内含的地址增量。传统的计算机总线强调这种突发性传输,通过降低因总线仲裁及地址变换造成的时间低效而改善性能的方法。在以比发送和接收子系统更高频率工作的通信总线上强调突发式传输牵涉的系统代价是位于发送器和接收器上的存储单元昂贵。发送器要缓存到足够长度的数据后才能启动它的传输,而接收器必需提供转换数据给缓冲存储器。还有,在传送第一个数据之前,等待发送器生成的最后数据的特有处理把等待时间加到总的传输上。
由此可以看出更好的解决办法是让数据按发送器或接收器自然操作速率来传送。所以,各个传输的时间交错集(time-interleaved set)将替代一系列连续的突发传输。此方法减少了存储器以及提高了传送的双方的效率。另外,合适地配置的时间交错方案能给出要求多媒体的传统的计算流量与以苛刻的实时界限为特点的通信流量的无缝集成。提供全部这些特性需要增强通信总线的基本仲裁方法。
在本发明的一系统实施例中使用了两级仲裁。这里参考图3a和3b进行一般的说明。参看图3a,带宽的分配被执行,该分配可在系统初始化时执行。另外,如这里所说,在操作期间使用可用的写总线事务处理,依靠更新配置寄存器,可动态执行再分配。为确立带宽分配,在步302,包被预先分配到不同的始发器子系统,根据连接到总线系统上的始发器子系统和这些始发器子系统的需要,不同数目的包可被分配给不同的始发器子系统。例如,一始发器子系统可能有高的带宽要求,于是被预先分配大百分比的可用包,另外的始发器子系统可被分配小百分比的可用包,而还有其它的始发器子系统可能不被分配任何包,另外,可以决定不预先分配某些包,以便总有包可用于传阅式仲裁。
在步304,令牌环网络被确立以完成第二级仲裁,例如传阅仲裁。通常令牌环的成员是未预分配包的那些始发器子系统,然而,已被预先分配有包的始发器子系统也可能是令牌环网络的成员。
一旦两级仲裁被建立,总线系统即能开始运行。现参照图3b,在步306,判断是否该预先分配了特定的即将到来包的始发器将要使用这个包。例如,这可通过监示特定的总线导线来确定,如象本实施例中的确认线。如果得到确认,预先分配有包的始发器有机会执行事务(步308),并且发出请求(步310)。如果始发器不要求访问,则此包对于由全令牌环网络执行的第二级仲裁是可用的。最可取的是,如图3b所示,第二级仲裁(步312,314)与第一级仲裁(也就是步306,308)同时执行,这样以致该带有令牌的始发器在预先分配过的始发器拒绝访问后立即发出请求。然而,也可考虑仲裁处理以顺序方式实现。
再参看图3b,在步312,如果令牌的当前持有者要求该包,带有令牌的始发器维护该令牌,如果预先分配过的始发器拒绝访问,则在步314被允许访问。不然,令牌被传到环中下一始发器子系统以准许下面的始发器获得访问权。此过程继续进行直到令牌落在要求访问的始发器为止。在本实施例中,如果令牌的接受者又回到该令牌的最初持有者,从而表明令牌已经环绕传遍整个环而没有要求访问的始发器子系统最初持有者将维护此令牌。如在步314被准许访问,将发出一空请求使仲裁结束。
由始发器子系统发出的请求包含想要的目标的地址。最好是请求中还包含该目标中一特定资源的地址。目标子系统监视发出的每个请求,以判断地址是否对应于目标的地址(步322),如果确定是对应(如匹配),预定数目的时钟周期以后,目标子系统响应此请求(步324)。例如,如请求为一写操作,目标子系统接收数据,并在请求发出以后,发出预定的时钟周期数的完成响应。如请求为一读操作,目标子系统在请求发出以后的预定数目的时钟周期提供读出的数据。在这实施例中,发出的地址与目标地址之间的1对1匹配被考虑。然而,对应不同等级,好象结合屏蔽执行比较,以匹配一或多个装置也被考虑。
如上所述,当一包总线周期被分配给一子系统,此子系统在相应于此总线周期的槽期间有权发出请求。这就允许对不同的子系统进行带宽预分配。因为总线周期是提前预分配给不同的子系统的,TDMA的优点被保证并可预测带宽,这个特点对于支持具有固定实时带宽要求的客户机是有些苛刻,时分多址和固定等待时间的流水线事务这两种概念的组合,提供很高性能的通信协议,能够保证等待时间和带宽两方面。
如上面的简单描述,第一级仲裁按下面的方式实现。在这实施例中,全部可用的总线周期数被分成重复帧。为了讨论起见,帧是分成一些包,它对应于一些周期。例如,一256周期的帧被分成128个2周期的包。因此,一帧可以由128个2周期的包组成,并且按这种设计,帧应当每256个总线周期重复。第一级仲裁方案围绕这些包对不同的子系统分配而循环往复。因为只有始发器子系统能发出命令,包应当只分配给始发器子系统。
在本发明的实施例中,每个始发器子系统包含一同步计数器,它按时钟节拍与全部其它计数器一同运行,此计数器的输出用于标志一可编程逻辑电路,该电路的输出确定与当前计数器输出值有关的包是否被分配给这个具体的接口模件。通过在每个始发器接口模件中提供计数器并且按时钟节拍维持计数器,系统实现一全分布式TDMA时间轮,最好只要没有二个始发器接口模件被分配同样的包。在接口模件中的可编程逻辑电路,在系统初始化时用有关分配的信息被预先编程,并且/或者在系统运行期间,通过在通信总线上对不同的始发器子系统发出的命令而被重编程,这就准许在系统中动态重新分配带宽。
包的分配最好发生在包出现之前的总线周期期间,例如,就在紧接包出现之前的总线周期,虽然各种各样的方法可被利用,最通用的可编程逻辑电路的方法是如以小的随机访问的存储器(RAM)构成的查找表。这种RAM的深度等于帧中包的数目。所以,TDMA时间轮简单地以帧计数器对RAM的检索来实现。最好是,RAM中存储的表为用户能看见,并且通过软件、使用如同一般数据传送相同的读/写命令,在通信总线上可进行读和写访问。这就使得系统的带宽分配能以类似总线上正常读/写事务的事务速度被改变,并且改变分配为根据需要的不均匀分布带宽,以支持某些应用。
在某些情况下,子系统可能不使用一个或多个预先分配的周期,这点可能发生。因为尽管某些系统流量是可预测的,然而可预测流量可能不是一直不变的。例如,传送到显示器的帧缓存流量是完全可预测的,但当显示器进行水平和垂直回扫操作时,此信息流被中断。另外,某些始发器子系统可能有极低性能的请求,而预分配任何带宽对这样一个子系统可导致许多无用的周期,因此,希望用第二级仲裁来增强时分多址协议。
在第二级仲裁中,未预分配的包或已被预分配但未使用的包,在一公平的传阅方案中利用令牌传递机构,由总线上其它始发器子系统争夺。如果系统中任何子系统能使用总线,此第二级仲裁确保没有未用的包留下。第二级仲裁机构保留了前面所述通信方法的全部优点,但增加了可用的系统带宽的总的使用效率。
在本发明的实施例中,第二级仲裁利用令牌传递机构,以公平的传阅方案来实现。全部参与第二级仲裁的始发器被联到环中以传递令牌。通常,能容忍不可预测的等待时间的那些始发器参与第二级仲裁。另外,可考虑参与第一级仲裁的那些子系统也参与第二级仲裁。在初始化时令牌被分配给一个始发器。令牌表示有附加条件的权力,以在与当前包关联的总线周期期间发出总线命令。此权力是有条件的,因为它与预分配包的所有者未表明使用此包的权力或包未被分配有关。当包在上面所说的第一级仲裁后仍是未被分配状态,该包被仲裁用于第二级仲裁。因此,TDMA方案实际上分配一第一优先舍取权,预分配的所有者必需表明其权力以使用它的包,否则包对以令牌结束的始发器成为可用。
在每个仲裁周期(也就是每个包),令牌可以保留在前面周期持有该令牌的始发器处,或可环绕着环传递给下面要求令牌的始发器,不像现存的令牌环系统,在本发明的这实施例中,令牌可整个地环绕着环传递返回到开始传递它的始发器。令牌的行动取决于系统状况以及陈述在系统规则中的公平的约束。例如,对于一个始发器使用令牌多于一个包是不公平的,因为其它的始发器子系统可能正在等待;一个始发器子系统在有了机会使用令牌之前被强迫以放弃令牌,这同样是不公平的。所以,在这实施例中,令牌传递规则被建立,这样一来,请求并接受令牌的始发器子系统,可以保持令牌直到取得机会,通过通信总线正确启动等值一个包的命令。此机会能够出现在令牌到来的仲裁周期,对于大数目的周期,它可能不会出现,这取决于由装置做出的用法决定,对于这些装置包被预先分配给这些所有者。最后,一旦具有令牌的始发器有了机会使用它,此始发器通过驱动其Token Out信号到逻辑1围绕着环起动令牌。如果没有其它的始发器请求令牌,令牌将整个地绕着环传递并返回到其发送者。
为了防止令牌环绕着环无限期地循环,最好起动令牌的始发器子系统必需暂时地断开环。所以,起动令牌的始发器子系统在任何给定的仲裁周期,通过结束这个仲裁周期能够再使其结束,需要指出的是,通信总线信号一直要被积极地驱动,以便这些线不会悬浮到不合适的总线操作的不确定的状态,增加的功率消耗可能出现,照这样,以令牌结束的始发器每当没有预分配了包的所有者表明其第一优先取舍权,就应发出一总线命令。在此情况下,带有令牌的始发器如果没有用的命令要发出,应该发出一无用命令(一无害的读或写,或NOP/Idle命令)。
如果拥有令牌的始发器,在仲裁周期的开始没有机会使用令牌但有命令要发出,它可以保留此令牌。如果没有,此始发器使一信号线为高电平(例如,Token Out)向其它始发器子系统表示该令牌对第二级仲裁的竞争是可用的。具有令牌的始发器子系统(即,最后使用令牌的始发器子系统)传递令牌到环中下一始发器子系统,而后依次处理,如果子系统能使用此周期,就可占用该令牌。如不能,令牌被回转传递直到令牌被分配。在此情况下,该具体的始发器子系统持有此令牌,作为下一令牌环仲裁的开始点。如果没有始发器子系统使用此令牌,它回到最初拥有令牌的始发器。整个包仲裁包括第一级和第二级发生在同一周期,此第二级仲裁不提供有保证的带宽,但确实提供有保证的访问,使用第二级仲裁,如果其它始发器也等着访问总线,没有始发器系统能命令总线得到多于一个包。
图4a具体说明了第二级仲裁的一个实施例的状态,而图4b的表给出了状态的简要说明。在该实施例中,围绕环路的传播延迟经2个执行过程状况被减成最小。首先,产生令牌的接口模件如此完美地随当前状态改变。而且,接口模件决定沿该路径传送令牌,或不,完全随当前状态改变。这两个特点使得令牌进入环路尽可能快,并防止在令牌需要通过多长中间接口模件传播方面任何引起延迟的不能确定。
输入给状态的是ReqToken,Tokenin,Assert,Reset n,First,输出是TokenOut,Grant Token及下一个状态。ReqToken指示接口正在请求令牌,TokenIn指示对该始发器令牌是可用的,Assert用来指示预分配过的始发器将使用它的包,reset_n用来强使系统进入复位状态,TokenOut用于在环路中把令牌传到下一个始发器,Grant Token用来告诉始发器它应该准备发出一请求,而NextState表示始发器子系统的具体接口模件的下一个状态。
在状态NOTOKEN,子系统的接口模件既不要求也没有令牌。因此,如果令牌到达,Tokenin,它立即经Tokenout通过。状态机一旦抽样了请求令牌的接口模件,就脱离NOTKEN。在状态WANTTOKEN,接口模件没有但要求令牌。因此它打断环路,这样以致于当令牌到达Tokenin时,该模件将抓取它。一旦令牌到达,如果无预分配槽的拥有者驱动Assert,接口模件将使用它(通过通知Grant Token)。如果Assert被激活,那末模件将保留该令牌,直到它得到一机会以使用它,于是状态机转换成HAVETOKEN。
在状态HAVETOKEN,模件具有一令牌,并等待一机会去使用它。一旦无模件形成Assert,槽就可用,且这模件将使用它(通过通知GrantToken)。当或者出现这情况或者接口模件停止要求ReqToken(估计可能因为它的请求通过预分配的槽被满足),状态机转换成GENTOKEN。由于该模件具有令牌,不必关心TokenIn线(例如,它必须是零)。在状态GENTOKEN,模件在仲裁周期的开始将围绕环路启动令牌,当无模件在WANTTOKEN(即主动请求令牌)的情况下,模件必须断开环路。如果令牌围绕环路的所有路径回到该模件,接口模件将接收GranToken,并被要求启动一命令,不管是否装置要求过令牌。
当状态机在复位状态(Reset_n被驱动或低电平)时,起始状态除了一个标记为First的外所有接口模件被设置成NOTOKEN。First装置是唯一的,因为一经复位令牌从这里开始,因此确保任何时间,在环路上正确地存在一个令牌。而且,应该注意在本发明实施例中,不必关心ReqToken列中的项目(除非在复位期间),保证正确地有一设备始终启动一命令。如果没有预分配槽的所有者驱动Assert线为高电平,在仲裁最后以令牌结束的接口模件必须启动一命令。
利用上述的分配方法,具有不同要求的各种客户机能被支持,同样的系统能被编程以满足特定的客户机的需要;因此,根据系统的需要,预分配的客户机和包的特定部分能被编程。
总线上发送的命令的最小集是一读命令和一写命令。通信方法能自然地被扩展,以支持其它命令,包括为控制联结到总线上的子系统而专门设计的控制命令。图5显示了按本发明观点工作在全流水线,固定等待时间总线上的典型事务的时序图。每个事务由仲裁部分,命令/地址部分及数据/响应部分组成。因为总线是固定等待时间总线,在两个事务如请求和响应之间存在固定延迟(按时钟周期数)。在图5中,仲裁和命令/地址之间的等待时间是一个周期,命令/地址和数据之间的等待时间假定为2个两周期,而一包(仲裁单元)是一个总线周期。在周期1,始发器子系统I-D确认它的权利,以使用它的预分配包,所以在周期时间槽2中,I-D在总线上发送-命令和地址给目标。为了说明起见,该命令被标记为Command 1。所有目标接口模件包含地址译码逻辑,以确保是否事务被寻址到他们的客户机子系统。在时间槽4,寻址的目标接口模件响应请求命令,在读请求命令时,读出数据从目标传给始发器。在写请求命令时,被写的数据在周期4从始发器送到目标。
根据数据响应线上来自目标,由此目标在周期4驱动的响应信号指示事务是否成功。在本实施例中,有4种可能的响应是:“Valid”,“Busy”,“Retry”及“No Response”。“Valid”响应表示事务成功。“Busy”响应表示目标模件能响应命令。“Retry”响应只是允许用于读命令,它表示目标正企图满足命令,但在固定的总线等待期间不能这样做,之后始发器必须重试它的请求。在“No Respone”的情况下,表示命令提供的地址,不同任何目标匹配,因此无目标响应。
继续参考图5,第2仲裁周期在时钟周期2开始,另外的事务处理在周期3发出。在这种情况下,没有预分配的始发器表明其权力以使用总线周期,因此,始发器子系统I-E在周期2使令牌结束,在周期3发出一命令和地址。在一个总线周期的等待后,与该发出的命令有关的数据和响应信号在周期5传送。
正如前面指出的,接口模件最好可编程,以提供包的动态再分配。在这实施例中,每个子系统的接口模件包括存贮模件配置数据的配置寄存器集及总线(240,图2)。
最好,配置寄存器存贮标识预分配给相应子系统的包的数据。配置寄存器在系统的地址空间中具有地址,因此能利用可用的总线事务从中读出和写入。最好,有2种配置寄存器集,即缓冲的和非缓冲的配置寄存器。写到非缓冲的寄存器的数据对接口模件是可见的,并且在对寄存器写操作以后,对系统的其余部分立即变成可见的。写到缓冲寄存器的数据被存贮在保持寄存器处,且只是在数据已从保持寄存器传送到配置寄存器后才变成可见。传输通过总线上的一广播命令来开始。广播命令是同时对所有接口模件起作用的命令。因此,缓冲的寄存器一般用在新数据能允许系统的其它部分看到之前,希望同时地更新几个接口模件时。
使用缓冲的寄存器的一个例子是在系统中地址变换的赋值。每个目标接口或模件有本地存贮的屏蔽和匹配数据值,指出那个寻址目标将响应。在总线上的地址同匹配字段相比较,结果被掩码,如果掩码的结果所有位是0,这表示接口模件被寻址,屏蔽/匹配数据被存贮在配置寄存器中,且通过普通的总线命令能被写。系统的正常工作需要目标地址范围在系统中必须单值地赋给。如果地址改变被执行,如地址交换,新的赋值在所有受影响的接口模件中应该同时发生。否则,在从一地址映射到另一地址期间,可能出现重叠的地址空间。
如上指出,本发明不限于用于缓冲和非缓冲的配置寄存器。另外,在系统的生命时间期间配置寄存器中有某些数据或无数据需要改变的系统中,所有数据或某些数据能存贮在只读存贮器(ROM)中。ROM一般需要少量管芯区(die area),以防止不希望地写到配置区,导致不合适的系统配置。最好,典型的系统包含缓冲的配置寄存器,非缓冲的配置寄存器和ROM相结合的接口模件。在配置寄存器中所包含的信息包括有关预分配给始发子系统的包,等待时间,及接口模件和为了请求地址匹配目的连接的目标地址装置之间的通信频率的数据。
上述的一重要特点是由于寄存器用部分的系统地址空间,事实上配置数据使用可用的正常读写命令,在系统实时工作期间被写入,这样,允许系统设计者通过简单的软件,或存贮在ROM中的预先计算的命令序列,去改变通信系统的许多重要的特点。
本发明在现有技术上的一个重要的独特的增强事实上是总线的等待时间在系统的初始化或在系统的运行时间内可编程的。在优选实施例中,等待时间通过通信总线是可编程的。因为通信总线的完全流水线性质,这样的操作需要一广播命令,以使流水线的层次在所有接口模件中同时地被改变。当低等待时间响应对系统是重要的时(如访问存贮器)一低等待时间,通过向接口模件的合适的配置寄存器写入新等待时间,可被编程到通信系统中。另外,当总线上的关键性通信是在长等待时间子系统之间时(系统不能很快响应),系统等待能被设置得更高。事实上,等待时间可以类同于常规总线事务处理的速度可被编程,这是超过现有技术的重要改进。
利用更新合适的配置寄存器同样的方法,不能使改变等待时间,而且能改变带宽分配。事实上,在初始化时或在系统运行期间,带宽分配可类同于通信总线上一般读或写事务处理的速度可被编程,这是超过现有技术的重要改进。
可编程带宽分配和可编程总线等待时间相结合,提供了显著的优点,最特别的是系统设计者能用始发器和目标的特别配置优化系统的性能。此外,由于带宽分配和等待时间在工作期间能被更新,优化能通过改变条件和配置而被保持。正如下面将要陈述的那样,通过允许始发器装置去编程目标和它的接口模件通信的频率,额外的灵活性和配置能力被考虑。这对适应始发器和/或目标客户机的不同子系统的时序要求是尤其期望的。
最好,总线功能通过增加一组管理带外通信的系统级控制线(在图1中称为标志)进一步的被增强。带外信号是不遵循面向地址/数据的流水线总线模式的信号。例如包括设备状态信号,中断以及握手信号。在本优选实施例中,这些线也用于增强下列方式中的基本读操作的性能。
例如,在如图5所描述的系统工作中,如果目标子系统能及时响应读请求命令,以满足总线等待时间要求,一“Valid”响应在响应总线上被传送。在目标子系统不能及时响应,以满足总线等待时间要求的情况下,“Retry”响应被传送。并不是要求始发器估计何时所要的数据是可用的,这样导致额外的浪费总线周期或者增加等待时间,而是使目标接口模件利用带外信号中的一个信号(这里亦称为标志)。一旦目标接口模件已得到数据,目标接口模件利用这些标志,提供返回到始发器的明确指示。
图6描述了利用带外信号线的重试机构,当客户端不能满足通信总线的等待时间时,目标接口模件向始发器发出响应包,指示“retry”。在相同时间槽中标志线信号的位号在FlagNum线上被传送(为简单起见,这是图1的部分标志线),这向始发器子系统表示应该监控指示何时去重试的标识标志。
在图6的例子中,读请求命令在周期1中被传送。总线等待时间是两个周期,所以,通过目标接口在周期3数据应被返回。然而,数据还没有得到,所以,目标在响应线上返回一重试响应,同时它在FlagNum总线上返回标志线的号码,在本例中其号码为7。当目标接口模件从它的客户端(即所连接的装置)接收数据时,它在本地存贮器上存贮数据,且驱动指示的标示线为高,向始发器表示数据现在可用。在图6中,在周期4以后,在标志7上,目标表示数据可用。这时,始发器子系统现在能重发请求命令,这命令在图3中发生在周期6。当目标接口模件满足该请求命令时(在图3的周期8)它撤消已同该请求命令关联的标志。
通信系统最好包含分配给不同目标接口的一些标志。标志线能在模件之间共享,或者能供指定的模件专用。在优选实施例中,标志的分配被存贮在配置寄存器中,因此,该分配能以类同于常规的总线事务处理的速度在通信总线上可编程。
标志线能用于各种目的。例如,标志线的不同使用是管理握手信号和中断信号。这些是表示接口模件或子系统中特定事件的信号。例如这些信号是出错信号或者是表示忙状态(停止发送请求)或准备好状态(子系统准备好以接受请求)的信号,这些信号是固有的带外信号并且是用标志线传输的。为了这些目的,标志线唯一地被分配给目标接口模件和它们的子系统客户机,用于中断或握手信号的专门的目的,在本优选实施例中,该数据分配被存贮在配置寄存器中,以使它可随系统要求的改变而动态变化。同样的信息在始发器子系统中被编程,使始发器知道这些标志线用于监控握手和中断目的。
如上所指出的,总线和子系统之间的接口模件包括实现同客户机接口的同时实现总线协议的逻辑。而且,最好接口包含附加逻辑(图2,245)以从系统总线时钟得到子系统的客户机时钟。通过配置寄存器的接口模件提供能编程的层次,以允许子系统具有非常不同的系统特性和性能要求在许多不同系统中重复使用,系统总线时钟的频率由系统要求决定,最明显的是总线要求的总带宽应满足系统需要的性能。客户机的客户机时钟频率可以同系统总线时钟无关,而应该同客户机要求的功能有关。接口模件因此提供了强有力的去耦系统和子系统要求的方法。
在传统的固定等待时间的总线系统中,要增加可用的带宽,需要增加总线及所有它的客户机的工作频率,因此客户机需要以较少时间去响应来满足等待时间的要求。利用本发明的系统,总线的等待时间(以周期测量)能随总线频率的增加而增加,由于总的等待时间(以时间为单位)保持相对固定,有助于允许客户机以接近一致的频率工作。可考虑去耦的特点被扩充到接口模件和客户机之间的异步连结。
频率去耦的要求主要基于能从这方法得益的富于变化的系统。一个例子系统是无线个人通信装置,这需要随同低性能的固定性能实时子系统(为实现无线通信),自计算机得到的子系统,例如微控制器核心,嵌入式存贮器,键盘输入和液晶显示(LCD)输出。作为通信装置的关键设计目标是以低功率提供可靠的通信及尽可能多的特性(在微控制器上以软件实现),第二个例子系统是顶置盒,用来接收数字卫星电视广播。顶置盒结构需要更高位率的数据通信以及更高的计算性能,以解压缩视频和音频数据,以及必须确保整个系统的性能,以避免漏帧,第三个例子是异步传送模式(ATM)交换机。这交换机结构有可能需要一个只是为监控性能和提供诊断的中央处理单元(CPU);正常的操作包含通过共享内部连结在同等的子系统之间的包交换。作为在大量的电路交换应用中,性能保证是关键,以适合ATM交换的工作。
对各种系统由设计重用提供的机会现在给予描述。为视频点播(Video-demand)的无线系统可结合来自个人通信装置的双通路无线子系统,来自ATM交换的帧引擎ATM包,及来自顶置盒的视频解压缩子系统,曾未打算用来互操作的子系统快速地结合成整体,成本-有效益的系统能被得到。
本发明已结合优选实施例予以描述。很明显许多的替换,修改,改变及使用,按照前面的说明对熟悉本技术领域的人来说将是理所当然的。

Claims (20)

1.一计算机总线系统,它包括:
在许多总线周期期间工作的同步总线。所说的许多总线周期划分为重复帧,每个帧又划分成若干至少包含一个时钟周期的包(packet);
连到总线上的至少一个始发器子系统,此至少一个始发器配置有预先分配到该至少一个始发器子系统上的至少一个包。所说始发器子系统被配置,以便在该至少一个预先分配的包的时钟周期期间发出一请求。所说的请求包含标识由目标子系统所执行的操作的命令,以及目标子系统的地址;
至少一个目标子系统,所说目标子系统被配置以接收请求的地址,并确定是否该地址对应于目标子系统的地址,如果那里请求的地址对应于目标子系统的地址,所说的目标子系统被配置,以在第二时钟周期响应请求。所述第二时钟周期是在所说第一时间周期之后出现的预定的一些周期。
2.按照权利要求1确定的计算机总线系统,其中至少一个始发器包含许多始发器子系统,并且那里所说许多始发器子系统中的至少二个具有至少一个上述预先分配给它的包。
3.按照权利要求1确定的计算机总线系统,其中每个预先分配的包分配到不超过一个始发器。
4.按照权利要求1规定的计算机总线系统,那里确定哪个始发器子系统在所说第一周期对总线的访问出现在上述第一周期之前的周期期间。
5.按照权利要求4确定的计算机总线系统,其中当包被预先分配到一始发器子系统,但未被所说始发器的子系统使用时,或当包未被预先分配时,上述始发器子系统根据一公平的传阅方案仲裁对包的访问。
6.按照权利要求1确定的计算机总线系统,那里所说的始发器子系统和目标子系统包含配置数据的可寻址存储器。所说的配置数据控制上述预定的周期数和上述预先分配的包,并且那里所说的可寻址存储器,类似于在始发器子系统和目标子系统之间传送数据所用的那样,能通过请求在总线上被访问。
7.按照权利要求1确定的计算机总线系统,那里所说的预定周期数,可以类同于总线上正常传输速度从实时操作方式用软件编程实现。
8.按照权利要求1确定的计算机总线系统,那里所说的为上述始发器子系统预分配的包,可以类同于总线上正常传输的速度以实时操作方式,用软件编程实现。
9.按照权利要求1确定的计算机总线系统,那里的总线包括一组标志线,每根标志线分配给一个子系统,并且上述标志线用于在客户机之间传输控制信息,所说控制信息与客户和地址空间或时间段的预分配无关。
10.按照权利要求9陈述的计算机系统,其中所说的控制信息与客户机的地址空间或包的预分配无关。
11.按照权利要求9确定的计算机总线系统,那里的总线还包含一组标志号码线,指示至少一个传递信息的所述标志线的号码。
12.按照权利要求11陈述的计算机总线系统,其中标志线用于管理那些不能及时被响应以符合限定的等待时间的事务。
13.按照权利要求12陈述的计算机总线系统,其中如果目标子系统不能在所说第二周期应始发器子系统的要求返回数据时,上述目标子系统在所说第二周期由所说标志号码线上传输的标志线号来配置,
当所说目标子系统具有可用的数据,或是能够确定所述的数据将立即成为可用时,上述目标模件在对应于上述标志号码线上传输号码的所说标志线之一上,配置确认信号;以及
上述始发器子系统被配置以检测上述标志线上的传输,并重新发出所说的事务,那里所说的目标子系统被配以响应请求,并在所述标志线上断开确认信号。
14.按照权利要求1所陈述的计算机总线系统,其中的子系统包含一接口模件和一客户机模件。设置的客户机时钟与总线时钟同步,客户机时钟由总线时钟产生,且总线时钟与客户机时钟的比率可由软件编程,因此去除客户机的时钟频率与所说总线时钟频率的连结。
15.按照权利要求1所陈述的计算机总线系统,其中的子系统包含一接口模件和一客户机模件。设置的客户机时钟频率与总线时钟频率无关,上述接口模件包含设置客户机时钟信号与总线时钟信号同步的逻辑。
16.按照权利要求15中陈述的总线系统,其中的逻辑包括可编程的等待时间。
17.通过共享的总线,在客户机之间传送数据的方法包含下列步骤:
在第一时钟周期始发器发出一请求,所述的请求包含至少一命令和一目标地址,所说第一周期是预先分配到始发器的包的一部分。所说的包组成至少一个时钟周期,许多包组成一重复帧;
至少一个目标在所说的第一周期接收上述的请求,并且如果地址对应于所说目标的地址空间,至少一个目标中被寻址的一个目标响应上述的请求;以及
所说被寻址的目标在第二周期响应上述请求,所说的第二周期在上述第一周期之后出现预定数目的周期。
18.按照权利要求17确定的传送数据的方法,还包括当时钟周期被预先分配到一始发器但未被使用,或时钟周期没有预分配给任何始发器时执行第二级仲裁的步骤,在那里所说的未使用的时钟周期被分配给另外的始发器。
19.在至少连结二台客户机包含至少一个始发器和一个目标的总线组成的计算机总线系统中改变系统级参数的方法,所说的方法包含以下步骤:
在每台客户机上定义第一可寻址存储器;
在每台客户机上定义第二可寻址存储器,其中保存供所说客户机使用的配置数据;
一始发器通过在总线上发出写命令寻址到上述客户机中所说第一存储器,写新的配置数据到上述客户机中的所说第一存储器;及
所说始发器对全部客户机发出单个命令,其结果,配置数据从所说保持存储器传送到第二存储器,其中该新配置数据是供这些客户机使用的。
20.在一单片计算机总线系统中包含连结至少一台始发器客户机和至少一台目标客户机的总线,通过该总线通信的方法包含以下步骤:
预先分配至少一个包含上述始发器客户机,此至少一个包通过划分总线周期成为重复的帧而确定,每个帧划分成包含至少一个时钟周期的包;
在第一周期始发器送出一请求,所说第一周期是预先分配给上述始发器的时间段的一部分,而所说的请求包含至少一命令字段和一地址字段,所说地址字段识别目标客户机;
目标客户机接受位于地址字段中的地址,并且如果目标的地址对应位于地址字段中的地址,在所说第一周期期间,上述目标客户机接受所说请求,并在第二周期响应所说的请求,上述第二周期是在所说第一周期以后的预定的一些周期。
CNB988109328A 1997-09-05 1998-07-22 计算机总线系统、通信系统和通过总线通信的方法 Expired - Lifetime CN1150460C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/924,368 1997-09-05
US08/924,368 US5948089A (en) 1997-09-05 1997-09-05 Fully-pipelined fixed-latency communications system with a real time dynamic bandwidth allocation

Publications (2)

Publication Number Publication Date
CN1301364A true CN1301364A (zh) 2001-06-27
CN1150460C CN1150460C (zh) 2004-05-19

Family

ID=25450136

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB988109328A Expired - Lifetime CN1150460C (zh) 1997-09-05 1998-07-22 计算机总线系统、通信系统和通过总线通信的方法

Country Status (9)

Country Link
US (1) US5948089A (zh)
EP (1) EP1027657B1 (zh)
JP (1) JP4259751B2 (zh)
KR (1) KR100572372B1 (zh)
CN (1) CN1150460C (zh)
AT (1) ATE310277T1 (zh)
AU (1) AU8576498A (zh)
DE (1) DE69832410T2 (zh)
WO (1) WO1999013405A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101232425B (zh) * 2007-01-26 2010-04-21 京信通信系统(中国)有限公司 一种总线式分布控制系统主从站对端控制方法
CN101271434B (zh) * 2007-03-22 2013-02-27 Arm有限公司 用于执行多周期仲裁的数据处理装置和方法
US10745425B2 (en) 2016-07-01 2020-08-18 Shenzhen Yhlo Biotech Co., Ltd. Chemiluminescence enhancer and chemiluminescence immunodetection kit

Families Citing this family (98)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6895510B1 (en) * 1997-11-24 2005-05-17 International Business Machines Corporation Mutual internet authentication between a client and server utilizing a dummy IOP request
US6138187A (en) * 1998-08-21 2000-10-24 International Business Machines Corporation Method and system for increasing spatial reuse in a serial storage architecture subsystem
US6182183B1 (en) 1998-11-13 2001-01-30 Sonics, Inc. Communications system and method with multilevel connection identification
US6487606B1 (en) * 1998-11-18 2002-11-26 Nortel Networks Limited System and method for delivering messages through a totem communications system
TW388817B (en) * 1998-11-20 2000-05-01 Via Tech Inc Method reducing latency of writing data in memory
JP3953243B2 (ja) * 1998-12-29 2007-08-08 インターナショナル・ビジネス・マシーンズ・コーポレーション システム分析のためにバス・アービトレーション制御を使用する同期方法及び装置
US6449671B1 (en) * 1999-06-09 2002-09-10 Ati International Srl Method and apparatus for busing data elements
GB2352144A (en) * 1999-07-16 2001-01-17 Texas Instruments Ltd Data transfer between memory nodes
US6801985B1 (en) * 1999-09-10 2004-10-05 Texas Instruments Incorporated Data bus using synchronous fixed latency loop including read address and data busses and write address and data busses
DE19946716A1 (de) * 1999-09-29 2001-04-12 Infineon Technologies Ag Verfahren zum Betrieb eines Prozessorbusses
US6701397B1 (en) 2000-03-21 2004-03-02 International Business Machines Corporation Pre-arbitration request limiter for an integrated multi-master bus system
DE10022479B4 (de) * 2000-05-09 2004-04-08 Infineon Technologies Ag Anordnung zur Übertragung von Signalen zwischen einer Datenverarbeitungseinrichtung und einer Funktionseinheit in einem Hauptspeichersystem eines Computersystems
US7325221B1 (en) 2000-08-08 2008-01-29 Sonics, Incorporated Logic system with configurable interface
US6785284B1 (en) * 2000-08-10 2004-08-31 Infineon Technologies North America Corp. Interleavement for transport of frames and cells
US7165094B2 (en) * 2001-03-09 2007-01-16 Sonics, Inc. Communications system and method with non-blocking shared interface
US6785753B2 (en) * 2001-06-01 2004-08-31 Sonics, Inc. Method and apparatus for response modes in pipelined environment
US20030004699A1 (en) * 2001-06-04 2003-01-02 Choi Charles Y. Method and apparatus for evaluating an integrated circuit model
ATE297568T1 (de) * 2001-09-26 2005-06-15 Siemens Ag Verfahren zur arbitrierung eines zugriffs auf einen datenbus
US6804738B2 (en) * 2001-10-12 2004-10-12 Sonics, Inc. Method and apparatus for scheduling a resource to meet quality-of-service restrictions
US7099922B2 (en) * 2002-01-23 2006-08-29 International Business Machines Corporation Method and system for simultaneous management of multiple tokens on a communication ring
US7315551B2 (en) * 2002-03-15 2008-01-01 Lockheed Martin Corporation Synchronous low voltage differential I/O buss
US7356633B2 (en) * 2002-05-03 2008-04-08 Sonics, Inc. Composing on-chip interconnects with configurable interfaces
US7194566B2 (en) * 2002-05-03 2007-03-20 Sonics, Inc. Communication system and method with configurable posting points
US7254603B2 (en) * 2002-05-03 2007-08-07 Sonics, Inc. On-chip inter-network performance optimization using configurable performance parameters
US7302691B2 (en) * 2002-05-10 2007-11-27 Sonics, Incorporated Scalable low bandwidth multicast handling in mixed core systems
US6880133B2 (en) * 2002-05-15 2005-04-12 Sonics, Inc. Method and apparatus for optimizing distributed multiplexed bus interconnects
JP4025593B2 (ja) * 2002-07-11 2007-12-19 富士通株式会社 放送型通信データ配送装置および放送型通信システム
US7426182B1 (en) * 2002-08-28 2008-09-16 Cisco Technology, Inc. Method of managing signal processing resources
US7032046B2 (en) * 2002-09-30 2006-04-18 Matsushita Electric Industrial Co., Ltd. Resource management device for managing access from bus masters to shared resources
US7243264B2 (en) * 2002-11-01 2007-07-10 Sonics, Inc. Method and apparatus for error handling in networks
US6976106B2 (en) * 2002-11-01 2005-12-13 Sonics, Inc. Method and apparatus for speculative response arbitration to improve system latency
US7266786B2 (en) * 2002-11-05 2007-09-04 Sonics, Inc. Method and apparatus for configurable address mapping and protection architecture and hardware for on-chip systems
US7603441B2 (en) * 2002-12-27 2009-10-13 Sonics, Inc. Method and apparatus for automatic configuration of multiple on-chip interconnects
US7149829B2 (en) * 2003-04-18 2006-12-12 Sonics, Inc. Various methods and apparatuses for arbitration among blocks of functionality
US20040210696A1 (en) * 2003-04-18 2004-10-21 Meyer Michael J. Method and apparatus for round robin resource arbitration
US7139854B2 (en) * 2003-06-10 2006-11-21 Texas Instruments Incorporated Pipelining access to serialization tokens on a bus
US7194658B2 (en) * 2003-07-24 2007-03-20 Sonics, Inc. Various methods and apparatuses for interfacing of a protocol monitor to protocol checkers and functional checkers
US20050066097A1 (en) * 2003-09-04 2005-03-24 Matsushita Electric Industrial Co., Ltd. Resource management apparatus
US7296105B2 (en) * 2003-10-03 2007-11-13 Sonics, Inc. Method and apparatus for configuring an interconnect to implement arbitration
US9087036B1 (en) 2004-08-12 2015-07-21 Sonics, Inc. Methods and apparatuses for time annotated transaction level modeling
US7665069B2 (en) * 2003-10-31 2010-02-16 Sonics, Inc. Method and apparatus for establishing a quality of service model
US8504992B2 (en) * 2003-10-31 2013-08-06 Sonics, Inc. Method and apparatus for establishing a quality of service model
US20050175027A1 (en) * 2004-02-09 2005-08-11 Phonex Broadband Corporation System and method for requesting and granting access to a network channel
US7475168B2 (en) * 2004-03-11 2009-01-06 Sonics, Inc. Various methods and apparatus for width and burst conversion
US7543088B2 (en) * 2004-03-11 2009-06-02 Sonics, Inc. Various methods and apparatuses for width and burst conversion
JP4480427B2 (ja) * 2004-03-12 2010-06-16 パナソニック株式会社 リソース管理装置
US20050210329A1 (en) * 2004-03-18 2005-09-22 Newisys, Inc. Facilitating system diagnostic functionality through selective quiescing of system component sensor devices
US7747771B1 (en) 2004-06-30 2010-06-29 Oracle America, Inc. Register access protocol in a multihreaded multi-core processor
CN101065739A (zh) * 2004-09-28 2007-10-31 皇家飞利浦电子股份有限公司 数据处理系统以及用于存储仲裁的方法
US7739436B2 (en) * 2004-11-01 2010-06-15 Sonics, Inc. Method and apparatus for round robin resource arbitration with a fast request to grant response
US7277975B2 (en) * 2004-11-02 2007-10-02 Sonics, Inc. Methods and apparatuses for decoupling a request from one or more solicited responses
US8032676B2 (en) * 2004-11-02 2011-10-04 Sonics, Inc. Methods and apparatuses to manage bandwidth mismatches between a sending device and a receiving device
US7155554B2 (en) * 2004-11-02 2006-12-26 Sonics, Inc. Methods and apparatuses for generating a single request for block transactions over a communication fabric
JP4907166B2 (ja) * 2005-01-12 2012-03-28 パナソニック株式会社 リソース管理装置
JP4625836B2 (ja) 2005-01-31 2011-02-02 パナソニック株式会社 アクセス調停装置
JP4419868B2 (ja) * 2005-02-25 2010-02-24 ソニー株式会社 情報処理装置および方法、メモリ制御装置および方法、記録媒体、並びにプログラム
US20060225015A1 (en) * 2005-03-31 2006-10-05 Kamil Synek Various methods and apparatuses for flexible hierarchy grouping
US20070067531A1 (en) * 2005-08-22 2007-03-22 Pasi Kolinummi Multi-master interconnect arbitration with time division priority circulation and programmable bandwidth/latency allocation
WO2007029053A1 (en) * 2005-09-09 2007-03-15 Freescale Semiconductor, Inc. Interconnect and a method for designing an interconnect
US7694249B2 (en) * 2005-10-07 2010-04-06 Sonics, Inc. Various methods and apparatuses for estimating characteristics of an electronic system's design
JP4974508B2 (ja) * 2005-10-28 2012-07-11 キヤノン株式会社 バスマスタ装置、バス調停装置及びバス調停方法
US8984534B2 (en) * 2006-03-31 2015-03-17 British Telecommunications Public Limited Company Interfacing between a receiving component of a server application and a remote application
EP2002334A1 (en) 2006-03-31 2008-12-17 British Telecommunications Public Limited Company Xml-based transfer and a local storage of java objects
US20080082708A1 (en) * 2006-09-29 2008-04-03 Kar Leong Wong Token hold off for chipset communication
US8868397B2 (en) 2006-11-20 2014-10-21 Sonics, Inc. Transaction co-validation across abstraction layers
US8020124B2 (en) * 2006-11-20 2011-09-13 Sonics, Inc. Various methods and apparatuses for cycle accurate C-models of components
US20080120082A1 (en) * 2006-11-20 2008-05-22 Herve Jacques Alexanian Transaction Co-Validation Across Abstraction Layers
US7814243B2 (en) * 2007-06-01 2010-10-12 Sonics, Inc. Shared storage for multi-threaded ordered queues in an interconnect
US8108648B2 (en) * 2007-06-25 2012-01-31 Sonics, Inc. Various methods and apparatus for address tiling
US8438320B2 (en) * 2007-06-25 2013-05-07 Sonics, Inc. Various methods and apparatus for address tiling and channel interleaving throughout the integrated system
US20080320255A1 (en) * 2007-06-25 2008-12-25 Sonics, Inc. Various methods and apparatus for configurable mapping of address regions onto one or more aggregate targets
US8229723B2 (en) * 2007-12-07 2012-07-24 Sonics, Inc. Performance software instrumentation and analysis for electronic design automation
TWI337517B (en) * 2008-03-04 2011-02-11 Inventec Corp Trace carrier
US8135878B1 (en) * 2008-04-07 2012-03-13 Tellabs San Jose Inc. Method and apparatus for improving throughput on a common bus
US8073820B2 (en) 2008-04-07 2011-12-06 Sonics, Inc. Method and system for a database to monitor and analyze performance of an electronic design
US8032329B2 (en) * 2008-09-04 2011-10-04 Sonics, Inc. Method and system to monitor, debug, and analyze performance of an electronic design
US8032678B2 (en) * 2008-11-05 2011-10-04 Mediatek Inc. Shared resource arbitration
JP5460156B2 (ja) * 2009-07-14 2014-04-02 キヤノン株式会社 データ処理装置
US9342471B2 (en) * 2010-01-29 2016-05-17 Mosys, Inc. High utilization multi-partitioned serial memory
US20110213949A1 (en) * 2010-03-01 2011-09-01 Sonics, Inc. Methods and apparatus for optimizing concurrency in multiple core systems
US8972995B2 (en) 2010-08-06 2015-03-03 Sonics, Inc. Apparatus and methods to concurrently perform per-thread as well as per-tag memory access scheduling within a thread and across two or more threads
US8601288B2 (en) 2010-08-31 2013-12-03 Sonics, Inc. Intelligent power controller
US8438306B2 (en) 2010-11-02 2013-05-07 Sonics, Inc. Apparatus and methods for on layer concurrency in an integrated circuit
US9405700B2 (en) 2010-11-04 2016-08-02 Sonics, Inc. Methods and apparatus for virtualization in an integrated circuit
US8711867B2 (en) 2011-08-26 2014-04-29 Sonics, Inc. Credit flow control scheme in a router with flexible link widths utilizing minimal storage
US8514889B2 (en) 2011-08-26 2013-08-20 Sonics, Inc. Use of common data format to facilitate link width conversion in a router with flexible link widths
US8798038B2 (en) 2011-08-26 2014-08-05 Sonics, Inc. Efficient header generation in packetized protocols for flexible system on chip architectures
US8868941B2 (en) 2011-09-19 2014-10-21 Sonics, Inc. Apparatus and methods for an interconnect power manager
US9910454B2 (en) 2012-06-07 2018-03-06 Sonics, Inc. Synchronizer with a timing closure enhancement
US9378023B2 (en) * 2012-06-13 2016-06-28 International Business Machines Corporation Cross-pipe serialization for multi-pipeline processor
CN105637821B (zh) * 2013-10-22 2020-06-05 慧与发展有限责任合伙企业 混合电路-分组交换机
US10152112B2 (en) 2015-06-10 2018-12-11 Sonics, Inc. Power manager with a power switch arbitrator
CN105760607B (zh) * 2016-02-22 2019-05-03 烽火通信科技股份有限公司 基于令牌桶的模拟总线有效带宽的仿真组件及方法
US10268614B2 (en) 2016-04-19 2019-04-23 Nokia Of America Corporation Method and apparatus for a segmented on-chip digital interface block
US10203967B1 (en) 2017-04-18 2019-02-12 Amazon Technologies, Inc. Client configurable hardware logic and corresponding data
WO2019123458A1 (en) * 2017-12-24 2019-06-27 Technion Research & Development Foundation Limited Message authentication based on a physical location on a bus
US10496594B1 (en) 2018-06-01 2019-12-03 Nxp Usa, Inc. Inter-processor communication method for access latency between system-in-package (SIP) dies
US10496593B1 (en) * 2018-06-01 2019-12-03 Nxp Usa, Inc. Inter-processor communication and signaling system and method

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4199661A (en) * 1978-05-05 1980-04-22 Control Data Corporation Method and apparatus for eliminating conflicts on a communication channel
EP0077328A4 (en) * 1981-04-27 1985-06-26 Textron Inc BUS FOR SEVERAL MAIN PROCESSORS.
JPH0740252B2 (ja) * 1986-03-08 1995-05-01 株式会社日立製作所 マルチプロセツサシステム
JP2728760B2 (ja) * 1990-02-13 1998-03-18 株式会社東芝 データ伝送装置並びに受信データ処理方法
FR2663137B1 (fr) * 1990-06-12 1994-07-29 Sgs Thomson Microelectronics Dispositif electronique de connexion.
EP0461408B1 (en) * 1990-06-14 1996-04-17 Mitsubishi Denki Kabushiki Kaisha Network address managing method and system
US5430848A (en) * 1992-08-14 1995-07-04 Loral Fairchild Corporation Distributed arbitration with programmable priorities
US5553245A (en) * 1994-05-11 1996-09-03 Macronix International Co., Ltd. Automatic configuration of multiple peripheral interface subsystems in a computer system
US5701420A (en) * 1994-07-20 1997-12-23 Intel Corporation Method for initializing an array of configurable components

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101232425B (zh) * 2007-01-26 2010-04-21 京信通信系统(中国)有限公司 一种总线式分布控制系统主从站对端控制方法
CN101271434B (zh) * 2007-03-22 2013-02-27 Arm有限公司 用于执行多周期仲裁的数据处理装置和方法
US8667199B2 (en) 2007-03-22 2014-03-04 Arm Limited Data processing apparatus and method for performing multi-cycle arbitration
US10745425B2 (en) 2016-07-01 2020-08-18 Shenzhen Yhlo Biotech Co., Ltd. Chemiluminescence enhancer and chemiluminescence immunodetection kit

Also Published As

Publication number Publication date
JP4259751B2 (ja) 2009-04-30
WO1999013405A1 (en) 1999-03-18
CN1150460C (zh) 2004-05-19
EP1027657B1 (en) 2005-11-16
EP1027657A4 (en) 2003-04-09
US5948089A (en) 1999-09-07
EP1027657A1 (en) 2000-08-16
JP2001516100A (ja) 2001-09-25
DE69832410T2 (de) 2006-08-03
KR100572372B1 (ko) 2006-04-19
DE69832410D1 (de) 2005-12-22
ATE310277T1 (de) 2005-12-15
AU8576498A (en) 1999-03-29
KR20010023734A (ko) 2001-03-26

Similar Documents

Publication Publication Date Title
CN1150460C (zh) 计算机总线系统、通信系统和通过总线通信的方法
CN1205562C (zh) 总线系统的分隔事务协议
CN1128406C (zh) 数据处理系统及其中断处理方法
CN1069426C (zh) 信息处理系统
US7412550B2 (en) Bus system with protocol conversion for arbitrating bus occupation and method thereof
CN1179283C (zh) 数据通信的方法和数据通信的集线器
CN1728118B (zh) 资源分配管理方法和设备
CN101887382A (zh) 动态优先级的仲裁方法及装置
JPH10507023A (ja) 共用メモリシステム
CN1954304A (zh) Pvdm(分组语音数据模块)通用总线协议
CN1488104A (zh) 控制数据处理系统间经由存储器的数据流的方法和装置
CN101719110A (zh) 光通信器件中多路i2c器件的实时监控方法
CN101635662B (zh) 可选传输优先权的高速外围元件互连传输器与控制方法
CN102035658B (zh) 一种高速1553b光纤总线ip核
CN1279790A (zh) 快速16位分离事务i/o总线
CN1279786A (zh) 用于高速总线的流控制的系统和方法
KR100960542B1 (ko) 메모리 에이전트, 메모리 시스템 및 방법
CN106489137A (zh) 通用串行总线(usb)通信系统和方法
CN1559039A (zh) 总线系统和用于连接到总线的总线接口
CN116566761B (zh) Spi双主机共享仲裁系统及方法
CN1161696C (zh) 在一条共用线上传输信号的方法与装置
CN1113298C (zh) 在总线系统中提供和嵌入控制信息的方法和装置
CN1561491A (zh) 总线系统和总线接口
CN1190925C (zh) 通用串行总线复合装置及其实现方法
CN101184022B (zh) 信用处理装置和流控制传输装置及其方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term

Granted publication date: 20040519

CX01 Expiry of patent term