采用动态总线倒置来降低同步转换 输出噪音的方法和装置 【发明领域】
本发明涉及计算机系统领域,尤其涉及降低数据总线上的同步转换输出噪音的领域。
背景技术
在努力提高现今计算机系统性能的过程中,系统设计人员设法提高各种系统数据总线的时钟频率。由于总线频率提高了,数据线上的噪音成为一个愈加重要的问题。时钟频率的提高以及其时钟周期的相应缩短,这使得在接收端接收到数据之前,只有更短的时间解决出现在数据线上的噪音问题。数据线上的噪音可能导致当接收端锁存数据时锁存了无效数据。
数据线上的一个噪音源可能是同步开关输出噪音。该噪音可能是由几个或多个输出驱动装置在同一时刻都处于特定装置开关状态所造成地。其一个例子可包括一系统逻辑装置,该装置通过一图形总线同时将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解码器的其它任何装置作为接收器。
在以上说明中,参考示范实施例介绍了本发明。然而,显然可以进行各种不偏离权利要求所述的发明精神和范围的修改和变化。因此,本说明书和附图为示例性的而不是限定性的。
描述中提到的“实施例”,“一个实施例”,“一些实施例”或“其它实施例”意思是和实施例相关的特定技术特征、结构或特性的描述,至少包括在发明的一些实施例中,而不是所有的实施例都必须有。“实施例”,“一个实施例”或“一些实施例”等各种称谓变化不一定都指相同的实施例。