JPH0533245U - 除算演算回路 - Google Patents
除算演算回路Info
- Publication number
- JPH0533245U JPH0533245U JP7911591U JP7911591U JPH0533245U JP H0533245 U JPH0533245 U JP H0533245U JP 7911591 U JP7911591 U JP 7911591U JP 7911591 U JP7911591 U JP 7911591U JP H0533245 U JPH0533245 U JP H0533245U
- Authority
- JP
- Japan
- Prior art keywords
- data
- dividend
- circuit
- partial remainder
- register
- 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.)
- Withdrawn
Links
Abstract
(57)【要約】
【目的】 被除数と除数の入力データを評価して、その
結果に基づき被除数のロード位置を変更して演算クロッ
ク数を減少させ、除算演算を高速に実行することのでき
る除算演算回路を実現することにある。 【構成】 ゼロカウント回路A11は被除数データの上
位ビットの0をカウントし、ゼロカウント回路B12は
除数データの上位ビットの0の数を数え、これに基づい
てロードデータ発生回路13は部分剰余用レジスタ2と
被除数用レジスタ3とにロードするデータを発生させ、
動作制御回路1にデータロード位置信号を送って演算完
了のための演算クロック数を認識させる。部分剰余デー
タ制御回路14はロード時にはロードデータ発生回路1
3のデータを、演算時には演算回路12の部分剰余デー
タを部分剰余用レジスタ2に送る。演算回路4は被除数
データと除数データとによって除算演算を行う。
結果に基づき被除数のロード位置を変更して演算クロッ
ク数を減少させ、除算演算を高速に実行することのでき
る除算演算回路を実現することにある。 【構成】 ゼロカウント回路A11は被除数データの上
位ビットの0をカウントし、ゼロカウント回路B12は
除数データの上位ビットの0の数を数え、これに基づい
てロードデータ発生回路13は部分剰余用レジスタ2と
被除数用レジスタ3とにロードするデータを発生させ、
動作制御回路1にデータロード位置信号を送って演算完
了のための演算クロック数を認識させる。部分剰余デー
タ制御回路14はロード時にはロードデータ発生回路1
3のデータを、演算時には演算回路12の部分剰余デー
タを部分剰余用レジスタ2に送る。演算回路4は被除数
データと除数データとによって除算演算を行う。
Description
【0001】
本考案はマイクロプロセッサにおける除算演算回路に関し、特に入力データの 値を評価することによって除算演算を高速に実現できるようにした除算演算回路 に関する。
【0002】
従来のシフトレジスタを用いた除算演算回路は図3に示すように、除算演算の 動作を制御する動作制御回路1と部分剰余を保持する部分剰余用レジスタ2、被 除数を上位ビットから1ビットずつ演算回路に送る被除数用シフトレジスタ3、 部分剰余又は剰余と1ビットの商とを求める演算回路4及び、演算回路4で上位 ビットから1ビットずつ求められた商データを保持する商用シフトレジスタ5で 構成されているものであった。
【0003】 ここで被除数である入力データAは被除数用シフトレジスタ3に入力され、除 数である入力データBは演算回路4に入力される。 ここで、従来の除算演算回路の動作を実際の数を用いて除算することにより説 明する。起動信号が動作制御回路1に入力されると、動作制御回路1はロード信 号を出力し、部分剰余レジスタ2をクリアし、被除数シフトレジスタ3に入力デ ータAをロードする。そして既定クロック数後に商と剰余の演算結果がそれぞれ 出力データQと出力データRとして出力される。
【0004】 入力データAを“1101”とし、入力データBを“0101”として演算を行うもの とする。部分剰余用レジスタ2の出力データをa、被除数用シフトレジスタ3の 出力データをb、入力データBをcとする。部分剰余用レジスタ2はクリアされ ているので、そのデータは“0000”で、aは左にシフトされた出力“000 ”であ る。bは被除数用シフトレジスタ3に格納されている上位ビットであって“1” が出力され、演算回路4において合成されて“0001”となる。これはデータcの “0101”と比較されてa<cなので商用シフトレジスタ5には信号fの“0”が 格納され、出力データdとして“0001”が出力されて部分剰余レジスタ1にフィ ードバックされる。
【0005】 次のクロックにより、部分剰余用レジスタ2はフィードバックされたデータ“ 0001”を左シフトして“001 ”をaとして出力し、被除数用シフトレジスタ3で 左シフトされた最上位ビット“1”と合成されて“0011”となる。これはcデー タ“0101”と比較され、a<cなので商用シフトレジスタ5には“0”が格納さ れ、部分剰余用レジスタ2には“0011”がフィードバックされる。
【0006】 このようにして、次のクロックでは演算回路4では、a≧cであるので、“01 10”と“0101”との減算が行われ、dデータは“0001”となって部分剰余用レジ スタ2にフィードバックされ、商用シフトレジスタ5には“1”が格納される。 同様に4回目の演算が行われて、商用シフトレジスタ5には“0010”が格納され 、演算回路4からは剰余の“0011”が出力される。4回の演算により規定回数の 演算が終了したことを認識して演算を終了し、商の“0010”が出力データQとし て、剰余の“0011”が出力データRとして出力される。
【0007】
ところで、上記の従来の除算演算回路では、被除数及び除数の如何に拘らず、 常に既定のクロック数の演算時間を必要としており、0の多い被除数に対しては 不必要な演算を行っている。
【0008】 本考案は上記の点に鑑みてなされたもので、その目的は、被除数と除数の入力 データを評価して、その結果に基づき被除数のロード位置を変更して演算回数を 減少させ除算演算を高速に実行することのできる除算演算回路を実現することに ある。
【0009】
【課題を解決するための手段】 前記の課題を解決する本考案は、入力された被除数データと除数データとを演 算して商1ビットと剰余データを含む部分剰余データを出力する演算回路と、該 演算回路から出力された商1ビットを各々保持し演算終了時に商を出力する商用 シフトレジスタと、入力された被除数データをロードし前記演算回路に演算の都 度上位ビットから1ビットずつシフトしたデータを送る被除数用シフトレジスタ と、演算結果の前記部分剰余データを保持する部分剰余用レジスタとを有する除 算演算回路において、入力された被除数データと除数データの値をロード時に評 価し、評価結果に基づいて入力データの構成ビットを適切に分割してロードし、 データロードの位置を示すデータロード位置信号を出力し、演算時には前記演算 回路の部分剰余データ出力がフィードバックされて1ビットずつシフトされた出 力を前記部分剰余用レジスタに送るデータ制御回路と、起動信号入力により前記 被除数用シフトレジスタと前記データ制御回路とにロード信号を送り、前記デー タ制御回路からのデータロード位置信号を受けて演算完了までのクロック数をカ ウントして演算完了信号を出力する動作制御回路とを具備することを特徴とする ものである。
【0010】
起動信号が入力されると動作制御回路はロード信号を出力して被除数用シフト レジスタとデータ制御回路にデータをロードさせる。データ制御回路はロード時 に被除数データと除数データとを評価して被除数を部分剰余用レジスタと被除数 用シフトレジスタとに分割してロードし、データロード位置信号を動作制御回路 に送る。演算回路は部分剰余用レジスタと被除数用レジスタの出力信号を合成し て被除数データとし、除数データとの差を求めて1ビットの商と部分剰余データ とを出力する。部分剰余データはデータ制御回路を経て部分剰余用レジスタにフ ィードバックされ、次のクロックで演算が継続される。動作制御回路はデータロ ード位置信号によって所要演算クロック数を把握して演算終了時に演算完了信号 を出力する。
【0011】
【実施例】 以下、図面を参照して本考案の実施例を詳細に説明する。 図1は本考案の一実施例の除算演算回路のブロック図である。図において、図 3と同等の部分には同一の符号を付してある。図中、11は被除数である8ビッ トの入力データAの最初の1に至るまでの0の数を数えるゼロカウント回路A、 12は除数である8ビットの入力データBの最初の1に至るまでの0の数を数え るゼロカウント回路Bである。
【0012】 13はゼロカウント回路A11で得た0の数(jとする)と、ゼロカウント回 路B12で得た0の数(iとする)とが入力されて、次式の演算を行う。 p=j+(8-i-1) ………………(1) この演算結果から別に入力されている入力データAを部分剰余用レジスタ2と被 除数用シフトレジスタ3とにロードするデータを発生し、その入力データAのロ ード位置を知らせるデータロード位置信号を動作制御回路1に送るロードデータ 発生回路である。
【0013】 14はデータロード時にはロードデータ発生回路13から送られるデータを部 分剰余用レジスタ2に送り、演算時には演算回路4の部分剰余データ出力を部分 剰余用レジスタ2に送る部分剰余データ制御回路である。
【0014】 15は入力データAと入力データBが入力されて部分剰余用レジスタ2と被除 数用シフトレジスタ3に送るデータの制御を行うデータ制御回路で、ゼロカウン ト回路A11,ゼロカウント回路B12,ロードデータ発生回路13及び部分剰 余データ制御回路14とで構成されている。
【0015】 次に上記のように構成された実施例の動作を図2のタイムチャートを参照しな がら説明する。ここで説明に入る前に図2を説明しておく。(イ)はCPU(図 示せず)から入力され、回路の動作の基準となるクロック波形、(ロ)は8ビッ トから成る被除数の入力データA、(ハ)は同じく8ビットの除数である入力デ ータBである。
【0016】 (ニ)はクロックに基づいて外部制御回路(図示せず)から入力される起動信 号波形である。(ホ)は部分剰余用レジスタ2に格納されるデータ、(ヘ)は被 除数用シフトレジスタ3に格納されるデータで、(ホ)と(ヘ)のデータで16 ビットの被除数が構成される。
【0017】 (ト)は商用シフトレジスタ5に演算回路4で演算結果の商が1ビットずつシ フトしながら入力される商のデータで出力データQとして現れる。(チ)は1ビ ットずつ演算する度に部分剰余として部分剰余用レジスタ2に格納される剰余デ ータで出力データRとして現れる。(リ)は演算終了時に外部制御回路に送る演 算完了信号である。
【0018】 入力データAを図2の(ロ)に示すように“00110101”とし、入力データBを (ハ)に示すように“00001010”とする。(ニ)の起動信号入力によりクロック の立上りで入力データAはゼロカウント回路A11に入力され、ゼロカウント回 路A11は最初に1が現れるまでの0の数“2”をカウントする。又、入力デー タBはゼロカウント回路B12に入力され、ゼロカウント回路B12は最初に1 が現れるまでの0の数“4”をカウントする。このデータはロードデータ発生回 路13に入力され、(1)式の演算を行ってシフト数p=5を得る。
【0019】 一方、入力データAは直接ロードデータ発生回路13にも入力される。ロード データ発生回路13ではシフト数p=5に基づいて入力データAの“00110101” を5ビット左へシフトして部分剰余データ制御回路14を経て部分剰余用レジス タ2に格納する。この時、入力データを8ビットにするため、上位に0を3個付 加して“00000110”として、格納する(図2の(ホ))。又、被除数用シフトレ ジスタ3には入力データの残りの“101 ”に、8ビットにするために下位に5ビ ットの0を付加して、“10100000”として格納される(図2の(ヘ))。
【0020】 この後の演算は図3において説明したようにして行われ、第1回の演算は演算 回路4で被除数の“00001101”と除数の“00001010”と比較されて商“1”が出 力され、剰余の“00000011”が部分剰余データ制御回路14はフィードバックさ れる。部分剰余データ制御回路14は演算時であるため演算回路4からの剰余デ ータを部分剰余用レジスタ2に出力する(a2 )。これは被除数用レジスタ3の データ(データb1 が1ビット左へシフトされたデータb2 )と合成されて“00 000110”となり、除数((ハ))と比較されて商は“0”となる。同様に3回目 の演算で、(ト)のc3 に示す商“00000101”と(チ)のd3 に示す剰余“0000 0011”が出力される。
【0021】 演算クロック数vは(1)式で求めたシフト数pから次式で求められる。 v=8-p ……………(2) 動作制御回路1は入力されたデータロード位置信号から(2)式により演算クロ ック数を認識しており、演算クロック数に達した時点で、図2の(リ)の演算完 了信号を出力して演算を終了する。
【0022】 以上説明したように本実施例によれば、従来の除算演算回路にデータ制御回路 を付加してゼロカウント回路で上位ビットのゼロの数を数え、そのゼロの数の値 によって被除数データのロード位置を変えて不要な演算を省くことができるよう になり除算演算を高速に行うことができるようになる。
【0023】 今、ビット数をn,除数の上位の0の数をi,被除数の上位の0の数をjとす れば、従来の除算回路より次式で示すクロック数mだけ高速に演算することがで きる。
【0024】 (1)式から m=n-1-i+j i≧jの場合 m=n-1 i<jの場合 (除数が大きい時は演算は1回ですむ。)
【0025】
以上詳細に説明したように本考案によれば、被除数と除数の入力データを評価 してその結果に基づき被除数のロード位置を変更することにより、無駄な演算を 省いて高速に演算を行うことができるようになり、実用上の効果は大きい。
【図1】本考案の一実施例の回路のブロック図である。
【図2】実施例の回路による演算のタイムチャートであ
る。
る。
【図3】従来の除算演算回路のブロック図である。
1 動作制御回路 2 部分剰余用レジスタ 3 被除数用シフトレジスタ 4 演算回路 15 データ制御回路
Claims (1)
- 【請求項1】 入力された被除数データと除数データと
を演算して商1ビットと剰余データを含む部分剰余デー
タを出力する演算回路(4)と、該演算回路(4)から
出力された商1ビットを各々保持し演算終了時に商を出
力する商用シフトレジスタ(5)と、入力された被除数
データをロードし前記演算回路(4)に演算の都度上位
ビットから1ビットずつシフトしたデータを送る被除数
用シフトレジスタ(3)と、演算結果の前記部分剰余デ
ータを保持する部分剰余用レジスタ(2)とを有する除
算演算回路において、 入力された被除数データと除数データの値をロード時に
評価し、評価結果に基づいて入力データの構成ビットを
適切に分割してロードし、データロードの位置を示すデ
ータロード位置信号を出力し、演算時には前記演算回路
(4)の部分剰余データ出力がフィードバックされて1
ビットずつシフトされた出力を前記部分剰余用レジスタ
(2)に送るデータ制御回路(15)と、 起動信号入力により前記被除数用シフトレジスタ(3)
と前記データ制御回路(14)とにロード信号を送り、
前記データ制御回路(15)からのデータロード位置信
号を受けて演算完了までのクロック数をカウントして演
算完了信号を出力する動作制御回路(1)とを具備する
ことを特徴とする除算演算回路。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7911591U JPH0533245U (ja) | 1991-09-30 | 1991-09-30 | 除算演算回路 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7911591U JPH0533245U (ja) | 1991-09-30 | 1991-09-30 | 除算演算回路 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0533245U true JPH0533245U (ja) | 1993-04-30 |
Family
ID=13680919
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7911591U Withdrawn JPH0533245U (ja) | 1991-09-30 | 1991-09-30 | 除算演算回路 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0533245U (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005004755A (ja) * | 2003-06-10 | 2005-01-06 | Korea Advanced Inst Of Science & Technology | 3次元コンピュータグラフィックスシステムの除算ユニット |
-
1991
- 1991-09-30 JP JP7911591U patent/JPH0533245U/ja not_active Withdrawn
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005004755A (ja) * | 2003-06-10 | 2005-01-06 | Korea Advanced Inst Of Science & Technology | 3次元コンピュータグラフィックスシステムの除算ユニット |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH06348455A (ja) | 乗算における丸め込み方法及び乗算回路 | |
| JPS5939774B2 (ja) | 指数関数の演算方式 | |
| JPH0149973B2 (ja) | ||
| JPH10111791A (ja) | 除算装置 | |
| JPH0831024B2 (ja) | 演算プロセッサ | |
| JP2605715B2 (ja) | 除算回路 | |
| JP2629737B2 (ja) | アキュムレータ | |
| JPS6259828B2 (ja) | ||
| JPS62147526A (ja) | 乗算器 | |
| JP2550597B2 (ja) | 2乗器 | |
| JP3213982B2 (ja) | 除算回路 | |
| JPH0695854A (ja) | 除算演算装置 | |
| JPH05224888A (ja) | 小数点位置可変型データの乗算回路 | |
| JPH0764769A (ja) | 乗算器 | |
| JPH05119969A (ja) | 積和演算器 | |
| JP2575856B2 (ja) | 演算回路 | |
| SU962971A1 (ru) | Функциональный преобразователь | |
| JPH0285922A (ja) | 演算回路 | |
| JPH05298073A (ja) | 乗算回路 | |
| JPS5972541A (ja) | デ−タ処理装置 | |
| JPS6226538A (ja) | 除算器 | |
| JPH06180640A (ja) | 除算装置及び方法 | |
| JPH0783277B2 (ja) | ガロア体上の元の表現形式変換回路 | |
| JPH04330519A (ja) | 乗算回路 | |
| JP2001092639A (ja) | 除算・開平演算装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19951130 |