CN1199117C - 信源同步及公共时钟协议中的数据传输 - Google Patents
信源同步及公共时钟协议中的数据传输 Download PDFInfo
- Publication number
- CN1199117C CN1199117C CNB998021520A CN99802152A CN1199117C CN 1199117 C CN1199117 C CN 1199117C CN B998021520 A CNB998021520 A CN B998021520A CN 99802152 A CN99802152 A CN 99802152A CN 1199117 C CN1199117 C CN 1199117C
- Authority
- CN
- China
- Prior art keywords
- data
- bus
- agent
- transmission
- 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.)
- Expired - Fee Related
Links
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/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- 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/4009—Coupling between buses with data restructuring
- G06F13/4018—Coupling between buses with data restructuring with data-width conversion
-
- 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/4027—Coupling between buses using bus bridges
- G06F13/405—Coupling between buses using bus bridges where the bridge performs a synchronising function
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Information Transfer Systems (AREA)
Abstract
在计算机系统(100)中的总线代理(102-105)之间传输数据的方法与装置。本发明包含通过第一传输协议将控制信号(428、426)从第一代理(102-105)传输到第二代理(102-105);以及通过第二传输协议将对应于控制信号(428、426)的数据(308)从第一代理(102-105)传输到第二代理(102-105)。在一个实施例中,控制信号(428、426)是通过相对于总线时钟(600)的同步传输从第一代理(102-105)传输到第二代理(102-105)的;而数据则是通过相对于总线时钟(600)的异步传输传输的。同步传输为公共时钟数据传输协议,而异步传输则为信源时钟数据传输协议。
Description
技术领域
本发明涉及计算机系统中的数据传输领域。
背景技术
现代计算机系统通常包含各耦合在系统总线上的多个代理。通常,这些代理为带有将各代理耦合在总线上的多个针脚的集成电路插件。这些代理中可包含例如处理器、存储设备、大容量存储设备等。为了使计算机系统正常操作,代理应能通过总线高效地互相通信。
现有的计算机系统通常按照预先规定的定时方案在部件或代理之间传送数据。系统总线时钟通常用时钟控制发送设备输出数据及输入接收设备。结果,至少占用系统总线时钟的一个完整的时钟周期将数据从一个设备传送到另一设备。
然而,为了提高数据传输速度,数据也可以信源同步方式传送。在信源同步传输中,与数据传输一起发送选通脉冲。这一选通脉冲在通常短于系统总线时钟的周期的时段中将数据锁存到接收设备中。
信源同步锁存协议在较高频率上操作总线。例如,在公共时钟传输中驱动一块数据占用的时间中可驱动两块数据到总线上。
结果,为了提高传输数据的带宽而无须对应提高所传输信号的数目,提供用信源同步协议传输数据同时用公共时钟协议传输控制信号的系统是有利的。
发明内容
本发明提供用于在计算机系统中的总线代理之间传输数据的方法与装置。本发明包含通过第一传输协议从第一代理传输控制信号到第二代理;以及通过第二传输协议从第一代理传输对应于控制信号的数据到第二代理。
根据本发明的一个方面,一种在计算机系统中的总线代理之间传输数据的方法,包括下述步骤:
通过由计算机系统的总线时钟计时的第一传输协议从第一代理向第二代理传输控制信号;以及
通过第二传输协议从所述第一代理向所述第二代理传输与所述控制信号对应的数据,第二传输协议能使第二代理对与总线时钟异步的数据抽样,所述数据与多个选通脉冲信号同步,多个选通脉冲信号的各个在分开的选通脉冲线上,各选通脉冲信号锁定分开的数据块。
根据本发明的另一个方面,一种用于在计算机系统中的总线代理之间传输数据的装置,所述装置包括:
可进行操作通过由计算机系统的总线时钟计时的第一传输协议从第一代理传输控制信号到第二代理的总线;
所述总线还可进一步操作通过第二传输协议从所述第一代理将对应于所述控制信号的数据传输到所述第二代理,所述第二传输协议使第二代理能对与总线时钟异步的数据抽样,所述数据与多个选通脉冲信号同步,多个选通脉冲信号的各个在分开的选通脉冲线上,各选通脉冲信号锁定分开的数据块。
根据本发明的又一个方面,一种在计算机系统中的总线代理之间传输数据的方法,包括:
根据基于总线时钟的公用时钟协议将一个或多个控制信号从多个总线代理中的第一总线代理传送给多个总线代理中的第二总线代理;
根据容许第二总线代理对与总线时钟异步的数据抽样的信源同步数据传输协议将与一个或多个控制信号相应的数据从第一总线代理传送给第二总线代理,所述数据与多个选通脉冲信号同步,多个选通脉冲信号的各个在分开的选通脉冲线上,各选通脉冲信号锁定分开的数据块。
根据本发明的再一个方面,一种在总线代理之间传输数据的方法,包括:
根据由总线时钟计时的第一传输协议将表示多个总线事务阶段之一的控制信号从第一总线代理传送给第二总线代理;和
根据包括多个选通脉冲信号的第二事务协议将与总线事务相关的数据从第一总线代理向第二总线代理传送,所述多个选通脉冲信号的各个在一条分开的选通脉冲线上,所述多个选通脉冲信号能使第二总线代理用所述一个和多个与总线时钟异步的独立选通脉冲信号取样数据。
根据本发明的别的一个方面,一种在总线代理之间传送信号的方法,包括:
通过以第一速率计时的第一传输协议将控制信号从计算机系统的第一代理传送给计算机系统的第二代理,其中第一速率为计算机系统的总线时钟速率;和
通过以第二速率计时的第二传输协议将与控制信号相应的数据从第一代理传送给第二代理,其中第二速率由控制信号确定,所述数据与多个选通脉冲信号同步,多个选通脉冲信号的各个在分开的选通脉冲线上,各选通脉冲信号锁定分开的数据块。
根据本发明的还有一个方面,一种在计算机系统中的代理之间传输信号的方法,包括:
以计算机系统总线时钟的速率将控制信号从所述计算机系统的第一代理传送给计算机系统的第二代理;
以控制信号选取的第二速率将与控制信号相应的数据从第一代理传送给第二代理,其中第二速率为总线时钟的速率或两倍总线时钟速率的速率;
若控制信号选取两倍总线时钟的速率,则
发送在第一选通脉冲线上的第一选通脉冲和在第二选通脉冲线上的第二选通脉冲;
根据第一选通脉冲的定时锁定第一数据块;
根据第二选通脉冲的定时锁定第二数据块。
根据本发明的还有一个方面,一种在代理之间传输信号的系统,包括:
总线;
总线时钟;
第一代理和第二代理,都与总线连接;其中:
第一代理以总线时钟的速率将控制信号传送给第二代理;
第一代理以控制信号确定的速率将数据信号传送给第二代理,所述数据信号与多个选通脉冲信号同步,多个选通脉冲信号的各个在分开的选通脉冲线上,各选通脉冲信号锁定分开的数据块。
附图说明
图1为按照本发明的多代理计算机系统的框图。
图2为按照本发明的实施例的处理阶段图。
图3为展示公共时钟锁存协议的定时图。
图4为展示按照本发明的实施例的信源同步锁存协议的定时图。
图5为按照本发明的一个实施例的代理的框图。
图6为展示按照本发明的实施例利用信源同步传输读64字节事务处理带隐含的写回的定时图。
具体实施方式
描述了用于在计算机系统中通过公共时钟协议传输控制信号及通过信源同步协议传输数据的方法与装置,控制信号的传输是用系统总线时钟定时的,而数据的传输是用数据源传输的选通脉冲定时的。
图1为可与本发明的实施例一起使用的多处理器计算机系统的框图。计算机系统100包括处理器-存储器总线101,用于在诸如处理器、总线桥路、存储设备、外围设备等耦合在总线101上的不同代理之间通信。处理器-存储器总线101包含仲裁、地址、数据与控制总线(未示出)。在一个实施例中,各处理器102、103、104与105的每个包含通常称作一级(L1)高速缓冲存储器的小型的极快速的内部高速缓冲存储器(未示出)用于临时存储与其关联的处理器在同一集成电路上的数据与指令。此外,较大的二级(L2)高速缓冲存储器106耦合在处理器105上用于临时存储供处理器105使用的数据与指令。在其它实施例中,可将诸如存储器106等L2高速缓冲存储器耦合到处理器102-105中任何一个上。
处理器-存储器总线101提供对存储器与输入/输出(I/O)子系统的访问。存储器控制器122耦合在处理器-存储器总线101上,用于控制对为处理器102-105存储信息与指令的随机存取存储器(RAM)或其它动态存储设备121(一般称作主存储器)的访问。显示设备132、键盘设备133、光标控制设备134、硬拷贝设备135及大容量存储设备136耦合在系统I/O总线131上并通过总线桥路124耦合在处理器-存储器总线101上。桥路124耦合在处理器-存储器总线101与系统I/O总线131上,为处理器-存储器总线101或I/O总线131之一上的设备访问另一总线上的设备或在它们之间传输数据提供通信路径或通道。桥路124为系统I/O总线131与处理器-存储器总线101之间的接口。I/O总线131在外围设备132-136之间传递信息。
处理器102-105、总线桥路124、大容量存储设备125及存储器控制器122各包含一总线控制器138。当包含它的代理控制处理器-存储器总线101时,总线控制器138控制处理器-存储器总线101上的通信。
在本发明的一个实施例中,处理器-存储器总线101上的总线活动是分层组织成操作、事务处理及阶段的。操作为对软件呈现为不可分割的总线过程,诸如读取自然对齐的存储器单元。执行操作通常需要一次事务处理但可能需要多次事务处理,如在延期回答的情况中,其中请求与回答是不同事务处理,或在软件期望为原子的非排成行的存储器操作。在这一实施例中,事务处理是在应答阶段期间从请求总线仲裁到事务处理(例如正常或隐含的写回应答)完成关于单个请求的一组总线活动。
在一个实施例中,事务处理包含多达6个不同阶段。然而,根据事务处理与应答类型,有些阶段不是必须的。另外,也可增加附加的阶段。一个阶段使用特定的信号群来传递特定类型的信息。在一种实现中这些阶段是:
仲裁阶段
请求阶段
出错阶段
窥探阶段
应答阶段
数据传输阶段
在一个实施例中,数据传输阶段不是必要的,如果事务处理是传输数据便使用它。如果在起动请求时(例如对于写事务处理)可得到数据,数据阶段是请求起动的。如果在生成事务处理应答时得到数据(例如对于读事务处理),则数据阶段是应答起动的。事务处理可包含请求起动的数据传输及应答起动的数据传输两者(例如转换成从第一高速缓冲存储器到第二高速缓冲存储器的隐含写回的写)。
在本发明的一个实施例中,关于仲裁阶段、请求阶段、出错阶段、窥探阶段及应答阶段所传输的信号是通过公共时钟协议传输的(即由系统总线定时),如下面更详细地描述的。然而,为了每一时钟周期传输更大量的数据,在数据传输阶段中所传输的数据是通过信源同步协议传输的,如下面更详细地描述的。
来自不同事务处理的不同阶段可以重叠,使得总线利用能流水作业并改进总线性能。图2示出两个事务处理的重叠阶段的实例。参见图2,事务处理从仲裁阶段开始,在其中请求代理成为总线拥有者。只有在驱动下一事务处理的代理并未拥有总线时才需要出现仲裁阶段。在一种实现中,在请求拥有权两或更多时钟周期之后在仲裁阶段中将总线拥有权授于请求代理。
第二阶段为请求阶段,在其中总线拥有者在总线上驱动请求与地址信息。在一种实现中,请求阶段是授于总线拥有权之后一或多个周期(假定存在仲裁阶段),并且是两个时钟周期长。在第一时钟中与事务处理类型及足够的信息一起给出地址信号以开始窥探存储器存取。在第二时钟中,如果数据传输小于数据总线宽度,便利用字节起动来标识应传输哪些字节,如果要将延期应答给予请求便利用事务处理标识符来唯一地标识该事务处理,并连同其它事务处理信息一起驱动上述字节起动、事务标识符及请求的数据传输长度。
事务处理的第三阶段为出错阶段。出错阶段指出请求触发的任何立即错误,诸如奇偶校验错误。如果发现错误,检测出事务处理中的错误的代理便在出错阶段中断言出错信号。按照一个实施例,当指出了错误时,便立即放弃事务处理(即,该事务处理不再在流水线中继续前进)并可由发布该事务处理的代理重新驱动。代理是否重新发布该事务处理取决于代理本身。在一种实现中,出错阶段是在请求阶段之后三个时钟周期。
在一个实施例中,由于在出错阶段中的错误而未撤消的每一个事务处理具有窥探阶段。窥探阶段指示在事务处理中访问的高速缓冲存储器线是否无效、有效还是在任何代理的高速缓冲存储器中被修改过(改良过的高速缓冲存储器线通常被称为“脏”的)。在一种实现中,窥探阶段从请求阶段起四个或更多时钟周期。
总线的窥探阶段定义窥探窗口,在这一期间总线上能出现窥探事件。窥探事件指称代理通过总线传输与/或接收窥探结果。具有需要在窥探阶段中驱动的窥探结果的代理在窥探窗口期间作为窥探事件驱动这些窥探结果。包含驱动这些结果的代理在内的耦合在总线上的所有窥探代理在窥探窗口期间作为窥探事件接收这些窥探结果。在一种实现中,窥探窗口是单一总线时钟。
应答阶段指示事务处理失败还是成功,应答是立即还是延期,事务处理是否要重试,或者事务处理是否包含数据阶段。如果事务处理包含应答起动的数据阶段,则它进入与应答阶段重合的数据传输阶段。
如果事务处理没有数据阶段,则该事务处理在应答阶段上完成。如果请求代理具有写数据要传输或已请求了读数据,在前一情况中事务处理具有延伸超过应答阶段的数据阶段,而在后一情况中具有与应答阶段重合或延伸超过它的数据阶段。只在事务处理要求数据传输时才出现数据阶段。数据阶段可以是应答起动的(例如由存储器控制器或另一处理器)或者是请求起动的。
总线通过将总线事务处理分裂成两个独立的事务处理来接纳延期事务处理。第一事务处理包含请求代理的请求及应答代理的应答。如果应答代理准备好应答,应答包含发送请求数据(或完成信号)。然而,如果应答代理未准备好完成总线事务处理,则应答代理可在应答阶段中在总线上发送延期应答。发送延期应答使其它事务处理能被发布而不被这一事务处理的完成所阻塞。当应答代理准备好完成延期的总线事务处理时,应答代理仲裁总线的拥有权并在总线上发送包含所请求的数据(或完成信号)的延期的应答事务处理。
因为在这一实施例中总线具有流水线性质,在不同时间上多个事务处理可在总线的不同阶段上,例如,一个事务处理可在窥探阶段,同时第二事务处理在出错阶段而第三事务处理在请求阶段。从而,即使出错信号与请求信号对应于不同的事务处理,它们可以同时在总线上发布。
在本发明的一个实施例中,在任何特定时间上总线可有多达16个未完成的事务处理,及在任何特定时间上可有多达16个事务处理正在等待延期的应答。
此外,本发明的一个实施例还支持作为读或写事务处理的一部分的隐含的写回。当请求代理在总线上放置对以修改状态存储在耦合在总线上的高速缓冲存储器中的高速缓冲存储器行的请求时,出现隐含的写回。例如,代理可在8字节数据(或小于等于高速缓冲存储器行的某一其它数据量)的总线上执行写事务处理,而包含这8个字节的高速缓冲存储器行则以修改状态存储在另一代理的高速缓冲存储器中。在这一情况中,包含修改状态中的高速缓冲存储器行的高速缓冲存储器(或耦合在该高速缓冲存储器上的代理)便在事务处理的窥探阶段中在总线上发布“命中修改的”信号。请求代理将8字节写数据放置在总线上,这些数据被目标代理检索。然后,与事务处理的应答阶段重合,包含修改状态的高速缓冲存储器行的高速缓冲存储器将该高速缓冲存储器行(在一种实现中为32或64字节)写到总线上。然后,将请求代理未写的高速缓冲存储器行中的任何数据与来自原始数据传输的写数据合并。
隐含的写回也可能与读事务处理一起出现。例如,请求代理可能执行以总线上的存储器控制器为目标的读事务处理,但它也命中了窥探代理的高速缓冲存储器中的修改过的高速缓冲存储器行。在这一实例中,窥探代理成为源代理并提供请求的数据,作为隐含的写回到存储器控制器,后者又将写回的数据存储到主存储器中。在这一实例中,请示代理也从总线上取隐含写回的数据(称作“捕捉(snarfing)”数据)。然而,在另一实施例中,存储器控制器可执行捕捉,在这一情况中请求代理从总线上取走高速缓冲存储器行而存储器控制器从总路线上取走不取走均可。
图3是表示按照本发明的一个实施例在控制信号传输的公共时钟事务处理中总线上出现的事件的定时图。在这里的定时图中,方形符号表示驱动信号,圆形符号表示抽样信号(锁存或捕捉),而三角形符号表示接收或观察到信号。
这里信号名称使用大写字母,诸如ADS#。一组相关信号中的信号用数字后缀区分,诸如A4用于地址位4。如果将数据位0至63表示为诸如D[63-0],则一组信号复盖数字后缀的范围。“#”后缀表示该信号低态有效。没有“#”后缀表示该信号高态有效。某些信号有效的逻辑电平只是为特定实施例所作的选择,对本发明并不重要。名词“断言”蕴含将信号驱动到活跃逻辑电平。名词“去断言”蕴含将信号驱动到其不活跃逻辑电平。
总线时钟信号BCLK 600是在其上升边上活跃的。在时钟周期T1开始时,在总线上断言信号A#602。在T2开始时,BCLK 600锁存信号A#602。在T3开始时,响应A#602的锁存断言B#604。在T2中A#602将其状态改变到原始不活跃状态。从图3中可以看出,断言A#602之后两个BCLK 600周期,响应A#602断言B#604。
图4为展示按照一个实施例用于数据传输的信源同步数据传输的定时图。作为结果,与通过公共时钟协议相比,本发明在每一总线时钟周期中能传输更大量的数据。如在发送与接收四块数据D1、D2、D3与D4的实例中所示。BCLK 600以其正常频率工作,正如在图3中所示的公共时钟事务处理中。按照图4中所示的信源同步协议,数据是与选通脉冲STBp[3:0]#310及STBn[3:0]#312一起发送与锁存的以便允许以合理的信号飞行时间使传输率两倍于公共时钟传输率。信源同步锁存协议在BCLK 600的两倍频率上操作总线。在它以公共时钟传输驱动一块所占用的时间中驱动两块数据到总线上。因此,可将带宽加倍而无须对应增加传输的信号的数目。
如表IV中所说明的,信号DRDYS#428与DRDY#426都活跃表示发送者正在以信源同步128位模式发送数据。D#302包括驱动器所见的数据信号。D#308包括接收机所见的数据信号。STBp[3:0]#304与STBn[3:0]#306为选通脉冲信号驱动器所见的选通脉冲信号。STBp[3:0]#310与STBn[3:0]#312为数据与选通脉冲信号接收机所见的选通脉冲信号。在上升边及总线时钟的50%点上,驱动器发送新数据。在总线时钟的25%点与75%点上,驱动器发送定中的差分选通脉冲STBp[3:0]#304与STBn[3:0]#306。接收机确定地捕捉带选通脉冲的数据。
在一实施例中,驱动器在驱动D[63:0]#302之前先驱动STBp[3:0]#304。驱动器在以数据为中心的STBp[3:0]#304与STBn[3:0]#306上发送上升与下降边。驱动器在发送最后数据之后去断言选通脉冲。接收机用与BCLK 600异步的两个选通脉冲信号捕捉有效数据。与BCLK600同步的信号(DRDYS#428及DRDY#426)向接收机指示已发送了有效数据。图4示出如果两个代理都能传输128位数据,数据便能相对于图3中所示的公共时钟协议的BCLK 600以一半的时间传输。
图5是更详细地示出按照本发明的一个实施例的代理的框图。代理400包含数据宽度指示符401、内部控制逻辑402、总线控制器138、数据缓冲器404与406、以及多路复用器403、405与408。
数据宽度指示符401为代理400所支持的数据传输宽度的指示符。在一个实施例中,数据宽度指示符为编码代理400所支持的数据传输的两位值。按照一个实施例,数据宽度指示符401为预配置的值。指示符401可以以传统方式预配置在任何宽度的范围中,诸如将代理400的特定针脚连接在在系统复位时段上抽样的特定的预定电压电平上。在其它实施例中数据宽度指示符401可以重新配置。例如可将数据宽度指示符401存储在存储器设备中或者可以是能用软件写入的配置寄存器的一部分。总线控制器138提供代理400与总线101之间的接口。总线控制器138在总线101之间传输各种控制与地址信号并且还控制向和自总线101的数据传输。如所示,总线101具有64位宽的数据总线。在其它实施例中,可采用其它数据总线宽度。
本发明所使用的信号的概要示出在下面的表1中。下面更全面地讨论这些信号的交互作用。表1为本发明所使用的信号的概要,但并不是代理400或总线101所传输的信号的全体的列表,而只包含与本发明最有关的信号。
表I
信号 | 说明 |
CLK | 总线时钟 |
ADS# | 地址选通脉冲。由请求代理断言来指示事务处理的请求阶段的开始。 |
A[35:3]# | 地址。用来传输请求的地址的总线线路。 |
REQ[4:0]# | 请求。用来编码请求代理的特定请求,包含请求的类型(如读、写等)及传输长度。 |
REQ[4:3]# | 数据大小。REQ[4:0]#的两位。请求代理用来编码请求代理所支持的数据传输宽度。“b”表示信号是在请求阶段的第二时钟周期中驱动的。 |
HITM# | 命中修改的。由窥探代理断言来指示请求命中代理的高速缓冲存储器的修改的高速缓冲器行。 |
DBSY# | 数据总线忙。传输数据的代理断言来表示它正在使用或快要使用数据总线。 |
D[63:0]# | 数据。用来传输数据的总线线路(即数据总线)。 |
DRDY#,DRDYS# | 数据就绪。传输数据的代理断言来指示有效数据 |
在总线上并指出传输代理所支持的数据大小。 | |
DRDY#DRDYS# | 目标就绪。接收数据的代理断言来指示该代理准备好接受数据并指出接收代理所支持的数据大小。 |
RS[2:0]# | 应答状态。目标代理断言来指示应答的状态(如重试应答、延期应答、失败、隐含写回应答、或正常(带或不带数据的应答))。 |
SBSY# | 选通脉冲忙。传输代理断言来指示它正在使用或快要使用总线的选通线路。 |
STBp[3:0]#STBn[3:0]# | 传输代理断言的信源同步正与负数据选通脉冲来捕捉接收机中的有效数据。 |
代理400还包含两组数据缓冲器404与406。代理400包含两组输入缓冲器406及两组输出缓冲器404。然而,其它实施例可包含更多或更少的数据缓冲器,或者既能用于输入又能用于输出的数据缓冲器而不是两组不同的缓冲器。
数据缓冲器404临时存储正在通过总线101从代理400传输到另一代理的数据。按照本发明的一个实施例,各数据缓冲器404包括四个独立的缓冲器404a、404b、404c及404d,各能存储64位数据。各数据缓冲器404输入到多路复用器403。多路复用器403受总线控制器138控制,从而在任何特定时间上允许总线控制器138控制将哪64位数据部分提供给数据线D[63:32]#418与D[31:0]#419。然后将多路复用器403的输出输入到也受总线控制器138控制的第二多路复用器405。多路复用器405取来自多路复用器403的64位数据并将高32位或低32位放置在数据线D[31:0]#419上。在一个实施例中,放置在数据线D[31:0]#419上的32位组是取决于从总线控制器138接收的控制信号的,后者又取决于事务处理的数据传输宽度,如下面更详细地讨论的。此外,按照一个实施例,也将来自多路复用器403的高32位放置在数据线D[63:32]#418上,从而对于64位宽的数据传输可在数据总线上获得高32位。
数据缓冲器406临时存储正在通过总线101从另一代理传输给代理400的数据。按照本发明的一个实施例,各数据缓冲器406包括各能存储64位数据的四个独立缓冲器。缓冲器406及多路复用器408基本上与缓冲器404及多路复用器403和405相同,但除外它们在相反方向上工作(即,它们的操作是存储来自总线的数据而不是传输数据到总线上)。数据是从D[31:0]#线路419及有可能从D[63:32]#线路418接收的并通过多路复用器408放置到数据缓冲器406之一中。多路复用器408根据来自总线控制器138的控制信号将64位数据提供给缓冲器406或将32位数据作为高或低32位提供给缓冲器406,这取决于下面要更详细地讨论的事务处理的数据传输宽度。
此外,考虑已将数据与总线时钟异步传输,该数据已在跨越时钟周期边界的窗口中被代理400接收。这样,将所接收的数据锁存在缓冲器406内的抗歪斜锁存器中(未示出)直到被代理400访问为止。此外,总线控制器138通常通过确定何时从代理400访问数据用公共时钟信号重新同步所接收的数据与代理400的时钟。执行重新同步的一个实施例的更详细的说明可在1997年5月6日提交的赋予序号08/852,438的专利申请“采用抗歪斜的锁存器的主与从设备之间的信源同步接口”中找到。
在本发明的一个实施例中,代理可在通过信源同步协议与公共时钟协议的传输数据之间动态地改变。这便是,如果所有代理处于总线事务处理支持信源同步传输协议之中,则相应地传输数据。否则,通过公共时钟协议传输数据。
例如,在本发明的一个实施例中,当代理400正在总线上发布请求时,代理400提供它所支持的数据传输宽度的指示。在一个实施例中,这一指示是用在请求阶段的第二时钟周期中断言的REQ[4:3]#编码在REQ[4:0]#414中的。下面表II中示出这一实现中支持的特定数据传输宽度的编码,其中“0”表示不活跃信号而“1”表示活跃信号。
表II
REQb[4:3]# | 说明 |
00 | 只支持64位数据传输。 |
01 | 支持128位或64位数据传输。 |
10 | 支持64位或32位数据传输。 |
11 | 只支持32位数据传输。 |
代理400所提供的适当指示是根据数据宽度指示符401的。在一种实现中,数据宽度指示符401存储表II中所示的四种编码之一,并能由总线控制器138直接放在总线上。如果代理400是耦合在总线上的另一代理所发布的请求的目标,则代理400作为目标代理也提供它所支持的数据传输宽度的指示。在一个实施例中,这一指示是用DFDY#426、DRDY#428、TRDY#420及TRDYS#422中的一个或多个的组合提供的。下面表III中示出请求代理根据它们来指示其所支持的,这些信号所提供的指示的概要。
表III
请求代理所支持的数据传输宽度 | 请求类型 | 由目标代理所提供的信号 |
只是32位 | 任何 | DRDYS#与TRDYS#。DRDY#与TRDY#不用。 |
只是64位 | 任何 | DRDY#与TRDY#。DRDYS#与TRDYS#不用。 |
32或64位 | 读 | 断言DRDYS#来指示32位数据传输,断言DRDY#来指示64位数据传输。目标代理不断言TRDY#与TRDYS#。 |
32或64位 | 写 | 断言TRDYS#来指示32位数据传输,断言TRDY#来指示64位数据传输。目标代理不断言DRDY#与DRDYS#。 |
64或128位 | 读 | 断言DRDY#来指示64位数据传输,断言DRDY#与DRDYS#两者来指示128位数据传输。目标代理不断言TRDY#与TRDYS#。 |
64或128位 | 写 | 断言TRDY#来指示64位数据传输,断言TRDY#与TRDYS#两者来指示128位数据传输。目标代理不断言DRDY#与DRDYS#。 |
DRDY#426与DRDYS#428信号还指示传输是按照公共时钟协议还是信源同步协议的。这概述在下面表IV中。
表IV
数据传输 | DRDY# | DRDYS# | 数据协议 |
32位 | 0 | 1 | 公共时钟 |
64位 | 1 | 0 | 公共时钟 |
128位 | 1 | 1 | 信源同步 |
无传输 | 0 | 0 | 无有效数据 |
在其中不同代理支持32、64或128位传输及使用上面表III中讨论的信号的本发明的实施例中,参加事务处理的代理在总线控制器138中维护一个指示请求代理所支持的数据传输宽度是32或64位、还是64或128位的记录。对于应答起动的事务处理,保持了DRDY # 426与DRDYS # 428的记录。对于请求起动的事务处理或隐含的写回事务处理,保持了TRDY # 420与TRDYS # 422信号的记录。保持这一记录是为了能根据原始请求断言TRDY # 420与TRDYS# 422来指示64位或128位传输。窥探代理监视TRDY # 420与TRDYS # 422信号。如果代理400窥探到在总线上命中代理的高速缓冲存储器中修改的高速缓冲存储器行的请求,则将要将写回数据放置在总线上的代理400指示其所支持的数据传输数据宽度。在一个实施例中,这一指示是用一或多个DRDY # 426与DRDYS # 428信号提供的。如上面所讨论的,TRDY # 420信号及TRDYS # 422信号是由目标代理断言的。下面表V中示出根据请求代理与目标代理两者所指示的它们所支持的数据传输宽度,这些信号所提供的指示的概要。
表V
请求代理支持的数据传输宽度 | 目标代理支持的数据传输宽度 | 请求类型 | 窥探代理提供的信号 |
只是32位 | 任何 | 任何 | 使用DRDYS#。不使用DRDY#。 |
只是64位 | 64位或128位数据传输 | 任何 | 使用DRDY#。不使用DRDYS#。 |
32位或64位数据传输 | 只是32位 | 任何 | 使用DRDYS#。不使用DRDY#。 |
32位或64位数据传输 | 32位或64位数据传输 | 任何 | 断言DRDYS#、去断言DRDY#来指示32位写回数据传输,断言DRDYS#、去断言DRDYS#来指示64位写回传输。 |
64位或128位数据传输 | 只是64位 | 任何 | 使用DRDY#。不使用DRDYS#。 |
64位或128位数据传输 | 64位或128位数据传输 | 任何 | 断言DRDY#来指示64位写回数据传输,断言DRDY#与DRDYS#两者来指示128位写回传输。 |
图6为示出按照信源同步协议的带隐含写回的64字节读事务处理事件的定时图。在这一实施例中,数据总线为64位宽,因此事务处理要求传输各64位的8个独立的块。
在图6的示例中,请求代理在T1中断言ADS#410来起动64字节读事务处理。在T2中,请求代理断言请求信号(REQ}414的某些位来指示64字节长度及它是64位/128位代理。在T5中的窥探期间,窥探代理断言HITM#416。在T7中应答代理断言TRDYS#422及TRDY#420来指示它准备好接受写回数据及它能以信源同步模式执行128位数据事务处理。因为应答或目标代理负责根据所接收的原始请求驱动适当的TRDY#/TRDYS#信号,解除了窥探代理这一负担。在T8中,窥探代理抽样断言的TRDYS # 422及TRDY # 420与去断言的DBSY #424。在T9中,窥探代理通过断言DBSY # 424及SBSY # 484开始数据阶段。窥探代理在T9的75%点上预先驱动STBp[3:0] # 480。
窥探代理通过断言DRDYS # 428及DRDY # 426及在T10与T13之间的BCLK600的上升边与50%点上在D[63:0] # 608上驱动有效数据来开始有效数据传输。在BCLK 600的一个时钟周期中将两块64位数据驱动到总线上。窥探代理在T10与T13之间的BCLK 600的25%与75%点(各数据传输的中点)上驱动STBp[3:0]#480与STBn[3:0]#482两者上的上升与下降边。窥探代理驱动STBp[3:0] # 480上的上升边并在T14的25%点上将总线移交给下一代理。
大约在窥探代理驱动选通脉冲之后一个时钟周期,定中的选通脉冲到达请求与应答代理来捕捉数据。随着每一个到达的选通脉冲对,将一块新数据捕捉到请求与应答的代理的缓冲器中。在T11中,请求与应答代理抽样DRDYS # 428及DRDY # 426并知道已发送了数据。稍后,请求代理与应答代理将数据锁存到BCLK 600域中。这样,图6示出总线代理利用信源同步协议在64位总线的一个时钟周期中发送128位数据。
在上面的说明书中,已参照其特定示范实施例描述了本发明。例如,已参照特定系统配置、信号编码及数据传输宽度描述了本发明。对这里所描述的这些特定细节能作出各种修改与改变,而并不脱离下面的权利要求中所提出的本发明的广义精神及范围。
Claims (40)
1.一种在计算机系统中的总线代理之间传输数据的方法,包括下述步骤:
通过由计算机系统的总线时钟计时的第一传输协议从第一代理向第二代理传输控制信号;以及
通过第二传输协议从所述第一代理向所述第二代理传输与所述控制信号对应的数据,第二传输协议能使第二代理对与总线时钟异步的数据抽样,所述数据与多个选通脉冲信号同步,多个选通脉冲信号的各个在分开的选通脉冲线上,各选通脉冲信号锁定分开的数据块。
2.如权利要求1的方法,其特征在于该第一传输协议是相对于总线时钟的同步传输。
3.如权利要求2的方法,其特征在于该控制信号具有第一数据宽度,而该数据具有不同的第二数据宽度。
4.如权利要求3的方法,其特征在于第二数据宽度大于第一数据宽度。
5.如权利要求2的方法,其特征在于该第一传输协议包括公共时钟数据传输协议;
该第二传输协议包括信源时钟数据传输协议。
6.如权利要求2的方法,其特征在于与所述控制信号相应的所述数据传输包括下述步骤:
对应于构成数据传输的多个数据块的各个,传输至少一个选通脉冲;以及
利用选通脉冲将数据块锁存进接收数据传输的代理的缓冲器中。
7.如权利要求6的方法,其特征在于对应于数据块的选通脉冲是以两倍总线时钟速率的速率传输的。
8.如权利要求6的方法,其特征在于数据块是与计算机系统的数据总线一样宽的。
9.如权利要求6的方法,其特征在于该控制信号包括128位,且其中与所述控制信号相应的数据包括在总线时钟的一个周期中传输128位。
10.如权利要求6的方法,其特征在于该总线为64位宽。
11.一种用于在计算机系统中的总线代理之间传输数据的装置,所述装置包括:
可进行操作通过由计算机系统的总线时钟计时的第一传输协议从第一代理传输控制信号到第二代理的总线;
所述总线还可进一步操作通过第二传输协议从所述第一代理将对应于所述控制信号的数据传输到所述第二代理,所述第二传输协议使第二代理能对与总线时钟异步的数据抽样,所述数据与多个选通脉冲信号同步,多个选通脉冲信号的各个在分开的选通脉冲线上,各选通脉冲信号锁定分开的数据块。
12.如权利要求11的装置,其特征在于控制信号传输具有第一数据宽度,而该数据传输具有不同的第二数据宽度。
13.如权利要求12的装置,其特征在于该数据传输的第二数据宽度大于控制信号传输的第一数据宽度。
14.如权利要求11的装置,其特征在于该控制信号传输相应于公共时钟数据传输协议;以及
该数据传输相应于信源时钟数据传输协议。
15.如权利要求11的装置,其特征在于对应于数据块的选通脉冲是以两倍总线时钟速率的速率传输的。
16.如权利要求15的装置,其特征在于数据块与计算机系统的数据总线一样宽。
17.如权利要求12的装置,其特征在于控制信号传输包括128位,且其中数据传输包括在总线时钟的一个周期中传输128位。
18.如权利要求12的装置,其中该控制信号传输包括256位,且其中的数据传输包括在总线时钟的一个周期中传输256位。
19.如权利要求18的装置,其中该总线为64位宽。
20.一种在计算机系统中的总线代理之间传输数据的方法,包括:
根据基于总线时钟的公用时钟协议将一个或多个控制信号从多个总线代理中的第一总线代理传送给多个总线代理中的第二总线代理;
根据容许第二总线代理对与总线时钟异步的数据抽样的信源同步数据传输协议将与一个或多个控制信号相应的数据从第一总线代理传送给第二总线代理,所述数据与多个选通脉冲信号同步,多个选通脉冲信号的各个在分开的选通脉冲线上,各选通脉冲信号锁定分开的数据块。
21.如权利要求20所述的方法,其特征在于,第一总线代理包括一个处理器。
22.如权利要求21所述的方法,其特征在于,总线时钟用来在处理器-存储器总线上传送所述一个或多个控制信号,第二总线代理包括一个存储器装置。
23.一种在总线代理之间传输数据的方法,包括:
根据由总线时钟计时的第一传输协议将表示多个总线事务阶段之一的控制信号从第一总线代理传送给第二总线代理;和
根据包括多个选通脉冲信号的第二事务协议将与总线事务相关的数据从第一总线代理向第二总线代理传送,所述多个选通脉冲信号的各个在一条分开的选通脉冲线上,所述多个选通脉冲信号能使第二总线代理用所述一个和多个与总线时钟异步的独立选通脉冲信号取样数据。
24.如权利要求23所述的方法,其特征在于,所述多个阶段包括仲裁阶段、请求阶段、出错阶段、窥探阶段或应答阶段。
25.一种在总线代理之间传送信号的方法,包括:
通过以第一速率计时的第一传输协议将控制信号从计算机系统的第一代理传送给计算机系统的第二代理,其中第一速率为计算机系统的总线时钟速率;和
通过以第二速率计时的第二传输协议将与控制信号相应的数据从第一代理传送给第二代理,其中第二速率由控制信号确定,所述数据与多个选通脉冲信号同步,多个选通脉冲信号的各个在分开的选通脉冲线上,各选通脉冲信号锁定分开的数据块。
26.如权利要求25所述的方法,其特征在于,第二速率选自第一速率或选自比第一速率快的第二速率。
27.如权利要求26所述的方法,其特征在于,第二速率为第一速率的两倍。
28.如权利要求25所述的方法,其特征在于,通过第二传输协议传输数据包括:
传送多个选通脉冲信号;以及
根据多个选通脉冲信号的各个锁定数据块。
29.如权利要求28所述的方法,其特征在于,它还包括传送两个选通脉冲信号和在两选通脉冲信号中各自的前沿锁定数据块的步骤。
30.如权利要求29所述的方法,其特征在于:
第一数据块在总线时钟周期开始时发送;
第二数据块在总线时钟周期50%时刻发送;且
两选通脉冲信号由第一选通脉冲信号和第二选通脉冲信号组成,其中:
第一选通脉冲信号在选通脉冲信号在总线时钟周期25%时刻开始的时刻传送,以及
第二选通脉冲在选通脉冲信号在总线时钟周期75%时刻开始的时刻传送。
31.一种在计算机系统中的代理之间传输信号的方法,包括:
以计算机系统总线时钟的速率将控制信号从所述计算机系统的第一代理传送给计算机系统的第二代理;
以控制信号选取的第二速率将与控制信号相应的数据从第一代理传送给第二代理,其中第二速率为总线时钟的速率或两倍总线时钟速率的速率;
若控制信号选取两倍总线时钟的速率,则
发送在第一选通脉冲线上的第一选通脉冲和在第二选通脉冲线上的第二选通脉冲;
根据第一选通脉冲的定时锁定第一数据块;
根据第二选通脉冲的定时锁定第二数据块。
32.如权利要求31所述的方法,其特征在于:
第一数据块在总线时钟周期开始时的时刻传输;
第二数据块在总线时钟周期50%时刻传输。
33.如权利要求32所述的方法,其特征在于,第一选通脉冲在总线时钟周期25%的时刻传送,第二选通脉冲在总线时钟周期75%的时刻传送。
34.一种在代理之间传输信号的系统,包括:
总线;
总线时钟;
第一代理和第二代理,都与总线连接;其中:
第一代理以总线时钟的速率将控制信号传送给第二代理;
第一代理以控制信号确定的速率将数据信号传送给第二代理,所述数据信号与多个选通脉冲信号同步,多个选通脉冲信号的各个在分开的选通脉冲线上,各选通脉冲信号锁定分开的数据块。
35.如权利要求34所述的系统,其特征在于,控制信号确定的速率选自总线时钟的速率或比总线时钟快的速率。
36.如权利要求35所述的系统,其特征在于,比总线时钟快的速率为时钟速率的两倍。
37.如权利要求36所述的系统,其特征在于,第一代理传送至少一个选通脉冲,计算机系统根据选通脉冲锁定数据块。
38.如权利要求37所述的系统,其特征在于,第一代理传送第一选通脉冲和第二选通脉冲。
39.如权利要求38所述的系统,其特征在于,计算机系统在第一选通脉冲的前沿锁定第一数据块,在第二选通脉冲的前沿锁定第二数据块。
40.如权利要求39所述的系统,其特征在于:
第一数据块在总线时钟周期开始时传送;
第二数据块在时钟周期50%的时刻传送;
第一选通脉冲在总线时钟周期25%的时刻传送;
第二选通脉冲在总线时钟周期75%的时刻传送。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/006,322 US6336159B1 (en) | 1997-06-25 | 1998-01-13 | Method and apparatus for transferring data in source-synchronous protocol and transferring signals in common clock protocol in multiple agent processing system |
US09/006322 | 1998-01-13 | ||
US09/006,322 | 1998-01-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1288544A CN1288544A (zh) | 2001-03-21 |
CN1199117C true CN1199117C (zh) | 2005-04-27 |
Family
ID=21720327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB998021520A Expired - Fee Related CN1199117C (zh) | 1998-01-13 | 1999-01-05 | 信源同步及公共时钟协议中的数据传输 |
Country Status (7)
Country | Link |
---|---|
US (2) | US6336159B1 (zh) |
EP (1) | EP1046111B1 (zh) |
JP (1) | JP4598270B2 (zh) |
CN (1) | CN1199117C (zh) |
AU (1) | AU2026999A (zh) |
DE (1) | DE69916993T2 (zh) |
WO (1) | WO1999036858A1 (zh) |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6336159B1 (en) * | 1997-06-25 | 2002-01-01 | Intel Corporation | Method and apparatus for transferring data in source-synchronous protocol and transferring signals in common clock protocol in multiple agent processing system |
US6418478B1 (en) * | 1997-10-30 | 2002-07-09 | Commvault Systems, Inc. | Pipelined high speed data transfer mechanism |
US7581077B2 (en) | 1997-10-30 | 2009-08-25 | Commvault Systems, Inc. | Method and system for transferring data in a storage operation |
JP3592547B2 (ja) * | 1998-09-04 | 2004-11-24 | 株式会社ルネサステクノロジ | 情報処理装置および信号転送方法 |
US6665807B1 (en) | 1998-09-04 | 2003-12-16 | Hitachi, Ltd. | Information processing apparatus |
US7177968B1 (en) * | 1999-05-31 | 2007-02-13 | Mitsubishi Denki Kabushiki Kaisha | Data transmission system |
DE19960859A1 (de) * | 1999-12-16 | 2001-07-05 | Trw Automotive Electron & Comp | Entkopplungseinheit für Bussysteme |
US6609171B1 (en) | 1999-12-29 | 2003-08-19 | Intel Corporation | Quad pumped bus architecture and protocol |
US6757763B1 (en) * | 2000-04-07 | 2004-06-29 | Infineon Technologies North America Corpration | Universal serial bus interfacing using FIFO buffers |
US6965648B1 (en) * | 2000-05-04 | 2005-11-15 | Sun Microsystems, Inc. | Source synchronous link integrity validation |
US6678767B1 (en) * | 2000-10-06 | 2004-01-13 | Broadcom Corp | Bus sampling on one edge of a clock signal and driving on another edge |
US6715094B2 (en) * | 2000-12-20 | 2004-03-30 | Intel Corporation | Mult-mode I/O interface for synchronizing selected control patterns into control clock domain to obtain interface control signals to be transmitted to I/O buffers |
US6742160B2 (en) | 2001-02-14 | 2004-05-25 | Intel Corporation | Checkerboard parity techniques for a multi-pumped bus |
US6711652B2 (en) * | 2001-06-21 | 2004-03-23 | International Business Machines Corporation | Non-uniform memory access (NUMA) data processing system that provides precise notification of remote deallocation of modified data |
US7006527B1 (en) * | 2001-10-12 | 2006-02-28 | Cypress Semiconductor Corp. | Multistage pipeline bit conversion |
US7085889B2 (en) | 2002-03-22 | 2006-08-01 | Intel Corporation | Use of a context identifier in a cache memory |
US7139308B2 (en) * | 2002-04-05 | 2006-11-21 | Sun Microsystems, Inc. | Source synchronous bus repeater |
US20030217301A1 (en) * | 2002-05-16 | 2003-11-20 | Levy Paul S. | Method and apparatus for transmitting side-band data within a source synchronous clock signal |
TWI282513B (en) * | 2002-06-12 | 2007-06-11 | Mediatek Inc | A pre-fetch device of instruction for an embedded system |
KR100437454B1 (ko) * | 2002-07-30 | 2004-06-23 | 삼성전자주식회사 | 소오스 싱크로너스 전송 방식을 이용한 비동기 메모리 및그것을 포함한 시스템 |
WO2004025483A1 (en) | 2002-09-16 | 2004-03-25 | Commvault Systems, Inc. | System and method for optimizing storage operations |
US7280589B2 (en) * | 2003-07-24 | 2007-10-09 | Sun Microsystems, Inc. | Source synchronous I/O bus retimer |
WO2005065084A2 (en) | 2003-11-13 | 2005-07-21 | Commvault Systems, Inc. | System and method for providing encryption in pipelined storage operations in a storage network |
US7543094B2 (en) * | 2005-07-05 | 2009-06-02 | Via Technologies, Inc. | Target readiness protocol for contiguous write |
US7386750B2 (en) * | 2005-07-15 | 2008-06-10 | Hewlett-Packard Development Company, L.P. | Reduced bus turnaround time in a multiprocessor architecture |
JP4570532B2 (ja) * | 2005-08-02 | 2010-10-27 | パナソニック株式会社 | 動き検出装置、動き検出方法、集積回路およびプログラム |
US7444448B2 (en) * | 2005-08-03 | 2008-10-28 | Via Technologies, Inc. | Data bus mechanism for dynamic source synchronized sampling adjust |
US7856571B2 (en) * | 2007-01-22 | 2010-12-21 | Hewlett-Packard Development Company, L.P. | Method and system for communication employing dual slew rates |
US7924142B2 (en) | 2008-06-30 | 2011-04-12 | Kimberly-Clark Worldwide, Inc. | Patterned self-warming wipe substrates |
EP2341445B1 (en) * | 2009-12-30 | 2017-09-06 | Intel Deutschland GmbH | Method for high speed data transfer |
JP5423483B2 (ja) * | 2010-03-04 | 2014-02-19 | 株式会社リコー | データ転送制御装置 |
JP5573476B2 (ja) * | 2010-08-09 | 2014-08-20 | 日本電気株式会社 | 被制御装置、被制御方法、制御装置、及び、制御システム |
US9087163B2 (en) * | 2012-07-11 | 2015-07-21 | Silicon Image, Inc. | Transmission of multiple protocol data elements via an interface utilizing a data tunnel |
CN104375965B (zh) * | 2013-08-15 | 2017-09-15 | 竣阳国际开发股份有限公司 | 多工具机操作系统 |
TWI509418B (zh) * | 2014-06-30 | 2015-11-21 | Chant Sincere Co Ltd | 資料轉換系統與及其控制方法 |
US9904481B2 (en) | 2015-01-23 | 2018-02-27 | Commvault Systems, Inc. | Scalable auxiliary copy processing in a storage management system using media agent resources |
US9898213B2 (en) | 2015-01-23 | 2018-02-20 | Commvault Systems, Inc. | Scalable auxiliary copy processing using media agent resources |
US11010261B2 (en) | 2017-03-31 | 2021-05-18 | Commvault Systems, Inc. | Dynamically allocating streams during restoration of data |
US10592121B2 (en) | 2017-09-14 | 2020-03-17 | Samsung Electronics Co., Ltd. | Quasi-synchronous protocol for large bandwidth memory systems |
CN110389919B (zh) * | 2019-07-04 | 2021-03-19 | 苏州浪潮智能科技有限公司 | 基于risc-v处理器的异步收发传输器外设及系统 |
CN111708312B (zh) * | 2020-04-28 | 2021-11-09 | 北京骥远自动化技术有限公司 | 一种高可靠数据传输plc系统及其数据传输方法 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4353128A (en) | 1980-06-19 | 1982-10-05 | Bell Telephone Laboratories, Incorporated | Synchronous/asynchronous data communication arrangement |
DE3213345C2 (de) * | 1982-04-08 | 1984-11-22 | Siemens Ag, 1000 Berlin Und 8000 Muenchen | Datenübertragungseinrichtung zwischen zwei asynchron gesteuerten Datenverarbeitungssystemen |
DE3780551T2 (de) * | 1986-09-04 | 1993-03-11 | Fujitsu Ltd | Speichereinrichtung unter verwendung von adressenmultiplex. |
US4908823A (en) | 1988-01-29 | 1990-03-13 | Hewlett-Packard Company | Hybrid communications link adapter incorporating input/output and data communications technology |
US5842029A (en) * | 1991-10-17 | 1998-11-24 | Intel Corporation | Method and apparatus for powering down an integrated circuit transparently and its phase locked loop |
US5640599A (en) * | 1991-12-30 | 1997-06-17 | Apple Computer, Inc. | Interconnect system initiating data transfer over launch bus at source's clock speed and transfering data over data path at receiver's clock speed |
US5325516A (en) * | 1992-03-09 | 1994-06-28 | Chips And Technologies Inc. | Processor system with dual clock |
US5280587A (en) * | 1992-03-31 | 1994-01-18 | Vlsi Technology, Inc. | Computer system in which a bus controller varies data transfer rate over a bus based on a value of a subset of address bits and on a stored value |
US5359232A (en) * | 1992-05-08 | 1994-10-25 | Cyrix Corporation | Clock multiplication circuit and method |
JP3608804B2 (ja) * | 1993-05-14 | 2005-01-12 | 株式会社ソニー・コンピュータエンタテインメント | バス制御装置 |
JPH0844665A (ja) | 1994-07-14 | 1996-02-16 | Fujitsu Ltd | 複数のデータ転送サイズ及びプロトコルをサポートするバス |
TW358907B (en) * | 1994-11-22 | 1999-05-21 | Monolithic System Tech Inc | A computer system and a method of using a DRAM array as a next level cache memory |
US5754825A (en) | 1995-05-19 | 1998-05-19 | Compaq Computer Corporation | Lower address line prediction and substitution |
KR0164395B1 (ko) * | 1995-09-11 | 1999-02-18 | 김광호 | 반도체 메모리 장치와 그 리이드 및 라이트 방법 |
US5727171A (en) * | 1995-11-16 | 1998-03-10 | International Business Machines Corporation | Method and apparatus for allowing multi-speed synchronous communications between a processor and both slow and fast computing devices |
US5893135A (en) * | 1995-12-27 | 1999-04-06 | Intel Corporation | Flash memory array with two interfaces for responding to RAS and CAS signals |
US5826067A (en) * | 1996-09-06 | 1998-10-20 | Intel Corporation | Method and apparatus for preventing logic glitches in a 2/n clocking scheme |
US5802356A (en) | 1996-11-13 | 1998-09-01 | Integrated Device Technology, Inc. | Configurable drive clock |
US5809291A (en) * | 1997-02-19 | 1998-09-15 | International Business Machines Corp. | Interoperable 33 MHz and 66 MHz devices on the same PCI bus |
US5901304A (en) * | 1997-03-13 | 1999-05-04 | International Business Machines Corporation | Emulating quasi-synchronous DRAM with asynchronous DRAM |
US5919254A (en) * | 1997-06-25 | 1999-07-06 | Intel Corporation | Method and apparatus for switching between source-synchronous and common clock data transfer modes in a multiple processing system |
US6336159B1 (en) * | 1997-06-25 | 2002-01-01 | Intel Corporation | Method and apparatus for transferring data in source-synchronous protocol and transferring signals in common clock protocol in multiple agent processing system |
US5905391A (en) * | 1997-07-14 | 1999-05-18 | Intel Corporation | Master-slave delay locked loop for accurate delay or non-periodic signals |
US5978869A (en) * | 1997-07-21 | 1999-11-02 | International Business Machines Corporation | Enhanced dual speed bus computer system |
US6108736A (en) * | 1997-09-22 | 2000-08-22 | Intel Corporation | System and method of flow control for a high speed bus |
US5964856A (en) * | 1997-09-30 | 1999-10-12 | Intel Corporation | Mechanism for data strobe pre-driving during master changeover on a parallel bus |
US6092156A (en) * | 1997-11-05 | 2000-07-18 | Unisys Corporation | System and method for avoiding deadlocks utilizing split lock operations to provide exclusive access to memory during non-atomic operations |
KR100255664B1 (ko) * | 1997-12-29 | 2000-05-01 | 윤종용 | 반도체 집적회로의 클락 포워딩 회로 및 클락포워딩 방법 |
-
1998
- 1998-01-13 US US09/006,322 patent/US6336159B1/en not_active Expired - Lifetime
-
1999
- 1999-01-05 EP EP99900759A patent/EP1046111B1/en not_active Expired - Lifetime
- 1999-01-05 DE DE69916993T patent/DE69916993T2/de not_active Expired - Lifetime
- 1999-01-05 WO PCT/US1999/000199 patent/WO1999036858A1/en active IP Right Grant
- 1999-01-05 CN CNB998021520A patent/CN1199117C/zh not_active Expired - Fee Related
- 1999-01-05 AU AU20269/99A patent/AU2026999A/en not_active Abandoned
- 1999-01-05 JP JP2000540501A patent/JP4598270B2/ja not_active Expired - Lifetime
-
2001
- 2001-11-06 US US09/991,626 patent/US6598103B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2002509315A (ja) | 2002-03-26 |
CN1288544A (zh) | 2001-03-21 |
EP1046111A4 (en) | 2002-01-23 |
JP4598270B2 (ja) | 2010-12-15 |
WO1999036858A1 (en) | 1999-07-22 |
DE69916993D1 (de) | 2004-06-09 |
US20020065967A1 (en) | 2002-05-30 |
US6336159B1 (en) | 2002-01-01 |
AU2026999A (en) | 1999-08-02 |
EP1046111B1 (en) | 2004-05-06 |
DE69916993T2 (de) | 2005-04-21 |
EP1046111A1 (en) | 2000-10-25 |
US6598103B2 (en) | 2003-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1199117C (zh) | 信源同步及公共时钟协议中的数据传输 | |
EP1032880B1 (en) | Method and apparatus for switching between source-synchronous and common clock data transfer modes in a multiple agent processing system | |
US6907487B2 (en) | Enhanced highly pipelined bus architecture | |
KR100253753B1 (ko) | 지연 트랜잭션을 실행하기 위한 장치 및 방법 | |
EP0422103B1 (en) | I/o bus to system bus interface | |
JP2505115B2 (ja) | システム・バスと周辺バスの間でのデ―タ転送を最適化する複数バス情報処理システム用のバス間ブリッジ | |
US6449677B1 (en) | Method and apparatus for multiplexing and demultiplexing addresses of registered peripheral interconnect apparatus | |
JPH0713908A (ja) | 多重化バスを有する情報処理システムでバック・ツー・バック・データ転送を提供する方法および装置 | |
US7469312B2 (en) | Computer system bus bridge | |
CN1760847A (zh) | 总线桥和数据传输方法 | |
US6266723B1 (en) | Method and system for optimizing of peripheral component interconnect PCI bus transfers | |
CN100343778C (zh) | 数据传送方法和数据传送桥接器 | |
US6615306B1 (en) | Method and apparatus for reducing flow control and minimizing interface acquisition latency in a hub interface | |
KR100432701B1 (ko) | 컴퓨터 구성요소 간의 개선된 인터페이스를 위한 방법 및장치 | |
EP1742147A2 (en) | Microprocessor apparatus and method for enabling variable width data transfers | |
US7694004B2 (en) | Bit-granular writes of control registers | |
CN1171154C (zh) | 控制芯片组与其间的数据事务方法 | |
KR970011888B1 (ko) | 컴퓨터 시스템용 정보 처리 시스템 및 컴퓨터 시스템내의 데이타 전송 관리 방법 | |
CN1248128C (zh) | 通信总线中差分选通的方法和装置 | |
CN1238794C (zh) | 控制芯片组与其间的数据事务方法 | |
CN1123833C (zh) | 控制芯片组之间总线的判优方法 | |
JP2004054527A (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 | ||
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: 20050427 Termination date: 20130105 |