专利名称:采用动态总线倒置来降低同步转换输出噪音的方法和装置的制作方法
技术领域:
本发明涉及计算机系统领域,尤其涉及降低数据总线上的同步转换输出噪音的领域。
背景技术:
在努力提高现今计算机系统性能的过程中,系统设计人员设法提高各种系统数据总线的时钟频率。由于总线频率提高了,数据线上的噪音成为一个愈加重要的问题。时钟频率的提高以及其时钟周期的相应缩短,这使得在接收端接收到数据之前,只有更短的时间解决出现在数据线上的噪音问题。数据线上的噪音可能导致当接收端锁存数据时锁存了无效数据。
数据线上的一个噪音源可能是同步开关输出噪音。该噪音可能是由几个或多个输出驱动装置在同一时刻都处于特定装置开关状态所造成的。其一个例子可包括一系统逻辑装置,该装置通过一图形总线同时将32位数据发送至图形装置上。该系统逻辑装置可能在一个时钟周期内发送32位的“1”,而在下一个时钟周期内发送32位的“0”。在这个例子中,所有的图形总线数据位将状态从一个时钟周期变化为下一个时钟周期。这样的变化可以减小一些或全部32位数据线上的同步开关输出噪音,并且可以限制图形总线可能的时钟频率,从而限制了图形子系统的潜在性能。
通过下面的详细说明以及本发明实施例的附图可以更全面地理解本发明,然而本发明并不仅限于特定实施例的描述,实施例附图仅用于说明和帮助理解本发明。
附图1是一系统的实施例的方框图,该系统包括一系统逻辑装置和一个图形装置,该系统逻辑装置具有一个动态总线倒置编码器,该图形装置具有一个动态总线倒置解码器。
附图2是动态总线倒置编码器的实施例的方框图。
附图3是采用动态总线倒置以减少同步开关输出噪音的方法的实施例的流程图。
具体实施例方式
附图1是系统100的具体实施例的方框图,系统100包括一个系统逻辑装置120和一个图形装置130,该系统逻辑装置120有一动态总线倒置(DBI)编码器200,该图形装置130有一DBI解码器124。系统100还包括一个与系统逻辑装置120相耦合的处理器110。该系统逻辑装置120还与一系统存储器140和一个输入/输出集线器150相耦合。
系统逻辑装置120通过一输出数据总线203和一个倒置信号205而耦合连接到图形装置130。DBI编码器200将先前置于输出数据总线203上的一组数据位与要放置到数据总线203上的下一组数据位作比较。DBI编码器200确定有多少数据位在数据总线203上发生转变,这种转变是由于下一组数据位在前一组数据位之后被发送到数据总线203上所造成的。如果可能的数据位进行转换的数目大于一个预定数值,那么DBI编码器200倒置下一组数据位中的每一个数据位并且发送已被倒置的数据到输出数据总线203。DBI编码器200选通倒置信号205以向DBI解码器124表明数据位已经被倒置。然后DBI解码器124倒置已经被倒置的数据位来恢复原始数据。
选择预定数值以产生最少的位转换。在一些实施例中,选择预定数值为数据位宽度的一半。例如,一组16位的数据,预定数值是8。因此,如果多于8个数据位将改变状态,那么数据位被倒置并且倒置信号被选通。
上文所描述的DBI实施例通过限制发生在输出数据总线上的位转换的数目来降低了同步开关输出噪音量。
解码器124的一个实施例包括一个对输入数据和倒置信号执行一个异或(XOR)功能的XOR电路。按此,如果没有倒置指示(倒置信号205为“0”),那么输入数据不被解码器124倒置。如果有倒置指示(倒置信号205为“1”),那么输入数据的每一个数据位都被解码器124倒置以便恢复原始数据。
虽然系统100示出的是单个数据总线和单个倒置信号,但是数据总线203可以分成两个或更多组。例如,一个32位总线可以被分成两组,每组16位。还可以有其它可能的组合。编码器200一组一组的产生了倒置结果。每一组使用自已的倒置信号。
附图2是动态总线倒置编码器200的实施例的方框图。要通过输出数据总线203转送的数据经由内部数据总线201转送至编码器200。在这个实施例中,内部数据总线201和输出数据总线203都是16位宽。在其它实施例中,可能是32位数据宽的总线被分成两组16位数据宽。还有一些其它的实施例,可能是其它的数据组合和分组。
内部数据201被转送至一个异或电路210,同时被转送到一个倒置器220/多路转换器230的组合。异或电路210还接收输出数据203。输出数据203表示当前的一组数据位。对输入数据201和输出数据203执行异或操作。一倒置确认电路240接收异或操作的输出并且确定由异或操作得到的数据位变化的数目是否超过了预定数值。在这个实施例中,预定数值是八。在其它实施例中,可能是其它的预定数值,也可利用一个可编程的预定数值来实现编码器200。如果倒置确认电路240确认数据位变化数目超出预定数值,那么一个内部倒置信号209被选通。
内部倒置信号209被转送至多路转换器230和一个锁存器260。如果内部倒置信号209选通,表示超过数据位变化的预定数值,那么多路转换器230转送倒置电路220的输出至锁存器250。如果内部倒置信号没有选通,那么多路转换器230传送没有倒置的内部数据至锁存器250。然后锁存器250锁存多路转换器230的输出到输出数据总线203。内部倒置信号209被锁存至倒置信号205。
倒置器220/多路转换器230组合可用一个异或电路来实现,在该异或电路中,内部数据总线201每一位与内部倒置信号209相异或。当内部倒置信号209选通,那么内部数据201的每一位都被倒置并转送至锁存器250的输入端。如果内部倒置信号209没有选通,那么异或操作不改变内部数据位201。
附图3是采用动态总线倒置来降低同步开关输出噪音的方法的实施例的流程图。在框图310中,第一组n位数据通过数据总线转送。在框图320,计算第一组n位数据和第二组n位数据之间的位变化数目。如框图330所示,如果计算的位变化超出预定数值,那么下一组n位数据在框图340中被倒置。在框图360中,被倒置的下一组n位数据通过数据总线转送,在框图360中,一个倒置信号也被选通。如果计算位变换没有超出预定数值,那么在框图350中,下一组n位数据在数据总线转送。重复前述具体方法来处理将通过数据总线转送的后续每一组n位数据。对该实施例而言,n等于16,预定数值是8,在其它实施例中可能采用其它数据宽度和预定数值。
虽然上文论述的一些实施例中提到一个系统逻辑装置通过一图形总线向图形装置发送数据,但在其它实施例中,可以用具有DBI编码器的任何系统装置作为发送器,用具有DBI解码器的其它任何装置作为接收器。
在以上说明中,参考示范实施例介绍了本发明。然而,显然可以进行各种不偏离权利要求所述的发明精神和范围的修改和变化。因此,本说明书和附图为示例性的而不是限定性的。
描述中提到的“实施例”,“一个实施例”,“一些实施例”或“其它实施例”意思是和实施例相关的特定技术特征、结构或特性的描述,至少包括在发明的一些实施例中,而不是所有的实施例都必须有。“实施例”,“一个实施例”或“一些实施例”等各种称谓变化不一定都指相同的实施例。
权利要求
1.一种装置,包括一个位变化检测电路,当将下一总线事务处理与当前总线事务处理相比较时,该电路决定下一总线事务处理是否会导致大于预定数目的位变化,如果当将下一总线事务处理与当前总线事务处理相比较时下一总线事务处理导致大于预定数目的位变化,那么该位变化检测电路选通一倒置信号;一倒置电路,用于倒置下一总线事务处理的位以响应一倒置信号的选通。
2.如权利要求1所述的装置,所述位检测电路包括一第一异或电路以检测当前总线事务处理与下一总线事务处理之间位变化的数目。
3.如权利要求2所述的装置,所述位检测电路包括一个电路,该电路用于确定由第一异或电路所检测出的位变化数目是否超出预定数目。
4.如权利要求3所述的装置,所述倒置电路包括一个在下一总线事务处理和倒置信号之间执行异或功能的第二异或电路。
5.如权利要求4所述的装置,还包括一个用于锁存第二异或电路输出的第一锁存器,第一锁存器将已锁存的输出信号提供给一个外部数据总线,并进一步将已锁存的输出信号提供给第一异或电路。
6.如权利要求5所述的装置,还包括一个第二锁存器,用以锁存倒置信号并将锁存的倒置信号提供给一个外部倒置信号。
7.如权利要求6所述的装置,所述当前和下一总线事务处理是16位宽。
8.如权利要求7所述的装置,其中位变化的预定数目是8。
9.一种方法,包括当将下一总线事务处理与当前总线事务处理相比较时,确定下一总线事务处理是否会导致大于预定数目的位变化;以及提供下一总线事务处理的倒置结果。
10.如权利要求9所述的方法,还包括提供一倒置信号以表示下一总线事务处理已经被倒置。
11.一种方法,包括通过数据总线转送第一组n位数据;计算第一组n位数据与第二组n位数据之间的位变化;确定所计算的位变化是否超出预定数目;如果所计算的位变化了超出预定数目,倒置下一组n位数据并选通一倒置信号;通过数据总线转送下一组n位数据。
12.如权利要求11所述的方法,其中倒置下一组n位的步骤包括在下一组n位和倒置信号之间执行一个异或操作。
13.如权利要求12所述的方法,其中n是16。
14.如权利要求13所述的方法,其中预定数目是8。
15.一种系统,包括一个处理器;一个与处理器耦合的第一逻辑装置,所述系统逻辑装置包括一个动态总线倒置编码器,所述动态总线倒置编码器包括一个位变化检测电路,当将下一总线事务处理与当前总线事务处理进行比较时来确定下一总线事务处理是否会导致大于预定数目的位变化,如果当将下一总线事务处理与当前总线事务处理进行比较时下一总线事务处理导致了大于预定数目的位变化,那么位变化检测电路选通一倒置信号;和一倒置电路,对下一总线事务处理的位进行倒置以响应倒置信号的选通;以及通过一总线而耦合到第一逻辑装置的第二逻辑装置。
16.如权利要求15所述的系统,所述位检测电路包括一第一异或电路以检测当前总线事务处理与下一总线事务处理之间位变化的数目。
17.如权利要求16所述的系统,所述位检测电路包括一电路,该电路用于确定第一异或电路所检测的位变化的数目是否超过了预定数目。
18.如权利要求17所述的系统,所述倒置电路包括一个在下一总线事务处理和倒置信号之间执行异或功能的第二异或电路。
19.如权利要求17所述的系统,还包括一个用于锁存第二异或电路输出的第一锁存器,第一锁存器将所锁存的输出提供给所述总线,并进一步将所锁存的输出提供给第一异或电路。
20.如权利要求19所述的系统,还包括一个第二锁存器以锁存倒置信号并将所锁存的倒置信号提供给一个外部倒置信号,外部倒置信号与第二逻辑装置耦合。
21.如权利要求20所述的系统,其中第二逻辑装置包括一个动态总线倒置解码器。
21.一种装置,包括一数据总线输入,用于接收n位数据;一倒置信号输入,用于接收一倒置信号;和一倒置电路,如果倒置信号被选通,对数据总线输入所接收到的n位数据进行倒置。
22.如权利要求21所述的装置,所述倒置电路包括一个异或电路,以在数据总线输入所接收到的n位数据和倒置信号之间执行异或操作。
23.如权利要求22所述的装置,所述n是16。
24.一种方法,包括在接收装置接收n位数据;和倒置n位数据以响应一个倒置信号的选通,这个倒置信号是由发送装置选通的。
25.如权利要求24所述的方法,其中对n位数据进行倒置的步骤包括在n位数据和倒置信号之间执行一个异或功能。
全文摘要
一种用于实现动态总线倒置的计算机系统的实施例包括具有动态总线倒置编码器的第一系统逻辑装置,该实施例还包括一具有动态总线倒置解码器的第二逻辑装置。第一和第二系统逻辑装置通过数据总线相耦合。编码器把当前放置在数据总线上的一组数据位与下一组要放置在数据总线上的数据位作比较,如果编码器确认当前和下一组数据位之间数据位变化大于预定数值,编码器在下一组数据位放置到数据总线之前倒置下一组数据位。编码器同时选通由解码器所接收的倒置信号。为响应倒置信号的选通,解码器倒置预先倒置的下一组数据位以恢复原始数据。
文档编号G06F13/42GK1483166SQ01818392
公开日2004年3月17日 申请日期2001年10月12日 优先权日2000年11月7日
发明者A·沃尔克, S·拉亚帕, A 沃尔克, 桥 申请人:英特尔公司