[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JPH0823820B2 - アドレス・オーバラップ・チェック処理装置 - Google Patents

アドレス・オーバラップ・チェック処理装置

Info

Publication number
JPH0823820B2
JPH0823820B2 JP60236566A JP23656685A JPH0823820B2 JP H0823820 B2 JPH0823820 B2 JP H0823820B2 JP 60236566 A JP60236566 A JP 60236566A JP 23656685 A JP23656685 A JP 23656685A JP H0823820 B2 JPH0823820 B2 JP H0823820B2
Authority
JP
Japan
Prior art keywords
address
operand
register
contents
address generator
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.)
Expired - Fee Related
Application number
JP60236566A
Other languages
English (en)
Other versions
JPS6297037A (ja
Inventor
優人 大野
克巳 大西
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 JP60236566A priority Critical patent/JPH0823820B2/ja
Publication of JPS6297037A publication Critical patent/JPS6297037A/ja
Publication of JPH0823820B2 publication Critical patent/JPH0823820B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 〔概要〕 アドレス・ジェネレータとオーバラップ・チェッカと
を有し,第2オペランド・アドレスと第1オペランド・
アドレスとのオーバラップの有無をチェックしつつ処理
を進めるデータ処理装置において,第2オペランド・ア
ドレスを計算するに当たってアドレス・ジェネレータに
供給されるバイパス・ルートからの情報を考慮した結果
の情報を,上記オーバラップ・チェッカに供給するよう
にし,パイプライン先行命令によってベース・レジスタ
の内容が変更を受ける場合などにおける処理の遅れを解
消するようにしたことが開示されている。
〔産業上の利用分野〕
本発明は,アドレス・オーバラップ・チェック処理装
置,特に例えば第2オペランドの内容を読出して処理し
第1オペランドの位置に格納する如き処理を行うに当た
って,オーバラップ・チェッカによってチェックを行う
機能を有するデータ処理装置において,オーバラップ・
チェッカに供給する入力を早期に整え得るようにしたア
ドレス・オーバラップ・チェック処理装置に関する。
〔従来の技術〕
パイプライン処理を行うデータ処理装置において,第
1オペランドと第2オペランドとを主記憶装置から読出
し,演算して,その結果を主記憶装置上の第1オペラン
ドの位置に書込む命令や,第2オペランドを主記憶装置
から読出し,主記憶装置上の第1オペランドの位置に書
込む命令などが実行されることがある。
このような命令を実行する場合,ソフトウェア・イン
タフェース条件としては,例えば1語が8バイトからな
るデータ処理装置では,一般にはアドレスの単位である
1バイトの演算を逐次実行して最終的に8バイトの演算
結果が得られることを前提としている。
しかし,ハードウェア的には8バイト単位で演算して
いるので,このままではソフトウェアから見たハードウ
ェア条件が合わなくなる問題があり,見掛け上1バイト
単位で処理しているようにする必要があった。
具体例を挙げれば,例えば第2オペランド・アドレス
から第1オペランド・アドレスヘデータを転送する命令
で,第2オペランド・アドレスと第1オペランド・アド
レスとが1バイト分だけ異なっている場合を考える。こ
の場合,第2オペランド・アドレスにおける記憶内容
(第2オペランド)の最初の1バイトにのみ全“0"を入
れて,かつ第2オペランド・アドレスと第1オペランド
・アドレスとを夫々逐次上記1バイト分だけずらせつ
つ,この転送命令(この場合,1バイト単位での転送を行
う命令)を実行させると,第1オペランド・アドレスに
おける記憶内容(第1オペランド)に最初の1バイトか
ら順次1バイトづつ“0"が転送され,最終的には全デー
タ長に“0"を入れることができる。上記ソフトウェア・
インタフェース条件としては,例えば1語が8バイトか
らなるデータ処理装置で1語を構成する8バイト単位で
転送される場合にも,上記の如く全データ長に“0"を入
れることができるよう期待されている。勿論,上記の如
く,1バイトづつの転送が行われれば,当該期待を満足さ
せることができる。
しかし,実際に,当該データ処理装置の1語を構成す
る8バイト単位を,上記の如く第2オペランドの最初の
1バイトにのみ全“0"を入れて,この命令が実行される
と,8バイトの語の最初の1バイトのみは“0"であるが他
の7バイトは“0"でないデータが,第2オペランド・ア
ドレスから第1オペランド・アドレスへ転送される。そ
して以後,第2オペランド・アドレスと第1オペランド
・アドレスとが夫々8バイト分だけずらされつつ,第2
オペランド・アドレスから第1オペランド・アドレスへ
8バイト単位で第1オペランドの全データ長について転
送されることになる。この結果は,第1オペランドが例
えば最初の2バイト分だけ全“0"で残余のバイトが全
“0"でない形のデータになってしまうことになり,所期
の目的を達成させることができなくなる。
この問題に対する対策として,第1オペランド・アド
レスと第2オペランド・アドレスとのオーバラップ・チ
ェックを行い,2つのアドレスが例えば8バイトの範囲内
でオーバラップしている場合には,オーバラップしてい
ない範囲のバイト長での演算を,総てのデータ長につい
て(演算結果を主記憶装置に書き込む場合は,書き込み
レングスについて)繰り返し行う方法が採られる必要が
ある。そして,従来から,当該オーバラップ・チェック
を行うことが行われている。
第3図は当該従来の構成を示し,第4図は処理中断が
生じる場合のタイムチャートを示す。
図中の符号1はアドレス・ジェネレータ,2はアドレス
保持用レジスタ,3はオーバラップ・チェッカ,4はインデ
ックス・レジスタ,5はベース・レジスタ,6はディスプレ
ースメント・レジスタ,7ないし9は夫々セレクタ,10は
命令レジスタ,11は汎用レジスタ群,12はバイパス・ルー
トを表している。
従来の場合,第1フローにおいて第1オペランド・ア
ドレスをアドレス・ジェネレータ1によって計算してレ
ジスタ2にセットし、当該レジスタ2にセットされた値
にもとづいて主記憶装置をアクセスして第1オペランド
を読出した上で、当該第1オペランドについて演算手段
を介して演算を行い、当該演算結果を上記主記憶装置に
書込むようにされる。そして、第2フローにおいて,第
2オペランド・アドレスをアドレス・ジェネレータ1に
よって計算させて上記レジスタ2にセットして以降の処
理を行うようにすると共に、第2オペランド・アドレス
を生成する生成要素であるベース・レジスタ5の内容と
ディスプレースメント・レジスタ6の内容とをオーバラ
ップ・チェッカ3に入力し,レジスタ2の内容と照合す
る処理を行うようにしている。
なお,ベース・レジスタ5には,命令レジスタ10にセ
ットされている命令のベース・レジスタ指定部B1で示さ
れる汎用レジスタの内容が供給され,ディスプレースメ
ント・レジスタ6には当該命令のディスプレースメント
D1が供給される。
そして,上記命令のベース・レジスタ指定部で示され
る汎用レジスタが,パイプライン先行命令によって変更
を受ける場合を考慮して,そのような場合にも第2オペ
ランド・アドレスを早期に決定できるようにするため
に,バイパス・ルート12がもうけられ,セレクタ7,8を
介してバイパス・ルートの内容がアドレス・ジェネレー
タ1に供給されるようにされていた。即ち,パイプライ
ン先行命令において上述の演算手段によって演算された
結果の情報を,バイパス・ルート12を介して,アドレス
・ジェネレータ1に,早期に供給するようにしている。
〔発明が解決しようとする問題点〕
従来上記の構成が考慮されているが,上記バイパス・
ルート12からの情報は,第3図図示の場合には,アドレ
ス・ジェネレータ1に供給されるのみであって,オーバ
ラップ・チェッカ3には供給されていない。このため
に,第4図図示のタイムチャートに示す如く,上記の如
くパイプライン先行命令によって変更を受けた場合に
は,当該変更の結果が汎用レジスタ群11に書込まれ,次
いでベース・レジスタ5に反映されるまで,オーバラッ
プ・チェッカ3によるチェックを行うことができない。
換言すれば,バイパス・ルート12からの情報がオーバラ
ップ・チェッカ3に供給されていないことから,上記変
更の結果が,一旦汎用レジスタ群11に書き込まれた上で
当該汎用レジスタ群11から読み出されてベース・レジス
タ5にセットされるまで,オーパラップ・チェッカ3に
よるチェックを行うことができない。第4図はこのこと
を表しており,第2フローにおいてベース・レジスタ5
には汎用レジスタ群11から読み出されてセットされる時
点までアドレス・ジェネレータ1による処理を待つこと
と同じこととなる。即ち,それまで,第2オペランド・
アドレスを決定しオーバラップ量を判定するために中断
が生じる(第4図に示す第2フローにおけるフェーズA
の連続している部分が中断に相当している)。
〔問題点を解決するための手段〕
本発明はこの点を解決しており,第1図は本発明の原
理構成図(本発明の一実施例構成でもある)を示してい
る。図中の符号は第3図に対応しており,1はアドレス・
ジェネレータ,2はアドレス保持用レジスタ,3はオーバラ
ップ・チェッカ,4はインデックス・レジスタ,5はベース
・レジスタ,6はディスプレースメント・レジスタ,7ない
し9はセレクタ,10は命令レジスタ,11は汎用レジスタ
群,12はバイパス・ルートを表している。なお図示のセ
レクタ7,8,9の入力側には夫々図示しない他の入力も存
在しているが,本発明と直接関連しないものであること
から,これらの入力についての図示を省略している。そ
して,夫々のセレクタ7,8,9において夫々いずれの入力
を選択してアドレス・ジェネレータ1に供給するかは,
その時点での命令のオペレーション・コードの内容によ
って定められるようにされている。
本発明の場合も、上記アドレス保持用レジスタ2にセ
ットされた値にもとづいて主記憶装置がアクセスされ
(勿論、主記憶装置から読出す必要のない場合もある
が)、主記憶装置から読出されたオペランドが演算手段
によって演算された上で上記主記憶装置に格納する(勿
論、主記憶装置に格納する必要のない場合もあるが)よ
うにされる。
本発明の場合には、セレクタ8,9の出力段側からオー
バラップ・チェッカ3に入力されるように構成されてい
る。このために,汎用レジスタ群11にセットされる情報
が,バイパス・ルート12を介して第2オペランド・アド
レスの計算のためにアドレス・ジェネレータ1に供給さ
れる際に,セレクタ8の出力段からオーバラップ・チェ
ッカ3にも供給される。
〔作用〕
上述の如くパイプライン先行命令によって変更を受け
た場合に,汎用レジスタ群11にセットされるべき情報
が,バイパス・ルート12にも供給されて(即ち汎用レジ
スタ群11にセットされた上で当該汎用レジスタ群11から
読出されてくるのではなく、汎用レジスタ群11にセット
する際に直接的に)、第2フローのアドレス計算を行う
状態にあるアドレス・ジェネレータ1に供給されると共
に,併せてオーバラップ・チェッカ3にも供給される。
この結果,アドレス・ジェネレータ1に入力されて第
2オペランド・アドレスが計算されると同じ情報がオー
バラップ・チェッカ3にも入力され,第1オペランド・
アドレス(レジスタ2の内容)とのオーバラップ量を早
期に計算することができる。
〔実施例〕
本発明の実施例構成は第1図図示の原理構成図と実質
的に同じであるので,説明の重複をさけるが,第2図に
示す一実施例タイムチャートを参照しつつ説明をつづけ
る。
第1フローにおいて第1オペランド・アドレスがレジ
スタ2にセットされたとし,パイプライン先行命令によ
って上述の変更を受けた場合,その変更結果が第2図図
示のタイミングにおいて,第2オペランド・アドレス計
算に反映すべく,バイパス・ルート12を介してアドレス
・ジェネレータ1に供給され得るが,この同じタイミン
グにおいてオーバラップ・チェッカ3によるチェックを
行うことが可能となる。
即ち第4図と第2図とを対比すると明瞭となる如く第
2フローにおける中断が少なくて足りることとなる。
〔発明の効果〕
以上説明した如く,本発明によれば,アドレス・ジェ
ネレータにバイパスして情報を供給するバイパス・ルー
トをオーバラップ・チェッカのためにも共用するだけ
で,所期の目的を達成することができる。このために制
御態様もきわめて簡単化される。
【図面の簡単な説明】
第1図は本発明の原理構成図,第2図は本発明の一実施
例タイムチャート,第3図は本発明の前提とされた構成
例,第4図は第3図図示構成の場合のタイムチャートを
示す。 図中,1はアドレス・ジェネレータ,3はオーバラップ・チ
ェッカ,4はインデックス・レジスタ,5はベース・レジス
タ,6はデイスプレースメント・レジスタを表す。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭59−218567(JP,A) 特開 昭59−231652(JP,A) 特開 昭60−178539(JP,A) 特開 昭60−204036(JP,A) 特開 昭54−41641(JP,A)

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】オペランド・アドレスを計算するアドレス
    ・ジェネレータ(1)を有すると共に,当該アドレス・
    ジェネレータ(1)によって計算されたアドレスにもと
    づいて主記憶装置からオペランドを読出す手段と,当該
    読出されたオペランドにもとづいて演算を行う演算手段
    と,当該演算手段によって演算された結果の値を上記主
    記憶装置に格納する手段とを少なくともそなえ,命令レ
    ジスタにセットされた当該セット時点での命令にもとづ
    いて,上記主記憶装置をアクセスしつつ処理を進めるよ
    う構成されてなり, 第1オペランド・アドレスと第2オペランド・アドレス
    とのオーバラップ量を計算するオーバラップ・チェッカ
    (3)を有し, 少なくとも第2オペランドを読出して処理した結果を第
    1オペランド・アドレスに書込む命令を実行する機能を
    有するデータ処理装置において, パイプライン先行命令にもとづいて上記演算手段によっ
    て演算された結果のアドレス生成のために用いる値を,
    アドレス・ジェネレータ(1)が動作する当該時点での
    上記アドレス・ジェネレータ(1)の入力側に供給可能
    にするバイパス・ルートをそなえてなり, かつ,上記アドレス・ジェネレータ(1)の入力とし
    て,インデックス・レジスタ(4)の内容と上記バイパ
    ス・ルートからの内容とを第1のセレクタ(7)によっ
    て選択した結果,ベース・レジスタ(5)の内容と上記
    バイパス・ルートからの内容とを第2のセレクタ(8)
    によって選択した結果,およびディスプレースメント・
    レジスタ(6)の内容の3者が供給されるよう構成する
    と共に, 上記オーバラップ・チェッカ(3)の入力として,先に
    行ったアドレス・ジェネレータ(1)の出力,当該アド
    レス・ジェネレータ(1)に上記当該時点に入力される
    上記第2のセレクタによって選択した結果,および当該
    アドレス・ジェネレータ(1)に上記当該時点に入力さ
    れるディスプレースメント・レジスタ(6)の内容の3
    者が供給されるよう構成される ことを特徴とするアドレス・オーバラップ・チェック処
    理装置。
JP60236566A 1985-10-23 1985-10-23 アドレス・オーバラップ・チェック処理装置 Expired - Fee Related JPH0823820B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60236566A JPH0823820B2 (ja) 1985-10-23 1985-10-23 アドレス・オーバラップ・チェック処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60236566A JPH0823820B2 (ja) 1985-10-23 1985-10-23 アドレス・オーバラップ・チェック処理装置

Publications (2)

Publication Number Publication Date
JPS6297037A JPS6297037A (ja) 1987-05-06
JPH0823820B2 true JPH0823820B2 (ja) 1996-03-06

Family

ID=17002531

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60236566A Expired - Fee Related JPH0823820B2 (ja) 1985-10-23 1985-10-23 アドレス・オーバラップ・チェック処理装置

Country Status (1)

Country Link
JP (1) JPH0823820B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5488707A (en) * 1992-07-28 1996-01-30 International Business Machines Corporation Apparatus for predicting overlapped storage operands for move character

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59218567A (ja) * 1983-05-27 1984-12-08 Fujitsu Ltd アドレスオ−バラツプチエツク方式
JPS59231652A (ja) * 1983-06-13 1984-12-26 Hitachi Ltd メモリアクセス・オ−バラツプ検出方式
JPS60178539A (ja) * 1984-02-24 1985-09-12 Fujitsu Ltd 情報処理装置におけるバイパス制御方式
JPS60204036A (ja) * 1984-03-28 1985-10-15 Hitachi Ltd デ−タ処理装置

Also Published As

Publication number Publication date
JPS6297037A (ja) 1987-05-06

Similar Documents

Publication Publication Date Title
US6061783A (en) Method and apparatus for manipulation of bit fields directly in a memory source
US4507728A (en) Data processing system for parallel processing of different instructions
US5809274A (en) Purge control for ON-chip cache memory
US4771380A (en) Virtual vector registers for vector processing system
JPH0248931B2 (ja)
US5752273A (en) Apparatus and method for efficiently determining addresses for misaligned data stored in memory
JPH0414385B2 (ja)
JPH0412503B2 (ja)
JP3737755B2 (ja) レジスタウィンドウ方式によるレジスタファイル及びその制御方法
JPH0410108B2 (ja)
US20040044885A1 (en) Performing repeat string operations
JPH0823820B2 (ja) アドレス・オーバラップ・チェック処理装置
JP2716254B2 (ja) リストベクトル処理装置
JPH0222418B2 (ja)
JP3278441B2 (ja) ベクトル処理装置
JP2798492B2 (ja) リストベクトル処理装置
JPH07110769A (ja) Vliw型計算機
JP2716563B2 (ja) データ書込み制御方式
JPH0234058B2 (ja)
JP3124361B2 (ja) メモリデータロード装置
JPH05173778A (ja) データ処理装置
JPH01255933A (ja) 掃出し制御方式
JPS6120907B2 (ja)
JP2576589B2 (ja) 仮想記憶アクセス制御方式
JPH024011B2 (ja)

Legal Events

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