JPH06309151A - データ処理装置 - Google Patents
データ処理装置Info
- Publication number
- JPH06309151A JPH06309151A JP5120964A JP12096493A JPH06309151A JP H06309151 A JPH06309151 A JP H06309151A JP 5120964 A JP5120964 A JP 5120964A JP 12096493 A JP12096493 A JP 12096493A JP H06309151 A JPH06309151 A JP H06309151A
- Authority
- JP
- Japan
- Prior art keywords
- data
- word length
- multiplier
- input
- effective
- 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
Landscapes
- Advance Control (AREA)
Abstract
(57)【要約】
【目的】 効率的なデータ処理を行うことができるデー
タ処理装置を提供する。 【構成】 扱うデータをその有効語長に応じてマシンサ
イクルごとにラッチする第1の状態と入力されたデータ
をそのままスルーする第2の状態とを切換えるためのラ
ッチ制御手段と、乗算器内の最終段加算部に於てデータ
長の上位側から見た有効データ語長以下のビットを強制
的に0に設定するデータ設定手段とを設けることによ
り、有効データ語長がデータ処理装置のビット幅に等し
いが、それに近いビット幅であれば乗算器の演算時間に
2マシンサイクル使い、また有効データ語長が装置のビ
ット幅によりかなり短く、例えば半分以下であれば乗算
時間に1マシンサイクルを使うというように、有効デー
タ語長に応じて乗算に必要なマシンサイクル数を、より
効率的に設定することができ、効率的な演算を行うこと
ができる。
タ処理装置を提供する。 【構成】 扱うデータをその有効語長に応じてマシンサ
イクルごとにラッチする第1の状態と入力されたデータ
をそのままスルーする第2の状態とを切換えるためのラ
ッチ制御手段と、乗算器内の最終段加算部に於てデータ
長の上位側から見た有効データ語長以下のビットを強制
的に0に設定するデータ設定手段とを設けることによ
り、有効データ語長がデータ処理装置のビット幅に等し
いが、それに近いビット幅であれば乗算器の演算時間に
2マシンサイクル使い、また有効データ語長が装置のビ
ット幅によりかなり短く、例えば半分以下であれば乗算
時間に1マシンサイクルを使うというように、有効デー
タ語長に応じて乗算に必要なマシンサイクル数を、より
効率的に設定することができ、効率的な演算を行うこと
ができる。
Description
【0001】
【産業上の利用分野】本発明は、半導体集積回路からな
るデータ処理装置に関し、特にデジタルデータを演算処
理するためのデータ処理装置に関するものである。
るデータ処理装置に関し、特にデジタルデータを演算処
理するためのデータ処理装置に関するものである。
【0002】
【従来の技術】並列乗算器を含む従来のデータ処理装置
の回路構成及びその動作内容について図2を参照して説
明する。図に於て破線で囲まれたブロックが並列乗算器
である。この乗算器は2次ブースアルゴリズム及びキャ
リーセーブアダーを用いたものであり、入力は32ビッ
ト幅、出力は63ビット幅であるものとする。
の回路構成及びその動作内容について図2を参照して説
明する。図に於て破線で囲まれたブロックが並列乗算器
である。この乗算器は2次ブースアルゴリズム及びキャ
リーセーブアダーを用いたものであり、入力は32ビッ
ト幅、出力は63ビット幅であるものとする。
【0003】入力側が乗数ラッチ10を介してROM1
4の出力に接続されたブースエンコーダ1の出力はシフ
ト回路を含んだキャリーセーブアダー2に接続されてい
る。このキャリーセーブアダー2には被乗数ラッチ11
及びマルチプレクサ12を介してRAM13の出力も接
続され、またキャリーセーブアダー2の出力はラッチ1
03に入力されるようになっている。ラッチ103から
の乗数及び被乗数の出力は最終段CLA付アダー104
に入力されるようになっている。最終段CLA付アダー
104からの最終的な乗算結果はラッチ回路5にラッチ
され、ALU6に入力されるようになっている。このA
LU6には32ビット幅のデータバス15に接続された
マルチプレクサ9の出力も入力されるようになってい
る。ALU6の出力は63ビット幅のアキュムレータ7
及び32ビット幅のトライステートバッファ8を介して
データバス15に出力されるようになっている。
4の出力に接続されたブースエンコーダ1の出力はシフ
ト回路を含んだキャリーセーブアダー2に接続されてい
る。このキャリーセーブアダー2には被乗数ラッチ11
及びマルチプレクサ12を介してRAM13の出力も接
続され、またキャリーセーブアダー2の出力はラッチ1
03に入力されるようになっている。ラッチ103から
の乗数及び被乗数の出力は最終段CLA付アダー104
に入力されるようになっている。最終段CLA付アダー
104からの最終的な乗算結果はラッチ回路5にラッチ
され、ALU6に入力されるようになっている。このA
LU6には32ビット幅のデータバス15に接続された
マルチプレクサ9の出力も入力されるようになってい
る。ALU6の出力は63ビット幅のアキュムレータ7
及び32ビット幅のトライステートバッファ8を介して
データバス15に出力されるようになっている。
【0004】一方、図の装置に於て、ROM14の読み
出し、RAM13の読み出し及び書き込み、ALUの演
算はそれぞれ1マシンサイクルだけ要し、乗算には2マ
シンサイクルだけ要するものとする。
出し、RAM13の読み出し及び書き込み、ALUの演
算はそれぞれ1マシンサイクルだけ要し、乗算には2マ
シンサイクルだけ要するものとする。
【0005】まず、マシンサイクルの始めにRAM13
またはデータバス15より、乗算器の1つの入力である
乗数が被乗数ラッチ11にラッチされる。またROM1
4より乗算器のもう1つの入力である乗数が乗数ラッチ
10にラッチされる。ラッチ回路10、11にラッチさ
れた乗数、被乗数は次のマシンサイクルの始めに乗算器
内部のラッチ回路103にラッチされ、そのマシンサイ
クルの終わりまでに最終段CLA付アダー104から最
終的な乗算結果が出力され、その次のマシンサイクルの
始めにこの乗算器の出力を入力とするラッチ回路5にラ
ッチされる。
またはデータバス15より、乗算器の1つの入力である
乗数が被乗数ラッチ11にラッチされる。またROM1
4より乗算器のもう1つの入力である乗数が乗数ラッチ
10にラッチされる。ラッチ回路10、11にラッチさ
れた乗数、被乗数は次のマシンサイクルの始めに乗算器
内部のラッチ回路103にラッチされ、そのマシンサイ
クルの終わりまでに最終段CLA付アダー104から最
終的な乗算結果が出力され、その次のマシンサイクルの
始めにこの乗算器の出力を入力とするラッチ回路5にラ
ッチされる。
【0006】ここで、図2の乗算器に於ては、内部ラッ
チ103を除くと、乗算器にデータが入力されてから乗
算結果が出力されるまでの時間が1マシンサイクルでは
おさまらず、従って乗算器内部の最終段CLA付アダー
104の手前にラッチ回路103を挿入することにより
2マシンサイクルかけて乗算を実行することになる。
チ103を除くと、乗算器にデータが入力されてから乗
算結果が出力されるまでの時間が1マシンサイクルでは
おさまらず、従って乗算器内部の最終段CLA付アダー
104の手前にラッチ回路103を挿入することにより
2マシンサイクルかけて乗算を実行することになる。
【0007】
【発明が解決しようとする課題】従来は、前述のようで
あったため、乗算器の入力となるデータの有効語長が3
2ビットの場合は演算時間に2マシンサイクルかけるの
は当然であるが、凡用性のある処理装置の場合、扱うデ
ータの有効語長が必ずしも一定でなく、例えば有効語長
が16ビットの場合、乗算器の処理能力から見て、1マ
シンサイクルで演算が終了する場合でも演算に必ず2マ
シンサイクル要してしまい、処理速度が低下する問題が
あった。
あったため、乗算器の入力となるデータの有効語長が3
2ビットの場合は演算時間に2マシンサイクルかけるの
は当然であるが、凡用性のある処理装置の場合、扱うデ
ータの有効語長が必ずしも一定でなく、例えば有効語長
が16ビットの場合、乗算器の処理能力から見て、1マ
シンサイクルで演算が終了する場合でも演算に必ず2マ
シンサイクル要してしまい、処理速度が低下する問題が
あった。
【0008】本発明は上記した従来技術の問題点に鑑み
なされたものであり、その主な目的は、有効データ語長
に応じて乗算器の演算に必要なマシンサイクルを変える
ことにより、効率的なデータ処理を行うことができるデ
ータ処理装置を提供することにある。
なされたものであり、その主な目的は、有効データ語長
に応じて乗算器の演算に必要なマシンサイクルを変える
ことにより、効率的なデータ処理を行うことができるデ
ータ処理装置を提供することにある。
【0009】
【課題を解決するための手段】上記した目的は、データ
の入力部から出力部までの間に少なくとも1つ以上のラ
ッチ回路が含まれているパイプライン方式の並列乗算器
を含むデータ処理装置であって、前記ラッチ回路をもっ
て当該データ処理装置の扱うデータをその有効語長に応
じてマシンサイクルごとにラッチする第1の状態と、入
力されたデータをそのままスルーする第2の状態とを切
換えるためのラッチ制御手段と、前記並列乗算器内の最
終段加算部に於てデータ長の上位側から見た有効データ
語長以下のビットを強制的に0に設定するデータ設定手
段とを設けたことを特徴とするデータ処理装置を提供す
ることにより達成される。
の入力部から出力部までの間に少なくとも1つ以上のラ
ッチ回路が含まれているパイプライン方式の並列乗算器
を含むデータ処理装置であって、前記ラッチ回路をもっ
て当該データ処理装置の扱うデータをその有効語長に応
じてマシンサイクルごとにラッチする第1の状態と、入
力されたデータをそのままスルーする第2の状態とを切
換えるためのラッチ制御手段と、前記並列乗算器内の最
終段加算部に於てデータ長の上位側から見た有効データ
語長以下のビットを強制的に0に設定するデータ設定手
段とを設けたことを特徴とするデータ処理装置を提供す
ることにより達成される。
【0010】
【作用】このように、扱うデータをその有効語長に応じ
てマシンサイクルごとにラッチする第1の状態と、入力
されたデータをそのままスルーする第2の状態とを切換
えるためのラッチ制御手段と、乗算器内の最終段加算部
に於てデータ長の上位側から見た有効データ語長以下の
ビットを強制的に0に設定するデータ設定手段とを設け
ることにより、有効データ語長がデータ処理装置のビッ
ト幅に等しいが、それに近いビット幅であれば乗算器の
演算時間に2マシンサイクル使い、また有効データ語長
が装置のビット幅によりかなり短く、例えば半分以下で
あれば乗算時間に1マシンサイクルを使うというよう
に、有効データ語長に応じて効率的な演算を行うことが
できる。
てマシンサイクルごとにラッチする第1の状態と、入力
されたデータをそのままスルーする第2の状態とを切換
えるためのラッチ制御手段と、乗算器内の最終段加算部
に於てデータ長の上位側から見た有効データ語長以下の
ビットを強制的に0に設定するデータ設定手段とを設け
ることにより、有効データ語長がデータ処理装置のビッ
ト幅に等しいが、それに近いビット幅であれば乗算器の
演算時間に2マシンサイクル使い、また有効データ語長
が装置のビット幅によりかなり短く、例えば半分以下で
あれば乗算時間に1マシンサイクルを使うというよう
に、有効データ語長に応じて効率的な演算を行うことが
できる。
【0011】
【実施例】以下に本発明の一実施例について図面を参照
して詳細に説明する。
して詳細に説明する。
【0012】図1は本実施例に於けるデータ処理装置の
構成を示すブロック図である。入力側が乗数ラッチ10
を介してROM14の出力に接続されたブースエンコー
ダ1の出力はシフト回路を含んだキャリーセーブアダー
2に接続されている。このキャリーセーブアダー2には
被乗数ラッチ11及びマルチプレクサ12を介してRA
M13の出力も接続され、またキャリーセーブアダー2
の出力はラッチ3に入力されるようになっている。ラッ
チ3にはラッチ制御端子Lが設けられ、該ラッチ制御端
子LにはNANDゲート16を介して制御信号ENとク
ロック信号とのNAND出力が供給されている。ここ
で、ラッチ3のラッチ制御端子Lに“1”が入力されて
いるときはラッチ3はクロック信号に同期して入力信号
をラッチし、ラッチ3のラッチ制御端子Lに“0”が入
力されているときはラッチ3は入力信号をそのままスル
ーして出力するようになっている。ラッチ3からの乗数
及び被乗数の出力は最終段CLA付アダー4の後記する
上位側CLA付アダー4aと下位側CLA付アダー4b
とに入力されるようになっている。
構成を示すブロック図である。入力側が乗数ラッチ10
を介してROM14の出力に接続されたブースエンコー
ダ1の出力はシフト回路を含んだキャリーセーブアダー
2に接続されている。このキャリーセーブアダー2には
被乗数ラッチ11及びマルチプレクサ12を介してRA
M13の出力も接続され、またキャリーセーブアダー2
の出力はラッチ3に入力されるようになっている。ラッ
チ3にはラッチ制御端子Lが設けられ、該ラッチ制御端
子LにはNANDゲート16を介して制御信号ENとク
ロック信号とのNAND出力が供給されている。ここ
で、ラッチ3のラッチ制御端子Lに“1”が入力されて
いるときはラッチ3はクロック信号に同期して入力信号
をラッチし、ラッチ3のラッチ制御端子Lに“0”が入
力されているときはラッチ3は入力信号をそのままスル
ーして出力するようになっている。ラッチ3からの乗数
及び被乗数の出力は最終段CLA付アダー4の後記する
上位側CLA付アダー4aと下位側CLA付アダー4b
とに入力されるようになっている。
【0013】最終段CLA付アダー4は上位ビット側の
33ビット目から63ビットまでの加算を担当する上位
側CLA付アダー4aと、下位ビット側の0ビット目か
ら32ビットまでの加算を担当する下位側CLA付アダ
ー4bと、下位側CLA付アダー4bの桁上がり出力C
oを一方の入力とし、かつ出力が上位側CLA付アダー
4aの桁上がり入力Cinに接続されたAND回路4c
と、下位側CLA付アダー4bの出力を入力とし、かつ
出力がラッチ5に接続されたAND回路4dとから構成
されている。AND回路4cとAND回路4dとの他方
の入力には、上記ラッチ制御端子Lに入力されるのと同
じ制御信号ENが入力されるようになっている。
33ビット目から63ビットまでの加算を担当する上位
側CLA付アダー4aと、下位ビット側の0ビット目か
ら32ビットまでの加算を担当する下位側CLA付アダ
ー4bと、下位側CLA付アダー4bの桁上がり出力C
oを一方の入力とし、かつ出力が上位側CLA付アダー
4aの桁上がり入力Cinに接続されたAND回路4c
と、下位側CLA付アダー4bの出力を入力とし、かつ
出力がラッチ5に接続されたAND回路4dとから構成
されている。AND回路4cとAND回路4dとの他方
の入力には、上記ラッチ制御端子Lに入力されるのと同
じ制御信号ENが入力されるようになっている。
【0014】最終段CLA付アダー4からの最終的な乗
算結果はラッチ回路5にラッチされ、ALU6に入力さ
れるようになっている。このALU6の他方の入力には
データバス15に接続されたマルチプレクサ9の出力も
接続されている。ALU6の出力はアキュムレータ7及
びトライステートバッファ8を介してデータバス15に
出力されるようになっている。尚、各ブロックのビット
幅は図2と同様である。
算結果はラッチ回路5にラッチされ、ALU6に入力さ
れるようになっている。このALU6の他方の入力には
データバス15に接続されたマルチプレクサ9の出力も
接続されている。ALU6の出力はアキュムレータ7及
びトライステートバッファ8を介してデータバス15に
出力されるようになっている。尚、各ブロックのビット
幅は図2と同様である。
【0015】次に本実施例の作動要領について説明す
る。まず、有効データ語長が32ビットの場合には制御
信号ENは“1”となり、図2の従来回路と同様の動作
を行う。一方、有効データ語長が16ビットの場合には
制御信号ENは“0”となり、ラッチ3のラッチ制御端
子Lに“0”が入力され、ラッチ3は入力信号をそのま
まスルーして出力する。また、AND回路4cはオフ
し、下位側CLA付アダー4bの桁上がり信号は上位側
CLA付アダー4aの桁上がり入力Cinに入力されな
くなる。また下位側CLA付アダー4bの出力はAND
回路4dの他方の入力には制御信号ENが入力されてい
るため強制的に全てのビットが“0”に変えられてラッ
チ5に出力される。尚、図に於て符号A、Bは乗数、被
乗数を示す。
る。まず、有効データ語長が32ビットの場合には制御
信号ENは“1”となり、図2の従来回路と同様の動作
を行う。一方、有効データ語長が16ビットの場合には
制御信号ENは“0”となり、ラッチ3のラッチ制御端
子Lに“0”が入力され、ラッチ3は入力信号をそのま
まスルーして出力する。また、AND回路4cはオフ
し、下位側CLA付アダー4bの桁上がり信号は上位側
CLA付アダー4aの桁上がり入力Cinに入力されな
くなる。また下位側CLA付アダー4bの出力はAND
回路4dの他方の入力には制御信号ENが入力されてい
るため強制的に全てのビットが“0”に変えられてラッ
チ5に出力される。尚、図に於て符号A、Bは乗数、被
乗数を示す。
【0016】こうすることにより最終段CLA付アダー
の下位側の32ビットの間を伝わる桁上げ信号の伝搬遅
延時間がほとんどかからなくなり、1マシンサイクルで
乗算が実行できる。
の下位側の32ビットの間を伝わる桁上げ信号の伝搬遅
延時間がほとんどかからなくなり、1マシンサイクルで
乗算が実行できる。
【0017】
【発明の効果】以上の説明により明らかなように、本発
明によれば、扱うデータをその有効語長に応じてマシン
サイクルごとにラッチする第1の状態と、入力されたデ
ータをそのままスルーする第2の状態とを切換えるため
のラッチ制御手段と、乗算器内の最終段加算部に於てデ
ータ長の上位側から見た有効データ語長以下のビットを
強制的に0に設定するデータ設定手段とを設けることに
より、有効データ語長がデータ処理装置のビット幅に等
しいが、それに近いビット幅であれば乗算器の演算時間
に2マシンサイクル使い、また有効データ語長が装置の
ビット幅によりかなり短く、例えば半分以下であれば乗
算時間に1マシンサイクルを使うというように、有効デ
ータ語長に応じて乗算に必要なマシンサイクル数を、よ
り効率的に設定することができ、効率的な演算を行うこ
とができる。
明によれば、扱うデータをその有効語長に応じてマシン
サイクルごとにラッチする第1の状態と、入力されたデ
ータをそのままスルーする第2の状態とを切換えるため
のラッチ制御手段と、乗算器内の最終段加算部に於てデ
ータ長の上位側から見た有効データ語長以下のビットを
強制的に0に設定するデータ設定手段とを設けることに
より、有効データ語長がデータ処理装置のビット幅に等
しいが、それに近いビット幅であれば乗算器の演算時間
に2マシンサイクル使い、また有効データ語長が装置の
ビット幅によりかなり短く、例えば半分以下であれば乗
算時間に1マシンサイクルを使うというように、有効デ
ータ語長に応じて乗算に必要なマシンサイクル数を、よ
り効率的に設定することができ、効率的な演算を行うこ
とができる。
【図1】本発明が適用されたデータ処理装置の回路構成
を示すブロック図である。
を示すブロック図である。
【図2】従来のデータ処理装置の回路構成を示すブロッ
ク図である。
ク図である。
1 ブースエンコーダ 2 シフト回路付キャリーセーブアダー 3、5、10、11、103 ラッチ 4、104 並列乗算器の最終段加算回路 6 ALU 7 アキュムレータ 8 トライステートバッファ 9、12 マルチプレクサ 13 RAM 14 ROM 15 データバス 16 2入力NAND
Claims (1)
- 【請求項1】 データの入力部から出力部までの間に
少なくとも1つ以上のラッチ回路が含まれているパイプ
ライン方式の並列乗算器を含むデータ処理装置であっ
て、 前記ラッチ回路をもって当該データ処理装置の扱うデー
タをその有効語長に応じてマシンサイクルごとにラッチ
する第1の状態と、入力されたデータをそのままスルー
する第2の状態とを切換えるためのラッチ制御手段と、 前記並列乗算器内の最終段加算部に於てデータ長の上位
側から見た有効データ語長以下のビットを強制的に0に
設定するデータ設定手段とを設けたことを特徴とするデ
ータ処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5120964A JPH06309151A (ja) | 1993-04-23 | 1993-04-23 | データ処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5120964A JPH06309151A (ja) | 1993-04-23 | 1993-04-23 | データ処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH06309151A true JPH06309151A (ja) | 1994-11-04 |
Family
ID=14799368
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5120964A Withdrawn JPH06309151A (ja) | 1993-04-23 | 1993-04-23 | データ処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH06309151A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008533617A (ja) * | 2005-03-17 | 2008-08-21 | クゥアルコム・インコーポレイテッド | 2つのオペランドを乗算する方法およびアレイ乗算器 |
-
1993
- 1993-04-23 JP JP5120964A patent/JPH06309151A/ja not_active Withdrawn
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008533617A (ja) * | 2005-03-17 | 2008-08-21 | クゥアルコム・インコーポレイテッド | 2つのオペランドを乗算する方法およびアレイ乗算器 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6009451A (en) | Method for generating barrel shifter result flags directly from input data | |
| US6209017B1 (en) | High speed digital signal processor | |
| EP0136834A2 (en) | A digital circuit performing an arithmetic operation with an overflow | |
| US4172288A (en) | Binary or BCD adder with precorrected result | |
| Chang et al. | Simple, Fast, and Exact RNS Scaler for the Three-Moduli Set $\{2^{n}-1, 2^{n}, 2^{n}+ 1\} $ | |
| US5889689A (en) | Hierarchical carry-select, three-input saturation | |
| US5177703A (en) | Division circuit using higher radices | |
| US6519621B1 (en) | Arithmetic circuit for accumulative operation | |
| EP0278529A2 (en) | Multiplication circuit capable of operating at a high speed with a small amount of hardware | |
| JPH06309151A (ja) | データ処理装置 | |
| US4677584A (en) | Data processing system with an arithmetic logic unit having improved carry look ahead | |
| KR100481586B1 (ko) | 모듈러 곱셈 장치 | |
| US8214419B2 (en) | Methods and apparatus for implementing a saturating multiplier | |
| KR19990004503A (ko) | 2의 보수 복소수 곱셈기 | |
| US6182105B1 (en) | Multiple-operand addition with intermediate saturation | |
| US5151995A (en) | Method and apparatus for producing successive calculated results in a high-speed computer functional unit using low-speed VLSI components | |
| US5018092A (en) | Stack-type arithmetic circuit | |
| US6904442B1 (en) | Method of implementing logic functions using a look-up-table | |
| KR100373367B1 (ko) | 가산기를이용한스퀘어로직회로 | |
| JPS6259828B2 (ja) | ||
| GB2345562A (en) | Digital signal processor for performing fixed-point and/or integer arithmetic | |
| KR100251547B1 (ko) | 디지탈신호처리기(Digital Sgnal Processor) | |
| JP3110072B2 (ja) | 事前正規化回路 | |
| KR0136484B1 (ko) | 이진 보수 발생을 위한 병렬 곱셈기 | |
| Mayerwieser et al. | Testing a high-speed data path the design of the rsaβ crypto chip |
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: 20000704 |