CN104808966B - 有效编码的方法和装置 - Google Patents
有效编码的方法和装置 Download PDFInfo
- Publication number
- CN104808966B CN104808966B CN201510047096.1A CN201510047096A CN104808966B CN 104808966 B CN104808966 B CN 104808966B CN 201510047096 A CN201510047096 A CN 201510047096A CN 104808966 B CN104808966 B CN 104808966B
- Authority
- CN
- China
- Prior art keywords
- data
- signal
- circuit
- coding
- dbi
- 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.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/61—Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
- H03M13/611—Specific encoding aspects, e.g. encoding by means of decoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
- H04L1/0042—Encoding specially adapted to other signal generation operation, e.g. in order to reduce transmit distortions, jitter, or to improve signal shape
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M5/00—Conversion of the form of the representation of individual digits
- H03M5/02—Conversion to or from representation by pulses
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/01—Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
Abstract
本公开的各方面涉及有效编码的方法和装置,具体地提供了包括编码电路和有效电路的电路。编码电路配置为编码数据总线上作为信号传送的编码数据,以满足限制连续传送之间位反转数量的要求。有效电路配置为有选择地舍弃不满足限制连续传送之间位反转数量的要求的信号,以指示数据总线上传送的信号是否构成有效数据或无效数据。
Description
合并引用
本公开请求于2014年1月29日提交的第61/933,119号美国临时申请“ValidEncode Through AC DBI”,2014年4月8日提交的第61/977,009号美国临时申请"ValidEncode Through AC DBI",2015年1月5日提交的第62/099,924号美国临时申请"ValidEncode Through AC DBI"的权利,其内容以引用的方式整体引入本申请。
背景技术
本文提供的背景描述用于总体呈现本公开构思的目的。目前指定的发明人的工作(包括此背景技术部分所描述的工作)以及本描述中在提交时未证实为现有技术的各方面,均既不明示也不暗示地被认为是针对本公开的现有技术。
在各集成电路中,大量数据在集成电路装置的不同模块中传递,某些出现的结构中的数据被分布在独立但相互通信的耦合芯片中。数据位反转(DBI)是一种用于数据传送以最小化噪声产生且减小错误概率的技术。在示例中,DBI信号被加入数据总线且与数据位一同在数据总线上传送。DBI信号用来指示数据总线上的数据位是否被反转。在AC DBI模式中,数据总线上的数据位被适当反转以减小数据总线上连续传送之间的位转换的数量,从而最小化噪声产生和错误概率。常规地,提供附加的专用有效信号以帮助确定数据总线上的信号是否确实构成有效数据或者仅仅是噪声。
发明内容
本公开的方面提供电路,包括编码电路和有效电路。编码电路配置为编码数据总线上作为信号传送的数据,以满足限制连续传送之间的位转换的数量的要求。有效电路配置为有选择地舍弃(corrupt)不满足限制连续传送之间的位转换的数量的要求的信号,以指示数据总线上传送的信号是否构成有效数据或无效数据。
根据本公开的一个方面,编码电路配置为编码数据总线上作为信号传送的数据,以满足限制连续传送之间位转换的最大数量为数据总线宽度的一半的要求。
在实施例中,编码电路包括逻辑电路和XOR电路,逻辑电路配置为基于作为第一数据单元和在第一数据单元之后的第二数据单元传送的信号之间的位转换来产生数据位反转(DBI)信号,XOR电路配置为将第二数据单元与DBI信号合并以编码第二数据单元。
进一步地,在示例中,有效电路包括逻辑电路和XOR电路,逻辑电路配置为响应于有效信号来产生舍弃反转信号,该有效信号指示数据总线上传送的信号是否构成有效数据或无效数据,XOR电路配置为将至少一部分编码的数据与舍弃反转信号合并。在示例中,逻辑电路配置为响应于有效信号来门控时钟信号,编码电路配置为基于门控时钟信号来进行操作。
根据本公开的一个方面,该电路包括传送电路,配置为传送DBI信号和有选择地舍弃的编码的数据。此外,在示例中,该电路包括:接收电路,配置为接收DBI信号和有选择地舍弃的信号,以及有效解码电路,配置为检测信号中的舍弃并响应于舍弃的检测来恢复有效信号。
本公开的方面提供有效编码的方法。该方法包括通过编码电路编码数据总线上作为信号传送的数据,以满足限制连续传送之间位转换的数量的要求;通过有效电路有选择地舍弃不满足限制连续传送之间位转换的数量的要求的信号,以指示数据总线上传送的信号是否构成有效数据或无效数据。
本公开的方面也提供包括一个或多个集成电路芯片的电子装置。该电子装置包括第一电路,配置为经由数据总线将数据传送至电子装置中的第二电路。第一电路包括编码电路和有效电路,编码电路配置为编码数据总线上作为信号传送的数据,以满足限制连续传送之间位转换的数量的要求,有效电路配置为有选择地舍弃不满足限制连续传送之间位转换的数量的要求的信号,以指示数据总线上传送的信号是否构成有效数据或无效数据。
附图说明
本公开的各种实施例将作为示例结合附图详细描述,其中相同附图标记表示相同元件,其中:
图1示出根据本公开实施例的电子系统100的框图;
图2示出根据本公开实施例的电子系统200的详细框图;
图3示出根据本公开实施例的传送端数据位的表;
图4示出根据本公开实施例的接收端数据位的表;
图5示出概括传送有效信号的流程的流程图,以及;
图6示出解码有效信号的流程图。
具体实施方式
图1示出根据本公开实施例的电子系统100的框图。电子系统100配置为采用数据位反转(DBI)技术、通过具有并行总线的通道140将数据从第一电路110传送至第二电路150。此外,电子系统100配置为编码数据中的有效信号,并传送具有有效信号的编码数据而不用为通道140中的有效信号增加附加的传送资源(例如专用传送线)。
电子系统100可以是任何合适系统,例如台式机、手提电脑、平板电脑、智能电话、网络开关或装置、智能电视、网络服务器、印刷电路板(PCB)、具有多个芯片的电子封装、集成电路(IC)芯片等。
在实施例中,电子系统100为具有多个芯片的电子封装,例如多芯片模块(MCM)封装、多芯片封装(MCP)等。在示例中,第一电路110和第二电路150为IC芯片模块,例如位于插入板上的北桥芯片模块、南桥芯片模块等。通道140包括第一电路110上的传送电路141以及第二电路150上的接收电路149。插入板配置为将第一电路110与第二电路150耦合,以实现第一电路110与第二电路150之间的信号传送。
在另一实施例中,电子系统100为PCB板,第一电路110与第二电路150为PCB板上的IC芯片。通道140包括第一电路110上的传送电路141、PCB板上的多个铜迹线(未示出)、以及第二电路150上的接收电路149,例如用于将数据从第一电路110传送至第二电路150。
在另一实施例中,电子系统100为IC芯片,第一电路110和第二电路150为片上电路部件。通道140包括IC芯片上的多个金属迹线,用于在实施例中将数据从第一电路110传送至第二电路150。
根据本公开的一方面,DBI技术(例如AC DBI技术)用于电子系统100中,以最小化噪声产生并减小从第一电路110至第二电路150的数据传送过程中的错误概率。在图1示例中,通道140使用8位数据总线来从第一电路110至第二电路150并行传送8位(例如D[0]-D[7])。此外,DBI信号加入至数据总线以指示8位是否反转。在示例中,当DBI信号为二进制“0”(例如具有相对低电压)时,8位不被反转;而当DBI信号为二进制“1”(例如具有相对高电压)时,8位被反转。
在实施例中,电子系统100配置为AC DBI模式以传送形式为数据单元流的数据。每个数据单元包括多个位(例如8位),而且多个位在一个时间单元(例如一个时钟周期)中被并行传送。数据单元流被编码为AC DBI模式,以限制连续传送之间的位反转数量。
在图1示例中,第一电路110包括DBI编码电路120,配置为采用DBI技术(例如ACDBI技术)编码数据单元流101。例如,当数据单元具有来自前一编码数据单元的四个(8位总线宽度的一半)或更少不同位时,DBI编码电路120输出未反转的数据单元。此外,DBI编码电路120输出DBI信号中的二进制“0”以指示编码期间没有反转。当数据单元具有来自前一编码数据单元多于四个不同位时,DBI编码电路120位反转该数据单元,并且输出位反转后的数据单元作为编码数据单元。因此,编码数据单元具有来自前一编码数据单元的少于四个的不同位。此外,DBI编码电路120输出DBI信号中的二进制“1”以指示编码期间的位反转。因此AC DBI模式中连续编码数据单元之间的位反转的最大数量被限制在四个(8位总线宽度的一半)。
此外,根据本公开的一方面,电子系统100配置为通过通道140提供有效数据指示,而不增加附加的传送资源(例如金属迹线、传送电路、接收电路等)。有效数据指示用来指示通过通道140传送的信号是否构成有效数据单元或无效数据单元。
在实施例中,数据单元被编码以具有特定属性。第一电路110包括选择性舍弃电路130,选择性舍弃电路130配置为接收有效信号并且响应于不具有特定属性的有效信号而有选择地舍弃编码数据单元,以指示通过通道140传送的构成有效数据单元或无效数据单元的信号是否有效或无效。在示例中,特定属性用作有效数据指示。例如,当有效信号为二进制“1”(例如有效)时,选择性舍弃电路130并不舍弃数据单元,而当有效信号为二进制“0”(例如无效)时,选择性舍弃电路130舍弃不具有特定属性的编码数据单元。因此,当经由通道140传送的信号具有特定属性时,有效数据指示会指示信号构成有效数据单元,而当经由通道140传送的信号不具有特定属性时,有效数据指示会指示信号构成无效数据单元。
在示例中,当电子系统100在AC DBI模式中,DBI编码电路120编码数据单元以限制连续编码数据单元之间位反转的最大数量,例如针对八位数据总线的四个位反转。进一步地,在示例中,响应于有效信号,选择性舍弃电路130有选择地舍弃一个或多个传送数据单元,使得舍弃传送的位反转数量大于AC DBI模式中连续编码数据单元之间反转的最大数量,例如针对八位数据总线的五个位反转。在示例中,位反转的数量用作有效数据指示。例如,当有效信号为二进制“1”(例如有效)时,选择性舍弃电路130使编码数据单元无变化并且编码数据单元经由通道140作为信号传送;而当有效信号为二进制“0”(例如无效)时,选择性舍弃电路130使编码数据单元有变化以引起连续编码数据单元之间的位反转,而且舍弃的数据单元经由通道140作为信号传送。因此,当连续编码数据单元之间的位反转数量等于四个或少于四个时,有效数据指示会指示信号构成有效数据单元;而当连续编码单元之间的位反转数量在示例中为五个时,有效数据指示会指示传送的信号构成无效数据单元。
例如,当第二电路150从通道140接收传送的数据单元时,第二电路150检测舍弃。例如针对8位数据总线的5位反转,当检测到连续接收数据单元之间的舍弃时,第二电路150解码指示无效数据单元的有效数据指示。
在图1示例中,第二电路150包括DBI解码电路160和有效解码电路170。DBI解码电路160配置为根据DBI技术来解码从通道140接收的数据位,并在编码、传送和解码过程中没有错误发生时,输出与原始数据单元流101相同的数据单元流185。在示例中,当DBI信号为二进制“0”时,DBI解码电路160输出从通道140接收的数据单元;而当DBI信号为二进制“1”时,DBI解码电路160位反转从通道140接收的数据单元并输出经位反转的数据单元。
有效解码电路170配置为解码来自接收的数据单元的有效信号。在示例中,有效解码电路170核对目前接收的数据单元与之前接收的数据单元之间的位反转的数量。当反转数量等于四个或少于四个时,在示例中,有效解码电路170解码有效数据指示以指示有效数据单元;而当反转数量大于四个时,在示例中,有效解码电路170解码有效数据指示以指示无效数据单元。
需注意,在实施例中,第一电路110包括与DBI解码电路160类似配置的DBI解码电路(未示出)以及与有效解码电路170类似配置的有效解码电路(未示出),第二电路150包括与DBI编码电路120类似配置的DBI编码电路(未示出),以及与选择性舍弃电路130类似配置的选择性舍弃电路(未示出),而通道140包括具有第二电路150的传送电路(未示出)以及具有第一电路110的接收电路(未示出),以便第二电路150可以上面描述的类似方式来传送数据至第一电路110。
也需注意,通过通道140传送的数据可以是任何合适的数据,例如指令、控制数据、存储地址、存储内容等。
图2示出根据本公开实施例的电子系统200的详细框图。在一示例中,电子系统200为电子系统100的实施性示例。在电子系统200中,第一电路TX 210经通道240传送数据至第二电路RX 250,而第二电路RX 250从通道240接收数据。电子系统200配置为使用AC DBI技术来编码和传送采用8位宽度并行数据总线的数据,而且配置为编码数据中的有效信号,并传送具有有效信号的编码数据而不增加专用于有效信号的附加的传送资源。
图2示例中,第一电路TX 210包括DBI编码电路220和选择性舍弃电路230。DBI编码电路220配置为接收数据单元流201并采用AC DBI技术编码数据单元流,以便连续编码数据单元之间的位反转的最大数量为数据总线宽度的一半,例如图2示例中的四个。选择性舍弃电路230配置为响应于有效信号而有选择地舍弃一个或多个传送数据单元,以编码要传送的数据单元中的有效信号。
特别地,DBI编码电路220包括第一寄存器221、DBI产生逻辑电路222、第一XOR电路223和第二寄存器224。选择性舍弃电路230包括有效和时钟逻辑电路231以及第二XOR电路232。这些元件如图2所示耦合在一起。
DBI编码电路220接收一系列原始数据单元201,并采用AC DBI技术产生编码数据单元。DBI编码电路220中的电路基于第一门控时钟信号TX_GATED_CLK来同步。
特别地,在示例中,第一寄存器221包括8个D触发器,配置为响应于第一门控时钟信号TX_GATED_CLK接收和存储数据单元流201。例如,每次第一寄存器221存储一系列数据单元201中的第N个数据单元(N为正整数),如图2中数据单元202(TX_DIN[N])所示。
进一步地,在图2示例中,第二寄存器224包括8个D触发器,配置为存储编码数据单元204(TX_DIN[N-1]),编码数据单元204为一系列数据单元中第N-1个数据单元的编码数据单元。DBI产生逻辑电路222配置为基于数据单元202和编码数据单元204产生DBI信号208(TX_DBI[N])。在示例中,当数据单元202具有来自编码数据单元204的四个或更少的不同位时,DBI产生逻辑电路222输出DBI信号208(TX_DBI[N])中的二进制“0”以指示不需要反转;而当数据单元202具有来自编码数据单元204的多于四个不同位时,DBI产生逻辑电路222输出DBI信号208(TX_DBI[N])中的二进制“1”以指示需要反转。
第一XOR电路223包括例如8个XOR门以使用XOR逻辑电路来将数据单元202与DBI信号208合并以产生编码数据单元203,编码数据单元203为一系列数据单元中第N个数据单元的编码数据单元。例如,当DBI信号208为二进制“0”时,编码数据单元203与数据单元202相同,而当DBI信号208为二进制“1”时,第一XOR电路223位反转数据单元202以产生编码数据单元203。
选择性舍弃电路230接收有效信号TX_VALID,基于该有效信号来产生时钟信号以响应于有效信号TX_VALID同步电路操作,而且基于该有效信号TX_VALID来有选择地舍弃编码数据单元203。
特别地,图2示例中,有效时钟逻辑231接收时钟信号TX_CLK(例如分配至第一电路TX 210的系统时钟),并且基于时钟信号TX_CLK和有效信号TX_VALID来产生第一门控时钟TX_GATED_CLK、第二门控时钟TX_CLK_OUT、以及舍弃控制信号TX_INVERT_DATA。第一门控时钟TX_GATED_CLK被提供至DBI编码电路220以同步DBI编码电路220中的电路操作。第二门控时钟TX_CLK_OUT通过通道240被传送至第二电路RX 250,并被第二电路RX 250用来同步第二电路RX 250中的电路操作。在实施例中,舍弃控制信号TX_INVERT_DATA被提供至第二XOR电路232以有选择地舍弃编码数据单元。
在一示例中,当有效信号TX_VALID为二进制“1”时,第一门控时钟信号TX_GATED_CLK和第二门控时钟信号TX_CLK_OUT被激活,第一门控时钟信号TX_GATED_CLK和第二门控时钟信号TX_CLK_OUT的时钟转换(例如上升沿、下降沿)会跟随时钟信号TX_CLK的转换。响应于有效信号TX_VALID中的二进制“0”,第一门控时钟信号TX_GATED_CLK和第二门控时钟信号TX_CLK_OUT被适当门控以临时地停止时钟转换。需注意,第一门控时钟信号TX_GATED_CLK和第二门控时钟信号TX_CLK_OUT可具有相同或不同的门控时钟周期。
在示例中,响应于有效信号TX_VALID中的二进制“0”,第一门控时钟信号TX_GATED_CLK被门控两个时钟周期,而第二门控时钟信号TX_CLK_OUT被门控一个时钟周期。第一门控时钟信号TX_GATED_CLK被提供至DBI编码电路220,以停止DBI编码电路220两个时钟周期,以便保留最后一个数据单元203。第二门控时钟信号TX_CLK_OUT被提供至第二电路RX250以解码有效信号。
图2示例中,第二XOR电路232包括例如5个XOR门以使用XOR逻辑电路来分别将编码数据单元203的五位与舍弃控制信号TX_INVERT_DATA合并,以舍弃编码数据单元203。例如,当舍弃控制信号TX_INVERT_DATA为二进制“0”时,编码数据单元203不舍弃,用于传输的数据单元205(TX_DOUT[N])与编码数据单元203相同。当舍弃控制信号TX_INVERT_DATA为二进制“1”时,第二XOR电路232位反转编码数据单元203的五位以舍弃编码数据单元203。用于传输的数据单元205包括位反转的五位,以及来自编码数据单元203的其他三位。数据位205与DBI信号208和第二门控时钟TX_CLK_OUT一同经由通道240传输。
通道240包括适当电路元件,例如传送电路、金属迹线、接收电路等,以将数据单元205、DBI信号208和第二门控时钟TX_CLK_OUT从第一电路TX 210传送至第二电路RX 250。
第二电路RX 250接收门控时钟信号281(RX_CLK)、一系列数据单元282(例如RX_DIN[N])、以及DBI信号284(例如RX_DBI[N])。在图2示例中,第二门控时钟TX_CLK_OUT传送至第二电路RX 250并被用作门控时钟信号281。门控时钟信号281被提供至各电路以同步电路操作。第二电路RX 250检测一系列数据单元282中的舍弃以解码有效信号RX_VALID,并且基于DBI信号284解码数据单元282以输出解码信号285。
图2示例中,第二电路RX 250包括DBI解码电路260和有效解码电路270。DBI解码电路260配置为接收数据单元RX_DIN[N]和对应的DBI信号(例如RX_DBI[N]),以及基于DBI信号来解码数据单元RX_DIN[N]。在示例中,DBI解码电路260包括XOR电路261-262和寄存器263-264。XOR电路261-262采用XOR逻辑电路将数据单元RX_DIN[N]和DBI信号RX_DBI[N]合并以解码数据单元,而寄存器263-264存储和输出解码数据单元285(例如RX_DOUT[N])。在示例中,当DBI信号RX_DBI[N]为二进制“0”时,解码数据单元RX_DOUT[N]与接收数据单元RX_DIN[N]相同;而当DBI信号RX_DBI[N]为二进制“1”时,接收数据单元RX_DIN[N]被位反转以产生解码数据单元RX_DOUT[N]。
有效解码电路270接收连续数据单元282。在示例中,有效解码电路270包括寄存器(未示出),配置为存储前次接收的数据单元RX_DIN[N-1]。进一步地,当有效解码电路270接收数据单元RX_DIN[N]时,有效解码电路270确定接收的数据单元RX_DIN[N-1]和RX_DIN[N]之间的位反转的数量,检测舍弃,并解码有效信号RX_VALID。在示例中,当接收的数据单元RX_DIN[N-1]和RX_DIN[N]之间的位反转的数量为四个以下时,有效解码电路270保持不变输出,例如有效信号RX_VALID中的二进制“1”;而当接收的连续时钟的数据单元之间的位反转的数量大于四个(例如五个)时,有效解码电路270输出有效信号RX_VALID中的二进制“0”。
图3示出根据本公开实施例的不同时刻针对图2示例中第一电路TX 210的信号值的表300。
图3示例中,当有效信号RX_VALID为二进制“1”时,例如从0时钟到第三时钟、第六时钟到第七时钟、第一门控时钟信号TX_GATED_CLK和第二门控时钟信号TX_CLK_OUT被激活(图中“A”所示)。每个传送数据单元TX_DOUT[N]具有八位TX_DOUT[N][0]到TX_DOUT[N][7]。传送数据单元TX_DOUT[N]已被编码,以使连续时钟之间的位反转(#of TRAN)的数量等于或小于四个,而DBI信号TX_DBI[N]指示传送的数据单元TX_DOUT[N]是否已经被位反转。
当有效信号TX_VALID为二进制“0”时(图中310所示在第四时钟),第一门控时钟信号TX_GATED_CLK被门控两个时钟周期于第四时钟和第五时钟(图中表300的“G”所示),而第二门控时钟信号TX_CLK_OUT被门控一个时钟周期于第五时钟(图中表300的“G”所示)。
在第四时钟,因为第一门控时钟信号TX_GATED_CLK被门控,因此第一寄存器221和第二寄存器224保持存储的数据单元。但是,因为TX_VALID信号为二进制“0”,舍弃控制信号TX_INVERT_DATA为二进制“1”(图中320所示),因此传送数据单元TX_DOUT[N]的五位被位反转(图中330所示)以舍弃传送数据单元TX_DOUT[N]。第三时钟和第四时钟之间的位反转的数量为五个(图中340所示)。
在第五时钟,第一门控时钟信号TX_GATED_CLK仍然被门控,而第一寄存器221和第二寄存器224保持存储的数据单元。在该示例中,舍弃控制信号TX_INVERT_DATA返回二进制“0”。传送单元TX_DOUT[N]与第三时钟相同。
图4示出根据本公开实施例的不同时刻针对图2示例中第二电路TX 250的信号值的表300。
图4示例中,当连续周期中接收的数据单元(例如RX_DIN[N])之间的位反转(#OFTRAN)的数量等于或小于四个时,例如第一时钟到第三时钟、第六时钟到第七时钟,有效信号RX_VALID为二进制“1”。当连续周期中接收的数据单元之间的位反转的数量大于四个时(例如在第四时钟),有效解码电路270输出解码有效信号RX_VALID中的二进制“0”。在第五时钟,由于时钟信号RX_CLK中的门控周期(图中420所示),解码有效信号保持二进制“0”。
图2示例中,电子系统200使用门控时钟信号来停止新数据单元的编码以便舍弃传送的数据单元。需注意,在另一示例中,电子系统不需要门控时钟信号以便有选择地舍弃传送的数据单元。
图5示出根据本公开的实施例的概括编码有效信号的流程500的流程图。在示例中,流程500由图2示例中的第一电路TX 210来执行。流程开始于S501且执行至S510。
S510中,接收指示有效数据单元或无效数据单元的有效信号。图2示例中,第一电路TX 210接收有效信号,该有效信号采用二进制“1”来指示有效数据单元,并采用二进制“0”来指示无效数据单元。
S520中,门控数据输入。图2示例中,有效和时钟逻辑电路231响应于有效信号,门控第一门控时钟信号TX_GATED_CLK和第二门控时钟信号TX_CLK_OUT。例如,当有效信号为二进制“0”时,第一门控时钟信号TX_GATED_CLK被门控,且第二门控时钟信号TX_CLK_OUT被门控。当第一门控时钟信号TX_GATED_CLK被门控时,第一寄存器221和第二寄存器224保持存储的数据单元而不输入新的数据单元。
S530中,输出数据被舍弃以编码有效信号。图2示例中,有效和时钟逻辑231响应于有效信号,输出舍弃控制信号TX_INVERT_DATA。例如,当有效信号为二进制“0”时,舍弃控制信号TX_INVERT_DATA被设为二进制“1”。因此,第二XOR电路232将舍弃控制信号TX_INVERT_DATA与编码数据单元203的五位合并以产生用于传送的数据单元205。然后,数据单元205被传送。该流程执行至S599并结束。
图6示出根据本公开实施例的概括解码DBI数据单元的流程示例600的流程图。在示例中,流程600由图2示例中的第二电路RX250来执行。该流程起始于S601并执行至S610。
S610中,接收一系列具有DBI信号的数据单元。数据单元被DBI编码。此外,一个或多个数据单元有选择地舍弃以编码数据单元中的有效信号。
S620中,编码来自于一系列数据单元的有效信号。图2示例中,有效逻辑电路270检测一系列数据单元中的舍弃。在示例中,有效逻辑电路270检测连续数据单元(每个具有8位)之间位反转的数量。当位反转的数量为四个以下时,有效逻辑电路270输出解码有效信号RX_VALID中的二进制“1”以指示有效数据单元;而当位反转的数量大于四个时,有效逻辑电路270输出解码有效信号RX_VALID中的二进制“0”以指示无效数据单元。
S630中,数据单元被DBI解码。图2示例中,当接收的DBI信号RX_DBI[N]为二进制“0”时,接收的数据单元作为解码数据单元输出;而当接收的DBI信号RX_DBI[N]为二进制“1”时,接收的数据单元被位反转而且位反转的数据单元作为解码数据单元输出。该流程执行至S699并结束。
需注意,在示例中,步骤S620和S630可由独立电路块并行执行。
尽管本公开的方面已经结合由示例提供的具体实施例来描述,但可获得对这些示例的替换、修改或变化。因此,这里提供的实施例旨在描述而非限制。可以实施不偏离以下给出的权利要求的精神的改变。
Claims (17)
1.一种用于处理数据的电路,包括:
编码电路,配置为编码将要在数据总线上作为信号传送的数据,以满足限制连续传送之间位转换的数量的要求,所述编码电路包括:
逻辑电路,配置为基于将要作为第一数据单元和在所述第一数据单元之后的第二数据单元传送的信号之间的位转换,产生数据位反转DBI信号,以及
XOR电路,配置为将所述第二数据单元与所述DBI信号合并,以编码所述第二数据单元;以及
有效电路,配置为有选择地舍弃不满足限制连续传送之间位转换的数量的要求的信号,并且通过所述信号的有选择的舍弃来指示将要在所述数据总线上传送的信号是否构成有效数据或无效数据。
2.根据权利要求1所述的电路,其中:
所述编码电路配置为编码将要在所述数据总线上作为信号传送的数据,以满足限制连续传送之间位转换的最大数量为数据总线宽度的一半的要求。
3.根据权利要求1所述的电路,其中所述有效电路包括:
另一逻辑电路,配置为响应于有效信号来产生舍弃反转信号,所述有效信号指示所述数据总线上传送的信号是否构成有效数据或无效数据;以及
另一XOR电路,配置为将至少一部分编码的所述数据与所述舍弃反转信号合并。
4.根据权利要求3所述的电路,其中所述另一逻辑电路配置为响应于所述有效信号来门控时钟信号,以及所述编码电路配置为基于所述门控时钟信号来进行操作。
5.根据权利要求1所述的电路,进一步包括:
传送电路,配置为传送DBI信号和有选择地舍弃的编码的所述数据。
6.根据权利要求5所述的电路,进一步包括:
接收电路,配置为接收所述DBI信号和有选择地舍弃的信号;以及
有效解码电路,配置为检测信号中的舍弃,并响应于所述舍弃的检测来恢复所述有效数据。
7.一种有效编码的方法,包括:
通过编码电路编码将要在数据总线上作为信号传送的数据,以满足限制连续传送之间位转换的数量的要求,所述编码包括:
基于将要作为第一数据单元和在所述第一数据单元之后的第二数据单元传送的信号之间的位转换,产生数据位反转DBI信号;以及基于所述DBI信号来位反转所述第二数据单元以编码所述第二数据单元;以及
通过有效电路有选择地舍弃不满足限制连续传送之间位转换的数量的要求的信号;以及
通过所述信号的有选择的舍弃来指示将要所述数据总线上传送的信号是否构成有效数据或无效数据。
8.根据权利要求7所述的方法,其中,通过编码电路编码将要在数据总线上作为信号传送的数据,以满足限制连续传送之间位转换的数量的要求进一步包括:
编码将要在所述数据总线上作为信号传送的数据,以满足限制连续传送之间位转换的最大数量为数据总线宽度的一半的要求。
9.根据权利要求7所述的方法,其中通过有效电路有选择地舍弃不满足限制连续传送之间位转换的数量的要求的信号,以指示所述数据总线上传送的信号是否构成有效数据或无效数据进一步包括:
响应于有效信号来产生舍弃反转信号,所述有效信号指示将要在所述数据总线上传送的信号是否有效或无效;以及
基于所述舍弃反转信号位反转至少一部分编码的所述数据。
10.根据权利要求9所述的方法,进一步包括:
响应于所述有效信号来门控时钟信号;以及
提供门控的所述时钟信号以同步所述编码电路。
11.根据权利要求7所述的方法,进一步包括:
经由数据总线传送DBI信号和有选择地舍弃的信号。
12.根据权利要求11所述的方法,进一步包括:
接收所述DBI信号和有选择地舍弃的信号;
检测不满足要求的信号中的舍弃;以及
响应于所述舍弃的检测来恢复所述有效数据。
13.一种用于处理数据的电子装置,包括一个或多个集成电路芯片,包括:
第一电路,配置为经由数据总线将数据传送至所述电子装置中的第二电路,其中所述第一电路包括:
编码电路,配置为编码将要在数据总线上作为信号传送的数据,以满足限制连续传送之间位转换的数量的要求,其中所述编码电路进一步包括:逻辑电路,被配置为基于将要作为第一数据单元传送的信号和在所述第一数据单元之后作为第二数据单元传送的信号之间的位转换来产生数据位反转DBI信号,以及XOR电路,被配置为将所述第二数据单元与所述DBI信号合并以编码所述第二数据单元;以及
有效电路,配置为有选择地舍弃不满足限制连续传送之间位转换的数量的要求的信号,以指示将要在所述数据总线上传送的信号是否构成有效数据或无效数据。
14.根据权利要求13所述的电子装置,其中:
所述编码电路配置为编码将要在所述数据总线上作为信号传送的数据,以满足限制连续传送之间位转换的最大数量为数据总线宽度的一半的要求。
15.根据权利要求13所述的电子装置,其中所述有效电路包括:
另一逻辑电路,配置为响应于有效信号来产生舍弃反转信号,所述有效信号指示所述数据总线上传送的信号是否构成有效数据或无效数据;以及
另一XOR电路,配置为将至少一部分编码的所述数据与所述舍弃反转信号合并。
16.根据权利要求15所述的电子装置,其中所述另一逻辑电路配置为响应于所述有效信号来门控时钟信号,以及所述编码电路配置为基于所述门控时钟信号来进行操作。
17.根据权利要求13所述的电子装置,其中所述第二电路包括:
有效解码电路,配置为检测信号中的舍弃,并响应于所述舍弃的检测来恢复所述有效数据;以及
DBI解码电路,配置为基于所述DBI信号解码所述数据。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461933119P | 2014-01-29 | 2014-01-29 | |
US61/933,119 | 2014-01-29 | ||
US201461977009P | 2014-04-08 | 2014-04-08 | |
US61/977,009 | 2014-04-08 | ||
US201562099924P | 2015-01-05 | 2015-01-05 | |
US62/099,924 | 2015-01-05 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104808966A CN104808966A (zh) | 2015-07-29 |
CN104808966B true CN104808966B (zh) | 2019-03-12 |
Family
ID=53678824
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510047096.1A Expired - Fee Related CN104808966B (zh) | 2014-01-29 | 2015-01-29 | 有效编码的方法和装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9621303B2 (zh) |
KR (1) | KR102357899B1 (zh) |
CN (1) | CN104808966B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014193574A1 (en) | 2013-05-13 | 2014-12-04 | Rambus Inc. | Buffer circuit with data bit inversion |
US9979416B2 (en) * | 2014-12-10 | 2018-05-22 | Rambus Inc. | Memory controller and method of data bus inversion using an error detection correction code |
EP3533193A1 (en) * | 2016-10-28 | 2019-09-04 | Telefonaktiebolaget LM Ericsson (publ) | Dbi protection for data link |
KR20180063475A (ko) | 2016-12-02 | 2018-06-12 | 삼성전자주식회사 | 반도체 장치의 오류 검출 코드 생성 회로, 이를 포함하는 메모리 컨트롤러 및 반도체 메모리 장치 |
US10146719B2 (en) * | 2017-03-24 | 2018-12-04 | Micron Technology, Inc. | Semiconductor layered device with data bus |
CN108334419B (zh) * | 2017-12-25 | 2021-12-28 | 华为技术有限公司 | 一种数据恢复的方法和装置 |
US10964702B2 (en) | 2018-10-17 | 2021-03-30 | Micron Technology, Inc. | Semiconductor device with first-in-first-out circuit |
JP2021043909A (ja) * | 2019-09-13 | 2021-03-18 | キオクシア株式会社 | メモリシステム、コントローラおよびデータ転送方法 |
KR20210149543A (ko) * | 2020-06-02 | 2021-12-09 | 삼성전자주식회사 | 메모리 장치 및 이를 포함하는 메모리 시스템 |
US11237729B1 (en) | 2020-10-13 | 2022-02-01 | Sandisk Technologies Llc | Fast bus inversion for non-volatile memory |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56140442A (en) * | 1980-04-01 | 1981-11-02 | Nippon Signal Co Ltd:The | Data majority circuit |
JPS61253534A (ja) * | 1985-05-04 | 1986-11-11 | Nec Corp | デ−タ圧縮方式 |
JPS63298436A (ja) * | 1987-05-28 | 1988-12-06 | Matsushita Electric Ind Co Ltd | 算術論理演算装置 |
JPS6466728A (en) * | 1987-09-08 | 1989-03-13 | Mitsubishi Electric Corp | Bit information detecting circuit |
JPH0199123A (ja) * | 1987-10-13 | 1989-04-18 | Nec Corp | ビットシフト回路 |
CN101154153A (zh) * | 2006-09-26 | 2008-04-02 | 冲电气工业株式会社 | 位域操作电路 |
US8117526B2 (en) * | 2007-10-29 | 2012-02-14 | Qimonda Ag | Apparatus and method for generating a transmit signal and apparatus and method for extracting an original message from a received signal |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6584526B1 (en) * | 2000-09-21 | 2003-06-24 | Intel Corporation | Inserting bus inversion scheme in bus path without increased access latency |
DE602005006248T2 (de) * | 2004-03-03 | 2009-06-25 | Koninklijke Philips Electronics N.V. | Datenkommunikationsmodul zur bereitstellung von fehlertoleranz und vergrösserter stabilität |
WO2009108562A2 (en) * | 2008-02-25 | 2009-09-03 | Rambus Inc. | Code-assisted error-detection technique |
US8127204B2 (en) * | 2008-08-15 | 2012-02-28 | Micron Technology, Inc. | Memory system and method using a memory device die stacked with a logic die using data encoding, and system using the memory system |
WO2011090523A1 (en) * | 2010-01-20 | 2011-07-28 | Rambus Inc. | Multiple word data bus inversion |
-
2015
- 2015-01-29 CN CN201510047096.1A patent/CN104808966B/zh not_active Expired - Fee Related
- 2015-01-29 KR KR1020150014368A patent/KR102357899B1/ko active IP Right Grant
- 2015-01-29 US US14/608,319 patent/US9621303B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56140442A (en) * | 1980-04-01 | 1981-11-02 | Nippon Signal Co Ltd:The | Data majority circuit |
JPS61253534A (ja) * | 1985-05-04 | 1986-11-11 | Nec Corp | デ−タ圧縮方式 |
JPS63298436A (ja) * | 1987-05-28 | 1988-12-06 | Matsushita Electric Ind Co Ltd | 算術論理演算装置 |
JPS6466728A (en) * | 1987-09-08 | 1989-03-13 | Mitsubishi Electric Corp | Bit information detecting circuit |
JPH0199123A (ja) * | 1987-10-13 | 1989-04-18 | Nec Corp | ビットシフト回路 |
CN101154153A (zh) * | 2006-09-26 | 2008-04-02 | 冲电气工业株式会社 | 位域操作电路 |
US8117526B2 (en) * | 2007-10-29 | 2012-02-14 | Qimonda Ag | Apparatus and method for generating a transmit signal and apparatus and method for extracting an original message from a received signal |
Non-Patent Citations (1)
Title |
---|
bus-invert coding for low power I/O;Mircea R. Stan etc;《IEEE transactions On very scale integration (VLSI) systems》;19950331;第3卷(第1期);正文第53页A部分、第54页第3部分、第57页第V部分 |
Also Published As
Publication number | Publication date |
---|---|
KR102357899B1 (ko) | 2022-02-03 |
US9621303B2 (en) | 2017-04-11 |
KR20150090860A (ko) | 2015-08-06 |
US20150212156A1 (en) | 2015-07-30 |
CN104808966A (zh) | 2015-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104808966B (zh) | 有效编码的方法和装置 | |
JP6433973B2 (ja) | データシンボル遷移ベースのクロッキングを用いたマルチワイヤシングルエンドプッシュプルリンク | |
CN104954096B (zh) | 一种一主多从的高速同步串行通信数据传输方法 | |
CN101662636B (zh) | 一种安全高速差分串行接口 | |
CN105208034A (zh) | 一种spi总线与can总线协议转换电路及方法 | |
CN106063181B (zh) | 接收机电路和在接收机电路上操作的方法 | |
CN101546286B (zh) | 一种高速串行总线逻辑分析方法和装置 | |
CN104156333A (zh) | 一种基于fpga的uart多接口扩展系统和方法 | |
CN102035600B (zh) | 一种高速1553b光纤总线物理接口板 | |
EP1700224B1 (en) | Receiver corporation | |
Lim et al. | A multi-lane MIPI CSI receiver for mobile camera applications | |
TWI516060B (zh) | Synchronization sequence data transmission method and circuit device | |
US7774526B2 (en) | Method for deterministic timed transfer of data with memory using a serial interface | |
CN102158400B (zh) | 天基路由交换系统的通信接口及天基路由交换系统 | |
CN101228698B (zh) | 4电平逻辑解码器以及解码4电平输入数据信号的方法 | |
Sowmya et al. | Design of UART module using ASMD technique | |
CN208190652U (zh) | 一种全双工通用同步异步串行收发器的主板 | |
CN106209307A (zh) | 多颗fpga片间互联方法与系统 | |
CN114756498A (zh) | 芯片、主控芯片、芯片通信方法、芯片阵列及相关设备 | |
CN105049057A (zh) | 一种面向128位并行输入的crc-32校验电路 | |
CN101232350A (zh) | 奇偶校验误差检测电路和方法 | |
Wang et al. | A 1.1 GHz 8B/10B encoder and decoder design | |
CN1514547A (zh) | Manchester编码器和解码器 | |
CN110232038A (zh) | 一种工控机用智能通讯串口装置 | |
Yang et al. | GALS architecture of H. 264 video encoding system on DN-DualV6-PCIe-4 FPGA platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190312 Termination date: 20210129 |
|
CF01 | Termination of patent right due to non-payment of annual fee |