CN1642154B - 用于转换数据区块的数据转换装置及其方法 - Google Patents
用于转换数据区块的数据转换装置及其方法 Download PDFInfo
- Publication number
- CN1642154B CN1642154B CN 200410002084 CN200410002084A CN1642154B CN 1642154 B CN1642154 B CN 1642154B CN 200410002084 CN200410002084 CN 200410002084 CN 200410002084 A CN200410002084 A CN 200410002084A CN 1642154 B CN1642154 B CN 1642154B
- Authority
- CN
- China
- Prior art keywords
- block
- value
- control bit
- reference value
- module
- 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 - Lifetime
Links
- 238000000034 method Methods 0.000 title description 7
- 238000012545 processing Methods 0.000 claims abstract description 37
- 238000012546 transfer Methods 0.000 claims description 75
- 230000009183 running Effects 0.000 claims description 18
- 238000006243 chemical reaction Methods 0.000 claims description 17
- 238000013519 translation Methods 0.000 claims description 17
- 230000008859 change Effects 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000007704 transition Effects 0.000 description 7
- 238000007792 addition Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 208000032365 Electromagnetic interference Diseases 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
Images
Abstract
本发明提供一种数据转换装置用以转换第一数据区块,成为第二数据区块。第一数据区块系由预定数量个位所组成。数据转换装置包含控制位模块、处理模块及选择模块。控制位模块产生多个控制位集合,其中每一控制位集合代表第一数据区块的一种转换方式。处理模块接收并依据第一数据区块与这些控制位集合,产生多个第一参考值。选择模块连接处理模块,并藉由这些第一参考值及一预定判断值,产生第二数据区块。
Description
技术领域
本发明涉及一种数据转换装置及其方法,特别是涉及用于转换数据区块的数据转换装置及其方法。
背景技术
在数据(data)处理或数据传输上,降低电磁干扰(ElectromagneticInterference,EMI)及实现直流平衡(DC balance)一直是重要的研发课题。EMI太高将干扰其它电路系统的电子讯号,造成噪声(noise)。在一些数字传输系统上,常直接传输两种符号(symbol)分别表示逻辑0及逻辑1,又常以电压高低表示之。为了抑制电磁干扰,逻辑0及逻辑1之间的切换(transition),不宜太过频繁。直流平衡可促使电子讯号的电位总和维持在约略零电位的水平,因而形成稳定的参考电压。
请参阅图1,图1是已知字节(byte)10的转换装置12的示意图。美国专利第5,825,824号披露了已知字节10的转换装置12,用以转换字节10,以产生符合低切换率(low transition)及直流平衡的一数据区块14。转换装置(transform module)12包含一第一处理模块16及一第二处理模块18。第一处理模块16计算字节10中相邻的两个位(bit)的一切换(transition)次数,并依据该切换次数及一预先决定的标准值,决定是否对字节10进行间隔位反相(Conditional Alternate Bit Inversion,CABI)运算。所谓CABI运算用以对字节10中的偶数位进行反相。字节10不论是否进行CABI运算,均输出成为一中间字节20及产生一切换位(transition bit)22。
第二处理模块18计算中间字节20中1的个数值及0的个数值的差值(difference),产生一个数差值,并依据该个数差值及一差异累积值,决定是否对中间字节20进行字节反相(Conditional Byte Inversion,CTBI)运算。所谓CTBI运算用以对中间字节20中的全部位进行反相。中间字节20不论是否进行CTBI运算,均输出成为一输出字节24及产生一标示位26。第二处理模块18并于输出字节24产生前,事先计算输出字节24中1的个数及0的个数的差值,产生一对应个数差值,并将该对应个数差值及该差异累积值相加成为下一笔的该差异累积值。
切换位22、标示位26及输出字节24最后构成数据区块14。
然而第一处理模块16在计算该切换次数、以及第二处理模块18在计算该个数差值时,均未考虑到切换位22及标示位26本身造成的影响,而最后输出的数据区块14却包含有切换位22及标示位26,如此将导致第一处理模块16在决定是否进行CABI运算、以及第二处理模块18在决定是否进行CTBI运算时,无法做出最佳的判断,而使转换装置12所产生的数据区块14无法达到最佳的低切换率及直流平衡。
发明内容
本发明的主要目的是提供一种数据转换装置,以解决已知技术所遭遇的问题。
本发明的数据转换装置用以转换第一数据区块,成为第二数据区块.第一数据区块由一第一预定数量个位(bit)所组成.数据转换装置包含一控制位模块、一处理模块及一选择模块.控制位模块用以产生多个控制位集合(set),其中每一控制位集合代表第一数据区块的一种转换方式.处理模块用以接收并依据第一数据区块与多个控制位集合,产生多个第一参考值.选择模块连接处理模块,并藉由多个第一参考值及一预定判断值,产生第二数据区块.
本发明的数据转换装置可将第一数据区块(data block)转换(transform)为低切换率及实现直流平衡的第二数据区块。数据转换装置在第二数据区块产生前,预先估算第二数据区块在产生后,可能对切换率及直流平衡的影响,再基于估算结果对第一数据区块进行转换。因此本发明的数据转换装置所产生的第二数据区块于输出后,能确实符合低切换率及实现直流平衡。
本发明提供了一种数据转换装置,用以转换一第一数据区块,成为一第二数据区块,该第一数据区块是由一第一预定数量个位所组成,该数据转换装置包含:一控制位模块,用以产生多个控制位集合,其中每一控制位集合代表该第一数据区块的一种位反相方式;一处理模块,用以接收并依据该第一数据区块与该多个控制位集合,产生多个第三数据区块及多个第一参考值,其中每一第三数据区块包含该多个控制位集合中一对应控制位集合及一转换数据区块,该转换数据区块是由该对应控制位集合与该第一数据区块所产生;以及一选择模块,连接该处理模块,该选择模块接收该多个第一参考值及该多个第三数据区块,并藉由一预定判断值,自该多个第三数据区块中择一以产生该第二数据区块;其中,每一第一参考值包含该切换参考值及一差异参考值,该切换参考值是每一第一参考值所对应的第三数据区块中,相邻的两个位的切换次数;该差异参考值是每一第一参考值所对应的第三数据区块中,一预定位值的个数与一预定常数值的差值;以及该预定判断值是前一笔预定判断值与前一笔的第二数据区块所对应的差异参考值的和,当仅有一笔第一数据区块时,该预定判断值为零。
本发明还提供了一种数据转换装置,用以转换一第一数据区块,成为一第二数据区块,该第一数据区块由一第一预定数量个位所组成,该数据转换装置包含:一控制位模块,用以产生多个控制位集合,其中每一控制位集合代表该第一数据区块的一种转换方式;一处理模块,用以接收并依据该第一数据区块、该多个控制位集合与前一笔的选择参考值,产生多个第一参考值;以及一选择模块,连接该处理模块,并藉由该多个第一参考值、一预定判断值及第一数据区块,从多个第一参考值中选择出一选择参考值,并从该多个控制位集合中决定出与该选择参考值相对应的一选择控制位集合,以及该选择模块根据该选择控制位集合及第一数据区块,产生该第二数据区块;其中,该多个第一参考值藉由多个预定计算公式所产生,其中该多个预定计算公式中的每一公式对应该多个控制位集合中的一个控制位集合;该预定判断值是该第一数据区块中相邻的两个位的切换次数;以及当只有一笔第一数据区块时,前一笔的该选择参考值为零。
本发明还提供了一种数据转换方法,用以转换一第一数据区块,成为一第二数据区块,该第一数据区块由一第一预定数量个位所组成,该数据转换方法包含:产生多个控制位集合,该多个控制位集合中的每一控制位集合代表该第一数据区块的一位反相方式;依据该第一数据区块及该多个控制位集合,产生多个第三数据区块,其中每一第三数据区块包含该多个控制位集合中一对应控制位集合及一转换数据区块,该转换数据区块是由该对应控制位集合与该第一数据区块所产生;依据该多个第三数据区块,产生相对应的多个第一参考值;以及依据该多个第一参考值及一预定判断值,从该多个第三数据区块中择一以产生该第二数据区块;其中,每一第一参考值包含该切换参考值及一差异参考值,该切换参考值是每一第一参考值所对应的第三数据区块中,相邻的两个位的切换次数;该差异参考值是每一第一参考值所对应的第三数据区块中,一预定位值的个数与一预定常数值的差值;以及该预定判断值是前一笔预定判断值与前一笔的第一数据区块所对应的差异参考值的和,当仅有一笔第一数据区块时,该预定判断值为零.
本发明还提供了一种数据转换方法,用以将一第一数据区块,转换为一第二数据区块,该第一数据区块由一第一预定数量个位所组成,该数据转换方法包含:产生多个控制位集合,该多个控制位集合中的每一控制位集合系代表该第一数据区块的一位反相方式;依据该第一数据区块,产生一位统计值;依据该位统计值及一差异累积值,并藉由多个预定计算公式,产生相对应的多个第一参考值,该多个预定计算公式中的每一公式相对应该多个控制位集合中的一个控制位集合;依据该第一数据区块,产生一预定判断值;依据该多个第一参考值、该预定判断值及该第一数据区块,从该多个第一参考值中选择出一选择参考值,并从该多个控制位集合中决定出与该选择参考值相对应的一选择控制位集合;以及依据该选择控制位集合及该第一数据区块,产生该第二数据区块;其中,该预定判断值为该第一数据区块中相邻的两个位的切换次数;该差异累积值为前一笔的选择参考值,当只有一笔第一数据区块时,该差异累积值为零。
关于本发明的优点与精神可以藉由以下结合附图对发明的详述得到进一步的了解。
附图说明
图1是已知字节的转换装置的示意图;
图2是本发明第一实施例的数据转换装置的示意图;
图3是本发明第二实施例的数据转换装置的示意图;
图4是图3的数据转换装置进行数据转换的流程图;
图5是本发明另一实施例的数据转换装置的示意图;
图6是图5中判断模块进行判断的流程图;和
图7是图5的数据转换装置进行数据转换的流程图。
附图标号说明
10:字节 12:转换装置
14:数据区块 16:第一处理模块
18:第二处理模块 20:中间字节
22:切换位 24:输出字节
26:标示位 30:数据转换装置
32:第一数据区块 34:第二数据区块
36:控制位模块 38:处理模块
40:选择模块 42:控制位集合
44:第一参考值 46:预定判断值
48:判断值产生模块 50:数据转换装置
52:处理模块 54:转换模块
56:计数模块 58:间隔位反相模块
60:字节反相模块 62:第三数据区块
64:第一参考值 66:切换参考值
68:差异参考值 70:选择模块
72:预定判断值 74:判断值产生模块
80:数据转换装置 82:处理模块
84:位计数模块 86:累计模块
88:计算模块 90:选择模块
92:切换计数模块 94:判断模块
96:产生模块 98:位统计值
200:奇数位值 202:偶数位值
204:差异累积值 206:第一参考值
208:预定判断值 210:选择参考值
212:选择控制位集合 214:第四数据区块
61:转换数据区块
具体实施方式
请参阅图2,图2是本发明第一实施例的数据转换装置30的示意图。本实施例的数据转换装置30用以转换一第一数据区块(data block)32,成为一第二数据区块34。第一数据区块32是由一第一预定数量个位(bit)(图未显示)所组成,表示为F[7:0],第二数据区块34表示为E[9:0]。数据转换装置30包含一控制位模块36、一处理模块38及一选择模块40。
控制位模块36用以产生多个控制位集合(set)42。多个控制位集合42中的每一控制位集合42代表第一数据区块32的一种转换方式。本实施例中,多个控制位集合42中的其中一个控制位集合42表示为C[1:0]。处理模块38用以接收并依据第一数据区块32与多个控制位集合42,产生多个第一参考值44。选择模块40连接处理模块38,并藉由多个第一参考值44及一预定判断值46,产生第二数据区块34(E[9:0])。预定判断值46是由一包含于选择模块40中的一判断值产生模块48所产生。
请参阅图3,图3是本发明第二实施例的数据转换装置50的示意图。数据转换装置50中,处理模块52包含一转换模块54及一计数模块56。转换模块54包含一间隔位反相(Conditional Alternate Bit Inversion,CABI)模块58及一字节反相(Conditional Byte Inversion,CTBI)模块60。
转换模块54用以接收并依据第一数据区块32(F[7:0])及多个控制位集合42(C[1:0]),产生多个第三数据区块62。这些第三数据区块62中,每一个第三数据区块62表示为T[9:0],且每一第三数据区块62(T[9:0])包含多个控制位集合42中一对应控制位集合42及一转换数据区块61。对应控制位集合42(C[1:0])成为T[9:8];转换数据区块61为T[7:0]。转换数据区块61由对应控制位集合42与第一数据区块32(F[7:0])所产生。
转换模块54中,CABI模块58用以将其所接收的数据中,相间隔一个位的位反相(inversation);CTBI模块60用以将其所接收的数据中,所有的位反相。每一第三数据区块62(T[9:0])的对应控制位集合42可选择性地控制CABI模块58及CTBI模块60均不运作、其中一个运作、或是均运作,使转换模块54依据对应控制位集合42(C[1:0])与第一数据区块32(F[7:0])产生每一第三数据区块的转换数据区块61。
以本实施例为例,在这些控制位集合42的每一控制位集合42(C[1:0])中,若C[1]=0,代表CABI模块58不运作;若C[1]=1,则代表CABI模块58运作。若C[0]=0,代表CTBI模块60不运作;若C[0]=1,则代表CTBI模块60运作。因此每一第三数据区块62(T[9:0])的对应控制位集合42若为{0,0},则CABI模块58及CTBI模块60均不运作,即F[7:0]不经任何转换就直接输出为T[7:0]。同理,若为{1,0},则表示F[7:0]只经过CABI模块58的转换后即输出为T[7:0]。若为{0,1},表示F[7:0]只经过CTBI模块60的转换后即输出为T[7:0]。若为{1,1},则表示F[7:0]先经过CABI模块58的转换后再经过CTBI模块60的转换,才输出为T[7:0]。
图3所示的数据转换装置50中,计数模块56接收多个第三数据区块62(T[9:0])(由T[7:0]以及C[1:0]组合而成),产生相对应的多个第一参考值64。每一第一参考值64包含一切换参考值66及一差异参考值68。切换参考值66是每一第一参考值所对应的第三数据区块62(T[9:0])中,相邻的两个位的切换(transition)次数。差异参考值68是每一第一参考值所对应的第三数据区块62(T[9:0])中,一预定位值(图未显示)的个数与一预定常数值(图未显示)的差值(difference)。计数模块56计算每一第一参考值64所对应的第三数据区块62(T[9:0])中,相邻的两个位的切换(transition)次数以及该预定位值的个数与该预定常数值的差值(difference),分别相对产生切换参考值66及产生差异参考值68。在此实施例中,该预定位值是指所对应的T[9:0]中1的个数,该预定常数值系为5,即为T[9:0]中位数目的一半。
选择模块70所产生的第二数据区块34(E[9:0])自多个第三数据区块62(T[9:0])中择一。选择模块70在接收多个第一参考值64及多个第三数据区块62(T[9:0])后,首先判断切换参考值66是否大于或等于一默认值。在此实施例中,该默认值为5。选择模块70舍弃大于或等于该默认值的切换参考值66所对应的第一参考值64,之后将每一被保留的第一参考值64的差异参考值68与预定判断值72相加,输出相加的和最小的差异参考值68所对应的第三数据区块62(T[9:0]),以成为第二数据区块34(E[9:0])。
选择模块70中,判断值产生模块74会产生预定判断值72。判断值产生模块74藉由下列公式1,产生预定判断值72。
公式1:Sn=Sn-1+Dn-1;其中Sn为预定判断值72,Sn-1为前一笔的预定判断值72,Dn-1为前一笔的第二数据区块34(E[9:0])所对应的差异参考值68。
数据转换装置50一般应用于连续转换多个第一数据区块32(F[7:0]),成为相对应的多个第二数据区块34(E[9:0]),因此本笔的预定判断值72为前一笔的预定判断值72与前一笔的第二数据区块34(E[9:0])所对应的差异参考值68的和。若仅有一笔的第一数据区块32(F[7:0])需处理,则S0=D0=0。
请参阅图4,图4是图3的数据转换装置50进行数据转换的流程图。数据转换装置50进行数据转换的流程步骤包含下列步骤:
步骤S100:产生多个控制位集合42及预定判断值72。
步骤S105:依据第一数据区块32(F[7:0])及多个控制位集合42(C[1:0]),产生多个第三数据区块62(T[9:0])。
步骤S110:依据多个第三数据区块62(T[9:0]),产生相对应的多个第一参考值64。
步骤S115:依据多个第一参考值64及预定判断值72,从多个第三数据区块62(T[9:0])中选择出第二数据区块34(E[9:0])。
请再参阅图3。数据转换装置50的转换模块54中,C[1]用以代表CABI模块58运作与否,并且C[0]用以代表CTBI模块60运作与否。在另一实施例中,C[1]可用来代表CTBI模块60的运作与否,并且C[0]用来代表CABI模块58的运作与否;对F[7:0]处理方式则相同。
请参阅图5,图5是本发明另一实施例的数据转换装置80的示意图。数据转换装置80中,处理模块82包含一位计数模块84、一累计模块86及一计算模块88。选择模块90包含一切换计数模块92、一判断模块94及一产生模块96。产生模块96包含间隔位反相(conditional alternate bitinversion)模块58及字节反相(conditional byte inversion)模块60。
位计数模块84接收第一数据区块32(F[7:0]),并产生一位统计值98。位统计值98为第一数据区块32(F[7:0])中的该预定位值(图未显示)的个数。位统计值98包含一奇数位值200及一偶数位值202,其中奇数位值200为F[7]、F[5]、F[3]及F[1]中1的个数;偶数位值202为F[6]、F[4]、F[2]及F[0]中1的个数。累计模块86产生一差异累积值204,至于差异累积值204产生方式详述于后。计算模块88接收位统计值98及差异累积值204,并藉由多个预定计算公式(图未显示),产生相对应的多个第一参考值206。该多个预定计算公式中的每一公式相对应多个控制位集合42中的一个控制位集合42。
在这些控制位集合42的每一控制位集合42(C[1:0])中,C[1]代表CTBI模块60的运作与否,C[0]代表CABI模块58的运作与否。多个控制位集合42共计有{0,0}、{1,0}、{0,1}及{1,1}四种形式。至于每一种形式的控制位集合42代表CABI模块58及CTBI模块60的运作方式如同数据转换装置50中所述,在此不再赘述。
数据转换装置80中,计算模块88接收位统计值98及差异累积值204,并藉由多个预定计算公式产生相对应的多个第一参考值206。这些预定计算公式包含下列公式2至5:
公式2:S00=S+Ca+Cb-5;其中S00代表对应{0,0}的第一参考值206,S代表差异累积值204,Ca代表奇数位值200,Cb代表偶数位值202。
公式3:S01=S+Ca+Cb;其中S01代表对应{0,1}的第一参考值206。
公式4:S10=S-Ca-Cb+4;其中S10代表对应{1,0}的第一参考值206。
公式5:S11=S-Ca+Cb+1;其中S11代表对应{1,1}的第一参考值206。
在公式2至公式5中,产生模块96仿真依据每一公式相对应的控制位集合42,将第一数据区块32(F[7:0])转换为虚拟的第二数据区块34(E[9:0]),每一公式中等号右侧非S的部份是计算虚拟的第二数据区块34(E[9:0])的一差异参考值.该差异参考值系根据虚拟的第二数据区块34(E[9:0])而产生,不同于数据转换装置50的实施例中,差异参考值68是依据第三数据区块62(T[9:0])而产生,但两者所代表的意义相同,在此不再赘述.
图5所示的数据转换装置80中,切换计数模块92依据第一数据区块32(F[7:0]),产生预定判断值208,其中预定判断值208为第一数据区块32(F[7:0])中相邻的两个位的切换(transition)次数。判断模块94则基于多个第一参考值206、预定判断值208及第一数据区块32(F[7:0]),从多个第一参考值206中选择出一选择参考值210,并从多个控制位集合42决定出与选择参考值210相对应的一选择控制位集合(C[1:0])212。
请参阅表1,表1是图5中数据转换装置80的预算数值表。在数据转换装置80的实施例中,下述公式6至公式9被用来将每一虚拟的第二数据区块34(E[9:0])所有可能产生的一切换参考值计算出来。
表1
m=1 | T=0 | T=1 | T=2 | T=3 | T=4 | T=5 | T=6 | T=7 |
T<sub>00</sub> | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
T<sub>01</sub> | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
T<sub>10</sub> | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
T<sub>11</sub> | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
m=0 | T=0 | T01 | T=2 | T=3 | T=4 | T=5 | T=6 | T=7 |
T<sub>00</sub> | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
T<sub>01</sub> | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 |
T<sub>10</sub> | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
T<sub>11</sub> | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
公式6:T00=T+m;其中T00代表对应{0,0}的该切换参考值,T代表预定判断值208,m代表F[7]。
公式7:T01=9-T-m;其中T01代表对应{0,1}的该切换参考值。
公式8:T10=2+T-m;其中T10代表对应{1,0}的该切换参考值。
公式9:T11=7-T+m;其中T11代表对应{1,1}的该切换参考值。
在数据转换装置80的实施例中,该切换参考值是依据虚拟的第二数据区块34(E[9:0])而产生,不同于数据转换装置50的实施例中,切换参考值66是依据第三数据区块62(T[9:0])而产生,但两者所代表的意义相同,在此不再赘述。
请参阅表2,表2是表1中舍弃大于5的切换参考值的数值表。当得知m及T后,即可利用表2查出一未被舍弃的切换参考值,并藉由公式2至公式5计算该未被舍弃的切换参考值的对应控制位集合42所相对应的第一参考值206。
表2
请参阅图6,图是图5中判断模块94进行判断的流程图。在计算出每一第一参考值206后,判断模块94将基于多个第一参考值206、预定判断值208及第一数据区块32(F[7:0]),进行判断。判断模块94的判断流程包含下列步骤:
步骤S120:判断F[7:0]中F[7]的数值,若为0,则进行步骤125,若为1则进行步骤130。
步骤S125:判断预定判断值208,若小于2,则选取S00及S10;若大于或等于2及小于4,则选取S00、S10及S11;若大于或等于4及小于6,则选取S00、S01及S11,若大于或等于6,则选取S01及S11;于选取完毕后进行步骤135。
步骤S130:判断预定判断值208,若小于3,则选取S00及S10,若大于或等于3及小于5,则选取S00、S01、S10及S11,若大于或等于5,则选取S01及S11。
步骤S135:从所选取的第一参考值206中,留下数值最接近0的第一参考值206,成为选择参考值210,其余舍弃。
步骤S140:从多个控制位集合42中决定出与选择参考值210相对应的选择控制位集合212.
在数据转换装置80中,产生模块96接收选择控制位集合212及第一数据区块32(F[7:0]),产生第二数据区块34(E[9:0])。产生模块96包含CTBI模块60及CABI模块58。选择控制位集合212选择性地控制CTBI模块60及CABI模块58均不运作、其中一个运作或均运作。亦即选择控制位集合(C[1:0])212中,若C[1]=0,则CTBI模块60不运作;若C[1]=1,则CTBI模块60运作。若C[0]=0,则CABI模块58不运作;若C[0]=1,则CABI模块58运作。因此在选择控制位集合212的控制下,第一数据区块32(F[7:0])先经过CTBI模块60,再经过CABI模块58后,将转换成为一第四数据区块214。最后,第四数据区块214及选择控制位集合212合并为第二数据区块34(E[9:0])。
在数据转换装置80的实施例中,一般均应用于连续转换多个第一数据区块32(F[7:0]),成为相对应的多个第二数据区块34(E[9:0]),因此本笔的差异累积值204为前一笔的选择参考值210,本笔的选择参考值210是输出为下一笔的差异累积值204。若只有一笔的第一数据区块32(F[7:0])需处理,则差异累积值204为0。
请参阅图7,图7是图5的数据转换装置80进行数据转换的流程图。数据转换装置80的运作流程步骤如下:
步骤S145:产生多个控制位集合42及差异累积值204。
步骤S150:依据第一数据区块32(F[7:0]),产生位统计值98及预定判断值208。
步骤S155:依据位统计值98及差异累积值204,并藉由该多个预定计算公式,产生相对应的多个第一参考值206。
步骤S160:依据多个第一参考值206、预定判断值208及第一数据区块32(F[7:0]),从多个第一参考值206中选择出选择参考值210,并从多个控制位集合42中决定出与选择参考值210相对应的选择控制位集合212。
步骤S165:选择参考值210输出成为下一笔的差异累积值204。
步骤S170:依据选择控制位集合212及第一数据区块32(F[7:0]),产生第二数据区块34(E[9:0])。
请再参阅图5。数据转换装置80的选择控制位集合212中,C[1]用以代表CTBI模块60运作与否,并且C[0]用以代表CABI模块58运作与否,并且利用公式2至5计算出第一参考值206,利用公式6至9计算出该切换参考值。Z另一实施例中(未显示于图式),C[1]可用来代表CABI模块58的运作与否,并且C[0]用来代表CTBI模块60的运作与否。至于其第一参考值及切换参考值的计算方式则与数据转换装置80的实施例略有不同,其中,公式3、公式4、公式7、及公式8分别修改为公式3A、公式4A、公式7A、及公式8A,如下列所示。其余的处理方式同理于数据转换装置80的实施例,在此不再赘述。
公式3A:S01=S-Ca-Cb+4,其中S01代表对应{0,1}的第一参考值206。
公式4A:S10=S+Ca+Cb,其中S10代表对应{1,0}的第一参考值206。
公式7A:T01=2+T-m,其中T01代表对应{0,1}的该切换参考值。
公式8A:T10=9-T-m,其中T10代表对应{1,0}的该切换参考值。
本发明的数据转换装置30、50、80是在第二数据区块34(E[9:0])产生前,预先估算第二数据区块34(E[9:0])在产生后,可能对低切换率以及直流平衡的影响,再基于估算结果对第一数据区块32(F[7:0])进行转换.因此本发明的数据转换装置所产生的第二数据区块34(E[9:0])在输出后,能确实符合低切换率及达成直流平衡.
藉由以上较佳具体实施例的详述,是希望能更加清楚描述本发明的特征与精神,而并非以上述所披露的较佳具体实施例来对本发明的范畴加以限制。相反地,其目的是希望能涵盖各种改变及具相等性的安排于本发明的权利要求的范畴内。
Claims (16)
1.一种数据转换装置,用以转换一第一数据区块,成为一第二数据区块,该第一数据区块是由一第一预定数量个位所组成,该数据转换装置包含:
一控制位模块,用以产生多个控制位集合,其中每一控制位集合代表该第一数据区块的一种位反相方式;
一处理模块,用以接收并依据该第一数据区块与该多个控制位集合,产生多个第三数据区块及多个第一参考值,其中每一第三数据区块包含该多个控制位集合中一对应控制位集合及一转换数据区块,该转换数据区块是由该对应控制位集合与该第一数据区块所产生;以及
一选择模块,连接该处理模块,该选择模块接收该多个第一参考值及该多个第三数据区块,并藉由一预定判断值,自该多个第三数据区块中择一以产生该第二数据区块;
其中,每一第一参考值包含该切换参考值及一差异参考值,该切换参考值是每一第一参考值所对应的第三数据区块中,相邻的两个位的切换次数;该差异参考值是每一第一参考值所对应的第三数据区块中,一预定位值的个数与一预定常数值的差值;以及该预定判断值是前一笔预定判断值与前一笔的第二数据区块所对应的差异参考值的和,当仅有一笔第一数据区块时,该预定判断值为零。
2.如权利要求1所述的数据转换装置,该处理模块包含:
一转换模块,用以接收并依据该第一数据区块及该多个控制位集合,产生多个第三数据区块;以及
一计数模块,接收该多个第三数据区块,产生相对应的该多个第一参考值。
3.如权利要求2所述的数据转换装置,该转换模块进一步包含一间隔位反相模块及一字节反相模块,其中每一第三数据区块的该对应控制位集合选择性地控制该间隔位反相模块及该字节反相模块均不运作、其中一个运作、或是均运作,使该转换模块依据该对应控制位集合与该第一数据区块产生每一第三数据区块的该转换数据区块。
4.如权利要求3所述的数据转换装置,其中该选择模块判断该多个第一参考值中的切换参考值是否大于或等于一默认值,并舍弃大于或等于该默认值的该切换参考值所对应的第一参考值。
5.如权利要求1所述的数据转换装置,该选择模块将每一保留的第一参考值的差异参考值与该预定判断值相加,输出相加的和最小的差异参考值所对应的第三数据区块,以成为该第二数据区块。
6.一种数据转换装置,用以转换一第一数据区块,成为一第二数据区块,该第一数据区块是由一第一预定数量个位所组成,该数据转换装置包含:
一控制位模块,用以产生多个控制位集合,其中每一控制位集合代表该第一数据区块的一种转换方式;
一处理模块,用以接收并依据该第一数据区块、该多个控制位集合与前一笔的选择参考值,产生多个第一参考值;以及
一选择模块,连接该处理模块,并藉由该多个第一参考值、一预定判断值及第一数据区块,从多个第一参考值中选择出一选择参考值,并从该多个控制位集合中决定出与该选择参考值相对应的一选择控制位集合,以及该选择模块根据该选择控制位集合及第一数据区块,产生该第二数据区块;
其中,该多个第一参考值藉由多个预定计算公式所产生,其中该多个预定计算公式中的每一公式对应该多个控制位集合中的一个控制位集合;该预定判断值是该第一数据区块中相邻的两个位的切换次数;以及当只有一笔第一数据区块时,前一笔的该选择参考值为零。
7.如权利要求6所述的数据转换装置,该处理模块包含:
一位计数模块,接收该第一数据区块,产生一位统计值;
一累计模块,用以产生一差异累积值;以及
一计算模块,接收该位统计值及该差异累积值,并藉由多个预定计算公式,产生相对应的该多个第一参考值,其中该多个预定计算公式中的每一公式相对应该多个控制位集合中的一个控制位集合。
8.如权利要求7所述的数据转换装置,该选择模块包含:
一切换计数模块,依据该第一数据区块,产生一预定判断值;
一判断模块,基于该多个第一参考值、该预定判断值及该第一数据区块,从该多个第一参考值中选择出该选择参考值,并从该多个控制位集合决定出与该选择参考值相对应的一选择控制位集合;以及
一产生模块,接收该选择控制位集合及该第一数据区块,产生该第二数据区块。
9.如权利要求8所述的数据转换装置,该产生模块包含一间隔位反相模块及一字节反相模块,其中该选择控制位集合选择性地控制该间隔位反相模块及该字节反相模块均不运作、其中一个运作或均运作。
10.如权利要求9所述的数据转换装置,该位统计值包含该第一数据区块中一预定位值的个数。
11.一种数据转换方法,用以转换一第一数据区块,成为一第二数据区块,该第一数据区块由一第一预定数量个位所组成,该数据转换方法包含:
产生多个控制位集合,该多个控制位集合中的每一控制位集合代表该第一数据区块的一位反相方式;
依据该第一数据区块及该多个控制位集合,产生多个第三数据区块,其中每一第三数据区块包含该多个控制位集合中一对应控制位集合及一转换数据区块,该转换数据区块是由该对应控制位集合与该第一数据区块所产生;
依据该多个第三数据区块,产生相对应的多个第一参考值;以及
依据该多个第一参考值及一预定判断值,从该多个第三数据区块中择一以产生该第二数据区块;
其中,每一第一参考值包含该切换参考值及一差异参考值,该切换参考值是每一第一参考值所对应的第三数据区块中,相邻的两个位的切换次数;该差异参考值是每一第一参考值所对应的第三数据区块中,一预定位值的个数与一预定常数值的差值;以及该预定判断值是前一笔预定判断值与前一笔的第一数据区块所对应的差异参考值的和,当仅有一笔第一数据区块时,该预定判断值为零。
12.如权利要求11所述的数据转换方法,其中该每一第三数据区块的该对应控制位集合选择性地控制该第一数据区块中该第一预定数量个位使其均不反相、相间隔的位反相、所有位均反相、先将相间隔的位反相然后所有位再反相、或是先将所有位反相然后再相间隔的位反相,因而产生该转换数据区块.
13.如权利要求12所述的数据转换方法,进一步判断该多个第一参考值中的切换参考值是否大于或等于一默认值,并舍弃大于或等于该默认值的该切换参考值所对应的第一参考值。
14.如权利要求11所述的数据转换方法,其中将每一保留的该第一参考值的差异参考值与该预定判断值相加,输出相加的和最小的差异参考值所对应的第三数据区块,以成为该第二数据区块。
15.一种数据转换方法,用以将一第一数据区块,转换为一第二数据区块,该第一数据区块由一第一预定数量个位所组成,该数据转换方法包含:
产生多个控制位集合,该多个控制位集合中的每一控制位集合系代表该第一数据区块的一位反相方式;
依据该第一数据区块,产生一位统计值;
依据该位统计值及一差异累积值,并藉由多个预定计算公式,产生相对应的多个第一参考值,该多个预定计算公式中的每一公式相对应该多个控制位集合中的一个控制位集合;
依据该第一数据区块,产生一预定判断值;
依据该多个第一参考值、该预定判断值及该第一数据区块,从该多个第一参考值中选择出一选择参考值,并从该多个控制位集合中决定出与该选择参考值相对应的一选择控制位集合;以及
依据该选择控制位集合及该第一数据区块,产生该第二数据区块;
其中,该预定判断值为该第一数据区块中相邻的两个位的切换次数;该差异累积值为前一笔的选择参考值,当只有一笔第一数据区块时,该差异累积值为零。
16.如权利要求15所述的数据转换方法,该位统计值是该第一数据区块中一预定位值的个数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410002084 CN1642154B (zh) | 2004-01-12 | 2004-01-12 | 用于转换数据区块的数据转换装置及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200410002084 CN1642154B (zh) | 2004-01-12 | 2004-01-12 | 用于转换数据区块的数据转换装置及其方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1642154A CN1642154A (zh) | 2005-07-20 |
CN1642154B true CN1642154B (zh) | 2010-05-12 |
Family
ID=34867268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200410002084 Expired - Lifetime CN1642154B (zh) | 2004-01-12 | 2004-01-12 | 用于转换数据区块的数据转换装置及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1642154B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN85103698A (zh) * | 1984-06-22 | 1986-11-12 | 北方电信有限公司 | 发送数字信号和附加信号 |
US5200979A (en) * | 1991-06-06 | 1993-04-06 | Northern Telecom Limited | High speed telecommunication system using a novel line code |
US5438621A (en) * | 1988-11-02 | 1995-08-01 | Hewlett-Packard Company | DC-free line code and bit and frame synchronization for arbitrary data transmission |
US5625644A (en) * | 1991-12-20 | 1997-04-29 | Myers; David J. | DC balanced 4B/8B binary block code for digital data communications |
GB2334188A (en) * | 1998-02-05 | 1999-08-11 | Motorola Gmbh | Direct current (dc) balancing in an ac coupled system |
US6044053A (en) * | 1996-12-10 | 2000-03-28 | Sony Corporation | Dc-balance-value calculation circuit and recording signal generator using the same |
US6195764B1 (en) * | 1997-01-30 | 2001-02-27 | Fujitsu Network Communications, Inc. | Data encoder/decoder for a high speed serial link |
-
2004
- 2004-01-12 CN CN 200410002084 patent/CN1642154B/zh not_active Expired - Lifetime
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN85103698A (zh) * | 1984-06-22 | 1986-11-12 | 北方电信有限公司 | 发送数字信号和附加信号 |
US5438621A (en) * | 1988-11-02 | 1995-08-01 | Hewlett-Packard Company | DC-free line code and bit and frame synchronization for arbitrary data transmission |
US5200979A (en) * | 1991-06-06 | 1993-04-06 | Northern Telecom Limited | High speed telecommunication system using a novel line code |
US5625644A (en) * | 1991-12-20 | 1997-04-29 | Myers; David J. | DC balanced 4B/8B binary block code for digital data communications |
US6044053A (en) * | 1996-12-10 | 2000-03-28 | Sony Corporation | Dc-balance-value calculation circuit and recording signal generator using the same |
US6195764B1 (en) * | 1997-01-30 | 2001-02-27 | Fujitsu Network Communications, Inc. | Data encoder/decoder for a high speed serial link |
GB2334188A (en) * | 1998-02-05 | 1999-08-11 | Motorola Gmbh | Direct current (dc) balancing in an ac coupled system |
Also Published As
Publication number | Publication date |
---|---|
CN1642154A (zh) | 2005-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2926260B1 (en) | Methods and systems for chip-to-chip communication with reduced simultaneous switching noise | |
CN101510781B (zh) | 交织和解交织处理中哑元的填充方法和装置及处理系统 | |
KR100449963B1 (ko) | 가산 회로 및 이를 구비한 승산 회로 | |
US9362962B2 (en) | Methods and systems for energy-efficient communications interface | |
CN101241482B (zh) | 数据总线的转位装置及执行数据总线转位的方法 | |
CN1642154B (zh) | 用于转换数据区块的数据转换装置及其方法 | |
CN107220463B (zh) | 一种混合极性xnor/or电路面积优化方法 | |
US20050200388A1 (en) | Delay-insensitive data transfer circuit using current-mode multiple-valued logic | |
CN210724719U (zh) | 一种矩阵开关控制系统 | |
US20120309544A1 (en) | Method for Synchronizing Character Object Information by Classified Data Type | |
CN101834704B (zh) | 高性能抗串扰时空总线编解码方法及其编解码装置 | |
CN115307274B (zh) | 控制空调系统的主机的方法、设备和存储介质 | |
CN110337658A (zh) | 神经网络加速装置与方法 | |
US4837791A (en) | Counter | |
CN103428502A (zh) | 一种解码方法及解码系统 | |
Lin et al. | Weight-based bus-invert coding for low-power applications | |
Pandey et al. | Comparative analysis of carry select adder using 8T and 10T full adder cells | |
JP2001077870A (ja) | 多値信号伝送システム | |
US5740459A (en) | Method and circuit for sorting data in a fuzzy inference data processing system | |
US5748490A (en) | Low power logic minimization for electrical circuits | |
US20020032894A1 (en) | Design method for logic circuit, design support system for logic circuit and readable media | |
TWI295431B (en) | Data transformation apparatus and method for transforming data block | |
CN104679216B (zh) | 一种数据路径装置及其控制方法 | |
CN110297798B (zh) | 具有公英制转换功能的嵌入式系统及其公英制转换方法 | |
CN100551021C (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 | ||
CX01 | Expiry of patent term |
Granted publication date: 20100512 |
|
CX01 | Expiry of patent term |