CN101292221A - 用于串行链路的基于信号跃迁特征的编码 - Google Patents
用于串行链路的基于信号跃迁特征的编码 Download PDFInfo
- Publication number
- CN101292221A CN101292221A CNA2005800518679A CN200580051867A CN101292221A CN 101292221 A CN101292221 A CN 101292221A CN A2005800518679 A CNA2005800518679 A CN A2005800518679A CN 200580051867 A CN200580051867 A CN 200580051867A CN 101292221 A CN101292221 A CN 101292221A
- Authority
- CN
- China
- Prior art keywords
- section
- data stream
- coding
- precedence
- described data
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
-
- 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
-
- 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/42—Bus transfer protocol, e.g. handshake; Synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
- H04L25/40—Transmitting circuits; Receiving circuits
- H04L25/49—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
- H04L25/4906—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Transfer Systems (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
这里描述了用于串行链路的基于信号跃迁特征的编码。根据一个实施例,作为对将要发送到串行通信链路上的数据流的响应,根据基于数据流的信号跃迁频率所确定的位次序对数据流的一个或多个位进行编码。结果,生成编码后的数据流序列,其相对于编码之前数据流的信号跃迁频率具有更低的位跃迁数目。其后,将编码后的数据序列发送到串行通信链路上。也描述了其它方法和装置。
Description
技术领域
本发明的实施例涉及数据处理系统;并且更具体地,涉及用于串行链路的基于信号跃迁特征的编码。
背景技术
对于为低功率优化的电路,典型地,在I/O(输入/输出电路)处的功率耗散大约是总功率消耗的50%。该I/O功率耗散是由于I/O引脚、电线和所连接电路造成的I/O焊盘内器件和外部电容的相对较大尺寸的结果。为了驱动大的外部电容,I/O中的器件要大,并且这进一步增加了它们自己的寄生电容。印刷电路板上的电容大约比芯片内部电容大两个数量级。对这些电容进行动态充电和放电导致I/O引脚消耗相对大量的功率。
为了更低的功率消耗对I/O进行编码最近已经得到了使用。为了低功率对I/O进行编码是实用的,并且已经在商业芯片中实现。然而,大多数常规方法是为并行总线设计的。
附图说明
通过参考下列说明和用于对本发明的实施例进行说明的附图,可以最好地理解本发明的实施例。在附图中:
图1是表示可以在实施例中使用的串行链路的音频链路;
图2A-2C是根据某些实施例对数据流的不同位结构进行说明的方框图;
图3是对并-串转换器进行说明的方框图;
图4是根据一个实施例对编码器的例子进行说明的方框图;
图5是根据另一个实施例对编码器的例子进行说明的方框图;
图6是根据一个实施例对用于对数据流进行编码的过程的例子进行说明的流程图;
图7是根据一个实施例对用于对数据流进行编码的装置的例子进行说明的方框图;
图8是可以在实施例中使用的数据处理系统的方框图。
具体实施方式
在这里描述了用于串行链路的基于信号跃迁特征的编码。在下列说明中,提出了许多细节,以便提供对本发明的实施例更彻底的解释。然而,可以不采用这些特定细节实现本发明的实施例,这对于本领域的技术人员来说将是显而易见的。在其它例子中,为了避免使本发明的实施例模糊,以方框图的形式而不是细节来表示众所周知的结构和装置。
说明书中提及的“一个实施例”或者“实施例”意味着本发明的至少一个实施例中包括结合该实施例所描述的特定特征、结构或特性。在说明书中各处出现的短语“在一个实施例中”不一定都指同一个实施例。
因此,在一个实施例中,使用用于串行链路的低功率编码技术。串行链路的一个例子是在各种数据处理系统中普遍使用的音频链路。通过使用该编码技术,在某些结构中,仅以在芯片内部增加两个简单的电路为代价,就可以减少大约12.5%的链路功率消耗,该两个简单电路的功率消耗可以忽略。
在该申请中,使用音频链路作为串行链路的例子。然而,该技术不限制于音频链路。可以将该技术应用于其它适合于应用该编码技术减少链路功率消耗的串行链路。
通常,可以将CMOS(互补金属氧化物半导体)电路中耗散的功率分类为静态功率耗散(例如,重叠电流和DC或者直流静电)和动态功率耗散。可以如下确定CMOS电路所耗散的动态功率:
其中,在电路的所有N个节点上计算总和;Cloadi是节点i的负载电容;Vdd是供电电压;f是信号跃迁频率;并且是节点i处的活动因子。为了实现电路中的低功率,可以减小项Vdd、Cloadi、f和中的一项或多项。当Vdd和Cloadi固定时,减小对于功率减小是有效的。对于特定时间间隔期间的通信链路或信道,活动因子表示信号在信道或者链路的任一个方向中出现的时间百分比。
对于低功率VLSI(超大规模集成)设计,关注点在于开发低功率电路而且不对性能(面积、等待时间和周期)造成太多影响。用于减少功率耗散的技术的实施例背后的思路是根据信号跃迁特征对数据进行编码,为了减小节点在大电容侧(I/O)的活动因子甚至以稍微增加在低电容侧(例如,内部电路)跃迁的数目为代价。
例如,如图1中所示,高清(HD)音频的链路结构是数据处理系统上的下一代音频链路。HD音频是芯片(例如,芯片组和音频编解码器)之间的串行链路,其具有相对较大的I/O电容,由于动态电容充电和放电,导致在信号跃迁期间相对较大的I/O功率耗散。存在专用的输入和输出串行数据信号(例如,用于串行数据输入的SDIN和用于串行数据输出的SDOUT)。每个音频采样(例如,每个采样8位、16位或24位)经过并-串转换移位器在串行链路上传送,并且在接收机侧经过串-并转换移位器。
例如,对于具有8位分辨率(例如,从0~255范围)的音频采样,通常,采样的值小于峰值255的一半(例如,仅考虑无符号编码)。类似地,对于音频转换,几乎一半时间是安静阶段并且采样的值相当小。这意味着每个音频采样的最高有效位(MSB)为0的百分比相当高(至少大约75%)。
根据某些实施例,利用用于在并行和串行之间进行转换的移位器,以及每个音频采样的MSB继续为0的高百分比,如图2A中所示的每个采样交织(interlacing)中的位传输序列可以减小I/O信号活动因子对于如图2B中所示的正常传输,通过原始序列发送数据。
根据本发明的某些实施例,可以根据某些次序对数据流的某些段的某些位进行编码。可以基于这些段的活动因子来确定编码次序,其中,可以当对数据流进行接收时实时地确定活动因子。在一个实施例中,可以对数据流的某些段的某些位进行编码,使得具有相同逻辑值(例如,逻辑值0或1)的连续位的数目比编码之前的序列的具有相同逻辑值的连续位的数目大。结果,可以减少数据流跃迁的数目(例如,活动因子)。
在特定实施例中,如图2C中所示,对于第一个采样,可以对MSB和LSB的顺序进行转换,随后对于第二个采样,是正常顺序,并且随后是转换的顺序,随后是正常顺序,如此往复(例如,每隔一个采样进行转换)。根据一个实施例,在转换后的序列中,将第一个采样的MSB编码为与下一个采样的MSB相邻。如果此时它们的值相同(这种情况的概率是75%),就可以减少信号跃迁。
如图2B中所示,对于正常的原始序列,MSB邻近LSB。MSB为0的概率是75%,而LSB的值随机分布在0和1之间。在特定实施例中,可以如下表1中所示计算MSB和LSB之间的活动因子(也被称为跃迁因子)。
表1
对于转换后的序列,在采样之间的两个边界中,MSB邻近下一个采样的MSB一次。MSB为0的概率是75%,而LSB的值随机分布在0和1之间。可以如下表2中所示计算两个MSB和两个LSB之间的活动因子。
表2
如上所示,由于LSB的值随机分布,所以转换后的序列对LSB的活动因子具有相对更小的影响。然而,转换后的序列可以将每两个相邻采样中MSB的活动因子大约从减少到因此,根据某些实施例,可以减少每个采样之间大约12.5%的信号活动因子。
例如,在典型为串行链路的音频链路结构中,可以从并行总线接收数据流,并且在发送到串行链路上之前,需要将并行数据流转换成串行数据流。典型地,可以利用并-串转换器将并行的数据流转换成串行数据流。
图3是常规音频链路接口电路中使用的并-串转换器。参考图3,装置300包括锁存电路301和移位电路302。当对输入数据流304进行并行接收时,一旦断定负载信号303,锁存电路301就对输入数据流304进行锁存。其后,在所接收到的时钟信号305的每个时钟周期中,移位电路302经由移位操作将锁存的并行数据流转换成将要发送到串行链路上的串行数据流306。通常,在该构造中,将数据段从LSB到MSB进行移位。
根据一个实施例,在并-串转换器中使用方向控制逻辑将数据段从LSB到MSB方向进行移位,或者相反。图4是根据一个实施例对并-串转换器的例子进行说明的方框图。注意到,可以在硬件、软件、或者二者的组合中实现装置例子400。
参考图4,与图3的装置300相类似,装置400包括锁存电路401和移位电路402。当对输入数据流404进行并行接收时,锁存电路401对输入数据流404进行锁存。其后,在每个时钟周期中,移位电路402经由移位操作将锁存的并行数据流转换成将要发送到串行链路上的串行数据流406。
另外,装置400还包括连接到锁存电路401的方向控制逻辑407,其对方向控制信号408作出响应,对将要通过移位模块402进行移位的锁存数据的位方向进行控制。可以基于数据流404的一个或多个活动因子生成方向控制信号408,可以实时对其进行确定。结果,可以将数据流从LSB到MSB进行移位,或者相反。
在一个实施例中,由于对于串行总线,已经存在用于音频采样并-串转换的移位器(例如,单方向,左或者右),所以可以将左和右方向受控逻辑添加到移位器。为了识别对哪些采样传输序列进行了转换,例如,在复位之后,第一个采样是未转换的,第二个采样是转换的,并且随后遵循该模式。
图5是根据另一个实施例对并-串转换器的例子进行说明的方框图。例如,可以将装置500实现为图4的装置400的一部分。在该例子中,为了说明的目的,使用具有8位数据宽度的数据流。参考图5,装置500包括锁存电路501和移位电路502,但是不限制于此。当对输入数据流504进行并行接收时,一旦断定负载信号503,锁存电路501就对输入数据流504进行锁存。其后,在所接收的时钟信号505的每个时钟周期中,移位电路502经由移位操作将锁存的并行数据流转换成将要发送到串行链路上的串行数据流506。在一个实施例中,取决于方向控制逻辑507对方向控制信号508作出响应的输出,移位电路502可以将锁存数据从左向右进行移位,或者相反。可以基于锁存数据的一个或多个活动因子来确定方向控制信号508。还可以包括其它组件。
由于移位器和所添加的方向控制逻辑在芯片内部,所以对额外内核逻辑的功率消耗进行估计。在某些实施例中,用于移位器的方向控制内核逻辑可能消耗大约2.57μW功率。相同性能的FPGA将消耗约20倍于ASIC所消耗的功率。因此,芯片内部额外逻辑的功率消耗大约是0.1285μW。
对于在常规原始序列中发送的音频采样,MSB和LSB的信号跃迁百分比大约是50%。采用24MHz的时钟速度、Vdd是3.3V、是50%,SDIN的I/O引脚电容大约是7.5pF,可以如下确定在常规原始序列下的两个I/O引脚信号跃迁的功率消耗:
采用转换后的编码传输序列,可以减少大约12.5%的MSB和LSB的跃迁,因此仅以具有大约0.1285μW功率消耗的内部额外控制逻辑为代价,就可以减少245μW×12.5%=30.6μW的I/O功率消耗,其中,大约0.1285μW的功率消耗与所减小的功率消耗相比可以忽略。
图6是根据一个实施例对用于对数据进行编码的过程的例子进行说明的流程图。可以通过处理逻辑来实现过程600,该处理逻辑可以包括硬件(电路、专用逻辑电路等)、软件(例如在通用计算机系统或者专用机上运行的软件)、或者二者的组合。例如,可以通过图4的装置400和/或图5的装置500来实现过程示例600。
在一个实施例中,过程600包括:对将要发送到串行通信链路上的数据流作出响应,根据基于数据流的信号跃迁频率所确定的位次序对数据流的一个或多个位进行编码;经由对数据流中的位进行重新排序形成编码后数据流中的序列,该序列相对于编码之前数据流的信号跃迁频率具有更低的位跃迁数目;以及将编码后的数据序列发送到串行通信链路上,但是过程600不限制于此。
参考图6,处理逻辑对将要发送到串行链路上的数据流进行接收,其中,数据流包括第一个段和第二个段(方框602)。例如,数据流可以是在并行总线上接收的音频数据流的一部分。根据某些实施例,数据流可以具有各种格式或者数据宽度,诸如8位、16位或32位数据宽度等。作为对数据流的响应,例如,处理逻辑确定数据流关于第一个段和第二个段的一个或多个活动因子(方框604)。活动因子可以表示第一个段和第二个段的位模式(例如,从逻辑值“0”跃迁到“1”,或者相反)。可以实时确定活动因子。可替换地,可以将诸如与数据流有关的元数据这样的活动因子嵌入在数据流内。
处理逻辑根据基于一个活动因子或多个活动因子所确定的方式对第一个段和第二个段中至少一个的位次序进行重新排列(方框606)。在一个实施例中,可以使用上述的一种或多种技术来实现第一个段和第二个段中至少一个的位次序。例如,可以在对第一个采样或第二个采样进行串行化之前对它们进行转化,使得可以增加具有相同逻辑值的连续位的数目,以便减少活动因子(例如,逻辑值“0”和“1”之间跃迁的数目,或者相反)。其后,对第一个段和第二个段排列后的位次序进行编码,形成适合于发送到串行链路上的数据流序列(方框608)。还可以包括其它操作。
图7是根据一个实施例对可能使用上述一种或多种技术的系统结构的例子进行说明的方框图。例如,可以将系统700实现为具有图4和/或图5的装置400和/或装置500的数据处理系统的一部分。系统700可以实现图6的过程600的一个或多个操作。
参考图7,系统700包括具有存储器控制中心(MCH)706和I/O(输入/输出)控制中心(ICH)707的芯片组701,但是不限制于此。可以将MCH 706连接到主存储器,该主存储器可以是DRAM(动态随机访问存储器)或者类似的存储器。ICH 707可以包括串行通信逻辑708,其可以包括图4的装置400和/或图5的装置500中的一些或全部。在一个实施例中,可以将串行通信逻辑708经由串行通信链路703连接到一个或多个串行通信接口装置704-705,取决于通信协议等,该串行通信链路703可以是总线或者互连。在一个实施例中,串行通信逻辑可以实现图6的过程600的一些或全部操作。
在一个实施例中,芯片组701包括具有相关联编码器的输入/输出(I/O)电路,但是不限制于此,作为对将要发送到串行通信链路上的数据流的响应,该相关编码器根据基于数据流的信号跃迁频率所确定的位次序对数据流的一个或多个位进行编码。该编码器配置为经由对数据流中的位进行重新排序形成编码后的数据流序列,该编码后的数据流序列具有相对于编码之前数据流的信号跃迁频率更低的位跃迁数目。该装置还包括连接到编码器的串行通信接口,以便将编码后的数据序列发送到串行通信链路上。可以存在其它结构。
图8是可以使用具有上述至少一个特征的实施例的示例计算机系统的方框图。在一个实施例中,计算机系统800包括用于传送信息的通信机制、总线或者互连811,以及用于处理信息的诸如主处理单元812的集成电路组件,该主处理单元812与总线811连接。计算机系统800中诸如主处理单元812或者芯片组836的一个或多个组件或装置可以使用上述技术的实施例。主处理单元812可以包括一个或多个处理器或者作为一个单元一起工作的多个处理器内核。
计算机系统800还包括连接到总线811的随机访问存储器(RAM)或其它动态存储装置804(也被称为主存储器),用于存储将要由主处理单元812执行的信息和指令。还可以使用主存储器804存储主处理单元812执行指令期间的临时变量或者其它中间信息。
固件803可以是软件和硬件的组合,诸如具有在电可编程只读存储器(EPROM)上记录的例程操作的EPROM。固件803可以嵌入基础代码、基本输入/输出系统代码(BIOS)、或者其它类似代码。固件803使计算机系统800能够自启动。
计算机系统800还可以包括连接到总线或者互连811的只读存储器(ROM)以及/或者其它静态存储装置806,用于存储主处理单元812的静态信息和指令。静态存储装置806可以存储OS级和应用级软件。还可以将计算机系统800连接到诸如阴极射线管(CRT)或者液晶显示器(LCD)的显示装置821,该显示装置821连接到总线811,将信息显示给计算机用户。可以将芯片组与显示装置821接口。
还可以将包括字符数字和其它按键的字符数字输入装置(键盘)822连接到总线811,用于将信息选择和命令选择传送到主处理单元812。额外的用户输入装置是连接到总线811的诸如鼠标、跟踪球、跟踪板、手写笔、或者光标方向键的光标控制装置823,用于将方向信息选择和命令选择传送到主处理单元812,并且对光标在显示装置821上的运动进行控制。可以将芯片组与输入输出装置接口。
可以连接到总线811的另一个装置是硬复制装置824,其可以用于将指令、数据、或者其它信息打印在诸如纸张、胶片或者类似类型介质的介质上。此外,可选地,可以将诸如扬声器和/或麦克风(未示出)的声音记录和播放装置连接到总线811,以与计算机系统800进行音频接口。可以连接到总线811的另一个装置是有线/无线通信能力825。
根据一个实施例,芯片组836可以包括图4的装置400和/或图5的装置500中的一些或全部,其可以实现包括在图6的过程600中的一个或多个操作。还可以包括其它组件。
因此,在这里描述了用于串行链路的基于信号跃迁特征的编码。已经以计算机存储器内数据位的操作算术和符号表示的形式给出了前述详细说明中的某些部分。这些算术描述和表示是数据处理领域的技术人员将他们工作的实质内容最有效地传达给本领域其他技术人员的方式。这里,一般认为算法是导致期望结果的首尾一致的操作序列。操作是那些需要对物理量进行物理操作的操作。通常,这些量表现为能够被存储、传送、合并、比较、以及其它操作的电或磁信号的形式,虽然这并不是必须的。有时主要是为了公共使用的原因,将这些信号称为位、数值、元素、符号、字符、项、数字、或者类似名称,经证实这是方便的。
然而,应该铭记,所有这些以及类似的术语与恰当的物理量相关,并且仅仅是应用于这些量的方便标志。除非特别声明,否则,如上述讨论中显而易见的,意识到在整个说明书中使用诸如“处理”、“用计算机计算”、“计算”、“确定”、“显示”或者类似术语的讨论是指计算机系统或者类似电子计算装置的行为和处理,该计算机系统或者类似电子计算装置对计算机系统寄存器和存储器内表示为物理(电子)量的数据进行操作,并且将其转化为其它数据,类似地,将所述其它数据表示为计算机系统存储器或寄存器或者其它这种信息存储、传输或显示装置内部的物理量。
本发明的实施例还涉及用于实现这里描述的操作的设备。可以为了所需目的对该设备进行特别构造,或者该设备可以包括通过存储在计算机中的计算机程序有选择地激活或者重构的通用计算机。可以将这种计算机程序存储在计算机可读存储介质中,例如,包括软盘、光盘、CD-ROM和磁光盘在内的任何类型的盘、只读存储器(ROM)、随机访问存储器(RAM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、磁卡或光卡,或者适合于存储电子指令的任何类型的介质,但是不限制于此,并且将其各自连接到计算机系统总线。
这里所提出的算法和显示不与任何特定的计算机或者其它设备具有内在联系。根据这里所教的内容,可以结合程序使用各种通用系统,或者可以证实构造更专用的设备来完成所需的方法操作是方便的。从下列说明中,多种这些系统所需的结构将显而易见。另外,未参考任何特定的编程语言对本发明的实施例进行描述。应该意识到,可以使用多种编程语言来实现如这里所描述的本发明的实施例所教的内容。
机器可读介质可以包括用于以机器(例如,计算机)可读的形式对信息进行存储和发送的任何机制。例如,机器可读介质包括只读存储器(“ROM”)、随机访问存储器(“RAM”)、磁盘存储介质、光盘存储介质、闪存存储器装置、电、光、声或者其它形式的传播信号(例如,载波、红外信号、数字信号等),等。
在前述说明中,参考其中的特定示例性实施例对本发明的实施例进行了描述。可以在其上进行各种修改,而不脱离如下列权利要求中所列出的本发明实施例更广的精神和范围,这是显然的。因此,将说明书和附图视为说明性而不是限制性的。
Claims (20)
1、一种方法,包括:
作为对将要发送到串行通信链路上的数据流的响应,按照基于所述数据流的信号跃迁频率所确定的位次序对所述数据流的一个或多个位进行编码;
经由对所述数据流中的位进行重新排序而形成编码后数据流中的序列,其相对于所述编码之前的所述数据流的所述信号跃迁频率具有更低的位跃迁数目;以及
将所述编码后的数据序列发送到所述串行通信链路上。
2、如权利要求1所述的方法,还包括:确定所述数据流的一个或多个活动因子,其中,对所述数据流的一个或多个位进行编码,以减少所述一个或多个活动因子的一个或多个值。
3、如权利要求1所述的方法,其中,对所述数据流的一个或多个位进行编码包括:对所述数据流的一个或多个位进行重排,以增大具有相同逻辑值的连续位的数目。
4、如权利要求3所述的方法,其中,所述数据流包括第一个段和第二个段,并且其中,对所述数据流的一个或多个位进行编码包括:
将所述第一个段和第二个段中至少一个段的一个或多个位编码成所述第一个段和第二个段内具有所述相同逻辑值的连续位的数目;以及
对所述编码后的所述第一个段和第二个段中的至少一个段进行串行化,以生成表示所述第一个段和第二个段的位序列,作为适合于发送到所述串行链路上的所述编码后数据序列的一部分。
5、如权利要求4所述的方法,还包括:
以第一种位次序对所述第一个段的位进行编码;
以不同于所述第一种位次序的第二种位次序对所述第二个段的位进行编码;以及
对所述编码后的第一个段和第二个段进行串行化,以形成表示所述第一个段和第二个段的所述位序列。
6、如权利要求5所述的方法,其中,对所述第一个段从LSB(最低有效位)到MSB(最高有效位)进行编码,并且其中,对所述第二个段从MSB到LSB进行编码。
7、如权利要求5所述的方法,其中,从并行总线接收所述数据流,并且其中,对所述数据流的一个或多个位进行编码包括:将所述数据流从适合于所述并行总线的第一种格式转化成适合于所述串行通信链路的第二种格式。
8、如权利要求7所述的方法,其中,通过数据处理系统的芯片组内的并-串转换器来执行将所述数据流从所述第一种格式转换到所述第二种格式。
9、如权利要求8所述的方法,其中,所述并-串转换器包括方向控制逻辑,用于控制是否按照所述第一种位次序和第二种位次序之一对所述数据流的段进行编码。
10、如权利要求1所述的方法,其中,所述数据流包括音频数据,并且其中,所述串行通信链路包括音频链路。
11、一种设备,包括:
输入/输出(I/O)电路,其具有相关联的编码器,作为对将要发送到串行通信链路上的数据流的响应,所述编码器按照基于所述数据流的信号跃迁频率所确定的位次序对所述数据流的一个或多个位进行编码,其中,所述编码器经由对所述数据流中的位进行重新排序而形成编码后的数据流序列,其相对于所述编码之前所述数据流的所述信号跃迁频率具有更低的位跃迁数目;以及
串行通信接口,其连接到所述编码器,将所述编码后的数据序列发送到所述串行通信链路上。
12、如权利要求11所述的设备,其中,所述编码器配置为确定所述数据流的一个或多个活动因子,并且基于所确定的一个或多个活动因子对所述数据流的一个或多个位进行重排,以增大具有相同逻辑值的连续位的数目。
13、如权利要求12所述的设备,其中,所述数据流包括第一个段和第二个段,并且其中,所述编码器进一步配置为:
以第一种位次序对所述第一个段的位进行编码;
以不同于所述第一种位次序的第二种位次序对所述第二个段的位进行编码;以及
对所述编码后的第一个段和第二个段进行串行化,以形成表示所述第一个段和第二个段的位序列。
14、如权利要求13所述的设备,其中,所述编码器包括方向控制逻辑,用于控制是否应该按照所述第一种位次序和第二种位次序之一对所述第一个段和第二个段中的至少一个进行编码。
15、一种用于存储指令的机器可读介质,当通过机器执行所述指令时,使所述机器执行一种方法,所述方法包括:
作为对将要发送到串行通信链路上的数据流的响应,按照基于所述数据流的信号跃迁频率所确定的位次序对所述数据流的一个或多个位进行编码;
经由对所述数据流中的所述位进行重新排序而形成编码后数据流中的序列,其相对于所述编码之前的所述数据流的所述信号跃迁频率具有更低的位跃迁数目;以及
将所述编码后的数据序列发送到所述串行通信链路上。
16、如权利要求15所述的机器可读介质,其中,对所述数据流的一个或多个位进行编码包括:对所述数据流的一个或多个位进行重排,以增大具有相同逻辑值的连续位的数目,其中,所述数据流包括第一个段和第二个段,并且其中,对所述数据流的一个或多个位进行编码包括:
将所述第一个段和第二个段中至少一个段的一个或多个位编码成所述第一个段和第二个段内具有所述相同逻辑值的连续位的数目;以及
对所述编码后的所述第一个段和第二个段中的至少一个段进行串行化,以生成适合于发送到所述串行链路上的表示所述第一个段和第二个段的位序列。
17、如权利要求15所述的机器可读介质,其中,所述方法还包括:
以第一种位次序对所述第一个段的位进行编码;
以不同于所述第一种位次序的第二种位次序对所述第二个段的位进行编码;以及
对所述编码后的第一个段和第二个段进行串行化,以形成表示所述第一个段和第二个段的所述位序列。
18、一种数据处理系统,包括:
处理器;以及
连接到所述处理器的芯片组,所述芯片组包括:
输入/输出(I/O)电路,其具有相关联的编码器,作为对将要发送到串行通信链路上的数据流的响应,所述编码器按照基于所述数据流的信号跃迁频率所确定的位次序对所述数据流的一个或多个位进行编码,其中,所述编码器经由对所述数据流中的位进行重新排序而形成编码后的数据流序列,其相对于所述编码之前所述数据流的所述信号跃迁频率具有更低的位跃迁数目;以及
串行通信接口,其连接到所述编码器,用于将所述编码后的数据序列发送到所述串行通信链路上。
19、如权利要求18所述的系统,其中,所述编码器配置为确定所述数据流的一个或多个活动因子,并且基于所确定的一个或多个活动因子对所述数据流的一个或多个位进行重排,以增大具有相同逻辑值的连续位的数目。
20、如权利要求19所述的系统,其中,所述数据流包括第一个段和第二个段,并且其中,所述编码器进一步配置为:
以第一种位次序对所述第一个段的位进行编码;
以不同于所述第一种位次序的第二种位次序对所述第二个段的位进行编码;以及
对所述编码后的第一个段和第二个段进行串行化,以形成表示所述第一个段和第二个段的位序列。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2005/001975 WO2007059645A1 (en) | 2005-11-22 | 2005-11-22 | Signal transition feature based coding for serial link |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101292221A true CN101292221A (zh) | 2008-10-22 |
CN101292221B CN101292221B (zh) | 2012-05-30 |
Family
ID=38066886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005800518679A Expired - Fee Related CN101292221B (zh) | 2005-11-22 | 2005-11-22 | 用于串行链路的基于信号跃迁特征的编码的方法和装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7728746B2 (zh) |
JP (1) | JP4902662B2 (zh) |
KR (1) | KR100960541B1 (zh) |
CN (1) | CN101292221B (zh) |
WO (1) | WO2007059645A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102484482A (zh) * | 2008-10-29 | 2012-05-30 | 晶像股份有限公司 | 用于采用高速串行链路的存储系统的译码系统 |
CN103365814A (zh) * | 2013-06-27 | 2013-10-23 | 深圳市汇顶科技股份有限公司 | 一种串行数据传输方法及其系统 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101419495B (zh) | 2007-10-22 | 2012-05-30 | 国际商业机器公司 | 降低计算机系统中i/o功率的方法和装置,以及计算机系统 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4337458A (en) * | 1980-02-19 | 1982-06-29 | Sperry Corporation | Data encoding method and system employing two-thirds code rate with full word look-ahead |
US5244597A (en) * | 1988-05-26 | 1993-09-14 | Hoffmann-La Roche Inc. | Liquid crystalline mixtures having a chiral tilted smectic phase |
DE4105193A1 (de) | 1991-02-20 | 1992-08-27 | Bodenseewerk Geraetetech | Datenschnittstelle zur ein- und ausgabe von daten bei parallelrechnern |
JPH05135187A (ja) * | 1991-07-16 | 1993-06-01 | Hitachi Ltd | デイジタル信号処理装置 |
US5714904A (en) | 1994-06-06 | 1998-02-03 | Sun Microsystems, Inc. | High speed serial link for fully duplexed data communication |
US5625645A (en) * | 1995-07-25 | 1997-04-29 | International Business Machines Corporation | Differential pulse encoding and decoding for binary data transmissions |
US5825824A (en) * | 1995-10-05 | 1998-10-20 | Silicon Image, Inc. | DC-balanced and transition-controlled encoding method and apparatus |
CN1204924A (zh) * | 1997-04-04 | 1999-01-13 | 哈里公司 | 对数字数据流编码的格形编码器 |
US6265994B1 (en) * | 1998-01-09 | 2001-07-24 | U.S. Philips Corporation | Device for encoding/decoding n-bit source words into corresponding m-bit channel words, and vice versa |
US6034879A (en) * | 1998-02-19 | 2000-03-07 | University Of Pittsburgh | Twisted line techniques for multi-gigabit dynamic random access memories |
JP2000032082A (ja) * | 1998-07-13 | 2000-01-28 | Toyo Commun Equip Co Ltd | 通信故障監視装置 |
JP2001036590A (ja) * | 1999-07-22 | 2001-02-09 | Mitsubishi Heavy Ind Ltd | シリアル伝送装置 |
JP3841331B2 (ja) * | 2000-04-14 | 2006-11-01 | 株式会社リコー | 画像読取装置及び該画像読取装置を備えた画像処理装置 |
WO2002052546A1 (en) | 2000-12-27 | 2002-07-04 | Intel Corporation | Voice barge-in in telephony speech recognition |
US6583735B2 (en) * | 2001-02-01 | 2003-06-24 | Nec Corporation | Method and apparatus for adaptive bus coding for low power deep sub-micron designs |
US6665754B2 (en) | 2001-03-23 | 2003-12-16 | International Business Machines Corporation | Network for increasing transmit link layer core speed |
WO2002091355A1 (en) | 2001-05-08 | 2002-11-14 | Intel Corporation | High-order entropy error functions for neural classifiers |
JP4325130B2 (ja) * | 2001-06-21 | 2009-09-02 | ヤマハ株式会社 | 電子機器 |
EP1403775B1 (en) * | 2002-09-25 | 2006-03-08 | STMicroelectronics S.r.l. | Process and devices for transmiting digital signals over buses and computer program product therefor |
EP1403774B1 (en) * | 2002-09-25 | 2007-07-25 | STMicroelectronics S.r.l. | Process and devices for transmitting digital signals over buses and computer program product therefor |
JP4034172B2 (ja) * | 2002-11-20 | 2008-01-16 | Necエレクトロニクス株式会社 | エンコーダ、デコーダおよびデータ転送装置 |
US7472063B2 (en) | 2002-12-19 | 2008-12-30 | Intel Corporation | Audio-visual feature fusion and support vector machine useful for continuous speech recognition |
US7421024B2 (en) * | 2003-06-30 | 2008-09-02 | Intel Corporation | Method for transcoding MPEG encoded streams |
US7565516B2 (en) * | 2006-02-28 | 2009-07-21 | Arm Limited | Word reordering upon bus size resizing to reduce Hamming distance |
KR100782327B1 (ko) * | 2006-05-27 | 2007-12-06 | 삼성전자주식회사 | 반도체 장치 사이의 단일형 병렬데이터 인터페이스 방법,기록매체 및 반도체 장치 |
US7817068B2 (en) * | 2006-06-30 | 2010-10-19 | Intel Corporation | Low power serial link bus architecture |
-
2005
- 2005-11-22 US US10/577,677 patent/US7728746B2/en not_active Expired - Fee Related
- 2005-11-22 CN CN2005800518679A patent/CN101292221B/zh not_active Expired - Fee Related
- 2005-11-22 WO PCT/CN2005/001975 patent/WO2007059645A1/en active Application Filing
- 2005-11-22 JP JP2008540425A patent/JP4902662B2/ja not_active Expired - Fee Related
- 2005-11-22 KR KR20087012123A patent/KR100960541B1/ko not_active IP Right Cessation
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102484482A (zh) * | 2008-10-29 | 2012-05-30 | 晶像股份有限公司 | 用于采用高速串行链路的存储系统的译码系统 |
CN102484482B (zh) * | 2008-10-29 | 2015-12-02 | 美国莱迪思半导体公司 | 用于采用高速串行链路的存储系统的译码系统 |
CN103365814A (zh) * | 2013-06-27 | 2013-10-23 | 深圳市汇顶科技股份有限公司 | 一种串行数据传输方法及其系统 |
WO2014206141A1 (zh) * | 2013-06-27 | 2014-12-31 | 深圳市汇顶科技股份有限公司 | 一种串行数据传输方法及其系统 |
CN103365814B (zh) * | 2013-06-27 | 2016-08-17 | 深圳市汇顶科技股份有限公司 | 一种串行数据传输方法及其系统 |
Also Published As
Publication number | Publication date |
---|---|
JP4902662B2 (ja) | 2012-03-21 |
WO2007059645A1 (en) | 2007-05-31 |
US20090010261A1 (en) | 2009-01-08 |
KR100960541B1 (ko) | 2010-06-03 |
JP2009516272A (ja) | 2009-04-16 |
US7728746B2 (en) | 2010-06-01 |
CN101292221B (zh) | 2012-05-30 |
KR20080063519A (ko) | 2008-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6715010B2 (en) | Bus emulation apparatus | |
CN101292221B (zh) | 用于串行链路的基于信号跃迁特征的编码的方法和装置 | |
CN107454959A (zh) | 基数为n的数到物理导线状态码元的转译方法 | |
CN106063181A (zh) | 用于多线数据信号的时钟恢复电路 | |
Ahmed et al. | Design of quantum‐dot cellular automata‐based communication system using modular N‐bit binary to gray and gray to binary converters | |
US20080140987A1 (en) | System and method for context-independent codes for off-chip interconnects | |
CN113222153A (zh) | 一种量子态的模拟方法、装置、存储介质和电子装置 | |
CN113220651B (zh) | 运行数据压缩方法、装置、终端设备以及存储介质 | |
Subramaniam et al. | RETRACTED ARTICLE: Crosstalk minimization in network on chip (NoC) links with dual binary weighted code CODEC | |
Ma et al. | Algorithm for improving SNR using high voltage and differential Manchester code for capacitive touch screen panel | |
Pagliari et al. | Approximate energy-efficient encoding for serial interfaces | |
Bishop et al. | Databus charge recovery: practical considerations | |
JP4956295B2 (ja) | 半導体記憶装置 | |
CN101667836B (zh) | 信息处理设备、解码处理设备和信号传输方法 | |
CN100380296C (zh) | 电子设备的文本输入 | |
US20220197826A1 (en) | Method and apparatus for protecting a memory from a write attack | |
Saha et al. | A survey on interconnect encoding for reducing power consumption, delay, and crosstalk | |
KR101899247B1 (ko) | 동시 스위칭 잡음을 제거하는 송신기 및 이에 있어서 데이터 전송 방법 | |
US20190114143A1 (en) | Random number generating system and random number generating method thereof | |
KR20160144434A (ko) | 중첩을 통한 버스 상의 주파수 제어를 위한 시스템들 및 방법들 | |
EP1500145A1 (en) | Data communication bus | |
Chintaiah et al. | Optimized power control using adaptive bus encoding technique in data transmission | |
CN113411274B (zh) | 一种编码以及解码方法、装置、设备及介质 | |
Anirudh et al. | Nibble Based Two Bit Invert Coding Technique for Serial Network on Chip Links | |
Ahmed et al. | Modified bus invert encoding to reduce capacitive crosstalk, power and inductive noise |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120530 Termination date: 20191122 |