JP2012146150A - Interruption signal generator and interruption signal generation method - Google Patents
Interruption signal generator and interruption signal generation method Download PDFInfo
- Publication number
- JP2012146150A JP2012146150A JP2011004436A JP2011004436A JP2012146150A JP 2012146150 A JP2012146150 A JP 2012146150A JP 2011004436 A JP2011004436 A JP 2011004436A JP 2011004436 A JP2011004436 A JP 2011004436A JP 2012146150 A JP2012146150 A JP 2012146150A
- Authority
- JP
- Japan
- Prior art keywords
- value
- interrupt
- timer
- counter value
- factor
- 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.)
- Withdrawn
Links
Images
Abstract
Description
本発明は、割り込み信号生成装置および割り込み信号生成方法に関し、特に、USB(Universal Serial Bus)ホストコントローラ(Host Controller)等のI/Oコントローラにおける割り込み信号生成装置および割り込み信号生成方法に関する。 The present invention relates to an interrupt signal generation device and an interrupt signal generation method, and more particularly, to an interrupt signal generation device and an interrupt signal generation method in an I / O controller such as a USB (Universal Serial Bus) host controller (Host Controller).
USBホストコントローラ等のI/Oコントローラは、パケットの転送処理の完了をドライバソフトウエアに通知するための割り込み信号を1つのパケットまたは複数のパケット単位で生成する。I/Oコントローラが処理するパケット数が増加すると、頻繁に割り込み信号が生成されるため、システムCPUの処理が割り込み処理に使用される頻度が増加し、システム全体の性能低下を招く。この問題を解決するために、割り込み信号の生成頻度が高くならないように割り込み調停(Interrupt Moderation)を行う方法が知られている。 An I / O controller such as a USB host controller generates an interrupt signal for notifying the driver software of completion of packet transfer processing in units of one packet or a plurality of packets. When the number of packets processed by the I / O controller increases, an interrupt signal is frequently generated. Therefore, the frequency at which the processing of the system CPU is used for interrupt processing increases, and the performance of the entire system is degraded. In order to solve this problem, a method of performing interrupt moderation (Interrupt Moderation) so as to prevent the generation frequency of interrupt signals from increasing is known.
特許文献1には、複数のタイマを使用して割り込み調停を行う方法が記載されている。すべてのタイマは、割り込み信号の生成によりそれぞれのタイマに固有の周期値に初期化される。また、各タイマに固有に設定された検出回数の割り込み要因の発生を検出すると、タイマごとに個別に固有の周期値に初期化される。この初期化条件に該当しない場合は、タイマ値はゼロになるまでデクリメントされる。いずれかのタイマがゼロになり、かつ割り込み要因が検出されると割り込み信号が生成される。
また、非特許文献1にも、複数のタイマを使用するコントローラが記載されている。非特許文献1の7.3.2節を参照すると、コントローラは、1つの“LTR Moderation Timer”、1つの“LLI Moderation Timer”、および1つの“LLI Credit Counter”を使用する。優先順位付けした特定の割り込み要因に対して“LLI Moderation Timer”と“LLI Credit Counter”を使用して割り込み信号の生成を行う。“LTR Moderation Timer”は、特許文献1において1つのタイマのみが使用される動作に相当し、優先順位付けされていない割り込み要因に対して使用される。
Non-Patent
以下の分析は、本発明者によってなされたものである。 The following analysis was made by the present inventors.
特許文献1に記載された方法では、複数のタイマを使用して割り込み信号生成の制御を行うため、回路規模が増大する。また、代表して単一のタイマのみを使用して“Interrupt Moderation”による効果を高める周期値を設定するようにした場合には、割り込み要因の発生から割り込み信号の生成までにタイマ分の待ち時間が加わり、ドライバソフトウエアへの割り込み通知が遅れてI/Oコントローラの処理性能が低下する。
In the method described in
また、非特許文献1に記載されたコントローラでは、複数のタイマを使用して割り込み信号生成の制御を行うため、回路規模が増大する。優先順位付けされていない通常の割り込み要因に対して、非特許文献1のコントローラの処理は特許文献1における単独タイマによる処理に相当するため、割り込み要因の発生から割り込み信号の生成までの遅延時間を短くすることはできない。
Further, in the controller described in
したがって、特許文献1および非特許文献1に記載された技術によると、回路規模が増大し、または、割り込み信号の生成頻度が抑えられる代わりにパケット処理が完了してから割り込み信号が生成されるまでの遅延時間が増加してI/Oコントローラの処理性能が低下するという問題がある。
Therefore, according to the techniques described in
そこで、割り込み要因の到着から割り込み信号を生成するまでの遅延期間を増大させることなく、小さい回路規模で割り込み調停を実現することが課題となる。 Therefore, it is a problem to realize interrupt arbitration with a small circuit scale without increasing the delay period from the arrival of an interrupt factor to the generation of an interrupt signal.
本発明の第1の視点に係る割り込み信号生成装置は、
所定の期間を計時するタイマと、
所定の初期値に初期化されたカウンタ値を保持するカウンタと、
割り込み要因を検出することなく前記所定の期間が満了した場合には、前記タイマを初期化するとともに、前記カウンタ値をインクリメントまたはデクリメントし、前記所定の期間が満了する前に割り込み要因を検出した場合において、前記カウンタ値が前記所定の初期値であるときには、前記所定の期間の満了後に割り込み信号を生成するとともに前記タイマを初期化し、前記カウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記インクリメントまたは前記デクリメントとは逆方向に前記カウンタ値をデクリメントまたはインクリメントするとともに前記タイマを初期化する信号生成部と、を備えている。
An interrupt signal generation device according to a first aspect of the present invention provides:
A timer for timing a predetermined period;
A counter that holds a counter value initialized to a predetermined initial value;
When the predetermined period has expired without detecting an interrupt factor, the timer is initialized, the counter value is incremented or decremented, and the interrupt factor is detected before the predetermined period expires When the counter value is the predetermined initial value, an interrupt signal is generated after expiration of the predetermined period and the timer is initialized, and when the counter value is a value other than the predetermined initial value, An interrupt signal is generated without waiting for the expiration of the predetermined period, and the counter value is decremented or incremented in a direction opposite to the increment or decrement, and a signal generator that initializes the timer is provided. .
本発明の第2の視点に係る割り込み信号生成方法は、
割り込み信号生成装置が、タイマを用いて所定の期間を計時する工程と、
割り込み要因を検出することなく前記所定の期間が満了した場合には、前記タイマを初期化するとともに、所定の初期値に初期化されたカウンタ値をインクリメントまたはデクリメントする工程と、
前記所定の期間が満了する前に割り込み要因を検出した場合において、前記カウンタ値が前記所定の初期値であるときには、前記所定の期間の満了後に割り込み信号を生成するとともに前記タイマを初期化する工程と、
前記所定の期間が満了する前に割り込み要因を検出した場合において、前記カウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記インクリメントまたは前記デクリメントとは逆方向に前記カウンタ値をデクリメントまたはインクリメントするとともに前記タイマを初期化する工程と、を含む。
The interrupt signal generation method according to the second aspect of the present invention is:
An interrupt signal generation device for measuring a predetermined period using a timer;
A step of initializing the timer and incrementing or decrementing a counter value initialized to a predetermined initial value when the predetermined period expires without detecting an interrupt factor;
When an interrupt factor is detected before the predetermined period expires, and the counter value is the predetermined initial value, an interrupt signal is generated and the timer is initialized after the predetermined period expires When,
When an interrupt factor is detected before the predetermined period expires, if the counter value is a value other than the predetermined initial value, an interrupt signal is generated without waiting for the predetermined period to expire, Incrementing or decrementing the counter value in a direction opposite to the decrementing and initializing the timer.
本発明に係る割り込み信号生成装置および割り込み信号生成方法によると、割り込み要因の到着から割り込み信号を生成するまでの遅延期間を増大させることなく、小さい回路規模で割り込み調停を実現することができる。 According to the interrupt signal generation device and the interrupt signal generation method according to the present invention, interrupt arbitration can be realized with a small circuit scale without increasing the delay period from the arrival of an interrupt factor to the generation of an interrupt signal.
はじめに、本発明の概要について説明する。なお、この概要に付記する図面参照符号は、専ら理解を助けるための例示であり、本発明を図示の態様に限定することを意図するものではない。 First, the outline of the present invention will be described. Note that the reference numerals of the drawings attached to this summary are merely examples for facilitating understanding, and are not intended to limit the present invention to the illustrated embodiment.
図1を参照すると、本発明に係る割り込み信号生成装置(10)は、所定の期間を計時するタイマ(12)と、所定の初期値に初期化されたカウンタ値を保持するカウンタ(14)と、割り込み要因を検出することなく前記所定の期間が満了した場合には、タイマ(12)を初期化するとともに、前記カウンタ値をインクリメント(またはデクリメント)し、前記所定の期間が満了する前に割り込み要因を検出した場合において、前記カウンタ値が前記所定の初期値であるときには、前記所定の期間の満了後に割り込み信号を生成するとともにタイマ(12)を初期化し、前記カウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記カウンタ値をデクリメント(またはインクリメント)するとともにタイマ(12)を初期化する信号生成部(16)と、を備えている。 Referring to FIG. 1, an interrupt signal generation device (10) according to the present invention includes a timer (12) that counts a predetermined period, and a counter (14) that holds a counter value initialized to a predetermined initial value. When the predetermined period has expired without detecting an interrupt factor, the timer (12) is initialized, the counter value is incremented (or decremented), and an interrupt occurs before the predetermined period expires. When the factor is detected and the counter value is the predetermined initial value, an interrupt signal is generated after the predetermined period expires and the timer (12) is initialized, and the counter value is the predetermined initial value. When the value is other than, an interrupt signal is generated without waiting for the expiration of the predetermined period, and the counter value is decremented (or incremented). Signal generating unit for initializing the timer (12) while decrementing) and (16), and a.
すなわち、本発明に係る割り込み信号生成装置(10)は、1つのタイマ(12)と1つのカウンタ(14)を有する。タイマ(12)は、割り込み信号の生成周期を管理する。カウンタ値は、一例として、初期値ゼロに初期化されていてもよい。カウンタ(14)は、タイマ(12)により管理される割り込み信号生成周期期間内に割り込み要因を検出しなかった場合にインクリメントされ、割り込み信号の生成によりデクリメントされる。信号生成部(16)は、カウンタ(14)のカウンタ値がゼロの場合には、検出した割り込み要因に基づく割り込み信号生成をタイマ(12)が管理する割り込み信号生成周期まで遅延させ、カウンタ(14)のカウンタ値がゼロでない場合には、検出した割り込み要因に基づく割り込み信号生成を即座に行うように割り込み信号の生成を制御する。 That is, the interrupt signal generation device (10) according to the present invention has one timer (12) and one counter (14). The timer (12) manages the generation period of the interrupt signal. As an example, the counter value may be initialized to an initial value of zero. The counter (14) is incremented when no interrupt factor is detected within the interrupt signal generation cycle period managed by the timer (12), and is decremented by generation of the interrupt signal. When the counter value of the counter (14) is zero, the signal generation unit (16) delays interrupt signal generation based on the detected interrupt factor until the interrupt signal generation period managed by the timer (12), and the counter (14 When the counter value is not zero, the generation of the interrupt signal is controlled so as to immediately generate the interrupt signal based on the detected interrupt factor.
また、複数の割り込み要因のグループがあり、これらのグループ間で優先順位の重みづけを行う場合には、割り込み要因ごとにカウンタ(14)を設けて、同様の管理を行うようにしてもよい。 Further, when there are a plurality of groups of interrupt factors, and priority weighting is performed between these groups, a counter (14) may be provided for each interrupt factor to perform the same management.
本発明によると、1つのタイマと1つのカウンタを使用して割り込み信号の生成を制御する。したがって、本発明によると、複数のタイマを使用して割り込み信号の生成を制御する特許文献1および非特許文献1に記載された技術と比較して、回路規模を削減することができる。
According to the present invention, one timer and one counter are used to control the generation of an interrupt signal. Therefore, according to the present invention, the circuit scale can be reduced as compared with the techniques described in
また、本発明の割り込み信号生成装置(10)は1つのタイマのみを使用して割り込み生成周期を管理するが、割り込み要因が発生しなかった周期の回数分の割り込み信号を、タイマが管理する周期を待たずに生成することができる。したがって、複数回の割り込み生成周期時間で平均した場合の割り込みの発生頻度は1つのタイマのみを使用した場合と同等であるが、割り込み要因がない期間の後に頻繁に割り込み要因が発生する状況ではドライバソフトウエアへの割り込み通知が遅れることがない。したがって、本発明の割り込み信号生成装置によると、I/Oコントローラの処理性能の低下を防ぐことができる。 Further, the interrupt signal generation device (10) of the present invention uses only one timer to manage the interrupt generation cycle, but the timer manages the interrupt signals for the number of cycles in which no interrupt factor has occurred. Can be generated without waiting. Therefore, the interrupt generation frequency when averaged over multiple interrupt generation cycle times is the same as when only one timer is used, but in situations where interrupt factors occur frequently after a period without interrupt factors, the driver Interrupt notification to software is not delayed. Therefore, according to the interrupt signal generation device of the present invention, it is possible to prevent the processing performance of the I / O controller from being lowered.
さらに、本発明によると、割り込み要因の優先順位の重み付けによってタイマを複数設ける必要がない。したがって、本発明によると、優先順位の重み付けがある複数の要因を処理する際に複数のタイマを使用して割り込み信号の生成を制御する技術と比較して、回路規模を削減することができる。 Furthermore, according to the present invention, it is not necessary to provide a plurality of timers by weighting the priority of interrupt factors. Therefore, according to the present invention, it is possible to reduce the circuit scale as compared with a technique of controlling generation of an interrupt signal using a plurality of timers when processing a plurality of factors having priority weights.
本発明において、下記の形態が可能である。
[形態1]
上記第1の視点に係る割り込み信号生成装置のとおりである。
[形態2]
前記所定の初期値に初期化された第1のカウンタ値を保持する第1のカウンタと、
前記所定の初期値に初期化された第2のカウンタ値を保持する第2のカウンタと、を備え、
前記信号生成部は、第1の割り込み要因および第2の割り込み要因のいずれも検出することなく前記所定の期間が満了した場合には、前記タイマを初期化するとともに、前記第1のカウンタ値および前記第2のカウンタ値をインクリメントまたはデクリメントし、前記所定の期間が満了する前に第1の割り込み要因を検出した場合において、前記第1のカウンタ値が前記所定の初期値であるときには、前記所定の期間の満了後に割り込み信号を生成するとともに前記タイマを初期化し、前記第1のカウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記インクリメントまたは前記デクリメントとは逆方向に前記第1のカウンタ値をデクリメントまたはインクリメントするとともに前記タイマを初期化し、前記所定の期間が満了する前に第2の割り込み要因を検出した場合において、前記第2のカウンタ値が前記所定の初期値であるときには、前記所定の期間の満了後に割り込み信号を生成するとともに前記タイマを初期化し、前記第2のカウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記インクリメントまたは前記デクリメントとは逆方向に前記第2のカウンタ値をデクリメントまたはインクリメントするとともに前記タイマを初期化するようにしてもよい。
[形態3]
前記第1のカウンタ値の上限値および前記第2のカウンタ値の上限値は、それぞれ、前記第1の割り込み要因および前記第2の割り込み要因の優先度に応じた値であることが好ましい。
[形態4]
前記タイマは、所定の整数により初期化されたタイマ値を一定の時間間隔でインクリメントまたはデクリメントして前記所定の期間を計時し、
前記信号生成部は、前記タイマ値を前記所定の整数により初期化することにより、前記タイマを初期化するようにしてもよい。
[形態5]
上記第2の視点に係る割り込み信号生成方法のとおりである。
[形態6]
前記信号生成部が、第1の割り込み要因および第2の割り込み要因のいずれも検出することなく前記所定の期間が満了した場合には、前記タイマを初期化するとともに、前記第1のカウンタ値および前記第2のカウンタ値をインクリメントまたはデクリメントする工程と、
前記所定の期間が満了する前に第1の割り込み要因を検出した場合において、前記所定の初期値に初期化された第1のカウンタ値が前記所定の初期値であるときには、前記所定の期間の満了後に割り込み信号を生成するとともに前記タイマを初期化する工程と、
前記所定の期間が満了する前に第1の割り込み要因を検出した場合において、前記第1のカウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記インクリメントまたは前記デクリメントとは逆方向に前記第1のカウンタ値をデクリメントまたはインクリメントするとともに前記タイマを初期化する工程と、
前記所定の期間が満了する前に第2の割り込み要因を検出した場合において、前記所定の初期値に初期化された第2のカウンタ値が前記所定の初期値であるときには、前記所定の期間の満了後に割り込み信号を生成するとともに前記タイマを初期化する工程と、
前記所定の期間が満了する前に第2の割り込み要因を検出した場合において、前記第2のカウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記インクリメントまたは前記デクリメントとは逆方向に前記第2のカウンタ値をデクリメントまたはインクリメントするとともに前記タイマを初期化する工程と、を含んでいてもよい。
[形態7]
前記第1のカウンタ値の上限値および前記第2のカウンタ値の上限値は、それぞれ、前記第1の割り込み要因および前記第2の割り込み要因の優先度に応じた値であることが好ましい。
In the present invention, the following modes are possible.
[Form 1]
This is the same as the interrupt signal generation device according to the first aspect.
[Form 2]
A first counter that holds a first counter value initialized to the predetermined initial value;
A second counter that holds a second counter value initialized to the predetermined initial value,
The signal generation unit initializes the timer and detects the first counter value and the first counter value when the predetermined period has expired without detecting both the first interrupt factor and the second interrupt factor. When the first counter value is the predetermined initial value when the second counter value is incremented or decremented and the first interrupt factor is detected before the predetermined period expires, An interrupt signal is generated after expiration of the period, and the timer is initialized. When the first counter value is a value other than the predetermined initial value, an interrupt signal is generated without waiting for the predetermined period to expire. When the first counter value is decremented or incremented in the direction opposite to the increment or decrement, If the second counter value is the predetermined initial value when the timer is initialized and the second interrupt factor is detected before the predetermined period expires, the expiration of the predetermined period An interrupt signal is generated later and the timer is initialized. When the second counter value is a value other than the predetermined initial value, an interrupt signal is generated without waiting for the predetermined period to expire, and the increment is performed. Alternatively, the second counter value may be decremented or incremented in the direction opposite to the decrement, and the timer may be initialized.
[Form 3]
It is preferable that the upper limit value of the first counter value and the upper limit value of the second counter value are values according to priorities of the first interrupt factor and the second interrupt factor, respectively.
[Form 4]
The timer counts the predetermined period by incrementing or decrementing a timer value initialized with a predetermined integer at regular time intervals,
The signal generation unit may initialize the timer by initializing the timer value with the predetermined integer.
[Form 5]
This is the same as the interrupt signal generation method according to the second aspect.
[Form 6]
When the predetermined period has expired without detecting either the first interrupt factor or the second interrupt factor, the signal generation unit initializes the timer and sets the first counter value and Incrementing or decrementing the second counter value;
When the first interrupt factor is detected before the predetermined period expires, when the first counter value initialized to the predetermined initial value is the predetermined initial value, the predetermined period Generating an interrupt signal after expiration and initializing the timer;
In the case where the first interrupt factor is detected before the predetermined period expires, if the first counter value is a value other than the predetermined initial value, the interrupt is performed without waiting for the predetermined period to expire. Generating a signal, decrementing or incrementing the first counter value in a direction opposite to the increment or decrement and initializing the timer;
When the second interrupt factor is detected before the predetermined period expires, and the second counter value initialized to the predetermined initial value is the predetermined initial value, the predetermined period Generating an interrupt signal after expiration and initializing the timer;
In the case where the second interrupt factor is detected before the predetermined period expires, if the second counter value is a value other than the predetermined initial value, the interrupt is performed without waiting for the predetermined period to expire. Generating a signal, decrementing or incrementing the second counter value in a direction opposite to the incrementing or decrementing, and initializing the timer.
[Form 7]
It is preferable that the upper limit value of the first counter value and the upper limit value of the second counter value are values according to priorities of the first interrupt factor and the second interrupt factor, respectively.
(実施形態1)
第1の実施形態に係る割り込み信号生成装置について、図面を参照して説明する。図1は、本実施形態に係る割り込み信号生成装置10の構成を示すブロック図である。図1を参照すると、割り込み信号生成装置10は、タイマ12、カウンタ14、および、信号生成部16を備えている。
(Embodiment 1)
An interrupt signal generation device according to a first embodiment will be described with reference to the drawings. FIG. 1 is a block diagram illustrating a configuration of an interrupt
タイマ12は、所定の期間を計時する。カウンタ14は、所定の初期値に初期化されたカウンタ値を保持する。信号生成部16は、割り込み要因を検出することなく前記所定の期間が満了した場合には、タイマ12を初期化するとともに、前記カウンタ値をインクリメント(またはデクリメント)する。一方、前記所定の期間が満了する前に割り込み要因を検出した場合において、前記カウンタ値が前記所定の初期値であるときには、信号生成部16は、前記所定の期間の満了後に割り込み信号を生成するとともにタイマ12を初期化し、前記カウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記カウンタ値をデクリメント(またはインクリメント)するとともにタイマ12を初期化する。
The
図2は、割り込み信号生成装置10の動作を示すフローチャートである。図2(a)のフローチャートおよび図2(b)のフローチャートの2つの処理ループは互いに並列に処理される。図2(a)の処理ループは、割り込み信号生成の周期管理を行うタイマ12および信号生成部16の動作を示す。一方、図2(b)の処理ループは、カウンタ14および信号生成部16の動作、すなわち、割り込み要因が発生しなかった周期の回数を計測するカウンタ14によるカウンタ動作と信号生成部16による割り込み信号生成動作を示す。
FIG. 2 is a flowchart showing the operation of the interrupt
図2(a)の処理ループ内で処理されるタイマ値は、図2(b)の処理ループで参照される(ステップB13、B16)。同様に、図2(b)の処理ループ内で処理される割り込み生成の有無は図2(a)の処理ループで参照される(ステップA13)。 The timer value processed in the processing loop of FIG. 2A is referred to in the processing loop of FIG. 2B (steps B13 and B16). Similarly, whether or not an interrupt is processed in the processing loop of FIG. 2B is referred to in the processing loop of FIG. 2A (step A13).
図2(a)を参照すると、タイマ12は、タイマ値に初期値Nをロードする(ステップA11)。タイマ12は、一定のペース、すなわち、一定の時間間隔で、タイマ値をデクリメントする(ステップA12)。
Referring to FIG. 2A, the
信号生成部16は、割り込み信号を生成すると(ステップA13のYes)、タイマ値に初期値N(Nは正整数)をロードするようにタイマ12に指示する(ステップA11)。一方、割り込み信号が生成されない場合には(ステップA13のNo)、タイマ12は、タイマ値がゼロでない間(ステップA14のNo)、タイマ値をデクリメントし続ける。また、割り込み信号が生成されることなく(ステップA13のNo)、タイマ値がゼロとなった場合には(ステップA14のYes)、信号生成部16は、タイマ値に初期値Nをロードするようにタイマ12に指示する(ステップA11)。
When generating the interrupt signal (Yes in Step A13), the
図2(b)を参照すると、カウンタ14は、カウンタ値をゼロにリセットする(ステップB11)。
Referring to FIG. 2B, the
割り込み要因を検出することなく(ステップB12のNo)、タイマ値がゼロとなった場合には(ステップB13のYes)、信号生成部16は、カウンタ値をインクリメントするようにカウンタ14に指示する(ステップB14)。
When the timer value becomes zero (No in Step B13) without detecting the interrupt factor (No in Step B12), the
信号生成部16は、割り込み要因を検出した場合に(ステップB12のYes)、カウンタ値がゼロであるときには(ステップB15のYes)、タイマ値がゼロとなるまで待機した後(ステップB16のYes)、割り込み信号を生成する(ステップB18)。
When detecting the interrupt factor (Yes in Step B12), the
一方、信号生成部16は、割り込み要因を検出した場合に(ステップB12のYes)、カウンタ値がゼロでないときには(ステップB15のNo)、カウンタ値をデクリメントするとともに(ステップB17)、直ちに割り込み信号を生成する(ステップB18)。
On the other hand, when the
図3は、本実施形態の割り込み信号生成装置10の具体的な動作について説明するための図である。図3を参照すると、割り込み要因a1〜a8は、パケット処理完了などの割り込み要因の発生を表す。また、割り込み信号b1〜b5は、割り込み信号の生成を表す。
FIG. 3 is a diagram for explaining a specific operation of the interrupt
図3のタイマ値は、図2のタイマ12におけるタイマ値に対応する。タイマ12は、タイマ値に基づいて割り込み信号の生成周期を管理する。タイマ12は、タイマ値の初期値Nをロードし(ステップA11)、時間の経過とともにタイマ値をカウントダウンする(ステップA12)。
The timer value in FIG. 3 corresponds to the timer value in the
図3のカウンタ値は、図2のカウンタ14のカウンタ値に対応する。カウンタ14は、カウンタ値に基づいて割り込み要因が発生しなかった周期の回数を計測する。
The counter value in FIG. 3 corresponds to the counter value of the
以下では、図3の各周期における具体的な動作について説明する。 Hereinafter, a specific operation in each cycle in FIG. 3 will be described.
周期1では、3つの割り込み要因a1、a2、a3が発生しているが(図2のステップB12のYes)、カウンタ値はゼロである(ステップB15のYes)。したがって、信号生成部16は、それぞれの割り込み要因からすぐに割り込み信号は生成せずに、タイマ値がゼロになるのを待つ(ステップB16)。タイマ値がゼロになった時点で(ステップB16のYes)、信号生成部16は割り込み信号b1を生成する。周期1の完了時点で、タイマ値に初期値Nが再度ロードされるが(ステップA11)、周期1の期間で割り込み要因が発生しているためカウンタ値は値が変わらない。
In
周期2では、割り込み要因が発生しておらず(ステップB12のNo)、タイマ値が初期値Nからカウントダウンされてゼロとなった周期2の終了時点で(ステップB13のYes)、カウンタ値は+1インクリメントされる(ステップB14)。同時に、タイマ値には、初期値Nが再度ロードされる(ステップA11)。
In
周期3および周期4では、割り込み要因が発生しておらず(ステップB12のNo)、周期2と同様な動作が行われる。周期3および周期4のそれぞれの周期の終了時点で(ステップB13のYes)、カウンタ値は+1インクリメントされ(ステップB14)、タイマ値に初期値Nが再度ロードされる(ステップA11)。周期2〜4の3周期期間では割り込み要因が発生しなかったため、カウンタ値は周期4の満了時点で3となっている。
In
周期5において割り込み要因a4が発生した時(ステップB12のYes)、カウンタ値は3(≠ゼロ)となっている(ステップB15のNo)。したがって、信号生成部16は、タイマ値がゼロではないものの、割り込み要因a4の発生後直ちに、カウンタ値を−1デクリメントするとともに(ステップB17)、割り込み信号b2を生成し(ステップB18、ステップA13のYes)、タイマ値に初期値Nを再度ロードする(ステップA11)。その後、周期5の期間で割り込み要因a5が発生した時(ステップB12のYes)、カウンタ値は2(≠ゼロ)となっている(ステップB15のNo)。したがって、信号生成部16は、タイマ値がゼロではないものの、割り込み要因a5の発生後直ちに、カウンタ値を−1デクリメントするとともに(ステップB17)、割り込み信号b3を生成し(ステップB18、ステップA13のYes)、タイマ値に初期値Nを再度ロードする(ステップA11)。もともとの周期5の終了タイミングでは、タイマ値はカウントダウンを続けておりゼロでないため(ステップB13のNo)、カウンタ値は変化しない。
When interrupt factor a4 occurs in cycle 5 (Yes in step B12), the counter value is 3 (≠ zero) (No in step B15). Therefore, although the timer value is not zero, the
周期6において割り込み要因a6が発生した時(ステップB12のYes)、カウンタ値は1(≠ゼロ)となっている(ステップB15のNo)。したがって、信号生成部16は、タイマ値がゼロではないものの、割り込み要因a6の発生後直ちに、カウンタ値を−1デクリメントするとともに(ステップB17)、割り込み信号b4を生成し(ステップB18、ステップA13のYes)、タイマ値に初期値Nを再度ロードする(ステップA11)。その後、周期6の期間内で割り込み要因a7、a8が発生しているが(ステップB12のYes)、カウンタ値がゼロである(ステップB15のYes)。したがって、信号生成部16は、それぞれの割り込み要因からすぐに割り込みは生成せずに、タイマ値がゼロになるのを待つ(ステップB16のYes)。
When interrupt factor a6 occurs in cycle 6 (Yes in step B12), the counter value is 1 (≠ zero) (No in step B15). Therefore, although the timer value is not zero, the
タイマ値がゼロになった時点で(ステップB16のYes)、信号生成部16は、割り込み信号b5を生成する(ステップB18)。もともとの周期6の終了タイミングでは、タイマ値はカウントダウンを続けておりゼロでないため(ステップB13のNo)、カウンタ値は変化しない。割り込み信号b5を生成すると(ステップA13のYes)、タイマ値はNに再度ロードされるが(ステップA11)、割り込み要因a7、a8が発生しているためカウンタ値は値が変わらない。
When the timer value becomes zero (Yes in Step B16), the
なお、カウンタ14のカウンタ値には所定の上限値が設定されており、カウンタ値が上限に達している場合には、インクリメント命令(ステップB14)に対して同一の値が維持される。
Note that a predetermined upper limit value is set for the counter value of the
本実施形態では、タイマ12により割り込み信号の生成周期を管理し、割り込み信号生成周期期間内に割り込み要因を検出しなかった場合にカウンタ値をインクリメントし、割り込み信号の生成によりカウンタ値をデクリメントする。また、カウンタ値がゼロの場合には検出した割り込み要因に基づく割り込み信号生成をタイマ12により管理する割り込み信号生成周期まで遅延させ、該カウンタ値がゼロでない場合には検出した割り込み要因に基づく割り込み信号生成を即座に行うように割り込み信号を生成する。
In the present embodiment, the interrupt signal generation cycle is managed by the
これにより、複数の割り込み信号生成周期期間にわたって平均したときの割り込み信号の発生頻度は、タイマ12で管理する割り込み信号生成周期の1周期につき1回程度に抑えることができる。また、割り込み信号が生成されなかった周期の後では、その周期の回数に応じて、割り込み要因発生から割り込み信号生成までの遅延がないように割り込み信号を生成させることができる。
Thereby, the generation frequency of the interrupt signal when averaged over a plurality of interrupt signal generation cycle periods can be suppressed to about once per one interrupt signal generation cycle managed by the
本実施形態の割り込み信号生成装置10によると、以上の動作を、1つのタイマ12と1つのカウンタ14による制御で実現しうる。
According to the interrupt
割り込み信号の生成周期としては数usから1ms程度の期間を管理できるようにすることが多く、この場合、タイマ12の回路規模は、例えば、その動作クロック周波数が100MHzの場合には14ビット必要になる。これに対して、本実施形態のカウンタ14は数十から百個程度の数を計測できれば十分で、7から8ビット程度の回路で処理しうる。例えば、USBの場合、ホストコントローラに接続するUSBデバイスの総数は数十個程度であり、カウンタ14はこの数に相当する数を計測できれば十分である。したがって、本実施形態の割り込み信号生成装置10によると、複数のタイマを使用することなく、1つのタイマ12と1つのカウンタ14により割り込み信号の生成を制御することで回路規模を削減することができる。
In many cases, it is possible to manage a period of several us to 1 ms as the generation period of the interrupt signal. In this case, the circuit scale of the
また、図3の動作フロー例の割り込み要因a4〜a6のように、割り込み要因発生から割り込み信号生成までのタイマ12による周期管理に起因する遅延時間がなくなる。したがって、本実施形態の信号生成装置によると、例えば、5Gb/sのビットレートで通信を行うUSB3.0では、USB3.0のHDDやFlash Drive等のストレージデバイスを接続して動作させる際のスループット性能を約10%程度向上させることができる。
Further, like the interrupt factors a4 to a6 in the operation flow example of FIG. 3, there is no delay time caused by the cycle management by the
(実施形態2)
第2の実施形態に係る割り込み信号生成装置について、図面を参照して説明する。図4は、本実施形態に係る割り込み信号生成装置20の構成を示すブロック図である。図4を参照すると、割り込み信号生成装置20は、タイマ22、カウンタ24,25、および、信号生成部26を備えている。
(Embodiment 2)
An interrupt signal generation device according to a second embodiment will be described with reference to the drawings. FIG. 4 is a block diagram illustrating a configuration of the interrupt
タイマ22は、所定の期間を計時する。第1のカウンタ24は、所定の初期値に初期化された第1のカウンタ値を保持する。第2のカウンタ25は、所定の初期値に初期化された第2のカウンタ値を保持する。
The
信号生成部26は、第1の割り込み要因および第2の割り込み要因のいずれも検出することなく前記所定の期間が満了した場合には、タイマ22を初期化するとともに、第1のカウンタ値および第2のカウンタ値をインクリメント(またはデクリメント)する。一方、前記所定の期間が満了する前に第1の割り込み要因を検出した場合において、第1のカウンタ値が前記所定の初期値であるときには、信号生成部26は、前記所定の期間の満了後に割り込み信号を生成するとともにタイマ22を初期化し、第1のカウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、第1のカウンタ値をデクリメント(またはインクリメント)するとともにタイマ22を初期化する。同様に、前記所定の期間が満了する前に第2の割り込み要因を検出した場合において、第2のカウンタ値が前記所定の初期値であるときには、信号生成部26は、前記所定の期間の満了後に割り込み信号を生成するとともにタイマ22を初期化し、第2のカウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、第2のカウンタ値をデクリメント(またはインクリメント)するとともにタイマ22を初期化する。
When the predetermined period has expired without detecting both the first interrupt factor and the second interrupt factor, the
本実施形態では、一例として、カウンタの個数を2個としたが、カウンタの個数はこれに限定されるものではない。すなわち、カウンタの個数は、割り込み要因に応じて任意の個数とすることができる。 In the present embodiment, the number of counters is two as an example, but the number of counters is not limited to this. That is, the number of counters can be set arbitrarily according to the interrupt factor.
図5は、割り込み信号生成装置20の動作を示すフローチャートである。図5(a)〜(c)のフローチャートの複数の処理ループは互いに並列に処理を行う。図5(a)の処理ループは、割り込み信号生成の周期管理を行うタイマ22および信号生成部26の動作を示す。図5(b)の処理ループは、信号生成部26による割り込み信号生成動作を示す。図5(c)の処理ループは、同一の処理ループが独立に2個存在しうる(n=2)。図5(c)の処理ループは、対象とする割り込み要因ごとに複数に並列化されたものである。図5(c)の処理ループは、それぞれの割り込み要因毎に割り込み要因が発生しなかった周期の回数を計測するカウンタ24,25のカウンタ動作と、割り込み信号生成を要求するトリガ信号の生成動作を示す。
FIG. 5 is a flowchart showing the operation of the interrupt
図5(a)の処理ループ内で処理されるタイマ値は、図5(c)の処理ループで参照される(ステップB23、B26)。図5(b)の処理ループ内で処理される割り込み信号生成の有無は、図5(a)の処理ループで参照される(ステップA23)。図5(c)の処理ループ内で処理される割り込みトリガ生成の有無は、図5(b)の処理ループで参照される(ステップC21)。 The timer value processed in the processing loop of FIG. 5A is referred to in the processing loop of FIG. 5C (steps B23 and B26). The presence / absence of generation of an interrupt signal processed in the processing loop of FIG. 5B is referred to in the processing loop of FIG. 5A (step A23). The presence or absence of interrupt trigger generation processed in the processing loop of FIG. 5C is referred to in the processing loop of FIG. 5B (step C21).
図5(c)の処理ループは複数個(n個)存在しうる。各処理ループは、例えば、パケットの種類等により分離されたグループ毎に割り当てられる。これら複数のグループは、同一の割り込み信号をシェアして使用する。 There may be a plurality (n) of processing loops in FIG. Each processing loop is assigned to each group separated by, for example, the type of packet. These multiple groups share and use the same interrupt signal.
図5(a)、(c)の各ステップにおける動作は、図2(a)、(b)の各ステップにおける動作と同様であることから、説明を省略する。 Since the operation in each step of FIGS. 5A and 5C is the same as the operation in each step of FIGS. 2A and 2B, description thereof will be omitted.
図6は、本実施形態の割り込み信号生成装置20の具体的な動作について説明するための図である。図6を参照すると、割り込み要因a1〜a8,c1〜c2は、パケット処理完了などの割り込み要因の発生を表す。また、割り込み要因b1〜b6は、割り込み信号の生成を表す。
FIG. 6 is a diagram for explaining a specific operation of the interrupt
図6のタイマ値は、図4のタイマ22のタイマの値に対応する。タイマ22は、タイマ値に基づいて割り込み信号の生成周期を管理する。タイマ22は、タイマ値の初期値Nをロードし(ステップA21)、時間の経過とともにタイマ値をカウントダウンする(ステップA22)。
The timer value in FIG. 6 corresponds to the timer value of the
図6の要因#1のカウンタ値、要因#2のカウンタ値は、それぞれ、図4のカウンタ24,25のカウント値に対応する。カウンタ24,25は、パケットの種類等により分離されたグループ毎に割り込み要因が発生しなかった周期の回数を計測する。
The counter value of
以下では、図6の各周期における具体的な動作について説明する。 Below, the specific operation | movement in each period of FIG. 6 is demonstrated.
周期1では、4つの割り込み要因a1、a2、a3、c1が発生しているが(図5のステップB22のYes)、要因#1、要因#2ともにカウンタ値がゼロである(ステップB25のYes)。したがって、信号生成部26は、それぞれの割り込み要因からすぐに割り込み信号は生成せずに、タイマ値がゼロになるのを待つ(ステップB26のYes)。タイマ値がゼロになった時点で(ステップB26のYes)、信号生成部26は、割り込み信号b1を生成する(ステップB28、ステップC21のYes、ステップC22)。周期1の完了時点で、タイマ値に初期値Nが再度ロードされるが(ステップA21)、周期1の期間で割り込み要因が発生しているため要因#1、要因#2ともにカウンタ値は値が変わらない。
In
周期2では、要因#1、要因#2ともに割り込み要因が発生しておらず(ステップB22のNo)、タイマ値がNからカウントダウンされてゼロとなった周期2の終了時点で(ステップB23のYes)、要因#1、要因#2のカウンタ値がそれぞれ+1インクリメントされ(ステップB24)、タイマ値に初期値Nが再度ロードされる(ステップA21)。
In
周期3および周期4では、割り込み要因が発生しておらず(ステップB22のNo)、周期2と同様な動作が行われる。周期3および周期4のそれぞれの周期の終了時点で(ステップB23のYes)、要因#1、要因#2のカウンタ値はそれぞれ+1インクリメントされ(ステップB24)、タイマ値に初期値Nが再度ロードされる(ステップA21)。周期2〜4の3周期期間で割り込み要因が発生しなかったため、要因#1のカウンタ値、要因#2のカウンタ値は、ともに周期4の満了時点で3となっている。
In
周期5において要因#1の割り込み要因a4が発生した時(ステップB22のYes)、要因#1のカウンタ値は3(≠ゼロ)となっている(ステップB25のNo)。したがって、信号生成部26は、タイマ値がゼロではないものの、割り込み要因a4の発生後直ちに、要因#1のカウンタ値を−1デクリメントするとともに(ステップB27)、割り込み信号b2を生成し(ステップB28、ステップA23のYes)、タイマ値に初期値Nを再度ロードする(ステップA21)。このとき、割り込み要因のグループが異なるため、要因#2のカウンタ値は変更されない。その後、周期5の期間で要因#1の割り込み要因a5が発生した時(ステップB22のYes)、要因#1のカウンタ値は2(≠ゼロ)となっている(ステップB25のNo)。したがって、信号生成部26は、タイマ値がゼロではないものの、割り込み要因a5の発生後直ちに、要因#1のカウンタ値を−1デクリメントするとともに(ステップB27)、割り込み信号b3を生成し(ステップB28、ステップA23のYes)、タイマ値に初期値Nを再度ロードする(ステップA21)。このとき、割り込み要因のグループが異なるため、要因#2のカウンタ値は変更されない。もともとの周期5の終了タイミングでは、タイマ値はカウントダウンを続けており(ステップB23のNo)、要因#1、要因#2ともカウンタ値は変化しない。
When the interrupt factor a4 of
周期6において要因#1の割り込み要因a6が発生した時(ステップB22のYes)、要因#1のカウンタ値は1(≠ゼロ)となっている(ステップB25のNo)。したがって、信号生成部26は、タイマ値がゼロではないものの、割り込み要因a6の発生後直ちに、要因#1のカウンタ値を−1デクリメントしてゼロとするとともに(ステップB27)、割り込み信号b4を生成し(ステップB28、ステップA23のYes)、タイマ値に初期値Nを再度ロードする(ステップA21)。このとき、割り込み要因のグループが異なるため、要因#2のカウンタ値は変更されない。その後、周期6の期間内で要因#1の割り込み要因a7、a8が発生しているが(ステップB22のYes)、要因#1のカウンタ値がゼロである(ステップB25のYes)。したがって、信号生成部26は、それぞれの割り込み要因からすぐに割り込みは生成せずにタイマ値がゼロになるのを待つ(ステップB26のYes)。ここで、要因#2の割り込み要因c2が発生すると、要因#2のカウンタ値は3(≠ゼロ)となっている(ステップB25のNo)。したがって、信号生成部26は、タイマ値がゼロではないものの、割り込み要因c2の発生後直ちに、要因#2のカウンタ値を−1デクリメントしてゼロとするとともに(ステップB27)、割り込み信号b5を生成し(ステップB28、ステップA23のYes)、タイマ値に初期値Nを再度ロードする(ステップA21)。このとき、割り込み要因のグループが異なるため、要因#1のカウンタ値は変更されない。もともとの周期6の終了タイミングでは、タイマ値はカウントダウンを続けておりゼロでないため(ステップB23のNo)、要因#1、要因#2ともカウンタ値は変化しない。
When the interrupt factor a6 of
その後、タイマ値がカウントダウンしゼロになると(ステップB26のYes)、保留されていた割り込み要因#1の割り込み要因a7、a8により割り込み信号b6が生成される(ステップB28、ステップA23のYes)。割り込み信号b6を生成すると(ステップB28、ステップBA23のYes)、タイマ値はNに再度ロードされ(ステップA21)、要因#1は割り込み要因a7、a8が発生しているためカウンタ値は値が変わらないが、要因#2はカウンタ値が+1インクリメントされる(ステップB24)。
Thereafter, when the timer value counts down to zero (Yes in Step B26), the interrupt signal b6 is generated by the interrupt factors a7 and a8 of the interrupt
なお、割り込み要因#1に対するカウンタ24のカウント値および割り込み要因#2に対するカウンタ25のカウント値には、それぞれ所定の上限値が設定されており、カウント値が上限に達している場合には、インクリメント命令(ステップB24)に対して同一の値が維持される。
A predetermined upper limit value is set for each of the count value of the
また、カウンタの上限値は、グループ間の処理優先順位などで重みづけが可能である。例えば、実施形態1の構成でカウンタ上限値が64である構成を本実施形態に基づき2つの割り込み要因グループに分離し、要因#1と要因#2の重みづけが1:3の場合には、要因#1カウンタの上限値を16に設定し、要因#2カウンタの上限値を48に設定する。
Further, the upper limit value of the counter can be weighted by the processing priority between groups. For example, in the configuration of the first embodiment, the configuration in which the counter upper limit value is 64 is separated into two interrupt factor groups based on this embodiment, and when the weighting of the
本実施形態の割り込み信号生成装置20による課題解決のメカニズムは、基本的に第1の実施形態の場合と同様である。本実施形態では、同一の割り込み信号をシェアする複数の割り込み要因グループがある場合に、それぞれの要因グループ毎に実施形態1の割り込み信号生成処理の効果を導入し、グループ間の割り込み信号生成の重み付けを可能にする。これにより、優先順位の高い要因に対して効率的に割り込み信号を生成し、I/Oコントローラの処理性能を改善することができる。
The mechanism of problem solving by the interrupt
なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。 Each disclosure of the above-mentioned patent document and non-patent document is incorporated herein by reference. Within the scope of the entire disclosure (including claims) of the present invention, the embodiment can be changed and adjusted based on the basic technical concept. Various combinations and selections of various disclosed elements are possible within the scope of the claims of the present invention. That is, the present invention of course includes various variations and modifications that could be made by those skilled in the art according to the entire disclosure including the claims and the technical idea.
10,20 割り込み信号生成装置
12,22 タイマ
14,24,25 カウンタ
16,26 信号生成部
a1〜a8,c1,c2 割り込み要因
b1〜b6 割り込み信号
10, 20 Interrupt
Claims (7)
所定の初期値に初期化されたカウンタ値を保持するカウンタと、
割り込み要因を検出することなく前記所定の期間が満了した場合には、前記タイマを初期化するとともに、前記カウンタ値をインクリメントまたはデクリメントし、前記所定の期間が満了する前に割り込み要因を検出した場合において、前記カウンタ値が前記所定の初期値であるときには、前記所定の期間の満了後に割り込み信号を生成するとともに前記タイマを初期化し、前記カウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記インクリメントまたは前記デクリメントとは逆方向に前記カウンタ値をデクリメントまたはインクリメントするとともに前記タイマを初期化する信号生成部と、を備えていることを特徴とする割り込み信号生成装置。 A timer for timing a predetermined period;
A counter that holds a counter value initialized to a predetermined initial value;
When the predetermined period has expired without detecting an interrupt factor, the timer is initialized, the counter value is incremented or decremented, and the interrupt factor is detected before the predetermined period expires When the counter value is the predetermined initial value, an interrupt signal is generated after expiration of the predetermined period and the timer is initialized, and when the counter value is a value other than the predetermined initial value, An interrupt signal is generated without waiting for the expiration of the predetermined period, and the counter value is decremented or incremented in a direction opposite to the increment or decrement, and a signal generator that initializes the timer is provided. An interrupt signal generator characterized by the above.
前記所定の初期値に初期化された第2のカウンタ値を保持する第2のカウンタと、を備え、
前記信号生成部は、第1の割り込み要因および第2の割り込み要因のいずれも検出することなく前記所定の期間が満了した場合には、前記タイマを初期化するとともに、前記第1のカウンタ値および前記第2のカウンタ値をインクリメントまたはデクリメントし、前記所定の期間が満了する前に第1の割り込み要因を検出した場合において、前記第1のカウンタ値が前記所定の初期値であるときには、前記所定の期間の満了後に割り込み信号を生成するとともに前記タイマを初期化し、前記第1のカウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記インクリメントまたは前記デクリメントとは逆方向に前記第1のカウンタ値をデクリメントまたはインクリメントするとともに前記タイマを初期化し、前記所定の期間が満了する前に第2の割り込み要因を検出した場合において、前記第2のカウンタ値が前記所定の初期値であるときには、前記所定の期間の満了後に割り込み信号を生成するとともに前記タイマを初期化し、前記第2のカウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記インクリメントまたは前記デクリメントとは逆方向に前記第2のカウンタ値をデクリメントまたはインクリメントするとともに前記タイマを初期化することを特徴とする、請求項1に記載の割り込み信号生成装置。 A first counter that holds a first counter value initialized to the predetermined initial value;
A second counter that holds a second counter value initialized to the predetermined initial value,
The signal generation unit initializes the timer and detects the first counter value and the first counter value when the predetermined period has expired without detecting both the first interrupt factor and the second interrupt factor. When the first counter value is the predetermined initial value when the second counter value is incremented or decremented and the first interrupt factor is detected before the predetermined period expires, An interrupt signal is generated after expiration of the period, and the timer is initialized. When the first counter value is a value other than the predetermined initial value, an interrupt signal is generated without waiting for the predetermined period to expire. When the first counter value is decremented or incremented in the direction opposite to the increment or decrement, If the second counter value is the predetermined initial value when the timer is initialized and the second interrupt factor is detected before the predetermined period expires, the expiration of the predetermined period An interrupt signal is generated later and the timer is initialized. When the second counter value is a value other than the predetermined initial value, an interrupt signal is generated without waiting for the predetermined period to expire, and the increment is performed. 2. The interrupt signal generation device according to claim 1, wherein the second counter value is decremented or incremented in a direction opposite to the decrement and the timer is initialized.
前記信号生成部は、前記タイマ値を前記所定の整数により初期化することにより、前記タイマを初期化することを特徴とする、請求項1ないし3のいずれか1項に記載の割り込み信号生成装置。 The timer counts the predetermined period by incrementing or decrementing a timer value initialized with a predetermined integer at regular time intervals,
4. The interrupt signal generation device according to claim 1, wherein the signal generation unit initializes the timer by initializing the timer value with the predetermined integer. 5. .
割り込み要因を検出することなく前記所定の期間が満了した場合には、前記タイマを初期化するとともに、所定の初期値に初期化されたカウンタ値をインクリメントまたはデクリメントする工程と、
前記所定の期間が満了する前に割り込み要因を検出した場合において、前記カウンタ値が前記所定の初期値であるときには、前記所定の期間の満了後に割り込み信号を生成するとともに前記タイマを初期化する工程と、
前記所定の期間が満了する前に割り込み要因を検出した場合において、前記カウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記インクリメントまたは前記デクリメントとは逆方向に前記カウンタ値をデクリメントまたはインクリメントするとともに前記タイマを初期化する工程と、を含むことを特徴とする割り込み信号生成方法。 An interrupt signal generation device for measuring a predetermined period using a timer;
A step of initializing the timer and incrementing or decrementing a counter value initialized to a predetermined initial value when the predetermined period expires without detecting an interrupt factor;
When an interrupt factor is detected before the predetermined period expires, and the counter value is the predetermined initial value, an interrupt signal is generated and the timer is initialized after the predetermined period expires When,
When an interrupt factor is detected before the predetermined period expires, if the counter value is a value other than the predetermined initial value, an interrupt signal is generated without waiting for the predetermined period to expire, And a step of decrementing or incrementing the counter value in a direction opposite to incrementing or decrementing and initializing the timer.
前記所定の期間が満了する前に第1の割り込み要因を検出した場合において、前記所定の初期値に初期化された第1のカウンタ値が前記所定の初期値であるときには、前記所定の期間の満了後に割り込み信号を生成するとともに前記タイマを初期化する工程と、
前記所定の期間が満了する前に第1の割り込み要因を検出した場合において、前記第1のカウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記インクリメントまたは前記デクリメントとは逆方向に前記第1のカウンタ値をデクリメントまたはインクリメントするとともに前記タイマを初期化する工程と、
前記所定の期間が満了する前に第2の割り込み要因を検出した場合において、前記所定の初期値に初期化された第2のカウンタ値が前記所定の初期値であるときには、前記所定の期間の満了後に割り込み信号を生成するとともに前記タイマを初期化する工程と、
前記所定の期間が満了する前に第2の割り込み要因を検出した場合において、前記第2のカウンタ値が前記所定の初期値以外の値であるときには、前記所定の期間の満了を待つことなく割り込み信号を生成し、前記インクリメントまたは前記デクリメントとは逆方向に前記第2のカウンタ値をデクリメントまたはインクリメントするとともに前記タイマを初期化する工程と、を含むことを特徴とする、請求項5に記載の割り込み信号生成方法。 When the predetermined period has expired without detecting either the first interrupt factor or the second interrupt factor, the signal generation unit initializes the timer and sets the first counter value and Incrementing or decrementing the second counter value;
When the first interrupt factor is detected before the predetermined period expires, when the first counter value initialized to the predetermined initial value is the predetermined initial value, the predetermined period Generating an interrupt signal after expiration and initializing the timer;
In the case where the first interrupt factor is detected before the predetermined period expires, if the first counter value is a value other than the predetermined initial value, the interrupt is performed without waiting for the predetermined period to expire. Generating a signal, decrementing or incrementing the first counter value in a direction opposite to the increment or decrement and initializing the timer;
When the second interrupt factor is detected before the predetermined period expires, and the second counter value initialized to the predetermined initial value is the predetermined initial value, the predetermined period Generating an interrupt signal after expiration and initializing the timer;
In the case where the second interrupt factor is detected before the predetermined period expires, if the second counter value is a value other than the predetermined initial value, the interrupt is performed without waiting for the predetermined period to expire. Generating a signal and decrementing or incrementing the second counter value in a direction opposite to the incrementing or decrementing and initializing the timer. Interrupt signal generation method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011004436A JP2012146150A (en) | 2011-01-13 | 2011-01-13 | Interruption signal generator and interruption signal generation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011004436A JP2012146150A (en) | 2011-01-13 | 2011-01-13 | Interruption signal generator and interruption signal generation method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012146150A true JP2012146150A (en) | 2012-08-02 |
Family
ID=46789650
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011004436A Withdrawn JP2012146150A (en) | 2011-01-13 | 2011-01-13 | Interruption signal generator and interruption signal generation method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012146150A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019088609A1 (en) * | 2017-11-01 | 2019-05-09 | 가톨릭대학교 산학협력단 | Event signal processing method and device therefor |
KR20190083494A (en) * | 2018-01-04 | 2019-07-12 | 가톨릭대학교 산학협력단 | Method for Processing Distributed Event Signal and the device thereof |
US10481946B2 (en) | 2014-05-12 | 2019-11-19 | Hitachi, Ltd. | Information-processing device, processing method thereof, and input/output device |
-
2011
- 2011-01-13 JP JP2011004436A patent/JP2012146150A/en not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10481946B2 (en) | 2014-05-12 | 2019-11-19 | Hitachi, Ltd. | Information-processing device, processing method thereof, and input/output device |
WO2019088609A1 (en) * | 2017-11-01 | 2019-05-09 | 가톨릭대학교 산학협력단 | Event signal processing method and device therefor |
KR20190083494A (en) * | 2018-01-04 | 2019-07-12 | 가톨릭대학교 산학협력단 | Method for Processing Distributed Event Signal and the device thereof |
KR102027671B1 (en) * | 2018-01-04 | 2019-11-04 | 가톨릭대학교 산학협력단 | Method for Processing Distributed Event Signal and the device thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2016105774A1 (en) | Techniques to dynamically allocate resources for local service chains of configurable computing resources | |
WO2016019725A1 (en) | Software upgrade management method, device, system and computer storage medium | |
WO2016164110A1 (en) | Systems, methods and devices for adaptable battery charging | |
US20140006667A1 (en) | Adaptive hardware interrupt moderation | |
KR20140134678A (en) | Reducing interarrival delays in network traffic | |
US11973670B2 (en) | Area efficient traffic generator | |
JP2012146150A (en) | Interruption signal generator and interruption signal generation method | |
WO2016075721A1 (en) | Command execution control system and command execution control method | |
CN105207954B (en) | Send packet and throughput testing approach and device | |
US9946683B2 (en) | Reducing precision timing measurement uncertainty | |
Venkata et al. | Connectx-2 core-direct enabled asynchronous broadcast collective communications | |
WO2015165546A1 (en) | Dynamically scaled web service deployments | |
Kolos et al. | New software-based readout driver for the atlas experiment | |
JP2017507395A5 (en) | ||
CN102420758B (en) | Method and device for scheduling queue | |
US9866465B2 (en) | Method of controlling packet transmission interval | |
McGuinness et al. | Evaluating the performance of software NICs for 100-gb/s datacenter traffic control | |
US11176135B2 (en) | Dynamic block intervals for pre-processing work items to be processed by processing elements | |
WO2009147731A1 (en) | Data transfer device, information processing device, and control method | |
EP4085599A1 (en) | Systems and methods for multi-client content delivery | |
US20170085442A1 (en) | Technologies for aggregation-based message synchronization | |
TWI584667B (en) | Method for request scheduling and scheduling device | |
Buh et al. | Adaptive network-traffic balancing on multi-core software networking devices | |
KR101674324B1 (en) | Task scheduling device and method for real-time control applications | |
JP5526748B2 (en) | Packet processing device, packet distribution device, control program, and packet distribution method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20140401 |