JPS6068442A - Data processor - Google Patents

Data processor

Info

Publication number
JPS6068442A
JPS6068442A JP59147772A JP14777284A JPS6068442A JP S6068442 A JPS6068442 A JP S6068442A JP 59147772 A JP59147772 A JP 59147772A JP 14777284 A JP14777284 A JP 14777284A JP S6068442 A JPS6068442 A JP S6068442A
Authority
JP
Japan
Prior art keywords
instruction
data
address
storage means
unit
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
JP59147772A
Other languages
Japanese (ja)
Other versions
JPH0247774B2 (en
Inventor
Masahito Saito
将人 齋藤
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.)
NEC Corp
Original Assignee
NEC Corp
Nippon Electric 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP59147772A priority Critical patent/JPS6068442A/en
Publication of JPS6068442A publication Critical patent/JPS6068442A/en
Publication of JPH0247774B2 publication Critical patent/JPH0247774B2/ja
Granted legal-status Critical Current

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00—Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02—Addressing or allocation; Relocation
    • G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To improve the performance of a CPU by converting the instruction and data logical addresses of approximately equal capacity into real addresses, and applying the result of this converstion to a prescribed circuit. CONSTITUTION:The instruction and data logical addresses are sent to instruction and data logical registers 4011 and 4012 to be applied with data address conversions are supplied to instruction and data real address registers 5011 and 5012, respectively. Then the output of the register 5011 is set to an instruction buffer 5021, and the output of the buffer 5021 is supplied to an arithmetic controller via an instruction local register 5031. While the output of the register 5012 is sent to a data buffer 5022, and the output of the buffer 5022 is supplied to an instruction decoding operand address device via a data buffer 5032.

Description

【発明の詳細な説明】 本発明はデータ処理装置に関する。[Detailed description of the invention] The present invention relates to a data processing device.

高処理能力を実現する大聖中央処理装置においては、論
理アドレスを主記憶装置の笑アドレスに変換するアドレ
ス変換ユニットと主記憶装置内の一部情報を格納してい
るノくラフアユニットとを備えているが、従来、中央処
理装置の制御のノくイブライン化が進むにつれ、命令と
オペランドデータとの読出し要求がアドレス変換ユニッ
トと/くラフアユニットとにおいて競合をおこし中火処
理装置の性能向上の障害となっている。
The Daisei Central Processing Unit, which achieves high processing power, is equipped with an address conversion unit that converts logical addresses into addresses in the main memory, and a nokura unit that stores some information in the main memory. However, as the control of central processing units has become increasingly automated, read requests for instructions and operand data have caused competition between the address translation unit and the processor unit, making it difficult to improve the performance of medium-temperature processing units. has become an obstacle.

本発明の目的は従来技術と同等なノ(ソファのミスヒツ
ト率を有しかつ中央処理装置の性能向上を達成できるデ
ータ処理装置を提供することにある。
SUMMARY OF THE INVENTION An object of the present invention is to provide a data processing device that has a mishit rate equivalent to that of the prior art and can improve the performance of a central processing unit.

本発明の装置は、命令およびデータ全記憶する記憶手段
と、 この記憶手段の記憶内容全貌み出す複数の銃出し手段と
、 前記記憶手段に記憶され光命令の一部の写しを格納する
命令格納手段と、 この命令格納手段の格納容量と同一かほぼ同一の格納容
量を有し前記記憶手段に記憶はれたデータの一部の写し
を格納するデータ格納手段と。
The device of the present invention includes a storage means for storing all commands and data, a plurality of gun ejection means for extracting the entire contents of the storage means, and an instruction storage means for storing a copy of a part of the optical command stored in the storage means. means; and data storage means having a storage capacity the same as or substantially the same as the storage capacity of the instruction storage means and storing a copy of a portion of the data stored in the storage means.

前記複数の読出し手段のうち1つの読出し手段から命令
の論理アドレスが与えられたとき該論理アドレスを前記
記憶手段の実アドレスに変換し変換結果を前記命令格納
手段に与える命令アドレス変換手段と、 前記複数の読出し手段のうち1つの読出し手段からデー
タの論理アドレスが与えられたとき該論理アドレスを前
記記憶手段の実アドレスに変換し変換結果を前記データ
格納手段に与えるデータアドレス変換手段とを含むこと
を特徴とする。
instruction address converting means, when a logical address of an instruction is given from one of the plurality of reading means, converts the logical address into a real address of the storage means and provides the conversion result to the instruction storage means; and data address converting means for converting the logical address into a real address of the storage means when a logical address of data is given from one of the plurality of reading means and providing the conversion result to the data storage means. It is characterized by

第1図は、従来のデータ処理装置の一例を示す図である
。命令読出制御ユニット1は、命令の主記憶上の格納ア
ドレスを論理アドレス(以下命令論理アドレス)の形で
信号線工4を介してアドレス変換ユニット4に送出する
。該ユニット4は命令論理アドレスを主記憶ユニット6
上の実際のアドレス(Ji下下命子アドレスK変換した
あとで、このアドレスをバッファユニ、ト5に信号線4
5を介し不送出する。もし5アドレス変換のために必要
な情報が前記ユニット4に存在しなければ信号線46を
介して前記ユニット6から前記必要な情報の読出しが要
求され、該要求に応答して信号線64を介して前記ユニ
ット4に前記必要な情報が与えられ、この結果、アドレ
ス変換が行なわれる。
FIG. 1 is a diagram showing an example of a conventional data processing device. The instruction read control unit 1 sends the storage address of the instruction on the main memory in the form of a logical address (hereinafter referred to as an instruction logical address) to the address conversion unit 4 via the signal wirework 4. The unit 4 stores the instruction logical address in the main memory unit 6.
After converting the upper actual address (J lower lower address K), transfer this address to buffer unit 5 and signal line 4.
Not sent via 5. If the information necessary for 5 address conversion does not exist in the unit 4, a request is made to read out the necessary information from the unit 6 via the signal line 46, and in response to the request, the information is read out via the signal line 64. The necessary information is given to the unit 4, and as a result, address translation is performed.

これとともにアドレス変換に必要な情報はアドレス変換
ユニット4に格納される。
Along with this, information necessary for address translation is stored in the address translation unit 4.

バッファユニット5には、主記憶ユニット6内にある情
報の一部の写しが該情報の格納されている主記憶上の笑
アドレスがわかる形で格納されている。該ユニ、ト5は
信号線45を介して送られてきた命令実アドレスに対応
する情報が前記ユニット5にあれば(ヒツト)これを読
出し、信号線52を介して命令解読オペランドアドレス
生成ユニット2に送る。対応する情報がなければ(ミス
ヒツト)前記ユニット5は、信号線56を介して主記憶
ユニット6に盆令災アドレスを送り、主記憶ユニット6
は当該アドレスの情報を含む一連の情報を読出して信号
線65を介してバッファユニット5に送出すると同時に
信号線62を介して前記ユニット2に当該アドレスの情
報を転送する。前記ユニット5には前記ユニット6から
転送された一連の情報をそれらの主記憶上のアドレスが
わかる形で格納される。前記ユニット5の情報格納容量
は前記ユニット6のそれよシ小さく、前記ユニット5に
格納されている情報は前記ユニット6の一部分の写しと
なる。前記ユニット5に格納されている情報は、前記ユ
ニット6から新しく情報が転送されてきたが、既に前記
ユニット5に情報が満杯になっているとき、または、既
に格納されている前記ユニット5情報の一部または全部
を無効にする必要があるとき、システムで個別に規定さ
れた法則で前記ユニット5の情報の一部または全部が前
記ユニット5から消される。前記命令解読オペランドア
ドレス生成ユニット2は、信号線52または62を介し
て与えられた命令を解読し、命令で指定されたオペラン
ドアドレス(以下データ論理アドレス)を生成し、生成
されたアドレスを信号線24を介して前記ユニ、ト4に
送る。命令の場合と同様、に前記ユニット4はデータ論
理アドレスに変換し信号線45を介して前記ユニット5
に送り、前記ユニット5は該当情報が前記ユニット5内
にあればそれを信号線53を介して演算制御ユニット3
に送り、なければ前記ユニット6に信号線56を介して
データ実アドレスを送り、前記ユニット6は該当情報を
含む一連の情報を読み出し信号線65を介して前記ユニ
ット5に送ると同時に信号線63を介して当該情報を演
算制御ユニット3に送る。
The buffer unit 5 stores a copy of a portion of the information in the main memory unit 6 in such a manner that the address on the main memory where the information is stored can be identified. If the unit 5 has information corresponding to the actual address of the instruction sent via the signal line 45, it reads this information and sends it to the instruction decoding operand address generation unit 2 via the signal line 52. send to If there is no corresponding information (mishit), the unit 5 sends the Bonreiji address to the main memory unit 6 via the signal line 56, and the main memory unit 6
reads out a series of information including the information at the address and sends it to the buffer unit 5 via the signal line 65, and at the same time transfers the information at the address to the unit 2 via the signal line 62. The unit 5 stores a series of information transferred from the unit 6 in a form whose addresses on the main memory are known. The information storage capacity of the unit 5 is smaller than that of the unit 6, and the information stored in the unit 5 is a partial copy of the unit 6. The information stored in the unit 5 is changed when new information is transferred from the unit 6 but the unit 5 is already full of information, or when the information stored in the unit 5 is When a part or all of the information needs to be invalidated, part or all of the information of the unit 5 is erased from the unit 5 according to rules individually defined in the system. The instruction decoding operand address generation unit 2 decodes the instruction given via the signal line 52 or 62, generates an operand address (hereinafter referred to as data logical address) specified by the instruction, and transfers the generated address to the signal line. 24 to the unit 4. As in the case of instructions, said unit 4 converts the data into a logical address and sends it to said unit 5 via signal line 45.
If the relevant information is in the unit 5, the unit 5 sends it to the arithmetic and control unit 3 via the signal line 53.
If not, the actual data address is sent to the unit 6 via the signal line 56, and the unit 6 reads out a series of information including the corresponding information and sends it to the unit 5 via the signal line 65. The information is sent to the arithmetic and control unit 3 via.

該ユニット3は、信号線23を介して前記ユニ。The unit 3 is connected to the unit via a signal line 23.

ト2から送られてきた命令情報と信号線53または63
から送られてきた情報をもとに演算を行う。
Command information sent from port 2 and signal line 53 or 63
Perform calculations based on the information sent from.

前記ユニット3でさらに主記憶内の情報が必要になりた
とき、信号線34を介してデータ論理アドレスを前記ユ
ニ、ト4に送シ、前記と同一の過程をへて、信号線53
または63を介して前記ユニット5または6からの情報
を入手する。
When the unit 3 further requires information in the main memory, the data logical address is sent to the unit 4 via the signal line 34, and then sent to the signal line 53 through the same process as described above.
Or obtain information from the unit 5 or 6 via 63.

第2図は、従来技術の一例を示す第1図の構成をさらに
詳細にした一例を示す図である。二重線でかこまれた箱
はレジスタを意味しこれらはクロックパルスに同期して
動作する。点線の箱は第1図の各ユニット1,2,3,
4,5および6に相当する。
FIG. 2 is a diagram showing a more detailed example of the configuration of FIG. 1, which shows an example of the prior art. Boxes surrounded by double lines represent registers, which operate in synchronization with clock pulses. The dotted line boxes represent each unit 1, 2, 3, etc. in Figure 1.
Corresponds to 4, 5 and 6.

命令読出制御ユニット1は、命令論理アドレス金収容す
る命令アドレスレジスタ101i有1.、命令解読オペ
ランドアドレス生成ユニットは命令を収容する命令レジ
スタ201と、該命令を解読する命令解読手段202と
、命令で指定されたインデックスを格納しているインデ
ックスメモリ203と、ペースアドレス修飾のための修
飾情報を格納しているベースアドレスメモリ204と、
キャリセイブアダー等を中心とした第1のオペランド生
成手段205と、その結果を一時蓄積するレジスタ20
6と、データ論理アドレスを最終的に生成するアダーを
中心とした第2のオペランド生成手段207とを有する
。また、アドレス変換ユニット4は命令とデータの論理
アドレスとを一時蓄積する論理アドレスレジスタ401
と、実効的にアソシアティブメモリの機能を実現したア
ドレス変換手段402とを有し、バッファユニ、ト5は
命令とデータの冥アドレスとを一時蓄積する実アドレス
レジスタ501と、実効的にアソシアティブメモリの機
能を実現したバ、、ノアメモリ502と、その出力レジ
スタであるローカルレジスタ503とを有する。情報の
流れは命令アドレスレジスタ101→論理アドンスレジ
スタ4旧→芙アドレスレジスタ501→ローカルレジス
タ503→命令レジスタ201→レジスタ206→論理
アドレスレジスタ401→・・・・・・となり、この情
報の流れが1クロツクパルス毎に進むと論理アドレスレ
ジスタ401に対する信号線14と24とを介して与え
られる信号の競合が生ずるため、この情報の流れ全1ク
ロ、7クパルス毎に進ませるパイプライン制御ができな
い。そこで本発明の第1の特徴は、第3図に示すように
、第2図におけるアドレス変換ユニット4とバッファユ
ニット5とを命令用とデータ用とに分割することにより
、信号線14および24を介して与えられる情報の競合
を排除し、ノくイブライン制御による情報の流れが1ク
ロツクツ(ルス毎に進むことを可能にしたことにある。
The instruction read control unit 1 has an instruction address register 101i containing an instruction logical address. , the instruction decoding operand address generation unit includes an instruction register 201 for storing instructions, an instruction decoding means 202 for decoding the instructions, an index memory 203 for storing an index specified by the instruction, and a memory for pace address modification. a base address memory 204 storing modification information;
A first operand generation means 205 mainly including a carry save adder, etc., and a register 20 that temporarily stores the result.
6, and a second operand generation means 207 mainly consisting of an adder that ultimately generates a data logical address. The address conversion unit 4 also includes a logical address register 401 that temporarily stores logical addresses of instructions and data.
The buffer unit 5 has a real address register 501 that temporarily stores instructions and data addresses, and an address translation means 402 that effectively realizes the function of an associative memory. It has a memory 502 that realizes the functions, and a local register 503 that is an output register thereof. The flow of information is as follows: instruction address register 101 → logical add register 4 old → address register 501 → local register 503 → instruction register 201 → register 206 → logical address register 401 →... If the clock pulse advances every one clock pulse, there will be a conflict between the signals applied to the logical address register 401 via the signal lines 14 and 24, so pipeline control that advances the flow of information every one clock pulse or every seven clock pulses is not possible. Therefore, the first feature of the present invention is that, as shown in FIG. 3, the address conversion unit 4 and buffer unit 5 in FIG. 2 are divided into one for instructions and one for data. The purpose of this technology is to eliminate conflicts between the information provided through the network, and to enable the flow of information to proceed one clock at a time through line control.

更に本発明の第2の特徴は命令用とデータ用のバッファ
ユニットを等容量にすることにある。すなわち、第1の
実施列に用いた第3図の命令アドレス変換手段4021
 、データアドレス変換手段4022は、それぞれ、命
令とオペランドの論理アドレスとを実アドレスに変換す
る回路(図示せず)と変換情報がないときは、信号線4
62および461のそれぞれを介して主記憶二二、トロ
にアクセスし、信号線642および641を介して変換
に必要な情報をうる回路(図示せず)とを有する。第3
図で4011゜4012.5011.5012はそれぞ
れ命令用論理アドレスレジスタ、データ用実アドレスレ
ジスタ。
A second feature of the present invention is that the buffer units for instructions and data have the same capacity. That is, the instruction address conversion means 4021 of FIG. 3 used in the first execution column
, data address conversion means 4022, a circuit (not shown) that converts the logical address of the instruction and the operand into a real address, and a signal line 4 when there is no conversion information.
It has a circuit (not shown) that accesses the main memory 22 and the main memory 22 and 22 through signal lines 62 and 461, respectively, and obtains information necessary for conversion through signal lines 642 and 641. Third
In the figure, 4011, 4012, 5011, and 5012 are a logical address register for instructions and a real address register for data, respectively.

命令用実アドレスレジスタ、データ用実アドレスレジス
タである。
These are a real address register for instructions and a real address register for data.

命令バッファ5021は命令を格納しているため、信号
線14を介して命令論理アドレスが与えられると、命令
バッファ5021に当該情報があれば、命令ローカルレ
ジスタ5031にその情報を格納することができる。ま
た、データバッファ5022は命令ハラフープ5021
と等容量で、かつオペランド情報を格納しているため信
号線24を介してオペランドの論理アドレスが与えられ
ると、データノ(ツファ5022に当該情報があればデ
ータローカルレジスタ5032にその情報を格納するこ
とができる。
Since the instruction buffer 5021 stores instructions, when an instruction logical address is given via the signal line 14, if the instruction buffer 5021 has the relevant information, the information can be stored in the instruction local register 5031. Further, the data buffer 5022 is connected to the instruction Hara hoop 5021.
Since the operand information is stored in the data local register 5032, if the logical address of the operand is given via the signal line 24, the data register 5022 stores the information in the data local register 5032. I can do it.

命令バッファ5021またはデータバッファ5022に
当該情報がなければ、信号線562または561を介し
て主記憶ユニット6に各実アドレスを送り、該当情報ま
たはそれを含む一連の情報全信号線652または651
から得る。このとき、第2図に示すように、主記憶ユニ
ット6から信号線652または651以外の情報転送路
を介して前記ユニ、ト2および3に該当情報が送られて
もよい。さらに、信号勝561および562、信号線6
51および652は同一情報転送路であってもよい。一
般に信号線14から与えられる論理アドレスは命令語を
示すが、信号線24から与えられる論理アドレスはデー
タ語のみならず命令語を指す場合がある。例えば、ブラ
ンチ命令でのオペランドアドレスがその例である。この
ように、オペランドアドレスであってもそれが命令語を
示していることがわかっているときには、第4図に例示
するように判別手段403によシ信号線24からの情報
を論理命令アドレスレジスタ4011に送ることもでき
る。但し、この場合、信号線14からの情報と競合を生
ずるが毎タロツクパルスの度ではなく頻度は少ない。こ
こで、信号線561、562.651.652.461
 、462.641および642に接続はれている記憶
手段は主記憶である必要はない。例えば、第5図に示す
ようにバッファユニット5と主記憶ユニット6との間に
おかれた2次バッフ7ユニツト7であってもよい。
If there is no relevant information in the instruction buffer 5021 or data buffer 5022, each real address is sent to the main memory unit 6 via the signal line 562 or 561, and the relevant information or a series of information including it is sent to the entire signal line 652 or 651.
Get from. At this time, as shown in FIG. 2, the relevant information may be sent from the main memory unit 6 to the units 2 and 3 via an information transfer path other than the signal line 652 or 651. Furthermore, signal lines 561 and 562, signal line 6
51 and 652 may be the same information transfer path. Generally, the logical address given from the signal line 14 indicates a command word, but the logical address given from the signal line 24 may indicate not only a data word but also a command word. For example, an operand address in a branch instruction is an example. In this way, even if it is an operand address, when it is known that it indicates an instruction word, the information from the signal line 24 is transferred to the logical instruction address register by the discriminating means 403 as illustrated in FIG. You can also send it to 4011. However, in this case, although there is a conflict with the information from the signal line 14, the frequency is small and not every tarlock pulse. Here, signal lines 561, 562.651.652.461
, 462.641 and 642 need not be the main memory. For example, as shown in FIG. 5, it may be a secondary buffer 7 unit 7 placed between the buffer unit 5 and the main memory unit 6.

一般に、アドレス変換ユニット4は、第3図の命令用で
例示すると第6図のように、セグメントまたはページの
先頭論理アドレスフィールド4011Ae402により
主記憶上の笑アドレスに変換シ、レジスタ5011の5
011Aフイールドに移されそのセグメントまたはペー
ジ内の一つの特定アドレスは、その先頭アドレスからの
偏差(以下ディスプレースメント)ヲ示すフィールド4
011Bで指定されこのフィールドは無変換でレジスタ
5011のフィールド5011Bに移送される。命令群
およびデータ群はセグメント化またはページ化されてい
る。従って、セグメントtたはページが切換ったとき論
理アドレスから実アドレスへの変換を行い、この実アド
レスを記i;(t L、ておけば、次にセグメントまた
はページが切換るまでディスプレースメント4012を
与えるだけで夷アドレスを知ることができる。従って、
第7図に示す本発明の第2の実施列のように、論理アド
レスレジスタ401およびアドレス変換手段402は一
却であるが、夾アドレスレジスタ、5011および50
12゜バッファ5021および5022およびローカル
レジスタ5031および5032は、命令用とデータ用
とのそれぞれを有する、命令とテークとのそれぞれの論
理アドレスがセグメントまたはページの切換えが行われ
たか否かを知るセグメント/ページ切換え検出手段40
7と406とに応答して信号線14および24の情報を
セレクタ405および404で切換える。セグメントま
たはページ切換えがないときは、信号線1.42と24
2のそれぞれを介して命令実ア2、ドレスレジスタ50
11とデータ実アドレスレジスタ5012とにディスプ
レースメントを送シ、セグメントまたはベージが切換え
られたときは信号線141および241のそれぞれを介
して命令又はデータの論理セグメント/ベージアドレス
が論理アトL/スレジスタ401に送られたあとで変換
手段402を介して実セグメント/ベージアドレスに変
換された命令又はデータの災アドレスが実アドレスレジ
スタ5011又は5012に収容される。これと同時に
信号線142又は242のそれぞれからディスプレース
メントが送られる。この場合信号線14および24から
同時に情報が転送されてくると競合が生ずるが、その頻
度はごく少ない。
In general, the address conversion unit 4 converts the instruction shown in FIG. 3 into an address on the main memory using the start logical address field 4011Ae402 of the segment or page, as shown in FIG.
One specific address within the segment or page that is moved to field 011A is field 4, which indicates the deviation from the first address (hereinafter referred to as displacement).
011B, and this field is transferred to field 5011B of register 5011 without conversion. Instructions and data are segmented or paged. Therefore, when the segment t or page switches, the logical address is converted to a real address, and if this real address is written i;(t L, then the displacement 4012 is used until the next segment or page switches. You can know the address just by giving .Therefore,
As in the second embodiment of the present invention shown in FIG.
12.degree. buffers 5021 and 5022 and local registers 5031 and 5032 each have one for instructions and one for data, and the respective logical addresses of instructions and takes are used to store segments/takes for knowing whether a segment or page switching has occurred. Page switching detection means 40
7 and 406, the information on signal lines 14 and 24 is switched by selectors 405 and 404. When there is no segment or page change, signal lines 1.42 and 24
2 through each of the instruction real address register 2 and the address register 50.
11 and the data real address register 5012. When the segment or page is switched, the logical segment/page address of the instruction or data is sent to the logical address register 401 via signal lines 141 and 241, respectively. The error address of the instruction or data, which is sent to the real address register 5011 or 5012 and then converted into a real segment/page address via the converting means 402, is stored in the real address register 5011 or 5012. At the same time, displacement is sent from each of the signal lines 142 or 242. In this case, if information is simultaneously transferred from the signal lines 14 and 24, contention will occur, but this will occur very rarely.

第7図の場合、信号線24からの情報であっても命令語
の読出しとして扱うときは、第8図のように、第1図お
よび第2の分配手段5041および5042で、アドレ
ス変換手段402から信号線45を介して与えられる出
力を信号線452を介して、信号線242を介して与え
られる信号を信号線゛243を介して、それぞれ命令実
アドレスレジスタに与えることができる。この場合と第
4図の手段をもった第3図の動作ではオペランドアドレ
スが命令を指していたので命令バッファ5o21にアク
セスしたが、読み出された情報を演算制御ユニット3で
データとして扱ったときには命令ローカルレジスタ50
31の出力53を第9図のように、第3の分配手段50
42で前記ユニッ)31C送ることができる。
In the case of FIG. 7, when handling even information from the signal line 24 as reading a command word, as shown in FIG. An output provided via signal line 45 can be provided to the instruction real address register via signal line 452, and a signal provided via signal line 242 may be provided via signal line 243, respectively. In this case and the operation shown in FIG. 3 with the means shown in FIG. 4, the operand address pointed to an instruction, so the instruction buffer 5o21 was accessed. Instruction local register 50
31 to the third distribution means 50 as shown in FIG.
42 can be sent to the unit) 31C.

前記ユニット3からアドレス変換ユニット4、バッファ
ユニット5へのアクセスにおいても前記命令読出制御ユ
ニット1と命令解読オペランドアドレス生成ユニット2
とでの競合と同じように、前記ユニット1および2から
のアクセスと競合するが、前記ユニット3からの主記憶
読出しは、10進系命令が主で頻度からみて前記ユニッ
ト1および2のアクセスによる競合程深刻ではない。前
記ユニット3からのアクセスは、本発明によるユニット
2からのアクセスと同じ扱いでよい。
When accessing from the unit 3 to the address translation unit 4 and buffer unit 5, the instruction read control unit 1 and the instruction decoding operand address generation unit 2 are also used.
In the same way as the contention with the above unit 1 and 2, there is a conflict with the access from the unit 1 and 2, but the main memory read from the unit 3 is mainly a decimal type instruction, and from the perspective of the frequency, it is due to the access from the unit 1 and 2. It's not as serious as the competition. Access from unit 3 may be handled in the same way as access from unit 2 according to the present invention.

命令バッファ5021およびデータバッファ5022の
有効性は、それの容量、制御方法に依存する他、プログ
ラムの特性(動的アドレスの変化等)にも左右される。
The effectiveness of the instruction buffer 5021 and data buffer 5022 depends not only on their capacity and control method, but also on the characteristics of the program (dynamic address changes, etc.).

バッフアユニラ)5021に1968年IBM社から発
行された刊行物rIBM・システム・ジャーナル(I 
BM SystemsJournal ) Vol 、
 7 No 、 I Jの第15頁から第21頁のJ 
−S 、 Liptayによる論文「ストラクチュアル
・アスペクト・オブ・ザ・システム360・モデル85
−II@ザ帝キャッシュ(5tructualaspe
cts of the System / 360 M
odel 85 IIThe cache ) J g
己載のIBMシステム360のキャッシュの使用を想定
して但し完全アソシアティブ方式で命令とデータとを同
−片ヤッシュに収容する場合(以下共用型キャッシュ)
および命令用とデータ用とを分けたキャッジ−(以下分
割型キャッシュ)のミスヒツト率を解析すると、共用型
キャッジ−を命令用とデータ用とに等分割したときプロ
グラム特性の広汎な変化に対して、分割型キャッジ−の
ミスヒツト率は、共用型キャッシュのそれと同等以下で
あり、ごくまれなケースで増加しても10〜20%程度
であることが期待される。
A publication published by IBM in 1968 in 5021 (I
BM Systems Journal) Vol.
7 No., I J, pages 15 to 21, J
- Paper by S. Liptay “Structural Aspects of the System 360 Model 85
-II @ The Emperor Cache (5tructualaspe
cts of the System / 360M
odel 85 II The cache ) J g
Assuming the use of the cache of a self-installed IBM system 360, however, when instructions and data are stored in the same cache in a fully associative manner (hereinafter referred to as a shared cache)
Analyzing the miss rate of a cache with separate caches for instructions and data (hereinafter referred to as a split cache), it was found that when a shared cache was divided equally into instructions and data, it was The miss rate of the split type cache is equal to or lower than that of the shared type cache, and even if it increases in very rare cases, it is expected to be about 10 to 20%.

キャッシュのミスヒツト率の増加が中央処理装置の平均
命令実行時間の増大に寄与する割合は(キャッジ−のミ
スヒツト率の増加率)X(平均命令実行時間に占める実
効メモリアクセス時間の比率)でありミスヒツト率10
〜20%の増加は、平均命令実行時間にすると数パーセ
ントの増加に縮少される。一方、キャッジ−は16キロ
バイトの容量程度でも一般に中央処理装置のクロックパ
ルス間隔を決めるクロックパルス間論理遅延時間の最も
長いところであり、キャッシュの容量が増加すると益々
その傾向が強くなる。これは、キャッシュのメモリアレ
ーの物理的拡が9による信号伝播体での信号遅延と、メ
モリアレーを駆動するドライバの数の増大により駆動ゲ
ートの増大による信号遅延と、メモリアレーの出力を集
め運択するゲート回路の増大による信号遅延が主たるも
のである。
The rate at which an increase in cache miss rate contributes to an increase in the average instruction execution time of the central processing unit is (increase rate of cache miss rate) x (ratio of effective memory access time to average instruction execution time), and rate 10
The ~20% increase is reduced to a few percent increase in average instruction execution time. On the other hand, even with a cache capacity of 16 kilobytes, the cache generally has the longest inter-clock pulse logic delay time that determines the clock pulse interval of the central processing unit, and this tendency becomes stronger as the cache capacity increases. This is because the physical expansion of the memory array of the cache causes signal delays in the signal propagation medium, signal delays due to the increase in the number of drive gates due to the increase in the number of drivers driving the memory array, and signal delays due to the increase in the number of drive gates due to the increase in the number of drivers that drive the memory array. The main problem is signal delay due to an increase in the number of gate circuits to be selected.

従って、一つのキャッシュを2等分割すると、キャッシ
ュでのクロックパルス間論理遅延時間は短縮されるが等
容量に分割しないとその効果が最大にならない。・、こ
のことから、分割型キャッシュでのミスヒツト率増加に
よシ平均命令央行時間が数パーセント増加してもキャッ
シュを等分割することによるクロックパルス時間の短縮
で光分補いうる。
Therefore, if one cache is divided into two equal parts, the logic delay time between clock pulses in the cache will be reduced, but the effect will not be maximized unless the cache is divided into equal capacities.・From this, even if the average instruction central row time increases by several percent due to an increase in the miss rate in a divided cache, it can be compensated for by shortening the clock pulse time by dividing the cache equally.

以上の実施例では、本発明全命令バッファとデータバッ
ファとを等容量にするように構成したが、はぼ等容量に
するように構成しても処理装置の性能を向上させること
ができる。このほぼ等容量とは命令バッファとデータバ
ッファとの差が255A以内を意味する。
In the above embodiments, all the instruction buffers and data buffers of the present invention are configured to have the same capacity, but even if they are configured to have approximately the same capacity, the performance of the processing device can be improved. This approximately equal capacity means that the difference between the instruction buffer and the data buffer is within 255A.

すなわち、本発明の特徴は、高度にパイプライン制御化
された中央処理装置で命令とデータとの読出しがアドレ
ス変換ユニット4またはバッファユニット5で競合を生
ずるためアドレス変換ユニット4またはバッファユニッ
ト5を命令用とデータ用とに等容量または上述のほぼ等
容量の範囲に分割することにある。したがって、この本
発明の特徴に関係しない本実施例の構成要素の採用は本
発明の範囲をとくに限定するものではない。
That is, a feature of the present invention is that in a central processing unit that is highly pipeline controlled, read-out of instructions and data causes contention in the address translation unit 4 or buffer unit 5, so the address translation unit 4 or buffer unit 5 is The purpose is to divide the data into a range of equal capacity or approximately equal capacity as described above. Therefore, the use of components of this embodiment that are not related to the characteristics of the present invention does not particularly limit the scope of the present invention.

”−、 バッファユニットは、最近の超大型機では64キロバイ
トの容量をもち、メモリ素子の技術の発展に伴い主記憶
容量の増大にともない益々増大する傾向にある。
``-, The buffer unit has a capacity of 64 kilobytes in recent ultra-large machines, and there is a tendency for the capacity to increase as the main memory capacity increases with the development of memory element technology.

一方アドレス変換ユニy)は100〜500ワード程度
の容量でバッファユニットの容量に較べ2桁小さい。従
って、命令とデータとのアドレス変換ユニットを分割し
たとき、分割しない場合の2倍の容量金もってもバッフ
ァユニット′f:2倍もつ場合と較べてコスト的に比較
にならない。
On the other hand, the address translation unit (y) has a capacity of about 100 to 500 words, which is two orders of magnitude smaller than the capacity of the buffer unit. Therefore, when the address conversion unit for instructions and data is divided, even if the capacity is twice that of the case where it is not divided, it is not comparable in cost to the case where the buffer unit 'f is twice as large.

本発明を用いると、中火処理装置のパイプライン制御を
深くでき、プログラムの広汎な特性に対してよいバッフ
ァメモリミスヒツト率を与え、クロック間隔の短縮が出
来、結果として中央処理装置の性能の向上を達成できる
。
By using the present invention, it is possible to deeply control the pipeline of a medium-heat processing unit, provide a good buffer memory miss rate for a wide range of program characteristics, shorten the clock interval, and as a result improve the performance of the central processing unit. improvement can be achieved.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は、従来方式によるデータ処理装置を示す図、第
2図は第1図の詳細な構成を示す図、第3図は本発明の
第1の実施例を示す図、第4図は第3図の装置の部分的
な変形例を示す図、第5図は、本発明を適用した一例を
示す図、第6図は論理アドレスから実アドレスに変換す
る論理プロセスを示す図、第7図は本発明の第2の実施
例を示す図、第8図は第7図の装置の部分的な変形例を
示す図および第9図は第3図および第7図の部分的な変
形例を示す図である。 第1図から第9図において、l・・・命令続出・制御ユ
ニット、2・・・命令解読・オペランドアドレス生成ユ
ニット、3・・・演算制御ユニット、4・・・アドレス
変換ユニット、5・・・バッファユニット、6・・・主
記憶ユニット、7・・・2次バッファユニット、14.
23,24,34,45,46,52,53,56,6
2゜63 、64 、65・・・・・信号線、101−
・・命令アドレスレジスタ、201・・・命令レジスタ
、202・・命令解読手段、203・・・インデックス
メモリ、204・・・ペースアドレスメモリ、205,
207・・・オペランドアドレス生成手段、206・・
レジスタ、401・・・−環アドレスレジスタ、402
・・・アドレス変換手段、403・・・判別手段、40
6,405・・・セレクタ、406.407’・・セグ
メント/ベージ切換え検出手段−501・・・実アドレ
スレジスタ、5o2 バッファメモ!J、503・・ロ
ーカルレジスタ。 代理人 弁理士 内 原 晋パ■ ゛・、・−ノ′ 第 3 目 第4− 目 第 、5 目 竿 ど 目
FIG. 1 is a diagram showing a conventional data processing device, FIG. 2 is a diagram showing the detailed configuration of FIG. 1, FIG. 3 is a diagram showing a first embodiment of the present invention, and FIG. FIG. 5 is a diagram showing an example of applying the present invention; FIG. 6 is a diagram showing a logical process of converting a logical address into a real address; FIG. The figure shows a second embodiment of the present invention, FIG. 8 shows a partial modification of the device in FIG. 7, and FIG. 9 shows a partial modification of FIGS. 3 and 7. FIG. In FIGS. 1 to 9, l...instruction succession/control unit, 2...instruction decoding/operand address generation unit, 3...arithmetic control unit, 4...address conversion unit, 5... - Buffer unit, 6... Main memory unit, 7... Secondary buffer unit, 14.
23, 24, 34, 45, 46, 52, 53, 56, 6
2゜63, 64, 65...Signal line, 101-
...Instruction address register, 201...Instruction register, 202...Instruction decoding means, 203...Index memory, 204...Pace address memory, 205,
207... Operand address generation means, 206...
Register, 401... - Ring address register, 402
. . . address conversion means, 403 . . . determination means, 40
6,405...Selector, 406.407'...Segment/page switching detection means-501...Real address register, 5o2 Buffer memo! J, 503...Local register. Agent Patent Attorney Susumu Uchihara■ ゛・、・-ノ' 3rd, 4th, 5th

Claims (1)

【特許請求の範囲】 (IJ 命令およびデータを記憶する記憶手段と、この
記憶手段の記憶内容を読み出す複数の読出し手段と。 前記記憶手段に記憶された命令の一部の写しを格納する
命令格納手段と、 この命令格納手段の格納容量と同一がほぼ同一の格納容
量を有し前記記憶手段に記憶されたデータの一部の写し
を格納するデータ格納手段と、前記複数の読出し手段の
うち1つの読出し手段から命令の論理アドレスが与えら
れたとき該論理アドレスを前記記憶手段の実アドレスに
変換し変換結果を前記命令格納手段に与える命令アドレ
ス変換子段と、 前記複数の読出し手段のうち1つの読出し手段からデー
タの論理アドレスが与えられたとき該論理アドレスを前
記記憶手段の実アドレスに変換し変換結果を前記データ
格納手段に与えるデータアドレス変換手段とを含むこと
を特徴とするデータ処理装置。 (2)命令およびデータを記憶する記憶手段と、この記
憶手段の記憶内容を読み出す複数の読出し手段と、 前記記憶手段に記憶された命令の一部の写しを格納する
命令格納手段と、 この命令格納手段の格納容量と同一かほぼ同一の格納容
量を有し前記記憶手段に記憶されたデータの一部の写し
を格納するデータ格納手段と、前記複数の読出し手段の
うちの1つの読出し手段から与えられる命令の論理アド
レスがセグメント/ページ境界を越えるか否かを検出し
越えなければ該論理アドレスの少なくとも一部を前記命
令格納手段に直接与える命令論理アドレス検出手段と、 この命令論理アドレス検出手段で前記論理アドレスがセ
グメント/ベージ境界を越えると検出したとき前記論理
アドレスを前記記憶手段の笑アドレスに変換し変換結果
を前記命令格納手段に与えるアドレス変換手段と、 前記複数の読出し手段のうちの1つの読出し手段から与
えられるデータの論理アドレスがセグメント/ベージ境
界を越えるか否かを検出し越えなければ該論理アドレス
の少なくとも一部を前記データ格納手段に直接与えるデ
ータ論理アドレス検出手段とを備え、 このデータ論理アドレス検出手段で前記論理アドレスが
セグメント/ベージ境界を越えると検出したとき前記論
理アドレスを前記アドレス変換手段により前記記憶手段
の実アドレスに変換し変換結果を前記データ格納手段に
与えることを特徴とする特許請求の範囲第1項記載のデ
ータ処理装置。
[Claims] (IJ) A storage means for storing instructions and data, and a plurality of reading means for reading out the stored contents of the storage means. An instruction storage for storing a copy of a part of the instructions stored in the storage means. means, data storage means having a storage capacity that is the same as or substantially the same as the storage capacity of the instruction storage means and storing a copy of a part of the data stored in the storage means, and one of the plurality of reading means. an instruction address converter stage which converts the logical address into a real address of the storage means when a logical address of an instruction is given from one of the plurality of reading means and provides the conversion result to the instruction storage means; and one of the plurality of reading means. and data address conversion means for converting the logical address into a real address of the storage means when a logical address of data is given from one reading means and providing the conversion result to the data storage means. (2) a storage means for storing instructions and data; a plurality of reading means for reading out the contents of the storage means; and an instruction storage means for storing a copy of a part of the instructions stored in the storage means; data storage means having a storage capacity that is the same as or substantially the same as the storage capacity of the instruction storage means and stores a copy of a part of the data stored in the storage means; and one reading means of the plurality of reading means. an instruction logical address detection means for detecting whether or not a logical address of an instruction given from the instruction exceeds a segment/page boundary, and if the logical address does not exceed a segment/page boundary, directly providing at least a part of the logical address to the instruction storage means; address converting means for converting the logical address into an address of the storage means when the means detects that the logical address crosses a segment/page boundary and providing the conversion result to the instruction storage means; and among the plurality of reading means. data logical address detecting means for detecting whether or not a logical address of data given from one reading means of the data storage means exceeds a segment/page boundary; comprising: when the data logical address detection means detects that the logical address crosses a segment/page boundary, the address conversion means converts the logical address into a real address of the storage means and provides the conversion result to the data storage means; A data processing device according to claim 1, characterized in that:
JP59147772A 1984-07-17 1984-07-17 Data processor Granted JPS6068442A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59147772A JPS6068442A (en) 1984-07-17 1984-07-17 Data processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59147772A JPS6068442A (en) 1984-07-17 1984-07-17 Data processor

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP16326079A Division JPS5687282A (en) 1979-12-14 1979-12-14 Data processor

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP1182068A Division JPH0285943A (en) 1989-07-14 1989-07-14 Data processor
JP1182069A Division JPH0285944A (en) 1989-07-14 1989-07-14 Data processor

Publications (2)

Publication Number Publication Date
JPS6068442A true JPS6068442A (en) 1985-04-19
JPH0247774B2 JPH0247774B2 (en) 1990-10-22

Family

ID=15437829

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59147772A Granted JPS6068442A (en) 1984-07-17 1984-07-17 Data processor

Country Status (1)

Country Link
JP (1) JPS6068442A (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5169333A (en) * 1974-12-13 1976-06-15 Fujitsu Ltd Peeji adoresuseigyohoshiki
JPS5280747A (en) * 1975-12-27 1977-07-06 Fujitsu Ltd Buffer memory control system
JPS5422729A (en) * 1977-07-21 1979-02-20 Fujitsu Ltd Information processor
JPS54109332A (en) * 1978-02-15 1979-08-27 Hitachi Ltd Access-exception detection system of data processor
JPS54148328A (en) * 1978-05-12 1979-11-20 Hitachi Ltd Buffer memory control system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5169333A (en) * 1974-12-13 1976-06-15 Fujitsu Ltd Peeji adoresuseigyohoshiki
JPS5280747A (en) * 1975-12-27 1977-07-06 Fujitsu Ltd Buffer memory control system
JPS5422729A (en) * 1977-07-21 1979-02-20 Fujitsu Ltd Information processor
JPS54109332A (en) * 1978-02-15 1979-08-27 Hitachi Ltd Access-exception detection system of data processor
JPS54148328A (en) * 1978-05-12 1979-11-20 Hitachi Ltd Buffer memory control system

Also Published As

Publication number Publication date
JPH0247774B2 (en) 1990-10-22

Similar Documents

Publication Publication Date Title
US4866603A (en) Memory control system using a single access request for doubleword data transfers from both odd and even memory banks
US6131145A (en) Information processing unit and method for controlling a hierarchical cache utilizing indicator bits to control content of prefetching operations
US4493026A (en) Set associative sector cache
US5598550A (en) Cache controller for processing simultaneous cache accesses
JPS5939832B2 (en) information processing system
KR19980081499A (en) In-memory data processing device and processing system
JPS61109146A (en) Advanced control system
JPS6297036A (en) Calculator system
US5293622A (en) Computer system with input/output cache
US5197145A (en) Buffer storage system using parallel buffer storage units and move-out buffer registers
US6349370B1 (en) Multiple bus shared memory parallel processor and processing method
US5276853A (en) Cache system
JPH0916468A (en) Memory access system
JPH0447344B2 (en)
JPS592058B2 (en) Storage device
JPH0836525A (en) Multiple access cache storage
JPS59112479A (en) High speed access system of cache memory
JP2647092B2 (en) Multi-processor system
JPH0285944A (en) Data processor
JPH0247774B2 (en)
JPH02259945A (en) Storing processing system
JPS635432A (en) Microprocessor
JPH04291642A (en) Cache control system
JPH0418658A (en) Functionally distributed computer system
JPS6116115B2 (en)