JPH04236628A - マイクロプロセッサ - Google Patents

マイクロプロセッサ

Info

Publication number
JPH04236628A
JPH04236628A JP1674491A JP1674491A JPH04236628A JP H04236628 A JPH04236628 A JP H04236628A JP 1674491 A JP1674491 A JP 1674491A JP 1674491 A JP1674491 A JP 1674491A JP H04236628 A JPH04236628 A JP H04236628A
Authority
JP
Japan
Prior art keywords
instruction
stack
stack pointer
microprocessor
field
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
JP1674491A
Other languages
English (en)
Other versions
JP2920698B2 (ja
Inventor
Hiroyuki Kaneko
裕之 金子
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co 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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP1674491A priority Critical patent/JP2920698B2/ja
Publication of JPH04236628A publication Critical patent/JPH04236628A/ja
Application granted granted Critical
Publication of JP2920698B2 publication Critical patent/JP2920698B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロプロセッサに
係わり、詳細にはスタックポインタの移動を高速化した
マイクロプロセッサに関する。
【0002】
【従来の技術】従来から、マイクロプロセッサでは、ス
タックを参照して、スタックポインタを1だけ正の方向
または負の方向に1つずつ移動させるようになっていた
。
【0003】図3は、従来のこのようなマイクロプロセ
ッサの構成を表わしたものである。マイクロプロセッサ
11は、命令を図示しない主記憶装置から取り出す命令
フェッチ部12を備えている。この命令フェッチ部12
から取り出された命令は命令デコーダ13に入力され、
解読される。解読された命令はスタック14の参照に用
いられ、次にスタックポインタ15が1だけインクリメ
ントまたはデクリメントされる。そして、同様に次の命
令が取り出されて命令デコーダ13で解読されると、ス
タックポインタ15で示された位置のスタック14が参
照され、スタックポインタ15が更に1だけインクリメ
ントまたはデクリメントされることになる。以下同様で
ある。
【0004】
【発明の解決しようとする課題】このように従来のマイ
クロプロセッサでは、スタックポインタの操作とスタッ
クの参照が連動するようになっていた。これは、棚構造
のメモリとしてのスタックに順にデータを格納したり、
順にデータを取り出すときに必要な動作であった。
【0005】しかしながら、例えばスタックに格納され
たあるデータから幾つか飛び越えて所望のデータを読み
出すようにスタックポインタを移動させるような場合に
は、スタックの参照とスタックポインタの移動という動
作を繰り返して所望のデータまでたどりつかなければな
らない。すなわち、この場合にはスタックの参照という
操作が無駄に行われ、このためにスタックポインタの移
動を十分高速化することができないという問題があった
。
【0006】そこで本発明の目的は、スタックを参照す
る必要がない場合には、スタックポインタを高速で移動
させることのできるマイクロプロセッサを提供すること
にある。
【0007】
【課題を解決するための手段】本発明では、データを後
入れ先出し法で積み重ねて収容するスタックと、このス
タックにおける参照するデータの位置を示すスタックポ
インタと、例えば主記憶装置から命令の取り出しを行う
命令フェッチ部と、取り出された命令における第1のフ
ィールドに属する部分を解読してスタックの参照とスタ
ックポインタの移動操作とをそれぞれ1回ずつ行わせる
ようにした命令を出力する第1の命令デコーダと、取り
出された命令における第2のフィールドに属する部分を
解読してスタックポインタの移動操作を更に1回行わせ
るか否かを表わした命令を出力する第2の命令デコーダ
とをマイクロプロセッサに具備させる。
【0008】すなわち本発明では、スタックの参照を行
なってはスタックポインタを1つずつ移動させていく通
常の操作のとき、取り出された命令における第1のフィ
ールドに属する部分のみを使用する。これ以外のときに
は、第2のフィールドに属する部分も使用して、取り出
された1つの命令に対してスタックポインタを2つずつ
移動させるようにする。
【0009】
【実施例】以下、実施例につき本発明を詳細に説明する
。
【0010】図1は本発明の一実施例におけるマイクロ
プロセッサの構成を表わしたものである。マイクロプロ
セッサ21は、命令を図示しない主記憶装置から取り出
す命令フェッチ部22を備えている。この命令フェッチ
部22から取り出された命令は第1のフィールドと第2
のフィールドの2つのフィールドから構成されている。 このうち第1のフィールドは、従来の命令と同一構成の
もので、その内容は第1の命令デコーダ23に入力され
るようになっている。第2のフィールドは命令のビット
長を従来のものよりも増やすことで追加されたもので、
その内容は第2の命令デコーダ24に入力されるように
なっている。
【0011】第1の命令デコーダ23は、図3に示した
従来の命令デコーダ13と基本的に同一のものである。 すなわち、第1の命令デコーダ23の解読する命令は、
スタック25の参照とスタックポインタ26を1だけイ
ンクリメントまたはデクリメントするためのものである
。
【0012】第2の命令デコーダ24は、スタックポイ
ンタ26のみの制御に用いられる。すなわち第2の命令
デコーダ24の解読する命令は、スタックポインタ26
を更に1だけインクリメントまたはデクリメントするか
、このような移動操作を行わないことを表わしている。
【0013】これら2種類の命令を組み合わせると、次
のような3通りの操作が可能になる。
【0014】(イ)スタック25の参照に連動したスタ
ックポインタ26の操作。
【0015】(ロ)スタック25を参照せずにスタック
ポインタ26を移動させる操作。
【0016】(ハ)以上の(イ)および(ロ)を同時に
行って、スタック25を参照しながら、スタックポイン
タ26を一度に正または負の方向に2つずつ移動させる
操作。
【0017】図2は、本実施例のマイクロプロセッサの
このような制御の様子を表わしたものである。図1と共
に、これを説明する。
【0018】まず、命令フェッチ部22が主記憶装置あ
るいは図示しないキャッシュメモリから命令を取り出す
(ステップS101)。この命令における第1のフィー
ルドに属する部分は第1の命令デコーダ23に送られ(
ステップS102)、第2のフィールドに属する部分は
第2の命令デコーダ24に送られる(ステップS103
)。
【0019】第1の命令デコーダ23では、この命令が
スタック参照であるかどうかをチェックし(ステップS
104)、そうであれば(Y)、スタックデータの参照
を行う(ステップS105)。そして、次にスタックポ
インタ26のインクリメントまたはデクリメントの操作
が指示されているかどうかをチェックし(ステップS1
06)、指示されている場合には(Y)、その操作を行
って(ステップS107)、制御を終了させる。先のス
テップS104でスタック参照を行わない場合、および
ステップS106でスタックポインタ26の操作が行わ
れない場合には、そのまま制御を終了させる(エンド)
。
【0020】一方、第2の命令デコーダ24では命令が
スタックポインタ26のインクリメントまたはデクリメ
ントの操作が指示されているかどうかをチェックし(ス
テップS108)、指示されている場合には(Y)、そ
の操作を行って(ステップS109)、制御を終了させ
る。指示されていない場合には(N)、そのまま制御を
終了させる(エンド)。
【0021】以上の制御の結果、第1および第2の命令
デコーダ23、24が共にスタックポインタ26の操作
の指示を解読した場合には、これが一度に正または負の
方向に2つずつ移動することになる。
【0022】
【発明の効果】このように本発明によれば、従来から備
えられた第1の命令デコーダの他に第2の命令デコーダ
を設け、この第2の命令デコーダでもスタックポインタ
の操作の指示を解読することにしたので、スタックポイ
ンタのインクリメントまたはデクリメントを一度に2回
分行うことが可能になる。この場合、ダミーのスタック
参照の分だけ実行ステップ数を削減することができる。 また、本発明では第2の命令デコーダの解読結果だけを
用いてスタックを参照せずにスタックポインタのみを操
作することも可能になる。
【図面の詳細な説明】
【図1】本発明の一実施例におけるマイクロプロセッサ
の回路構成の要部を示すブロック図である。
【図2】マイクロプロセッサの制御の様子を表わした流
れ図である。
【図3】従来のマイクロプロセッサの構成の一例を示す
ブロック図である。
【符号の説明】
21  マイクロプロセッサ 22  命令フェッチ部 23  第1の命令デコーダ 24  第2の命令デコーダ 25  スタック 26  スタックポインタ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  データを後入れ先出し法で積み重ねて
    収容するスタックと、このスタックにおける参照するデ
    ータの位置を示すスタックポインタと、命令の取り出し
    を行う命令フェッチ部と、取り出された命令における第
    1のフィールドに属する部分を解読して前記スタックの
    参照と前記スタックポインタの移動操作とをそれぞれ1
    回ずつ行わせるようにした命令を出力する第1の命令デ
    コーダと、前記取り出された命令における第2のフィー
    ルドに属する部分を解読してスタックポインタの移動操
    作を更に1回行わせるか否かを表わした命令を出力する
    第2の命令デコーダとを具備することを特徴とするマイ
    クロプロセッサ。
JP1674491A 1991-01-18 1991-01-18 マイクロプロセッサ Expired - Lifetime JP2920698B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1674491A JP2920698B2 (ja) 1991-01-18 1991-01-18 マイクロプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1674491A JP2920698B2 (ja) 1991-01-18 1991-01-18 マイクロプロセッサ

Publications (2)

Publication Number Publication Date
JPH04236628A true JPH04236628A (ja) 1992-08-25
JP2920698B2 JP2920698B2 (ja) 1999-07-19

Family

ID=11924780

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1674491A Expired - Lifetime JP2920698B2 (ja) 1991-01-18 1991-01-18 マイクロプロセッサ

Country Status (1)

Country Link
JP (1) JP2920698B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012212472A (ja) * 2006-07-26 2012-11-01 Semiconductor Energy Lab Co Ltd プログラム及び半導体装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012212472A (ja) * 2006-07-26 2012-11-01 Semiconductor Energy Lab Co Ltd プログラム及び半導体装置

Also Published As

Publication number Publication date
JP2920698B2 (ja) 1999-07-19

Similar Documents

Publication Publication Date Title
US5450605A (en) Boundary markers for indicating the boundary of a variable length instruction to facilitate parallel processing of sequential instructions
KR100328162B1 (ko) 정보처리회로와마이크로컴퓨터와전자기기
EP1241567B1 (en) Method and apparatus for executing coprocessor instructions
US6654871B1 (en) Device and a method for performing stack operations in a processing system
CN114968369A (zh) 用于采取vliw处理器中的相同执行数据包中的常数扩展槽指定或扩展常数位数的方法
JP2920698B2 (ja) マイクロプロセッサ
JPS60117335A (ja) 情報処理装置
JP2772100B2 (ja) 並列命令フェッチ機構
JPS63314644A (ja) デ−タ処理装置
JPS6131896B2 (ja)
JPS60108973A (ja) 配列要素の最小値および最小要素の要素番号を求める方法
JPS61294548A (ja) 機械命令実行装置
JPS6411973B2 (ja)
JP2687765B2 (ja) 分岐予測方式
JPS6325373B2 (ja)
US20050138343A1 (en) Processor-based structure and method for loading unaligned data
JPS62115541A (ja) マイクロ命令分岐アドレス生成方式
JPS62219128A (ja) デ−タ処理装置
JPS63276126A (ja) 命令デコ−ド回路
JPS62145430A (ja) デ−タ処理装置
JPH0619705A (ja) パイプライン制御方式
JPH05334081A (ja) パイプライン処理方式
JPH06149570A (ja) 命令制御装置
JPH04305736A (ja) マイクロプロセッサ
JPH04358227A (ja) マイクロプロセッサ