JPS6180334A - 電子計算機 - Google Patents
電子計算機Info
- Publication number
- JPS6180334A JPS6180334A JP20278884A JP20278884A JPS6180334A JP S6180334 A JPS6180334 A JP S6180334A JP 20278884 A JP20278884 A JP 20278884A JP 20278884 A JP20278884 A JP 20278884A JP S6180334 A JPS6180334 A JP S6180334A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- output
- input
- unit
- bus interface
- 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
- 238000006243 chemical reaction Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000000034 method Methods 0.000 description 2
- OVSKIKFHRZPJSS-UHFFFAOYSA-N 2,4-D Chemical compound OC(=O)COC1=CC=C(Cl)C=C1Cl OVSKIKFHRZPJSS-UHFFFAOYSA-N 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Landscapes
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、電子計算機のアーキテクチャ−に関する。特
に、バスアクセス制御方式によるパイプライン制御構造
をもつマイクロコンピュータに関する。
に、バスアクセス制御方式によるパイプライン制御構造
をもつマイクロコンピュータに関する。
従来、大規模集積回路(以下、rLsIJという。)技
術により可能になったマイクロコンピュータは、応用装
置の価格をおさえるために、メモリの読取り、書込み以
外に一般に直接入出力を制御することを前提につくられ
ていた。
術により可能になったマイクロコンピュータは、応用装
置の価格をおさえるために、メモリの読取り、書込み以
外に一般に直接入出力を制御することを前提につくられ
ていた。
一方では、LSI技術の急速な進歩により最近では、大
型計算機で採用されている高度なアーキテクチャ−をL
SI化により、以前とは格段に性能が改善されたマイク
ロコンピュータが出現した。
型計算機で採用されている高度なアーキテクチャ−をL
SI化により、以前とは格段に性能が改善されたマイク
ロコンピュータが出現した。
その一つがパイプライン制御構造である。パイプライン
制御構造を有する電子計算機では、第4図に示すように
計算機内部の動作が並列に実行可能なものに分割される
。分割された各ユニットがパイプラインのように繋がっ
て、命令は順々に読取り■、解読■、オペランド読取り
■、実行■、結果格納■の各部をimって実行される。
制御構造を有する電子計算機では、第4図に示すように
計算機内部の動作が並列に実行可能なものに分割される
。分割された各ユニットがパイプラインのように繋がっ
て、命令は順々に読取り■、解読■、オペランド読取り
■、実行■、結果格納■の各部をimって実行される。
このとき、各部毎の処理は短い時間で済ませることがで
きるので、第5図に示すように命令列TI、I2、I3
、I4、−1T、は各々実行に5単位時間を要するが、
各ユニットは並列に実行され、実際には1単位時間で複
数の命令列のユニットを同時に処理することになり、5
n単位時間よりかなり短縮される。
きるので、第5図に示すように命令列TI、I2、I3
、I4、−1T、は各々実行に5単位時間を要するが、
各ユニットは並列に実行され、実際には1単位時間で複
数の命令列のユニットを同時に処理することになり、5
n単位時間よりかなり短縮される。
ところが、LSIを用いたマイクロコンピュータでは、
一般に直接入出力を制御するために、大型計算機では問
題にならなかったパイプライン制御構造の特有な問題が
発生ずる。これは、一般にハザードと呼ばれているアク
セスの順序が前後する問題である。すなわち、第5図に
おいて命令列11の結果格納■の番地と、命令列I2の
オペランド読取り■の番地が同じ場合には、命令列I2
のオペランド読取り■が命令列11の結果格納■よりも
先に読取られるために、プログラムが正常に動作しない
ことがある。このため大型計算機では命令列■1の結果
格納■の番地と、命令列I2のオペランド読取り■の番
地とを比較して、同じ番地なら命令列I2のオペランド
読取り■を命令列11の結果格納■の実行が終わるまで
待たせる仕組みが用意されている。
一般に直接入出力を制御するために、大型計算機では問
題にならなかったパイプライン制御構造の特有な問題が
発生ずる。これは、一般にハザードと呼ばれているアク
セスの順序が前後する問題である。すなわち、第5図に
おいて命令列11の結果格納■の番地と、命令列I2の
オペランド読取り■の番地が同じ場合には、命令列I2
のオペランド読取り■が命令列11の結果格納■よりも
先に読取られるために、プログラムが正常に動作しない
ことがある。このため大型計算機では命令列■1の結果
格納■の番地と、命令列I2のオペランド読取り■の番
地とを比較して、同じ番地なら命令列I2のオペランド
読取り■を命令列11の結果格納■の実行が終わるまで
待たせる仕組みが用意されている。
しかし、入出力命令の場合はその番地(通常、「ボート
」という。)が異なっても、ハザード制御が必要な場合
があり、1−記の仕3.■みだけでは不十分であった。
」という。)が異なっても、ハザード制御が必要な場合
があり、1−記の仕3.■みだけでは不十分であった。
すなわち、入出力制御のハザードが生じるようなプログ
ラムを実行した場合に、従来のハザード制御ではこの問
題は解決されなかった。
ラムを実行した場合に、従来のハザード制御ではこの問
題は解決されなかった。
第2図は人出力制御のハザードが生じるプログラムの一
例を示すフローチャートである。
例を示すフローチャートである。
このフローチャート4j、メモリM番地からボートAと
呼ばれる入出力装置I10のレジスタにデータを転送し
くIl)、ボートBから入出力ステータスを読取り(1
2) 、その状態をチェックしてレディ状態になると次
に進む(I、)プログラムを示している。このとき、ボ
ートAとボー1− Bとは同じ番地でない場合が多い。
呼ばれる入出力装置I10のレジスタにデータを転送し
くIl)、ボートBから入出力ステータスを読取り(1
2) 、その状態をチェックしてレディ状態になると次
に進む(I、)プログラムを示している。このとき、ボ
ートAとボー1− Bとは同じ番地でない場合が多い。
第3図(Δ)は従来のパイプライン制御構造によるマイ
クロコンピュータで、第2図の命令■1、I2を実行し
ていく様子を示すタイムチャートである。
クロコンピュータで、第2図の命令■1、I2を実行し
ていく様子を示すタイムチャートである。
すなわち、時刻「5」でメモリ (M>の内容を読取り
、時刻「6」でボートBを検索し、時刻「8」でボート
Aにメモリ (M)の内容をセントしている。このよう
に、ボートBの内容はボー)Aにデータがセットされる
前の状態であり、ボートBがボー)Aのデータセソi・
により状態が変化するような場合には、命令が正しく実
行されない。
、時刻「6」でボートBを検索し、時刻「8」でボート
Aにメモリ (M)の内容をセントしている。このよう
に、ボートBの内容はボー)Aにデータがセットされる
前の状態であり、ボートBがボー)Aのデータセソi・
により状態が変化するような場合には、命令が正しく実
行されない。
ボートAとボートBの番地を全て同じにすることは、一
般的に不可能であるので、従来のハザード制御ではこの
問題を解決することはできなかった。
般的に不可能であるので、従来のハザード制御ではこの
問題を解決することはできなかった。
本発明は、このような従来の問題点に着目してなされた
もので、パイプライン制御構造を有するマイクロコンピ
ュータで、入出力制御が可能な装置を1に供することを
目的とする。
もので、パイプライン制御構造を有するマイクロコンピ
ュータで、入出力制御が可能な装置を1に供することを
目的とする。
本発明は、入出力命令または入出力空間を識別し、入出
力アクセス要求の受け付は順にバスアクセスすることを
特徴とする。
力アクセス要求の受け付は順にバスアクセスすることを
特徴とする。
すなわち、メモリおよび入出力装置と、これに接続され
たハスインターフェースユニットと、このバスインター
フェースユニットに接続された命令解読部と、この命令
解読部の出力とバスインターフェースユニットの入力と
の間に挿入されたアドレス変換ユニットと、命令解読部
の出力およびバスインターフェースユニットの出力に接
続され、さらに命令実行結果をバスインターフェースユ
ニットに出力する命令実行部とを備えたパイプライン制
御構造の電子計算機において、アドレス変換ユニットは
、少なくとも入出力命令または入出力空間を識別するこ
とができる手段を備え、バスインターフェースユニット
は、アドレス変換ユニットから受け取ったバスアクセス
要求が、入出力命令の場合にこのバスアクセス要求の到
着順にバスをアクセスする手段を備えたことを特徴とす
る。
たハスインターフェースユニットと、このバスインター
フェースユニットに接続された命令解読部と、この命令
解読部の出力とバスインターフェースユニットの入力と
の間に挿入されたアドレス変換ユニットと、命令解読部
の出力およびバスインターフェースユニットの出力に接
続され、さらに命令実行結果をバスインターフェースユ
ニットに出力する命令実行部とを備えたパイプライン制
御構造の電子計算機において、アドレス変換ユニットは
、少なくとも入出力命令または入出力空間を識別するこ
とができる手段を備え、バスインターフェースユニット
は、アドレス変換ユニットから受け取ったバスアクセス
要求が、入出力命令の場合にこのバスアクセス要求の到
着順にバスをアクセスする手段を備えたことを特徴とす
る。
本発明は、アドレス変換ユニットで入出力命令を識別し
、アドレス変換ユニットから受け取った入出力命令をバ
スインターフェースユニットは入出力ポート番号にかか
わらず、入出力アクセス要求の到着順に実行することが
できる。
、アドレス変換ユニットから受け取った入出力命令をバ
スインターフェースユニットは入出力ポート番号にかか
わらず、入出力アクセス要求の到着順に実行することが
できる。
したがって、命令解読部からの人出力オペランド読取り
要求と、命令実行部からの入出力オペランド書込み要求
とのバスアクセス実行の順序が、プログラムの流れと同
じに実行することができる。
要求と、命令実行部からの入出力オペランド書込み要求
とのバスアクセス実行の順序が、プログラムの流れと同
じに実行することができる。
すなわち、パイプライン制御構造をもつマイクロコンピ
ュータで、入出力制御が可能なアーキテクチャ−を提供
することができる。
ュータで、入出力制御が可能なアーキテクチャ−を提供
することができる。
(実施例〕
以下、本発明の実施例方式を図面に基づいて説明する。
第1図は本発明の一実施例を示すブロック構成図である
。第1図において、ハスの制御、データ読取りおよび書
込みを行うバスインターフェースユニソ)BItJ、命
令の解読およびオペランドアクセス要求を出す命令解読
部IDU、命令解読部IDUからのアドレスを変換(た
とえば仮想アドレスから実アドレスに変換)をしたり、
入出力装置110へのアクセスであるかメモリへのアク
セスであるかの種類を識別して、ハスインターフェース
ユニットBIUに伝えるアドレス変換ユニット ってバスインターフェースユニットBTUから読取って
きたオペランドを実行しその結果をバスインターフェー
スユニットBIUに与える命令実行部EXUから構成さ
れ、バスインターフェースユニットBIUを経由してメ
モリおよび入出力装置I10に接続されている。
。第1図において、ハスの制御、データ読取りおよび書
込みを行うバスインターフェースユニソ)BItJ、命
令の解読およびオペランドアクセス要求を出す命令解読
部IDU、命令解読部IDUからのアドレスを変換(た
とえば仮想アドレスから実アドレスに変換)をしたり、
入出力装置110へのアクセスであるかメモリへのアク
セスであるかの種類を識別して、ハスインターフェース
ユニットBIUに伝えるアドレス変換ユニット ってバスインターフェースユニットBTUから読取って
きたオペランドを実行しその結果をバスインターフェー
スユニットBIUに与える命令実行部EXUから構成さ
れ、バスインターフェースユニットBIUを経由してメ
モリおよび入出力装置I10に接続されている。
説明を簡単にするために、本実施例では命令読取りパイ
プP1がバスインターフェースユニットBIUと命令解
読部IDUとの間にあり、命令解読パイプP2が命令解
読部IDUと命令実行部EXUとの間にあり、さらにオ
ペランド読取りパイプP3がバスインターフェースユニ
ットBTUと命令実行部EXUとの間にあるものとする
。
プP1がバスインターフェースユニットBIUと命令解
読部IDUとの間にあり、命令解読パイプP2が命令解
読部IDUと命令実行部EXUとの間にあり、さらにオ
ペランド読取りパイプP3がバスインターフェースユニ
ットBTUと命令実行部EXUとの間にあるものとする
。
このときの各部のデータおよび制御信号の流れの一例は
、 ■ メモリまたは人出内装?1iI10からバスインタ
ーフェースユニッ1131Uが命令を読取る、■ 読取
った命令を命令読取りパイプP+’に入れる、 ■ 命令読取りパイプP1から命令解読部TDtJに入
力する、 ■ 入力した命令を命令解読部IDUで解読し、アドレ
ス変換ユニットATUにオペランド要求を行うと同時に
命令解読パイプP2に解読した命令を流す、 ■ アドレス変換ユニットATUで変換されたオペラン
ドアクセス要求がバスインターフェースユニットBTU
に伝えられる、 ■ バスインターフェースユニットBIUはメモリまた
は入出力装置)10からオペランドを読取る、 ■ バスインターフェースユニットBTUは読取ったオ
ペランドをオペランド読取りパイプP3に流す、 ■ 命令解読パイプP2とオペランド読取りパイプP3
からの命令およびオペランドを命令実行部EXIJに入
力させる、 ■ 命令実行部E X Uは命令とデータが揃うと命令
に従ってデータを処理し、その結果をバスインターフェ
ースユニットBIUに渡す、[相] バスインターフェ
ースユニットBTUはこのデータをメモリまたは入出力
装置I10に与える、 以上のようになる。
、 ■ メモリまたは人出内装?1iI10からバスインタ
ーフェースユニッ1131Uが命令を読取る、■ 読取
った命令を命令読取りパイプP+’に入れる、 ■ 命令読取りパイプP1から命令解読部TDtJに入
力する、 ■ 入力した命令を命令解読部IDUで解読し、アドレ
ス変換ユニットATUにオペランド要求を行うと同時に
命令解読パイプP2に解読した命令を流す、 ■ アドレス変換ユニットATUで変換されたオペラン
ドアクセス要求がバスインターフェースユニットBTU
に伝えられる、 ■ バスインターフェースユニットBIUはメモリまた
は入出力装置)10からオペランドを読取る、 ■ バスインターフェースユニットBTUは読取ったオ
ペランドをオペランド読取りパイプP3に流す、 ■ 命令解読パイプP2とオペランド読取りパイプP3
からの命令およびオペランドを命令実行部EXIJに入
力させる、 ■ 命令実行部E X Uは命令とデータが揃うと命令
に従ってデータを処理し、その結果をバスインターフェ
ースユニットBIUに渡す、[相] バスインターフェ
ースユニットBTUはこのデータをメモリまたは入出力
装置I10に与える、 以上のようになる。
このような構造をした計算機が、第2図のようなプログ
ラムを実行し、本発明を適用した場合に命令1+ 、I
zの実行されていく様子を示すタイムチャートを第3図
(B)に示す。
ラムを実行し、本発明を適用した場合に命令1+ 、I
zの実行されていく様子を示すタイムチャートを第3図
(B)に示す。
従来例の第3図(A>と異なり、ボートBへのアクセス
はボートAへの書込みが終了する時刻「9」まで遅らせ
ており、命令の実行順序が秩序よく実行されていくこと
を示している。
はボートAへの書込みが終了する時刻「9」まで遅らせ
ており、命令の実行順序が秩序よく実行されていくこと
を示している。
すなわち、アドレス変換ユニットATUは命令解読部I
DUからのオペランドアクセス要求(■)が入出力命令
か否かを判断して、バスインターフェースユニットB
I tJにアクセス要求ヲ出シ(■)、バスインターフ
ェースユニットBIUは以前にきたアクセス要求がrT
lo−WRITEjであれば、このrIlo−WRIT
EJ命令を実行し完了させた後に現在要求中のrllo
−READJ命令を実行させている。
DUからのオペランドアクセス要求(■)が入出力命令
か否かを判断して、バスインターフェースユニットB
I tJにアクセス要求ヲ出シ(■)、バスインターフ
ェースユニットBIUは以前にきたアクセス要求がrT
lo−WRITEjであれば、このrIlo−WRIT
EJ命令を実行し完了させた後に現在要求中のrllo
−READJ命令を実行させている。
アドレス変換ユニソ)ATUは、命令解読部■DUから
入出力アクセスを与えられるか、あらかじめセットされ
たメモリ空間を識別することにより入出力命令を識別す
ることができる。
入出力アクセスを与えられるか、あらかじめセットされ
たメモリ空間を識別することにより入出力命令を識別す
ることができる。
本発明は、パイプライン制御構造をもつマイクロコンピ
ュータで、ハザードのない人出力制御が可能な電子計算
機を提供することができる効果がある。
ュータで、ハザードのない人出力制御が可能な電子計算
機を提供することができる効果がある。
第1図は本発明の一実施例を示すブロック構成図。
第2図は入出力制御のハザードが生じるプログラムの一
例を示すフローチャート。 第3図(A)は従来例の入出力制御のハザードが生じた
場合の電子計算機の動作を示すタイムチャート。 第3図(B)は本発明により入出力制御のハザードを回
避した場合の電子計算機の動作を示すタイムチャート。 第4図はパイプライン制御構造をした電子計算機の動作
の一例を示すブロック構成図。 第5図はパイプライン制御構造をした電子計算機の動作
の一例を示すタイムチャート。 BTU・・・バスインターフェースユニット、IDU・
・・命令解読部、 ATU・・・アドレス変換ユニット、 EXU・・・命令実行部、 Ilo・・・入出力装置、 PI・・・命令読俄りパイプ、 P2・・・命令解読パイプ、 P3・・・オペランド読取りパイプ、 ■1〜In・・・命令列。
例を示すフローチャート。 第3図(A)は従来例の入出力制御のハザードが生じた
場合の電子計算機の動作を示すタイムチャート。 第3図(B)は本発明により入出力制御のハザードを回
避した場合の電子計算機の動作を示すタイムチャート。 第4図はパイプライン制御構造をした電子計算機の動作
の一例を示すブロック構成図。 第5図はパイプライン制御構造をした電子計算機の動作
の一例を示すタイムチャート。 BTU・・・バスインターフェースユニット、IDU・
・・命令解読部、 ATU・・・アドレス変換ユニット、 EXU・・・命令実行部、 Ilo・・・入出力装置、 PI・・・命令読俄りパイプ、 P2・・・命令解読パイプ、 P3・・・オペランド読取りパイプ、 ■1〜In・・・命令列。
Claims (1)
- (1)メモリおよび入出力装置と、 これに接続されたバスインターフェースユニットと、 このバスインターフェースユニットに接続された命令解
読部と、 この命令解読部の出力と上記バスインターフェースユニ
ットの入力との間に挿入されたアドレス変換ユニットと
、 上記命令解読部の出力および上記バスインターフェース
ユニットの出力に接続され、さらに命令実行結果を上記
バスインターフェースユニットに出力する命令実行部と を備えたパイプライン制御構造の電子計算機において、 アドレス変換ユニットは、少なくとも入出力命令または
入出力空間を識別することができる手段を備え、 バスインターフェースユニットは、上記アドレス変換ユ
ニットから受け取ったバスアクセス要求が、入出力命令
の場合にこのバスアクセス要求の到着順にバスをアクセ
スする手段を備えた ことを特徴とする電子計算機。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP20278884A JPS6180334A (ja) | 1984-09-26 | 1984-09-26 | 電子計算機 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP20278884A JPS6180334A (ja) | 1984-09-26 | 1984-09-26 | 電子計算機 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS6180334A true JPS6180334A (ja) | 1986-04-23 |
Family
ID=16463200
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP20278884A Pending JPS6180334A (ja) | 1984-09-26 | 1984-09-26 | 電子計算機 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6180334A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03174625A (ja) * | 1989-12-01 | 1991-07-29 | Matsushita Electric Ind Co Ltd | マイクロコンピュータ |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS53113441A (en) * | 1977-03-15 | 1978-10-03 | Nec Corp | Instruction control system for information processor |
| JPS5547524A (en) * | 1978-09-28 | 1980-04-04 | Nec Corp | Data transmission device |
| JPS58214930A (ja) * | 1982-06-08 | 1983-12-14 | Nec Corp | デ−タ処理装置 |
-
1984
- 1984-09-26 JP JP20278884A patent/JPS6180334A/ja active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS53113441A (en) * | 1977-03-15 | 1978-10-03 | Nec Corp | Instruction control system for information processor |
| JPS5547524A (en) * | 1978-09-28 | 1980-04-04 | Nec Corp | Data transmission device |
| JPS58214930A (ja) * | 1982-06-08 | 1983-12-14 | Nec Corp | デ−タ処理装置 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03174625A (ja) * | 1989-12-01 | 1991-07-29 | Matsushita Electric Ind Co Ltd | マイクロコンピュータ |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2539199B2 (ja) | デジタルプロセッサ制御装置 | |
| EP0405318A2 (en) | Microprocessor having cash bypass signal terminal | |
| EP0405495B1 (en) | Instruction unit logic management apparatus included in a pipelined processing unit and method therefor | |
| CA2016532C (en) | Serializing system between vector instruction and scalar instruction in data processing system | |
| JPH02190930A (ja) | ソフトウエア命令実行装置 | |
| JPH0215369A (ja) | ベクター処理システムの命令を実行する方法及び装置 | |
| US4731736A (en) | Method and apparatus for coordinating execution of an instruction by a selected coprocessor | |
| US4750110A (en) | Method and apparatus for executing an instruction contingent upon a condition present in another data processor | |
| JPH0564813B2 (ja) | ||
| US5687353A (en) | Merging data using a merge code from a look-up table and performing ECC generation on the merged data | |
| EP0525831B1 (en) | Method and apparatus for enabling a processor to coordinate with a coprocessor in the execution of an instruction which is in the intruction stream of the processor. | |
| US4914578A (en) | Method and apparatus for interrupting a coprocessor | |
| US4821231A (en) | Method and apparatus for selectively evaluating an effective address for a coprocessor | |
| US4758950A (en) | Method and apparatus for selectively delaying an interrupt of a coprocessor | |
| JP3579843B2 (ja) | ディジタル信号処理装置 | |
| EP0378816B1 (en) | Production line method and apparatus for instruction execution | |
| US4967339A (en) | Operation control apparatus for a processor having a plurality of arithmetic devices | |
| GB2231986A (en) | Programmable logic controller including function block processor and bit processor | |
| JPS6180334A (ja) | 電子計算機 | |
| JPS63197232A (ja) | マイクロプロセツサ | |
| EP0292188A2 (en) | Cache system | |
| US4758978A (en) | Method and apparatus for selectively evaluating an effective address for a coprocessor | |
| EP0374598A2 (en) | Control store addressing from multiple sources | |
| US5619658A (en) | Method and apparatus for trapping unimplemented operations in input/output devices | |
| JPH01258163A (ja) | ダイレクトメモリアクセス制御装置 |