CN102681954B - 使用总线倒置以减少同时信号切换 - Google Patents
使用总线倒置以减少同时信号切换 Download PDFInfo
- Publication number
- CN102681954B CN102681954B CN201110308564.8A CN201110308564A CN102681954B CN 102681954 B CN102681954 B CN 102681954B CN 201110308564 A CN201110308564 A CN 201110308564A CN 102681954 B CN102681954 B CN 102681954B
- Authority
- CN
- China
- Prior art keywords
- data
- described multiple
- bus
- parallel
- circuit
- 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.)
- Active
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/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
- G06F13/4072—Drivers or receivers
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Dc Digital Transmission (AREA)
Abstract
本发明公开了使用总线倒置以减少同时信号切换,具体公开了一种方法,包括:接收多个第一并行数据;生成多个第一编码数据,其中,多个第一编码数据中的每个与多个第一并行数据中相应的一个相同;以及,将多个第一编码数据同时传输至多个并行总线线路,其中,多个第一编码数据中的每一个分别由多个并行总线线路中相应的一个传输。该方法进一步包括:接收多个第二并行数据;生成多个第二编码数据,其中,多个第二编码数据中的每个与多个第二并行数据中相应的一个反相;以及将多个第二编码数据同时传输至多个并行总线线路,其中,多个第二编码数据中的每一个分别由多个总线线路中相应的一个传输。
Description
技术领域
本发明涉及一种使用总线倒置以减少同时信号切换。
背景技术
对于并行总线传输来说,多个并行总线线路用于同时传输信号。发生同步开关输出(Simultaneous switching Output)(SSO)。然而,因为在数据转换期间生成的功率和接地噪声,所以在SSO中的信号完整性会降低。当数据切换时,即,并行总线线路上的信号在“0”和“1”之间切换时,所转换的电流穿过寄生电感器并且生成功率和接地噪声。寄生电感器通常来自封装(package),其中,并行总线线路位于该封装中。
在2.5维(2.5D)或者3维(3D)集成电路中,并行数据总线线路的数量从几十条增加至几千条。随着同步数据总线线路转换的数量的增加,在SSO中的信号衰减更严重。功率消耗也更高。
在之前用于减少功率和接地噪声的解决方案中,将更多的功率和接地输入/输出(I/O)用于减小封装的寄生电感。然而,更多功率和接地I/O导致芯片面积增大。对于具有多个总线线路的高容量数据总线来说,有时这种芯片面积的增加是不允许的。
发明内容
为了解决上述问题,根据本发明的实施例,提供了一种方法,包括:接收多个第一并行数据;生成多个第一编码数据,其中,多个第一编码数据中的每个与多个第一并行数据中相应的一个相同;将多个第一编码数据同时传输至多个并行总线线路,其中,多个第一编码数据中的每一个分别由多个并行总线线路中相应的一个传输;接收多个第二并行数据;生成多个第二编码数据,其中,多个第二编码数据中的每个与多个第二并行数据中相应的一个反相;以及将多个第二编码数据同时传输至多个并行总线线路,其中,多个第二编码数据中的每一个分别由多个总线线路中相应的一个传输。
其中,多个第一并行数据和多个第二并行数据位于两个连续时钟周期内。
该方法进一步包括:生成第一总线倒置信号;传输第一总线倒置信号和多个第一编码数据;生成与第一总线倒置信号反相的第二总线倒置信号;以及传输第二总线倒置信号和多个第二编码数据。
其中,将第一总线倒置信号和第二总线倒置信号传输至总线线路,总线线路与多个并行总线线路并行且分离。
其中,多个第二并行数据直接位于多个第一并行数据的时钟周期以后的时钟周期中,并且其中,生成第二总线倒置信号的步骤包括:将多个第二并行数据中的每个与多个第一编码数据中相应的一个数据进行比较,从而确定转换的总数;以及将转换的总数与阈值数进行比较,并且响应于相应的比较结果,设置第二总线倒置信号。
其中,将多个第二并行数据中的每个与多个第一编码数据中相应的一个数据进行比较的步骤包括:使用XOR门进行比较,其中,XOR门中的每个包括:第一输入端,接收多个第二并行数据中的一个;和第二输入端,接收多个第一编码数据中相应的一个。
其中,阈值数等于约多个并行总线线路的总数的一半。
该方法进一步包括:从多个并行总线线路接收多个第一编码数据和多个第二编码数据;以及对多个第一编码数据和多个第二编码数据进行解码从而分别生成多个第一恢复数据和多个第二恢复数据,其中,多个第一恢复数据和多个第二恢复数据分别与多个第一并行数据和多个第二并行数据相同。
其中,对多个第一编码数据和多个第二编码数据进行解码的步骤包括:对于多个第一编码数据、多个第二编码数据和总线倒置信号中的每个执行异或运算。
根据本发明的实施例,还提供了一种方法,包括:接收多个并行数据;根据多个并行数据生成多个编码数据,包括:计算多个并行总线线路上切换的总数;当切换的总数小于或等于阈值数时,多个编码数据保持与多个并行数据相同,阈值数等于约多个并行总线线路的总数的一半;以及当切换的总数大于阈值数时,对多个并行数据中的每个进行取反,从而生成多个编码数据;通过多个并行总线线路传输多个编码数据;以及根据多个编码数据生成与多个并行数据相同的多个恢复数据。
该方法进一步包括:当多个编码数据中的每个与多个并行数据中相应的一个反相时,将总线倒置信号设置为真,并且当多个编码数据与多个并行数据相同时,将总线倒置信号设置为假;以及将总线倒置信号从多个并行总线线路的传输端传输至接收端,其中,通过对多个编码数据中的每个和总线倒置信号进行异或运算来执行生成多个恢复数据的步骤。
其中,使用总线线路传输总线倒置信号,总线线路与用于传输多个编码数据的多个并行总线线路并行且分离。
其中,计算多个并行总线线路上切换的总数的步骤包括:将多个所传输的数据中的每个与多个并行数据中的相应一个进行比较,其中,直接在用于传输多个编码数据的时钟周期之前的时钟周期中通过多个并行总线线路传输多个所传输的数据。
其中,通过进行异或运算来执行将多个所传输的数据中的每个与多个并行数据中的相应一个进行比较的步骤。
其中,使用异或门来执行保持多个编码数据与多个并行数据相同的步骤、以及对多个并行数据中的每个进行取反从而生成多个编码数据的步骤。
根据本发明的再一实施例,还提供了一种电路,包括:多个并行总线线路;转换监控电路,被配置为计算多个并行总线线路上切换的总数,并且响应于总数输出总线倒置信号;以及总线编码器,被配置为:接收多个并行数据;以及基于多个并行数据和总线倒置信号生成多个编码数据,其中,将总线编码器的输出端连接至多个并行总线线路。
该电路进一步包括:总线解码器,连接至多个并行总线线路,并且被配置为:从多个并行总线线路接收多个编码数据;以及生成与多个并行数据相同的多个恢复数据。
该电路进一步包括:总线线路,与多个并行总线线路并行且分离,其中,总线线路包括:第一端,连接至转换监控电路的输出端,并且被配置为接收总线倒置信号;和第二端,连接至总线解码器。
其中,总线解码器包括多个异或门,每个异或门包括:第一输入端,连接至多个并行总线线路中相应的一个;和第二输入端,被配置为接收总线倒置信号。
其中,总线编码器被配置为:当切换的总数小于或等于阈值时,将多个编码数据保持与多个并行数据相同,阈值等于约多个并行总线线路的总数的一半;以及当切换的总数大于阈值时,对多个并行数据进行取反从而生成多个编码数据。
附图说明
为了更好地理解实施例及其优点,现在将结合附图所进行的以下描述作为参考,其中:
图1示出了根据一些实施例的并行总线系统的电路图;
图2示出了根据一些实施例的要从发射器传输至接收器的并行数据和根据该并行数据所生成的总线倒置信号的时序图;
图3示出根据一些实施例实际上从发射器传输至接收器的编码数据和各个总线倒置信号的时序图;
图4示出了根据一些实施例从编码数据和各个总线倒置信号所恢复的数据的时序图;以及
图5示出了根据一些实施例的并行总线线路系统的接收器中的转换监控电路。
具体实施方式
下面,详细讨论本发明优选实施例的制造和使用。然而,应该理解,本实施例提供了许多可以在各种具体环境中实现的可应用的发明概念。所讨论的具体实施例仅仅示出制造和使用本发明的具体方式,而不用于限制本公开的范围。
根据实施例提供了用于减少信号的同时输出切换的方法和用于实施该方法的电路。然后,论述了本实施例的变形和操作。在整个附图和所描述的实施例中,将相似的参考标号用于指示相似的元件。
图1示出了根据实施例的并行总线线路系统的结构图。从并行线14接收并行数据D1至Dn(其中,n为整数),且该数据将要通过并行总线(传输)线路50从发射器10传输至接收器40。并行线14中的每一个传送并行数据D1至Dn之一。在一实施例中,发射器10和接收器40位于相同的印刷电路板(PCB)上,并且传输线50形成在PCB的电介质材料(诸如FR4)中。在可选实施例中,发射器10和接收器40远离设置,并且没有位于相同PCB上。
图2、图3、以及图4示出了根据实施例在并行总线系统中的各种信号的示例性时序图。在所示实例中,并行线14和并行总线线路50的总数n为8个。因此,在每个时钟周期中传输8个字节。然而,应当意识到,并行总线线路50的实际数量可能大于或小于8个。在一些实施例中,并行总线线路50的总数可能大于一百条或者超过一千条。
图2中所示的并行数据D1至D8为通过发射器10从并行线14所接收的信号,并且为要传输至接收器40的信号。在通篇描述中,数据D1至D8中的每个可以具有表示时间点的标号(在括号中进一步包括该标号)作后缀(postfix),该标号表示该数据所在的时间点,从而指示该数据直接位于相应时间点之后的时间段(时间周期)。例如,并行数据D1(t0)表示直接位于时间点t0以后的时钟周期中的数据D1,因此,该并行数据为位于时间点t0和t1之间的数据。在一实施例中,没有直接传输数据D1至D8。取而代之,对并行数据D1至D8进行编码从而分别生成如图3所示的编码数据X1至X8,并且编码数据X1至X8为在图1中的并行总线线路50上所传输的信号。在一些时钟周期中,诸如时钟周期t1-t2和时钟周期t2-t3,编码数据X1至X8与在相应时钟周期中的各个并行数据D1至D8相同。例如,X1(t1)等于D1(t1),并且X8(t1)等于D1(t1)。在剩余时钟周期中,诸如时钟周期t0-t1和时钟周期t3-t4,通过分别对在各个时钟周期中的相应并行数据D1至D8进行取反生成编码数据X1至X8。例如,X1(t0)等于D1(t0)的取反,并且X8(t0)等于D1(t0)的取反。
生成总线倒置信号XBI从而指示编码数据X1至X8与相应并行数据D1至D8相同或反相。在所示实例中,如果总线倒置信号XBI为“0”(假),则各个编码数据X1至X8分别与并行数据D1至D8相同。否则,如果总线倒置信号XBI为“1”(真),则各个编码数据X1至X8分别根据并行数据D1至D8进行取反。在可选实施例中,总线倒置信号XBI的值“0”可表示信号的取反,而总线倒置信号XBI的值“1”可表示没有对信号进行取反。
由于编码数据X1至X8为在并行总线线路50上所传输的数据,所以为了最小化在并行总线线路50上所切换的数据的数量,每次接收并行数据D1至D8时,将各个并行数据D1至D8与在之前时钟周期中的相应编码数据X1至X8进行比较。如果在没有进行取反的情况下传输并行数据D1至D8,则比较结果指示具有数据切换的并行总线线路50的数量。如果数据切换小于一半,则可以在没有取反的情况下,传输并行数据D1至D8,并且因此,编码数据X1至X8与各个并行数据D1至D8相同。在一些实施例中,将总线倒置信号XBI也设置为“0”。否则,如果数据切换大于一半,则对并行数据D1至D8进行取反,从而生成各个编码数据X1至X8,并且将总线倒置信号XBI设置为“1”。因此,通过传输根据并行数据取反的8个编码数据X1至X8,将在并行总线线路50上的数据切换数量减小到最多4位(其为8位的一半)。
图2至图4示出了用于说明实施例的概念的示例性时序图。参照图2,时间点t(-1)、t0、t1、t2、t3、以及t4间隔相邻时钟周期,并且这些时间点为信号D1至D8可切换的时间。假设所有信号X1(t-1)至X8(t-1)在时间点t0以前的时间段期间为“0”。在时间点t0处,位于并行性14上的数据D1、D2、以及D4-D6切换,而位于并行线14上的剩余数据D3、D7、以及D8没有切换。将并行数据D1(t0)至D8(t0)与相应编码数据X1(t-1)至X8(t-1)进行比较。由于如果实际上传输并行数据D1(t0)至D8(t0),则数据X1至X8中的一半以上(在该实例中,为5个)需要切换,所以通过对各个并行数据D1(t0)至D8(t0)进行取反来生成编码数据X1(t0)至X8(t0),并且将总线倒置信号XBI(t0)设置为“1”。因此,由于在时间点t0处在并行总线线路50上传输数据X1(t0)至X8(t0),而不是并行数据D1(t0)至D8(t0),所以并行总线线路50仅具有三个信号切换,为数据X3、X7、以及X8。因此,总的切换数据小于并行总线线路50总数的一半。
将并行数据D1(t1)至D8(t1)与数据X1(t0)至X8(t0)中的相应数据进行比较,可以看出,在信号X1(t0)上切换信号D1(t1),而剩余数据D2(t1)至D8(t1)分别与相应编码数据X2(t0)至X8(t0)分别相同。这指示如果在没有取反的情况下传输编码数据X1(t1)至X8(t1),在并行总线线路50上仅出现一个信号切换。因此,编码数据X1(t1)至X8(t1)与相应并行数据D1(t1)至D8(t1)保持相同(没有进行取反),并且可以将总线倒置信号XBI(t1)设置为“0”。结果,当在并行总线线路50上传输编码数据X1(t1)至X8(t1)时,仅数据X1在时间点t1处切换。总切换数据也小于如图1所示的并行总线线路50的总数的一半。
并行数据D1(t2)至D8(t2)与数据X1(t1)至X8(t1)相同。因此,如果传输并行数据D1(t2)至D8(t2)而没有取反,则图4中的并行总线线路50不具有任何数据切换。因此,编码数据X1(t2)至X8(t2)保持与相应并行数据D1(t2)至D8(t2)相同(而没有进行取反),并且将总线倒置信号XB1(t2)设置为“0”。结果,在时间点t2处,在并行总线线路50上没有出现信号切换。
所有并行数据D1(t3)至D8(t3)均与相应数据X1(t2)至X8(t2)反相。因此,如果传输并行数据D1(t3)至D8(t3)而没有取反,则所有并行总线线路50将具有数据切换。因此,在时钟周期t3至t4期间,将总线倒置信号XBI(t3)设置为“1”,并且编码数据X1(t3)至X8(t3)与相应并行数据D1(t3)至D8(t3)反相。结果,即使所有8个并行数据D1至D8在时间点t3处切换,在并行总线线路50上的时间点t3处也没有出现信号切换。
在接收器40中,从并行总线线路50接收编码数据X1至X8,并且对该编码数据进行解码以恢复并行数据D1至D8。在图4中将恢复数据示出为恢复数据Q1至Q8。在时钟周期t0-t1、t1-t2、t2-t3、t3-t4中的每个中,分别检查总线倒置信号XB1(t0)、XBI(t1)、XBI(t2)、以及XBI(t3)。如果各个总线倒置信号XBI为“0”,则相应恢复数据Q1至Q8保持与相应编码数据X1至X8相同。否则,如果总线反相信号XBI为“1”,则在各自时钟周期中的恢复数据Q1至Q8中的每个与对应编码数据X1至X8反相。结果,恢复数据Q1至Q8分别与并行数据D1至D8相同。
再次参照图1,并行总线系统的发射器10包括:转换监控电路12,用于生成如图2至图4所示的总线倒置信号XBI。图5示出了示例性的转换监控电路12,该转换监控电路包括:多个转换(切换)检测器102。每个转换检测器102接收将要传输的并行数据D1至Dn(在图2至图4的示例性实施例中,整数n为8位)中的一个,并且将其与在以前时钟周期中的相应编码数据(例如,X1(t0)至Xn(t0))进行比较。在示例性实施例中,每个转换检测器102包括:异或(XOR)门,具有接收并行数据D1至Dn之一的XOR门的一个输入端,和接收以前时钟周期的编码数据X1至Xn的另一输入端。如果相同XOR门的两个输入端处的接收信号不同,则检测到转换。将检测结果输出至加法器106。将通过加法器106所生成的总和108提供给比较器110,该总和为所检测到的转换的总数。如果在没有进行取反的情况下传输输入数据,例如,D1(t1)至D8(t1),则总和108指示具有数据切换的并行总线线路50的数量。在一实施例中,比较器110将总和108与预定阈值数112进行比较,例如,该阈值数可以为并行总线线路50的总数n的一半(n/2)。如果总和小于等于阈值数112,则将反相信号XBI设置为“0”。否则,如果总和108大于阈值数112,则将总线倒置信号设置为“1”。应该认识到,例如,阈值数也可能基本上在等于n/2的约80%和约120%之间。
再次参照图1,总线编码器16包括:输入端18,连接至传送并行数据D1至Dn(其中,在所示实例中,n等于8)的并行线14;以及输入端20,连接至转换监控电路12的输出端。因此,总线编码器16从输入端20接收总线倒置信号XBI。总线编码器16使用输入数据D1至Dn和总线倒置信号XBI生成编码数据X1至Xn。在一实施例中,总线编码器16包括多个XOR门22,每个均具有用于接收并行数据D1至Dn之一的第一输入端,和用于接收总线倒置信号XBI的第二输入端。例如,将生成的编码数据X1至Xn传输至D型触发器(flip-flops)28和发射器I/O 30。然后,通过并行总线线路50将编码数据X1至Xn和总线倒置信号XBI传输至接收器40。通过并行总线线路50′传输总线倒置信号XBI,该并行总线线路与并行总线线路50并行且分离。
接收器40包括:接收器I/O 42和D型触发器44。通过接收器I/O 42和D型触发器44,将编码数据X1至Xn提供给总线解码器46,该总线解码器可以包括多个XOR门48。每个XOR门48具有:第一输入端,用于接收编码数据X1至Xn之一;和第二输入端,用于接收总线反相信号XBI。通过XOR门48的XOR操作,输出至总线解码器46的输出端52的恢复数据Q1至Qn(图4)与如在图2中的并行数据D1至Dn相同。
通过对并行数据的编码和解码,可以将在并行总线线路上切换的数据总数减小至小于并行总线的总数的一半。平均来说,可以将信号切换的最大计数减小一半。结果,由于减少了数据切换的数量,降低了功率噪声和接地噪声。
根据实施例,一种方法包括:接收多个第一并行数据;生成多个第一编码数据,其中,多个第一编码数据中的每个与多个第一并行数据中相应的一个相同;以及,将多个第一编码数据同时传输至多个并行总线线路,其中,多个第一编码数据中的每一个分别由多个并行总线线路中相应的一个传输。该方法进一步包括:接收多个第二并行数据;生成多个第二编码数据,其中,多个第二编码数据中的每个与多个第二并行数据中相应的一个反相;以及将多个第二编码数据同时传输至多个并行总线线路,其中,多个第二编码数据中的每一个分别由多个总线线路中相应的一个传输。
根据其他实施例,一种方法包括:根据多个并行数据生成多个编码数据。生成多个编码数据的步骤包括:计算多个并行总线线路上切换的总数。当切换的总数小于或等于阈值数时,多个编码数据保持与多个并行数据相同,阈值数等于约多个并行总线线路的总数的一半。当切换的总数大于阈值数时,对多个并行数据中的每个进行取反,从而生成多个编码数据。该方法进一步包括:在多个并行总线线路上传输多个编码数据;从多个并行总线线路接收多个编码数据;以及根据多个编码数据生成与多个并行数据相同的多个恢复数据。
根据再一实施例,一种电路包括:多个并行总线线路;转换监控电路,被配置为计算多个并行总线线路上切换的总数,并且响应于总数输出总线倒置信号;以及总线编码器。总线编码器被配置为同时接收多个并行数据,以及利用多个并行数据和总线倒置信号生成多个编码数据。总线编码器的输出端连接至多个并行总线线路。
尽管已经详细地描述了本实施例及其优势,但应该理解,可以在不背离所附权利要求限定的本实施例的主旨和范围的情况下,做各种不同的改变,替换和更改。而且,本申请的范围并不仅限于本说明书中描述的工艺、机器、制造、材料组分、装置、方法和步骤的特定实施例。作为本领域普通技术人员应理解,通过本发明,现有的或今后开发的用于执行与本文所述相应实施例基本相同的功能或获得基本相同结果的工艺、机器、制造,材料组分、装置、方法或步骤根据本发明可以被使用。因此,所附权利要求应该包括在这样的工艺、机器、制造、材料组分、装置、方法或步骤的范围内。此外,每条权利要求构成单独的实施例,并且多个权利要求和实施例的组合在本发明的范围内。
Claims (18)
1.一种总线倒置方法,包括:
接收多个第一并行数据;
生成多个第一编码数据,其中,所述多个第一编码数据中的每个与所述多个第一并行数据中相应的一个相同;
将所述多个第一编码数据同时传输至多个并行总线线路,其中,所述多个第一编码数据中的每一个分别由所述多个并行总线线路中相应的一个传输;
接收多个第二并行数据;
生成多个第二编码数据,其中,所述多个第二编码数据中的每个与所述多个第二并行数据中相应的一个反相;以及
将所述多个第二编码数据同时传输至所述多个并行总线线路,其中,所述多个第二编码数据中的每一个分别由所述多个并行总线线路中相应的一个传输;
并且,该方法,进一步包括:
生成第一总线倒置信号;
传输所述第一总线倒置信号和所述多个第一编码数据;
生成与所述第一总线倒置信号反相的第二总线倒置信号;以及
传输所述第二总线倒置信号和所述多个第二编码数据。
2.根据权利要求1所述的方法,其中,所述多个第一并行数据和所述多个第二并行数据位于两个连续时钟周期内。
3.根据权利要求1所述的方法,其中,将所述第一总线倒置信号和所述第二总线倒置信号传输至总线线路,所述总线线路与所述多个并行总线线路并行且分离。
4.根据权利要求1所述的方法,其中,所述多个第二并行数据直接位于所述多个第一并行数据的时钟周期以后的时钟周期中,并且其中,生成所述第二总线倒置信号的步骤包括:
将所述多个第二并行数据中的每个与所述多个第一编码数据中相应的一个数据进行比较,从而确定转换的总数;以及
将所述转换的总数与阈值数进行比较,并且响应于相应的比较结果,设置所述第二总线倒置信号。
5.根据权利要求4所述的方法,其中,将所述多个第二并行数据中的每个与所述多个第一编码数据中相应的一个数据进行比较的步骤包括:使用XOR门进行比较,其中,所述XOR门中的每个包括:第一输入端,接收所述多个第二并行数据中的一个;和第二输入端,接收所述多个第一编码数据中相应的一个。
6.根据权利要求4所述的方法,其中,所述阈值数等于约所述多个并行总线线路的总数的一半。
7.根据权利要求1所述的方法,进一步包括:
从所述多个并行总线线路接收所述多个第一编码数据和所述多个第二编码数据;以及
对所述多个第一编码数据和所述多个第二编码数据进行解码从而分别生成多个第一恢复数据和多个第二恢复数据,其中,所述多个第一恢复数据和所述多个第二恢复数据分别与所述多个第一并行数据和所述多个第二并行数据相同。
8.根据权利要求7所述的方法,其中,对所述多个第一编码数据和所述多个第二编码数据进行解码的步骤包括:对于所述多个第一编码数据、所述多个第二编码数据和总线倒置信号中的每个执行异或运算。
9.一种总线倒置方法,包括:
接收多个并行数据;
根据所述多个并行数据生成多个编码数据,包括:
计算多个并行总线线路上切换的总数;
当所述切换的总数小于或等于阈值数时,所述多个编码数据保持与所述多个并行数据相同,所述阈值数等于约所述多个并行总线线路的总数的一半;以及
当所述切换的总数大于所述阈值数时,对所述多个并行数据中的每个进行取反,从而生成所述多个编码数据;
通过所述多个并行总线线路传输所述多个编码数据;以及
根据所述多个编码数据生成与所述多个并行数据相同的多个恢复数据,并且,该方法进一步包括:
当所述多个编码数据中的每个与所述多个并行数据中相应的一个反相时,将总线倒置信号设置为真,并且当所述多个编码数据与所述多个并行数据相同时,将所述总线倒置信号设置为假;以及
将所述总线倒置信号从所述多个并行总线线路的传输端传输至接收端,其中,通过对所述多个编码数据中的每个和所述总线倒置信号进行异或运算来执行生成所述多个恢复数据的步骤。
10.根据权利要求9所述的方法,其中,使用总线线路传输所述总线倒置信号,所述总线线路与用于传输所述多个编码数据的所述多个并行总线线路并行且分离。
11.根据权利要求9所述的方法,其中,计算所述多个并行总线线路上切换的总数的步骤包括:将多个所传输的数据中的每个与所述多个并行数据中的相应一个进行比较,其中,直接在用于传输所述多个编码数据的时钟周期之前的时钟周期中通过所述多个并行总线线路传输所述多个所传输的数据。
12.根据权利要求11所述的方法,其中,通过进行异或运算来执行将所述多个所传输的数据中的每个与所述多个并行数据中的相应一个进行比较的步骤。
13.根据权利要求9所述的方法,其中,使用异或门来执行保持所述多个编码数据与所述多个并行数据相同的步骤、以及对所述多个并行数据中的每个进行取反从而生成所述多个编码数据的步骤。
14.一种电路,包括:
多个并行总线线路;
转换监控电路,被配置为计算所述多个并行总线线路上切换的总数,并且响应于所述总数输出总线倒置信号;以及
总线编码器,被配置为:
接收多个并行数据;以及
基于所述多个并行数据和所述总线倒置信号生成多个编码数据,
其中,将所述总线编码器的输出端连接至所述多个并行总线线路;
其中,所述转换监控电路用于当所述多个编码数据中的每个与所述多个并行数据中相应的一个反相时,将总线倒置信号设置为真,并且当所述多个编码数据与所述多个并行数据相同时,将所述总线倒置信号设置为假;以及
将所述总线倒置信号从所述多个并行总线线路的传输端传输至接收端,其中,通过对所述多个编码数据中的每个和所述总线倒置信号进行异或运算来执行生成所述多个恢复数据的步骤。
15.根据权利要求14所述的电路,进一步包括:总线解码器,连接至所述多个并行总线线路,并且被配置为:
从所述多个并行总线线路接收所述多个编码数据;以及
生成与所述多个并行数据相同的多个恢复数据。
16.根据权利要求15所述的电路,进一步包括:
总线线路,与所述多个并行总线线路并行且分离,其中,所述总线线路包括:第一端,连接至所述转换监控电路的输出端,并且被配置为接收所述总线倒置信号;和第二端,连接至所述总线解码器。
17.根据权利要求15所述的电路,其中,所述总线解码器包括多个异或门,每个异或门包括:第一输入端,连接至所述多个并行总线线路中相应的一个;和第二输入端,被配置为接收所述总线倒置信号。
18.根据权利要求15所述的电路,其中,所述总线编码器被配置为:
当所述切换的总数小于或等于阈值时,将所述多个编码数据保持与所述多个并行数据相同,所述阈值等于约所述多个并行总线线路的总数的一半;以及
当所述切换的总数大于所述阈值时,对所述多个并行数据进行取反从而生成所述多个编码数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/045,762 US8405529B2 (en) | 2011-03-11 | 2011-03-11 | Using bus inversion to reduce simultaneous signal switching |
US13/045,762 | 2011-03-11 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102681954A CN102681954A (zh) | 2012-09-19 |
CN102681954B true CN102681954B (zh) | 2014-12-17 |
Family
ID=46795031
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110308564.8A Active CN102681954B (zh) | 2011-03-11 | 2011-10-12 | 使用总线倒置以减少同时信号切换 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8405529B2 (zh) |
CN (1) | CN102681954B (zh) |
TW (1) | TWI443522B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012100210A (ja) * | 2010-11-05 | 2012-05-24 | Nec Corp | データ伝送システム、送信回路および受信回路 |
US9537644B2 (en) | 2012-02-23 | 2017-01-03 | Lattice Semiconductor Corporation | Transmitting multiple differential signals over a reduced number of physical channels |
US9230505B2 (en) | 2013-02-25 | 2016-01-05 | Lattice Semiconductor Corporation | Apparatus, system and method for providing clock and data signaling |
US8941434B1 (en) * | 2013-07-12 | 2015-01-27 | Samsung Display Co., Ltd. | Bus encoding scheme based on non-uniform distribution of power delivery network components among I/O circuits |
BR112016011691B1 (pt) | 2013-12-26 | 2022-02-22 | Intel Corporation | Aparelho, método e sistema para suportar acesso a memória de computador. |
WO2015099743A1 (en) | 2013-12-26 | 2015-07-02 | Intel Corporation | Transition-minimized low speed data transfer |
US9871516B2 (en) | 2014-06-04 | 2018-01-16 | Lattice Semiconductor Corporation | Transmitting apparatus with source termination |
KR20160058503A (ko) * | 2014-11-17 | 2016-05-25 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 |
US9979416B2 (en) * | 2014-12-10 | 2018-05-22 | Rambus Inc. | Memory controller and method of data bus inversion using an error detection correction code |
US9792246B2 (en) * | 2014-12-27 | 2017-10-17 | Intel Corporation | Lower-power scrambling with improved signal integrity |
US9680501B1 (en) | 2016-04-20 | 2017-06-13 | Taiwan Semiconductor Manufacturing Company, Ltd. | De-serialization circuit and method of operating the same |
CN108847849B (zh) * | 2018-07-25 | 2021-06-01 | 北京隆普智能科技有限公司 | 一种基本编解码单元以及编解码器 |
CN113541912B (zh) * | 2020-04-17 | 2022-11-01 | 苏州库瀚信息科技有限公司 | 数据传输装置及方法 |
US12117960B2 (en) * | 2020-09-23 | 2024-10-15 | Intel Corporation | Approximate data bus inversion technique for latency sensitive applications |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1664800A (zh) * | 2004-03-02 | 2005-09-07 | 威盛电子股份有限公司 | 一种微处理器总线反相的感测机构 |
CN1826731A (zh) * | 2003-07-22 | 2006-08-30 | 皇家飞利浦电子股份有限公司 | 用于编码低电压摆动信号的方法和设备 |
CN1926528A (zh) * | 2004-03-03 | 2007-03-07 | 皇家飞利浦电子股份有限公司 | 提供容错性和增强的稳定性的数据通信模块 |
CN101911034A (zh) * | 2008-01-16 | 2010-12-08 | 美光科技公司 | 数据总线反转设备、系统及方法 |
US7869525B2 (en) * | 2005-08-01 | 2011-01-11 | Ati Technologies, Inc. | Dynamic bus inversion method and system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9116828B2 (en) * | 2008-06-11 | 2015-08-25 | Micron Technology, Inc. | Data bus inversion usable in a memory system |
-
2011
- 2011-03-11 US US13/045,762 patent/US8405529B2/en active Active
- 2011-10-12 CN CN201110308564.8A patent/CN102681954B/zh active Active
- 2011-10-21 TW TW100138269A patent/TWI443522B/zh active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1826731A (zh) * | 2003-07-22 | 2006-08-30 | 皇家飞利浦电子股份有限公司 | 用于编码低电压摆动信号的方法和设备 |
CN1664800A (zh) * | 2004-03-02 | 2005-09-07 | 威盛电子股份有限公司 | 一种微处理器总线反相的感测机构 |
CN1926528A (zh) * | 2004-03-03 | 2007-03-07 | 皇家飞利浦电子股份有限公司 | 提供容错性和增强的稳定性的数据通信模块 |
US7869525B2 (en) * | 2005-08-01 | 2011-01-11 | Ati Technologies, Inc. | Dynamic bus inversion method and system |
CN101911034A (zh) * | 2008-01-16 | 2010-12-08 | 美光科技公司 | 数据总线反转设备、系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
US8405529B2 (en) | 2013-03-26 |
US20120229310A1 (en) | 2012-09-13 |
CN102681954A (zh) | 2012-09-19 |
TW201237636A (en) | 2012-09-16 |
TWI443522B (zh) | 2014-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102681954B (zh) | 使用总线倒置以减少同时信号切换 | |
CN103141066B (zh) | 发送电路、接收电路、发送方法、接收方法、通信系统及其通信方法 | |
CN101496367B (zh) | 串行互联多通道的对齐和纠偏的方法及发送器 | |
CN104008078B (zh) | 一种基于fpga的数据传输板之间进行高速传输的方法 | |
CN101702639B (zh) | 循环冗余校验的校验值计算方法及装置 | |
CN102160315A (zh) | 通过循环冗余校验的块的迭代解码 | |
CN104808966A (zh) | 有效编码的方法和装置 | |
CN104113347A (zh) | 隔离的串行器-解串器 | |
CN104954096A (zh) | 一种一主多从的高速同步串行通信数据传输方法 | |
CN104935311A (zh) | 一种数字信号隔离器及相应的脉宽编解码方法 | |
CN104052588B (zh) | 用于为利用fec编码器的系统实现按ieee1588的精确时间戳的方法 | |
Lim et al. | A multi-lane MIPI CSI receiver for mobile camera applications | |
Ramprasad et al. | Information-theoretic bounds on average signal transition activity [VLSI systems] | |
CN106933767B (zh) | 一种适用于jesd204b协议的逗号检测和字对齐方法及系统 | |
CN105072058B (zh) | 一种基于光纤传输的数据正反相位编码方法及数据传输方法 | |
CN104572337B (zh) | 一种芯片间的数据传输方法 | |
CN111787325B (zh) | 一种熵编码器及其编码方法 | |
Ahmed et al. | Overloaded CDMA bus topology for MPSoC interconnect | |
CN102130744B (zh) | 计算循环冗余校验码的方法和装置 | |
CN103795493A (zh) | 用于改进编码的装置及关联方法 | |
US7180886B2 (en) | Synchronized data communication on a one-wired bus | |
CN104009823B (zh) | 一种SerDes技术中的错位检测与纠错电路 | |
CN106209307A (zh) | 多颗fpga片间互联方法与系统 | |
CN108667824A (zh) | Pcs协议复用芯片和方法 | |
CN101599808A (zh) | 一种交叉板测试方法、系统及芯片 |
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 |