JPS61296448A - 電子計算機のデ−タ書込み制御方式 - Google Patents
電子計算機のデ−タ書込み制御方式Info
- Publication number
- JPS61296448A JPS61296448A JP60138403A JP13840385A JPS61296448A JP S61296448 A JPS61296448 A JP S61296448A JP 60138403 A JP60138403 A JP 60138403A JP 13840385 A JP13840385 A JP 13840385A JP S61296448 A JPS61296448 A JP S61296448A
- Authority
- JP
- Japan
- Prior art keywords
- data
- operand
- write
- address
- queue
- 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
- 238000000034 method Methods 0.000 claims description 9
- 230000007423 decrease Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006866 deterioration Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
Landscapes
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は電子計算機の回路構成に関し、特に命令読取り
、解読、ならびに実行を並列に実行するパイプライン制
御構造の電子計算機における書込み制御方式に関する。
、解読、ならびに実行を並列に実行するパイプライン制
御構造の電子計算機における書込み制御方式に関する。
(従来の技術)
従来、ミニコンピユータや大型電算機では処理速度を向
上させるために内部を並列に動作することが可能な機能
ユニットに分割し、命令の読取り、解読、オペランドの
読取シ、実行、ならびに結果の格納という一連の処理を
流れ作業的に実行する、いわゆるパイプライン方式が採
用されてきた。この場合、各ユニットごとの処理時間は
機能ユニットに分割しない場合に比べて短い時間で済ま
せることが可能であり、また各ユニットを並列に動作さ
せることが可能であるため、高速な処理が実現できる。
上させるために内部を並列に動作することが可能な機能
ユニットに分割し、命令の読取り、解読、オペランドの
読取シ、実行、ならびに結果の格納という一連の処理を
流れ作業的に実行する、いわゆるパイプライン方式が採
用されてきた。この場合、各ユニットごとの処理時間は
機能ユニットに分割しない場合に比べて短い時間で済ま
せることが可能であり、また各ユニットを並列に動作さ
せることが可能であるため、高速な処理が実現できる。
一方、LSI技術の発達に伴って急速に発展してきたマ
イクロプロセサにおいても、集積度の向上により上述の
ようなパイプライン方式を取入i]、ることか可能にな
り、またデバイス技術の向上により高速なスイッチング
が可能になっていた。
イクロプロセサにおいても、集積度の向上により上述の
ようなパイプライン方式を取入i]、ることか可能にな
り、またデバイス技術の向上により高速なスイッチング
が可能になっていた。
(発明が解決しようとする問題点)
上述のようにマイクロプロセサはLSI技術により高速
化されてきだが、マイクロプロセサの高速化に伴って相
対的にバスサイクルが低下シ、バス速度によりマイクロ
プロセサの性能が抑えられてし壕うという問題が顕在化
してきた。バス速度を高め、マイクロプロセサの性能を
最大限に引出そうとするためKは、キャッシュメモリの
ような高価なハードウェアを付加しなければならない。
化されてきだが、マイクロプロセサの高速化に伴って相
対的にバスサイクルが低下シ、バス速度によりマイクロ
プロセサの性能が抑えられてし壕うという問題が顕在化
してきた。バス速度を高め、マイクロプロセサの性能を
最大限に引出そうとするためKは、キャッシュメモリの
ような高価なハードウェアを付加しなければならない。
本発明の目的は、バスアクセスの回数を減じて書込みケ
行うことによって上記欠点を除去し、バスサイクルによ
る処理の低下を改笹することができるように構成した電
子計算機のデータ1込み制御方式を提供することにある
。
行うことによって上記欠点を除去し、バスサイクルによ
る処理の低下を改笹することができるように構成した電
子計算機のデータ1込み制御方式を提供することにある
。
(問題点を解決するための手段)
本発明による電子計算機のデータ書込み制御方式は少な
くとも命令解読、オペランドアクセス、ならびに命令実
行が並行に行われるパイプライン構造に採用されたもの
であり、アドレス比較回路と、データ比較回路と、書込
みデータキューと、制御回路とを具備して構成したもの
である。
くとも命令解読、オペランドアクセス、ならびに命令実
行が並行に行われるパイプライン構造に採用されたもの
であり、アドレス比較回路と、データ比較回路と、書込
みデータキューと、制御回路とを具備して構成したもの
である。
アドレス比較回路は一つの命令中におけるオペランドの
読取りアドレスと書込みアドレスとの一致を検出するた
めのものでおり、データ比較回路は命令における読取り
オペランドと曹込みオペランドとを外部データバスのデ
ータ幅で比較するためのものである。
読取りアドレスと書込みアドレスとの一致を検出するた
めのものでおり、データ比較回路は命令における読取り
オペランドと曹込みオペランドとを外部データバスのデ
ータ幅で比較するためのものである。
書込みデータキューは曹込みオペランドとそのアドレス
、語長、ならびに制御情報を含むものである。
、語長、ならびに制御情報を含むものである。
制御回路は、書込みデータキュー内の制御情報を制御す
るためのものである。
るためのものである。
本発明は上記構成において、書込みオペランドの語長が
外部データバス幅以上であり、且つ、読取りオペランド
と一致する部分があった場合には上記部分のメモリへの
書込みを省略することができるように構成したものであ
る。
外部データバス幅以上であり、且つ、読取りオペランド
と一致する部分があった場合には上記部分のメモリへの
書込みを省略することができるように構成したものであ
る。
(実施例)
次に、本発明について図面を参照して説明する。
第1図は、本発明による電子計算機のデータ書込み制御
方式の一実施例を示すブロック図である。
方式の一実施例を示すブロック図である。
本実施例では、16ビツトの外部データバスを備え、3
2ビツトの内部データ処理単位を有するマイクロプロセ
サを想定している。第1図において、1はオペランドア
ドレス計算部、2は読取リアドレスレジスタ、5はアド
レス比較器、4け読取りオペランドアクスメ、5はデー
タ比較器、6は制御回路、7は誉込みデータキュー、1
0は命令解読部、20は命令実行部である。
2ビツトの内部データ処理単位を有するマイクロプロセ
サを想定している。第1図において、1はオペランドア
ドレス計算部、2は読取リアドレスレジスタ、5はアド
レス比較器、4け読取りオペランドアクスメ、5はデー
タ比較器、6は制御回路、7は誉込みデータキュー、1
0は命令解読部、20は命令実行部である。
第1図において、書込みデータキュー7は同一の構造を
もつ2つのレジスタで構成され、それぞれ制御情報(Z
、V)、書込みアドレス(Adr)、書込みデータ長(
dl)、ならびに曹込谷データ(Data)を記憶する
。
もつ2つのレジスタで構成され、それぞれ制御情報(Z
、V)、書込みアドレス(Adr)、書込みデータ長(
dl)、ならびに曹込谷データ(Data)を記憶する
。
信号線10B上、ならびに書込みデータキューT内のZ
は読取りオペランドと書込みオペランドとのアドレスが
一致していることを・示す情報で、誓込みアドレスなら
びに曹込みデータ長とともに命令解読部10より伝えら
れる。
は読取りオペランドと書込みオペランドとのアドレスが
一致していることを・示す情報で、誓込みアドレスなら
びに曹込みデータ長とともに命令解読部10より伝えら
れる。
イ3号線104上、ならびに書込みデータキュー7内の
イル号Vは書込みデータが入っていることを示す情報で
あり1通常、命令実行部10から書込みオペランドが伝
えられると% 1 #になり、メモリへの書込みが終了
すると%0IV(lなる。
イル号Vは書込みデータが入っていることを示す情報で
あり1通常、命令実行部10から書込みオペランドが伝
えられると% 1 #になり、メモリへの書込みが終了
すると%0IV(lなる。
オペランドアドレス計算部1は命令解読部10に置かれ
ているオペランドアドレス計算手段であり、ここでオペ
ランドの読取)/書込みアドレスが命令実行部20での
命令実行に先立って計算される。オペランドの読取りア
ドレスは一時的に読取りアドレスレジスタ2にラッチさ
れ、オペランドの書込みアドレス計算時にはアドレス比
較器3により書込みアドレスと一致しているか否か判断
される。
ているオペランドアドレス計算手段であり、ここでオペ
ランドの読取)/書込みアドレスが命令実行部20での
命令実行に先立って計算される。オペランドの読取りア
ドレスは一時的に読取りアドレスレジスタ2にラッチさ
れ、オペランドの書込みアドレス計算時にはアドレス比
較器3により書込みアドレスと一致しているか否か判断
される。
オペランドアドレス計算部1で計算逼ノ1だオペランド
の書込みアドレスはデータ長dlやアドレス比較結果2
とともに書込みデータキュー7に送出され、書込みデー
タキュー7の空いている方のレジスタにセットされる。
の書込みアドレスはデータ長dlやアドレス比較結果2
とともに書込みデータキュー7に送出され、書込みデー
タキュー7の空いている方のレジスタにセットされる。
書込みデータキュー1のデータレジスタは16ビツトよ
シ成り、データ長が32ビツトである場合にはデータは
書込みデータキュー7の2つのレジスタに16ピツトス
つセットされる。
シ成り、データ長が32ビツトである場合にはデータは
書込みデータキュー7の2つのレジスタに16ピツトス
つセットされる。
読取リオペランドレジスタ4およびデータ比較器5によ
り、読取りオペランドと書込みオペランドとが一致して
いるか否かが判断される。なお、データの比較は外部デ
ータバス幅に相当する16ビツト単位で行われる。比較
結果Cは信号線109を介して制御回路6に入力される
。書込みデータキュー1の制御情報およびデータ比較結
果により、制御回路6は書込みデータキュー7における
データの有無を示すVビットを制御する。
り、読取りオペランドと書込みオペランドとが一致して
いるか否かが判断される。なお、データの比較は外部デ
ータバス幅に相当する16ビツト単位で行われる。比較
結果Cは信号線109を介して制御回路6に入力される
。書込みデータキュー1の制御情報およびデータ比較結
果により、制御回路6は書込みデータキュー7における
データの有無を示すVビットを制御する。
第2図は制御回路6が書込みデータキュー7の制御情報
(Z)、データ長(dA’)、ならびにデータ比較器5
からの比較結果Cにより、どのようにVビットを制御す
るかを示した説明図である。
(Z)、データ長(dA’)、ならびにデータ比較器5
からの比較結果Cにより、どのようにVビットを制御す
るかを示した説明図である。
第1表において、2はオペランドアドレスの一致を示す
情報であシ、10Iのときに不一致、%11のときに一
致を表わす。diはオペランドのデータ長を表わす情報
であり、%OOlのときに1バイト、%01 lのとき
に2バイト % 11 Nのときに4バイトを表わす。
情報であシ、10Iのときに不一致、%11のときに一
致を表わす。diはオペランドのデータ長を表わす情報
であり、%OOlのときに1バイト、%01 lのとき
に2バイト % 11 Nのときに4バイトを表わす。
Cは2バイト単位のオペランドの一致を表わす情報であ
り、%Olは不一致を表わし、111は一致を表わす。
り、%Olは不一致を表わし、111は一致を表わす。
Vl、V2は書込みデータキュー7にデータが存在する
が否かを示す情報であり、101はデータなしを表わし
、%11はデータありを表わす。
が否かを示す情報であり、101はデータなしを表わし
、%11はデータありを表わす。
第2(!Iを参照すると、例えばアドレスが一致し、オ
ペランドのデータ長が32ビツトの場合(Z=1idl
=11)に、読込みオペランドと書込みオペランドの上
位16ビツトと下位16ビツトとがともに等しい(C=
11)の場合には、Vビットは%a1のままであるため
、メモリへの誓込みは行われない。下位16ビツトのみ
が等しい(C=01)の場合には、最初に使用されるべ
きレジスタのVビット(Vl)のみが%11になシ、次
に使用されるはずであったレジスタのVビット(V2)
は%Olになる。上位16ビツトのみが等しい場合には
、最初に使用されるはずであったレジスタのVビット(
Vl)は%Olになり、次に使用されるはずであるレジ
スタのVビット754’l#になる。
ペランドのデータ長が32ビツトの場合(Z=1idl
=11)に、読込みオペランドと書込みオペランドの上
位16ビツトと下位16ビツトとがともに等しい(C=
11)の場合には、Vビットは%a1のままであるため
、メモリへの誓込みは行われない。下位16ビツトのみ
が等しい(C=01)の場合には、最初に使用されるべ
きレジスタのVビット(Vl)のみが%11になシ、次
に使用されるはずであったレジスタのVビット(V2)
は%Olになる。上位16ビツトのみが等しい場合には
、最初に使用されるはずであったレジスタのVビット(
Vl)は%Olになり、次に使用されるはずであるレジ
スタのVビット754’l#になる。
斯かる場合、メモリへの書込み動作は一回だけ行われる
。上位16ビツトと下位16ビツトとが等しくない場合
には、Vl 、V2の両ビットはともに亀1〃になり、
メモリへの書込み動作は二回だけ行われる。
。上位16ビツトと下位16ビツトとが等しくない場合
には、Vl 、V2の両ビットはともに亀1〃になり、
メモリへの書込み動作は二回だけ行われる。
本例においては、データ長dlについては変更を加えて
いない。これはdlの下位1ビツトをみれば1バイトを
アクセスするか、あるいは2バイトをアクセスするかが
容易に判別できるからである。
いない。これはdlの下位1ビツトをみれば1バイトを
アクセスするか、あるいは2バイトをアクセスするかが
容易に判別できるからである。
(発明の効果)
以上説明したように本発明は、同一のアドレスを有する
オペランドに対して読み/Wき動作を行う場合に、読取
9時のデータと書込み時のデータとを比較し、変更のあ
った部分についてのみ実際の書込みを行うことによυ、
特に内部処理のデータ幅と外部バスのデータ幅とが異な
るマイクログロセサ(例えば、内部処理を32ビツトデ
一タ幅で行い、外部データバスが8ビツトあるいは16
ビツトであるようなプロセサ)において、バスアクセス
回数を低減し、処理速度を高めることができるという効
果がある。
オペランドに対して読み/Wき動作を行う場合に、読取
9時のデータと書込み時のデータとを比較し、変更のあ
った部分についてのみ実際の書込みを行うことによυ、
特に内部処理のデータ幅と外部バスのデータ幅とが異な
るマイクログロセサ(例えば、内部処理を32ビツトデ
一タ幅で行い、外部データバスが8ビツトあるいは16
ビツトであるようなプロセサ)において、バスアクセス
回数を低減し、処理速度を高めることができるという効
果がある。
第1図は、本発明による電子計算機のデータ書1・・・
オペランドのアドレス酊算部 2・・・読取りアドレスレジスメ 3・・・アドレス比較器 411・・読取りオペランドレジスタ 5・・・データ比較器 6・m−制御回路 1・・・書込みデータキュー 10・・・命令解読部 20・・・命令実行部 101〜103−−−バ ス 104〜110・・・信号線 特許田願入 日本電気株式会社 代理人 弁理士 井ノ ロ 壽 第2図
オペランドのアドレス酊算部 2・・・読取りアドレスレジスメ 3・・・アドレス比較器 411・・読取りオペランドレジスタ 5・・・データ比較器 6・m−制御回路 1・・・書込みデータキュー 10・・・命令解読部 20・・・命令実行部 101〜103−−−バ ス 104〜110・・・信号線 特許田願入 日本電気株式会社 代理人 弁理士 井ノ ロ 壽 第2図
Claims (1)
- 少なくとも命令解読、オペランドアクセス、ならびに命
令実行が並行に行われるパイプライン構造の電子計算機
のデータ書込み制御方式であつて、一つの命令中におけ
るオペランドの読取りアドレスと書込みアドレスとの一
致を検出するためのアドレス比較回路と、前記命令にお
ける読取りオペランドと書込みオペランドとを外部デー
タバスのデータ幅で比較するためのデータ比較回路と、
書込みオペランドとそのアドレス、語長、ならびに制御
情報を含む書込みデータキューと、前記書込みデータキ
ュー内の制御情報を制御するための制御回路とを具備し
、書込みオペランドの語長が外部データバス幅以上であ
り、且つ、読取りオペランドと一致する部分があつた場
合には前記部分のメモリへの書込みを省略することがで
きるように構成したことを特徴とする電子計算機のデー
タ書込み制御方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60138403A JPS61296448A (ja) | 1985-06-25 | 1985-06-25 | 電子計算機のデ−タ書込み制御方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60138403A JPS61296448A (ja) | 1985-06-25 | 1985-06-25 | 電子計算機のデ−タ書込み制御方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS61296448A true JPS61296448A (ja) | 1986-12-27 |
Family
ID=15221140
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60138403A Pending JPS61296448A (ja) | 1985-06-25 | 1985-06-25 | 電子計算機のデ−タ書込み制御方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS61296448A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05143323A (ja) * | 1991-01-30 | 1993-06-11 | Internatl Business Mach Corp <Ibm> | タイプ1ダイアデイツク命令を実行する方法及び装置 |
-
1985
- 1985-06-25 JP JP60138403A patent/JPS61296448A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05143323A (ja) * | 1991-01-30 | 1993-06-11 | Internatl Business Mach Corp <Ibm> | タイプ1ダイアデイツク命令を実行する方法及び装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0368332B1 (en) | Pipeline data processor | |
| KR940009094B1 (ko) | 데이타처리 시스템 | |
| US4398245A (en) | Data processing system having an instruction pipeline for processing a transfer instruction | |
| US5155817A (en) | Microprocessor | |
| JPS61107434A (ja) | デ−タ処理装置 | |
| US5802359A (en) | Mapping processor state into a millicode addressable processor state register array | |
| US4992932A (en) | Data processing device with data buffer control | |
| US4670836A (en) | Device for detecting an overlap of operands to be accessed | |
| JPS6014338A (ja) | 計算機システムにおける分岐機構 | |
| US5051894A (en) | Apparatus and method for address translation of non-aligned double word virtual addresses | |
| US5742842A (en) | Data processing apparatus for executing a vector operation under control of a master processor | |
| CA2060137C (en) | Circuit for executing conditional branch instructions in pipeline process | |
| JP2690406B2 (ja) | プロセッサおよびデータ処理システム | |
| KR910001708B1 (ko) | 중앙처리장치 | |
| JPS61296448A (ja) | 電子計算機のデ−タ書込み制御方式 | |
| US6233675B1 (en) | Facility to allow fast execution of and, or, and test instructions | |
| JPH02123442A (ja) | 高速化メモリ | |
| JP2003202981A (ja) | アドレス範囲チェック回路及び動作方法 | |
| US5829049A (en) | Simultaneous execution of two memory reference instructions with only one address calculation | |
| JP2667851B2 (ja) | 情報処理装置 | |
| JPH0377137A (ja) | 情報処理装置 | |
| US6289439B1 (en) | Method, device and microprocessor for performing an XOR clear without executing an XOR instruction | |
| JP2877468B2 (ja) | 電子計算機 | |
| JP3014701B2 (ja) | 情報処理装置 | |
| JPH04340145A (ja) | キャッシュメモリ装置 |