JPH02193235A - Detection of bus access exception - Google Patents
Detection of bus access exceptionInfo
- Publication number
- JPH02193235A JPH02193235A JP1011954A JP1195489A JPH02193235A JP H02193235 A JPH02193235 A JP H02193235A JP 1011954 A JP1011954 A JP 1011954A JP 1195489 A JP1195489 A JP 1195489A JP H02193235 A JPH02193235 A JP H02193235A
- Authority
- JP
- Japan
- Prior art keywords
- bus
- word
- cache
- access
- data
- 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
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Debugging And Monitoring (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
【発明の詳細な説明】
〔概要〕
主記憶のデータをバッファリングして中央処理装置に供
給するキャッシュを有する計算機システムのバスアクセ
ス例外検出方法に関し、命令実行の効率が向上し、ハー
ドウェア構成が簡単となり、中央処理装置の負担を軽減
することを目的とし、
中央処理装置のアクセスするアクセス対象がキャッシュ
に存在しないとき主記憶装置から該アクセス対象を含む
複数ワード構成のブロックをワード単位で該キャッシュ
に転送し、このうらアクセス対象だけを該中央処理装置
に転送し、かつ該主記憶装置からキャッシュへの転送時
にバスエラーが発生したときバスアクセス例外を検出し
て該中央処理装置で例外処理を行なう計算機システムの
バスアクセス例外検出方法において、該アクセス対象を
含むワードの該主記憶装置からキャッシュへの転送時に
のみ該バスエラー発生があればバスアクセス例外を検出
し、該アクセス対象を含まないワードの該主記憶装置か
ら4.ヤッシュへの転送時に該バスエラーの発生があっ
てもバスアクセス例外を検出しないよう構成する。[Detailed Description of the Invention] [Summary] A bus access exception detection method for a computer system having a cache that buffers data in main memory and supplies it to a central processing unit improves the efficiency of instruction execution and improves the hardware configuration. In order to simplify the process and reduce the burden on the central processing unit, when an access target to be accessed by the central processing unit does not exist in the cache, a multi-word block containing the access target is transferred word by word from the main memory to the cache. , only the access target is transferred to the central processing unit, and when a bus error occurs during transfer from the main memory to the cache, a bus access exception is detected and the central processing unit handles the exception. In a bus access exception detection method for a computer system, a bus access exception is detected if the bus error occurs only when a word containing the access target is transferred from the main memory to the cache, and a bus access exception is detected when the word that does not include the access target is transferred from the main memory to the cache. 4. The configuration is such that a bus access exception is not detected even if the bus error occurs during transfer to Yash.
本発明はバスアクセス例外検出方法に関し、主記憶のデ
ータをバッフ7リングして中央処理装置に供給するキャ
ッシュを有する計算機システムのバスアクセス例外検出
方法に関する。The present invention relates to a bus access exception detection method, and more particularly to a bus access exception detection method for a computer system having a cache that buffers data in main memory and supplies it to a central processing unit.
中央処理装置(CPU)と、主記憶と、主記憶のデータ
をバッフ7リングするキャッシュを有する計算機システ
ムがある。このようなシステムではキャッシュにCPU
で使用するデータが格納されてないとき主記憶からキャ
ッシュへブロック単位でデータ転送を行なう。There is a computer system that has a central processing unit (CPU), a main memory, and a cache that buffers data in the main memory. In such systems, the cache uses CPU
When data to be used is not stored, data is transferred from main memory to cache in blocks.
(従来の技術)
キャッシュを使用するシス゛アムの場合、通常のアクセ
スデータのサイズが例えば最大4バイトであるのに対し
、主記憶からキャッシュへのデータ転送単位つまりブロ
ックは例えば16バイトとアクセスデータサイズより大
きい。主記憶とキャッシュとの間バスが例えば4バイト
と上記ブロックより小さい場合、バスを用いて4バイト
のデータ転送を4回繰り返す。通常この転送はアクセス
したデータを1回目に転送し、その後ブロックの残りの
データを転送する。(Prior art) In the case of a system that uses a cache, the size of normal access data is, for example, a maximum of 4 bytes, whereas the unit of data transfer from main memory to the cache, or block, is, for example, 16 bytes, which is smaller than the access data size. big. If the bus between the main memory and the cache is, for example, 4 bytes, which is smaller than the above block, data transfer of 4 bytes is repeated four times using the bus. Normally, in this transfer, the accessed data is transferred first, and then the remaining data of the block is transferred.
従来は上記4回のデータ転送のどの転送であってもバス
エラーが発生するとCPUは例外処理を行なっている。Conventionally, if a bus error occurs during any of the four data transfers described above, the CPU performs exception processing.
しかし、アクセスしたデータの後に転送される残りのデ
ータの転送時にバスエラーが発生しても、この残りのデ
ータをキャッシュに登録さえしなければ、CPLJは処
理を継続して行なっても何ら支障はなく、かえって例外
処理によりCPUの命令実行が不必要に中断され命令実
行の効率が悪化するという問題があった。However, even if a bus error occurs during the transfer of the remaining data that is transferred after the accessed data, as long as this remaining data is not registered in the cache, CPLJ will continue processing without any problem. Instead, there is a problem in that the execution of instructions by the CPU is unnecessarily interrupted due to exception handling, which deteriorates the efficiency of instruction execution.
また、主記憶から4.ヤッシュへのデータ転送はCPU
の指令によりキャッシュシステムが行ない、CPUはア
クセスしたデータが得られた後は別の処理を行なってい
るため、上記残りのデータの転送時にバスエラーが発生
しても、このときプログラムカウンタはバスエラーの原
因であるキャッシュシステムへの指令を指してはおらず
、キャッシュへのデータ転送が全て終了するまでプログ
ラムカウンタの値を別途記憶しておかなければエラー原
因を知ることはできずハードウェア構成が複雑でCPL
Iの負担が増えるという問題があった。Also, 4. from the main memory. Data transfer to Yash is done by CPU
The cache system performs this in accordance with the instructions given by the cache system, and the CPU performs other processing after obtaining the accessed data. Therefore, even if a bus error occurs during the transfer of the remaining data, the program counter will indicate the bus error. It does not refer to the instruction to the cache system that causes the error, and the hardware configuration is complicated because the cause of the error cannot be known unless the program counter value is stored separately until all data transfer to the cache is completed. CPL
There was a problem that the burden on I would increase.
本発明は上記の点に鑑みなされたもので、命令実行の効
率が向上し、ハードウェア構成が簡単となり、CPUの
負担を軽減するバスアクセス例外検出方法を提供するこ
とを目的とする。The present invention has been made in view of the above points, and it is an object of the present invention to provide a bus access exception detection method that improves the efficiency of instruction execution, simplifies the hardware configuration, and reduces the burden on the CPU.
本発明のバスアクセス例外検出方法は、中央処理装置(
11)のアクセスするアクセス対象がキャッシュ(27
)に存在しないとき主記憶装置(15)からアクセス対
象を含む複数ワード構成のブロックをワード単位でキャ
ッシュ(27)に転送し、このうちアクセス対象だけを
中央処理装置(11)に転送し、かつ主記憶装置(15
)からキャッシュ(27)への転送時にバスエラーが発
生したときバスアクセス例外を検出して中央処理装置(
11)で例外処理を行なう計算機システムのバスアクセ
ス例外検出方法において、アクセス対象を含むワードの
主記憶装置(15)からキャッシュ(27)への転送時
にのみ該バスエラーの発生があればバスアクセス例外を
検出し、アクセス対象を含まないワードの主記憶装置(
15)から、1ヤツシユ(27)への転送時に該バスエ
ラーの発生があってもバスアクセス例外を検出しない。The bus access exception detection method of the present invention includes a central processing unit (
The access target of 11) is the cache (27
), transfers a multi-word block containing the access target from the main memory (15) word by word to the cache (27), transfers only the access target among them to the central processing unit (11), and Main memory (15
) to the cache (27), a bus access exception is detected and the central processing unit (
In the bus access exception detection method for a computer system that performs exception handling in 11), if the bus error occurs only when the word containing the access target is transferred from the main storage device (15) to the cache (27), a bus access exception is detected. is detected, and the main memory of the word that does not contain the access target (
Even if the bus error occurs during transfer from file 15) to file 1 (27), no bus access exception is detected.
(作用)
本発明方法ではバスエラーが発生してもアクセス対象を
含むワードのデータ転送時にのみ、バスアクセス例外検
出が行なわれるので、中央処理装置(11)ではプログ
ラムの実行に最低限必要な例外処理だけが行なわれ、不
必要な例外処理が起動されずに命令実行の効率が向上し
キャッシュ(27)への1ブロツクの転送が終了するま
でプログラムカウンタの値を記憶する必要がなくハード
ウェア構成が簡単となり、命令及び実行ユニット11の
負担が軽減される。(Function) In the method of the present invention, even if a bus error occurs, bus access exception detection is performed only during data transfer of the word containing the access target. Only the processing is performed, unnecessary exception handling is not started, improving the efficiency of instruction execution, and there is no need to store the value of the program counter until the transfer of one block to the cache (27) is completed, resulting in a hardware configuration. The load on the instruction and execution unit 11 is reduced.
第2図は本発明方法を適用した計算機システムの構成図
を示す。FIG. 2 shows a configuration diagram of a computer system to which the method of the present invention is applied.
同図中、マイクロプロセッサ10はCPLJとしての命
令及び実行ユニット(IU/ELI)11とキャッシュ
システムとしての記憶ユニット(SU)12と、バスユ
ニット(BU)13とより構成されている。バスユニッ
ト13はCPL110外部のバス14と接続され、バス
14には主記憶装置15及び入出力回路等の周辺袋@1
6が接続されている。In the figure, a microprocessor 10 is composed of an instruction and execution unit (IU/ELI) 11 as a CPLJ, a storage unit (SU) 12 as a cache system, and a bus unit (BU) 13. The bus unit 13 is connected to a bus 14 outside the CPL 110, and the bus 14 includes a main storage device 15 and peripheral bags such as input/output circuits @1.
6 is connected.
第3図は記憶ユニットのブロック図を示す。FIG. 3 shows a block diagram of the storage unit.
同図中、端子20.21,22.23.24には夫々命
令及び実行ユニット11よりアドレス、サイズ、リード
要求、ライト要求、ライトデータが入来する。アドレス
はラッチ回路25にラッチされてクロスチエツク回路2
6.キャッジ127に供給されると共に端子28よりバ
スユニット13に供給される。サイズ(バイト数)はラ
ッチ回路29にラッチされクロスチエツク回路26に供
給される。リード要求、ライト要求は夫々ラッチ回路3
1.32にラッチされバスアクセス制御回路33に供給
される。またライトデータはセレクタ34に供給される
と共にライトデータラッチ回路35にラッチされ端子3
6よりバスユニット13に供給される。In the figure, addresses, sizes, read requests, write requests, and write data are input from the instruction and execution unit 11 to terminals 20.21, 22.23.24, respectively. The address is latched in the latch circuit 25 and cross-checked to the cross-check circuit 2.
6. The signal is supplied to the carriage 127 and also to the bus unit 13 from the terminal 28. The size (number of bytes) is latched by the latch circuit 29 and supplied to the cross check circuit 26. Read request and write request are each made by latch circuit 3.
1.32 and supplied to the bus access control circuit 33. In addition, the write data is supplied to the selector 34 and latched by the write data latch circuit 35 to the terminal 3.
6 to the bus unit 13.
クロスチエツク回路26はアドレスとサイズからワード
クロス、ブロッククロス夫々の有無をチエツクする。ワ
ードクロスはアクセスするデータがワード(−4バイト
)の境界をまたいでいる場合であり、ブロック(=16
バイト)の境界をまたいでいる場合である。クロスチエ
ツク回路26はブロッククロスがあると端子40より命
令及び実行ユニットに通知し、ワードクロスがあるとデ
ータ転送回路41に通知して、ブロック内のアクセスす
るバイト数であるブロック内サイズをキャッシュ27及
びデータ転送制御回路41に知らせる。The cross check circuit 26 checks the presence or absence of word crosses and block crosses from the address and size. Word crossing is when the data to be accessed straddles word (-4 byte) boundaries, and blocks (=16 bytes) are accessed.
This is the case when the data straddles a byte) boundary. The cross check circuit 26 notifies the instruction and execution unit from a terminal 40 when there is a block cross, and notifies the data transfer circuit 41 when there is a word cross, and stores the block size, which is the number of bytes to be accessed in the block, in the cache 27. and informs the data transfer control circuit 41.
データ転送制御回路41はブロック内サイズを端子42
よりバスユニット13に供給し、またバスユニット13
より1ワードのデータ転送が終る毎に端子43を介して
終了通知を供給され、命令及び実行ユニット11よりの
アクセス要求が終了したかどうかを判別して、未完のと
きバス1ラ−検出回路45に指示を行ない、終了すると
端子46より命令及び実行ユニット11にデータ転送終
了通知を行なう。また各ワードの転送時にキャッシュ2
7及びリードデータラッチ回路47夫々の制御を行なう
。The data transfer control circuit 41 transfers the block size to a terminal 42.
to the bus unit 13, and also to the bus unit 13.
Every time one word of data transfer is completed, a completion notification is supplied via the terminal 43, and it is determined whether the instruction and access request from the execution unit 11 has been completed, and if it is not completed, the bus 1 error detection circuit 45 When the instruction is completed, the instruction and execution unit 11 is notified of the completion of data transfer from the terminal 46. Also, when transferring each word, cache 2
7 and read data latch circuit 47 respectively.
バスアクセス制御回路33は命令及び実行ユニット11
よりのアクセス要求を受付け、キャッシュ27にデータ
がない場合端子48よりバスユニット13ヘアクセスコ
マンドを出し、バスエラー検出回路45にリード中かラ
イト中かを知らせ、バスユニット13より端子49を介
してコマンド終了通知を転送データのキャッシュ27へ
の登録を指示する。バスエラー検出回路45はバスユニ
ット13から端子51を介してバスエラー信号を受取る
とデータ転送未完のとき端子52より命令及び実行ユニ
ット11にバスエラー通知して例外処理の起動を指示す
る。Bus access control circuit 33 includes instruction and execution unit 11
If there is no data in the cache 27, an access command is issued to the bus unit 13 from the terminal 48, and the bus error detection circuit 45 is informed whether reading or writing is in progress. The command completion notification is instructed to register the transferred data in the cache 27. When the bus error detection circuit 45 receives a bus error signal from the bus unit 13 via the terminal 51, it notifies the instruction and execution unit 11 of the bus error from the terminal 52 when the data transfer is not completed, and instructs the activation of exception processing.
バスユニット13より端子55を介して入来するリード
データはリードデータラッチ回路47及びセレクタ34
に供給され、セレクタ34で選択されたデータはキャッ
シュ27に書込まれる1゜キャッシュ27は例えば2に
バイトの容量を有し、4バイトを1ワードとし、4ワー
ドを1ブロツクとしてブロック化されている。なおデー
タの転送単位は4バイトである。Read data coming from the bus unit 13 via the terminal 55 is transferred to the read data latch circuit 47 and the selector 34.
The data selected by the selector 34 is written into the cache 27. The cache 27 has a capacity of, for example, 2 bytes, and is divided into blocks with 4 bytes as 1 word and 4 words as 1 block. There is. Note that the data transfer unit is 4 bytes.
キャッシュ27から読出されたデータ及びり一ドデータ
ラッチ回路47よりのデータゝはセレクタ56に供給さ
れ、ここで選択されたデータが端子57より命令及び実
行ユニット57に供給される。The data read from the cache 27 and the data from the single data latch circuit 47 are supplied to the selector 56, and the data selected here is supplied from the terminal 57 to the instruction and execution unit 57.
第1図<A)〜(C)は本発明方法を適用した記憶ユニ
ット12のリード処理のノロ−チャートを示す。FIGS. 1A to 1C show flowcharts of read processing of the storage unit 12 to which the method of the present invention is applied.
第1図(A)中、まず記憶ユニット12は命令及び実行
ユニット(ILJ/EtJ)11よりリード要求、アド
レスΔ、サイズSを受取り(ステップ60)、アドレス
A及びサイズSよりワードクロス、ブロッククロスの有
無をヂエックする(ステップ61)。ステップ62でブ
ロッククロスの有無を判別し、ブロッククロスがあった
とぎにのみこれを命令及び実行ユニット11に通知しく
ステップ63)、サイズSをブロック内サイズに変更す
る(ステップ64)。In FIG. 1(A), the storage unit 12 first receives a read request, address Δ, and size S from the instruction and execution unit (ILJ/EtJ) 11 (step 60), and from the address A and size S, word cross and block cross. The presence or absence of the information is checked (step 61). In step 62, it is determined whether or not there is a block cross, and only when there is a block cross, this is notified to the instruction and execution unit 11 (step 63), and the size S is changed to the size within the block (step 64).
この後、アドレスAによりキャッシュ27を検索しくス
テップ65)、キャッシュにアクセスするデータがあっ
た(ヒツト)かどうかを判別する(ステップ66)。ヒ
ツトした場合にはキャッシュ27から読出したデータを
命令及び実行ユニット11に供給し、データ転送終了を
通知しくステップ67)、処理を終了する。ヒツトしな
ければアドレスA1サイズS1リードアクセスのアクセ
スコマンドをバスユニットに送る(ステップ6B)。Thereafter, the cache 27 is searched using the address A (step 65), and it is determined whether there is data to be accessed (hit) in the cache (step 66). If it is a hit, the data read from the cache 27 is supplied to the instruction and execution unit 11, and the end of the data transfer is notified (step 67), and the process ends. If not, an access command for address A1 size S1 read access is sent to the bus unit (step 6B).
次に第1図(B)のステップ69でバスユニット13か
らの第1ワードのワード転送終了を受信してリードデー
タをリードデータラッチ回路47及びキャッシュ27に
ラッチし、この後バスユニット13からのバスエラー信
号の有無を判別する(ステップ71)。第1ワードの転
送でバスエラーがあると命令及び実行ユニット11にバ
スエラー通知を行ないくステップ72)、処理を終了す
1す
る。バスエラーがなければワードクロスの有無を判別す
る(ステップ73)。Next, in step 69 of FIG. 1(B), the end of word transfer of the first word from the bus unit 13 is received, the read data is latched in the read data latch circuit 47 and the cache 27, and then the read data is latched in the read data latch circuit 47 and the cache 27. The presence or absence of a bus error signal is determined (step 71). If there is a bus error in the transfer of the first word, a bus error notification is sent to the instruction and execution unit 11 (step 72), and the process is terminated (1). If there is no bus error, it is determined whether there is a word cross (step 73).
ワードクロスがあれば、バスユニット13より第2ワー
ドのワード転送終了を受信して、バスユニット13より
のリードデータとリードデータラップ回路47内のり−
ドデータからアクセス要求のあったデータをマージして
命令及び実行ユニット11に転送し、これと共にバスユ
ニット13よりのリードデータをキャッシュ27にラッ
チし、命令及び実行ユニット11にデータ転送終了を通
知する(ステップ74)。この後パスコ、ニット13か
らのバスエラー信号の有無を判別しくステップ75)、
バスエラーがあると命令及び実行ユニット11にバスエ
ラー通知を行なって(ステップ76)、処理を終了する
。If there is a word cross, the end of word transfer of the second word is received from the bus unit 13, and the read data from the bus unit 13 and the link in the read data wrap circuit 47 are transferred.
merges the data requested for access from the read data and transfers it to the instruction and execution unit 11, latches the read data from the bus unit 13 in the cache 27, and notifies the instruction and execution unit 11 that the data transfer is completed ( Step 74). After this, Pasco determines whether there is a bus error signal from the unit 13 (step 75),
If there is a bus error, the instruction and execution unit 11 is notified of the bus error (step 76), and the process ends.
ステップ73でワードクロスが無いと判別されると、リ
ードデータラッチ回路47のリードデータを命令及び実
行ユニット11に転送し、命令及び実行]−ニット11
にデータ転送終了を通知する(ステップ77)。次に第
2ワードの転送終了を受信してバスユニット13よりの
リードデータをキャッシュ27にラッチしくステップ7
8)、バスユニット13からのバスエラー信号の有無を
判別しくステップ79)、バスエラーがあっても命令及
び実行ユニット11に通知することなく処理を終了する
。If it is determined in step 73 that there is no word cross, the read data of the read data latch circuit 47 is transferred to the instruction and execution unit 11, and the instruction and execution]-nit 11
The end of data transfer is notified to (step 77). Step 7
8), the presence or absence of a bus error signal from the bus unit 13 is determined; step 79); even if there is a bus error, the process is terminated without notifying the instruction and execution unit 11;
ステップ75又は79でバスエラーが無いと判別される
と第1図(C)のステップ81に進み、第3ワードのワ
ード転送終了を受信してバスユニット13よりのリード
データをキャッシュ27にラッチする。この後、ステッ
プ83でバスエラー信号があると判別されると命令及び
実行ユニット11へのバスエラー通知を行なわずに処理
を終了する。If it is determined in step 75 or 79 that there is no bus error, the process advances to step 81 in FIG. . Thereafter, if it is determined in step 83 that there is a bus error signal, the process is terminated without notifying the instruction and execution unit 11 of the bus error.
ここで、バスエラー無いと判別されるとステップ83に
進み、第4ワードのワード転送終了を受信してバスユニ
ット13よりのリードデータをキャッシュ27にラッチ
する。この後、ステップ84でバスエラー信号があると
判別されると命令及び実行ユニット11へのバスエラー
通知を行なわずに処理を終了する。バスエラーが無い場
合には、スーアップ85でキャッシュ27にラッチして
いた4ワードのデータをアドレスAのデータとしてタグ
を付しキャッシュ27に登録して処理を終了する。Here, if it is determined that there is no bus error, the process proceeds to step 83, where the end of word transfer of the fourth word is received and the read data from the bus unit 13 is latched into the cache 27. Thereafter, if it is determined in step 84 that there is a bus error signal, the process is terminated without notifying the instruction and execution unit 11 of the bus error. If there is no bus error, the 4-word data latched in the cache 27 by the upload 85 is tagged as data at address A and registered in the cache 27, and the process ends.
ここで、第4図(A)に示す1ブロツクのバイト(0)
〜(F)がバイト(0)〜(3)、<4)〜(7)、(
8)〜(B)、(C)〜(F)夫々の4バイトでワード
を構成しており、梨地のバイト(5)、(6)がアクセ
スデータであるときワードクロスが無(、第1ワードを
バイト(4)〜(7)、第2ワードをバイト(8)〜(
B)、第3ワードをバイト(C)〜(F)、第4ワード
をバイト(0)〜(3)として■・−■の順に記憶ユニ
ット12へのデータ転送が行なわれる。このとき、第2
〜第3ワードでバスエラーがあっても命令及び実行ユニ
ット11にバスエラー通知はされない。Here, one block of bytes (0) shown in FIG. 4(A)
~ (F) is byte (0) ~ (3), <4) ~ (7), (
8) ~ (B), (C) ~ (F) 4 bytes each constitute a word, and when satin bytes (5) and (6) are access data, there is no word cross (, 1st Word bytes (4) to (7), second word bytes (8) to (
B), the third word is bytes (C) to (F), and the fourth word is bytes (0) to (3), and data is transferred to the storage unit 12 in the order of . At this time, the second
~ Even if there is a bus error in the third word, the instruction and execution unit 11 is not notified of the bus error.
同図(B)に示す如く、アクセスデータがバイト(7)
〜(A)でワードクロスが有る場合には、第1ワードを
バイト(4)〜(7)、第2ワードをバイト(8)〜(
B)としてデータ転送が行なわれ、リードデータラッチ
回路47でバイト(7)〜(A)がマージされて命令及
び実行ユニット11に供給され、その後第3ワード(バ
イト(C)〜(F))、第49−ド(バイト(0)〜(
3))のデータ転送が行なわれる。このとき、第3.第
4ワードでバスエラーがあっても命令及び実行ユニット
11にバスエラー通知はされない。As shown in the same figure (B), the access data is byte (7)
~(A) If there is a word cross, the first word is byte (4)~(7), the second word is byte (8)~(
Data transfer is performed as B), bytes (7) to (A) are merged in the read data latch circuit 47 and supplied to the instruction and execution unit 11, and then the third word (bytes (C) to (F)) , 49th code (byte (0) ~ (
3)) Data transfer is performed. At this time, the third. Even if there is a bus error in the fourth word, the instruction and execution unit 11 is not notified of the bus error.
また同図(C)に示す如く、アクセスデータが第1ブロ
ツクのバイト(E)、(F)及び第2ブロツクのバイト
(10)、(11)でブロッククロスが有る場合には第
1ブロツクのバイト(C)〜(F)を第1ワードとし■
〜■の順に第19−ドル第4ワードのデータ転送が行な
われ、ブロッククロスの通知を受けた命令及び実行ユニ
ット11より再度アクセス要求が行なわれ、これによっ
て第2ブロツクのバイト(10)〜(13)を第1ワー
ドとし■〜■の順に第19−ド〜第4ワードのデータ転
送が行なわれる。このとき、第1ブロックの第2〜第4
ワード及び第2ブロツクの第2〜第4ワードでバスエラ
ーがあっても命令及び実行ユニット11にバスエラーは
通知はされない。In addition, as shown in the same figure (C), if the access data has a block cross in bytes (E) and (F) of the first block and bytes (10) and (11) of the second block, the access data of the first block is Bytes (C) to (F) are the first word.■
The data transfer of the 19th - dollar 4th word is performed in the order of ~■, and the instruction and execution unit 11 that received the notification of the block cross makes an access request again, and as a result, the bytes (10) ~ ( 13) is the first word, and data transfer of the 19th to 4th words is performed in the order of ■ to ■. At this time, the second to fourth blocks of the first block
Even if there is a bus error in the word and the second to fourth words of the second block, the instruction and execution unit 11 is not notified of the bus error.
このように、アクセスの直接の対象となったデータ以外
のデータ転送ではバスエラー信号があっても命令及び実
行ユニット11にバスエラー通知がなされないため、命
令及び実行ユニット11ではプログラムの実行からみて
最低限必要な例外処理のみが行なわれ、不必要な例外処
理が起動されず命令実行の効率が向上する。また、アク
セス対象のデータが命令及び実行ユニット11に転送さ
れた後命令及び実行ユニット11はプログラムカウンタ
をインクリメントするため、キャッシュへの1ブロツク
のデータ転送が全て終了するまでプログラムカウンタの
値を記憶する必要がなくハードウェア構成が簡単となり
、CPUの負担が軽減される。In this way, even if there is a bus error signal in data transfer other than the data that is directly accessed, the instruction and execution unit 11 is not notified of the bus error, so the instruction and execution unit 11 does not receive a bus error notification from the perspective of program execution. Only the minimum necessary exception handling is performed, unnecessary exception handling is not activated, and the efficiency of instruction execution is improved. Furthermore, after the data to be accessed is transferred to the instruction and execution unit 11, the instruction and execution unit 11 increments the program counter, so the value of the program counter is stored until all data transfer of one block to the cache is completed. This simplifies the hardware configuration and reduces the burden on the CPU.
(発明の効果)
上述の如く、本発明のバスアクセス例外検出方法によれ
ば、中央処理装置の命令実行の効率が向上し、かつハー
ドウェア構成が簡単となり、中央処理装置の負担を軽減
でき、実用上きわめて有用である。(Effects of the Invention) As described above, according to the bus access exception detection method of the present invention, the efficiency of instruction execution of the central processing unit is improved, the hardware configuration is simplified, and the burden on the central processing unit can be reduced. It is extremely useful in practice.
第1は本発明方法を適用した記憶ユニットのリード処理
の70−チャート、
第2図は本発明方法を適用した計算機システムの構成図
、
第3図は第2図の記憶ユニットのブロック図、第4図は
本発明方法を説明するための図である。
図において、
10はマイクロプロセッサ、
11は命令及び実行ユニット(中央処理装置)、12は
記憶ユニット、
13はバスユニット、
14はバス、
15は主記憶装置、
27はキャッシュ、
60〜85はステップ
を丞す。1 is a 70-chart of read processing of a storage unit to which the method of the present invention is applied; FIG. 2 is a configuration diagram of a computer system to which the method of the present invention is applied; FIG. 3 is a block diagram of the storage unit in FIG. FIG. 4 is a diagram for explaining the method of the present invention. In the figure, 10 is a microprocessor, 11 is an instruction and execution unit (central processing unit), 12 is a storage unit, 13 is a bus unit, 14 is a bus, 15 is a main storage device, 27 is a cache, and 60 to 85 are steps. I'm in charge.
Claims (1)
ャッシュ(27)に存在しないとき主記憶装置(15)
から該アクセス対象を含む複数ワード構成のブロックを
ワード単位で該キャッシュ(27)に転送し、このうち
アクセス対象だけを該中央処理装置(11)に転送し、
かつ該主記憶装置(15)からキャッシュ(27)への
転送時にバスエラーが発生したときバスアクセス例外を
検出して該中央処理装置(11)で例外処理を行なう計
算機システムのバスアクセス例外検出方法において、 該アクセス対象を含むワードの該主記憶装置(15)か
らキャッシュ(27)への転送時にのみ該バスエラーの
発生があればバスアクセス例外を検出し、 該アクセス対象を含まないワードの該主記憶装置(15
)からキャッシュ(27)への転送時に該バスエラーの
発生があつてもバスアクセス例外を検出しないことを特
徴とするバスアクセス例外検出方法。[Claims] When the access target to be accessed by the central processing unit (11) does not exist in the cache (27), the main storage device (15)
A block having a plurality of words including the access target is transferred word by word to the cache (27), and only the access target among them is transferred to the central processing unit (11),
and a bus access exception detection method for a computer system, which detects a bus access exception when a bus error occurs during transfer from the main storage device (15) to the cache (27), and performs exception handling in the central processing unit (11). In this case, if the bus error occurs only when the word including the access target is transferred from the main storage device (15) to the cache (27), a bus access exception is detected, and the target of the word that does not include the access target is detected. Main memory (15
) to the cache (27), even if the bus error occurs, the bus access exception is not detected.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1011954A JPH02193235A (en) | 1989-01-23 | 1989-01-23 | Detection of bus access exception |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1011954A JPH02193235A (en) | 1989-01-23 | 1989-01-23 | Detection of bus access exception |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH02193235A true JPH02193235A (en) | 1990-07-30 |
Family
ID=11792017
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1011954A Pending JPH02193235A (en) | 1989-01-23 | 1989-01-23 | Detection of bus access exception |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH02193235A (en) |
-
1989
- 1989-01-23 JP JP1011954A patent/JPH02193235A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CA1124888A (en) | Integrated multilevel storage hierarchy for a data processing system with improved channel to memory write capability | |
| JPS58212694A (en) | Memory system | |
| JPH0581935B2 (en) | ||
| JPS6324428A (en) | Cache memory | |
| JPH0532775B2 (en) | ||
| US5987570A (en) | Performing overlapping burst memory accesses and interleaved memory accesses on cache misses | |
| JPH0410102B2 (en) | ||
| US4737908A (en) | Buffer memory control system | |
| JPS6319058A (en) | Memory device | |
| JPH07234819A (en) | Cache memory | |
| JPH01125644A (en) | Data transfer equipment | |
| JPS60701B2 (en) | data processing equipment | |
| JPH01231145A (en) | Information processor | |
| JP3221409B2 (en) | Cache control system, readout method therefor, and recording medium recording control program therefor | |
| JPS6240736B2 (en) | ||
| JPH0376501B2 (en) | ||
| JPS6319857Y2 (en) | ||
| JPH02297235A (en) | Memory data protecting circuit | |
| JP3299147B2 (en) | Cache control circuit | |
| JPH0415496B2 (en) | ||
| JPS6319856Y2 (en) | ||
| JPS5842546B2 (en) | Store control method | |
| JPH02259945A (en) | Storing processing system | |
| JPH0685154B2 (en) | Intermediate buffer control method | |
| JPH04125747A (en) | Cache memory controller |