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
JP6207213B2 - Information processing device - Google Patents
[go: Go Back, main page]

JP6207213B2 - Information processing device - Google Patents

Information processing device Download PDF

Info

Publication number
JP6207213B2
JP6207213B2 JP2013090790A JP2013090790A JP6207213B2 JP 6207213 B2 JP6207213 B2 JP 6207213B2 JP 2013090790 A JP2013090790 A JP 2013090790A JP 2013090790 A JP2013090790 A JP 2013090790A JP 6207213 B2 JP6207213 B2 JP 6207213B2
Authority
JP
Japan
Prior art keywords
unit
processing
data
processing data
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.)
Active
Application number
JP2013090790A
Other languages
Japanese (ja)
Other versions
JP2014215724A (en
JP2014215724A5 (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2013090790A priority Critical patent/JP6207213B2/en
Publication of JP2014215724A publication Critical patent/JP2014215724A/en
Publication of JP2014215724A5 publication Critical patent/JP2014215724A5/ja
Application granted granted Critical
Publication of JP6207213B2 publication Critical patent/JP6207213B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)

Description

本発明は、外部からの要求に応じて処理データを提供する、情報処理装置に関する。   The present invention relates to an information processing apparatus that provides processing data in response to an external request.

従来、コンピュータ分野では、或る処理を行うに当たり、その一部をハードウェア(以下、H/Wと表記)で実行し、CPUの処理効率や機器全体の処理速度を向上させるといったことがなされてきた。ここでいう或る処理とは、以下の3つのものが考えられる。   Conventionally, in the computer field, when performing certain processing, a part of the processing is executed by hardware (hereinafter referred to as H / W) to improve the processing efficiency of the CPU and the processing speed of the entire device. It was. The following three processes can be considered as a certain process here.

1つ目は、メモリ領域等、各種リソースの管理処理である。ここで、ID管理機能の具備されたH/Wを使用したメモリリソース管理例について説明する。論理的または物理的に分散されたメモリ領域の各々にIDを、H/WまたはCPUにより付与された状態において、H/Wは該当するID(に対応づけられたメモリ領域)が使用されているか否かを一元管理する。CPUがID(に対応づけられたメモリ領域)を使用したい場合は、H/WにIDの取得要求を送信する。取得要求を受信したH/Wは、H/WからCPUに対し、まだ使用されていないIDを送信することにより、CPUに対してID(に対応づけられたメモリ領域)の使用許可を与える。併せて、H/Wは、該当IDを他のCPUに対して使用禁止状態として保持しておく。また、CPUが使用しているメモリを開放したい場合は、該メモリに対応づけられたIDの解放要求をH/W対して送信する。受信したH/Wは、該IDを再び使用可能IDとして管理する。   The first is management processing of various resources such as a memory area. Here, an example of memory resource management using H / W having an ID management function will be described. Whether an ID is assigned to each of the logically or physically distributed memory areas by the H / W or CPU, and whether the corresponding ID (memory area corresponding to the H / W) is used Centrally manage whether or not. When the CPU wants to use the ID (memory area associated with the ID), it sends an ID acquisition request to the H / W. The H / W that has received the acquisition request transmits an ID that has not been used from the H / W to the CPU, thereby giving the CPU permission to use the ID (memory area associated with the CPU). At the same time, the H / W holds the corresponding ID as a use-prohibited state for other CPUs. Further, when it is desired to release the memory used by the CPU, an ID release request associated with the memory is transmitted to the H / W. The received H / W manages the ID again as an available ID.

2つ目は、乱数生成処理である。CPUは、乱数生成をH/Wに要求し、H/Wは、CPUより高速に、また、よりランダム性の高い乱数を生成し、結果をCPUに返すという処理がある。   The second is random number generation processing. The CPU requests the H / W to generate a random number, and the H / W generates a random number having a higher randomness than the CPU and returns the result to the CPU.

3つ目は、タイマー処理である。タイマーのスタートをH/Wに通知し、一定時間経過後にH/Wにスタートからどの程度時間が経過したか、問い合わせるとH/Wから経過時間が返信されるといった処理である。   The third is timer processing. This is a process in which the start of the timer is notified to the H / W, and when an inquiry is made as to how much time has elapsed from the start to the H / W after a certain time has elapsed, the elapsed time is returned from the H / W.

上記3つの例のいずれにも当てはまることは、CPUは一度H/Wに対して要求を送信し、その後H/Wから所望のデータを応答として受信するという点である。   What is applicable to any of the above three examples is that the CPU once transmits a request to the H / W and then receives desired data from the H / W as a response.

資源の管理をするH/Wとして、特許文献1では、資源の仮予約要求を受け付ける資源管理装置について開示されている。仮予約要求を受理した資源管理装置は、仮予約識別情報を仮予約要求に対して応答方法について開示している。   As H / W for managing resources, Patent Document 1 discloses a resource management apparatus that accepts a temporary reservation request for resources. The resource management apparatus that has received the provisional reservation request discloses provisional reservation identification information as a response method to the provisional reservation request.

また、特許文献2では資源管理方法について開示されている。具体的にはクライアント・サーバシステムに展開されたソフトウェア・アプリケーション用の資源管理方法である。ある要求に適応するために必要とされる資源グループが、クライアント・コンピュータ上のローカルに格納されているかを判断し、ローカルに格納されていない場合に、サーバシステムから取得するといった方法について記載されている。   Patent Document 2 discloses a resource management method. Specifically, it is a resource management method for software applications developed in a client / server system. Describes how to determine whether a resource group required to adapt to a request is stored locally on the client computer, and if it is not stored locally, obtain it from the server system Yes.

また、特許文献3では、メモリリソースの管理方法について開示されている。データ処理装置において、使用するスペースの獲得要求に対応すべく、空スペースを確認し、該空スペースが充分に無い場合には、スペース獲得要求を待ち状態に置き、スペースが解放された時点で処理を行うようにする方法について記載されている。   Patent Document 3 discloses a memory resource management method. In the data processing device, in order to respond to the request for acquiring the space to be used, an empty space is confirmed. If there is not enough empty space, the space acquisition request is put in a wait state and processing is performed when the space is released. It describes how to do this.

特開2004−302748号公報JP 2004-302748 A 特表2003−536133号公報Special table 2003-536133 gazette 特開昭63−201826号公報JP-A-63-201826

H/Wで処理を実行し、結果をCPUが受け取るといった構成の場合、以下の課題がある。CPUが処理結果の取得要求をH/Wに送信した際、H/Wで処理結果が得られるまでに時間がかかる場合、CPUが待たされることにある。すると、CPUは次の処理に移行できない。たとえば、該処理結果が得られなくても他のすべき処理があるのであれば、CPUは速やかに次の処理に移行できることが望ましい。   In a configuration in which processing is executed by H / W and the result is received by the CPU, there are the following problems. When the CPU transmits a processing result acquisition request to the H / W, if it takes time until the processing result is obtained by the H / W, the CPU is waiting. Then, the CPU cannot shift to the next process. For example, it is desirable that the CPU can promptly move to the next process if there is another process to be performed even if the process result is not obtained.

この課題を解決するため、例えば本発明の情報処理装置は以下の構成を備える。すなわち、
情報処理装置であって、
所定の処理を実行する処理部と、
前記処理部と接続され、前記処理部による前記所定の処理によって得られた処理データを格納するメモリ部と、
クロック信号が供給されることで動作するバスと接続され、前記処理データを要求する要求部と、
前記バスと接続され、前記要求部により前記処理データが要求された際に、前記メモリ部に前記処理データが格納されている場合には当該処理データを含む応答信号を前記要求部へ送信し、前記メモリ部に前記処理データが格納されていない場合には当該処理データに代えて所定の値を含む応答信号を前記要求部へ送信する応答部とを有し、
前記メモリ部は、前記処理データの格納状態を制御部へ通知し、
前記制御部は、前記格納状態に基づいて、前記応答部に当該処理データを含む応答信号を前記要求部へ送信させるか、前記所定の値を含む応答信号を前記要求部へ送信させるかを制御することを特徴とする
In order to solve this problem, for example, an information processing apparatus of the present invention has the following configuration. That is,
An information processing apparatus,
A processing unit for executing a predetermined process;
A memory unit that is connected to the processing unit and stores processing data obtained by the predetermined processing by the processing unit;
Connected to a bus that operates when a clock signal is supplied, and a request unit that requests the processing data;
When the processing data is requested by the request unit when connected to the bus and the processing data is stored in the memory unit, a response signal including the processing data is transmitted to the request unit, A response unit that transmits a response signal including a predetermined value to the request unit instead of the process data when the processing data is not stored in the memory unit ;
The memory unit notifies the control unit of a storage state of the processing data;
The control unit controls whether to cause the response unit to transmit a response signal including the processing data to the request unit or to transmit a response signal including the predetermined value to the request unit based on the storage state. It is characterized by doing .

本発明によれは、少なくともバスを介しての処理データ取得の要求があった場合には、その要求に対する処理結果の処理データが得られるまでは、予め設定された疑似データを、処理の応答結果として出力することで、要求元が次の処理に速やかに移行させることができる。複数の要求元から、処理データ取得の要求を実行する場合であっても、1つの要求元が本装置のアクセスのためのバスを占有しないため、他の要求元も速やかに本装置をアクセスができる。   According to the present invention, when there is a request for obtaining processing data via at least the bus, the preset pseudo data is used as the processing response result until the processing data of the processing result corresponding to the request is obtained. As a result, the request source can promptly move to the next process. Even when processing data acquisition requests are executed from a plurality of request sources, one request source does not occupy the bus for accessing the apparatus, so other request sources can quickly access the apparatus. it can.

情報処理装置の全体ブロック図。1 is an overall block diagram of an information processing apparatus. 実施形態1における処理部の全体ブロック図。FIG. 2 is an overall block diagram of a processing unit in the first embodiment. 制御部のフローチャート。The flowchart of a control part. IF部及び、レジスタ部のフローチャート。The flowchart of IF part and a register part. 情報処理装置のタイミングチャート。6 is a timing chart of the information processing apparatus. 情報処理装置の全体ブロック図。1 is an overall block diagram of an information processing apparatus. 制御部の予約処理におけるブロック図。The block diagram in the reservation process of a control part. 実施形態における処理データ、疑似データの一覧表を示す図。The figure which shows the process data in an embodiment, and the list of pseudo data.

以下、本発明を適用した好適な実施形態を説明する。まず、全ての実施形態において共通となる部分について説明し、差異となる部分については各実施形態にて説明する。図1は、本発明の適用が可能な情報処理装置101のブロック図である。情報処理装置は、処理部107が具備されており処理部107から出力された処理データを、要求元からの要求に応じて提供する機能を有している。以下詳細に説明する。   Hereinafter, preferred embodiments to which the present invention is applied will be described. First, a common part in all the embodiments will be described, and a different part will be described in each embodiment. FIG. 1 is a block diagram of an information processing apparatus 101 to which the present invention can be applied. The information processing apparatus includes a processing unit 107 and has a function of providing processing data output from the processing unit 107 in response to a request from a request source. This will be described in detail below.

102は、Clock信号(クロック信号)である。情報処理装置101の各機能部はこのClock信号102の供給を受け、その立ち上がりエッジの検出をトリガに動作を行う。103は、Request信号である。要求元(CPU121乃至123)から情報処理装置101に対し、処理データの取得を要求する場合に、要求元は該信号を出力(‘1’にアサート)する。104は、Response信号である。要求元からRequest信号103を受け取ると、その応答として、Response信号104を出力(‘1’にアサート)する。105は、Response Dataである。要求元に対し、Response信号104を出力する際、同時に出力するデータである。   Reference numeral 102 denotes a Clock signal (clock signal). Each functional unit of the information processing apparatus 101 is supplied with the clock signal 102, and operates with the detection of the rising edge as a trigger. Reference numeral 103 denotes a Request signal. When the request source (CPU 121 to 123) requests the information processing apparatus 101 to acquire processing data, the request source outputs (asserts to “1”) the signal. Reference numeral 104 denotes a response signal. When the request signal 103 is received from the request source, the response signal 104 is output (asserted to “1”) as a response. Reference numeral 105 is Response Data. This data is output at the same time when the response signal 104 is output to the request source.

106は、本装置全体の制御を司る制御部である。情報処理装置101の各種機能部の状態を管理し制御を行うものである。詳細は後述(図3,4にて説明)する。107は、処理部である。情報処理装置106の固有機能を有する部分であり、要求元より取得要求のある処理データは、処理部107で生成される。処理部107は、制御部106に対し、処理部107のステータス(Unit Status信号114)を出力する。本説明では、Unit Statusは、処理部107の内部に処理データを格納しているか否かのステータス(Empty or Not Empty)を出力するものとする。また、処理部107の外部に対し、処理データ(処理結果)を送信する(FIFO Input Data117)場合、併せて処理データ出力通知信号(FIFO Input Enable信号116)を送信する。また、処理部107は、処理データの生成を行うか否かの決定の指針に、外部のステータス信号(FIFO Status信号115)を受け付ける構成となっている。処理部107具体的な例については、各実施形態1〜3にて説明する。   Reference numeral 106 denotes a control unit that controls the entire apparatus. It manages and controls the status of various functional units of the information processing apparatus 101. Details will be described later (described in FIGS. 3 and 4). Reference numeral 107 denotes a processing unit. Processing data that is a part having a unique function of the information processing apparatus 106 and that has an acquisition request from the request source is generated by the processing unit 107. The processing unit 107 outputs the status of the processing unit 107 (Unit Status signal 114) to the control unit 106. In this description, it is assumed that Unit Status outputs a status (Empty or Not Empty) indicating whether or not processing data is stored in the processing unit 107. When processing data (processing result) is transmitted to the outside of the processing unit 107 (FIFO Input Data 117), a processing data output notification signal (FIFO Input Enable signal 116) is also transmitted. The processing unit 107 is configured to accept an external status signal (FIFO Status signal 115) as a guideline for determining whether to generate processing data. Specific examples of the processing unit 107 will be described in the first to third embodiments.

108は、FIFO部である。処理部107からの処理データ(FIFO Input Data117)を受信する。また、制御部106からの指示(FIFO Output Enable)により、格納済み処理データを出力する(FIFO Output Data119)。また、FIFO部108は、FIFOの格納状態情報(FIFO Status信号115)を出力する機能を有する。具体的には、(1)Empty/(2)Not Empty(≠Full)/(3)Fullの3状態のいずれかを出力する。   Reference numeral 108 denotes a FIFO unit. Process data (FIFO Input Data 117) is received from the processing unit 107. Further, in accordance with an instruction (FIFO Output Enable) from the control unit 106, the stored processing data is output (FIFO Output Data 119). The FIFO unit 108 has a function of outputting FIFO storage status information (FIFO Status signal 115). Specifically, one of the three states (1) Empty / (2) Not Empty (≠ Full) / (3) Full is output.

109は、要求を受信する受信部並びに応答する応答部として機能するIF部である。要求元からの処理データ取得要求を受信し、要求元へ応答を返す機能を有する。応答(Response信号104)の制御は応答部110が担う。また、IF部111には、レジスタ部111が具備され、Response信号104が出力される時は、同時に、レジスタ部111に格納されたデータが出力される。IF部109は、レジスタ部111に格納されたデータ値(Reg Value112)を出力する機能を有する。また、IF部109は、IF部109の外部からレジスタ部111に入力すべきデータ(Reg In Data113)を受信する機能を有する。   Reference numeral 109 denotes an IF unit that functions as a receiving unit that receives a request and a response unit that responds. It has a function of receiving a processing data acquisition request from a request source and returning a response to the request source. The response unit 110 controls the response (Response signal 104). In addition, the IF unit 111 includes the register unit 111, and when the response signal 104 is output, data stored in the register unit 111 is output at the same time. The IF unit 109 has a function of outputting a data value (Reg Value 112) stored in the register unit 111. The IF unit 109 has a function of receiving data (Reg In Data 113) to be input to the register unit 111 from the outside of the IF unit 109.

IF部109の処理について、図4(b)を用いて詳細に説明する。図4(b)は、Response 信号104と、Response Data105の処理を示すフローチャートである。各々の信号/データは、Clock信号102の立ち上がり時に、所定の条件により状態変化を行う。Clock信号102の立ち上がりまでは、信号/データとも、前の状態を保持する(S409)。Clock信号102の立ち上がり時(S409でYes)、Request信号103の状態を確認する(S410)。このとき、Request信号103が、‘1’である場合には(S410でYes)、Response信号104を‘1’にし、応答を返す。同時に、Response Data105は、レジスタ部111で保持されているデータを出力する(S411)。Request信号103が‘1’で無い場合(S410でNo)、Response信号104を‘0’にし、同時にResponse Data105をHighインピーダンスにしておく(S412)。これは万が一にResponse Data105の接続先がデータを出力してきても、出力が衝突することによる機器破損を防ぐためである。以上が、図4の説明である。上記からも容易に理解できるように、I/F部109がRequest信号103が、‘1’である場合には、必ずS411の処理を行うので、処理データの有無とは無関係にResponse信号104を‘1’にし、応答を返すことになる。   The processing of the IF unit 109 will be described in detail with reference to FIG. FIG. 4B is a flowchart showing the processing of the response signal 104 and the response data 105. Each signal / data undergoes a state change according to a predetermined condition when the clock signal 102 rises. Until the rising edge of the clock signal 102, the signal / data is held in the previous state (S409). When the clock signal 102 rises (Yes in S409), the state of the Request signal 103 is confirmed (S410). At this time, if the Request signal 103 is “1” (Yes in S410), the Response signal 104 is set to “1” and a response is returned. At the same time, the Response Data 105 outputs the data held in the register unit 111 (S411). When the Request signal 103 is not “1” (No in S410), the Response signal 104 is set to “0”, and at the same time, the Response Data 105 is set to High impedance (S412). This is to prevent damage to the device due to output collision even if the connection destination of the Response Data 105 outputs data. The above is the description of FIG. As can be easily understood from the above, since the I / F unit 109 always performs the process of S411 when the request signal 103 is “1”, the response signal 104 is output regardless of the presence or absence of the processing data. Set to '1' to return a response.

図1の説明に戻る。110は、スイッチ部である。このスイッチ部110は、I/F部109内のレジスタ部111に出力するデータを、制御部106からの指示(Data Select信号120)を元に選択して、出力する機能を有する。選択は、処理部107より出力された処理データ、または、処理データではない疑似データから選択する。疑似データはスイッチ部110に格納されている。情報処理装置101では、処理部107が処理データの生成ができない状態で、かつ、FIFO部108にも処理データが入っていない場合に、Empty Code(エンプティコード)を疑似データとして出力するものとする。また、FIFO部108にデータはないが、処理部107にて処理中で有る場合には、Busy Code(ビジーコード)を疑似データとして出力するものとする。以上が、情報処理装置101の概要である。   Returning to the description of FIG. Reference numeral 110 denotes a switch unit. The switch unit 110 has a function of selecting and outputting data to be output to the register unit 111 in the I / F unit 109 based on an instruction (Data Select signal 120) from the control unit 106. The selection is made from processing data output from the processing unit 107 or pseudo data that is not processing data. The pseudo data is stored in the switch unit 110. In the information processing apparatus 101, when the processing unit 107 cannot generate processing data and the FIFO unit 108 does not contain processing data, the empty code (empty code) is output as pseudo data. . In addition, when there is no data in the FIFO unit 108, but processing is being performed in the processing unit 107, the Busy Code (busy code) is output as pseudo data. The above is the outline of the information processing apparatus 101.

次に、情報処理装置101に対する処理要求を行う要求元について説明する。121、122、123は、CPUである。本明細書では、3つのCPUが、情報処理装置101への要求元となる場合を例にして説明する。CPU121乃至123と、情報処理装置101は、Bus124で接続されるものとする。以上が、図1に関しての説明である。   Next, a request source that makes a processing request to the information processing apparatus 101 will be described. Reference numerals 121, 122, and 123 denote CPUs. In this specification, a case where three CPUs are request sources to the information processing apparatus 101 will be described as an example. The CPUs 121 to 123 and the information processing apparatus 101 are connected by a bus 124. The above is the description regarding FIG.

次に、情報処理装置101に具備される制御部106について説明する。制御部106の主な処理は2つある。一つ目は、FIFOからのデータ出力指示、すなわちFIFO Output Enable信号118の制御である。二つ目は、レジスタ部111へ入力するデータの選択、すなわち、Data Select信号120の制御である。各々の制御は、レジスタ部111に格納されているデータと、処理部107と、FIFO部108の状態を監視することにより行われる。すなわち、Reg Value112と、Unit Status114と、FIFO Status115の監視である。二つの処理について、図3(a)、(b)を用いて説明する。   Next, the control unit 106 provided in the information processing apparatus 101 will be described. There are two main processes of the control unit 106. The first is the data output instruction from the FIFO, that is, the control of the FIFO Output Enable signal 118. The second is the selection of data to be input to the register unit 111, that is, the control of the Data Select signal 120. Each control is performed by monitoring the state of the data stored in the register unit 111, the processing unit 107, and the FIFO unit 108. That is, monitoring of Reg Value 112, Unit Status 114, and FIFO Status 115 is performed. The two processes will be described with reference to FIGS. 3 (a) and 3 (b).

まず、FIFO Output Enable信号118の制御について図3(a)を用いて説明する。同図は、FIFO Output Enable信号118の処理を示すフローチャートである。FIFO Output Enable信号118もClock信号102の立ち上がり時(S301でYes)、所定の条件により状態が変化するものである。Clock信号102が立ち上がっていることを条件に、以下に説明する(1)〜(3)の全ての条件がそろったときに、FIFO Output Enable信号118を‘1’にし、FIFO部108より処理データの出力を要求する(S305)。(1)〜(3)の条件のうち、いずれかの条件を満たさない時には、‘0’として、処理データの出力を促さない(S306)。以下に、条件(1)〜(3)について説明する。
(1)FIFO Status信号115がEmptyではない(S302でNo)。FIFO Status信号115がEmptyの時は、FIFO部108より処理データを取り出すことができない状態なので処理データの出力を要求しない。
(2)Reg Value信号112が、Emptyまたは、Busyである(S303でYes)。Reg Value112が、EmptyでもBusyでもない、処理データである場合は、既にデータを渡す準備ができているので、FIFO部108へデータの出力を促さない。ただし、レジスタ部111に、常に処理部107からの最新の処理データが入っていることが望ましいケース(実施形態3にて説明)に関しては、この限りではない。
(3)FIFO Output Enable信号118が‘0’である(S304)。前にFIFO Output Enable信号118が、‘1’である場合は、既にFIFO部108から処理データが出力されている状態なので、一度を停止する。ただし、FIFO部108がバーストリードを受け付ける場合は、レジスタ部111に最新処理データが格納されることが望ましい場合は、この限りではない。
First, the control of the FIFO Output Enable signal 118 will be described with reference to FIG. This figure is a flowchart showing the processing of the FIFO Output Enable signal 118. The FIFO Output Enable signal 118 also changes its state depending on a predetermined condition when the Clock signal 102 rises (Yes in S301). When all the conditions (1) to (3) described below are met on condition that the clock signal 102 has risen, the FIFO Output Enable signal 118 is set to “1”, and the processing data from the FIFO unit 108 is set. Is requested (S305). When any of the conditions (1) to (3) is not satisfied, the process data is not prompted to be output as “0” (S306). The conditions (1) to (3) will be described below.
(1) The FIFO Status signal 115 is not Empty (No in S302). When the FIFO Status signal 115 is Empty, the processing data cannot be taken out from the FIFO unit 108, so the processing data output is not requested.
(2) The Reg Value signal 112 is Empty or Busy (Yes in S303). If the Reg Value 112 is processing data that is neither Empty nor Busy, the data is already ready to be passed, so the data output to the FIFO unit 108 is not prompted. However, this is not the case for the case where it is desirable that the register unit 111 always contains the latest processing data from the processing unit 107 (described in the third embodiment).
(3) The FIFO Output Enable signal 118 is “0” (S304). If the FIFO Output Enable signal 118 is “1” before, the processing data has already been output from the FIFO unit 108, and the processing is stopped once. However, when the FIFO unit 108 accepts burst read, this is not the case when it is desirable to store the latest processing data in the register unit 111.

以上が、FIFO Output Enable信号118の制御である。次に、Data Select信号120の制御ついて図3(b)を用いて説明する。図は、Data Select信号120の処理を示すフローチャートである。Data Select信号120もClock信号102の立ち上がり時(S311でYes)、所定の条件により状態が変化するものである。   The above is the control of the FIFO Output Enable signal 118. Next, the control of the Data Select signal 120 will be described with reference to FIG. The figure is a flowchart showing the processing of the Data Select signal 120. The state of the Data Select signal 120 also changes according to a predetermined condition when the Clock signal 102 rises (Yes in S311).

まず、FIFO Output Enable信号118が‘1’である場合(S312でYesの時)について説明する。この時は、FIFO部108より処理データが出力されるので、レジスタ部111に該処理データを格納すべく、Data Select信号120を‘0’にセットする。   First, the case where the FIFO Output Enable signal 118 is “1” (Yes in S312) will be described. At this time, since the processing data is output from the FIFO unit 108, the Data Select signal 120 is set to ‘0’ in order to store the processing data in the register unit 111.

S312でNoの場合は、各種条件により、Data Select信号120は、複数の値をとり得る。現在のData Select信号120が‘0’であり、かつ、Request信号103が‘0’であるときは、レジスタ部111に処理データが格納されており、かつ、要求元へ出力されることがない。このことは、次の処理データ、または、疑似データを選択して格納する必要がないことを意味する。よって、Data Select信号120を切り換える必要が無い(結果として、Data Select信号120は‘0’を維持する)。S314でNoである場合は、FIFO Status信号115とUnit Status信号114の状態で、Data Select信号120の値が異なる。両方の状態がEmptyである場合は(S315でYes)、Data Select信号120を‘2’にする(S317)。どちらかが、Emptyではない場合は(S315でNo)、Data Select信号120を‘1’にする(S316)。以上が、Data Select信号120の制御方法である。   In the case of No in S312, the Data Select signal 120 can take a plurality of values depending on various conditions. When the current Data Select signal 120 is “0” and the Request signal 103 is “0”, the processing data is stored in the register unit 111 and is not output to the request source. . This means that it is not necessary to select and store the next processing data or pseudo data. Therefore, there is no need to switch the Data Select signal 120 (as a result, the Data Select signal 120 maintains “0”). In the case of No in S314, the value of the Data Select signal 120 differs depending on the state of the FIFO Status signal 115 and the Unit Status signal 114. If both states are Empty (Yes in S315), the Data Select signal 120 is set to '2' (S317). If either is not Empty (No in S315), the Data Select signal 120 is set to ‘1’ (S316). The above is the method for controlling the Data Select signal 120.

以上、制御部106で実施される2つの信号、(1)FIFO Output Enable信号118/(2)Data Select信号120の制御方法について説明した。この制御により、レジスタ部111に格納されるデータがどのように変化させるかについて、図4(a)を用いて説明する。同図は、レジスタ部111格納されるデータであるReg Value112の処理を示すフローチャートである。Reg Value112もClock信号102の立ち上がり時(S401でYes)、所定の条件により状態が変化するものである。   The control method of the two signals, (1) FIFO Output Enable signal 118 / (2) Data Select signal 120, executed by the control unit 106 has been described above. How the data stored in the register unit 111 is changed by this control will be described with reference to FIG. This figure is a flowchart showing the processing of Reg Value 112 which is data stored in the register unit 111. The Reg Value 112 also changes its state depending on a predetermined condition when the Clock signal 102 rises (Yes in S401).

まず、Request信号103の状態により、処理が切り替わる。Request信号103が‘0’であり(S402でNo)、かつ、Reg Value112が、BusyでもEmptyでもない(S405でNo)の場合は、現在の処理データをそのまま保持する。Request信号103が‘1’、または、Reg Value112が疑似データ(Busy or Empty)である場合に、S403の条件へ移行する。S403以降は、DataSelect信号120の値により、Reg Value112が更新される。Data Select信号120が、‘0’である場合は、FIFO部108より、出力される処理データがあるので、Reg Value112をFIFO部108より出力された処理データに更新を行う(S404)。Data Select信号120が、‘1’、または‘2’である場合は、それぞれReg Value112をBusy(S407)、または、Emtpy(S408)に更新させる。以上がReg Value112の処理である。以上、処理部107を除く、図1の主要な部分における構成・処理について説明した。   First, processing is switched according to the state of the Request signal 103. When the Request signal 103 is “0” (No in S402) and the Reg Value 112 is neither Busy nor Empty (No in S405), the current processing data is held as it is. When the Request signal 103 is “1” or the Reg Value 112 is pseudo data (Busy or Empty), the process proceeds to the condition of S403. After S403, the Reg Value 112 is updated according to the value of the DataSelect signal 120. If the Data Select signal 120 is “0”, the processing data output from the FIFO unit 108 is present, so the Reg Value 112 is updated to the processing data output from the FIFO unit 108 (S404). When the Data Select signal 120 is “1” or “2”, the Reg Value 112 is updated to Busy (S407) or Empy (S408), respectively. The above is the processing of Reg Value 112. The configuration and processing in the main part of FIG. 1 excluding the processing unit 107 has been described above.

次に、要求元から要求であるRequest信号103も含め、外部ないし内部の主要なデータ/信号のタイミングチャートを図5に示す。同図は、情報処理装置101の外部、内部それぞれにおける信号/データを時間的にどのように遷移するかを示したものである。符号501は、図1におけるClock信号102を示し、符号502はRequest信号103、符号503はResponse信号104、符号504はResponse Data105を示す。また、符号505は図1のReg Value112、符号506はData Select信号120、符号507はFIFO Output Data119、符号508はFIFO Output Enable信号118を示す。そして、符号509は図1のFIFO Status信号115、符号510はUnit Status信号114に対応している。Request信号103が、‘1’であることを検出すると、即座にResponse信号104とともに、Response Data105が出力されることが分かる。また、Reg Value112の状態は、Reg Value112の値により、Request信号103の状態に依らず、バックグラウンドで更新されることが分かる。Data Select信号120と、FIFO Output Enable信号118の制御により、FIFO Output Data119とReg Value112が更新されていくことが分かる。   Next, FIG. 5 shows a timing chart of main data / signals inside and outside including the request signal 103 which is a request from the request source. This figure shows how the signal / data in the outside and inside of the information processing apparatus 101 transition in time. Reference numeral 501 indicates the Clock signal 102 in FIG. 1, reference numeral 502 indicates the Request signal 103, reference numeral 503 indicates the Response signal 104, and reference numeral 504 indicates the Response Data 105. Reference numeral 505 denotes the Reg Value 112 in FIG. 1, reference numeral 506 denotes the Data Select signal 120, reference numeral 507 denotes the FIFO Output Data 119, and reference numeral 508 denotes the FIFO Output Enable signal 118. Reference numeral 509 corresponds to the FIFO Status signal 115 in FIG. 1, and reference numeral 510 corresponds to the Unit Status signal 114. When it is detected that the Request signal 103 is “1”, it is understood that the Response Data 105 is output together with the Response signal 104 immediately. Also, it can be seen that the state of Reg Value 112 is updated in the background depending on the value of Reg Value 112, regardless of the state of Request signal 103. It can be seen that the FIFO Output Data 119 and the Reg Value 112 are updated under the control of the Data Select signal 120 and the FIFO Output Enable signal 118.

本説明では、レジスタ部111を具備し、また、FIFO部108は、1クロックサイクル出力したら、次のサイクルはリードしないFIFOを用いて説明した。しかし、FIFO部108がバーストリード、すなわち、FIFO Output Enable信号118が連続したクロックサイクルで‘1’になっても処理データの出力が可能であるものを用いても良い。その場合、Request信号103をそのまま、制御部106で必要によりゲートし、FIFO部108に直接、FIFO Output Enable信号として入力する仕組みにしてもよい。その様にすることにより、Response Data105より出力されるデータに、情報処理装置101の状態や処理結果に関して即応性を持たせることができる。   In this description, the register unit 111 is provided, and the FIFO unit 108 has been described using a FIFO that does not read the next cycle after outputting one clock cycle. However, the FIFO unit 108 may use a burst read, that is, the FIFO output enable signal 118 can output the processing data even if it becomes ‘1’ in a continuous clock cycle. In this case, the request signal 103 may be gated as necessary by the control unit 106 and directly input to the FIFO unit 108 as a FIFO Output Enable signal. By doing so, it is possible to provide the data output from the Response Data 105 with responsiveness regarding the state of the information processing apparatus 101 and the processing result.

[第1の実施形態]
次に、第1の実施形態について説明する。本実施形態では、情報処理装置101をID管理装置に適用した場合について説明する。ID管理装置の動作の概要については、背景技術に記載したのでここでは割愛する。情報処理装置101をID管理装置に適用するには、処理部107がID管理処理の主要部分を担わせればよい。ID管理装置に適用したときの処理部107について詳細に説明する。図2は、処理部107の内部ブロック図である。なお、要求元から、IDの解放要求を受け付ける場合においては、本発明の主となる部分ではないため割愛する。
[First Embodiment]
Next, a first embodiment will be described. In the present embodiment, a case where the information processing apparatus 101 is applied to an ID management apparatus will be described. Since the outline of the operation of the ID management apparatus has been described in the background art, it is omitted here. In order to apply the information processing apparatus 101 to the ID management apparatus, the processing unit 107 may be responsible for the main part of the ID management process. The processing unit 107 when applied to an ID management apparatus will be described in detail. FIG. 2 is an internal block diagram of the processing unit 107. In the case of accepting an ID release request from the request source, it is omitted because it is not the main part of the present invention.

201は、処理制御部である。FIFO Status信号115を監視し、具体的な指示を処理検索部204やID操作部206に対し行う。また、Unit Status信号114により、内部状態を外部に送信する。202は検索部である。処理制御部201からの指示により、メモリ部204に未使用IDがあるか否かを検索する。検索のために必要なメモリRead操作をメモリ管理部205に送信する。また、処理結果について、処理制御部201に送信する。なお、検索部202は、未使用IDの数を調べる機能を有していても良い。203は、ID操作部である。未使用IDを外部に出力し、未使用IDを使用済にする処理と、要求元より解放要求のあったIDに対して、処理制御部201からの情報により未使用状態に戻す処理を実行する。また、処理結果について、処理制御部201に送信する。ID操作のために必要なメモリRead/Write操作をメモリ管理部205に送信する。また、登録されているIDを処理データとして外部に出力する際、取得してきたメモリ値を変換部210に送信する。   201 is a processing control unit. The FIFO Status signal 115 is monitored, and specific instructions are given to the processing search unit 204 and the ID operation unit 206. In addition, the internal status is transmitted to the outside by the Unit Status signal 114. Reference numeral 202 denotes a search unit. In response to an instruction from the processing control unit 201, the memory unit 204 is searched for an unused ID. A memory read operation necessary for the search is transmitted to the memory management unit 205. Further, the processing result is transmitted to the processing control unit 201. Note that the search unit 202 may have a function of checking the number of unused IDs. Reference numeral 203 denotes an ID operation unit. A process of outputting an unused ID to the outside, making the unused ID used, and a process of returning the unused ID to the unused state by the information from the processing control unit 201 for the ID requested to be released from the request source . Further, the processing result is transmitted to the processing control unit 201. A memory read / write operation necessary for the ID operation is transmitted to the memory management unit 205. Further, when the registered ID is output as processing data to the outside, the acquired memory value is transmitted to the conversion unit 210.

204はメモリ部である。メモリ部204に各ビットに、システムが有するリソースである各メモリ領域に一意に割り当てたIDについて、そのIDで示されるメモリ領域が未使用(値が‘1’)、または使用済(値が‘0’)である情報が格納されている。1つのAddressには32ビットが割り当てられ、各ビット位置がID番号に対応する。従って、Address0x0000_0000の32ビットはID番号「0」乃至「31」を管理するためのものである。address“0x0000_0000”番地には0b01000100_00000000_00000000_00010001(先頭の0bは二進数を示す)が格納されている。従って、ID番号0乃至31のうち、4つのIDが未使用状態(1の数が4つ)となっていることを表す。また、Address0x0000_0004の32ビットは後続するID「32」乃至「63」を管理するためのものである。以下、同様である。このように各アドレスの各ビット毎にIDを対応づけることにより、ID番号をそのまま使用して管理するよりもメモリを削減できる効果がある。   Reference numeral 204 denotes a memory unit. Regarding the ID uniquely assigned to each memory area, which is a resource of the system, in each bit in the memory unit 204, the memory area indicated by the ID is unused (value is “1”) or used (value is “ 0 ′) is stored. One address is assigned 32 bits, and each bit position corresponds to an ID number. Therefore, 32 bits of Address 0x0000 — 0000 are for managing ID numbers “0” to “31”. 0b01000100_00000000_00000000_00010001 (the leading 0b indicates a binary number) is stored in the address “0x0000 — 0000”. Therefore, among ID numbers 0 to 31, four IDs are unused (the number of 1s is four). The 32 bits of Address 0x0000 — 0004 are for managing the subsequent IDs “32” to “63”. The same applies hereinafter. Thus, by associating the ID with each bit of each address, there is an effect that the memory can be reduced rather than managing by using the ID number as it is.

205はメモリ管理部である。検索部202または、ID操作部203からの指示により、メモリ部204に対して、必要なメモリアクセス(Read/Write)を実行する。メモリ部204には、アクセスがReadまたはWriteの種別を表すR/W信号206、アクセスの発生を示すCS(Chip Select)信号207が具備されている。さらに、メモリ部204には、アクセス先アドレスを示すAddress208、Read/Writeされるデータが現れるMemory Data209が具備される。   Reference numeral 205 denotes a memory management unit. In response to an instruction from the search unit 202 or the ID operation unit 203, necessary memory access (Read / Write) is executed for the memory unit 204. The memory unit 204 is provided with an R / W signal 206 indicating the type of access as Read or Write, and a CS (Chip Select) signal 207 indicating the occurrence of access. Further, the memory unit 204 includes an address 208 indicating an access destination address and a memory data 209 in which data to be read / written appears.

210は、変換部である。先に説明したように、メモリ部204では、各IDを各アドレスのビットに割り当てて管理しているため、実際のID値とビットデータを双方に変換する処理を担う。また、外部にIDを処理データとして出力するインターフェイスを具備する。具体的には、FIFO Input Enable信号116とFIFO Input Data117である。以上が第1の実施形態における処理部107の処理概要である。このように処理部107をID管理処理機能部として適用することにより、情報処理装置101をID管理装置として適用可能であることについて説明した。   Reference numeral 210 denotes a conversion unit. As described above, since the memory unit 204 manages each ID by assigning it to the bit of each address, it is responsible for the process of converting the actual ID value and bit data into both. In addition, an interface for outputting the ID as processing data to the outside is provided. Specifically, the FIFO Input Enable signal 116 and the FIFO Input Data 117. The above is the processing outline of the processing unit 107 in the first embodiment. Thus, it has been described that the information processing apparatus 101 can be applied as an ID management apparatus by applying the processing unit 107 as an ID management processing function part.

[第2の実施形態]
第1の実施形態では、情報処理装置101をID管理装置に適用した場合について説明した。また、第1の実施形態では、複数の要求元に対し要求元を特定せず、要求受信時に提供できるIDがあればその値を処理データとして提供し、IDがなければ、情報処理装置101のステータスを疑似データとして提供する。すなわち複数の要求元でも適用が可能である。ただし、処理部107の処理タイミングと、要求元からの要求受信タイミングにより、先に要求のあった要求先に、疑似データを提供し、後から要求のあった要求先に処理データを提供するといったことが起こり得る。そこで、先に取得要求のあった要求先に処理データを提供できない(つまり、疑似データを提供する)場合は、予約として受け付ける方法について説明する。
[Second Embodiment]
In the first embodiment, the case where the information processing apparatus 101 is applied to an ID management apparatus has been described. In the first embodiment, the request source is not specified for a plurality of request sources, and if there is an ID that can be provided at the time of receiving the request, the value is provided as processing data. Provide status as pseudo data. In other words, it can be applied to a plurality of request sources. However, depending on the processing timing of the processing unit 107 and the request reception timing from the request source, the pseudo data is provided to the request destination that has been requested earlier, and the processing data is provided to the request destination that has been requested later. Can happen. Therefore, a method of accepting as a reservation when processing data cannot be provided to a request destination that has previously obtained an acquisition request (that is, pseudo data is provided) will be described.

図6の符号601は予約処理に対応した情報処理装置である。情報処理装置101との差分について記載する。   Reference numeral 601 in FIG. 6 denotes an information processing apparatus that supports reservation processing. A difference from the information processing apparatus 101 will be described.

まず、情報処理装置601は予約に対応するために、どの要求元に対して予約を行うかを決定するために要求元の特定を行う必要がある。そこで、要求元を特定するための信号である、Req ID602を使用する。各要求元(CPU121乃至123)からのRequest信号103発行時に、Req IDを付与されるように構成される。Req ID602の付与は、バス603または要求元(CPU121乃至123)のどちらでReq ID602を付与しても良い。なお、以後Req ID602を適用した場合の説明を続けるが、基本的に要求元を特定できればどのような方法でもよい。例えば、予め各要求元が、Request信号103を発行する際に、取得データのReadに指定するエリアのアドレスを要求元でそれぞれ異なるものを用いる等の交渉が成立していれば、アドレス情報を利用してもよい。   First, in order to deal with a reservation, the information processing apparatus 601 needs to specify a request source in order to determine which request source to make a reservation. Therefore, Req ID 602, which is a signal for specifying the request source, is used. A Req ID is assigned when a request signal 103 is issued from each request source (CPU 121 to 123). The Req ID 602 may be assigned by either the bus 603 or the request source (CPU 121 to 123). In the following description, the case where the Req ID 602 is applied will be continued. However, any method may be used as long as the request source can be basically identified. For example, when each request source issues the request signal 103 in advance, the address information is used if negotiations such as using different addresses for the areas specified in the read of the acquired data have been established. May be.

604は、予約に対応したIF部である。予約に対応するためには、どの要求元からの取得要求化により返信するResponse Data105を切り換える必要があるため、そのためにレジスタを要求元毎に具備する。   Reference numeral 604 denotes an IF unit corresponding to the reservation. In order to respond to the reservation, since it is necessary to switch the Response Data 105 to be returned by requesting from which request source, a register is provided for each request source.

608は、予約に対応した制御部である。予約に対応するためにReq ID602と各レジスタ部605乃至607に格納されたデータ値であるReg1 Value/Reg2 Value/Reg3 Valueを受け取る構成になる。また、レジスタ部605乃至607毎に、レジスタ部へ入力するデータを選択するためにData Select信号を3つ出力する(612、613、614)。制御部608の詳細は後述する。また、情報処理装置601は、各レジスタ部のそれぞれに対応するために、スイッチ部110を3つ具備する。各々のスイッチ部110は、制御部608から各々のスイッチ部110に割り当てられたData Select信号により動作する。以上が情報処理装置601の全体概要である。   Reference numeral 608 denotes a control unit corresponding to the reservation. In order to cope with the reservation, Req ID 602 and Reg1 Value / Reg2 Value / Reg3 Value which are data values stored in the respective register units 605 to 607 are received. In addition, for each of the register units 605 to 607, three Data Select signals are output in order to select data to be input to the register unit (612, 613, 614). Details of the control unit 608 will be described later. The information processing apparatus 601 includes three switch units 110 in order to correspond to each register unit. Each switch unit 110 operates according to a Data Select signal assigned to each switch unit 110 from the control unit 608. The above is the overall outline of the information processing apparatus 601.

次に、制御部608の詳細について、図7を用いて説明する。なお、制御部106との大きな差分である予約機能についてここでは説明を行う。他の部分については、制御部106のそのまま、もしくは、若干の変更で適用できるため割愛する。   Next, details of the control unit 608 will be described with reference to FIG. A reservation function that is a large difference from the control unit 106 will be described here. Other parts are omitted because they can be applied as they are or with slight changes in the control unit 106.

制御部608には、要求元の数だけタグを有している。図8では、TAG1(701)、TAG2(702)、TAG3(703)の3つが、それぞれCPU1(121)、CPU2(122)、CPU3(123)の予約処理の管理に使用される。以下、タグがどのように使用され予約処理がされるかについて、説明する。   The control unit 608 has as many tags as the number of request sources. In FIG. 8, TAG1 (701), TAG2 (702), and TAG3 (703) are used for managing reservation processing of CPU1 (121), CPU2 (122), and CPU3 (123), respectively. Hereinafter, how the tag is used and the reservation process is performed will be described.

704は、要求元プールである。予約処理の必要が無い場合には、全てのタグは、要求元プール704に格納(記録)される。予約処理の必要が生じた際、つまり、Reserve Request706を受信した場合、予約の必要な要求元に対応づけられたタグが、要求元プールからTo Do Tag707より、出力されて予約処理が開始される。なお、Reserve Request706より、要求されたタグが、すでに予約処理に入っており、要求元プール704に存在しない場合は、特に何もしない。予約処理の終了、または、予約の必要が無くなった場合には、Done Tag711より、要求元プールに該当タグは戻される。   Reference numeral 704 denotes a request source pool. If no reservation process is required, all tags are stored (recorded) in the request source pool 704. When reservation processing is necessary, that is, when a Reserve Request 706 is received, a tag associated with a request source that requires reservation is output from the To Do Tag 707 from the request source pool, and the reservation processing is started. . Note that nothing is done in particular when the requested tag from the reserve request 706 has already entered the reservation process and does not exist in the request source pool 704. When the reservation process is completed or when the reservation is no longer necessary, the corresponding tag is returned to the request source pool from Done Tag 711.

705は予約発行部である。要求元プールに対して、予約要求であるReserve Request706を送信する。予約要求は、以下の条件のとき発行される。すなわち、Request信号103が‘1’であることを検知したときに、Req ID(602)に対応するレジスタ部の値が疑似データで有った場合に予約が成立する。具体的には、取得要求の検知時、要求元がReq ID602より、CPU1(121)とわかり、かつ、その時のレジスタ部1(605)のReg1 Value609が疑似データであった時は、TAG1(701)の予約が成立する。
この情報をReserve Request706へ送信する。
Reference numeral 705 denotes a reservation issuing unit. A Reserve Request 706 that is a reservation request is transmitted to the request source pool. A reservation request is issued under the following conditions. That is, when it is detected that the Request signal 103 is “1”, a reservation is established if the value of the register corresponding to the Req ID (602) is pseudo data. Specifically, when the acquisition request is detected, if the request source is identified as CPU1 (121) from the Req ID 602, and the Reg1 Value 609 of the register unit 1 (605) at that time is pseudo data, TAG1 (701) ) Is booked.
This information is transmitted to the reserve request 706.

708は、予約元FIFOである。予約処理の決まったタグを最初に格納される場所である。すでに予約処理が処理中である場合のバッファとして使用され、(要求先の数−1)の段数分のFIFOが具備される。予約元レジスタ710のタグが抜けるタイミング、もしくは、予約元レジスタ710が空の時、Next Do Tag709より、予約元レジスタ703に格納しているタグから1つを送信する。   Reference numeral 708 denotes a reservation source FIFO. This is the place where the tag for which reservation processing is determined is stored first. It is used as a buffer when reservation processing is already in progress, and includes FIFOs corresponding to the number of stages (number of request destinations-1). When the tag of the reservation source register 710 is removed, or when the reservation source register 710 is empty, the Next Do Tag 709 transmits one of the tags stored in the reservation source register 703.

710は、予約元レジスタである。予約処理の実行を行うタグが格納される。図では、TAG3(703)が格納されている状態である。予約処理の実行は、予約制御部712で処理され、予約元レジスタ711に格納されたタグを参照して処理を行う。   Reference numeral 710 denotes a reservation source register. A tag for executing the reservation process is stored. In the figure, TAG3 (703) is stored. The reservation process is executed by the reservation control unit 712, and the process is performed with reference to the tag stored in the reservation source register 711.

712は、予約制御部である。予約元レジスタ703に格納されているタグを元に予約すべき要求元を確認する。そして、どの3つ具備されるスイッチ部110のどのスイッチ部110に対し、FIFO部108からの処理データをレジスタ部へ伝搬させるか特定するための信号(Switch Select信号715)をデータセレクト部716に出力する。また、レジスタ部1(605)〜レジスタ部3(607)を監視し、有効データの格納を確認した場合は、予約を取り下げる。また、FIFO Output Enable信号118とSwitch Select信号715を監視し、予約処理が完了したと判断した場合にも、予約を取り下げる。予約を取り下げる場合は、予約元レジスタ710に格納されているタグを要求元プールに戻す処理を行う。データセレクト部716は、基本的には図3の(b)の処理となるが、Data Select信号が3つになるため、処理が3つ動作することになる。また、Swich Select信号715の使用/未使用状況や、使用時の出力値(どの要求元への予約処理を行っているか)によって、S313のData Selectを‘0’にする処理への分岐の有無が変更される。以上が、第2の実施形態における予約方法の説明である。なお、第1の実施形態では、ID管理装置への適用を例にしたが、第2の実施形態で説明した予約方法は、特にID管理装置でなければ適用できないわけではないことはここまでの説明で明らかである。   Reference numeral 712 denotes a reservation control unit. The request source to be reserved is confirmed based on the tag stored in the reservation source register 703. Then, a signal (Switch Select signal 715) for specifying to which switch unit 110 of which three switch units 110 the processing data from the FIFO unit 108 is propagated to the register unit is sent to the data select unit 716. Output. Further, the register unit 1 (605) to the register unit 3 (607) are monitored, and when it is confirmed that valid data is stored, the reservation is withdrawn. Further, the FIFO Output Enable signal 118 and the Switch Select signal 715 are monitored, and the reservation is canceled when it is determined that the reservation processing is completed. When canceling the reservation, a process of returning the tag stored in the reservation source register 710 to the request source pool is performed. The data selection unit 716 basically performs the process of FIG. 3B, but since the Data Select signal is three, three processes are performed. Whether there is a branch to the process of setting the Data Select of S313 to '0' depending on the use / unuse status of the Switch Select signal 715 and the output value at the time of use (which request source is performing the reservation process) Is changed. The above is the description of the reservation method in the second embodiment. In the first embodiment, application to an ID management device is taken as an example. However, the reservation method described in the second embodiment is not particularly applicable to an ID management device so far. It is clear in the explanation.

[第3の実施の形態]
第1の実施形態、および、第2の実施形態では、ID管理装置に適用した場合について説明した。このとき、処理部107が出力する処理データ、および、処理部107からのデータではなく、スイッチ部110で生成される疑似データは、それぞれ、図8の符号801ようになる。図8では、ID管理装置が管理可能なID値は、0〜65535までの範囲で65535個の例であるが、ID値として許容しているデータと疑似データが重複しない限り、管理可能なID値の最大数は可変として適用可能である。
[Third Embodiment]
In the first embodiment and the second embodiment, the case where the present invention is applied to an ID management apparatus has been described. At this time, the processing data output from the processing unit 107 and the pseudo data generated by the switch unit 110 instead of the data from the processing unit 107 are as indicated by reference numeral 801 in FIG. In FIG. 8, ID values that can be managed by the ID management apparatus are 65535 examples in the range of 0 to 65535, but IDs that can be managed as long as the data allowed as ID values and the pseudo data do not overlap. The maximum number of values is applicable as a variable.

また、本発明はID管理装置以外にも適用が可能である。例えば、タイマー装置にも適用できる。ここでは、タイマー装置に、あるタイマー値がセットされてから、該タイマーにセットされた時刻になるまで、タイマー値を減算していくものを例に説明する。具体的には、図1における処理部107が、タイマー処理部となり、以下の機能を有するものとする。タイマー処理部は、予めセットされたタイマー値をカウンタにセットし、一定時間もしくは一定クロックサイクル経過ごとに、カウンタ値が零になるまで減算していく。また、タイマー処理部は、カウント値が更新されるたびに、カウント値を出力する。タイマー装置はその性質上、問い合わせを受信後、リアルタイマー値を出力必要があるため、FIFO部108は一段にする、あるいは、FIFOをなくし、スイッチ部110のデータ入力部に直接、処理部107の出力IFを接続する構成が望ましい。FIFO部108を実装しない場合は、FIFO Output Enable信号118を処理部107に入力し、処理部107より処理データの出力を促す構成にしてもよい。また、常に最新の処理データが入っていることが望ましいため、図3のS303の条件、Reg Value112に処理データが入っている場合は、FIFO Output Enableを‘0’にしない条件を削除してもよい。   Further, the present invention can be applied to devices other than the ID management device. For example, it can be applied to a timer device. Here, an example will be described in which a timer value is subtracted from a certain timer value set in the timer device until the time set in the timer is reached. Specifically, the processing unit 107 in FIG. 1 is a timer processing unit and has the following functions. The timer processing unit sets a preset timer value in the counter, and subtracts it until the counter value becomes zero every elapse of a certain time or a certain clock cycle. The timer processing unit outputs the count value every time the count value is updated. Due to the nature of the timer device, it is necessary to output a real timer value after receiving an inquiry. Therefore, the FIFO unit 108 is arranged in a single stage, or the FIFO unit is eliminated, and the processing unit 107 is directly connected to the data input unit of the switch unit 110. A configuration in which the output IF is connected is desirable. When the FIFO unit 108 is not installed, the FIFO Output Enable signal 118 may be input to the processing unit 107 and the processing unit 107 may prompt the processing data to be output. In addition, since it is desirable that the latest processing data is always included, even if the condition of S303 in FIG. 3 and processing data is included in the Reg Value 112, the condition that does not set the FIFO Output Enable to “0” may be deleted. Good.

タイマーがセットされていない場合は、レジスタ部に、Null Codeを表すデータを出力するように、スイッチ部110を構成すればよい。図8の符号802にタイマー装置に適用させたときの処理データおよび、疑似データについて記載する。図8では、Timerクロックの周期が仮に1秒で有れば、タイマー装置は、最大65535秒の時間を計時することが可能であることを示している。疑似データと処理データが重複しないようにスイッチ部110と処理部107を設定することで、さらに大きなカウンタ値を扱うことができるのは、ID管理装置と同様である。   When the timer is not set, the switch unit 110 may be configured to output data representing Null Code to the register unit. Reference numeral 802 in FIG. 8 describes processing data and pseudo data when applied to the timer device. FIG. 8 shows that if the period of the Timer clock is 1 second, the timer device can measure a maximum time of 65535 seconds. Similar to the ID management apparatus, it is possible to handle a larger counter value by setting the switch unit 110 and the processing unit 107 so that the pseudo data and the processing data do not overlap.

さらに、本発明は乱数発生処理を行う装置への適用も可能である。ここでは、処理部107を乱数発生器として、乱数を生成するたびにFIFO部108へ出力する機能を有するものとする。乱数発生器を、FIFO部108がFullになるまで、乱数の発生をする構成にすれば、要求元からの要求タイミングが連続しても、FIFO部108に処理データが残っている限り、データを切らすことなく乱数を提供することが可能である。図8の符号803に乱数発生装置に適用した場合の処理データ、疑似データについて記載する。図8の例では、この乱数発生装置は、0〜65535までの乱数の発生が可能であることを示している。また、乱数の計算中は、Busy Codeを出力することを表している。   Furthermore, the present invention can be applied to an apparatus that performs random number generation processing. Here, it is assumed that the processing unit 107 is a random number generator and has a function of outputting to the FIFO unit 108 every time a random number is generated. If the random number generator is configured to generate a random number until the FIFO unit 108 becomes Full, data can be stored as long as processing data remains in the FIFO unit 108 even if the request timing from the request source continues. It is possible to provide a random number without running out. Reference numeral 803 in FIG. 8 describes processing data and pseudo data when applied to a random number generator. In the example of FIG. 8, this random number generator indicates that random numbers from 0 to 65535 can be generated. In addition, during the calculation of the random number, the Busy Code is output.

疑似データと処理データが重複しないようにスイッチ部110と処理部107を設定することで、さらに大きなカウンタ値を扱うことができるのは、ID管理装置と同様である。   Similar to the ID management apparatus, it is possible to handle a larger counter value by setting the switch unit 110 and the processing unit 107 so that the pseudo data and the processing data do not overlap.

ここでは、ID管理装置以外に、タイマー装置、乱数発生装置に関して、本発明の適用例を示した。しかし、本発明は特にこれらに適用を限定するものではない。つまり、要求元からのデータ取得要求を元に処理部107からの処理データを提供するようなものであれば、どのような処理を情報処理装置が担っていても適用可能である。   Here, in addition to the ID management device, an application example of the present invention is shown with respect to a timer device and a random number generation device. However, the present invention is not particularly limited to these applications. In other words, any processing that the information processing apparatus is responsible for is applicable as long as it provides processing data from the processing unit 107 based on a data acquisition request from a request source.

Claims (8)

情報処理装置であって、
所定の処理を実行する処理部と、
前記処理部と接続され、前記処理部による前記所定の処理によって得られた処理データを格納するメモリ部と、
クロック信号が供給されることで動作するバスと接続され、前記処理データを要求する要求部と、
前記バスと接続され、前記要求部により前記処理データが要求された際に、前記メモリ部に前記処理データが格納されている場合には当該処理データを含む応答信号を前記要求部へ送信し、前記メモリ部に前記処理データが格納されていない場合には当該処理データに代えて所定の値を含む応答信号を前記要求部へ送信する応答部とを有し、
前記メモリ部は、前記処理データの格納状態を制御部へ通知し、
前記制御部は、前記格納状態に基づいて、前記応答部に当該処理データを含む応答信号を前記要求部へ送信させるか、前記所定の値を含む応答信号を前記要求部へ送信させるかを制御する
ことを特徴とする情報処理装置。
An information processing apparatus,
A processing unit for executing a predetermined process;
A memory unit that is connected to the processing unit and stores processing data obtained by the predetermined processing by the processing unit;
Connected to a bus that operates when a clock signal is supplied, and a request unit that requests the processing data;
When the processing data is requested by the request unit when connected to the bus and the processing data is stored in the memory unit, a response signal including the processing data is transmitted to the request unit, A response unit that transmits a response signal including a predetermined value to the request unit instead of the process data when the processing data is not stored in the memory unit ;
The memory unit notifies the control unit of a storage state of the processing data;
The control unit controls whether to cause the response unit to transmit a response signal including the processing data to the request unit or to transmit a response signal including the predetermined value to the request unit based on the storage state. An information processing apparatus characterized by:
情報処理装置であって、
所定の処理を実行する処理部と、
前記処理部と接続され、前記処理部による前記所定の処理によって得られた処理データを格納するメモリ部と、
クロック信号が供給されることで動作するバスと接続され、前記処理データを要求する要求部と、
前記バスと接続され、前記要求部により前記処理データが要求された際に、前記メモリ部に前記処理データが格納されている場合には当該処理データを含む応答信号を前記要求部へ送信し、前記メモリ部に前記処理データが格納されていない場合には当該処理データに代えて所定の値を含む応答信号を前記要求部へ送信する応答部とを有し、
前記応答部は、前記処理部に出力すべき処理データが存在せず、かつ、前記メモリ部に処理データが格納されていない第1の場合と、前記処理部に出力すべき処理データが存在し、かつ、前記メモリ部に処理データが格納されていない第2の場合とで、異なる値を含む応答信号を前記要求部へ送信する
ことを特徴とする報処理装置。
An information processing apparatus,
A processing unit for executing a predetermined process;
A memory unit that is connected to the processing unit and stores processing data obtained by the predetermined processing by the processing unit;
Connected to a bus that operates when a clock signal is supplied, and a request unit that requests the processing data;
When the processing data is requested by the request unit when connected to the bus and the processing data is stored in the memory unit, a response signal including the processing data is transmitted to the request unit, A response unit that transmits a response signal including a predetermined value to the request unit instead of the process data when the processing data is not stored in the memory unit;
In the first case where there is no processing data to be output to the processing unit and no processing data is stored in the memory unit, the response unit has processing data to be output to the processing unit. and, between the case where the second processing data in the memory unit is not stored, information processing apparatus a response signal including a different value and transmits to the requesting unit.
前記応答部は、前記第1の場合にはエンプティを示す値を含む応答信号を送信し、前記第2の場合にはビジーを示す値を含む応答信号を送信することを特徴とする請求項に記載の情報処理装置。 The response unit, according to claim 2 wherein, when the first transmits a response signal including a value indicating empty, in the case of the second, characterized in that the transmitting the response signal including a value indicating the busy The information processing apparatus described in 1. 情報処理装置であって、
所定の処理を実行する処理部と、
前記処理部と接続され、前記処理部による前記所定の処理によって得られた処理データを格納するメモリ部と、
クロック信号が供給されることで動作するバスと接続され、前記処理データを要求する要求部と、
前記バスと接続され、前記要求部により前記処理データが要求された際に、前記メモリ部に前記処理データが格納されている場合には当該処理データを含む応答信号を前記要求部へ送信し、前記メモリ部に前記処理データが格納されていない場合には当該処理データに代えて所定の値を含む応答信号を前記要求部へ送信する応答部とを有し、
前記処理部は、前記メモリ部における処理データの格納状態に応じて、前記所定の処理を実行する
ことを特徴とする報処理装置。
An information processing apparatus,
A processing unit for executing a predetermined process;
A memory unit that is connected to the processing unit and stores processing data obtained by the predetermined processing by the processing unit;
Connected to a bus that operates when a clock signal is supplied, and a request unit that requests the processing data;
When the processing data is requested by the request unit when connected to the bus and the processing data is stored in the memory unit, a response signal including the processing data is transmitted to the request unit, A response unit that transmits a response signal including a predetermined value to the request unit instead of the process data when the processing data is not stored in the memory unit;
Wherein the processing unit, in accordance with the storage state of processing data in the memory unit, information processing apparatus and executes the predetermined processing.
情報処理装置であって、
所定の処理を実行する処理部と、
前記処理部と接続され、前記処理部による前記所定の処理によって得られた処理データを格納するメモリ部と、
クロック信号が供給されることで動作するバスと接続され、前記処理データを要求する要求部と、
前記バスと接続され、前記要求部により前記処理データが要求された際に、前記メモリ部に前記処理データが格納されている場合には当該処理データを含む応答信号を前記要求部へ送信し、前記メモリ部に前記処理データが格納されていない場合には当該処理データに代えて所定の値を含む応答信号を前記要求部へ送信する応答部とを有し、
前記所定の処理は、タイマ処理、もしくは、乱数を発生させる処理である
ことを特徴とする報処理装置。
An information processing apparatus,
A processing unit for executing a predetermined process;
A memory unit that is connected to the processing unit and stores processing data obtained by the predetermined processing by the processing unit;
Connected to a bus that operates when a clock signal is supplied, and a request unit that requests the processing data;
When the processing data is requested by the request unit when connected to the bus and the processing data is stored in the memory unit, a response signal including the processing data is transmitted to the request unit, A response unit that transmits a response signal including a predetermined value to the request unit instead of the process data when the processing data is not stored in the memory unit;
Wherein the predetermined processing, timer processing, or information processing device which is a process that generates random numbers.
情報処理装置であって、
所定の処理を実行する処理部と、
前記処理部と接続され、前記処理部による前記所定の処理によって得られた処理データを格納するメモリ部と、
クロック信号が供給されることで動作するバスと接続され、前記処理データを要求する要求部と、
前記バスと接続され、前記要求部により前記処理データが要求された際に、前記メモリ部に前記処理データが格納されている場合には当該処理データを含む応答信号を前記要求部へ送信し、前記メモリ部に前記処理データが格納されていない場合には当該処理データに代えて所定の値を含む応答信号を前記要求部へ送信する応答部とを有し、
前記処理部は、更に、複数のメモリ領域の各々に、使用中、もしくは、未使用であることを示すビットと、当該メモリ領域を示すIDとを対応付けて管理する
ことを特徴とする報処理装置。
An information processing apparatus,
A processing unit for executing a predetermined process;
A memory unit that is connected to the processing unit and stores processing data obtained by the predetermined processing by the processing unit;
Connected to a bus that operates when a clock signal is supplied, and a request unit that requests the processing data;
When the processing data is requested by the request unit when connected to the bus and the processing data is stored in the memory unit, a response signal including the processing data is transmitted to the request unit, A response unit that transmits a response signal including a predetermined value to the request unit instead of the process data when the processing data is not stored in the memory unit;
Wherein the processing unit is further to each of the plurality of memory areas, in use, or, a bit indicating that it is not used, information which is characterized in that correspondingly manages the ID indicating the memory area Processing equipment.
情報処理装置であって、
所定の処理を実行する処理部と、
前記処理部と接続され、前記処理部による前記所定の処理によって得られた処理データを格納するメモリ部と、
クロック信号が供給されることで動作するバスと接続され、前記処理データを要求する要求部と、
前記バスと接続され、前記要求部により前記処理データが要求された際に、前記メモリ部に前記処理データが格納されている場合には当該処理データを含む応答信号を前記要求部へ送信し、前記メモリ部に前記処理データが格納されていない場合には当該処理データに代えて所定の値を含む応答信号を前記要求部へ送信する応答部とを有し、
前記要求部は、複数のCPUで構成される
ことを特徴とする報処理装置。
An information processing apparatus,
A processing unit for executing a predetermined process;
A memory unit that is connected to the processing unit and stores processing data obtained by the predetermined processing by the processing unit;
Connected to a bus that operates when a clock signal is supplied, and a request unit that requests the processing data;
When the processing data is requested by the request unit when connected to the bus and the processing data is stored in the memory unit, a response signal including the processing data is transmitted to the request unit, A response unit that transmits a response signal including a predetermined value to the request unit instead of the process data when the processing data is not stored in the memory unit;
It said request unit, information processing apparatus characterized by including a plurality of CPU.
前記メモリ部は、FIFO、または、レジスタのいずれかを含むことを特徴とする請求項1からのいずれか1項に記載の情報処理装置。 The memory unit, FIFO, or the information processing apparatus according to any one of claims 1 to 7, characterized in that it comprises one of the registers.
JP2013090790A 2013-04-23 2013-04-23 Information processing device Active JP6207213B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013090790A JP6207213B2 (en) 2013-04-23 2013-04-23 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013090790A JP6207213B2 (en) 2013-04-23 2013-04-23 Information processing device

Publications (3)

Publication Number Publication Date
JP2014215724A JP2014215724A (en) 2014-11-17
JP2014215724A5 JP2014215724A5 (en) 2016-05-26
JP6207213B2 true JP6207213B2 (en) 2017-10-04

Family

ID=51941453

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013090790A Active JP6207213B2 (en) 2013-04-23 2013-04-23 Information processing device

Country Status (1)

Country Link
JP (1) JP6207213B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7318423B2 (en) 2019-08-30 2023-08-01 富士通株式会社 COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL METHOD AND COMMUNICATION CONTROL PROGRAM

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60221857A (en) * 1984-04-18 1985-11-06 Nec Corp Microprocessor system
JPS6428766A (en) * 1987-07-23 1989-01-31 Nec Corp Random number generation system
JPH0528106A (en) * 1991-07-19 1993-02-05 Nec Eng Ltd Data transfer system
WO2011013350A1 (en) * 2009-07-29 2011-02-03 パナソニック株式会社 Memory device, host device, and memory system

Also Published As

Publication number Publication date
JP2014215724A (en) 2014-11-17

Similar Documents

Publication Publication Date Title
US10042640B2 (en) Processing queue management
JP6685323B2 (en) Method, device and system for accessing extended memory
CN115481058B (en) Memory atomic operation instruction execution method, device, access module and system
US9727497B2 (en) Resolving contention between data bursts
WO2015149673A1 (en) Method, server, and system for sharing resource data
US10310887B2 (en) CPU overcommit with guest idle polling
CN114153500B (en) Instruction scheduling method, instruction scheduling device, processor and storage medium
US10459771B2 (en) Lightweight thread synchronization using shared memory state
CN104346317A (en) Shared resource access method and device
WO2012132017A1 (en) Exclusion control method and exclusion control program
WO2012120654A1 (en) Task scheduling method and multi-core system
TW200925871A (en) Dynamic logical data channel assignment using time-grouped allocations
US8626799B2 (en) Mapping data structures
CN103999063A (en) Memory sharing by processors
US8230117B2 (en) Techniques for write-after-write ordering in a coherency managed processor system that employs a command pipeline
JP2012043031A (en) Shared cache memory device
JP6207213B2 (en) Information processing device
CN105528252A (en) Computer system
US8938588B2 (en) Ensuring forward progress of token-required cache operations in a shared cache
US8910125B2 (en) Monitoring software performance
US20200356485A1 (en) Executing multiple data requests of multiple-core processors
JP2018128756A (en) Information processing device
US6832300B2 (en) Methods and apparatus for control of asynchronous cache
JPWO2006001051A1 (en) Multiprocessor device and control method thereof
US11321146B2 (en) Executing an atomic primitive in a multi-core processor system

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160329

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160329

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170302

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: 20170807

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170905

R151 Written notification of patent or utility model registration

Ref document number: 6207213

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151