JPS62257526A - 算術論理演算装置 - Google Patents
算術論理演算装置Info
- Publication number
- JPS62257526A JPS62257526A JP61102792A JP10279286A JPS62257526A JP S62257526 A JPS62257526 A JP S62257526A JP 61102792 A JP61102792 A JP 61102792A JP 10279286 A JP10279286 A JP 10279286A JP S62257526 A JPS62257526 A JP S62257526A
- Authority
- JP
- Japan
- Prior art keywords
- storage means
- arithmetic
- register
- logic unit
- positive
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/57—Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
- G06F7/575—Basic arithmetic logic units, i.e. devices selectable to perform either addition, subtraction or one of several logical operations, using, at least partially, the same circuitry
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Executing Machine-Instructions (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[産業上の利用分野コ
この発明は、マイクロプロセッサにおける算術論理演算
装置に関し、特に、所定の演算式を実行するにあたって
、実行ステップを簡素化できるように改良された算術論
理演算装置に関するものである。
装置に関し、特に、所定の演算式を実行するにあたって
、実行ステップを簡素化できるように改良された算術論
理演算装置に関するものである。
[従来の技術]
まず、第4図ないし第8図に基づいて、従来の基本的な
マイクロプロセッサの構成と動作とについて説明をする
。
マイクロプロセッサの構成と動作とについて説明をする
。
第4図は、従来の基本的なマイクロプロセッサのB4成
概要図である。第4図において、21は制御部であり、
22はデータバス部である。制御部21は、このマイク
ロプロセッサの制御を司るものであり、システムバスを
介してマイクロプロセッサ外のメモリにアドレスを出し
、メモリから命令を取り込んで解読し、データバス部2
2へ制御信号を出す。データバス部22はこの制御信号
によってデータ処理を行ない、制御部21へ返すべきス
テータスがあれば返す。なお、データ処理に伴う制御部
21とデータバス部22との間のデータ伝送は、内部バ
スを介して行なわれる。
概要図である。第4図において、21は制御部であり、
22はデータバス部である。制御部21は、このマイク
ロプロセッサの制御を司るものであり、システムバスを
介してマイクロプロセッサ外のメモリにアドレスを出し
、メモリから命令を取り込んで解読し、データバス部2
2へ制御信号を出す。データバス部22はこの制御信号
によってデータ処理を行ない、制御部21へ返すべきス
テータスがあれば返す。なお、データ処理に伴う制御部
21とデータバス部22との間のデータ伝送は、内部バ
スを介して行なわれる。
このようにしてマイクロプロセッサは動作している。
第5図は、第4図の中のデータバス部22の構成を示す
ブロック図である。第5図において、31は算術論理演
算器(ALU) 、32はアキュムレータ(ACC)で
ある。33はステータスレジスタであり、このレジスタ
はSRAとSRBとの2つのレジスタをよんでいる。3
4は汎用レジスタであり、このレジスタはRO,R1,
R2およびR3の4つのレジスタを含んでいる。データ
バス部22の各構成要素は、図示のように、内部バスで
適宜つながれている。算術論理演算器31は、アキュム
レータ32や汎用レジスタ34の内容に基づいて加算、
減算等の演算処理を行ない、その処理結果をアキュムレ
ータ32に返す。そのときの算術論理演算器31の演算
結果に応じて、ステータスレジスタ33は所定のスター
テス状態にされる。
ブロック図である。第5図において、31は算術論理演
算器(ALU) 、32はアキュムレータ(ACC)で
ある。33はステータスレジスタであり、このレジスタ
はSRAとSRBとの2つのレジスタをよんでいる。3
4は汎用レジスタであり、このレジスタはRO,R1,
R2およびR3の4つのレジスタを含んでいる。データ
バス部22の各構成要素は、図示のように、内部バスで
適宜つながれている。算術論理演算器31は、アキュム
レータ32や汎用レジスタ34の内容に基づいて加算、
減算等の演算処理を行ない、その処理結果をアキュムレ
ータ32に返す。そのときの算術論理演算器31の演算
結果に応じて、ステータスレジスタ33は所定のスター
テス状態にされる。
第6図は、第5図に示すデータバス部の中の算術論理演
算器31およびステータスレジスタ33のより詳しい構
成を示すブロック図である。第6図において、41は算
術論理演算器31全体を制御するALUコントローラ、
42は加算器、43はアキュムレータ32からのデータ
のマルチプレクサ、44は内部バスからのデータのマル
チプレクサである。また、ステータスレジスタ33に含
まれる一方のステータスレジスタSRAは、算術論理演
算器31の演算結果により、その内容(含まれるフラグ
の状態)が随時変化するレジスタであり、他方のステー
タスレジスタSRBは、制御部21からの命令により、
ステータスレジスタSRAの内容を退避させて保持して
おくためのレジスタである。
算器31およびステータスレジスタ33のより詳しい構
成を示すブロック図である。第6図において、41は算
術論理演算器31全体を制御するALUコントローラ、
42は加算器、43はアキュムレータ32からのデータ
のマルチプレクサ、44は内部バスからのデータのマル
チプレクサである。また、ステータスレジスタ33に含
まれる一方のステータスレジスタSRAは、算術論理演
算器31の演算結果により、その内容(含まれるフラグ
の状態)が随時変化するレジスタであり、他方のステー
タスレジスタSRBは、制御部21からの命令により、
ステータスレジスタSRAの内容を退避させて保持して
おくためのレジスタである。
第6図を参照して、上記第5図を参照して説明した算術
論理演算器31の処理動作について詳しく説明する。A
LUコントローラ41は、制御部21 (第4図参照)
からの制御信号を受けて、算術論理演算器31仝体を制
御する。ALUコントローラ41の出力信号SO,Sl
、S2およびS3は、マルチプレクサ43およびマルチ
プレクサ44の制御をし、ALUコントローラ41の出
力信号CIは加算器42へのキャリア入力を制御し、A
LUコントローラ41の出力信号には加算器42の桁上
げ禁11−の制御を行なう。マルチプレクサ43は、ア
キュムレータ32がらのデータとその否定データとを制
御信号SO,Slに従ってマルチプレクサし、加算器4
2へ出刃する。他方、マルチプレクサ44は、内部バス
がらのデータ、すなわちlJt用レジスタ34(第5図
参照)から内部バスを介して与えられるデータとその否
定データとを制御信号S2.S3に従ってマルチプレク
サし、加算器42へ出力する。このきのマルチプレクサ
43.44の出力状態を示す真理値表は、次の表1のと
おりである。
論理演算器31の処理動作について詳しく説明する。A
LUコントローラ41は、制御部21 (第4図参照)
からの制御信号を受けて、算術論理演算器31仝体を制
御する。ALUコントローラ41の出力信号SO,Sl
、S2およびS3は、マルチプレクサ43およびマルチ
プレクサ44の制御をし、ALUコントローラ41の出
力信号CIは加算器42へのキャリア入力を制御し、A
LUコントローラ41の出力信号には加算器42の桁上
げ禁11−の制御を行なう。マルチプレクサ43は、ア
キュムレータ32がらのデータとその否定データとを制
御信号SO,Slに従ってマルチプレクサし、加算器4
2へ出刃する。他方、マルチプレクサ44は、内部バス
がらのデータ、すなわちlJt用レジスタ34(第5図
参照)から内部バスを介して与えられるデータとその否
定データとを制御信号S2.S3に従ってマルチプレク
サし、加算器42へ出力する。このきのマルチプレクサ
43.44の出力状態を示す真理値表は、次の表1のと
おりである。
表1
表1に示す真理値表では、第7図に示すように、マルチ
プレクサ43.44への人力データ杏D!およびDI、
出力データをDO1制御信号をSOおよびSlとして表
わしている。
プレクサ43.44への人力データ杏D!およびDI、
出力データをDO1制御信号をSOおよびSlとして表
わしている。
第6図に戻って、加′!7.器42はマルチプレクサ4
3およびマルチプレクサ44の出力を加算してアキュム
レータ32(第5図参照)へ出力する。
3およびマルチプレクサ44の出力を加算してアキュム
レータ32(第5図参照)へ出力する。
また、加算器42の出力の一部は一方のステータスレジ
スタSRAへ与えられる。ステータスレジスタSRAは
制御部21からの制御命令により、加や: li:;
42の演算結果が“圧”負゛零”のいずれであるかをス
トアする。また、他方のステータスレジスタSRBは、
前述したように、制御部21からの制御命令に応じて、
ステータスレジスタSRAの内容を取り込んで保持する
。
スタSRAへ与えられる。ステータスレジスタSRAは
制御部21からの制御命令により、加や: li:;
42の演算結果が“圧”負゛零”のいずれであるかをス
トアする。また、他方のステータスレジスタSRBは、
前述したように、制御部21からの制御命令に応じて、
ステータスレジスタSRAの内容を取り込んで保持する
。
次に、このマイクロプロセッサの命令体系について説明
する。次の表2はこのマイクロブロセッ(以下糸゛白) ・1す′ 表2 rag、ragl、rag2 : RO〜R3,AC
Cのいずれかの内容1abel ニラベル Z : SI?AのゼロフラグS
: SRAのサインフラグz13
: SRHのゼロフラグS13 : S
I?Hのサインフラグ表2の読み方を簡11jに説明す
ると、次のとおりである。たとえば、オペレータ“AD
D”の機能は、表示のように加算であり、プログラムに
よって決められる任意のレジスタregの値とACC(
アキュムレータ32)の値とを加算して、その加算値を
ACC(アキュムレータ32)ヘスドアさせるコマンド
である。同様に、オペレータ”SUB”は減算、“AN
D”は論理積演算、OR”は論理和演算、“XOR’は
排他的論理和演算を指示するコマンドである。オペレー
タ“MOV″は任意のレジスタreg2の値をregl
へ移す旨のコマンドである。オペレータ“JZ”は、表
示のように、もしZ=1ならば任意のラベルヘジトンブ
する旨を指示するコマンドである。同様に、オペレータ
“JS”はS−1のとき任意のラベルヘジャンブする旨
を指示し、オペレータ“JZB“は」Z−1のとき任意
のラベルヘジャンプする旨を指示し、“JSB”は5B
−1のとき圧愈のラベルヘジャンプする旨指示し、’
J M P”は常にプログラムで指定される任意のラベ
ルヘジャンプする旨を指示するコマンドである。さらに
、“CALL”は指定された任意のラベルのサブルーチ
ンを呼出すコマンドであり、“RET”は元の分岐点ヘ
リターンする旨を指示するコマンドであり、“NOP“
は演算なしを指示するコマンドである。
する。次の表2はこのマイクロブロセッ(以下糸゛白) ・1す′ 表2 rag、ragl、rag2 : RO〜R3,AC
Cのいずれかの内容1abel ニラベル Z : SI?AのゼロフラグS
: SRAのサインフラグz13
: SRHのゼロフラグS13 : S
I?Hのサインフラグ表2の読み方を簡11jに説明す
ると、次のとおりである。たとえば、オペレータ“AD
D”の機能は、表示のように加算であり、プログラムに
よって決められる任意のレジスタregの値とACC(
アキュムレータ32)の値とを加算して、その加算値を
ACC(アキュムレータ32)ヘスドアさせるコマンド
である。同様に、オペレータ”SUB”は減算、“AN
D”は論理積演算、OR”は論理和演算、“XOR’は
排他的論理和演算を指示するコマンドである。オペレー
タ“MOV″は任意のレジスタreg2の値をregl
へ移す旨のコマンドである。オペレータ“JZ”は、表
示のように、もしZ=1ならば任意のラベルヘジトンブ
する旨を指示するコマンドである。同様に、オペレータ
“JS”はS−1のとき任意のラベルヘジャンブする旨
を指示し、オペレータ“JZB“は」Z−1のとき任意
のラベルヘジャンプする旨を指示し、“JSB”は5B
−1のとき圧愈のラベルヘジャンプする旨指示し、’
J M P”は常にプログラムで指定される任意のラベ
ルヘジャンプする旨を指示するコマンドである。さらに
、“CALL”は指定された任意のラベルのサブルーチ
ンを呼出すコマンドであり、“RET”は元の分岐点ヘ
リターンする旨を指示するコマンドであり、“NOP“
は演算なしを指示するコマンドである。
なお、表示のように、ZはステータスレジスタSRAの
ゼロフラグ、SはステータスレジスタSRAのサインフ
ラグ、ZBはステータスレジスタSRBのゼロフラグ、
SBはステータスレジスタSRBのサインプラグを意味
している。
ゼロフラグ、SはステータスレジスタSRAのサインフ
ラグ、ZBはステータスレジスタSRBのゼロフラグ、
SBはステータスレジスタSRBのサインプラグを意味
している。
[発明が解決しようとする問題点コ
以上述べた従来の基本的なマイクロプロセッサによって
、今、表2に示した命令セラI・で以下の演算を行なう
場合を考える。すなわち、次の演算ここで、R3は“1
”または“O”または“−1“の値を持っているレジス
タであり、SBはステータスレジスタSRBのサ インフラグ、 ZBはステータスレジスタSRBのゼ ロフラグ、である、 を行なおうとする。参考までに、この演算式は、q線伝
送における自動等化のアルゴリズムによく現われる演算
形式である。以下には、この演算をMAD演算と呼ぶ。
、今、表2に示した命令セラI・で以下の演算を行なう
場合を考える。すなわち、次の演算ここで、R3は“1
”または“O”または“−1“の値を持っているレジス
タであり、SBはステータスレジスタSRBのサ インフラグ、 ZBはステータスレジスタSRBのゼ ロフラグ、である、 を行なおうとする。参考までに、この演算式は、q線伝
送における自動等化のアルゴリズムによく現われる演算
形式である。以下には、この演算をMAD演算と呼ぶ。
MAD演算を行なうフローチャートを第8図に(以天余
′!:E) 表3 上記表3より、従来のマイクロプロセッサにおいて、こ
のNIAD演算を実行するためには、16ステソブのプ
ログラムが最低必要であり、しかも、16ステツプのプ
ログラムのうち、条件分枝ずなわちJZB、JZなどの
ジャンプを指令するコマンドやRETのリターンのコマ
ンド等が約半分のステップ占めており、演算実行のため
のステップ数が少ないので、非常に効率の悪いプログラ
ムとなっている。
′!:E) 表3 上記表3より、従来のマイクロプロセッサにおいて、こ
のNIAD演算を実行するためには、16ステソブのプ
ログラムが最低必要であり、しかも、16ステツプのプ
ログラムのうち、条件分枝ずなわちJZB、JZなどの
ジャンプを指令するコマンドやRETのリターンのコマ
ンド等が約半分のステップ占めており、演算実行のため
のステップ数が少ないので、非常に効率の悪いプログラ
ムとなっている。
よって、マイクロプロセッサを特定の用途に使う場合、
すなわち」1述のようなFvI A D演算等を頻繁に
行なう必要がある用途に用いる場合には、MAD#算等
を少ないステップで効率良く高速に実行できるようにマ
イクロプロセッサを改良する必要がある。
すなわち」1述のようなFvI A D演算等を頻繁に
行なう必要がある用途に用いる場合には、MAD#算等
を少ないステップで効率良く高速に実行できるようにマ
イクロプロセッサを改良する必要がある。
この発明は、このような必要性の下になされたもので、
M A D演算等の特定の演算を少ない命令ステップで
実行できるようにハードウェアが改良されたマイクロプ
ロセッサの算術論理演算装置を得ることを目的とする。
M A D演算等の特定の演算を少ない命令ステップで
実行できるようにハードウェアが改良されたマイクロプ
ロセッサの算術論理演算装置を得ることを目的とする。
[問題点を解決するだめの手段]
この発明に係る算術論理演算装置は、従来の算術論理演
算装置のコントロール部に、MAD演算等の特定の演p
を少ない命令ステップで行なうためのコントロール回路
を付加したものである。
算装置のコントロール部に、MAD演算等の特定の演p
を少ない命令ステップで行なうためのコントロール回路
を付加したものである。
[作用]
この発明の算術論理演算装置を用いれば、マイクロプロ
セッサにおいてこれまで比較的多くの命令ステップで行
なわれていたMAD演算等の特定の演算が、コントロー
ル回路の作用により、極めて少ない命令ステップを実行
することができる。
セッサにおいてこれまで比較的多くの命令ステップで行
なわれていたMAD演算等の特定の演算が、コントロー
ル回路の作用により、極めて少ない命令ステップを実行
することができる。
[発明の実施例]
以下、この発明の一実施例を図について説明する。
第1図は、この発明の一実施例に係る算術論理演算装置
、すなわちマイクロプロセッサのデータバス部の構成を
示す図である。第1図のデータバス部は、従来の基本的
なマイクロプロセッサと同様に、制御部によって制御さ
れる。第1図を参照して、31は算術論理演算器(AL
U) 、32はアキュムレータ(ACC)である。33
はステータスレジスタであり、このレジスタはSRAと
SRBの2つのレジスタを含んでいる。34は汎用レジ
スタであり、このレジスタはRO,R1,R2およびR
3の4つのレジスタを含んでいる。この7j、 1図に
示すデータバス部の構成は、従来の1λ本的なマイクロ
プロセッサのデータバス部とほぼ同様であるが、ただ、
第1の記憶手段の一例の他方のステータスレジスタSR
Bの出力信号および第2の記ω1手段の一例のレジスタ
R3の出力信号を算術論理演算器31へ人力するように
していることである。これがこの実施例の構成上の第1
の特徴である。
、すなわちマイクロプロセッサのデータバス部の構成を
示す図である。第1図のデータバス部は、従来の基本的
なマイクロプロセッサと同様に、制御部によって制御さ
れる。第1図を参照して、31は算術論理演算器(AL
U) 、32はアキュムレータ(ACC)である。33
はステータスレジスタであり、このレジスタはSRAと
SRBの2つのレジスタを含んでいる。34は汎用レジ
スタであり、このレジスタはRO,R1,R2およびR
3の4つのレジスタを含んでいる。この7j、 1図に
示すデータバス部の構成は、従来の1λ本的なマイクロ
プロセッサのデータバス部とほぼ同様であるが、ただ、
第1の記憶手段の一例の他方のステータスレジスタSR
Bの出力信号および第2の記ω1手段の一例のレジスタ
R3の出力信号を算術論理演算器31へ人力するように
していることである。これがこの実施例の構成上の第1
の特徴である。
第2図は、第1図における算術論理演算器31とステー
タスレジスタ33とレジスタR3との接続関係の詳細を
ボすブロック図である。第2図に示すように、他方のス
テータスレジスタSRBの出力は、ALUコントローラ
41へ与えられる。
タスレジスタ33とレジスタR3との接続関係の詳細を
ボすブロック図である。第2図に示すように、他方のス
テータスレジスタSRBの出力は、ALUコントローラ
41へ与えられる。
また、レジスタR3からの出力信号もALUコントロー
ラ41へ与えられる。
ラ41へ与えられる。
ところで、第2図に示すALUコントローラ41は、第
6図において説明した従来のコントローラ41とは異な
り、従来のコントローラ41に第3図に示すコントロー
ル回路が付加されたものになっている。これがこの実施
例の構成上の第2の特徴である。
6図において説明した従来のコントローラ41とは異な
り、従来のコントローラ41に第3図に示すコントロー
ル回路が付加されたものになっている。これがこの実施
例の構成上の第2の特徴である。
なお、第2図におけるその余の構成は従来のものと同じ
である。
である。
第3図に示すコントロール回路は、MAD演算における
“加算(ADD)″ “減算(SUB)““演算なしく
N0P)″を制御するためのもので、ステータスレジス
タSRBおよびレジスタR3の出力状態により、ALU
コントローラ41が所定の出力を導出isJ能または不
可能な論理回路となっている。第3図のコントロール回
路の真理値表を、次の表4に示す。
、、7゜(以下余白) じ 表4 ただし、X:don’ t care第3図のコン
トロール回路をALUコントローラ41に含ませた結果
、この実施例の算術論理演算装置を含むマイクロプロセ
ッサは、MAD演算を、次の表5に示すわずか3ステツ
プのプログラムで行なうことができる。
“加算(ADD)″ “減算(SUB)““演算なしく
N0P)″を制御するためのもので、ステータスレジス
タSRBおよびレジスタR3の出力状態により、ALU
コントローラ41が所定の出力を導出isJ能または不
可能な論理回路となっている。第3図のコントロール回
路の真理値表を、次の表4に示す。
、、7゜(以下余白) じ 表4 ただし、X:don’ t care第3図のコン
トロール回路をALUコントローラ41に含ませた結果
、この実施例の算術論理演算装置を含むマイクロプロセ
ッサは、MAD演算を、次の表5に示すわずか3ステツ
プのプログラムで行なうことができる。
表5
表5において、オペレータ“MAD”は、上述した構成
の算術論理演算装置によりIll能となった算術論理演
算器31の動作を指示するためのコマンドで、 を行な−)ものであり、regは、プログラムの中で指
定される任意のレジスタを示し、この実施例の場合は、
表5から明らかなように、レジスタR1を示す。
の算術論理演算装置によりIll能となった算術論理演
算器31の動作を指示するためのコマンドで、 を行な−)ものであり、regは、プログラムの中で指
定される任意のレジスタを示し、この実施例の場合は、
表5から明らかなように、レジスタR1を示す。
なお、上記実施例において、ALUコントローラ41に
付加すべきコントロール回路は、表4に示す真理値表を
満足する論理回路であればよく、必ずしも第3図に示す
ブロック構成の論理回路である必要はない。
付加すべきコントロール回路は、表4に示す真理値表を
満足する論理回路であればよく、必ずしも第3図に示す
ブロック構成の論理回路である必要はない。
また、上記実施例では、第1の記憶手段の一例のステー
タスフラグSRBは、ゼロフラグとサインフラグとから
なる2ビツト構成としたが、ステータスフラグSRBは
、少なくとも“正”負”“零”の3つのうちのいずれか
の情報をストアすることができるレジスタであればよい
。また、第2の記fα手段の一例のレジスタR3も、前
述したような2ビツト構成のものに限らず、正”負”“
零″の3つのうちのいずれかの情報をストアすることの
できるレジスタであればよい。
タスフラグSRBは、ゼロフラグとサインフラグとから
なる2ビツト構成としたが、ステータスフラグSRBは
、少なくとも“正”負”“零”の3つのうちのいずれか
の情報をストアすることができるレジスタであればよい
。また、第2の記fα手段の一例のレジスタR3も、前
述したような2ビツト構成のものに限らず、正”負”“
零″の3つのうちのいずれかの情報をストアすることの
できるレジスタであればよい。
なお、表4に示す真理値表は、レジスタR3の状態を上
位ビットR3(1)と下位ビットR3(0)の2ビツト
によって表示し、ステータスレジスタSRBの状態をゼ
ロフラグZBとサインフラグSBとの2ビツトによって
表示した場合の真理値表であるから、上述のようにステ
ータスレジスタSRBおよび/またはレジスタR3の状
態を少なくとも“正2 “負”零〇の3状態でそれぞれ
表わすようにした場合は、真理値表の形式的な表現の仕
方が変わることはもちろんである。なお、その場合にお
いても、この発明の基本的者えに沿って構成したコント
ロール回路を算術論理演算装置のコントロール部に含ま
せるように、算術論理演算装置のハードウェアを改良す
ればよい。
位ビットR3(1)と下位ビットR3(0)の2ビツト
によって表示し、ステータスレジスタSRBの状態をゼ
ロフラグZBとサインフラグSBとの2ビツトによって
表示した場合の真理値表であるから、上述のようにステ
ータスレジスタSRBおよび/またはレジスタR3の状
態を少なくとも“正2 “負”零〇の3状態でそれぞれ
表わすようにした場合は、真理値表の形式的な表現の仕
方が変わることはもちろんである。なお、その場合にお
いても、この発明の基本的者えに沿って構成したコント
ロール回路を算術論理演算装置のコントロール部に含ま
せるように、算術論理演算装置のハードウェアを改良す
ればよい。
なお、以−にの説明では、特定の演算としてMAD演算
を例にとったが、MAD演算以外の同じような各種特定
の演算を行なう専用のマイクロプロセッサを製造する場
合においても、この発明の技術的思想により作られる算
術論理演算装置によれば、上述のMAD演算を実行する
場合と同様に、初期の目的を達成することができる旨指
摘しておく。
を例にとったが、MAD演算以外の同じような各種特定
の演算を行なう専用のマイクロプロセッサを製造する場
合においても、この発明の技術的思想により作られる算
術論理演算装置によれば、上述のMAD演算を実行する
場合と同様に、初期の目的を達成することができる旨指
摘しておく。
[発明の効果]
以上のように、この発明によれば、MAD演算等の特定
の演算を実行するに際し、従来のものに比べて極めて少
ないステップ数で該演算を実行可能なマイクロプロセッ
サのための算術論理演算装置を得られる効果がある。
の演算を実行するに際し、従来のものに比べて極めて少
ないステップ数で該演算を実行可能なマイクロプロセッ
サのための算術論理演算装置を得られる効果がある。
第1図は、この発明の一実施例に係るデータバス部の構
成を示す図である。 第2図は、第1図における算術論理演算器31とステー
タスレジスタ33とレジスタR3との接続構成の詳細を
示すブロック図である。 第3図は、この発明の一実施例に必要なコントロール回
路である。 第4図は、従来の基本的なマイクロプロセッサの構成概
要図である。 第5図は、第4図の中のデータバス部22の構成を示す
ブロック図である。 ゛ 第6図は、第5図の中の算術論理演算器31およびステ
ータスレジスタ33のより詳しい構成を示すブロック図
である。 第7図は、マルチプレクサの人力と出力と制御信号との
関係を示す図である。 第8図は、従来のマイクロプロセッサによってMAD演
算を実行する場合のフローチャー1・である。 図において、21は制御部、22はデータバス部、31
は算術論理演算器、32はアキュムレータ、33はステ
ータスレジスタ、34は汎用レジスタ、41はALUコ
ントローラ、42は加算器、43.44はマルチプレク
サ、SRBは、第1の記憶手段の一例のステータスレジ
スタ、R3は第2の記憶手段の一例のレジスタを示す。
成を示す図である。 第2図は、第1図における算術論理演算器31とステー
タスレジスタ33とレジスタR3との接続構成の詳細を
示すブロック図である。 第3図は、この発明の一実施例に必要なコントロール回
路である。 第4図は、従来の基本的なマイクロプロセッサの構成概
要図である。 第5図は、第4図の中のデータバス部22の構成を示す
ブロック図である。 ゛ 第6図は、第5図の中の算術論理演算器31およびステ
ータスレジスタ33のより詳しい構成を示すブロック図
である。 第7図は、マルチプレクサの人力と出力と制御信号との
関係を示す図である。 第8図は、従来のマイクロプロセッサによってMAD演
算を実行する場合のフローチャー1・である。 図において、21は制御部、22はデータバス部、31
は算術論理演算器、32はアキュムレータ、33はステ
ータスレジスタ、34は汎用レジスタ、41はALUコ
ントローラ、42は加算器、43.44はマルチプレク
サ、SRBは、第1の記憶手段の一例のステータスレジ
スタ、R3は第2の記憶手段の一例のレジスタを示す。
Claims (3)
- (1)所定の条件が与えられたとき、該条件に応じた演
算を実行可能な算術論理演算装置であって、 前記所定の条件を定めるために必要な第1の記憶手段、
該第1の記憶手段は、少なくとも“正”“負”“零”の
3状態のいずれかを記憶することかでき、 前記所定の条件を定めるために必要な第2の記憶手段、
該第2の記憶手段は、少なくとも“正”“負”“零”の
3状態のいずれかを記憶することができ、さらに、 前記第1および第2の記憶手段の記憶状態に応じて、演
算機能を“加算”“減算”“演算しない”のいずれかに
切換えるコントロール回路、 を含む算術論理演算装置。 - (2)前記算術論理演算装置は、次の演算式ACC←{
R0+R1:ZB=0、SB=0かつR3=1またはZ
B=0、SB=1かつR3=−1、 R0−R1:ZB=0、SB=1かつR3=1またはZ
B=0、SB=0かつR3=−1、 R0:ZB=またはR3=0 但し、ACC、R0、R1は、それぞれ、演算にかかわ
るデータを記憶する記憶手 段の内容、 SB、ZBの各式は、第1の記憶手段 の記憶状態、 R3の式は第2の記憶手段の記憶状態 を、それぞれ表わす、 で表わされる演算を実行するために改良された装置であ
る、特許請求の範囲第1項に記載の算術論理演算装置。 - (3)前記コントロール回路は、 前記第1の記憶手段が“正”でかつ前記第2の記憶手段
が“正”のときまたは前記第1の記憶手段が“負”でか
つ前記第2の記憶手段が“負”のときに“加算”を指示
し、 前記第1の記憶手段が“負”でかつ前記第2の記憶手段
が“正”のときまたは前記第1の記憶手段が“正”でか
つ前記第2の記憶手段が“負”のときに“減算”を指令
し、 前記第1の記憶手段が“零”のときまたは前記第2の記
憶手段が“零”のときに“演算しない”を指示する信号
を導出する、特許請求の範囲第2項に記載の算術論理演
算装置。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61102792A JPS62257526A (ja) | 1986-04-30 | 1986-04-30 | 算術論理演算装置 |
| DE19873709675 DE3709675A1 (de) | 1986-04-30 | 1987-03-24 | Arithmetik-logik-einheit |
| US07/042,532 US4821225A (en) | 1986-04-30 | 1987-04-27 | Arithmetic and logic unit with prior state dependent logic operations |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61102792A JPS62257526A (ja) | 1986-04-30 | 1986-04-30 | 算術論理演算装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS62257526A true JPS62257526A (ja) | 1987-11-10 |
Family
ID=14336960
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61102792A Pending JPS62257526A (ja) | 1986-04-30 | 1986-04-30 | 算術論理演算装置 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US4821225A (ja) |
| JP (1) | JPS62257526A (ja) |
| DE (1) | DE3709675A1 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0830433A (ja) * | 1994-02-28 | 1996-02-02 | Sgs Thomson Microelectron Sa | 最適化オペランドフォーマッティングステージ |
Families Citing this family (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5519649A (en) * | 1993-06-04 | 1996-05-21 | Nippon Steel Corporation | Micro-processor having rapid condition comparison function |
| US5509129A (en) * | 1993-11-30 | 1996-04-16 | Guttag; Karl M. | Long instruction word controlling plural independent processor operations |
| US5961635A (en) * | 1993-11-30 | 1999-10-05 | Texas Instruments Incorporated | Three input arithmetic logic unit with barrel rotator and mask generator |
| US6058473A (en) * | 1993-11-30 | 2000-05-02 | Texas Instruments Incorporated | Memory store from a register pair conditional upon a selected status bit |
| US6016538A (en) * | 1993-11-30 | 2000-01-18 | Texas Instruments Incorporated | Method, apparatus and system forming the sum of data in plural equal sections of a single data word |
| US5596763A (en) * | 1993-11-30 | 1997-01-21 | Texas Instruments Incorporated | Three input arithmetic logic unit forming mixed arithmetic and boolean combinations |
| US5512896A (en) * | 1993-11-30 | 1996-04-30 | Texas Instruments Incorporated | Huffman encoding method, circuit and system employing most significant bit change for size detection |
| US5644524A (en) * | 1993-11-30 | 1997-07-01 | Texas Instruments Incorporated | Iterative division apparatus, system and method employing left most one's detection and left most one's detection with exclusive or |
| US6219688B1 (en) | 1993-11-30 | 2001-04-17 | Texas Instruments Incorporated | Method, apparatus and system for sum of plural absolute differences |
| US5420809A (en) * | 1993-11-30 | 1995-05-30 | Texas Instruments Incorporated | Method of operating a data processing apparatus to compute correlation |
| US6173305B1 (en) | 1993-11-30 | 2001-01-09 | Texas Instruments Incorporated | Division by iteration employing subtraction and conditional source selection of a prior difference or a left shifted remainder |
| US5974539A (en) * | 1993-11-30 | 1999-10-26 | Texas Instruments Incorporated | Three input arithmetic logic unit with shifter and mask generator |
| US5805913A (en) * | 1993-11-30 | 1998-09-08 | Texas Instruments Incorporated | Arithmetic logic unit with conditional register source selection |
| US5442581A (en) * | 1993-11-30 | 1995-08-15 | Texas Instruments Incorporated | Iterative division apparatus, system and method forming plural quotient bits per iteration |
| US5479166A (en) * | 1993-11-30 | 1995-12-26 | Texas Instruments Incorporated | Huffman decoding method, circuit and system employing conditional subtraction for conversion of negative numbers |
| US5590350A (en) * | 1993-11-30 | 1996-12-31 | Texas Instruments Incorporated | Three input arithmetic logic unit with mask generator |
| US6098163A (en) * | 1993-11-30 | 2000-08-01 | Texas Instruments Incorporated | Three input arithmetic logic unit with shifter |
| SE516731C2 (sv) * | 1994-06-10 | 2002-02-19 | Ericsson Telefon Ab L M | ATM-anpassad trestegs väljarenhet |
| US5835782A (en) * | 1996-03-04 | 1998-11-10 | Intel Corporation | Packed/add and packed subtract operations |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6155731A (ja) * | 1984-08-28 | 1986-03-20 | Fujitsu Ltd | コンデイシヨンコ−ド判定機能を備えるプロセツサ |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3278733A (en) * | 1962-12-10 | 1966-10-11 | Burroughs Corp | Adding and subtracting unit for a digital computer |
| JPS5517424B2 (ja) * | 1974-09-05 | 1980-05-12 | ||
| JPS5833572B2 (ja) * | 1977-10-21 | 1983-07-20 | 株式会社東芝 | 情報処理方式 |
| US4460970A (en) * | 1981-05-22 | 1984-07-17 | Data General Corporation | Digital data processing system using unique techniques for handling the leading digits and the signs of operands in arithmetic operations |
| US4592005A (en) * | 1982-07-06 | 1986-05-27 | Sperry Corporation | Masked arithmetic logic unit |
| JPS59149541A (ja) * | 1983-01-28 | 1984-08-27 | Toshiba Corp | 処理条件コード生成/設定方式 |
| US4589087A (en) * | 1983-06-30 | 1986-05-13 | International Business Machines Corporation | Condition register architecture for a primitive instruction set machine |
-
1986
- 1986-04-30 JP JP61102792A patent/JPS62257526A/ja active Pending
-
1987
- 1987-03-24 DE DE19873709675 patent/DE3709675A1/de active Granted
- 1987-04-27 US US07/042,532 patent/US4821225A/en not_active Expired - Lifetime
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6155731A (ja) * | 1984-08-28 | 1986-03-20 | Fujitsu Ltd | コンデイシヨンコ−ド判定機能を備えるプロセツサ |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0830433A (ja) * | 1994-02-28 | 1996-02-02 | Sgs Thomson Microelectron Sa | 最適化オペランドフォーマッティングステージ |
Also Published As
| Publication number | Publication date |
|---|---|
| DE3709675A1 (de) | 1987-11-05 |
| US4821225A (en) | 1989-04-11 |
| DE3709675C2 (ja) | 1989-03-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS62257526A (ja) | 算術論理演算装置 | |
| US4780820A (en) | Control flow computer using mode and node driving registers for dynamically switching between parallel processing and emulation of von neuman processors | |
| JPS6254359A (ja) | コンピユ−タ装置 | |
| US5991872A (en) | Processor | |
| US4550369A (en) | Apparatus and method for processing macroinstructions and microinstructions | |
| US6275925B1 (en) | Program execution method and program execution device | |
| JP2557629B2 (ja) | 割込方式 | |
| JPH04241032A (ja) | システムコール実行装置 | |
| JP2793357B2 (ja) | 並列演算装置 | |
| EP0359823A1 (en) | Method and apparatus for controlling the execution of microprogram | |
| JPH01271840A (ja) | マイクロコンピュータ | |
| JPH07110769A (ja) | Vliw型計算機 | |
| EP0575817B1 (en) | Control processor, particularly for telecommunication applications, equipment for emulating it and method of carrying out an emulation | |
| US5142636A (en) | Memory bank address calculation with reduced instruction execution cycles | |
| JP2883489B2 (ja) | 命令処理装置 | |
| JPS6052449B2 (ja) | 割込み処理方式 | |
| JP3124361B2 (ja) | メモリデータロード装置 | |
| EP0369407A2 (en) | Central processing unit for data processor having emulation function | |
| JPS6146857B2 (ja) | ||
| JPH0683618A (ja) | フラグ制御回路 | |
| JP3068406B2 (ja) | ベクトル演算装置 | |
| JPS59223846A (ja) | 演算処理装置 | |
| JPH0338613B2 (ja) | ||
| JPS61150039A (ja) | プロセツサ制御回路 | |
| JPS6155731A (ja) | コンデイシヨンコ−ド判定機能を備えるプロセツサ |