CN102681954A - 使用总线倒置以减少同时信号切换 - Google Patents

使用总线倒置以减少同时信号切换 Download PDF

Info

Publication number
CN102681954A
CN102681954A CN2011103085648A CN201110308564A CN102681954A CN 102681954 A CN102681954 A CN 102681954A CN 2011103085648 A CN2011103085648 A CN 2011103085648A CN 201110308564 A CN201110308564 A CN 201110308564A CN 102681954 A CN102681954 A CN 102681954A
Authority
CN
China
Prior art keywords
parallel
bus
datas
data
coded
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.)
Granted
Application number
CN2011103085648A
Other languages
English (en)
Other versions
CN102681954B (zh
Inventor
张智贤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Taiwan Semiconductor Manufacturing Co TSMC Ltd
Original Assignee
Taiwan Semiconductor Manufacturing Co TSMC Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Taiwan Semiconductor Manufacturing Co TSMC Ltd filed Critical Taiwan Semiconductor Manufacturing Co TSMC Ltd
Publication of CN102681954A publication Critical patent/CN102681954A/zh
Application granted granted Critical
Publication of CN102681954B publication Critical patent/CN102681954B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4072Drivers 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 (11)

1.一种方法,包括:
接收多个第一并行数据;
生成多个第一编码数据,其中,所述多个第一编码数据中的每个与所述多个第一并行数据中相应的一个相同;
将所述多个第一编码数据同时传输至多个并行总线线路,其中,所述多个第一编码数据中的每一个分别由所述多个并行总线线路中相应的一个传输;
接收多个第二并行数据;
生成多个第二编码数据,其中,所述多个第二编码数据中的每个与所述多个第二并行数据中相应的一个反相;以及
将所述多个第二编码数据同时传输至所述多个并行总线线路,其中,所述多个第二编码数据中的每一个分别由所述多个总线线路中相应的一个传输。
2.根据权利要求1所述的方法,进一步包括:
生成第一总线倒置信号;
传输所述第一总线倒置信号和所述多个第一编码数据;
生成与所述第一总线倒置信号反相的第二总线倒置信号;以及
传输所述第二总线倒置信号和所述多个第二编码数据,其中,将所述第一总线倒置信号和所述第二总线倒置信号传输至总线线路,所述总线线路与所述多个并行总线线路并行且分离。
3.根据权利要求2所述的方法,其中,所述多个第二并行数据直接位于所述多个第一并行数据的时钟周期以后的时钟周期中,并且其中,生成所述第二总线倒置信号的步骤包括:
将所述多个第二并行数据中的每个与所述多个第一编码数据中相应的一个数据进行比较,从而确定转换的总数;以及
将所述转换的总数与阈值数进行比较,并且响应于相应的比较结果,设置所述第二总线倒置信号; 
其中,将所述多个第二并行数据中的每个与所述多个第一编码数据中相应的一个数据进行比较的步骤包括:使用XOR门进行比较,其中,所述XOR门中的每个包括:第一输入端,接收所述多个第二并行数据中的一个;和第二输入端,接收所述多个第一编码数据中相应的一个;
其中,所述阈值数等于约所述多个并行总线线路的总数的一半。
4.根据权利要求1所述的方法,进一步包括:
从所述多个并行总线线路接收所述多个第一编码数据和所述多个第二编码数据;以及
对所述多个第一编码数据和所述多个第二编码数据进行解码从而分别生成多个第一恢复数据和多个第二恢复数据,其中,所述多个第一恢复数据和所述多个第二恢复数据分别与所述多个第一并行数据和所述多个第二并行数据相同。
5.一种方法,包括:
接收多个并行数据;
根据所述多个并行数据生成多个编码数据,包括:
计算多个并行总线线路上切换的总数;
当所述切换的总数小于或等于阈值数时,所述多个编码数据保持与所述多个并行数据相同,所述阈值数等于约所述多个并行总线线路的总数的一半;以及
当所述切换的总数大于所述阈值数时,对所述多个并行数据中的每个进行取反,从而生成所述多个编码数据;
通过所述多个并行总线线路传输所述多个编码数据;以及
根据所述多个编码数据生成与所述多个并行数据相同的多个恢复数据。
6.根据权利要求5所述的方法,进一步包括:
当所述多个编码数据中的每个与所述多个并行数据中相应的一个反相时,将总线倒置信号设置为真,并且当所述多个编码数据与所述多个并行数据相同时,将所述总线倒置信号设置为假;以及
将所述总线倒置信号从所述多个并行总线线路的传输端传输至接收 端,其中,通过对所述多个编码数据中的每个和所述总线倒置信号进行异或运算来执行生成所述多个恢复数据的步骤,其中,使用总线线路传输所述总线倒置信号,所述总线线路与用于传输所述多个编码数据的所述多个并行总线线路并行且分离。
7.根据权利要求5所述的方法,其中,计算所述多个并行总线线路上切换的总数的步骤包括:将多个所传输的数据中的每个与所述多个并行数据中的相应一个进行比较,其中,直接在用于传输所述多个编码数据的时钟周期之前的时钟周期中通过所述多个并行总线线路传输所述多个所传输的数据。
8.根据权利要求5所述的方法,其中,使用异或门来执行保持所述多个编码数据与所述多个并行数据相同的步骤、以及对所述多个并行数据中的每个进行取反从而生成所述多个编码数据的步骤。
9.一种电路,包括:
多个并行总线线路;
转换监控电路,被配置为计算所述多个并行总线线路上切换的总数,并且响应于所述总数输出总线倒置信号;以及
总线编码器,被配置为:
接收多个并行数据;以及
基于所述多个并行数据和所述总线倒置信号生成多个编码数据,
其中,将所述总线编码器的输出端连接至所述多个并行总线线路。
10.根据权利要求9所述的电路,进一步包括:总线解码器,连接至所述多个并行总线线路,并且被配置为:
从所述多个并行总线线路接收所述多个编码数据;以及
生成与所述多个并行数据相同的多个恢复数据。
11.根据权利要求10所述的电路,其中,
所述总线解码器包括多个异或门,每个异或门包括:第一输入端,连接至所述多个并行总线线路中相应的一个;和第二输入端,被配置为接收所述总线倒置信号;
所述电路还包括:总线线路,与所述多个并行总线线路并行且分离, 所述总线线路包括:第一端,连接至转换监控电路的输出端,并且被配置为接收总线倒置信号;和第二端,连接至总线解码器;
所述总线编码器被配置为:
当所述切换的总数小于或等于阈值时,将所述多个编码数据保持与所述多个并行数据相同,所述阈值等于约所述多个并行总线线路的总数的一半;以及
当所述切换的总数大于所述阈值时,对所述多个并行数据进行取反从而生成所述多个编码数据。 
CN201110308564.8A 2011-03-11 2011-10-12 使用总线倒置以减少同时信号切换 Active CN102681954B (zh)

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 true CN102681954A (zh) 2012-09-19
CN102681954B 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)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107003963A (zh) * 2014-12-27 2017-08-01 英特尔公司 具有改进的信号完整性的低功率加扰
CN108847849A (zh) * 2018-07-25 2018-11-20 张家口浩扬科技有限公司 一种基本编解码单元以及编解码器

Families Citing this family (12)

* Cited by examiner, † Cited by third party
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
WO2015099743A1 (en) 2013-12-26 2015-07-02 Intel Corporation Transition-minimized low speed data transfer
DE112013007724B4 (de) 2013-12-26 2024-01-11 Intel Corporation System, vorrichtung und verfahren zur gemeinsamen benutzung von speicher und i/o-diensten zwischen knoten
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
US9680501B1 (en) 2016-04-20 2017-06-13 Taiwan Semiconductor Manufacturing Company, Ltd. De-serialization circuit and method of operating the same
CN113541912B (zh) 2020-04-17 2022-11-01 苏州库瀚信息科技有限公司 数据传输装置及方法
US20210004347A1 (en) * 2020-09-23 2021-01-07 Intel Corporation Approximate data bus inversion technique for latency sensitive applications

Citations (6)

* Cited by examiner, † Cited by third party
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 皇家飞利浦电子股份有限公司 提供容错性和增强的稳定性的数据通信模块
US20090313521A1 (en) * 2008-06-11 2009-12-17 Micron Technology, Inc. Data bus inversion usable in a memory system
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

Patent Citations (6)

* Cited by examiner, † Cited by third party
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 美光科技公司 数据总线反转设备、系统及方法
US20090313521A1 (en) * 2008-06-11 2009-12-17 Micron Technology, Inc. Data bus inversion usable in a memory system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107003963A (zh) * 2014-12-27 2017-08-01 英特尔公司 具有改进的信号完整性的低功率加扰
CN107003963B (zh) * 2014-12-27 2021-03-12 英特尔公司 具有改进的信号完整性的低功率加扰
CN108847849A (zh) * 2018-07-25 2018-11-20 张家口浩扬科技有限公司 一种基本编解码单元以及编解码器

Also Published As

Publication number Publication date
TW201237636A (en) 2012-09-16
US20120229310A1 (en) 2012-09-13
TWI443522B (zh) 2014-07-01
US8405529B2 (en) 2013-03-26
CN102681954B (zh) 2014-12-17

Similar Documents

Publication Publication Date Title
CN102681954A (zh) 使用总线倒置以减少同时信号切换
CN103141066B (zh) 发送电路、接收电路、发送方法、接收方法、通信系统及其通信方法
US8477856B2 (en) Multi-bit digital signal isolator
CN101496367B (zh) 串行互联多通道的对齐和纠偏的方法及发送器
US6621427B2 (en) Method and apparatus for implementing a doubly balanced code
CN104008078B (zh) 一种基于fpga的数据传输板之间进行高速传输的方法
CN1713626B (zh) 电压电平编码系统和方法
CN100469020C (zh) 多功能样式发生器及用于测试串行通信信道通信质量的方法
CN101702639B (zh) 循环冗余校验的校验值计算方法及装置
KR102357899B1 (ko) 유효 인코딩을 위한 방법 및 장치
CN104113347A (zh) 隔离的串行器-解串器
CN104935311A (zh) 一种数字信号隔离器及相应的脉宽编解码方法
KR100969748B1 (ko) 직렬 통신 시스템에서 직렬 데이터의 송수신 방법 및 장치와 이를 위한 직렬 통신 시스템
EP3117527B1 (en) Method for using error correction codes with n factorial or cci extension
Lim et al. A multi-lane MIPI CSI receiver for mobile camera applications
US3804982A (en) Data communication system for serially transferring data between a first and a second location
US6697974B2 (en) Method and apparatus for adaptively compensating skews during data transmission on a bus
CN106933767B (zh) 一种适用于jesd204b协议的逗号检测和字对齐方法及系统
US20020109616A1 (en) Method for encoding/decoding digital data transmitted through a serial link, particularly of the 8B/10 type, and device for implementing same
CN103795493A (zh) 用于改进编码的装置及关联方法
CN104009823B (zh) 一种SerDes技术中的错位检测与纠错电路
CN111934707A (zh) 数据发射代码和接口
US20030219004A1 (en) Synchronized data communication on a one-wired bus
EP3387540B1 (en) Serial data multiplexing
CN101232350A (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