JPH0377137A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH0377137A
JPH0377137A JP1213944A JP21394489A JPH0377137A JP H0377137 A JPH0377137 A JP H0377137A JP 1213944 A JP1213944 A JP 1213944A JP 21394489 A JP21394489 A JP 21394489A JP H0377137 A JPH0377137 A JP H0377137A
Authority
JP
Japan
Prior art keywords
instruction
general
register
section
register section
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.)
Granted
Application number
JP1213944A
Other languages
English (en)
Other versions
JP2553200B2 (ja
Inventor
Taizo Sato
泰造 佐藤
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP1213944A priority Critical patent/JP2553200B2/ja
Priority to EP90115715A priority patent/EP0416345B1/en
Priority to DE69032494T priority patent/DE69032494T2/de
Priority to KR1019900012698A priority patent/KR940009377B1/ko
Publication of JPH0377137A publication Critical patent/JPH0377137A/ja
Priority to US08/007,032 priority patent/US5274792A/en
Application granted granted Critical
Publication of JP2553200B2 publication Critical patent/JP2553200B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30101Special purpose registers
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 本発明はデジタルデータを処理する情報処理装置に係り
、特に高速データ処理を要求される汎用マイクロプロセ
ッサに関し、 命令のデコードおよびそれに伴うレジスタ読出しを高速
化し処理の高速化を図る情報処理装置を提供することを
目的とし、 命令をデコードするデコーダと、スタックポインタおよ
び複数の汎用レジスタを有する汎用レジスタ部と、複数
の専用レジスタを有する専用レジスタ部と、を備えた情
報処理装置において、命令のデコード、前記汎用レジス
タ部の読出し、および前記専用レジスタ部の読出しを並
列的に行い、前記命令のデコード結果に基づいて、前記
汎用レジスタ部読出結果または前記専用レジスタ部読出
結果のいずれかを選択的に用いて処理を行うように構成
する。
また、前記専用レジスタ部は複数のスタックポインタを
有し、前記汎用レジスタ部のスタックポインタの内容を
前記1つの専用レジスタ部のスタックポインタの内容と
同一内容とするように構成する。
〔産業上の利用分野〕
本発明はデジタルデータを処理する情報処理装置に係り
、特に高速データ処理を要求される汎用マイクロプロセ
ッサに関する。
近年の汎用マイクロプロセッサは、高速データ処理の要
求に伴い、動作周波数の高速化およびパイプライン処理
化等が行なわれている。
パイプライン処理は同じような処理を繰り返すような場
合に1つの演算が終了する前に次の演算を開始して複数
の演算をオーバーラツプさせながら実行することにより
ハードウェアで高速化を図る手法である。例えば、マイ
クロプロセッサのパイプライン処理化としては、命令デ
コードステージ、実効アドレス計算ステージ、オペラン
ド続出ステージ、オペランド処理実行ステージ、オペラ
ンド書込ステージの5段のパイプライン構成にすること
が考えられる。この場合において、実効アドレス計算ス
テージに移るためには、命令デコードステージにおいて
レジスタの読出しおよび命令のデコードを行わなければ
ならない。したがって処理の高速化を図るためには命令
デコードステージの高速化すなわち命令のデコードおよ
びレジスタ読出を高速化する必要がある。
〔従来の技術〕
第5図を参照して従来の技術について説明する。
情報処理装置150は命令を格納する命令レジスタ51
と、命令を転送するバス58と、転送された命令をデコ
ードする命令デコーダ52と、命令デコーダ52のデコ
ード結果によりレジスタを指定するレジスタ指定部53
と、スタックポインタおよび複数の汎用レジスタを有す
る汎用レジスタ部54と、複数の専用レジスタを有する
専用レジスタ部55と、デコード結果および読出したレ
ジスタ内容により実効アドレス計算を行うアドレス計算
部56と、計算結果によりアクセスされるメモリ57と
、を備えて構成されている。
情報処理装置50は命令レジスタ51に命令が格納され
ると、命令中の命令コードを命令デコーダ52にバス5
8を介して転送する。命令デコーダ52は命令コードを
デコードし、その結果をレジスタ指定部53に出力する
。レジスタ指定部53は汎用レジスタ部54または専用
レジスタ部55の読出しを指示する。アドレス計算部5
6はデコード結果および汎用レジスタ部54または専用
レジスタ部55の読出し結果に基づき、実効アドレスを
計算し、メモリ57の当該アドレスにアクセスする。以
後、情報処理装置50はメモリ57の内容等に基づいて
様々な処理を行う。
〔発明が解決しようとする課題〕
以上の場合において、汎用レジスタ部の指定でスタック
ポインタが指定された場合には、デコード結果によりス
タックポインタをスタックポインタそのものとして読み
出したり、スタックポインタを汎用レジスタとして読み
だしたりするので、命令デコードの終了後にしか、レジ
スタをアクセスすることができなかった。このため、デ
コードステージが律速となり動作周波数の高速化が難し
かった。
上記課題に鑑み、本発明は、命令のデコードおよびそれ
に伴うレジスタ読出しを高速化し処理の高速化を図る情
報処理装置を提供することを目的とする。
〔課題を解決するための手段〕
上記課題を解決するため本発明は、命令をデコードする
デコーダ(3)と、スタックポインタ(R15)および
複数の汎用レジスタを有する汎用レジスタ部(4)と、
複数の専用レジスタを有する専用レジスタ部(5)と、
を備えた情報処理装置において、命令のデコード、前記
汎用レジスタ部(4)の読出し、および前記専用レジス
タ部(5)の読出しを並列的に行い、前記命令のデコー
ド結果に基づいて、前記汎用レジスタ部(4)続出結果
または前記専用レジスタ部(5)読出結果のいずれかを
選択的に用いて処理を行うように構成する。
また、上記情報処理装置において、前記専用レジスタ部
(5)は複数のスタックポインタ(Sl−S5)を有し
、前記汎用レジスタ部(4)のスタックポインタ(R1
5)の内容を前記1つの専用レジスタ部(5)のスタッ
クポインタの内容と同一内容とするように構成する。
〔作用〕
本発明によれば、命令デコードと同時に汎用レジスタ部
(4)および専用レジスタ部(5)の読出しを行い、デ
コード後にいずれかの読出し結果を用いて処理を行うこ
とができ、動作速度が向上する。
また、汎用レジスタ部(4)のスタックポインタ(R1
5)の内容を専用レジスタ部(5)の1つのスタックポ
インタと同一内容にすることにより、汎用レジスタ部(
4)のスタックポインタをアクセスすることにより、専
用レジスタ部(5)の特定のスタックポインタをアクセ
スするのと同一の処理を行え、処理速度が向上する。
〔実施例〕
第を図乃至第4図を参照して本発明の実施例について詳
細に説明する。
第1図に本発明の情報処理装置の基本ブロック図を示す
情報処理装置1は命令を一時的に格納する命令レジスタ
2と、命令中の命令コードをデコードするとともに後述
の汎用レジスタ若しくは後述の専用レジスタを選択する
レジスタ指示信号11を出力する命令デコーダ3と、ス
タックポインタおよび複数の汎用レジスタを有する汎用
レジスタ部4と、複数の専用レジスタを有する専用レジ
スタ部5と、命令デコード結果およびレジスタの内容に
よりアドレス計算を行うアドレス計算部6と、前記アド
レス計算により得られたアドレスに基づいてアクセスさ
れるメモリ7と、データのやり取りを行うバス部8と、
を備えて構成されている。
汎用レジスタ部4は第2図に示すように、各種データを
格納する16個のレジスタRo−R15と、前記レジス
タのうち特定の1つを選択する汎用レジスタ選択回路9
と、データの入出力時にデータを一時的に蓄えるレジス
タ人出力バツファ10と、を備えて構成されている。こ
こで、専用レジスタ部のレジスタRはスタックポインタ
として使用5 されているものとする。なお、専用レジスタ部5も汎用
レジスタ部4とほぼ同様な構成となっている。
第3図に命令フォーマットの一例を示す。
第3図(a)および第3図(b)は命令W中に実効アド
レスを指定するための実効アドレスフィールドADRF
を有する命令フォーマットの一例である。実効アドレス
フィールドADRF内にはレジスタを指定−するレジス
タフィールドRFを備えている。第3図(b)は実効ア
ドレスフィールドADRFが無い場合の命令フォーマッ
トの一例である。いずれのフォーマットにおいても、命
令長lは一定である。
命令レジスタ2に命令が格納されると、命令デコーダ3
は命令W中の命令コードC0DEをデコードする。それ
と同時に、情報処理装置1は命令W中のレジスタフィー
ルドRFまたはレジスタフィールドRFが存在しない場
合(第3図(C))には命令W中のレジスタフィールド
の存在するべき位置の内容から汎用レジスタ番号を特定
し、当該汎用レジスタにアクセスする。さらに、それと
同時に実行状態に応じて専用レジスタにアクセスする。
その後、命令コードC0DEのデコード結果に基づいて
、命令デコーダ3はレジスタ指示信号11を出力し、レ
ジスタ指示信号11に基づいて汎用レジスタ部4のアク
セス結果または専用レジスタ部5のアクセス結果のいず
れかがバス部8を介してアドレス計算部6に転送される
。アドレス計算部6では、命令コードC0DEのデコー
ド結果および汎用レジスタ部4のアクセス結果または専
用レジスタ部5のアクセス結果のいずれかに応じて実際
のメモリ上のアドレスを計算する。情報処理装置はその
結果に基づき処理を行う。
第4図に本発明をTR0N仕様の情報処理装置に適用し
た場合の概要構成を示す。第1図の実施例と同一の部分
には同一の符号を付し、詳細な説明は省略する。
第1図の実施例と異なる点は専用レジスタ部に5個のス
タックポインタ81〜S5を有している点と、データの
入出力のインターフェース動作を行うデータ入出力部1
2および実際の演算処理を行う算術論理演算部13を備
えた点である。
TR0N仕様においては、プログラムのバグ(bog 
)などによりシステム領域の破壊を防ぐために、リング
プロテクション方式を採用している。
リングプロテクション方式はリングレベルに応じてアク
セスできる領域(プログラム領域、データ領域、ワーク
領域を含む)を異ならせる方式であり、リング0からリ
ング3の4つのリングレベルが存在する。このうち、リ
ングOが最もリングレベルが高くなっており、リングレ
ベルが高いものほどアクセスできる領域が広くなる。例
えば、リング0ではすべての領域をアクセスできる。こ
のため、各リングごとにアクセス用のスタックポインタ
を備えており(S、〜S4の合計4個)、リング間を遷
移する場合には、リングレベルが低いプログラムがリン
グレベルが高いプログラムの領域を書き替えないように
スタックポインタを切り替えて使用しており、スタック
ポインタをアクセスするためには現在実行中のリングレ
ベルを判断してから行う必要がある。なお、残りの1個
のスタックポインタS5は割込処理用のスタックポイン
タである。
TR0N仕様の情報処理装置においては、現在実行中の
リングレベルに相当するスタックポインタのみが有効と
なり、当該スタックポインタのみしか当該リングレベル
においてアクセスすることができない。したがって、専
用レジスタ部5の当該アクセス可能なスタックポインタ
に図示しない書込指示信号が出力された場合に、汎用レ
ジスタのスタックポインタR15に同一内容を書き込ん
でおけば、汎用レジスタ部4のスタックポインタR15
の内容を読み出すことにより、専用レジスタ部5のアク
セス可能なスタックポインタを判別する必要がなくなる
。これにより、当該リングレベルに対応する専用レジス
タ部5のスタックポインタを特定しアクセスするよりも
、処理速度が向上することになる。なお、リング間遷移
を行った場合には遷移した先のリングに相当する専用レ
ジスタ部5のスタックポインタの内容が汎用レジスタ部
4のスタックポインタR15に書きこまれていることに
なる。
以上のようにして、読み出されたレジスタ内容は、命令
デコード結果とともにアドレス計算部6に転送され、メ
モリ7の実効アドレスが計算される。この後、当該アド
レスのメモリ7内のデータがデータ入出力部12を介し
て算術論理演算部13に転送され、処理されることとな
る。
他の動作については第1図の実施例と同様である。
〔発明の効果〕
本発明は以上のように構成したので、命令のデコード、
汎用レジスタの読出し、および専用レジスタの読出しを
並列的に行うことにより、パイプライン処理における命
令デコードステージを高速化することができ、その後に
行われる実効アドレス計算ステージを高速化することが
でき、したがって処理を高速化できるという効果を奏す
る。
また、汎用レジスタ部のスタックポインタと専用レジス
タ部のアクセス可能な1つのレジスタとを同一内容にす
ることにより、汎用レジスタ部のスタックポインタをア
クセスすることにより、専用レジスタ部のスタックポイ
ンタをアクセスするよりも処理速度が向上するという効
果を奏する。
【図面の簡単な説明】
第1図は本発明の情報処理装置の基本ブロック図、 第2図は汎用レジスタ部のブロック図、第3図は命令フ
ォーマットの説明図、 第4図は本発明の他の実施例のブロック図、第5図は従
来の情報処理装置のブロック図である。 1・・・情報処理装置 2・・・命令レジスタ 3・・・命令デコーダ 4・・・汎用レジスタ部 5・・・専用レジスタ部 6・・・アドレス計算部 7・・・メモリ 8・・・バス部 9・・・汎用レジスタ選択回路 10・・・レジスタ人出力バッファ 11・・・レジスタ指示信号 12・・・データ入出力部 3・・・算術論理演算部

Claims (1)

  1. 【特許請求の範囲】 1、命令をデコードするデコーダ(3)と、スタックポ
    インタ(R_1_5)および複数の汎用レジスタを有す
    る汎用レジスタ部(4)と、複数の専用レジスタを有す
    る専用レジスタ部(5)と、を備えた情報処理装置にお
    いて、 命令のデコード、前記汎用レジスタ部(4)の読出し、
    および前記専用レジスタ部(5)の読出しを並列的に行
    い、 前記命令のデコード結果に基づいて、前記汎用レジスタ
    部読出結果または前記専用レジスタ部読出結果のいずれ
    かを選択的に用いて処理を行うことを特徴とする情報処
    理装置。 2、請求項1記載の情報処理装置において、前記専用レ
    ジスタ部(5)は複数のスタックポインタ(S_1〜S
    _5)を有し、前記汎用レジスタ部(4)のスタックポ
    インタ(R_1_5)の内容を前記1つの専用レジスタ
    部のスタックポインタの内容と同一内容とすることを特
    徴とする情報処理装置。
JP1213944A 1989-08-19 1989-08-19 情報処理装置 Expired - Fee Related JP2553200B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP1213944A JP2553200B2 (ja) 1989-08-19 1989-08-19 情報処理装置
EP90115715A EP0416345B1 (en) 1989-08-19 1990-08-16 Instruction decoder for a pipeline processor
DE69032494T DE69032494T2 (de) 1989-08-19 1990-08-16 Befehlsdekoder für einen Pipelineprozessor
KR1019900012698A KR940009377B1 (ko) 1989-08-19 1990-08-17 정보처리 장치
US08/007,032 US5274792A (en) 1989-08-19 1993-01-21 Information processing apparatus with parallel instruction decoding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1213944A JP2553200B2 (ja) 1989-08-19 1989-08-19 情報処理装置

Publications (2)

Publication Number Publication Date
JPH0377137A true JPH0377137A (ja) 1991-04-02
JP2553200B2 JP2553200B2 (ja) 1996-11-13

Family

ID=16647635

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1213944A Expired - Fee Related JP2553200B2 (ja) 1989-08-19 1989-08-19 情報処理装置

Country Status (4)

Country Link
EP (1) EP0416345B1 (ja)
JP (1) JP2553200B2 (ja)
KR (1) KR940009377B1 (ja)
DE (1) DE69032494T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980024623A (ko) * 1996-09-13 1998-07-06 다까노 야스아끼 프로그램 실행 방법 및 프로그램 실행 장치

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69325785T2 (de) * 1992-12-29 2000-02-17 Koninklijke Philips Electronics N.V., Eindhoven Verbesserte Architektur für Prozessor mit sehr langem Befehlswort
JP2845844B2 (ja) * 1996-10-24 1999-01-13 日本電気アイシーマイコンシステム株式会社 マイクロプロセッサ
GB2421091B (en) 2004-12-07 2008-09-03 Hewlett Packard Development Co Central processor for a memory tag
US11204768B2 (en) 2019-11-06 2021-12-21 Onnivation Llc Instruction length based parallel instruction demarcator

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5824947A (ja) * 1981-08-07 1983-02-15 Hitachi Ltd 情報処理装置
JPS58142464A (ja) * 1982-02-19 1983-08-24 Hitachi Ltd マイクロプロセツサ
JPS607540A (ja) * 1983-06-24 1985-01-16 Mitsubishi Electric Corp 割込制御回路

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0744877B2 (ja) * 1986-04-18 1995-05-15 富士通株式会社 パルスモ−タ駆動回路
EP0314079B1 (de) * 1987-10-27 1992-05-06 Siemens Nixdorf Informationssysteme Aktiengesellschaft Schaltungsanordnung für Verarbeitungseinheiten einer Zentraleinheit mit einer Reihe von Mehrzweckregistern

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5824947A (ja) * 1981-08-07 1983-02-15 Hitachi Ltd 情報処理装置
JPS58142464A (ja) * 1982-02-19 1983-08-24 Hitachi Ltd マイクロプロセツサ
JPS607540A (ja) * 1983-06-24 1985-01-16 Mitsubishi Electric Corp 割込制御回路

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980024623A (ko) * 1996-09-13 1998-07-06 다까노 야스아끼 프로그램 실행 방법 및 프로그램 실행 장치

Also Published As

Publication number Publication date
KR910005152A (ko) 1991-03-30
EP0416345A2 (en) 1991-03-13
EP0416345A3 (en) 1993-03-24
KR940009377B1 (ko) 1994-10-07
JP2553200B2 (ja) 1996-11-13
DE69032494D1 (de) 1998-08-27
EP0416345B1 (en) 1998-07-22
DE69032494T2 (de) 1999-02-18

Similar Documents

Publication Publication Date Title
US4729094A (en) Method and apparatus for coordinating execution of an instruction by a coprocessor
US6463520B1 (en) Processor for executing instruction codes of two different lengths and device for inputting the instruction codes
US4715013A (en) Coprocessor instruction format
US4833640A (en) Register bank change including register to register transfer in a data processing system
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
US5021991A (en) Coprocessor instruction format
JPH0348537B2 (ja)
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.
JPS63261449A (ja) デ−タ処理装置
US4821231A (en) Method and apparatus for selectively evaluating an effective address for a coprocessor
US4914578A (en) Method and apparatus for interrupting a coprocessor
US4758950A (en) Method and apparatus for selectively delaying an interrupt of a coprocessor
EP0240606B1 (en) Pipe-line processing system and microprocessor using the system
JPS62115542A (ja) 情報処理装置
JPH03233630A (ja) 情報処理装置
EP0385136B1 (en) Microprocessor cooperating with a coprocessor
JPH0377137A (ja) 情報処理装置
US4994961A (en) Coprocessor instruction format
US4758978A (en) Method and apparatus for selectively evaluating an effective address for a coprocessor
JPS6217773B2 (ja)
US4811274A (en) Method and apparatus for selectively evaluating an effective address for a coprocessor
JP2583614B2 (ja) ベクトル演算装置
JPH01255037A (ja) 電子計算機
JPH05334074A (ja) マイクロプロセッサ

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees