JPH03164830A - 乗算装置 - Google Patents

乗算装置

Info

Publication number
JPH03164830A
JPH03164830A JP1303746A JP30374689A JPH03164830A JP H03164830 A JPH03164830 A JP H03164830A JP 1303746 A JP1303746 A JP 1303746A JP 30374689 A JP30374689 A JP 30374689A JP H03164830 A JPH03164830 A JP H03164830A
Authority
JP
Japan
Prior art keywords
multiplier
addend
data
value
output
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
JP1303746A
Other languages
English (en)
Inventor
Seiya Kato
誠也 加藤
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP1303746A priority Critical patent/JPH03164830A/ja
Publication of JPH03164830A publication Critical patent/JPH03164830A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野〕 この発明は例えば音楽信号のレベルの増減をディジタル
的に処理する場合に用いて好適な乗算装置に関する。
〔従来の技術〕
例えばR−DAT、コンパクトディスクプレーヤ。
電子楽器のエンベロープ付加装置等において、PCに音
楽信号のレベルの増減をディジタル的に処理する場合、
 PCMデータに所定の乗数が乗算される。
この乗数を急に大きく変化させると、再生波形に不連続
部が発生し、乗数切換時にノイズが発生する。このため
1乗数は小さな変化幅で段階的、かつ連続的に変化させ
る必要がある。
従来装置においては1乗数を変更する場合、その乗数を
外部の装置より順次与えるようにしていた。あるいはま
た1乗数の現在値と目標値とを比較器により比較し、比
較結果の大小に応じて乗数発生器により新たな乗数を発
生させ、その乗数を乗算器において入力データに乗算さ
せるようにしていた。
〔発明が解決しようとする課題〕
しかしながら、乗数を外部より与える方式は、外部にお
ける処理の負担が大きくなる。また、比較器や乗数発生
器を用いる装置は、構成が複雑になると同時に1回路構
成が大規模になる欠点がある。
この発明はこのような状況に鑑みてなされたもので1回
路構成を簡略化できるようにするものである。
〔課題を解決するための手段〕
請求項1に記載の乗算装置は、入力データに乗算する乗
数をラッチする乗数ラッチ手段と1乗数ラッチ手段にラ
ッチされている乗数と入力データとを乗算する乗算手段
と1乗数の目標値と乗数ラッチ手段にラッチされている
乗数の現在値との差を演算する加算手段と、加算手段の
出力が正、負又は零であることを検出する検出手段と、
検出手段の出力に対応して、所定の加数を発生する加数
発生手段と、加数又は目標値の一方を選択して加算手段
に供給し1乗数ラッチ手段にラッチされている乗数と加
算させて、その加算値を乗数ラッチ手段にラッチさせる
セレクト手段とを備える。
請求項2に記載の乗算装置は、入力データを乗数の各ビ
ットに対応して所定ビットシフトするシフト手段と、シ
フト手段の出力、乗数の目標値又は乗数に加算する加数
のいずれか1つを選択する第1のセレクト手段と、第1
のセレクト手段により選択されたデータと他のデータと
を加算する加算手段と、加算手段より出力される乗数の
現在値と目標値との差の正、負又は零を検出する検出手
段と、検出手段の出力に対応して加数を発生する加数発
生手段と、加算手段より出力される乗数をラッチする乗
数ラッチ手段と、加算手段より出力される入力データを
シフト手段によりシフトしたデータの累積加算値を乗算
結果としてラッチする乗算結果ラッチ手段と1乗数ラッ
チ手段又は乗算結果ラッチ手段の出力の一方を選択して
、加算手段に他のデータとして出力する第2のセレクト
手段とを備える。
〔作用〕
請求項1に記載の乗算装置においては、乗数の目標値と
現在値の差の正、負又は零が判定され。
その判定結果に対応して例えば−1,+1又は零の加数
が発生される。この加数が現在値に加算され、新たな乗
数とされ、入力データに乗算される。
従って、加算手段を乗数の目標値と現在値の比較、及び
、加数と現在値との加算の両方に時分割で使用するので
1回路規模を小さくすることができる。
また、請求項2に記載の乗算装置においては。
加算手段を乗数の目標値と現在値の比較、加数と現在値
の加算、さらに乗数と入力データのシフト累算による乗
算に時分割で用いているので、回路規模をさらに小さく
することが可能となる。
〔実施例〕
第1図はこの発明の乗算装置の一実施例の構成を示すブ
ロック図である。
同図において11は反転回路であり、図示せぬ回路から
供給されるnビットの乗数の目標値を反転してセレクタ
12に出力する。セレクタ12は加数発生回路13が出
力するnビットの加数と反転回路11からのnビットの
反転入力データの一方を、切換信号に対応して選択し、
フルアダー(加算1)14の端子Bに出力する。
フルアダー14は、乗数ラッチ回路15より端子Aに入
力されるnビットの乗数と、端子Bに入力されるセレク
タ12からのデータと、端子CI(キャリーイン)に入
力される値1とを加算して。
nビットの加算結果を端子Sから乗数ラッチ回路15と
ゼロ検出回路16に出力する。また、フルアダー14は
そのキャリーデータ(1ビツト)を端子Go(キャリー
アウト)より比較結果ラッチ回路17に出力している。
比較結果ラッチ回路17はフルアダー14からのキャリ
ーデータとゼロ検出回路16の出力データ(1ビツト)
とをラッチし、加数発生回路工3に出力する。
ゼロ検出回路16と比較結果ラッチ回路17は検出回路
を構成している。
18は乗算器であり1乗数ラッチ回路15が出力する乗
数と図示せぬ回路より供給される入力データとを乗算し
1図示せぬ回路に出力する。
第2図は第1図におけるセレクタ12.加数発生回路1
3及びゼロ検出回路16のさらに具体的な構成の一実施
例を示すブロック図である。
この実施例においてセレクタ12は、nビットの加数を
フルアダー14の各端子B□乃至Bnに各々供給する3
ステートバツフア21a乃至21nと、nビットの目標
値をフルアダー14の各端子B1乃至Bnに各々供給す
る3ステートバツフア22a乃至22nと、バッファ2
1a乃至21nに供給される切換信号を反転してバッフ
ァ22g乃至22nに出力するインバータ23とから構
成されている。
加数発生回路13は、比較結果ラッチ回路17にラッチ
されたフルアダー14のキャリーデータをnビットのデ
ータのLSDを除< 、 (n−1)ビットのデータと
して出力するインバータ31,32a乃至32n−1と
、比較結果ラッチ回路17によりラッチされたゼロ検出
回路16の出力を反転してnビットのデータのLSDと
して出力するインバータ33とにより構成されている。
ゼロ検出回路16はフルアダー14のnビットの各出力
端子S□乃至Snより出力されるデータの論理和を演算
するオアゲート41により構成されている。
次に、第3図のタイミングチャートを参照して。
その動作を説明する。
乗数ラッチ回路15にはnビットの乗数の現在値がラッ
チされており、この現在値とmビットの入力データが乗
算器18において乗算され、出力されている。
この乗数を変更するとき、その目標値(第3図(a))
が反転回路11に入力され、反転されて。
セレクタ12に出力される。セレクタ12はその切換信
号(第3図(b))が論理りに反転したとき、反転回路
11(3ステートバツフア22a乃至22n)からのデ
ータを選択し、フルアダー14の端子Bに出力する。
フルアダー14の端子A(A□乃至A n )には乗数
ラッチ回路15にラッチされている乗数の現在値が入力
されており、また端子CIには値1が入力されているの
で、フルアダー14は結局法の加算を行う。
S=A+B+CI:A+B+1    ・・・(1)上
式においてA、B、CIは各々端子A、B、CIに入力
されるデータである。
ここで端子Bに入力されるデータは目標値を反転したも
のであるから、B+1は目標値の2の補数となり、(1
)式による演算は、結局、現在値(A)から目標値を減
算することになる。
現在値が目標値以上であるとき、フルアダー14の端子
COのキャリー出力は1、未満のときOとなる。また1
両者が等しいとき、出力S(第3図(e))は0となる
出力Sが0のとき、すなわちフルアダー14の出力端子
S。乃至Snのすべての出力が0のとき。
ゼロ検出回路16としてのオアゲート41の出力は0と
なり、それ以外のとき、オアゲート41の出力は1とな
る。
比較結果ラッチ回路17はフルアダー14の端子COの
出力とオアゲート41の出力をラッチ信号(第3図(f
))のタイミングで各々ラッチする。
比較結果ラッチ回路17の出力(第3図(g))のうち
、オアゲート41のラッチ出力は加数発生回路13とし
てのインバータ33に入力され1反転される。また、ラ
ッチされたキャリオーバーデータは加数発生回路13と
してのインバータ31に入力され、さらにインバータ3
2a乃至32n−1に入力される。
その結果、目標値が現在値より大きいとき(000・・
・OO)、小さいとき(111・・・10)1等しいと
き(111・・・11)の、nビットのデータが、各々
加数として発生される(第3図(h))。
目標値と現在値の比較が終了した後、切換信号(第3図
(b))1よ論理Hに反転される。これにより、3ステ
ートバツフア21a乃至21nがオンし、加数発生回路
13より供給される加数がフルアダー14の端子B8乃
至Bnに入力される。
フルアダー14は再び上記(1)式の演算を行う。
ニーで、端子CIには常に値1が入力されているので、
結局、目標値が現在値より大きいとき(000・・・O
f)、小さいとき(111・・・11)、等しいとき(
000・・・00)のnビットの各加数が、現在値に加
算されることになる(すなわち、各々値1.−1、又は
Oが各々加算される)。
このように、1だけインクリメント若しくはデクリメン
トされたデータ、又は元のままのデータが、ラッチ信号
(第3図(C))が入力されたタイミングにおいて乗数
ラッチ回路15にラッチされ、乗数の現在値(第3図(
d))の変更が行われる。
この変更された乗数が乗算器18において入力データと
乗算され、出力される。
この一連の処理が、乗数の現在値が目標値に達するまで
行われ、これにより乗数が段階的に変化していくことに
なる。
第4図はこの発明の乗算装置の他の実施例の枯成を示す
ブロック図であり、第1図における場合と対応する部分
には同一の符号を付しである。
この実施例においては、第1図における乗算器18が省
略され、その代わりに、シフト回路51、乗算結果ラッ
チ回路52.セレクタ53が設けられている。また、n
ビットのフルアダー14に代えてmビットのフルアダー
54が設けられている。
フルアダー54はnビット目のキャリーを比較結果ラッ
チ回路17に出力するようになっている。
シフト回路51は1乗数ラッチ回路15がラッチする現
在値の各ビットに対応して、そのビットの重みに応じて
入力データを所定ビットだけシフトし、セレクタ12に
出力している。セレクタ12はシフト回路51、反転回
路11又は加数発生回路13の出力のいずれか1つを選
択してフルアダー54に供給するようになっている。フ
ルアダー54が出力するシフト回路51からのデータは
乗算結果ラッチ回路52に供給されるようになっている
。セレクタ53は切換信号に対応して乗数ラッチ回路1
5又は乗算結果ラッチ回路52の出力の一方を選択し、
フルアダー54の端子Aに出力している。
次に、第5図を参照して、その動作を説明する。
乗数の現在値を変更するとき、セレクタ12は切換信号
により切り換えられ1反転回路11より入力される反転
された目標値(第5図(a))をフルアダー54め端子
Bに出力する。このとき、セレクタ53は乗数ラッチ回
路15にラッチされている現在値を選択し、フルアダー
54の端子Aに供給している。尚、フルアダー54の端
子CIには1が与えられており、これによって、フルア
ダー54は上記(1)式の演算を行う、すなわち、現在
値と目標値の大小比較を行う、ゼロ検出回路16と比較
結果ラッチ回路17が前述した場合と同様に、現在値と
目標値の差の正、負又は零を検出し。
検出結果を加数発生回路13に出力する。この−連の処
理が第5図(b)の「大小比較」処理である。
次に、加数発生回路13は比較結果ラッチ回路17から
のデータに対応して加数を発生する。この加数が発生さ
れたとき、セレクタ12はこの加数を選択してフルアダ
ー54の端子Bに出力する。
フルアダー54は、セレクタ53を介して乗数ラッチ回
路15より端子Aに入力される現在値と。
端子CIに入力される値1と、端子Bに入力される加数
とを加算する(第5図(b)の「加減算」処理)。
この加算値は新たな乗数の現在値として乗数ラッチ回路
15にラッチされる。
次に、シフト回路51は1乗数ラッチ回路15にラッチ
されたnビットの乗数データの各ビットが1かOかに応
じて、そのビットの重みに対応してmビットの入力デー
タを所定ビット分、上位もしくは下位にシフトして出力
する動作を行う1例えば、乗数データが4ビツトであり
、10進数表現で考えた場合の自然数であるとすると、
まずシフト回路51は乗数データのMSBに応じて入力
データを3ビツト分上位にシフトして、このシフト結果
データを乗数データのMSBが1のときに出力し。
Oのときに出力しない動作を行う0次のタイミングで1
乗数データの下位から3ビツト目の値に応じて入力デー
タを2ビツト分上位にシフトして、このシフト結果デー
タを乗数データの下位から3ビツト目の値が1のときに
出力し、0のときに出力しない動作を行う0次のタイミ
ングでは、乗数データの乍位から2ビツト目の値に応じ
て入力データを1ビツト分上位にシフトして、このシフ
ト結果データを乗数データの下位から2ビツト目の値が
1のときに出力し、0のときに出力しない動作を行う0
次のタイミングでは1乗数データのLSBの値に応じて
入力データをOビット分上位にシフト(シフトせずにそ
のまま出力)して、このシフト結果データを乗数データ
のLS[lの値が1のときに出力し、0のときに出力し
ない動作を行う。
また、例えば、乗数データが4ビツトであり。
10進数表現で考えた場合の1未満(小数点以下)のデ
ータであるとすると、まずシフト回路51は乗数データ
のMSBに応じて入力データを1ビツト分下位にシフト
して、このシフト結果データを乗数データのMSBが1
のときに出力し、0のときに出力しない動作を行う0次
のタイミングでは、乗数データの下位から3ビツト目の
値に応じて入力データを2ビツト分下位にシフトして、
このシフト結果データを乗数データの下位から3ビツト
目の値が1のときに出力し、0のときに出力しない動作
を行う6次のタイミンクでは、乗数データの下位から2
ビツト目の値に応じて入力データを3ビツト分下位にシ
フトして、このシフト結果データを乗数データの下位か
ら2ビツト目の値が1のときに出力し、Oのときに出力
しない動作を行う。
次のタイミングでは、乗数データのLSDの値に応じて
入力データを4ビツト分下位にシフトして。
このシフト結果データを乗数データのLSDの値が1の
ときに出力し、0のときに出力しない動作を行う。
しかして、各シフトタイミングの夫々において、シフト
回路51より出力されたシフト結果データはセレクタ1
2により選択され、フルアダー54の端子Bに供給され
る。このとき端子CIへはOが与えられており、セレク
タ53は乗算結果ラッチ52の出力を選択して、フルア
ダー54の端子Aに供給している。フルアダー54は上
記(1式)の演算を行うが、端子CIの入力は0となっ
ているので実質的には端子AとBの加算を行い、その加
算結果を乗算結果ラッチ52にラッチさせる。
この一連の処理がシフト回路51でのシフトタイミング
毎に行ねれると、最終的に乗算結果ラッチ52には乗数
ラッチ15の乗数データと入力データとの乗算結果が得
られたことになる。この処理が第5図(b)の「乗算(
シフト累算)処理)」である、なお、この乗算処理が終
了し、乗算結果ラッチ52のデータが図示せぬ次段の信
号処理系に送出されると、乗算結果ラッチ52はクリア
され次の乗算処理に備える。
上述した大小比較処理、加減算処理、乗算処理は1乗数
の現在地が目標値に達するまで繰り返し実行される。こ
のように、第4図に示した実施例において1乗算をシフ
ト累算の手法を用いて行うようにし、このシフト累算を
行う際の加算手段が、乗数の目標値と現在値の比較、加
数と現在値の加算、とに時分割で共用して用いられる。
〔発明の効果〕
以上のように請求項1に記載の乗算装置においては、乗
数の目標値と現在値の比較動作と、現在値変更のための
加算(減算)動作を、1つの加算手段を時分割で動作さ
せることにより行うようにしたので、回路規模を小さく
することができる。
また、請求項2に記載の乗算装置においては、乗数の目
標値と現在値の比較動作、現在値変更のための加算(減
算)動作、さらに、入力データと乗数の乗算動作を、1
つの加算手段を時分割で動作させることにより行うよう
にしたので、回路規模の大きい乗算器が不用となり、さ
らに回路規模を小さくすることができる。
【図面の簡単な説明】
第1図はこの発明の乗算装置の一実施例の構成を示すブ
ロック図、 第2図は第1図の実施例の一部の回路のより詳細な構成
を示すブロック図、 第3図は第1図の実施例の動作を説明するタイミングチ
ャート。 第4図はこの発明の乗算装置の他の実施例の構成を示す
ブロック図、 第5図は第4図の実施例の動作を説明するタイミングチ
ャートである。 11・・・反転回路 12・・・セレクタ 13・・・加数発生回路 14・・・フルアダー 15・・・乗数ラッチ回路 16・・・ゼロ検出回路 17・・・比較結果ラッチ回路 18・・・乗算器 21a乃至21n、22a乃至22n・・・3ステート
バツフア 23.31,32a乃至32n−1,33・・・インバ
ータ41・・・オアゲート 51・・・シフト回路 52・・・乗算結果ラッチ回路 53・・・セレクタ

Claims (2)

    【特許請求の範囲】
  1. (1)入力データに乗算する乗数をラッチする乗数ラッ
    チ手段と、 前記乗数ラッチ手段にラッチされている乗数と入力デー
    タとを乗算する乗算手段と、 乗数の目標値と前記乗数ラッチ手段にラッチされている
    乗数の現在値との差を演算する加算手段と、 前記加算手段の出力が正、負又は零であることを検出す
    る検出手段と、 前記検出手段の出力に対応して、所定の加数を発生する
    加数発生手段と、 前記加数又は目標値の一方を選択して前記加算手段に供
    給し、前記乗数ラッチ手段にラッチされている乗数と加
    算させて、その加算値を前記乗数ラッチ手段にラッチさ
    せるセレクト手段とを備える乗算装置。
  2. (2)入力データを乗数の各ビットに対応して所定ビッ
    トシフトするシフト手段と、 前記シフト手段の出力、乗数の目標値又は乗数に加算す
    る加数のいずれか1つを選択する第1のセレクト手段と
    、 前記第1のセレクト手段により選択されたデータと他の
    データとを加算する加算手段と、前記加算手段より出力
    される乗数の現在値と目標値との差の正、負又は零を検
    出する検出手段と、前記検出手段の出力に対応して前記
    加数を発生する加数発生手段と、 前記加算手段より出力される乗数をラッチする乗数ラッ
    チ手段と、 前記加算手段より出力される前記入力データを前記シフ
    ト手段によりシフトしたデータの累積加算値を乗算結果
    としてラッチする乗算結果ラッチ手段と、 前記乗数ラッチ手段又は乗算結果ラッチ手段の出力の一
    方を選択して、前記加算手段に前記他のデータとして出
    力する第2のセレクト手段とを備える乗算装置。
JP1303746A 1989-11-22 1989-11-22 乗算装置 Pending JPH03164830A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1303746A JPH03164830A (ja) 1989-11-22 1989-11-22 乗算装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1303746A JPH03164830A (ja) 1989-11-22 1989-11-22 乗算装置

Publications (1)

Publication Number Publication Date
JPH03164830A true JPH03164830A (ja) 1991-07-16

Family

ID=17924776

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1303746A Pending JPH03164830A (ja) 1989-11-22 1989-11-22 乗算装置

Country Status (1)

Country Link
JP (1) JPH03164830A (ja)

Similar Documents

Publication Publication Date Title
JPH0431412B2 (ja)
JP2585649B2 (ja) 除算回路
JP3276852B2 (ja) 符号変換回路
JP3003467B2 (ja) 演算装置
JPH08335165A (ja) 低電力累算方法および低電力累算回路
US6477557B1 (en) Division circuit not requiring taking complements of divisor, dividend and remainder
JPH07234778A (ja) 演算回路
JP2509279B2 (ja) 浮動小数点数一固定小数点数変換装置
JPH0346024A (ja) 浮動小数点演算器
JPH03164830A (ja) 乗算装置
JP2766133B2 (ja) パラレル・シリアル・データ変換回路
JP2803506B2 (ja) 除算器
JP3223560B2 (ja) 波形データ読出し装置
JP2606326B2 (ja) 乗算器
JP3071607B2 (ja) 乗算回路
US8489664B2 (en) Single clock cycle first order limited accumulator for supplying weighted corrections
JP3074958B2 (ja) 加算機能付きシリアル乗算器
JP2606339B2 (ja) 乗算器
JP3482102B2 (ja) 絶対値距離演算回路
JP2864598B2 (ja) ディジタル演算回路
JP3851024B2 (ja) 乗算器
JPH09167082A (ja) 乗算装置
KR100247925B1 (ko) 곱셈기 및 그의 동작방법
JPH08212052A (ja) 正規化データ生成回路
JP2575856B2 (ja) 演算回路