JP2000081967A - 二乗演算回路 - Google Patents

二乗演算回路

Info

Publication number
JP2000081967A
JP2000081967A JP10250573A JP25057398A JP2000081967A JP 2000081967 A JP2000081967 A JP 2000081967A JP 10250573 A JP10250573 A JP 10250573A JP 25057398 A JP25057398 A JP 25057398A JP 2000081967 A JP2000081967 A JP 2000081967A
Authority
JP
Japan
Prior art keywords
bit data
data
output
input
circuit
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.)
Pending
Application number
JP10250573A
Other languages
English (en)
Inventor
Yoichi Nakamura
陽一 中村
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP10250573A priority Critical patent/JP2000081967A/ja
Publication of JP2000081967A publication Critical patent/JP2000081967A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

(57)【要約】 【課題】 回路規模が小さく、また、演算速度が速く、
且つ、開発期間の短縮化を図ることが可能な二乗演算回
路を提供すること。 【解決手段】 入力3ビットデータ(a2、a1、a
0)の二乗値を算出して出力する3ビットデータの二乗
演算回路20であって、上記入力3ビットデータの最上
位ビットデータを除く、下位2ビットデータを入力と
し、その二乗値を算出して出力する2ビットデータ二乗
演算回路10と、上記入力3ビットデータの下位2ビッ
トデータの各ビットデータと最上位ビットデータとの論
理積をとる2個のアンドゲート22及び23と、上記2
ビットデータ二乗演算回路10の出力である4ビットデ
ータの内の最上位ビットのデータと、上記2個のアンド
ゲートの各出力データと、上記入力3ビットデータの最
上位ビットデータとを入力として、出力6ビットデータ
の上位3ビットデータを出力する、2個の加算器24及
び25から成る加算器群とを設けて成る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、半導体集積回路装
置に於けるディジタル二乗演算回路に関するものであ
る。
【0002】
【従来の技術】図4に、従来技術(従来技術1)による
二乗演算を行う方法を示す。この方法はNビットの乗算
器40を用いて二乗演算を行うものである。
【0003】乗算器40は、Nビットの乗算器であり、
入力するデータのビット幅に合わせて、乗算器の種類を
選択する。例えば、入力データが4ビットである場合
は、乗算器40は、4ビット入力の乗算器を使用する。
また、入力データが8ビットである場合は、乗算器40
は、8ビット入力の乗算器を使用する。更に、入力デー
タが16ビットであれば、乗算器40は、16ビット入
力の乗算器を使用する。
【0004】しかしながら、この従来技術1によれば、
一般的な乗算器を用いて二乗演算を実行しており、二乗
演算には不必要な論理回路が組み込まれているため、必
要以上に回路規模が大きくなるという問題点や、処理速
度が遅くなるといった問題点があった。
【0005】そこで、この問題点を解決するものとし
て、不必要な論理回路部分を削減し、回路の簡略化を図
るとともに、処理速度の向上を図った二乗演算回路が、
特開平6−230939号公報に於いて提案されている
(従来技術2)。
【0006】図5に、該公報に示される二乗演算回路の
構成を、2ビット入力の場合を例にとって示す。
【0007】図5に於いて、2ビットのデータa0、a
1を入力し、4ビットのデータq0、q1、q2、q3
を出力するための2ビット二乗演算回路は、入力ビット
データa0をバッファリングし、出力ビットデータq0
を出力するためのインバータ50、51と、ローレベル
(GND)の信号をバッファし、出力ビットデータq1
を出力するためのバッファ52と、入力ビットデータa
1を反転するためのインバータ53と、前記インバータ
51、53の出力信号を入力し、その否定論理和をとっ
て、出力ビットデータq2を出力するためのノアゲート
54と、前記インバータ50、53の出力信号を入力
し、その否定論理和をとって、出力ビットデータq3を
出力するためのノアゲート55とから構成されている。
【0008】上記従来技術2の2ビット二乗演算回路
は、入力に対する出力の関係式を求め、その式を最大限
簡略化し、2ビットの二乗演算回路を構成している。更
に、3ビットから6ビットまでの入力データに関して
も、それぞれ、入力に対する出力の関係式を求め、その
式を最大限簡略化し、該当するビットの二乗演算回路を
構成する。すなわち、2ビットから6ビットまでの入力
データを二乗演算する場合に於いて、それぞれ、互いに
独立した構成にて二乗演算回路を実現している。
【0009】
【発明が解決しようとする課題】しかしながら、前述し
たように、上記従来技術1によれば、一般的な乗算器を
用いて二乗演算を実行しており、二乗演算に不必要な論
理回路が組み込まれているために、必要以上に回路規模
が大きいという問題点や、処理速度の高速化の妨げにな
るという問題点がある。
【0010】また、上記従来技術2によれば、Nビット
のデータの二乗演算回路のための論理式を求めて、簡略
化し、その式による論理式を具現化しているため、必要
とするデータのビット幅毎に、二乗演算回路を用意しな
ければならない。このため、異なるデータ幅の二乗演算
回路が複数必要なときは、それぞれの二乗演算回路を独
立して集積化しなければならず、異なるデータ幅の二乗
演算回路が必要となる度に、集積回路を新たに設計する
必要があり、開発期間の増大を招くという問題点があ
る。
【0011】本発明は、上記に鑑みなされたものであ
り、入力データを二乗演算する場合に於いて、回路規模
が小さく、また、演算速度が速く、且つ、開発期間の短
縮化を図ることが可能な二乗演算回路を提供することを
目的とするものである。
【0012】
【課題を解決するための手段】上記目的を達成するた
め、本発明の二乗演算回路は、入力Nビットデータ(N
は3以上の整数)の二乗値を算出して出力するNビット
データの二乗演算回路であって、上記入力Nビットデー
タの最上位ビットデータを除く、下位(N−1)ビット
データを入力とし、その二乗値を算出して出力する(N
−1)ビットデータ二乗演算回路と、上記入力Nビット
データの下位(N−1)ビットデータの各ビットデータ
と最上位ビットデータとの論理積をとる(N−1)個の
アンドゲートと、上記(N−1)ビットデータ二乗演算
回路の出力である2(N−1)ビットデータの内の上位
(N−2)ビットのデータと、上記(N−1)個のアン
ドゲートの各出力データと、上記入力Nビットデータの
最上位ビットデータとを入力として、出力2Nビットデ
ータの上位Nビットデータを出力する、(N−1)個の
加算器ら成る加算器群とを設けてなることを特徴とす
る。
【0013】また、本発明の二乗演算回路は、上記の二
乗演算回路に於いて、その構成要素である2ビットデー
タの二乗演算回路が、1個のアンドゲートと、1個の半
加算器とにより構成されて成ることを特徴とする。
【0014】かかる本発明の二乗演算回路によれば、二
乗演算専用回路として構成するため、回路規模の縮小、
演算速度の向上を図ることができる。また、(N−1)
ビットデータの二乗演算回路を基本構成要素とし、これ
に、(N−1)個のアンドゲート及び加算器を付加し
て、より上位のNビットデータの二乗演算回路を実現す
る構成としているので、既存資源を有効に活用して、短
期間で、より上位の二乗演算回路を構成することがで
き、開発期間の短縮化を図ることができるものである。
【0015】
【発明の実施の形態】以下、本発明の実施形態につい
て、図面を参照して詳細に説明する。
【0016】図2は、本発明の二乗演算回路に於いて基
本となる、2ビットデータの二乗演算回路10の回路構
成図である。図2に示される2ビットデータ二乗演算回
路を、そのまま取り込み、これに、2個のアンドゲー
ト、及び2個の加算器(各1個の半加算器及び全加算
器)を付加することにより、3ビットデータの二乗演算
回路が構成される。また、該3ビットデータ二乗演算回
路を、そのまま取り込み、これに、3個のアンドゲー
ト、及び3個の加算器(1個の半加算器と2個の全加算
器)を付加することにより、4ビットデータの二乗演算
回路が構成される。以下、全く同様に、(N−1)ビッ
トデータの二乗演算回路を、そのまま取り込み、これ
に、(N−1)個のアンドゲート、及び(N−1)個の
加算器を付加することにより、Nビットデータの二乗演
算回路が構成される。
【0017】図2に示される2ビットデータの二乗演算
回路10は、入力2ビットデータ(a1、a0)の二乗
データである出力4ビットデータ(q3、q2、q1、
q0)を出力するものであって、q0には、a0が、そ
のまま出力される。また、q1には、常に、ローレベル
データが出力される。更に、a0及びa1を、その入力
とするアンドゲート11の出力データ(A)とa1
(B)とを加算して、加算結果データSと桁上げデータ
C0とを出力する半加算器(HA)12が設けられ、該
半加算器12の加算結果データSが、q2として出力さ
れ、同桁上げデータC0が、q3として出力される。
【0018】この2ビットデータ二乗演算回路の真理値
表を、以下の表1に示す。
【0019】
【表1】
【0020】なお、図2の構成に於いては、入力及び出
力に、バッファ回路を特に設けていないが、適宜、設け
る構成として良いものであることは言うまでもない。以
下に説明する、3ビットデータの二乗演算回路、4ビッ
トデータの二乗演算回路等に於いても同様である。
【0021】以上に説明した2ビットデータ二乗演算回
路をベースとして、より上位の二乗演算回路が構成され
るものであるが、本発明に於いて、2ビットデータの二
乗演算回路は、図2の構成に限定されるものではなく、
他の論理回路構成の2ビットデータ二乗演算回路を用い
てもよいものであることは言うまでもない。
【0022】図1は、上記2ビットデータの二乗演算回
路10を、その基本構成要素として含み、これに、アン
ドゲート及び加算器を付加して構成した、3ビットデー
タの二乗演算回路の回路構成図である。
【0023】図1に示される3ビットデータの二乗演算
回路20は、入力3ビットデータ(a2、a1、a0)
の二乗データである出力6ビットデータ(q5、q4、
q3、q2、q1、q0)を出力するものであって、ま
ず、下位2ビットのデータ(a1、a0)を、その入力
(A1、A0)として、その二乗データである出力デー
タ(Q3、Q2,Q1、Q0)を出力する2ビットデー
タ二乗演算回路10を含む。この2ビットデータ二乗演
算回路10の下位3ビットデータQ2、Q1、Q0が、
それぞれ、出力データq2、q1、q0として出力され
る。
【0024】上記2ビットデータ二乗演算回路10に付
加する付加構成要素として、2個のアンドゲート22及
び23と、2個の加算器(半加算器(HA)24及び全
加算器(FA)25)とが設けられる。
【0025】アンドゲート22は、入力データの最上位
ビットデータa2と最下位(第1位)ビットデータa0
の論理積データを出力する。また、アンドゲート23
は、入力データの最上位ビットデータa2と第2位ビッ
トデータa1の論理積データを出力する。
【0026】また、2ビットデータ二乗演算回路10の
出力最上位ビットデータQ3(A)と、アンドゲート2
2の出力データ(B)とを加算して、加算結果データS
と桁上げデータC0とを出力する半加算器(HA)24
が設けられ、該半加算器24の加算結果データSが、q
3として出力される。また、上記半加算器24の桁上げ
データC0(A)と、アンドゲート23の出力データ
(B)と、入力最上位ビットデータa2(C)とを加算
して、加算結果データSと桁上げデータC0を出力する
全加算器(FA)25が設けられ、該全加算器25の加
算結果データSが、q4として出力され、同桁上げデー
タC0が、q5として出力される。
【0027】この3ビットデータ二乗演算回路20の真
理値表を、以下の表2に示す。
【0028】
【表2】
【0029】図3は、上記3ビットデータの二乗演算回
路20を、その基本構成要素として含み、これに、アン
ドゲート及び加算器を付加して構成した、4ビットデー
タの二乗演算回路の回路構成図である。
【0030】図3に示される4ビットデータの二乗演算
回路30は、入力4ビットデータ(a3、a2、a1、
a0)の二乗データである出力8ビットデータ(q7、
q6、q5、q4、q3、q2、q1、q0)を出力す
るものであって、まず、下位3ビットのデータ(a2、
a1、a0)を、その入力(A2、A1、A0)とし
て、その二乗データである6ビット出力データ(Q5、
Q4、Q3、Q2,Q1、Q0)を出力する3ビットデ
ータ二乗演算回路20を含む。この3ビットデータ二乗
演算回路20の下位4ビットデータQ3、Q2、Q1、
Q0が、それぞれ、出力データq3、q2、q1、q0
として出力される。
【0031】上記3ビットデータ二乗演算回路20に付
加する付加構成要素として、3個のアンドゲート31、
32及び33と、3個の加算器(1個の半加算器(H
A)34及び2個の全加算器(FA)35、36)とが
設けられる。
【0032】アンドゲート31は、入力データの最上位
ビットデータa3と最下位ビットデータa0の論理積デ
ータを出力する。また、アンドゲート32は、入力デー
タの最上位ビットデータa3と第2位ビットデータa1
の論理積データを出力する。更に、アンドゲート33
は、入力データの最上位ビットデータa3と第3位ビッ
トデータa2の論理積データを出力する。
【0033】また、3ビットデータ二乗演算回路20の
出力第5位ビットデータQ4(A)と、アンドゲート3
1の出力データ(B)とを加算して、加算結果データS
と桁上げデータC0とを出力する半加算器(HA)34
が設けられ、該半加算器34の加算結果データSが、q
4として出力される。また、上記半加算器34の桁上げ
データC0(A)と、3ビットデータ二乗演算回路20
の出力最上位ビットデータQ5(B)と、アンドゲート
32の出力データ(C)とを加算して、加算結果データ
Sと桁上げデータC0を出力する全加算器(FA)35
が設けられ、該全加算器35の加算結果データSが、q
5として出力される。更に、上記全加算器35の桁上げ
データC0(A)と、アンドゲート33の出力データ
(B)と、入力最上位ビットデータa3(C)とを加算
して、加算結果データSと桁上げデータC0を出力する
全加算器(FA)36が設けられ、該全加算器36の加
算結果データSが、q6として出力され、また、同桁上
げデータC0が、q7として出力される。
【0034】この4ビットデータ二乗演算回路30の真
理値表を、以下の表3に示す。
【0035】
【表3】
【0036】以上、4ビット入力までの場合について、
本発明に係る二乗演算回路の構成について説明したが、
5ビット入力以上の場合についても、全く同様に、1つ
下位の二乗演算回路を、その基本構成要素として設け、
これに、アンドゲート及び加算器を付加することによ
り、所望の二乗演算回路を、容易に構成することができ
るものである。
【0037】一般的に、Nビットデータの二乗演算回路
を構成する場合、まず、(N−1)ビットデータの二乗
演算回路を基本構成要素として設ける。この(N−1)
ビットデータ二乗演算回路には、入力データの最上位ビ
ットデータaN-1を除く、下位(N−1)ビットのデー
タa0、…、aN-2を入力する。また、この(N−1)
ビットデータ二乗演算回路の2(N−1)ビット出力デ
ータの内の下位Nビットのデータは、そのまま、Nビッ
トデータ二乗演算回路の下位Nビットの出力データ(q
0、…、qN-1)として出力させる。
【0038】次に、(N−1)個のアンドゲートAND
(1)、…、AND(N−1)を設ける。アンドゲート
AND(1)は、入力最下位(第1位)ビットデータa
0と、最上位ビットデータaN-1との論理積データを出
力する。アンドゲートAND(2)は、第2位ビットデ
ータa1と、最上位ビットデータaN-1との論理積デー
タを出力する。以下、同様にして、アンドゲートAND
(N−1)は、第(N−1)位ビットデータaN-2と、
最上位ビットデータaN-1との論理積データを出力す
る。
【0039】更に、(N−1)個の加算器AD(1)、
…、AD(N−1)を設ける。第1の加算器(半加算
器)AD(1)は、(N−1)ビットデータ二乗演算回
路の2(N−1)ビット出力データの内の、第(N+
1)位ビットのデータと、第1のアンドゲートAND
(1)の出力データとの加算を行い、加算結果データS
と桁上げデータC0とを出力する。この加算結果データ
Sは、Nビットデータ二乗演算回路の第(N+1)位ビ
ットの出力データとして出力される。第2の加算器(第
2加算器以降は、すべて全加算器)AD(2)は、第1
の加算器AD(1)の桁上げデータC0と、(N−1)
ビットデータ二乗演算回路の2(N−1)ビット出力デ
ータの内の、第(N+2)位ビットのデータと、第2の
アンドゲートAND(2)の出力データとの加算を行
い、加算結果データSと桁上げデータC0とを出力す
る。この加算結果データSは、Nビットデータ二乗演算
回路の第(N+2)位ビットの出力データとして出力さ
れる。以下、同様に構成され、第(N−1)の加算器A
D(N−1)は、第(N−2)の加算器AD(N−2)
の桁上げデータC0と、第(N−1)のアンドゲートA
ND(N−1)の出力データと、入力最上位ビットデー
タaN-1との加算を行い、加算結果データSと桁上げデ
ータC0とを出力する。この加算結果データSは、Nビ
ットデータ二乗演算回路の第(2Nー1)位ビットの出
力データとして出力され、また、桁上げデータC0は、
Nビットデータ二乗演算回路の最上位(第2N位)ビッ
トの出力データとして出力される。
【0040】
【発明の効果】以上詳述したように、本発明の二乗演算
回路は、入力Nビットデータ(Nは3以上の整数)の二
乗値を算出して出力するNビットデータの二乗演算回路
であって、上記入力Nビットデータの最上位ビットデー
タを除く、下位(N−1)ビットデータを入力とし、そ
の二乗値を算出して出力する(N−1)ビットデータ二
乗演算回路と、上記入力Nビットデータの下位(N−
1)ビットデータの各ビットデータと最上位ビットデー
タとの論理積をとる(N−1)個のアンドゲートと、上
記(N−1)ビットデータ二乗演算回路の出力である2
(N−1)ビットデータの内の上位(N−2)ビットの
データと、上記(N−1)個のアンドゲートの各出力デ
ータと、上記入力Nビットデータの最上位ビットデータ
とを入力として、出力2Nビットデータの上位Nビット
データを出力する、(N−1)個の加算器から成る加算
器群とを設けて成ることを特徴とするものであり、かか
る本発明によれば、回路規模が小さく、また、演算速度
が速く、且つ、開発期間の短縮化を図ることが可能な二
乗演算回路を提供することができるものである。したが
って、その実用的効果は極めて大なるものである。
【図面の簡単な説明】
【図1】本発明の一実施形態である、3ビットデータの
二乗演算回路の回路構成図である。
【図2】本発明の一実施形態である、2ビットデータの
二乗演算回路の回路構成図である。
【図3】本発明の一実施形態である、4ビットデータの
二乗演算回路の回路構成図である。
【図4】従来の二乗演算回路の構成図である。
【図5】従来の2ビットデータ二乗演算回路の回路構成
図である。
【符号の説明】
10 2ビットデータ
二乗演算回路 20 3ビットデータ
二乗演算回路 30 4ビットデータ
二乗演算回路 11、22、23、31、32、33 アンドゲート 12、24、34 半加算器 25、35、36 全加算器

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 入力Nビットデータ(Nは3以上の整
    数)の二乗値を算出して出力するNビットデータの二乗
    演算回路であって、上記入力Nビットデータの最上位ビ
    ットデータを除く、下位(N−1)ビットデータを入力
    とし、その二乗値を算出して出力する(N−1)ビット
    データ二乗演算回路と、上記入力Nビットデータの下位
    (N−1)ビットデータの各ビットデータと最上位ビッ
    トデータとの論理積をとる(N−1)個のアンドゲート
    と、上記(N−1)ビットデータ二乗演算回路の出力で
    ある2(N−1)ビットデータの内の上位(N−2)ビ
    ットのデータと、上記(N−1)個のアンドゲートの各
    出力データと、上記入力Nビットデータの最上位ビット
    データとを入力として、出力2Nビットデータの上位N
    ビットデータを出力する、(N−1)個の加算器から成
    る加算器群とを設けて成ることを特徴とする二乗演算回
    路。
  2. 【請求項2】 請求項1に記載の二乗演算回路に於い
    て、その構成要素である2ビットデータ二乗演算回路
    が、1個のアンドゲートと、1個の半加算器とにより構
    成されて成ることを特徴とする二乗演算回路。
JP10250573A 1998-09-04 1998-09-04 二乗演算回路 Pending JP2000081967A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10250573A JP2000081967A (ja) 1998-09-04 1998-09-04 二乗演算回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10250573A JP2000081967A (ja) 1998-09-04 1998-09-04 二乗演算回路

Publications (1)

Publication Number Publication Date
JP2000081967A true JP2000081967A (ja) 2000-03-21

Family

ID=17209909

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10250573A Pending JP2000081967A (ja) 1998-09-04 1998-09-04 二乗演算回路

Country Status (1)

Country Link
JP (1) JP2000081967A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110581705A (zh) * 2018-06-08 2019-12-17 唐大为 一种三种高低电平接电情况下的逻辑电路

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110581705A (zh) * 2018-06-08 2019-12-17 唐大为 一种三种高低电平接电情况下的逻辑电路

Similar Documents

Publication Publication Date Title
US4953115A (en) Absolute value calculating circuit having a single adder
JP3033212B2 (ja) 乗算器
JP2970231B2 (ja) 並列乗算回路
JP3396720B2 (ja) 部分積生成回路
JP3356613B2 (ja) 加算方法および加算器
JP2000081967A (ja) 二乗演算回路
US20020188641A1 (en) Logic circuit for fast carry/borrow
JP2508041B2 (ja) インクリメント回路
JP3351672B2 (ja) 加算器
JP2907276B2 (ja) 演算処理装置
JP3264250B2 (ja) 加算回路
JP2551111B2 (ja) 二乗演算回路
JPH0653818A (ja) 多数ビットグレイコードカウンタ
JPS61105640A (ja) 並列補数回路
JPH0523013Y2 (ja)
JPH10333885A (ja) 乗算回路
JPS6349835A (ja) 演算処理装置
JPH0779247B2 (ja) デコ−ド回路
KR100196520B1 (ko) 면적 개선을 위한 2의보수 변환 장치
JPH0553768A (ja) 除算器
JPH0713743A (ja) 乗算器
JPH0445856B2 (ja)
JPH08123662A (ja) 加算方法および加算器
JPH02238522A (ja) 絶対値演算回路
JPH06334526A (ja) D/a変換器