Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5544856B2 - Arbitration device, arbitration method, and program - Google Patents
[go: Go Back, main page]

JP5544856B2 - Arbitration device, arbitration method, and program - Google Patents

Arbitration device, arbitration method, and program Download PDF

Info

Publication number
JP5544856B2
JP5544856B2 JP2009281451A JP2009281451A JP5544856B2 JP 5544856 B2 JP5544856 B2 JP 5544856B2 JP 2009281451 A JP2009281451 A JP 2009281451A JP 2009281451 A JP2009281451 A JP 2009281451A JP 5544856 B2 JP5544856 B2 JP 5544856B2
Authority
JP
Japan
Prior art keywords
resource
arbitration
unit
request
resource request
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.)
Expired - Fee Related
Application number
JP2009281451A
Other languages
Japanese (ja)
Other versions
JP2011123715A (en
Inventor
圭一 須賀
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 JP2009281451A priority Critical patent/JP5544856B2/en
Publication of JP2011123715A publication Critical patent/JP2011123715A/en
Application granted granted Critical
Publication of JP5544856B2 publication Critical patent/JP5544856B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Bus Control (AREA)

Description

本発明は、調停装置、調停方法及びプログラムに関する。   The present invention relates to an arbitration device, an arbitration method, and a program.

半導体技術の進歩により、集積率の高いLSI(Large Scale Integration)が開発されてきた。しかし、消費電力の増加により、集積率のさらなる向上によってLSIの性能を向上させることが困難になってきている。そこで、LSIのプロセッサコア数を増やし、動作周波数を低く抑えることで消費電力の増加を抑え、複数のプロセッサコアの並列度によってスループットを向上させるマルチコア構成が用いられている。   With the progress of semiconductor technology, LSI (Large Scale Integration) with a high integration rate has been developed. However, due to the increase in power consumption, it has become difficult to improve the performance of LSIs by further improving the integration rate. Therefore, a multi-core configuration is used in which the number of LSI processor cores is increased and the operating frequency is kept low to suppress an increase in power consumption, and the throughput is improved by the degree of parallelism of a plurality of processor cores.

マルチコア構成によるLSIにおいてコア同士を接続するルータとしては、プロセッサコアをリング状に接続するリングバス方式のルータや、プロセッサコア間にクロスバを設けてそれぞれのプロセッサコアを接続するクロスバ方式のルータが用いられている。このようなオンチップのルータ(特にクロスバ方式のルータ)の処理は、リクエストパケットからの情報の取得、出力ポートの設定、クロスバ調停の実施、及び出力ポートへの転送を行う必要があり、これらの処理は、3段乃至4段のパイプライン処理によって行われる。   As a router for connecting cores in an LSI having a multi-core configuration, a ring bus type router for connecting processor cores in a ring shape, or a crossbar type router for connecting cross-bars between processor cores to connect each processor core is used. It has been. The processing of such on-chip routers (especially crossbar routers) needs to acquire information from request packets, set output ports, perform crossbar arbitration, and transfer to output ports. Processing is performed by pipeline processing of three to four stages.

クロスバの調停方法として、競合したリクエストパケットをランダムに選択するランダム選択方式、競合したリクエストパケットを順に選択するラウンドロビン選択方式、予め決められた優先順位の順に競合したリクエストパケットを選択する優先選択方式が用いられている。
なお、特許文献1には、競合したリクエストパケットの調停履歴に基づいてバス調停を行う方法が開示されている。
また、特許文献2には、特定の転送処理に関与するプロセッサコアによるリクエストパケットの出力順序を記録したテーブルを用い、現在資源を使用しているプロセッサコアの次にリクエストパケットを出力するプロセッサコアに対して、優先的に資源を使用させる調停方法が開示されている。
As a crossbar arbitration method, a random selection method that randomly selects conflicting request packets, a round robin selection method that sequentially selects conflicting request packets, and a priority selection method that selects conflicting request packets in a predetermined priority order. Is used.
Patent Document 1 discloses a method for performing bus arbitration based on the arbitration history of competing request packets.
Patent Document 2 uses a table that records the output order of request packets by processor cores involved in a specific transfer process, and outputs a request packet next to a processor core that currently uses resources. On the other hand, an arbitration method for preferentially using resources is disclosed.

特開2001−167049号公報JP 2001-167049 A 特開2008−299624号公報JP 2008-299624 A

上述したランダム選択方式、ラウンドロビン選択方式による調停方法は、各プロセッサコアが均等にリクエストパケットを出力すると仮定してプロセッサコアを選択する方法である。そのため、プロセッサコアごとにリクエストパケットの出力が均等でないアプリケーションを実行した場合、効率的なリクエストパケットの選択ができなくなるという問題がある。また、優先選択方式による調停方法は、予めプロセッサコアの優先順位が決められているため、優先順位の低いプロセッサコアによるリクエストパケットの出力が多いアプリケーションを実行した場合、効率的なリクエストパケットの選択ができなくなるという問題がある。   The arbitration method based on the random selection method and the round robin selection method described above is a method of selecting a processor core on the assumption that each processor core outputs a request packet equally. For this reason, there is a problem that when an application whose request packet output is not uniform is executed for each processor core, the request packet cannot be efficiently selected. In addition, since the priority order of the processor cores is determined in advance in the arbitration method by the priority selection method, when an application that outputs a large number of request packets by a processor core having a low priority order is executed, efficient request packet selection is possible. There is a problem that it cannot be done.

また、特許文献1、特許文献2に記載の調停方法は、リクエストパケットの調停履歴に基づいて調停を行うが、調停処理の1サイクルあたりに実行する処理内容が多くなるため、調停装置の動作周波数を上げることができず、通信遅延が発生する惧れがある。
本発明は、上記の問題に鑑みてなされたものであり、調停処理の1サイクルあたりの実行処理内容を増加させず、かつ効率的なリクエストパケットの選択を行う調停装置、調停方法及びプログラムを提供することを課題とする。
The arbitration methods described in Patent Document 1 and Patent Document 2 perform arbitration based on the arbitration history of the request packet. However, since the content of processing executed per cycle of the arbitration process increases, the operation frequency of the arbitration device Cannot be increased, and communication delays may occur.
The present invention has been made in view of the above problems, and provides an arbitration device, an arbitration method, and a program that perform efficient request packet selection without increasing the execution processing content per cycle of arbitration processing. The task is to do.

本発明は上記の課題を解決するためになされたものであり、複数の資源要求装置から発行される、当該資源要求装置による計算資源の使用の要求を示す資源要求の調停を行い、前記資源要求装置と前記計算資源とを接続するクロスバを制御する調停装置であって、複数の前記資源要求装置から資源要求の入力を受け付ける入力部と、前記入力部が同一の前記計算資源に対する資源要求の中から1つを選択し、選択された資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力する調停部と、前記調停部による処理を実行する前に、前記調停部によって選択される資源要求を予測し、当該資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力する予測部と、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、前記クロスバに対して前記予測部による接続命令の実行を中断させる中断命令を出力する中断部と、過去の処理において前記調停部が選択した資源要求を選択した順に調停履歴記憶部に登録する履歴登録部とを備え、前記調停部は、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが同一である場合に、前記クロスバに対する前記接続命令の出力を行わず、前記予測部は、前記調停部による最後の所定の個数の資源要求を選択した順と同じ順に、前記調停履歴記憶部に記憶されている資源要求の直後に登録された資源要求を、前記調停部によって選択される資源要求として予測することを特徴とする。
また、本発明は、複数の資源要求装置から発行される、当該資源要求装置による計算資源の使用の要求を示す資源要求の調停を行い、前記資源要求装置と前記計算資源とを接続するクロスバを制御する調停装置であって、複数の前記資源要求装置から資源要求の入力を受け付ける入力部と、前記入力部が同一の前記計算資源に対する資源要求の中から1つを選択し、選択された資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力する調停部と、前記調停部による処理を実行する前に、前記調停部によって選択される資源要求を予測し、当該資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力する予測部と、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、前記クロスバに対して前記予測部による接続命令の実行を中断させる中断命令を出力する中断部と、前記資源要求装置ごとに、過去の処理において、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが同一となる度合いを示す強度情報を算出する強度情報算出部とを備え、前記調停部は、前記強度情報算出部が算出した強度情報に基づいて、選択する資源要求を決定し、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが同一である場合に、前記クロスバに対する前記接続命令の出力を行わないことを特徴とする。
The present invention has been made to solve the above-described problem, and performs resource request arbitration issued from a plurality of resource requesting devices indicating requests for use of computing resources by the resource requesting device, and An arbitration device that controls a crossbar that connects a device and the computing resource, wherein an input unit that receives input of resource requests from a plurality of the resource requesting devices and a resource request for the computing resource with the same input unit An arbitration unit that outputs a connection command for outputting the selected resource request to a calculation resource to which the resource request is issued to the crossbar, and before executing the processing by the arbitration unit, the arbitration unit The arbitration unit selects the prediction unit that predicts the resource request selected by the unit and outputs a connection command to the crossbar to output the resource request to the calculation resource to which the resource request is issued. And if the resource request and the predicted part is resource request and the predicted is different, and the interruption unit for outputting an interruption instruction to interrupt the execution of the connection instruction by the prediction unit to the crossbar, the arbitration unit in the past processing A history registration unit that registers the resource requests selected by the arbitration history storage unit in the order of selection, and the arbitration unit has the same resource request selected by the arbitration unit and the resource request predicted by the prediction unit. The connection command to the crossbar is not output, and the prediction unit is stored in the arbitration history storage unit in the same order as the last predetermined number of resource requests selected by the arbitration unit. A resource request registered immediately after the resource request is predicted as a resource request selected by the arbitration unit .
In addition, the present invention arbitrates resource requests issued from a plurality of resource requesting devices to indicate requests for use of computing resources by the resource requesting devices, and provides a crossbar for connecting the resource requesting devices and the computing resources. An arbitration device to be controlled, wherein an input unit that receives input of resource requests from a plurality of the resource requesting devices, and the input unit selects one of resource requests for the same computing resource, and the selected resource An arbitration unit that outputs a connection command that outputs a request to a calculation resource to which the resource request is issued to the crossbar, and before executing the process by the arbitration unit, predicts a resource request selected by the arbitration unit, A prediction unit that outputs a connection command for outputting the resource request to a calculation resource to which the resource request is issued to the crossbar, a resource request selected by the arbitration unit, and a resource predicted by the prediction unit When the request is different, the arbitration unit selected in the past processing for each of the resource requesting device and the interrupting unit that outputs an interrupting command for interrupting the execution of the connection command by the prediction unit to the crossbar A strength information calculation unit that calculates strength information indicating a degree that the resource request and the resource request predicted by the prediction unit are the same, and the mediation unit is based on the strength information calculated by the strength information calculation unit. The resource request to be selected is determined, and when the resource request selected by the arbitration unit and the resource request predicted by the prediction unit are the same, the connection command is not output to the crossbar. .

また、本発明は、複数の資源要求装置から発行される、当該資源要求装置による計算資源の使用の要求を示す資源要求の調停を行い、前記資源要求装置と前記計算資源とを接続するクロスバを制御する調停装置を用いた調停方法であって、入力部は、複数の前記資源要求装置から資源要求の入力を受け付け、調停部は、前記入力部が同一の前記計算資源に対する資源要求の中から1つを選択し、予測部は、前記調停部による処理を実行する前に、前記調停部によって選択される資源要求を予測し、当該資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力し、中断部は、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、前記クロスバに対して前記予測部による接続命令の実行を中断させる中断命令を出力し、履歴登録部は、過去の処理において前記調停部が選択した資源要求を選択した順に調停履歴記憶部に登録し、前記調停部は、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、選択された資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力し、前記予測部は、前記調停部による最後の所定の個数の資源要求を選択した順と同じ順に、前記調停履歴記憶部に記憶されている資源要求の直後に登録された資源要求を、前記調停部によって選択される資源要求として予測することを特徴とする。
また、本発明は、複数の資源要求装置から発行される、当該資源要求装置による計算資源の使用の要求を示す資源要求の調停を行い、前記資源要求装置と前記計算資源とを接続するクロスバを制御する調停装置を用いた調停方法であって、入力部は、複数の前記資源要求装置から資源要求の入力を受け付け、調停部は、前記入力部が同一の前記計算資源に対する資源要求の中から1つを選択し、選択された資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力し、予測部は、前記調停部による処理を実行する前に、前記調停部によって選択される資源要求を予測し、当該資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力し、中断部は、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、前記クロスバに対して前記予測部による接続命令の実行を中断させる中断命令を出力し、強度情報算出部は、前記資源要求装置ごとに、過去の処理において、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが同一となる度合いを示す強度情報を算出し、前記調停部は、前記強度情報算出部が算出した強度情報に基づいて、選択する資源要求を決定し、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、選択された資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力することを特徴とする。
In addition, the present invention arbitrates resource requests issued from a plurality of resource requesting devices to indicate requests for use of computing resources by the resource requesting devices, and provides a crossbar for connecting the resource requesting devices and the computing resources. An arbitration method using an arbitrating device to be controlled, wherein an input unit accepts input of resource requests from a plurality of the resource requesting devices, and the arbitration unit selects from among resource requests for the computing resources with the same input unit. The prediction unit selects one and predicts the resource request selected by the arbitration unit before executing the processing by the arbitration unit, and outputs the resource request to the calculation resource to which the resource request is issued. The connection command is output to the crossbar, and the interruption unit determines whether the prediction command to the crossbar is connected when the resource request selected by the arbitration unit is different from the resource request predicted by the prediction unit. Outputting an interrupt command to interrupt the line, the history registration unit registers the arbitration history storage unit in the order in which the arbitration unit selects the resource request selected in past processing, the arbitration unit, the arbitration unit selects When the resource request and the resource request predicted by the prediction unit are different, a connection command for outputting the selected resource request to the calculation resource to which the resource request is issued is output to the crossbar. A resource request registered immediately after the resource request stored in the arbitration history storage unit in the same order as the last predetermined number of resource requests selected by the arbitration unit is selected by the arbitration unit. It is characterized by predicting as follows.
In addition, the present invention arbitrates resource requests issued from a plurality of resource requesting devices to indicate requests for use of computing resources by the resource requesting devices, and provides a crossbar for connecting the resource requesting devices and the computing resources. An arbitration method using an arbitrating device to be controlled, wherein an input unit accepts input of resource requests from a plurality of the resource requesting devices, and the arbitration unit selects from among resource requests for the computing resources with the same input unit. One is selected, a connection command for outputting the selected resource request to the calculation resource to which the resource request is issued is output to the crossbar, and the prediction unit performs the arbitration before executing the processing by the arbitration unit. The resource request selected by the resource unit is predicted, a connection command for outputting the resource request to the calculation resource to which the resource request is issued is output to the crossbar, and the interruption unit is the resource request selected by the arbitration unit. When the resource request predicted by the prediction unit is different, the crossing bar outputs an interruption command for interrupting the execution of the connection command by the prediction unit, and the strength information calculation unit stores the past for each resource request device. In the process, the strength information indicating the degree to which the resource request selected by the arbitration unit and the resource request predicted by the prediction unit are the same is calculated, and the arbitration unit calculates the strength information calculated by the strength information calculation unit. And when the resource request selected by the arbitration unit and the resource request predicted by the prediction unit are different from each other, the selected resource request is calculated as a calculation resource to which the resource request is issued. A connection command to be output to is output to the crossbar.

また、本発明は、複数の資源要求装置から発行される、当該資源要求装置による計算資源の使用の要求を示す資源要求の調停を行い、前記資源要求装置と前記計算資源とを接続するクロスバを制御する調停装置を、複数の前記資源要求装置から資源要求の入力を受け付ける入力部、前記入力部が同一の前記計算資源に対する資源要求の中から1つを選択し、選択された資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力する調停部、前記調停部による処理を実行する前に、前記調停部によって選択される資源要求を予測し、当該資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力する予測部、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、前記クロスバに対して前記予測部による接続命令の実行を中断させる中断命令を出力する中断部、過去の処理において前記調停部が選択した資源要求を選択した順に調停履歴記憶部に登録する履歴登録部として機能させ、前記調停部は、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが同一である場合に、前記クロスバに対する前記接続命令の出力を行わず、前記予測部は、前記調停部による最後の所定の個数の資源要求を選択した順と同じ順に、前記調停履歴記憶部に記憶されている資源要求の直後に登録された資源要求を、前記調停部によって選択される資源要求として予測することを特徴とする。 In addition, the present invention arbitrates resource requests issued from a plurality of resource requesting devices to indicate requests for use of computing resources by the resource requesting devices, and provides a crossbar for connecting the resource requesting devices and the computing resources. An arbitration device to be controlled is an input unit that receives input of resource requests from a plurality of the resource requesting devices, and the input unit selects one of the resource requests for the same computing resource, and the selected resource request is Before executing the processing by the arbitration unit, the arbitration unit that outputs a connection command to be output to the calculation resource to which the resource request is issued to the crossbar, the resource request selected by the arbitration unit is predicted, and the resource request is The prediction unit that outputs a connection command to be output to the calculation resource to which the resource request is issued to the crossbar, the resource request selected by the arbitration unit is different from the resource request predicted by the prediction unit If, registered in the interruption of outputting the interrupt instruction to interrupt the execution of the connection instruction by the prediction unit with respect to the crossbar, the arbitration in the order in which the arbitration unit selects the resource request selection history storage unit in the past processing When the resource request selected by the arbitration unit and the resource request predicted by the prediction unit are the same, the arbitration unit does not output the connection command to the crossbar, and functions as a history registration unit. The prediction unit uses the arbitration unit to register resource requests registered immediately after the resource request stored in the arbitration history storage unit in the same order as the last predetermined number of resource requests selected by the arbitration unit. It is characterized by predicting as a resource requirement to be selected .

本発明によれば、調停部による調停の実行の前に、予測部が、選択される資源要求を予測し、クロスバに当該資源要求を出力させる接続命令を出力する。これにより、調停装置は、調停処理の1サイクルあたりの実行処理内容を増加させずに、効率的な資源要求の選択を行うことができる。   According to the present invention, before execution of arbitration by the arbitration unit, the prediction unit predicts a resource request to be selected and outputs a connection command for causing the crossbar to output the resource request. Thereby, the arbitration device can perform efficient resource request selection without increasing the execution process content per cycle of the arbitration process.

本発明の一実施形態によるクロスバ調停装置の構成を示す概略ブロック図である。It is a schematic block diagram which shows the structure of the crossbar arbitration apparatus by one Embodiment of this invention. 予測回路の構成を示す概略ブロック図である。It is a schematic block diagram which shows the structure of a prediction circuit. 調停回路のパイプライン処理の流れを示す図である。It is a figure which shows the flow of the pipeline process of an arbitration circuit. 調停装置の動作を示す第1のフローチャートである。It is a 1st flowchart which shows operation | movement of an arbitration apparatus. 調停装置の動作を示す第2のフローチャートである。It is a 2nd flowchart which shows operation | movement of an arbitration apparatus. リクエストパケットの調停方法を示す図である。It is a figure which shows the arbitration method of a request packet. 強度情報の更新方法を示す図である。It is a figure which shows the update method of intensity | strength information.

以下、図面を参照しながら本発明の実施形態について詳しく説明する。
図1は、本発明の一実施形態によるクロスバ調停装置の構成を示す概略ブロック図である。
クロスバ調停装置は、プロセッサコア及び入出力装置を相互に接続するルータであって、入力ポート1−1〜1−5(以下、入力ポート1−1〜1−5を総称する場合は入力ポート1と表記する)、入力側バッファ部2−1〜2−5(以下、入力側バッファ部2−1〜2−5を総称する場合は入力側バッファ部2と表記する)、調停装置3、クロスバ4、出力側バッファ部5−1〜5−5(以下、出力側バッファ部5−1〜5−5を総称する場合は出力側バッファ部5と表記する)、出力ポート6−1〜6−5(以下、出力ポート6−1〜6−5を総称する場合は出力ポート6と表記する)を備える。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a schematic block diagram showing a configuration of a crossbar arbitration device according to an embodiment of the present invention.
The crossbar arbitration device is a router that connects a processor core and an input / output device to each other, and includes input ports 1-1 to 1-5 (hereinafter, input ports 1 to 1-5 are collectively referred to as input ports 1 to 1-5). Input side buffer units 2-1 to 2-5 (hereinafter, the input side buffer units 2-1 to 2-5 are collectively referred to as the input side buffer unit 2), the arbitrating device 3, and the crossbar. 4. Output side buffer units 5-1 to 5-5 (hereinafter, the output side buffer units 5-1 to 5-5 are collectively referred to as output side buffer unit 5), output ports 6-1 to 6-6 5 (hereinafter, the output ports 6-1 to 6-5 are collectively referred to as the output port 6).

入力ポート1は、それぞれ接続されたプロセッサコアまたは入出力装置(以下、資源要求装置とよぶ)からリクエストパケットを入力し、当該リクエストパケット(資源要求)を、接続された入力側バッファ部2に出力する。なお、本実施形態においては、入力ポート1が資源要求装置から入力するリクエストパケットには、出力先を示す情報及び調停の優先度を示す強度情報が含まれる。
入力側バッファ部2は、接続された入力ポート1からリクエストパケットを入力し、当該リクエストパケットを一時的に蓄えて、リクエストパケットに含まれる強度情報を調停装置3に出力し、リクエストパケット本体をクロスバ4に出力する。
The input port 1 inputs a request packet from each connected processor core or input / output device (hereinafter referred to as a resource request device), and outputs the request packet (resource request) to the connected input side buffer unit 2 To do. In the present embodiment, the request packet input from the resource requesting device by the input port 1 includes information indicating the output destination and strength information indicating the priority of arbitration.
The input side buffer unit 2 inputs a request packet from the connected input port 1, temporarily stores the request packet, outputs strength information included in the request packet to the arbitrating device 3, and crosses the request packet body to the crossbar. 4 is output.

調停装置3は、入力側バッファ部2から入力した強度情報に基づいてリクエストパケットの調停を行い、調停によって選択されたリクエストパケットを出力ポート6に転送させる接続命令をクロスバ4に出力する。また、各プロセッサコアに関連付けられた強度情報を更新し、出力ポート6に出力する。
クロスバ4は、調停装置3から接続命令を入力し、当該接続命令に基づいて入力側バッファ部2から入力したリクエストパケットを出力側バッファ部5に出力する。
出力側バッファ部5は、クロスバ4からリクエストパケットを入力し、当該リクエストパケットを一時的に蓄えて、接続された出力ポート6に出力する。
出力ポート6は、接続された出力側バッファ部5からリクエストパケットを、調停装置3から強度情報を入力し、当該強度情報を含むリクエストパケットを、接続されたプロセッサコアまたは入出力装置(以下、計算資源と呼ぶ)に出力する。
The arbitrating device 3 arbitrates the request packet based on the strength information input from the input side buffer unit 2, and outputs a connection command for transferring the request packet selected by the arbitration to the output port 6 to the crossbar 4. In addition, the strength information associated with each processor core is updated and output to the output port 6.
The crossbar 4 receives a connection command from the arbitration device 3 and outputs a request packet input from the input buffer unit 2 to the output buffer unit 5 based on the connection command.
The output buffer unit 5 receives a request packet from the crossbar 4, temporarily stores the request packet, and outputs the request packet to the connected output port 6.
The output port 6 receives a request packet from the connected output-side buffer unit 5 and strength information from the arbitration device 3, and sends a request packet including the strength information to a connected processor core or input / output device (hereinafter referred to as calculation). Resource).

なお、入力ポート1及び出力ポート6に接続されたプロセッサコア及び入出力装置は、共有のメモリ(図示せず)と接続されている。そして、プロセッサコア及び入出力装置は、当該メモリから自装置に関連付けられた強度情報を読み出す。また、プロセッサコア及び入出力装置は、出力ポート6から出力された強度情報を当該メモリに上書きして記録する。これにより、プロセッサコア及び入出力装置は、調停装置3が更新した強度情報を次回の入力に反映させることができる。   The processor core and the input / output device connected to the input port 1 and the output port 6 are connected to a shared memory (not shown). Then, the processor core and the input / output device read the strength information associated with the own device from the memory. Further, the processor core and the input / output device overwrite and record the intensity information output from the output port 6 in the memory. Thereby, the processor core and the input / output device can reflect the strength information updated by the arbitrating device 3 in the next input.

入力側バッファ部2は、入力バッファ21、入力側FIFOバッファ制御回路22、FIFOバッファ23、出力側FIFOバッファ制御回路24、出力バッファ25から構成される。
入力バッファ21は、入力ポート1から入力したリクエストパケットを一時的に記憶する。
入力側FIFOバッファ制御回路22は、入力バッファ21が記憶するリクエストパケットを取り出し、FIFOバッファ23に登録する。
FIFOバッファ23は、入力側FIFOバッファ制御回路22によって記録されたリクエストパケットを一時的に記憶する。
出力側FIFOバッファ制御回路24は、FIFOバッファ23に最初に登録されたリクエストパケットを取り出し、出力バッファ25に登録する。ここで、「取り出す」とは、FIFOバッファ23からリクエストパケットを読み出し、読み出したリクエストパケットをFIFOバッファ23から削除することを示す。
出力バッファ25は、調停装置3及びクロスバ4に出力するリクエストパケットを一時的に記憶する。
The input side buffer unit 2 includes an input buffer 21, an input side FIFO buffer control circuit 22, a FIFO buffer 23, an output side FIFO buffer control circuit 24, and an output buffer 25.
The input buffer 21 temporarily stores request packets input from the input port 1.
The input side FIFO buffer control circuit 22 takes out the request packet stored in the input buffer 21 and registers it in the FIFO buffer 23.
The FIFO buffer 23 temporarily stores the request packet recorded by the input side FIFO buffer control circuit 22.
The output side FIFO buffer control circuit 24 takes out the request packet first registered in the FIFO buffer 23 and registers it in the output buffer 25. Here, “take out” indicates that the request packet is read from the FIFO buffer 23 and the read request packet is deleted from the FIFO buffer 23.
The output buffer 25 temporarily stores request packets to be output to the arbitrating device 3 and the crossbar 4.

調停装置3は、強度入力バッファ31−1〜31−5(以下、強度入力バッファ31−1〜31−5を総称する場合は強度入力バッファ31と表記する)、リクエスト入力バッファ32、バッファ登録回路33、調停バッファ回路34、予測回路35、調停回路36、強度更新回路37、強度出力バッファ38−1〜38−5(以下、強度出力バッファ38−1〜38−5を総称する場合は強度出力バッファ38と表記する)を備える。
強度入力バッファ31は、それぞれ対応する入力側バッファ部2からリクエストパケットに含まれる強度情報を入力し、一時的に記憶する。
リクエスト入力バッファ32は、入力側バッファ部2からリクエストパケット本体を入力し、一時的に記憶する。
The arbitrating device 3 includes strength input buffers 31-1 to 31-5 (hereinafter, the strength input buffers 31-1 to 31-5 are collectively referred to as strength input buffers 31), a request input buffer 32, and a buffer registration circuit. 33, the arbitration buffer circuit 34, the prediction circuit 35, the arbitration circuit 36, the strength update circuit 37, the strength output buffers 38-1 to 38-5 (hereinafter, the strength output buffers 38-1 to 38-5 are collectively referred to as strength outputs). A buffer 38).
The strength input buffer 31 receives the strength information included in the request packet from the corresponding input side buffer unit 2 and temporarily stores it.
The request input buffer 32 receives the request packet body from the input side buffer unit 2 and temporarily stores it.

バッファ登録回路33は、強度入力バッファ31が記憶する強度情報を取り出し、入力元の入力ポート1の識別情報に関連付けて調停バッファ回路34に登録する。
調停バッファ回路34は、調停対象となるリクエストパケットの入力元の入力ポート1の識別情報とリクエストパケットの強度情報とを関連付けて記憶する。
予測回路35は、調停バッファ回路34が記憶する調停対象となるリクエストパケットの情報と、調停回路36による過去の調停結果とに基づいて調停回路36がどのリクエストパケットを選択するかを予測し、予測結果を示す選択制御情報を調停回路36に出力する。ここで、選択制御情報とは、予測回路35が予測したリクエストパケットとその強度情報を示す。
The buffer registration circuit 33 extracts the strength information stored in the strength input buffer 31 and registers it in the arbitration buffer circuit 34 in association with the identification information of the input port 1 that is the input source.
The arbitration buffer circuit 34 stores the identification information of the input port 1 that is the input source of the request packet to be arbitrated and the strength information of the request packet in association with each other.
The prediction circuit 35 predicts which request packet the arbitration circuit 36 will select based on the information of the request packet to be arbitrated stored in the arbitration buffer circuit 34 and the past arbitration result by the arbitration circuit 36. Selection control information indicating the result is output to the arbitration circuit 36. Here, the selection control information indicates a request packet predicted by the prediction circuit 35 and its strength information.

調停回路36は、強度入力バッファ31が記憶する強度情報を取り出し、当該強度情報に基づいてリクエストパケットの調停を行い、リクエストパケットを出力ポート6に転送させる接続命令をクロスバ4に出力する。また、調停回路36は、予測回路35から選択制御情報を入力し、当該選択制御情報が示すリクエストパケットを出力ポート6に転送させる接続命令をクロスバ4に出力する。そして、調停回路36は、調停結果を予測回路35に出力する。ここで、調停結果とは、調停回路36が接続命令を出力したリクエストパケットとその強度情報を示す。なお、調停結果は、調停回路36による接続命令の出力毎に予測回路35及び強度更新回路37に出力される。また、調停回路36は、予測回路35から入力した選択制御情報が示す予測結果が誤っているか否かを判定し、誤っている場合は、クロスバ4に対し、選択制御情報に基づいて出力した接続命令の実行を中断させる中断命令を出力する。   The arbitration circuit 36 extracts the strength information stored in the strength input buffer 31, arbitrates the request packet based on the strength information, and outputs a connection command for transferring the request packet to the output port 6 to the crossbar 4. Further, the arbitration circuit 36 inputs selection control information from the prediction circuit 35 and outputs a connection command for transferring the request packet indicated by the selection control information to the output port 6 to the crossbar 4. Then, the arbitration circuit 36 outputs the arbitration result to the prediction circuit 35. Here, the arbitration result indicates a request packet in which the arbitration circuit 36 outputs a connection command and its strength information. The arbitration result is output to the prediction circuit 35 and the strength update circuit 37 every time a connection command is output by the arbitration circuit 36. Further, the arbitration circuit 36 determines whether or not the prediction result indicated by the selection control information input from the prediction circuit 35 is incorrect. If the prediction result is incorrect, the arbitration circuit 36 outputs the connection output to the crossbar 4 based on the selection control information. Outputs an interrupt instruction that interrupts execution of the instruction.

強度更新回路37は、予測回路35から入力した選択制御情報が示すリクエストパケットと調停回路36から入力した調停結果が示すリクエストパケットとが一致する場合に強度情報を更新し、強度出力バッファ38に出力する。
強度出力バッファ38は、強度更新回路37から強度情報を入力し、当該強度情報を一時的に蓄えて、接続された出力ポート6に出力する。
The strength update circuit 37 updates the strength information when the request packet indicated by the selection control information input from the prediction circuit 35 matches the request packet indicated by the arbitration result input from the arbitration circuit 36, and outputs it to the strength output buffer 38. To do.
The strength output buffer 38 receives strength information from the strength update circuit 37, temporarily stores the strength information, and outputs the strength information to the connected output port 6.

図2は、予測回路の構成を示す概略ブロック図である。
予測回路35は、一時リクエスト記憶部351、履歴登録部352、調停履歴記憶部353、履歴検索用バッファ354、検索部355、予測部356を備える。
FIG. 2 is a schematic block diagram illustrating the configuration of the prediction circuit.
The prediction circuit 35 includes a temporary request storage unit 351, a history registration unit 352, an arbitration history storage unit 353, a history search buffer 354, a search unit 355, and a prediction unit 356.

一時リクエスト記憶部351は、調停回路36から調停結果を入力し、当該調停結果を記憶する。なお、一時リクエスト記憶部351は、調停結果の入力順を記憶しており、新たな調停結果の入力によって一時リクエスト記憶部351の残り記憶容量が所定量に達する場合、一時リクエスト記憶部351は、最初に登録された調停結果を削除し、新たに入力した調停結果を記憶する。なお、本実施形態において、一時リクエスト記憶部351の記憶容量は、少なくとも3つの調停結果を記憶することができるだけあればよい。   The temporary request storage unit 351 receives an arbitration result from the arbitration circuit 36 and stores the arbitration result. The temporary request storage unit 351 stores the order of input of arbitration results. When the remaining storage capacity of the temporary request storage unit 351 reaches a predetermined amount due to the input of a new arbitration result, the temporary request storage unit 351 The mediation result registered first is deleted and the newly entered mediation result is stored. Note that in the present embodiment, the storage capacity of the temporary request storage unit 351 only needs to be able to store at least three arbitration results.

履歴登録部352は、一時リクエスト記憶部351に新たに記憶された調停結果を読み出し、当該調停結果を調停履歴記憶部353に記録する。
調停履歴記憶部353は、履歴登録部352から調停結果を入力し、当該調停結果と調停結果の入力順を示すインデックス番号とを関連付けて記憶する。なお、調停履歴記憶部353は、調停結果の入力順を記憶しており、新たな調停結果の入力によって調停履歴記憶部353の残り記憶容量が所定量に達する場合、調停履歴記憶部353は、最初に登録された調停結果を削除し、新たに入力した調停結果を記憶する。なお、調停履歴記憶部353の記憶容量は、一時リクエスト記憶部351の記憶容量より大きいことが望ましい。
The history registration unit 352 reads the arbitration result newly stored in the temporary request storage unit 351 and records the arbitration result in the arbitration history storage unit 353.
The arbitration history storage unit 353 inputs the arbitration result from the history registration unit 352, and stores the arbitration result and an index number indicating the input order of the arbitration result in association with each other. The arbitration history storage unit 353 stores the input order of the arbitration results. When the remaining storage capacity of the arbitration history storage unit 353 reaches a predetermined amount due to the input of a new arbitration result, the arbitration history storage unit 353 The mediation result registered first is deleted and the newly entered mediation result is stored. Note that the storage capacity of the arbitration history storage unit 353 is preferably larger than the storage capacity of the temporary request storage unit 351.

履歴検索用バッファ354は、一時リクエスト記憶部351から最後に登録された3つの調停結果を読み出し、検索部355による検索が完了するまで一時的に記憶する。
検索部355は、調停履歴記憶部353が記憶する調停結果の中から、履歴検索用バッファ354が記憶する3つの調停結果と同じ組み合わせの調停結果を検索する。
予測部356は、検索部355による検索結果と、調停バッファ回路34に新たに登録された強度情報とに基づいて、調停回路36の調停により何れのリクエストパケットが出力されるかを予測し、予測したリクエストパケットを示す選択制御情報を、調停回路36及び強度更新回路37に出力する。
The history search buffer 354 reads the last three arbitration results registered from the temporary request storage unit 351 and temporarily stores them until the search by the search unit 355 is completed.
The search unit 355 searches the arbitration results stored in the arbitration history storage unit 353 for arbitration results having the same combination as the three arbitration results stored in the history search buffer 354.
The prediction unit 356 predicts which request packet is output by the arbitration of the arbitration circuit 36 based on the search result by the search unit 355 and the strength information newly registered in the arbitration buffer circuit 34. The selection control information indicating the received request packet is output to the arbitration circuit 36 and the strength update circuit 37.

そして、本実施形態による調停装置3において、強度入力バッファ31は、複数のプロセッサコア及び入出力装置から強度情報の入力を受け付ける。次に、調停回路36は、強度入力バッファ31が同一の計算資源に対するリクエストパケットに関連付けられた強度情報の中から1つを選択し、選択された強度情報に関連付けられたリクエストパケットを当該リクエストパケットの発行先の計算資源へ出力させる接続命令をクロスバ4に出力する。   In the arbitration device 3 according to the present embodiment, the strength input buffer 31 receives input of strength information from a plurality of processor cores and input / output devices. Next, the arbitration circuit 36 selects one of the strength information associated with the request packets for the same computing resource by the strength input buffer 31, and selects the request packet associated with the selected strength information as the request packet. Is output to the crossbar 4 to be output to the calculation resource of the issue destination.

他方、予測回路35は、調停回路36による処理を実行する前に、調停回路36によって選択されるリクエストパケットを予測し、当該リクエストパケットを当該リクエストパケットの発行先の計算資源へ出力させる接続命令をクロスバ4に出力する。
そして、調停回路36は、選択したリクエストパケットと予測回路35が予測したリクエストパケットとが異なる場合に、クロスバ4に対して予測回路35による接続命令の実行を中断させる中断命令を出力する。
また、調停回路36は、選択したリクエストパケットと予測回路35が予測したリクエストパケットとが同一である場合に、クロスバ4に対する接続命令の出力を行わない。
On the other hand, the prediction circuit 35 predicts the request packet selected by the arbitration circuit 36 before executing the process by the arbitration circuit 36, and outputs a connection instruction for outputting the request packet to the calculation resource of the request packet issue destination. Output to the crossbar 4.
Then, when the selected request packet and the request packet predicted by the prediction circuit 35 are different, the arbitration circuit 36 outputs an interruption command for interrupting the execution of the connection command by the prediction circuit 35 to the crossbar 4.
The arbitration circuit 36 does not output a connection command to the crossbar 4 when the selected request packet and the request packet predicted by the prediction circuit 35 are the same.

これにより、調停処理の1サイクルあたりの実行処理内容を増加させず、かつ効率的なリクエストパケットの選択を行うことができる。以下に、本実施形態による調停装置によって調停処理を高速化することができる理由を説明する。   As a result, it is possible to select request packets efficiently without increasing the content of execution processing per cycle of arbitration processing. The reason why the arbitration process can be speeded up by the arbitration device according to the present embodiment will be described below.

図3は、調停回路のパイプライン処理の流れを示す図である。
調停回路36は、4段のパイプライン処理により、リクエストパケットの調停を行う。すなわち調停回路36は、リクエストパケットから出力先の出力ポート6の識別情報を読み取るポート情報読み取りステージX0、読み取った識別情報に従ってリクエストパケットを出力ポート6に設定する出力ポート設定ステージX1、強度情報に基づいて調停を行うクロスバ設定前処理ステージX2及びクロスバ設定後処理ステージX3を順次実行することで調停処理を行う。そして、調停回路は4段のパイプライン処理による調停の後、調停により選択されたリクエストパケットを出力させる接続命令をクロスバ4に出力するパケット送出ステージXTを実行する。そのため、調停回路36は、5サイクルで調停処理を実行する。これは、従来の調停方法に要するサイクル数と等しい。
FIG. 3 is a diagram illustrating a flow of pipeline processing of the arbitration circuit.
The arbitration circuit 36 arbitrates request packets by four-stage pipeline processing. That is, the arbitration circuit 36 is based on the port information reading stage X0 that reads the identification information of the output port 6 that is the output destination from the request packet, the output port setting stage X1 that sets the request packet to the output port 6 according to the read identification information, and the intensity information. The arbitration process is performed by sequentially executing the crossbar setting pre-processing stage X2 and the crossbar setting post-processing stage X3 that perform arbitration. Then, the arbitration circuit executes a packet transmission stage XT that outputs a connection command for outputting the request packet selected by the arbitration to the crossbar 4 after arbitration by four-stage pipeline processing. Therefore, the arbitration circuit 36 executes the arbitration process in five cycles. This is equal to the number of cycles required for the conventional arbitration method.

他方、予測回路35は、選択制御情報を予め生成するため、調停回路36は、予測回路35が生成した選択制御情報から選択するリクエストパケットを読み取る制御情報読み取りステージP0を実行し、読み取ったリクエストパケットを出力させる接続命令をクロスバ4に出力するパケット送出ステージXTを実行する。これにより、調停回路36は、2サイクルで調停処理を実行することができる。したがって、予測回路35によって予測されたリクエストパケットと調停回路36による調停で選択されたリクエストパケットとが一致する場合、すなわち予測回路35による予測が的中した場合、3サイクル分高速に調停処理を行うことができる。
つまり、予測回路35による予測が的中するほど調停装置による調停処理が高速化されることとなる。
On the other hand, since the prediction circuit 35 generates selection control information in advance, the arbitration circuit 36 executes a control information reading stage P0 that reads a request packet selected from the selection control information generated by the prediction circuit 35, and the read request packet The packet transmission stage XT is output to output a connection command for outputting to the crossbar 4. Thereby, the arbitration circuit 36 can execute the arbitration process in two cycles. Therefore, when the request packet predicted by the prediction circuit 35 matches the request packet selected by the arbitration by the arbitration circuit 36, that is, when the prediction by the prediction circuit 35 is correct, the arbitration process is performed at high speed for three cycles. be able to.
That is, the more accurate the prediction by the prediction circuit 35 is, the faster the arbitration processing by the arbitration device is.

なお、予測回路35によって予測されたリクエストパケットと調停回路36による調停で選択されたリクエストパケットとが一致しない場合、すなわち予測回路35による予測が外れた場合、調停回路36が、予測回路35が生成した選択制御情報に基づいて出力した接続命令の実行を中断させる中断命令をクロスバ4に出力し、改めて接続命令の出力を行う。このとき、調停回路36は、中断命令の出力と接続命令の出力とを平行して実行するため、5サイクルで調停処理がなされる。そのため、予測回路35による予測が外れた場合にも、従来の調停処理と比較して遅延が発生することはない。   When the request packet predicted by the prediction circuit 35 and the request packet selected by the arbitration by the arbitration circuit 36 do not match, that is, when the prediction by the prediction circuit 35 is not satisfied, the arbitration circuit 36 generates the prediction circuit 35. The interruption command for interrupting the execution of the connection command output based on the selected control information is output to the crossbar 4 and the connection command is output again. At this time, since the arbitration circuit 36 executes the output of the interruption command and the output of the connection command in parallel, the arbitration process is performed in five cycles. For this reason, even if the prediction by the prediction circuit 35 is lost, no delay occurs compared to the conventional arbitration process.

次に、本実施形態による調停装置の動作を説明する。
図4は、調停装置の動作を示す第1のフローチャートである。
図5は、調停装置の動作を示す第2のフローチャートである。
まず、資源要求装置が同一の計算資源に対するリクエストパケットを発行すると、リクエストパケットを発行した資源要求装置に接続された入力ポート1を介して、入力側バッファ部2にリクエストパケットが登録される。そして、入力ポート1に登録されたリクエストパケットに含まれる強度情報は、調停装置3の強度入力バッファ31に入力され、リクエストパケットの本体は、調停装置3のリクエスト入力バッファ32に入力される(ステップS1)。そして、バッファ登録回路33は、リクエスト入力バッファ32から強度情報を取り出し、調停バッファ回路34に登録する。
Next, the operation of the arbitration device according to the present embodiment will be described.
FIG. 4 is a first flowchart showing the operation of the arbitration device.
FIG. 5 is a second flowchart showing the operation of the arbitration device.
First, when a resource requesting device issues a request packet for the same computing resource, the request packet is registered in the input side buffer unit 2 via the input port 1 connected to the resource requesting device that issued the request packet. Then, the strength information included in the request packet registered in the input port 1 is input to the strength input buffer 31 of the arbitration device 3, and the main body of the request packet is input to the request input buffer 32 of the arbitration device 3 (step) S1). Then, the buffer registration circuit 33 extracts the strength information from the request input buffer 32 and registers it in the arbitration buffer circuit 34.

次に、予測回路35は、自回路の一時リクエスト記憶部351が記憶する過去の調停結果のうち最後に登録された3つの調停結果を読み出し、履歴検索用バッファ354に記録する(ステップS2)。ここで、最後に登録された3つの調停結果の読み出しは、一時リクエスト記憶部351が記憶する入力順が最も新しい調停結果を3つ読み出すことで行う。次に、予測回路35の検索部355は、調停履歴記憶部353が記憶する過去の調停結果の中から、履歴検索用バッファ354が記憶する調停結果の組み合わせを検索する(ステップS3)。具体的には、一時リクエスト記憶部351に最後に登録された3つの調停結果が、登録された順に「入力ポート1−4」「入力ポート1−5」「入力ポート1−1」からの入力であることを示す場合、履歴検索用バッファ354にはこれらの情報が登録され、検索部355は、調停履歴記憶部353が「入力ポート1−4」「入力ポート1−5」「入力ポート1−1」の順番に記憶された調停結果を検索する。   Next, the prediction circuit 35 reads the last three arbitration results registered among the past arbitration results stored in the temporary request storage unit 351 of its own circuit, and records them in the history search buffer 354 (step S2). Here, the last three arbitration results registered are read by reading the three arbitration results with the newest input order stored in the temporary request storage unit 351. Next, the search unit 355 of the prediction circuit 35 searches for a combination of arbitration results stored in the history search buffer 354 from past arbitration results stored in the arbitration history storage unit 353 (step S3). Specifically, the last three arbitration results registered in the temporary request storage unit 351 are input from “input port 1-4”, “input port 1-5”, and “input port 1-1” in the order of registration. In the case of indicating that the information is registered in the history search buffer 354, the search unit 355 has the arbitration history storage unit 353 set to “input port 1-4”, “input port 1-5”, “input port 1”. The arbitration results stored in the order of “−1” are searched.

次に、検索部355は、ステップS3で実行した検索の結果、履歴検索用バッファ354が記憶する調停結果と同じ組み合わせが調停履歴記憶部353に記憶されているか否かを判定する(ステップS4)。但し、調停履歴記憶部353の末尾に記憶された調停結果は、必ず履歴検索用バッファ354が記憶する調停結果と一致するが、当該調停結果は検索結果から除外するものとする。   Next, the search unit 355 determines whether the same combination as the arbitration result stored in the history search buffer 354 is stored in the arbitration history storage unit 353 as a result of the search executed in step S3 (step S4). . However, the arbitration result stored at the end of the arbitration history storage unit 353 always matches the arbitration result stored in the history search buffer 354, but the arbitration result is excluded from the search result.

検索部355が、履歴検索用バッファ354が記憶する調停結果と同じ組み合わせが調停履歴記憶部353に記憶されていると判定した場合(ステップS4:YES)、予測部356は、検索部355が検索した調停結果の直後に調停履歴記憶部353に登録された調停結果を読み出す(ステップS5)。具体的には、予測部356は、検索部355が検索した調停結果に関連付けられた入力順を示すインデックス番号を読み出し、当該インデックス番号の次のインデックス番号に関連付けられた調停結果を、調停履歴記憶部353から読み出す。なお、検索部355によって複数の調停結果が検索された場合、予測部356は、それぞれの調停結果の直後に登録された調停結果をすべて読み出す。   When the search unit 355 determines that the same combination as the arbitration result stored in the history search buffer 354 is stored in the arbitration history storage unit 353 (step S4: YES), the prediction unit 356 is searched by the search unit 355. The arbitration result registered in the arbitration history storage unit 353 is read immediately after the arbitration result (step S5). Specifically, the prediction unit 356 reads an index number indicating the input order associated with the arbitration result searched by the search unit 355, and stores the arbitration result associated with the index number next to the index number. Read from the unit 353. When a plurality of mediation results are retrieved by the search unit 355, the prediction unit 356 reads all mediation results registered immediately after each mediation result.

次に、予測部356は、調停バッファ回路34から強度情報を読み出し、読み出した強度情報の発行元と、ステップS5で読み出した調停結果の発行元とが一致するものがあるか否かを判定する(ステップS6)。予測部356は、発行元が一致するものがあると判定した場合(ステップS6:YES)、調停回路36によって一致したリクエストパケットが選択されると予測する(ステップS7)。なお、発行元が一致するものが複数存在する場合、検索部355による検索結果のうち最も頻出する発行元からのリクエストパケットが選択されると予測し、当該予測したリクエストパケットを示す選択制御情報を生成する。   Next, the prediction unit 356 reads the strength information from the arbitration buffer circuit 34, and determines whether there is a match between the issuer of the read strength information and the issuer of the arbitration result read in step S5. (Step S6). If the prediction unit 356 determines that there is a match between issuers (step S6: YES), the prediction unit 356 predicts that the matching request packet is selected by the arbitration circuit 36 (step S7). When there are a plurality of items with the same issuer, it is predicted that a request packet from the most frequently issued issuer will be selected from the search results by the search unit 355, and selection control information indicating the predicted request packet is selected. Generate.

他方、ステップS4で検索部355が、履歴検索用バッファ354が記憶する調停結果と同じ組み合わせが調停履歴記憶部353に記憶されていないと判定した場合(ステップS4:NO)、または、ステップS6で予測部356が、読み出した強度情報と発行元が一致するリクエストパケットがないと判定した場合(ステップS6:NO)、予測部356は、ラウンドロビンアルゴリズムに基づいて、調停回路36によって選択されるリクエストパケットを予測し、当該予測したリクエストパケットを示す選択制御情報を生成する(ステップS8)。   On the other hand, when the search unit 355 determines in step S4 that the same combination as the arbitration result stored in the history search buffer 354 is not stored in the arbitration history storage unit 353 (step S4: NO), or in step S6 When the prediction unit 356 determines that there is no request packet whose issuer matches the read strength information (step S6: NO), the prediction unit 356 selects the request selected by the arbitration circuit 36 based on the round robin algorithm. The packet is predicted, and selection control information indicating the predicted request packet is generated (step S8).

ステップS7、またはステップS8で予測部356が選択制御情報を生成すると、調停回路36は、予測部356が生成した選択制御情報を読み取り(ステップS9)、選択制御情報が示すリクエストパケットを出力ポート6に転送させる接続命令をクロスバ4に出力する(ステップS10)。すなわち、図3に示すP0ステージとXTステージの処理を実行する。   When the prediction unit 356 generates selection control information in step S7 or step S8, the arbitration circuit 36 reads the selection control information generated by the prediction unit 356 (step S9), and outputs the request packet indicated by the selection control information to the output port 6 The connection command to be transferred to is output to the crossbar 4 (step S10). That is, the P0 stage and XT stage processes shown in FIG. 3 are executed.

また、ステップS9、S10の処理に平行して、調停回路36は、リクエスト入力バッファ32からリクエストパケット本体を読み出し、リクエストパケットに含まれる出力ポートのポート情報を読み取り(ステップS11)、読み取った出力ポートのポート情報に従って出力ポートを設定し(ステップS12)、リクエストパケットの調停処理を実行する(ステップS13)。すなわち、図3に示すX0ステージ、X1ステージ、X2ステージ、X3ステージを実行する。   In parallel with the processing of steps S9 and S10, the arbitration circuit 36 reads the request packet body from the request input buffer 32, reads the port information of the output port included in the request packet (step S11), and reads the read output port. The output port is set according to the port information (step S12), and the arbitration process of the request packet is executed (step S13). That is, the X0 stage, X1 stage, X2 stage, and X3 stage shown in FIG. 3 are executed.

ここで、調停回路36によるリクエストパケットの調停方法について説明する。
調停回路36は、リクエスト入力バッファ32に格納されているリクエストパケットに関連付けられた強度情報を、強度入力バッファ31から読み出す。そして、調停回路36は、強度情報が示す値が最も大きいリクエストパケットを選択する。また、最大の値を有する強度情報に関連付けられたリクエストパケットが複数ある場合、調停回路36は、ラウンドロビンアルゴリズムに基づいて、何れのリクエストパケットを選択するかを決定する。
Here, a request packet arbitration method by the arbitration circuit 36 will be described.
The arbitration circuit 36 reads the strength information associated with the request packet stored in the request input buffer 32 from the strength input buffer 31. Then, the arbitration circuit 36 selects a request packet having the largest value indicated by the strength information. When there are a plurality of request packets associated with the strength information having the maximum value, the arbitration circuit 36 determines which request packet to select based on the round robin algorithm.

図6は、リクエストパケットの調停方法を示す図である。
ここで、具体的にリクエストパケットの調停方法を説明する。図6に示すように、リクエスト入力バッファ32は、入力ポート1−1〜1−5から入力したそれぞれのリクエストパケットを記憶している。
入力ポート1−1から入力したリクエストパケット、及び入力ポート1−2から入力したリクエストパケットに関連付けられた強度情報は、「3」である。入力ポート1−3から入力したリクエストパケットに関連付けられた強度情報は、「5」である。入力ポート1−4から入力したリクエストパケットに関連付けられた強度情報は、「4」である。入力ポート1−5から入力したリクエストパケットに関連付けられた強度情報は、「1」である。
FIG. 6 is a diagram illustrating a request packet arbitration method.
Here, a request packet arbitration method will be specifically described. As illustrated in FIG. 6, the request input buffer 32 stores request packets input from the input ports 1-1 to 1-5.
The intensity information associated with the request packet input from the input port 1-1 and the request packet input from the input port 1-2 is “3”. The intensity information associated with the request packet input from the input port 1-3 is “5”. The intensity information associated with the request packet input from the input port 1-4 is “4”. The intensity information associated with the request packet input from the input port 1-5 is “1”.

この場合、調停回路36は、各強度情報の中から値が最大のものを抽出する。ここでは、入力ポート1−3から入力したリクエストパケットに関連付けられた強度情報「5」が最大である。したがって、調停回路36は、リクエスト入力バッファ32から、入力ポート1−3から入力したリクエストパケットを取り出し、当該リクエストパケットを調停結果として選択する。   In this case, the arbitration circuit 36 extracts the one having the maximum value from the intensity information. Here, the strength information “5” associated with the request packet input from the input port 1-3 is the maximum. Therefore, the arbitration circuit 36 extracts the request packet input from the input port 1-3 from the request input buffer 32, and selects the request packet as an arbitration result.

次の調停実行時には、入力ポート1−3から入力したリクエストパケットが既に取り出されているため、入力ポート1−4から入力したリクエストパケットに関連付けられた強度情報「4」が最大である。したがって、調停回路36は、リクエスト入力バッファ32から、入力ポート1−4から入力したリクエストパケットを取り出し、当該リクエストパケットを調停結果として選択する。   At the time of the next arbitration, since the request packet input from the input port 1-3 has already been extracted, the strength information “4” associated with the request packet input from the input port 1-4 is the maximum. Therefore, the arbitration circuit 36 extracts the request packet input from the input port 1-4 from the request input buffer 32, and selects the request packet as an arbitration result.

次の調停実行時には、入力ポート1−3及び入力ポート1−4から入力したリクエストパケットが既に取り出されているため、入力ポート1−1及び入力ポート1−2から入力したリクエストパケットに関連付けられた強度情報「3」が最大である。したがって、調停回路36は、ラウンドロビンアルゴリズムに基づいて、入力ポート1−1または入力ポート1−2から入力したリクエストパケットの何れかを取り出し、当該リクエストパケットを調停結果として選択する。図6では、入力ポート1−1から入力したリクエストパケットを選択している。   At the time of the next arbitration, since the request packet input from the input port 1-3 and the input port 1-4 has already been taken out, it is associated with the request packet input from the input port 1-1 and the input port 1-2. The intensity information “3” is the maximum. Therefore, the arbitration circuit 36 takes out one of the request packets input from the input port 1-1 or the input port 1-2 based on the round robin algorithm, and selects the request packet as an arbitration result. In FIG. 6, the request packet input from the input port 1-1 is selected.

調停回路36は、ステップS13で調停処理を実行すると、予測回路35から入力した選択制御情報が示すリクエストパケットと調停処理によって選択されたリクエストパケットとが一致するか否かを判定する(ステップS14)。
調停回路36は、リクエストパケットが一致しないと判定した場合(ステップS14:NO)、ステップS10で出力した接続命令の実行を中断させる中断命令、及びステップS13の調停処理によって選択されたリクエストパケットを出力ポート6に転送させる接続命令をクロスバ4に出力する(ステップS15)。
When executing the arbitration process in step S13, the arbitration circuit 36 determines whether or not the request packet indicated by the selection control information input from the prediction circuit 35 matches the request packet selected by the arbitration process (step S14). .
If the arbitration circuit 36 determines that the request packets do not match (step S14: NO), the arbitration circuit 36 outputs the interrupt command for interrupting the execution of the connection command output in step S10 and the request packet selected by the arbitration process in step S13. A connection command to be transferred to the port 6 is output to the crossbar 4 (step S15).

他方、ステップS14で調停回路36が、リクエストパケットが一致すると判定した場合(ステップS14:YES)、強度更新回路37は、各リクエストパケットに関連付けられた強度情報を更新し、強度出力バッファ38に記録する(ステップS16)。   On the other hand, if the arbitration circuit 36 determines in step S14 that the request packets match (step S14: YES), the strength update circuit 37 updates the strength information associated with each request packet and records it in the strength output buffer 38. (Step S16).

以下に、強度更新回路37による強度情報の更新方法を説明する。
図7は、強度情報の更新方法を示す図である。
強度更新回路37は、内部メモリに、入力ポート1のそれぞれに関連付けて、当該入力ポート1から入力したリクエストパケットが選択されると予測したときに予測が的中する度合いを示す的中度を記憶する。
次に、強度更新回路37は、調停回路36から、予測回路35が出力した選択制御情報が示すリクエストパケットと調停処理によって選択されたリクエストパケットとが一致するか否かを示す情報を入力する。強度更新回路37は、リクエストパケットが一致すると判定した場合、選択されたリクエストパケットに関連付けられた的中度を増加させ、それ以外の的中度を減少させて、内部メモリに上書きして記録する。図7に示す例によれば、選択されたリクエストパケットの的中度を「4」増加させ、それ以外のリクエストパケットの的中度を「1」減少させている。
他方、強度更新回路37は、リクエストパケットが一致しないと判定した場合、的中度の増減処理を行わない。
Hereinafter, a method for updating the strength information by the strength update circuit 37 will be described.
FIG. 7 is a diagram illustrating a method for updating the intensity information.
The strength update circuit 37 stores, in the internal memory, the target level indicating the level of prediction when the request packet input from the input port 1 is predicted to be selected in association with each of the input ports 1. To do.
Next, the strength update circuit 37 inputs information indicating whether or not the request packet indicated by the selection control information output from the prediction circuit 35 matches the request packet selected by the arbitration process from the arbitration circuit 36. When the strength update circuit 37 determines that the request packets match, the strength update circuit 37 increases the target level associated with the selected request packet, decreases the other target levels, and overwrites and records in the internal memory. . According to the example shown in FIG. 7, the target moderateness of the selected request packet is increased by “4”, and the target intermediate levels of other request packets are decreased by “1”.
On the other hand, if the strength update circuit 37 determines that the request packets do not match, the strength update circuit 37 does not perform the target increase / decrease process.

そして、強度更新回路37は、的中度の増減処理の後、当該的中度に基づいて強度情報の値を決定する。図7に示す例によれば、的中度が20未満の場合、強度情報が示す値を「1」とし、的中度が20以上40未満の場合、強度情報が示す値を「2」とし、的中度が40以上60未満の場合、強度情報が示す値を「3」とし、的中度が60以上80未満の場合、強度情報が示す値を「4」とし、的中度が80以上の場合、強度情報が示す値を「5」としている。
つまり、予測回路35による予測が的中した場合にのみ、強度情報の値が増加することとなる。そのため、調停回路36は、より予測が的中しやすいリクエストパケットを優先的に選択することとなる。したがって、予測回路35による予測が的中する確率が上昇し、調停装置3による調停処理を高速化することができる。
Then, the strength update circuit 37 determines the value of the strength information based on the target level after the target level increase / decrease process. According to the example shown in FIG. 7, when the target degree is less than 20, the value indicated by the strength information is “1”, and when the target degree is 20 or more and less than 40, the value indicated by the intensity information is “2”. When the target degree is 40 or more and less than 60, the value indicated by the strength information is “3”. When the target degree is 60 or more and less than 80, the value indicated by the strength information is “4” and the target degree is 80. In the above case, the value indicated by the intensity information is “5”.
That is, the intensity information value increases only when the prediction by the prediction circuit 35 is correct. Therefore, the arbitration circuit 36 preferentially selects request packets that are more likely to be predicted. Therefore, the probability that the prediction by the prediction circuit 35 is correct increases, and the arbitration processing by the arbitration device 3 can be speeded up.

また、的中度をそのまま強度情報として用いず、的中度に対して丸め処理を行って強度情報を生成するため、調停回路36による選択にランダム性を持たせることができる。これにより、実行するアプリケーションを、的中度の低い資源要求装置によるリクエストパケットの出力が多いアプリケーションに変更した場合にも、的中度の低い資源要求装置によるリクエストパケットの選択がなされる。そのため、調停処理が繰り返されることにより、当該資源要求装置の的中度が向上するため、効率的な選択ができるようになる。   In addition, since the strength information is generated by performing the rounding process on the target moderateness without using the target moderateness as it is as the strength information, the selection by the arbitration circuit 36 can be made random. As a result, even when the application to be executed is changed to an application that outputs a large number of request packets from the resource requesting device with a low target level, the request packet is selected by the resource requesting device with a low target level. Therefore, the arbitration process is repeated, so that the target level of the resource requesting device is improved, so that efficient selection can be performed.

ここで、具体的に強度情報の更新方法を説明する。図7に示すように、強度更新回路37の内部メモリは、入力ポート1−1〜1−5のそれぞれに関連付けて的中度を記憶している。
入力ポート1−1の的中度は、「19」である。入力ポート1−2の的中度は、「11」である。入力ポート1−3の的中度は、「13」である。入力ポート1−4の的中度は、「43」である。入力ポート1−5の的中度は、「14」である。
Here, a method for updating the intensity information will be specifically described. As shown in FIG. 7, the internal memory of the strength update circuit 37 stores a target level in association with each of the input ports 1-1 to 1-5.
The target intermediate level of the input port 1-1 is “19”. The target intermediate level of the input port 1-2 is “11”. The target intermediate level of the input ports 1-3 is “13”. The target intermediate level of the input ports 1-4 is “43”. The target intermediate level of the input port 1-5 is “14”.

そして、強度更新回路37は、調停回路36から、入力ポート1−4から入力したリクエストパケットを選択し、当該リクエストパケットが、予測回路35が出力した選択制御情報が示すリクエストパケットと一致することを示す情報を入力する。これにより、強度更新回路37は、入力ポート1−4に関連付けられた的中度を「4」増加させることで「47」に更新し、他の的中度を「1」ずつ減少させる。
次に、強度更新回路37は、的中度の値に応じて選択されたリクエストパケットに関連付けられた強度情報を更新する。つまり、強度更新回路37は、入力ポート1−4の的中度が「18」、すなわち20未満であるため、入力ポート1−4から入力したリクエストパケットの強度情報を「1」に更新する。
Then, the strength update circuit 37 selects the request packet input from the input port 1-4 from the arbitration circuit 36, and confirms that the request packet matches the request packet indicated by the selection control information output from the prediction circuit 35. Enter the information shown. As a result, the strength update circuit 37 increases the target level associated with the input port 1-4 by “4” to update it to “47”, and decreases the other target levels by “1”.
Next, the strength update circuit 37 updates the strength information associated with the request packet selected according to the target moderate value. That is, the strength update circuit 37 updates the strength information of the request packet input from the input port 1-4 to “1” because the target intermediate level of the input port 1-4 is “18”, that is, less than 20.

次に、強度更新回路37は、調停回路36から、入力ポート1−1から入力したリクエストパケットを選択し、当該リクエストパケットが、予測回路35が出力した選択制御情報が示すリクエストパケットと一致することを示す情報を入力する。これにより、強度更新回路37は、入力ポート1−1に関連付けられた的中度を「4」増加させることで「22」に更新し、他の的中度を「1」ずつ減少させる。
次に、強度更新回路37は、入力ポート1−1の的中度が「22」、すなわち20以上40未満であるため、入力ポート1−4から入力したリクエストパケットの強度情報を「2」に更新する。
Next, the strength update circuit 37 selects the request packet input from the input port 1-1 from the arbitration circuit 36, and the request packet matches the request packet indicated by the selection control information output from the prediction circuit 35. Enter the information indicating. As a result, the strength update circuit 37 increases the target level associated with the input port 1-1 by “4” to update it to “22”, and decreases the other target levels by “1”.
Next, the strength update circuit 37 sets the strength information of the request packet input from the input port 1-4 to “2” because the target intermediate level of the input port 1-1 is “22”, that is, 20 or more and less than 40. Update.

次に、強度更新回路37は、調停回路36から、入力ポート1−3から入力したリクエストパケットを選択し、当該リクエストパケットが、予測回路35が出力した選択制御情報が示すリクエストパケットと一致しなかったことを示す情報を入力する。この場合、強度更新回路37は、的中度及び強度情報の更新を行わない。   Next, the strength update circuit 37 selects the request packet input from the input port 1-3 from the arbitration circuit 36, and the request packet does not match the request packet indicated by the selection control information output from the prediction circuit 35. Enter the information indicating that In this case, the strength update circuit 37 does not update the target level and strength information.

次に、強度更新回路37は、調停回路36から、入力ポート1−5から入力したリクエストパケットを選択し、当該リクエストパケットが、予測回路35が出力した選択制御情報が示すリクエストパケットと一致することを示す情報を入力する。これにより、強度更新回路37は、入力ポート1−5に関連付けられた的中度を「4」増加させることで「16」に更新し、他の的中度を「1」ずつ減少させる。
次に、強度更新回路37は、入力ポート1−1の的中度が「16」、すなわち20未満であるため、入力ポート1−4から入力したリクエストパケットの強度情報を「1」に更新する。
このような処理を繰り返すことで、調停回路36は、より予測が的中しやすいリクエストパケットを優先的に選択することとなり、調停装置3は高速に調停処理を行うことができる。
Next, the strength update circuit 37 selects the request packet input from the input port 1-5 from the arbitration circuit 36, and the request packet matches the request packet indicated by the selection control information output from the prediction circuit 35. Enter the information indicating. As a result, the strength update circuit 37 updates the target level associated with the input ports 1-5 to “16” by increasing the target level by “4”, and decreases the other target levels by “1”.
Next, the strength update circuit 37 updates the strength information of the request packet input from the input port 1-4 to “1” because the target intermediate level of the input port 1-1 is “16”, that is, less than 20. .
By repeating such processing, the arbitration circuit 36 preferentially selects request packets that are more likely to be predicted, and the arbitration device 3 can perform arbitration processing at high speed.

ステップS15で、調停回路36が中断命令及び接続命令を出力した場合、またはステップS16で強度更新回路37が強度情報を更新した場合、調停回路36は、予測回路35の一時リクエスト記憶部351の末尾に調停結果を記録する(ステップS17)。次に、履歴登録部352は、一時リクエスト記憶部351に新たに記録された調停結果を、調停履歴記憶部353の末尾に記録する(ステップS18)。   When the arbitration circuit 36 outputs an interruption command and a connection command in step S15, or when the strength update circuit 37 updates the strength information in step S16, the arbitration circuit 36 adds the end of the temporary request storage unit 351 of the prediction circuit 35. The arbitration result is recorded in (Step S17). Next, the history registration unit 352 records the arbitration result newly recorded in the temporary request storage unit 351 at the end of the arbitration history storage unit 353 (step S18).

そして、予測回路35は、調停回路36が全てのリクエストパケットの調停を終了したか否かを判定する(ステップS19)。調停が終了したか否かの判定は、例えば、調停回路36が、リクエスト入力バッファ32にリクエストパケットが記憶されているか否かを判定することで実行することができる。ステップS13で、調停処理により選択されたリクエストパケットは、順次、リクエスト入力バッファ32から取り出されるため、調停が終了していないリクエストパケットが存在する場合、リクエスト入力バッファ32にはリクエストパケットが記憶されていることとなる。したがって、予測回路35は、リクエスト入力バッファ32にリクエストパケットが記憶されている場合に、リクエストパケットの調停を終了していないと判定する。   Then, the prediction circuit 35 determines whether or not the arbitration circuit 36 has completed the arbitration of all request packets (step S19). For example, the arbitration circuit 36 can determine whether the arbitration is completed by determining whether a request packet is stored in the request input buffer 32. In step S13, the request packets selected by the arbitration process are sequentially extracted from the request input buffer 32. Therefore, if there is a request packet that has not been arbitrated, the request packet is stored in the request input buffer 32. Will be. Therefore, when the request packet is stored in the request input buffer 32, the prediction circuit 35 determines that the arbitration of the request packet has not ended.

予測回路35が、調停が終了していないリクエストパケットが存在すると判定した場合(ステップS19:NO)、ステップS2に戻り、次のリクエストパケットの調停を行う。他方、予測回路35が、全てのリクエストパケットに対する調停が終了していると判定した場合(ステップS19:YES)、処理を終了する。   When the prediction circuit 35 determines that there is a request packet for which arbitration has not ended (step S19: NO), the process returns to step S2 to perform arbitration for the next request packet. On the other hand, when the prediction circuit 35 determines that the arbitration for all request packets has been completed (step S19: YES), the process ends.

このように、本実施形態によれば、調停回路36による調停の実行の前に、予測回路35が、選択されるリクエストパケットの予測を行い、クロスバ4に当該リクエストパケットを出力させる接続命令を出力する。これにより、調停装置3は、調停処理の1サイクルあたりの実行処理内容を増加させずに、効率的なリクエストパケットの選択を行うことができる。   As described above, according to the present embodiment, before the arbitration circuit 36 executes the arbitration, the prediction circuit 35 predicts the selected request packet and outputs a connection command for causing the crossbar 4 to output the request packet. To do. As a result, the arbitrating device 3 can efficiently select a request packet without increasing the execution process content per cycle of the arbitration process.

以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
例えば、本実施形態では、ステップS4で検索部355が、履歴検索用バッファ354が記憶する調停結果と同じ組み合わせが調停履歴記憶部353に記憶されていないと判定した場合、または、ステップS6で予測部356が、読み出した強度情報と発行元が一致するリクエストパケットがないと判定した場合に、予測部356が、ラウンドロビンアルゴリズムに基づいて、調停回路36によって選択されるリクエストパケットを予測する場合を説明したが、これに限られず、例えば、リクエストパケットをランダムに選択し、選択したリクエストパケットを、調停回路36によって選択されると予測されるリクエストパケットとしても良い。
As described above, the embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to the above, and various design changes and the like can be made without departing from the scope of the present invention. It is possible to
For example, in this embodiment, when the search unit 355 determines in step S4 that the same combination as the arbitration result stored in the history search buffer 354 is not stored in the arbitration history storage unit 353, or prediction is performed in step S6. A case where the prediction unit 356 predicts a request packet selected by the arbitration circuit 36 based on a round-robin algorithm when the unit 356 determines that there is no request packet whose issuer matches the read strength information. Although described above, the present invention is not limited to this. For example, a request packet may be selected at random, and the selected request packet may be a request packet predicted to be selected by the arbitration circuit 36.

また、本実施形態では、調停回路36が調停処理を行う際、最大の値を有する強度情報に関連付けられたリクエストパケットが複数あるとき、調停回路36は、ラウンドロビンアルゴリズムに基づいて、何れのリクエストパケットを選択するかを決定する場合を用いて説明したが、これに限られず、例えば、調停回路36は、リクエストパケットをランダムに選択しても良い。   In the present embodiment, when the arbitration circuit 36 performs the arbitration process, when there are a plurality of request packets associated with the strength information having the maximum value, the arbitration circuit 36 determines which request based on the round robin algorithm. The case of determining whether to select a packet has been described, but the present invention is not limited to this. For example, the arbitration circuit 36 may select a request packet at random.

また、本実施形態では、資源要求装置がリクエストパケットに強度情報を付与してクロスバ調停装置に出力する場合を説明したが、これに限られず、例えば、資源要求装置は、強度情報を含まないリクエストパケットをクロスバ調停装置に入力し、調停装置3が入力ポート1の識別情報に関連付けて強度情報を格納する強度情報記憶部を備えておくことで、調停装置3の調停回路36は、当該強度情報記憶部から読み出した強度情報に基づいて調停処理を行っても、本実施形態と同様の効果を得ることができる。   Further, in the present embodiment, the case where the resource requesting device gives strength information to the request packet and outputs the request packet to the crossbar arbitration device is described. However, the present invention is not limited to this. The arbitration circuit 36 of the arbitration device 3 includes the strength information storage unit that inputs the packet to the crossbar arbitration device, and the arbitration device 3 stores the strength information in association with the identification information of the input port 1. Even if the arbitration process is performed based on the intensity information read from the storage unit, the same effect as in the present embodiment can be obtained.

また、本実施形態では、ステップS2で、予測回路35の履歴検索用バッファ354が、一時リクエスト記憶部351の末尾に記憶された3つの調停履歴を記憶する場合を説明したが、これに限られず、調停履歴を4つ以上記憶しても良いし、1つ乃至2つ記憶しても良い。   In the present embodiment, the case has been described where the history search buffer 354 of the prediction circuit 35 stores the three arbitration histories stored at the end of the temporary request storage unit 351 in step S2, but the present invention is not limited thereto. Four or more arbitration histories may be stored, or one or two may be stored.

上述の調停装置3は内部に、コンピュータシステムを有している。そして、上述した各回路の動作は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。   The arbitration device 3 described above has a computer system inside. The operation of each circuit described above is stored in a computer-readable recording medium in the form of a program, and the above processing is performed by the computer reading and executing the program. Here, the computer-readable recording medium means a magnetic disk, a magneto-optical disk, a CD-ROM, a DVD-ROM, a semiconductor memory, or the like. Alternatively, the computer program may be distributed to the computer via a communication line, and the computer that has received the distribution may execute the program.

また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。   The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, and what is called a difference file (difference program) may be sufficient.

1、1−1〜1−5…入力ポート 2、2−1〜2−5…入力側バッファ部 3…調停装置 4…クロスバ 5、5−1〜5−5…出力側バッファ部 6、6−1〜6−5…出力ポート 21…入力バッファ 22…入力側FIFOバッファ制御回路 23…FIFOバッファ 24…出力側FIFOバッファ制御回路 25…出力バッファ 31、31−1〜31−5…強度入力バッファ 32…リクエスト入力バッファ 33…バッファ登録回路 34…調停バッファ回路 35…予測回路 36…調停回路 37…強度更新回路 38、38−1〜38−5…強度出力バッファ 351…一時リクエスト記憶部 352…履歴登録部 353…調停履歴記憶部 354…履歴検索用バッファ 355…検索部 356…予測部   DESCRIPTION OF SYMBOLS 1, 1-1 to 1-5 ... Input port 2, 2-1 to 2-5 ... Input side buffer part 3 ... Arbitration apparatus 4 ... Crossbar 5, 5-1 to 5-5 ... Output side buffer part 6, 6 -1-6-5 ... output port 21 ... input buffer 22 ... input side FIFO buffer control circuit 23 ... FIFO buffer 24 ... output side FIFO buffer control circuit 25 ... output buffer 31, 31-1 to 31-5 ... intensity input buffer 32 ... Request input buffer 33 ... Buffer registration circuit 34 ... Arbitration buffer circuit 35 ... Prediction circuit 36 ... Arbitration circuit 37 ... Strength update circuit 38, 38-1 to 38-5 ... Strength output buffer 351 ... Temporary request storage unit 352 ... History Registration unit 353 ... arbitration history storage unit 354 ... history search buffer 355 ... search unit 356 ... prediction unit

Claims (5)

複数の資源要求装置から発行される、当該資源要求装置による計算資源の使用の要求を示す資源要求の調停を行い、前記資源要求装置と前記計算資源とを接続するクロスバを制御する調停装置であって、
複数の前記資源要求装置から資源要求の入力を受け付ける入力部と、
前記入力部が同一の前記計算資源に対する資源要求の中から1つを選択し、選択された資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力する調停部と、
前記調停部による処理を実行する前に、前記調停部によって選択される資源要求を予測し、当該資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力する予測部と、
前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、前記クロスバに対して前記予測部による接続命令の実行を中断させる中断命令を出力する中断部と
過去の処理において前記調停部が選択した資源要求を選択した順に調停履歴記憶部に登録する履歴登録部と
を備え、
前記調停部は、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが同一である場合に、前記クロスバに対する前記接続命令の出力を行わず、
前記予測部は、前記調停部による最後の所定の個数の資源要求を選択した順と同じ順に、前記調停履歴記憶部に記憶されている資源要求の直後に登録された資源要求を、前記調停部によって選択される資源要求として予測する
ことを特徴とする調停装置。
An arbitration device that arbitrates resource requests issued from a plurality of resource requesting devices and that indicates requests for use of computing resources by the resource requesting devices, and controls a crossbar that connects the resource requesting devices and the computing resources. And
An input unit that receives input of resource requests from a plurality of the resource requesting devices;
An arbitration unit for selecting one of resource requests for the same computing resource by the input unit and outputting a connection command for outputting the selected resource request to a computing resource to which the resource request is issued; ,
Before executing the processing by the arbitration unit, a prediction unit that predicts a resource request selected by the arbitration unit and outputs a connection instruction to the crossbar to output the resource request to a calculation resource to which the resource request is issued. When,
When the resource request selected by the arbitration unit is different from the resource request predicted by the prediction unit, an interruption unit that outputs an interruption command for interrupting execution of the connection command by the prediction unit to the crossbar ;
A history registration unit for registering in the arbitration history storage unit in the order in which the resource requests selected by the arbitration unit in the past processing are selected ;
The arbitration unit does not output the connection command to the crossbar when the resource request selected by the arbitration unit and the resource request predicted by the prediction unit are the same ,
The prediction unit includes resource requests registered immediately after resource requests stored in the arbitration history storage unit in the same order as the last predetermined number of resource requests selected by the arbitration unit. An arbitration device that predicts a resource request selected by
複数の資源要求装置から発行される、当該資源要求装置による計算資源の使用の要求を示す資源要求の調停を行い、前記資源要求装置と前記計算資源とを接続するクロスバを制御する調停装置であって、
複数の前記資源要求装置から資源要求の入力を受け付ける入力部と、
前記入力部が同一の前記計算資源に対する資源要求の中から1つを選択し、選択された資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力する調停部と、
前記調停部による処理を実行する前に、前記調停部によって選択される資源要求を予測し、当該資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力する予測部と、
前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、前記クロスバに対して前記予測部による接続命令の実行を中断させる中断命令を出力する中断部と、
前記資源要求装置ごとに、過去の処理において、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが同一となる度合いを示す強度情報を算出する強度情報算出部
を備え、
前記調停部は、前記強度情報算出部が算出した強度情報に基づいて、選択する資源要求を決定し、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが同一である場合に、前記クロスバに対する前記接続命令の出力を行わない
ことを特徴とする調停装置。
An arbitration device that arbitrates resource requests issued from a plurality of resource requesting devices and that indicates requests for use of computing resources by the resource requesting devices, and controls a crossbar that connects the resource requesting devices and the computing resources. And
An input unit that receives input of resource requests from a plurality of the resource requesting devices;
An arbitration unit for selecting one of resource requests for the same computing resource by the input unit and outputting a connection command for outputting the selected resource request to a computing resource to which the resource request is issued; ,
Before executing the processing by the arbitration unit, a prediction unit that predicts a resource request selected by the arbitration unit and outputs a connection instruction to the crossbar to output the resource request to a calculation resource to which the resource request is issued. When,
When the resource request selected by the arbitration unit is different from the resource request predicted by the prediction unit, an interruption unit that outputs an interruption command for interrupting execution of the connection command by the prediction unit to the crossbar;
Wherein each resource requesting device, in the past the process, and a strength information calculation unit for calculating a strength information indicating the degree of resource requests and said prediction unit and the resource request the arbitration unit selects predicts are the same,
The arbitration unit determines a resource request to be selected based on the strength information calculated by the strength information calculation unit, and the resource request selected by the arbitration unit and the resource request predicted by the prediction unit are the same In addition, the arbitration device does not output the connection command to the crossbar .
複数の資源要求装置から発行される、当該資源要求装置による計算資源の使用の要求を示す資源要求の調停を行い、前記資源要求装置と前記計算資源とを接続するクロスバを制御する調停装置を用いた調停方法であって、
入力部は、複数の前記資源要求装置から資源要求の入力を受け付け、
調停部は、前記入力部が同一の前記計算資源に対する資源要求の中から1つを選択し、
予測部は、前記調停部による処理を実行する前に、前記調停部によって選択される資源要求を予測し、当該資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力し、
中断部は、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、前記クロスバに対して前記予測部による接続命令の実行を中断させる中断命令を出力し、
履歴登録部は、過去の処理において前記調停部が選択した資源要求を選択した順に調停履歴記憶部に登録し、
前記調停部は、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、選択された資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力し、
前記予測部は、前記調停部による最後の所定の個数の資源要求を選択した順と同じ順に、前記調停履歴記憶部に記憶されている資源要求の直後に登録された資源要求を、前記調停部によって選択される資源要求として予測する
ことを特徴とする調停方法。
Uses an arbitration device that arbitrates resource requests issued by a plurality of resource requesting devices and indicates a request for use of the computing resource by the resource requesting device, and controls a crossbar connecting the resource requesting device and the computing resource. The mediation method,
The input unit receives input of resource requests from the plurality of resource requesting devices,
The arbitration unit selects one of the resource requests for the calculation resources having the same input unit,
The prediction unit predicts a resource request selected by the arbitration unit before executing the processing by the arbitration unit, and outputs a connection instruction to the crossbar to output the resource request to a calculation resource to which the resource request is issued. Output,
The interruption unit, when the resource request selected by the arbitration unit and the resource request predicted by the prediction unit are different, outputs an interruption command to interrupt the execution of the connection command by the prediction unit to the crossbar,
The history registration unit registers the resource request selected by the arbitration unit in the past processing in the order of selection in the arbitration history storage unit,
The arbitration unit, when the resource request selected by the arbitration unit and the resource request predicted by the prediction unit are different, outputs a connection instruction to output the selected resource request to a calculation resource to which the resource request is issued. Output to the crossbar ,
The prediction unit includes resource requests registered immediately after resource requests stored in the arbitration history storage unit in the same order as the last predetermined number of resource requests selected by the arbitration unit. An arbitration method characterized by predicting as a resource request selected by .
複数の資源要求装置から発行される、当該資源要求装置による計算資源の使用の要求を示す資源要求の調停を行い、前記資源要求装置と前記計算資源とを接続するクロスバを制御する調停装置を用いた調停方法であって、
入力部は、複数の前記資源要求装置から資源要求の入力を受け付け、
調停部は、前記入力部が同一の前記計算資源に対する資源要求の中から1つを選択し、選択された資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力し、
予測部は、前記調停部による処理を実行する前に、前記調停部によって選択される資源要求を予測し、当該資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力し、
中断部は、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、前記クロスバに対して前記予測部による接続命令の実行を中断させる中断命令を出力し、
強度情報算出部は、前記資源要求装置ごとに、過去の処理において、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが同一となる度合いを示す強度情報を算出し、
前記調停部は、前記強度情報算出部が算出した強度情報に基づいて、選択する資源要求を決定し、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、選択された資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力する
ことを特徴とする調停方法
Uses an arbitration device that arbitrates resource requests issued by a plurality of resource requesting devices and indicates a request for use of the computing resource by the resource requesting device, and controls a crossbar connecting the resource requesting device and the computing resource. The mediation method,
The input unit receives input of resource requests from the plurality of resource requesting devices,
The arbitration unit selects one of the resource requests for the same computing resource by the input unit, and outputs a connection command for outputting the selected resource request to the computing resource to which the resource request is issued to the crossbar. And
The prediction unit predicts a resource request selected by the arbitration unit before executing the processing by the arbitration unit, and outputs a connection instruction to the crossbar to output the resource request to a calculation resource to which the resource request is issued. Output,
The interruption unit, when the resource request selected by the arbitration unit and the resource request predicted by the prediction unit are different, outputs an interruption command to interrupt the execution of the connection command by the prediction unit to the crossbar,
The strength information calculation unit calculates strength information indicating the degree to which the resource request selected by the arbitration unit and the resource request predicted by the prediction unit are the same in the past processing for each resource requesting device,
The arbitration unit determines a resource request to be selected based on the strength information calculated by the strength information calculation unit, and when the resource request selected by the arbitration unit and the resource request predicted by the prediction unit are different, An arbitration method comprising: outputting to the crossbar a connection command for outputting the selected resource request to a calculation resource to which the resource request is issued.
複数の資源要求装置から発行される、当該資源要求装置による計算資源の使用の要求を示す資源要求の調停を行い、前記資源要求装置と前記計算資源とを接続するクロスバを制御する調停装置を、
複数の前記資源要求装置から資源要求の入力を受け付ける入力部、
前記入力部が同一の前記計算資源に対する資源要求の中から1つを選択し、選択された資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力する調停部、
前記調停部による処理を実行する前に、前記調停部によって選択される資源要求を予測し、当該資源要求を当該資源要求の発行先の計算資源へ出力させる接続命令を前記クロスバに出力する予測部、
前記調停部が選択した資源要求と前記予測部が予測した資源要求とが異なる場合に、前記クロスバに対して前記予測部による接続命令の実行を中断させる中断命令を出力する中断部
過去の処理において前記調停部が選択した資源要求を選択した順に調停履歴記憶部に登録する履歴登録部
として機能させ、
前記調停部は、前記調停部が選択した資源要求と前記予測部が予測した資源要求とが同一である場合に、前記クロスバに対する前記接続命令の出力を行わず、
前記予測部は、前記調停部による最後の所定の個数の資源要求を選択した順と同じ順に、前記調停履歴記憶部に記憶されている資源要求の直後に登録された資源要求を、前記調停部によって選択される資源要求として予測する
ことを特徴とするプログラム。
An arbitration device that issues a resource request indicating a request for use of a computing resource by the resource requesting device issued from a plurality of resource requesting devices, and controls a crossbar that connects the resource requesting device and the computing resource,
An input unit for receiving input of resource requests from a plurality of the resource requesting devices;
An arbitration unit that selects one of resource requests for the same computing resource by the input unit and outputs a connection command for outputting the selected resource request to a computing resource to which the resource request is issued;
Before executing the processing by the arbitration unit, a prediction unit that predicts a resource request selected by the arbitration unit and outputs a connection instruction to the crossbar to output the resource request to a calculation resource to which the resource request is issued. ,
When the resource request selected by the arbitration unit is different from the resource request predicted by the prediction unit , an interruption unit that outputs an interruption command for interrupting execution of a connection command by the prediction unit to the crossbar ;
Function as a history registration unit that registers in the arbitration history storage unit in the order of selection of resource requests selected by the arbitration unit in the past processing ;
The arbitration unit does not output the connection command to the crossbar when the resource request selected by the arbitration unit and the resource request predicted by the prediction unit are the same ,
The prediction unit includes resource requests registered immediately after resource requests stored in the arbitration history storage unit in the same order as the last predetermined number of resource requests selected by the arbitration unit. A program characterized by predicting as a resource request selected by .
JP2009281451A 2009-12-11 2009-12-11 Arbitration device, arbitration method, and program Expired - Fee Related JP5544856B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009281451A JP5544856B2 (en) 2009-12-11 2009-12-11 Arbitration device, arbitration method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009281451A JP5544856B2 (en) 2009-12-11 2009-12-11 Arbitration device, arbitration method, and program

Publications (2)

Publication Number Publication Date
JP2011123715A JP2011123715A (en) 2011-06-23
JP5544856B2 true JP5544856B2 (en) 2014-07-09

Family

ID=44287536

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009281451A Expired - Fee Related JP5544856B2 (en) 2009-12-11 2009-12-11 Arbitration device, arbitration method, and program

Country Status (1)

Country Link
JP (1) JP5544856B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2522477B (en) * 2014-01-28 2020-06-17 Advanced Risc Mach Ltd Speculative interrupt signalling

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8638665B2 (en) * 2008-04-30 2014-01-28 Nec Corporation Router, information processing device having said router, and packet routing method
JP2010108275A (en) * 2008-10-30 2010-05-13 Mitsubishi Electric Corp Bus control device

Also Published As

Publication number Publication date
JP2011123715A (en) 2011-06-23

Similar Documents

Publication Publication Date Title
US11836524B2 (en) Memory interface for a multi-threaded, self-scheduling reconfigurable computing fabric
EP4022450B1 (en) Direct memory access architecture with multi-level multi-striding
JP4339907B2 (en) Optimal code generation method and compiling device for multiprocessor
US7024543B2 (en) Synchronising pipelines in a data processing apparatus
CN104111818B (en) For the processor of batch thread process, processing method and code generating device
CN113900712B (en) Instruction processing method, instruction processing device and storage medium
US20210097396A1 (en) Neural network training in a distributed system
US8780914B2 (en) Parallel processing of network packets
CN118796389A (en) Reduction scheduling method and device
CN111061485A (en) Task processing method, compiler, scheduling server, and medium
US11816061B2 (en) Dynamic allocation of arithmetic logic units for vectorized operations
CN113094155B (en) Task scheduling method and device under Hadoop platform
JP5544856B2 (en) Arbitration device, arbitration method, and program
JPH06131181A (en) Hierarchical parallel processing type central processing unit
US20190057093A1 (en) Ranking items
CN120540867A (en) A hypergraph neural network reasoning method and system
JP6256088B2 (en) Vector processor, information processing apparatus, and overtaking control method
JP2024528421A (en) Data processing apparatus and method for processing stalled data - Patents.com
CN113722071A (en) Data processing method, data processing apparatus, electronic device, storage medium, and program product
JP2503984B2 (en) Information processing device
CN114327643B (en) Machine instruction preprocessing method, electronic device and computer-readable storage medium
JP3956652B2 (en) Processor system
JP6926681B2 (en) Arithmetic processing unit and control method of arithmetic processing unit
JP3795055B1 (en) Value prediction apparatus, multiprocessor system, and value prediction method
CN120216024A (en) A computing chip, computing method, computing device, storage medium and program product

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121114

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131011

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131022

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140324

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140415

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140428

R150 Certificate of patent or registration of utility model

Ref document number: 5544856

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees