JP4934000B2 - Arbitration device, arbitration method, and program - Google Patents
Arbitration device, arbitration method, and program Download PDFInfo
- Publication number
- JP4934000B2 JP4934000B2 JP2007266815A JP2007266815A JP4934000B2 JP 4934000 B2 JP4934000 B2 JP 4934000B2 JP 2007266815 A JP2007266815 A JP 2007266815A JP 2007266815 A JP2007266815 A JP 2007266815A JP 4934000 B2 JP4934000 B2 JP 4934000B2
- Authority
- JP
- Japan
- Prior art keywords
- transfer
- dmac
- request
- time
- arbitration
- 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
Links
Images
Landscapes
- Bus Control (AREA)
Description
本発明は、優先順位の異なる複数のDMAC(ダイレクト・メモリ・アクセス・コントローラ)からの転送要求を調停する調停装置(アービタ)、調停方法及びプログラムに関し、より詳しくは、優先順位の高いDMACからの転送要求を適宜制限することにより、システム全体のパフォーマンスを向上させるようにした調停装置、調停方法及びプログラムに関する。 The present invention relates to an arbitration device (arbiter), an arbitration method, and a program for arbitrating transfer requests from a plurality of DMACs (direct memory access controllers) having different priorities, and more specifically, from an DMAC having a higher priority. The present invention relates to an arbitration device, an arbitration method, and a program that improve performance of the entire system by appropriately limiting transfer requests.
従来、CPUと複数のモジュールとを備えたシステムにおいて、それらのモジュールとCPUバス上のメモリとの間などのデータ転送を高速で行う手法として、CPUの介入なしでデータ転送を行うDMA転送が知られている。各モジュールはDMA転送を行う際、DMACがアービタに対し転送要求(リクエスト)を発行し、アービタから転送許可を受けた後に、メモリに対する転送(リード又はライト)を行う。このとき、複数のDMACの転送要求が競合した場合、アービタは予め設定されている優先順位に基づいて転送順序を決定する(特許文献1参照)。 2. Description of the Related Art Conventionally, in a system including a CPU and a plurality of modules, DMA transfer that performs data transfer without CPU intervention is known as a method for performing high-speed data transfer between the modules and the memory on the CPU bus. It has been. When each module performs DMA transfer, the DMAC issues a transfer request (request) to the arbiter and receives transfer permission from the arbiter, and then performs transfer (read or write) to the memory. At this time, if a plurality of DMAC transfer requests compete, the arbiter determines the transfer order based on a preset priority (see Patent Document 1).
このような、複数のモジュールとCPUバス上のメモリ間でDMA転送を行うシステムとして、文献に記載されたものではないが、図8に示すマルチファンクションプリンタ(以下、MFPと言う)がある。 Such a system for performing DMA transfer between a plurality of modules and a memory on the CPU bus is not described in the literature, but there is a multifunction printer (hereinafter referred to as MFP) shown in FIG.
このMFPは、ASIC(Application Specific Integrated Circuit:特定用途向けIC)1と、CPU2と、メモリ3と、スキャナ4とを備えている。ASIC1とCPU2とはPCI Express I/F(インタフェース)5により接続され、CPU2とメモリ3とはDDR(Double Data Rate)2 I/F6により接続されている。
The MFP includes an ASIC (Application Specific Integrated Circuit) 1, a
第1の画像処理モジュール11は、スキャナ4から入力された画像データに対し、シェーディング補正、ライン間補正などの補正処理を施す機能を有する。また、補正処理後の画像データをメモリ3に書き込むための制御を行う第1のライトDMAC(WDMAC1)15を備えている。
The first
第2の画像処理モジュール12は、メモリ3から読み出された画像データに対し、変倍処理、階調処理などの画像処理を施す機能を有する。また、メモリ3から画像データを読み出すための第1のリードDMAC(RDMAC1)16、画像処理を施した画像データをメモリに書き込むための第2のライトDMAC(RDMAC2)17を備えている。
The second
アービタ13は、第1及び第2のライトDMAC15及び17、並びに第1のリードDMAC16からの転送要求を調停する。アービタ13から転送の許可を受けたDMACは、アービタ13、PCI Express ENDP(エンドポイント)14、PCI Express I/F5、及びDDR2 I/F6を介してメモリ3にアクセスする(CPU2は介在しない)。
The
このMFPによれば、スキャナ4からASIC1の第1の画像処理モジュール11に入力された画像データを第1のライトDMAC15により一旦メモリ3に書き込み、その後、第1のリードDMAC16によりメモリ3から読み出し、第2の画像処理モジュール12で画像処理を行い、第2のライトDMAC17により再びメモリ3に書き込むことにより、スキャナ入力と、画像処理の速度差を吸収することができるように構成されている。この構成により、例えば拡大変倍時など、入力データ数に対して処理するデータ数が多くなる場合、スキャナ4からの入力に対し、拡大変倍処理が間に合わなくなり、システムが破綻してしまう事態を防止することができる。
According to this MFP, the image data input from the
図9は、図8に示す第1及び第2のライトDMAC15及び17、並びに第1のリードDMAC16の動作に関連して、アービタ13とPCI Express ENDP14との間を流れるデータを示すタイミングチャートの一例である。ここで、3つのDMACの優先順位は、第1のライトDMAC15が一位、第1のリードDMAC16が二位、第2のライトDMAC17が三位である。
FIG. 9 is an example of a timing chart showing data flowing between the
第1のライトDMAC15は、スキャナ4から第1の画像処理モジュール11に入力され、そこで処理された1ライン分の18ブロックの画像データ(W1〜W18)をメモリ3に転送するとき、個々の画像データの先頭のタイミングでアービタ13に転送要求を送出し、直ちに画像データを送出する。アービタ13は優先順位が一位である第1のライトDMAC15からの転送要求を6回続けて処理した後、優先順位が二位である第1のリードDMAC16の転送要求を2回続けて処理する(R1,R2)。第1のリードDMAC16の転送要求の処理により、メモリ3から画像データC1,C2が読み出される。転送要求のタイミングと、画像データが転送されるタイミングとの間には、遅延(Read Delay)がある。このため、第1のライトDMAC15が画像データW9,W10を書き込んでいるときと、第1のリードDMAC16が画像データC1,C2を読み出しているときとが重なっており、この重複期間はPCI Express I/F5上の双方向に画像データが流れる。
The
以上の処理を繰り返し、第1のライトDMAC15が1ライン分の画像データの転送を終了した後に、優先順位が三位である第2のライトDMAC17からの転送要求を許可する。 The above processing is repeated, and after the first write DMAC 15 finishes transferring the image data for one line, the transfer request from the second write DMAC 17 having the third priority is permitted.
しかしながら、図9に示すタイミングチャートの場合、スキャナ4の1ライン時間(図のlsync期間)より短時間で第1のWDMAC15は1ライン分の画像データ(W1〜W18)をメモリ3に転送しているのに対し、第1のリードDMAC16は略半分しか転送していないし、第2のライトDMAC17は1/3しか転送していない。つまり、第1のWDMAC15のパフォーマンスが必要以上に高い反面、他のDMACのパフォーマンスが不十分である。
However, in the case of the timing chart shown in FIG. 9, the first WDMAC 15 transfers image data (W1 to W18) for one line to the
そこで、第1のリードDMAC16の優先順位を上げることが考えられる。しかし、これには以下の問題がある。ライトDMACとリードDMACの動作を比較すると、リードDMACは転送要求が受け付けられてからその応答(画像データ)が返ってくるまでのレイテンシ(遅延)が大きい。このため、第1のリードDMAC16の優先順位を上げたとしても、第1のリードDMAC16の転送要求を処理する間に隙間なく第1のライトDMAC15から転送要求が発行されるため、第1のライトDMAC15の転送要求を処理する回数が増加し、必要以上のパフォーマンスとなってしまう。また、第1のライトDMAC15の転送要求の処理を終了してから第1のリードDMAC16の転送要求を受け付けるという動作になってしまうため、結果的に要求するパフォーマンスを満たせない状況になってしまう。
本発明は、このような問題を解決するためになされたものであり、その目的は、優先順位の異なる複数のDMACからの転送要求を調停するときに、システム全体のパフォーマンスを向上させることである。 The present invention has been made to solve such a problem, and its object is to improve the performance of the entire system when arbitrating transfer requests from a plurality of DMACs having different priorities. .
本願の第1の発明は、優先順位の異なる複数のDMACからの転送要求を調停する調停装置において、所定時間毎に入力される所定量のデータを前記所定時間内に転送可能であり、かつ優先順位が最も高く設定されている第1のDMACにより前記所定時間内に前記所定量のデータの一部毎に順次発行される転送要求を受け付ける手段と、それらの転送要求による処理を実行する手段と、それらの転送要求による転送量の累積値を算出する手段と、前記累積値を前記第1のDMACに対して設定された転送速度で除算することにより、前記累積値のデータの必要転送時間を算出する手段と、前記所定の時間毎の経過時間を計測する手段と、前記経過時間と前記必要転送時間とを比較する手段と、その比較結果に基づいて、前記転送要求による処理を実行させるか待機させるかを決定する手段とを有することを特徴とする。
本願の第2の発明は、第1の発明において、前記経過時間が前記必要転送時間以内の場合で、かつ前記第1のDMAC以外のDMACから転送要求がある場合は、第1のDMACからの転送要求を待機させ、第1のDMAC以外のDMACからの転送要求による処理を実行させることを特徴とする。
本願の第3の発明は、第1の発明において、前記第1のDMAC以外のDMACに対しても、前記各手段が設けられていることを特徴とする。
本願の第4の発明は、第1の発明において、前記決定する手段は、転送要求による処理を待機させるためのウェイト要求信号を発生した後、転送要求による処理を完了した前記実行する手段から処理完了信号を受けたとき、前記ウェイト要求信号をネゲートすることを特徴とする。
本願の第5の発明は、第3の発明において、複数のDMACの転送要求を待機させている場合、一つの待機処理が終了した際に、他にも待機させているDMACの有無を判断し、ある場合にはその処理を監視しながら、他のDMACからの転送要求を処理することを特徴とする。
本願の第6の発明は、優先順位の異なる複数のDMACからの転送要求を調停する調停方法において、所定時間毎に入力される所定量のデータを前記所定時間内に転送可能であり、かつ優先順位が最も高く設定されている第1のDMACにより前記所定時間内に前記所定量のデータの一部毎に順次発行される転送要求を受け付ける工程と、それらの転送要求による処理を実行する工程と、それらの転送要求による転送量の累積値を算出する工程と、前記累積値を前記第1のDMACに対して設定された転送速度で除算することにより、前記累積値のデータの必要転送時間を算出する工程と、前記所定の時間毎の経過時間を計測する工程と、前記経過時間と前記必要転送時間とを比較する工程手段と、その比較結果に基づいて、前記転送要求による処理を実行させるか待機させるかを決定する工程とを有することを特徴とする。
According to a first invention of the present application, in an arbitration device that arbitrates transfer requests from a plurality of DMACs having different priorities, a predetermined amount of data input every predetermined time can be transferred within the predetermined time and Means for accepting transfer requests sequentially issued for each part of the predetermined amount of data within the predetermined time by the first DMAC set with the highest order; means for executing processing according to the transfer requests; And a means for calculating a cumulative value of the transfer amount due to these transfer requests, and dividing the cumulative value by a transfer rate set for the first DMAC, thereby obtaining a required transfer time of the data of the cumulative value. A means for calculating, a means for measuring an elapsed time for each predetermined time, a means for comparing the elapsed time with the required transfer time, and based on the comparison result, according to the transfer request. And having a means for determining whether to wait or to perform the management.
According to a second invention of the present application, in the first invention, when the elapsed time is within the required transfer time and there is a transfer request from a DMAC other than the first DMAC, The present invention is characterized in that a transfer request is waited and processing according to a transfer request from a DMAC other than the first DMAC is executed.
A third invention of the present application is characterized in that, in the first invention, each means is provided for a DMAC other than the first DMAC.
According to a fourth invention of the present application, in the first invention, the determining means generates a wait request signal for waiting for the process according to the transfer request, and then executes the process from the executing means that has completed the process according to the transfer request. When the completion signal is received, the wait request signal is negated.
According to a fifth aspect of the present invention, in the third aspect, when waiting for a plurality of DMAC transfer requests, when one standby process is completed, it is determined whether there is another DMAC waiting. In some cases, a transfer request from another DMAC is processed while monitoring the processing.
According to a sixth invention of the present application, in an arbitration method for arbitrating transfer requests from a plurality of DMACs having different priorities, a predetermined amount of data input every predetermined time can be transferred within the predetermined time and Receiving a transfer request sequentially issued for each part of the predetermined amount of data within the predetermined time by the first DMAC set with the highest order; and executing a process according to the transfer request; , Calculating a cumulative value of the transfer amount due to these transfer requests, and dividing the cumulative value by the transfer rate set for the first DMAC, thereby reducing the required transfer time of the cumulative value data A step of calculating, a step of measuring an elapsed time for each predetermined time, a step of comparing the elapsed time with the required transfer time, and based on the comparison result, Characterized by a step of determining whether to wait or to execute that process.
本発明によれば、優先順位の異なる複数のDMACからの転送要求を調停するときに、優先順位の高いDMACからの転送要求を適宜制限することにより、システム全体のパフォーマンスを向上させることができる。 According to the present invention, when mediating transfer requests from a plurality of DMACs having different priorities, the performance of the entire system can be improved by appropriately limiting the transfer requests from DMACs having a higher priority.
以下、本発明の実施形態について図面を参照しながら説明する。
[第1の実施形態]
図1は本発明の第1の実施形態のMFPにおけるアービタの構成を示すブロック図である。本実施形態のMFPの全体の構成は図8と同じであり、アービタ113は図8に示すアービタ13と同様、MFP内のASIC1内に設けられている。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[First Embodiment]
FIG. 1 is a block diagram illustrating a configuration of an arbiter in the MFP according to the first embodiment of this invention. The overall configuration of the MFP according to the present embodiment is the same as that shown in FIG. 8, and the
アービタ113は、必要転送時間計算部121及びリクエスト調停部122を備えている。必要転送時間計算部121には、第1のライトDMAC15から、転送要求発行時にデータのバースト長が入力される。また、ラインスタート信号、及びラインエンド信号が入力される。さらに、必要転送レート保持部123から必要転送レート情報Raが入力される。バースト長及び必要転送レートはシステムを検討した段階で、予め分かっている必要がある値である。リクエスト調停部122には、第1のライトDMAC15及び第2のライトDMAC17並びに第1のリードDMAC16から転送要求が入力され、必要転送時間計算部121からウェイト要求信号が入力される。ここで、3つのDMACの優先順位は、第1のライトDMAC15が一位、第1のリードDMAC16が二位、第2のライトDMAC17が三位である。
The
必要転送レート保持部123はASIC1内に設けられている。必要転送レート情報Raは、第1のリードDMAC15が必ずデータ転送を完了しなければならない時間であるlsync期間の80%程度に設定する。若しくは一回の転送要求で処理する時間の最大値を加味した値を設定することが望ましい。その理由は、第1のリードDMAC15からの1ライン内の最後の転送要求に対して、後述するウェイト処理を行った場合でも、lsync期間を超えることなく転送を完了させるためである。
The necessary transfer
図2は、図1の必要転送時間計算部121の内部構成を示すブロック図である。必要転送時間計算部121は、必要転送時間T2演算部及び時間比較部1211、タイマー1212、並びにウェイト要求信号生成部1213を備えている。
FIG. 2 is a block diagram showing an internal configuration of the necessary transfer
タイマー1212にはラインスタート信号及びラインエンド信号が入力される。そして、ラインスタート信号により起動され、ラインエンド信号によりリセットされるまでの間、ラインスタート信号からの経過時間T1をカウント(計測)する。
The
必要転送時間T2演算部及び時間比較部1211には、バースト長BL及び経過時間T1が入力される。必要転送時間T2演算部及び時間比較部1211は、第1のライトDMAC15とアービタ113との間のバス幅DWの情報を保持している。
The required transfer time T2 calculation unit and the
必要転送時間T2演算部及び時間比較部1211は以下のように動作する。
転送要求の発行時に受け取ったバースト長BLと、保持しているバス幅DWとに基づいて、まず下記式[1]により転送データ量BW(k)を算出する。この式において、kは1ライン内の転送要求の順番を示す。
BW(k)=BL(k)×DW・・・式[1]
The necessary transfer time T2 calculation unit and
Based on the burst length BL received when the transfer request is issued and the held bus width DW, the transfer data amount BW (k) is first calculated by the following equation [1]. In this equation, k indicates the order of transfer requests within one line.
BW (k) = BL (k) × DW Equation [1]
次いでこの転送データ量BW(k)を1ライン内で転送要求毎に累積し、下記式[2]に示す累積転送量BW’(n)を算出する。
BW’(n) =BW(1)+BW(2)+・・・BW(n)・・・式[2]
Next, this transfer data amount BW (k) is accumulated for each transfer request within one line, and an accumulated transfer amount BW ′ (n) shown in the following equation [2] is calculated.
BW '(n) = BW (1) + BW (2) + ... BW (n) ... Formula [2]
次に下記式[3]により、累積転送量BW’(n)のデータ転送が完了していなければならない時間である必要転送時間T2を算出する。
T2=BW’(n)/Ra・・・式[3]
Next, a necessary transfer time T2, which is a time during which the data transfer of the accumulated transfer amount BW ′ (n) must be completed, is calculated by the following equation [3].
T2 = BW '(n) / Ra (3)
次いで必要転送時間T2と経過時間T1とを比較し、その長短関係をウェイト要求信号生成部1213に出力する。
Next, the required transfer time T2 and the elapsed time T1 are compared, and the length relationship is output to the wait request
ウェイト要求信号生成部1213は、T1の方がT2より長ければ、T1とT2が等しくなるまで、第1のライトDMAC15からの転送要求に対して、ウェイト要求信号をアサートし、リクエスト調停部122へ出力する。リクエスト調停部122は、ウェイト要求信号がアサートされている間は、第1のライトDMAC15からの転送要求に対してウェイト処理(転送要求の発行を制限する)を実行する。
If T1 is longer than T2, the wait request
次にアービタ113の動作について、図3に示すフローチャートを参照しながら説明する。
データ転送が開始されると、図3のステップST1にて、リクエスト調停部122がリクエスト(転送要求)を受け付ける。次いで、ステップST2にて、リクエスト調停部122は優先順位が一位である第1のライトDMAC15からのリクエストの有無を判断し、ある場合は(ST2:Yes)、ステップST3にて、必要転送時間計算部121が必要転送時間T2を算出する。ここで、リクエスト調停部122は、各DMACから転送要求時に送出されるDMACID等から、ステップST2の判断が可能である。
Next, the operation of the
When data transfer is started, the
次にステップST4にて、必要転送時間計算部121は、経過時間T1が必要転送時間T2より長いか否かを判断し、長い場合は(ST4:Yes)、ステップST7にて、リクエスト調停部122は第1のライトDMAC15からのリクエストを処理する。
Next, in step ST4, the required transfer
一方、経過時間T1が必要転送時間T2以内の場合は(ST4:No)、ステップST5にて、その他のDMAC(ここでは第1のリードDMAC16、第2のライトDMAC17)からのリクエストの有無を判断する。そして、ある場合は(ST5:Yes)、ステップST6にてその他のDMACからのリクエストを処理した後にステップST4に戻る。ない場合は(ST5:No)、ステップST7にて第1のライトDMAC15からのリクエストを処理する。
On the other hand, if the elapsed time T1 is within the required transfer time T2 (ST4: No), it is determined in step ST5 whether there is a request from another DMAC (here, the first read DMAC16 and the second write DMAC17). To do. If there is any (ST5: Yes), after processing a request from another DMAC in step ST6, the process returns to step ST4. If not (ST5: No), the request from the
第1のライトDMAC15からのリクエストの有無を判断し、ない場合は(ST2:No)、リクエストを発行した第1のリードDMAC16又は第2のライトDMAC17に対して、通常のアービトレーション及びリクエスト処理を行う(ステップST8)。
The presence / absence of a request from the
ステップST9で全データの転送が完了したと判断するまで、以上の処理を繰り返す。 The above processing is repeated until it is determined in step ST9 that all data has been transferred.
以上説明した図3のフローチャートの処理を要約すると以下のようになる。
DMACからリクエストが発行されると、アービタ113は、どのDMACからのリクエストであるかを判断する。判断の結果、第1のライトDMAC15からのリクエストでなければ、通常のアービトレーション及びリクエスト処理を行う。第1のライトDMAC15からのリクエストであった場合は必要転送時間T2を算出する。そして、現在のラインのスタートからの経過時間T1と比較し、T1の方がT2よりも長い場合は、そのまま第1のライトDMAC15からのリクエストを処理する。T2の方が長い場合は、その間は他のDMACからのリクエストがあればそれを優先して処理し、なければ第1のライトDMAC15からのリクエストを処理し、全データの転送が完了していれば終了、そうでなければ次のリクエストを待つ。
The processing of the flowchart of FIG. 3 described above is summarized as follows.
When a request is issued from the DMAC, the
次に図4に示すタイミングチャートに基づいて説明する。
第1のライトDMAC15は、1ライン分の18ブロックの画像データ(W1〜W18)をメモリ3に転送するとき、個々の画像データの先頭のタイミングでアービタ113に転送要求を発行する。画像データW1〜W4のそれぞれの転送要求を受け付けた時点では、他のDMACからの転送要求がないため、図3のステップST7により、第1のライトDMAC15からの処理(画像データW1〜W4の転送)を実行する。
Next, a description will be given based on the timing chart shown in FIG.
The
画像データW5の転送要求を受け付けた時点では、第1のリードDMAC16も転送要求R1を発行している。このとき、T1がT2より短いため、ステップST4:No →ST5:Yes→ST6と進み、第1のリードDMAC16の転送要求を処理し、第1のライトDMAC15からの画像データW5の転送要求は待機させる。同様にして、第1のリードDMAC16からの転送要求R2を処理する。これにより、メモリ3から画像データC1,C2が読み出される。
At the time when the transfer request for the image data W5 is received, the
次の転送要求R3を受け付けた時点では、第1のライトDMAC15からの画像データW5の転送要求を待機させ続けた結果、T1がT2以上となったため、ステップST4:Yes →ST7と進み、第1のライトDMAC15からの画像データW5の転送要求を処理し、第1のリードDMAC16からの転送要求R3は待機させる。同様にして、第1のライトDMAC15からの画像データW6〜W8の転送要求を処理する。そして、画像データW8の転送が完了すると、ステップST2:No →ST8と進み、第1のリードDMAC16からの転送要求R3を処理する。
At the time when the next transfer request R3 is received, since the transfer request of the image data W5 from the
その後、第1のリードDMAC16からの転送要求R4の処理が完了した時点で、第1のライトDMAC15からの画像データW9の転送要求が発行される。以後、アービタ113は、第1のライトDMAC15及び第1のリードDMAC16からの転送要求の有無、及びT1とT2との長短関係に応じて、第1のライトDMAC15及び第1のリードDMAC16からの転送要求の一方を処理するときは他方を待機させる処理を行う。
Thereafter, when processing of the transfer request R4 from the
第1のライトDMAC15が1ライン分の画像データW1〜W18の転送を完了すると、1sync時間の終わり(ラインエンド信号のタイミング)までは、第1のライトDMAC15は転送要求を発行しない。1sync時間の終わりから、第2のライトDMAC17の転送要求の処理を開始するとともに、引き続き第1のリードDMAC16からの転送要求を処理する。
When the
図5は、図4のタイミングチャートに示されているデータをアービタ113とPCI Express ENDP14との間で見た場合、即ち図9に対応するタイミングチャートを示している。
FIG. 5 shows a timing chart corresponding to FIG. 9 when the data shown in the timing chart of FIG. 4 is viewed between the
図5に示すように、本実施形態では、優先順位が一位である第1のライトDMAC15からの転送要求を4回続けて処理した後、優先順位が二位である第1のリードDMAC16の転送要求を2回続けて処理する。このため、第1のライトDMAC15が1ライン分の画像データW1〜W18の転送を完了するタイミングは図9の場合より遅れる。しかし、第1のリードDMAC16及び第2のライトDMAC17からの転送要求に対しては、1sync時間の終わりの時点にて、本実施形態の方がより多くのデータの転送を完了していることが分かる。
As shown in FIG. 5, in the present embodiment, after the transfer request from the
つまり、本実施形態は、優先順位が最高である第1のライトDMAC15の転送要求に適宜制限をかけることにより、第1のライトDMAC15のパフォーマンスが過剰となることを防止するとともに、第1のリードDMAC16及び第2のライトDMAC17のパフォーマンスを向上させ、その結果、システム全体のパフォーマンスを向上させている。
In other words, the present embodiment prevents the performance of the
以上のように、本発明の第1の実施形態のアービタ113は、下記(1)、(2)の効果を有する。
(1)必要転送時間計算部121と必要転送レート保持部123とを持つことによって、優先度の最も高い第1のライトDMAC15からのデータの転送状況を把握し、適宜ウェイト要求を発生させることが可能である。
(2)優先順位の最も高い第1のライトDMAC15からの厳守しなければならないデータ転送量は間違いなく転送しつつ、他のDMACからのリクエストも処理可能にすることによって、全体としてのデータ転送量を増加させ効率的なデータ転送が可能となる。
As described above, the
(1) By having the necessary transfer
(2) The data transfer amount that must be strictly observed from the
[第2の実施形態]
図6は本発明の第2の実施形態のMFPにおけるアービタの構成を示すブロック図である。本実施形態のMFPの全体の構成は図9と同じであり、アービタ213は図9に示すアービタ13と同様、MFP内のASIC1内に設けられている。
[Second Embodiment]
FIG. 6 is a block diagram showing the configuration of the arbiter in the MFP according to the second embodiment of the present invention. The overall configuration of the MFP according to this embodiment is the same as that shown in FIG. 9, and the
アービタ213は、第1の必要転送時間計算部(必要転送時間計算部1)2211、第2の必要転送時間計算部(必要転送時間計算部2)2212、第3の必要転送時間計算部(必要転送時間計算部3)2213、及びリクエスト調停部222を備えている。
The
第1の必要転送時間計算部2211には、第1のライトDMAC15から、転送要求発行時にデータの第1のバースト長(バースト長1)が入力される。また、ラインスタート信号、及びラインエンド信号が入力される。さらに、必要転送レート保持部123から必要転送レート情報Ra1が入力される。同様に第2の必要転送時間計算部2212には、第1のリードDMAC16から、データの第2のバースト長(バースト長2)、ラインスタート信号、及びラインエンド信号が入力され、必要転送レート保持部123から必要転送レート情報Ra2が入力される。また、第3の必要転送時間計算部2213には、第2のライトDMAC17から、データの第3のバースト長(バースト長3)、ラインスタート信号、及びラインエンド信号が入力され、必要転送レート保持部123から必要転送レート情報Ra3が入力される。
The first required transfer time calculation unit 2211 receives the first burst length of data (burst length 1) from the
リクエスト調停部222には、第1のライトDMAC15及び第2のライトDMAC17並びに第1のリードDMAC16から転送要求が入力される。また、第1の必要転送時間計算部2211、第2の必要転送時間計算部2212、及び第3の必要転送時間計算部2213から、それぞれ第1のウェイト要求信号(ウェイト要求信号1)S1、第2のウェイト要求信号(ウェイト要求信号2)S2、及び第3のウェイト要求信号(ウェイト要求信号3)S3が入力される。さらに、第1の必要転送時間計算部2211、第2の必要転送時間計算部2212、及び第3の必要転送時間計算部2213に対し、それぞれ第1のリクエスト処理完了信号(リクエスト処理完了信号1)S4、第2のリクエスト処理完了信号(リクエスト処理完了信号2)S5、及び第3のリクエスト処理完了信号(リクエスト処理完了信号3)S6を送出する。
The
ここで、第1の必要転送時間計算部2211、第2の必要転送時間計算部2212、及び第3の必要転送時間計算部2213は、それぞれ第1の実施形態における必要転送時間計算部121と同様な構成を有しており、それぞれ式[1]〜[3]と同様な式を用いて、それぞれ必要転送時間T21、T22、T23を算出する。
Here, the first required transfer time calculation unit 2211, the second required transfer
つまり、第1の実施形態のアービタ113では第1のライトDMAC15に対してのみ必要転送時間計算部を設けたが、本実施形態では全てのDMACに対して必要転送時間計算部を設け、各DMACに対する必要転送時間計算部に必要な転送レート情報Ra1、Ra2、Ra3を供給し、各DMACが必要転送レートを守ることができるようにアービトレーションを実施する。
That is, in the
ここでも、第1の実施形態と同じく、3つのDMACの優先順位は、第1のライトDMAC15が一位、第1のリードDMAC16が二位、第2のライトDMAC17が三位である。そして、各DMACに対して転送レートを計算し、それが必要転送レートを超えていた場合には、各DMACに対してウェイト要求信号をアサート可能である。
Here, as in the first embodiment, the priority order of the three DMACs is that the
次にアービタ213の動作について、図7に示すフローチャートを参照しながら説明する。
まずステップST11にて、リクエスト調停部222がリクエストを受け付ける。次いで、ステップST12にて、リクエスト調停部122は優先順位が一位である第1のライトDMAC15からのリクエストの有無を判断し、ある場合は(ST12:Yes)、ステップST13にて、第1の必要転送時間計算部2211が必要転送時間T21を算出する。
Next, the operation of the
First, in step ST11, the
次にステップST14にて、第1の必要転送時間計算部2211は、経過時間T1が必要転送時間T21より長いか否かを判断し、長い場合は(ST14:Yes)、ステップST16にて、リクエスト調停部222が第1のライトDMAC15からのリクエストを処理する。
Next, in step ST14, the first required transfer time calculation unit 2211 determines whether or not the elapsed time T1 is longer than the required transfer time T21. If longer (ST14: Yes), the request is sent in step ST16. The
一方、経過時間T1が必要転送時間T21以内の場合は(ST14:No)、ステップST15にて、その他のDMACからのリクエストの有無を判断する。そして、ない場合は(ST15:No)、ステップST16にて、第1のライトDMAC15からのリクエストを処理する。
On the other hand, if the elapsed time T1 is within the required transfer time T21 (ST14: No), it is determined in step ST15 whether there is a request from another DMAC. If not (ST15: No), the request from the
一方、その他のDMACからのリクエストがある場合は(ST15:Yes)、ステップST19に進んで、優先順位が二位である第1のリードDMAC16からのリクエストの有無を判断する。先のステップST12にて、第1のライトDMAC15からのリクエストがないと判断した場合も(ST12:No)、ステップST19を実行する。
On the other hand, if there is a request from another DMAC (ST15: Yes), the process proceeds to step ST19 to determine whether there is a request from the
そして、第1のリードDMAC16からのリクエストが有ると判断した場合は、ステップST20にて、第2の必要転送時間計算部2212が必要転送時間T22を算出する。次にステップST21にて、第2の必要転送時間計算部2211は、経過時間T1が必要転送時間T22より長いか否かを判断し、長い場合は(ST21:Yes)、ステップST22にて、リクエスト調停部222は第1のリードDMAC16からのリクエストを処理する。
If it is determined that there is a request from the
一方、経過時間T1が必要転送時間T22以内の場合は(ST21:No)、ステップST23にて、経過時間T1が必要転送時間T21より長いか否かを判断する。判断の結果、長い場合はステップST16に進んで、第1のライトDMAC15からのリクエストを処理する。また、長くない場合は、ステップST24にてその他(第1のライトDMAC15及び第1のリードDMAC16以外)のDMACからのリクエストの有無を判断する。判断の結果、ない場合は(ST24:No)、ステップST22にて第1のリードDMAC16からのリクエストを処理する。
On the other hand, if the elapsed time T1 is within the required transfer time T22 (ST21: No), it is determined in step ST23 whether the elapsed time T1 is longer than the required transfer time T21. If the result of determination is that it is long, the process proceeds to step ST16 to process the request from the
その他のDMACからのリクエストがある場合は(ST24:Yes)、ステップST25に進んで、優先順位が三位である第2のライトDMAC17に対して設けた第3の必要転送時間計算部2213が必要転送時間T23を算出する。先のステップST19にて、第1のリードDMAC16からのリクエストがないと判断した場合も(ST19:No)、ステップST25を実行する。
If there is a request from another DMAC (ST24: Yes), the process proceeds to step ST25, and the third required transfer
次にステップST26にて、第3の必要転送時間計算部2213は、経過時間T1が必要転送時間T23より長いか否かを判断し、長い場合は(ST26:Yes)、ステップST27にて、リクエスト調停部222が第2のライトDMAC17からのリクエストを処理する。
Next, in step ST26, the third required
一方、経過時間T1が必要転送時間T23以内の場合は(ST26:No)、ステップST28にて、経過時間T1が必要転送時間T21より長いか否かを判断する。そして、長い場合は、ステップST16に進んで、第1のライトDMAC15からのリクエストを処理する。また、長くない場合は、ステップST29にて、経過時間T1が必要転送時間T22より長いか否かを判断する。そして、長い場合は、ステップST22に進んで、第1のリードDMAC16からのリクエストを処理する。
On the other hand, if the elapsed time T1 is within the required transfer time T23 (ST26: No), it is determined in step ST28 whether the elapsed time T1 is longer than the required transfer time T21. If it is longer, the process proceeds to step ST16 to process the request from the
第1のライトDMAC15からのリクエストの処理(ステップST16)、第1のリードDMAC16からのリクエストの処理(ステップST22)、或いは第2のライトDMAC17からのリクエストの処理(ステップST27)を実行した後、ステップST17で、待機させている(ウェイト処理中)リクエストの有無を判断し、なければ、ステップST18で全データの転送が完了したと判断するまで、ステップST11から繰り返す。 After executing the request processing from the first write DMAC 15 (step ST16), the request processing from the first read DMAC 16 (step ST22), or the request processing from the second write DMAC 17 (step ST27), In step ST17, it is determined whether or not there is a waiting request (wait processing). If there is no request, it is repeated from step ST11 until it is determined in step ST18 that the transfer of all data has been completed.
待機させているリクエストがある場合は(ST17:Yes)、それが第1のライトDMAC15からのリクエストであれば(ST30:Yes)、ステップST14に進み、第1のライトDMAC15ではなく第1のリードDMAC16からのリクエストであれば(ST30:No→ST31:Yes)、ステップST21に進む。
If there is a waiting request (ST17: Yes), if it is a request from the first write DMAC 15 (ST30: Yes), the process proceeds to step ST14, and the first read is performed instead of the
以上説明した図7のフローチャートの処理を要約すると以下のようになる。
DMACからリクエストが発行されると、アービタ213は、まず第1のライトDMAC15からのリクエストか否かを判断する。判断の結果、そうであった場合は必要転送時間T2を算出する。そして、T2を現在のラインのスタートからの経過時間T1と比較し、T1の方がT2よりも長い場合は、そのまま第1のライトDMAC15からのリクエストを処理する。T2の方が長い場合は、その間は他のDMACからのリクエストがあればそれを優先して処理し、なければ第1のライトDMAC15からのリクエストを処理し、全データの転送が完了していれば終了、そうでなければ次のリクエストを待つ。
The processing of the flowchart of FIG. 7 described above is summarized as follows.
When a request is issued from the DMAC, the
リクエストの発行元が第1のライトDMAC15でなかった場合は、優先順位が次に高い第1のリードDMAC16が発行元か否かを判断し、そうであれば第1のライトDMAC15と同様な必要転送時間を計算し、ウェイトが必要であればウェイト処理を行う。リクエストの発行元が第1のリードDMAC16でなかった場合は、残りは第2のライトDMAC17のみであるから、第2のライトDMAC17について同様の計算を実行する。
If the request issuer is not the
第1のライトDMAC15に対するウェイト処理中に、他のDMACからのリクエストが発行された場合は、「第1のリードDMAC16からの処理か否か」の判定処理に移る。そこからは必要転送時間の計算となり、第1のリードDMAC16でウェイト処理が必要と判断され、それが実行されると、第1のライトDMAC15のウェイト時間が経過していないか否かを確認する処理を実行する。確認の結果、ウェイト期間が終了しているか若しくは他のDMACからのリクエストがなければ、第1のライトDMAC15からのリクエストを処理する。
If a request from another DMAC is issued during the wait process for the
この処理が終了すると、他にウェイト中のDMACがないかどうかを判別する処理を行う。この判別はウェイト要求信号(“1”でウェイト要求有り)に基づいて行うことができる。各DMACに対するウェイト要求信号の論理を確認し、ウェイト中のDMACがあれば、そのリクエストの処理に移る。ウェイト中のDMACがなければ、全データ転送完了か否かを判断し、完了していれば終了、そうでなければ次のリクエストの受け付けへと移る。ウェイト要求信号は一旦アサートされると、そのリクエストが処理されるまでネゲートされない。リクエストが処理されると、リクエスト調停部222よりリクエスト処理完了信号がアサートされ、それを受けてウェイト要求信号がネゲートされる。
When this process ends, a process is performed to determine whether there is any other DMAC in the wait state. This determination can be made based on a wait request signal (“1” indicates a wait request). The logic of the wait request signal for each DMAC is confirmed. If there is a DMAC in a wait state, the process proceeds to the request. If there is no waiting DMAC, it is determined whether or not all data transfer is completed. If it is completed, the process ends. If not, the process proceeds to accept the next request. Once asserted, the wait request signal is not negated until the request is processed. When the request is processed, a request processing completion signal is asserted from the
以上のように、本発明の第2の実施形態のアービタ113は、下記(1)〜(4)の効果を有する。
(1)全てのDMACに対して、データ転送状況を把握できるとともに、適宜ウェイト要求を発生させることができる。
(2)全てのDMACのデータ転送量を監視しながらアービトレーションすることによって、より精度よく効率的にデータ転送を行うことができる。
(3)ウェイト処理中のDMACを放置することなく、確実に処理することができる。
(4)複数のDMACに対してウェイト状態にあっても、正常に監視し、かつ確実にリクエストを処理することができる。
As described above, the
(1) For all DMACs, the data transfer status can be grasped and a wait request can be generated as appropriate.
(2) By performing arbitration while monitoring the data transfer amount of all DMACs, data transfer can be performed more accurately and efficiently.
(3) The DMAC during the wait process can be reliably processed without leaving it.
(4) Even in a wait state for a plurality of DMACs, it is possible to monitor normally and process the request reliably.
15・・・第1のライトDMAC、16・・・第1のリードDMAC、17・・・第2のライトDMAC、113,213・・・アービタ、121・・・必要転送時間計算部、122,222・・・リクエスト調停部、123,223・・・必要転送レート保持部、1211,2211,2212,2213・・・必要転送時間T2演算部及び時間比較部、1212・・・タイマー、1213・・・ウェイト要求信号生成部。 15 ... first write DMAC, 16 ... first read DMAC, 17 ... second write DMAC, 113, 213 ... arbiter, 121 ... required transfer time calculation unit, 122, 222 ... Request arbitration unit, 123,223 ... Necessary transfer rate holding unit, 1211, 2211, 2212, 2213 ... Necessary transfer time T2 calculation unit and time comparison unit, 1212 ... Timer, 1213 ... A wait request signal generation unit.
Claims (8)
所定時間毎に入力される所定量のデータを前記所定時間内に転送可能であり、かつ優先順位が最も高く設定されている第1のDMACにより前記所定時間内に前記所定量のデータの一部毎に順次発行される転送要求を受け付ける手段と、それらの転送要求による処理を実行する手段と、それらの転送要求による転送量の累積値を算出する手段と、前記累積値を前記第1のDMACに対して設定された転送速度で除算することにより、前記累積値のデータの必要転送時間を算出する手段と、前記所定の時間毎の経過時間を計測する手段と、前記経過時間と前記必要転送時間とを比較する手段と、その比較結果に基づいて、前記転送要求による処理を実行させるか待機させるかを決定する手段とを有することを特徴とする調停装置。 In an arbitration device that arbitrates transfer requests from a plurality of DMACs having different priorities,
A predetermined amount of data inputted every predetermined time can be transferred within the predetermined time, and a part of the predetermined amount of data within the predetermined time by the first DMAC set with the highest priority. Means for accepting transfer requests issued sequentially every time, means for executing processing according to the transfer requests, means for calculating a cumulative value of the transfer amount due to the transfer requests, and the cumulative value as the first DMAC By means of dividing by the transfer rate set for the above, means for calculating the required transfer time of the accumulated value data, means for measuring the elapsed time for each predetermined time, the elapsed time and the required transfer An arbitration apparatus comprising: means for comparing time; and means for determining whether to execute the processing according to the transfer request or to wait based on the comparison result.
前記決定する手段は、前記経過時間が前記必要転送時間を越えている場合は、前記転送要求による処理を実行させ、前記経過時間が前記必要転送時間以内の場合は、前記転送要求による処理を待機させることを特徴とする調停装置。 The arbitration device according to claim 1,
The means for determining causes the process according to the transfer request to be executed when the elapsed time exceeds the required transfer time, and waits for the process according to the transfer request when the elapsed time is within the required transfer time. Arbitration device characterized by letting it be.
前記決定する手段は、前記経過時間が前記必要転送時間以内の場合で、かつ前記第1のDMAC以外のDMACから転送要求がある場合は、その転送要求による処理を実行させることを特徴とする調停装置。 The arbitration device according to claim 2, wherein
The determining means is configured to execute processing according to a transfer request when the elapsed time is within the required transfer time and there is a transfer request from a DMAC other than the first DMAC. apparatus.
前記第1のDMAC以外のDMACに対しても、前記各手段が設けられていることを特徴とする調停装置。 In the arbitration device according to claim 1,
The arbitration apparatus is characterized in that the respective units are provided for DMACs other than the first DMAC.
前記決定する手段は、転送要求による処理を待機させるためのウェイト要求信号を発生した後、転送要求による処理を完了した前記実行する手段から処理完了信号を受けたとき、前記ウェイト要求信号をネゲートすることを特徴とする調停装置。 The arbitration device according to claim 1,
The determining means negates the wait request signal when it receives a processing completion signal from the executing means that has completed the processing according to the transfer request after generating the wait request signal for waiting for the processing according to the transfer request. An arbitration device characterized by that.
複数のDMACの転送要求を待機させている場合、一つの待機処理が終了した際に、他にも待機させているDMACの有無を判断し、ある場合にはその処理を監視しながら、他のDMACからの転送要求を処理することを特徴とする調停装置。 The arbitration device according to claim 4, wherein
When waiting for transfer requests of a plurality of DMACs, when one standby process is completed, it is determined whether or not there are other DMACs that are waiting. An arbitration device that processes a transfer request from a DMAC.
所定時間毎に入力される所定量のデータを前記所定時間内に転送可能であり、かつ優先順位が最も高く設定されている第1のDMACにより前記所定時間内に前記所定量のデータの一部毎に順次発行される転送要求を受け付ける工程と、それらの転送要求による処理を実行する工程と、それらの転送要求による転送量の累積値を算出する工程と、前記累積値を前記第1のDMACに対して設定された転送速度で除算することにより、前記累積値のデータの必要転送時間を算出する工程と、前記所定の時間毎の経過時間を計測する工程と、前記経過時間と前記必要転送時間とを比較する工程手段と、その比較結果に基づいて、前記転送要求による処理を実行させるか待機させるかを決定する工程とを有することを特徴とする調停方法。 In an arbitration method for arbitrating transfer requests from a plurality of DMACs having different priorities,
A predetermined amount of data inputted every predetermined time can be transferred within the predetermined time, and a part of the predetermined amount of data within the predetermined time by the first DMAC set with the highest priority. A step of receiving a transfer request issued sequentially every time, a step of executing a process according to the transfer request, a step of calculating a cumulative value of a transfer amount by the transfer request, and the cumulative value as the first DMAC By dividing by a transfer rate set to the above, a step of calculating a required transfer time of the accumulated value data, a step of measuring an elapsed time for each predetermined time, the elapsed time and the required transfer An arbitration method comprising: a step means for comparing time; and a step for determining whether to execute the processing according to the transfer request or to wait based on the comparison result.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007266815A JP4934000B2 (en) | 2007-10-12 | 2007-10-12 | Arbitration device, arbitration method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007266815A JP4934000B2 (en) | 2007-10-12 | 2007-10-12 | Arbitration device, arbitration method, and program |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012032377A Division JP5424138B2 (en) | 2012-02-17 | 2012-02-17 | Arbitration device, image forming apparatus, arbitration method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009098729A JP2009098729A (en) | 2009-05-07 |
JP4934000B2 true JP4934000B2 (en) | 2012-05-16 |
Family
ID=40701706
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007266815A Expired - Fee Related JP4934000B2 (en) | 2007-10-12 | 2007-10-12 | Arbitration device, arbitration method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4934000B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5862174B2 (en) * | 2011-10-03 | 2016-02-16 | 株式会社リコー | Image information transfer apparatus, image processing apparatus, and image information transfer control method |
JP5924104B2 (en) * | 2012-05-01 | 2016-05-25 | コニカミノルタ株式会社 | Image processing apparatus and image forming apparatus |
JP2015095177A (en) * | 2013-11-13 | 2015-05-18 | 株式会社リコー | Data transfer device, image processor, data transfer method and data transfer program |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63172359A (en) * | 1987-01-12 | 1988-07-16 | Fujitsu Ltd | Control system for transfer rate in direct memory access state |
JP2848082B2 (en) * | 1992-01-29 | 1999-01-20 | 日本電気株式会社 | DMA bus arbitration |
JPH0713923A (en) * | 1993-06-24 | 1995-01-17 | Ricoh Co Ltd | Bus control method |
JP2002207691A (en) * | 2001-01-11 | 2002-07-26 | Matsushita Electric Ind Co Ltd | Data transfer controller |
JP4284458B2 (en) * | 2001-05-23 | 2009-06-24 | 富士フイルム株式会社 | Digital camera |
JP2003018376A (en) * | 2001-07-05 | 2003-01-17 | Ricoh Co Ltd | Image forming device |
JP2005004563A (en) * | 2003-06-13 | 2005-01-06 | Canon Inc | Dma transfer controller |
JP4175974B2 (en) * | 2003-07-24 | 2008-11-05 | シャープ株式会社 | Image data transfer control device |
-
2007
- 2007-10-12 JP JP2007266815A patent/JP4934000B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009098729A (en) | 2009-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6169615B2 (en) | Method, integrated circuit and system for dynamically managing FIFO command queue of system controller | |
US9330025B2 (en) | Information processing apparatus, memory control apparatus, and control method thereof | |
WO1996013774A1 (en) | Multiprocessor system bus protocol for optimized accessing of interleaved storage modules | |
JP4198376B2 (en) | Bus system and information processing system including bus system | |
JP4934000B2 (en) | Arbitration device, arbitration method, and program | |
US20150160720A1 (en) | Multiple-queue multiple-resource entry sleep and wakeup for power savings and bandwidth conservation in a retry based pipeline | |
JP4846482B2 (en) | Bus arbitration device | |
US20070260791A1 (en) | Data processing device | |
WO2006024193A1 (en) | Method and system for data transfer | |
JP2005353041A (en) | Bus transaction management within data processing system | |
US7913013B2 (en) | Semiconductor integrated circuit | |
JP5424138B2 (en) | Arbitration device, image forming apparatus, arbitration method, and program | |
WO2021075076A1 (en) | Information processing device and information processing method | |
JP5293516B2 (en) | Data transfer device, data transfer control method, data transfer control program, and recording medium | |
JP4327081B2 (en) | Memory access control circuit | |
US11842071B2 (en) | Data transfer device and data transfer method | |
US20100153610A1 (en) | Bus arbiter and bus system | |
EP2667308A1 (en) | Data writing control device, data writing control method, and information processing device | |
US20100131677A1 (en) | Data transfer device and data transfer method | |
JP4249741B2 (en) | Bus system and information processing system including bus system | |
JP2800764B2 (en) | Data transfer control method | |
JP2006215621A (en) | Dma controller | |
JPH0844661A (en) | Information processor | |
JP4437386B2 (en) | Signal processing system | |
JP2012137844A (en) | Semiconductor device and control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100601 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111125 |
|
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: 20120120 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120217 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4934000 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150224 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |