CN1161696C - 在一条共用线上传输信号的方法与装置 - Google Patents

在一条共用线上传输信号的方法与装置 Download PDF

Info

Publication number
CN1161696C
CN1161696C CNB951030027A CN95103002A CN1161696C CN 1161696 C CN1161696 C CN 1161696C CN B951030027 A CNB951030027 A CN B951030027A CN 95103002 A CN95103002 A CN 95103002A CN 1161696 C CN1161696 C CN 1161696C
Authority
CN
China
Prior art keywords
parts
signal
bus
controller
address
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.)
Expired - Fee Related
Application number
CNB951030027A
Other languages
English (en)
Other versions
CN1125866A (zh
Inventor
Tm
T·M·多宾斯
Z·博金
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN1125866A publication Critical patent/CN1125866A/zh
Application granted granted Critical
Publication of CN1161696C publication Critical patent/CN1161696C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related 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/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/22Means for limiting or controlling the pin/gate ratio

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)
  • Multi Processors (AREA)

Abstract

描述了一种能够控制一个计算机系统中的多个半导体部件之间的信息传输的半导体部件。该半导体部件包括一个能够在一条共用线上发送一个第一类型的信号的第一信号发生器,以及一个能在该线上发送一个第二类型的信号的第二信号发生器。它还包括一个能够控制第一信号发生器的第一逻辑器件,及能够控制第二信号发生器的第二逻辑器件。

Description

在一条共用线上传输信号的方法与装置
本发明涉及计算机系统领域。更具体地,本发明涉及在计算机系统中的一条共用线上传输信号。
微处理器、控制器与其它半导体部件互相通信,并通过引线与外部设备通信。在传统的计算机体系结构中,将各信号分配给部件的一个单独的引线。从而,当一种新的设计规定一个新的信号时,必须在部件上加上一个新的引线。当引线的总数达到一定的数目时,半导体部件的现有尺寸不能再支持所有的引线。此时,必须增加部件的芯片尺寸来容纳外加的引线。然而,由于从一块给定的晶片尺寸生产的部件的数目的减少,而芯片尺寸的增加会提高制造成本。还由于由可接受的部件的百分比所表示的产量随芯片尺寸的增加而减少,芯片尺寸的增加也会提高制造成本。
对于市场价值较高的半导体部件,由于采用较大芯片尺寸而附加的制造成本并不明显。然而,对于市场价值较低的半导体部件,来自较大芯片尺寸的附加制造成本占有较明显的比例。
从而,需要有一种方法与装置来容许在不同的功能之间共用一个引线以减少所需的引线总数,从而消除对较大的芯片尺寸的要求。还需要一种方法与装置,它们使引线能传输不同类型的信号,从而减少所需引线的总数并消除对较大的芯片尺寸的要求。
这里描述了一种新颖的半导体部件。该半导体部件能够控制一个计算机系统中的多个半导体部件之间的信息传输。该半导体部件包括一个能够在一条共用线上发送一个第一类型信号的第一信号发生器,及一个能够在该共用线上发送一个第二类型信号的第二信号发生器。它还包括一个能够控制该第一信号发生器的第一逻辑装置,及一个能够控制该第二信号发生器的第二逻辑装置。第一类型的信号可以是一个命令、状态、地址或数据信号,而第二类型的信号也可以是一个命令、状态、地址或数据信号。在一个替代实施例中,该半导体部件还可包括一个能够在该共用线上接收第一类型信号的第一接收器,及一个能够在该共用线上接收第二类型的信号的第二接收器。此外,该半导体部件可包括一个能够仲裁对该共用线的访问的仲裁器。再者,该半导体部件可包括一个用于指示上一次传送的完成的一个完成信号的信号发生器或接收器。此外,该半导体部件还可包括一个用于指示在该共用线上传输一个命令信号的命令指示信号的信号发生器或接收器。
本发明是在附图中用示例的方式而不是用限制的方式展示的,在附图中相同的参照数字表示相同的元件,其中:
图1为展示本发明的一个实施例的半导体部件的方框图。
图2为展示本发明的第二实施例的一个计算机系统的方框图。
图3为展示本发明的第三实施例的操作的流程图。
图4为进一步展示本发明的第四实施例的操作的时序图。
图5为展示用于本发明的第五实施例中的协议的表。
图6为展示本发明的第六实施例的控制器的方框图。
图7为展示图6的仲裁器的操作的状态图。
图8为展示图6的主状态机的操作的状态图。
图9为展示图6中的从状态机的操作的时序图。
图10为展示图6的主状态机的操作的时序图。
图11为展示图6的从状态机的操作的状态图。
描述了用于控制多个半导体部件之间的信息传输的一种新颖的控制器与方法。在以下的描述中,本发明是参照其特定的示例性实施例描述的。然而,显而易见,可对其作出各种修正与改变而仍不脱离所附的权利要求书中所提出的本发明的广义精神与范围。从而,应从示例性而非限制性的意义上来看待本说明书与附图。
图1为展示本发明的一个实施例的半导体部件的方框图。半导体部件103经由链路106耦合在半导体部件104上。部件103与部件104都位于一个单一的计算机系统中。部件103在链路106上传输多种不同的信号类型到部件104。部件104也在链路106上传输多种不同的信号类型。这些不同的信号类型中可包含地址信号、命令信号、状态信号与数据信号。链路106耦合于线169。链路169可以是一条特定地专用于在部件103与部件104之间传输信号的专用线,或者线169也可以是用于其它目的的一条共用线。在本实施例中,线169是一条共用线。除了在部件103与部件104之间传输多种信号类型之外,线169还用作在部件101与部件103之间传输的地址信号的一条地址线。应当理解,线169也能用作部件101与部件103之间的一条命令线或数据线或状态线的一部分。也应理解,部件101、部件103与部件104可以是一个处理器、微控制器、总线控制器、存储器控制器之类。
图2为本发明的第二实施例的计算机系统的方框图。在这一计算机系统中,部件103为控制总线105上的信号传输的一个总线控制器。部件104也是一个总线控制器,但它控制一条分离的总线-总线133上的信号传输。部件101为耦合到又另一条总线-总线102上的一个处理器,总线102又耦合在控制器103上。控制器103与控制器104用链路106与线169耦合在一起。在本实施例中,如上所述,线169执行双重功能。它通过链路106在控制器103与控制器104之间传输命令、地址与数据信号。它还用作处理器101与控制器103之间的地址信号的一条地址线。由于链路106所执行的双重功能,计算机系统需要仲裁对链路106的访问。结果,在本实施例中,控制器103也有一个用于链路106的仲裁器。应当理解,该仲裁器可位于任何地方,诸如在处理器101或控制器104上。
在本实施例中,控制器103与控制器104还用载有四个唯一的边带信号的四条分离的专用线耦合在一起的。请求线124在控制器103与控制器104之间传输一个低态有效请求信号(LREQ#)。授权线125在控制器103与控制器104之间传输一个低态有效授权信号(LGNT#)。命令指示线126在控制器103与控制器104之间传输一个低态有效命令指示信号(CMDV#)。最后,空闲线127在控制器103与控制器104之间传输一个低态有效完成信号(SIDLE#)。当控制器103为链路主控器时由控制器103传输CMDV#,而当控制器104为链路主控器时则由控制器104传输CMDV#。同样当控制器103为链路从控器时由控制器103传输SIDLE#,而当控制器104为链路从控器时则由控制器104传输SIDLE#。
用在本实施例中的LREQ#、LGNT#、CMDV#与SIDLE#信号可进一步描述如下。LREQ#信号是控制器104用来请求访问链路106的信号。在控制器104试图在链路106上启动一个读或写周期之前,它确立LREQ#用于访问。当控制器103准备好授权控制器104访问时,它确立LGNT#。因此,LGNT#信号是控制器103用来授权访问链路106的信号。应能理解,在控制器103确立LGNT#之前,控制器104将不会在链路106上启动一个读或写周期。
此外,CMDV#信号是控制器103或控制器104用来指示它正在传输一个命令信号的信号。当控制器103或控制器104发送第一个命令包时确立CMDV#,而发送完最后一个命令包后撤消CMDV#。例如,如果控制器103发送两个命令包后跟着发送一个GO或ABORT包,则在这三个包的持续时间内它确立CMDV#,反之,如果控制器103发送两个命令包,接着发送两个数据包,再接着发送一个GO或ABORT包,则它在两个命令包的持续时间内确立CMDV#,在两个数据包的持续时间内撤消CMDV#而在GO或ABORT包的持续时间内再确立CMDV#。
再者,SIDLE#是控制器103或控制器104用来指示所请求事务的结束并从而可用它来接受随后事务的信号。当控制器103在链路105上启动一个读或写周期时,控制器104便成为从控制器。同样,当控制器104在链路106上启动一个读或写周期时,控制器103便成为从控制器。SIDLE#是由作为从控制器的控制器103或控制器104在传输第一个命令包之前至少一个时钟周期时确立的。这一确立表明可利用从控制器来处理一次事务。从控制器在接收第二个命令包的时钟边沿上撤消SIDLE#。保持SIDLE#的撤消直到完成了所请求的读或写周期为止,或者直到发出了ABORT命令为止。在一个读周期上,SIDLE#的重新确立出现于在链路106上驱动低位字的同一周期中。高位字总是在低位字的后面。对于写周期,SIDLE#的重新确立表明在目的总线上的写完成。
图3为展示本发明的第三实施例的操作的流程图。在这一实例中,为了便于说明,只例示了写周期操作。应能理解,读周期操作是相似的,  只是任何GO或ABORT命令是在命令与地址信号之后而在数据信号之前传输的。在本实施例中,处理器101是一个中央处理单元(CPU)。因此,CPU101便是主控制器而根据约定拥有对控制器103的地址线。因此,在起动计算机系统时,CPU101拥有对控制器103的地址线,如框207中所示。由于从CPU101至控制器103的地址线169构成从控制器103至控制器104的传输路径的一部分,因而当CPU101拥有对控制器103的地址线时,控制器103与控制器104之间不能传输任何信号。从而,在控制器103与控制器104之间能够进行任何传输之前,CPU101必须放弃对控制器103的地址线。使CPU101放弃地址线的初始步骤取决于启动传输的部件。当控制器103启动对控制器104的传输时(框227),它首先确立一个保持信号(HOLD),如框210中所示。控制器103等待直到CPU101在地址线上结束传输当前地址(框211)。完成了传输时,CPU101确立一个保持确认信号(HLDA),如框212中所示,并使地址线悬浮。另一方面,当控制器104启动传输时(框228),初始步骤则不同。根据约定,当CPU101不访问地址线时,控制器103拥有链路106而撤消LGNT#与LREQ#。从而,在得到对链路106的访问之前,控制器104在LREQ#线124上确立一个请求信号(LREQ#),如框229中所示。响应这一LREQ#信号,控制器103对CPU101确立一个保持信号(HOLD),如框230中所示。控制器103与控制器104等待直到CPU101在地址线上结束传输当前地址。CPU101结束后,它对控制器103确立一个保持确认(HLDA)信号,如框232中所示。CPU101还使地址线悬浮。控制器103在接到HLDA信号时,便在LGNT#线125上向控制器104确立一个授权信号(LGNT#)(框233)。应能理解,在本实施例中只有控制器103确立LGNT#并且只有控制器104确立LREQ#。也应能理解,对链路106的访问是经过仲裁的。从而在任何给定时间内,只有控制器103或控制器104能够传输。结果,链路106是一条半双工链路。
如果是由CPU101而不是控制器103或控制器104启动传输,则初始步骤也不同(框208)。当CPU101向控制器103传输时,不需要在链路106上传输,因此CPU101无需放弃对控制器103的地址线。然而,当CPU101向控制器104传输时,传输首先必须通过控制器103,然后在链路106上前进到控制器104。在这一情况中利用链路106,从而CPU101必须放弃对控制器103的地址线的控制。当传输给控制器104时,CPU101首先将信息传输给控制器103。控制器103在收到这一传输时,确立一个地址保持信号(AHOLD),如框209中所示。控制器103具有一个耦合在来自CPU101的地址线上的锁存器。这样,当CPU101在地址线上传输一个地址时,该地址便立即被控制器103存储。因而,当将一个地址从CPU101传输到控制器之后一个时钟周期,地址线便可被利用了。由于控制器103中的锁存器,CPU101在接收到来自控制器103的地址保持信号(AHOLD)之后便能使地址线悬浮而不损失信息。
当控制器104传输写周期时,控制器103则确立空闲信号(SIDLE#),如框234中所示。SIDLE#信号的确立是从控制器103到控制器104的一个指示,表明它可用于接收来自控制器104的一次传输。控制器104在传输一条命令之前必须采样有效的SIDLE#。在控制器103对控制器104确立SIDLE#信号之后,控制器104确立一个命令指示信号(CMDV#),同时传输命令信号与地址信号(框235)。CMDV#信号是从控制器104到控制器103的一个指示,表明正在链路106上发送命令信号。当控制器103仍在接收来自控制器104的命令与地址信号时,它并不处理这些命令或地址信号。从而,当控制器103仍在接收命令与地址信号时,它仍可利用并保持所确立的SIDLE#信号。当控制器103接收完所有的命令与地址信号时,它便撤消SIDLE#信号(框236),因为它开始处理命令与地址信号而不再可利用。控制器104也撤消CMDV#信号,因为它已完成了命令信号的传输,而命令信号不再在链路106上。然后,控制器104开始传输数据信号。控制器103完成了处理写周期之后,它便确立SIDLE#信号,如框237中所示。
当控制器103或CPU传输写周期时,这时控制器104确立空闲信号(SIDLE#),如框214中所示。SIDLE#信号的确立是从控制器104到控制器103的指示,表明它可用来接收来自控制器103的一次传输。在传输一个命令之前控制器103采样有效的SIDLE#。控制器104向控制器103确立SIDLE#信号之后,控制器103确立一个命令指示信号(CMDV#),同时传输命令信号与地址信号(框215)。CMDV#为从控制器103到控制器104的指示,表明正在链路106上发送命令。当控制器104仍在接收来自控制器103的命令与地址信号时,它并不处理这些命令或地址信号。从而,当控制器104仍在接收命令与地址信号时,它仍可被利用并保持所确立的SIDLE#信号。当控制器104接收完所有命令与地址信号时,便撤消SIDLE#信号,因为它开始处理这些命令与地址信号而不再可利用。控制器103也撤消CMDV#信号,因为它已完成了命令信号的传输,并且在链路106上不再是命令信号。再者,控制器103开始传输数据信号。在其发送数据信号期间,控制器103作出决定是否令控制器104继续处理刚才传输的地址与数据(框217)。这一判断是基于控制器104或总线133上的任何部件是否是数据的目的地的。如果控制器104或总线133上的一个部件是数据的目的地,控制器104便继续处理自控制器103传输来的地址与数据。反之,如果控制器104与总线133上的任何部件都不是数据的目的地,控制器104便停止处理自控制器103传输来的地址与数据。控制器103通过确立一个CMDV#信号然后传输一条进行命令(GO)来令控制器104继续处理所传输的地址与数据,如框218中所示。然后,控制器104完成地址与数据的处理。完成时,它确立SIDLE#(框219)。控制器103通过确立一个CMDV#信号然后传输一条中止命令(ABORT)令控制器104停止处理所传输的地址与数据,如框220中所示。控制器104结束处理并确立SIDLE#(框221)。当控制器103传输一条ABORT命令时,控制器104有一个周期来解码该ABORT命令,并在下一个时钟边沿上驱动SIDLE#。在本实施例中GO命令的格式为0000h而ABORT命令的格式则为F000h。GO或ABORT命令可在传输两个数据包以后的任何时间发送。
应当理解,GO命令与ABORT命令允许控制器103在解码命令、地址与数据信号的目的地之前传输命令、地址与数据信号给控制器104。这一特征是有利的,由于它在控制器103正在确定信息的目的地的同时,通过建立总线133地址而允许控制器104开始处理命令与地址信号。在本发明的这一实施例中,控制器103通过一次减法解码操作而确定信息的目的地。它在总线105上进行一次查询。如果总线105上的一个单个部件是信息的目的地,它会响应。经过一个规定的时间之后,当控制器103接收不到来自总线105上的部件的响应时,它便假定目的地是在总线133上而发布一条GO命令。反之,如果总线105上的一个部件响应控制器103的查询,控制器103便知道信息的目的地不在总线133上而发布一条ABORT命令。
在如框219、221或237中所示确立SIDLE#时,控制器103与控制器104完成写周期操作如下。如果确立了指示由控制器104启动的一个写周期的LREQ#(框222),控制器104便撤消LREQ#。然后,控制器103撤消LGNT#与HOLD(框22)。CPU撤消HLDA,而系统返回到框207,这时CPU再一次拥有链路。反之,如果确立了指示由控制器103启动的一个写周期的HOLD(框223),控制器103便撤消HOLD,CPU撤消HLDA(框226),而系统返回到框207。最后,如果确立了指示由CPU启动的一个写周期的AHOLD,则控制器103撤消AHOLD而系统返回至框207。
在本实施例中,保持严格的次序安排。控制器103在完成那个周期前面所指派的所有周期之前,不传输任何周期给控制器104。类似地,控制器103在完成所有指派的周期之前,不向控制器104发布LGNT#信号。
用在本实施例中的HOLD、HLDA与AHOLD信号可进一步描述如下。HOLD信号是控制器103请求控制耦合于CPU101的传输线而确立的一个信号。HLDA信号是CPU101表明它已使传输线悬浮而确立的一个信号。AHOLD信号是控制器103请求控制地址线169而确立的一个信号。与HOLD信号不同,CPU101并不用一个HLDA信号应答。反之,它在下一个时钟中使地址线169悬浮。CPU101只使地址线而不使命令或数据线悬浮。此外,GO命令是控制器103用来指示控制器104继续处理前面所传输的信息的命令。另一方面,ABORT命令是控制器103用来指示控制器104停止处理前面所传输的信息的命令。
图4为展示本发明的第四实施例的操作的时序图。当CPU101从事通过控制器103至控制器104的一个写周期时,它用确立一个ADS#信号开始。ADS#信号表示来自CPU101的地址与总线定义信号是有效的。与此同时,它开始向控制器103传输命令、状态、地址与数据信息。控制器103在CPU101与控制器103之间的地址线上接收到地址之后,它便确立AHOLD信号。当CPU101接收到AHOLD信号时,它便使地址线在一个时钟周期内悬浮。此时,链路106可供控制器103利用。控制器104确立SIDLE#信号表示它已准备好接收信息。控制器103以确立CMDV#信号并传输命令、状态与地址信号来响应。传输了命令、状态与地址信号后,控制器103撤消CMDV#信号,而控制器104则撤消SIDLE#信号。然后,控制器103传输数据包。传输完数据之后,控制器103确立CMDV#信号并传输一条GO或一条ABORT命令。当控制器104完成了命令、状态、地址与数据的处理时,它确立SIDLE#信号表示它已为下一次事务作好准备以及所请求的事务的结束。控制器103还撤消AHOLD信号以释放地址线供CPU101使用。
图4还展示了当CPU101通过控制器103启动一个对控制器104的读周期时的事件序列。CPU101通过确立ADS#信号并同时向控制器103传输命令与地址信号而开始。当控制器103在地址线上收到地址时,它确立AHOLD信号,CPU101使地址线悬浮作为响应。然后,控制器104确立SIDLE#信号,随着,控制器103确立CMDV#信号。此时,控制器103在链路106上传输命令、状态与地址信号。当控制器104接收了所有命令、状态与地址信号时,它便撤消SIDLE#信号。然而,控制器103则保持所确立CMDV#信号并传输一条GO命令。然后,控制器103撤消CMDV#信号。当控制器104接收到CPU101所请求的数据时,它确立SIDLE#信号并在链路106上传输数据。由于控制器104已将CPU101所请求的数据放在链路106上,现在它可被利用来处理下一次事务,从而它确立SIDLE#信号。当控制器103收到数据时,它撤消AHOLD信号并将数据传输回CPU101。
此外,图4还展示当总线105上的一个部件或控制器103跨越链路106对控制器104启动一个写周期时的事件序列。控制器103通过对CPU101确立一个HOLD信号而启动该序列。当CPU101完成了当前地址的传输时,它对控制器103确立一个HLDA信号并使地址线悬浮。然后,控制器104确立SIDLE#信号表示它已准备好在链路106上接收一次传输。控制器103收到SIDLE#信号时确立CMDV#信号表示它正在链路106上传输命令信号。同时,控制器103在链路106上传输命令、状态与地址信号。当控制器103完成了命令、状态与地址信号的传输时,它撤消CMDV#信号,而控制器104则撤消SIDLE#信号。然后,控制器103在链路106上将数据传输给控制器104。传输数据之后,控制器103确立CMDV#信号并传输一条适当的GO命令或ABORT命令,然后撤消CMDV#信号。当控制器104完成了命令、状态、地址与数据信号的处理时,它便确立SIDLE#信号。控制器103撤消HOLD信号而CPU101则撤消HLDA信号。还展示了由总线105上的一个部件或控制器103启动的一个读周期。应能理解,这一读周期与CPU在链路106上的上述读周期相同,但有一点特殊的是控制器103确立一个HOLD信号并等待一个HLDA信号而不是确立一个AHOLD信号。
此外,图4还展示了当控制器104在链路106上向控制器103传输一个写周期时的事件序列。控制器104首先向控制器103确立一个LREQ#信号请求访问链路106。响应这一LREQ#信号,控制器103向CPU101确立一个HOLD信号。当CPU101在地址线上传输完当前地址时,它确立一个HLDA信号并使地址线悬浮。控制器103在收到HLDA信号时,向控制器104确立一个LGNT#信号,授权控制器104访问链路106。控制器103在链路106上确立SIDLE#信号表示其可利用性。然后,控制器104确立CMDV#信号表示它正在链路106上传输命令,同时它传输命令、状态与地址信号。当它传输完命令、状态与地址信号时,控制器104撤消CMDV#信号而控制器103则撤消SIDLE#信号。然后,它以包的形式传输数据信号。在传输完数据信号时,控制器104便撤消LREQ#信号。然后,控制器103以撤消LGNT#信号来响应。它还撤消HOLD信号,而令CPU101撤消HLDA信号。以这一方式,控制器104放弃链路106的控制,而CPU101重新得到地址线的控制。
图5为展示用在本发明的第五实施例中的协议的一张表。在本实施例中,链路106包括16条独立的线从而一次能传输16位。在这一协议中,命令、状态、地址与数据信号是以五个分开的包在链路106上串行传输的。以这一方式,链路106中的各个线能传输命令、状态、地址与数据信号。第一个包格式是用于总线105上的一个部件、控制器103或CPU101在链路106上启动的一个写周期的协议。在第一个包中,(C1包),低位的13条线(0:12)用于向控制器104传输地址信号。线13用于传输指示该周期是一个读或写周期的W/R#信号。线14用于传输表示该写周期中包含数据还是控制信号的D/C#信号。第一个包的线15用于传输表示该写周期是对存储器还是对输入输出部件的M/IO#信号。第二个包(C2包)在C1包后而传输。在C2包中,低位的12条线(0:11)用于传输地址信号。其余4条线(12:15)用于传输字节使能。字节使能信号表示读与写周期中的有效字节。当字节使能对一个特定的字节有效时,所传输的数据便是有效的。第三个包(D1包)中,全部16条线(0:15)用于传输数据。同样,在第四个包(D2包)中全部16条线都用于传输数据。在第五个包中,低位的12条线(0:11)是保留的。剩下的四条线(12:15)用于传输GO命令或ABORT命令。图5还示出了当控制器103或CPU101在链路106上启动一个读周期时使用的协议。读周期协议类似于控制器103或CPU101启动的写周期协议。控制器103以上述相同的方式传输M/IO#信号、D/C#信号、W/R#信号、字节使能与地址信号。然而,第三个包,而不是一个数据包,而是包含GO命令或ABORT命令。第四个包是一个数据包(D1包)其全部16条线(0:15)向控制器104传输数据信号。第五个包也是一个数据包,D2包的全部16条线(0:15)向控制器104传输数据。
协议中还包括一种用于向控制器104传输信息的特殊格式,这时控制器104是信息的目的地。在该特殊格式中,第一个包是一个命令包(C1包)。控制器103在低位的12条线(0:11)上传输被编码的选择。控制器103分别在第13条线上传输一个W/R#信号而在最后三条线上(13:15)传输一个101。第二包也是一个命令包(C2包)。控制器103在低位的6条线(0:5)上传输地址信号。它还在后面的6条线(6:11)上传输被编码的选择,并在最后4条线(12:15)上传输字节使能。编码的选择指明用控制器104中的特定功能块表示的实际目的地。第三个包用于传输一条GO或ABORT命令,该命令在4条线(12:15)上传输。第四与第五个包(D1与D2包)分别用于传输数据信号。控制器103在全部16条线(0:15)上传输数据信号。在一个写周期中,第三个包为D1包,第四个包为D2包而第五个包则为GO或ABORT包。
在这种协议下,当控制器104而不是控制器103启动一个读周期或写周期时,格式与上述读与写周期相似,但有以下的不同,即不存在包含GO或ABORT命令的包。这样,控制器104启动的一个读或写周期只有四个包而不是五个包。
应能理解,所述协议允许链路106在链路106中的一条单一的线上传输不同类型的信号。结果,与使用只传输一种信号类型的线路的系统相比,传输相同信息所需的线路的数目减少了。在本例中,由于传输多种信号类型而链路106只需16条线。另一方面,传统的系统至少需要37条线来传输相同的信息量。从而,使用传输不同信号类型的线与协议来支持应用至少节省了21条线。这一线的节省同样节省了21个引线。
图6为展示本发明的第六实施例的控制器的方框图。虽然为了便于展示,在链路106中只示出了四条线,但链路106实际上包括16条独立的线。同样,控制器103具有16个节点,它们将地址信号传输给处理器101并从处理器101接收地址信号。这16个节点还在链路106上将命令、地址与数据信号传输给控制器104,并在链路106上从控制器104接收命令、地址与数据信号。控制器103还包括解码器633、仲裁器630、主状态机628与从状态机629。控制器104包括解码器664、主状态机631与从状态机632。解码器633解码CPU101、总线105上的一个部件或控制器103传输的地址。仲裁器630仲裁对链路106及到处理器101的地址线的访问。解码器664解码总线133上的一个部件或控制器104传输的地址。主状态机628在链路106上将命令、地址与数据信号传输给控制器104。从状态机629在链路106上接收来自控制器104的命令、地址与数据信号。主状态机631在链路106上将命令、地址与数据信号传输给控制器103,而从状态机632则在链路106上接收来自控制器103的命令、地址与数据信号。
图7为展示图6的仲裁器的操作的状态图。在接通计算机系统时,仲裁器630在状态733中所示的RESET(复位)模式中起动。仲裁器630转变到状态734中所示的IDLE(空闲)模式并保持在IDLE模式中直到下述三个事件之一出现为止。第一事件是来自解码器633的一个信号(HATCOMIO),它指示在链路106上从CPU101至控制器104的一个写或读周期。收到该信号时,仲裁器630转移到状态735,对CPU101确立一个AHOLD信号。当CPU101响应该AHOLD信号而使地址线悬浮时,仲裁器630转移到状态736,传输一个信号(HDONE)给控制器104中的从状态机632。这一信号指示从状态机632确立一个SIDLE#信号。然后在控制器103执行状态737中所示的读或写周期时仲裁器630转移到等待状态。当控制器103中的主状态机628完成读或写周期时,它便向仲裁器630确立一个信号(LDONE)。仲裁器630收到这一信号时便转移到状态738,撤消对CPU101的AHOLD信号。然后仲裁器630转移回IDLE状态734。
第二种使仲裁器630转移出空闲状态734的事件为来自解码器633的一个信号,它表示在链路106上来自总线105上的一个部件或控制器103的一个读或写周期。在收到这一信号(PSUBDEC)时,仲裁器630转移到状态739,对CPU101确立一个HOLD信号。然后仲裁器630转移到等待状态740,一直保持到CPU101确立一个HLDA信号为止。仲裁器630在收到HLDA信号时便向控制器104中的从状态机632传输一个信号,如状态741中所示。该信号指示从状态机632确立一个SIDLE#信号。然后仲裁器630转移到等待状态,如状态742中所示,同时控制器103执行写或读周期。当控制器103完成了写或读周期时,控制器103中的主状态机628向仲裁器630确立一个信号(LDONE)。仲裁器630在收到这一信号时转移到状态743,撤消对CPU101的HOLD信号。CPU101则撤消HLDA信号,而仲裁器630则转移回空闲状态734。
使仲裁器630转移出空闲状态734的第三种事件为控制器104确立一个LREQ#。仲裁器630在收到LREQ#信号时转移到状态744,向CPU101确立一个HOLD信号。然后仲裁器630转移到等待状态745,并一直等到CPU101确立一个HLDA信号为止。仲裁器630在收到来自CPU101的HLDA信号时向控制器104确立一个LGNT#信号,如状态746中所示。然后仲裁器630转移到等待状态747,一直等到控制器104完成读或写周期。当控制器104完成了读或写周期时,它便撤消LREQ#信号。此时,仲裁器630转移到状态748,撤消LGNT#信号。仲裁器630还撤消HOLD信号,如状态743中所示。CPU101以撤消HLDA信号来响应,而仲裁器630则转移回空闲状态734。可以理解,第三种事件便是在链路106上来自总线133上的一个部件或控制器104的一个读或写周期。
图8为展示图6的主状态机的操作的状态图。接通计算机系统时,主状态机628与控制器103在复位状态849中起动。然后主状态机628转移到空闲状态850。当撤消LGNT#信号时,主状态机628便转移到等待状态851。它一直保持在等待状态851中,直到控制器104确立LGNT#或控制器104中的从状态机632确立SIDLE#信号。如果主状态机628检测到LGNT#信号的确立,便转移回空闲状态850。反之,如果从状态机632确立SIDLE#信号,主状态机628便转移到状态855,确立一个CMDV#信号并传输第一个命令包(C1)。然后主状态机628传输第二个命令包(G2),如状态856中所示。主状态机628所执行的下一个状态取决于在链路106上执行的周期是一个写周期还是一个读周期。在一个写周期期间,主状态机628转移到状态857,撤消CMDV#信号。然后它传输第一个数据包(D1)如状态858中所示。D1包之后,主状态机628传输第二个数据包(D2),如状态859中所示。主状态机628然后转移到状态863,确立CMDV#信号。如果控制器103已完成了地址的减法解码,当地址指示总线133的包含控制器104在内一个部件时,主状态机628转移到GO状态870。当地址指示一个不在总线133上的部件时,主状态机628转移到ABORT状态868。如果控制器103尚未完成地址的减法解码,主状态机628转移到等待状态862并保持在等待状态中直到控制器103完成了减法解码。然后主状态机628转移到ABORT状态868或GO状态870,如上所述。
当CPU101或控制器103在链路106上传输一个读周期时,主状态机628在第一与第二命令包之后并不传输第一与第二数据包。反之,当控制器103已完成了减法解码并且地址指示不在总线133上的一个目的部件时,主状态机628转移到ABORT(中止)状态868。而当控制器103已完成了减法解码并且地址指示总线133上的一个部件(包含控制器104在内)的目的地时,它便转移到GO状态870。当控制器103尚未完成减法解码时,它便转移到等待状态862并保持在其中直到控制器103完成减法解码。等待状态862之后,主状态机628转移到ABORT状态868或GO状态870,如上所述。
在ABORT状态868中,主状态机628向控制器104与从状态机632发送一条ABORT命令。这一ABORT命令令控制器104停止处理主状态机628前面传输给它的命令与数据。然后主状态机628转移到状态867,撤消CMDV#信号。然后转移到状态8 61,向仲裁器630确立一个表示它已完成了该周期的信号。然后,主状态机628转移到等待状态851。
在GO状态870中,主状态机628传输一条GO命令给控制器104与从状态机632。GO命令令控制器104去完成对主状态机628前面传输的命令与数据的处理。然后,主状态机转移到状态865,撤消CMDV#信号。在一个写周期中,主状态机628转移到等待状态866,一直等到写操作完成。然后主状态机628向仲裁器630确立一个信号,如状态861中所示。然后它转移到等待状态851。另一方面,在一个读周期中,主状态机628转移到等待状态860,一直等到控制器104传输第一数据包(D1)为止。然后主状态机628转移到状态854,接收第一数据包。然后它转移到状态853,接收第二数据包(D2)。D2包之后,主状态机628向仲裁器630确立一个信号,如状态852中所示,并转移到等待状态851。
图9为展示图6中的从状态机的操作的时序图。接通计算机系统时,从状态机632在RESET状态971中起动。然后它转移到IDLE(空闲)状态972,只要确立了LGNT#信号它便保持在这一状态中。如果撤消了LGNT#信号,从状态机632便转移到WAIT(等待)状态973。当从状态机632接到来自仲裁器630的一个信号时,它便确立一个SIDLE#信号,如状态974中所示。当主状态机628确立CMDV#信号时,从状态机632转移到状态975接收第一命令包(C1)。然后它转移到状态976接收第二命令包(C2)并撤消SIDLE#信号。当操作为一个写周期时,主状态机628撤消CMDV#信号。然后从状态机632接收第一数据包(D1),如状态977中所示。此后它接收第二数据包(D2)如状态978中所示。如果主状态机629传输一条ABORT命令,从状态机632转移到状态981。如果主状态机628传输一条GO命令,从状态机632转移到状态980。如果主状态机628既不传输ABORT命令也不传输GO命令,从状态机632转移到WAIT状态979,一直等到主状态机628传输一条ABORT或一条GO命令。
另一方面,当操作为一个读周期时,从状态机632在第一与第二命令包之后并不接收第一数据包与第二数据包。反之,在它接收第二命令包并在状态976中撤消SIDLE#信号之后,在主状态机628传输一条ABORT命令时,转移到状态981。或者当主状态机628传输一条GO命令时,从状态机632转移到状态980。在主状态机628既不传输一条ABORT命令也不传输一条GO命令时,从状态机632转移到WAIT状态979,一直等到主状态机628传输一条ABORT或一条GO命令。然后,对于一条ABORT命令它转移到状态981而对于一条GO命令它转移到状态980。
在状态981中,从状态机632处理主状态机628传输的ABORT命令。它令控制器104停止对主状态机628前面传输的命令与数据的全部处理。然后从状态机632确立一个SIDLE#信号,如状态982中所示,并转移回WAIT状态973。
在状态980中,从状态机632处理主状态机628传输的GO命令。GO命令令控制器104去完成主状态机628前面传输的命令与数据。在一个写周期中,从状态机632确立一个SIDLE#信号,如状态982中所示,并转移回WAIT状态973。而另一方面,在一个读周期中,从状态机632转移到WAIT状态983,并一直等到准备好所请求的数据。此时,从状态机632确立SIDLE#信号,如状态984中所示。然后它传输第一数据包(D1),如状态985中所示,并传输第二数据包(D2),如状态986中所示。最后,从状态机632转移回WAIT状态973。
图10为展示图6的一个主状态机的操作的时序图。主状态机631位于控制器104中,并在控制器104启动的一个读周期或一个写周期中控制链路106上的信号传输。当接通计算机系统时,主状态机631在RESET状态1087中起动。然后,主状态机631转移到IDLE状态1088,一直保持在这一状态中直到接收到来自控制器104中的解码器664的一个指示控制器104或总线133上另一个部件启动的一个读或写周期的信号为止。在收到这一信号时,主状态机631确立LREQ#信号如状态1089中所示。然后它转移到WAIT状态1090,等待来自仲裁器630的一个LGNT#信号。收到LGNT#信号时,主状态机631进入WAIT状态1091,一直等到从状态机629与控制器103确立SIDLE#信号。收到SIDLE#信号之后,主状态机631确立CMDV#信号并传输第一命令包(C1),如状态1092中所示。然后主状态机631传输第二命令包(C2),如状态1093中所示。在第二命令包的结尾,主状态机631撤消CMDV#信号,如状态1094中所示。在一个写周期操作中,主状态机631传输第一数据包(D1)如状态1095中所示,及传输第二数据包(D2)如状态1096中所示。然后它转移到WAIT状态1097并保持到直到操作完成。此时它撤消LREQ#信号如状态1098中所示并转移回IDLE状态1088。
另一方面,在一个读周期操作中,主状态机631从状态1094转移到等待状态1099,并一直等到控制器103传输第一数据包,此时主状态机631转移到状态1001,接收第一数据包(D1)。然后接收第二数据包(D2)如状态1002中所示。然后,主状态机631撤消LREQ#信号如状态1098中所示并转移回IDLE状态1088。
图11为展示图6的一个从状态机的操作的状态图。从状态机629位于控制器103中。在接通计算机系统时,从状态机629在RESET状态1103中起动。然后它转移到IDLE状态1104,当撤消LGNT#期间它一直保持在其中。当仲裁器630确立LGNT#信号时,从状态机转移到WAIT状态1105,一直等到接收到来自仲裁器630的一个指示控制器104启动的一个读或写周期的信号。然后从状态机629确立一个SIDLE#信号如状态1106中所示。主状态机631用确立一个CMDV#信号来响应,并传输第一命令包(C1)。从状态机629接收第一命令包如状态1107中所示。然后它接收第二命令包(C2)并撤消SIDLE#信号,如状态1108中所示。在一个写周期操作中,主状态机631撤消CMDV#信号。从状态机629接收第一数据包(D1)并接收第二数据包(D2),如状态1109与1110中所示。然后它处理写周期如状态1111中所示。完成了写周期操作时,从状态机629确立SIDLE#如状态1112中所示并转移回等待状态1105。
另一方面,在一个读周期操作中,主状态机631撤消CMDV#信号,而从状态机629转移到WAIT状态1113并一直等到准备好所请求的数据。当准备好将数据传输回控制器104时,从状态机629确立SIDLE#信号如状态1114中所示。然后它传输第一数据包(D1)与第二数据包(D2),如状态1115与1116中所示。然后从状态机629转移回等待状态1105。
在本发明的第七实施例中,控制器103在激活LGNT#的周期上将使CMDV#悬浮。控制器103初始一直将SIDLE#驱动到低态,使控制器104可立即开始其事务而无需等待去采样一个有效的SIDLE#。此外,控制器103或控制器104在结束一次请求的事务时一直将SIDLE#驱动到低态。从而,在一个周期开始时,无需发信号通知从状态机去确立SIDLE#。
应能理解,用于确立与撤消各种控制信号的所述方法与装置允许将一条链路耦合到用于特定目的的一条线路上。用于一种目的(即在CPU101与控制器103之间传输地址信号)的一条线路也能服务于第二目的(即构成链路106的一部分来在控制器103与控制器104之间传输命令、状态、地址与数据)。将该链路耦合到一种用于特定目的的一条线路上,使链路能利用连接在线上的引线而不是利用一个独立的引线,从而节省引线。在带有耦合到16条地址线的16条线的一个链路的实例中,该链路利用这些地址线所用的16个引线而不是外加的引线。结果,除了前面描述的节省21个引线之外,又节省了16个引线。

Claims (14)

1.一种用于在一个计算机系统中的多个半导体部件之间传输信息的方法,包括下述步骤:
在耦合到所述计算机系统内的第一部件与第二部件的第一总线上发送第一类型的信号;
在所述第一总线上发送第二类型信号;
将沿着所述第一总线传输的信号沿第二总线发送到第三部件上,其中,所述第二总线包括比所述第一总线小的总线宽度;
在所述第一部件、所述第二部件与所述第三部件之间仲裁对所述第一总线的访问;
在所述第二部件与所述第三部件之间仲裁对所述第二总线的访问;
将第一总线的控制默认给第一部件,直到第二部件请求第一总线的控制,其中,在使用第一和第二总线之前,所述第二部件等待来自所述第一部件的第一确认信号;
授权第二部件对第一总线和第二总线的访问;以及
授权第三部件对第二总线的访问,其中,通过第一请求,所述第三部件向第二部件请求访问,并且等待来自所述第二部件的第一准许信号,在所述第二部件已经向第一部件请求第一总线的控制并且接收到来自所述第一部件的所述第一确认之后,所述第二部件确立所述第一准许信号。
2.权利要求1的方法,其中所述第一类型的信号为命令信号而所述第二类型的信号为数据信号。
3.权利要求1的方法,其中所述第一类型的信号为地址信号,而所述第二类型的信号为数据信号。
4.权利要求1的方法,其中所述第一部件不访问第一总线,而所述第一总线和第二总线的控制被默认给第二部件。
5.权利要求1的方法,其中所述第三部件沿着所述第二总线向第二部件发送,所述方法包括:
由所述第二部件确立第一准备信号;
由所述第三部件确立第一命令信号,直到第三部件沿着所述第二总线完成发送命令信号和地址信号;
沿着所述第二总线从所述第三部件向所述第二部件发送数据信号;
在所述第二部件完全接收到所述命令和地址信号后,由所述第二部件撤消所述第一准备信号;以及
在所述第二部件已经完成对从所述第三部件发送的所述命令信号、所述地址信号以及所述数据信号的处理后,由所述第二部件重新确立所述第一准备。
6.权利要求1的方法,所述第二部件沿着所述第二总线向第三部件发送,所述方法包括:
由所述第三部件确立第一准备信号;
由所述第二部件确立第一命令信号,直到第二部件沿着所述第二总线完成发送命令信号和地址信号;
在所述第三部件完全接收到所述命令和地址信号后,由所述第三部件撤消所述第一准备信号;
沿着所述第二总线从所述第二部件向所述第三部件发送数据信号;
由第二部件重新确立第一命令且由第二部件发送第一进行信号;以及
在所述第三部件已经完成对从所述第二部件发送的所述命令信号、所述地址信号以及所述数据信号的处理后,由所述第三部件重新确立所述第一准备。
7.权利要求1的方法,其中所述第二部件沿着所述第二总线向第三部件发送,所述方法包括:
由所述第三部件确立第一准备信号;
由所述第二部件确立第一命令信号,直到第二部件沿着所述第二总线完成发送命令信号和地址信号;
在所述第三部件完全接收到所述命令和地址信号后,由所述第三部件撤消所述第一准备信号;
沿着所述第二总线从所述第二部件向所述第三部件发送数据信号;
确定所述数据信号不应该被所述第三部件处理、所述第二部件重新确立所述第一命令信号且发送第一中止信号,所述第三部件终止对数据信号的处理且重新确立所述第一准备信号。
8.权利要求1的方法,其中所述第一部件向所述第二部件发送以便于随后向所述第三部件发送,包括:
从所述第一部件向所述第二部件发送数据,
一旦接收到来自所述第一部件的发送,由所述第二部件确立第二确认,使所述第一部件将第一总线的控制释放给所述第二部件,
由所述第三部件确立所述第一准备信号,
由所述第二部件确立所述第一命令信号,直到所述第二部件沿所述第二总线完成发送命令和地址信号;
沿所述第二总线从所述第二部件向所述第三部件发送数据信号;
在所述第三部件完全接收到所述命令和地址信号后,由所述第三部件撤消所述第一准备信号;
由所述第二部件重新确立第一命令且由第二部件发送第一进行信号;以及
在所述第三部件已经完成对从所述第二部件发送的所述命令信号、所述地址信号以及所述数据信号的处理后,由所述第三部件重新确立所述第一准备。
9.权利要求1的方法,其中所述第一部件向所述第二部件发送以便于随后向所述第三部件发送,包括:
从所述第一部件向所述第二部件发送数据,
一旦接收到来自所述第一部件的发送,由所述第二部件确立第二确认,使所述第一部件将所述第一总线的控制释放给所述第二部件,
由所述第三部件确立所述第一准备信号,
由所述第二部件确立所述第一命令信号,直到所述第二部件沿所述第二总线完成发送命令和地址信号;
沿所述第二总线从所述第二部件向所述第三部件发送数据信号;
在所述第三部件完全接收到所述命令和地址信号后,由所述第三部件撤消所述第一准备信号;以及
确定所述数据信号不应该被所述第三部件处理,所述第二部件重新确立所述第一命令信号且发送第一中止信号,所述第三部件终止对数据信号的处理且重新确立所述第一准备信号。
10.一种计算机系统,包括:
处理器;
耦合到所述处理器的存储器;
耦合到第一总线的多个部件;
耦合到第二总线的多个部件;
第一部件,控制信号在所述第一总线上的传输,所述第一部件耦合到所述第一总线且通过一双功能线耦合到所述处理器,所述双功能线载运多个类型的信息,该第一部件具有:耦合到仲裁电路的第一主状态机,用于向该仲裁电路发送信号和从该仲裁电路接收信号,还用于在该链路和多条信号线上向第二部件发送命令、地址和数据信号;第一从状态机,用于在该链路和多条信号线上从第二部件接收命令、地址和数据信号;第一解码器,用于对处理器、第二部件以及第一总线上的多个部件发送的地址进行解码;
第二部件,控制信号在所述第二总线上的传输,所述第二部件耦合到所述第二总线,通过多个信号线耦合到所述第一部件,以及通过在所述第一部件、所述第二部件和所述处理器之间载运信号的链路耦合到所述双功能线,该第二部件具有:第二主状态机,用于在该链路和多条信号线上向第一部件发送命令、地址和数据信号;第二从状态机,用于在该链路和多条信号线上从第一部件接收命令、地址和数据信号;第二解码器,用于对第一部件以及第二总线上的多个部件发送的地址进行解码,以及
仲裁电路,耦合到所述双功能线以便于仲裁对所述链路的访问,以使所述第二部件仅在通过所述多个信号线之一向所述第一部件发链路请求信号之后才访问所述链路。
11.权利要求10的计算机系统,其中所述双功能线包括地址线并且其中所述仲裁电路还仲裁对所述地址线的访问。
12.权利要求10的计算机系统,其中所述多个信号线包括:空闲信号线,用于载运表示事务完成的信号;命令线,用于载运表示命令信号通过所述链路正在发送的信号;链路请求线,用于载运来自所述第二部件的请求对所述链路进行访问的链路请求信号;以及链路授权线,用于载运来自所述第一部件表示所述链路是空闲的链路授权信号。
13.权利要求12的计算机系统,其中所述第一主状态机在确定目的地前通过所述链路发送命令、地址和数据信号,以及其中当所述目的地被确定为在所述第二总线上的部件时,所述第一主状态机将一个进行命令发出到所述第二从状态机,所述进行命令引导所述第二从状态机继续处理所述命令、地址和数据信号。
14.权利要求13的计算机系统,其中当所述目的地被确定为在所述第一总线上的部件时,所述第一主状态机将一个中止发出到所述第二从状态机,所述中止命令引导所述第二从状态机停止处理所述命令、地址和数据信号。
CNB951030027A 1994-03-18 1995-03-17 在一条共用线上传输信号的方法与装置 Expired - Fee Related CN1161696C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/210,560 US5533200A (en) 1994-03-18 1994-03-18 Method and apparatus for transmission of signals over a shared line
US210560 1994-03-18

Publications (2)

Publication Number Publication Date
CN1125866A CN1125866A (zh) 1996-07-03
CN1161696C true CN1161696C (zh) 2004-08-11

Family

ID=22783388

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB951030027A Expired - Fee Related CN1161696C (zh) 1994-03-18 1995-03-17 在一条共用线上传输信号的方法与装置

Country Status (9)

Country Link
US (3) US5533200A (zh)
JP (1) JP2002502513A (zh)
CN (1) CN1161696C (zh)
AU (1) AU2124095A (zh)
DE (1) DE19580195C2 (zh)
FR (1) FR2717645B1 (zh)
GB (1) GB2287862B (zh)
TW (1) TW401543B (zh)
WO (1) WO1995026002A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5729762A (en) * 1995-04-21 1998-03-17 Intel Corporation Input output controller having interface logic coupled to DMA controller and plurality of address lines for carrying control information to DMA agent
DE19730112A1 (de) * 1997-07-14 1999-01-21 Ericsson Telefon Ab L M Empfangs- und Speichervorrichtung für Übertragungseinheiten
JPH11259184A (ja) * 1998-03-11 1999-09-24 Nec Shizuoka Ltd 外部インタフェース回路
US6418538B1 (en) * 1998-07-06 2002-07-09 Intel Corporation Method and system for scheduling transactions over a half duplex link
JP4800045B2 (ja) * 2006-01-30 2011-10-26 浜松ホトニクス株式会社 固体撮像装置
JP4759494B2 (ja) * 2006-11-13 2011-08-31 パナソニック株式会社 シリアルデータ通信方式およびシリアルデータ通信装置
US8067955B2 (en) * 2008-08-21 2011-11-29 Texas Instruments Incorporated Preventing erroneous operation in a system where synchronized operation is required
KR102262550B1 (ko) * 2015-03-03 2021-06-10 에스케이하이닉스 주식회사 복수의 기능 블록들을 포함하는 반도체 장치 및 그것의 동작 방법
JP6809063B2 (ja) * 2016-09-09 2021-01-06 富士通株式会社 アクセス制御装置、アクセス制御方法、およびアクセス制御プログラム

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5259534A (en) * 1975-11-11 1977-05-17 Panafacom Ltd Data transfer system
US4365293A (en) * 1980-03-28 1982-12-21 Pitney Bowes Inc. Serial communications bus for remote terminals
US4379294A (en) * 1981-02-12 1983-04-05 Electric Power Research Institute, Inc. Data highway access control system
US4442502A (en) * 1981-03-30 1984-04-10 Datapoint Corporation Digital information switching system
US4481572A (en) * 1981-10-13 1984-11-06 Teledyne Industries, Inc. Multiconfigural computers utilizing a time-shared bus
US4490788A (en) * 1982-09-29 1984-12-25 Schlumberger Technology Corporation Well-logging data processing system having segmented serial processor-to-peripheral data links
US4870571A (en) * 1983-05-04 1989-09-26 The Johns Hopkins University Intercomputer communications based on message broadcasting with receiver selection
US4628480A (en) * 1983-10-07 1986-12-09 United Technologies Automotive, Inc. Arrangement for optimized utilization of I/O pins
JPS6184138A (ja) * 1984-10-01 1986-04-28 Nissan Motor Co Ltd ネツトワ−クシステム
JPH07104831B2 (ja) * 1985-09-20 1995-11-13 キヤノン株式会社 データ転送方法
US4760515A (en) * 1985-10-28 1988-07-26 International Business Machines Corporation Arbitration apparatus for determining priority of access to a shared bus on a rotating priority basis
US4858112A (en) * 1985-12-17 1989-08-15 General Electric Company Interface comprising message and protocol processors for interfacing digital data with a bus network
US4835414A (en) * 1988-03-14 1989-05-30 Advanced Micro Devices, Inc. Flexible, reconfigurable terminal pin
US4987529A (en) * 1988-08-11 1991-01-22 Ast Research, Inc. Shared memory bus system for arbitrating access control among contending memory refresh circuits, peripheral controllers, and bus masters
DE3900348A1 (de) * 1989-01-07 1990-07-12 Diehl Gmbh & Co Universelles bus-system
US5131007A (en) * 1989-06-09 1992-07-14 General Electric Company Digital voter for multiple site PST R trunking system
US5160922A (en) * 1990-06-29 1992-11-03 Digital Equipment Corporation System and method for dynamic avoidance of a simultaneous switching output limitation of a integrated circuit chip
US5239630A (en) * 1990-07-02 1993-08-24 Digital Equipment Corporation Shared bus arbitration apparatus having a deaf node
JP3206006B2 (ja) * 1991-01-25 2001-09-04 株式会社日立製作所 二重化バス制御方法及び装置
JPH07111670B2 (ja) * 1991-03-12 1995-11-29 インターナショナル・ビジネス・マシーンズ・コーポレイション コントローラ、通信インターフェース、およびデータ伝送を制御する方法
US5359715A (en) * 1991-09-16 1994-10-25 Ncr Corporation Architectures for computer systems having multiple processors, multiple system buses and multiple I/O buses interfaced via multiple ported interfaces
JP3466212B2 (ja) * 1991-09-17 2003-11-10 インテル・コーポレーション コンピュータシステム
DE4135553A1 (de) * 1991-10-29 1993-05-06 Alcatel Sel Aktiengesellschaft, 7000 Stuttgart, De Verfahren und schaltungsanordnung zur datenblockuebertragung ueber ein bussystem
US5379384A (en) * 1992-06-05 1995-01-03 Intel Corporation Configuration data loopback in a bus bridge circuit
US5392033A (en) * 1993-01-05 1995-02-21 International Business Machines Corporation Priority generator for providing controllable guaranteed fairness in accessing a shared bus

Also Published As

Publication number Publication date
US5706444A (en) 1998-01-06
FR2717645B1 (fr) 2004-08-20
FR2717645A1 (fr) 1995-09-22
GB2287862B (en) 1998-11-04
TW401543B (en) 2000-08-11
JP2002502513A (ja) 2002-01-22
DE19580195T1 (de) 1997-01-16
DE19580195C2 (de) 2003-07-03
CN1125866A (zh) 1996-07-03
WO1995026002A1 (en) 1995-09-28
GB2287862A (en) 1995-09-27
AU2124095A (en) 1995-10-09
US5533200A (en) 1996-07-02
GB9501874D0 (en) 1995-03-22
US5974488A (en) 1999-10-26

Similar Documents

Publication Publication Date Title
CN1207670C (zh) 具有重叠读写操作和可伸缩地址流水线化的数据传送系统
US20050289268A1 (en) Internal bus system
JPH02500784A (ja) 保留バスにおいて割り込み要求メッセージを処理するノード
JPH10503041A (ja) バス結合遅延時の調停方式
JPH03214343A (ja) 情報処理システムおよびデータ処理方法
US6345345B1 (en) Data communications device and associated method for arbitrating access using dynamically programmable arbitration scheme and limits on data transfers
CN1161696C (zh) 在一条共用线上传输信号的方法与装置
GB2365596A (en) Transfer acknowledgement in a bus system
CN102207920B (zh) 一种bvci总线到ahb总线的转换桥
CA2527428A1 (en) System for allocating minimum and maximum bandwidths
US7543093B2 (en) Method and system for stream burst data transfer
GB2365288A (en) Bus arbitration system
CN113904762B (zh) 一种带环形缓冲区的全双工485总线通信系统及方法
JP4104939B2 (ja) マルチプロセッサシステム
KR100340815B1 (ko) 버스시스템의작동방법및이작동방법을수행하기위한장치
US8090915B2 (en) Packet transmission control apparatus and method
JPS5986940A (ja) マルチドロツプ方式の情報伝送方式
CA2527426A1 (en) Allocating bandwidths in system with redundant circuits
JPS63293657A (ja) シリアル通信制御装置
JP2639248B2 (ja) 通信インターフェイス装置
JPH1115779A (ja) バス制御システム
JP3472638B2 (ja) 双方向通信切替装置及び双方向通信切替方法
CN113434441A (zh) 一种dma传输方法、装置、控制器及可读存储介质
KR100324281B1 (ko) 중앙 집중식 고속 데이터 전송 장치
JP3457084B2 (ja) パケットバス制御装置

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20040811

Termination date: 20110317