JPH01502860A - General-purpose processor unit for digital data processing systems including virtual-to-physical address translation circuits - Google Patents

General-purpose processor unit for digital data processing systems including virtual-to-physical address translation circuits

Info

Publication number
JPH01502860A
JPH01502860A JP50216288A JP50216288A JPH01502860A JP H01502860 A JPH01502860 A JP H01502860A JP 50216288 A JP50216288 A JP 50216288A JP 50216288 A JP50216288 A JP 50216288A JP H01502860 A JPH01502860 A JP H01502860A
Authority
JP
Japan
Prior art keywords
signal
data
address
entry
virtual
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
JP50216288A
Other languages
Japanese (ja)
Inventor
オルシン アンドリュー エス
Original Assignee
ディジタル イクイプメント コーポレーション
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 ディジタル イクイプメント コーポレーション filed Critical ディジタル イクイプメント コーポレーション
Publication of JPH01502860A publication Critical patent/JPH01502860A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1466Key-lock mechanism
    • G06F12/1475Key-lock mechanism in a virtual system, e.g. with translation means

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。 (57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.

Description

【発明の詳細な説明】 仮想−物理アドレス変換回路を含むデジタルデータ処理システム用汎用プロセッ サユニット光−医一二−登一見 1、産業上の利用分野 本発明は一般にデジタルデータ処理システムの分野に関するものである。[Detailed description of the invention] A general-purpose processor for digital data processing systems that includes a virtual-to-physical address conversion circuit. SUUNIT Hikari - Medical 12 - Noboruichi 1. Industrial application field FIELD OF THE INVENTION The present invention relates generally to the field of digital data processing systems.

2、従来の技術 標準的なデジタルデータ処理システムには3つの基本的要素すなわち、プロセッ サ要素、記憶要素、ならびに入出力要素が含まれている。記憶要素はアドレッシ ング可能な記憶場所に情報を記憶する。この情報にはデータとそれを処理するた めの命令の両方が含まれている。プロセッサ要素には、単数又は複数のデジタル データ処理装置すなわち「プロセッサ」が含まれており、この各々が情報を記憶 要素から自らのところまで転送させたり又は取出させたりし、入情報を命令又は データのいずれかとして解釈し、そのデータを命令に応じて処理する。その結果 は次に、記憶要素内のアドレッシングされた場所に記憶される。2. Conventional technology A standard digital data processing system has three basic elements: It contains a storage element, a storage element, and an input/output element. Memory element is address Store information in a memory location that can be accessed. This information includes data and Both instructions are included. The processor element may include one or more digital Contains data processing units or "processors," each of which stores information. command or retrieve incoming information from an element to or from it. Interpret it as any data and process that data according to your instructions. the result is then stored at the addressed location within the storage element.

入出力要素は又、システム内に情報を転送しそこから処理済データを得るために 記憶要素と交信もする0人出力要素を含むユニットは通常プロセッサ要素がそれ に供給する制御情報に従って動作する。制御情報は、入出力装置が実行すべきオ ペレーションの定義づけをする。入出力装置が実行すべきオペレーションの1つ のクラスは少なくともユーザー情報すなわちユーザープログラムにより用いられ る情報を入出力装置と記憶要素の間で転送することである。入出力要素を含む標 準的ユニットは、例えばプリンタ、テレタイプライター、ビデオ表示端末装置を 含み、さらにはディスク又はテープ記憶装置も含まれていてもよい。Input/output elements are also used to transfer information into the system and obtain processed data from it. Units containing zero output elements that also communicate with storage elements usually have processor elements that It operates according to the control information supplied to it. Control information describes the operations that an input/output device should perform. Define peration. One of the operations that an input/output device should perform The class contains at least the user information, i.e. the class used by the user program. transfer of information between an input/output device and a storage element. A mark containing input and output elements Examples of quasi-units include printers, teletypewriters, and video display terminals. and may also include disk or tape storage.

入出力装置として機能する以外に、ディスク記憶装置および時としてテープ記憶 装置は記憶要素の1部としても機能することができる。特に、記憶要素は標準的 に、比較的迅速にプロセッサにその内容をアクセスできるが一般にコストの高い 記憶装置である1つの主記憶機構を含んでいる。最近の主記憶機構は標準的にM OS又はバイポーラ半導体技術を用いて作られており、1メガバイトの数分の1 から数十メガバイトの記憶を提供することができる。In addition to serving as input/output devices, disk storage and sometimes tape storage The device can also function as part of a storage element. In particular, storage elements are standard can access its contents to the processor relatively quickly, but generally at a high cost. It contains one main memory which is a storage device. Modern main memory is typically M It is made using OS or bipolar semiconductor technology and is a fraction of 1 megabyte. It can provide up to tens of megabytes of storage.

現代のデータ処理システムには、応用プログラムに役立つ演算システムプログラ ムが含まれる0例えば、プログラマ−に大きな仮想メモリ空間を使用させる仮想 アドレスを支持する演算システムが多く、一方コンピュータ自体の物理メモリは 相対的に小さい。Modern data processing systems include arithmetic system programs that are useful for application programs. For example, if the programmer uses a large virtual memory space, Many computing systems support addresses, while the computer's own physical memory Relatively small.

この演算システムは、ディスクのように大規模容量のプログラムが使用する大容 量のメモリ空間を記憶しており、プログラムが必要とする場合にそのデータを物 理メモリに転送する。この演算システムは、プログラムが使用する仮想メモリア ドレスと、実際にデータを記憶するメモリの位置を示す物理アドレスとの間の翻 訳を行う。This computing system is used for large-capacity programs such as disks. It stores a large amount of memory space and stores that data physically when a program needs it. transfer to physical memory. This computing system is based on the virtual memory used by programs. The translation between the address and the physical address that indicates the memory location where the data is actually stored. Translate.

ある例示的なシステムにおいて、仮想アドレスと物理アドレスとの間の翻訳を行 うために、演算システムは、プログラム毎に、仮想アドレスと物理アドレスとの 間の通信を含む表を作成する。In an exemplary system, translation between virtual and physical addresses is performed. In order to Create a table containing the communication between.

この表のエントリー数を減少させるために、アドレス可能な位置に対するエント リーを得るより、位置は頁に分類され、この多頁は選択数(この例示システムに おいては1頁について512バイト)を含んでいる。そしてlエントリーが多頁 に対して与えられている0頁の表と呼ばれる表のエントリーは、各々「頁フレー ム数」である仮想アドレスの高次部分、及び対応する物理アドレスの高次部分を 含んでいる。この仮想アドレスの低次部分が、表がらの物理アドレス適当な高次 部分に連結されていて、結果として全物理アドレスが構成されている。To reduce the number of entries in this table, add entries to addressable locations. Rather than obtaining a number of pages, the locations are categorized into pages, and this number of pages is divided into selected numbers (in this example system). (512 bytes per page). And there are many pages of entries. Each entry in a table called the 0-page table given for The high-order part of the virtual address, which is the "number of systems," and the high-order part of the corresponding physical address. Contains. The low-order part of this virtual address is the appropriate high-order part of the apparent physical address. The parts are concatenated together to form the entire physical address.

この演算システムでは、プログラムがメモリ内のデータに同時にラン(run  )されるようにするマルチタスクも可能である。このシステムでは、例えばプロ グラム(又はプログラムによって駆動される)であるコンパイラ、アセンブラ、 デバッガ(debugger)、通信等による他の機能も与えられる。データは 幾つかのプログラム間で分担され、−Sにプログラムによるメモリ内のデータの 読出し及び書込み能力を調整することが望ましい0例えば、応用プログラムに処 理中の演算システムが使用している位置にデータを書込ませることは望ましくな いが、応用プログラムにその位置の少なくとも幾つかに記憶されたデータを読出 させることは望ましい、更に、1つの応用プログラムにデータを読出させそして 書込ませるが、別の応用プログラムにそのデータを続出させるだけに制限するこ とは望ましい。In this computing system, programs can simultaneously run data on data in memory. ) Multitasking is also possible. With this system, e.g. compiler, assembler, Other functions such as debuggers, communications, etc. are also provided. Data is It is shared among several programs, and -S is used to store data in memory by programs. It is desirable to adjust read and write capabilities. For example, if the application program It is undesirable to write data to a location that is currently being used by a processing system. However, the application program may read data stored in at least some of its locations. It is desirable to have one application program read the data and write the data, but limit it to having another application program write the data one after another. is desirable.

同じデータの多重コピーを存する代わりに、同じデータへの共有又は重複アクセ スは、データをアクセスしなければならないプログラムについて真裏の適切なエ ントリーによって達成される場合もある。このように、共有データは両プログラ ム仮想アドレススペースにあるが仮想アドレス位置は違うであろう、しかし、デ ータを物理アドレスに翻訳することによって同じ物理位置が同定される。データ への各プログラムのアクセス特権を調整するために、すなわち、そのプログラム がデータを読出しているのみか、書込んでいるだけであるか、又は読出していて かつ書込んでいるかどうかを調整するために、多頁の表のエントリーは、プログ ラムのアクセス特権をデータに示すコードを含んでいる保護フィールドを含む。Instead of having multiple copies of the same data, share or duplicate access to the same data The program uses the appropriate error code behind the scenes for programs that must access the data. This can also be achieved through entry. In this way, shared data is shared between both programs. virtual address space, but the virtual address location will be different, but the device The same physical location is identified by translating the data into a physical address. data i.e. to adjust each program's access privileges to that program is only reading data, only writing data, or is reading data Multi-page table entries can be programmed to adjust whether they are Contains a protected field containing a code indicating the RAM's access privileges to the data.

仮想アドレスと物理アドレスとの翻訳を迅速化するために、現代のプロセッサは 、使用されたばかりの頁の表のエントリーについての小さなキャッシュである翻 訳用バッファを含むのが一般的である。このエントリーは、頁フレーム表及びプ ログラムのアクセス特権を同定するコードの両方を含んでいる。アドレスの翻訳 中、プロセッサは、頁の表エントリーがその翻訳バッファ内にあるかどうか最初 に調べる。もしそうであれば、そのプロセッサは翻訳バッファ内の頁の表エント リーを使用する。プログラムが必要な演算を行うためにデータをアクセスするか どうかを決定するために、プロセッサは符号化した保護フィールドを復号化する 。To speed up the translation between virtual and physical addresses, modern processors use , a small cache of table entries for pages that have just been used. It generally includes a translation buffer. This entry is for page frame tables and Contains both code that identifies the program's access privileges. Address translation During the process, the processor first checks whether the page's table entry is in its translation buffer. Check it out. If so, the processor uses the page's table entry in the translation buffer use lee. Does the program access the data to perform the necessary operations? To determine whether the processor decodes the encoded protection field .

しかし、もし頁の表エントリーが翻訳バッファ内にない場合・又はプログラムが そのデータについての必要なアクセス権を有していない場合、プロセッサは他の 動作を行なわなければならない。However, if the page's table entry is not in the translation buffer, or if the program If the processor does not have the necessary access rights to that data, the processor action must be taken.

処理を迅速化するために、プロセッサができるだけ早く他の動作を行なわなけれ ばならないかどうかの決定をすることが望ましい。The processor must perform other operations as soon as possible to speed up processing. It is desirable to decide whether the

の ・ 本発明は、デジタルデータ処理シ反テムに使用する新たなプロセッサを提供する 。of · The present invention provides a new processor for use in digital data processing systems. .

このプロセッサには、仮想アドレスから物理アドレスに翻訳する場合に使用され る頁の表エントリー用の翻訳バッファが含まれる。この翻訳バッファのエントリ ーにロードされる前に、保護コードが復号される。仮想アドレスの高次ビットと 頁のフレーム数との間で直接比較がされ、更にそのバッファ内のプログラムアク セス権利と復号化されたアクセス権利との間で直接比較がされて、比較が成功し た状況を示す「ヒン)(bit)J信号が発生する。This processor has a Contains translation buffers for table entries on pages that contain. Entries in this translation buffer The protection code is decrypted before being loaded into the The higher bits of the virtual address and A direct comparison is made between the frame number of the page and the program activity in that buffer. A direct comparison is made between the access rights and the decrypted access rights to ensure that the comparison is successful. A ``bit'' signal is generated to indicate the status.

保護コードがその翻訳バッファ内で復号化されているので、ひき続いて復号化を 必要とせずに比較は直接行なわれる。従って、プロセッサは、翻訳が翻訳バッフ ァの内容を使って行なわれているかどうか即座に決定することができる。Since the protected code has been decrypted in its translation buffer, subsequent decryption is required. The comparison is done directly without the need. Therefore, the processor uses the translation buffer It can be immediately determined whether the content of the

図面の 単なi゛ 本発明は、添付のクレーム中に特徴と合わせて指摘されている。Simple i in the drawing The invention is pointed out with particularity in the appended claims.

本発明のもつ上述の及びその他の利点は、添付の図面と合わせて以下の説明を参 照することによりより良く理解できるものと思われる。なお図中: 第1A図は、本発明を内含するデジタルデータ処理システムの全体のブロックダ イヤグラムであり、第1B図は、第1A図に示されているシステム内で用いられ るプロセッサの組織的ブロックダイヤグラムである。The above-mentioned and other advantages of the present invention will be apparent from the following description in conjunction with the accompanying drawings. It is believed that it can be better understood by looking at the following. In the diagram: FIG. 1A shows an overall block diagram of a digital data processing system incorporating the present invention. Figure 1B is a diagram of the system used within the system shown in Figure 1A. 1 is an organizational block diagram of a processor.

第2図は、第2A図から第2D図までを含むもので、本発明を理解するのに役立 つタイミングダイヤグラムである。FIG. 2 includes FIGS. 2A to 2D and is helpful in understanding the present invention. This is a timing diagram.

第3A図、第3B図及び第3C図は、特にデータ経路を通しての情報の伝送に関 する第1B図に示されているプロセッサの一部分のフ゛ロンクダイヤグラムであ る。Figures 3A, 3B and 3C relate specifically to the transmission of information through the data path. Figure 1B is a block diagram of a portion of the processor shown in Figure 1B. Ru.

第4A図は、詳細なブロックダイヤグラムであり、第4B−1図及び第4B−2 図は、特に仮想アドレスの物理アドレスへの変換に関する第1図に示されている プロセンサの一部分のより詳細な回路図である。Figure 4A is a detailed block diagram, Figures 4B-1 and 4B-2. The diagrams are particularly shown in Figure 1 regarding the translation of virtual addresses to physical addresses. 2 is a more detailed circuit diagram of a portion of the ProSensor; FIG.

第5図は、特にキャッシュ記憶機構からのデータ検索に関する第1B図に示され ているプロセッサの一部分の詳細なブロックダイヤグラムである。FIG. 5 is illustrated in FIG. 1B with particular reference to data retrieval from cache storage. 1 is a detailed block diagram of a portion of a processor.

第6図は、特にシステムのその他の部分との転送を制御するための回路に関する 第1B図に示されているプロセッサの一部分の詳細なブロックダイヤグラムであ る。FIG. 6 specifically relates to a circuit for controlling transfers to and from other parts of the system. 1B is a detailed block diagram of a portion of the processor shown in FIG. 1B; Ru.

1 、k の−細な−′ 主制御旦 第1図を参照すると、本発明を内含するデータ処理システムは、基本要素として 中央演算処理装置CPUl01記憶機構11及び単数又は複数の入出力サブシス テム12 (1つの入出力サブシステムが第1図に示されている)を含んでいる 。母線13がCPU1O1記憶機構11そして入出力サブシステム12を並列に 相互接続している。CPUl0は、記憶機構11内のアドレッシング可能な記憶 場所に記憶されている命令を実行する。命令は、同様に記憶装置内のアドレス可 能な場所に記憶されているオペランドについて実行すべきオペレーションを識別 する。命令及びオペランドは必要に応じてCPUl0により取出され、処理済デ ータは記憶機構11内に記憶するために戻される。CPUl0は又、入出力サブ システム12に制御情報を伝送し、記憶機構11へのデータの伝送又はそれから のデータ検索といった選択されたオペレーションをこれらのサブシステムが実行 できるようにする。かかるデータには、記憶機構11に伝送されうる命令又はオ ペランド或いは記憶又は表示のため記憶機構11から検索される処理済データが 含まれていることが考えられる。1, k -thin-' main control Referring to FIG. 1, a data processing system incorporating the present invention has as basic elements Central processing unit CPU101 storage mechanism 11 and one or more input/output subsystems system 12 (one input/output subsystem is shown in Figure 1) . A bus 13 connects the CPU 101 storage unit 11 and input/output subsystem 12 in parallel. interconnected. CPUl0 is an addressable memory within the storage mechanism 11. Execute instructions stored in a location. Instructions are also addressable in storage. identify operations to be performed on operands stored in available locations do. Instructions and operands are fetched by CPU10 as needed and processed data is The data is returned for storage in storage 11. CPU10 also has an input/output sub transmitting control information to system 12 and transmitting data to or from storage 11; These subsystems perform selected operations, such as retrieving data from It can be so. Such data may include instructions or commands that may be transmitted to storage 11. Processed data retrieved from memory 11 for storage or display It is possible that it is included.

操作鍵盤機構14はオペレータのインターフェイスとして用いられる。これによ りオペレータは、データを検査し預けたり、CPUl0のオペレーションを停止 させたり又は一連の命令を通してCPUl0をステツプしたり、又それに応えて CPUl0の応答を決定したりすることができる。又これによりオペレータはプ ートストラップ手順を用いて、システムを初期値設定し、データ処理システム全 体についてさまざまな診断テストを行なうこともできる。The operating keyboard mechanism 14 is used as an operator interface. This is it The operator inspects and deposits the data or stops the operation of CPU10. or step CPU10 through a series of instructions, or in response to The response of CPU10 can be determined. This also allows the operator to Use the bootstrap procedure to initialize the system and complete the data processing system. Various diagnostic tests can also be performed on the body.

データ処理システムには、ディスク及びテープ式二次記憶装置、テレタイプライ ター、ビデオ表示端末装置、ラインプリンタ、電話及びコンピュータネットワー クユニットなどを含む、さまざまなタイプの入出力装置20が含まれるものと考 えられる。これらのユニットは全て単数又は複数の制御装置22を通って装置母 線21を通して母!13と連絡している。制御装置22、それに接続されている 装置母線21及び制御装置と連絡している入出力装置22が、1つの入出力サブ システム12を構成する。Data processing systems include disk and tape secondary storage, teletype printers, computers, video display terminals, line printers, telephones and computer networks. It is assumed that various types of input/output devices 20 are included, including a network unit, etc. available. All these units are connected to the device motherboard through one or more control devices 22. Mother through line 21! I am in contact with 13. control device 22, connected thereto; The input/output device 22 communicating with the device bus 21 and the control device is connected to one input/output sub The system 12 is configured.

記憶機構11は母!*13及び複数のアレイ17に直接接続されている記憶機構 制御装置15を含んでいる。アレイ17には、情報が記憶されるアドレス可能な 記憶場所が複数台まれている。記憶機構制御装置15はCPLIIO又は入出力 サブシステム12から母線13を通して転送要求を受けとる。母線13を通して 伝送できる転送要求にはいくつかのタイプがあり、一般に次の2つのカテゴリに 分けられる。1つのカテゴリーでは、情報は1記憶場所内に書き込まれるか又は 記憶され、もう1方のカテゴリーでは、情報は記憶場所から検索又は読みとられ る。Memory mechanism 11 is my mother! *13 and storage directly connected to multiple arrays 17 It includes a control device 15. Array 17 includes an addressable array 17 in which information is stored. Multiple storage locations are included. The storage mechanism control device 15 is CPLIIO or input/output A transfer request is received from the subsystem 12 through the bus 13. through busbar 13 There are several types of transfer requests that can be sent, generally falling into two categories: Can be divided. In one category, the information is written in one memory location or In the other category, information is retrieved or read from a storage location. Ru.

第1図に示されているシステムは又、母線13及び記憶機構制御装置15と接続 し、CPUl0により記憶機構11に向けられる書込み転送要求を代行受信する 書込みバッファ23をも含んでいる。このシステムにおいて記憶機構制御装置1 5は、CPUl0又は入出力制御装置22のいずれかにより母線13を通して伝 送される書込み要求に応答しない、特に、書込みバッファ11は、。The system shown in FIG. 1 also connects busbar 13 and storage controller 15. and intercepts the write transfer request directed to the storage mechanism 11 by CPU10. It also includes a write buffer 23. In this system, storage mechanism control device 1 5 is transmitted through the bus 13 by either the CPU 10 or the input/output control device 22. In particular, the write buffer 11 does not respond to write requests sent.

書込まれるべきデータとそのデータが記憶されるべきアレイ17内の場所を識別 する関連アドレスの両方を含む書込み情報を緩衝する。記憶機構制御装置が書込 みオペレーションを受け入れることができる場合、書込みバッファは、専用母線 24を通してアドレス及び付随するデータを記憶機構制御装置15へ伝送し、こ の制御装置はアレイ17がアドレスにより識別された場所にデータを記憶できる ようにする。こうして、母線13を通してのCPU10による書込みデータの伝 送率が高すぎて記憶機構11が受け入れられなくなった場合、書込みバッファ2 3は、記憶機構11が受入れできるようになるまで要求を緩衝することができる 。記憶機構制御装置は、CPUl0又は入出力制御装置22からの読みとり要求 に応えこれに対して読みとりデータを戻すため、直接母線13にも接続されてい る。Identifying the data to be written and the location within array 17 where the data is to be stored buffer the write information, including both associated addresses. written by storage controller If the write buffer can only accept operations, the write buffer is 24 to transmit the address and accompanying data to the storage mechanism controller 15, and The controller allows array 17 to store data at locations identified by addresses. Do it like this. In this way, the data written by the CPU 10 is transmitted through the bus 13. If the transfer rate becomes too high for storage 11 to accept, write buffer 2 3 can buffer requests until storage 11 can accept them. . The storage mechanism control device receives a read request from the CPU10 or the input/output control device 22. In order to respond to this request and return read data, it is also directly connected to bus 13. Ru.

当業者は、第1図に示されているように単一プロセッサシステム内で書込みバッ ファ23を用いると有利であると考えるであろうが、これはマルチプロセッサシ ステム(図示されておらず)内で用いられるのが最も有利である。マルチプロセ ッサシステムにおいては、記憶機構11は数多くのCPU及び結びつけられた入 出カシステム12から読取り及び書込み要求を受けることになる。Those skilled in the art will appreciate that a write buffer can be configured within a uniprocessor system as shown in FIG. One would think it would be advantageous to use a multiprocessor system. Most advantageously, it is used within a stem (not shown). multi-process In a processor system, storage 11 has many CPUs and associated inputs. Read and write requests will be received from the output system 12.

書込みオペレーションを実行するのを待ってCPUl0による処理が遅れるのを 避けるため、書込みバッファ23は、書込みアドレス及びデータをとり、CPU l0は処理を再開することができる。Avoid delaying processing by CPU10 while waiting to perform a write operation. To avoid this, the write buffer 23 takes the write address and data and sends it to the CPU. l0 can resume processing.

書込みバッファにはさらCPUl0からの母線13を通しての読取り要求を監視 するための回路が含まれている。自ら緩衝しておりかつまだ記憶機構11に転送 していないデータを識別する読取り要求が母線13を通して伝送されたことを確 認した場合、書込みバッファ23はその専用母線24を通して、記憶機構制御装 置がその要求に応えないよう抑制する。その代りに、書込みバッファ23は母線 13を通して要求されたデータを転送し読取りオペレーションを完了する。The write buffer also monitors read requests from CPU10 through bus 13. Contains circuitry to do so. Buffered by itself and still transferred to storage mechanism 11 Verify that a read request was transmitted over bus 13 that identified data that was not If so, the write buffer 23 is connected to the storage controller through its dedicated bus 24. restrain the company from responding to the request. Instead, the write buffer 23 is 13 to transfer the requested data and complete the read operation.

第1図に示されているシステムには又CPUl0の制御の下で仲裁(任意指定) オペレーションを実行してシステム内に複数ある場合母線13に対するさまざま な入出力サブシステムのアクセスを調節するようなシステム制御回路25も含ま れている。The system shown in Figure 1 also includes arbitration (optional) under the control of CPU10. When an operation is executed and there is more than one in the system, various changes are made to bus 13. It also includes system control circuitry 25 for regulating access to the input/output subsystems. It is.

CPUl0は、プロセッサ30及びオプションの浮動小数点プロセッサ31を含 んでいる。標準的に言ってそうであるように、浮動小数点プロセッサは1つのオ プションであり、本発明に基づいて作られたCPU又はデジタルデータ処理シス テム10内に必ずしもなくてもよい、浮動小数点プロセッサには、選択されたタ イプのデータすなわち浮動小数点書式のデータについての命令を処理するために 最適化されている回路が含まれている。標準的には、プロセッサ30は同じデー タを処理することができるが、処理の実行により時間がかかる。CPU10 includes a processor 30 and an optional floating point processor 31. I'm reading. As is standard, floating point processors are CPU or digital data processing system made according to the present invention. The floating point processor, which does not necessarily have to be in system 10, has a type data, i.e. data in floating point format. Contains optimized circuits. Typically, processors 30 use the same data data, but the process takes more time to perform.

システム内で用いられる1つのプロセッサ30の詳細な機能的ブロックダイヤグ ラムは第1B図に示されている。第1B図を参照すると、プロセッサ30には、 母線13のさまざまな制御ライン(集合的に13Aとして示されている)に接続 し以下に記されているように母線のさまざまなラインを通って信号を送受するよ うな母線インターフェイス回路33が含まれている。この母線インターフェイス 回路は、キャッシュ35、データ経路36、記憶域管理装置37及びプロセッサ 制御回路40へ及びこれらからの信号を転送する内部IDAL母線34にも接続 している。プロセッサ30の1実施態様についての母線インターフェイス回路3 3が以下に第6図と関連づけて説明されている。Detailed functional block diagram of one processor 30 used in the system The ram is shown in Figure 1B. Referring to FIG. 1B, processor 30 includes: Connect to various control lines of busbar 13 (collectively designated as 13A) and send and receive signals through the various lines of the busbar as described below. A busbar interface circuit 33 is included. This busbar interface The circuit includes a cache 35, a data path 36, a storage management unit 37 and a processor. Also connected to internal IDAL bus 34 for transferring signals to and from control circuit 40 are doing. Busbar Interface Circuit 3 for One Embodiment of Processor 30 3 is described below in conjunction with FIG.

数多くのレジスタもこの内部TDAL母線34に接続され、母線イーンターフェ イス回路33の制御の下で母m13のDALライン50と内部IDAL母線34 の間でデータを転送する。限定的に言うと、母線インターフェイスユニット33 の制御の下で、書込みデータレジスタ250及び書込みアドレスレジスタ251 はそれぞれ、書込みデータ及びこの書込みデータが記憶される記憶機構11又は 入出力装置12内の場所のアドレスを受けとる。以下に説明されているように、 適当な時点で、母線インターフェイスユニット33はこれらのレジスタの中味が マルチプレクサ253を通してDALライン50上に伝送され書込みオペレーシ ョンが実行されうるようにする。同様に、母線インターフェイスユニット33の 制御の下で、読取りアドレスレジスタ252は読みとられるべきデータを含む場 所のアドレスを受けとる。適当な時点で、母線インターフェイスユニット33は 読取りアドレスレジスタ252の中味がマルチプレクサ253を通してDALラ イン50上に結合(カップリング)され読取りオペレーションが実行されうるよ うにする。読みとりデータは入力レジスタ253内で、同様に母線インターフェ イスユニット33の制御の下でラッチング(保持)される、母線インターフェイ スユニット33は入力レジスタ254の中味が、RCV DAT受信のデータ信 号として内部IDAL母線34上に結合(カップリング)されうるようにする。A number of resistors are also connected to this internal TDAL bus 34 and are connected to the bus interface. DAL line 50 of bus m13 and internal IDAL bus 34 under the control of chair circuit 33 Transfer data between. Specifically speaking, the busbar interface unit 33 write data register 250 and write address register 251 under the control of are the write data and the storage mechanism 11 in which the write data is stored, respectively. Receives the address of a location within the input/output device 12. As explained below, At an appropriate time, the busbar interface unit 33 determines the contents of these registers. A write operation is transmitted on DAL line 50 through multiplexer 253. to allow the option to be executed. Similarly, the bus interface unit 33 Under control, the read address register 252 is set to Receive the location address. At an appropriate time, the busbar interface unit 33 The contents of read address register 252 are sent to the DAL register through multiplexer 253. 50 so that read operations can be performed. I will do it. The read data is in input register 253 and is also sent to the bus interface. The busbar interface is latched (held) under the control of the chair unit 33. The input register 254 is the data signal received by the RCV DAT. can be coupled onto the internal IDAL bus 34 as a signal.

プロセッサ制御回路40は記憶機構11から検索されたプログラム命令を復号し 、連続処理サイクルにてデータ経路36が、その命令を実行するのに必要とされ る演算論理オペレーションを行なうことができるようにする。データ経路36は 処理すべきデータを記憶するための1組のレジスタ255と処理を行なうための 演算論理回路を含んでいる。データ経路36は第3A図及び第3B図を参照しな がら以下にさらに詳細に説明されている。The processor control circuit 40 decodes the program instructions retrieved from the storage 11. , in successive processing cycles the data path 36 is required to execute the instruction. to perform arithmetic and logical operations. The data path 36 is A set of registers 255 for storing data to be processed and a set of registers 255 for storing data to be processed. Contains arithmetic logic circuits. For data path 36, see FIGS. 3A and 3B. are explained in more detail below.

プロセッサ30の1実施態様は仮想アドレスを用い、仮想アドレスを物理アドレ スに変換するための仮想アドレス変換回路37を提供する。仮想アドレス変換回 路には、プロセッサ30内のその他の回路特にデータ経路36からの仮想アドレ スを受けとる1組の原始レジスタ257及びいくつかの変換情報を含む変換バッ ファ260が含まれている。変換は必要に応じてプロセッサ制御回路40の制御 下で行なわれる。物理アドレスは、変換回路37からマルチプレクサ261を通 して内部I DAL母vA34上に結合される。データ経路36には同様に、物 理アドレスが含まれていてもよく、マルチプレクサ261のための第2の原始入 力を提供する。プロセッサ制御回路40はマルチプレクサ261を制御する。One embodiment of processor 30 uses virtual addresses and converts virtual addresses to physical addresses. A virtual address conversion circuit 37 is provided for converting the address into a virtual address. virtual address translation times The virtual address path includes other circuitry within processor 30, particularly the data path 36. A set of primitive registers 257 that receive the translations and a translation buffer containing some translation information. A file 260 is included. Conversion is controlled by the processor control circuit 40 as necessary. It takes place below. The physical address is sent from the conversion circuit 37 through the multiplexer 261. and is coupled onto the internal IDAL mother vA34. Data path 36 also includes a second primitive input for multiplexer 261. provide strength. Processor control circuit 40 controls multiplexer 261.

キャッシュ記憶機構35はCPUl0内の従来の情報記憶回路である。キャッシ ュ記憶機構はに、 Hwang及びF、 Br1gg5共著、「コンピュータア ーキテクチャ−とパラレル処理」 (マグロ−ヒル、1984年)、第2.4節 、p98以降、ならびにV、 )lamacher著、「コンピュータ組織」  (マグロ−ヒル、1984年)、第8.6節、p306以降に記述されている。Cache storage 35 is a conventional information storage circuit within CPU10. Cash Hwang and F. Br1gg5, “Computer Storage Mechanisms” "Architecture and Parallel Processing" (McGraw-Hill, 1984), Section 2.4 , p. 98 et seq., and V.) Lamacher, "Computer Organization" (McGraw-Hill, 1984), Section 8.6, p. 306 et seq.

データ記憶機構38は複数のブロックの形でAl1織され、各ブロックは2つの 記憶場所を含んでいる。各々の記憶場所は1つの情報ワード、すなわち一度に母 &113を通して転送されうる情報量を記憶する。特定の一実施態様においては 、1情報ワードは4バイト又は3202進数の情報に相当する。こうして各ブロ ックは8バイトの情報を記憶することができる。The data storage 38 is Al1 woven in the form of a plurality of blocks, each block having two Contains storage locations. Each memory location stores one information word, i.e. mother at a time. &113. Stores the amount of information that can be transferred through &113. In one particular embodiment , one information word corresponds to 4 bytes or 3202 binary information. In this way, each blog A block can store 8 bytes of information.

第5図と関連づけて以下にさらに詳しく記述されているように、キャッシュ記憶 機構35は、仮想アドレス変換回路により生成された物理アドレスがキャッシュ 記憶機構35内の1アドレスにいつ相当するかを見極めるヒツト/ミス論理回路 262を含んでいる、原始レジスタ257からの仮想アドレスの最低位部分、す なわち1実施態様においてはVA 5RCE (8: 3)信号は、データ記憶 域内の1ブロツク及び結びつけられたタグ41人力を選択するためマルチプレク サ264を通して結合されている。ヒツト/ミス論理回路262は次に、結びつ けられたタグ41の入力の中味が変換された物理アドレスに一致するか否かを決 定する。Cache storage, as described in more detail below in conjunction with FIG. The mechanism 35 caches the physical address generated by the virtual address translation circuit. Hit/miss logic circuit that determines when it corresponds to one address in the storage mechanism 35 262, the lowest part of the virtual address from primitive register 257, including That is, in one embodiment, the VA 5RCE (8:3) signal is Multiplex to select one block in the area and 41 associated tags. 264. Hit/miss logic circuit 262 then connects It is determined whether the input contents of the rejected tag 41 match the converted physical address. Set.

このような一致がある場合、ヒツト/ミス論理は断定されたBIT信号を生成し 、この信号は母線インターフェイスユニット33に伝送される。母線インターフ ェイスユニット33は断定BIT信号を受けとらない場合、従来の方法でアトレ ンジングされた場所の内容を検索するため母線13を通して1つのオペレーショ ンを使用可能な状態にする。HIT信号が断定された場合、母線インターフェイ スユニット33は母線13を通してのオペレーションを使用可能にせず、その代 りにキャッシュデータ記憶域38からのデータが内部IDAL母線34を通じて マルチプレクサ263を通って伝送されうるようにする。一般にかかるデータは データ経路36に伝送される。If there is such a match, the hit/miss logic generates an asserted BIT signal. , this signal is transmitted to the busbar interface unit 33. busbar interface If the face unit 33 does not receive the asserted BIT signal, it uses the conventional method to one operation through bus 13 to retrieve the contents of the scanned location. make it available for use. If the HIT signal is asserted, the bus interface The bus unit 33 does not enable operation through the bus 13; Data from cache data storage 38 is then routed through internal IDAL bus 34. The signal can be transmitted through multiplexer 263. In general, the data is transmitted to data path 36.

当業者にとっては明白であるように、キャッシュ記憶機構35内の1ブロツクに 記憶された情報は、記憶装置11から受けとられたとき、記憶装置11内に記憶 された情報のコピーである。キャッシュ記憶機構35内の各々のブロックには、 その情報をコピーした元の記憶装置11内の場所を識別するため母線インターフ ェイス回路36により作成された内容をもつ結びつけられた1つのタグ41があ る。さらに、各々のブロックには、そのブロックの内容がそのタグの識別する場 所の事実コピー内にあるか否か、すなわちそのブロックの内容が失効したもので あるか否かを示すため、母線インターフェイス回路によりリセット又は消去され る失効フラグ42が含まれている。As will be apparent to those skilled in the art, one block within cache storage 35 The stored information is stored in the storage device 11 when it is received from the storage device 11. This is a copy of the information provided. Each block within the cache storage mechanism 35 includes: The bus interface is used to identify the location in storage device 11 from which the information was copied. There is one tag 41 associated with the content created by the face circuit 36. Ru. Additionally, each block has a tag that identifies the content of the block. whether it is in the actual copy of the block, i.e. whether the contents of the block have expired. reset or cleared by the busbar interface circuit to indicate whether A revocation flag 42 is included.

キャッシュ記憶機構35の一実施態様においてデータ記憶域38、タグ41及び フラグ42は動的記憶機構である。再生カウンタ262は、母線インターフェイ スユニット33の制御の下で、再生アドレスを生成し、このアドレスは動的記憶 機構を再生するためマルチプレクサ264を通して結合させられる。In one embodiment of cache storage 35, data storage 38, tag 41 and Flag 42 is a dynamic storage mechanism. The regeneration counter 262 is connected to the bus interface. Under the control of the control unit 33, a playback address is generated, and this address is stored in dynamic memory. It is coupled through multiplexer 264 to reproduce the mechanism.

1つの命令には、データ経路36内のレジスタ内のオペランドの場所を識別する か又は仮想アドレス空間内のオペランドの場所を示すアドレスを識別する単数又 は複数のオペランド規制子が含まれている可能性がある8例えば、1980年1 1月25日付でId、 S、 5trecher他に対し発行された「可変長の 命令を実行するための中央演算処理装置」についての米国特許第4.236.2 06号を参照されたい、プロセッサ制御回路40はデータ経路と共に各々のオペ ランド規制子を復号してオペランドの場所を識別し、次にこれらを識別された場 所から得るべく作業を進める。オペランド規制子はそれ自体そのオペランドを含 んでいることがあり(すなわちオペランド規制子は「リテラル」であることがで きる)、又オペランド規制子は、オペランドを含んでいるものとしてデータ経路 のレジスタ(図示されておらず)の1つを識別することもできる。One instruction includes identifying the location of an operand in a register within data path 36. or an address that identifies the location of the operand within the virtual address space. may contain multiple operand specifiers.8For example, 19801 “Variable length notice” issued on January 25th to Id, S, 5trecher, etc. U.S. Patent No. 4.236.2 for ``Central Processing Unit for Executing Instructions'' 06, the processor control circuit 40 has a data path as well as a Decode the land specifier to identify the location of the operands, and then We will proceed with the work to obtain what we can from the place. An operand specifier itself contains its operands. (i.e. operand specifiers can be “literal”) ), and operand specifiers are used to specify the data path as containing the operand. One of the registers (not shown) may also be identified.

代替的には、オペランドは、プログラムの仮想記憶空間内の1つの場所にあって もよく、オペランド規制子はこの場所の識別方法を示していてもよい、オペラン ドが仮想記憶空間にある場合、制御回路40は記憶域管理回路37が仮想アドレ スを物理アドレスに変換できるようにする。オペランドの物理アドレスが得られ た後、母線インターフェイス33がそのオペランドを得る。これはまずそのオペ ランドがキャッシュ記憶機構35内にあるか否かを決定する。オペランドがキャ ッシュ記憶機構内にある場合、母線インターフェイスはそのオペランドをデータ 経路36へ転送する。一方オペランドがキャッシュ記憶機構35内にない場合、 母線インターフェイス回路33は記憶機構11に母線13を通して読取り要求を 転送しそのオペランドを検索する。全てのオペランドが得られた後、データ経路 36は命令により要求されたオペレージコンを行なう。Alternatively, the operands are located at one location in the program's virtual storage space. The operand specifier may indicate how this location is identified, and the operand specifier may indicate how this location is identified. If the address is in the virtual storage space, the control circuit 40 indicates that the storage management circuit 37 address to a physical address. The physical address of the operand is obtained. After that, the bus interface 33 obtains the operand. This is the operation first. Determine whether the land is in cache storage 35. If the operand is the bus interface stores its operands in data storage. Transfer to route 36. On the other hand, if the operand is not in cache storage 35, The bus interface circuit 33 sends a read request to the storage mechanism 11 through the bus 13. transfer and retrieve its operands. After all operands are obtained, the data path 36 performs the operation control required by the instruction.

オペランド規制子は又、処理済のデータが記憶されるべき場所も識別する。制御 回路40及び記憶域管理回路37は、物理アドレスを決定するため上述のものと 同じ方法で用いられる。処理済のデータを記憶機構11内で記憶しなければなら ない場合、母線インターフェイス33は必要とされる書込みオペレーションを母 線13を通して行なう、さらに物理アドレスがキャッシュ35内の適当なタグに 相当する場合、母線インターフェイス33はデータがキャッシュ35内に記憶さ れうるようにする。The operand specifier also identifies where processed data should be stored. control The circuit 40 and the storage management circuit 37 are similar to those described above for determining the physical address. used in the same way. The processed data must be stored in the storage mechanism 11. If not, the bus interface 33 will host the required write operation. through line 13, and the physical address is placed on the appropriate tag in cache 35. If so, the bus interface 33 stores the data in the cache 35. make it possible for you to do so.

母線インターフェイスユニット33には、母線13を通してのデータの転送を制 御する状態マシン270ならびに、内部IDAL母線34を通してのデータの転 送を制御するIDAL状態マシン271が含まれている。母線インターフェイス ユニットはEPP論理回路272をも制御し、一方この回路272は浮動小数点 プロセッサ31との通信を制御する。母線インターフェイスユニット33は以下 に、第6図と関連づけてさらに詳しく説明されている。The bus interface unit 33 includes a device that controls data transfer through the bus 13. control state machine 270 as well as the transfer of data through internal IDAL bus 34. An IDAL state machine 271 is included to control the transmission. busbar interface The unit also controls an EPP logic circuit 272, whereas this circuit 272 is a floating point Controls communication with the processor 31. The busbar interface unit 33 is as follows. This is explained in more detail in conjunction with FIG.

13を゛ してのオペレーション 母線13は、それに接続されているさまざまなユニット間の情報を表わす信号番 転送するための数多くのライン(回線)を含んでいる。特に母&113には、D ATデータ及びADRSアドレス信号を搬送するDAL (31: 0)データ アドレスライン50が含まれている。CPUl01限定的にいうとプロセンサ3 0が1つの転送を開始させそれをその転送のための母線マスターとする場合、プ ロセッサ30はまずDAL (31: O)データアドレスライン50を通して ADRSアドレス信号を伝送し、転送オペレーションが読みとりオペレージコン であるか書込みオペレーションであるかを示すTRTYPE (2: 0)転送 タイプの指令信号をライン52を通して同時に伝送する。ADRSアドレス信号 及びTRTYPE (2: 0)転送タイプ指令信号がおさまることのできるだ けの短かい時間の後、プロセッサ30は次にライン51上でADR3STRアド レスストローブ信号を断定する。Operation using 13 Bus 13 carries signal numbers representing information between the various units connected to it. Contains many lines for transmission. Especially for my mother & 113, D DAL (31:0) data carrying AT data and ADRS address signals Address lines 50 are included. In terms of CPUl01, Prosensor 3 If 0 initiates one transfer and makes it the bus master for that transfer, then The processor 30 first passes through the DAL (31:O) data address line 50. Transmits the ADRS address signal, and the transfer operation reads the operating controller. TRTYPE (2:0) transfer indicating whether it is a write operation or a write operation. type command signals are simultaneously transmitted through line 52. ADRS address signal and TRTYPE (2:0) transfer type command signal can subside. After a short period of time, processor 30 then issues an ADR3STR address on line 51. Assert the rest strobe signal.

ADR3STRアドレスストローブ信号が断定されると、母線13に接続されて いるその他のユニットは全てADRSアドレス及びTRTYPE (2: O) 転送タイプ指令信号を受けとり復号する。このときADRSアドレス信号により 識別されている場所を含むユニットが、転送のための応答するユニットすなわち 子gW <スレーブ)である、転送オペレーションが書込みオペレーションであ りADRSアドレス信号が記憶機構11内の場所を識別している場合、書込みバ ッファー23が子装置である。プロセッサ30がADH3RTRアドレスストロ ーブ信号を断定してから選択された時間だけ経過した後、プロセッサ30はAD RSアドレス信号及びTRTYPE (2: O)転送タイプ指令信号をそれぞ れのラインから除去する。When the ADR3STR address strobe signal is asserted, it is connected to bus 13. All other units have ADRS address and TRTYPE (2:O) Receives and decodes the transfer type command signal. At this time, the ADRS address signal The unit containing the location being identified is the responding unit for transfer, i.e. child gW<slave), the transfer operation is a write operation. If the ADRS address signal identifies a location within storage 11, the write buffer The buffer 23 is a child device. The processor 30 uses the ADH3RTR address controller. After asserting the AD signal for a selected period of time, processor 30 RS address signal and TRTYPE (2: O) transfer type command signal respectively. Remove from this line.

転送されたTRTYPE (2: 0)転送タイプ指令信号が書込みオペレーシ ョンを規定している場合、マスターユニットはライン50を通してデータ信号を 伝送し、次にライン53上でDATA STRデータストローブ信号を断定する 。子装置はこのとき、伝送されたデータを受けとりこれを記憶する。データが記 憶されると、アトレンジングされたユニットは、オペレーションがエラー無く完 了した場合にはライン54上でRDY作動可能信号を、又記憶オペレージ臂−ン 中エラーが発生した場合にはライン55上でERRエラー信号を断定する。Transferred TRTYPE (2:0) Transfer type command signal is write operation The master unit sends the data signal through line 50 if the transmit and then assert the DATA STR data strobe signal on line 53. . At this time, the slave device receives the transmitted data and stores it. data is recorded Once stored, the atranged unit will ensure that the operation completes without error. If completed, the RDY ready signal is sent on line 54, and the memory operation If a medium error occurs, an ERR error signal is asserted on line 55.

一方、伝送されたTRTYPE (2: 0)転送タイプ指令信号が読みとりオ ペレーションを規定している場合、子装置はアドレス信号により識別された場所 からデータを検索し、これらをDAL (31: O)データアドレスライン5 oを通して伝送し、ライン54を通して断定されたRDY作動可能信号を伝送す る。On the other hand, the transmitted TRTYPE (2:0) transfer type command signal is read and activated. If operation is specified, the child device is located at the location identified by the address signal. Search for data from DAL (31: O) data address line 5 o and transmits an asserted RDY ready signal through line 54. Ru.

これに応えて、プロセッサ3oはデータを受けとり、断定されたDATA ST Rデータストローブ信号をライン53を通して伝送する。In response, processor 3o receives the data and asserts DATA ST An R data strobe signal is transmitted over line 53.

読みとりオペレーション又は書込みオペレーションのいずれかにおいて、子装置 がRDY作動可能信号又は転送中にエラーが発生した場合にはERRエラー信号 を断定した後、プロセッサ3゜はDATA STRデータストローブ信号を否定 する。それから子装置はRDY作動可能信号又はERRエラー信号を否定し、次 にプロセッサ30がADR3STRアドレスストローブ信号を否定して転送を完 了する。In either read or write operations, the child device is the RDY ready signal or the ERR error signal if an error occurs during transfer. After asserting, the processor 3 denies the DATA STR data strobe signal. do. The slave device then negates the RDY ready signal or the ERR error signal and then The processor 30 negates the ADR3STR address strobe signal to complete the transfer. Complete.

プロセッサ30以外の、母m13に接続されたユニットは、母線マスターを構成 し、それを通して記憶装置11との転送を開始させることができる。入出力サブ システム12特にその入出力制御装置22は母線マスターになることができる。Units connected to the bus m13 other than the processor 30 constitute a bus master. Through this, transfer with the storage device 11 can be started. input/output sub System 12, particularly its input/output controller 22, can become a bus master.

母線マスターとなるために、入出力制御装置22はライン56を通してDMR直 接記憶要求信号を断定する0次にプロセッサ3oは、ライン57上でDMG直接 記憶許諾信号を断定し、この信号は入出力制御装置22により受けとられる。こ の時点で入出力制御装置は、プロセッサ30に関して以上に記されているものと 同じ方法で記憶機構との転送を開始させる。入出力制御装置は、転送を完了する まで、DMR直接記憶要求信号を断定された状態に維持する。こうして入出力制 御装置が数多くの転送を要求する場合、この装置は、転送が完了するまでDMR 直接記憶要求信号を断定された状態に保つことができる。DMR直接記憶要求信 号が断定されている間プロセッサ30は機能停止状態にある、すなわちプロセッ サは母線13のさまざまなライン上で信号を監視するがそれ以外いかなる命令も 実行しない。To become a bus master, I/O controller 22 connects directly to the DMR through line 56. The zero-order processor 3o asserting the direct storage request signal connects the DMG directly on line 57. Asserts a storage permission signal, which signal is received by input/output controller 22. child At this point, the input/output controller is as described above with respect to processor 30. Initiate transfers to and from storage in the same manner. I/O controller completes the transfer The DMR direct storage request signal is maintained asserted until. In this way, input/output system If the controlling device requests a large number of transfers, the device will use DMR until the transfers are complete. The direct store request signal can be kept asserted. DMR direct storage request message While the signal is asserted, processor 30 is in a stalled state, i.e., the processor 30 is The server monitors signals on the various lines of bus 13, but does not give any other commands. Not executed.

システムに多数の入出力サブシステム12が含まれている場合1母線マスターと なるべき入出力制御装置22になる別々の要求信号ハシステム制御装置に伝送さ れ、このシステム制御装置がD?IR直接記憶要求信号を断定し、DMG直接記 憶許諾信号の状態を監視する。プロセッサ30がDMG直接記憶許諾信号を断定 したとき、システム制御装置は入出力装置22の1つを、何らかの優先順位任意 決定方法に従って母線マスターになれる状態にする。If the system includes many input/output subsystems 12, one bus master Separate request signals to become the input/output controller 22 are transmitted to the system controller. Is this system control device D? Asserts the IR direct storage request signal and writes directly to the DMG. Monitor the state of storage permission signal. Processor 30 asserts DMG direct storage permission signal , the system controller assigns one of the input/output devices 22 to an arbitrary priority Make it possible to become a bus master according to the determination method.

母線13は又、状態信号及び制御信号を搬送するその他のラインも数多くもって いる。ライン6oは、システム内のオペレーションを同期化するのに用いられる CLKクロンク信号を搬送する。Bus 13 also has a number of other lines carrying status and control signals. There is. Line 6o is used to synchronize operations within the system CLK carries the clock signal.

母線13上のさまざまな信号は、CLKクロンク信号に呼応してタイミングされ ている。The various signals on bus 13 are timed in response to the CLK clock signal. ing.

ライン61は、2つの機能をもつCCTLキャッシュ制御信号を搬送する。19 86年9月12日に提出されたPaul Rnbinfeld各義゛の「デジタ ルデータ処理システムのためのキャッシュ無効化プロトコル」についての米国特 許同時係属出願明細書筒908.825号に記されているように、CCTLキャ ッシュ制御信号は例えば、入出力制御装置が母線マスターであり記憶機構11に 対する書込みオペレーションを行なっている場合、この制御装置2oにより断定 される。入出力制御袋222は、DALデータアドレスライン50上でADRS アドレス信号を、ライン52上でTRTYPE転送タイプ信号を伝送している間 、そしてライン51上でADR5STRアドレスストローブ信号を断定している 間、CCTL信号を断定する。CCTLキャッシュ制御信号が断定され、TRT YPE転送タイプ信号が記憶機構11への書込みオペレーションを指示している 場合、母線インターフェイス33は、キャッシュ入力全てのタグ41の内容をチ ェックする。母11113のDALデータアドレスライン50上のADR3信号 がタグ41の内容と一致する場合、母線インターフェイス33はそのキャッシュ ブロックのためのS失効フラグ42をリセットする。Line 61 carries a CCTL cache control signal that has two functions. 19 Paul Rnbinfeld submitted on September 12, 1986 U.S. Special Edition on ``Cache Invalidation Protocols for Digital Data Processing Systems.'' As noted in co-pending application No. 908.825, CCTL CA For example, if the input/output control device is the bus master and the bus control signal is stored in the storage device 11, If a write operation is being performed on the be done. The input/output control bag 222 provides an ADRS signal on the DAL data address line 50. address signal while transmitting the TRTYPE transfer type signal on line 52. , and asserting the ADR5STR address strobe signal on line 51. During this period, the CCTL signal is asserted. CCTL cache control signal is asserted and TRT YPE transfer type signal indicates write operation to storage 11 In this case, the bus interface 33 checks the contents of the tags 41 of all cache inputs. Check. ADR3 signal on DAL data address line 50 of mother 11113 matches the contents of the tag 41, the bus interface 33 caches the cache. Reset the S revocation flag 42 for the block.

CCTLキャッシュ制御信号も又、読みとりオペレーション中に要求されたキャ ッシュ35内にプロセッサがデータを記憶しないようにするため、記憶機構11 により断定される。これは、例えば、記憶機構がマルチボート記憶機構である場 合すなわち、それが各々別々の母線を通して記憶機構11をアクセスする複数の プロセッサにより共用されており、検索されているデータがこれらのプロセッサ 全てが使用できる1組のアドレス可能な記憶場所からのものである場合に、用い ることができる。かかるデータをキャッシュ35の中に記憶させることは望まし くない、これは、他のプロセッサが共用場所の内容を更新する可能性があるから である。又更新は母線13を通して行なわれないので、プロセッサ30により検 知されえない、キャッシュからのこのようなデータをプロセッサ30が使用した 場合、これは記憶機構内の該当する場所の内容と一致しない可能性がある。この CCTLキャ、シュ制御信号の使用に関連して、記憶機構11は、DALデータ アドレスライン50を通してそのデータ伝送と同時にCCTLキャッシュ制御信 号を断定し、データを除去する時点までこのCCTLキャッシュ制御信号を断定 された状態に維持する。The CCTL cache control signal also controls the cache requested during read operations. In order to prevent the processor from storing data in the storage 35, the storage mechanism 11 It is determined by This is true, for example, if the storage is multi-vote storage. That is, it has multiple The data being retrieved is shared by the processors and the data being retrieved is shared by these processors. Used if all are from a set of available addressable storage locations. can be done. It is desirable to store such data in cache 35. No, because other processors may update the contents of the shared location. It is. Also, since updates are not performed through bus 13, they are not detected by processor 30. Processor 30 has used such data from the cache without being aware of it. This may not match the contents of the appropriate location in storage. this In conjunction with the use of CCTL cache control signals, storage 11 stores DAL data. CCTL cache control signals are sent concurrently with the data transmission through address lines 50. This CCTL cache control signal is asserted until the point at which the data is removed. maintain the condition.

母線13には又CCRWRT BUF消去・書込み・緩衝信号を搬送するライン 62も含まれている。CLRWRT BUF消去書込み緩衝信号は、他の方法で はプロセッサ30外部で検出可能どならないプロセッサ30内部の成る種の条件 に呼応してプロセッサ30により断定される0例えば、プロセッサ30は、プロ セス文脈を切替えさせる命令を実行しているとき或いは業務中断ルーチン又は例 外ルーチンを実行し始めたとき、CLI? WRT BUF消去書込み緩衝信号 を断定する。CLRWRT BUF消去書込み緩衝信号は、命令実行中プロセッ サ制御回路40により生成されるマイクロ命令内のフィールドにより制御される 。Bus line 13 also includes a line that carries CCRWRT BUF erase/write/buffer signals. 62 is also included. CLRWRT BUF Erase Write Buffer Signal is a condition internal to the processor 30 that is not detectable outside the processor 30. 0 asserted by processor 30 in response to when executing an instruction that switches the process context or during a business interruption routine or example. When you start executing an external routine, the CLI? WRT BUF erase/write buffer signal Decide. CLRWRT BUF erase write buffer signal is used by the processor during instruction execution. controlled by fields within the microinstruction generated by the control circuit 40. .

CLRWRT BUF消去書込み緩衝信号が断定されると、書込みバッファ23 は、それが記憶機構11内に記憶されるべきデータを含んでいるか否かを見極め る。含んでいない場合には、何もしない、しかし書込みバッファ23に記憶機構 ll内に記憶すべきデータが含まれている場合には、このバッファはDMR直接 記憶要求信号を断定し、その残りのデータを記憶機構ll内に記憶する試みを続 ける。断定されたDMR直接記憶要求信号に応えて、プロセッサはDMG直接記 憶許諾信号を断定するがこの信号は書込みバッファ23により無視される。又プ ロセッサはm能停止もする。書込みバッファ23は、含まれているデータが全て 記憶機構ll内に適切に記憶されてしまうまでDMR直接記憶要求信号を断定さ れた状態に維持する。記憶中にいかなるエラーも発生しない場合、書込みバッフ ァ23はDMR直接記憶要求信号を否定しプロセッサ30が続行できるようにす る。CLRWRT BUF When the erase write buffer signal is asserted, the write buffer 23 determines whether it contains data to be stored in the storage mechanism 11. Ru. If it does not, do nothing, but add storage to the write buffer 23. If the ll contains data to be stored, this buffer is directly Assert the storage request signal and continue attempting to store the remaining data in storage Let's go. In response to the asserted DMR direct storage request signal, the processor performs a DMG direct storage request signal. The storage permission signal is asserted, but this signal is ignored by write buffer 23. Matatapu The processor also shuts down. The write buffer 23 contains all data The DMR direct storage request signal is asserted until it is properly stored in the storage device II. Keep it in a clean condition. If no errors occur during storage, write buffer The processor 23 negates the DMR direct storage request signal and allows the processor 30 to continue. Ru.

記憶機構11への書込み中エラーが発生した場合、書込みバンファ23はプロセ ッサに対してエラー信号を送り、プロセンサ30が現行の文脈中のエラーを見つ け出し修正するルーチンを処理することができるようにする。エラーが検出され る前にプロセッサが文脈を切替えできる状態にある場合、当初データを生成した 文脈を見極めることは困難となる。エラーの回復は、文脈が識別できる場合簡単 になる。従って、書込みバンファ23は、現行の文脈からのデータの全てが記憶 機構内に適切に記憶されるまでプロセンサが文脈を切替えできないようにする。If an error occurs while writing to the storage mechanism 11, the write bumper 23 sends an error signal to the pro-sensor 30, which detects the error in the current context. To be able to process a routine that corrects the offset. error detected If the processor is ready to switch contexts before Determining the context becomes difficult. Error recovery is easier if the context can be identified become. Therefore, the write buffer 23 stores all of the data from the current context. Prevents the prosensor from switching contexts until it is properly stored within the mechanism.

t ハ 占プロセンサ31−了〕々」云nプロセッサ30は、(1)第2A図と 関連づけて以下に説明されているように、実行すべきオペレーションを指示する ため浮動小数点プロセッサ31に浮動小数点命令の命令コードを転送するため、 (2)第2B図及び第2C図と関連づけて説明されているように処理のため浮動 小数点プロセッサ31にオペランドデータが転送されうるようにするため、そし て(3)第2D図と関連づけして説明されているように浮動小数点プロセッサ3 1から処理済データを得るため、浮動小数点プロセッサ31にも接続されている 。プロセッサ30及び浮動小数点プロセッサ31は、CP STA (1: O )浮動小数点状態信号を搬送するライン70及びCP DAT (5:0)浮動 点データ信号を搬送するライン71という2つのラインセットにより相互接続さ れている。浮動小数点プロセッサ31は又、DALデータアドレスライン50. CLK信号を受けとるためのライン60、ADR3STRアドレスストローブ信 号を受けとるためのライン51、RDY作動可能信号を受けとるためのライン5 4、ERRエラー信号を受けとるためのライン55及びDMG直接記憶許諾信号 を受けとるためのライン57を含む、母線13の複数のラインにも接続されてい る。 CP STA (1:0)浮動小数点状態信号及びCP DAT (5:  O)浮動小数点データ信号は、ライン60上のCLK信号と同期的に伝送され る。(1) Figure 2A and Indicates the operation to be performed, as described below in association with In order to transfer the instruction code of the floating point instruction to the floating point processor 31, (2) floating for processing as described in connection with Figures 2B and 2C; In order to enable operand data to be transferred to the decimal point processor 31, (3) Floating point processor 3 as described in connection with FIG. 2D. 1 is also connected to a floating point processor 31 to obtain processed data from . The processor 30 and the floating point processor 31 are CP STA (1:O ) floating point status signal carrying line 70 and CP DAT (5:0) floating interconnected by two sets of lines, lines 71 carrying point data signals. It is. Floating point processor 31 also connects DAL data address lines 50 . Line 60 for receiving CLK signal, ADR3STR address strobe signal line 51 for receiving the signal, line 5 for receiving the RDY ready signal. 4. Line 55 for receiving ERR error signal and DMG direct storage permission signal It is also connected to multiple lines of bus bar 13, including line 57 for receiving Ru. CP STA (1:0) floating point status signal and CP DAT (5: O) The floating point data signal is transmitted synchronously with the CLK signal on line 60. Ru.

遊び(あき)状態にある間、浮動小数点プロセッサ31はライン60上のCLK 信号と同期的に、ライン70及び71上の信号の状態をサンプリングする。ライ ン71のうち少なくとも1本が断定されたレベル信号を搬送しているとき、浮動 小数点プロセッサ31はこれらのライン上の信号及びライン70上の信号をラン チングする。第2A図を参照すると、プロセッサ30が浮動小数点プロセンサ3 1に命令を伝送する場合、プロセッサ30は、その命令の命令コードの少なくと も一部分を、CLKクロック信号の選ばれた数の軽い連続音により規定される間 隔の間、ライン71を通してCP DAT (5: 0)浮動小数点データ信号 として、浮動小数点プロセッサ31へ伝送する。この間隔中、CLKクロフク信 号の連続音の1つと同期的に、浮動小数点プロセッサ31は信号をランチングし 記憶する。この間隔が終了した時点で、プロセンサ30はライン70及び71か ら信号を除去する。While in the idle state, floating point processor 31 outputs CLK on line 60. The state of the signals on lines 70 and 71 is sampled synchronously with the signal. Rai floating when at least one of the pins 71 is carrying an asserted level signal. Decimal point processor 31 runs the signals on these lines and the signal on line 70. Ching. Referring to FIG. 2A, processor 30 processes floating point processor 3 1, the processor 30 transmits at least the instruction code of the instruction. also for a period defined by a selected number of continuous tones of the CLK clock signal. CP DAT (5:0) floating point data signal through line 71 during the interval It is transmitted to the floating point processor 31 as follows. During this interval, CLK Kurofuku signal Synchronous with one of the signal sequences, floating point processor 31 launches the signal. Remember. At the end of this interval, the prosensor 30 switches to lines 70 and 71. remove the signal.

ライン71を介して送られるCP DAT(5:00)浮動小数点データ信号は 、実行されるべき浮動小数点演算を識別するのに十分であり、且つ該演算におい て使用されるオペランドの数をも識別する。ライン71を経由する情報の伝達と 同時に、他の情報がCP 5TA(1:00)浮動小数点状況信号としてライン 70を介して送られるが、これは浮動小数点処理に関する他の情報を提供するも のである。即ち、浮動小数点オペランドはデータ・タイプと呼ばれる幾つかのフ ォーマントで符号化することが出来、該オペランドのフォーマントに関する情報 はライン70を介してCP 5TA(1:00)浮動小数点状況信号として送ら れる。The CP DAT (5:00) floating point data signal sent via line 71 is , is sufficient to identify the floating-point operation to be performed, and Also identifies the number of operands used. Information transmission via line 71 and At the same time, other information is sent to the CP5TA (1:00) line as a floating point status signal. 70, which also provides other information regarding floating point processing. It is. That is, floating-point operands have several types called data types. information about the formant of the operand. is sent as a CP5TA (1:00) floating point status signal over line 70. It will be done.

一実施例においては、オペランドのフォーマントに関する情報のうちの一部も演 算情報と共にライン71を介して送られる。In one embodiment, some of the information about the formants of the operands is also performed. It is sent via line 71 along with calculation information.

演算コードを受信すると、浮動小数点演算処理装置31はそれを復号して、実行 するべき演算と所要のオペランドの数とを判定する0次に、演算処理装置30( 演算コード送信に応答)と浮動小数点演算処理装置31 (演算コード受信に応 答)とは、オペランドがDALデータアドレスライン50を介して送られる状態 となる。データ・タイプ情報は浮動小数点演算処理装置31に該オペランドの各 々のフォーマントを判定するために使われる。成るオペランドフォーマットに関 しては、DALデータアドレスライン50を経由する一回の伝送に納まるより多 数のビットが成るオペランドフォーマットに必要とされるので、単一のオペラン ドを転送するために複数回の転送が必要となる。そこで、データ・タイプ情報は 、各オペランドを転送するのに必要なりALデータアドレスライン50経由の転 送回数も示す。Upon receiving the operation code, the floating point arithmetic processing unit 31 decodes it and executes it. Next, the arithmetic processing unit 30 ( (responses to operation code transmission) and floating point arithmetic processing unit 31 (responses to operation code reception) A) is the state in which the operand is sent via the DAL data address line 50. becomes. The data type information is sent to the floating point processor 31 for each of the operands. It is used to determine the formant of each. Regarding the operand format more data than can fit in a single transmission via DAL data address lines 50. A single operand is required because the operand format consists of several bits. Multiple transfers are required to transfer the code. So the data type information is , necessary to transfer each operand, transfer via AL data address line 50. It also shows the number of times it has been sent.

オペランドは、三つのソース、即ち、メモリー11(第1図)、カーシュ35、 又はデータ経路36中の演算処理装置のレジスター(第3A図に示す)のいずれ かに格納される。単一の演算に要する色々なオペランドもこれら三つのソースの いずれかに格納する事が出来る。しかし、単一のオペランドを転送するのにDA Lデータアドレスライン50経由の転送を複数回行なう必要がある場合には、そ の転送は普通は全て車−のソースに対して為される。The operands come from three sources: memory 11 (Figure 1), Kersh 35, or any of the processor registers in data path 36 (shown in FIG. 3A). It is stored separately. The various operands required for a single operation are also derived from these three sources. It can be stored anywhere. However, to transfer a single operand, DA If the transfer via the L data address line 50 needs to be performed multiple times, then All transfers are normally made to a vehicular source.

第2B図は、メモリーからオペランドを回収するべく送信される信号の状態を示 し、第2C図はカーシュ35又はデータ経路36中のレジスターからオペランド を転送するために送信される信号を示す、即ち、第2B図及び第2C図はDAL アドレスライン50経出で転送を一回行なう信号の状態を示しているのであり、 単一のオペランドのために複数回の転送を要することがあることを理解するべき である。Figure 2B shows the state of the signal sent to retrieve the operand from memory. and FIG. 2B and 2C show the signals sent to transfer the DAL It shows the state of the signal that performs one transfer on the address line 50, It should be understood that multiple transfers may be required for a single operand. It is.

第2B図を参照する。若しオペランドがメモリー11にあれば、演算処理装置3 0はその回収をメモリー11から開始する。即ち、演算処理装置30はADRS アドレス信号をDALデータアドレスライン50に出力して上記の如くに読み出 し動作を実行し、ADR3STRアドレスストローブ信号を表明する。その短時 間後、演算処理装置30はCP 5TA(1:00)浮動小数点状況信号を二進 値0を存するライン70に出力する、即ち、両方のCP 5TA(1:00)浮 動小数点状況信号を否定する。更に、演算処理装置30は、CP DAT(5: 00)浮動小数点データ信号をライン70に送信し、そこでCP DAT (5 : 4)浮動小数点データ信号は、DALデータアドレスライン50を介して送 信されるデータのうちのどれほどの量が該オペランドで使用されるかを示すアド レスアライメントコードを包含している。See Figure 2B. If the operand is in the memory 11, the arithmetic processing unit 3 0 starts its collection from memory 11. That is, the arithmetic processing unit 30 Output the address signal to the DAL data address line 50 and read it as described above. performs the address strobe operation and asserts the ADR3STR address strobe signal. that short time After the interval, the arithmetic processing unit 30 converts the CP 5TA (1:00) floating point status signal into binary output to line 70 with value 0, i.e. both CP 5TA (1:00) floating Negates the floating point status signal. Furthermore, the arithmetic processing unit 30 has a CP DAT (5: 00) floating point data signal to line 70 where it is sent to CP DAT (5 :4) Floating point data signals are sent via DAL data address lines 50. An address that indicates how much of the transmitted data is used by this operand. Contains the alignment code.

該オペランドがDAL (5: O)データアドレスライン上の短リテラルであ ればCP DAT (0)浮動小数点データ信号が主張され、そうでなければC P DAT (1)浮動小数点データ信号が主張される。The operand is a short literal on the DAL (5:O) data address line. If CP DAT (0) floating point data signal is asserted, otherwise C P DAT (1) Floating point data signal is asserted.

浮動小数点処理装置31は第2A図と関連して上記した手順で既に演算情報を受 信しているので、該装置はオペラジドを受信する状態である。主張されたCP  DAT (5: 0)浮動小数点データ信号は、浮動小数点演算処理装置31に 対して、バス13の選択されたライン、特にADR3STRアドレスストローブ 信号を運ぶライン51上の信号をサン・ブリングする様に指示する。The floating point processing unit 31 has already received the calculation information in the procedure described above in connection with FIG. 2A. The device is ready to receive operands. Claimed CP DAT (5: 0) floating point data signal is sent to floating point arithmetic processing unit 31 On the other hand, selected lines of bus 13, in particular the ADR3STR address strobe Instructs to sample the signal on the line 51 carrying the signal.

浮動小数点演算処理装置31は、ADR3STRアドレスストローブ信号を使用 して、オペランドがメモリー11から回収されていることを判定する。若し、そ れが主張されたCP DAT(5: 0)浮動小数点データ信号を受信する時に ADl?S STRアドレスストローブ信号が主張されると、浮動小数点演算処 理装置31は、メモリー11によるライン54上のRDYレディー信号の主張に 応答してDALデータアドレスライン50上のデータ信号をラッチする。演算処 理装置30はDAT STRデータストローブ信号をもって応答して転送を完了 させる。The floating point arithmetic processing unit 31 uses the ADR3STR address strobe signal. and determines that the operand has been retrieved from memory 11. If so, When it receives an asserted CP DAT(5:0) floating point data signal ADl? S When the STR address strobe signal is asserted, floating point operations The controller 31 responds to the assertion of the RDY ready signal on line 54 by the memory 11. In response, the data signal on DAL data address line 50 is latched. Arithmetic processing The management device 30 responds with the DAT STR data strobe signal and completes the transfer. let

若しメモリー11が主張されたRDYレディー信号の代わりに主張されたERR エラー信号を伴う回収要求に応答するならば、浮動小数点演算処理装置31はD ALデータアドレスライン50上の送信データをラッチしないことが理解される であろう、演算処理装置30は、要求されることのある再試行等のエラー回復動 作が要求されたならばそれを実行し、第2B図に示した動作を繰り返す。If memory 11 is asserted ERR instead of asserted RDY ready signal If responding to a retrieval request with an error signal, the floating point arithmetic processing unit 31 It is understood that the transmit data on the AL data address line 50 is not latched. The processing unit 30 may perform error recovery actions such as retry that may be required. If an action is requested, it is performed and the operations shown in Figure 2B are repeated.

第2C図は、オペランドがカーシュ35にあるにしても、或はデータ経路36中 のレジスターにあるにしても、オペランドを演算処理装置30から浮動小数点演 算処理装置31への転送を理解するのに有益なタイミング図である(第3A図と 関連させて後述する)、いずれの場合にも、該演算処理装置はDALデータアド レスライン50上のデータ信号と、第2B図と関連して上記したのと同じ符号づ けを存するCP DAT (5: 0)浮動小数点データ信号とを置き、CP  5TA(1:00)浮動小数点状況信号の両方を否定する。これらの信号は、演 算処理装置30により、選択された数のCLKクロック信号の期間中、維持され る。その期間中、浮動小数点演算処理装置31はDALデータアドレスライン5 0上の信号をラッチしている。−オペランドの全体を転送するためにDALデー タアドレスライン50経由の複数転送が必要な場合には、第2C図に示されてい るシーケンスが反復される。FIG. 2C shows that whether the operand is in the cache 35 or in the data path 36, The operand is transferred from the processing unit 30 to the floating point FIG. 3A is a timing diagram useful for understanding the transfer to the processing unit 31 (FIGS. 3A and 3A). (described below in connection), in either case, the processing unit The data signal on reply line 50 and the same symbology as described above in connection with FIG. 2B. CP DAT (5:0) floating point data signal and CP 5TA (1:00) Negate both floating point status signals. These signals is maintained by the processor 30 for the duration of a selected number of CLK clock signals. Ru. During that period, the floating point arithmetic processing unit 31 is connected to the DAL data address line 5. The signal above 0 is latched. - DAL data to transfer the entire operand If multiple transfers via address line 50 are required, the The sequence is repeated.

オペランドのデータタイプが、オペランド全体を転送するためにDALデータア ドレスライン50経由の多重転送を必要とする様なデータタイプであれば、演算 処理装置30、メモリー11及び浮動小数点演算処理装置31は、オペランド全 体が転送されるまで第2B図及び第2C図に示されている動作を反復する。The data type of the operand requires a DAL data access to transfer the entire operand. If the data type requires multiple transfer via the dress line 50, the calculation The processing unit 30, memory 11 and floating point arithmetic processing unit 31 process all operands. Repeat the operations shown in Figures 2B and 2C until the body is transferred.

第2B図に示されている動作シーケンスは、下記の相違点を除いて、第2C図に 示されている動作シーケンスと同様であることが理解されるであろう、CP D AT(5:00)浮動小数点データ信号が主張された時ADR3STRアドレス ストローブ信号がライン51上で主張されたならば、浮動小数点演算処理装置3 1は、主張されたRDYレディー信号を、オペランド(又はオペランドの一部分 )がその時DALデータアドレスライン50上にあることの表示として利用する 。しかし、CP DAT (5:00)浮動小数点データ信号が主張された時に ADRS STRアドレスストローブ信号が主張されなければ、浮動小数点演算 処理装置31は、CP DAT(5:00)浮動小数点データ信号の主張を、オ ペランド(又はオペランドの一部分)がその時DALデータアドレスライン50 上にあることの表示として利用する。The operating sequence shown in Figure 2B is identical to that shown in Figure 2C, with the following differences: It will be understood that the sequence of operations shown is similar to that of CP D AT (5:00) ADR3STR address when floating point data signal is asserted If the strobe signal is asserted on line 51, floating point processor 3 1 sends the asserted RDY ready signal to the operand (or part of the operand). ) is currently on the DAL data address line 50. . However, when the CP DAT (5:00) floating point data signal is asserted ADRS STR If address strobe signal is not asserted, floating point operations The processing unit 31 asserts the CP DAT (5:00) floating point data signal as an output signal. The operand (or part of the operand) is then on the DAL data address line 50. Use it as an indication of what is above.

両方の場合において、浮動小数点演算処理装置31は、第1の場合にはRDYレ ディー信号の受信後に、第2の場合には主張されたCo DAT(5:00)浮 動小数点データ信号の受信後に、ライン60上のCLKクロック信号と同期して DALデータアドレスライン50上の信号をランチする。In both cases, the floating point arithmetic processing unit 31 uses the RDY register in the first case. After receiving the Dee signal, the asserted Co DAT (5:00) floats in the second case. After receiving the floating point data signal, in synchronization with the CLK clock signal on line 60. Launch the signal on DAL data address line 50.

オペランドが転送された後、演算処理装置30及び浮動小数点演算処理装置31 は、浮動小数点演算処理装置f31が結果を送信するべく処理された時演算処理 装置30がそれを受信する様に処理される状態になる。第2D図は、処理された データを演算処理装置30へ転送するために演算処理装置30及び浮動小数点演 算処理装置31に利用される動作シーケンスを詳細に示すタイミング図である。After the operands are transferred, the arithmetic processing unit 30 and the floating point arithmetic processing unit 31 is the arithmetic processing when the floating point arithmetic processing unit f31 is processed to send the result. The device 30 is then arranged to receive it. Figure 2D shows the processed In order to transfer data to the processing unit 30, the processing unit 30 and the floating point FIG. 3 is a timing diagram showing in detail an operation sequence used by the calculation processing device 31. FIG.

処理されたデータは、結果が負であったかゼロであったかを示すと共に結果に関 する他の選択された事実を示す状態コードと、浮動小数点演算処理装置31によ り実行された計算の値を表わすデータ信号との両方から成る。The processed data indicates whether the result was negative or zero and provides information about the result. status code indicating other selected facts and the floating point arithmetic processing unit 31 and a data signal representing the value of the calculation performed.

第2D図を参照する。初めに演算処理装置30はライン70及び71を介して信 号コードを送信して、処理されたデータを受信出来る状態にあることを示す、一 実施例においては、CP 5TA(1: OO)浮動小数点状況信号は両方とも 否定され、CP DAT(3)浮動小数点データ信号は主張され他は否定される 。その後、浮動小数点演算処理装置31はライン70及び71を介して送信出来 る。See Figure 2D. Initially, processing unit 30 receives signals via lines 70 and 71. code to indicate that it is ready to receive processed data. In the example, both CP5TA(1:OO) floating point status signals negated, CP DAT(3) floating point data signal asserted, others negated . Floating point processor 31 can then transmit via lines 70 and 71. Ru.

浮動小数点演算処理装置!31は、処理されたデータを転送出来る状態の時、状 態コードを表わすCP DAT (5: 0)浮動小数点データ信号と同時に、 その効果に対するコードを表わすCPSTA (1: OO)浮動小数点状況信 号を送信する。浮動小数点演算処理装置31は、選択された数のCLKクロンク 信号の期間中これらの信号を維持し、その後データ信号をDALデータアドレス ライン50上に出力すると共に、その効果に対するコードをライン70及び71 に出力する。処理されたデータ信号を転送するためにDALデータアドレスライ ン50経由の複数転送が必要である時には、浮動小数点演算処理装置31はCL Kクロフク信号と同期してそれらを転送する。Floating point arithmetic processing unit! 31 is the state when the processed data can be transferred. At the same time as the CP DAT (5:0) floating point data signal representing the state code, CPSTA (1:OO) floating point status information representing the code for that effect. send the issue. The floating point arithmetic processing unit 31 executes a selected number of CLK clocks. Keep these signals for the duration of the signal and then transfer the data signal to the DAL data address. output on line 50 and code for that effect on lines 70 and 71. Output to. DAL data address line to transfer processed data signals. When multiple transfers via the link 50 are required, the floating point arithmetic processing unit 31 These are transferred in synchronization with the K Kurofuku signal.

浮動小数点演算処理装置31がオペランドを処理している間、結果を演算処理装 置30に送信する前に、演算処理装置30は、入出力サブシステム12がメモリ ー11との間で転送を行なうことを許すDMGダイレクトメモリー許諾信号を主 張する事が出来る。演算処理装置30が処理されたデータを受信出来る状態であ ることを該演算処理装置が表示した後、浮動小数点演算処理装置31はライン5 7の状態を監視する。浮動小数点演算処理装置31が処理されたデータを戻せる 状態である時にDMGダイレクトメモリー許諾信号がライン57に主張されると 、浮動小数点演算処理装置31は、処理されたデータを戻すことを、DMG信号 が否定された後まで遅延させる。While the floating-point processing unit 31 is processing the operands, the result is sent to the processing unit 31. Before transmitting data to the processor 30, the processing unit 30 inputs and outputs the input/output subsystem 12 from memory. -11, the DMG direct memory permission signal that allows transfer between It can be stretched. The arithmetic processing unit 30 is in a state where it can receive processed data. After the processing unit indicates that the floating point processing unit 31 Monitor the status of 7. Floating point arithmetic processing unit 31 can return processed data If the DMG direct memory grant signal is asserted on line 57 when , the floating point arithmetic processing unit 31 uses the DMG signal to return the processed data. Delay until after is denied.

また、例えばメモリー11からオペランドを検索している時にエラーが発生する と、演算処理装置30は、浮動小数点演算処理装置I31から処理済データを受 信したい旨を示さない、演算処理装置30は浮動小数点演算処理装置31の動作 を打ち切らない;むしろ、演算処理装置30が新しい演算コードを浮動小数点演 算処理装置31に送ると、浮動小数点演算処理袋fi31はその演算コードで動 作する。演算処理装置130が処理済データを受信出来る状態であることを示す 、演算処理装置30からライン70及び71を介して送信されるCP 5TA( 1:00)浮動小数点状況信号とCP DAT(5:00)浮動小数点データ信 号とは、浮動小数点演算処理装置31がそれらを区別し得る様にするため、如何 なる演算コードにも対応していては成らないことが分かるであろう。Also, an error occurs when retrieving an operand from memory 11, for example. Then, the arithmetic processing unit 30 receives the processed data from the floating point arithmetic processing unit I31. The arithmetic processing unit 30 does not indicate that it wishes to believe in the operation of the floating point arithmetic processing unit 31. rather, arithmetic processing unit 30 generates a new opcode in a floating-point operation. When sent to the arithmetic processing unit 31, the floating point arithmetic processing bag fi31 operates with that arithmetic code. make Indicates that the arithmetic processing unit 130 is ready to receive processed data. , CP 5TA( 1:00) Floating point status signal and CP DAT (5:00) Floating point data signal What is the number in order to enable the floating point arithmetic processing unit 31 to distinguish between them? It will be understood that this cannot be achieved if it also corresponds to the operation code.

ヱニL径監主l 演算処理装置30のデータ経路36を第3A図及び第3B図と関連させて説明す る。第3A図を参照すると、データ経路36は、GPOないしGP14で示した 15個の汎用レジスターの組と、TEMPOないしTEMP 15で示した16 個の一次しシスター81組と、WOないしW7として示した8個の作業レジスタ ー82の組とを含む複数組のレジスターを含んでいる。また、データ経絡36は 算術論理ユニット83を含んでおり、このユニットは、ALU@御回路84から のALU CTRL制御信号の制御下で、幾つかの出所からのデータに算術演算 及び論理演算を行なう、ALUwJ御回884は、下記の通りに制御回路40( 第2図)から提供されるALU OP SEL演算選択信号によって制御される (第3C図)。算術論理ユニット83において使われるデータは、レジスター8 0.81及び82から、乗算及び除算と関連して使用されるQレジスター(図示 せず)から、演算処理装置30、メモリー11又は所要のデータがカーシュ内に ある場合にはカーシュ35内の色々なレジスターから、並びに当該技術分野にお いて周知されている様に咳データ処理システム内の他の出所から、提供される。Eni L-diameter supervisor l The data path 36 of the processing unit 30 will be described in conjunction with FIGS. 3A and 3B. Ru. Referring to FIG. 3A, data path 36 is designated GPO through GP14. A set of 15 general-purpose registers and 16 indicated by TEMPO or TEMP 15 81 primary sisters and 8 working registers designated as WO to W7 -82 sets of registers. Also, the data meridian 36 is It includes an arithmetic logic unit 83, which is connected to the ALU@control circuit 84. The ALU performs arithmetic operations on data from several sources under the control of the CTRL control signal. The ALUwJ controller 884, which performs logic operations and logic operations, is controlled by the control circuit 40 ( Controlled by the ALU OP SEL operation selection signal provided from Figure 2) (Figure 3C). The data used in arithmetic logic unit 83 is stored in register 8. 0.81 and 82, the Q register used in conjunction with multiplication and division (as shown) ), the processing unit 30, memory 11 or required data is stored in the cache. In some cases, from various registers within Karsh 35, as well as in the field of The data may be provided from other sources within the cough data processing system as is well known in the art.

算術論理ユニット83は、処理するべきデータを二つの入力端子、即ちA IN 入力端子及びB IN入力端子、を通して受信し、制御マイクロワードからのA LU CTRL制御信号に従って該データを処理し、処理済データをW OUT ライト出力端子を通して送信する。入力データの出所は全てワイヤードOR構成 でA IN及びB IN入力端子に接続されている。制御回路40(第1図)か らの制御マイクロワードは、A IN及びBIN入力端子に実際に送信されるべ きデータの出所と、処理済ブタ−が格納される格納場所とを決定する。即ち、一 実施例においては、A IN入力端子へのデータの出所は、組80.81及び8 2内のレジスターの全てと、演算処理装置内の選択された雑多なレジスターと、 メモリー11又はカーシュ35を含む、一方、B IN入力端子へのデータの出 所は、組82のレジスターと、選択された他の雑多な演算処理装置レジスターと のみを含む、処理済データは、若しそうでなければデータの出所となるかも知れ ない如何なる場所にも書き込む事が出来る。The arithmetic logic unit 83 inputs the data to be processed to two input terminals, namely A IN A from the control microword is received through the input terminal and the B IN input terminal. Process the data according to the LU CTRL control signal and send the processed data to W OUT Send through the light output terminal. All input data sources are wired OR configuration and is connected to the A IN and B IN input terminals. Control circuit 40 (Fig. 1) These control microwords should actually be sent to the A IN and BIN input terminals. Determine the source of the processed data and the storage location where the processed pigs will be stored. That is, one In the example, the source of the data to the A IN input terminal is the set 80.81 and 8 2 and selected miscellaneous registers in the processing unit; Contains memory 11 or Kersh 35, while outputting data to B IN input terminal. The location is set 82 registers and selected other miscellaneous processing unit registers. Processed data containing only data that might otherwise be the source of the data You can write anywhere you want.

従って、汎用レジスター80は二組の制御信号、即ち一組のA EN GPR″ A′イネーブル汎用レジスター制御信号と、−UのW EN GPRライトイネ ーブル汎用レジスター制御信号とを受信する。演算論理ユニット83のA IN 入力が汎用レジスターの内容を受信するべき場合には、その汎用レジスターの内 容が算術論理ユニット83のA IN入力端子に送信されることを可能にするA  EN GPR’A’イネーブル汎用レジスター制御信号のうちの対応する一つ が主張される。同様に、算術論理ユニット83の出力が汎用レジスター80の一 つにロードされるべき場合には、その汎用レジスターに対応する一つのWEN  GPRライトイネーブル汎用レジスター制御信号が主張される。Therefore, the general purpose register 80 has two sets of control signals, namely one set A EN GPR'' A' enable general register control signal and -U's W EN GPR write input Receives cable general-purpose register control signals. A IN of arithmetic logic unit 83 If the input should receive the contents of a general-purpose register, A that allows the content to be sent to the A IN input terminal of the arithmetic logic unit 83 EN Corresponding one of the GPR'A' enable general-purpose register control signals is claimed. Similarly, the output of arithmetic logic unit 83 is one of general purpose registers 80. one WEN corresponding to that general-purpose register. The GPR write enable general register control signal is asserted.

一時しシスターの組81と作業レジスターの組82とは同様の制御信号を受信す る。即ち、一時レジスターの組81は、選択された一時しシスターの内容が算術 論理ユニット83のA IN入力端子へ送られることを可能にするための一組の A EN TEMP A。The temporary sister set 81 and the working register set 82 receive similar control signals. Ru. That is, the set of temporary registers 81 is such that the contents of the selected temporary register are arithmetic. A set of A EN TEMP A.

イネーブル一時制御信号を受信する。また、−組の− EN TE?IPライト イネーブル一時制御信号は、算術論理ユニット83のWOυT出力端子からの処 理済データが一時しシスターの&u8]内の選択された一時しシスターに格納さ れることを可能にする。Receive an enable temporary control signal. Also, - EN TE of group -? IP light The enable temporary control signal is processed from the WOυT output terminal of arithmetic logic unit 83. The financial data is stored in the selected temporary sister in the temporary sister &u8]. make it possible to

作業レジスターの組82は、選択された作業レジスターの内容がA IN及びB  IN入力端子にそれぞれ転送されることを可能にするための一組のA EN  WR”A”及びA EN WR“B”イネーブル作業レジスター制御信号を受信 する。また、作業レジスターの組82は、算術論理ユニット83からの処理済デ ータが選択された作業レジスターに格納されることを可能にするための一組のW  EN WRライトイネーブル作業レジスター制御信号を受信する。算術論理ユ ニット83のA IN及びB IN入力端子及び処理済データを格納することの 出来る格納場所へのデータの他の出所のために同様の制御信号(図示せず)が発 生される。The set of work registers 82 is such that the contents of the selected work register are A IN and B. A set of A EN to enable each to be transferred to the IN input terminal WR “A” and A EN WR “B” enable work register control signal received do. A set of working registers 82 also includes processed data from arithmetic logic unit 83. A set of W to enable data to be stored in the selected working register. EN Receive the WR write enable work register control signal. arithmetic logic unit A IN and B IN input terminals of the unit 83 and for storing processed data. Similar control signals (not shown) may be issued for other sources of data to possible storage locations. be born.

第3B図は、第3A図に示した色々なレジスター制御信号と、図示しない他の制 御信号とを発生させる回路の論理図である。初めに、制御マイクロワードは、算 術論理ユニット83のA IN及びB IN入力端子へ転送される信号の出所を 制御する信号と、W OUT出力端子からの信号の宛先を制御する信号とを定義 する三つのフィールドを含んでいる。即ち、制御信号マイクロワードは、A 5 EL(51) “A”選択制御信号と、B 5EL(3: 0) “B′選択制 御信号、及びDEST (1: 0)宛先(即ち、ライト)選択制御信号とを定 義するフィールドを含む。Figure 3B shows the various register control signals shown in Figure 3A and other controls not shown. FIG. 2 is a logic diagram of a circuit that generates a control signal. Initially, the control microword The source of the signal transferred to the A IN and B IN input terminals of the logic unit 83 is Define the signal to control and the signal to control the destination of the signal from the WOUT output terminal It contains three fields. That is, the control signal microword is A5 EL (51) "A" selection control signal and B 5EL (3: 0) "B' selection system control signal, and the DEST (1:0) destination (i.e. write) selection control signal. Contains fields that define

制御回路40(第1図〉は、新しい指令の処理を開始する時NEW lN5T新 指令信号を主張し、各オペランド・スペシファイアーの復号を開始する時にはN XT SPCネクスト・スペシファイアー信号を主張する。第3B図を参照する に、制御回路40からのNEW lN5T新指令信号に応答して、カウンタ85 が初期化される。オペランド・スペシファイアーが復号される毎に、制御回路は NXT SPCネクスト・スベシファイアー信号を主張し、該カウンタのカウン ト動作を可能にする。カウンタ85は、復号されているオペランド・スペシファ イアーを識別する二進化信号SNスベシファイアー数を発生させる。When the control circuit 40 (Fig. 1) starts processing a new command, the control circuit 40 (FIG. 1) N when asserting the command signal and starting decoding each operand specifier. XT Assert SPC Next Specifier signal. See Figure 3B In response to the NEW lN5T new command signal from the control circuit 40, the counter 85 is initialized. Each time the operand specifier is decoded, the control circuit NXT Asserts the SPC next subversifier signal and to enable automatic operation. Counter 85 indicates the operand specifier being decoded. Generates a binary signal SN subspecifier number identifying the ear.

該SNスペシファイアー数傷信号応答して、二つのデコーダ86及び87がそれ ぞれ出力信号WX EN WSN(Xはカウンタ85から信号が発生される順に 0,2.4.7.3.1である)及びWX EN WSN+1 (Xは1.3. 5.0.4.2である)を発生させる。−最に、オペランドは、デジタルデータ 処理システムで算術演算又は論理演算が為される前にデジタルデータ処理システ ム以外のどこかから作業レジスター82内に転送され、WX EN WSN及び WX EN WSN+1信号は、オペランドがそれぞれの作業レジスターにロー ドされる順番に関連する。しかし、一作業レジスターが提供し得るより多いスペ ースをデータ項目が必要とする場合には、その一部はWX ENWSN信号によ り特定される作業レジスターにロードされ、残りはWX EN WSN+1で特 定される作業レジスターにロードされる。In response to the SN specifier signal, two decoders 86 and 87 detect it. Output signals WX, EN, WSN (X is the order in which the signals are generated from the counter 85) 0, 2.4.7.3.1) and WX EN WSN+1 (X is 1.3. 5.0.4.2). −Finally, the operand is digital data. A digital data processing system is used before an arithmetic or logical operation is performed on the processing system. WX EN WSN and The WX EN WSN+1 signal indicates that the operands are loaded into their respective working registers. related to the order in which they are coded. However, more space than one working register can provide. If a data item requires a source, some of it is The rest is loaded into the work register specified by WXEN WSN+1. is loaded into the specified working register.

例えば、成る指令を実行している際に各オペランドが単一の作業レジスターに納 まるならば、第1オペランドは作業レジスター82のレジスター0に転送され、 第2オペランドはレジスター2に、第3オペランドはレジスター4に転送される など、デコーダ86により特定される順序で転送される0本書記載の特定の実施 例では最大6個のオペランドが指令実行に使用される。若し各オペランドが二つ の作業レジスターを必要とするならば、第1オペランドはデコーダ86により決 定されるレジスター0と、デコーダ87により決定されるレジスター1とに転送 される。For example, when executing a directive consisting of If so, the first operand is transferred to register 0 of working register 82; The second operand is transferred to register 2, and the third operand is transferred to register 4. etc., in the order specified by decoder 86. In the example, up to six operands are used for command execution. If each operand is two , the first operand is determined by decoder 86. Transferred to register 0 determined by decoder 87 and register 1 determined by decoder 87. be done.

デコーダ90はA SEL (5:00)”A″選択制御信号を受信し、該制御 信号の符号付げに応答して数個のA EN XXイネープ+J 7グ信号(XX はG P RO−14、TE?IPO−TEMP15、WO−W7、WSN、W SN+1、・及び0THERを指す、ここで“0THER”は、前述のQレジス ターを含む、演算処理装置30内の他の選択されたレジスターに関する)を発生 させる。同様に、デコーダ91はB 5EL(3:O) “B″選択制御信号を 受信し、該制御信号の符号づけに応じて数個のB EN XXイネ−ブリング信 号(XXは−WO−W?、WSN、WSN+1、及び0THERを指す、ここで 0THERは演算処理装置30内の選択された他のレジスターに関する)をそれ ぞれの出力信号ラインに発生させる。The decoder 90 receives the A SEL (5:00) “A” selection control signal and Several A EN XX Enable + J 7 G signals (XX Is it GP RO-14, TE? IPO-TEMP15, WO-W7, WSN, W SN+1, and 0THER, where “0THER” is the Q register mentioned above. related to other selected registers in processing unit 30, including registers). let Similarly, the decoder 91 receives the B5EL(3:O) "B" selection control signal. and several BENXX enabling signals depending on the coding of the control signal. No. (XX refers to -WO-W?, WSN, WSN+1, and 0THER, where 0THER is related to the selected other register in the processing unit 30). generated on each output signal line.

A EN WSNイネ−ブリング信号は、デコーダ90からのWX EN WS Nイネーブルライトスベシフィアー数信号をゲート制御する一組のゲート・ドラ イバー100に中継され、それらが、デコーダ90からのA EN WX信号( Xは0.2.4.7.3及び1である)を運ぶそれぞれの信号ラインに中継され ることを許す、斯くして、若しA 5EL(5:00) “A”選択信号に応答 してデコーダ90がA EN WSNSNイネ−プルレジスタースペシフィアー 数信号を主張すれば、ドライバー100は、その時デコーダ86により主張され ているW X ENWSN信号を運ぶ信号ラインを付勢する。ゲート・ドライバ ー101は、A EN WSN+1信号により制御され、デコーダ87により発 生されたWX EN WSN+1信号に対して同じことを行なう、また、ゲート ・ドライバー102及び103は、B EN WSN及びB EN WSN+1 イネ−ブリングにより制御され、B EN WO−B EN W7と関連してW XEN WSN及びWX EN WSN+1信号に対して同じことを行なう。A EN WSN enabling signal is the WX EN WS from the decoder 90 A set of gate drivers that gates the N enable write basis number signal. A EN WX signal from the decoder 90 ( X is 0.2.4.7.3 and 1) are relayed to the respective signal lines carrying Thus, if A 5EL (5:00) responds to the “A” selection signal Then, the decoder 90 inputs the AEN WSNSN enable register specifier. If the driver 100 asserts the number signal then the driver 100 asserts the energizes the signal line carrying the WXENWSN signal. gate driver -101 is controlled by the AEN WSN+1 signal and is emitted by the decoder 87. Do the same thing for the generated WX EN WSN+1 signal, and also ・Drivers 102 and 103 are BEN WSN and BEN WSN+1 Controlled by Enabling and associated with BENWO-BENW7 Do the same for the XEN WSN and WX EN WSN+1 signals.

また、デコーダ90及び91及びドライバー10−103からの出力信号はラン チ92及び93に中継される。ラッチ92及び93は、A LTHHOLD及び B LTHHOL、D5yfホールド信号が否定される時には入力信号の状態を それぞれの出力端子に中継し、A LTHHOLD及びB LTH[l0LDラ ンチホ一ルド信号が主張される時にはそれぞれの信号ラインの状態をランチする 。制御回路40’4よ、それぞれの信号ライン上の信号が色になW EN XX ライトイネ−ブリング信号を発生させるのに使用するために安定となった時A  LTHHOLD及びB LTHHOLDラッチホールド信号を主張するので、制 御回路は新しい制御マイクロインストラクションを発生させ使用する事が出来る こととなり、さもなければデコーダ90及び91の出力を変化させ信号ライン上 の信号を変化させる。In addition, the output signals from decoders 90 and 91 and drivers 10-103 are relayed to channels 92 and 93. Latches 92 and 93 are ALTHHOLD and B When the LTHHOL and D5yf hold signals are negated, the state of the input signal is A LTHHOLD and B LTH[l0LD] launches the state of each signal line when the hold signal is asserted . Control circuit 40'4, the signals on each signal line are colored WENXX When stable for use in generating a write enabling signal A LTHHOLD and B Since the LTHHOLD latch hold signal is asserted, the control The control circuit can generate and use new control microinstructions. Otherwise, the outputs of decoders 90 and 91 would be changed to change the signal.

ラッチ92及び93にランチされた信号はマルチプレクサ1040入力端子のそ れぞれの組に中継される。また、マルチプレクサ104は、デコーダ86からの WX EN WSN信号を受信する入力端子の第3の組と、否定されるレベルの 信号を受信する入力端子の第4の組とを有する0選択された入力端子の組が制御 回路40からのDEST (1: O)宛先信号を受信し、該DEST(1:  0)宛先信号は制御マイクロインストラクションから由来する。二つのDEST  (1: 0)宛先信号は4組の入力信号のうちから出力に中継されるべき一組 を選択し、所要のW ENXX (XXはGPR,TEMP、WR,及び0TH ERを指す)ライトイネ−ブリング信号を提供する。従って、二つのDEST( 1: O)宛先信号に応じてライトイネ−ブリング信号が選択されるが、これは 、さもなければ処理済データの多数の宛先を選択するのに必要とされるより遥か に少ない信号である。The signals launched into latches 92 and 93 are at the multiplexer 1040 input terminals. It will be relayed to each group. Additionally, the multiplexer 104 receives a signal from the decoder 86. WX EN A third set of input terminals that receives the WSN signal and a level that is negated. a fourth set of input terminals for receiving a signal, and a fourth set of input terminals for receiving a control signal; A DEST (1: O) destination signal is received from the circuit 40 and the DEST (1: O) destination signal is received. 0) The destination signal comes from the control microinstruction. two dests (1:0) Destination signal is one set of four input signals to be relayed to the output Select the required W ENXX (XX is GPR, TEMP, WR, and 0TH ER) provides a write enabling signal. Therefore, the two DEST( 1: O) A write enabling signal is selected depending on the destination signal, but this , much more than would otherwise be required to select multiple destinations for processed data. There are fewer signals.

上記した如く、算術論理ユニット83(第3A図)によって為される演算はAL Ul#Jfi1回路84からのALU CTRL信号により制御され、該回路8 4は、演算処理装置30の制御回路40(第1B図)からのALU OP SE L演算選択信号により制御される。第3C図を参照するに、ALUfi制御回路 84は、ALUOP SEL演算選択信号に応答し7A L U CT I?  L COD E制御コード信号を発生させるプログラマブル・論理アレイ回路か ら成るデコーダ85を含む、また、デコーダ86は、ALUOP SEL演算選 択信号を受信して、ALU OP SEL演算選択信号の符号づけに応じてMU L乗算信号又はDIV除算信号を発生させる。As mentioned above, the operations performed by the arithmetic logic unit 83 (FIG. 3A) Controlled by the ALU CTRL signal from the Ul#Jfi1 circuit 84, the circuit 8 4 is an ALU OP SE from the control circuit 40 (FIG. 1B) of the arithmetic processing unit 30. Controlled by the L operation selection signal. Referring to Figure 3C, the ALUfi control circuit 84 responds to the ALUOP SEL calculation selection signal and selects 7A LU CT I?  L COD E Is it a programmable logic array circuit that generates a control code signal? In addition, the decoder 86 includes a decoder 85 consisting of an ALUOP SEL operation selection Upon receiving the selection signal, the MU Generates an L multiplication signal or a DIV division signal.

背景として、算術論理回路83は直接に乗算又は除算を行なわないので、一つの 特別の実施例では、プログラム指令により特定された時には既知の順次加算シフ ト乗算アルゴリズムの実施により乗算を行なう、同実施例は、プログラム指令に より特定された時には、既知の順次シフト−減算/加算・非復元型除算アルゴリ ズムの実施により除算を行なう。By way of background, the arithmetic logic circuit 83 does not directly perform multiplication or division; In a special embodiment, a known sequential addition shift is used when specified by a program instruction. This embodiment performs multiplication by implementing a multiplication algorithm. When more specific, known sequential shift-subtraction/addition/non-recovery division algorithms Division is performed by implementing the ism.

該乗算アルゴリズムにおいては、制御回路40は、算術論理ユニット83が加算 又は通過演算(通過演算においては、該算術論理ユニットの一人力端子のデータ 信号が出力端子に送られる)を行なうことを可能にする一連のAUL OP S EL演算選択信号を発生させ、その結果は前述のQレジスター(図示せず)に格 納される。該除算アルゴリズムにおいては、ALtl OP SEL演算選択信 号は、算術論理ユニット83が加算又は減算を行なうことを可能にし、その結果 もQレジスターに格納される。In the multiplication algorithm, the control circuit 40 causes the arithmetic logic unit 83 to add or pass operation (in pass operation, the data of the single power terminal of the arithmetic logic unit A series of AUL OPs that allows the signal to be sent to the output terminal) Generates an EL operation selection signal and stores the result in the Q register (not shown) mentioned above. will be paid. In this division algorithm, the ALtl OP SEL operation selection signal The code allows the arithmetic logic unit 83 to perform addition or subtraction, and the result is also stored in the Q register.

どの演算が為されるべきか、即ち、乗算プログラム指令に対して加算又は通過演 算を行なうべきか、除算プログラム指令に対して加算又は減算を行なうべきか、 ということは、シリーズ中の先の演算の結果の一部に基づく。Which operation is to be done, i.e. an addition or pass operation for a multiplication program command. whether addition or subtraction should be performed for a division program command; That is, based on some of the results of previous operations in the series.

先の演算の結果が決定された後までの、制御回路40(第1B図)によるALU  OP SEL演算選択信号の発生の遅延を防止すルタメニ、ALUIIJ御回 路84は、ALtJ OP SEL演算選択信号がMUL又はDIV演算を特定 するならばALU CTRL制御信号のうちの少なくともいくつかを発生させる 回路を包含している。デコーダ85はこれらの信号のうちのいくつかを発生させ て、それらをALU CTRL CODE111mコード信号として送信し、該 信号はマルチプレクサ88の一人力に中継され、その出力信号は、算術論理ユニ ット83を制御するAttl CTRL制御信号を構成する。ALU by the control circuit 40 (FIG. 1B) until after the result of the previous operation is determined. OP Lutameni and ALUIIJ control to prevent delay in generation of SEL operation selection signal Path 84 indicates that the ALtJ OP SEL operation selection signal specifies MUL or DIV operation. If so, the ALU generates at least some of the CTRL control signals. Contains circuits. Decoder 85 generates some of these signals. and transmit them as ALU CTRL CODE111m code signals, The signal is relayed to the output of multiplexer 88, whose output signal is sent to an arithmetic logic unit. Configures the Attl CTRL control signal that controls the cut 83.

マルチプレクサ88の第2人力はPRESET CTRLCODEプリセット制 御コード信号を受信する。先の段落に関して、乗算及び除算が共に加算ステップ を含むので、PRESETCTRL C0DEプリセント制御コ一ド信号は加算 演算を特定する。若しALU OP SEL信号がMUL演算を特定するならば 、ALU CTRL C0DEコ一ド信号は算術論理ユニットの通過機能を特定 する。一方、若しALU OP SEL演算選択信号がDIV除算を特定するな らば、ALU CTRLCODE@御コード信号は減算を特定する。The second manual of multiplexer 88 is PRESET CTRLCODE preset system Receive control code signal. Regarding the previous paragraph, both multiplication and division are addition steps. PRESETCTRL C0DE precent control code signal is added. Identify operations. If the ALU OP SEL signal specifies the MUL operation , ALU CTRL C0DE code signal specifies the passing function of the arithmetic logic unit. do. On the other hand, if the ALU OP SEL operation selection signal does not specify DIV division, If so, the ALU CTRLCODE @ control code signal specifies the subtraction.

第2デコーダ86も制御回路40(第1B図)からALUOP SEL演算選択 信号を受信し、それらがMUL乗算を特定する時にはMUL乗算信号を主張し、 それらがDIV除算を特定することにはDIV除夏信号を主張する。MUL乗算 及びDIV除算信号は、マルチプレクサ制御回路87を制御し、該回路87は、 当該技術分野において既知の如(に、為されるべき演算を決定する先の結果の一 部分を表わすRESULTS信号を他の回路から受信する。該RESULTS信 号、及びデコーダ86からのMUL乗算及びDIV除算信号に応答して、マルチ プレクサ制御回路87は、マルチプレクサ88を制御するMUX SELマルチ プレクサ選択信号を発生させる。The second decoder 86 also selects ALUOP SEL operation from the control circuit 40 (Figure 1B). receiving signals and asserting the MUL multiplication signal when they identify a MUL multiplication; They assert the DIV unsummer signal to specify DIV division. MUL multiplication and DIV divide signal control multiplexer control circuit 87, which circuit 87 As is known in the art, one of the preceding results determines the operation to be performed. RESULTS signals representing the portion are received from other circuits. RESULTS in response to the MUL multiply and DIV divide signals from decoder 86. The multiplexer control circuit 87 controls the multiplexer 88. Generates a plexer selection signal.

詳しく述べると、若しデコーダ86がMtJL乗算信号を発生させ且つRESU LTS信号が加算を実行するべき旨を表わしているならば、マルチプレクサ制御 回路87はMUX SELマルチプレクサ選択信号を発生させるが、該信号は、 PRESETCTRL C0DEブリセント制御コ一ド信号を算術論理ユニット 83に中継して該ユニットが加算を行なうことを可能にする。Specifically, if decoder 86 generates the MtJL multiplication signal and the RESU If the LTS signal indicates that an addition should be performed, the multiplexer control The circuit 87 generates the MUX SEL multiplexer selection signal, which is PRESETCTRL C0DE recent control code signal to arithmetic logic unit 83 to enable the unit to perform the addition.

同様に、若しデコーダ86がDIV除算信号を発生させ且つRESULTS信号 が加算を実行するべき旨を表わしているならば、PRESET CTRL C0 DEプリセツト制御コ一ド信号を算術論理ユニット83に中継して該ユニットが 加算を実行することを可能にするMUX SELマルチプレクサ選択信号が発生 させられる。Similarly, if decoder 86 generates the DIV divide signal and the RESULTS signal indicates that addition should be performed, then PRESET CTRL C0 The DE preset control code signal is relayed to the arithmetic logic unit 83 so that the unit Generates a MUX SEL multiplexer selection signal that allows the addition to be performed I am made to do so.

一方、(1)デコーダ86がMUL乗算信号を発生させ且つRESULTS信号 が通過演算を実行するべき旨を示しているが、又は(2)デコーダ86がDIV 除算信号を発生させ且つ1iEstlLTs信号が減算を実行するべき旨を示し ていれば、MUX SELマルチプレクサ選択信号は、マルチプレクサ88がデ コーダ85からのALtJ CTRL C0DE信号を、算術論理ユニット83 を制御するALU CTRL信号としてその出力に中継することを可能にする。On the other hand, (1) the decoder 86 generates the MUL multiplication signal and the RESULTS signal; indicates that a pass operation should be performed, or (2) decoder 86 indicates that DIV generates a divide signal and the 1iEstlLTs signal indicates that a subtraction should be performed. If the MUX SEL multiplexer selection signal is The ALtJ CTRL C0DE signal from the coder 85 is sent to the arithmetic logic unit 83. The ALU that controls the ALU can be relayed to its output as a CTRL signal.

デコーダ86がMUL乗算信号もDIV除算信号も発生させない時にも、MUL  SELマルチプレクサ選択信号は、マルチプレクサ88がデコーダ85からの ALU CTRLCODE信号を算術論理ユニット83を制御するためのALU CTRLl#J?ll信号としてその出力に中継することを可能にする。Even when decoder 86 generates neither the MUL multiply signal nor the DIV divide signal, the MUL The SEL multiplexer selection signal is sent by the multiplexer 88 from the decoder 85. ALU ALU for controlling the CTRLCODE signal to the arithmetic logic unit 83 CTRLl#J? ll signal to its output.

第3CIIに示されている回路は、デコーダ86、マルチプレクサ88及びマル チプレクサ制御回路87の適切な選択により、先の演算の結果に完全に又は部分 的に依存する他の算術論理ユニット演算と関連して使用することも出来るもので あることが理解されよう、制御回路40は次の演算のためのALU OP SE L演算選択信号を発生させる前に演算の結果が決定されるまで待っている必要が ないので、該回路は、算術論理演算間の時間を短縮することを容易にするもので ある。The circuit shown in the third CII includes a decoder 86, a multiplexer 88 and a multiplexer 88. By appropriate selection of the multiplexer control circuit 87, the result of the previous operation can be fully or partially It can also be used in conjunction with other arithmetic and logic unit operations that depend on It will be understood that the control circuit 40 controls the ALU OP SE for the next operation. It is necessary to wait until the result of the operation is determined before generating the L operation selection signal. The circuit facilitates reducing the time between arithmetic and logic operations. be.

並進用突き合わせ検証回路 メモリー 回路37のバッファ260 CPUIO(第1図)を含むシステムにおいて、各プログラムがメモリースペー ス全体が割り当てられていると考えられて仮想メモリー構成が使われているが、 それはメモリー11が提供する物理的メモリースペースより大きいことがある。Matching verification circuit for translation Buffer 260 of memory circuit 37 In a system that includes a CPUIO (Figure 1), each program uses memory space. The virtual memory configuration is used assuming that the entire memory space is allocated, but It may be larger than the physical memory space provided by memory 11.

演算処理装置30が仮想メモリースペース内の特定の場所にアクセスしなければ ならない時、仮想のメモリースペースの所要の部分は必要に応じて物理的メモリ ー11内にシフトされまたは該メモリー内から外ヘシフトされ、物理的メモリー 11内に無い仮想メモリースペースは大量記憶装置(代表的にはディスク格納ユ ニット)に格納される。If the processing unit 30 does not access a specific location within the virtual memory space, When the virtual memory space is not available, the required portion of the virtual memory space is allocated to the physical memory -11 or shifted out of the physical memory. Virtual memory space not located within 11 is stored on a mass storage device (typically a disk storage unit). knit).

演算処理装置30の一部、即ちメモリー管理回路37は、メモリー11内に格納 されている並進ページテーブル(図示せず)上の記入項目を使つて、“仮想上の アドレス”と称する仮想メモリースペース内のアドレスと、物理的メモリー11 内の物理的アドレスとの間で並進を行なわせる。仮想メモリーを備えたシステム における仮想アドレスから物理的アドレスへの並進の手順は周知されているので 、ここでは説明しない。A part of the arithmetic processing unit 30, that is, the memory management circuit 37 is stored in the memory 11. The entries on the translation page table (not shown) that are displayed are used to create a “virtual address in the virtual memory space, called "address", and the physical memory 11 Performs translation between physical addresses within. Systems with virtual memory Since the procedure for translation from a virtual address to a physical address in is well known, , will not be explained here.

仮想アドレスから物理的アドレスへの並進を高速化するために、メモリー管理回 路37は、並進と関連して最近に使用された選択された数のページテーブル項目 を格納する並進バッファ260を含む、並進バッファ260の回路はブロック図 の形で第4A図に示されており、並進バッファ260のより詳しい論理図は第4 B−1図及び第4B−2図に示されている。Memory management circuits are used to speed up translation from virtual addresses to physical addresses. Path 37 lists a selected number of recently used page table entries in connection with the translation. The circuitry of translation buffer 260, including translation buffer 260 that stores 4A, and a more detailed logic diagram of translation buffer 260 is shown in FIG. It is shown in Figure B-1 and Figure 4B-2.

第4A図を参照するに、並進バッファ260は、仮想アドレスの高位部分を格納 する複数の項目を有する内容アドレス可能メモリー110と、ヒントバッファ1 11と、ページフレーム数格納回路112とを含んでいる。仮想アドレスの高位 部分は仮想メモリースペースにおける“ページ”を特定するが、ページは所定数 の連続する格納場所を有する。ページフレーム数格納回路は内容アドレス可能メ モリーと同数の項目を包含している。ページフレーム数回路の各項目は、内容ア ドレス可能メモリーの一項目と関連しており、内容アドレス可能メモリー内の仮 想アドレスの高位部分に対応する物理的アドレスの高位部分又はページフレーム 数を格納する。一実施例においては、内容アドレス可能メモリー及びページフレ ーム数格納回路は共に28個の項目を包含する。Referring to FIG. 4A, translation buffer 260 stores the high-order portion of the virtual address. a content-addressable memory 110 having a plurality of items to store and a hint buffer 1; 11 and a page frame number storage circuit 112. virtual address high A portion identifies a “page” in virtual memory space, where a page is a predetermined number of It has consecutive storage locations. The page frame number storage circuit is a content addressable memory. It contains the same number of items as Molly. Each item in the page frame number circuit is Associated with an item in addressable memory; the content is a temporary in addressable memory. High-level part of the physical address or page frame that corresponds to the high-level part of the virtual address Store numbers. In one embodiment, the content addressable memory and page frame The program number storage circuits together contain 28 entries.

並進バッファ260は保護論理回路113も含んでおり、この回路も28個の項 目を含み、その各々が内容アドレス可能メモリーの一つの項目と関連している。Translation buffer 260 also includes protection logic circuit 113, which also has 28 terms. each of which is associated with one item of content-addressable memory.

保護論理回路の各項目は、内容° アドレス可能メモリー110内の対応する項 目の内容によって特定される格納場所の内容に対するプログラムのアクセス権を 表わす復号された保護コードを格納する。Each item in the protection logic circuit has a corresponding item in the addressable memory 110. The program's access rights to the contents of the storage location specified by the contents of the Stores the decrypted protection code representing.

また、並進バッファ260は、4組のフラグ、即ち、rNUL最後に使われなか ったフラグ」の組114、rTB、V並進バッファ260妥当フラグ」の&1l 15、rPTE、Vページテーブル項目妥当フラグ」の組116、及びrPTE 、Mベージテーブル項目修正フラグ」の組117と、を有する。内容アドレス可 能メモリー110内の各項目は、組114のrNUL最後に使われなかったフラ グ」の一つ、組115のrTB、V並進バッファ260妥当フラグ」ノーツ、組 116(7)rPTE、Vべ一’;テーブル項目妥当フラグ」の一つ、及び組1 17のrPTE、Mページテーブル項目修正フラグ」の一つと関連している。r NUL最後に使われなかったフラグ」の組114及びrTB、V並進バッファ2 60妥当フラグ」の&11115は、並進バッファの動作を制御するために使わ れる。特に、NLUフラグの組114は、新しいページテーブル項目がメモリー 11から受信された時などにおける並進バッファ260内の項目の置換と関連し て使用される。The translation buffer 260 also contains four sets of flags: set 114, rTB, V translation buffer 260 valid flag &1l 15, rPTE, V page table item validity flag' set 116, and rPTE , M page table item modification flag" set 117. Contents addressable Each item in function memory 110 is the rNUL last unused flag in set 114. One of the groups, group 115, rTB, V translation buffer 260 valid flag, Notes, group 116(7) rPTE, Vbe'; one of the table item validity flags, and set 1 17 rPTE, M page table item modification flag. r NUL last unused flag' set 114 and rTB, V translation buffer 2 &11115 of “60 Validity Flag” is used to control the operation of the translation buffer. It will be done. In particular, NLU flag set 114 indicates that the new page table entry is in memory. 11. used.

直前に使われなかった並進バフフッ260項目のフラグがセントされ、それを新 しい項目と置換する事が出来る。rTB、V並進バッファ260妥当フラグ」は 、内容アドレス可能メモリー110及びページフレーム数回路112内の対応す る項目が妥当であること、即ちそれらを使用し得ること、を示す。The flag of 260 items of translational buff that was not used immediately is sent, and it is updated. You can replace it with a new item. rTB, V translation buffer 260 validity flag' is , content addressable memory 110 and page frame number circuit 112. indicates that the items are valid, that is, they can be used.

残りのフラグは、メモリー11から検索されるページテーブル項目の一部を形成 する・rPTE、Vページテーブル項目妥当フラグ」116は、対応するページ テーブル項目が妥当で使用し得るか否かを示す、rPTE、Mページテーブル項 目修正フラグ」117は、対応するページが修正されたか否かを示す;若し成る ページが、物理的メモリー11内の場所が仮想アドレススペース内の他のページ のために使われた時に修正されていなければ、ぞれはディスク又はテープに格納 されない。The remaining flags form part of the page table entries retrieved from memory 11. "rPTE, V page table item validity flag" 116 indicates the corresponding page rPTE, M page table entry indicating whether the table entry is valid and usable The "Eye modification flag" 117 indicates whether the corresponding page has been modified; If a page has a location in physical memory 11 other than another page in the virtual address space Each is stored on disk or tape if not modified when used for Not done.

演算処理装置30(第1図)は、特定の仮想アドレスを使ってメモリーにアクセ スする時、最初に−、並進バッファ260がその仮想アドレスの高位部分に対応 する項目を内容アドレス可能メモジ−110内に有するか否かを判定する。A  VA 5RCE仮想アドレスソ一ス信号は、仮想アドレスの高位部分を表わすが 、該信号は内容アドレス可能メモリー110に送られる。若し内容アドレス可能 メモリー110の成る項目がVA 5RCE仮想アドレスソ一ス信号に対応し、 且つrTB、V並進バッファ260妥当フラグ」の組115内の関連するフラグ がセットされた状態となっていて該項目が妥当であることを示していれば、PE THIT(27:O)ページテーブル項目ヒント信号のうちの対応する一つがラ イン113に主張される。ヒツトバッファ111はPTE HIT(27:0) ページテーブル項目ヒツト信号を緩衝して、それらを内部タイミング信号に応答 して調時する。若しPTE HIT(27:O)ページテーブル項目ヒント信号 の一つが適切な時に主張されれば、対応するHIT 5EL(27:0)ヒント 選択信号が主張される。HIT SEL (27:0)ヒント選択信号のうちの 選択された一つは、ページフレーム数格納回路112の28個の項目のうちの対 応する一つが内部バス34に転送されることを可能にする。The processing unit 30 (Figure 1) accesses memory using a specific virtual address. When accessing, first - translation buffer 260 corresponds to the high part of the virtual address. It is determined whether there is an item in the content addressable memory 110. A The VA 5RCE virtual address source signal represents the high-order portion of the virtual address. , the signal is sent to content addressable memory 110. content addressable The items consisting of the memory 110 correspond to the VA 5RCE virtual address source signal, and rTB, the associated flag in the set 115 of "V translation buffer 260 validity flags" is set, indicating that the item is valid, the PE THIT (27:O) The corresponding one of the page table item hint signals is It is claimed in 113. Hit buffer 111 is PTE HIT (27:0) Buffer page table item hit signals and make them responsive to internal timing signals to adjust the time. If PTE HIT (27:O) Page table item hint signal If one of the is asserted at the appropriate time, the corresponding HIT 5EL (27:0) hint A selection signal is asserted. HIT SEL (27:0) One of the hint selection signals The selected one is a pair of 28 items in the page frame number storage circuit 112. the corresponding one is transferred to internal bus 34.

並進バッファ260は、保護論理回路113も含んでおり、該回路113は、2 8項目を含み、その各々は、ページフレーム数格納回路112の対応する項目の ページフレーム数により特定されるページの内容へのプログラムのアクセス権を 表わすピントを、復号された形で、格納する。各ページテーブル項目は、ページ フレーム数回路112に格納されているページフレーム数に加えて、演算処理装 置30が動作している、読み出し又は書き込み動作のために該ページにアクセス 出来る最低動作保護レベルモードを特定する保護フィルードを包含している。デ コーダ120は、該保護フィールドを受信して、復号済保護フィールドビットを 発生させ、該ビットは、内容アドレス可能メモリー110及びページフレーム数 回路112の対応する項目が第4A図に示した並進バッファ260にロードされ る時に保護論理回路に格納される。Translation buffer 260 also includes protection logic circuit 113, which includes two It includes 8 items, each of which corresponds to the corresponding item of the page frame number storage circuit 112. Grants a program access to the contents of a page specified by the number of page frames. The represented focus is stored in decoded form. Each page table item is In addition to the number of page frames stored in the frame number circuit 112, accessing the page for a read or write operation Contains a protection field that specifies the lowest possible operating protection level mode. De Coder 120 receives the protected field and decodes the protected field bits. generated, the bit is the content addressable memory 110 and the number of page frames. The corresponding entries in circuit 112 are loaded into translation buffer 260 shown in FIG. 4A. stored in the protection logic circuit when

詳しく述べると、一実施例は(特権の低下する順に)核(K)、管理(E)、監 視(S)及びユーザー(U)と称される四つの動作保護レベルモードを設ける。Specifically, one embodiment includes (in order of decreasing privilege) core (K), administrative (E), Four operational protection level modes are provided, referred to as Visual (S) and User (U).

演算処理装置30が動作特権レベルモードで作動している時に読み出し又は書き 込み動作で成るページにアクセス出来るならば、演算処理袋M30がより高い動 作特権レベルモードで動作している時に同じ読み出し又は書き込み動作のために アクセスする事が出来る。その実施例では、保護論理回路113へ格納されるべ き、ページテーブル項目の符号化された保護値と、デコーダ回路120により生 成された対応する復号済ビットの値とは、次の通りである。:oooo ooo o ooo。Read or write when the processing unit 30 is operating in the operating privilege level mode. If you can access a page that requires a lot of movement, the calculation processing bag M30 will have a higher movement rate. for the same read or write operation when operating in privileged level mode. can be accessed. In that embodiment, the information to be stored in protection logic circuit 113 is and the encoded protection value of the page table entry and the encoded protection value generated by the decoder circuit 120. The corresponding decoded bit values are as follows. :oooo ooo o oooo.

0010 RW −−−100010000011R−−−10000000 0100RW R−四 RW 1111 11110101 RW RW −− 110011000110RW R−−110010000111RR−−11 000000 1000R賀 RW RW −111011101001RW RW R−11 1011001010RWRR−11101000 1011RRR−11100000 1100RW RW RW R111111101101四 RW RR111 111001110RW RRR11111000(〇−否定、1−主張、R− 読み出しアクセス、W票書き込みアクセス “−”−読み出しアクセスでも書き込みアクセスでもない)複合された値は8ピ ントのコードを表わしており、左側の4ピントは、関連するページフレーム数に より特定される場所から読み出しを行なうことの出来る動作特権レベルモードを 表わし、右側のビットは関連するページフレーム数により特定される場所に書き 込みを行なうことの出来る動作特権レベルモードを表わしていることが理解され るであろう、各4ビツトのグループの中で、ビットは動作特権レベルモードの一 つに関連づけられている。詳しく述べると、各4ビツトのグループ内で、各ビッ トは、左から右へ、特権が低下してゆく動作特権レベルモードに関連づけられて いる。0010 RW---100010000011R---10000000 0100RW R-4 RW 1111 11110101 RW RW -- 110011000110RW R--110010000111RR--11 000000 1000R RW RW -111011101001RW RW R-11 1011001010RWRR-11101000 1011RRR-11100000 1100RW RW RW R1111111011014 RW RR111 111001110RW RRR11111000 (〇-denial, 1-assertion, R- Read access, W vote write access “-” - neither read nor write access) The composite value is an 8-pin The four points on the left indicate the number of page frames involved. An operational privilege level mode that allows reading from more specific locations. The bit on the right is written in the location specified by the associated page frame number. It is understood that this represents a privileged level mode of operation in which the Within each group of 4 bits, the bits indicate one of the operating privilege level modes. is associated with. Specifically, within each group of 4 bits, each bit From left to right, the tables are associated with operating privilege level modes of decreasing privilege. There is.

第4A図に示されている並進バッファ260が仮想アドレスを物理的アドレスへ 並進ないし翻訳するのに使われている時、VASRCE仮想アドレスソース信号 の内容アドレス可能メモリーへの送信と同時に、他のデコーダ121は、CUR MODE現行特権レベルモード信号、若し動作が読み出し動作ならば主張RDリ ード信号、又は若し動作が書き込み動作であれば主張WRTライト信号を受信す る。CURMODE現行モード信号は、演算処理装置30が動作している現行の 保護レベル動作モードを特定する。The translation buffer 260 shown in FIG. 4A converts virtual addresses into physical addresses. When used to translate or translate, the VASRCE virtual address source signal At the same time as sending the contents of CUR to the addressable memory, other decoders 121 MODE current privilege level mode signal, asserts RD read if operation is a read operation. or, if the operation is a write operation, an asserted WRT write signal. Ru. The CURMODE current mode signal indicates the current mode in which the processing unit 30 is operating. Identify protection level operating mode.

これに応じて、デコーダ121は現行動作保護レベルモードと(7: 0)保護 コード信号の一つを対応する信号ライン122上に主張する。即ち、下記の通り に、P C0DE (7: O)保護コード信号の四つの高位信号の各々は、読 み出し動作と関連して四つの動作保護レベルモードと関連しており、四つの低位 信号は書き込み動作と関連して四つの動作保護レベルモードの一つと関連してい る。Accordingly, the decoder 121 selects the current operating protection level mode and (7:0) protection. One of the code signals is asserted on the corresponding signal line 122. That is, as follows In addition, each of the four high-level signals of the PCODE (7:O) protection code signal is readable. There are four operating protection level modes associated with extrusion operation, and four lower The signal is associated with one of four operational protection level modes in connection with a write operation. Ru.

動作モード 動 作 P C0DE (7: O)信号積 READ 1000  0000 WRITE 0000 1000 管理 READ 0100 0000 WRITE 0000 0100 監視 READ 、 、、0010 0000WRITE 0000 0010 ユーザー READ 0001 0000WRITE 0000 0001 (0=否定、1−主張) 保護論理回路はP C0DE (7: O)信号を保護論理113の内容と比較 する。若し主張されたP C0DE (7: O)保護コード信号が、保護論理 1130項目に格納されている復号済保護フィールド内の少なくとも一組のピン トに対応するならば、ACCESS (27: O)アクセス信号の一つが、該 項目と関連するライン123の一つの上に主張される。一方、若し主張されたP  C0DE (7: O)保護コード信号が一項目内の復号済保護フィールドの 少な(とも−組のビットに対応しなければ、いずれのACCESS (27:  O)アクセス信号も主張されない。Operation mode Operation P C0DE (7: O) Signal product READ 1000  0000 WRITE 0000 1000 Management READ 0100 0000 WRITE 0000 0100 Monitoring READ , , , 0010 0000 WRITE 0000 0010 User READ 0001 0000WRITE 0000 0001 (0=denial, 1-assertion) The protection logic circuit compares the PC0DE (7: O) signal with the contents of the protection logic 113. do. If the asserted P C0DE (7: O) protection code signal is At least one set of pins in the decrypted protected field stored in the 1130 item ACCESS (27: O) One of the access signals corresponds to the corresponding It is claimed on one of the lines 123 associated with the item. On the other hand, if the claimed P C0DE (7: O) Protection code signal of decoded protection field in one item ACCESS (27: O) Access signals are also not asserted.

ACCESS (27: O)アクセス信号は、対応するHITSEL (27 : 0)ヒント選択信号とAND論理演算されてN。ACCESS (27: O) The access signal is the corresponding HITSEL (27 : 0) N is ANDed with the hint selection signal.

5TALL (27: O)信号を発生させるが、その各々は並進バッファの項 目の一つと関連している。演算処理装置30は、N。5 TALL (27: O) signals, each of which is a translation buffer term. Associated with one of the eyes. The arithmetic processing unit 30 is N.

5TALL (27: O)信号を使って、並進バッファ260が所要のページ フレーム数を包含しているか否か判定し、更に、若し包含していれば、該演算処 理装置が不十分な動作特権レベルモードでメモリー11の成るページに対して読 み出し又は書き込み動作を行なおうとしているのか否か判定する。若しNO5T ALL(27: O)信号の少なくとも一つが主張されれば、並進パンツ理装置 30は所要の動作特権レベルモードを持っている。Using the 5TALL (27:O) signal, the translation buffer 260 selects the required page. It is determined whether or not the number of frames is included, and if it is included, the corresponding calculation process is performed. A page consisting of memory 11 can be read in a privileged level mode of operation where the It is determined whether or not a write or write operation is to be performed. Waka NO5T If at least one of the ALL(27:O) signals is asserted, the translational pant processor 30 has the required operating privilege level mode.

第4B−1図及び4B−2図は、第4A図に示された並進バッファ260の色々 な回路の一つの項目の部分の詳細な論理図である。詳しく述べると、内容アドレ ス可能メモリー110、ページフレーム数回路112、及び保護論理113は複 数の同一の論理記憶セルを含んでおり、各セルは関連する高位仮想アドレス、ペ ージフレーム数、及び復号済保護フィールドの一つのピントを格納する。該セル は同一であるので、回路110.112及び113の各々から唯一のセルのみを 第4B−1図及び第4B−2図に示す。Figures 4B-1 and 4B-2 illustrate various aspects of translation buffer 260 shown in Figure 4A. 1 is a detailed logic diagram of a single item portion of a circuit. To be more specific, the content address The memory 110, page frame number circuit 112, and protection logic 113 are contain an identical number of logical storage cells, each with an associated high-level virtual address, image frame number and the focus of one of the decoded protection fields. the cell are identical, so we remove only one cell from each of circuits 110, 112 and 113. It is shown in FIG. 4B-1 and FIG. 4B-2.

第4B−1図を参照するに、内容アドレス可能メモリー110は、演算処理装置 30内の回路251 (第1B図)からVA 5RCE高位仮想アドレスソース 信号の一つ、即ちVA 5RCE (Y)信号を受信するライン132に接続さ れたCAMセル131を含む0回路251は、下記の点を除いてVA 5RCE  (Y)信号とほぼ相補的なVA 5RCE (Y)COMP信号をライン13 2A上に提供する。CAMセル131を含む項目内の他のCAMセルは他のVA  5RCE信号を並列に受信し、iVA 5RCE信号の全ては、内容アドレス 可能メモリー110 (第4A図)に送信される仮想アドレスの高位部分全体を 構成する。内容アドレス可能メモリー110内の全項目はVA 5RCE仮想ア ドレスソ一ス信号を同時に受信する。Referring to FIG. 4B-1, content addressable memory 110 includes a processing unit VA 5RCE high level virtual address source from circuit 251 (Figure 1B) in 30 Connected to line 132 which receives one of the signals, namely the VA 5RCE (Y) signal. The 0 circuit 251 including the CAM cell 131 is VA 5RCE except for the following points. (Y) signal and almost complementary VA 5RCE (Y) COMP signal to line 13 Provided on 2A. Other CAM cells in the item containing CAM cell 131 are other VAs. 5RCE signals are received in parallel, and all iVA 5RCE signals are content address The entire high-order portion of the virtual address sent to memory 110 (Figure 4A) Configure. All items in content addressable memory 110 are stored in VA 5RCE virtual address. Receive address source signals at the same time.

VA 5RCE仮想アドレスソ一ス信号は、二つの目的のうちの一つのために、 即ち、並進バッファの項目に書き込みをするために、又はアドレス並進各は翻訳 を得るために、内容アドレス可能メモリー110に向けることが出来る。並進バ ッファの項目に書き込みをしている間、演算処理装置30内の他の回路は、仮想 アドレスの高位ピントをVA 5RCE仮想アドレスソ一ス信号として送信し、 書き込まれるべき並進バフフッ206項目と関連するTBE WRT並進バフフ ァ260項目書き込み信号を主張する。これに応じて、セル131の通過トラン ジスタ133及び133Aがオン状態となり、ライン132及び132A上の信 号を、インバータ134及び135から成るフリンプフロンプヘ中継する。若し ライン132上のアドレスピントが主張されれば(且つそのライン132A上の 補数ビットが否定されれば)、インバータ134の出力は低レベルでインバータ 135の出力は高レベルである。若しライン132上のアドレスビットが否定さ れれば、インバータ134の出力は高レベルであり、インバータ135の出力は 低レベルである。The VA5RCE virtual address source signal serves one of two purposes: That is, to write to an item in the translation buffer, each address translation is translated can be directed to the content addressable memory 110 to obtain the . translation bar While writing to the buffer item, other circuits in the arithmetic processing unit 30 are virtualized. Transmit the high-order focus of the address as a VA 5RCE virtual address source signal, TBE WRT translational buff associated with 206 translational buff items to be written Assert the 260 item write signal. In response, the passing transistor of cell 131 Registers 133 and 133A are turned on and the signals on lines 132 and 132A are turned on. The signal is relayed to a flimp flop consisting of inverters 134 and 135. young If address focus on line 132 is asserted (and that If the complement bit is negated), the output of inverter 134 is low and the inverter The output of 135 is high level. If the address bits on line 132 are negated If so, the output of inverter 134 is high level, and the output of inverter 135 is It is at a low level.

ページフレーム番号回路は、各々セル番号を含むエントリ一番号も含み、その一 つのセル140は第4B−1図に描かれる。The page frame number circuit also includes an entry number each containing a cell number; One cell 140 is depicted in Figure 4B-1.

TBE WRT変換バッファ260書込み信号が、変換バッファ260エントリ ーへの書込み動作を示して、入力されれば、パストランジスタ142はオンして 、プロセッサ30内の他の回路からのライン143上のPFN (Z)ページフ レーム番号(Z)信号がインバータ144及び145よりなるフリツプフロツプ へ供給される。PFN (Z)信号の状態に応じたインバータ144及び145 からの信号状態は、インバータ134及び135からの信号状態と同様である。TBE WRT conversion buffer 260 write signal is the conversion buffer 260 entry indicates a write operation to the memory, and if an input is received, the pass transistor 142 is turned on. , PFN (Z) pagef on line 143 from other circuits within processor 30. The frame number (Z) signal is a flip-flop consisting of inverters 144 and 145. supplied to Inverters 144 and 145 according to the state of the PFN (Z) signal The signal state from is similar to the signal state from inverters 134 and 135.

PFN (Z)ページフレーム番号(Z)信号は、セル141を含むエントリー 内に記憶された1ピントのページフレーム番号である。PFN (Z) Page frame number (Z) signal is the entry containing cell 141 This is the page frame number of 1 pinto stored in the page frame number.

同様に、保護ロジックは、各々複数のセルを含む複数のエントリーを含み、その 内セル151が第4B−2図に描かれる。 TBEWRT変換バンファ260書 込み信号が入力されれば、パストランジスタ152はオンし、デコーダ回路12 0からのPROTDEC(W)復号保護コード信号がインバータ154及び15 5よりなるフリップフロフプへ供給される。PROT DEC(W)復号保護信 号の状態に応じたインバータ154及び155の状態は、インバータ134及び 135からの信号状態と同様である。Similarly, the protection logic includes multiple entries, each containing multiple cells; Inner cell 151 is depicted in Figure 4B-2. TBEWRT conversion banfa 260 books When the input signal is input, the pass transistor 152 is turned on and the decoder circuit 12 The PROTDEC(W) decoding protection code signal from 0 is sent to inverters 154 and 15. It is supplied to a flip-flop consisting of 5. PROT DEC (W) decoding protection signal The status of inverters 154 and 155 according to the status of the inverter 134 and The signal status from 135 is similar.

PTE、V及びPTE、Mページテーブルエントリーバリッド及び修飾フラッグ 116及び117は、各々同様の構造であるセル161及び171を含む、フラ ッグ116はパストランジスタ162を含み、これは入力されたTBE WRT 変換変換バッファ260エントリー書込号によりオンされた時、プロセッサ30 内の他の回路からのPTE、V WRTページテーブルエントリーバリソド書込 み信号をインバータ164及び165からなるフリツブフロップに記憶させるた めに供給する。また、フラッグ117はパストランジスタ172を含み、これは 入力されたTBE WRT変換変換バッファエントリー書込号によりオンさレタ 時、PTE、M WRTページテーブルエントリー修飾書込み信号をインバータ 164及び165からなるフリップフロフプに記憶させるために供給する。PTE, V and PTE, M page table entry valid and qualification flags 116 and 117 are frames containing cells 161 and 171, respectively, of similar structure. The gate 116 includes a pass transistor 162, which has an input TBE WRT When turned on by the conversion conversion buffer 260 entry write signal, the processor 30 PTE, V WRT page table entry variant writing from other circuits within In order to store the read signal in a flip-flop consisting of inverters 164 and 165, supply to Flag 117 also includes a pass transistor 172, which Turned on by input TBE WRT conversion conversion buffer entry write signal When, PTE, M WRT page table entry modification write signal inverter A flip-flop consisting of 164 and 165 is supplied for storage.

NLUフラッグ114(第4A図)は変換動作には関与せず、第4B−1図及び 第4B−2図には描かれない。TB、V変換バッファ260バリンドフラッグは 、PTE、Vページテーブルエントリーフラッグと同様の構造で、関連するもの であり、これ以上議論されることはない。NLU flag 114 (Figure 4A) is not involved in the conversion operation and is Not depicted in Figure 4B-2. TB, V conversion buffer 260 valid flag is , PTE, similar structure to V page table entry flag, and related and will not be discussed further.

上述の如く、第4B−1図及び第4B−2図に描かれた回路も、仮想アドレスの 物理的アドレスへの変換に関連して使用される。As mentioned above, the circuits depicted in Figures 4B-1 and 4B-2 also address virtual addresses. Used in connection with translation to physical addresses.

以下において、仮想アドレスの高次部分はセル131 (第4B−1図)を含む エントリーに記憶され、対応するページフレーム番号がセル141を含むエント リーに記憶され、デコーダ151からの対応する復号保護フィールドビットはセ ル151を含むセルに記憶され、対応するPTE、Vページテーブルエントリー フラッグがページテーブルエントリーが有効であることを示すように調整される こととされる。In the following, the higher order part of the virtual address includes cell 131 (Figure 4B-1) The corresponding page frame number is stored in the entry containing cell 141. The corresponding decoding protection field bits from decoder 151 are 151, and the corresponding PTE, V page table entry Flags are adjusted to indicate that the page table entry is valid It is said that

第4B−1図を参照して、変換の直前において、プリチャージ電圧がライン14 3、PTE HIT(X)ページテーブルエントリー信号を伝送するライン18 1及びACCESS (X)アクセス信号を伝送する(第4A図のライン123 に含まれる)ライン183に供給され、両ラインは変換バッファ内で連結される 。Referring to Figure 4B-1, just before conversion, the precharge voltage is applied to line 14. 3. Line 18 for transmitting PTE HIT(X) page table entry signal 1 and ACCESS (X) transmits an access signal (line 123 in Figure 4A) 183 (included in the conversion buffer) and both lines are concatenated in the translation buffer. .

プリチャージ時間の間、仮想アドレスソース回路251 (第1B図)からのV A 5RCE (Y)信号及びVA 5RCE (Y)COMP信号の両方は、 (低電圧状態において)打ち消されて、トランジスタ136及び138をオフし 、プリチャージ動作の実行を許可する。また、低電圧は、エントリーにも連結さ れるHI丁SEL (X)ヒツトセレクト信号を伝送するライン182に供給さ れる。ライン181は連想記憶メモリ110の一つのエントリ−内の全てのセル 131に接続され、ライン182はページフレーム番号回路112の連結された エントリー内の全てのセル141に接続され、ライン183は保護ロジック回B 113の連結されたエントリー内の全てのセル151に接続される。During the precharge time, V from the virtual address source circuit 251 (FIG. 1B) Both the A 5RCE (Y) signal and the VA 5RCE (Y) COMP signal are (in low voltage conditions) to turn off transistors 136 and 138. , permit execution of precharge operation. The low voltage is also connected to the entry. HI-SEL (X) supplied to line 182 that transmits the hit-select signal. It will be done. Line 181 indicates all cells within one entry of content addressable memory 110. 131 and line 182 is connected to page frame number circuit 112. Connected to all cells 141 in the entry, line 183 connects to protection logic circuit B It is connected to all cells 151 in 113 connected entries.

ラインがプリチャージされた後、プロセッサ30内の他の回路はVA 5RCE JJj、想アドレスソース信号を連想記憶メモリ 110(第4A図)へ伝送す る。セル131は、ライン132上の信号状態とインバータ134及び135の 状態とを比較するトランジスタ136から139よりなり、エントリーが書込ま れた時に既にラッチされたライン132上の信号状態を示すコンパレータを含む 。即ち、インバータ134及び135よりなるフリツブフロップによってランチ されたVA 5RCE (Y)仮想アドレスソース信号が既に入力されていたな らば、インバータ134の出力はローとなり、インバータ135の出力はハイと なる。このため、インバータ134はトランジスタ139をオフし、インパーク 135はトランジスタ137をオンする。VA 5RCE (Y)信号が現在入 力されるならば、トランジスタ138はオンし、インバータ140はトランジス タ136をオフする。トランジスタ136及び139がオフされているため、ラ イン181及び接地間には電流経路は無い、このため、ラインは、プリチャージ 電圧レベルのままとなる。After the line is precharged, other circuits within processor 30 JJj, transmits the virtual address source signal to the content addressable memory 110 (FIG. 4A). Ru. Cell 131 is connected to the signal state on line 132 and to inverters 134 and 135. It consists of transistors 136 to 139 that compare the state with the entry written. includes a comparator that indicates the signal state on line 132 that was already latched when . That is, the launch is performed by a flip-flop consisting of inverters 134 and 135. VA 5RCE (Y) The virtual address source signal was already input. If so, the output of inverter 134 becomes low and the output of inverter 135 becomes high. Become. Therefore, inverter 134 turns off transistor 139 and impaks 135 turns on transistor 137. VA 5RCE (Y) signal is currently input If so, transistor 138 turns on and inverter 140 turns on transistor 138. 136 is turned off. Since transistors 136 and 139 are turned off, the There is no current path between IN 181 and ground, so the line is precharged. The voltage level remains the same.

同様に、インバータ134及び135よりなるフリツプフロツプによってランチ されたVA 5RCE (Y)仮想アドレスソース信号が既に打ち消されていた ならば、インバータ134の出力はハイとなり、インバータ135の出力はロー となる。このため、インバータ134はトランジスタ139をオンし、インバー タ135はトランジスタ137をオフする。変換の間VA 5RCE(Y)信号 が現在打ち消されるならば、トランジスタ138はオフし、インパーク140は トランジスタ136をオンする。トランジスタ137及び138がオフされてい るため、ライン181及び接地間には電流経路は無い、この状態では、ライン1 81もまた、プリチャージ電圧レベルのままとなる。Similarly, a flip-flop consisting of inverters 134 and 135 is used to launch the VA 5RCE (Y) Virtual address source signal was already canceled If so, the output of inverter 134 will be high and the output of inverter 135 will be low. becomes. Therefore, inverter 134 turns on transistor 139 and inverts The transistor 135 turns off the transistor 137. VA 5RCE (Y) signal during conversion is currently canceled, transistor 138 is off and impark 140 is Turn on transistor 136. Transistors 137 and 138 are turned off. Therefore, there is no current path between line 181 and ground. In this state, line 1 81 also remains at the precharge voltage level.

インバータ134及び135よりなるフリツブフロップによってランチされたV A 5RCE (Y)仮想アドレスソース信号が既に入力されていたならば、ト ランジスタ139はオフとなり、トランジスタ137はオンとなる。変換中、V A 5RCE (Y)信号が現在打ち消されているならば、トランジスタ138 はオフとなり、トランジスタ136はオンとなる。これにより、電流経路がトラ ンジスタ136及び137を介してライン181及び接地間に存在し、それでラ イン181上の電圧が接地電圧レベルに低減される。もし以前にランチされたV A 5RCE (Y)仮想アドレスソース信号が打ち消され、変換中に入力され ているならば、電流経路がトランジスタ138及び139を介してライン181 及び接地間に存在し、そのためライン181上の電圧はまた接地電圧レベルに低 減される。V launched by a flip-flop consisting of inverters 134 and 135 A 5RCE (Y) If the virtual address source signal has already been input, the Transistor 139 is turned off and transistor 137 is turned on. During conversion, V If the A5RCE (Y) signal is currently canceled, transistor 138 is turned off and transistor 136 is turned on. This allows the current path to between line 181 and ground through resistors 136 and 137, so that the line The voltage on in 181 is reduced to ground voltage level. If V was lunched before A 5RCE (Y) Virtual address source signal is canceled and input during conversion , the current path is through transistors 138 and 139 to line 181. and ground, so the voltage on line 181 also drops to the ground voltage level. reduced.

従って、もし変換中のVA 5CRE (Y)仮想アドレスソース信号の状態が エントリー書込み時のものと同一であるならば、セル131はライン181を接 地電圧レベルから分離して、プリチャージ電圧レベルに保つ、即ち、セル131 において2状態が同一ならば、セルはPTE HIT(X)ページテーブルエン トリーヒント信号が入力されるのを許可する。他方、2状態が異なれば、ライン 181は低電圧レベルに引き下げられる。即ち、PTE HIT(X)ページテ ーブルエントリーヒント信号が打ち消される。連想記憶メモリ110のエントリ ー内の全てのセル131がライン181に接続されているならば、入力されるP TEHIT(X)ページテーブルエントリーヒツト信号のために、状態はそれら の全てにランチしなければならない。Therefore, if the state of the VA 5CRE (Y) virtual address source signal during conversion is If it is the same as when writing the entry, cell 131 connects line 181. Isolated from the ground voltage level and maintained at a precharge voltage level, i.e. cell 131 If the two states are the same in Allow tree hint signals to be input. On the other hand, if the two states are different, the line 181 is pulled down to a low voltage level. That is, PTE HIT (X) cable entry hint signal is canceled. Entries in associative memory 110 If all cells 131 in - are connected to line 181, the input P TEHIT(X) For page table entry hit signals, the state is All in all a must for lunch.

PTE HIT(X)信号が入力されると、ヒントバッファ111内のトランジ スタ184はオンされる。PH2フェース2クロフク信号が次ぎに入力される時 、トランジスタ185もオンされ、効果的にライン183は正電圧供給V44に 接続される。入力されたHIT SEL (X)ヒントセレクト信号は、ページ フレーム番号回路112内のセル141中のトランジスタ186をオンして、セ ル141に記憶されたページフレーム番号のビット状態を示すバッファトランジ スタ187の出力をライン143に供給する。出力は、アンプ190によって増 幅されてバス34の一ラインに供給される。When the PTE HIT (X) signal is input, the transistor in the hint buffer 111 Star 184 is turned on. When the PH2 phase 2 clock signal is input next , transistor 185 is also turned on, effectively bringing line 183 to the positive voltage supply V44. Connected. The input HIT SEL (X) hint select signal is The transistor 186 in the cell 141 in the frame number circuit 112 is turned on and the A buffer transition indicating the bit state of the page frame number stored in the page frame number 141. The output of star 187 is provided on line 143. The output is increased by amplifier 190. The signal is then supplied to one line of the bus 34.

バッファトランジスタ187の出力は、セル141に記憶されたページフレーム 番号のビット状態を示す、即ち、ビットが打ち消されれば、インバータ144は トランジスタ187をオンする。The output of buffer transistor 187 is the page frame stored in cell 141. Indicates the bit state of the number, i.e., if the bit is canceled, the inverter 144 Turn on transistor 187.

HIT 5EL(X)ヒツトセレクト信号がオンされているトランジスタ187 に入力される時、電流経路はライン143からトランジスタ186及び187を 介して接地側に形成され、PFN(Y)ページフレーム番号(ピントy)信号を 無効とする。他方、以前に記憶されたビットが入力されると、インバータ144 はトランジスタ187をオフし、その結果、例えトランジスタ186がオンして も、プリチャージライン143は高電圧レベルに維持され、PFN(Y)信号は 入力される。HIT 5EL(X) Transistor 187 with hit select signal turned on , the current path is from line 143 to transistors 186 and 187. is formed on the ground side through the PFN (Y) page frame number (focus y) signal. shall be invalidated. On the other hand, when a previously stored bit is input, inverter 144 turns off transistor 187, so that even if transistor 186 turns on, Also, precharge line 143 is maintained at a high voltage level and the PFN(Y) signal is is input.

一時的に、VA 5RCE仮想アドレスソ一ス信号の連想記憶メモリへの伝送に 伴って、デコーダ121は、P C0DE (7:0)保護コード信号を保護ロ ジック113へ伝送する。上記の如く、一実施例においてP C0DE (7:  O)保護コード信号の内の一つが入力されて、プロセッサ及び起こるべき(書 込み又は読出し)処理の電流保護レベルモードを確定する。他のPCODE ( 7: O)保護コード信号は無視される。Temporarily, for transmission of VA 5RCE virtual address source signal to content addressable memory. Accordingly, the decoder 121 converts the PCODE (7:0) protection code signal into a protection code signal. Transmit to Jic 113. As mentioned above, in one embodiment P C0DE (7: O) One of the protection code signals is input and the processor and Determines the current protection level mode for (write or read) processing. Other PCODE ( 7: O) Protection code signal is ignored.

第4B−2図を参照して、保護ロジック113内のセル151は、セルから伝送 されるP C0DE (Z)保護コード信号によって制御されるトランジスタ1 56、及びインバータ154及び155からなるフリツブフロップによって制御 されるトランジスタ157を含む、2つのトランジスタ156及び157は、エ ントリーと連結するACCESS (X)アクセス信号を伝送するライン183 間に直列に接続される。Referring to FIG. 4B-2, cell 151 within protection logic 113 transmits data from a cell. Transistor 1 controlled by P C0DE (Z) protection code signal 56, and a flip-flop consisting of inverters 154 and 155. Two transistors 156 and 157, including transistor 157, ACCESS (X) line 183 that transmits access signals connected to the entry connected in series between.

トランジスタ157の状態、即ち、それがオン又はオフされているかは、インバ ータ154の出力により、この出力はまたエントリーが最後に書込まれた時のP ROT DEC(W)保護復号信号の状態に応じている。即ち、PROT DE C(W)保護復号信号が入力されると、インバータ154からの出力信号は打ち 消され、トランジスタ157はオフされる。他方、PROT DEC(W)保護 復号信号が打ち消されると、インバータ154からの出力信号が入力され、トラ ンジスタ157はオンされる。The state of transistor 157, i.e. whether it is on or off, depends on the This output is also the P value when the entry was last written. It depends on the state of ROT DEC(W) protection decoding signal. That is, PROT DE When the C(W) protection decoded signal is input, the output signal from the inverter 154 is transistor 157 is turned off. On the other hand, PROT DEC (W) protection When the decoded signal is canceled, the output signal from the inverter 154 is input, and the output signal from the inverter 154 is input. register 157 is turned on.

同様に、トランジスタ156の状態はP C0DE (Z)保護コード信号の状 態に応する。P C0DE (Z)保護コード信号が入力されると、トランジス タ156はオンし、一方、その信号が打ち消されると、トランジスタ156はオ フする。Similarly, the state of transistor 156 is the state of the PCODE (Z) protection code signal. respond to the situation. P C0DE (Z) When the protection code signal is input, the transistor transistor 156 is turned on, whereas when that signal is canceled, transistor 156 is turned on. To do so.

トランジスタ156及び157は、ライン183の状態を制御し、これにより、 伝送されたACCESS (X)信号の入力及び打ち消された状態を制御する。Transistors 156 and 157 control the state of line 183, thereby Controls the input and canceled state of the transmitted ACCESS (X) signal.

もし両方のトランジスタ156及183及び接地間に存在し、従って、ACCE SS (X)信号が打ち消される。他方、トランジスタ156又は157の一方 がオフされると、ライン183及び接地間にはセル151を介する電流経路が存 在しない。保護ロジック113内のエントリー中の他のセルを介する電流経路が 存在しないと、ACCESS (X)信号は入力される。If both transistors 156 and 183 are present between and ground, then ACCE SS (X) signal is canceled. On the other hand, one of the transistors 156 or 157 is turned off, a current path exists between line 183 and ground through cell 151. Doesn't exist. If the current path through other cells in the entry in protection logic 113 is If not present, the ACCESS (X) signal is input.

セル151は基本的に、インバータ154及び155からなるフリップフロップ によって以前にラッチされ、以前に書込まれたPROT DEC(W)復号保護 信号とアクセス要求中にデコーダ121によって供給されたP C0DE (Z )信号間の比較を行う、特に、デコーダ121からのP C0DE (Z)信号 が入力され、デコーダ120からの以前にラッチされたPROT DEC(W) 復号保護信号が無視される場合のみに、セル151はACCESS (X)信号 を無視し、これにより、プロセッサ30が十分に高い特権レベルで動作していな いことを示す。Cell 151 is basically a flip-flop consisting of inverters 154 and 155. PROT DEC(W) decryption protection previously latched and previously written by P C0DE (Z ) signals, in particular the PCODE (Z) signal from the decoder 121. is input and the previously latched PROT DEC(W) from decoder 120 Cell 151 sends the ACCESS (X) signal only if the decryption protection signal is ignored. , thereby indicating that processor 30 is not operating at a sufficiently high privilege level. to show that

HIT 5EL(X)ヒントセレクト信号およびACCESS(X)信号はAN Dゲート190に供給される。もしHIT 5EL(X)ヒントセレクト信号及 びACCESS (X)信号の両方が入力されれば、ANDゲート190は変換 バッファ260用のNo 5TALL (X)信号を発生して、プロセッサ30 は、セント115内のエントリーのTB、V変換バッファ260バリフドフラッ グ及びセント116内のPTE、Vページテーブルエントリーバリッドフラッグ が下記のように調整されることを示す。HIT 5EL (X) hint select signal and ACCESS (X) signal are AN Supplied to D gate 190. If HIT 5EL(X) hint select signal and If both the ACCESS and ACCESS (X) signals are input, the AND gate 190 converts Generates a No. 5 TALL (X) signal for the buffer 260 and sends the processor 30 The TB of the entry in cent 115, V conversion buffer 260 variable PTE in G and St. 116, V page table entry valid flag is adjusted as shown below.

他方、No 5TALL信号が入力されないと、プロセッサ30内の他の回路は 正確な動作を行う、特に、HIT 5EL(X)ヒントセレクト信号が入力され ないと、他の回路はメモリ11(第1図)からページテーブルエントリーを得て 、変換を行う。On the other hand, if the No. 5 TALL signal is not input, other circuits within the processor 30 Perform accurate operation, especially when the HIT 5EL (X) hint select signal is input. Otherwise, other circuits obtain page table entries from memory 11 (Figure 1). , perform the conversion.

一時的に、メモリ11から得られたページテーブルエントリーは、NLU最後に 使用されないフラッグ114を使用して、変換バッファ260(第4A図)内の エントリーへ書込まれる。Temporarily, the page table entries obtained from memory 11 are stored at the end of the NLU. The unused flag 114 is used to written to the entry.

他方、ACCESS (X)信号が打ち消されると、インバータ191は入力信 号をANDゲート192の一方の入力側に供給する。対応するHIT 5EL( X)ヒントセレクト信号が入力されて、連想記憶メモリ110内の一致を示すと 、ANDゲート192は動作してACCVIOL (X)アクセス侵害信号を入 力して、プロセッサ30は要求されたアクセス動作を行うための要求オペレーテ ィング保護レベルモードを育さないことを示す。On the other hand, when the ACCESS (X) signal is canceled, the inverter 191 The signal is applied to one input of AND gate 192. Corresponding HIT 5EL ( X) When a hint select signal is input indicating a match in the content addressable memory 110. , AND gate 192 operates to input the ACCVIOL (X) access violation signal. The processor 30 then executes the requesting operator to perform the requested access operation. protection level mode.

プロセッサは、アクセス侵害に応して従来のりカバリ−動作を行うことが出来る 。The processor can perform conventional recovery actions in response to an access violation. .

記載された如く、No 5TALL (X>信号が入力される時、プロセッサ3 0はまた、TB、V変換バッファ260バリッドフラッグ115及びPTE、V ページテーブルエントリーバリッドフラッグ116(第4A図)の状態も使用す る。フラップの構造が類似しているので、PTE、Vページテーブルエントリー バリッドフラッグ116についてのみ詳細に記載する。第4B−2図を参照して 、変換バッファ260内のページテーブルエントリーが有効であるならば、変換 バッファ260エントリーが書込まれり時、PTE V WRTベージテーブル エントリーバリソド書込み信号が入力され、これにより、インバータ164及び 165よりなるフリップフロップをセントし、それでPTE、Vページテーブル エントリーバリッドフラッグをセットする。その状態において、インバータ16 4の入力は高電圧レベレであり、その出力は低電圧レベルである。As described, when the No. 5 TALL (X> signal is input, the processor 3 0 also indicates TB, V translation buffer 260 valid flag 115 and PTE, V The state of page table entry valid flag 116 (Figure 4A) is also used. Ru. Since the flap structure is similar, PTE, V page table entry Only the valid flag 116 will be described in detail. Referring to Figure 4B-2 , if the page table entry in translation buffer 260 is valid, the translation When buffer 260 entries are written, PTE V WRT page table An entry variable write signal is input, which causes inverters 164 and A flip-flop consisting of 165 cents, then PTE, V page table Set entry valid flag. In that state, the inverter 16 The input of 4 is at a high voltage level and its output is at a low voltage level.

この状態において、インバータ166はトランジスタ167を調整中に維持する 。変換パンフッ260エントリーと連動する入力されたHIT 5EL(X)ヒ ントセレクト信号は、ライン169及び接地間にトランジスタ167と直列に接 続された他のトランジスタ168をオンする。これにより、セル161において 両方のトランジスタ167及び168がオンされると、接地レベル信号はライン 169に供給される。インバータ170は、その信号を高入力PTE V OU Tページテーブルエントリーバリッド出力信号に補足する。In this state, inverter 166 keeps transistor 167 in regulation. . Input HIT 5EL (X) HIT linked with conversion panfoot 260 entry The client select signal is connected in series with transistor 167 between line 169 and ground. The other connected transistor 168 is turned on. As a result, in cell 161 When both transistors 167 and 168 are turned on, the ground level signal is on the line 169. Inverter 170 transfers the signal to high input PTE Supplements the T page table entry valid output signal.

ライン169は、変換バッファ260(第4A図)内の全てのエントリー中の全 てのセル161内のトランジスタ168に対応するトランジスタに共通に接続さ れる。これにより、HIT 5EL(X)信号が変換バッファ260エントリー の内のいくつかに入力され、PTE、Vフラッグがその変換バッファ260エン トリーにセットされて、両トランジスタ167及び168がオンされると、接地 レベル信号がライン169に入力される。Line 169 represents all entries in translation buffer 260 (Figure 4A). Commonly connected to transistors corresponding to transistors 168 in all cells 161 It will be done. This causes the HIT 5EL(X) signal to enter the conversion buffer 260. The PTE and V flags are input to some of the converter buffers 260. When both transistors 167 and 168 are turned on, the ground A level signal is input on line 169.

他方、PTE、Vページテーブルエントリーバリッドフラッグがクリアである、 即ち、以前に書込まれたPTE V WRTベージテーブルエントリーバリッド 書込み信号が無視されると、トランジスタ167はオフされ、これにより、ライ ン169は接地から隔離される。ライン169が変換動作に先立ってプリチャー ジされると、インバータ170からのPTE V OUTページテーブルエント リー出力信号は打ち消される。On the other hand, the PTE and V page table entry valid flags are clear. i.e. the previously written PTE V WRT page table entry valid If the write signal is ignored, transistor 167 is turned off, thereby pin 169 is isolated from ground. Line 169 is pre-charged prior to the conversion operation. When the PTE V OUT page table entry from inverter 170 is The Lee output signal is canceled.

PTE、Mページテーブルエントリー修飾フラッグ117は、PTE、Vページ テーブルエントリーバリッドフラッグ116と同様に構成され、その動作も同様 である。しかし、PTE、Mフラッグは、メモリ11内のページが書込まれる時 にのみ入力されるPTE M WRTベージテーブルエントリー修飾書込み信号 に応じて調整される。セル171 (第4B−2図)は、PTE。PTE, M page table entry modification flag 117 indicates PTE, V page It is configured in the same way as the table entry valid flag 116, and its operation is also the same. It is. However, the PTE, M flag is set when a page in memory 11 is written. PTE M WRT page table entry modification write signal input only to adjusted accordingly. Cell 171 (Figure 4B-2) is PTE.

Mページテーブルエントリーフラッグ117の一つの一実施例を示す。An example of one of the M page table entry flags 117 is shown.

ページフレーム番号が回路112(第4A図)によって伝送され、No 5TA LL信号が発生された後、プロセッサは、トランジスタ185 (第4B−1図 )をオフしてPH4H4クロックを入力し、トランジスタ193をオンするPH 2クロンク信号を否定する。トランジスタ193は接地レベル信号をライン18 2に供給して、入力されるHIT 5EL(X)信号を否定する。The page frame number is transmitted by circuit 112 (FIG. 4A) and No. 5TA After the LL signal is generated, the processor connects transistor 185 (Figure 4B-1) to ) is turned off, the PH4H4 clock is input, and the transistor 193 is turned on. 2 Deny the clock signal. Transistor 193 connects the ground level signal to line 18. 2 to negate the input HIT5EL(X) signal.

その後、プロセッサはPH4クロック信号を否定し、変換バッファ260(第4 A図)は他の仮想アドレス入力可能となる。The processor then negates the PH4 clock signal and converts buffer 260 (fourth In Figure A), other virtual addresses can be input.

仮想アドレスの物理的アドレスへの変換に必要なページフレーム番号の選択及び 伝送と同時に、アクセスするために、新たな変換バッファ260はプロセッサが 十分なオペレーティング特権レベルモードで動作しているかどうかの決定を可能 とする。従来の公知の変換バッファでは、保護フィールドのエンコードされた内 容は、ページフレーム番号と共に変換バッファから伝送され、その時に、プロセ ッサが作動するのに必要なオペレーティング特権レベルモードを有しているかど うかの決定がなされた。プロセッサがアクセスするのに必要なオペレーティング 特権レベルモードで動作していなければ、このことがプロセッサのアクセス侵害 の認知を遅らせていた。Selection and selection of page frame numbers needed to convert virtual addresses to physical addresses Simultaneously with transmission, a new translation buffer 260 is created by the processor for access. Enables determination of whether operating at sufficient operating privilege level mode shall be. Previously known translation buffers do not contain the encoded content of protected fields. The content is transmitted from the translation buffer along with the page frame number, at which time the Does the processor have the necessary operating privilege level mode to operate? The decision was made. Operating System Required for Processor Access This can compromise processor access unless it is running in privileged level mode. cognition was delayed.

キャッシュロジック 上記の如く、プロセッサ30は、最も最近メモリ11に入力された少なくともい くつかのデータのコピーを記憶するキャンシュメモリ35(第1B図)を含む、 その時のデータがメモリ11のシュメモリ35がそのアドレス位置のデータのコ ピーを含むかどうかを決定する。第5図は、キャンシュが確定されたデータを含 むかどうかを決定し、また、バスインターフェースユニット33の制御の下、デ ータをインターナルIDALバス34へ伝送するキャッシュメモリ35内の回路 の機能ブロック図を示す。cache logic As mentioned above, the processor 30 stores at least the most recently input data into the memory 11. including cache memory 35 (FIG. 1B) for storing copies of several data; The data at that time is stored in the memory 35 of the memory 11 as a copy of the data at that address location. Determine whether to include peas. Figure 5 includes data for which cache has been determined. Under the control of the bus interface unit 33, the device A circuit within the cache memory 35 that transmits data to the internal IDAL bus 34. The functional block diagram is shown below.

第5図を参照して、キャンシュ35は、−の特定の実施例において、フラッグセ ット42A、42B、タッグセット41A、41B及びデータ記憶エリア38A 、38Bに分割される64個のエントリーを各々含む2個のデータ記憶セラ)3 9A及び39Bを含む。タングセン)41A及び41Bの各エントリーはまた、 各々のタッグセットに記憶されるタッグ情報の保全性を検査するパリティピント を含む。データ記憶エリア38A及び38Bの各エントリーは2ワード、又は8 ビツトのデータを記憶し、その−ワードは高次ワードで、他のワードは低次ワー ドよりなる。Referring to FIG. tag sets 42A, 42B, tag sets 41A, 41B and data storage area 38A , 2 data storage cells each containing 64 entries divided into 38B) 3 Includes 9A and 39B. Tangsen) 41A and 41B entries are also Parity focus to check the integrity of tag information stored in each tag set including. Each entry in data storage areas 38A and 38B is 2 words or 8 It stores bit data, the -word is a high-order word, and the other words are low-order words. Consists of C.

キャッシュメモリ35は、2方向セツト連想キヤツシユとして構成され、そこで アドレスの低次部分はデータ記憶セット39A及び39Bの各々の64個のエン トリーの内の一つを示す、キャッシュ35内のデータ記憶セラ)39A及び39 Bの内の一つのエントリーがメモリ11からのデータと共に書込まれる時、物理 的アドレスの低次部分はデータが書込まれるデータ記憶セント内のエントリーを 確定し、物理的アドレスの高次部分は、パリティピントと共に、タッグセット4 1A又は41Bに記憶される。Cache memory 35 is configured as a two-way set associative cache, where The low order portion of the address corresponds to the 64 entries in each of data storage sets 39A and 39B. data storage cells in cache 35) 39A and 39 When one entry in B is written with data from memory 11, the physical The lower part of the target address identifies the entry in the data storage center where the data will be written. The high-order part of the physical address, along with the parity focus, is set to tag set 4. 1A or 41B.

ソースレジスタ257 (第1B図)内のレジスタ300において、仮想アドレ スは、記載された実施例では、高次部分をなすビン)(31:9)及び低次部分 をなすビン)(8:O)を伴った32ビツトよりなる。高次部分はVA 5RC E (31: 9)仮想アドレスソース信号として、ページフレーム番号を発生 してそれをキャッシュメモリ35内のページフレーム番号レジスタ302へ伝送 する変換ロジック301へ伝送される。ロジック301は、第4A図、第48− IE及び第4B−2図と関連して上述された変換バッファ260よりなり、それ はまた仮想アドレスの高次部分からページフレーム番号を発生する他の従来のメ カニズムよりなる。仮想アドレスのビット(8: O)は、アドレス変換中は変 化しない。In register 300 in source register 257 (Figure 1B), the virtual address In the described embodiment, the bins that form the higher order part (31:9) and the lower order part It consists of 32 bits with (8:O). The higher order part is VA 5RC E (31:9) Generates page frame number as virtual address source signal and transmits it to the page frame number register 302 in the cache memory 35. is transmitted to the conversion logic 301 that performs the conversion. The logic 301 is shown in FIG. 4A, 48- IE and the translation buffer 260 described above in connection with FIG. 4B-2; is also used by other traditional methods that generate page frame numbers from higher-order parts of virtual addresses. It consists of Kanism. Bits (8:O) of the virtual address do not change during address translation. It doesn't change.

仮想アドレスの低次部分のピント(8: 3)は、VM 5IICE(8: 3 )仮想アドレスソース信号として、レジスタ300からデータ記憶セラ)39A 及び39Bへ伝送される。VA 5RCE(8: 3)仮想アドレスソース信号 は、両方のデータ記憶セット内の64個のエントリーの内の一つを確定する。V A 5RCE(8:3)仮想アドレスソース信号の入力に応じて、確定されたエ ントリーの内容は、各データ記憶セントから伝送される。The focus of the lower part of the virtual address (8: 3) is VM 5IICE (8: 3) ) 39A as a virtual address source signal from the register 300 to the data storage cell. and transmitted to 39B. VA 5RCE (8: 3) Virtual address source signal establishes one of the 64 entries in both data storage sets. V A 5RCE (8:3) Confirmed error in response to virtual address source signal input The contents of the entry are transmitted from each data storage cent.

即ち、データ記憶セントA内の選択されたエントリーの内容は、VALID S ET A及びTAG+PARITY SET A信号として、コンパレータ30 3に伝送される。確定されたエントリーの高次ワードはHIGHA信号としてマ ルチプレクサ−304へ伝送され、低次ワードはLOW A信号としてマルチプ レクサ−304へ伝送される。マルチプレクサ−は、レジスタ300のビット( 2)に対応するVA 5RCE (2)仮想アドレスソース信号によって制御さ れる。VA 5RCE (2)仮想アドレスソース信号に応じて、マルチプレク サ−304は、入力信号の一つをDATA SET A信号としてゲートドライ バー310へ供給する。That is, the contents of the selected entry in data storage center A are VALIDS As the ET A and TAG+PARITY SET A signals, the comparator 30 3. The high word of the committed entry is mapped as a HIGHA signal. The low order word is multiplexed as a LOW A signal. It is transmitted to lexer 304. The multiplexer selects bits ( VA corresponding to 2) 5RCE (2) Controlled by the virtual address source signal It will be done. VA 5RCE (2) Multiplexing according to the virtual address source signal The server 304 uses one of the input signals as the DATA SET A signal to drive the gate. Supply to bar 310.

同様の信号は、データ記憶セラ)39Bからコンパレータ305及びマルチプレ クサ−306へ、VA 5RCE (8: 3)仮想アドレスソース信号によっ てそこで確定されたエントリーに基づいて、伝送される。マルチプレクサ−30 6はまた、VA 5RCE(2)仮想アドレスソース信号によって制御されて、 データ記憶エリア38BからのHIGHB又はLOW B入力信号の内の一つを 、DATA SET B信号としてゲートドライバー311へ供給する。A similar signal is transmitted from the data storage cellar) 39B to the comparator 305 and the multiplayer VA 5RCE (8:3) virtual address source signal to The information is transmitted based on the entry determined there. multiplexer 30 6 is also controlled by the VA 5RCE(2) virtual address source signal, One of the HIGHB or LOWB input signals from the data storage area 38B. , DATA SET B signal is supplied to the gate driver 311.

レジスタ302内のページフレーム番号もコンパレータ303及び305に伝送 される。ページフレーム番号も、またコンパレータ303及び305に伝送され るPARパリティ信号を発生するパリティ発生器307へ伝送される。レジスタ 302からのページフレーム番号及びパリティ発生器307からのPARパリテ ィ信号がTAG+PARITY SET A信号に対応し、フラッグセット41 AからのVALID SET A信号が入力されると、コンパレータ303はS ET A HIT4を号を入力する。The page frame number in register 302 is also transmitted to comparators 303 and 305. be done. The page frame number is also transmitted to comparators 303 and 305. The PAR parity signal is transmitted to a parity generator 307 which generates a PAR parity signal. register Page frame number from 302 and PAR parity from parity generator 307 The signal corresponds to the TAG+PARITY SET A signal, and the flag set 41 When the VALID SET A signal from A is input, the comparator 303 Enter the number of ET A HIT4.

同様に、レジスタ302からのページフレーム番号及びパリティ発生器307か らのPARパリティ信号がTAG十PARITYSET B信号に対応し、フラ ッグセント41BからのVALIDSET B信号が入力されると、コンパレー タ305は5ETB HIT信号を入力する。Similarly, the page frame number from register 302 and parity generator 307 These PAR parity signals correspond to the TAG0 PARITYSET B signal, and the When the VALIDSET B signal from signal center 41B is input, the comparator The data input terminal 305 inputs the 5ETB HIT signal.

SET A HIT及びSET B HIT信号が、その5ETA HIT及び SET B HIT信号の内の一方が入力されると、入力HIT信号を発生する ORゲート312へ供給される。The SET A HIT and SET B HIT signals are SET B When one of the HIT signals is input, generates an input HIT signal. is supplied to OR gate 312.

HIT信号はバスインターフェースユニット33へ伝送され、キャッシュメモリ 35がレジスタ300内の仮想アドレスによって確定されたデータを含むことを 示す、それに対応して、バスインターフェースユニット33は、IDAL CA CHE XMITインターナルバスキャッシュ伝送信号を入力する。The HIT signal is transmitted to the bus interface unit 33 and cache memory 35 contains the data determined by the virtual address in register 300. Correspondingly, the bus interface unit 33 CHE Input the XMIT internal bus cache transmission signal.

コンパレータ303からのSET A HIT信号は、入力時、ANDゲート3 130入力も励磁する。IDAL CACHEXMITインターナルバスキャン シュ伝送信号が入力されると、ゲートドライバー310は、マルチプレクサ−3 04からのDATASET A信号をインターナルIDALバス34へ供給する 。同様に、コンパレータ305からのSET B HIT信号は、入力時、AN Dゲート314の入カモDMI L、IDAL、 CACIIE X?IITイ ンタ′−ナルバスキャンシュ伝送信号が入力されると、ゲートドライバー311 は、マルチプレクサ−3064からのDATASET B信号をインターナルI  DALバス34へ供給する。When the SET A HIT signal from the comparator 303 is input, the AND gate 3 130 input is also excited. IDAL CACHEXMIT internal bus scan When the multiplexer 3 transmission signal is input, the gate driver 310 Supplies the DATASET A signal from 04 to the internal IDAL bus 34 . Similarly, when the SET B HIT signal from the comparator 305 is input, the AN D gate 314 input DMI L, IDAL, CACIIE X? IIT When the internal bus scan transmission signal is input, the gate driver 311 connects the DATASET B signal from multiplexer 3064 to the internal I Supplied to the DAL bus 34.

第5図に示されたキャッシュメモリ35の配置には、種々の利点がある。第一に 、第5図に示されたキャッシュメモリ35が2方向セント連想キヤツシユである 間、第5図の各セットに示された如く、追加セント用の追加回路を具備するのみ で、それは非常に簡単にn方向(「n」は整数)セント連想キャッシュに拡張さ れる。また、仮想アドレスの物理的アドレスへの変換中、同時に高次ピント(3 1:9)の変換が行われてページフレーム番号を発生する時、初期において一定 に保たれる仮想アドレスのビット(8二3)に基づいてデータ記憶セット39A 及び39Bにアクセスすることにより、ビット又はミスの決定を非常に迅速に行 うことが出来る。必要とされるデータがキャッシュメモリ35内にある場合、デ ータはそこから迅速に得られ、それが内湯台、バスインターフェースユニット3 3は、ページフレーム番号が発生された直後にデータ用修正動作を初期化出来る 。The arrangement of cache memory 35 shown in FIG. 5 has various advantages. Primarily , the cache memory 35 shown in FIG. 5 is a two-way cent associative cache. In the meantime, each set in Figure 5 only has additional circuitry for additional cents. and it very easily extends to an n-way ('n' is an integer) cent associative cache. It will be done. Also, while converting a virtual address to a physical address, high-order focus (3 When a 1:9) conversion is performed to generate a page frame number, it is initially constant. Data storage set 39A based on bits (823) of the virtual address held in Bit or miss decisions can be made very quickly by accessing I can do it. If the required data is in the cache memory 35, the data data can be quickly obtained from there, which is the indoor bath stand, bath interface unit 3. 3 can initialize the data correction operation immediately after the page frame number is generated. .

バスイン −フェースロ 33 プロセッサ30の一実施例におけるバスインタフェース回路33が第6図に示さ れる。第6図を参照して、バスインクフエース回路33は、バス13 (第1A 図)を制御するステートマシーン270及びインターナルIDALバス34の動 作を制御する第2のステートマシーン271を含む、2つのステートマシーン2 70及び271は、下記の如く、ステートマシーン270にバス13の動作が必 要であることを示す種々のフラッグ及び制御信号と、ステートマシーンによって 供給されて動作の完了をステートマシーン271に示す応答信号とを除いて、独 立して動作する。Bus In - Facelo 33 Bus interface circuit 33 in one embodiment of processor 30 is shown in FIG. It will be done. Referring to FIG. 6, the bus interface circuit 33 connects the bus 13 (first A The operation of the state machine 270 and the internal IDAL bus 34 that control the two state machines 2, including a second state machine 271 that controls operations; 70 and 271 indicate that the state machine 270 requires operation of the bus 13, as shown below. A state machine and various flags and control signals indicate that the Except for the response signal supplied to state machine 271 to indicate completion of the operation, stand up and operate.

インターナルIDALバス34を制御するステートマシーン271は、一般に制 御ロジック273によって示されるプロセッサ30内のソース、一般にバス13 のピン274によって示されるバス13上の種々のターミナル、及び制御回路4 0(第1B図)よりのマイクロ命令からの入力信号を入力する。ステートマシー ン271は、フローティングポイントプロセッサ31と共に転送を制御する論理 回路272と、キャッシュ及びアドレス入力マルチブレフサ−264(第1B図 )の機能を制御する種々の信号とを含む、プロセッサ30内の制御数の回路へ出 力信号を伝送する。State machine 271 that controls internal IDAL bus 34 generally controls A source within processor 30 indicated by control logic 273, typically bus 13. various terminals on bus 13 as indicated by pins 274 of and control circuit 4 0 (FIG. 1B). statemacy The link 271 includes logic that controls the transfer in conjunction with the floating point processor 31. Circuit 272 and cache and address input multi-brainer 264 (FIG. 1B) ) to a controlled number of circuits within processor 30, including various signals controlling the functions of transmit force signals.

また、ステートマシーン271の出力信号はフラッグ(図示せず)を含むロジッ ク276も制御し、これは、RD REQ続出要求信号の状態によって示されて 、読出し処理がベンディング中であることを示し、WRT REQ書込要求信号 の状態によって示される如く、書込み処理がベンディング中であることを示し、 BRDCST REQ通信要求信号の状態によって示される如く、プロセッサ3 0からフローティングポイントプロセッサ31へのオペランド転送がベンディン グ中であることを示す。Additionally, the output signal of the state machine 271 is a logic signal including a flag (not shown). 276, as indicated by the state of the RD REQ continuation request signal. , indicates that the read process is bending, and the WRT REQ write request signal indicates that the write operation is bending, as indicated by the status of As indicated by the state of the BRDCST REQ communication request signal, the processor 3 The operand transfer from 0 to the floating point processor 31 is is currently in progress.

制御ロジック276は、オペレーティングシステムの制御の下、続出処理中にバ ス13(第1A図)から入力された或情報がキャッシュ35(第1B図)に記憶 されるべきものであるかどうかも決定出来る0例えば、オペレーティングシステ ムは、それがキャッシュ35において読み出す全ての情報を記憶するようにプロ セッサ35を調整する。また、オペレーティングシステムはキャッシュ35への プロセンサ命令の記憶は許可せず、キャンシュで処理されるべきデータの記憶の みを許可する。しかしながら、−JGに、オペレーティングシステムは種々の制 御レジスタから入力された情報の、キャッシュ35内の第1A図に示されるシス テムの他の部分への記憶を許可しないだろう。Control logic 276 controls the buffer during successive processing under the control of the operating system. Some information input from the cache 13 (Figure 1A) is stored in the cache 35 (Figure 1B). For example, the operating system The system is programmed to remember all information it reads in cache 35. Adjust the processor 35. The operating system also writes data to the cache 35. It does not allow the storage of pro-sensor instructions, but rather the storage of data to be processed in the cache. permission to do so. However, in JG, the operating system has various restrictions. The information entered from the control register is stored in the system cache 35 as shown in FIG. 1A. Will not allow memory to other parts of the system.

制御ロジック276は、バス13より入力される情報のキャッシングを制御する ようにCACHE ACCキャッシュ可能アクセス信号を調整する。Control logic 276 controls caching of information input from bus 13. Adjusts the CACHE ACC cacheable access signal as follows.

上記の如く、プロセッサ30の外部ユニットは、転送がライン61 (第1A図 )上のCCTLキャッシュ制御■信号の手段によってキャッシュされるべきもの であるかどうかも制御する。As mentioned above, a unit external to processor 30 has a transfer line 61 (FIG. 1A). ) CCTL cache control on ■ What should be cached by means of signals It also controls whether

ステートマシーン271は、他の制御Mロジック(図示せず)を直接又は間接に 介して、ランチ250から252への書込みデータ及び続出及び書込アドレスの ローディングも制御し、かつピン274上の信号状態に基づいて入力データラッ チ254からの読出データの転送も制御する。State machine 271 directly or indirectly controls other control M logic (not shown). The write data and continuation and write address from launch 250 to 252 are sent via also controls the loading and input data ramps based on the signal state on pin 274. It also controls the transfer of read data from chip 254.

バス13からの転送を制御するステートマシーン270は、バスピン274から の信号と同様にRD REQ読出要求、WRTREQ書込要求、及びBRDCS T REQ通信要求信号を入力し、かつバス13を構成する種々の信号状態を制 御する論理回路277へ伝送されるべき信号を発生する。また、ステートマシー ン270は、制御ロジック280へ伝送される信号を発生し、またバス13のD ALデータ/アドレスライン50への信号供給及び信号入力が許可されるように ラッチ250.251.252.254及びマルチプレクサ−253(第1B図 )の動作を制御する。続出処理が完了した後、ステートマシーン270は、制御 ロジック276にRD REQ読出要求信号の打ち消しを可能とさせるCLRR D FLAGSクリア読出フラッグ信号も入力する。A state machine 270 that controls transfers from bus 13 connects bus pins 274 to Similarly to the signals of RD REQ read request, WRTREQ write request, and BRDCS Inputs the TREQ communication request signal and controls the various signal states that make up the bus 13. It generates a signal to be transmitted to the controlling logic circuit 277. Also, statemacy Connector 270 generates a signal that is transmitted to control logic 280 and also connects D on bus 13. Enables signal supply and signal input to AL data/address line 50. Latches 250.251.252.254 and multiplexer 253 (Fig. 1B) ). After the successive processing is complete, the state machine 270 controls CLRR that allows logic 276 to cancel the RD REQ read request signal D.FLAGS Clear read flag signal is also input.

この背景の下、第6図に示されるバス制御回路33の動作が説明される。書込処 理中、制御回路40により可能とされる如く、DMA ORWRT PND ( DMA又は書込ミヘンティング)信号が制御ロジック273によって入力されて いないならば、ステートマシーン271は先ず書込みアドレスランチ251 ( 第1B図)へ書き込まれるべきアドレスの位置をロードして、その位置がキャッ シュ35 (第1B図)内にキャッシュされるかどうかを決定する。DMA O RWRT PND信号が入力されれば、第1A図に示されたシステムの他のユニ ットがバス13を使用するか、又はステートマシーン271ば書込みアドレス及 びデータが、バス13を介して転送されなかったう7チ251及び250(第1 B図)へ各々ロードされるのを可能とした。Against this background, the operation of the bus control circuit 33 shown in FIG. 6 will be explained. writing place During the process, the DMA ORWRT PND ( DMA or write processing) signal is input by control logic 273. If not, the state machine 271 first writes the write address launch 251 ( (Figure 1B) and the location of the address to be written to the cache. cache 35 (FIG. 1B). DMA O If the RWRT PND signal is input, other units of the system shown in Figure 1A If the write address uses bus 13 or state machine 271 The remaining seven channels 251 and 250 (first (Figure B).

DMA ORWRT PND (DMA又は書込みベンディング)信号が制御ロ ジック273によって入力されていないならば、書き込まれるべき位置がキャン シュされるかどうかの決定がなされる。もし位置がキャッシュされれば、その位 置に対応するキャッシュ35内のエントリーは、新たなデータでアンプデートさ れなければならない0位置がキャンシュされるかどうかを決定するために、ステ ートマシーン271は、読み出されるべきキャッシュを可能とするCHACHE  FTN (1: O)キャッシュ機能信号及びマルチプレクサ−264が仮想 アドレス変換回路37によって発生された物理的アドレスを使用出来るようにす るCHAC)IEADR3(1: 0)信号を発生する。この動作中、I DA LCHACHE XMITキャッシュ伝送信号(第5図)は、インターナルデー タバス34へ供給されるべきキャッシュからのデータを禁止するように、拒否さ れる0位置がキャッシュされれば、HIT信号がANDゲート312(第5図) に入力され、このことが制御ロジック273からのMI SS信号の状態に反映 される。The DMA ORWRT PND (DMA or write bending) signal is If the location to be written is not entered by the logic 273, the location to be written is A decision is made as to whether the If the location is cached, then The entry in cache 35 corresponding to the location is amped up with the new data. To determine whether the 0 position that must be cached is The host machine 271 uses CHACHE to enable the cache to be read. FTN (1: O) Cache function signal and multiplexer 264 are virtual The physical address generated by the address conversion circuit 37 can be used. CHAC) IEADR3(1:0) signal is generated. During this operation, IDA LCHACHE XMIT cache transmission signal (Figure 5) is an internal data data from the cache to be provided to the tabus 34. If the 0 position is cached, the HIT signal is sent to AND gate 312 (FIG. 5). This is reflected in the state of the MI SS signal from the control logic 273. be done.

MISS信号が入力されないと、書き込まれるべき位置はキャッシュされる。否 定されたMiss信号に応じて、ステートマシーン271は、キャッシュ書込み 動作を可能とするCHACHEFTN (1: 0)キャッシュ機能信号及びマ ルチプレクサ−264が仮想アドレス変換回路37によって発生された物理的ア ドレスを使用出来るようにするCHACHE ADR3(1: O)信号を発生 する。これと同時に、キャッシュエントリーに書き込まれたデータは書込データ ラ7チ250(第1B図)に記憶され、制御ロジック内のフラッグは入力された WRREQ書込要求信号を発生するように調整される。この動作中、MBOX  5ALL信号は、仮想アドレス変換回路の動作を不可能とするよう入力される。If the MISS signal is not input, the location to be written is cached. no In response to the specified Miss signal, the state machine 271 performs a cache write. CHACHEFTN (1:0) cache function signal and master that enable operation. The multiplexer 264 performs the physical address generated by the virtual address translation circuit 37. Generates the CHACHE ADR3 (1: O) signal that enables the address to be used. do. At the same time, the data written to the cache entry is the write data flags in the control logic are input Coordinated to generate the WRREQ write request signal. During this operation, MBOX The 5ALL signal is input to disable the operation of the virtual address translation circuit.

他方、Miss信号が入力されると、書込み位置がキャンシュされる。入力MI SS信号に応じて、ステートマシーンは、書込データの書込データランチ250 (第1B図)でのランチを可能とし、かつWRT REQ信号の制御ロジック2 76による入力を可能とすル、マタ、CHACHE ADR3(1: 0)キャ ッシュアドレス信号は、リフレッシュカウンター262(第1B図)をインクリ メントさせ、かつマルチプレクサ−264がフラッグ42ヘアドレスを供給して 、タッグ41及びデータ記憶38(第1B図)にそれらをリフレッシュさせるの を可能とするように、調整される。この動作の間、仮想アドレス変換回路が他の 物理的アドレスを製造するのを防止するよう動作するのを不可能とするように、 MBOX 5TALL信号も入力される。On the other hand, when the Miss signal is input, the write position is canceled. Input MI In response to the SS signal, the state machine executes write data launch 250 of the write data. (Figure 1B), and the control logic 2 of the WRT REQ signal. CHACHE ADR3 (1:0) The refresh address signal increments the refresh counter 262 (Figure 1B). and multiplexer 264 supplies flag 42 head address. , tag 41 and data store 38 (FIG. 1B) to refresh them. adjusted to allow for. During this operation, the virtual address translation circuitry To prevent the production of physical addresses, to make it impossible to operate, The MBOX 5 TALL signal is also input.

書込処理が完了した後、DMA ORWRT PND (DtlA又は書き込み ベンディング)信号が拒否される。このことにより、他のアドレス及び書込みデ ータがラッチ250及び251 (第1B図)ヘロードされる。リフレッシュ動 作もまた可能とされる。After the write process is completed, DMA ORWRT PND (DtlA or write bending) signal is rejected. This allows other address and write data The data is loaded into latches 250 and 251 (FIG. 1B). Refresh behavior It is also possible to create.

続出処理中にステートマシーン271によって実行又は可能とされる動作は、要 求された情報が命令又はデータか、及び要求情報がキャッシュ35 (第1B図 )内にあったか否かによる。アドレスにより確定された位置がキャンシュされる 場合、及びキャッシュエントリーを使用不可能とするタング41A、41B又は データ38A、38B (第5図)の一方にパリティエラーが無い場合、情報は キャッシュ内にある。命令を撤回するために続出処理が要求され、この場合、制 御ロジック273はIB REQ命令命令バッファ要求信号力する。さもなけれ ば、制御回路40はRD続出し信号を入力する。要求情報がキャッシュ35内に 無ければ、制御ロジック273もREAD MISS信号を入力する。The operations performed or enabled by state machine 271 during succession processing are as follows: Whether the requested information is an instruction or data, and the requested information is stored in the cache 35 (Figure 1B). ) depending on whether it was within or not. The position determined by the address is cached. case, and tongue 41A, 41B or which disables the cache entry. If there is no parity error in either data 38A or 38B (Figure 5), the information will be It's in the cache. A follow-up process is required to revoke the order, in which case the control The control logic 273 outputs an IB REQ command command buffer request signal. Otherwise For example, the control circuit 40 inputs the RD continuous output signal. Request information is in cache 35 If not, the control logic 273 also inputs the READ MISS signal.

READ Miss信号は、第5図に示されたHIT信号の完了を示す。The READ Miss signal indicates completion of the HIT signal shown in FIG.

制御回路40から入力されたRD続出信号又はIB REQ命令命令バッファ要 求信号力に応じて、ステートマシーン271は、キャッシュ読出しを可能とする CHACHE FTN (1: O)キャッシュ機能信号及びマルチプレクサ− 264(第1B図)が仮想アドレス変換回路37からのアドレスを使用出来るよ うにするCHACHE ADR5(1: O)信号を発生する。同時に、ステー トマシーン271は、読出しアドレスラッチ252にロードされるべき仮想アド レス変換ロジックからのアドレスを可能とするARM ADR3ATRアームア ドレスストローブ信号を入力する。その動作がIB REQ信号に応じていたな らば、制御ロジックのフラングセットを可能とし、PREV IB REQ前命 令バッファ要求信号の入力を可能とするINIT IB REQ初期命令バンフ ァ要求信号もステートマシーン271は入力する。RD successive signal input from control circuit 40 or IB REQ command command buffer required Depending on the signal strength, state machine 271 enables cache reads. CHACHE FTN (1: O) Cache function signal and multiplexer 264 (Figure 1B) can use the address from the virtual address translation circuit 37. Generates the CHACHE ADR5 (1:O) signal to At the same time, stay Thomasin 271 specifies the virtual address to be loaded into read address latch 252. ARM ADR3ATR arm address that enables address conversion logic Input the dress strobe signal. That operation was in response to the IBREQ signal. If it is possible to set the control logic flag, PREV IB REQ pre-order INIT IB REQ initial instruction buffer that enables input of instruction buffer request signal The state machine 271 also receives an input request signal.

情報がキャッシュ35内にあれば、ステートマシーン271は、情報がキャッシ ュ35から1、第5図と関連して上記した如く、オペレーションターミネートへ 供給されるのを許可する。If the information is in cache 35, state machine 271 35 to 1, to the operation terminal as described above in connection with Figure 5. Allow to be supplied.

情報がキャンシュ35内に無い場合、及びDtlA ORWRTPND (DM A又は書き込みベンディング)信号が入力される場合、ステートマシーン271 は、プロセッサ30をストールする5TALL MBOX 5TALL信号の両 方及びリフレッシュ動作を許可するCACHE ADR3(1: O)信号を入 力する。If the information is not in the cache 35, and DtlA ORWRTPND (DM A or write bending) signal is input, the state machine 271 is both the 5TALL, MBOX, and 5TALL signals that stall the processor 30. Inputs the CACHE ADR3 (1: O) signal that allows refresh operations. Strengthen.

このストールにより、続出処理が実行される前に書込処理が完了する。Due to this stall, the write process is completed before the successive process is executed.

DMA ORWRT PND (DMA又は書き込みベンディング)信号が拒否 される場合、続出処理が進む、ステートマシーン271は、RD REQ読出要 求信号の制御ロジック276への入力を可能とする。ステートマシーン271は 、その後、CACHEABLE、CCTLキャッシュ制御、RDYレディ及びE RRエラー信号を監視して、続出処理の最後を決定する。もしCACHEABL E又はCCTLキャッシュ制御信号が情報はキャッシュされるべきではないこと を示すならば、バス13を介して一つの転送がある。他方、もし情報がキャッシ ュされるべきであるならば、2つの転送が要求され、キャッシュエントリー(第 5図)において、一方は低ワード用、他方は高ワード用となもし転送がキャッシ ュされるべきであれば、RDYレディ信号の入力時、もしDAL PARERR パリティエラー信号が入力されず、入力情報にはパリティエラーが無いことが示 されれば、ステートマシーン271はマルチプレクサ−264(第1B図)がキ ャッシュ35内のエントリーを選択するために仮想アドレス変換回路からのアド レスを使用出来るものとし、情報を選択された高又は低ワードの内の一方にロー ドされ得るものとする。情報がロードされるべきキャッシュ35内のワードは、 VA (2)仮想アドレスビット(第5図参照)の状態に応する。情報は、その 後、データ経路36(第1B図)に供給される。DMA ORWRT PND (DMA or write bending) signal rejected If the RD REQ read request is executed, the state machine 271 proceeds with the successive processing. The request signal can be input to the control logic 276. State machine 271 is , then CACHEABLE, CCTL cache control, RDY ready and E The end of successive processing is determined by monitoring the RR error signal. If CACHEABL E or CCTL cache control signal indicates that the information should not be cached , there is one transfer via bus 13. On the other hand, if the information is If the cache entry (first (Figure 5), one is for low words and the other is for high words. When the RDY ready signal is input, if DAL PARERR No parity error signal is input, indicating that the input information has no parity error. state machine 271 causes multiplexer 264 (FIG. 1B) to address from the virtual address translation circuit to select an entry in cache 35. information can be loaded into one of the selected high or low words. shall be able to be coded. The word in cache 35 into which information is to be loaded is VA (2) Corresponds to the state of the virtual address bit (see Figure 5). The information is that It is then fed to data path 36 (FIG. 1B).

DAL PARERRパリティエラー信号が入力される場合、又はERRエラー 信号がライン55(第1A図)に入力され、トランスファー内に稼働する他のユ ニットによるエラーレスポンスを示す場合、処理は、PREV IB REQ前 命令バッファ要求信号が入力されるかどうかによる。そうであるならば、制御回 路40(第1B図)は、入力されたIB FILL ERR命令命令バッファフ ィルエラー信号って促されて、それが正確な動作を行うことを許可する。PRE V IB REQ前命前命令バッファ要求信号力されなければ、5TALL及び MBOX 5TALL信号は入力されてプロセッサ30をストールし、TRAP  REQトラップ要求信号が入力されて、これによりプロセッサ制御回路40は 選択されたりカバリ−動作を許可する。DAL PARERR If parity error signal is input or ERR error A signal is input to line 55 (FIG. 1A) to connect other units operating within the transfer. If an error response due to knitting is indicated, processing is performed before PREV IB REQ. Depends on whether the instruction buffer request signal is input. If so, the control Path 40 (FIG. 1B) indicates the input IB FILL ERR command command buffer buffer. The file error signal prompts and allows it to perform the correct operation. P.R.E. V IB REQ pre-previous instruction buffer request signal If not input, 5TALL and The MBOX 5 TALL signal is input and stalls the processor 30, and TRAP The REQ trap request signal is input, which causes the processor control circuit 40 to Select or allow cover operation.

入力情報がキャッシュされる場合、及びデータが入力されるにつれてERRエラ ー信号はDAL PARERRパリティエラー信号が入力される場合、ステート マシーン271は第2のワ−2のワードが適切に入力されると、それは上記の如 くキャンシュ35内に記憶される。ステートマシーン271は、マルチプレクサ −264に仮想アドレス変換回路37からのアドレスの使用を可能とするCAC HE ADR3(1: O)キャッシュアドレス信号、及び第2ワードのキャッ シュエントリーへの記憶を可能とするCACHE FTN (1: O)キャッ シュ機能信号を発生する。ステートマシーン271は、しかるに、情報のデータ 経路36への転送を可能としない。ERR errors when input information is cached and as data is entered - signal is in state when DAL PARERR parity error signal is input. Once the second word 2 has been properly entered, the machine 271 reads it as described above. It is stored in cache 35. The state machine 271 is a multiplexer - CAC that enables the use of addresses from the virtual address translation circuit 37 in 264 HE ADR3(1: O) Cache address signal and second word cache CACHE FTN (1:O) that enables storage in the entry generates a switch function signal. The state machine 271, however, Transfer to route 36 is not possible.

他方、ERRエラー信号又はDAL PARERRパリティエラー信号が入力さ れると、MBOX 5TALL信号が入力されて仮想アドレス変換回路37をス トールし、第1ワードが書き込まれるキャッシュ内のエントリーが無効にマーク される。同時に、CACHE ADR3(1: 0)は、マルチプレクサ−26 4がキャッシュ35の内容をリフレッシュし、カウンターをインクリメントする ためにリフレッシュカウンター262からのリフレッシュアドレスを使用するよ うに、調整される。On the other hand, the ERR error signal or DAL PARERR parity error signal is input. When the MBOX 5TALL signal is input, the virtual address conversion circuit 37 is skipped. the entry in the cache where the first word is written is marked invalid. be done. At the same time, CACHE ADR3 (1:0) 4 refreshes the contents of cache 35 and increments the counter The refresh address from refresh counter 262 is used for It will be adjusted.

ステートマシーン271は、ステートマシーン271が情報のキャッシュ35へ の書き込み及び読み出しを可能としないならば、リフレッシュ動作の実行を可能 とする。処理の発生を可能とするために、ステートマシーン271は、マルチプ レクサ−264がリフレッシュカウンター262からのリフレッシュアドレス信 号を使用して、従来の方法で記憶回路38.41及び42(第1B図)の内容を リフレッシュすることを可能とするCACHEADR3信号を発生させる。The state machine 271 stores the information from the state machine 271 to the information cache 35. If it is not possible to write or read data, refresh operations can be performed. shall be. To enable processing to occur, state machine 271 includes multiple Lexer 264 receives the refresh address signal from refresh counter 262. The contents of memory circuits 38, 41 and 42 (Figure 1B) are stored in the conventional manner using Generates the CACHEADR3 signal that allows refreshing.

ステートマシーン271はまた、キャンシュ35内のエントリーが、制御ロジッ ク273からのDMA INV REQ無効要求信号に応じて、無効とされるの を可能とする。第1B図と関連して上記した如く、入力CCTLキャンシュ制御 信号及び入力ADR3STRアドレスストローブ信号の両者が第1A図に示した システム内の他のユニットによって入力される時、その両信号の一致に応じてこ の信号が発生される。他のユニットがメモリ11と共にDMR(直接メモリアク セス)動作を行う時、これが起こり、それによりDMG直接メモリグランド信号 が入力される。State machine 271 also indicates that entries in cache 35 are In response to the DMA INV REQ invalidation request signal from the block 273, the is possible. As described above in connection with Figure 1B, the input CCTL cache control Both the signal and the input ADR3STR address strobe signal are shown in Figure 1A. When input by other units in the system, this depends on the coincidence of both signals. signal is generated. Other units are connected to DMR (direct memory access) along with memory 11. This occurs when the DMG directly performs a memory ground signal is input.

もし他のユニットがキャッシュ35によりキャッシュされるメモ1J11内の位 置へデータを転送するならば、キャッシュエントリーは無効としてマークされる 。第1B図を参照して、DMG及びADRS STRアドレスストローブ信号の 一致に応じて、ANDゲー)401は入力データランチ254に、この場合はア ドレス信号である信号をDALデータ/アドレスライン5o上へのランチを可能 とする。If another unit is cached by cache 35, the position in memo 1J11 is If the data is transferred to another location, the cache entry is marked as invalid. . Referring to Figure 1B, the DMG and ADRS STR address strobe signals Depending on the match, the AND game) 401 inputs the input data launch 254, in this case the It is possible to launch the signal that is the address signal onto the DAL data/address line 5o. shall be.

DMA INV REQ無効要求信号に応じて、ステートマシーン271は、最 初に、キャッシュからのデータがインターナルバス34上へ供給されるのを許可 することなしに、入力データラッチ254内のアドレスを使用してキャッシュ3 5の読出動作の実行を行う、もし、MI SS信号が入力されれば、位置はキヤ 。In response to the DMA INV REQ invalidation request signal, the state machine 271 First, allow data from the cache to be provided onto the internal bus 34. cache 3 using the address in input data latch 254 without Execute the read operation in step 5. If the MI SS signal is input, the position is .

シュされず、更に何も起こらない。nothing happens.

しかし、もしMI SS信号が否定されると、入力データ・ランチ254中のア ドレスによって識別されるロケーションはキャッシングされ、そして状態マシン は、キャッシュ無効化動作を開始する。この時、状態マシンは、無効化動作を可 能にするキャッシュ・ファンクション信号CACHE FTN (1: 0)お よび無効化に際して、マルチプレクサ264が入力データ・ランチの内容を使用 することを可能にするキャッシュ・アドレス信号CACHEADR3(1: 0 )を発生させる。However, if the MISS signal is negated, the The location identified by address is cached and the state machine starts a cache invalidation operation. At this time, the state machine enables the disable operation. Cache function signal CACHE FTN (1:0) Multiplexer 264 uses the contents of the input data launch for Cache address signal CACHEADR3 (1:0 ) occurs.

状態マシン270は、バス13からのキャッシュ制御信号CC几、直接メモリ・ リクエスト信号DMR、レディ信号RDYおよびエラー信号ERR1制御ロジッ ク276からの読出しリクエスト信号RD REQ、書込みリクエスト信号WR T REQ、ブロードキャスト・リクエスト信号BRDC3T、#よびキャッシ ング可能アクセス信号CACHE ACC,ならびに直接メモリ・アクセス禁止 信号INHDMAおよびアーム読出しリクエスト信号ARM RD REQE反 応して動作する。もし状態マシン270が、第1図に示すシステム内の別のユニ ットがバス13を介しての転送を希望していることを示す表明された直接メモリ ・リクエスト信号DMRを受信してさらに、DMA禁止信号INHDMAまたは ブロードキャスト・リクエスト信号BRDC5TREQが表明されない限りは、 このマシンは、直接メモリ認可ディスエイプル信号DIS DMGを否定し、次 にこの否定された信号は、制御ロジック277が直接メモリ認可信号DMGを表 明することを可能にする。この表明された直接メモリ認可DMGは、別のユニッ トがバス13を介して転送を実行することを可能にする。さらにそのうえ、状態 マシン270は、DATA IN信号を表明するが、この信号は、これらのライ ンを条件付けするために、DALIII御ロジック280によって、システム内 の他の装置がDALデータ/アドレス・ライン50を使用できるようにする。State machine 270 receives cache control signals CC from bus 13, direct memory Request signal DMR, ready signal RDY and error signal ERR1 control logic read request signal RD REQ, write request signal WR from T REQ, broadcast request signal BRDC3T, # and cache Access signal CACHE ACC and direct memory access prohibited Signal INHDMA and arm read request signal ARM RD REQE It operates accordingly. If state machine 270 is in another unit in the system shown in FIG. asserted direct memory indicating that the client wishes to transfer via bus 13 ・After receiving the request signal DMR, the DMA inhibit signal INHDMA or Unless the broadcast request signal BRDC5TREQ is asserted, This machine negates the direct memory grant disable signal DIS DMG and then This negated signal causes the control logic 277 to directly represent the memory grant signal DMG. make it possible to clarify This asserted direct memory grant DMG is allows clients to perform transfers over bus 13. Furthermore, the condition Machine 270 asserts the DATA IN signal, which is The DAL III control logic 280 provides allows other devices to use the DAL data/address lines 50.

状態マシン270はさらにTRl−5TATE STR信号を表明するが、この 信号は、制御ロジック277が、他の装置がデータ・ストローブ信号DATA  STR、アドレス・ストローブ信号ADRS STRおよび転送タイプ信号TR TYPEを使用することを可能にする。State machine 270 also asserts the TRl-5TATE STR signal; The control logic 277 receives the data strobe signal DATA from other devices. STR, address strobe signal ADRS STR and transfer type signal TR Allows you to use TYPE.

そうする代わりに、もしシステム内の他のどの装置もバス13を介して転送する ことがない場合には、状態マシン270が、制Noジフク276から(7)RD  REQ信号、WRT REQ信号、およびブロードキャスト・リクエスト信号 BRDC3T REQ信号に反応してバス13上での転送を可能にしてもよい、 もし書込みリクエスト信号WRT REQが表明され、それぞれランチ251お よびラッチ250 (第1B図を参照)内の書込みアドレスおよび書込みデータ が示された場合、仮にDMR信号が表明されていなければ、状態マシン270は 、マルチプレクサ253が、ラッチ251からの書込みアドレスをDALデータ /アドレス・ライン50上に結合することを可能にするDAL C0NT (1 : 0)(DAL内容)信号を発生させる。同時に、状態マシン270はアドレ ス・ストローブ・エネイブル信号ADR5S 5TRENを表明するが、すると 次にこの信号は、制御ロジック277がアドレス・ストローブ信号ADRS S TRを表明することを可能にする。Instead, if any other device in the system transfers via bus 13 If not, state machine 270 returns (7) RD from control No. 276. REQ signal, WRT REQ signal, and broadcast request signal BRDC3T may enable transfer on bus 13 in response to the REQ signal; If write request signal WRTREQ is asserted, launch 251 and and write address and write data in latch 250 (see Figure 1B). is indicated, and if the DMR signal is not asserted, state machine 270 , multiplexer 253 converts the write address from latch 251 into DAL data. DAL C0NT (1 : 0) (DAL content) Generates a signal. At the same time, state machine 270 The strobe enable signal ADR5S 5TREN is asserted, but then This signal is then used by control logic 277 to generate an address strobe signal ADRSS. Allows to assert TR.

次に、状態マシン270は、(DAL内容)信号DAL C0NT(1: O) を発生するが、この信号によっマルチプレクサ253は、書込みデータ・う7チ 250の内容をDALデータ/アドレス・ライン50上に結合することが可能に なる。状態マシン270は同時に、データ・ストローブ・エネイブル信号DAT A STRENを表明するが、この信号によって制御ロジック277は、データ ・ストローブ信号DATA STRを表明することが可能になる。Next, the state machine 270 outputs the (DAL content) signal DAL C0NT(1:O) This signal causes the multiplexer 253 to select the write data and the other channel. 250 contents onto the DAL data/address line 50. Become. State machine 270 simultaneously outputs data strobe enable signal DAT. A STREN is asserted, but this signal causes the control logic 277 to - Strobe signal DATA STR can be asserted.

この後で、状態マシンは、レディ信号RDYまたはエラー信号ERRが表明され るまで待ち状態にとどまる。もし表明されたRDY信号が受信された場合、この 動作はアドレス・ストローブ・エネイブル信号ADR3STRENおよびデータ ・ストロ−が、これらの信号によって次に、制御ロジック277は、それぞれア ドレス・ストローブ信号ADR3STRおよびデータ・ストローブ信号DATA  STRを否定することが可能になり、さらに制御ロジック276はWRT R EQ信号を否定することが可能になる。After this, the state machine determines whether ready signal RDY or error signal ERR is asserted. remains in the waiting state until If an asserted RDY signal is received, this Operation is based on address strobe enable signal ADR3STREN and data. - When the straws are activated by these signals, the control logic 277 then Dress strobe signal ADR3STR and data strobe signal DATA STR can be negated, and control logic 276 can also negate WRTR. It becomes possible to negate the EQ signal.

一方、もし表明されたエラー信号ERRが受信された場合には、状態マシン27 0は再試行を試みて、ランチ250からのデータ信号をDALデータ/アドレス ・ライン50上に結合することをマルチプレクサ253に可能にするDAL C 0NT (1: 0)(DAL内容)信号を発生する。On the other hand, if the asserted error signal ERR is received, the state machine 27 0 attempts to retry and converts the data signal from launch 250 to DAL data/address. DAL C that allows multiplexer 253 to couple onto line 50 Generates a 0NT (1:0) (DAL content) signal.

もしレディ信号RDYおよびエラー信号ERRの双方が表明された場合には、再 試行の信号が送られ、転送が再度試みられる。If both ready signal RDY and error signal ERR are asserted, A try signal is sent and the transfer is attempted again.

もし他の動作がなにも起こっていない場合には、状態マシン270は、DAL  C0NT (1: 0)(DAL内容)信号を発生し、この信号によってマルチ プレクサ253は、読出しアドレス・ラッチ252の内容をDALデータ/アド レス・ライン50上に結合することが可能になる。これによって状態マシン27 0は、他の信号および条件によって読出し動作の発生が許される時には、読出し 動作を迅速に開始できる。読出し動作の間、読出しリクエスト信号RD REQ が表明されると、状態マシン270はアドレス・ストローブ・エネイブル信号A DR35TRENを表明し、次にこの信号によって制御ロジック277は、アド レス・ストローブ信号ADR3STRを表明することが可能になる。状態マシン 270は次に、データ・イン信号DATAINを表明し、この信号によって制御 ロジック280は、システム内の他の装置がDALデータ/アドレス・ライン5 0を使用できるようにこれらのラインを条件付けすることが可能になる。同時に 、状態マシンは、データ・ストローブ・エネイブル信号DATA STRENを 表明し、次にこの信号によって、制御ロジック277は、データ・ストローブ信 号DATA STRを表明することが可能になる。If no other operations are occurring, state machine 270 Generates C0NT (1: 0) (DAL content) signal, and uses this signal to The plexer 253 converts the contents of the read address latch 252 into DAL data/address. connection on the response line 50 becomes possible. This causes state machine 27 0 indicates a read operation when other signals and conditions permit a read operation to occur. Operation can be started quickly. During read operation, read request signal RD REQ is asserted, state machine 270 asserts address strobe enable signal A DR35TREN and then this signal causes control logic 277 to Res strobe signal ADR3STR can be asserted. state machine 270 then asserts the data-in signal DATAIN and is controlled by this signal. Logic 280 indicates that other devices in the system are connected to DAL data/address lines 5. It becomes possible to condition these lines so that 0 can be used. at the same time , the state machine receives the data strobe enable signal DATA STREN. This signal then causes control logic 277 to assert the data strobe signal. It becomes possible to assert the number DATA STR.

次の動作は、キャッシング可能アクセス信号CACHE ACCが制御ロジック 276によって表明されるか否かに依る。もしこの信号が表明されれば、検索さ れたデータはキャッシング可能であり、従って2ワードがバス13を介して続出 される。一方、もしキャッシング可能アクセス信号CACHE ACCが表明さ れないときには、検索されたデータはキャッシング不可能であり、たった1ワー ドがバス13を介して読出される。キャッシング可能アクセス信号CHA CH E A CCが表明されない場合には、状態マシン270は続出しデータ・ラン チ信号RD DATALATを表明するが、この信号は、表明されると、入力ラ ンチ254 (第1B図を参照)が、DALデータ/アドレス・ライン50上の 信号を受信することが可能になる。その後で続出しデータ・ランチ信号RD D ATA LATが否定されると、信号は入力ランチによってラッチされる。もし エラー信号ERRが否定されそして読出しフラグ・クリア信号CLRRD FL AGSが表明されると、状態マシン270は表明されたレディ信号RDYに反応 して読出しデータ・ランチ信号RD DATA LATを否定する0表明された CLRRD REQ信号に反応して、制御ロジック276は読出しリクエスト信 号RD REQを否定する。The next operation is that the cacheable access signal CACHE ACC is the control logic 276. If this signal is asserted, the search The stored data can be cached, so the two words are sent one after the other via bus 13. be done. On the other hand, if the cacheable access signal CACHE ACC is asserted When the retrieved data is not cacheable and requires only one The code is read out via bus 13. Cacheable access signal CHA CH If EACC is not asserted, state machine 270 asserts the input signal RD DATALAT, which, when asserted, 254 (see FIG. 1B) on the DAL data/address lines 50. It becomes possible to receive signals. After that, a series of data launch signals RD When ATA LAT is negated, the signal is latched by the input launch. if The error signal ERR is negated and the read flag clear signal CLRRD FL When AGS is asserted, state machine 270 responds to the asserted ready signal RDY. asserted to 0 to negate the read data launch signal RD DATA LAT. In response to the CLRRD REQ signal, control logic 276 issues a read request signal. No. RD REQ is denied.

一方、もしキャッシング可能アクセス信号CACHE ACCが表明されると、 上記のように読出し動作が実行される。データが入力データ・ランチ中にラッチ された時にもしキャッシュ制御信号CCTLが表明されてない場合、第2の動作 も実行される。On the other hand, if the cacheable access signal CACHE ACC is asserted, A read operation is performed as described above. Data latched during input data launch If the cache control signal CCTL is not asserted when is also executed.

一方、もしキャッシュ制御信号CCTLが表明され、転送に携わっている他の装 置がデータのキャッシングを防止していることが表示される場合には、第2の動 作は実行されない。On the other hand, if the cache control signal CCTL is asserted and other devices involved in the transfer If it appears that the location prevents data caching, the second action The work will not be executed.

状態マシン270が直接メモリ・リクエスト信号DMRの他の装置からの受信に 反応して直接メモリ認可信号DMGを表明することを禁止するために、状態マシ ン271は、直接メモリ・アクセス禁止信号INHDM、Aを用いる。直接メモ リ・アクセス禁止信号INHDMAは成る転送中に、浮動小数点プロセンサ3】 によって表明される(第1A図を参照)。The state machine 270 directly receives memory request signals DMR from other devices. state machine to prohibit asserting the direct memory grant signal DMG in response. 271 uses a direct memory access inhibit signal INHDM,A. direct memo The re-access inhibit signal INHDMA is activated during the transfer of the floating point processor 3] (see Figure 1A).

制御回路40からの読出しブロードキャスト信号11111 BRDC3Tおよ び基本的ブロードキャスト信号BASICBRDC3Tは、状態マシン271が 、キャッシュ35からまたはデータ・バス36 (data path 36  )中のレジスフ255からの浮動小数点・オペランドの情報を転送することを可 能にする。制御ロジック276もまた、ブロードキャスト・リクエスト信号BR DC3TREQ信号を表明することが可能になり、つぎに、状態マシン270が 、この情報を上記のように転送することを可能にする。Read broadcast signal 11111 from control circuit 40 BRDC3T and and the basic broadcast signal BASICBRDC3T are processed by the state machine 271. , from cache 35 or from data bus 36 (data path 36 ) can transfer floating point/operand information from REGISF 255 in make it possible. Control logic 276 also receives broadcast request signal BR. The DC3TREQ signal can now be asserted, and then state machine 270 , allowing this information to be transferred as described above.

状態マシン271はまた、浮動小数点プロセッサ・ベンディング信号FPP P NDを表明するフラグを設定するように制御ロジック273をエネイブルする。State machine 271 also outputs floating point processor bending signal FPP Enable control logic 273 to set a flag to assert ND.

状態マシン271は、浮動小数点プロセンサ31からの浮動小数点演算の結果を 受信できる状態にあることをPPPインタフェース回路272に示すために、浮 動小数点プロセッサ信号SIG PPPを表明する0条件コードが上述したよう にレディ状態にある場合、インタフェース回路272はCP OK信号を表明し 、そして、結果データがレディ状態にある場合、レディ信号CP RDYを表明 する。レディ信号CPRDYに反応して、状態マシン271は、状態マシン27 0が結果データを受信することを可能にする。もし浮動小数点プロセッサ31が 、エラー発生信号を送ると、インタフェース回路272はX−2−信号CP E RRを表明す4.CP OK、CP RDYまたはERR信号に反応して、状態 マシン271は、浮動小数点プロセッサ・ベンディング信号を制御Bするフラグ がリセットされるようにし、これによってこの信号を否定する。The state machine 271 receives the results of floating point operations from the floating point processor 31. In order to indicate to the PPP interface circuit 272 that it is ready to receive, As mentioned above, the 0 condition code asserting the dynamic point processor signal SIG PPP is in the ready state, the interface circuit 272 asserts the CP OK signal. , and if the result data is in the ready state, assert the ready signal CP RDY. do. In response to the ready signal CPRDY, state machine 271 causes state machine 27 0 to receive result data. If floating point processor 31 , when the error occurrence signal is sent, the interface circuit 272 sends the X-2-signal CP E Express RR4. In response to the CP OK, CP RDY or ERR signal, the status Machine 271 sets a flag B that controls floating point processor bending signals. is reset, thereby negating this signal.

バス・インタフェース回路33は多くの恩典を与える。第1に、個々が異なった 動作を制御しそしてフラグを介して通信している2つの状態マシン270および 271を使用することによって、回路がかなり単純化される。Bus interface circuit 33 provides many benefits. First, individuals were different. Two state machines 270 and 270 control operations and communicate via flags. By using H.271, the circuit is considerably simplified.

さらに、状態マシン271によってキャッシュ35のリフレッシュ動作が可能と なり、これによってダイナミック記憶素子をその中で使用することができる。こ うすることによって、キャッシュの物理的な寸法が縮小されたり、または、過去 の場合においてそうであったように、同じ面積でより多くの容量をもつキャッシ ュ記憶装置を設けることが容易となる。Furthermore, the state machine 271 enables refresh operations of the cache 35. , which allows dynamic storage elements to be used therein. child This reduces the physical dimensions of the cache or As was the case in This makes it easy to provide multiple storage devices.

またさらに、バス・インタフェース回路33は、キャッシング可能なデータの検 索において、最初に、プログラムにとって必要なデータを検索し、次にキャッシ ュのエントリにおける記憶装置のための他のワードを検索することは評価される だろう、先行のシステムにおいては、データのワードはメモリ内に記憶されてい る順序で検索され、従って、最初のデータ・ワードがプログラムが今すぐに必要 とするものであるとは限らなかった。これによって、第2番目のワードが検索さ れるまで、処理の再開が遅れた。Furthermore, the bus interface circuit 33 detects cacheable data. During the search, the program first retrieves the data it needs and then searches the cache. Searching for other words for storage in the entry of the file is evaluated. In earlier systems, words of data were stored in memory. therefore, the first data word is the one the program needs immediately. It was not necessarily the case that the This will search for the second word. The resumption of processing was delayed until the

さらにそのうえ、インタフェース回路33は、書込み動作を保留(ベンディング )にしたままで、読出しアドレスが発生されそして読出しアドレス・ラッチ25 2にラッチされる程度にまで、読出し動作の開始を可能にする。続出し動作は、 保留の書込み動作が完了するまで完了されないが、しかし書込み動作が完了した ら、読出しアドレスは即座に送信することが可能である。Furthermore, the interface circuit 33 suspends (bending) the write operation. ), the read address is generated and the read address latch 25 2, allowing the start of a read operation. The continuous operation is Not completed until the pending write operation is completed, but the write operation is completed Therefore, the read address can be sent immediately.

最後に、バス・インタフェース回路はまた、読出し動作また書込み動作がプロセ ッサ30中に設定されているかどうかに関わらず、第1A図に示すシステム中の 他の装置によって実行された直接メモリ・アクセス動作によって、キャッシュの エントリを無効にすることを可能にする。すなわち、書込みデータおよび書込み アドレスがそれぞれのランチ251および250中にランチされ(第1B図を参 照)さらに読出しアドレスがランチ252中にランチされている状態で、キャッ シュ・エントリを無効にする動作を、入力ランチ254中に受信されたDMAア ドレスに反応して発生させることが可能である。このことによって、無効化プロ セスが単純化される。Finally, the bus interface circuitry also ensures that read or write operations are The system shown in FIG. direct memory access operations performed by other devices Enables entries to be invalidated. i.e. write data and write addresses are launched during respective launches 251 and 250 (see Figure 1B). (see) Furthermore, when the read address is launched during launch 252, the cache is The DMA address received during input launch 254 It is possible to generate it in response to the dress. This allows you to process is simplified.

上記の説明は、本発明による特定の実施例に限られたものであった。しかし、本 発明の長所の幾分かまたは全部を達成してさらに、本発明にたいして変更および 修正を施し得ることが明かであろう、従って、添付クレームの目的は、本発明の 真正の精神およびその範囲内に収まる全てのこのような変更および修正を保護す ることである。The above description has been limited to specific embodiments according to the invention. However, the book Modifications and improvements may be made to the invention that may achieve some or all of the advantages of the invention. It will be obvious that modifications may be made and it is therefore the object of the appended claims to reflect the invention. We reserve the right to protect all such changes and modifications within the spirit and scope of authenticity. Is Rukoto.

新規なものであると請求されそしてアメリカ合衆国の特許証によって補償される ことを要求するものを次のページに述べる。Claimed to be new and covered by United States Letters Patent The requirements are described on the next page.

::・、潜内容に変更なし) FIG、2A FIG、3A 符表平1−5028tiO(22) FIG、3C (I!想テアドレス変換3フ イ 6士 4J □ 、―、/−&φ−IL%特許庁長官 吉 1)文 毅 殿 1、事件の表示 PCT/US 881004533、補正をする者 事件との関係 出願人 5、補正命令の日付 自 発 7、補正の内容 別紙のとおり 国際調査報告 国際調査報告 USε8004S3 SA21184::・, No change in latent content) FIG, 2A FIG, 3A Sign table flat 1-5028tiO(22) FIG, 3C (I!Sote address conversion 3rd page) I 6 4J □ ,-,/-&φ-IL% Commissioner of the Patent Office Yoshi 1) Mr. Moon Takeshi 1. Indication of case PCT/US 881004533, person making amendment Relationship to the case: Applicant 5. Date of amendment order: Self-issued 7. Contents of amendment as attached international search report international search report USε8004S3 SA21184

Claims (2)

【特許請求の範囲】[Claims] 1.仮想アドレスを発生するための処理手段、物理アドレスを使用して転送を行 うための転送手段、仮想アドレスを物理アドレスに翻訳するための翻訳手段およ び複数の動作モードのうちの1つを指示するための動作モード指示手段を含むデ ジタルデータ処理装置に使用するプロセッサにおいて、前記翻訳手段は、A.前 記処理手段に接続されそこから仮想アドレスを受ける仮想アドレス記憶手段であ って、各々仮想アドレスを記憶するための複数のエントリを含んでおり、各エン トリは、そのエントリの内容が前記処理手段からの仮想アドレスに対応するとき にヒット信号を発生するヒット信号発生手段を含んでいるような仮想アドレス記 憶手段と、 B.前記転送手段に接続され各々物理アドレスを記憶する複数のエントリを含む 物理アドレス記憶手段であって、その各エントリは、前記仮想アドレス記憶手段 の1つのエントリからのヒット信号を受けるように接続されていて、その受領に 応じて前記転送手段へ物理アドレスを伝送するように可能化されるような物理ア ドレス記憶手段と、 C.保護手段であって、 i.各々保護コードを記憶する複数のエントリを含み、該各エントリは、前記仮 想アドレス記憶手段の1つのエントリと関連付けられている保護記憶手段と、i i.前記動作モード指示手段に接続されその動作モード指示手段によって指示さ れる動作モードに応答してエンコードされた動作モードコードを発生するエンコ ーディング手段と、 iii.前記保護記憶手段、前記エンコーディング手段、前記仮想アドレス記憶 手段および前記転送手段に接続され前記ヒット信号によって識別された前記保護 記憶手段のエントリの内容を前記エンコードされた動作モードコードと比較し且 つ前記転送手段が正の比較に応答して前記物理アドレス記憶手段からの物理アド レスを使用しうるようにする保護比較手段とを含む保護手段と を備えることを特徴とするプロセッサ。1. Processing means for generating virtual addresses, transfers using physical addresses Translation means and means for translating virtual addresses to physical addresses. and an operation mode instruction means for instructing one of a plurality of operation modes. In the processor used in the digital data processing device, the translation means comprises A. Before virtual address storage means connected to the storage processing means and receiving virtual addresses therefrom; contains multiple entries, each for storing virtual addresses, and each when the content of that entry corresponds to a virtual address from said processing means. A virtual address record that includes a hit signal generating means that generates a hit signal when memory means and B. A plurality of entries connected to the transfer means each storing a physical address. physical address storage means, each entry of which corresponds to said virtual address storage means; is connected to receive a hit signal from one entry in the a physical address which is enabled to transmit a physical address to said transfer means accordingly; dress memory means; C. A means of protection, i. It includes a plurality of entries each storing a protection code, and each entry stores the temporary protection code. a secure storage means associated with one entry of the virtual address storage means; i. connected to the operation mode instruction means and instructed by the operation mode instruction means; An encoder that generates an encoded operating mode code in response to the operating mode specified. - ding means; iii. the protected storage means, the encoding means, and the virtual address storage means and said protection connected to said transfer means and identified by said hit signal. comparing the contents of the entry in the storage means with the encoded operating mode code; and and said transfer means transfers a physical address from said physical address storage means in response to a positive comparison. protection measures, including protection comparison measures that allow the use of A processor characterized by comprising: 2.仮想アドレスを発生するための処理手段、物理アドレスを使用して転送を行 うための転送手段、仮想アドレスを物理アドレスに翻訳するための翻訳手段およ び複数の動作モードのうちの1つを指示するための動作モード指示手段を含むデ ジタルデータ処理装置と共に使用する翻訳装置において、A.前記処理手段に接 続されそこから仮想アドレスを受ける仮想アドレス記憶手段であって、各々仮想 アドレスを記憶するための複数のエントリを含んでおり、各エントリは、そのエ ントリの内容が前記処理手段からの仮想アドレスに対応するときにヒット信号を 発生するヒット信号発生手段を含んでいるような仮想アドレス記憶手段と、 B.前記転送手段に接続され各々物理アドレスを記憶する複数のエントリを含む 物理アドレス記憶手段であって、その各エントリは、前記仮想アドレス記憶手段 の1つのエントリからのヒット信号を受けるように接続されていて、その受領に 応じて前記転送手段へ物理アドレスを伝送するように可能化されるような物理ア ドレス記憶手段と、 C.保護手段であって、 i.各々保護コードを記憶する複数のエントリを含み、該各エントリは、前記仮 想アドレス記憶手段の1つのエントリと関連付けられている保護記憶手段と、 ii.前記動作モード指示手段に接続されその動作モード指示手段によって指示 される動作モードに応答してエンコードされた動作モードコードを発生するエン コーディング手段と、iii.前記保護記憶手段、前記エンコーディング手段、 前記仮想アドレス記憶手段および前記転送手段に接続され前記ヒット信号によっ て識別された前記保護記憶手段のエントリの内容を前記エンコードされた動作モ ードコードと比較し且つ前記転送手段が正の比較に応答して前記物理アドレス記 憶手段からの物理アドレスを使用しうるようにする保護比較手段とを含む保護手 段と を備えることを特徴とする翻訳装置。2. Processing means for generating virtual addresses, transfers using physical addresses Translation means and means for translating virtual addresses to physical addresses. and an operation mode instruction means for instructing one of a plurality of operation modes. In a translation device used with a digital data processing device, A. connected to the processing means. virtual address storage means connected to and receiving virtual addresses therefrom, each virtual Contains multiple entries for remembering addresses, each entry a hit signal when the contents of the entry correspond to the virtual address from said processing means; virtual address storage means including means for generating a hit signal; B. A plurality of entries connected to the transfer means each storing a physical address. physical address storage means, each entry of which corresponds to said virtual address storage means; is connected to receive a hit signal from one entry in the a physical address which is enabled to transmit a physical address to said transfer means accordingly; dress memory means; C. A means of protection, i. It includes a plurality of entries each storing a protection code, and each entry stores the temporary protection code. a secure storage means associated with one entry of the virtual address storage means; ii. connected to the operation mode instruction means and instructed by the operation mode instruction means; An encoder that generates an encoded operating mode code in response to the operating mode that is coding means; iii. the protective storage means; the encoding means; connected to the virtual address storage means and the transfer means and responsive to the hit signal; The contents of the entry of the protected storage means identified by the encoded operational model and the transfer means, in response to a positive comparison, transfers the physical address to the physical address code. and a protective comparison means that allows the physical address from the storage means to be used. step by step A translation device comprising:
JP50216288A 1987-02-24 1988-02-09 General-purpose processor unit for digital data processing systems including virtual-to-physical address translation circuits Pending JPH01502860A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US1766187A 1987-02-24 1987-02-24
US017661 1987-02-24

Publications (1)

Publication Number Publication Date
JPH01502860A true JPH01502860A (en) 1989-09-28

Family

ID=21783852

Family Applications (1)

Application Number Title Priority Date Filing Date
JP50216288A Pending JPH01502860A (en) 1987-02-24 1988-02-09 General-purpose processor unit for digital data processing systems including virtual-to-physical address translation circuits

Country Status (3)

Country Link
EP (1) EP0303664A1 (en)
JP (1) JPH01502860A (en)
WO (1) WO1988006763A1 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3761881A (en) * 1971-06-30 1973-09-25 Ibm Translation storage scheme for virtual memory system

Also Published As

Publication number Publication date
WO1988006763A1 (en) 1988-09-07
EP0303664A1 (en) 1989-02-22

Similar Documents

Publication Publication Date Title
US4831520A (en) Bus interface circuit for digital data processor
CA1300280C (en) Central processor unit for digital data processing system including write buffer management mechanism
JPH01503011A (en) General purpose processor unit for digital data processing systems including cash management systems
US4887235A (en) Symbolic language data processing system
US5347643A (en) Bus system for coordinating internal and external direct memory access controllers
JP3204323B2 (en) Microprocessor with built-in cache memory
US5091845A (en) System for controlling the storage of information in a cache memory
US5119484A (en) Selections between alternate control word and current instruction generated control word for alu in respond to alu output and current instruction
US5226170A (en) Interface between processor and special instruction processor in digital data processing system
US9201792B2 (en) Short circuit of probes in a chain
JP4748918B2 (en) Device having a cache for storing and supplying decrypted information and method for doing so
US11748107B2 (en) Complex I/O value prediction for multiple values with physical or virtual addresses
US6704820B1 (en) Unified cache port consolidation
JP2020536310A (en) Processing effective address synonyms in read / store units that operate without address translation
US6941421B2 (en) Zero delay data cache effective address generation
US5276892A (en) Destination control logic for arithmetic and logic unit for digital data processor
JPH01502860A (en) General-purpose processor unit for digital data processing systems including virtual-to-physical address translation circuits
JPH01502622A (en) Processor and data processing method used in digital data processing equipment
JPH01502941A (en) Destination control logic for arithmetic and logic units for digital data processors
JPH01226056A (en) Address converter
JPH0449446A (en) System for controlling plural caches
JPH05108486A (en) Cache memory control system
IE901528A1 (en) Method and apparatus for controlling the conversion of¹virtual to physical memory addresses in a digital computer¹system
JPS6126151A (en) Buffer control system