JPH02112025A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH02112025A
JPH02112025A JP26392788A JP26392788A JPH02112025A JP H02112025 A JPH02112025 A JP H02112025A JP 26392788 A JP26392788 A JP 26392788A JP 26392788 A JP26392788 A JP 26392788A JP H02112025 A JPH02112025 A JP H02112025A
Authority
JP
Japan
Prior art keywords
stack
data
push
information
holding means
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
Application number
JP26392788A
Other languages
English (en)
Inventor
Noriyasu Mori
森 教安
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP26392788A priority Critical patent/JPH02112025A/ja
Publication of JPH02112025A publication Critical patent/JPH02112025A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、情報処理装置に係り、特にデータ格納装置の
スタックとプロセッサ内資源とのデータ転送制御に関す
る。
〔従来の技術〕
情報処理装置におけるデータの格納手段としてスタック
(棚)があり、一般によく活用されている。スタックは
、格納するデータを、格納した順に保持し、取出す際に
は最後に格納したデータを取出すものであり、LIFO
(ラストイン ファーストアウト: La5t In 
First 0ut)とも呼ばれる。
スタックに新しいデータを書き込む(スタックに積む)
操作はプッシュ操作、スタックから読み込む(スタック
から降す)操作はポツプ操作(あるいは、プル操作)と
呼ばれる。スタックに対する操作は、すべてこの2つの
基本操作で行なわれる。
スタックは、スタックトップ(最後にプッシュさレタデ
ータ)へのポインタを用いることでソフトウェア的に容
易に実現できる。
例えば、 68000系のアーキテクチャが森 亮−監
修、喜田祐三、他著r68000マイクロコンピュータ
」頁162−164に記述されている。上記χ献のよう
に、メモリの上位アドレスから下位アドレスに向ってデ
・−タを追加するスタックは、スタックポインタをSP
とすると、 プッシュ操作:ブリデクリメントr−(S P)Jポツ
プ操作:ボストインクリメントr−(sp)+」 により1行なうことができる。最も単純な例としてデー
タ転送命令■OV6を用いると、move  <eat
>  、 −(S  P)は第1オペランドで指定され
たアドレス<eal>の内容を、SPのデクリメント後
のアドレスへ書き込む操作であり、 5P4−8P−d (s  p)← (eal〉 を行なうことで、スタックヘプツシュしている。
ここに、dはスタックに置かれるデータ長(固定長)で
あり、(sp)はSPの指す先の内容値を表わす、また
move(SP)+、  (eat> は、 5P4−8P+d 〈eむ〉←(SP) を行なうことで2スタツクからポツプし、  <eaz
>へ格納している。
以上のように、ソフトウェア的にスタックを構成するこ
とは容易であるが、ハードウェア備え付きのスタックも
ある0例えば前述の68000系においては、システム
スタックを備えている。このシステムスタックは、アド
レスレジスタの1つであるA7を、システムスタックポ
インタとして用い、上位アドレスから下位アドレスへ向
けて主記憶上に実現されている。このシステムスタック
を操作する命令として、pea(プッシュ エフエクテ
イブ アドレス: push effective a
ddress)命令、Qea(ロード エフエクテイブ
 アドレス:Qoadeffective addre
ss)命令等の直接操作する命令の他、手続き呼出し、
復帰に用いるjar(ジャンプサブ ルーチン: ju
mp sub routj、re)命令、rts(リタ
ーン フロム サブルーチン: return fro
msubroutirs)命令においても、戻りアドレ
ス、パラメータ値等をスタックへの積み降しで行えるよ
うに、連動して操作が行なわれる命命もある。従って、
一般のプログラムにおいて(ソフトウェア的に作られな
くとも)スタック操作が頻繁に行なわれており、全体的
な処理性能に大きな影響を与える。
〔発明が解決しようとする課題〕
上記従来技術は、スタックへプッシュするデータの内容
とは無関係にプッシュ・ポツプ操作を行なっている。従
って、同一データを連続的にプッシュしたり、プッシュ
後すぐポツプするようなプログラムであっても主記憶上
のスタック領域とLSIチップ内の関連領域(レジスタ
等)との間で頻繁に配送が行なわれてしまう。しかしな
がら、プッシュすべきデータ列の内容(例えば同一デー
タの連続的プッシュ)によっては、複数のプッシュ・ポ
ツプ操作と同等の効果を1回のデータ転送で得ることも
可能である。上記従来技術では、このようなスタックデ
ータの内容に応じたプッシュ・ポツプ動作の点について
配慮がなされておらず。
結果として、冗長なデータ転送が行なわれるという問題
があった。
本発明の目的は、スタックのプッシュ操作及びポツプ操
作をデータの内容に応じて効率的に行なうことにある。
〔課題を解決するための手段〕
上記目的は、過去にスタックにプッシュした情報の一部
を保持するスタック情報保持装置を設け、そのスタック
情報保持装置の内容と、新規に行なうプッシュまたはポ
ツプ操作の内容に従って動作するスタック制御装置を設
けることにより達成される。
〔作用〕
スタック情報保持装置は、スタックに転送すべきデータ
群の一部をプッシュ操作の段階で保留状態とし、LSI
チップ内に保持することを可能とする。それによ、つて
、ポツプ操作を行なう際に。
保留されたプッシュ操作がある場合には、プッシュ操作
保留を解除することで、実際のスタックとのデータ転送
が不要になり、処理を高速化することができる。又、同
一データを連続的にプッシュする場合には、プッシュデ
ータと、その反復回数(プッシュ操作の回数)に置かえ
て保持する。それによって、保留状態を解除し、実際に
スタックとのデータ転送の必要が生じた場合にも、デー
タとその反復回数に圧縮して一度にまとめて転送できる
ので、処理の高速化が図られる。
〔実施例〕
以下の本発明の実施例の記述において、スタックはすべ
て下位から上位アドレスへ向うものとし、ユーザスタッ
ク、システムスタックの区別は行なわないが1両者を包
含するものとして単にスタックと呼ぶ、又、プッシュ操
作、ポツプ操作は、それぞれの動作が連続的に引起こさ
れる場合も含んでおり、命令語による明示的操作に限定
しない。
また、スタック操作は、前述した通り、オペランドに指
定するのみで行なえるが、同操作を引起こす命令をすべ
て代表して。
プッシュ命令 push A、 −(S P)ポツプ命
令 PUP  (SP) +、Bの形式で置き、それぞ
れ、「データAをスタックヘプツシュする」、「スタッ
クトップの値をポツプし、Bへ格納する」なる意味をも
つものとする、第1図は1本発明の第一実施例を含む情
報処理装置をブロックダイヤグラムで示す、この装置は
5゜プロセッサ(LSIチップ)1と、主記憶装置2か
ら成る。プロセッサ1は、概略的にいえば、内部バス1
0に接続された演算部9とプログラム制御部とから成り
、プログラム制御部は、命令レジスタ5と、命令デコー
ダ6と、命令アドレスレジスタ3、及びスタックポイン
タ4に加えて、スタック制御部R7と、スタック情報保
持袋W!、8を有する。内部バス10は1図において点
線で略記されるように、適当なインタフェースと外部バ
スを介して主記憶装置2に接続される。主記憶装置2に
は、プロセッサ1に対する命令列を格納したユーザプロ
グラム21と、このユーザプログラムが使用するスタッ
ク領域22が存在する。
スタック情報保持装置8は、プロセッサ内にスタックの
情報を保持するため、スタックデータレジスタ (SD
R)81と反復カウントレジスタ(RC:R)82を備
えている。5DR81はスタックにプッシュすべきデー
タを、RCR82は、プッシュすべき回数を保持するも
のである。この両者を用いることで、同一値の連続した
プッシュ操作では次のプッシュ操作が行なわれるまでス
タックへのデータの書込みが保留できる。また、主記憶
上のスタック22の一構成単位も同様にデータ部221
とカウント部222の構成となっており、スタック情報
保持装置の内容をそのままスタックとの間で転送できる
次に、上記反復カウンタ付スタック装置のプッシュ動作
、ポツプ動作の詳細を、それぞれ第2図第3図のフロー
チャートを用いて説明する。
第2図は、現在のスタックポインタSPを1単位進めた
場所にデータXを格納するスタックプッシュ操作命令 rpush  X、  (SP)J に対する本実施例における処理の流れを示す。
まず、プッシュすべきデータXが、5DR81が保持し
ている直前のプッシュ値と等しいか否かを判定する(2
01)、等しい場合には、同一データのプッシュ操作で
あるので、RCR82をインクリメント(205)L、
5DR81とRCR82は引続いて保留状態として処理
を終了する。
両者が等しくない場合には、現在保留状態にあるプッシ
ュデータがあるかどうかをRCR82によって判断する
(202)。
RCR=Oの場合には保留したプッシュデータが存在し
ないので、5DR81にXを格納し、RCR82に1を
設定する(204)。
RCRがOでない場合は、既に保留状態のデータが5D
R81にその反復回数RCRと伴に保持されている。こ
の場合、保留状態のプッシュ操作の保留を解除し、主記
憶上のスタック領域221及び222へ転送する必要が
ある。そこで、SPをデクリメントし、新しく確保した
領域221及び222へRCRとSDRの内容を組合せ
たデータ(RC,R,5DRIを格納することにより、
保留を解除する(203)。その後、上記の保留プッシ
ュデータが存在しない場合と同様にして、現プッシュ操
作を保留(204)して、処理を終了する。
第3図は、現在のスタックトップのデータを、Yに格納
し、SPをインクリメントすることで1単位戻すスタッ
クポツプ命令、 rpop  (SP)+、YJ の処理の流れを示す。
まず、ポツプすべきデータが保留状態にあるか否かをR
CR82の値により判断する(301)。
RCRがOでない場合は、少なくとも1回以上のプッシ
ュデータが保留状態にあるので、RCRをデクリメント
し、YにSDRの値を格納する(303)ことで処理は
終了する。
ポツプすべきデータが保留状態になっておらず、実際の
スタック上にしか存在しない場合には、現在のSPの内
容を読み出し、RCR,SDRへ転送した後SPをイン
クリメントする(302)、その後保留プッシュデータ
が存在する場合と同様の処理を行なえばよい(303)
次に、上記の反復カウンタ付スタックを用いたプッシュ
及び、ポツプ操作の過程を第5図に示すプラグラムを例
として、第4図に模式的に示す。
第5図に示されるように、主記憶装置2中のユーザプロ
グラム21は、同じく主記憶装置2中に存在するスタッ
ク22に対するプッシュ操作、ポツブ操作を行なってい
る。まず、スタック22に何も積まれていない初期状態
、第4図(a)においては、5DR81、RCR82と
もoで初期化されており、SF3はスタックの底を指し
ている。
次にプッシュ命令401,402が計2回行なわれた後
のプログラム領域■における各構成要素の内容を示すの
が第4図(b)である、この時点で、データAの2回の
プッシュ操作はまだ保留状態にアリ、プロセッサ内(7
)SDR81,RCR82に保持されているのみで、実
際のスタック22にはまだ格納されていない、(従って
SF3も第4図(a)の状態と同じである。) 次に、現在5DR81に保持中のデータ(A)と異なる
値のデータBのプッシュ操作403が行われると、保留
中であった[データAの2回のプッシュ操作が解除にな
り、5DR81とRCR82の内容がスタック22へと
積まれ、新たにデータBのプッシュを保留状態としたの
が、第4図(Q)である。
ポツプ命令404で、スタックトップにあるデータをX
へ転送するが、このとき、最後にプッシュしたデータB
は、その反復回数1とともに、5DR81,RCR82
に保持されている。 RCR82の内容がOでないこと
から、5DR81に所望の値が存在することがわかるの
で、スタック22へアクセスすることなく、5DR81
からデータを読み出すことができる。第4図(d)次に
、Yへのポツプ操作405の処理において、RCR82
の内容がOになっているので、実スタック22から必要
なデータAを反復回数2とともに読出し、それぞれ5D
R81とRCR82へとセットし、SF3をインクリメ
ント、RCRをデクリメントした状態が第4図(e)で
ある。
本実施例では、反復プッシュデータを効率的に重複なく
格納するスタック22と、プロセッサ内にスタックトッ
プ要素の格納を可能とするスタック情報保持装置!8を
備えており、これらにより効率的なスタック操作が行な
われている。すなわち、主記憶上のスタック22と、L
SIチップ上のスタックトップ要素81.82間のデー
タ転送は常に1回ですむため、同一データを複数回プッ
シュ・ポツプする場合も、その反復回数−1回分のデー
タ転送を省略でき、処理の高速化に寄与する効果がある
。また、スタックトップが常にプロセッサ1内に保留さ
れているため、スタックへのプッシュ・ポツプが1回づ
つ行なわれる場合にも、主記憶上のスタック22とのデ
ータ転送は不要となり、この場合も処理が高速化される
さらに、反復カウンタ付データをスタック情報保持装置
を介してプッシュlポツプするため、ユーザが意識する
スタックトップ(最後にスタックにプッシュした値)は
、主記憶上のスタック22のデータ部221とプロセッ
サ内の5DR81の両者に選択的に存在可能となってい
る。(第4図において、(b)、(c)、(e)は、5
DR81に、(d)は、主記憶上のスタック領域221
に存在している。)ユーザは、スタックトップの物理的
存在場所を意識することなく、ある程度の確率でプロセ
ッサ内の高速アクセスできるレジスタ(SDR)にスタ
ックトップを置くことができ、プロセッサ内のレジスタ
等の資源の範囲内での効率的活用が行なえる効果もある
スタック操作は、−船釣に、高級言語のコンパイラが、
手続き呼出しに連動して、戻りアドレス、パラメータ渡
しのために多用する。従って1手続を呼出しが頻発し、
パラメータ等が多いプログラムの実行において、より効
果的である。
次に1本発明の第二の実施例である反復スタックデータ
記憶機構を、第6図〜第9図を用いて説明する。第6図
は、第1図のスタック情報保持装置!8とスタック22
の本実施例における構成を示す、第1図におけるのと同
じ符号は同等の要素を表わす0本実施例においては、ス
タック情報保持装置は、第一の実施例と同等の機能をも
つ5DR84、RCR85の他に、スタックアドレスレ
ジスタ5AR86を加えた3個のレジスタ組を複数備え
た疑似スタック87を有する。(以降では、主記憶上に
存在するスタック22は、疑似スタック87と区別する
ため実スタックと呼ぶ、)M似スタック87のスタック
トップを指すのが、疑似スタックポインタPSP83で
ある。PSPの指す先はd ’ byte、QL位で扱
われる。i番目の疑似スタックエントリの要素を、それ
ぞれ5DRi。
RCRi、5ARiと記し、k+1個の疑似スタックエ
ントリがある*  (x=o*  ly・・・、k)。
本実施例においては、実スタックは従来技術のそれと同
等であり5各ブツシユ・ポツプ操作に伴って1t1!!
成単位の要素を読書きし、(実)スタックポインタSP
をデクリメント・インクリメントする。しかし、同一の
値の連続したプッシュ操作は、疑似スタック87を用い
るので、これらのデータの転送を主記憶2上の実スタッ
ク22との間で転送する必要がない。
以下1本実施例におけるプッシュ動作を第7図、ポツプ
動作を第8図のフローチャート図を用いて説明する。プ
ッシュ・ポツプ操作命令は、第一の実施例と同じもので
ある。
第7図は1本実施例のプッシュ動作を示す、まず、SP
を1単位デクリメントした(501)後。
プッシュすべきデータXが、現在のPSP83が指す疑
似スタック87のスタックトップのデータ部5DRi8
4と等しいか否かを判定する(502)。
等しい場合は、同一データのプッシュ操作であるので、
疑似ステックトップのカウンタ部RCRi85をインク
リメント(503)L、処理を終了する。
等しくない場合は、RCRi85の値が0か否かを調べ
る(504)。
Oの場合は、@似スタックトップに保留スタックデータ
が存在しないので、現在のスタックプッシュ操作を保留
状態として(508)処理を終了する。
RCRiの値が1以上の場合は、現在の疑似スタックト
ップを示すiが、疑似スタックの最大エントリ数により
小さく、データの反復回数OCRiが2回以上であるか
否かを判定する(505)。
上記条件505が満される場合には、現在保留中のプッ
シュ操作をそのまま疑似スタック87上に保存し、新規
に疑似スタック上のエントリを確保(507)シ、その
新規の疑似スタックエントリにプッシュ操作を保留する
(508)。
−h記条件505が満たされない場合は、疑似スタック
が満杯か、当該プッシュ操作を疑似スタック【:゛保存
する価値はないと判断して、9在保留中のデータ5DR
i84をスタック22へと転送した(506)後、新し
いプッシュ操作を現用の疑似スタックエントリへ保留す
る(50 B)。
第8図は、本実施例のポツプ動作を示す。まず、疑似ス
タックトップのスタックアドレス部5ARi84が 現
在のSP4と等しいか否かを判定する(601.)。
等1..<ない場合には、求めるデータは疑(qスタッ
ク87上にはないので、実スタック22がらポツプし、
(605)、処理を終了する1、S N’ = S A
 Riの場合は、ポツプすべきデータが疑似スタック8
7上に存在する可能性がある。
これはRCRj−85の値により判定できる(602)
RCRi≠0の場合は、ポツプすべきデータが疑似スタ
ックトップに存在するのでR,CRi B 5をデクリ
メン1−シ、疑似タック87からボ・“ノブし、で処理
を終了する(604)。
RCRi=Oの場合は、疑似スタック上に存在した反復
回数付スタックデータの必要回数だけのポツプ処理が上
記604の処理により過去のポツプ操作により既に行な
われたことを示す。従って、現在の疑似スタックトップ
のエントリを解放し。
PSP83を1単位下げる(603)。
その後、新しい疑似スタックトップのエントリに対し、
上記の5ARiとspの比較(601)以降の処理を行
なう。
次に5上記疑似スタツク87を用いたプッシュ及びポツ
プ操作の過程を、第5図に示すプログラムを例として、
第9図に示す。
まず、疑似スタック87に何も積まれていない初期状態
第9図(8)においてはPSP83が指す。
現用の疑似スタック領域(これをi=0で表現する。現
用の疑似スタック領域番号が0番の意味である)の内容
は、 5DRo=:O RCRo=0 S A Ro= S P = S P。
となっている、ここにSPoは、現時点におけるスタッ
クポインタSP4の値である。次にプッシュ命令401
,402が計2回行なわれた後のプログラム領域■にお
ける各構成要素の内容を示すのが第9図(b)である、
この時点で、データAの2回のプッシュ操作は、5DR
o、RCRoに、その最後のプッシュアドレスS A 
Ro= S P zとともに保留状態にある。
さらに現用疑似スタックトップのデータ部SDR。
の内容(A)と異なる値のプッシュが行なわれると、第
9図(Q)に示すように、疑似スタック87上にプッシ
ュされ、i=1となる。ここにi=0の時点の疑似スタ
ックエントリが、実スタックに反映されないのは1本実
施例においては同一データの2回以上のプッシュは、で
きる限り疑似スタックに保持するからである。もし、i
=0に対応する疑似スタックエントリのカウント部RC
Roが1であれば、疑似スタック87に残すことなく、
実スタック22に積まれ、i=1の疑似スタック領域は
使用されない。
第9図(d)は、1回目のポンプが疑似スタック87か
ら行われた状態、同図(e)はさらに2回目のポツプが
疑似スタック87から行なわれ、 PSP83もi=0
の状態に戻っている状態を示している。この例において
は、第9図の実スタック22中の斜線で示された領域2
23〜225は使用されない。
本実施例では、第一の実施例と異なり、実スタックは従
来技術におけるものと同等である。但し、同一値の複数
回のプッシュ動作は、(容量の許す限り)すべてスタッ
ク情報保持装置8が保持する。
その際、SF3は通常のスタックと同様に1単位進める
ので1本実施例の効果は、スタックデータとその反復回
数を複数個プロセッサ内に保持活用できる点にある。従
って、本実施例も第一の実施例と同じ効果があるが、複
数の反復プッシュデータが出現する場合により効果的で
ある。ただし、第一の実施例よりもハードウェア量は多
く、プッシュ・ポツプの一回当りの処理量も増大してい
る。
〔発明の効果〕
本発明によれば、同一のデータの連続したプッシュ操作
およびポツプ操作を、データとその反復回数の形式に圧
縮してプロセッサ内に保持できる。
又、第一の実施例では、スタックとプロセッサ間のデー
タ転送も同形式で行なえる。これにより、メモリアクセ
スのコストをm^プロセッサ内のレジスタ等のアクセス
コストをP^ (スタック情報保持装置中のデータに対
するアクセスコストは。
この値に等しい)、反復回数をnとしたとき、従来技術
に比べて、スタック操作を m^× n P^Xn+m^ 倍に、高速化できる。マシンサイクル数等から概算して
、。P^:m^=5:1とすると、10回の反復におい
ても約3倍の高速化が達成できる。
さらに本発明の別の効果として、ポンプ処理において、
スタックデータがプロセッサ内に保持されていた場合に
は、プッシュ時とポツプ時の双方でのメモリへのアクセ
スコストが軽減されるので。
より、−層の高速化が可能である。この効果は。
第二の実施例において、より期待できる。また、関連す
る副次的効果としては、メモリへの(特に書込みの)ア
クセスが少なくなるため、パイプライン処理も効率的に
行なうことが可能となる点が挙げられる。すなわち、パ
イプライン処理において、メモリへの書込み等はその命
令先取り効果を著しく低下させる要因のひとつであり、
本発明により上記命令先取り効果を阻害する要因を抑制
することができる。
【図面の簡単な説明】
第1図は本発明の第一実施例を含む情報処理装置のブロ
ック図、第2図と第3図は第1図の装置におけるプッシ
ュ操作、ポツプ操作の処理のフローチャート、第4図は
スタック操作の各階段の過程を示す説明図、第5図はプ
ログラムの一例示図。 第6図は第二の実施例におけるスタック情報保持装置と
スタックの関連を示すブロック図、第7図と第8図は、
第二の実施例のプッシュ操作・ポツプ操作の処理のフロ
ーチャート図、第9図は、第5図のプログラム例に対す
るスタック操作の各段階の過程を示す説明図である。 1・・・プロセッサ、2・・・主記憶、4・・・スタッ
クポインタ、7・・・スタック制御装置、8・・・スタ
ック情報保持装置、22・・・スタック、81・・・ス
タックデータレジスタ、82・・・反復カウントレジス
タ、83・・・疑似スタックポインタ、84〜86・・
・疑似スタックのデータ部・カウント部・アドレス部、
87・・・疑似スタック、221・・・スタックデータ
(データ部)、222・・・反復回数(カウント部)。 イ 4図 0.)ネ刀期i尺ら (70oグツム141〉−に■)
C)テ”−タβのPυ5にイ1 (プログラム/f!勾坂゛G9 d)X/Xin  PoP才良 (プロプ“7ム4i輛N・の) e)イへ^ pop gl。 C加グクヘ41埼(,0ン 臀 乙 圀 イ 図 ■ Aを7゛・/ンユし6才に靭勇10プ゛7ム冷シギ呪葺 胆 弄 ワ 図

Claims (1)

  1. 【特許請求の範囲】 1、主記憶装置内の一定領域を占めるスタックとスタッ
    クの先頭位置を指示するスタックポインタを有し、上記
    スタックに対する操作手段として、プッシュ操作、ポッ
    プ操作を上記スタックポインタを用いて行う情報処理装
    置において、スタック操作情報の一部をプッシュ時に保
    持するスタック情報保持手段と、スタック操作命令実行
    時に、前記スタック情報保持手段の保持する情報の内容
    に応じて、上記主記憶上のスタックとスタック情報保持
    手段の間のデータ転送を制御するスタック制御手段をプ
    ロセッサ内に設けたことを特徴とする情報処理装置。 2、スタック情報保持手段として、直前のプッシュデー
    タを保持するデータ部と、同プッシュデータのプッシュ
    回数を保持するカウンタ部の両者を有し、連続的に同一
    データをプッシュする場合には、プッシュすべきデータ
    をデータ部に保持し、同一データのプッシュ操作が行わ
    れる間はカウンタ部のインクリメントのみを行うことで
    プッシュ回数を記録し、主記憶上のスタックの操作は、
    データ部とカウンタ部の組み合わせを単位としたプッシ
    ュ操作、ポップ操作により、行うことを特徴とする請求
    項第1項記載の情報処理装置。 3、前記スタック情報保持手段を用いたスタック操作を
    行うための特定の命令を設けたことを特徴とする請求項
    第1項記載の情報処理装置。 4、スタック情報保持手段が、最後にプッシュしたスタ
    ック要素であるスタックトップをデータ部とカウンタ部
    の組み合わせにより保持し、データ部とカウンタ部の組
    み合わせを単位としたプッシュ操作、ポップ操作を行う
    ことで、スタック制御装置がスタックトップの存在する
    場所をプロセッサないし主記憶に切り替えることを特徴
    とする請求項第2項記載の情報処理装置。 5、スタックへプッシュすべきデータをスタック情報保
    持手段が保持するのみで、主記憶上のスタックにはプッ
    シュしないプッシュ操作保留手段およびプッシュ操作保
    留手段により保留されたプッシュデータをスタック情報
    保持手段から直接読み込む、保留プッシュ操作のポンプ
    手段、およびプッシュ操作保留手段によりスタック情報
    保持手段に保持されたプッシュデータを主記憶上のスタ
    ックへとプッシュする保留プッシュ操作の解除手段をス
    タック制御装置内に設けたことを特徴とする請求項第1
    項記載の情報処理装置。 6、スタック情報保持手段として、直前のプッシュデー
    タを保持するデータ部と、同プッシュデータのプッシュ
    回数を保持するカウント部と、同プッシュを行うアドレ
    スを保持するアドレス部の3社をスタック情報エントリ
    として複数個設け、その先頭スタック情報エントリの位
    置を指示する疑似スタック情報ポインタを用いてスタッ
    ク情報エントリのプッシュ操作、ポップ操作を行い疑似
    スタックを構成したことを特徴とする請求項第1項記載
    の情報処理装置。 7、前記スタック情報保持手段中のデータ部、カウント
    部、アドレス部、疑似スタックポインタとして、汎用レ
    ジスタを指定する命令後を備えたことを特徴とする請求
    項第1項ないし第3項ならびに第6項記載の情報処理装
    置。 8、複数のスタックにたいして各々専用のスタック情報
    保持手段を設けたことを特徴とする請求項第1項記載の
    情報処理装置。 9、請求項第1項に記載の特徴を有する情報処理装置の
    プロセッサを1チップのLSI上に実装したことを特徴
    とするマイクロプロセッサ。
JP26392788A 1988-10-21 1988-10-21 情報処理装置 Pending JPH02112025A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP26392788A JPH02112025A (ja) 1988-10-21 1988-10-21 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26392788A JPH02112025A (ja) 1988-10-21 1988-10-21 情報処理装置

Publications (1)

Publication Number Publication Date
JPH02112025A true JPH02112025A (ja) 1990-04-24

Family

ID=17396196

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26392788A Pending JPH02112025A (ja) 1988-10-21 1988-10-21 情報処理装置

Country Status (1)

Country Link
JP (1) JPH02112025A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008524721A (ja) * 2004-12-15 2008-07-10 インテル・コーポレーション Data部および関連するカウンタを備えるエントリを有するハードウェア・スタック

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008524721A (ja) * 2004-12-15 2008-07-10 インテル・コーポレーション Data部および関連するカウンタを備えるエントリを有するハードウェア・スタック
JP4917045B2 (ja) * 2004-12-15 2012-04-18 インテル・コーポレーション Data部および関連するカウンタを備えるエントリを有するハードウェア・スタック

Similar Documents

Publication Publication Date Title
JP4142141B2 (ja) コンピュータ・システム
KR960035259A (ko) 감소된 판독 및/또는 기록 포트 대역폭을 갖는 레지스터 파일을 포함하는 컴퓨터 프로세서
US9052910B2 (en) Efficiency of short loop instruction fetch
JP2003512670A (ja) 連結リストdma記述子アーキテクチャ
JPH06309267A (ja) I/o装置と拡張記憶装置又は主記憶装置の間でデータを転送する方法
JP3034873B2 (ja) 情報処理装置
JPH01205228A (ja) 命令バツフアシステム
JPH02112025A (ja) 情報処理装置
JPH01169633A (ja) 情報処理装置
US20040044885A1 (en) Performing repeat string operations
US20060095675A1 (en) Three stage hybrid stack model
JPH04104350A (ja) マイクロプロセッサ
JPH02294734A (ja) 情報処理装置
JPS63101943A (ja) キヤツシユム−ブイン制御方式
JP2003203486A (ja) 半導体記憶装置及びその制御方法
JPH07295882A (ja) 情報処理装置、及び、情報処理システム
JPS63239521A (ja) 磁気テ−プ装置のデ−タ処理方式
JPH06266623A (ja) キャッシュメモリ及びキャッシュメモリ制御方法
JP2003177961A (ja) 情報処理装置及び情報処理ユニット
JPH0695305B2 (ja) デ−タ処理装置
JPH08137690A (ja) プログラム実行制御方法
JPS608965A (ja) 入出力バツフアメモリ方式
JPS61237145A (ja) ストアバツフアの制御方式
JP2845746B2 (ja) マイクロプログラム制御装置
JPS6142076A (ja) ベクトルマスク情報制御装置