CN1106081C - 译码电路 - Google Patents

译码电路 Download PDF

Info

Publication number
CN1106081C
CN1106081C CN97114750A CN97114750A CN1106081C CN 1106081 C CN1106081 C CN 1106081C CN 97114750 A CN97114750 A CN 97114750A CN 97114750 A CN97114750 A CN 97114750A CN 1106081 C CN1106081 C CN 1106081C
Authority
CN
China
Prior art keywords
shift register
data
carry
decimal system
bit 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.)
Expired - Lifetime
Application number
CN97114750A
Other languages
English (en)
Other versions
CN1175729A (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.)
Mitutoyo Corp
Original Assignee
Mitutoyo Corp
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 Mitutoyo Corp filed Critical Mitutoyo Corp
Publication of CN1175729A publication Critical patent/CN1175729A/zh
Application granted granted Critical
Publication of CN1106081C publication Critical patent/CN1106081C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/02Conversion to or from weighted codes, i.e. the weight given to a digit depending on the position of the digit within the block or code word
    • H03M7/12Conversion to or from weighted codes, i.e. the weight given to a digit depending on the position of the digit within the block or code word having two radices, e.g. binary-coded-decimal code

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Complex Calculations (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

第一和第二移位寄存器(1和2)分别有4位×N和4位×M级,用于从LSD和MSD起4位4位地储存操作结果的BCD和要译码的BIN数据。D-F/F(5)储存第一寄存器(1)的输出和中间结果,将其输出经第一选择器(3)供给运算/逻辑电路(6)。第二选择器(4)选择第二寄存器(2)的输出供给该电路。该电路对第一寄存器(1)的数据乘16,将结果加到第二寄存器(2)的4位数据上并做进位处理。在移位时钟SCK(1)的前半周将电路的输出DO存在D-F/F(5)中,并在后半周存在第一寄存器(1)中。第一寄存器(1)做一周,而第二寄存器(2)只移位一级。

Description

译码电路
本发明涉及一种译码电路,用于将二进制数据转换为被二进制编码的十进制数据,用于显示操作结果等。以后,在说明书中,将二进制数据和被二进制编码的十进制数据分别称为“BIN”数据和“BCD”数据。
通常,以BIN数据格式处理数学运算,然后将其结果转换为用于显示的BCD数据,因为BCD数据有助人们清楚地识别。因此,开发了许多用于将BIN数据转换为BCD数据的译码电路。
这种译码电路通常对于BIN数据的每一位执行译码过程。例如,将(n+1)位BIN数据bn......b1b0转换为BCD数据,对于下式(1)中的每一括弧项顺序地执行带有十进制校正的各种计算:
D=bn×2n+bn-1×2n-1+…+b2×22+b1×21+b0
 =((…(bn×2+bn-1)×2+…)×2+b1)×2+b0    (1)
比如,将BCD数据的每4位括起来时,则十进制校正可执行如下:当在每4位数据中产生进位信号或由于上述BIN数据的每个括号项的计算结果使每4位数据超过10时,以下面的方式执行十进制校正:将“0110(6)”加到该4位数据中。在“0110(6)”的表示式中,括号中的数目6是以十六进制或十进制表示的数。以后将使用类似的表示。
译细地说,当将BIN数据“10001101(8D)”转换为BCD数据“00010100 0001(141)”时,则要按照表1执行下面的顺序运算:①   0×2+b7(1)→0000 0000 0001②  ①×2+b6(0)→0000 0000 0010③  ②×2+b5(0)→0000 0000 0100④  ③×2+b4(0)→0000 0000 1000⑤  ④×2+b3(1)→0000 0001 0001(进位)
  +)                   0110(十进制校正)
             0000 0001 0111⑥  ⑤×2+b2(1)→0000 0010 1111(≥10)
  +)                   0110(十进制校正)
             0000 0011 0101⑦  ⑥×2+b1(0)→0000 0110 1010(≥10)
  +)                   0110(十进制校正)
             0000 0111 0000⑧  ⑦×2+b0(1)→0000 1110 0001(≥10)
  +)                   0110(十进制校正)
结果       →0001 0100 0001(141)
如上所述,尽管在通常的BIN→BCD转换器中的转换过程是简单的,但对于(n+1)位的BIN数据,必须执行(n+1)个运算。由于必须在移位寄存器中执行许多移位操作,因此操作时间很长,功率的损耗也很大。操作时间长导致了高的操作频率,从而使比如振荡器等的功率损耗变得很大。
本发明的目的是提供一种具有高速、低功耗特性的将BIN数据转换为BCD数据的译码电路。
按照本发明的一个方面,提供了一种将二进制数据转换为被二进制编码的十进制数据的译码电路,包括:
第一移位寄存器,用于从LSD起4位4位地最后储存译码的被二进制编码的十进制数据,该第一移位寄存器具有4位×N级(其中N是任意正整数),并由第一时钟信号进行移位控制;
第二移位寄存器,用于从MSD起4位4位地储存要译码的二进制数据,该第二移位寄存器具有4位×M级(其中M是任意正整数),并由第二时钟信号进行移位控制,其控制方式是:对于第一移位寄存器中的每N级,在第二移位寄存器中移位一级;
运算/逻辑装置,用于周期性地进行译码,其方式是:将从要译码的二进制数据的MSD起顺序选出的每个4位数据乘以16,并将其结果加到后面的4位数据上,从而输出译码的被二进制编码的十进制数据,所述的译码包括:(a)第一过程,将从第一移位寄存器的每个4位数据乘4,并进行十进制校正和进位处理,在第一时钟信号的每一周期的前半周期输出中间结果;(b)第二过程,将所述每个中间结果乘4,并进行十进制校正和进位处理,将结果加到从第二移位寄存器来的4位数据上,以在第一时钟信号的每一周期的后半周期输出要储存在第一移位寄存器中的译码的被二进制编码的十进制数据;
缓存器,用于暂时储存从运算/逻辑装置输出的每一个中间结果;
第一选择装置,用于交替地选出从第一移位寄存器顺序输出的4位数据和从缓存器输出的中间结果,以将选择的数据供给运算/逻辑装置;该第一选择装置由具有与第一时钟信号同样周期的第一选择信号驱动;以及
第二选择装置,用于选出从第二移位寄存器顺序输出的4位数据,以将选择的数据供给运算/逻辑装置;该第二选择装置由对于第一选择信号的每N个周期输出的第二选择信号驱动,
其中,所述运算/逻辑装置包括:
第一加倍/十进制校正电路,用于将第一移位寄存器和缓存器交替输出的4位数据加倍,并进行十进制校正和进位处理;
第二加倍/十进制校正电路,用于将第一十进制校正电路输出的4位数据加倍,并进行十进制校正和进位处理;和
加法/十进制校正电路,用于将第二加倍/十进制校正电路输出的4位数据加到第二移位寄存器输出的4位数据或零上,并进行十进制校正和进位处理,以及
其中,所述第一和第二加倍/十进制校正电路各包括:
第一进位保持部分,用于保持在第一时钟信号一周期的前半周期处理中产生的第一进位,然后将该第一进位加到第一时钟信号的下一周期处理中的前半周期处理的数据的LSB上;和
第二进位保持部分,用于保持在第一时钟信号该周期的第一时钟信号一周期的后半周期处理中产生的第二进位,然后将该第二进位加到第一时钟信号的下一周期处理中的后半周期处理的数据的LSB上。
按照本发明的另一方面,提供了一种将二进制数据转换为被二进制编码的十进制数据的译码方法,其使用了第一移位寄存器,用于从LSD起4位4位地最后储存译码的被二进制编码的十进制数据,该第一移位寄存器具有4位×N级(其中N是任意正整数),并由第一时钟信号进行移位控制;以及第二移位寄存器,用于从MSD起4位4位地储存要译码的二进制数据,该第二移位寄存器具有4位×M级(其中M是任意正整数),并由第二时钟信号进行移位控制,其控制方式是:对于第一移位寄存器中的每N级,在第二移位寄存器中移位一级;所述方法包括以下步骤:周期性地进行译码,其方式是:将从要译码的二进制数据的MSD起顺序选出的每个4位数据乘以16,并将其结果加到后面的4位数据上,从而输出译码的被二进制编码的十进制数据,其中,所述的译码包括下列步骤:
(a)将从第一移位寄存器的每个4位数据乘4,并进行十进制校正和进位处理,在第一时钟信号的每一周期的前半周期输出中间结果;和
(b)将所述每个中间结果乘4,并进行十进制校正和进位处理,将结果加到从第二移位寄存器来的4位数据上,以在第一时钟信号的每一周期的后半周期输出要储存在第一移位寄存器中的译码的被二进制编码的十进制数据。
通过对每4位数据加括号,可将前述表达式(1)重写为下面的表达式(2):
D=bn×2n+bn-1×2n-1+……+b2×22+b1×21+b0
 =(((bnbn-1bn-2bn-3)×16+bn-4bn-5bn-6bn-7)×16+…)×16+b3b2b1b0    (2)
如果在时钟信号的一个周期执行表达式(2)中每个括弧项的运算,则它可在表达式(1)运算时间的1/16内完成。根据本发明,对于从第一和第二移位寄存器输出的每个4位数据乘4的运算及十进制校正和进位的处理,分别是在第一时钟信号每个周期的前半周期和后半周期中进行的,从而使得在第一时钟信号的每个周期中执行了16倍的运算。当第一和第二移位寄存器的移位级数分别是N和M时,第一时钟信号的脉冲数目是N×M。因为与通常的电路相比N和M每个都是1/4,故处理速度为通常电路的16倍。而且,由于乘16的运算被分配到第一时钟信号的前半和后半周期,因而可用乘4的运算电路来执行乘16的运算,结果减小了电路的尺寸。
此外,由于本发明的电路能以高速操作,从而减小了它的时钟信号频率。因为将时钟信号的前半和后半用于不同的操作,故可将移位操作的数目减为1/2,所以显著地降低了功率消耗。
在运算/逻辑电路中,第一和第二加倍/十进制校正电路可用同样的电路构成,而且输入和输出的组合也比带乘4运算的十进制校正电路少,从而简化了电路。
在第一和第二加倍/十进制校正电路中,当数据加倍后,它的LSB变为“0”,因此,当前一个4位数据产生进位信号时,通过在LSB中输入“1”可完成进位处理。
通过第一和第二选择电路可控制对运算/逻辑电路的数据输入。用与第一时钟信号同样周期的第一选择信号驱动第一选择电路,以便交替地选择从第一移位寄存器输出的头上的4位数据和从缓冲寄存器输出的中间数据,并将选择的数据供给运算/逻辑电路。通过对于第一选择信号电路的每个N周期输出的第二选择信号驱动第二选择电路,以便选择从第二移位寄存器输出的头上的4位数据,并将选择的数据供给运算/逻辑电路。
图1是本发明一个实施例的译码电路的框图;
图2是所述译码电路的运算/逻辑电路的框图;
图3是所述运算/逻辑电路的第一和第二加倍/十进制校正电路的真值表;
图4是所述加倍/十进制校正电路的框图;
图5是所述运算/逻辑电路的加法电路的真值表的一部分;
图6是上述真值表的另一部分;
图7是上述真值表的又一部分;
图8是上述真值表的再一部分;
图9是所述运算/逻辑电路的加法电路的框图;
图10是所述译码电路操作的定时曲线;
图11是说明该译码电路详细操作的定时曲线;
图12是上述定时曲线的继续;
图13A和13B表示在定时曲线的T1和T2定时中运算/逻辑电路的数据状态;
图14A和14B表示在定时曲线的T3和T4定时中运算/逻辑电路的数据状态;
图15A和15B表示在定时曲线的T5和T6定时中运算/逻辑电路的数据状态;
图16A和16B表示在定时曲线的T7和T8定时中运算/逻辑电路的数据状态;
图17A和17B表示在定时曲线的T9和T10定时中运算/逻辑电路的数据状态;
图18A和18B表示在定时曲线的T11和T12定时中运算/逻辑电路的数据状态;
图19A和19B表示在定时曲线的T13和T14定时中运算/逻辑电路的数据状态。
下面参照附图描述本发明的实施例。
如图1所示,采用本发明的译码电路具有含4位×N级的第一移位寄存器1(11,12,......1N)和含4位×M级的第二移位寄存器2(21,22,......2M),其中N和M是任意正整数。分别由第一移位时钟信号SCK1和第二移位时钟信号SCK2驱动第一和第二移位寄存器1和2。第一移位寄存器1用于起初储存零,最后从LSD起4位4位地储存译码的BCD数据。第二移位寄存器2用于从MSD起4位4位地储存要译码的BIN数据。
将第一寄存器1的输出供给第一选择器3的两个输入端之一。将第二寄存器2的输出供给第二选择器4的两个输入端之一。D型触发器(D-F/F)5用作缓冲寄存器,用于暂时储存在相继的译码过程中的每一中间结果。将D-F/F5的输出供给第一选择器3的另一输入端。将零数据“0”供给第二选择器4的另一输入端。
将第一和第二选择器3和4的输出数据DA和DB加到运算/逻辑电路6的各自输入端。运算/逻辑电路6将从第一移位寄存器1输出的每个4位数据乘以16,并进行十进制校正和进位处理,同时将结果加到从第二移位寄存器2输出的4位数据上。将从运算/逻辑电路6顺序输出的输出数据DO4位4位地交替储存在D-F/F5和第一移位寄存器1中。换句话说,在第一移位时钟SCK1的周期的前半周期将输出数据DO储存在D-F/F5中,并在第一移位时钟SCK1的周期的后半周期将它储存在第一移位寄存器1中。
第一移位时钟SCK1的每N个时钟信号产生第二移位时钟SCK2。因此第一移位寄存器做了一周而第二移位寄存器只移1级。通过反相器7使第一移位时钟SCK1反相,以产生D-F/F5的锁定脉冲。结果,与第一移位寄存器的移位操作相比,D-F/F5的锁定操作移动了移位时钟SCK1的半个周期。
将移位时钟SCK1通过反相器8和9延迟,作为控制选择器3的第一选择信号S1。对于移位寄存器1的每一周,在第一移位时钟SCK1的头上的同样定时中,输出控制选择器4的第二选择信号S2。
图2示出运算/逻辑电路6的框图。如图2所示,运算/逻辑电路6包括级连的第一和第二加倍/十进制校正电路11、12和加法/十进制校正电路13。第一和第二加倍/十进制校正电路11和12中每个,对从选择器3输出的数据DA执行带有进位处理和十进制校正的加倍运算(即乘2运算)。加法/十进制校正电路13将第二加倍/十进制校正电路12的输出数据加到从选择器4输出的数据DB上,同时进行进闰和十进制校正处理,以输出数据DO。
第一和第二加倍/十进制校正电路11和12中每个都具有如图3的真值表中所示的输入/输出关系。分别输入给第一和第二加倍/十进制校正电路11和12的每个4位数据DA和DC取值为0000(0)到1001(9),因为数据DA和DC已经被十进制校正。因此,当每个输入数据DA和DC的加倍数据超过“9”时,则进位信号Cn将被保持。如果在操作前一个周期中的进位信号Cn-1是“1”,则将进位信号Cn-1=1加到DCO(LSB)上。换句话说,将进位信号输出给下一级时带有一个周期的延迟(即具有一个数字移位)。因此,即使数据是4位4位地输出,也能准确地传送进位精度的加权。
第一和第二加倍/十进制校正电路11和12中每个都可如图4那样构成,包括门电路21、22、23和24,以及锁存电路25、26。锁存电路25和26分别在第一移位时钟SCK1的下降和上升沿定时中锁存进位信号Cn。当后来的4位数据输入时,可将进位信号Cn反映到时钟周期的前半和后半周期的各个操作结果中。
加法/十进制校正电路13具有如图5-8中真值表所示的关系。为了简化表示,这些真值表仅示出两个进位信号C1和C2都是“0”的情况。因为将进位信号C1和C2加到了操作结果中,故输入/输出的实际组合结果是真值表的4倍那么多。
如图9所示,加倍/十进制校正电路13可包括十进制校正部分31和两个加法器32和33。在输入端a的4位数据DD(DD1,DD2,DD3,DD4)取值为“0”到“9”,因为已进行了十进制校正。在输入端b的数据DB取值为Oh到Fh,因为数据DB包括从第二移位寄存器2输出的BIN数据。当数据DB超过“9”时,十进制校正部分13将“0110(6)”加到数据DB上。加法器32和33都是通常的十进制加法器。在十进制校正都部分31中,将输入数据DB转换为BCD数据,然后将前一个操作中产生的输入数据DD和进位信号在十进制加法器32和33中加到BCD数据上。将此处理过程中产生的进位信号C1和C2分别保持在锁存电路34和35里,然后在后来数字的下面的操作中加入。
下面,将描述上述译码电路的详细工作情况。
图10表示所述译码电路的操作定时曲线。在该电路中。在第一移位时钟SCK1的上升沿和下降沿定时中分别执行两个不同的操作过程。在移位时钟SCK1的前半周期(t1),第一选择信号S1是“1”,下面①-④的处理过程同时进行。
①通过选择器3选择第一移位寄存器1,并把它的输出供给运算/逻辑电路6。
②在第一加倍/十进制校正电路11中使输入给运算/逻辑电路6的BCD数据DA加倍,以输出操作结果A。
③在第二加倍/十进制校正电路12中使操作结果A再加倍和十进制校正,以输出操作结果B。
④将操作结果B和“0”加到加法/十进制校正电路13中。
结果,在移位时钟SCK1的前半周期(t1)完成了将数据DA的4倍处理。在移位时钟SCK1的下降沿,将由此处理获得的中间结果B储存在D-F/F5中。
在移位时钟SCK1的后半周期(t2)中,第一选择信号S1是“0”。当从第一移位寄存器1输出LSD时,在每个头定时中,第二选择信号S2也变为“0”,从而从第二移位寄存器2供给BIN数据。因此,在移位时钟SCK1的后半周期(t2)中,下面的①-⑤处理同时进行。
①由选择器3选出储存在D-F/F5中的中间结果,供给运算/逻辑电路6。
②由选择器4选择第二移位寄存器2的输出,供给运算/逻辑电路6。
③在第一加倍/十进制校正电路11中对输入给运算/逻辑路6的BCD数据DA进行加倍和十进制校正,将其操作结果C输出。
④在第二加倍/十进制校正电路12中将操作结果C进行再加倍和十进制校正,将操作结果D输出。
⑤在加法/十进制校正电路13中将操作结果D和BIN数据DB相加和十进制校正,输出操作结果E。
结果,在移位时钟SCK1的后半周期(t2)完成了4倍中间结果B并将结果加到BIN数据DB中的过程。在移位时钟SCK1的下降沿将由此过程获得的中间结果B储存在D-F/F5中。换句话说,在移位时钟SCK1的每个周期执行DA×16+DB的处理。将操作结果E储存在第一移位寄存器IN中。
将周期t1中与操作结果A和B一起产生的进位信号分别反映到移位时钟SCK1接着的前半周期(t3)中输出的操作结果A’和B’中。同样将周期t2中与操作结果C、D和E一起产生的进位信号分别反映到移位时钟SCK1接着的后半周期(t4)中输出的操作结果C’、D’和D”中。
下面,举一例,将BIN数据“0100 1101 0111(47D)”储存在第二移位寄存器2中,并将该BIN数据转换成BCD数据“0001 0010 00111001(1239)”。以下将描述该译码电路的详细操作。
图11和12表示该操作的定时曲线,图13A-19B表示在运算/逻辑电路6中对应于定时曲线的T1-T14各个定时的各部分的数据状态。
图13A的定时T1
处理从第一移位寄存器1输出数据DA“0000”和数据DB“0000”的操作。因为在初始状态的进位信号是“0”,故DO“0000”是要储存在D-F/F5中的输出。
图13B的定时T2
选择第二移位寄存器2的输出。于是将数据DB“0100(4)”加在加法/十进制校正电路13中,从而使输出数据DO变为“0100”。在定时T2的末端,将输出数据DO储存在第一移位寄存器1N中,其后在将数据“0100(4)”储存在第一移位寄存器11之前该数据的状态不变。
图14A的定时T3
将储存在移位寄存器11中的数据“0100(4)”作为数据DA,并对DA进行×4运算以产生进位信号。结果,使在第二加倍/十进制校正电路12中下边的锁存电路25变为“1”。在图13A-19B中,括号“”中的进位信号表示改变的一些进位信号。将输出数据DO十进制校正为“0110(6)”,并将其储存在D-F/F5中。
图14B的定时T4
将从D-F/F5输出的数据DA“0110(6)”和从第二移位寄存器2输出的数据DB(BIN数据)“1101(D)”分别供给运算/逻辑电路6。在第一加倍/十进制校正电路11中,产生进位信号,并将数据十进制校正为“0010”。
结果,上边的锁存电路26变为“1”。在第二十进制校正电路12中再将该数据加倍为“0100”。在加法/十进制校正电路13中将数据“0100”加到“1101”上,从而将十进制校正数据“0111(7)”作为数据DO输出。在该定时中,电路13产生另一进位信号,于是进位信号C1变为“1”。将该操作结果储存在第一移位寄存器1N中。
图15A的定时T5
数据DA和DB都是“0000”。在第二加倍/十进制校正电路12中下面的锁存电路的进位信号“1”使数据DD为“0001”,同时,下面的进位信号变为“0”,并将数据“0001”储存在D-F/F5中。
图15B的定时T6
将作为数据DA和DB的D-F/F5中的“0001”和“0000”分别供给运算/逻辑电路6。因为上边的锁存电路26是“1”,故第一加倍/十进制校正电路11输出“0011”作为数据DC。然后,锁存电路26变为“0”。在加法/十进制校正电路13中,将数据“0110”和“0000”分别作为DD和DB输入。在该定时中,因为将进位C1=1保留在电路13中,因此输出数据DO变为“0111(7)”。将输出数据DO储存在第一移位寄存器1N中,并将移位寄存器1N中的数据“0111(7)”传送到移位寄存器1N-1中。从这时起,在将数据“0111(7)”储存在移位寄存器11之前,数据状态不改变。
图16A的定时T7
将传送给移位寄存器11的数据“0111(7)”供给运算/逻辑电路16作为数据DA。通过加倍/十进制校正电路11、12和加法/十进制校正电路13处理该数据DA,从而使输出数据DO变为“1000(8)”。在此过程中,第一加倍/十进制校正电路11中的锁存电路25保持为进位“1”。
图16B-19B的定时T8-T14
从这时起,以同样的分式顺序地执行其余的译码过程,最后,将译码的数据“1001(9)”、“0011(3)”、“0010(2)”和“0001(1)”分别储存在第一移位寄存器11、12、13和14中。通过停止信号(未示出)结束顺序的译码操作。
在上述实施例中,将乘16操作的每一个分到时钟周期的前半周期和后半周期中。将运算电路的所有输入/输出数据和在移位寄存器中储存的数据限制为4位4位的,从而使得乘16操作的每个都能用4倍(×4)电路来完成。此外,将每个进位信号在运算/逻辑电路中保持一个时钟周期,然后反映到下一数字的操作过程中,因此,电路结构可大大简化,电路尺寸得以减小。
此外,根据本发明的实施例,可以在第一移位时钟的一个周期中完成乘16的操作。因此,操作处理速度为通常方法的16倍。除了处理速度高之外,还能减少移位的级数和时钟信号的频率,从而降低了译码电路的功率消耗。

Claims (2)

1一种将二进制数据转换为被二进制编码的十进制数据的译码电路,包括:
第一移位寄存器,用于从LSD起4位4位地最后储存译码的被二进制编码的十进制数据,该第一移位寄存器具有4位×N级,其中N是任意正整数,并由第一时钟信号进行移位控制;
第二移位寄存器,用于从MSD起4位4位地储存要译码的二进制数据,该第二移位寄存器具有4位×M级,其中M是任意正整数,并由第二时钟信号进行移位控制,其控制方式是:对于第一移位寄存器中的每N级,在第二移位寄存器中移位一级;
运算/逻辑装置,用于周期性地进行译码,其方式是:将从要译码的二进制数据的MSD起顺序选出的每个4位数据乘以16,并将其结果加到后面的4位数据上,从而输出译码的被二进制编码的十进制数据,所述的译码包括:(a)第一过程,将从第一移位寄存器的每个4位数据乘4,并进行十进制校正和进位处理,在第一时钟信号的每一周期的前半周期输出中间结果;(b)第二过程,将所述每个中间结果乘4,并进行十进制校正和进位处理,将结果加到从第二移位寄存器来的4位数据上,以在第一时钟信号的每一周期的后半周期输出要储存在第一移位寄存器中的译码的被二进制编码的十进制数据;
缓存器,用于暂时储存从运算/逻辑装置输出的每一个中间结果;
第一选择装置,用于交替地选出从第一移位寄存器顺序输出的4位数据和从缓存器输出的中间结果,以将选择的数据供给运算/逻辑装置;该第一选择装置由具有与第一时钟信号同样周期的第一选择信号驱动;以及
第二选择装置,用于选出从第二移位寄存器顺序输出的4位数据,以将选择的数据供给运算/逻辑装置;该第二选择装置由对于第一选择信号的每N个周期输出的第二选择信号驱动,
其中,所述运算/逻辑装置包括:
第一加倍/十进制校正电路,用于将第一移位寄存器和缓存器交替输出的4位数据加倍,并进行十进制校正和进位处理;
第二加倍/十进制校正电路,用于将第一十进制校正电路输出的4位数据加倍,并进行十进制校正和进位处理;和
加法/十进制校正电路,用于将第二加倍/十进制校正电路输出的4位数据加到第二移位寄存器输出的4位数据或零上,并进行十进制校正和进位处理,以及
其中,所述第一和第二加倍/十进制校正电路各包括:
第一进位保持部分,用于保持在第一时钟信号一周期的前半周期处理中产生的第一进位,然后将该第一进位加到第一时钟信号的下一周期处理中的前半周期处理的数据的LSB上;和
第二进位保持部分,用于保持在第一时钟信号该周期的第一时钟信号一周期的后半周期处理中产生的第二进位,然后将该第二进位加到第一时钟信号的下一周期处理中的后半周期处理的数据的LSB上。
2.一种将二进制数据转换为被二进制编码的十进制数据的译码方法,其使用了第一移位寄存器,用于从LSD起4位4位地最后储存译码的被二进制编码的十进制数据,该第一移位寄存器具有4位×N级,其中N是任意正整数,并由第一时钟信号进行移位控制;以及第二移位寄存器,用于从MSD起4位4位地储存要译码的二进制数据,该第二移位寄存器具有4位×M级,其中M是任意正整数,并由第二时钟信号进行移位控制,其控制方式是:对于第一移位寄存器中的每N级,在第二移位寄存器中移位一级;所述方法包括以下步骤:周期性地进行译码,其方式是:将从要译码的二进制数据的MSD起顺序选出的每个4位数据乘以16,并将其结果加到后面的4位数据上,从而输出译码的被二进制编码的十进制数据,其中,所述的译码包括下列步骤:
(a)将从第一移位寄存器的每个4位数据乘4,并进行十进制校正和进位处理,在第一时钟信号的每一周期的前半周期输出中间结果;和
(b)将所述每个中间结果乘4,并进行十进制校正和进位处理,将结果加到从第二移位寄存器来的4位数据上,以在第一时钟信号的每一周期的后半周期输出要储存在第一移位寄存器中的译码的被二进制编码的十进制数据,所述步骤(b)包括:
将中间结果乘4,并进行十进制校正和进位处理;
当从第一移位寄存器来的4位数据是LSD时,将其结果加到从第二移位寄存器输出的4位数据上,并进行十进制校正和进位处理;和
当从第一移位寄存器来的4位数据不是LSD时,将其结果加到零上,并进行十进制校正和进位处理,并且
其中步骤(a)和(b)是周期性进行的,直到在第二移位寄存器中储存的要译码的全部数据都输出为止,从而将译码的数据储存到第一移位寄存器中。
CN97114750A 1996-07-17 1997-07-17 译码电路 Expired - Lifetime CN1106081C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP187761/96 1996-07-17
JP18776196A JP3276852B2 (ja) 1996-07-17 1996-07-17 符号変換回路
JP187761/1996 1996-07-17

Publications (2)

Publication Number Publication Date
CN1175729A CN1175729A (zh) 1998-03-11
CN1106081C true CN1106081C (zh) 2003-04-16

Family

ID=16211748

Family Applications (1)

Application Number Title Priority Date Filing Date
CN97114750A Expired - Lifetime CN1106081C (zh) 1996-07-17 1997-07-17 译码电路

Country Status (5)

Country Link
US (1) US5982307A (zh)
EP (1) EP0820148B1 (zh)
JP (1) JP3276852B2 (zh)
CN (1) CN1106081C (zh)
DE (1) DE69719120T2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101673336B (zh) * 2008-09-12 2012-05-23 晨星软件研发(深圳)有限公司 译码装置及译码方法

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7937510B1 (en) * 2005-02-01 2011-05-03 Altera Corporation Lempel Ziv compression architecture
US7660838B2 (en) * 2005-02-09 2010-02-09 International Business Machines Corporation System and method for performing decimal to binary conversion
US20060179090A1 (en) * 2005-02-09 2006-08-10 International Business Machines Corporation System and method for converting binary to decimal
US7698352B2 (en) * 2005-09-15 2010-04-13 International Business Machines Corporation System and method for converting from scaled binary coded decimal into decimal floating point
US8364734B2 (en) * 2005-09-15 2013-01-29 International Business Machines Corporation Converting from decimal floating point into scaled binary coded decimal
JP5317392B2 (ja) * 2006-04-06 2013-10-16 三菱電機株式会社 デコード回路および表示装置
US7477171B2 (en) * 2007-03-27 2009-01-13 Intel Corporation Binary-to-BCD conversion
US8051118B2 (en) * 2007-04-26 2011-11-01 International Business Machines Corporation Composition of decimal floating point data
US8190664B2 (en) * 2007-04-26 2012-05-29 International Business Machines Corporation Employing a mask field of an instruction to encode a sign of a result of the instruction
US20080270495A1 (en) * 2007-04-26 2008-10-30 International Business Machines Corporation Insert/extract biased exponent of decimal floating point data
US8051117B2 (en) 2007-04-26 2011-11-01 International Business Machines Corporation Shift significand of decimal floating point data
JP2012209755A (ja) * 2011-03-29 2012-10-25 Fujitsu Ltd 演算回路及び2進数の変換方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3564225A (en) * 1967-11-09 1971-02-16 Leeds & Northrup Co Serial binary coded decimal converter
US3624374A (en) * 1970-11-18 1971-11-30 Control Data Corp Binary to binary coded decimal converter
US4069478A (en) * 1975-11-12 1978-01-17 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Binary to binary coded decimal converter

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4103234A (en) * 1967-11-24 1978-07-25 General Dynamics Corp. System for transmission storage and/or multiplexing of information
FR1594939A (zh) * 1968-12-06 1970-06-08
US3678465A (en) * 1970-06-30 1972-07-18 Ncr Co Control means for an optical bar code serial printer
US3803392A (en) * 1972-10-30 1974-04-09 Amdahl Corp Code converter and method for a data processing system
JPH01157621A (ja) * 1987-12-15 1989-06-20 Fanuc Ltd 2進数から10進数bcdコードへの変換装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3564225A (en) * 1967-11-09 1971-02-16 Leeds & Northrup Co Serial binary coded decimal converter
US3624374A (en) * 1970-11-18 1971-11-30 Control Data Corp Binary to binary coded decimal converter
US4069478A (en) * 1975-11-12 1978-01-17 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Binary to binary coded decimal converter

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101673336B (zh) * 2008-09-12 2012-05-23 晨星软件研发(深圳)有限公司 译码装置及译码方法

Also Published As

Publication number Publication date
EP0820148A3 (en) 1999-03-17
EP0820148A2 (en) 1998-01-21
DE69719120T2 (de) 2003-08-28
US5982307A (en) 1999-11-09
JP3276852B2 (ja) 2002-04-22
EP0820148B1 (en) 2003-02-19
CN1175729A (zh) 1998-03-11
DE69719120D1 (de) 2003-03-27
JPH1032492A (ja) 1998-02-03

Similar Documents

Publication Publication Date Title
CN1106081C (zh) 译码电路
CN1049778C (zh) 用于实现误码纠错用卷积码的维特比译码的运算装置
CN1097880C (zh) 维特比译码器
CN1149218A (zh) 维特比解码方法和维特比解码装置
US7650322B2 (en) Method and apparatus for mapping the primary operational sequences of an algorithm in a compute unit having an internal random access memory
CN109587483B (zh) 码流提取模块
CN1821951A (zh) 算术单元
CN1893282A (zh) 一跨序列排序涡轮码系统和其操作方法
CN1520041A (zh) 用于转换温度计码的转换装置和方法
CN1099071C (zh) 具有比特移位单元的数字滤波器
CN1179662A (zh) 模式匹配装置
CN1717653A (zh) 带有查询表的乘法器
CN1306711C (zh) 可变长度代码译码装置以及译码方法
CN1267853C (zh) 同步流水算术编码器的vlsi实现方法
CN1731344A (zh) 快速多周期二进制及十进制加法器单元的高度并行结构
CN1975661A (zh) 一种集成电路中的数据运算方法及装置
CN1182911A (zh) 除法装置
CN1534873A (zh) 数据转换装置和数据转换方法
JPH06121172A (ja) 画像符号化装置
CN1512673A (zh) 维特比译码器
CN1123125C (zh) 可变长编码方法及其装置
CN1098565C (zh) 译码变长码的方法和设备
CN113517976B (zh) 一种基于fpga的比特流快速采样装置及方法
CN1257612C (zh) 根据初始状态门控时钟脉冲触发的状态机、计数器及方法
CN1913366A (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: 20030416

CX01 Expiry of patent term