JP4282193B2 - 乗算装置 - Google Patents

乗算装置 Download PDF

Info

Publication number
JP4282193B2
JP4282193B2 JP2000004366A JP2000004366A JP4282193B2 JP 4282193 B2 JP4282193 B2 JP 4282193B2 JP 2000004366 A JP2000004366 A JP 2000004366A JP 2000004366 A JP2000004366 A JP 2000004366A JP 4282193 B2 JP4282193 B2 JP 4282193B2
Authority
JP
Japan
Prior art keywords
divided
circuit
booth
multiplication
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
Application number
JP2000004366A
Other languages
English (en)
Other versions
JP2001195235A (ja
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.)
Renesas Technology Corp
Original Assignee
Renesas Technology 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 Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2000004366A priority Critical patent/JP4282193B2/ja
Priority to US09/756,269 priority patent/US20010009012A1/en
Publication of JP2001195235A publication Critical patent/JP2001195235A/ja
Priority to US11/174,544 priority patent/US20050246407A1/en
Application granted granted Critical
Publication of JP4282193B2 publication Critical patent/JP4282193B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/53Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
    • G06F7/5318Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel with column wise addition of partial products, e.g. using Wallace tree, Dadda counters

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、乗算装置に関し、特に、ブースアルゴリズムに従って乗数をエンコードし、ワレスツリー型加算回路を用いて部分積を加算して乗数と被乗数の積を求めるワレスツリー型乗算装置に関する。
【0002】
【従来の技術】
コンピュータなどを用いる演算処理装置において、乗算は最も多く行なわれる演算の1つであり、高速の演算処理システムを構築するためには、この乗算装置の高速化が必要不可欠である。乗算装置を構成する方法には種々の方法があるが、キャリーセーブ方式を用いる乗算装置とワレスツリーを用いた乗算装置が広く知られている。
【0003】
図12(A)は、従来の並列乗算回路の部分の構成を概略的に示す図である。図12(A)においては、乗数ビットY(j−1)−Y(j+2)を被乗数ビットX(i−1)−X(i+2)の4ビットの乗算を行なう部分の構成を示す。
【0004】
図12(A)において、乗数ビットY(j−1)−Y(j+2)と被乗数ビットX(i−1)−X(i+2)の交差部にそれぞれ対応して乗算単位回路UMが配置される。乗数ビットY(j−1)−Y(j+2)それぞれに対応して配置される乗算単位回路の行により、部分積PP0−PP3が生成される。この部分積PP0−PP3を桁合わせして加算することにより、乗数ビットY(j−1)−Y(j+2)と被乗数ビットX(i−1)−X(i+2)の乗算結果が得られる。図12(A)において、列方向(図12(A))の縦方向)に整列して配置される乗算単位回路UMが、同一桁に整列して配置される。各乗算単位回路UMのキャリーは次列の1桁上位の乗算単位回路UMへ与えられる。
【0005】
図12(B)は、図12(A)に示す乗算単位回路UMの構成を概略的に示す図である。図12(B)において乗算単位回路UMは、乗数ビットYbと被乗数ビットXaを受けるAND回路900と、AND回路900の出力ビットと前段の乗算単位回路のサム出力Sinと、同一段の下位桁の乗算単位回路からのキャリー入力Cinとを加算して、サム出力Sおよびキャリー出力Coutを生成する全加算器902を含む。AND回路900からは、ビットXaおよびYbの乗算結果Xa・Ybが出力される。
【0006】
この図12(B)に示す乗算単位回路をアレイ状に配置して構成される図12(A)に示す並列乗算回路は、単に、ビットX(i−2)−X(i+2)および乗数ビットY(j−1)−Y(j+2)を乗算して加算するだけである。図12(A)に示す並列乗算回路は、図12(B)に示す乗算単位回路UMをアレイ状に規則的に配置するだけであり、レイアウトが容易であり、また設計に要する期間を短縮することができ、集積回路化に適した構成を有している。
【0007】
しかしながら、このキャリーセーブ方式の並列乗算回路においてはキャリーを上位桁へ伝達し、同一列(部分積)内ではキャリー伝搬はなく高速である。しかし、計算時間が乗数Yのビット数に比例するため(部分積の数が乗数ビットの数に比例する)、多ビット乗算を行なう場合、計算時間が長くなるという問題があり、たとえば54ビットのなどの多ビットの演算が要求されるマイクロプロセッサ等に対しては、図12(A)に示す並列乗算回路の構成は適しているとはいえない。
【0008】
この図12(A)に示す並列乗算回路の欠点を解消するために、同一桁内並列加算方式と呼ばれる方式が用いられ、計算の並列度を高くすることが行なわれる。
【0009】
図13は、従来の並列乗算回路の他の構成を概略的に示す図である。図31においても、乗数Yの4ビットY(j−1)−Y(j+2)と被乗数XのビットX(i−1)−X(i+2)の部分の構成を示す。この図13に示す並列乗算回路の構成においては、加算段P0−P3において、その加算結果を示すサム出力は、次段ではなく、次の次の段の乗算単位回路UMへ与えられる。すなわち1段の加算段を飛越してサム出力が伝達される。この図13に示す並列乗算回路は、同一桁内において並列に演算することのできる加算の数を増加させ、演算速度を高くすることを図る。これは、一般に「桁内並列加算方式」と呼ばれる。キャリーセーブ方式は、さらに各加算段におけるキャリーを、次段の加算段の1つ上位桁の乗算単位ユニットへ与え、同一加算段内での、キャリーの伝搬を停止する。
【0010】
しかしながら、この図13に示す構成では、図12(A)に示す並列乗算回路の構成に比べて、各乗算単位回路のサム出力を伝達する信号線の配線長が約2倍程度長くなる(加算段2段分サム出力を伝達する必要があるため)。一般に、配線遅延は、その配線長の二乗に比例することが知られており、したがって、この図13に示す構成における配線遅延は、図12(A)に示す並列乗算回路のそれの2倍となり、この桁内並列加算方式の乗算回路の配線遅延を低減するために、たとえば特開昭63−55627においては、この乗算器アレイを2分割する構成が提案されている。
【0011】
図14は、上述の特開昭63−55627に示される乗算装置の構成を概略的に示す図である。図14において、乗算アレイが2つのブロックBL1およびBL2に分割され、これらの乗算ブロックBL1およびBL2の間に、最終段加算回路FSAが配置される。ブロックBL1は、被乗数XのビットX0−Xnと乗数YのビットY0−Y(n/2)についての部分積加算による乗算を行なう。乗算ブロックBL2においては、乗数YについてビットY((n/2)−3)−Ynと被乗数XのビットX0−Xnの部分積の加算を行なう。
【0012】
ブロックBL1およびBL2それぞれにおいては、キャリーセーブ加算方式で乗算回路が構成されており、各単位乗算回路のキャリー出力は、次段の加算回路の1ビット上位桁の単位乗算回路へ与えられる。ブロックBL1およびBL2において個々に乗算が行なわれ、これらのブロックBL1およびBL2の中間乗算結果が、最終段加算回路FSAで加算されて乗数Yと被乗数Xの乗算結果を示す出力が得られる。
【0013】
乗算ブロックBL1およびBL2においては、サム出力が伝達される加算回路の段Pj−1〜Pj,Pk−1〜PK+2の数が低減され、配線遅延の影響をなくし、高速で乗算を行なうことを図る。しかしながら、この図14に示す構成では、乗算ブロックBL1およびBL2においては、乗数Yのビットに対応して加算回路を設ける必要があり、また各加算回路を介してキャリーが伝搬されるため、高速化に限度がある。
【0014】
また、この特開昭63−55627号公報においては、加算回路の段数を低減するために、ブースアルゴリズムを利用することを述べている。しかしながら、このブースアルゴリズムを用いる場合でも、乗算器アレイは、キャリーセーブ方式であり、単に加算回路の段数が低減されるだけであり、高速化にも限度があり、54ビットなどの多ビット乗算を行なう乗算器においては、この図14に示す構成を含めてキャリーセーブ加算方式はほとんど用いられない。また、この特開昭63−55627号においては、乗算器アレイの分割構造のみが述べられており、乗数Yおよび被乗数Xを、分割乗算ブロックBL1およびBL2にどのように与えるかについての具体的配置については何ら考察していない。
【0015】
図15は、従来のワレスツリー型乗算装置の全体の構成を概略的に示す図である。この図15に示すワレスツリー型乗算装置の構成は、たとえば特開平9−231056号公報に示されている。図15において、ワレスツリー型乗算装置は、被乗数Xを格納する被乗数レジスタ回路1101と、乗数Yを格納する乗数レジスタ回路1102と、乗数レジスタ回路1102からの乗数Yを所定のブースアルゴリズムに従ってエンコードするブースエンコーダ1109と、ブースエンコーダ1109からの選択制御信号1104−1111それぞれに対応して設けられ、被乗数レジスタ回路1101からの乗数Xとブースエンコーダ1109からの選択制御信号1104−1111それぞれとに従って部分積を生成する部分積発生回路1113−1120と、部分積発生回路1113−1120からの部分積1121−1128を加算するワレスツリー部1129と、ワレスツリー部1129からの2つの中間積結果1130を加算して積を生成する最終加算部1131を含む。
【0016】
ブースエンコーダ1109は、この乗数Yの所定数のビットに対応して設けられ、それぞれ所定のブースアルゴリズムに従ってエンコード動作を行なうブースエンコード回路1045−1052を含む。部分積発生回路1113−1120は、それぞれ被乗数Xの各ビットに対して所定のブースアルゴリズムに従って候補ビットを生成し、この生成した候補ビットから、対応のブースエンコード回路1045−1052からの選択制御信号1104−1111に従って候補ビットを選択して、部分積を生成する。
【0017】
ワレスツリー部1129は、この部分積1121−1128をツリー状に順次数を低減して加算を行ない、8個の部分積1121−1128を2つの中間積1130にまで低減する。ブースアルゴリズムに従って乗数Yのビットを圧縮して、生成される部分積の数を低減し、次いでワレスツリー部1129で部分積の数を各段ごとに低減することにより、演算の高速化を図る。
【0018】
図16は、図15に示すワレスツリー部1129の構成を概略的に示す図である。図16においてワレスツリー部1129は、部分積発生回路1113−1120から生成された部分積(以下第0次部分積と称す)を加算するための4:2加算回路1141および1142と、これらの4:2加算回路1141および1142からの出力を加算して2つの中間積1130を生成する4:2加算回路1140を含む。4:2加算回路1138は、第0次部分積1121−1124を加算して、2つの中間積1141を出力する。4:2加算回路1139は第0次部分積1125−1128を加算して中間積1142を生成する。これらの4:2加算回路1138および1139は、4入力(I1−I4)2出力(キャリーCおよびサムS)の加算回路である。4:2加算回路1140も同様、4入力(I1−I4)2出力(キャリーCおよびサムS)の加算回路であり、4:2全加算回路1138および1139の出力を加算して、2つの中間積1130を生成する。
【0019】
したがって、8個の部分積を、2段の加算回路でツリー状に加算して中間積を生成して最終加算部1131へ与えることができる。ブースエンコーダ1103は、そのアルゴリズムに従って乗数Yのビット数を低減している(2次のブースアルゴリズムでは半減)。したがってこのブースアルゴリズムおよびワレスツリー構造を利用することにより、8個の0次部分積を第1次の部分積に圧縮し、次いでこの4個の部分積を2つの中間積に圧縮することができ、加算回路の段数が低減され、応じて高速で演算を行なうことができる。
【0020】
図17は、図16に示す4:2加算回路1138の構成を概略的に示す図である。図17において、4:2加算回路1138は、nビットの4入力2出力加算素子AE1−AEnを含む。これらの加算素子AE1−AEnの各々は、第0次部分積1124−1121の同一桁の4ビットを入力I1−I4に受け、かつ前段の加算素子のキャリー出力COをキャリー入力CIに受けて2ビットの加算結果CおよびSを出力する。2ビットの加算結果において、下位ビットがサムSで表わされ、上位ビットがキャリーCで表わされる。これらの加算素子AE1−AEnの2ビットの出力は、それぞれ並列に、第0次部分積1141として出力される。キャリーは、これらの加算素子AE1−AEnを伝搬している。
【0021】
このようなワレスツリーを用いて順次乗算を行なうことにより、8個の第0次部分積を4個の第1次部分積に圧縮し、次いで、これらの4個の第1次部分積を2つの2次部分積(中間積)に圧縮することができ、キャリーセーブ方式の並列乗算回路よりも加算回路の段数を大幅に低減することができる。
【0022】
なお、この4入力2出力加算素子の具体的構成は、前述の先行技術特開平9−231056号公報にその一例が示されている。
【0023】
一般に、コンピュータシステムにおいては、54ビット以上の乗算が行なわれる。この4:2加算回路を用いたワレスツリー型アレイ構成を54ビット乗算装置に適用した場合に考えられる構成を図18に示す。図18において、ワレスツリー型乗算装置は、乗数Yをブースアルゴリズムに従ってエンコードして選択制御信号を生成するブースエンコーダ1と、被乗数Xを格納する被乗数レジスタ回路2と、ブースエンコーダ1からの選択制御信号それぞれに対応して設けられ、被乗数レジスタ回路2からの被乗数Xと対応の選択制御信号とに従って第0次部分積を生成するブースセレクタ3a−3αと、第0次部分積を加算して第1次部分積を生成する第1次4:2加算回路4a−4gと、加算回路4a−4bからの第1次部分積を加算して第2次部分積を生成する第2次4:2加算回路5a−5eと、第2次4:2加算回路5a−5eからの第2次部分積を加算して第3次部分積を生成する第3次4:2加算回路6aおよび6bと、6aおよび6bからの第3次部分積(最終中間積)を加算して最終加算結果すなわち乗数Yと被乗数Xの積Zを出力する最終加算回路7を含む。
【0024】
図18においては、乗数Yおよび被乗数Xはともに54ビットである。2次のブースアルゴリズムに従った場合、部分積の積は、乗数Yのビット数の1/2に低減される。ここで、2次のブースアルゴリズムは、一般に次式で表わされる。
【0025】
Z=X・Σ(y(2j)+y(2j+1)−2・y(2j+2)・22j
ここで、総和は、j=0〜n/2−1について行なわれる。すなわち、乗数Yの隣り合う3ビットを同時に見ることにより、被乗数Xに掛け合わされて形成される部分積を半分にすることができる。また、隣接する3ビットy(2j)、y(2j+1)およびy(2j+2)の値に応じて、加算されるべき部分積は、±2・X、±X、および0のいずれかである。ブースセレクタ3a−3αは、ブースエンコーダ1に含まれるブースエンコード回路1a−1αからの選択制御信号に従った被乗数Xのシフト/反転により、選択制御信号が指定する部分積を生成する。ここで、2・Xは、1ビット左シフト操作により実現され、−Xは、2の補数演算により、全ビット値の反転に1を加えることにより実現される。
【0026】
ブースセレクタ3a−3αそれぞれにおいて生成された第0次部分積を第1次4:2加算回路4a−4gで加算する。すなわち、ブースセレクタ3aおよび3bの生成する第0次部分積は、第1次4:2加算回路4aで加算される。ブースセレクタ3c−3fの生成する第0次部分積は、第1次4:2加算回路4bで加算される。ブースセレクタ3b−3jの生成する第0次部分積は、第1次加算回路3kで加算される。ブースセレクタ3k−3nが生成する第0次部分積は、第1次4:2加算回路4bで加算される。
【0027】
ブースセレクタ3o−3rが生成する第0次部分積は、第1次4:2加算回路4eで加算される。ブースセレクタ3s−3vが生成する第0次部分積は、第1次4:2加算回路4fで加算される。ブースセレクタ3w−3zが生成する第0次部分積は、第1次4:2加算回路4gで加算される。ブースセレクタ3αが生成する第0次部分積については、加算は行なわれない。
【0028】
第1次4:2加算回路4aおよび4bのそれぞれの生成する第1次部分積は、第2次4:2加算回路5aで加算される。第1次4:2加算回路4cおよび4dの生成する第1次部分積は、第2次4:2加算回路5bで加算される。第1次4:2加算回路4eおよび4fの生成する第1次部分積は、第2次4:2加算回路5cで加算される。第1次4:2加算回路4gの生成する第1次部分積とブースセレクタ3αの生成する第0次部分積は、第2次4:2加算回路5eで加算される。
【0029】
第2次4:2加算回路5aおよび5bの生成する第2次部分積は、第3次4:2加算回路6aで加算される。第2次4:2加算回路5cおよび5dの生成する第2次部分積は、第3次4:2加算回路6bで加算される。
【0030】
第3次4:2加算回路6aおよび6bの生成する第3次部分積が、最終積加算回路7で加算され、最終加算結果を示す積Zが最終加算回路7から出力される。一般に、加算回路は、その次数が増大するにつれてビット幅が大きくなる。
【0031】
このワレスツリー型乗算装置において、桁合わせをして加算器を配置した場合、配線が錯綜するため、図18に示すように、ブースセレクタ3a−3αおよび4:2加算回路4a−4g、5a−5d、および6aおよび6bはすべて、その一方端が整列して配置される。これにより、配線が単に通過する空き領域などを詰めて、乗算装置の占有面積を低減する。
【0032】
この図18に示すワレスツリー型乗算装置において、部分積が順次半減されており、加算回路の段数がキャリーセーブ型の乗算回路に比べて大幅に低減され、キャリーセーブ型乗算装置に比べて高速に乗算を行なうことができる。
【0033】
【発明が解決しようとする課題】
この図18に示すワレスツリー型乗算装置においては、加算器から生成される部分積の伝搬方向は、図18の被乗数レジスタ回路2から最終加算回路7に向かって一方方向である。したがって、演算は各加算段において並列に実行されるものの、演算のクリティカルパスは、図18に矢印で示すように、被乗数レジスタ2からブースセレクタ3aより第0次部分積が生成され、次いで第1次4:2加算回路4aで加算され、次いで第2次4:2加算回路5aで加算されて第2次部分積が生成され、次いで第3次4:2加算回路6aで加算されて生成される第3次部分積が最終加算回路7に到達するまでの経路となる。この部分積加算器は、図18の横方向に最低54ビットを必要とし、このクリティカルパスの経路は、ブースセレクタ27段、第1次4:2加算回路7段、第2次4:52加算回路4段、第3次4:2加算回路2段、および最終加算回路1段の合計41段で構成される。
【0034】
各段において出力を高速で生成するために、構成要素のトランジスタのサイズ(MOSトランジスタの場合チャネル幅とチャネル長の比)を大きくすると、乗算装置のこの乗算アレイの面積が増加する。したがって、高集積化の観点から、構成要素のトランジスタのサイズは必要最低限のサイズとしている。この第3段4:2加算回路6aから最終段加算回路7へ、乗算アレイの1/2の長さの距離にわたって第3次部分積を伝達する必要があり、この間の信号伝搬遅延が増加し、高速で乗算を行なうことができなくなるという問題が生じる。
【0035】
またブースセレクタ3a−3αにより生成した第0次部分積は、各段の加算回路で加算されるため、この加算回路の次数が大きくなるほど、加算回路のビット幅が増加し、この54ビット乗算装置の場合、最終段加算回路7のビット幅が、80ビット程度になる。乗算装置においては、レイアウト面積をできるだけ小さくするため、この乗算アレイの一方端は整列して配置され、はみ出した部分は、乗算装置の他方側にレイアウトされる。したがって、この領域における空き領域の面積分布が単調増加または単調減少のように規則的とならず、不規則となり、他回路を容易にレイアウトすることができず、空き領域として放置されるため、レイアウトエリア使用効率が低く、高集積化された乗算装置を得ることができないという問題があった。
【0036】
それゆえ、この発明の目的は、高速で乗算を行なうことのできるワレスツリー型乗算装置を提供することである。
【0037】
この発明の他の目的は、面積使用効率の優れたかつ高速動作するワレスツリー型乗算装置を提供することである。
【0038】
【課題を解決するための手段】
請求項1に係る乗算装置は、多ビット乗数をブースアルゴリズムに従ってデコードして複数の選択制御信号を生成するためのブースエンコーダと、このブースエンコーダからの複数の選択制御信号各々と多ビット被乗数とから複数の部分積を生成するブース選択回路と、この複数のブース選択回路の生成する複数の部分積をツリー状に加算して部分積数を順次低減して最終中間乗算値を生成する中間積生成回路を備える。中間積生成回路は、ブースセレクタの出力の所定のビット位置で2つの分割アレイに分割される分割アレイ構造を有し、それらの分割アレイは個別に最終中間乗算値をそれぞれ生成し、かつ分割アレイの各々はツリー状に加算するように配置される複数段の加算回路およびブース選択回路を含む。
【0039】
請求項1に係る乗算装置は、さらに、この中間積生成回路からの最終中間乗算値を加算して多ビット乗数と多ビット被乗数の乗算値を生成する最終加算回路を備える。
【0040】
請求項に係る乗算装置において、分割アレイが選択制御信号の伝達方向と直交する方向に整列して配置され、最終加算回路は、分割アレイの間に配置される。分割アレイの加算回路ツリーアレイは、最終加算回路へ向かう方向に沿ってツリー状に加算を行なう。
【0041】
請求項に係る乗算装置は、請求項の複数段の加算回路は、互いにビット幅の異なる加算回路を含み、複数段の加算回路は一方端が整列し、かつ他方端が個々のビット幅に応じて位置が異なるように対応の分割アレイ内に配置され、ブースエンコーダは、これらの分割アレイの他方端に配置される。
【0042】
請求項に係る乗算装置は、請求項のブースエンコーダが、この最終加算回路を間に挟むように分割して配置される。
【0043】
請求項に係る乗算装置は、請求項1からのいずれかの装置が多ビット被乗数を受けて複数のブース選択回路へ与える被乗数発生回路をさらに備える。この被乗数発生回路は分割アレイの間に配置される。
【0044】
請求項に係る乗算装置は、請求項1の分割アレイが複数の選択制御信号の伝達方向に関して整列して配置され、分割アレイはそれぞれ同一方向に沿って部分積をツリー状に加算する複数段の加算回路を含む。
【0045】
請求項に係る乗算装置は請求項のブースエンコーダが分割アレイ各々に対面するように分割して配置される。
【0046】
請求項に係る乗算装置は、請求項の装置において分割アレイの各々が互いにビット幅の異なる複数段の加算回路を含み、これら複数段の加算回路は一方側が整列して配置され、各分割アレイの他方端側に分割ブースエンコーダが配置される。
【0047】
請求項に係る乗算装置は、請求項の分割ブースエンコーダが、分割アレイに関して対向する側にそれぞれ配置される。
【0048】
請求項に係る乗算装置は請求項の分割ブースエンコーダ、分割アレイの間に配置される。
【0049】
請求項10に係る乗算装置は請求項の装置がさらに多ビット被乗数を複数のブース選択回路へ与えるための被乗数データ発生回路を含み、この被乗数データ発生回路は分割アレイに共通にかつ分割アレイの一方に対面して配置される。
【0050】
請求項11に係る乗算装置は、請求項の装置がさらに多ビット被乗数をブース選択回路へ与えるための被乗数データ発生回路をさらに備え、この被乗数データ発生回路は分割アレイの間の領域に配置される。
【0051】
請求項12に係る乗算装置は、請求項の装置が多ビット被乗数をブース選択回路へ与える被乗数データ発生回路をさらに備え、この被乗数データ発生回路は、分割アレイ間の領域に配置される。
【0052】
請求項13に係る乗算装置は請求項の装置がさらに多ビット被乗数をブース選択回路へ与えるための被乗数データ発生回路をさらに備える。この被乗数データ発生回路は、分割ブースエンコーダに隣接して分割アレイ間の領域に配置される。
【0053】
請求項14に係る乗算装置は、請求項11から13のいずれかの被乗数発生回路、分割アレイの選択制御信号の伝達する方向と直交する方向の高さに応じた高さを有するように分割構造とされる。
【0054】
請求項15に係る乗算装置は、請求項の最終加算回路が分割アレイに共通に設けられ、各分割アレイからの最終中間積を加算して最終積を生成する。
【0055】
ワレスツリー型乗算装置において、乗算ツリーアレイを分割構造とし、かつ分割アレイ個々において乗算を行なうことにより、クリティカルパスの長さが低減され、高速の乗算が可能となる。
【0056】
また、ブースエンコーダの配置領域を考慮することにより、加算回路のビット幅が異なる不規則な領域に、効率的にブースエンコーダを配置することができ、面積利用効率に優れた乗算装置を実現することができる。
【0057】
【発明の実施の形態】
[実施の形態1]
図1(A)は、この発明の実施の形態1に従う乗算装置の乗算アレイの構成を概略的に示す図である。図1(A)において、この乗算アレイMAは、乗数Yの特定のビット位置に応じて分割される2つの分割ワレスツリーアレイDWAおよびDWBを含む。分割ワレスツリーアレイDWAおよびDWBの間に最終加算回路FNADが配置される。分割ワレスツリーアレイDWAおよびDWBは、この最終加算回路FNAD方向に加算結果を伝搬させる。したがって、乗算アレイMAにおけるワレスツリーの加算回路段は、分割ワレスツリーアレイDWAおよびDWBにより2分割されるため、部分積の加算結果を伝達する際のクリティカルパスの長さが低減され、高速で乗算を行なうことができる。
【0058】
なお、被乗数Xの最上位ビット位置は、分割ワレスツリーアレイDWAおよびDWBの、図1(A)の右側にあってもよく、また左側にあってもよい。一方、乗数Yについては、分割ワレスツリーアレイDWAおよびDWBそれぞれにおける部分積加算信号伝搬方向AおよびBについて、下位ビットから上位ビットとなるように乗数Yのビットが配置される。分割ワレスツリーアレイDWAおよびDWBの加算回路の段数は好ましくは等しくされる。クリティカルパスの長さが1/2倍になる。
【0059】
[変更例]
図1(B)は、この発明の実施の形態1の乗算装置の変更例を概略的に示す図である。図1(B)においては、乗算アレイMAは、被乗数Xビットの伝達方向について並列に配置される分割ワレスツリーアレイDWCおよびDWDに分割される。これらの分割ワレスツリーアレイDWCおよびDWDに対し共通に最終加算回路FNADが配置される。
【0060】
分割ワレスツリーアレイDWCは、乗数Yaと被乗数Xの乗算を行ない、分割ワレスツリーアレイDWDは、乗数Ybと被乗数Xの乗算を行なう。乗数Yは、Ya+Ybである(ビット位置が2分割される)。これらの分割ワレスツリーアレイDWCおよびDWDにおいては、加算回路の段数は好ましくは同じであり、かつ矢印CおよびDに沿って部分積加算信号が伝搬される。したがって、この場合においても、分割ワレスツリーアレイDWCおよびDWDの信号伝搬遅延のクリティカルパスは、図1(B)の矢印CおよびDの一方端から他方端までの全長であり、乗算アレイMAにおけるクリティカルパス(矢印C+Dに近似的に相当する)に比べて短くすることができ、高速の乗算を行なうことができる。
【0061】
なお、この図1(B)においても、乗数YaおよびYbのいずれが上位ビットであってもよく、また被乗数Xもその上位ビット位置は任意である。
【0062】
以上のように、この発明の実施の形態1に従えば、ワレスツリー構造の乗算アレイMAを乗数Yの特定のビット位置で分割ワレスツリーアレイに分割して個々に乗算を行ない、その分割ワレスツリーアレイの個々の乗算結果を最終加算回路で加算しており、信号伝搬のクリティカルパスを低減することができ、高速の乗算を行なう乗算装置が実現される。
【0063】
[実施の形態2]
図2は、この発明の実施の形態2に従う乗算装置の構成を概略的に示す図である。この図2以降において示すこの発明に従う乗算装置は、2次のブースアルゴリズムに従って54ビットの乗数Yおよび54ビットの被乗数Xの乗算を行なう。
【0064】
図2において、乗算アレイは、分割アレイDWaおよびDWbに分割される。分割アレイDWaは、ブースエンコーダ1に含まれるブースエンコード回路1a−1nからの選択制御信号に従って、被乗数レジスタ回路2からの被乗数データから第0次部分積を生成するブースセレクタ3a−3nと、ブースセレクタ3a−3nにより生成される第0次部分積を加算して、第1次部分積を生成する第1次4:2加算回路4a−4dと、これらの第1次4:2加算回路4a−4dが形成する第1次部分積を加算して第2次部分積を生成する第2次4:2加算回路5aおよび5bと、第2次4:2加算回路4b−4dからの第2次部分積を加算して第3次部分積を生成する第3次4:2加算回路6aを含む。分割ワレスツリーアレイDWaにおいて、ブースセレクタ3a−3nのシフト回路/インバータ回路を、1つの小さな四角い箱で示す。また加算回路4a−4d、5a,5bおよび6aにおいて、単位加算器も、同様1つの小さな四角い箱で示す。
【0065】
ブースエンコーダ1は、2次のブースアルゴリズムに従って選択制御信号を生成する。したがって、54ビットの乗数Yに対して27個のブースエンコード回路1a−1αが設けられる。このブースエンコーダ1においては、乗数Yのビット位置は、ブースエンコード回路1nにより、その位置が逆転される。すなわち、ブースエンコード回路1a−1nは、それぞれ乗数Yの下位ビットから中位ビットに対応して配置される。一方、ブースエンコード回路1o−1αは、分割アレイDWbは、位置が逆転され、下方向から上方向に向かって中位ビットから上位ビットに対応するように配置される。
【0066】
分割アレイDWbは、ブースエンコード回路1o−1αに対応して設けられ、対応のブースエンコード回路からの選択制御信号に従って、被乗数レジスタ回路2からの多ビット被乗数Xから第0次部分積を生成するブースセレクタ3o−3αと、これらのブースセレクタ3o−3αからの第0次部分積を加算して第1次部分積を生成する第1次4:2加算回路4e−4gと、第1次4:2加算回路4e−4gが生成する第1次部分積を加算して第2次部分積を生成する第2次加算回路5cおよび5dと、第2次4:2加算回路5cおよび5dの生成する第2次部分積を加算して第3次部分積を生成する第3次加算回路6bを含む。
【0067】
分割アレイDWaおよびDWbの間に最終加算回路7が配置され、乗算結果Zがこの最終加算回路7から出力される。
【0068】
ここで、第2次4:2加算回路5dがブースセレクタ3αとほぼ同じサイズを有しているのは、以下の理由による。第2次部分積まで部分積を4:2の割合で順次圧縮していく場合、ブースセレクタ3αは、単に配線のみで第1次部分積を生成する。2次のブースアルゴリズムにおいては、第0次部分積は、互いに2ビットずつその桁位置が異なっている。したがって、第1次4:2加算回路4gとブースセレクタ3αの生成する第0次(擬似第1次)部分積を加算する場合、第2次4:2加算回路5dにおいては、加算する必要のない桁が存在する。この桁は、単に配線で形成され、加算器は配置されない。したがって、この第2次4:2加算回路5dは、他の第2次4:2加算回路よりもサイズが小さくされる。これについては後に詳細に説明する。
【0069】
この乗算アレイにおいては、ブースセレクタ3a−3αならびに4:2加算回路4a−4g、5a−5d、6a,6bおよび7が配置される。分割アレイDWaにおいて信号伝搬のクリティカルパスは矢印で示すように、ブースエンコード回路1aからブースセレクタ3aの全シフト/インバータへ信号が伝達される時間と、ブースセレクタ3aにおいて第0次部分積が生成されるまでに要する時間と、この第0次部分積が第1次4:2加算回路4aで加算されて第1次部分積を生成する時間と、この第1次部分積が第2次4:2加算回路5aで加算されて第2次部分積が生成される時間と、この第2次部分積が第3次4:2加算回路6aで加算されて第3次部分積が生成される時間と、この第3次部分積が最終加算回路へ伝達されるのに要する時間の和の遅延を有する。
【0070】
一方、分割アレイDWbにおいて信号伝搬のクリティカルパスの遅延は、矢印で示すようにブースエンコード回路1oから選択制御信号および被乗数レジスタ回路2からの被乗数Xデータがブースセレクタ3oへ伝達されるのに要する時間、このブースセレクタ3oにおいて第0次部分積が生成されて第1次4:2加算回路4eへ伝達される時間、第1次4:2加算回路4eからの第1次部分積が生成され第2次4:2加算回路5cへ伝達される時間、および第2次4:2加算回路5cで第2次部分積が生成されて第3次4:2加算回路6bへ伝達されるのに要する時間と、この第3次4:2加算回路6bで第3次部分積が生成されて最終加算回路7へ伝達されるのに要する時間の和である。したがって、この分割アレイ構造においては、クリティカルパスは、先の図18に示す構成に比べて大幅に短縮されており、また第3次4:2加算回路6aおよび6bからの最終加算回路7までの距離は短く、高速で最終加算回路7から最終積Zを生成することができる。
【0071】
つまり、ブースエンコーダ1をほぼ二等分割し、乗算アレイの分割アレイDWaおよびDWbもほぼ乗算アレイの二等分割構造とすることにより、信号伝搬のクリティカルパスの配線長をほぼ図18に示す乗算アレイのそれの1/2とすることができ、高速で乗算結果を生成することができる。
【0072】
図3は、図2に示す分割アレイDWbのワレスツリーの構成を概略的に示す図である。図3において、この分割アレイDWbにおいてブースセレクタ3o−3αにより生成された第0次部分積は、第1段加算回路4e,4fおよび4gにより加算される。第1段加算回路4eおよび4fの生成する第2次部分積が、第2段加算回路5cで加算される。一方、第2段加算回路5dは、第1段加算回路4gと第0次部分積とを加算する。
【0073】
これらの第2段加算回路5cおよび5dが生成した第2次部分積が第3段加算回路6bで加算され、第3次部分積(最終部分積)が形成される。
【0074】
したがって、このツリー状加算により、第0次部分積から、第1次、第2次および第3次と生成される部分積の数を低減しかつ加算回路の段数低減によりキャリー伝搬の経路が短縮される。各段において並列に加算動作が実行される。
【0075】
図4は、この第2段加算回路5bに対する部分積の構成を概略的に示す図である。図4においては、最上位ビットMSB側で、各部分積が位置合わせされている状態を一例として示す。ブースセレクタ3w−3zにより第0次部分積が生成される(図18参照)。第2次ブースアルゴリズムにおいては、各部分積は、2ビットずつその位置が異なっている。したがって、ブースセレクタ3w、3x、3yおよび3zでそれぞれ生成される第0次部分積は、2桁ずつ位置がずれている。加算時においては、これらの桁合わせをして加算が行なわれる。加算回路4gは、ブースセレクタ3w−3zよりも、ビット幅が2つ大きい。一方、ブースセレクタ3αが生成する第0次部分積は、ブースセレクタ3zが生成する第0次部分積よりも2桁上位の部分積である。したがって、第1段加算回路(第1次4:2加算回路)4gにおいては、下位に対応の桁が存在しない4:2加算回路においては、単に2入力しか与えられない場合、2入力はそのまま出力として出力されるため、単に配線が設けられるだけである。したがって、第2段加算回路5dにおいては、このブースセレクタ3αの各桁位置に応じて、4:2加算器を設け、第1段加算回路4gの生成する第0次部分積とブースセレクタ3αの生成する第0次部分積の加算を行なう。したがって第2次4:2加算回路5d(第2段加算回路)において加算する必要がない桁が存在するため、乗算アレイ内において、第2次4:2加算回路5dのビット幅が、ブースセレクタ3αのビット幅と同じとされ、これにより、できるだけ乗算アレイのビット幅を狭くする。しかしながら、一般にワレスツリーにおいてこのツリー状の加算が進むにつれてその加算結果のビット幅が大きくなり、ビット幅は拡張される。したがって図2に示すように、乗算アレイにおいては、各加算回路の水平方向の幅が不規則に分布する。
【0076】
以上のように、この発明の実施の形態1に従えば、ワレスツリー型乗算アレイを2分割し、それぞれで個々に乗算を行なった後、最終加算を行なっており、信号伝搬のクリティカルパスの配線長が半減され、高速で乗算を行なうことができる。
【0077】
[実施の形態3]
図5は、この発明の実施の形態3に従う乗算装置のアレイ部の構成を概略的に示す図である。図5において、この乗算装置は、乗算アレイが2つの分割アレイDWaおよびDWbに分割される。この分割アレイDWaおよびDWbの間に、最終加算回路7が配置される。この構成は、先の図2に示す実施の形態2の構成と同じである。本実施の形態2においては、さらに、この最終加算回路7に隣接して、分割アレイDWaおよびDWbの間に被乗数Xを受けて、ブースセレクタ3a−3αへ共通に被乗数データを与える被乗数レジスタ回路2が配置される。被乗数レジスタ回路2は、したがって、分割アレイDWaおよびDWbに対し反対方向に被乗数データを伝達する。
【0078】
分割アレイDWaおよびDWbに対応して、ブースエンコーダ1も、2つの分割エンコーダ1Aおよび1Bに分割される。
【0079】
この図5に示す構成において、分割アレイDWaにおけるクリティカルパスは、矢印で示すように、被乗数レジスタ回路2からブースセレクタ3aに被乗数データが伝達されされ、そのブースセレクタ3aにおいて第0次部分積が生成され第1次4:2加算回路4aへ第0次部分積が伝達される経路、この第1次4:2加算回路4aにおいて第1次部分積が形成されて第2次4:2加算回路5aへ伝達される経路、および第2次4:2加算回路5aにおいて生成された第2次部分積が第3次4:2加算回路6aへ与えられる経路、およびこの第3次4:2加算回路6aから第3次部分積が形成されて最終加算回路7へ与えられる経路である。
【0080】
一方、分割アレイDWbにおいてクリティカルパスは、被乗数レジスタ回路2からの被乗数データがブースセレクタ3oへ伝達される経路、このブースセレクタ3oにおいて、分割ブースエンコーダ1Bからの対応の選択制御信号に従って第0次部分積を生成する経路、この第0次部分積が第1次4:2加算回路4eへ伝達される経路、第1次4:2加算回路4eから第1次部分積が第2次4:2加算回路5cへ伝達される経路、この加算回路5cからの第2次部分積が第3次4:2加算回路6bへ伝達される経路、および第3次4:2加算回路5dにおいて第3次部分積が生成されて最終加算回路7へ伝達される経路である。
【0081】
したがってこの図5に示す分割アレイ構造においては、被乗数レジスタ回路2からの被乗数データは分割アレイDWaおよびDWbそれぞれを伝達されるだけである。被乗数データをブースセレクタ3a−3αへ伝達するために必要とされる時間を短縮することができ、応じて、信号伝搬遅延を低減して、高速で乗算を行なって乗算結果Zを生成することができる。他の構成は、図2に示す構成と同じである。
【0082】
以上のように、この発明の実施の形態3に従えば、分割アレイの間に被乗数レジスタ回路を最終加算回路に隣接して配置しており、被乗数データ伝達経路の配線長を短くすることができ、応じて乗算時における信号伝搬のクリティカルパスの配線長を短縮することができ、高速の演算を行なうことができる。
【0083】
[実施の形態4]
図6は、この発明の実施の形態4に従う乗算装置の構成を概略的に示す図である。図6に示す構成においても、先の図2に示す実施の形態1と同様、乗算アレイは乗数Yの特定のビット位置で、分割アレイDWaおよびDWbに分割される。これらの分割アレイDWaおよびDWbの間に最終加算回路7が配置される。分割アレイDWaおよびDWbにおいて、ブースセレクタ3a−3α、第1次4:2加算回路4a−4g、第2次4:2加算回路5a−5d、および第3次4:2加算回路、および最終加算回路7は、その一方端が整列して配置される。ワレスツリーにおいては、そのツリー内を加算信号が伝搬するにつれ、加算回路のビット幅が大きくなる。しかしながら、この分割アレイDWaおよびDWbのように、第1段加算回路、第2段加算回路および第3段加算回路を順次配置するのではなく、この加算結果の信号伝搬方向に沿って、第1次4:2加算回路、第2次4:2加算回路および第3次4:2加算回路を配置する構成の場合、これらの加算回路の幅は、不規則に変化することになる。この加算回路のはみ出し領域に、分割アレイDWaおよびDWbに対応して、分割ブースエンコーダ1aおよび1bを配置する。分割ブースエンコーダ1aおよび1bは、最終加算回路7を間に挟むように配置される。
【0084】
分割アレイ構造においては、中央部に(分割アレイの境界領域)に最終加算回路が配置され、その最終加算回路7の両側に、最終部分積生成回路(第3段加算回路)が配置される。したがって、この乗算アレイの中央領域において分割アレイ内の加算回路のはみ出し部分が集中することになる。この領域に隣接して、分割ブースエンコーダ1aおよび1bを配置することにより、ブースエンコーダ1のブースエンコード回路1a−1αのサイズを同じとして配置することができ、はみ出し領域を効率的に利用したサイズの小さな乗算装置を実現することができる。
【0085】
また、分割アレイDWaおよびDWbは、二等分割構成の場合、最終加算回路7を軸として線対称の形となり、加算回路のレイアウトが容易となり、また、このはみ出し領域の形状も線対称となるため、分割ブースエンコード1Aおよび1Bを容易に配置することができる。
【0086】
以上のように、この発明の実施の形態4に従えば、加算回路のはみ出し領域に隣接して分割ブースエンコーダを配置しており、面積利用効率の優れたサイズの小さな乗算装置を容易に実現することができる。また、実施の形態1と同様の効果も得ることができる。
【0087】
なお、この実施の形態4においても、被乗数Xを受ける被乗数レジスタ回路2の、最上位ビット位置および最下位ビット位置はその両端のいずれの側にあってもよい。また、乗数Y(Y<n:0>)は、分割ブースエンコーダ1Aに対し、乗数データY<k:0>が与えられ、分割ブースエンコーダ1Bに対し乗数データY<n:k+1>が与えられる。各ブースエンコード回路が受ける乗数データビットの数は、用いられるブースアルゴリズムの数に応じて異なる。本実施の形態においては2次のブースアルゴリズムが用いられており、各ブースエンコード回路1a−1αそれぞれに対し、3ビットの乗数データが与えられる。この場合、配線により、分割ブースエンコード1Bに対し、上位ビット位置および下位ビット位置が変更される。
【0088】
[実施の形態5]
図7は、この発明の実施の形態5に従う乗算装置の構成を概略的に示す図である。この図7に示す乗算装置においては、先の実施の形態3と同様、分割アレイDWaおよびDWbの間に、最終加算回路7に隣接して、被乗数レジスタ回路2が配置される。分割アレイDWaおよびDWbにおいては、ブースセレクタ3a−3αおよび第1段−第3段加算回路が一端を整列して配置される。他方端の加算回路の端部が不規則に配置される領域に、分割ブースエンコーダ1Aおよび1Bが、それぞれ分割アレイDWaおよびDWbに対応して配置される。この分割ブースエンコーダ1Aおよび1Bは、最終加算回路7を間に挟むように配置される。この図7に示す構成においては、先の実施の形態3の効果に加えて、さらに、加算回路が不規則にはみ出す領域に分割ブースエンコーダ1Aおよび1Bを配置しており、それらの分割ブースエンコーダ1Aおよび1Bのブースエンコード回路のサイズをすべて等しくして配置することができ、また最終加算回路7に関して分割アレイの構造が線対称であり、レイアウトが容易となる。したがって、面積利用効率の優れたサイズの小さい高速演算を行なうことのできる乗算装置を実現することができる。
【0089】
[実施の形態6]
図8は、この発明の実施の形態6に従う乗算装置の構成を概略的に示す図である。図8において、乗算アレイが並列に配置される2つの分割アレイDWcおよびDWdに分割される。分割アレイDWcは、ブースセレクタ3a−3n、第1次4:2加算回路4a、第2次4:2加算回路5a、および第3次4:2加算回路6aを含む。分割アレイDWdは、ブースセレクタ3o−3αと、第1次4:2加算回路4e−4gと、第2次4:2加算回路5cおよび5dと、第3次4:2加算回路6bを含む。これらの分割アレイDWcおよびDWdにおいては、そのアレイ境界領域において各ブースセレクタおよび4:2加算回路の端部が整列して配置される。
【0090】
分割アレイDWdのブースセレクタ3oに対面して、被乗数レジスタ回路2が配置され、分割アレイDWdおよびDWcに被乗数Xのデータを共通に与える。
【0091】
ブースエンコーダ1は、この分割アレイDWcおよびDWdの並列配置に対応して、2つの分割ブースエンコーダ1Aおよび1Bに分割される。分割ブースエンコーダ1Aは、分割アレイDWcの、加算回路の突出する領域に対面して配置される。この分割ブースエンコーダ1Aにおいては、第2次4:2加算回路5aが、ブースセレクタよりもそのビット幅が長く、この第2次4:2加算回路5aと衝突するのを防止するため、加算回路4bおよび5aと対面する領域においてブースエンコード回路の長さ方向のレイアウトの幅が広くされる。また、第1次4:2加算回路4aおよび4bの間のブースセレクタに対面する領域においてブースエンコーダの幅方向の長さが長くされる。これらのブースエンコード回路を、この分割アレイDWcの突出領域の形状に応じてレイアウトし、ブースエンコード回路が、それぞれブースセレクタと対向するように配置される。
【0092】
一方、分割アレイDWdに対して、分割ブースエンコーダ1Bは、第2次4:2加算回路5cを間に挟むようにさらにサブ分割ブースエンコーダ1BAおよび1BBに分割される。この分割アレイDWdにおいては、第2次4:2加算回路2のビット幅は、ブースセレクタのビット幅と同じであり、この第2次4:2加算回路5aに対面する領域をブースエンコード回路配置領域として利用することができる。したがってこの分割ブースエンコーダ1Bにおいては、各ブースエンコード回路のサイズを同じとし、基本レイアウトを有する回路セルを規則的に配置して、設計およびレイアウトを容易とし、また、第2次4:2加算回路5cを間に挟むように分割サブブースエンコーダ1BAおよび1BBを配置する。これにより、分割アレイDWbの加算回路の突出領域を利用して効率的にブースエンコーダを配置することができる。また、乗算装置自体のはみ出し領域がなく、小占有面積の乗算装置が実現される。
【0093】
この分割アレイDWbにおいて、ブースセレクタ3o−3αおよび加算回路の一方端部は、分割アレイ境界領域においては整列して配置される。
【0094】
また、被乗数レジスタ回路2の突出もできるだけ避けるために、長さの短い分割ブースエンコーダ1Bと対面するように、この被乗数レジスタ回路2が配置される。
【0095】
分割アレイDWdおよびDWcに対し共通に最終加算回路7が配置される。
この図8に示す乗算装置の構成においては、分割アレイDWdおよびDWcにおいて信号の伝搬方向はすべて同じであり、最終加算回路7に向かって加算結果が伝達される。しかしながら、分割アレイDWcおよびDWdは個々に部分積加算演算を行なっており、そのクリティカルパスは、分割アレイDWcおよびDWdそれぞれにおけるクリティカルパスで与えられる。したがって、この分割アレイDWdおよびDWcを並列に配置する構成においても、クリティカルパスの配線長は、従来の装置に比べて半減され、高速の乗算を実現することができる。
【0096】
なおこの図8に示す構成において、乗数Yの部分乗数YAおよびYBは、いずれが上位ビットであってもよい。また、被乗数レジスタ回路2においていずれが上位ビット側であってもよい。分割ブースエンコーダ1Aおよび1Bにおいては、この最終加算回路7に近い位置が、上位ビット位置となる。
【0097】
以上のように、この発明の実施の形態6に従えば、乗算アレイの分割アレイに分割して並列に配置し、その分割アレイの加算回路のはみ出し領域に対面してブースエンコーダを分割して配置しており、クリティカルパスが半減されて、高速乗算が行なわれる乗算装置が実現される。また、この分割アレイのはみ出し領域に一方端を整列させて分割エンコーダを配置しており、面積利用効率の優れた小占有面積の乗算装置を実現することができる。
【0098】
[実施の形態7]
図9は、この発明の実施の形態7に従う乗算装置の構成を概略的に示す図である。図7においても、乗算アレイが、分割アレイDWcおよびDWdに分割され、これらの分割アレイDWcおよびDWdが並列に配置される。被乗数レジスタ回路2が、分割アレイDWdのブースセレクタ3oに対面して配置され、これらの分割アレイDWcおよびDWdに共通に被乗数Xのデータを与える。分割アレイDWcおよびDWdは、これらの互いに対向する端部(境界領域から離れた端部)が整列して配置される。すなわち分割アレイDWcにおいては、ブースセレクタ3a−3n、4:2加算回路4a−4d、5a,5bおよび6aの境界領域から離れた端部が整列して配置される。分割アレイの境界領域に、加算回路のはみ出し領域が存在する。分割アレイDWdにおいても、同様、ブースセレクタ3o−3α、4:2加算回路4e−4g、5dおよび6aの分割アレイ境界領域から離れた端部が整列して配置される。分割アレイ境界領域においては、この加算回路のはみ出し領域が存在する。これらの分割アレイDWcおよびDWdそれぞれに対面して、この分割アレイ境界領域に分割ブースエンコーダ1Aおよび1Bが配置される。分割ブースエンコーダ1Aは、先の図8に示す構成と同様、この分割アレイDWcの不規則なはみ出し領域に応じて、そのブースエンコード回路のレイアウトが調整される。したがって、この分割ブースエンコーダ1Aは、分割アレイDWcのはみ出し領域に対応して凹み領域を有し、また分割アレイDWcの後退領域に対応してはみ出し領域を有する。
【0099】
一方、分割アレイDWdに対面して、この分割アレイ境界領域に配置される分割ブースエンコーダ1Bは、第1次4:2加算回路4fを間に挟むようにサブブースエンコーダ1BAおよび1BBにさらに分割される。分割ブースエンコーダ1Aおよび1Bの互いに対面する端部は、それぞれ整列して配置される。
【0100】
この図9に示す構成においても、分割アレイDWcおよびDWdの構成は図8に示す構成と同じであり、クリティカルパスの配線長が低減され、高速乗算が可能となる。
【0101】
また、この分割アレイ境界領域にブースエンコーダ1を配置することにより、この境界領域に乗数Yのデータを伝達する配線を集中して配設することができ、乗数Yのデータビットを伝達する信号線のレイアウトが容易となる。
【0102】
また、分割アレイDWcおよびDWdの境界領域と対向する端部が整列して配置されており、この乗算装置内における空き領域が低減され、面積利用効率の優れた乗算装置を実現することができる。
【0103】
[実施の形態8]
図10は、この発明の実施の形態8に従う乗算装置の全体の構成を概略的に示す図である。この図10に示す乗算装置は、図8に示す乗算装置と、以下の点においてその構成が異なっている。すなわち、分割アレイDWcおよびDWdの間の領域に、被乗数Xデータを格納する被乗数レジスタ回路2が配置される。この被乗数レジスタ回路2は、分割アレイDWcおよびDWdの高さ方向にできるだけ合わせるため、複数列(2列)に配置されるレジスタを備える分割構造とされる。
【0104】
他の構成は、図8に示す構成と同じである。
この図10に示す構成に従えば、被乗数レジスタ回路2から、分割アレイDWcおよびDWdにおけるブースセレクタへの配線長が等しくなる。したがって、分割アレイDWcおよびDWdにおけるクリティカルパスの配線遅延を等しくすることができ(図中矢印で示す)、分割アレイDWcおよびDWdのクリティカルパスの配線長を実質的に等しくすることにより(二等分割した場合)、より高速の乗算を行なうことができる。また、図8に示す乗算装置と同様の効果が得られる。
【0105】
[実施の形態9]
図11はこの発明の実施の形態9に従う乗算装置の全体の構成を概略的に示す図である。この図11に示す乗算装置は、図9に示す乗算装置と以下の点においてその構成が異なる。すなわち、分割アレイDWdおよびDWcの境界領域において、分割ブースエンコーダ1Aおよび1Bの間に、被乗数レジスタ回路2が配置される。この被乗数レジスタ回路2は、高さを、分割アレイDWcおよびDWdに合わせるため、レジスタ(被乗数Xの各ビットを格納するレジスタ)が複数列(2列)に整列して配置される。他の構成は図9に示す構成と同じである。
【0106】
この図11に示す構成の場合においても、被乗数Xを格納する被乗数レジスタ回路2の出力データビットは、分割アレイDWcおよびDWdに対し、その配線長を等しくすることができる。したがってこの分割アレイDWcおよびDWdが、ほぼ二等分割される場合、これらの分割アレイDWcおよびDWdのクリティカルパスの配線長をほぼ等しくすることができ、このクリティカルパスの配線長のアンバランスに起因する演算の遅れ(タイミングの待ち合わせ等)をなくすことができ、高速で乗算を行なう乗算装置を得ることができる。また、先の図9に示す構成と同様の効果も得ることができる。
【0107】
[他の適用例]
上述の実施の形態の説明においては、2次のブースアルゴリズムが用いられている。しかしながら、このブースアルゴリズムは、たとえば3次のブースアルゴリズムなどの他の次数のブースアルゴリズムであってもよい。
【0108】
また、単に、ブースアルゴリズムを利用せずに、ワレスツリーのみを用いる乗算装置であってもブースエンコーダおよび被乗数レジスタの配置は適用可能である。
【0109】
実施の形態6から9のように、並列に分割アレイを配置する場合、生成される部分積の上位ビット位置は、いずれであってもよい。最下位ビット端で、その各回路の端部が整列して配置されてもよく、また最上位ビット側で、各回路の端部が整列して配置されてもよい。分割アレイDWdおよびDWcにおいては、最終加算回路7において加算結果(積)Zを生成するために、部分積のビット位置は線対称ではなく、並行移動の形、すなわち分割アレイ境界側で、一方の分割アレイが最下位ビット位置、他方の分割アレイにおいては最上位ビット位置となり、対向する端部は、その逆となる。
【0110】
また、分割アレイに分割する乗数ビットの位置は任意であり、クリティカルパスが短縮されればよい。
【0111】
【発明の効果】
以上のように、この発明に従えば、乗算装置のクリティカルパスを分割アレイ構成により短縮することができ、高速で乗算を行なうことのできる乗算装置を実現することができる。また、分割アレイ構成により、部分積加算回路のはみ出し部分の分布を規則的にすることができ、このはみ出し領域に、ブースエンコーダを容易にレイアウトすることができ、乗算装置のサイズを低減することができる。
【0112】
すなわち、請求項1に係る発明に従えば、ブースアルゴリズムに従って乗算を行なうワレスツリー型乗算アレイを、乗数の特定のビット位置で分割し、分割アレイそれぞれにおいて部分積を生成するように構成しているため、部分積加算結果の伝搬経路のクリティカルパスの配線長を短くすることができ、高速で乗算を行なうことのできる乗算装置を得ることができる。
【0113】
また、最終加算回路を分割アレイの間に配置しており、この最終加算回路に向かって各分割アレイが加算結果信号を伝搬しており、最終部分積を最終加算回路へ伝達する経路が短くなり、高速で乗算を行なうことができる。
【0114】
請求項に係る発明に従えば、ブースエンコーダを、部分積加算回路のはみ出し領域に対面して配置しており、乗算装置の面積を有効に利用することができ、乗算装置のサイズを低減することができる。
【0115】
請求項に係る発明に従えば、ブースエンコーダが最終加算回路を間に挟むようにさらに分割されており、より乗算装置のサイズを低減することができる。
【0116】
請求項に係る発明に従えば、被乗数を発生する被乗数発生回路を分割アレイの間に配置しており、分割アレイへの被乗数発生回路からの配線長が等しくなり、この分割アレイに対する信号伝搬のクリティカルパスの遅延を等しくすることができ、タイミングマージンを大きくすることができる。
【0117】
請求項に係る発明に従えば、分割アレイを並列に配置しており、加算結果信号伝搬のクリティカルパスの配線長を短くすることができ、応じて高速で乗算する乗算装置を得ることができる。
【0118】
請求項に係る発明に従えば、ブースエンコーダを分割アレイ各々に対面するように分割して配置しており、各分割アレイに対する、ブースエンコード信号(選択制御信号)の伝搬遅延を等しくすることができる。また、分割アレイおよび分割ブースエンコーダを整列して配置することができ、小サイズの乗算装置を得ることができる。
【0119】
請求項に係る発明に従えば、分割アレイに対応してブースエンコーダを分割し、かつ対応の分割アレイの部分積加算回路のはみ出し領域に対面して分割ブースエンコーダを配置しており、乗算装置の面積を効率的に利用して、小サイズの乗算装置を実現することができる。
【0120】
請求項に係る発明に従えば、分割ブースエンコーダを、分割アレイの両側に配置しており、乗算装置の部分積加算回路のはみ出し領域を有効に利用し、ブースエンコーダを配置して、小サイズの乗算装置を実現することができる。
【0121】
請求項に係る発明に従えば、分割ブースエンコーダを分割アレイの間に配置しており、分割ブースエンコーダへ乗算を与える配線のレイアウトが集中的にこの分割アレイ領域に配置することができ、配線レイアウトが容易となる。
【0122】
請求項10に係る発明に従えば、被乗数データを発生する回路を分割アレイの一方側に対面して配置しており、通常の乗算アレイの被乗数データ発生回路のレイアウトを利用することができる。
【0123】
請求項11に係る発明に従えば、被乗数データ発生回路を分割アレイの間の領域に配置しており、分割アレイに対する被乗数データの伝搬遅延を各分割アレイに対して等しくすることができる。
【0124】
請求項12に係る発明に従えば、分割被乗数データ発生回路を分割アレイの間の領域に配置しており、各分割アレイに対する被乗数データの伝搬遅延を分割アレイそれぞれに対し等しくすることができる。
【0125】
請求項13に係る発明に従えば、分割エンコーダに隣接して被乗数データ発生回路を配置しており、配線をこの領域に集中させることができ、配線レイアウトが簡略化される。
【0126】
請求項14に係る発明に従えば、被乗数発生回路を分割アレイの高さに合わせて分割構造としており、小占有面積の乗算装置が得られる。
【0127】
請求項15に係る発明に従えば、分割アレイに共通に最終加算回路を設けており、各分割アレイから最終加算回路への信号伝搬遅延を最小とすることができ、高速乗算をする乗算回路を得ることができる。
【図面の簡単な説明】
【図1】 (A)および(B)は、この発明の実施の形態1に従う乗算装置の原理的構成を示す図である。
【図2】 この発明の実施の形態2に従う乗算装置の全体の構成を概略的に示す図である。
【図3】 図2に示す乗算装置の分割アレイの加算ツリーを示す図である。
【図4】 図2に示す乗算装置の下方分割アレイの加算回路のビット幅とブースセレクタのビット幅との対応を示す図である。
【図5】 この発明の実施の形態3に従う乗算装置の全体の構成を概略的に示す図である。
【図6】 この発明の実施の形態4に従う乗算装置の全体の構成を概略的に示す図である。
【図7】 この発明の実施の形態5に従う乗算装置の全体の構成を概略的に示す図である。
【図8】 この発明の実施の形態6に従う乗算装置の全体の構成を概略的に示す図である。
【図9】 この発明の実施の形態7に従う乗算装置の全体の構成を概略的に示す図である。
【図10】 この発明の実施の形態8に従う乗算装置の全体の構成を概略的に示す図である。
【図11】 この発明の実施の形態9に従う乗算装置の全体の構成を概略的に示す図である。
【図12】 (A)は従来のキャリーセーブ方式並列乗算回路の構成を概略的に示し、(B)は、(A)に示す乗算単位回路の構成を概略的に示す図である。
【図13】 従来の桁内飛越し加算型キャリーセーブ加算方式乗算回路の構成を概略的に示す図である。
【図14】 従来の改良されたキャリーセーブ方式乗算回路の構成を概略的に示す図である
【図15】 従来のワレスツリー型乗算回路の構成を概略的に示す図である。
【図16】 図15に示すワレスツリー部の構成を概略的に示す図である。
【図17】 図16に示す加算回路の構成を概略的に示す図である。
【図18】 本発明が適用される54ビット乗算回路の構成を概略的に示す図である。
【符号の説明】
DWA−DWD 分割ワレスツリーアレイ、1 ブースエンコーダ、2 被乗数レジスタ回路、1a−1α ブースエンコード回路、3a−3α ブースセレクタ、4a−4g 第1次4:2加算回路、5a−5D 第2次4:2加算回路、6a,6b 第3次4:2加算回路、7 最終加算回路、DWa−DWd 分割アレイ、1A,1B 分割ブースエンコーダ、1BA,1BB 分割サブブースエンコーダ。

Claims (15)

  1. 多ビット乗数と多ビット被乗数との乗算を行なうための乗算装置であって、
    前記乗数をブースアルゴリズムに従ってデコードして複数の選択制御信号を生成するためのブースエンコーダ、
    前記ブースエンコーダからの複数の選択制御信号各々と前記多ビット被乗数とから複数の部分積を生成するブース選択回路、および
    前記ブース選択回路の生成する複数の部分積をツリー状に加算して部分積数を順次低減して最終中間乗算値を生成するための中間積生成回路を備え、前記中間積生成回路は、前記多ビット乗数の所定のビット位置で2つの分割アレイに分割される分割アレイ構造を有し、前記2つの分割アレイが、個別に前記最終中間乗算値をそれぞれ生成し、かつ前記分割アレイの各々は、前記ツリー状に加算するように配置される複数段の加算回路およびブース選択回路を含み、
    前記中間積生成回路からの前記最終中間乗算値を加算して前記多ビット乗数と前記多ビット被乗数の乗算値を生成する最終加算回路を備え、
    前記分割アレイは、前記複数の選択制御信号の伝達方向と直交する方向に整列して配置され、
    前記最終加算回路は前記分割アレイの間に配置され、
    前記分割アレイ各々の加算回路のツリーアレイは前記最終加算回路へ向かう方向に沿ってツリー状に加算を行なう、乗算装置。
  2. 前記複数段の加算回路は互いにビット幅の異なる加算回路を備え、
    前記複数段の加算回路は、一方端が整列し、かつ他方端が個々のビット幅に応じて位置が異なるように対応の分割アレイ内に配置され、
    前記ブースエンコーダは、前記他方端側に配置される、請求項記載の乗算装置。
  3. 前記ブースエンコーダは、前記最終加算回路を間に挟むように分割して配置される、請求項記載の乗算装置。
  4. 前記多ビット被乗数を受けて前記ブース選択回路へ与える被乗数発生回路をさらに備え、前記被乗数発生回路は前記分割アレイの間に配置される、請求項1からのいずれかに記載の乗算装置。
  5. 前記分割アレイは、前記複数の選択制御信号の伝達方向に関して整列して配置され、前記分割アレイは、それぞれ、同一方向に沿って部分積をツリー状に加算する複数段の加算回路を含む、請求項1記載の乗算装置。
  6. 前記ブースエンコーダは、前記分割アレイの各々に対面するように分割して配置される、請求項記載の乗算装置。
  7. 前記分割アレイの各々は、互いにビット幅の異なる複数段の加算回路を含み、
    前記複数段の加算回路は一方側が整列して配置され、
    前記他方端側に、前記分割されて配置されるブースエンコーダがそれぞれ配置される、請求項記載の乗算装置。
  8. 前記分割されて配置されるブースエンコーダは、前記分割アレイに関して対向する側に配置される、請求項記載の乗算装置。
  9. 前記分割されて配置されるブースエンコーダは、前記分割アレイの間に配置される、請求項記載の乗算装置。
  10. 前記多ビット被乗数を前記ブース選択回路へ与えるための被乗数データ発生回路をさらに含み、
    前記被乗数データ発生回路は、前記分割アレイに共通に、かつ前記分割アレイの一方に対面して配置される、請求項記載の乗算装置。
  11. 前記多ビット被乗数を前記ブース選択回路へ与えるための被乗数データ発生回路をさらに備え、
    前記被乗数データ発生回路は、前記分割アレイの間の領域に配置される、請求項記載の乗算装置。
  12. 前記多ビット被乗数を前記ブース選択回路へ与えるための被乗数データ発生回路をさらに備え、
    前記被乗数データ発生回路は、前記分割アレイ間の領域に配置される、請求項記載の乗算装置。
  13. 前記多ビット被乗数を前記ブース選択回路へ与えるための被乗数データ発生回路をさらに備え、
    前記被乗数データ発生回路は、分割ブースエンコーダに隣接して前記分割アレイ間の領域に配置される、請求項記載の乗算装置。
  14. 前記被乗数発生回路は、前記分割アレイの前記選択制御信号の伝達方向と直交する方向の高さに応じた高さを有するように分割構造とされる、請求項1から1のいずれかに記載の乗算装置。
  15. 前記最終加算回路は、前記分割アレイに共通に設けられ、かつ前記分割アレイからの最終中間積を加算して最終積を生成する、請求項記載の乗算装置。
JP2000004366A 2000-01-13 2000-01-13 乗算装置 Expired - Fee Related JP4282193B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2000004366A JP4282193B2 (ja) 2000-01-13 2000-01-13 乗算装置
US09/756,269 US20010009012A1 (en) 2000-01-13 2001-01-09 High speed multiplication apparatus of Wallace tree type with high area efficiency
US11/174,544 US20050246407A1 (en) 2000-01-13 2005-07-06 High speed multiplication apparatus of Wallace tree type with high area efficiency

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000004366A JP4282193B2 (ja) 2000-01-13 2000-01-13 乗算装置

Publications (2)

Publication Number Publication Date
JP2001195235A JP2001195235A (ja) 2001-07-19
JP4282193B2 true JP4282193B2 (ja) 2009-06-17

Family

ID=18533165

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000004366A Expired - Fee Related JP4282193B2 (ja) 2000-01-13 2000-01-13 乗算装置

Country Status (2)

Country Link
US (2) US20010009012A1 (ja)
JP (1) JP4282193B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6615229B1 (en) * 2000-06-29 2003-09-02 Intel Corporation Dual threshold voltage complementary pass-transistor logic implementation of a low-power, partitioned multiplier
US7315879B2 (en) * 2001-02-16 2008-01-01 Texas Instruments Incorporated Multiply-accumulate modules and parallel multipliers and methods of designing multiply-accumulate modules and parallel multipliers
US7313585B2 (en) * 2003-08-30 2007-12-25 Hewlett-Packard Development Company, L.P. Multiplier circuit
US7272624B2 (en) * 2003-09-30 2007-09-18 International Business Machines Corporation Fused booth encoder multiplexer
JP2005182238A (ja) * 2003-12-17 2005-07-07 Renesas Technology Corp 演算装置
US8832453B2 (en) * 2007-02-28 2014-09-09 Red Hat, Inc. Token recycling
JP5206786B2 (ja) * 2008-03-25 2013-06-12 日本電気株式会社 除算回路、半導体集積回路及びその製造方法
US10089110B2 (en) * 2016-07-02 2018-10-02 Intel Corporation Systems, apparatuses, and methods for cumulative product
CN113031912A (zh) * 2019-12-24 2021-06-25 上海寒武纪信息科技有限公司 乘法器、数据处理方法、装置及芯片
CN111522528B (zh) * 2020-04-22 2023-03-28 星宸科技股份有限公司 乘法器、乘法运算方法、运算芯片、电子设备及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5509129A (en) * 1993-11-30 1996-04-16 Guttag; Karl M. Long instruction word controlling plural independent processor operations
JP3532338B2 (ja) * 1996-02-27 2004-05-31 株式会社ルネサステクノロジ 乗算装置
JP3652447B2 (ja) * 1996-07-24 2005-05-25 株式会社ルネサステクノロジ ツリー回路
US6523055B1 (en) * 1999-01-20 2003-02-18 Lsi Logic Corporation Circuit and method for multiplying and accumulating the sum of two products in a single cycle
US6692534B1 (en) * 1999-09-08 2004-02-17 Sun Microsystems, Inc. Specialized booth decoding apparatus
US6598064B1 (en) * 2000-01-04 2003-07-22 National Semiconductor Corporation Split multiplier array and method of operation

Also Published As

Publication number Publication date
US20050246407A1 (en) 2005-11-03
JP2001195235A (ja) 2001-07-19
US20010009012A1 (en) 2001-07-19

Similar Documents

Publication Publication Date Title
US5524090A (en) Apparatus for multiplying long integers
US6029187A (en) Fast regular multiplier architecture
KR940002479B1 (ko) 고속 디지탈 병렬승산기(multiplier)
US4639857A (en) Digital data processor incorporating an orthogonally connected logic cell array
US7171535B2 (en) Serial operation pipeline, arithmetic device, arithmetic-logic circuit and operation method using the serial operation pipeline
US6539368B1 (en) Neural processor, saturation unit, calculation unit and adder circuit
US5325320A (en) Area efficient multiplier for use in an integrated circuit
US4623982A (en) Conditional carry techniques for digital processors
US20050246407A1 (en) High speed multiplication apparatus of Wallace tree type with high area efficiency
US7308471B2 (en) Method and device for performing operations involving multiplication of selectively partitioned binary inputs using booth encoding
US5161119A (en) Weighted-delay column adder and method of organizing same
US6125381A (en) Recursively partitioned carry select adder
US6065033A (en) Wallace-tree multipliers using half and full adders
US4796219A (en) Serial two's complement multiplier
US6598061B1 (en) System and method for performing modular multiplication
US7155473B2 (en) High-speed parallel-prefix modulo 2n-1 adders
US20010056455A1 (en) Family of low power, regularly structured multipliers and matrix multipliers
JP3556950B2 (ja) 高速算術演算装置のけた上げ先見加算器段の数を減少させる構造及び方法
US6618741B2 (en) Asynchronous parallel arithmetic processor utilizing coefficient polynomial arithmetic (CPA)
JPH08221256A (ja) 乗算器及び積和演算装置
US6183122B1 (en) Multiplier sign extension
US6718465B1 (en) Reconfigurable inner product processor architecture implementing square recursive decomposition of partial product matrices
US7334011B2 (en) Method and system for performing a multiplication operation and a device
Smith et al. Radix-4 modules for high-performance bit-serial computation
US6742011B1 (en) Apparatus and method for increasing performance of multipliers utilizing regular summation circuitry

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081118

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090114

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: 20090310

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: 20090317

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: 20120327

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120327

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120327

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130327

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130327

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140327

Year of fee payment: 5

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees