JP4290202B2 - ブース乗算の装置および方法 - Google Patents
ブース乗算の装置および方法 Download PDFInfo
- Publication number
- JP4290202B2 JP4290202B2 JP2007028768A JP2007028768A JP4290202B2 JP 4290202 B2 JP4290202 B2 JP 4290202B2 JP 2007028768 A JP2007028768 A JP 2007028768A JP 2007028768 A JP2007028768 A JP 2007028768A JP 4290202 B2 JP4290202 B2 JP 4290202B2
- Authority
- JP
- Japan
- Prior art keywords
- bits
- bit
- multiplier
- circuit
- multiplicand
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/52—Multiplying; Dividing
- G06F7/523—Multiplying only
- G06F7/533—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
- G06F7/5332—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by skipping over strings of zeroes or ones, e.g. using the Booth Algorithm
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/52—Multiplying; Dividing
- G06F7/523—Multiplying only
- G06F7/533—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
- G06F7/5334—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product
- G06F7/5336—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product overlapped, i.e. with successive bitgroups sharing one or more bits being recoded into signed digit representation, e.g. using the Modified Booth Algorithm
- G06F7/5338—Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even by using multiple bit scanning, i.e. by decoding groups of successive multiplier bits in order to select an appropriate precalculated multiple of the multiplicand as a partial product overlapped, i.e. with successive bitgroups sharing one or more bits being recoded into signed digit representation, e.g. using the Modified Booth Algorithm each bitgroup having two new bits, e.g. 2nd order MBA
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
Si=(B1 NAND Aj) NAND (B2 NAND Aj) NAND (B4 NAND (B3 XOR Ai))
に従って生成してもよい。
たとえば、被乗数が、ビットA0、A1、A2、A3、…AM−1を含むとき、第1番目の2ビットの組はA0、A1を含み、第2番目の2ビットの組はA1、A2を含み、第3番目の2ビットの組はA2、A3を含み、以下、各組は同様に構成されてもよい。すなわち、被乗数に含まれる第p番目(pは、1≦p≦M−1を満たす整数)のビットの組は、ビットAp−1、Apを含み、第M番目の組は、ビットAM−1、ヌルビットを含んでもよい。
なお、本明細書において、NAND(!AND)は、否定論理積を、XORは、排他的論理和を表すものとする。
Si=(B1 NAND Aj) NAND (B2 NAND Aj) NAND (B4 NAND (B3 XOR Ai))
ここで、Biは、符号化されたビットの組の第1、第2、第3、第4のビットである。
図5は、従来のブース符号化回路302およびセレクタ回路304を示す図であり、図示された真理値表は、ブース符号化回路302の動作を示す。ブース符号化回路302およびセレクタ回路304の最長の伝搬遅延は、複数の論理ゲートごとの単位遅延を考えることによって評価できる。説明のため、XORゲートは、多くのファンアウト負荷を有した状態で1.5の伝搬遅延を有し、ANDゲートは、1.0の伝搬遅延を有し、インバータゲートは、1.0の伝搬遅延を有するものとする。図5の回路の最長の伝搬遅延は、1.5+1.0+1.0+1.0+1.0+1.5=7.0となる。
Claims (23)
- 乗数に含まれるビットの組を受け、基数2から基数4に変換して、−2、−1、0、1、2のいずれかの数を表現する符号化されたビットの組を生成する複数の論理ゲートを含む符号化回路を備え、
前記符号化されたビットの組は、
表現する数が2のときに真値となる第1のビットと、
表現する数が−2のときに真値となる第2のビットと、
表現する数が負または0のとき真値となる第3のビットと、
表現する数の絶対値が1のとき真値となる第4のビットと、
を含むことを特徴とする装置。 - 前記符号化回路は、
前記乗数に含まれる3ビットYi、Yj、Ykを受け、前記符号化されたビットの組の前記第1のビットB1を生成する第1回路と、
前記乗数の前記ビットYi、Yj、Ykを受け、前記符号化されたビットの組の前記第2のビットB2を生成する第2回路と、
前記乗数の前記ビットYiを受け、前記符号化されたビットの組の前記第3のビットB3を生成する第3回路と、
前記乗数の前記ビットYj、Ykを受け、前記符号化されたビットの組の前記第4のビットB4を生成する第4回路と、
を含むことを特徴とする請求項1に記載の装置。 - 前記乗数のビット数をN(Nは自然数)とするとき、N/2個の符号化回路を備え、
各符号化回路は、最後の符号化回路を除いて、前記乗数の3ビットの組であって互いに異なる組を受け、前記最後の符号化回路は2ビットの組と、ヌルビットを受けることを特徴とする請求項2から6のいずれかに記載の装置。 - 前記乗数は、ビットY0、Y1、Y2、Y3…YN−1を含み、
第p番目(pは、1≦p≦N−1を満たす整数)の符号化回路は、ビットY(p−1)×2、Y(p−1)×2+1、Y(p−1)×2+2を受け(、第N番目の符号化回路はビットY(p−1)×2、Y(p−1)×2+1およびヌルビットを受け)ることを特徴とする請求項7に記載の装置。 - 複数のセレクタ回路をさらに備え、各セレクタ回路は、
前記符号化回路からの前記符号化されたビットと、被乗数に含まれるビットの組とを受け、部分積の各ビットを生成することを特徴とする請求項1に記載の装置。 - 各セレクタ回路は、前記被乗数に含まれる2ビットの組Ai、Ajを受け、部分積の各ビットを生成し、
各セレクタ回路は、符号化されたビットの第1、第2、第3、第4のビットをB1、B2、B3、B4とするとき、論理式
Si=(B1 NAND Aj) NAND (B2 NAND Aj) NAND (B4 NAND (B3 XOR Ai))
に従って各ビットSiを生成する複数の論理ゲートを含むことを特徴とする請求項9に記載の装置。 - 乗数を符号化したビットの組と被乗数に含まれるビットの組とを受け、部分積の各ビットを生成するセレクタ回路を備え、
前記乗数を符号化したビットは、基数2から基数4へ変換されており、基数4の数は、−2、−1、0、1、2のいずれかの数を表現しており、
前記乗数を符号化したビットの組は、
表現する数が2のときに真値となる第1のビットと、
表現する数が−2のときに真値となる第2のビットと、
表現する数が負または0のとき真値となる第3のビットと、
表現する数の絶対値が1のとき真値となる第4のビットと、
を含むことを特徴とする装置。 - 各セレクタ回路は、前記被乗数に含まれる2ビットの組Ai、Ajを受け、部分積の各ビットSiを生成し、
前記乗数を符号化した第1から第4のビットをB1、B2、B3、B4とするとき、各セレクタ回路は、論理式
Si=(B1 NAND Aj) NAND (B2 NAND Aj) NAND (B4 NAND (B3 XOR Ai))
に従って各ビットSiを生成する複数の論理ゲートを含むことを特徴とする請求項11に記載の装置。 - 前記被乗数のビット数をM(Mは自然数)とするとき、M個のセレクタ回路を備え、
各符号化回路は、最後のセレクタ回路を除いて、それぞれ異なる前記被乗数に含まれる2ビットの組を受け、前記最後のセレクタ回路は前記被乗数の1ビットおよびヌルビットを受けることを特徴とする請求項11に記載の装置。 - 前記被乗数は、ビットA0、A1、A2、A3、…AM−1(Mは整数)を含み、
第p番目(pは、1≦p≦M−1を満たす整数)の前記セレクタ回路はビットAp−1、Apを受け(、第M番目の前記セレクタ回路は、ビットAM−1およびヌルビットを受け)ることを特徴とする請求項13に記載の装置。 - ある符号化されたビットの組に対する出力ビットSiの集合は、前記乗数と前記被乗数の部分積となり、
前記部分積の合計は、前記乗数および前記被乗数の積となることを特徴とする請求項14に記載の装置。 - 基数2の乗数を、−2、−1、0、1、2のいずれかの数を表現する符号化されたビットの組に変換するステップを備え、
前記符号化されたビットの組は、
表現する数が2のときに真値となる第1のビットと、
表現する数が−2のときに真値となる第2のビットと、
表現する数が負または0のとき真値となる第3のビットと、
表現する数の絶対値が1のとき真値となる第4のビットと、
を含むことを特徴とする方法。 - 前記乗数に含まれる3ビットの組それぞれを、符号化されたビットに変換するステップをさらに備え、
前記乗数は、ビットY0、Y1、Y2、Y3…YN−1を含み、
第p番目(pは、1≦p≦N−1を満たす整数)の前記3ビットの組はビットY(p−1)×2、Y(p−1)×2+1、Y(p−1)×2+2を含(み、第N番目の組は、Y(p−1)×2、Y(p−1)×2+1およびヌルビットを含)むことを特徴とする請求項17に記載の方法。 - 前記符号化されたビットの組と、前記乗数に含まれるビットの組とを受けるステップと、
部分積の各ビットを生成するステップと、
をさらに備えることを特徴とする請求項18に記載の方法。 - 前記被乗数に含まれる2ビットの組Ai、Ajと、符号化された第1から第4のビットB1、B2、B3、B4とを受けるステップと、
部分積の各ビットSiを、論理式
Si=(B1 NAND Aj) NAND (B2 NAND Aj) NAND (B4 NAND (B3 XOR Ai))
に従って生成するステップと、
をさらに備えることを特徴とする請求項16に記載の方法。 - 前記被乗数は、ビットA0、A1、A2、A3、…AM−1を含み、
前記被乗数に含まれる第p番目(pは、1≦p≦M−1を満たす整数)のビットの組は、ビットAp−1、Apを含み、(第M番目の組は、ビットAM−1、ヌルビットを含む)ことを特徴とする請求項20に記載の方法。 - それぞれの符号化されたビットの組に対するビットSiの集合を生成し、前記乗数と前記被乗数の部分積を生成するステップをさらに備えることを特徴とする請求項21に記載の方法。
- 前記乗数と前記被乗数の積を生成するために、前記部分積を加算するステップをさらに備えることを特徴とする請求項22に記載の方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US77760706P | 2006-02-28 | 2006-02-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007234004A JP2007234004A (ja) | 2007-09-13 |
JP4290202B2 true JP4290202B2 (ja) | 2009-07-01 |
Family
ID=38554488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007028768A Expired - Fee Related JP4290202B2 (ja) | 2006-02-28 | 2007-02-08 | ブース乗算の装置および方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7840629B2 (ja) |
JP (1) | JP4290202B2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101861550B1 (ko) | 2012-02-29 | 2018-05-29 | 삼성전자주식회사 | 다항식 연산을 위한 부분적 발생 장치 및 방법 |
CN102722352B (zh) * | 2012-05-21 | 2015-06-03 | 华南理工大学 | 一种Booth乘法器 |
CN103412737B (zh) * | 2013-06-27 | 2016-08-10 | 清华大学 | 实现基4-Booth编码方法的门电路和基于该方法的流水线大数乘法器 |
US9588765B2 (en) * | 2014-09-26 | 2017-03-07 | Intel Corporation | Instruction and logic for multiplier selectors for merging math functions |
US10296292B2 (en) * | 2016-10-20 | 2019-05-21 | Advanced Micro Devices, Inc. | Dynamic variable precision computation |
US10599606B2 (en) | 2018-03-29 | 2020-03-24 | Nvidia Corp. | 424 encoding schemes to reduce coupling and power noise on PAM-4 data buses |
US11966348B2 (en) | 2019-01-28 | 2024-04-23 | Nvidia Corp. | Reducing coupling and power noise on PAM-4 I/O interface |
US10657094B2 (en) | 2018-03-29 | 2020-05-19 | Nvidia Corp. | Relaxed 433 encoding to reduce coupling and power noise on PAM-4 data buses |
US11159153B2 (en) | 2018-03-29 | 2021-10-26 | Nvidia Corp. | Data bus inversion (DBI) on pulse amplitude modulation (PAM) and reducing coupling and power noise on PAM-4 I/O |
US10466968B1 (en) * | 2018-07-12 | 2019-11-05 | Nvidia Corp. | Radix-4 multiplier partial product generation with improved area and power |
US10623200B2 (en) | 2018-07-20 | 2020-04-14 | Nvidia Corp. | Bus-invert coding with restricted hamming distance for multi-byte interfaces |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6301599B1 (en) * | 1999-03-29 | 2001-10-09 | Sony Corporation Of Japan | Multiplier circuit having an optimized booth encoder/selector |
US6622154B1 (en) * | 1999-12-21 | 2003-09-16 | Lsi Logic Corporation | Alternate booth partial product generation for a hardware multiplier |
US6877022B1 (en) * | 2001-02-16 | 2005-04-05 | Texas Instruments Incorporated | Booth encoding circuit for a multiplier of a multiply-accumulate module |
US7024445B2 (en) * | 2001-12-20 | 2006-04-04 | Analog Devices, Inc. | Method and apparatus for use in booth-encoded multiplication |
US7272624B2 (en) * | 2003-09-30 | 2007-09-18 | International Business Machines Corporation | Fused booth encoder multiplexer |
US7467175B2 (en) * | 2003-12-29 | 2008-12-16 | Xilinx, Inc. | Programmable logic device with pipelined DSP slices |
-
2006
- 2006-08-24 US US11/509,492 patent/US7840629B2/en not_active Expired - Fee Related
-
2007
- 2007-02-08 JP JP2007028768A patent/JP4290202B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US7840629B2 (en) | 2010-11-23 |
JP2007234004A (ja) | 2007-09-13 |
US20070203962A1 (en) | 2007-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4290202B2 (ja) | ブース乗算の装置および方法 | |
US20210349692A1 (en) | Multiplier and multiplication method | |
de Aguiar et al. | Exploring the viability of stochastic computing | |
Premkumar | A formal framework for conversion from binary to residue numbers | |
Thomas | Design and simulation of radix-8 booth encoder multiplier for signed and unsigned numbers | |
Pieper et al. | Efficient Dedicated Multiplication Blocks for 2's Complement Radix-2m Array Multipliers. | |
Surendran et al. | Implementation of fast multiplier using modified Radix-4 booth algorithm with redundant binary adder for low energy applications | |
Timarchi et al. | A novel high-speed low-power binary signed-digit adder | |
CN101110016A (zh) | 子字并行整数乘法器 | |
JP4290203B2 (ja) | リダクションアレイの装置および方法 | |
Al-Khaleel et al. | Fast binary/decimal adder/subtractor with a novel correction-free BCD addition | |
Armand et al. | Low power design of binary signed digit residue number system adder | |
Saha et al. | 4: 2 and 5: 2 Decimal Compressors | |
Gorodecky et al. | Efficient hardware operations for the residue number system by boolean minimization | |
US20070180014A1 (en) | Sparce-redundant fixed point arithmetic modules | |
Backenius et al. | Bidirectional conversion to minimum signed-digit representation | |
Bai et al. | Design of 128-bit Kogge-Stone low power parallel prefix VLSI adder for high speed arithmetic circuits | |
Sahoo et al. | Delay optimized array multiplier for signal and image processing | |
Jiang et al. | Residue-Weighted Number Conversion with Moduli Set {2^ p-1, 2^ p+ 1, 2^{2p}+ 1, 2^ p} Using Signed-Digit Number Arithmetic | |
Saste et al. | Design and Implementation of Radix 4 Based Arithmetic Operations | |
Angel et al. | Improving system performance by using prefix adders in RNS | |
Vijaya Vardhan et al. | Ultra-Low-Power Modulo Adder with Thermometer Coding for Uncertain RNS Applications | |
Li et al. | Performance Improvement of Radix-4 Booth Multiplier on Negative Partial Products | |
Rajkumar et al. | VLSI Implementation of Signed Multiplier using Quaternary Signed Digit Number System | |
Vemula et al. | ASIC Design of ALU with different multipliers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090331 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090331 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120410 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120410 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130410 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |