频率为P/Q整数比关系的数字器 件间同步数据传输的方法和设备 本发明总体上涉及同步数据传输,更确切地说涉及工作于不同的频率,却有P/Q整数比关系的数字逻辑器件之间的同步数据传输。
计算机系统的频率,在历史上总是受可使用的硅技术所限制。换句话说,系统板技术能够使用的频率比当时硅技术所能装备的微处理器频率要高些。过去设计的计算机系统采用比较落后的技术,微处理器所需的系统板和微处理器都普遍地工作于较低的频率。但是,由于硅技术已有比系统板技术更为长足的进步,已经出现了技术上的交错。今天,先进的硅技术为微处理器提供了比目前可用的系统板能够工作得高得多的频率。
除系统板和微处理器外,在其他的场合里,不同的频率领域中会发生不同地技术上的制约。例如,一部微处理器和一个超高速缓冲存储器可以用不同的硅技术来制造,每一种技术有不同的最高工作频率。一部微处理器和一个浮点单元可以也工作在不同的频率上是有利的。在这些例子里,超高速缓冲存储器和(或)浮点单元可以象CPU(中央处理器)一样装在同一块芯片上,或者是在不同的芯片上。甚至于制造在同一块芯片上时,用于交换数据的个别的功能块最好工作在不同的频率。其它设备最好工作在不同频率的例子是离散逻辑组件和电信器件。因此本发明可应用于各种各样的数字逻辑器件和存储器件。
今天,为了提供高性能的计算机系统,微处理器最好工作在它最高的可用频率上,而计算机系统的其它部分则工作于由每一块系统板技术或其它技术所制约而确定的较低频率,在这些计算机系统中工作于不同频率的各个器件之间传送数据,是一个重要的问题,提供一个非同步传送机制是一个解决办法。非同步传送机制能够提供精确的数据传送,但在和微处理器一起使用时却往往并不需要。非同步传送机制有一个固有的设计折衷问题,即在数据传送时间的不确定性和数据传送的精确度两者之间的折衷问题。典型的情况如非同步机制设计是以牺牲数据传送时间的不确定性为代价选择最佳的数据传送精确度。
微处理器中的同步设计有利于超越非同步设计有几个理由:第一,微处理器设计有效工具被最佳化以供调试同步逻辑设计。利用同步设计技术可使微处理器的设计和使其生效更为方便和更加可靠。第二,同步设计是由采用主机-检验器的电路的差错容许计算机系统进行管理的。在主机-检验器系统里,第一个处理器是主机,与第二个处理器(检验器)锁定步进地一起工作。在每一个时钟周期内,检验器处理器监视着两个处理器在它们的引线上是否产生完全相同的结果以便校核差错。由于非同步数据传送设计并不提供必要的锁定步进工作,所以在主机-检验器系统里,它们不可能被采用。
一些微处理器内部工作于计算机系统总线频率的整数倍上。在这样的计算机系统里,部件间的同步数据传送工作于不同的频率上是相当方便的,即:较低频率时钟的数据传送边缘符合于较高频率时钟的数据传送边缘。因此,较低频率时钟(和/或相当于较高频率时钟的数据传送边缘)的数据传送边缘,能够用来促使数据传送。但是,整数倍频率设计只可利用硅技术中量子跳跃技术的进步。例如,如果系统板技术限于50MHz操作,则整数倍的设计中可使用操作于100、150、200、……MHz的微处理器。假设现有可用的硅技术能够使微处理器操作于120MHz。100MHz以外所增加的20%的性能在整数倍设计中就不利用了。给微处理器设计能够操作在对系统总线来说有更为灵活的频率比是很有好处的,同时对微处理器与其它设备之间,在计算机系统总线上也可提供同步数据传送。总的来说,在多种多样的数字逻辑和存储器件之间,如提供同步数据传送,按照灵活的工作频率比来运行是大有好处的。本发明提供这些有益的成果。
因此,数据器件间同步数据传输的系统、方法和设备,需要运行在具有P/Q整数比关系的频率上。
本发明包括在运行于具有P/Q整数比关系的频率上的设备间提供同步数据传输,以及如何在微处理器和计算机系统中付诸实现的方法和设备。本设备在高频器件和低频器件间提供同步数据传送,具有如下的频率关系:
低频率=(P/Q)×高频率
公式里P和Q代表整数,而且P小于Q。对于高、低频领域间同步地传输的数据来说,设备产生数据传输信号能限定安全可靠数据传输时间或窗口。以一种方式,安全的数据传输窗口是在传送的数据是稳定的且接收器件能够接收数据(即:准备好接收)的时候。
本发明的设备,宜与按高频时钟运行的高频器件接在一起使用,而且也与按低频时钟运行的低频器件接在一起使用,低频时钟在实际上是高频时钟频率的P/Q倍,在这里P和Q是整数值。
在一个实施例中,本发明的设备包括:一个用来指示高频与低频时钟的预定相位关系的器件,一个响应指示器件和高频时钟的器件,用于在安全传输窗口期间里产生符合于P和Q值的和预定相位关系的第一个传送信号;以及一个响应于第一个传送信号的器件,用于使数据从高频和低频器件之中的一个同步地传输到另外的一个中去。
一种方式中,在要传送的数据是稳定的,且接收数据的器件能够接收数据时,安全的传送窗口至少是高频时钟的一个周期。一种方式中,预定相位关系实际上是与高、低频时钟的边缘相重合。一种方式中,P小于Q,而且Q并非是P的整数倍。
另外的实施例中,本发明包括一个用来选择P和Q数值的器件。一种方式中,P和Q选择器器件包括设备可编程的引脚。另一种方式里,P和Q选择器器件包括设备的寄存器。另一种方式中,P和Q选择器器件包括一个执行算法的处理器。另一种方式里,P和Q选择器器件包括一个执行算法的状态机。
在本发明的特殊实践中,第一传送信号发生器器件包括:一个计数器器件,它产生响应于高频时钟的计数值,并响应于指示器器件将计数值复位至预定的计数值;以及一个译码器部件,它联接于计数器部件,用以译码计数值和P、Q值,并按照预定的P和Q的组合和计数值产生第一传送信号。
在另外的实施例中,本发明包括一个P/Q时钟发生器部件,用以按照P和Q值产生高频和低频时钟中的一个或两个。一种方式中,P/Q时钟发生器部件响应于高频时钟,按照P/Q值产生低频时钟。在另一方式中,P/Q时钟发生器部件响应于低频时钟,按照P、Q值产生高频时钟。
在一个特殊的实践中,P/Q时钟发生器包括:一个分频器部件,响应于低频时钟,用以产生具有实际上等于[低频时钟]/P的频率的第二个信号;以及一个锁相环,响应予第二个信号,用以产生实际上为低频时钟的频率的Q/P倍的高频时钟。
本发明利用举例进行说明,并且不限于附图的图形,附图中相同的标号表示同样的元件,其中:
图1是本发明设备的一种实施例的框图;
图1A是具有可编程引线的P/Q选择器的框图;
图1B是具有可编程寄存器的P/Q选择器的框图;
图1C是具有状态机的P/Q选择器的框图;
图1D说明为选择P/Q的一个算法;
图2说明L-→H_en数据传送信号的一种方式,L-→H_en信号由接口控制器产生;
图3说明H-→L_en数据传送信号的一种方式,H-→L_en信号由接口控制器产生:
图4是本发明设备的一种实施例在计算机系统的处理器中的框图;
图5是一组波形图,表示了图4的实施例的从系统总线传送数据到处理器的一种工作方式;
图6是一组波形图,表示了图4的实施例的从处理器传送数据到系统总线的一种工作方式;
图7是P/Q时钟发生器的一种实施例的框图;
图8是接口控制器的一种实施例的框图;
图8A-8H说明接口控制器所产生的“使取样”和“使驱动”的信号的波形图,都是在一种方式中,P=4,Q分别为4至15;
图9是一组波形图说明同步信号的一种方式;
图10说明计算机的微处理器中本发明设备的一种实施例;以及
图11是本发明方法的流程图,在工作于不同频率的器件之间,同步地传送数据。
现叙述工作在具有P/Q整数比关系的频率上的器件之间提供同步数据传输的系统、方法和设备。在以下的叙述里将陈述许多具体细节,如:信号名称、输入或输出的信号型式、器件频率、时钟频率、总线频率和P/Q频率比等,以便对本发明有个透彻的理解。但是,很显然,对于一个本领域的技术人员来说,没有具体细节也是可以实践本发明的。在另外的情况下为了不致混淆本发明,对各种公知的方法和电路都以框图形式表示出来。很清楚,本发明可以由晶体管电路来组成,它们已经可以用大家所熟知的CMOS(互补型金属氧化物半导体)技术,或者其它相当的半导体制造工艺制造出来。此外,本发明可以用其它的制造工艺来实现数字器件的制作。
在以下讨论中本发明是关于在微处理器中的应用,本发明并不限于那种应用。不同数字器件,诸如离散逻辑器件、存储器件、在同一芯片上或分开的芯片上的器件、通信器件等等,在它们之间的同步数据传送的应用也属于本发明的领域和精神实质之内。
图1是本发明设备的一种实施例的框图。本发明一般使用于数字器件,它们同步地交换数据并工作于具有P/Q整数比关系的频率上。在高频领域中的器件由一个高频时钟来同步,而在低频领域中的器件则由低频时钟来同步,低频时钟的频率是高频时钟频率的P/Q倍,在这里P和Q都是整数值。在此实施例中P小于Q以便提供[较高频率]/[较低频率]的频率关系。P/Q同步传送器件7,在高频与低频器件之间提供同步数据传送。
P/Q时钟发生器10产生一个或多个时钟。一种方式中,P/Q时钟发生器接收低频时钟(LFclk)作为输入,并产生高频时钟(HFclk)。这种方式中,P/Q时钟发生器10可以是锁相环路。另一种方式中,P/Q时钟发生器10接收高频时钟并产生低频时钟。还有一种方式,P/Q时钟发生器10,同时产生高频和低频两种时钟,高低时钟频率有P/Q整数比的关系,这个关系是由公式1所定义的P和Q两个数值来确定的:
(公式1) 低频=(P/Q)×高频;其中,P<Q;且P和Q代表整数值。
P和Q的数值能够用各种方法编程、编组或选用。例如,图1A说明一个P/Q选择器,选择P和Q值,包括可编程引线126。图1B说明一个P/Q选择器由一个P寄存器和一个Q寄存器所组成。图1C说明一个P和Q状态机140,用以选择P和Q值。图1D说明用于选择P和Q值的一个算法。此算法能够由一个处理器或一个状态机来执行。例如,一个处理器在缺少P和Q值的情况下,可以上电而工作在最高可用频率上,并反复地选择P和Q值,以便与系统总线一起取得最佳工作情况。
再一次参照图1,同步发生器11产生一个同步信号,表明高频和低频时钟的预定相位关系。在一种方式中,同步发生器11是一个鉴相器电路,用于接收高频和低频时钟并在检测到预定相位关系时产生同步信号,该同步信号能够在不同的时刻上认定同步信号,示出预定相位关系。在一种方式中,在高频时钟周期里,在高频和低频时钟的上升边缘重合之前认定同步信号。在一种方式中预定相位关系每次出现时,产生同步信号。在另外的方式中,只在预定相位关系第一次出现时,产生同步信号。在一种方式中,预定相位关系是高频和低频时钟的重合边缘。在另一种方式中,同步信号示出其它重合边缘或高低频时钟的其它相位关系,而且在其它时刻也同样认定。
高频器件16响应高频时钟而工作,亦通过其数据输入端和数据输出端(分别为Data IN和Data OUT)与其它器件交换数据。低频器件18响应低频时钟而工作,并且也通过它自身的数据输入端和数据输出端(分别为Data IN和Data OUT)交换数据。高低频器件的数据输入和输出端联接到数据限定器(qualifier)14。在一种方式中,高低频器件都是组装着的逻辑器件。在另一方式中,高低频器件都是分立的逻辑器件。在另一方式中高低频器件都是处理器。在另外方式中,高低频器件是微处理器的不同的功能块,诸如一个CPU和一个超高速缓冲存储器,或者一个CPU和一个浮点单元。在另一种方式中,高低频器件是一个CPU和一个超高速缓冲存储器,分别在不同的芯片上。还有一种方式,高频器件是一个处理器,而低频器件是计算机系统的外围设备和系统总线。
数据限定器14将高频器件的输入和输出端分别联接到低频器件的输出和输入端,并使数据在高低频器件间传送。数据限定器14能按照高至低数据传送信号H-→L_en将数据从高频器件传送到低频器件,并按低至高数据传送信号L-→H_en将数据从低频器件传送到高频器件。数据传送信号H-→L_en和L-→H_en分别联接到数据限定器14的输入端en1和en2处。一种方式,数据限定器14包括传送门电路以便按数据传送信号传送数据。另一种方式,数据限定器14包括逻辑门电路,例如“与门”,以便用数据传送信号来限制传送数据。另一方式,数字限定器14装有锁存器,按照数据传送信号锁存输入和输出数据。还有一方式,数据限定器14装有锁存器,由数据传送信号并响应一个时钟而启动锁存器。
接口控制器12接收P和Q值,高频时钟和同步信号以及响应于这些输入,产生高至低H-→L_en和低至高L-→H_en数据传输信号,以便分别使同步信号从高到低和从低到高的频率范围传输。一种方式,接口控制器是一个状态机。另一方式,接口控制器是一个处理器。还有一种方式,接口控制器是组合的逻辑器件。运行时,数据传送信号指出安全的数据传输时间,或窗口,以便在高低频器件间同步地传送数据。一种方式,安全数据传送时间是在发送频率里的数据已知是稳定的,同时在接收频率范围里的接收器件能够接收数据。
图2说明图1中接口控制器12所产生的L-→H_en信号的一种方式。这一方式中,在所选的高频时钟周期里,其中没有低频时钟的上升边缘(即:数据改变的边缘)时L-→H_en信号是有效的。低频领域里的数据对低频时钟的上升边缘响应而改变。在有效的L-→H_en期间,由于低频领域数据在那个时间的期间里是稳定的,同时高频器件在那个高频时钟周期里能够接收数据,所以从低频到高频领域传送数据是安全的。另外的方式,低频领域数据响应于低频时钟的下降边缘而改变,而在所选的高频时钟周期里,其中没有低频时钟的下降边缘时L-→H_en信号是有效的。另一种方式在所选的高频时钟周期里,其中没有低频时钟的数据改变边缘,L-→H_en信号是有效的。一种方式,数据的传送也可由读信号或写信号来限定(qualified)。
图3说明图1中接口控制器12所产生的H-→L_en信号的一种方式。在此方式里,在高频时钟周期里紧接在低频时钟的上升边缘之前(即:一个数据接收边缘),H-→L_en信号是有效的。按照H-→L_en信号,由高频器件传送的数据被锁存,以便随后传送给低频器件。于是,数据被锁存,或在低频时钟的下一次的上升边缘上,被低频器件所接收。在一种方式中,数据的传送也可由读或写的信号所限定。另外的方式,在紧接于低频时钟的接收边缘之前的一个以上高频时钟周期,H-→L_en数据传送信号也可有效。此种方式中从高频领域来的数据在被低频器件接收之前有额外的时间得到稳定。另外的方式,在低频时钟的数据接收边缘期间,H-→L_en数据传送信号可以有效。还有一种方式,低频时钟的边缘是下降边缘。还有另一方式,在高频时钟周期里,其中没有低频时钟的数据改变或数据接收边缘,H-→L_en信号可以有效。
图4是在计算机系统的处理器50中本发明设备的特殊应用的框图。此实施例,与图1的实施例不一样,而是采用与微处理器和计算机相关的术语来叙述。例如,图1的低至高和高至低传送信号在这里称为“使取样”和“使驱动”的信号,以反映在它的输入/输出端点上取样和驱动数据的处理器功能。处理器50与系统总线56相联接,与外部器件54通信。外部器件54按照总线时钟运行,总线时钟可以是系统总线的一部分。一种情况,总线时钟由处理器50产生。另一情况,总线时钟是外部产生的,然后输入到处理器50。
处理器50包括一个P/Q同步传送器件48,用于提供高频处理器核心(core)34与外部器件54之间经过系统总线56的同步数据传送。P/Q同步传输器件包括系统总线接口逻辑器件52。另一种情况,系统总线接口逻辑器件52是外部器件54的一部分。还有一种实施例,系统总线接口逻辑器件52是处理器50外部相分离的器件的一部分。系统总线接口逻辑器件52按照一个抗扭斜(de-skewed)的低频总线时钟运行。高频处理器核心34按照高频核心时钟运行。抗扭斜的总线时钟有与总线时钟相同的频率,而且有与核心时钟相同的相位。总线与核心时钟的频率关系是整数比的关系,在下面公式2中加以定义。经抗扭斜后的总线时钟可使逻辑设计比较简单。另一种实施例中,用总线时钟来代替抗扭斜的总线时钟。
处理器50包括一个P/Q时钟发生器30,它接收一个P值和一个Q值并产生一个或一个以上的时钟和一个同步信号。一种方式,P/Q时钟发生器10接收一个总线时钟作为输入,并产生一个核心时钟。这个方式中,P/Q时钟发生器可以是锁相环路。另一种方式中,P/Q时钟发生器30接收核心时钟并产生总线时钟。还有一种方式,P/Q时钟发生器30同时产生总线和核心时钟。一种方式,P/Q时钟发生器30产生一个经抗扭斜的总线时钟,具有与核心时钟相同的相位。一种方式,P/Q时钟发生器30产生一个抗扭斜的总线时钟,具有与总线时钟相同的相位。核心时钟和总线时钟有整数比的关系P/Q,它是按公式2所定义的P和Q两值所确定的。
(公式2) [总线时钟频率]=(P/Q)×[核心时钟频率];其中P和Q代表整数比P/Q的整数值。一种方式,P小于Q,以致总线时钟频率低于核心时钟频率。另一方式,P大于Q,以致总线时钟频率高于核心时钟频率。P和Q值的设置可以有各种不同的方法(见图1A~1D)。一种方式,P、Q值由处理器50的引线所设置。另一方式P、Q值由“写进”处理器50的寄存器的数值所设置。还有一方式,P、Q值由一个算法所设置。例如,处理器50可以在缺少P和Q值时上电,工作在它的最高可用的核心时钟频率,并反复地选择P和Q值以使其与系统总线有最佳工作状态。这样一个算法在BIOS系统里,在一个软件子程序中,能由处理器来执行,或由处理器的硬件状态机来执行。
同步信号指出时钟的预定相位关系。一种方式,同步信号实际上指出核心和总线时钟重合的上升边缘。另一方式,同步信号实际上指出核心和抗扭斜的总线时钟重合的上升边缘。另外方式,同步信号指出时钟间其他的预定相位关系。同步信号以各种方法指出预定相位关系。一种方式,在核心时钟周期内,紧接在核心时钟与抗扭斜的总线时钟的重合的数据变更边缘之前,指出重合边缘,可以认定同步信号。一种方式,对预定相位关系每次出现时产生同步信号。另一方式,只在预定相位关系第一次出现时产生同步信号。另外的方式,同步信号指出各时钟的其它重合边缘,并在其它时间对这样的指出认定同步信号。
处理器50也包括一个接口控制器32。接口控制器32接收P和Q值、核心时钟和同步信号,并且按其输入产生两个数据传输信号,“使取样”和“使驱动”,分别使处理器50进行输入和输出的数据传送。一种方式,接口控制器是状态机。另一方式,接口控制器是处理器。还有一种方式,接口控制器是组合的逻辑器件。运行时,数据传送信号指出安全数据传送时间或窗口,以便处理器50分别在其输入46或输出44端点上同步地进行数据取样或驱动数据。另外方式,可用单个I/O端点代替分开的输入和输出的端点。为了数据输入的目的,安全数据传输时间是当输入数据是稳定的和锁存器42能够接收数据的时候。为了数据输出的目的,安全数据传输时间是当输出数据是稳定的和锁存器38准备好接收数据的时候。
处理器50包括一个处理器核心34,响应于核心时钟来处理数据和指令,并通过系统总线56与外部器件54同步地交换数据。一组锁存器36、38、40和42联接于处理器核心34与系统总线56之间以便处理器核心34与外部器件54之间同步地交换数据。锁存器36联接接收从处理器核心34的数据输出端子(Data OUT)来的数据。锁存器36的启动和时钟输入分别联接“使驱动”和核心时钟信号。一种方式,锁定器是个透明的D-锁定器,在核心时钟的低周期里,假如启动输入是动作的时候,它是透明的。另一种方式,锁定器36是个边缘触发的D一锁定器。锁定器36的输出联接到锁定器38的输入。锁定器38的时钟输入联接到抗扭斜的总线时钟。一种方式,锁定器38是个边缘触发的锁定器,响应于抗扭斜的总线时钟的上升边缘。另一种方式,锁定器38是个透明的D-锁定器。锁定器38的输出联接到输出端点44。另一种方式,不产生抗扭斜的总线时钟,锁定器38的时钟输入联接到总线时钟。
锁定器40联接到接收从输入端点46来的数据。锁定器40的时钟输入联接到抗扭斜的总线时钟。一种方式,锁定器40是个边缘触发的D-锁定器,响应于抗扭斜的总线时钟的上升边缘。另一种方式,锁定器40是个透明的D-锁定器。另一种方式,不产生抗扭斜的总线时钟,同时锁定器40的时钟输入联接到总线时钟。锁定器42联接到接收锁定器40的输出。锁定器42的启动和时钟输入分别联接“使取样”和核心时钟信号。一种方式,锁定器42是个透明的D-锁定器,在核心时钟的高周期里,如果启动输入动作的时候,它是透明的。另一种方式,锁定器42是个边缘触发的D-锁定器。锁定器42的输出联接到处理器核心34的数据输入端子(Data IN)。
图5是一组波形图,说明图4的处理器50的工作的一种方式,正从系统总线56向处理器核心34输入数据。在T1期间,同步信号是高的,表明紧接着的抗扭斜的总线时钟(或总线时钟)的上升边缘符合于核心时钟的上升边缘。在T2、T3和T4期间,外部器件54在总线56上驱动输入数据。在T4期间,响应于抗扭斜的总线时钟的上升边缘,锁定器40锁定输入数据。在T5期间,“使取样”信号动作,表明锁定器输入数据是安全可靠的(即:输入数据是稳定的)。响应着动作的“使取样”信号和核心时钟的高周期,锁定器42锁定从锁定器40来的输入数据,锁定器42的输出供给处理器核心34的“数据输入”(Data IN)端子。
图6是一组波形图,说明图4的处理器50工作的一种方式,正从处理器核心34向系统总线56输出数据,供外部器件54使用。在T1期间,同步信号是高的,表明紧接着的抗扭斜的总线时钟(或总线时钟)的上升边缘符合于核心时钟的上升边缘。在T3期间,“使驱动”信号动作,表明一个安全可靠的时间锁定输出数据,以便接着向输出端点44传送。在T3期间,响应着动作的“使驱动”信号和核心时钟的低周期,锁定器36锁定从处理器核心的“数据输出”(Data OUT)端子来的输出数据。锁定器36驱动它的输出端子上锁定了的数据,输入到锁定器38。在T4期间,响应总线时钟的上升边缘,锁定器38锁定输出数据并向系统总线56驱动,供外部器件54使用。
图7是P/Q时钟发生器一种实施例的框图。P/Q时钟发生器70装有被P所除的分频器60以及一个倍频锁相环路包括62、64、66和68等框块。被P所除的分频器60接收P值和总线时钟,并产生一个输出信号,频率为[总线时钟]/P。一种方式,被P所除的分频器是个可编程计数器。另一种方式,被P所除的分频器是个主-从分频器电路。一个相位-频率检测器62接收[总线时钟]/P的信号和从被Q所除的框块68的[核心时钟]/Q的输出,并产生一个相位误差信号和一个同步信号。相位误差信号表明两个输入信号之间是否有相位或频率的差异。一种方式,同步信号表明两个输入信号的上升边缘重合。另一种方式,同步信号表明两个输入信号的其它预定相位关系。低通滤波器64接收相位误差信号并产生一个控制电压信号。控制电压信号驱动压控振荡器66。响应于控制电压,压控振荡器66产生一个输出时钟信号(核心时钟),其频率由控制电压所确定。被Q所除的分频器68接收Q值和核心时钟,并产生[核心时钟]/Q信号。一种方式,被Q所除的分频器是可编程计数器。另一种方式,被Q所除的分频器是主-从分频器电路。锁相环路的动作是调整压控振荡器66的频率,致使[核心时钟]/Q反馈信号具有与[总线时钟]/P信号相同的相位和频率。因此,核心时钟信号的频率是Q/P乘以总线时钟信号的频率。或者,换句话说,总线时钟频率是核心时钟频率的P/Q倍。一种方式,P小于Q,使总线时钟频率比核心时钟频率低。
图8是接口控制器的一种实施例的框图。接口控制器72包括一个计数器76,计数器76有一个四位计数寄存器74,由核心时钟给以增量并由同步信号复位。一种方式,计数器76由组合逻辑器件实现。译码器74接收计数寄存器的数值以及P和Q的数值作为输入并将它们译码,产生“使取样“和“使驱动”数据传送信号。一种方式,译码器由组合逻辑器件实现。另一种方式,译码器是个处理器。另一方式,译码器是状态机。
P和Q整数值能够用各种方法编码。例如,一种方式,接口控制器用P和Q编码,定义于表1中。
表1整数值 二进制编码P=3 0P=4 1Q=8 000Q=9 001Q=10 010Q=11 011Q=12 100Q=13 101Q=14 110Q=15 111一种方式,接口控制器产生“使取样”和“使驱动”输出,供[P=4,Q=8]和[P=4,Q=9]的P和Q编码,如表2所示。
表2 P Q 计数器 使取样 使驱动 1 000 0000 1 0 1 000 0001 0 1 1 001 0001 0 1 1 001 0010 0 0 1 001 0011 1 1 1 001 0000 1 0 1 001 0100 0 0 1 001 0101 1 1 1 001 0110 0 0 1 001 0111 1 0 1 001 1000 0 1 * *** **** * *
图8A~8H说明“使取样”和“使驱动”信号的波形图,如同接口控制器所产生的,一种方式,用于[P=4,Q=4](图8A)直到[P=4,Q=15](图8H)。
图9说明由P/Q时钟发生器产生的同步信号的一种方式。在此方式中,同步信号在总线时钟(即:高频时钟)周期之中并在总线和核心时钟的重合上升边缘之前被认定。在一种方式中,对每个重合的上升边缘出现时,产生同步信号。另一种方式中,只在第一次重合边缘上,产生同步信号。另外的方式中,符合于高低频时钟的其它重合边缘时,同步信号被认定并对这样指出的其它时刻也加以认定。
图10说明在计算机系统中本发明设备的一种实施例。响应于较高频率核心时钟而工作的微处理器90联接到系统总线56。系统总线装有必需的地址、数据和控制等连接线,用以在系统的不同框块间传送数据。一种方式中较低频率的总线时钟也是系统总线56的一部分。一部用来存贮供微处理器90使用的指令和数据的外部存储器88、一部能使计算机使用者将信息和命令与微处理器90通信的字母数字输入设备80、一部用来向计算机使用者显示信息的显示设备82以及数据存贮设备84例如用来存贮信息的硬盘,也都联接到系统总线56。以总线时钟的频率将信息传送到系统总线56上。一个或更多的器件联接到系统总线56上,并响应于总线时钟而工作。因为微处理器90按照高频内部核心时钟而工作,微处理器90包括一个P/Q同步传送器件86,用以在微处理器90和联接到系统总线56的其它器件之间提供同步数据传送。本发明的设备容许高频微处理器与计算机系统各低频组件同步地交换数据。应该清楚,对于一部给定的计算机系统设备,并非全部所示的各组件都是必需的。也应该清楚,在一部给定的计算机系统中可以有另外的组件。一种方式中,微处理器90是图4的微处理器50。
在计算机系统的设计中,在选择总线和核心时钟频率的同时也要提供同步数据传送,这是本发明提供的较大灵活性。例如,对于当今的系统板设计工作,50或66MHz是最佳的。在一种方式中,对于50和66MHz系统板设计,本发明为P/Q数值和相应的微处理器的表3所定义的频率提供同步数据传送。微处理器频率示于表3的顶行,P/Q值示于左列。相应的总线频率示于表3中。
表3
P/Q、CPU频率与总线频率的组合 CPU 频率 133 MHz 150 MHz 166 MHz 183 MHz 200 MHz 216 MHz P/Q值 对应于CPU频率和P/Q值的总线频率 4/8 66MHz 4/9 66MHz 4/10 66MHz 4/11 66MHz 4/12 66MHz 4/13 66MHz 3/8 50MHz 3/9 50MHz 3/10 50MHz 3/11 50MHz 3/12 50MHz 3/13 50MHz在另外一些方式中,可以使用其它的系统板频率、P/Q组合以及微处理器的频率。
图11是本发明方法的流程图。用以对工作在P/Q相关频率的数字器件间进行同步传输数据。步骤100产生低频时钟和高频时钟,它们有上述公式1的频率关系。一种方式,上述P/Q时钟发生器产生时钟,步骤102产生同步信号指出高频和低频时钟的预定相位关系。一种方式,同步信号指出重合的各时钟上升边缘。另一方式,同步信号指出高低频时钟的其它重合边缘。一种方式,同步信号是由上述P/Q时钟发生器所产生。另一方式,分开的相位检测电路产生同步信号。步骤104响应同步信号和高频时钟,产生一个高至低数据传送信号(如图1的H-→L_en)和一个低至高数据传送信号(如图1的L-→H_en)。当动作时,数据传送信号限定安全的数据传输时间,用以使同步数据传送在工作于高和低频领域里的器件之间。一般情况下安全的数据传输时间或窗口,是这样的时间,即在已经知道发送频率领域里的数据是稳定的时候且同时在接收频率领域里的器件能够接收数据的时候。一种方式,数据传送信号是由上述的接口控制器所产生的。步骤106,数据限定器,响应于高至低数据传送信号和高频时钟,使数据的传送从高频器件(按高频时钟工作)到低频时钟(按低频时钟工作)。步骤108,数据限定器按照低至高数据传送信号和高频时钟,使数据的传送从低频器件到高频器件。
这样,已经叙述了一种系统、方法和设备,用以在数字器件间提供同步数据传输,数字器件工作在具有P/Q整数比关系的频率上。
在前面的详细说明里,本发明已经根据其具体示例性的实施例加以叙述。但是,很显然对其进行各种不同的修改和变动,没有脱离本发明广泛的精神实质和范围,正如后附的权利要求书中所陈述的那样。因此,说明书和附图应看作为一种说明的意义而不是限定的意义。