用于动态源同步采样调整的数据总线机制的制作方法

文档序号:7965939阅读:369来源:国知局
专利名称:用于动态源同步采样调整的数据总线机制的制作方法
技术领域
本发明涉及处理器系统总线,特别是涉及动态调整对系统总线上数据采样并提供给微处理器核心的时间,其中该时间不依据担保的数据有效时间,而依据源同步数据选通沿的检测。
背景技术
当前的采样数据总线,诸如可在其通过系统总线与其他器件通信以交换数据的微处理器或集成电路(IC)器件中采用的采样数据总线,通过数据信号接收系统总线上的数据。通过数据准备就绪信号DRDY(由发送数据的器件声明(asserted))指示数据信号在系统总线上。通常按总线时钟信号BCLK同步地将数据和DRDY信号声明(asserted)和取消声明(deasserted)。根据当前总线协议,当发送器件将数据驱动到数据总线上时,其声明DRDY,且担保的数据总线信号的状态在总线上有效,以便一个BCLK周期之后采样。相应地,当前的微处理器或集成电路(其需要接收数据)在采样数据之前,必须等待一个总线时钟BCLK周期。
用于经系统总线进行数据通信的新协议已经提供了源同步数据选通。当前技术提供64位数据总线DATA,其支持在64字节高速缓存线的数据阶段中,经2个双总线时钟信号BCLK周期传输。将经64位数据总线传输8字节称为一拍,且在每个总线时钟BCLK周期中传输4拍。在x86兼容的结构中,将数据总线信号组分成4个子组,且为每个数据子组提供一对数据选通。使用每个数据选通的合适沿(如下降沿)用来指示对应数据子组上声明的对应字的有效性。
本发明人观察到若采用这里所描述的经系统总线采样上数据信号的传统技术,会带来缺点。首先,由于在传输了另外4个四字之后的BCLK周期中传输4个四字,在采样数据之前等待1个BCLK周期会使采样结果不可预测。其次,由于提供数据选通以指示数据总线上与其对应的双字的有效性,采样数据之前等待1个BCLK周期从性能的观点上来说是不利的。
期望能够解决将从系统总线上接收的数据元素提供给处理器核心时因协议对数据有效时间的要求带来的延时问题。

发明内容
根据本发明实施例的动态源同步采样调整系统,在至少一个总线时钟周期的每个总线时钟周期期间,响应于用于指示每个数据包有效而提供的至少一个数据选通,对分布在数据总线上的序列数据拍中的数据包采样。在一个实施例中,动态源同步采样调整系统包括第一多路复用器、寄存器、至少一个第二多路复用器以及定时逻辑电路。每个第一多路复用器具有与数据总线连接的第一输入端,接收多个锁存数据包中对应的一个的第二输入端,接收多个选择信号中对应的一个的选择输入端,以及一输出端。每个寄存器具有与所述多个第一多路复用器中对应的一个输出连接的输入端,提供所述多个锁存数据包中对应的一个的输出端,以及接收至少一个数据选通的时钟输入端。第二多路复用器具有与所述多个寄存器的对应输出连接的多个输入端,提供从所述多个锁存数据包中选择的一个的输出端,以及接收读指针的选择输入端。定时逻辑电路具有接收至少一个数据选通的至少一个输入端,以及提供所述多个选择信号的多个输出端。
由第一多路复用器和寄存器共同构成一组多路输入寄存器,其中每个多路输入寄存器锁存数据总线上提供的对应数据包。定时逻辑电路可配置为当数据选通指示对应数据包有效时,将对应选择信号提供给对应的第一多路复用器。
在一个特殊配置中,将数据总线细分成子组,且进一步将数据包分布在数据总线子组之中。同样,对于每个数据总线子组数据选通包括至少一个数据选通。在该配置中,定时逻辑电路包括多个序列定时电路,每个具有接收对应数据选通的输入端,以及提供对应的选择信号子集的多个输出端。将每个子集中的每个选择信号提供给对应的第一多路复用器,用于选择对应的数据包。数据选通信号包括正数据选通和负数据选通。对每个而言,定时逻辑电路包括序列定时电路,用于对应数据包产生选择信号。在更具体的配置中,可用几个序列连接的触发器实现定时电路,其响应于一个或多个数据选通的每个工作沿,预先经过一顺序系列逻辑状态。
动态源同步采样调整系统包括核心寄存器,它具有与第二多路复用器的输出连接的输入端,提供同步锁存数据包的输出端,以及接收核心时钟信号的时钟输入端。读指针与核心时钟信号同步。
根据本发明实施例,用于在一个或更多个总线时钟信号周期的每个总线时钟周期期间采样系统总线上顺序声明数据包的集成器件,其中系统总线包括至少一个数据选通信号,其指示每个数据包的有效性,该集成器件包括接收总线时钟信号的时钟输入端,接收数据包以及检测数据选通信号的数据总线接口,以及动态源同步采样调整逻辑电路。动态源同步采样调整逻辑电路包括采样逻辑电路和选择逻辑电路。采样逻辑电路响应于数据选通信号选择并锁存每个数据包并提供对应的锁存数据包。选择逻辑电路根据读指针从锁存数据包之中进行选择。
采样逻辑电路可包括多路复用器、寄存器和定时逻辑电路。每个多路复用器具有与数据总线接口连接的第一输入端,接收对应的锁存数据包的第二输入端,以及接收对应的选择信号的选择输入端。每个寄存器具有与对应多路复用器的输出连接的输入端,提供对应的锁存数据包的输出端,以及接收数据选通的时钟输入端。定时逻辑电路具有接收数据选通的输入端,以及提供选择信号的输出端。
可用序列连接的触发器实现集成器件的定时逻辑电路,以检测数据选通信号的沿。数据选通信号可包括第一数据选通信号,其指示系统总线上顺序声明的第一数据包和其后每隔一个数据包的数据包的有效性、以及第二数据选通信号,其指示系统总线上顺序声明的第二数据包和其后每隔一个数据包的数据包的有效性。在该情况下,定时逻辑电路包括响应于第一数据选通信号的第一时钟逻辑电路,和响应于第二数据选通信号的第二时钟逻辑。
可用多路复用器实现集成器件的选择逻辑电路,具有连接以接收锁存数据包的输入端,提供所选择的锁存数据包的输出端,以及接收读指针的选择输端。集成器件还包括核心寄存器,具有与多路复用器的输出连接的输入端,提供同步数据包的输出端,以及接收核心时钟信号的时钟输入端。在该情况下,读指针与核心时钟信号同步,诸如将同步数据提供给微处理器核心等。
根据本发明实施例,用于在至少一个总线时钟信号周期中每个总线时钟周期期间,采样系统总线上顺序声明数据包的方法,包括检测至少一个数据选通信号的工作沿,对于所检测的每个工作沿选择对应的数据包,以及锁存每个所选择的数据包以提供锁存数据包。
该方法可包括通过多个逻辑状态定时时序逻辑。该方法包括对于每个逻辑状态声明对应的选择信号,并将每个选择信号提供给与数据总线连接的对应多路复用器的选择输入端。该方法可包括用数据选通信号定时对应的寄存器。该方法可包括检测正数据选通信号和负数据选通信号的工作沿,以及用正选通信号定时第一时序逻辑和用负选通信号定时第二时序逻辑。该方法可包括选择至少一个锁存数据包,以及用核心时钟信号同步锁存该锁存数据包。
数据包可分布在数据总线的多个子组之中以及分布在对于至少一个总线时钟周期的多个序列数据拍之中。在该情况下,该至少一个数据选通信号包括对于每个数据总线子组的单独数据选通信号和该方法包括检测每个数据选通信号的工作沿。


参照下面的描述以及附图,将更好地理解本发明的益处、特性和优势,其中图1是微处理器接口系统的简化方框图,包括根据本发明示例性实施例实现的用于动态源同步采样调整的数据总线机制;图2是表示参照图1微处理器接口系统描述的数据信号组中信号交互的时序图,用于完成四倍频数据事务的数据阶段;图3是表示根据本发明示例性实施例实现的图1动态源同步采样调整逻辑电路的方框图,用于将采样数据提供给图1的微处理器核心;图4是表示根据本发明示例性实施例实现的用于产生定时信号的定时信号产生逻辑电路的方框图,并于产生对应的选择信号;以及图5是表示根据本发明示例性实施例实现的选择信号产生逻辑电路的方框图,用于根据定时信号产生选择信号。
具体实施例方式
下面的描述用来使本领域的技术人员能掌握并将本发明用于所提供的特殊应用环境及需求中。可是,很明显本领域的技术人员能对优选实施例加以修改,且这里定义的通用原则仍适用于其他实施例。因此,本发明不受这里所示并描述的特殊实施例的限制,而应与这里公开的原则和新颖特性的范畴一致。
本发明人观察到当系统总线使用新协议工作时,诸如使用源同步数据选通时,若采用通过系统总线对数据信号采样的传统技术,诸如根据所担保的数据有效时间来采样,则会带来实质性缺点。这些缺点包括诸如不可预测的采样结果以及性能极大地降低。因此本发明人开发了一种动态调整时间的技术,在该时间采样系统总线上的数据并提供给微处理器核心,该时间不基于所担保的数据有效时间,而基于源同步数据选通沿的检测,下面将参照图1-5作进一步描述。
图1是微处理器接口系统100的简化方框图,包括根据本发明示例性实施例实现的用于动态源同步采样调整的数据总线机制。微处理器接口系统100包括微处理器101以及总线代理103,它们通过系统总线105对接。总线代理103表示本领域技术人员所熟知的任何数量的不同类型总线代理,诸如存储器控制器、主机/PCI(外围部件互连)桥、芯片集等。系统总线105包括用于完成数据事务的信号,包括双向地址总线A、双向数据总线DATA、以及多个控制信号。在所示实施例中,A总线有33个信号,表示为A[35:3],且DATA总线有64个信号,表示为DATA[63:0],尽管应理解根据特殊配置和体系,地址和数据总线可有任何合适数量的信号。本领域的技术人员应理解按当前的技术状态,为了传送4字大小的数据,不需要最低有效地址信号(A[2:0])。
控制信号包括差分时钟总线BCLK[1:0]、双向地址选通总线ADSTB[1:0](表示A总线上地址的有效性)、具有信号REQ[4:0]指定所请求事务的类型(例如,存储器代码读取、存储器数据读取、存储器线写入、按字节使能的存储器4字写入)的双向请求(REQ)总线、一对数据选通总线DSTBP[3:0]和DSTBN[3:0]、双向数据总线忙信号DBSY(由提供DATA总线上数据的实体声明)、数据准备就绪信号DRDY(由经DATA总线传送数据的所有时钟周期期间提供数据的任一装置声明)、以及响应总线RS[2:0],其提供经DATA总线完成的事务响应类型(例如,没有数据、正常数据、隐式回写)。在所示实施例中,RS总线有3个信号,表示为RS[2:0],且由总线代理103声明。
事实上,所有当前微处理器中提供的信号,如微处理器接口系统100所示,仅有较小的变化。一些处理器在同样的信号组上复用地址和数据,因此提供控制信号来表示当前是数据或地址。其他微处理器利用另外命名的不同地址或数据总线宽度、或控制信号。此外,在比微处理器接口系统100所示总线宽度更小的总线宽度上复用地址和/或数据。重要的是注意到实质上所有处理器提供用于与总线代理通信的信号,以表示请求什么类型的事务、这种事务的参数、以及传输/接收数据。
根据“四倍频”配置,配置微处理器接口系统100,以根据高速缓存线(例如,对于64字节高速缓存线的8个四字)传送数据。如图所示,总线代理103包括四倍频数据传送逻辑电路104,用于完成系统总线105上的四倍频事务。当传送整个高速缓存线时,用2个总线时钟信号BCLK[1:0]周期传送高速缓存线中8个有关的4字。相应地,在每个总线时钟周期BCLK[1:0]中传送4个4字,因之描述成“四倍频”。在该类型的数据传送期间,提供数据选通总线DSTBP[3:0]、DSTBN[3:0]的信号以表示数据总线上不同4字拍的有效性,以便对两个总线时钟周期共8拍,在单个总线时钟期间传送4拍(每“拍”包括64位的DATA总线)。微处理器101包括根据本发明实施例实现的动态源同步采样调整逻辑电路102,以在四倍频事务期间从系统总线105接收数据元素,并将数据提供给微处理器核心106,而不会产生如果使用传统协议由于对数据有效时间的要求而导致的延时。
图2是表示参照微处理器接口系统100描述的用于完成四倍频数据事务的数据阶段的数据信号组中信号交互的时序图。许多参考文献中描述了这种事务操作和相应的如x86兼容微处理器中所命名的信号,其中的一本书为Tom Shanley撰写的″The Unabridged Pentium 4 IA32 Processor Genealogy,1st Edition,″。为清楚起见,将控制信号声明成所示的逻辑低电平,尽管本领域的技术人员应理解也可用逻辑高电平来表示该声明。差分总线时钟BCLK[1:0]的周期表示在时序图的顶部,其中用虚线表示BCLK[1],其与BCLK
信号的极性相反。
如上所述,当前的技术状态提供64位数据总线DATA[63:0],其支持64字节高速缓存线的数据阶段中经2个总线时钟BCLK[1:0]的周期传送。通过64位数据总线传送8字节称为一拍,且在每个总线时钟BCLK[1:0]的周期中传送4拍1-4,5-8。在x86兼容结构中,将数据总线信号组分成4个子组。子组0包括DATA[15:0]、DSTBP0和DSTBN0;子组1包括DATA[31:16]、DSTBP1和DSTBN1;子组2包括DATA[47:32]、DSTBP2和DSTBN2;和子组3包括DATA[63:48]、DSTBP3和DSTBN3。DSTBP0的下降沿用于表示DATA[15:0]上标号为1、3、5和7的数据包的有效性,且DSTBN0的下降沿用于表示DATA[15:0]上标号为2、4、6和8的数据包的有效性。DSTBP1的下降沿用于表示DATA[31:16]信号上数据包1、3、5和7的有效性,而DSTBN1的下降沿用于表示DATA[31:16]信号上的数据包2、4、6和8的有效性。DSTBP2的下降沿用于表示DATA[47:32]信号上数据包1、3、5和7的有效性,和DSTBN2的下降沿用于表示DATA[47:32]信号上的数据包2、4、6和8的有效性。DSTBP3的下降沿用于表示DATA[63:48]信号上数据包1、3、5和7的有效性,和DSTBN3的下降沿用于表示DATA[63:48]信号上的数据包2、4、6和8的有效性。在所示实施例中,每个数据包18包括数据字的16信号或位,尽管应理解不同实施例中每个数据包的大小可更大或更小。
本发明人观察到若采用通过系统总线105对DATA[63:0]信号采样的传统技术,会带来缺点。首先,由于在传输数据包1-4(在每个子组上)之后的BCLK[1:0]周期中传输数据包5-8(在每个子组上),在采样DATA[63:0]信号之前等待1个BCLK周期会使采样结果不可预测。其次,由于提供数据选通信号DSTBP[3:0]和DSTBN[3:0]以指示DATA[63:0]信号上它们所对应的双字的有效性,在采样之前等待1个BCLK[1:0]周期从性能的观点来看是不利的。
根据本发明实施例实现的动态源同步采样调整逻辑电路102,通过动态调整提供源同步选通的系统总线105上信号的采样时间,克服了上述问题和限制。为说明方便的目的,只说明参照图1和2所讨论的信号的子集,但是本领域的技术人员应理解这里所述的原则也适用于图1和2中所示的所有信号,且除此之外,还适用于驱动地址和控制信号所采用的实质上类似的源同步信号。需要在通过源同步系统总线与其他器件接口的微处理器和集成电路中采用该装置和方法。为方便说明的目的说明了x86兼容总线协议,但应理解按类似方式本发明也适用于其他的总线协议。
图3是表示根据本发明示例性实施例实现的用以将采样数据提供给微处理器核心106的动态源同步采样调整逻辑电路102的方框图。尽管示例包含在微处理器101中,应理解在任何集成电路(IC)器件中均可采用类似的动态源同步采样调整逻辑电路,包括总线代理103,其通过系统总线,诸如系统总线105与其他器件通信以交换数据。在该例子中,微处理器101通过DATA[15:0]信号从系统总线105接收数据,通过由发送数据的总线代理103声明的源同步数据选通信号DSTBP0,DSTBN0指示其在系统总线105上有效。根据协议,一旦总线代理103将DATA[15:0]信号驱动到系统总线105后(且在同一BCLK[1:0]周期之内),即将DSTBP0声明以指示对于数据包1、3、5和7,DATA[15:0]信号的状态有效。总线代理103将DSTBN0信号声明以指示对于数据包2、4、6和8,DATA[15:0]信号的状态有效。动态源同步采样调整逻辑电路102确保不需要等到下一BCLK[1:0]周期采样DATA[15:0]信号上的数据包。
为完成源同步采样,图3示出了动态源同步采样调整逻辑电路。在该实施例中,其被配置成采样在与四倍频总线事务有关的DATA[15:0]信号上声明的数据包,提供具有数据输入端07的8:1多路复用器(MUX)301。将DATA[15:0]信号发送到一系列的8个多路输入寄存器303。为清楚和简单起见,只示出了一系列8个多路输入寄存器303中的最初2个和最后2个。每个多路输入寄存器303包括2:1 MUX 305,其与寄存器307连接。每个MUX 305具有第一数据输入端,其接收DATA[15:0]信号;第二数据输入端,其从对应的一个寄存器307的数据输出端接收一系列8个锁存数据包DP1 DP8中对应的一个;数据输出端,其与对应的一个寄存器307的数据输入端连接;以及选择输入端,其接收一系列8个选择信号A,B,C,D,E,F,G和H(或A-H)中对应的一个。每个MUX 305和每个寄存器307的每个数据输入端和输出端包括与所示配置中每个数据包的特定大小相对应的多个数据信号,如[15:0]。此外,每个MUX 305和每个寄存器307表示用于处理多个位的多个器件,如本领域的技术人员所了解的。第一MUX 305的选择输入端接收信号A,第二MUX 305的选择输入端接收信号B,顺序类推直到倒数第二个MUX 305,其选择输入端接收信号G,以及最后MUX 305,其选择输入端接收信号H。配置每个MUX 305以便当其选择输入端声明为逻辑高(1)时,其从DATA[15:0]信号中选择数据包,而当其选择输入端声明为逻辑低(0)时,其选择锁存数据包DP1 DP8中对应的一个。
每个寄存器307具有数据输入端,其与对应MUX 305的数据输出端连接;数据输出端,其提供锁存数据包DP1 DP8中对应的一个;以及时钟输入端。将每个锁存数据包DP1 DP8提供给MUX 301的各个数据输入端07(每个输入端接收多个信号或位)以及提供给各个MUX 305的第二输入端。将DSTBP0信号用作4个寄存器307的时钟,以将锁存数据包DP1,DP3,DP5和DP7分别提供给MUX 301的0,2,4和6输入端。将DSTBN0信号用作4个寄存器307的时钟,以将锁存数据包DP2、DP4、DP6和DP8提供给MUX 301的1、3、5和7输入端。微处理器核心106将一组读指针信号RDPTR提供给MUX301的选择输入端,以选择单独的数据包以便将所选择的采样数据传送给微处理器核心106。将MUX 301的输出提供给寄存器309的数据输入端,寄存器309在其时钟输入端接收核心时钟信号CLK,且将所选择数据提供给微处理器核心106。
操作时,将从数据选通信号DSTBP0和DSTBP1导出的A-H选择信号(下面将进一步描述)每个在适当的时刻声明为高电平,以根据4字传送的计数,从DATA[15:0]信号中选择数据包18中对应的一个,作为寄存器307的输入。将数据选通信号DSTBP0和DSTBP1用作寄存器307的时钟,以锁存所选择的来自各个MUX 305的数据包18,以提供对应的锁存数据包DP1 DP8。当将每个A-H选择信号声明为低电平时,将锁存数据包DP1 DP8中对应的一个反馈给对应的MUX 305,以在后续的数据选通信号声明期间,为MUX 301保存该数据(声明以锁存之后来自DATA总线的数据包)。微处理器核心106接收至少一个直到全部数据选通信号,将全体表示为信号DSTBx,其通知作4字传输的微处理器核心106。微处理器核心106将RDPTR信号声明以选择并提供锁存数据包DP1 DP8给寄存器309,其将所选择数据与CLK信号同步地提供给微处理器核心106。应注意的是在四倍频数据事务的数据阶段中,为DATA总线上声明的每个数据包提供一多路输入寄存器303,以便数据包可保持锁存状态,从而只要是需要就会存储在那里,甚至在数据阶段结束之后数据也不会丢失。可是,在下一四倍频数据事务的数据阶段之前,要清除多路输入寄存器303。在一个实施例中,微处理器核心106采用RDPTR信号,当各个A-H选择信号一旦使能每个多路输入寄存器303,就开始传输所接收的数据。
在一个实施例中,数据选通DSTBP0,DSTBN0与微处理器101的核心时钟信号CLK同步。因此,微处理器核心106寻找在数据选通DSTBP0,DSTBN0上的跃迁,其表示DATA[15:0]信号上的数据包已记录在寄存器307中对应的一个。当检测到跃迁时,就确定了数据包的采样点。所示动态源同步采样调整逻辑电路102用于在四倍频事务期的相继各拍期间捕获在DATA总线的数据子组0上声明的数据包18。重复该逻辑以捕获在DATA总线的其余每个数据子组13上声明的数据包。
图4是表示根据本发明示例性实施例实现的定时信号产生逻辑电路400的方框图,用于产生用来生成选择信号A-H的定时信号,继而。在所示实施例中,定时信号产生逻辑电路400根据DSTBP0信号产生定时信号PTOG0和PTOG1,以及根据DSTBN0信号产生定时信号NTOG0和NTOG1。使用PTOG0,PTOG1,NTOG0和NTOG1定时信号导出选择信号A-H,如下面将进一步描述的。将DSTBP0信号提供给D型触发器(DFF)401的时钟输入端,DFF401具有提供PTOG0信号的Q输出端,该Q输出端连接到反相器402的输入端以及另一DFF 403的时钟输入端。反相器402的输出端连接到DFF 401的D输入端。DFF 403的Q输出端提供PTOG1信号,该PTOG1信号提供给另一反相器404的输入端,反相器404具有与DFF 403的D输入端连接的输出端。将取消声明信号RESET提供给DFF 401和403的异步清除输入端AC。在这种方式中,DFF 401和403构成序列DFF电路410,以通过系统总线105在四倍频数据传输周期期间,对DSTBP0信号的周期计数。提供另一对DFF 405和407以及反相器406和408以构成另一序列DFF电路412,以按大体相同的方式对DSTBN0信号的周期计数。
在每个四倍频数据传输周期中,将PTOG[1:0]和NTOG[1:0]信号声明为序列状态,以分别对DSTBP0和DSTBN0信号的有关序列周期有效“计数”。具体的说,按下列逻辑计数顺序00,11,01,10,00,11,01等,用DSTBP0信号的每个上升沿更新每个PTOG[1:0]和NTOG[1:0]信号的共同的状态。
图5是表示根据本发明示例性实施例实现的选择信号产生逻辑电路500的方框图,用于根据PTOG[1:0]信号和NTOG[1:0]信号产生选择信号A-H。将PTOG[1:0]信号提供给POS时钟逻辑电路501,POS时钟逻辑电路501提供A,C,E和G信号。真值表502指示POS时钟逻辑电路501根据PTOG[1:0]信号,何时声明A,C,E和G信号。给定上面为PTOG[1:0]信号提供的顺序,POS时钟逻辑电路501按顺序A,C,E和G声明选择信号。以类似方式,将NTOG[1:0]信号提供给NEG时钟逻辑电路503,NEG时钟逻辑电路503提供B,D,F和H信号。真值表504指示NEG时钟逻辑电路503根据NTOG[1:0]信号,何时声明B,D,F和H信号。给定上面为NTOG[1:0]信号提供的顺序,NEG时钟逻辑电路503按顺序B,D,F和H声明选择信号。如图2中所示,将DSTBP0和DSTBN0信号的声明相互交替,从而按先后顺序将选择信号A-H声明,并按先后顺序选择并锁存数据包18,以便按先后顺序将锁存的数据包DP1 DP8提供给MUX 301。由多路输入寄存器303、定时信号产生逻辑电路400和选择信号产生逻辑电路500共同构成采样逻辑电路,用于选择并锁存在四倍频数据传输的数据阶段中在DATA总线上提供的每个数据包。
本发明的一个优点是提高了微处理器或集成电路的性能,因为根据本发明实施例的机制检测何时发送器件驱动数据选通,并将数据提供给核心的时刻调整为发送器件将每个选通声明的时刻。因此,消除了将数据提供给微处理器核心的一个周期延时。
尽管已参照其中的优选方案详细描述了本发明,其他方案和变化也是可能和所期待的。例如,这里所述的动态源同步采样调整系统可对单个数据选通信号、对多个数据选通信号(包括每个数据子组至少一个)、或对为整个数据总线或每个数据子组提供的正数据选通和负数据选通作出响应。此外,可用正或负逻辑或它们的任何组合实现这里所述的逻辑。可在集成器件内的软件或固件中实现逻辑电路所描述的多种功能。本领域的技术人员应理解他们很容易使用所公开的概念和特定实施例作为设计或修改其他结构的基础,以执行本发明的相同意图,而不偏离本发明的权利要求中所定义的本发明的实质和范围。
本案引用下列的优先权于2005年8月3日提交的美国临时申请第60/705299号;以及于2006年6月16日提交的美国正式申请11424592号。
权利要求
1.一种动态源同步采样调整系统,用于在至少一个总线时钟周期的每一个期间,采样分布在数据总线上多个序列数据拍中的多个数据包,其中提供至少一个数据选通,其指示多个数据包中每一个的有效性,所述动态源同步采样调整系统包括多个第一多路复用器,每个具有与数据总线连接的第一输入端,接收多个锁存数据包中对应的一个的第二输入端,接收多个选择信号中对应的一个的选择输入端,以及一输出端;多个寄存器,每个具有与所述多个第一多路复用器中对应的一个输出连接的输入端,提供所述多个锁存数据包中对应的一个的输出端,以及接收至少一个数据选通的时钟输入端;至少一个第二多路复用器,具有与所述多个寄存器的对应输出连接的多个输入端,提供从所述多个锁存数据包中选择的一个的输出端,以及接收读指针的选择输入端;以及定时逻辑电路,具有接收至少一个数据选通的至少一个输入端,以及提供所述多个选择信号的多个输出端。
2.根据权利要求1的动态源同步采样调整系统,其中由所述多个第一多路复用器和所述多个寄存器包括多个多路输入寄存器,其中所述多个多路输入寄存器的每个锁存在数据总线上提供的多个数据包中对应的一个。
3.根据权利要求1的动态源同步采样调整系统,其中当由至少一个数据选通将多个数据包中对应的一个指示为有效时,所述定时逻辑电路将所述多个选择信号中对应的一个提供给所述多个第一多路复用器中对应的一个。
4.根据权利要求1的动态源同步采样调整系统,其中将数据总线细分成多个子组,其中将多个数据包进一步分布在多个数据总线子组中,且其中至少一个数据选通包括用于多个数据总线子组中的每一个的至少一个数据选通,且其中所述定时逻辑电路包括多个序列定时电路,每个具有一接收对应的数据选通的输入端、以及提供所述多个选择信号中对应的一个子集的多个输出端,其中将所述多个选择信号的所述对应子集中的每个选择信号提供给所述多个第一多路复用器中对应的一个,用于选择多个数据包中对应的一个。
5.根据权利要求1的动态源同步采样调整系统,其中至少一个数据选通包括正数据选通和负数据选通,且其中所述定时逻辑电路包括第一序列定时电路,其具有接收正数据选通的输入端,以及将所述多个选择信号的第一子集提供给所述多个第一多路复用器中的第一另一个,用于选择多个数据包中的第一另一个的多个输出端;以及第二序列定时电路,其具有接收负数据选通的输入端,以及将所述多个选择信号的第二子集提供给所述多个第一多路复用器中的第二另一个,用于选择多个数据包中的第二另一个的多个输出端。
6.根据权利要求1的动态源同步采样调整系统,其中所述定时电路包括多个序列连接的触发器,其响应于至少一个数据选通的每个工作沿,预先经过一顺序系列逻辑状态,且其对于每个所述逻辑状态提供所述多个选择信号中对应的一个。
7.根据权利要求1的动态源同步采样调整系统,还包括核心寄存器,其具有与所述至少一个第二多路复用器的所述输出端连接的输入端,提供同步锁存数据包的输出端,以及接收核心时钟信号的时钟输入端;以及其中所述读指针与所述核心时钟信号同步。
8.一种用于在至少一个总线时钟信号周期中的每个周期期间,采样在系统总线上顺序声明的多个数据包的集成器件,该系统总线包括至少一个指示每个数据包的有效性的数据选通信号,该器件包括用于接收总线时钟信号的时钟输入端;用于接收多个数据包并用于检测至少一个数据选通信号的数据总线接口;以及动态源同步采样调整逻辑电路,包括采样逻辑电路,与数据总线接口连接,其响应于至少一个数据选通信号,以选择并锁存多个数据包中的每一个,并且提供多个锁存数据包;以及选择逻辑电路,它与所述采样逻辑电路连接,根据读指针从所述多个锁存数据包中进行选择。
9.根据权利要求8的集成器件,其中所述采样逻辑电路包括多个多路复用器,每个具有与所述数据总线接口连接的第一输入端,接收所述多个锁存数据包中对应的一个的第二输入端,以及接收多个选择信号中对应的一个的选择输入端;多个寄存器,每个具有与所述多个多路复用器中对应的一个输出连接的输入端,提供所述多个锁存数据包中对应的一个的输出端,以及接收至少一个数据选通信号的时钟输入端;以及定时逻辑电路,具有接收至少一个数据选通信号的输入端以及提供所述多个选择信号的多个输出端。
10.根据权利要求9的集成器件,其中所述定时逻辑电路包括多个序列触发器,用于检测至少一个数据选通信号的边沿。
11.根据权利要求10的集成器件,其中所述定时逻辑电路包括第一D型触发器,具有用于接收至少一个数据选通信号的时钟输入端,用于提供第一定时信号的数据输出端,以及数据输入端;第一反相器,具有与所述第一D型触发器的所述数据输出端连接的输入端,以及与所述第一D型触发器的所述数据输入端连接的输出端;第二D型触发器,具有所述第一D型触发器的所述数据输出端连接的时钟输入端,用于提供第二定时信号的数据输出端,以及数据输入端;第二反相器,具有与所述第二D型触发器的所述数据输出端连接的输入端,以及与所述第二D型触发器的所述数据输入端连接的输出端;以及时钟逻辑电路,具有接收所述第一和第二定时信号的各个输入端以及提供所述多个选择信号的多个输出端。
12.根据权利要求9的集成器件,其中至少一个数据选通信号包括指示在系统总线上顺序声明的多个数据包的第一数据包以及其后每隔一个数据包的数据包有效性的第一数据选通信号,以及指示在系统总线上顺序声明的多个数据包的第二数据包以及其后每隔一个数据包的数据包有效性的第二数据选通信号,其中所述定时逻辑电路包括第一时钟逻辑电路,用于接收第一数据选通信号以及用于提供所述多个选择信号中的第一子集以选择在系统总线上顺序声明的多个数据包中的第一数据包以及每隔一个数据包的数据包;以及第二时钟逻辑电路,用于接收第二数据选通信号以及用于提供所述多个选择信号中的第二子集以选择在系统总线上顺序声明的多个数据包中的第二数据包以及每隔一个数据包的数据包。
13.根据权利要求8的集成器件,还包括所述选择逻辑电路包括多路复用器,其具有将之连接以接收所述多个锁存数据包的多个输入端,提供所选择的锁存数据包的输出端,以及接收所述读指针的选择输入端;以及核心寄存器,具有与所述多路复用器的所述输出连接的输入端,提供同步数据包的输出端,以及接收核心时钟信号的时钟输入端;其中所述读指针与所述核心时钟信号同步。
14.一种对于至少一个总线时钟周期的每一个周期采样在数据总线上顺序声明的多个数据包的方法,包括检测至少一个数据选通信号的工作沿;对所检测的每个工作沿,选择多个数据包中对应的一个;以及锁存每个所选择的数据包,以提供多个锁存数据包。
15.根据权利要求14的方法,其中所述检测至少一个数据选通信号的工作沿包括通过多个逻辑状态定时时序逻辑。
16.根据权利要求15的方法,其中所述选择多个数据包中对应的一个包括对于多个逻辑状态中的每一个,将多个选择信号中对应的一个声明;以及将多个选择信号中的每一个提供给与数据总线连接的多个多路复用器中对应的一个的选择输入端。
17.根据权利要求14的方法,其中所述锁存每个所选择的数据包包括用至少一个数据选通信号定时多个寄存器中对应的一个。
18.根据权利要求14的方法,其中将多个数据包分布在数据总线的多个子组之中以及分布在对于至少一个总线时钟周期的多个序列数据拍之中,且其中所述检测至少一个数据选通信号的工作沿包括检测多个数据选通信号的工作沿,多个数据选通信号包括对于数据总线的多个子组的每个的至少一个数据选通信号。
19.根据权利要求14的方法,其中所述检测至少一个数据选通信号的工作沿包括检测正数据选通信号和负数据选通信号的工作沿;以及其中所述选择多个数据包中对应的一个包括用正选通信号定时第一时序逻辑和用负选通信号定时第二时序逻辑。
20.根据权利要求14的方法,还包括选择多个锁存数据包中的至少一个;以及用核心时钟信号同步地锁存多个锁存数据包中的至少一个。
全文摘要
一种用于采样系统总线上顺序声明的数据包的集成器件,包括用于接收总线时钟信号的时钟输入端,用于接收数据包并检测指示数据有效的至少一个数据选通信号的数据总线接口,以及动态源同步采样调整逻辑电路。动态源同步采样调整逻辑电路包括响应于数据选通选择并锁存每个数据包并提供锁存数据包的采样逻辑电路,以及根据读指针从锁存数据包中进行选择的选择逻辑电路。一种在一个或多个总线时钟周期中采样系统总线上顺序声明数据包的方法,包括检测数据选通的工作沿,对于每个所检测的工作沿选择一个数据包,以及锁存每个所选择的数据包。
文档编号H04J99/00GK1909434SQ20061010911
公开日2007年2月7日 申请日期2006年8月3日 优先权日2005年8月3日
发明者达赖厄斯·D·嘉斯金斯 申请人:威盛电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1