JPS6083140A - Multiplication system - Google Patents
Multiplication systemInfo
- Publication number
- JPS6083140A JPS6083140A JP19071783A JP19071783A JPS6083140A JP S6083140 A JPS6083140 A JP S6083140A JP 19071783 A JP19071783 A JP 19071783A JP 19071783 A JP19071783 A JP 19071783A JP S6083140 A JPS6083140 A JP S6083140A
- Authority
- JP
- Japan
- Prior art keywords
- bits
- multiplication
- multiplier
- carry
- adder
- 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
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/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
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)
Abstract
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明は乗算方式に関し、特にN倍精度の乗算回路に簡
単な回路を追加するのみで、2N倍精度の乗算を直接行
い得るようにした乗算方式に関する。[Detailed Description of the Invention] [Field of Application of the Invention] The present invention relates to a multiplication method, and particularly to a multiplication method that allows 2N double precision multiplication to be performed directly by simply adding a simple circuit to an N double precision multiplication circuit. Regarding the method.
従来の高速乗算器の一構成例を第1図に示す。 An example of the configuration of a conventional high-speed multiplier is shown in FIG.
同図において、乗数レジスタ2にセットされた乗数が4
分割され、順次下位から乗数選択回路3により選択され
、被乗数レジスタ1にセットされた被乗数の倍数を倍数
発生回路4により発生する。In the figure, the multiplier set in multiplier register 2 is 4.
The multiplicand is divided and sequentially selected from the lowest by the multiplier selection circuit 3, and a multiple of the multiplicand set in the multiplicand register 1 is generated by the multiple generation circuit 4.
発生された倍数はキャリ・セイブ・アダー・トウリー5
に入力される。キャリ・セイブ・アダー・トウリー5は
図示するように複数個のキャリ・セイブ・アダー(キャ
リ保留加算器)6〜13をトウリー状に配置して構成の
ものであり、複数個の加算の対象となる数を最終的に2
個に絞る。キャリ・セイブ・アダー自体の動作は第2図
の加算例に示すように3個の入力から、キャリを伝播せ
ずに和とは別にハーフ・キャリの形で保持する。このと
き、和も適音の意味の和とは異なるのでハーフ・サムと
呼ぶことが多い。加算においてはキャリの伝播に一番時
間がかNるので、高速乗算器では第1図に示すようにキ
ャリ・セイブ・アダー・トウリー5により加算すべき数
を2個まで絞った後、キャリ・プロパゲイト・アダー(
キャリ伝播加算器)14によりキャリ伝播加算を行い、
一つにまとめる。下位乗数によるハープ・キャリ、ハー
フ・サムの形をした部分積は上位の部分積に加えるため
乗数ビット分だけ右シフトされ、再度キャリ・セイブ・
アダー・I〜ウリ−5に入力される。The generated multiple is carry save adder towry 5
is input. As shown in the figure, the carry save adder towry 5 is constructed by arranging a plurality of carry save adders (carry hold adders) 6 to 13 in a towry shape, and is used to add multiple objects. The final number is 2
Narrow down to individual items. The operation of the carry-save adder itself is as shown in the example of addition in FIG. 2, in which carries are not propagated from three inputs and are held in the form of a half carry separately from the sum. At this time, the sum is often called a half-sum because the meaning of the sum is different from the sum of the appropriate notes. In addition, carry propagation takes the longest time, so in a high-speed multiplier, as shown in Figure 1, after narrowing down the number to be added to two by the carry save adder towry 5, carry Propagate Adder (
Carry propagation addition is performed by carry propagation adder) 14,
Put it all together. Harp carry by the lower multiplier, the partial product in the form of a half sum is shifted right by the multiplier bits to be added to the upper partial product, and is again carried save.
It is input to Adder I to Uri-5.
このとき、右シフトにより、キャリ・セイブ・アダー・
1−ウリ−5よりこぼれる部分がスピル・アダーにぼれ
加算器)15により和をとられ、乗算結果レジスタ16
の下位の所定の位置にセットされる。At this time, by shifting to the right, carry, save, add,
The part spilling from 1-Uri-5 is added to the spill adder (adder) 15, and the multiplication result register 16
is set to a predetermined position below the .
第4図は従来の4倍精度乗算回路の構成例を示す図で、
4倍精度の乗算は、被乗数レジスタ21および乗数レジ
スタ22にセットされた被乗数および乗数を、第3図に
示すように被乗数の上位α(2倍精度)、下位β(2倍
精度)1乗数の上位γ(2倍精度)、下位δ (2倍精
度)に分け、β×δ、αXδ、β×γ、α×γの順に乗
算器23により乗算を行い、その結果を乗算結果レジス
タ24にセットする。この乗算結果を4倍精度演算のた
め附加的な回路を持った2倍精度の加算器25により以
下の順序で加算し最終結果を出す。Figure 4 is a diagram showing an example of the configuration of a conventional quadruple precision multiplication circuit.
In quadruple precision multiplication, the multiplicand and multiplier set in the multiplicand register 21 and the multiplier register 22 are divided into the upper α (double precision) and lower β (double precision) of the multiplicand, as shown in FIG. Divided into upper γ (double precision) and lower δ (double precision), the multiplier 23 performs multiplication in the order of β×δ, αXδ, β×γ, α×γ, and sets the result in the multiplication result register 24. do. The multiplication results are added in the following order by a double-precision adder 25 having an additional circuit for quadruple-precision calculation to produce the final result.
(1) β×δ□+αXδ、・・・上位へのキャリ保持
。(1) β×δ□+αXδ, . . . carry hold to higher rank.
(2)(前記(1)の加算器・果)+βXyL・・・上
位へのキャリ保持。(2) (Adder/result of (1) above)+βXyL...Hold carry to upper level.
(3)α×68+βXγ8+(前記(1)の加算からの
キヤ1月十(前記(2)の加算からのキャリ)・・・上
位へのキャリ保持。(3) α x 68 + β
(4)(前記(3)の加算結果)+α×δ、・・・上位
へのキャリ保持。(4) (Addition result of (3) above) +α×δ, . . . carry hold to higher order.
(5) α×γ8+(前記(3)の加算からのキャリ)
+(前記(4)の加算からのキャリ)。(5) α×γ8+ (carry from addition in (3) above)
+ (carry from addition in (4) above).
なお、こ2では最終的な積の正規化については省略して
いるが、さらに正規化が必要な場合がある。Note that although the final normalization of the product is omitted in this 2, further normalization may be necessary.
また、α×β□、αXδ、などの末尾のH,Lは乗算器
23での4倍精度の乗算結果の上位、下位をそれぞれ示
している。第3図には、上記4個の積の桁合せを図式的
に示す。Further, H and L at the end of α×β□, αXδ, etc. respectively indicate the upper and lower parts of the quadruple precision multiplication result in the multiplier 23. FIG. 3 schematically shows the digit alignment of the above four products.
以上、従来は上記のような手順で4倍精度の乗算を行っ
ていたので、実行時間が2倍精度の乗算の実行時間の4
倍よりも相当長くなるという欠点があった。Conventionally, quadruple-precision multiplication was performed using the procedure described above, so the execution time was 4 times the execution time of double-precision multiplication.
It had the disadvantage that it was considerably longer than the original.
本発明は上述の点にかんがみてなされたもので、N倍精
度の乗算回路を基本構成とし、簡単な手段を追加するこ
とにより2N倍精度の乗算を直接実行し、2N倍精度の
乗算の実行時間をN倍精度の乗算の実行時間の4倍より
も短かくする乗算方式を提供することを目的とする。The present invention has been made in view of the above points, and has a basic configuration of an N double precision multiplication circuit, and by adding simple means, directly executes 2N double precision multiplication, and executes 2N double precision multiplication. It is an object of the present invention to provide a multiplication method that reduces the execution time to less than four times the execution time of N double precision multiplication.
本発明の要点は、被乗数に上位、下位に分ける場合、上
位の被乗数のビット数が1回の乗算に使用する乗数の整
数倍になるようにすることによって、キャリ・セイブ・
アダー・トウリー内で、下位の部分積を1回の乗数のビ
ット数だけ右にシフトして上位の部分積に加算するか、
シフI−することなく加算するかのいずれかで部分積間
の桁合せが可能になることを利用した点にある。The key point of the present invention is that when the multiplicand is divided into upper and lower parts, the number of bits in the upper multiplicand is an integral multiple of the multiplier used for one multiplication.
Within the adder tory, shift the lower partial product to the right by one multiplier number of bits and add it to the higher partial product, or
The point is that it takes advantage of the fact that digit alignment between partial products is possible by either adding without shifting.
以下、本発明の一実施例を図面に基づいて説明する。 Hereinafter, one embodiment of the present invention will be described based on the drawings.
第5図は本発明の一実施例をなす乗算回路の構成を示す
図であり、被乗数レジスタ31,32、乗数レジスタ3
3.34に、波乗゛数2乗数の上位56ビツト、下位5
6ビツトがそれぞれセットされる。同図の乗算回路では
1度の乗算に使用される乗数は16ビツトであり、被乗
数選択回路35により、被乗数として16ビツトの4倍
の64ピツ、トが倍数発生回路37へ送出される。すな
わち、データAIとして上位データ56ビツ1−に下位
データの上位8ビツトが併合され、また、データA2と
して下位データの残りの48ビツトに16個のゼロが併
合されて選択される。一方、乗数選択回路6では乗数の
上位データ33.下位データ34に16個のゼロを附加
して128ピッ1−としたとき、16ビツトずつ、Bl
、B2.・・・・・B8の8個のデータの中から1個を
倍数発生回路37へ送出する。倍数発生回路37は、8
個の倍数発生器よりなり、各倍数発生器では、第8図に
示すように1乗数に関して、補正1ピツ1〜+データ2
ビツトの3ビツトを1組として各ビットパターンに対応
して倍数を発生させており、ある倍数発生器での乗数の
データ2ピッ1−のうち下位ビットは隣合う下位の倍数
発生器での乗数の補正ビットと重複している。このため
乗数データB□の16ビツトを倍数発生回路37に送出
するとき同時にデータB□−1の最下位ビットを倍数発
生回路37に送出している。データB8がゼロであるに
もがかわらず倍数発生回路37に送出する理由は、同時
に送出される乗数の最下位データであるB7の最下位ピ
ッ1−による補正を行うためである。また、データB1
に対する補正ピッ1−は0とする。第8図を簡単に説明
すると、被乗数の倍数を加算を伴うことなく被乗数のシ
フトおよび反転だけで発生させるため、例えばある倍数
発生器での乗数がro1]Jの場合、3倍数ではなく4
倍数を発生させ、隣合う下位の倍数発生器で乗数が「1
00」の場合、負の4倍数(元の倍数発生器では負の1
倍数に相当する)を発生することにより実質的に3倍数
となるように工夫している。第4図において、2の補数
化は、被乗数の反転だけでは1の補数にしかならないの
で2の補数に補正する必要があることを示している。ま
た、同図で乗数が「111」の場合は、被乗数としてす
べて1とし、2の補正化によってゼロとする。FIG. 5 is a diagram showing the configuration of a multiplication circuit constituting an embodiment of the present invention, in which multiplicand registers 31 and 32, multiplier register 3
3.34, the upper 56 bits and lower 5 bits of the wave power squared
6 bits are set respectively. In the multiplication circuit shown in the figure, the multiplier used for one multiplication is 16 bits, and the multiplicand selection circuit 35 sends 64 bits, which is 4 times the 16 bits, to the multiple generation circuit 37 as the multiplicand. That is, the upper 8 bits of the lower data are merged with the 56 bits 1- of the upper data as data AI, and 16 zeros are merged with the remaining 48 bits of the lower data as data A2. On the other hand, in the multiplier selection circuit 6, the higher order data 33. When 16 zeros are added to the lower data 34 to make 128 bits, Bl
, B2. . . . Sends one out of the eight data of B8 to the multiple generation circuit 37. The multiple generation circuit 37 has 8
As shown in FIG.
A set of 3 bits is used to generate multiples corresponding to each bit pattern, and the lower bits of the multiplier data 2 bits 1- from a certain multiple generator are the multipliers from the adjacent lower multiple generator. overlaps with the correction bit. Therefore, when the 16 bits of the multiplier data B□ are sent to the multiple generation circuit 37, the least significant bit of the data B□-1 is sent to the multiple generation circuit 37 at the same time. The reason why data B8 is sent to the multiple generation circuit 37 even though it is zero is to perform correction using the lowest pip 1- of B7, which is the lowest data of the multiplier that is sent at the same time. Also, data B1
The correction pitch 1- is set to 0. To briefly explain FIG. 8, in order to generate a multiple of a multiplicand only by shifting and inverting the multiplicand without addition, for example, if the multiplier in a certain multiple generator is ro1]
Generate a multiple, and in the adjacent lower multiple generator, the multiplier is “1”.
00'', it is a negative 4 multiple (in the original multiple generator it is a negative 1
(corresponding to a multiple), so that the number is substantially tripled. In FIG. 4, converting to a two's complement number indicates that it is necessary to correct the number to a two's complement number since only inverting the multiplicand will result in a one's complement number. Further, in the same figure, when the multiplier is "111", all the multiplicands are set to 1, and the multiplicand is set to zero by correction of 2.
先ず、第5図の乗算回路が2倍精度乗算器として使用さ
れる場合の動作概要を第6図の乗算順序を参照しながら
説明する。First, an outline of the operation when the multiplication circuit shown in FIG. 5 is used as a double precision multiplier will be explained with reference to the multiplication order shown in FIG. 6.
(1)倍数発生回路37の8本の各々の出方線には、被
乗数56ビツトX乗数3ピッ1への倍数がそれぞれ出力
され、キャリ・セイブ・アダー・1−ウリ−38に入力
され、データAIとデータB4の部分積(AlXB4)
51がハーフ・キャリ、ハーフ・サムの形でめられる。(1) A multiple of 56 bits of multiplicand x 3 bits of multiplier 1 is output to each of the eight output lines of the multiple generation circuit 37, and is input to the carry save adder 1-uri 38, Partial product of data AI and data B4 (AlXB4)
51 is shown in the form of half carry, half thumb.
(2)上記(1)と同様に倍数発生回路37とキャリ・
セイブ・アダー・トウリー38によりデータA1とデー
タB3との部分積(AlXB3)52がめられる。上記
(1)と異なるのは、(1)での部分積AIXB4が部
分積桁合せ用選択回路9によって右に16ビツトシフト
されキャリ・セイブ・アダー・1〜ウリ−8に入力され
てAlXB5との和がとられ、右にシフトすることによ
り、こぼれたAlX84の下位16ビツトの部分は、ス
ピル・アダー41j・こよって和がとられる。(2) Similarly to (1) above, the multiple generation circuit 37 and the carry
A partial product (AlXB3) 52 of data A1 and data B3 is determined by the save adder tree 38. The difference from the above (1) is that the partial product AIXB4 in (1) is shifted to the right by 16 bits by the partial product digit alignment selection circuit 9 and input to the carry save adder 1 to uri-8, and is then inputted to the AIXB5. The sum is calculated, and by shifting to the right, the lower 16 bits of the spilled AlX84 are summed by the spill adder 41j.
(3)上記(2)と同様AlXB2の部分積53がめら
れる。(3) Similar to (2) above, partial product 53 of AlXB2 is found.
(4)上記(2)と同様AIXBIの部分積54がめら
れる。 ゛
(5)ハーフ・キャ1ハハーフ・サムの形でめられてい
る部分積51〜54をキャリ・プロパゲイト・アダー4
0により1つにまとめ、乗算結果が得られる。(4) Similar to (2) above, partial product 54 of AIXBI is found.゛(5) Carry propagate adder 4 for the partial products 51 to 54 determined in the form of half-carrying half-sum.
They are combined into one by 0 and the multiplication result is obtained.
次に第5図の乗算回路が4倍精度乗算器として使用され
る場合の動作を説明する。16ビツト乗算は、第7図に
示す順序で実行される。このとき。Next, the operation when the multiplication circuit shown in FIG. 5 is used as a quadruple precision multiplier will be described. The 16-bit multiplications are performed in the order shown in FIG. At this time.
2倍精度乗算と異なる点は次の4通りの場合である。す
なわち、
(1) 部分積61ないし部分積65と部分積66の和
、
(ii) 部分積61ないし部分積67と部分積68の
和、
(iii ) 部分積61ないし部分積69と部分積7
゜の和、
(iv ) 部分積61ないし部分積71と部分積72
の和、
の場合、2倍精度乗算と異なる。この場合、部分積を右
に16ビツトシフ1−することなくそのま\、キャリ・
セイブ・アダー・トウリー38に入力する。また、この
ときは、スピル・アダー41も使用しない。This differs from double precision multiplication in the following four cases. That is, (1) the sum of partial products 61 to 65 and partial product 66, (ii) the sum of partial products 61 to 67 and partial product 68, (iii) the sum of partial products 61 to 69 and partial product 7.
sum of °, (iv) partial product 61 to partial product 71 and partial product 72
The sum of , is different from double precision multiplication. In this case, without shifting the partial product to the right by 16 bits, carry it as is.
Enter Save Adder Tory 38. Also, at this time, the spill adder 41 is not used.
こ\で、部分積を右に16ビツトするが、そのま\とす
るかを選択するのが部分積桁合せ用選択回路39である
。Here, the partial product is shifted 16 bits to the right, but the partial product digit alignment selection circuit 39 selects whether to leave it as is.
4倍精度乗算では16ビツト乗算を16回実行するが、
下位の部分については上位へのキャリだけを拾い、結果
として結果レジスタ群42〜46の116ビツトだけめ
る。結果レジスタ16の4ビツトは、4ビツトを1デイ
ジツトとしたとき。In quadruple precision multiplication, 16 bit multiplication is executed 16 times, but
For the lower part, only the carry to the upper part is picked up, resulting in only 116 bits in result registers 42-46. The 4 bits in the result register 16 are 1 digit.
結果の最上位がゼロの場合、ガード・ディシラ1−とし
て使用する。結果レジスタ群42〜46にセットするデ
ータを第7図に示す演算手順に従って説明すると以下の
通りとなる。If the most significant result is zero, use it as a guard desir. The data set in the result register groups 42 to 46 will be explained as follows according to the calculation procedure shown in FIG.
結果レジスタ46には、部分積61ないし部分積73を
右に16ビツ1−シフトするとき、ビット中の上位4ピ
ツ1〜をセットする。When shifting the partial products 61 to 73 to the right by 16 bits, the upper four bits 1 to 1 of the bits are set in the result register 46.
結果レジスタ45には、部分積61ないし部分積74を
右に16ビツトシフトするとき、スピル・アダー41に
よってまる和16ビツl−をセットする。When the partial products 61 to 74 are shifted to the right by 16 bits, the spill adder 41 sets a total sum of 16 bits l- in the result register 45.
結果レジスタ44には、部分積61ないし部分積75を
右に16ビツトシフトするとき、スピル・アダー41に
よってまる和16ビツトをセラ1−する。When the partial products 61 to 75 are shifted to the right by 16 bits, the spill adder 41 stores a total of 16 bits in the result register 44.
結果レジスタ43には、部分積61ないし部分積76の
うち上位から65ないし80ビツトに相当し、スピル・
アダー41によってまる和16ビツトがセラ1−される
。The result register 43 corresponds to the upper 65 to 80 bits of the partial products 61 to 76, and contains spill and
A total of 16 bits are set to 1 by the adder 41.
結果レジスタ42には、1部分積61ないし部分積76
のうち上位から1ないし64ピツ1〜に相当し、キャリ
・プロパゲイト・アダー40によってまる和64ビット
がセットされる。The result register 42 contains partial products 61 to 76.
This corresponds to 1 to 64 bits from the highest order, and a total of 64 bits are set by the carry propagate adder 40.
以上、上記実施例によれば、乗算回路の主要部分である
倍数発生回路37、キャリ・セイブ・アダー・トウリー
38の規模を2倍にすることなく、2N倍精度乗算回路
をN倍精度乗算回路を基本的に構成できるので、以下の
(1)〜(3)に示すような効果が得られる。As described above, according to the above embodiment, a 2N double precision multiplication circuit can be converted into an N double precision multiplication circuit without doubling the scale of the multiple generation circuit 37 and the carry save adder towry 38, which are the main parts of the multiplication circuit. can basically be configured, so that the following effects (1) to (3) can be obtained.
(1)従来のように2N倍精度乗算をN倍精度の4回の
乗算に分割しなくて済み、実行時間の短縮が図れる。(1) It is not necessary to divide 2N double precision multiplication into four N double precision multiplications as in the conventional method, and the execution time can be shortened.
(2)従来は、2N倍精度乗算をN倍精度の4回の乗算
に分割し、この4回の乗算の積をN倍精度加算器で1つ
にまとめる場合、2N倍精度を特別に意識した回路をN
倍精度加算器に持たせていたが、その必要がなくなり、
N倍精度加算器の構成が簡略化できる。(2) Conventionally, when a 2N double-precision multiplication is divided into four N double-precision multiplications and the product of these four multiplications is combined into one by an N double-precision adder, 2N double-precision is specially taken into account. N
The double-precision adder used to have it, but it is no longer necessary,
The configuration of the N double precision adder can be simplified.
(3)従来のように、2N倍精度をN倍精度の4回の乗
算に分割し、この4回の乗算の積をN倍精度加算器に送
る場合、最上位ディジットがゼロであっても正規化する
ことなく送るという特別な結果の選択をしなくて済み、
乗算の結果の選択回路が簡略化できる。(3) As in the past, when dividing 2N double precision into four multiplications of N double precision and sending the product of these four multiplications to the N double precision adder, even if the most significant digit is zero, There is no need to make a special selection of results to send without normalization,
The selection circuit for the multiplication result can be simplified.
以上説明したように本発明に係る乗算方式は、N倍精度
乗算回路に簡単な回路を追加するのみで2N倍精度の乗
算が可能になるので、乗算時間の短縮、回路の簡略化等
に優れた効果を有する。As explained above, the multiplication method according to the present invention enables 2N double precision multiplication by simply adding a simple circuit to the N double precision multiplication circuit, so it is excellent in shortening the multiplication time and simplifying the circuit. It has a great effect.
第1図は従来の高速乗算器の構成例を示す図。
第2図はキャリ・セイブ加算例を示す図、第3叩は乗算
の順序と桁合せを示す図、第4図は従来の4倍精度来算
回路の構成例を示す図、第5図は本発明に係るN倍精度
乗算回路を基本とした2N倍精度乗算回路の構成を示す
図、第6図、第7図は第5図の乗算回路を用いて、N倍
精度の乗算、2N倍精度乗算の乗算の順序と桁合せをそ
れぞれ示す図、第8図は倍数発生器で発生する倍数を示
す図である。
1・・・被乗数レジスタ、2・・・乗数レジスタ、3・
・・乗数選択回路、 4・・・倍数発生回路、5・・・
キャリ・セイブ・アダー・1−ウリ−16〜13・・・
キャリ・セイブ・アダー、14・・・キャリ・プロパゲ
イト・アダー、15・・・スピル・アダー、16・・・
乗算結果レジスタ、21・被乗数レジスタ、 22・・
・乗数レジスタ、23・・・乗算器、24・・・乗算結
果レジスタ。
25・・・加算器、 26・・・加算結果レジスタ、3
1.32・・・被乗数レジスタ、33.34・・乗数レ
ジスタ、 35・・・被乗数選択回路、36・乗数選択
回路、37・・・倍数発生回路、38・・・キャリ・セ
イブ・アダー・1−ウリ−140・・・キャリ・プロパ
ゲイト・アダー、41・・・スピル・アダー、 42〜
46・・・結果レジスタ群。
21図
ち−2図
第3図
一綽工9017コ
122
別“5図
回
よニノイ151;rv 4L5G ピー 1・オ6図
オフ図
肛 5G+−ネt 4156(ヘア
オ8 図FIG. 1 is a diagram showing an example of the configuration of a conventional high-speed multiplier. Figure 2 is a diagram showing an example of carry-save addition, Figure 3 is a diagram showing the order of multiplication and digit alignment, Figure 4 is a diagram showing an example of the configuration of a conventional quadruple precision calculation circuit, and Figure 5 is 6 and 7 are diagrams showing the configuration of a 2N double precision multiplication circuit based on the N double precision multiplication circuit according to the present invention. FIG. 8 is a diagram showing the order of multiplication and digit alignment in precision multiplication, and FIG. 8 is a diagram showing multiples generated by the multiple generator. 1... Multiplicand register, 2... Multiplier register, 3...
...Multiplier selection circuit, 4...Multiple generation circuit, 5...
Carry Save Adder 1-Uri-16~13...
Carry save adder, 14... carry propagate adder, 15... spill adder, 16...
Multiplication result register, 21, multiplicand register, 22...
- Multiplier register, 23... Multiplier, 24... Multiplication result register. 25...Adder, 26...Addition result register, 3
1.32... Multiplicand register, 33.34... Multiplicand register, 35... Multiplicand selection circuit, 36. Multiplier selection circuit, 37... Multiple generation circuit, 38... Carry save adder 1 -Uri-140...Carry Propagate Adder, 41...Spill Adder, 42~
46...Result register group. 21 Figure Chi - 2 Figure 3 Figure 1 9017 Ko 122 Separate "5 Figure Times Ninoy 151; rv 4L5G P 1 O 6 Figure Off Figure Anal 5G + - Net 4156 (Hair O 8 Figure
Claims (1)
給される被乗数のビット数が倍数発生回路に供給される
乗数の整数倍となるように構成すると共に、部分積を倍
数発生回路に供給する乗数のビット数だけ右へシフトさ
せて次段の部分積に加算するか、シフトさせないでその
ま\加算するかの部分積桁合せ用選択回路を追加するこ
とによって、2N倍精度データの乗算を直接行うことを
特徴とする乗算方式。(1) The multiplier circuit for N double precision data is configured so that the number of bits of the multiplicand supplied to the multiple generation circuit is an integral multiple of the multiplier supplied to the multiple generation circuit, and the partial product is transmitted to the multiple generation circuit. By adding a partial product digit alignment selection circuit that selects whether to shift the supplied multiplier to the right by the number of bits and add it to the next partial product, or to add it as is without shifting, 2N double precision data can be A multiplication method characterized by direct multiplication.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58190717A JPH0621983B2 (en) | 1983-10-14 | 1983-10-14 | Multiplier |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58190717A JPH0621983B2 (en) | 1983-10-14 | 1983-10-14 | Multiplier |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS6083140A true JPS6083140A (en) | 1985-05-11 |
JPH0621983B2 JPH0621983B2 (en) | 1994-03-23 |
Family
ID=16262648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP58190717A Expired - Lifetime JPH0621983B2 (en) | 1983-10-14 | 1983-10-14 | Multiplier |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0621983B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60229140A (en) * | 1984-04-26 | 1985-11-14 | Nec Corp | Double precision multiplier |
JPH03185516A (en) * | 1989-12-14 | 1991-08-13 | Fujitsu Ltd | Method for converting decimal number into binary number |
JPH03256117A (en) * | 1990-03-07 | 1991-11-14 | Fujitsu Ltd | Multiplier |
US5283755A (en) * | 1993-04-14 | 1994-02-01 | International Business Machines Corporation | Multiplier employing carry select or carry look-ahead adders in hierarchical tree configuration |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS50115740A (en) * | 1974-02-21 | 1975-09-10 | ||
JPS5759245A (en) * | 1980-09-26 | 1982-04-09 | Fujitsu Ltd | Double-length multiplier |
JPS58137045A (en) * | 1982-02-05 | 1983-08-15 | Matsushita Electric Ind Co Ltd | Parallel multiplier |
-
1983
- 1983-10-14 JP JP58190717A patent/JPH0621983B2/en not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS50115740A (en) * | 1974-02-21 | 1975-09-10 | ||
JPS5759245A (en) * | 1980-09-26 | 1982-04-09 | Fujitsu Ltd | Double-length multiplier |
JPS58137045A (en) * | 1982-02-05 | 1983-08-15 | Matsushita Electric Ind Co Ltd | Parallel multiplier |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60229140A (en) * | 1984-04-26 | 1985-11-14 | Nec Corp | Double precision multiplier |
JPH061438B2 (en) * | 1984-04-26 | 1994-01-05 | 日本電気株式会社 | Double precision multiplier |
JPH03185516A (en) * | 1989-12-14 | 1991-08-13 | Fujitsu Ltd | Method for converting decimal number into binary number |
JPH03256117A (en) * | 1990-03-07 | 1991-11-14 | Fujitsu Ltd | Multiplier |
US5283755A (en) * | 1993-04-14 | 1994-02-01 | International Business Machines Corporation | Multiplier employing carry select or carry look-ahead adders in hierarchical tree configuration |
Also Published As
Publication number | Publication date |
---|---|
JPH0621983B2 (en) | 1994-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ding et al. | High-speed ECC processor over NIST prime fields applied with Toom–Cook multiplication | |
Gnanasekaran | A fast serial-parallel binary multiplier | |
JPH05233228A (en) | Floating point arithmetic unit and its arithmetic method | |
US4799183A (en) | Vector multiplier having parallel carry save adder trees | |
JPH01169531A (en) | Fast binary/decimal arithmetic logical computing apparatus and computing of binary coded decimal number | |
JPH0368416B2 (en) | ||
US4638449A (en) | Multiplier architecture | |
JPS6083140A (en) | Multiplication system | |
Ulman et al. | Highly parallel, fast scaling of numbers in nonredundant residue arithmetic | |
US5115408A (en) | High speed multiplier | |
JPS60179840A (en) | Adder | |
Bajard et al. | A new Euclidean division algorithm for residue number systems | |
US4190894A (en) | High speed parallel multiplication apparatus with single-step summand reduction | |
JP3227538B2 (en) | Binary integer multiplier | |
KR100265355B1 (en) | Apparatus for performing multiply operation of floating point data with 2-cycle pipeline scheme in microprocessor | |
EP0326414A2 (en) | High speed multiplier | |
JP2681968B2 (en) | Arithmetic processing unit | |
JPH0424730B2 (en) | ||
EP0626638A1 (en) | A one's complement adder and method of operation | |
Siddha | Area Efficient 4-Input Decimal Adder Using CSA and CLA | |
JPH0784762A (en) | Multiplication circuit | |
Vergos et al. | Efficient modulo 2 n+ 1 multi-operand adders | |
JPS61246837A (en) | Parallel multiplier | |
Stouraitis et al. | Multiplication of complex numbers encoded as polynomials | |
JPH0516055B2 (en) |