Nothing Special   »   [go: up one dir, main page]

JPS5987566A - メモリアクセス検出方式 - Google Patents

メモリアクセス検出方式

Info

Publication number
JPS5987566A
JPS5987566A JP57197495A JP19749582A JPS5987566A JP S5987566 A JPS5987566 A JP S5987566A JP 57197495 A JP57197495 A JP 57197495A JP 19749582 A JP19749582 A JP 19749582A JP S5987566 A JPS5987566 A JP S5987566A
Authority
JP
Japan
Prior art keywords
address
access
memory
entry
area
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
JP57197495A
Other languages
English (en)
Inventor
Kiyoshi Yada
矢田 潔
Shigeo Sawada
沢田 栄夫
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 JP57197495A priority Critical patent/JPS5987566A/ja
Priority to GB08329748A priority patent/GB2132797B/en
Priority to US06/550,199 priority patent/US4641277A/en
Priority to DE19833340956 priority patent/DE3340956A1/de
Publication of JPS5987566A publication Critical patent/JPS5987566A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/362Debugging of software
    • G06F11/3636Debugging of software by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、例えばプログラム事象記録を行lよう場合に
特に指定されたメモリ領域に対するメモリアクセスの検
出方式に関する。
〔従来技術〕
プログラムデバッグ手段としてプログラム事象記録(以
後これをP E I(、と略す)を行なうことが知られ
ており、このうちの1つとしてメモリ領域に関するPE
R,がある。これは、オア1図に示すように、PERの
対象となるメモリ領域を示す2つのアドレス(以後こf
tyPERアドレスと呼ぶ)とメモリへのアクセスアド
レスとの比較を行なうことにより実施し℃いる。PE几
Sは、PR几対象メモリ領域の開始アドレスを示し、P
EREは終了アドレスを示す。命令読み出し、又はデー
タ■込みによるアクセス時のメモ、アドレス(8A)が
PE几S、PEREで指定されたメモリ領域内に対する
アクセスであるかどうかを比較手段3でチェックし、領
域内であれば、プログラムへの割込みを発生し、この時
の命令アドレスや割込みの種類等が記録される。
従来メモリ領域に関するPH−Rをプログラムが指定す
ると、命令の読み出しまたはデータの書き込みの度にP
E几子アドレスアクセスアドレスとの比較を実施してい
る。しかし、この方法では、命令の読み出しまたはデー
タの書込みの度に比較動作を行なっているため、各メモ
リアクセスに多くの時間がかかり、演算処理動作が非常
に遅くなる。このため、メモリ領域に関するPERを用
いるデバッグ時間が増大する欠点を持っていた。
〔発明の目的〕
本発明の目的は、指定されたメモリ領域に対するメモリ
アクセスの検出を性能の低下なく実現することにある。
〔発明の概要〕
近年のデータ処理装置では、論理アドレス空間と実アド
レス空間との間のアドレス変換機能は必須であり、この
ため、アドレス変換テーブルの内容の一部を保持してお
くためのアドレス変換バッファ(以後これをTLBと略
す)が必ず装備されるよ5[なってきた。そこで本発明
は、このTLBがメモリアクセス時に常に参照されるこ
とに着目し、TLHの各エントリに、当該エントリに対
応するメモリ領域がアクセス検出対象領域を含むかどう
かを表わす識別情報を付加しておく。そして、メモリへ
のアクセス時、参照さ)1.たエントリに対応するメモ
リ領域がアクセス検出対象領域を含んでいることを前記
識別情報によって検出した時だけ、アクセスアドレスが
アクセス検出対象領域内にあるかとうかの検出ン行なう
ようにしたものである。
実施例 以下、本発明の一実施例を矛2..l’3.牙4図で説
明する。1・2図は、主メモリ(以下これをMSと略す
)4とl’ L Bloとの関係2示したものであり、
PI号140対象となるメモリ領域を仮VC,へ4S%
の斜鞭部とし、その開始アドレスはP E l(、S 
、終了アドレスgPEl七Eである。これらPER8,
PhREは論理アドレスで示される。一方アドレス変換
における変換単位(以後これをページと略す)は2にバ
イト又は4にバイト程度であり、T L B 5はM 
S 4の各ページに対応してエントリを有する。このエ
ントリは実アドレス部(以後これを几Aと略す)とこれ
に対応する論理アドレス部(以後これ’YLAと略ず)
とPEREットを含む。今P0. P、、 P、。
P3の各ページが図示するようにPE几対象領域と重な
ってそれを含んでいる場合、TLB 5は、Poに対応
するエントリのPE几ビットヲ10”。
Pl、 P、、 P、に対応するPEREットを1′1
”にしておく。そしてN84にアクセスする時にTLB
から出力されるPE几ピットが1″であれば、この時マ
イクロプログラムy!l−P E Rアドレス比較ルー
チンに分岐し、このルーチンで、アクセスしようとする
アドレスがPERE象メモリ領域の開始アドレスPEu
8と終了アドレスPE几Eの間に入っているかどうかを
判定する。入っていなければアクセスアドレスはP E
 R対象メモリ領域外であるので、そのままMS4のフ
ェッチまたはストアを続行する。入っていれば、PER
E象メモリ領域内であるので、この時はPEI(、割込
みフラグをセットし、その後MSのフェッチまたはスト
アを実行し、その後側込み処理にてプログラム事象の記
録をとる。
矛3図は、TLH′f8r:中心とする論理ブロック図
、矛4図はMSのアクセスを行なう場合のマイクロプロ
グラムのフローチャートである。矛3図において、7.
8.9.はM8アクセス用のアドレスレジスタであり、
これらのアドレスレジスタには、MSのアクセスに先立
って演算ユニッ)(ALU)6から論理アドレスがセッ
トされる。アドレスレジスタス8,8ハそれぞれ命令ア
ドレス(NIA)、オペランドアドレス(UPA)、そ
れ以外のアドレス(DMA )Yセントするために設け
られており、アドレスのビット長は24ビツト、アドレ
ス変換対象になるのは上位15ビツトとする。図中0内
はビット数を示す。
1’J8のアクセスに当たっては先ずアドレスレジスタ
の7.8.9.のうちの1つがセレクタ14で選択され
、その出力されたアドレスの一部でTLBloがアクセ
スされる。TLBloのカラム数が256個の場合、T
 L t+ioy、−アクセスするアドレスは8ピツト
であり、残りの5ピツトは比較回路11でTLBloが
ら読出されたLA部と、比較される。この比較が一致し
、1oから同時に読出されたカラムの有効性を示すVビ
ットが′1”であれば、矛4図のNTLBのテストが不
成立(N)となり、この場合、TLBloのRA部13
ビットが実アドレスレジスタ12のうちの上位K、AI
U6から力えられたアドレス24ピツトのうちの下位1
1ビツトがセットさノL1 この実アドレスレジスタ1
2tlCMSのアクセスアドレスが形成される。−力、
さらにTLBloから読出されたFEB、ビットがテス
トされ、これがonならアドレスレジスタ′18.ある
いは9から与えろilだアクセスアドレスはPERE象
メモリ領域を含まないから、そのまま実アドレスレジス
タ12の内容により、MSにアクセスが行なわれる。P
EIもビットが1”なら、力えもれたアクセスアドレス
は、PERE象メモリ領域内にある可能性があるので、
それがPERE象メモリ領域内かどうかを調べるため、
マイクロプログラムばPEREドレス比較ルーチン(牙
4図のB)に分岐し、アドレス比較回路(以後とnt、
3ACOMと略す)13の動作ン制御するこの時、AC
OM13はセレクタ14の出力アドレスとPEIもアド
レスと乞比較し、前者がP E几対象メモリ領域内にあ
ることを検出すると、P E R刷込みフラグ(図示せ
ス)ヲセットする。マイクロプログラムは、PIC几ア
ドレス比較ルーチンケ終ると実アドレスレジスタ12の
アドレスによりMSにアクセスを行なうよう制御する。
比較回路11において、不一致、あるいはVビットが0
”の場合は、矛3図のN T JJBのテストが成立(
Ylとなり、マイクロプログラムはアドレス変換ルーチ
ンに分岐する。このルーチンでは、MSに新たなページ
がロードされるとともに、この新たなページに対応した
エントリがMS内のアドレス変換テーブルから取出され
、それがTLBloに登録される。またさらに、この新
たなページがI) E )(、対象メモリ領域を含むか
どうかヲ調べろため、PEREドレス比較ルーチン(1
14図のA)も実行され、ACOM13の動作が制御さ
れる。この時、ACON13は新たに登録されたエント
リのI、AとPEREドレスとt比較し、新たなページ
がPE几対象メモリ領域を含んでいたら当該エントリの
PE几ビットな′1”にセットする。マイクロプログラ
ムは、PEREドレス比較ルーチンが終ると、TI、B
10の参照動作直前に戻される。
以上の実施例において、矛4図のへの部分のP Ell
、アドレス比較ルーチンが実行される確率aを考えてみ
る。この確率は、NTI、Bが成立する(η確率と等し
く、この確率はTLBの大きさにもよるが通常数チと低
くなっている。従ってaは低いことが判る。また牙4図
のBの部分のPEREドレス比較ルーチンが実行される
確率by、考えてみる。この確率は」・4図のCの部分
でPE几ビットが1”になる確率と等しい。
そもそもP E I:tの目的は、プログラムが特定領
域にジャンプした場合(命令読み出し)、あるいはある
特定領域を変更した場合(データ書み)を各々記録して
行くことにより、プログラムのデバッグを実行しようと
するものであり、そのPE几子アドレス指定する領域は
数にバイト程度と考えることが出来る。これば、全体の
M89間から考えれば、僅かな部分であり、P E I
tビットが1”に1.cる確率は低い。従ってbも低い
ことが判る。
以上から判るように、上記実施例によれば、メモリ領域
に関するP R1(、が指定された場合には命令の断出
しまたはデータの書込みの度にアドレス比較動作ケ実行
するように−rる従来技術に比べて、低い確率でしかア
ドレス比較動作を行なわないから、はとんどの場合のメ
モリアクセスはアドレス比較動作が不要となり、メモリ
領域に関するP E Rを性能の低下なく実現できる。
以上の実施例では、P ERアドレスを論理アドレスで
示す場合を示したが、実アドレスで示してもよい。この
場合、ACOM13に’l、エントリの作成時にはRA
、メモリアクセス時には実アドレスレジスタ12の内容
なPERアドレスと比較チェックすることになる。また
、AC(3M130入力側に切換スイッチを設け、論理
アドレス系。実アドレス系を適宜選択できるようにして
もよい。
また以上の実施例では、新たなエン) IJをTLBに
登録するのに伴ってアドレス比較動作を行ない、PE几
ビットを得ているが、必ずしもこのようにする必要はな
い。例えば、MS内のアドレス変換テーブルY作成ある
いは更新する時、またはPERアドレスが与えられた時
に、アドレス比較動作7行なつ℃おぎこのテーブル上で
予めセットしておいてもよい。このようにすれば、新た
なエントリをTl、Hに登録する際、アドレス比較動作
を行なうことなく、前記テーブルからP E ttビッ
トが得られる。このようにすればアドレス比較動作を必
要とするのは、牙4図において、NTLBが千成立回)
でP E R=1が成立α)の場合のみとなり、メモリ
アクセスを高速にできる確率をさらに茜めることができ
る。
〔発明の効果〕
本発明によれば、TI、Hの参照されたエントリに対応
するメモリ領域がアクセス検出対象領峻を含んでいる時
だけ、アクセスアドレスがアクセス検出対象領域内にあ
るかどうかの検出動作を行なうようにしたので、この検
出動作の起こる頻度が非常に低減し、性能の低下なく、
指定されたメモリ領域に対するアクセスの検出が可能と
なる。
【図面の簡単な説明】
オ・1図は、従来のメモリ領域に関するプログラム事象
記録検出論理のブロック図、 】・2図は、主メモリとアドレス変換バッファの関係7
示す図1 、l−3図は、T L H7中心とする論理ブロック図
、 矛4図は、MSアクセス時のマイクロプログラムのフロ
ーチャートである。 PER,8・・・開始アドレス、PBRE・・・終了ア
ドレス、3・・・比較手段、4・・・主メモリ(1’J
s)5.10・・・アドレス変換バッファ(TLB)、
6・・・演算ユニット(ALU)、7〜8・・・アドレ
スレジスタ、11川比収回路、12・・・実アドレスレ
ジスタ(SA几)、13・・・アドレス比較回路(AC
OM ) 代理人弁理士 薄 1)利−′:幸:°点オ 1 口 第3口

Claims (1)

  1. 【特許請求の範囲】 1、 矛1のメモリ空間におけるアドレスと矛2のメモ
    リ空間におけるアドレスとの対応関係を表わすアドレス
    変換テーブルの一部を保持するアドレス変換バッファを
    有し、メモリアクセス毎に当該アドレス変換バッファの
    エントリな参照するよ’)vcしたデータ処Ff装置に
    おいて、前記アドレス変換バッファの各エントリに、当
    該エントリに対応するメモリ領域がアクセス検出対象領
    域を含むかどうかン表わす識別情報を付加しておぎ、メ
    モリをアクセスするに際し、参照された前記アドレス変
    換バッファのエントリに付加された前記識別情報が前記
    アクセス検出対象領域を含むことt表わしている時だけ
    、アクセスアドレスが前記アクセス検出対象領域に入る
    かどうかを゛検出するようにしたことを特徴とするメモ
    リアクセス検出方式。 2、特許請求の範囲】・1項記載のメモリアクセス検出
    方式において、前記アクセス検出対象領域は、当該領域
    にアクセスが行なわれた場合にプログラム事象記録を行
    なうこととした領域であることを特徴とするメモリアク
    セス検出方式。 5 特許請求の範囲牙1項あるいは矛2項記載のメモリ
    アクセス検出方式において、前記アクセス検出対象領域
    は、論理アドレスで示されることを特徴とするメモリー
    アクセス検出力式。
JP57197495A 1982-11-12 1982-11-12 メモリアクセス検出方式 Pending JPS5987566A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP57197495A JPS5987566A (ja) 1982-11-12 1982-11-12 メモリアクセス検出方式
GB08329748A GB2132797B (en) 1982-11-12 1983-11-08 System for detecting access to storage
US06/550,199 US4641277A (en) 1982-11-12 1983-11-09 System for detecting access to storage
DE19833340956 DE3340956A1 (de) 1982-11-12 1983-11-11 Verfahren und vorrichtung zur erfassung von speicherzugriffen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57197495A JPS5987566A (ja) 1982-11-12 1982-11-12 メモリアクセス検出方式

Publications (1)

Publication Number Publication Date
JPS5987566A true JPS5987566A (ja) 1984-05-21

Family

ID=16375417

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57197495A Pending JPS5987566A (ja) 1982-11-12 1982-11-12 メモリアクセス検出方式

Country Status (4)

Country Link
US (1) US4641277A (ja)
JP (1) JPS5987566A (ja)
DE (1) DE3340956A1 (ja)
GB (1) GB2132797B (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0652511B2 (ja) * 1984-12-14 1994-07-06 株式会社日立製作所 情報処理装置のアドレス変換方式
US5233700A (en) * 1987-03-03 1993-08-03 Nec Corporation Address translation device with an address translation buffer loaded with presence bits
JP2580587B2 (ja) * 1987-03-03 1997-02-12 日本電気株式会社 アドレス変換バッファ
FR2617997A1 (fr) * 1987-07-07 1989-01-13 Mitsubishi Electric Corp Micro-ordinateur a memoire programmable, pour le controle du nombre des temps d'ecriture dans la memoire
US5265227A (en) * 1989-11-14 1993-11-23 Intel Corporation Parallel protection checking in an address translation look-aside buffer
DE10340861A1 (de) * 2003-09-04 2005-04-07 Infineon Technologies Ag Prozessorschaltung und Verfahren zum Zuordnen eines Logikchips zu einem Speicherchip
US7685381B2 (en) 2007-03-01 2010-03-23 International Business Machines Corporation Employing a data structure of readily accessible units of memory to facilitate memory access
US7899663B2 (en) 2007-03-30 2011-03-01 International Business Machines Corporation Providing memory consistency in an emulated processing environment
US8090933B2 (en) * 2008-02-12 2012-01-03 International Business Machines Corporation Methods computer program products and systems for unifying program event recording for branches and stores in the same dataflow

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1410631A (en) * 1972-01-26 1975-10-22 Plessey Co Ltd Data processing system interrupt arrangements
US3815101A (en) * 1972-11-08 1974-06-04 Sperry Rand Corp Processor state and storage limits register auto-switch
US4048671A (en) * 1976-06-30 1977-09-13 Ibm Corporation Address match for data processing system with virtual addressing
DE2837241C2 (de) * 1978-08-25 1982-05-06 Siemens AG, 1000 Berlin und 8000 München Einrichtung zum Sichern von Daten gegen unberechtigten Zugriff
US4430705A (en) * 1980-05-23 1984-02-07 International Business Machines Corp. Authorization mechanism for establishing addressability to information in another address space

Also Published As

Publication number Publication date
GB2132797A (en) 1984-07-11
GB2132797B (en) 1986-02-19
GB8329748D0 (en) 1983-12-14
DE3340956A1 (de) 1984-05-24
US4641277A (en) 1987-02-03
DE3340956C2 (ja) 1987-11-26

Similar Documents

Publication Publication Date Title
US4483003A (en) Fast parity checking in cache tag memory
US4733350A (en) Improved purge arrangement for an address translation control system
EP0213843A2 (en) Digital processor control
US4937738A (en) Data processing system which selectively bypasses a cache memory in fetching information based upon bit information of an instruction
JPS63503177A (ja) 命令先取制御装置
JPS5987566A (ja) メモリアクセス検出方式
US5197134A (en) Pipeline processor for performing write instruction by referring to cache memory search result obtained during idling state of operand reading cycle
JPS6298441A (ja) 情報処理装置による記憶管理機構
JPH0552539B2 (ja)
JPH02126340A (ja) データ処理システム
CN108038064B (zh) 一种PairBlock擦除出错的处理方法及装置
JPS60134937A (ja) アドレス拡張装置
JPH083801B2 (ja) 度数を含まない関数型言語コ−ドを用いる2進有向グラフとしてストアされたプログラムを評価する縮小プロセッサのためのシステムアロケ−タ
JPS61283937A (ja) 命令トレ−ス方式
JPS59158450A (ja) プログラムテスト装置
JPH0385636A (ja) 命令先行制御装置
JPH0248733A (ja) 情報処理装置
EP0628909A2 (en) Program trace circuit and program trace method
JPS589452B2 (ja) フア−ムウエアホウシキ
JPS58155587A (ja) 処理装置
JPH04175825A (ja) 分岐履歴テーブルを備えた情報処理装置
JPS6212545B2 (ja)
JPH03119424A (ja) 情報処理方式及び装置
JPS6286442A (ja) デ−タ処理装置
JPS59163653A (ja) デバツグ装置