JP2020166355A - ハードウェアタイマ、制御方法及びプログラム - Google Patents
ハードウェアタイマ、制御方法及びプログラム Download PDFInfo
- Publication number
- JP2020166355A JP2020166355A JP2019063957A JP2019063957A JP2020166355A JP 2020166355 A JP2020166355 A JP 2020166355A JP 2019063957 A JP2019063957 A JP 2019063957A JP 2019063957 A JP2019063957 A JP 2019063957A JP 2020166355 A JP2020166355 A JP 2020166355A
- Authority
- JP
- Japan
- Prior art keywords
- timer
- memory
- time
- cpu
- access
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Bus Control (AREA)
- Microcomputers (AREA)
Abstract
Description
また、特許文献2は、CPU(Central Processing Unit)からメモリへのアクセス要求が発生した場合に、CPUからメモリへのアクセスが許可され、CPUがメモリに対して、タイマ値のリード(Read)やライト(Write)の処理を行う技術について開示している。
また、特許文献4は、タイマメモリに記憶されている複数のタイマ値のカウント処理が、時分割で行われることについて開示している。
そのため、タイマメモリへのアクセスが、CPUとタイマにより時分割で行われる場合おいて、タイマメモリへのアクセスが、タイマに割り当てられている時間には、タイマメモリがオフの状態であっても、CPUによるタイマメモリのアクセスを行うことができず、CPUのタイマメモリの使用時間を増やすことはできなかった。
中央演算処理装置によるタイマメモリへのアクセスが可能な第1の状態と、タイマによる前記タイマメモリへのアクセスが可能な第2の状態のいずれかを選択する選択部と、
前記中央演算処理装置が前記タイマメモリにアクセス可能な時間として割り当てられた第1の時間と、前記タイマが前記タイマメモリにアクセス可能な時間として割り当てられた第2の時間のうち、前記第2の時間内であっても、前記タイマがオフである場合には、前記選択部に、前記第1の状態を選択させる制御部と、
を備える。
中央演算処理装置によるタイマメモリへのアクセスが可能な第1の状態と、タイマによる前記タイマメモリへのアクセスが可能な第2の状態のいずれかを選択し、
前記中央演算処理装置が前記タイマメモリにアクセス可能な時間として割り当てられた第1の時間と、前記タイマが前記タイマメモリにアクセス可能な時間として割り当てられた第2の時間のうち、前記第2の時間内であっても、前記タイマがオフである場合には、前記第1の状態を選択する。
前記中央演算処理装置が前記タイマメモリにアクセス可能な時間として割り当てられた第1の時間と、前記タイマが前記タイマメモリにアクセス可能な時間として割り当てられた第2の時間のうち、前記第2の時間内であっても、前記タイマがオフである場合には、前記選択手段に、前記第1の状態を選択させる制御手段、
として機能させる。
始めに、本発明の第1の実施形態について説明する。
図1は、本発明の第1の実施形態によるCPU10、及び、ハードウェアタイマ20の構成を示すブロック図である。
例えば、ハードウェアタイマ20は、携帯電話の基地局装置であって、複数のユーザ(子機)との通信制御を行う上でユーザ毎に時間を管理する基地局装置が備えるタイマとして用いられる。
ハードウェアタイマ20は、タイマ21、タイムアウトバッファ22、バス選択部23(選択部とも称する)、タイマメモリ24、タイマオン制御部25a(制御部とも称する)、バス26を備える。
CPU10は、タイマ21によってデクリメント(Decrement)されたタイマ値を、バス26を介して、タイマメモリ24からリード(Read)する。CPU10は、アドレスx(x=0〜nの整数)にライトしたタイマ値と、アドレスxからリードしたタイマ値との差分から、時間経過を求める。
なお、1個のタイマがデクリメントする周期は、(クロック周期)×(タイマ数)×(タイマサイクル数)の値以上とするため、(クロック周期)×(n+1)×(r+1)の値以上となる。例えば、クロック周期が10ns(ナノ秒)、タイマ数が、4096(n=4095)、タイマサイクル数が10(r=9)の場合には、1個のタイマがデクリメントする周期は、10ns×4096×10=0.4096ms以上となる。
タイマ21は、タイマ未使用と判定した場合は、何も処理を行わない。
タイマ21は、タイムアウトと判定した場合であって、タイムアウトバッファ22の記憶領域に空きがない場合は、何も処理を行わない。
タイマ21は、デクリメントと判定した場合には、リードしたタイマ値と同じアドレスに、デクリメントした値をライトする。
タイムアウトバッファ22は、タイムアウトしたタイマ番号を、m(mは、正の整数)個記憶でき、タイムアウトバッファ22の記憶領域に空きがない場合には、フル信号をアクティブにすることにより、タイマ21が、タイムアウトバッファ22にライトしないようにする。
タイムアウトバッファ22は、CPU10からリードされて、タイムアウトバッファ22の記憶領域が空になった場合には、エンプティ信号をアクティブにして、CPU10に対する割り込みを停止する。
バス選択部23は、選択タイマオン信号がアクティブの場合には、タイマ21からのサイクルカウント信号の値で、CPU10とタイマ21の使用割合を時分割して固定的に決定する。バス選択部23は、時分割された時間に基づいて、CPU10の出力信号と、タイマ21の出力信号を交互に選択して、タイマメモリ24に出力する。
バス選択部23は、CPU10に割り当てられた時間に、CPU10からのアクセスがあった場合は、CPUアック(Ack)信号を、すぐにCPU10に返信する。一方、バス選択部23は、CPU10に割り当てられた時間外に、CPU10からのアクセスがあった場合は、CPUアック信号をすぐには返信せずに、CPU10を待機させ、CPU10に割り当てられた時間になった場合に、CPUアック信号をCPU10に返信する。
タイマメモリ24のアドレス‘0’番地は、タイマ番号‘0’と1対1で対応付けられており、タイマメモリ24のアドレスnが、タイマ番号nとなる。
タイマオン制御部25aは、CPU10がタイマメモリ24のタイマ番号x(x=0〜nの整数)に対してライトする際に、ライトデータ値が‘0’の場合は、タイマ番号xはタイマオフであると判定する。
また、タイマオン制御部25aは、タイマ21がタイムアウトバッファ22にタイマ番号xをライトする場合に、タイマ番号xはタイマオフであると判定する。
また、タイマオン制御部25aは、タイマ個数分のタイマオン/オフ情報を保持する1ビットのレジスタを備えており、タイマオン/オフ判定結果を、各タイマ番号に割り当てられたレジスタに保持する。
また、タイマオン制御部25aは、タイマ21から出力されるタイマ番号よって、対応するタイマ番号のレジスタを選択して、選択されたレジスタの値を選択タイマオン信号として、バス選択部23に出力する。
CPU制御部232は、CPU10からのタイマメモリ234へのライトアクセスを検出して、CPUアック信号にタイミングを合わせたCPUリタイミングライト(Retiming Write)信号をセレクタ233に出力する。
CPU制御部232は、CPU10からタイマメモリ24へのリードアクセスを検出して、入力されたRAMリードデータを、CPUアック信号にタイミングを合わせたCPUリードデータとして出力する。
また、セレクタ233は、マスクタイマ選択信号の値が‘1’の場合は、タイマ21のタイマ番号、タイマライトデータ、タイマライト信号を、タイマメモリ24に出力する。
マスク制御部234は、選択タイマオン信号が‘0’の場合は、タイマリードデータを‘0’にする。また、マスク制御部234は、マスクタイマ選択信号を‘0’にする。
マスク制御部234は、選択タイマオン信号が‘1’の場合は、タイマリードデータとして、RAMリードデータを出力する。また、マスク制御部234は、マスクタイマ選択信号として、タイマ選択信号を出力する。
図4の符号(a)の信号は、クロック信号を示している。ここでは、クロック周期は、10ns(ナノ秒)である。
図4の符号(b)の信号は、RAMアドレス(タイマ番号)を示している。ここでは、0〜nの合計n+1個のタイマ番号からなる。各タイマ番号には、1クロックが割り当てられ、タイマ番号が、nまで進むと、タイマ番号が、0に戻る。
図4の符号(c)の信号は、タイマ選択信号を示している。タイマ選択信号は、RAMアドレス(タイマ番号)に対応するタイマが、オン(ON)であるか、オフ(OFF)であるかを示す。ここでは、タイマ番号0のタイマが、オンとなり、タイマ番号1のタイマが、オフとなり、タイマ番号2〜nのタイマが、オンとなる場合を示している。
図4の符号(e)の信号は、タイマ選択信号を示している。
図4の符号(f)の信号は、タイマサイクルカウント信号を示している。タイマサイクルカウント信号は、0からrまで増加した後、0からrまでカウントする処理を繰り返す。
図4の符号(g)の信号は、バス選択動作信号を示している。バス選択動作信号は、CPU10とタイマ(TIMER)21のいずれかを選択するための信号である。ここでは、RAMアドレス(タイマ番号)が、1の場合であって、タイマサイクルカウントが、1から4の間は、タイマ21が選択され、タイマサイクルカウントが、5からrの間は、CPU10が選択される場合について示している。
なお、図4の符号(d)〜(g)の信号は、主に、符号(b)の信号のRAMアドレス(タイマ番号)が、1の部分を、拡大して示している。
タイマ21が、CPU10から、タイマ動作のオン設定の指示を受けている場合には(ステップS101でYes)、タイマ21は、ステップS102の処理を行う。
つまり、タイマ21は、タイマ番号0から、タイマアクセスを開始する(ステップS102)。そして、タイマ21は、タイマ値を、タイマメモリ24からリードする(ステップS103)。なお、タイマ21は、タイマ番号に対応するタイマ動作を停止している場合には、タイマサイクルカウント信号として‘0’を出力して、タイマ21からタイマメモリ24へのアクセスを禁止する。
つまり、タイマ21は、タイマ番号に、1を加算(インクリメント)する(ステップS105)。
つまり、タイマ21は、CPU10から、タイマ動作のオフ設定の指示を受けているか否かについて判定する(ステップS107)。タイマ21が、CPU10から、タイマ動作のオフ設定の指示を受けている場合には(ステップS107でYes)、タイマ21は、図5に示すフローチャートの処理を終了し、動作を停止する。この場合、タイマ21は、タイマサイクルカウント信号を、‘0’にする。
つまり、タイマ21は、タイマ更新周期になったか否かについて判定する(ステップS108)。タイマ21が、タイマ更新周期になっていないと判定した場合には(ステップS108でNo)、タイマ21は、再度、ステップS108の処理を行う。
一方、タイマ21が、タイマ更新周期となったと判定した場合には(ステップS108でYes)、タイマ21は、タイマ番号を‘0’にして、上述したステップS102の処理を行う。
つまり、タイマ21は、タイマ値が、1であるか否かについて判定する(ステップS109)。タイマ21が、タイマ値が、1であると判定した場合には(ステップS109でYes)、タイマ21は、ステップS110の処理を行う。
つまり、タイマ21は、タイムアウトバッファ22がフルであるか否かについて判定する(ステップS110)。タイマ21が、タイムアウトバッファ22がフルであると判定した場合には(ステップS110でYes)、タイマ21は、上述したステップS105の処理を行う。
つまり、タイマ21は、タイマ値から1を減算(デクリメント)する(ステップS111)。
そして、タイマ21は、タイマ値を、タイマメモリ24にライトするとともに、タイムアウトバッファ22に、タイマ番号をライトし(ステップS112)、上述したステップS105の処理を行う。
つまり、タイマ21は、タイマ値から1を減算する(ステップS113)。
そして、タイマ21は、タイマ値を、タイマメモリ24にライトし(ステップS114)、上述したステップS105の処理を行う。
始めに、レジスタ部253aは、タイマ番号が更新されたか否かについて判定する(ステップS201)。レジスタ部253aが、タイマ番号が更新されていないと判定した場合には(ステップS201でNo)、レジスタ部253aは、再度、ステップS201の処理を行う。
一方、レジスタ部253aが、タイマ番号が更新されたと判定した場合には(ステップS201でYes)、レジスタ部253aは、ステップS202の処理を行う。
レジスタ部253aが、CPU10から、タイマメモリ24への更新があったと判定した場合には(ステップS202でYes)、レジスタ部253aは、ステップS203の処理を行う。
レジスタ部253aが、CPU10から、ライトデータ値‘0’以外のライトがあったと判定した場合には(ステップS203でYes)、レジスタ部253aは、タイマ番号xのレジスタを、タイマオンに設定する(ステップS204)。
一方、レジスタ部253aが、CPU10から、ライトデータ値‘0’以外のライトがないと判定した場合には(ステップS203でNo)、レジスタ部253aは、タイマ番号xのレジスタを、タイマオフに設定する(ステップS206)。
つまり、レジスタ部253aは、タイマ21から、タイムアウトバッファ22への更新があったか否かについて判定する(ステップS205)。
レジスタ部253aが、タイマ21から、タイムアウトバッファ22への更新があったと判定した場合には(ステップS205でYes)、レジスタ部253aは、上述したステップS206の処理を行う。
一方、レジスタ部253aが、タイマ21から、タイムアウトバッファ22への更新がなかったと判定した場合には(ステップS205でNo)、レジスタ部253aは、上述したステップS201の処理を行う。
始めに、信号選択部254は、タイマ番号xが更新されたか否かについて判定する(ステップS301)。信号選択部254が、タイマ番号xが更新されていないと判定した場合には(ステップS301でNo)、信号選択部254は、再度、ステップS301の処理を行う。
一方、信号選択部254が、タイマ番号xが更新されたと判定した場合には(ステップS301でYes)、信号選択部254は、ステップS302の処理を行う。
信号選択部254が、タイマ番号xが示すレジスタ値が、オンであると判定した場合には(ステップS302でオン)、信号選択部254は、タイマ21が、タイマメモリ24にアクセスできるように、バス選択部23を切り替え(ステップS303)、上述したステップS301の処理を行う。
一方、信号選択部254が、タイマ番号xが示すレジスタ値が、オフであると判定した場合には(ステップS302でオフ)、信号選択部254は、CPU10が、タイマメモリ24にアクセスできるように、バス選択部23を切り替え(ステップS304)、上述したステップS301の処理を行う。
最初に、CPU10は、タイマ数分のアドレスエリアを持つタイマメモリ24のタイマ番号xに、タイマ初期値を設定する。
タイマ値の最大値は、タイマメモリ24のデータ幅で決定される。例えば、タイマメモリ24のデータ幅が、16ビットの場合には、タイマ値の最大値は、65535なので、ハードウェアタイマ20は、(タイマ更新周期)×(65535)の値まで計数可能となる。
タイマ初期値のライトが終了した後、CPU10は、タイマ動作のオンを設定する(図5ステップS101でYes)。タイマ21は、CPU10からのタイマ動作オン設定を検出して、タイマサイクルカウントのインクリメントを開始する。タイマサイクルカウントでは、0〜rの値が繰り返される。
タイマ更新周期毎に、タイマ0からタイマnまでのタイマ番号が出力される(図5のステップS103〜S106)。タイマ21は、図4の符号(f)及び(h)で示すように、タイマサイクルカウントの1〜4の4クロックの間に、タイマ値リード、タイマ値判定、タイマ値デクリメント、デクリメント値ライト(タイムアウトバッファライト)の処理を行う。
タイマオン制御部25aは、CPU10がタイマメモリ24にアクセスする信号と、タイムアウトバッファ22へのタイムアウト番号と、タイムアウトバッファライト信号とを、スヌープして、タイマ値のデクリメント動作が行われているか否かを判定する。ここでは、タイマ値のデクリメント動作が行われている場合を、タイマオンと定義する。また、タイマオン以外の場合を、タイマオフと定義する。
タイマオン制御部25aは、CPU10がタイマメモリ24のタイマ番号xに対してライトする場合、ライトデータ値が‘0’以外の場合には、タイマ番号xはタイマオンの状態にあると判定する。
タイマオン制御部25aは、タイマ21がタイムアウトバッファ22にタイマ番号xをライトする場合に、タイマ番号xはタイマオフの状態にあると判定する。
タイマオン制御部25aは、タイマ個数分のタイマオン/オフ情報を保持する1ビットのレジスタを備えており、タイマオン/オフ判定結果を、対応するタイマ番号のレジスタに記録する。
バス選択部23は、選択タイマオン信号が‘1’の場合は、タイマ21がオンの状態にあると判定し、タイマサイクルカウントの1〜4の時間で、タイマ21にタイマメモリ24へのアクセスを許可する。一方、バス選択部23は、選択タイマオン信号が‘0’の場合は、タイマ21がオフの状態にあると判定し、タイマサイクルカウントの1〜4の時間であっても、CPU10にタイマメモリ24へのアクセスを許可する(図4の符号(b)及び(d)のタイマ番号1の区間)。
この場合、CPU10にタイマメモリ24へのアクセスを許可している時間は、タイマ21には、タイマメモリ24をリードしているように見せるために、タイマメモリ24のリードデータを‘0’にマスクする。
タイマ21は、タイマ値をリードした後に、タイマ値が‘1’かつタイムアウトバッファ22がフルの場合は、何も処理を行わずに、次の同じタイマ番号のタイマ値をリードした場合に、タイムアウトバッファ22がフルの状態であるか否かを確認する。
CPU10は、タイムアウトの割り込みがアクティブになると、タイムアウトバッファ22をリードすることで、タイマ番号を取得することができる。
なお、ここでは、タイマ初期値を、タイマメモリ24にライトしてから、タイマ21に対してタイマ動作のオン設定を行う場合について説明したが、タイマ動作のオン設定を先に行って、タイマ動作が始まってから、タイマ初期値をライトするようにしても良い。
CPU10は、タイマ動作中に、タイマメモリ24のアドレスx(タイマ番号x)に初期値をライトして、処理yを行った後、タイマメモリ24のアドレスxをリードして、初期値と、リードしたタイマ値との差分をとることで、処理yの時間を、タイマ更新周期単位で計測することができる。
また、タイマ数が多い大規模なハードウェアタイマ20を用いる場合であって、CPU10が、タイマメモリ24からタイマ値をライトしたりリードしたりして、タイマ値のライトアクセスやリードアクセスに時間かかる場合であっても、CPU10によるタイマメモリ24の使用時間を増やすことができるため、バス26の性能低下を避けることができる。
第1の実施形態では、ハードウェアタイマ20は、タイマオン制御部25aを備えていたが、第2の実施形態によるハードウェアタイマ20は、タイマオン制御部25bを備える点で異なっている。
タイマオン制御部25b(図8)では、第1の実施形態によるタイマオン制御部25a(図3)において、タイムアウトクリアパルス生成部255、クリアパルス合成部256が省略されている。第2の実施形態では、タイムアウトバッファ22からのタイムアウト番号と、タイムアウトバッファライト信号を使用しないようになっている。
第1の実施形態では、ハードウェアタイマ20は、タイマオン制御部25aを備えていたが、第3の実施形態によるハードウェアタイマ20は、タイマオン制御部25cを備える点で異なっている。
タイマオン制御部25c(図9)では、第2の実施形態によるタイマオン制御部25b(図8)において、CPUクリアパルス生成部252が省略されている。また、タイマオン制御部25c(図9)は、第2の実施形態によるレジスタ部253a(図8)の代わりに、レジスタ部253cを備えている。
レジスタ部253cを構成するレジスタ253c−0〜253c−nは、セットパルスxがアクティブの場合に、CPUデータの1ビットをレジスタ253c−xに記録する。レジスタ253c−xの設定値は、タイマオン信号として信号選択部254に出力される。
信号選択部254は、タイマ21からのタイマ番号xの値に対応するタイマオン信号を選択して、選択タイマオン信号として、バス選択部23に出力する。
第1の実施形態では、ハードウェアタイマ20は、タイマオン制御部25aを備えていたが、第4の実施形態によるハードウェアタイマ20は、タイマオン制御部25dを備える点で異なっている。
なお、上限レジスタ301は、タイマ番号の上限値を記憶する。また、下限レジスタ302は、タイマ番号の下限値を記憶する。
第4の実施形態によれば、第1〜第3の実施形態と比較して、タイマ数分のレジスタを設ける必要がないので、ハードウェアタイマ20の回路規模を小さくすることができるとともに、タイマオフのエリアをデータスタック用に使用することができる。
なお、第4の実施形態では、タイマオンの領域は、初期化が必要になるが、タイマ21の動作中のCPU10からタイマメモリ24へのアクセスの効率を改善することができる。
CPUセットパルス生成部251は、CPU10からのCPUアドレスとCPUライト信号に基づき、上限セットパルスのアドレスである場合に、上限セットパルスをアクティブにする。
下限レジスタ302は、下限セットパルスがアクティブの場合に、CPU10からのCPUデータを取り込み保持する。
比較器303は、下限レジスタ302が保持する値を下限値とし、上限レジスタ301が保持する値を上限値とする。比較器303は、タイマ21からのタイマ番号が、下限値から上限値の範囲内にある場合は、選択タイマオン信号をアクティブにする。タイマ21からのタイマ番号が、下限値から上限値の範囲外の場合は、選択タイマオン信号をノンアクティブにする。
なお、第1の実施形態と、第4の実施形態とを組み合わせることで、タイマオンの領域の初期化が不要となり、タイマオンの領域の1つ1つのタイマの状態もスヌープすることで、CPU10からタイマメモリ24へのアクセスの効率を最大にすることができる。
始めに、選択部401は、CPU(中央演算処理装置)10によるタイマメモリ24へのアクセスが可能な第1の状態と、タイマ21によるタイマメモリ24へのアクセスが可能な第2の状態のいずれかを選択する(ステップS401)。
そして、制御部402は、CPU10がタイマメモリ24にアクセス可能な時間として割り当てられた第1の時間と、タイマ21がタイマメモリ24にアクセス可能な時間として割り当てられた第2の時間のうち、第2の時間内であっても、タイマ21がオフである場合には、選択部401に、第1の状態を選択させる(ステップS402)。
20・・・ハードウェアタイマ
21・・・タイマ
22・・・タイムアウトバッファ
23・・・バス選択部
24・・・タイマメモリ
25a、25b、25c、25d・・・タイマオン制御部
26・・・バス
231・・・タイマ選択信号生成部
232・・・CPU制御部
233・・・セレクタ
234・・・マスク制御部
251・・・CPUセットパルス生成部
252・・・CPUクリアパルス生成部
253a・・・レジスタ部
253c・・・レジスタ部
253a−0〜253a−n・・・レジスタ
253c−0〜253c−n・・・レジスタ
254・・・信号選択部
255・・・タイムアウトクリアパルス生成部
256・・・クリアパルス合成部
301・・・上限レジスタ
302・・・下限レジスタ
303・・・比較器
400・・・ハードウェアタイマ
401・・・選択部
402・・・制御部
Claims (10)
- 中央演算処理装置によるタイマメモリへのアクセスが可能な第1の状態と、タイマによる前記タイマメモリへのアクセスが可能な第2の状態のいずれかを選択する選択部と、
前記中央演算処理装置が前記タイマメモリにアクセス可能な時間として割り当てられた第1の時間と、前記タイマが前記タイマメモリにアクセス可能な時間として割り当てられた第2の時間のうち、前記第2の時間内であっても、前記タイマがオフである場合には、前記選択部に、前記第1の状態を選択させる制御部と、
を備えるハードウェアタイマ。 - 前記制御部は、前記タイマが、オンである場合であって、前記選択部が、前記第2の状態を選択している場合には、前記タイマによる前記タイマメモリへのアクセスを許可し、前記中央演算処理装置による前記タイマメモリへのアクセスを許可しない
請求項1に記載のハードウェアタイマ。 - 前記制御部は、前記タイマが、タイムアウトしているか否か、及び、前記タイマが、未使用であるか否かについて判定し、前記タイマが、タイムアウトしている場合、又は、前記タイマが、未使用である場合に、前記タイマが、オフであると判定する
請求項1又は2に記載のハードウェアタイマ。 - 前記制御部は、前記タイマが、タイムアウトしているか否か、及び、前記タイマが、未使用であるか否かについて判定し、前記タイマが、タイムアウトしていない場合、又は、前記タイマが、未使用ではない場合に、前記タイマが、オンであると判定する
請求項1又は2に記載のハードウェアタイマ。 - 前記選択部は、前記第1の状態と、前記第2の状態とを、時分割で、交互に選択する
請求項1から4のいずれかに記載のハードウェアタイマ。 - 前記タイマが、オフである場合であって、前記選択部が、前記第2の状態を選択している場合に、前記タイマのリード処理が発生した場合には、前記選択部は、前記タイマが、未使用であることを示す信号を、前記中央演算処理装置に出力する
請求項1から5のいずれかに記載のハードウェアタイマ。 - 前記タイマメモリに記憶される複数のタイマ番号のうち、タイムアウトとなったタイマ番号を記憶するタイムアウトバッファを更に備え、
前記制御部は、前記タイムアウトとなったタイマ番号に割り当てられている時間については、前記選択部に、前記第1の状態を選択させる
請求項1から6のいずれかに記載のハードウェアタイマ。 - 複数のタイマ番号と、オン又はオフのいずれの状態であるかを、対応付けて記憶するレジスタであって、前記複数のタイマ番号の数以下のレジスタを更に備える
請求項1から7のいずれかに記載のハードウェアタイマ。 - 中央演算処理装置によるタイマメモリへのアクセスが可能な第1の状態と、タイマによる前記タイマメモリへのアクセスが可能な第2の状態のいずれかを選択し、
前記中央演算処理装置が前記タイマメモリにアクセス可能な時間として割り当てられた第1の時間と、前記タイマが前記タイマメモリにアクセス可能な時間として割り当てられた第2の時間のうち、前記第2の時間内であっても、前記タイマがオフである場合には、前記第1の状態を選択する
ハードウェアタイマの制御方法。 - 中央演算処理装置によるタイマメモリへのアクセスが可能な第1の状態と、タイマによる前記タイマメモリへのアクセスが可能な第2の状態のいずれかを選択する選択手段、
前記中央演算処理装置が前記タイマメモリにアクセス可能な時間として割り当てられた第1の時間と、前記タイマが前記タイマメモリにアクセス可能な時間として割り当てられた第2の時間のうち、前記第2の時間内であっても、前記タイマがオフである場合には、前記選択手段に、前記第1の状態を選択させる制御手段、
として機能させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019063957A JP6769662B2 (ja) | 2019-03-28 | 2019-03-28 | ハードウェアタイマ、制御方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019063957A JP6769662B2 (ja) | 2019-03-28 | 2019-03-28 | ハードウェアタイマ、制御方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020166355A true JP2020166355A (ja) | 2020-10-08 |
JP6769662B2 JP6769662B2 (ja) | 2020-10-14 |
Family
ID=72717361
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019063957A Active JP6769662B2 (ja) | 2019-03-28 | 2019-03-28 | ハードウェアタイマ、制御方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6769662B2 (ja) |
-
2019
- 2019-03-28 JP JP2019063957A patent/JP6769662B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP6769662B2 (ja) | 2020-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4749657B2 (ja) | Dma制御装置 | |
JP5551512B2 (ja) | 通信制御装置、データ通信方法及びプログラム | |
CN113312278B (zh) | 一种静态可分配共享多队列缓存的装置及方法 | |
US7373467B2 (en) | Storage device flow control | |
CN111177025A (zh) | 数据存储方法、装置及终端设备 | |
WO2019127230A1 (zh) | 一种网络节点的唤醒方法及设备 | |
CN113138802A (zh) | 命令分发装置、方法、芯片、计算机设备及存储介质 | |
CN116249973B (zh) | 自适应存储器事务调度 | |
JP6769662B2 (ja) | ハードウェアタイマ、制御方法及びプログラム | |
CN113515474A (zh) | 数据处理装置、方法、计算机设备和存储介质 | |
JP2007259274A (ja) | 再送制御回路、送信装置、再送制御方法及び再送制御プログラム | |
JP4193746B2 (ja) | マトリックス状バス接続システム | |
CN106776393B (zh) | 一种无中断的串口数据接收方法和装置 | |
CN110968538A (zh) | 一种数据缓冲方法和装置 | |
CN111078598B (zh) | 存储模块数据访问控制方法、数据访问装置和芯片 | |
JP5907558B2 (ja) | マルチインターバルタイマ並びにその制御装置、制御方法及び制御プログラム | |
JP2007156855A (ja) | 情報処理装置、情報処理方法 | |
KR100658918B1 (ko) | 블록 단위 입출력 명령어를 이용한 시스템 전역 변수초기화 장치 및 그 방법 | |
JP4898527B2 (ja) | リソース使用管理装置、リソース使用管理システム及びリソース使用管理装置の制御方法 | |
KR100578655B1 (ko) | 패킷 전송 시점을 인터럽트로 알리는 무선통신 단말기 및그 방법 | |
JP4514411B2 (ja) | バス間通信インタフェース装置 | |
JP2586168B2 (ja) | 半導体記憶装置および方法 | |
JP3218659B2 (ja) | Fifoバッファ回路 | |
JP2006091966A (ja) | メモリ制御装置 | |
JP2006277363A (ja) | 情報転送方式,画像形成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190328 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200303 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200430 |
|
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: 20200825 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200917 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6769662 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |