JPH10275129A - Bus connecting device - Google Patents

Bus connecting device

Info

Publication number
JPH10275129A
JPH10275129A JP9078640A JP7864097A JPH10275129A JP H10275129 A JPH10275129 A JP H10275129A JP 9078640 A JP9078640 A JP 9078640A JP 7864097 A JP7864097 A JP 7864097A JP H10275129 A JPH10275129 A JP H10275129A
Authority
JP
Japan
Prior art keywords
bus
tlb
dma
logical address
instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP9078640A
Other languages
Japanese (ja)
Other versions
JP3296240B2 (en
Inventor
Takashi Hoshino
隆 星野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP07864097A priority Critical patent/JP3296240B2/en
Publication of JPH10275129A publication Critical patent/JPH10275129A/en
Application granted granted Critical
Publication of JP3296240B2 publication Critical patent/JP3296240B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PROBLEM TO BE SOLVED: To shorten the processing time if a logical address does not hit a TLB in a bus connecting device. SOLUTION: When a processor 200 issues a DMA instruction issue transaction, the bus connecting device 100 refers to its internal TLB. The bus connecting device 100 while issuing a DAM actuation transaction to an input/ output controller 500 informs a memory controller 400 of a TLB miss in such a case. Consequently, an address conversion table in a memory 300 is accessed and when a DMA transfer transaction is issued by the input/output controller 500 to the bus connecting device 100, a corresponding entry is stored in the TLB.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【発明の属する技術分野】本発明は、バス接続装置に関
し、特にトランスレーション・ルックアサイド・バッフ
ァ(TLB)を含むバス接続装置に関する。
The present invention relates to a bus connection device, and more particularly, to a bus connection device including a translation lookaside buffer (TLB).

【0001】[0001]

【従来の技術】バス接続装置に接続された入出力バスよ
りダイレクトメモリアクセス(DMA)処理を行うシス
テムにおいて、バス接続装置にDMA用のトランスレー
ション・ルックアサイド・バッファ(TLB)が含まれ
ている場合、処理装置はメモリへのDMA処理を即座に
起動することができる。ここで、TLBとはアドレス変
換用の論理アドレス及び物理アドレスの対を格納するメ
モリであり、アドレス変換テーブルに対するキャッシュ
メモリの役割を有するものである。また、DMA処理と
は、処理装置を介さず入出力制御装置とメモリとの間で
直接データ転送を行うことをいう。従って、論理アドレ
スから物理アドレスへの変換処理を省くことができ、D
MA処理性能も向上する。しかしながら、起動されたD
MA処理がバス接続装置内のTLBにヒットすれば直ち
にDMA処理が開始されるが、もしミスならばメモリ上
のアドレス変換テーブルから該当するエントリデータを
読み出してTLBにセットしなければその後の処理を進
めることができない。
2. Description of the Related Art In a system for performing direct memory access (DMA) processing from an input / output bus connected to a bus connection device, the bus connection device includes a translation lookaside buffer (TLB) for DMA. In that case, the processing unit can immediately initiate the DMA processing to the memory. Here, the TLB is a memory for storing a pair of a logical address and a physical address for address translation, and has a role of a cache memory for an address translation table. DMA processing refers to performing data transfer directly between the input / output control device and the memory without passing through a processing device. Therefore, the process of converting a logical address to a physical address can be omitted, and D
MA processing performance is also improved. However, the activated D
If the MA processing hits the TLB in the bus connection device, the DMA processing starts immediately. If the MA processing is a mistake, the corresponding entry data is read from the address translation table on the memory, and if not set in the TLB, the subsequent processing is performed. I can't proceed.

【0002】[0002]

【発明が解決しようとする課題】上述の従来技術では、
バス接続装置が有するTLBのエントリ数には必ず物理
的限界が存在するため、DMA処理時に論理DMAアド
レスに一致するエントリが存在しない場合には、TLB
ミス処理としてメモリから該当エントリのデータを取得
してTLBにセットする必要が生じる。この場合、DM
A処理が開始されて入出力バスを介して入出力制御装置
からバス接続装置に対してDMA処理の起動がかかって
初めて論理アドレスがTLBにヒットするか否かを判定
しているために、TLBミス時のオーバーヘッド時間す
べてがミス時の処理時間に計上されてしまう。
In the above-mentioned prior art,
Since there is always a physical limit to the number of TLB entries that the bus connection device has, if there is no entry that matches the logical DMA address during DMA processing, the TLB
As a miss process, it is necessary to acquire the data of the corresponding entry from the memory and set it in the TLB. In this case, DM
Since the A processing is started and the I / O control device starts the DMA processing from the I / O control device to the bus connection device via the I / O bus, it is determined whether or not the logical address hits the TLB for the first time. All of the overhead time at the time of a mistake is included in the processing time at the time of a mistake.

【0003】本発明の目的は、プロセッサが論理アドレ
スによるDMA処理の開始を指示してから、バス接続装
置がDMA命令を受け取り、メモリへメモリアクセスを
発行するまでの処理時間において、論理アドレスがバス
接続装置内のTLBにヒットしなかった場合の処理時間
を短縮させることにある。そして、これにより、システ
ム全体の性能を向上させて高速化を図ることを目的とす
る。
[0003] It is an object of the present invention to provide a method in which a logical address is assigned to a bus in a processing time from when a processor instructs the start of DMA processing by a logical address to when a bus connection device receives a DMA instruction and issues a memory access to a memory. An object of the present invention is to reduce the processing time when a TLB in a connection device is not hit. Thus, it is an object of the present invention to improve the performance of the entire system to increase the speed.

【0004】[0004]

【課題を解決するための手段】上記課題を解決するため
に本発明のバス接続装置は、TLBを含み、第1のバス
と第2のバスとを接続し、前記第1のバスにDMA命令
が発行されると前記第2のバスにおいて前記DMA命令
に対応するDMA転送が発行されるのを待つことなく前
記DMA命令に含まれる論理アドレスについて前記TL
Bを索引する。
In order to solve the above-mentioned problems, a bus connection device according to the present invention includes a TLB, connects a first bus and a second bus, and issues a DMA command to the first bus. Is issued, the TL for the logical address included in the DMA instruction is not waited for the DMA transfer corresponding to the DMA instruction to be issued on the second bus.
Index B.

【0005】また、本発明の他のバス接続装置におい
て、前記TLBの索引の結果、前記論理アドレスが前記
TLBに含まれている場合には当該エントリを読み出
し、前記論理アドレスが前記TLBに含まれていない場
合にはアドレス変換テーブルから該当するエントリを読
み出す。
In another bus connection device of the present invention, if the logical address is included in the TLB as a result of the index of the TLB, the entry is read out, and the logical address is included in the TLB. If not, the corresponding entry is read from the address conversion table.

【0006】また、本発明のバス接続装置は、第1のバ
スと第2のバスとを接続し、論理アドレスから物理アド
レスへの変換を行うTLBと、前記第1のバスにDMA
命令が発行されると当該DMA命令に含まれる論理アド
レスについて前記TLBを索引する索引手段と、この索
引手段において前記DMA命令に含まれる論理アドレス
が前記TLBに含まれていないと判断した場合にアドレ
ス変換テーブルから該当するエントリを読み出して前記
TLBに格納する手段と、前記DMA命令に応答して前
記第2のバスにDMA起動をかける起動手段とを含む。
Further, the bus connection device of the present invention connects a first bus and a second bus, and converts a logical address to a physical address into a TLB and a DMA to the first bus.
Index means for indexing the TLB for a logical address included in the DMA instruction when the instruction is issued, and an address when the index means determines that the logical address included in the DMA instruction is not included in the TLB. It includes means for reading a corresponding entry from the conversion table and storing the entry in the TLB, and activating means for activating the DMA on the second bus in response to the DMA command.

【0007】また、本発明の他のバス接続装置は、前記
DMA起動に対応したDMA転送が前記第2のバスに発
行されると当該DMA転送に含まれる論理アドレスにつ
いて前記TLBを索引する第2の索引手段を含み、前記
第1の索引手段は前記DMA起動に対応したDMA転送
が前記第2のバスに発行されるのを待つことなく前記T
LBの索引を開始する。
In another bus connection device of the present invention, when a DMA transfer corresponding to the DMA activation is issued to the second bus, the second bus indexing unit searches the TLB for a logical address included in the DMA transfer. Indexing means, wherein the first indexing means does not wait for a DMA transfer corresponding to the DMA activation to be issued to the second bus.
Start indexing LB.

【0008】また、本発明の情報処理システムは、第1
のバスと第2のバスとがバス接続装置により接続された
情報処理システムであって、前記第1のバスは、処理装
置とメモリとを接続し、前記バス接続装置は、論理アド
レスから物理アドレスへの変換を行うTLBと、前記処
理装置が前記第1のバスにDMA命令を発行すると当該
DMA命令に含まれる論理アドレスについて前記TLB
を索引する索引手段と、この索引手段において前記DM
A命令に含まれる論理アドレスが前記TLBに含まれて
いないと判断した場合に前記メモリから該当するエント
リを読み出して前記TLBに格納する手段と、前記DM
A命令に応答して前記第2のバスにDMA起動をかける
起動手段とを含み、前記第2のバスは、前記起動手段に
よるDMA起動に応答してDMA転送を発行する入出力
装置を接続する。
[0008] Further, the information processing system of the present invention comprises:
An information processing system in which a bus and a second bus are connected by a bus connection device, wherein the first bus connects a processing device and a memory, and the bus connection device converts a logical address to a physical address. And a TLB for converting to a logical address included in the DMA instruction when the processing device issues a DMA instruction to the first bus.
Indexing means for indexing
Means for reading out a corresponding entry from the memory and storing it in the TLB when it is determined that the logical address included in the instruction A is not included in the TLB;
Activating means for initiating DMA on the second bus in response to the A instruction, wherein the second bus connects an input / output device which issues a DMA transfer in response to the DMA activation by the activating means. .

【0009】また、本発明の他の情報処理システムにお
いて、前記バス接続装置は、前記入出力装置が前記DM
A転送を前記第2のバスに発行すると当該DMA転送に
含まれる論理アドレスについて前記TLBを索引する第
2の索引手段をさらに含み、前記第1の索引手段は、前
記入出力装置が前記DMA転送を前記第2のバスに発行
されるのを待つことなく前記TLBの索引を開始する。
In another information processing system according to the present invention, the input / output device includes the bus connection device.
When the A transfer is issued to the second bus, the second bus further includes second indexing means for indexing the TLB for a logical address included in the DMA transfer. , Without waiting for the second bus to be issued.

【0010】また、本発明のDMA転送方法は、TLB
を含むバス接続装置が第1のバスと第2のバスとを接続
する情報処理システムにおいて、前記第1のバスにDM
A命令が発行されるステップと、前記第1のバスに前記
DMA命令が発行されると前記第2のバスにDMA起動
を発行するのと同時に前記DMA命令に含まれる論理ア
ドレスについて前記TLBを索引するステップと、前記
TLBの索引において前記論理アドレスが前記TLBに
含まれていない場合にはアドレス変換テーブルから該当
するエントリを読み出して前記TLBに格納するステッ
プと、前記第2のバスにおいて前記DMA命令に対応す
るDMA転送が発行されると当該DMA転送について前
記TLBを索引するステップとを含む。
Further, the DMA transfer method according to the present invention has a TLB
In an information processing system in which a bus connection device including a first bus connects a first bus and a second bus, the first bus has a DM
Issue the A instruction; and issue the DMA start to the second bus when the DMA instruction is issued to the first bus, and simultaneously index the TLB for a logical address included in the DMA instruction. Reading the corresponding entry from the address translation table if the logical address is not included in the TLB in the index of the TLB, and storing the read entry in the TLB; Indexing the TLB for the DMA transfer when the corresponding DMA transfer is issued.

【0011】[0011]

【発明の実施の形態】次に本発明のバス接続装置の実施
の形態について図面を参照して詳細に説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, an embodiment of a bus connection device according to the present invention will be described in detail with reference to the drawings.

【0012】図1を参照すると、本発明の実施の形態で
は、バス接続装置100がシステムバス600と入出力
バス700とを接続して情報処理システムを構成する。
システムバス600には、各種命令を発行する処理装置
200と、メモリ制御装置400とが接続されている。
メモリ制御装置400にはさらにメモリ300が接続さ
れている。入出力バス700には、入出力制御装置50
0が接続されている。
Referring to FIG. 1, in an embodiment of the present invention, a bus connection device 100 connects a system bus 600 and an input / output bus 700 to form an information processing system.
The processing device 200 which issues various instructions and the memory control device 400 are connected to the system bus 600.
The memory 300 is further connected to the memory control device 400. The input / output bus 700 includes the input / output control device 50.
0 is connected.

【0013】また、バス接続装置100は、さらにTL
Bヒットミス応答線800によってメモリ制御装置40
0に接続している。
The bus connection device 100 further includes a TL
Memory control device 40 by B hit / miss response line 800
Connected to 0.

【0014】処理装置200は、システムバス600上
にDMA命令を発行する。このDMA命令発行のための
トランザクションをDMA命令発行トランザクションと
いう。ここで、DMA命令は、入出力制御装置500に
対してDMA処理の起動を指示するDMA起動指示フィ
ールドと、DMA処理によって使用される論理アドレス
を指定する論理アドレスフィールドとを含む。さらに、
DMA起動指示フィールドには、特定の入出力制御装置
500を指定するための入出力バスアドレス情報や、D
MA処理がリードかライトかを示すアクセス種別等が含
まれる。また、論理アドレスフィールドは、バス接続装
置100がTLBヒット/ミスの判定に用いる他に、入
出力制御装置500にも伝達される。
Processing unit 200 issues a DMA instruction on system bus 600. This transaction for issuing a DMA instruction is called a DMA instruction issuing transaction. Here, the DMA command includes a DMA start instruction field for instructing the input / output control device 500 to start DMA processing, and a logical address field for specifying a logical address used by the DMA processing. further,
The DMA start instruction field includes input / output bus address information for designating a specific input / output control device 500,
An access type indicating whether the MA processing is read or write is included. The logical address field is also transmitted to the input / output control device 500 in addition to being used by the bus connection device 100 to determine TLB hit / miss.

【0015】なお、DMA命令は単一のトランザクショ
ンとして構成されてもよく、また複数のトランザクショ
ンにより一連の処理を構成するようにしてもよい。
The DMA instruction may be configured as a single transaction, or a series of processes may be configured by a plurality of transactions.

【0016】バス接続装置100は、システムバス60
0上のDMA命令を受信し、内部のTLBによって論理
アドレスのヒット/ミス判定を行って、その結果をTL
Bヒット/ミス応答線800によってメモリ制御装置4
00に通知する。また、バス接続装置100は、DMA
命令を解析および変換して入出力バス700上にDMA
起動トランザクションを発行する。また、バス接続装置
100は、システムバス600上のTLB格納トランザ
クションを受信し、これにより内部のTLBを更新す
る。
The bus connection device 100 includes a system bus 60.
0, a logical address hit / miss determination is made by the internal TLB, and the result is set to TL
Memory control device 4 by B hit / miss response line 800
Notify 00. Also, the bus connection device 100
Analyzes and translates instructions and DMAs on I / O bus 700
Issue a start transaction. Further, the bus connection device 100 receives the TLB storage transaction on the system bus 600 and updates the internal TLB accordingly.

【0017】ここで、TLB格納トランザクションは、
具体的には論理アドレスと物理アドレスとが対となった
TLBエントリ情報を転送するためのトランザクション
である。但し、他の方法として、TLBミスした時に、
バス接続装置が内部の保持手段によりミスした論理アド
レスを保持しておくこととすれば、TLB格納トランザ
クションとしては物理アドレス情報のみを転送するよう
にしてもよい。
Here, the TLB storage transaction is
More specifically, this is a transaction for transferring TLB entry information in which a logical address and a physical address are paired. However, as another method, when a TLB miss occurs,
If the bus connection device holds the missed logical address by the internal holding means, only the physical address information may be transferred as the TLB storage transaction.

【0018】また、バス接続装置100は、入出力バス
600上のDMA転送トランザクションを受信し、内部
のTLBによって論理アドレスのヒット/ミス判定を行
い、ヒットならばDMA処理を続行し、ミスならばTL
Bデータ転送トランザクションによりTLBが更新され
るのまで処理を停止する。あるいは他の方法として、ミ
スならば処理を中断して入出力制御装置にDMA転送ト
ランザクションをリトライするよう応答するようにして
もよい。
Further, the bus connection device 100 receives the DMA transfer transaction on the input / output bus 600, determines the hit / miss of the logical address by the internal TLB, and if hit, continues the DMA processing. TL
The processing is stopped until the TLB is updated by the B data transfer transaction. Alternatively, as another method, if there is a mistake, the processing may be interrupted and a response may be made to the input / output control device to retry the DMA transfer transaction.

【0019】メモリ制御装置400は、システムバス6
00上のDMA命令発行トランザクションとTLBヒッ
ト/ミス応答線800とを監視する。DMA命令に対応
するTLBヒット/ミス応答がミスならば、そのDMA
命令に含まれる論理アドレス情報よりアドレス変換テー
ブル上の該当するエントリアドレスを生成し、該当エン
トリのデータを読み出してTLB格納トランザクション
としてシステムバス600上に発行する。
The memory controller 400 includes a system bus 6
Monitor the DMA instruction issue transaction on 00 and the TLB hit / miss response line 800. If the TLB hit / miss response corresponding to the DMA instruction is a miss, the DMA
A corresponding entry address on the address conversion table is generated from the logical address information included in the instruction, the data of the corresponding entry is read, and issued on the system bus 600 as a TLB storage transaction.

【0020】メモリ300は、メモリ制御装置400か
らのアクセスを受け取り、データを記憶したり読み出し
たりする。
The memory 300 receives access from the memory control device 400 and stores and reads data.

【0021】入出力制御装置500は、入出力バス70
0上のDMA起動トランザクションを受信し、これに応
答してDMA転送トランザクションを入出力バス700
へ発行する。
The input / output control device 500 includes an input / output bus 70
0 and receives a DMA transfer transaction in response to the DMA transfer transaction on I / O bus 700.
Issue to

【0022】システムバス600は、DMA命令発行ト
ランザクションやTLB格納トランザクションなどの通
信を行うためのバスである。
The system bus 600 is a bus for performing communication such as a DMA command issue transaction and a TLB storage transaction.

【0023】入出力バス700は、DMA起動トランザ
クションやDMA転送トランザクションなどの通信を行
うためのバスである。
The input / output bus 700 is a bus for performing communication such as a DMA start transaction and a DMA transfer transaction.

【0024】TLBヒット/ミス応答線800は、バス
接続装置100がDMA命令を受信した時に、DMA命
令に含まれる論理アドレスの値がバス接続装置内のTL
Bにヒットしたか否かをメモリ制御装置400に通知す
るための専用線である。
When the bus connection device 100 receives a DMA command, the TLB hit / miss response line 800 indicates that the logical address value contained in the DMA command is a TL in the bus connection device.
This is a dedicated line for notifying the memory control device 400 whether or not B has been hit.

【0025】図2を参照すると、バス接続装置100
は、論理アドレスと物理アドレスの対を格納するTLB
110と、システムバス600上のDMA命令に含まれ
ている論理アドレスフィールドの値を保持するシステム
バス論理アドレスレジスタ120と、システムバス論理
アドレスレジスタ120の値とTLB110から読み出
した値との一致を検出する比較器140と、入出力バス
700上のDMA転送トランザクションに含まれている
論理アドレスフィールドの値を保持する入出力バス論理
アドレスレジスタ130と、入出力バス論理アドレスレ
ジスタ130の値とTLB110から読み出した値との
一致を検出する比較器150と、比較器150の結果に
基づきTLB110の出力を選択する選択器170と、
システムバス600上のTLB格納トランザクションに
含まれている物理アドレスを保持する物理アドレスレジ
スタ160とを含んでいる。
Referring to FIG. 2, the bus connection device 100
Is a TLB that stores a pair of a logical address and a physical address.
110, a system bus logical address register 120 for holding a value of a logical address field included in a DMA instruction on the system bus 600, and detection of a match between the value of the system bus logical address register 120 and the value read from the TLB 110. A comparator 140, an input / output bus logical address register 130 holding the value of the logical address field included in the DMA transfer transaction on the input / output bus 700, and reading the value of the input / output bus logical address register 130 from the TLB 110. A comparator 150 for detecting a match with the calculated value, a selector 170 for selecting an output of the TLB 110 based on a result of the comparator 150,
A physical address register 160 for holding the physical address included in the TLB storage transaction on the system bus 600.

【0026】このバス接続装置100では、システムバ
ス600上のDMA命令発行トランザクションを受信す
ると、DMA命令内の論理アドレスフィールドの値をシ
ステムバス論理アドレスレジスタ120に保持する。こ
のシステムバス論理アドレスレジスタ120に保持され
た論理アドレスは、比較器140によってTLB110
の全てのエントリと比較される。この比較結果は、TL
Bヒット/ミス応答線800によりメモリ制御装置40
0へ通知される。また、バス接続装置100は、入出力
バス700上のDMA転送トランザクションを受信する
と、DMA転送トランザクション中の論理アドレスを入
出力バス論理アドレスレジスタ130に保持する。この
入出力バス論理アドレスレジスタ130に保持された論
理アドレスは、比較器150によってTLB110の全
てのエントリと比較される。この比較結果により、ヒッ
トならば処理を継続し、ミスならばTLB110に該当
エントリが書き込まれるまで処理を待機する。
When the bus connection device 100 receives the DMA command issuance transaction on the system bus 600, it holds the value of the logical address field in the DMA command in the system bus logical address register 120. The logical address held in the system bus logical address register 120 is compared with the TLB 110 by the comparator 140.
Will be compared to all entries. The result of this comparison is TL
Memory control device 40 by B hit / miss response line 800
0 is notified. Further, when receiving the DMA transfer transaction on the I / O bus 700, the bus connection device 100 holds the logical address during the DMA transfer transaction in the I / O bus logical address register 130. The logical address held in the input / output bus logical address register 130 is compared with all entries of the TLB 110 by the comparator 150. According to the comparison result, if the hit is found, the process is continued. If the hit is found, the process waits until the corresponding entry is written to the TLB 110.

【0027】また、バス接続装置100は、システムバ
ス600上のTLB格納トランザクションを受信すると
新たなエントリデータをTLB110に格納する。
When receiving the TLB storage transaction on the system bus 600, the bus connection device 100 stores new entry data in the TLB 110.

【0028】TLB110は、例えば、各エントリにお
いて、論理アドレス値を格納するタグ部と、物理アドレ
スを格納するデータ部との対を格納するように構成され
る。この場合、タグ部がヒット/ミス判定に用いられ、
データ部は入出力バス700からのDMA転送トランザ
クションがヒットした後のDMA処理に用いられる。ま
た、システムバス600からのDMA命令がTLBミス
した時には、新しいTLBエントリデータがシステムバ
ス600のTLB格納トランザクションにより送られて
くるので、例えばLRU(Least Recently Used)など
のアルゴリズムを用いて新たなエントリデータを格納す
べきTLBエントリを決定する。また、新たなエントリ
データのタグ部の値としては、ミスした時のシステムバ
ス論理アドレスレジスタ120に保持されている値が格
納されるように構成することができる。
The TLB 110 is configured, for example, to store, in each entry, a pair of a tag section for storing a logical address value and a data section for storing a physical address. In this case, the tag portion is used for hit / miss determination,
The data portion is used for DMA processing after a DMA transfer transaction from the input / output bus 700 hits. Further, when a TLB miss occurs in a DMA instruction from the system bus 600, new TLB entry data is sent by a TLB storage transaction on the system bus 600. Therefore, a new entry is created using an algorithm such as LRU (Least Recently Used). The TLB entry in which data is to be stored is determined. Further, the value of the tag portion of the new entry data may be configured to store the value held in the system bus logical address register 120 at the time of a miss.

【0029】図3を参照すると、メモリ制御装置400
は、システムバス600上のDMA命令に含まれている
論理アドレスを保持するシステムバス論理アドレスレジ
スタ420と、アドレス変換テーブルのベースアドレス
を保持するベースアドレスレジスタ430と、システム
バス論理アドレスレジスタ420の保持する値とベース
アドレスレジスタ430の保持する値とを加算する加算
器440と、メモリ300から受け取った物理アドレス
を保持する物理アドレスレジスタ450と、バス接続装
置100からヒット/ミス応答800を受け取りメモリ
300へのアクセスを制御するアクセス制御回路410
とを含んでいる。
Referring to FIG. 3, memory controller 400
Is a system bus logical address register 420 that holds a logical address included in a DMA instruction on the system bus 600, a base address register 430 that holds a base address of an address conversion table, and a holding of the system bus logical address register 420. Adder 440 for adding the value to be stored and the value stored in base address register 430, physical address register 450 for storing the physical address received from memory 300, and memory 300 for receiving hit / miss response 800 from bus connection device 100. Access control circuit 410 for controlling access to
And

【0030】メモリ制御装置400は、システムバス6
00上のDMA命令と、TLBヒット/ミス応答線80
0とを常に監視している。システムバス600にDMA
命令が発行されると、そのDMA命令に含まれている論
理アドレスがシステムバス論理アドレスレジスタ420
に保持される。その後バス接続装置100からヒットミ
スであることが信号線800により通知されると、アク
セス制御回路410は加算器440の結果をメモリ30
0に出力させる。そして、メモリ300より対応する物
理アドレスが出力されると、アクセス制御回路410は
物理アドレスレジスタ450にその物理アドレスを保持
させる。この物理アドレスはTLB格納トランザクショ
ンの一部として、システムバス600を介してバス接続
装置100内の物理アドレスレジスタ160に転送され
る。
The memory control device 400 includes a system bus 6
00 and the TLB hit / miss response line 80
0 is constantly monitored. DMA on system bus 600
When the instruction is issued, the logical address included in the DMA instruction is stored in the system bus logical address register 420.
Is held. Thereafter, when the bus connection device 100 notifies that a hit / miss has occurred via the signal line 800, the access control circuit 410 stores the result of the adder 440 in the memory 30.
Output to 0. When the corresponding physical address is output from the memory 300, the access control circuit 410 causes the physical address register 450 to hold the physical address. This physical address is transferred to the physical address register 160 in the bus connection device 100 via the system bus 600 as a part of the TLB storage transaction.

【0031】なお、ベースアドレスレジスタ430は、
例えばシステムバス上のトランザクションを用いて、処
理装置200からの読出しや更新が出来るようになって
いることが望ましい。
The base address register 430 is
For example, it is desirable that reading and updating from the processing device 200 can be performed using a transaction on the system bus.

【0032】次に、本発明のバス接続装置の実施の形態
の動作について図面を参照して説明する。
Next, the operation of the embodiment of the bus connection device of the present invention will be described with reference to the drawings.

【0033】図4及び図5を参照すると、本発明の実施
の形態における各要素間の関係は、次のようになる。な
お、図4では、各要素間の物理的信号線は全て省略して
いる。まず、T1ステップとして、処理装置200がD
MA命令発行トランザクションを発行すると、これはバ
ス接続装置100及びメモリ制御装置400に受け取ら
れる。これにより、メモリ制御装置400は、DMA命
令内の論理アドレスをシステムバス論理アドレスレジス
タ420に保持する。また、バス接続装置100は、D
MA命令内の論理アドレスをシステムバス論理アドレス
レジスタ120に保持する。
Referring to FIG. 4 and FIG. 5, the relationship between each element in the embodiment of the present invention is as follows. In FIG. 4, all the physical signal lines between the components are omitted. First, as a T1 step, the processing device 200
When the MA instruction issue transaction is issued, it is received by the bus connection device 100 and the memory control device 400. Thus, the memory control device 400 holds the logical address in the DMA instruction in the system bus logical address register 420. In addition, the bus connection device 100
The logical address in the MA instruction is held in the system bus logical address register 120.

【0034】T2ステップとして、バス接続装置100
はTLB110のヒット/ミスを判定して、その結果を
ヒット/ミス応答としてメモリ制御装置400に報告す
る。この例ではTLB110にミスしたものと仮定す
る。これにより、メモリ300のアドレス変換テーブル
の該当エントリが読み出される。また、バス接続装置1
00は、DMA起動トランザクションを入出力制御装置
500に発行する。
As a T2 step, the bus connection device 100
Determines the hit / miss of the TLB 110 and reports the result to the memory control device 400 as a hit / miss response. In this example, it is assumed that the TLB 110 has missed. As a result, the corresponding entry of the address conversion table of the memory 300 is read. In addition, the bus connection device 1
00 issues a DMA start transaction to the input / output control device 500.

【0035】T3ステップとして、メモリ制御装置40
0は、メモリ300から読み出したエントリデータ、す
なわち絶対アドレス、をTLB格納トランザクションと
してバス接続装置100に出力する。一方、入出力制御
装置500は、DMA転送トランザクションをバス接続
装置100に出力する。
As a T3 step, the memory controller 40
0 outputs the entry data read from the memory 300, that is, the absolute address, to the bus connection device 100 as a TLB storage transaction. On the other hand, the input / output control device 500 outputs the DMA transfer transaction to the bus connection device 100.

【0036】この動作例からもわかるように、従来は入
出力制御装置からのDMA転送トランザクションを受け
取った後でバス接続装置内のTLBを索引していたもの
を、この実施の形態では処理装置200からDMA命令
発行トランザクションを受け取ると即座に索引すること
により、TLB格納トランザクションを前倒しして処理
することができ、TLBミス時のシステム全体の処理を
高速化できる。
As can be seen from this operation example, in the present embodiment, the TLB in the bus connection device is indexed after receiving the DMA transfer transaction from the input / output control device. By indexing immediately upon receipt of a DMA instruction issue transaction from, the TLB storage transaction can be processed ahead of schedule, and the processing of the entire system in the event of a TLB miss can be speeded up.

【0037】[0037]

【発明の効果】以上の説明で明らかなように、本発明に
よると、処理装置からDMA命令発行トランザクション
が発行された時点でバス接続装置内のTLBを索引する
ことにより、TLBミス時であっても入出力制御装置か
らDMA転送トランザクションが発行された時には既に
必要なアドレス変換対がTLBに格納された状態にする
ことができ、TLBミス時のシステム全体の処理を高速
化できる。
As is apparent from the above description, according to the present invention, the TLB in the bus connection device is indexed at the time when the DMA command issuance transaction is issued from the processing device, so that a TLB miss can be obtained. Also, when a DMA transfer transaction is issued from the input / output control device, a necessary address translation pair can be already stored in the TLB, and the processing of the entire system at the time of a TLB miss can be accelerated.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明のバス接続装置を含む情報処理システム
の全体図である。
FIG. 1 is an overall view of an information processing system including a bus connection device of the present invention.

【図2】本発明のバス接続装置の実施の形態のブロック
図を示す図である。
FIG. 2 is a block diagram showing an embodiment of a bus connection device according to the present invention.

【図3】本発明の実施の形態におけるメモリ制御装置の
ブロック図を示す図である。
FIG. 3 is a block diagram showing a memory control device according to the embodiment of the present invention.

【図4】本発明の実施の形態における動作を説明するた
めの図である。
FIG. 4 is a diagram for explaining an operation in the embodiment of the present invention.

【図5】本発明の実施の形態における動作タイミングを
示す図である。
FIG. 5 is a diagram showing operation timing in the embodiment of the present invention.

【符号の説明】[Explanation of symbols]

100 バス接続装置 110 TLB 120,420 システムバス論理アドレスレジスタ 130 入出力バス論理アドレスレジスタ 140,150 比較器 160,450 物理アドレスレジスタ 170 選択器 200 処理装置 300 メモリ 400 メモリ制御装置 410 アクセス制御回路 430 アドレス変換バッファベースアドレスレジスタ 500 入出力制御装置 600 システムバス 700 入出力バス REFERENCE SIGNS LIST 100 bus connection device 110 TLB 120, 420 system bus logical address register 130 input / output bus logical address register 140, 150 comparator 160, 450 physical address register 170 selector 200 processing device 300 memory 400 memory control device 410 access control circuit 430 address Conversion buffer base address register 500 I / O controller 600 System bus 700 I / O bus

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 TLBを含み第1のバスと第2のバスと
を接続するバス接続装置において、前記第1のバスにD
MA命令が発行されると前記第2のバスにおいて前記D
MA命令に対応するDMA転送が発行されるのを待つこ
となく前記DMA命令に含まれる論理アドレスについて
前記TLBを索引することを特徴とするバス接続装置。
1. A bus connection device that includes a TLB and connects a first bus and a second bus, wherein the first bus has a D bus.
When the MA instruction is issued, the D bus is sent to the second bus.
A bus connection device for indexing the TLB for a logical address included in the DMA instruction without waiting for a DMA transfer corresponding to the MA instruction to be issued.
【請求項2】 前記TLBの索引の結果、前記論理アド
レスが前記TLBに含まれている場合には当該エントリ
を読み出し、前記論理アドレスが前記TLBに含まれて
いない場合にはアドレス変換テーブルから該当するエン
トリを読み出すことを特徴とする請求項1記載のバス接
続装置。
2. As a result of indexing the TLB, if the logical address is included in the TLB, the entry is read. If the logical address is not included in the TLB, the entry is read from an address conversion table. 2. The bus connection device according to claim 1, wherein an entry to be read is read.
【請求項3】 第1のバスと第2のバスとを接続するバ
ス接続装置において、 論理アドレスから物理アドレスへの変換を行うTLB
と、 前記第1のバスにDMA命令が発行されると当該DMA
命令に含まれる論理アドレスについて前記TLBを索引
する索引手段と、 この索引手段において前記DMA命令に含まれる論理ア
ドレスが前記TLBに含まれていないと判断した場合に
アドレス変換テーブルから該当するエントリを読み出し
て前記TLBに格納する手段と、 前記DMA命令に応答して前記第2のバスにDMA起動
をかける起動手段とを含むことを特徴とするバス接続装
置。
3. A TLB for converting a logical address to a physical address in a bus connection device for connecting a first bus and a second bus.
When a DMA instruction is issued to the first bus,
Indexing means for indexing the TLB for a logical address included in the instruction; reading out a corresponding entry from the address translation table when the indexing means determines that the logical address included in the DMA instruction is not included in the TLB; A bus connection device, comprising: a unit for storing the data in the TLB and a start unit for performing a DMA start on the second bus in response to the DMA command.
【請求項4】 前記DMA起動に対応したDMA転送が
前記第2のバスに発行されると当該DMA転送に含まれ
る論理アドレスについて前記TLBを索引する第2の索
引手段を含み、 前記第1の索引手段は、前記DMA起動に対応したDM
A転送が前記第2のバスに発行されるのを待つことなく
前記TLBの索引を開始することを特徴とする請求項3
記載のバス接続装置。
4. A second indexing means for indexing the TLB for a logical address included in the DMA transfer when a DMA transfer corresponding to the DMA activation is issued to the second bus, The indexing means includes a DM corresponding to the DMA activation.
4. The TLB indexing without waiting for an A-transfer to be issued on the second bus.
The bus connection device as described in the above.
【請求項5】 第1のバスと第2のバスとがバス接続装
置により接続された情報処理システムにおいて、 前記第1のバスは、処理装置とメモリとを接続し、 前記バス接続装置は、論理アドレスから物理アドレスへ
の変換を行うTLBと、前記処理装置が前記第1のバス
にDMA命令を発行すると当該DMA命令に含まれる論
理アドレスについて前記TLBを索引する索引手段と、
この索引手段において前記DMA命令に含まれる論理ア
ドレスが前記TLBに含まれていないと判断した場合に
前記メモリから該当するエントリを読み出して前記TL
Bに格納する手段と、前記DMA命令に応答して前記第
2のバスにDMA起動をかける起動手段とを含み、 前記第2のバスは、前記起動手段によるDMA起動に応
答してDMA転送を発行する入出力装置を接続すること
を特徴とする情報処理システム。
5. An information processing system in which a first bus and a second bus are connected by a bus connection device, wherein the first bus connects a processing device and a memory, and the bus connection device comprises: A TLB for converting a logical address to a physical address, and indexing means for indexing the TLB for a logical address included in the DMA instruction when the processing device issues a DMA instruction to the first bus;
When the index means determines that the logical address included in the DMA instruction is not included in the TLB, the corresponding entry is read from the memory and the TL is read.
B, and activating means for initiating a DMA on the second bus in response to the DMA command, wherein the second bus performs a DMA transfer in response to the DMA activation by the activating means. An information processing system characterized by connecting an input / output device to be issued.
【請求項6】 前記バス接続装置は、前記入出力装置が
前記DMA転送を前記第2のバスに発行すると当該DM
A転送に含まれる論理アドレスについて前記TLBを索
引する第2の索引手段をさらに含み、 前記第1の索引手段は、前記入出力装置が前記DMA転
送を前記第2のバスに発行されるのを待つことなく前記
TLBの索引を開始することを特徴とする請求項5記載
の情報処理システム。
6. The bus connection device, when the input / output device issues the DMA transfer to the second bus,
A second indexing means for indexing the TLB for a logical address included in the A transfer, wherein the first indexing means determines that the I / O device issues the DMA transfer to the second bus. 6. The information processing system according to claim 5, wherein the index of the TLB is started without waiting.
【請求項7】 TLBを含むバス接続装置が第1のバス
と第2のバスとを接続する情報処理システムにおいて、 前記第1のバスにDMA命令が発行されるステップと、 前記第1のバスに前記DMA命令が発行されると前記第
2のバスにDMA起動を発行するのと同時に前記DMA
命令に含まれる論理アドレスについて前記TLBを索引
するステップと、 前記TLBの索引において前記論理アドレスが前記TL
Bに含まれていない場合にはアドレス変換テーブルから
該当するエントリを読み出して前記TLBに格納するス
テップと、 前記第2のバスにおいて前記DMA命令に対応するDM
A転送が発行されると当該DMA転送について前記TL
Bを索引するステップとを含むことを特徴とするDMA
転送方法。
7. An information processing system in which a bus connection device including a TLB connects a first bus to a second bus, wherein a DMA instruction is issued to the first bus, and the first bus When the DMA instruction is issued at the same time, a DMA start is issued to the second bus and the DMA
Indexing the TLB for a logical address contained in an instruction;
B, if not, read out the corresponding entry from the address translation table and store it in the TLB; and DM on the second bus corresponding to the DMA instruction.
When the A transfer is issued, the TL
Indexing B.
Transfer method.
JP07864097A 1997-03-28 1997-03-28 Bus connection device Expired - Fee Related JP3296240B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP07864097A JP3296240B2 (en) 1997-03-28 1997-03-28 Bus connection device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP07864097A JP3296240B2 (en) 1997-03-28 1997-03-28 Bus connection device

Publications (2)

Publication Number Publication Date
JPH10275129A true JPH10275129A (en) 1998-10-13
JP3296240B2 JP3296240B2 (en) 2002-06-24

Family

ID=13667474

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07864097A Expired - Fee Related JP3296240B2 (en) 1997-03-28 1997-03-28 Bus connection device

Country Status (1)

Country Link
JP (1) JP3296240B2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6928529B2 (en) 2001-08-07 2005-08-09 Nec Corporation Data transfer between virtual addresses
US7136933B2 (en) 2001-06-06 2006-11-14 Nec Corporation Inter-processor communication systems and methods allowing for advance translation of logical addresses
JP2007287143A (en) * 2006-04-13 2007-11-01 Internatl Business Mach Corp <Ibm> Hardware supporting exception for processing software error of i/o address conversion cache error
JP2008033928A (en) * 2006-07-31 2008-02-14 Nvidia Corp Dedicated mechanism for page mapping in gpu
JP2009032085A (en) * 2007-07-27 2009-02-12 Panasonic Corp Data processing system
JP2009037610A (en) * 2007-07-31 2009-02-19 Intel Corp Offloading input/output (i/o) virtualization operations to processor
JP2018526696A (en) * 2015-07-27 2018-09-13 グーグル エルエルシー Address cache to switch

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7136933B2 (en) 2001-06-06 2006-11-14 Nec Corporation Inter-processor communication systems and methods allowing for advance translation of logical addresses
US6928529B2 (en) 2001-08-07 2005-08-09 Nec Corporation Data transfer between virtual addresses
JP2007287143A (en) * 2006-04-13 2007-11-01 Internatl Business Mach Corp <Ibm> Hardware supporting exception for processing software error of i/o address conversion cache error
JP2008033928A (en) * 2006-07-31 2008-02-14 Nvidia Corp Dedicated mechanism for page mapping in gpu
JP2009032085A (en) * 2007-07-27 2009-02-12 Panasonic Corp Data processing system
US8239652B2 (en) 2007-07-27 2012-08-07 Panasonic Corporation Data processing system
JP2009037610A (en) * 2007-07-31 2009-02-19 Intel Corp Offloading input/output (i/o) virtualization operations to processor
JP2018526696A (en) * 2015-07-27 2018-09-13 グーグル エルエルシー Address cache to switch

Also Published As

Publication number Publication date
JP3296240B2 (en) 2002-06-24

Similar Documents

Publication Publication Date Title
JP3273367B2 (en) Method for asynchronously reading / writing data to / from memory and direct memory access controller therefor
JPH0532775B2 (en)
JP3296240B2 (en) Bus connection device
JP4131789B2 (en) Cache control apparatus and method
JP3061106B2 (en) Bus bridge and computer system having the same
KR900005420B1 (en) Buffer memory control system
JP3199773B2 (en) Memory access method
JP3039391B2 (en) Memory system
JP3093446B2 (en) Information processing device
JP3251148B2 (en) Pipeline data processing device
JPH0644246B2 (en) Cache memory control system
JPH03154139A (en) Cache memory
JPH01230152A (en) Cache memory
JPH0535593A (en) Cache memory control system
JP2531209B2 (en) Channel device
JPH02259945A (en) Storing processing system
JP2000090007A (en) Cache control system, its reading method and record medium recording its control program
JP2594567B2 (en) Memory access control device
JPH04353949A (en) Cache memory control system
JPS62224846A (en) Memory controller
WO1999049395A1 (en) Buffer memory controller
JPH08320825A (en) Data processor
JPH01318119A (en) Storage control system for cache memory of operand storage
JPH04190440A (en) Address conversion control system
JPH07105086A (en) Bus snoop controller

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20020312

LAPS Cancellation because of no payment of annual fees