JP6247480B2 - 制御装置、制御システムおよび制御方法 - Google Patents

制御装置、制御システムおよび制御方法 Download PDF

Info

Publication number
JP6247480B2
JP6247480B2 JP2013189257A JP2013189257A JP6247480B2 JP 6247480 B2 JP6247480 B2 JP 6247480B2 JP 2013189257 A JP2013189257 A JP 2013189257A JP 2013189257 A JP2013189257 A JP 2013189257A JP 6247480 B2 JP6247480 B2 JP 6247480B2
Authority
JP
Japan
Prior art keywords
processor
usage rate
control device
time
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2013189257A
Other languages
English (en)
Other versions
JP2015056039A (ja
Inventor
坂 悠 司 東
坂 悠 司 東
藤 浩 喜 工
藤 浩 喜 工
本 岳 文 坂
本 岳 文 坂
口 典 孝 出
口 典 孝 出
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2013189257A priority Critical patent/JP6247480B2/ja
Priority to US14/203,940 priority patent/US20150074673A1/en
Publication of JP2015056039A publication Critical patent/JP2015056039A/ja
Application granted granted Critical
Publication of JP6247480B2 publication Critical patent/JP6247480B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Programmable Controllers (AREA)
  • Electric Clocks (AREA)

Description

本発明の実施形態は、制御装置、制御システムおよび制御方法に関する。
従来の制御装置では、優先度の高い処理の影響により、優先度の低い処理が実行されるタイミングに遅延が生じる問題があった。この問題に対して、全ての処理の実行周期と実行時間を把握した上で、最適にタスクスケジューリングする方法が知られている。この方法は、全てのタスクの実行周期と実行時間を把握できることを前提としている。
近年普及している軽量なアプリケーションを実装可能な通信モジュールでは、CPUにより通信処理が高い優先度で処理され、ユーザはこの実行周期や実行時間を知ることはできない。そのためユーザが実装するアプリケーションの実行タイミングは、この影響により遅延が発生してしまう。
特開平8‐328615号公報
本発明の実施形態は、上記従来技術の問題点を解決するためになされたものであって、プロセッサに所望の処理を所望のタイミングで実行させることを可能とする制御装置、制御システムおよび制御方法を提供することを目的とする。
本発明の一態様としての制御装置は、第1の処理部を制御するプロセッサを備え、前記プロセッサは、前記プロセッサにより実行中のプログラムまたは前記プロセッサとバスを介して接続されたハードウェアから、前記第1の処理部に関する第1の処理の割り込み要求を受け付けた場合、前記第1の処理の実行を開始するまでにどれくらいの遅延が生じるかを判断するための判断情報を取得し、前記判断情報に基づいて、前記第1の処理を実行するか否かを判定する。
第1の実施形態に係る制御装置のブロック図。 第1の実施形態に係る動作を示すフローチャート。 第1の実施形態に係る制御装置と被制御装置のブロック図。 第1の実施形態に係る動作を示すフローチャート。 第1の実施形態に係る動作を示すフローチャート。 第2の実施形態に係る動作を示すフローチャート。 第2の実施形態に係る制御装置と被制御装置のブロック図。 第2の実施形態に係る動作を示すシーケンス図。 第3の実施形態に係る位相同期システムを示すブロック図。 第3の実施形態に係る通信システムを示すブロック図。 本発明の実施形態に関わる動作で使用するための情報の設定に関わる機能ブロック図。 第1の実施形態の動作の具体例を説明するための図。 カウントダウンタイマと周期タイマを示す図。
以下、図面を参照しながら、本発明の実施形態について説明する。
(第1の実施形態)
図1は、本発明の第1の実施形態に係わる制御装置のブロック図である。
図1に示す制御装置において、CPU(Central Processing Unit)101とメモリ102とペリフェラル103が、バス104に接続されている。本制御装置は、一例として、一般的な制御や通信のIC(Integreted Circuit)やLSI(Large Scale Integration)として実装されることができる。また一例として本制御装置は、無線LAN等の通信モジュールとして実装されることができる。
CPU101は、メモリ102に格納されたプログラムを読み出して実行する。プログラムは、通信処理を行うためのプログラムや、ユーザアプリケーションなど種々のプログラム、本実施形態の処理を実現するプログラムなどがあり得る。CPU101は、プロセッサの一例であり、CPU101の代わりに、MeP(Media embededd Processor)、マイクロプロセッサ、マイコン(MCU、Micro Control Unit)、MPU(Micro Processing Unit)を配置してもよい。
メモリ102は、不揮発性メモリであるROM(Read Only Memory)と、揮発性メモリであるRAM(Random Access Memory)を備える。プログラムはROMに書き込まれ、データはRAMに書き込まれるのが一般的である。RAMに関しては、一般的に記憶容量が大きいとされるDRAM(Dynamic RAM)や、DRAMよりもアクセス速度が高速であるとされるSRAM(Static RAM)等が存在する。メモリ102は、SRAMを備えることが望ましいが、制御に支障のない場合はDRAMを備えていてもよい。メモリ102は、上述したCPU101が実行するプログラムや、CPU101が実行の際に必要とする各種データを格納する。
ペリフェラル103は、メモリ102以外のハードウェアとして存在する機能ブロックであり、CPU101により制御される第1の処理部に相当する。ペリフェラル103の例として、時間を計測し割り込み処理のトリガを生成するタイマや、パルス波を出力するPWM(Pulse Width Modulation)がある。また、ペリフェラル103の他の例として、通信のためのUSB(Universal Serial Bus)やUART(Universal Asynchronous Receiver Transmitter)、I2C(Inter−Integrated Circuit)、SPI(System Packet Interface)、CAN(Control Area Network)、SDIO(Secure Digital Input/Output)、PIO(Parallel Input/OutputあるいはPragrammed Input/Output)、CPUと独立して時間を計測可能なRTC、デジタル信号とアナログ信号を変換するADC(Analog to Digital Converter)とDAC(Digital to Analog Converter)、各種センサ、通信処理部等が挙げられる。通信処理部では、デジタル信号処理に速度が要求される下位層の処理の一部を担うことが一般的である。
本発明の第1の実施形態では、少なくとも1つ以上のペリフェラルが備わっており、ペリフェラルは、ソフトウェア(プログラム)がCPU101で処理される中で制御される対象となる。CPU101は、任意のトリガによりペリフェラルに関する第1の処理の割り込み要求を受けると、CPU101の負荷状況に応じて、第1の処理の実行開始までにどれくらいの遅延が生じるかを判断するための判断情報を算出する算出部と、当該判断情報に基づいて、第1の処理を実行するか否かを判定する判定部を備える。
次に図1および図2を用いて、本発明の第1の実施形態に係わる制御装置の動作について説明する。図2は、本発明の第1の実施形態に係わる制御装置の動作の一例を示すフローチャートである。図11は、本実施形態に関わる動作で使用するための情報の設定に関わる機能ブロック図である。
CPU101は、任意のトリガによる割り込み要求を受け付けると、まず第1の処理を実行するに先立ち、メモリ102に記録されている目標時刻と許容誤差情報(図11参照)を取得する(S11)。
ここでトリガとは割り込みを指し、ハードウェアあるいはソフトウェアで発生させられる。後述のタイマによる割り込み処理をトリガとしてもよい。トリガがCPU101において待機状態の場合は、まだ本フローの動作は開始せず、実行状態に遷移したときに本フローの動作が開始される。
目標時刻は、第1の処理を実行する目標となる時刻である。目標時刻は、予め一意に決定されていてもよいし、後述のパルス波の出力タイミング制御のように、図11に示す目標時刻設定部11により動的に計算および設定してもよい。たとえば、ペリフェラルがPWMを備える場合に、PWMのパルス波の波長情報(パルス周期)を取得し、次のステップS12で得られる現在の基準時刻と併せて、目標時刻を決定してもよい。ユーザアプリケーションが、事前に目標時刻と許容誤差情報をメモリに格納しておいてもよい。簡単な構成では、目標時刻と許容誤差情報は、第1の処理の内容に応じて事前に決定してメモリに格納しておくことが考えられる。
許容誤差情報は、目標時刻からずれて第1の処理を実行することを許容する時間範囲(許容誤差範囲)を表す。すなわち、第1の処理は、目標時刻から許容誤差範囲内の時刻であれば、実行することが許容される。許容誤差範囲内の時刻であれば、それは第1の処理の所望の実行タイミングに相当する。
CPU101は、目標時刻と許容誤差情報を取得すると、次に現在の基準時刻を取得する(S12)。基準時刻は、制御装置内部の時刻のことである。現在の基準時刻は、図11に示すように、メモリ102の一部のレジスタに記録されている。基準時刻は、クロック14に合わせてハードウェアあるいは、CPU101で実行されるソフトウェアのいずれかの手段である時刻計時部13により、値がインクリメントされ、逐次更新される。ソフトウェアであれば、最も高い優先度で、時刻の更新処理が実行されるべきである。時刻の更新処理によるCPU処理ジッタの影響が、第1の処理の実行の許容誤差情報に対して十分小さくなければならない。
CPU101は、現在の基準時刻と目標時刻の差分を計算し、これを判断情報として取得する。そして、この差分が、許容誤差情報が示す許容誤差範囲内であるか判定する(S13)。CPU101は、判断情報を取得する取得部と、判断情報が示す値が許容範囲内かを判定する判定部を含む。許容誤差範囲内であれば(YES)、CPU101は、続けて第1の処理を実行して(S14)、本フローの処理を終了する。図12(A)に当該差分が許容誤差範囲内に入る場合の例を具体的に示す。図12(A)は横軸を基準時刻にとったタイミング図である。この例では現在の基準時刻が目標時刻よりも後であるが、当該差分が許容誤差範囲内で有る限り、目標時刻よりも前でも良い。
許容誤差範囲外であれば(NO)、CPU101の判定部は、第1の処理を実行しないことを決定し、本フローの処理を終了する。図12(B)に当該差分が許容誤差範囲内に入らない場合の例を具体的に示す。この例では現在の基準時刻が目標時刻よりも後であるが、目標時刻よりも前であっても、許容誤差範囲に入らなければ、第1の処理を実行しない。少なくとも設定可能な限り、現在の基準時刻を取得してから第1の処理の実行有無の判断を完了するまでは、CPU101は他の処理を実行しないことが望ましい。
CPU101が、任意のトリガを受け付けてから、現在の基準時刻を取得するまでに要する時間は、CPUの負荷状況あるいは動作状況に依存する。たとえばCPUが、トリガの発生後も優先度の高い通信を継続して行っている場合は、CPUの負荷が高い状態であり、トリガの発生から、現在の基準時刻を取得するまでに要する時間が長くなると想定される。また、トリガによる割り込みが、他の優先度の高い処理のために待機させられ、実行状態に遷移することが遅延する場合もある。このため、CPUの負荷が高い場合、トリガが発生した後、現在の基準時刻と目標時刻の差分を判定した結果、差分が許容誤差を超える可能性が高まる。一方、CPUの負荷が低い状態であれば、トリガの発生から現在の基準時刻を取得するまでの時間が短時間であると想定され、上記差分が許容誤差範囲内に収まる可能性が高くなる。上記差分が許容誤差範囲内に収まる場合には、CPUは直ちに第1の処理を実行することで、第1の処理を所望タイミングに対し許容誤差範囲内で実行することが可能となる。上記差分が許容誤差範囲内に収まらない場合は、第1の処理を実行しないことで、第1の処理が許容誤差範囲外のタイミングで実行されることを阻止できる。
以下、第1の処理が、PWMのパルス波停止と開始処理である場合を具体例として、目標時刻の計算方法の例を示す。
前述のように、ペリフェラル103の一例であるPWMは専用ハードウェアで動作する。CPU101は、予めPWMを動作させているものとする。目標時刻である任意の時刻に、第1の処理を実行したい場合に、図2の処理フローを実行することで、第1の処理を目標時刻または許容誤差範囲内で実行することができ、パルス波(たとえばパルス波の立ち上がりまたは立ち下がり)を所望の基準時刻に合わせることができる。
目標時刻は、一例として、以下の方法で計算できる。パルス波のパルス幅と1周期の波長が固定でかつオフセットの情報があれば、(1)式で示すように、現在の基準時刻をパルス周期で剰余計算した結果が、現在の基準時刻に最も近いハイレベル(HIGH)あるいはローレベル(LOW)に切り替わるべき目標時刻までの差分とできる。なお、オフセットの情報も、上述したパルス周期の情報と同様の手段で取得できる。オフセットは0以上であり、0の場合は情報としてなくてかまわない。目標時刻は、現在の基準時刻にこの差分を加算することで計算できる。
(目標時刻までの差分)=min{(現在の基準時刻)%(パルス周期),(パルス周期)−((現在の基準時刻)%(パルス周期))}+(オフセット) ・・・(1)
ただし(1)式においてA%Bは、Aを被除数、Bを除数としたときの剰余を表す。なお、PWMにより出力されるパルス波が必ずHIGHから開始される場合には、LOWである期間に停止と開始を実行することで、パルス波に高周波ノイズが乗ることを回避できる。
次に、図3を用いて、制御装置の被制御対象に応じて許容誤差情報を自動的に決定する例を示す。図3において制御装置に対して被制御装置が接続されている。ここでは、被制御装置として、インバータを例に挙げる。制御装置のペリフェラル103は、PWM111とPIO112と通信部113とを含む。被制御装置は、IOポート121と、位相制御部122とを含む。
PIO112は、PWM111により生成されるパルス波の出力に応じて、インバータに対してタイミング参照信号としてパルス波を出力する。
インバータでは、これをIO(Input/Output)ポート121あるいはその他のインターフェースで受け、位相制御部122は、IOポート121から入力されるパルス波に基づき、交流出力の位相制御を行う。
インバータの交流出力の位相を、制御装置の所望の基準時刻に合わせる場合、許容誤差は、交流出力一周期の波長に対する所定の割合に基づき決定する。
例えば許容誤差を波長の5%と定めた場合、許容誤差は、50Hzでは1ミリ秒、100Hzでは500マイクロ秒となる。許容誤差の設定は、一例として、図11に示す許容誤差設定部12が、インバータの周波数情報を取得して、許容誤差情報が記録されているメモリ102のレジスタの値を更新することで実現される。許容誤差設定部12は周波数情報を、通信部113を介して被制御装置であるインバータから取得してもよいし、別の制御装置から有線または無線により周波数情報を取得してもよい。許容誤差設定部12は、ハードウェアあるいはCPU101上で実行されるソフトウェアで実現される機能ブロックである。ハードウェアの場合は、当該ハードウェアはペリフェラル103の一部でもよいし、これとは別にバス104に接続された別の回路でもよい。
図4は、本発明の第1の実施形態に係わる制御装置の動作の別の例を示すフローチャートである。
制御装置は、図11に示すCPU使用率を計算する使用率計算部15を持ち、本フローの動作では、これを利用して第1の処理の実行是非を判断しようとするものである。CPU使用率とは、実行中のプログラムが、CPUの処理時間を占有している割合を指す。一例として、ペリフェラルとしてのRTC(リアルタイムクロック)を、I2Cを介して用いることで、CPU使用率の測定する方法が考えられる。CPU使用率は定期的に計算してメモリに書き込んでも良いし、CPU1が任意のトリガによる割り込みを受け付けたときに計算してもよい。
CPU101は、任意のトリガによる割り込みを受けると、第1の処理を実行するに先立ち、メモリ102に記録されている許容誤差情報(たとえば許容CPU使用率)を取得する(S21)。
次に、CPU101は、現在のCPU使用率を、メモリのレジスタから読み出すことで、判断情報として取得する(S22)。CPU使用率計測部から直接、CPU使用率を取得してもよい。
現在のCPU使用率が、許容誤算範囲内であれば、たとえば許容CPU使用率以下であれば、(YES)、続けてCPU101は、第1の処理を実行して(S24)、本フローを終了する。許容誤差範囲外であれば、たとえば現在のCPU使用率が、許容CPU使用率より大きければ(NO)、第1の処理を実行せずに、本フローの処理を終了する。
このようにCPU使用率が許容誤差範囲内にある場合にのみ、第1の処理を実行することで、第1の処理の実行を所望のタイミング範囲内で行うことが期待できる。
上述した例ではRTCを利用してCPU使用率を測定する場合を示したが、以下、CPU使用率を推定により取得する方法の例を示す。一例として、CPUで行う高優先処理(第1の処理より優先度が高い)が通信である場合、その通信量からCPU使用率を推定することができる。例えば一定時間の送受信パケット数をカウントする通信量測定部をCPU使用率計算部として設ける。通信量測定部は、ハードウェアまたはCPU101上で実行されるソフトウェアで実現される機能ブロックである。予め送受信パケット数とCPU使用率の関係を、関数化あるいはテーブル化しておく。通信量測定部は、一定時間毎に送受信パケット数を計算してメモリ内の所定のレジスタに書き込むことで、レジスタの値を更新する。CPUは当該レジスタから取得した送受信パケット数に応じたCPU使用率を、関数またはテーブルに基づき求める。
図5は、本発明の第1の実施形態に係わる制御装置の動作のさらに別の例を示すフローチャートである。本フローの処理では、トリガの受け付け時(トリガが待機状態から実行状態に遷移した時)に、CPUで第1の処理よりも優先度の高い高優先処理が実行されている場合には、第1の処理の実行を見送り、そうでない場合は、第1の処理を実行する。
CPU101は、任意のトリガにより、第1の処理を実行するに先立ち、高優先処理実行情報を判断情報として取得する(S31)。高優先処理実行情報は、高優先処理が実行中であるか否かを特定する情報である。この情報が、高優先処理が実行中でないことを示していれば(YES)、CPU101は、第1の処理を実行し(S33)、本フローの処理を終了する。一方、高優先処理が実行中であることを示していれば(NO)、CPU101は、第1の処理を実行することなく、本フローの処理を終了する。
ここで高優先処理実行情報の設定方法を説明する。高優先処理実行情報は、たとえばフラグの形式を有し、メモリ内に設けた1ビット以上の領域を有するレジスタに格納される。例えば高優先処理が通信処理の場合は、通信開始時に、フラグを設定し(オンにし)、通信処理終了時に解除する(オフにする)ことで、レジスタのフラグを参照すれば、通信処理が実行中であるか判断することができる。高優先処理実行情報の設定は、図11に示す高優先処理監視部16が行い、高優先処理監視部16は、ハードウェア、あるいはCPUで実行されるソフトウェアの機能ブロックとして実現される。
CPUの処理状況は時々刻々と変化するため、CPU使用率及びこれに準ずる情報の取得(図4のS21等)と、高優先処理実行情報の取得(図5のS31等)は、第1の処理を実行する直前に実施することが望ましい。また、CPU使用率及びこれに準ずる情報は、定期的に計算されるようにし、第1の処理の実行是非の判定時に最新の値を使用、または過去の値を用いた平均値(単純平均、移動平均等)、過去X回分の値の中央値、最頻値、最大値等の統計値を使用してもよい。
また、一回当たりのCPU使用率を測定する期間は、高優先処理の実行状況を検出するために十分短い期間である必要がある。一例として、高優先処理が通信処理である場合には、測定期間はCPUの動作周波数にも依存するが、ナノ秒〜マイクロ秒のオーダが望ましい。
また、第1の処理と優先度が同じかそれより小さい処理の実行により、CPU使用率が増加している可能性がある。そのような処理については、予め個別に実行中のCPU使用率を処理別に測定して記憶する、または、そのような優先度が同じかそれより小さい処理が実行中であることを示すフラグを設定しておく。そして、CPU使用率を取得する際には、当該フラグを参照し、第1の処理と優先度が同じかそれより小さい処理のCPU使用率を、現在のCPU使用率から差し引いた値を、実効CPU使用率(判断情報)として使用してもよい。このように計算した実行CPU使用率は、優先度の高い処理の実行に基づくCPU使用率を表す。
以上、本発明の第1の実施形態によれば、第1の処理を実行する直前に現在の基準時刻と目標時刻との差分を確認して、差分が許容誤差範囲内であれば、目的の処理(第1の処理)を実行する。これにより、第1の処理が被るCPU処理ジッタの影響を考慮しつつ、第1の処理を目標時刻に精度よく合わせて、またはその許容範囲内で実行することができる。実行時刻の目標時刻に対する精度は、許容誤差範囲の設定により、目的の処理が実行される確率と引き換えに向上させることができる。許容誤差範囲を超える場合には目的の処理が実行されないため、第1の処理が独立して動作するPWMのようなハードウェアに対する命令の場合に特に有効である。
また、CPU使用率あるいはこれに準ずる情報に応じて、CPU使用率が許容値を超えている場合は、第1の処理を実行しないことで、第1の処理の実行タイミングを安定化することができる。また、高優先度処理が実行されている場合にも、第1の処理を実行しないことで、第1の処理の実行タイミングを安定化することができる。
このように、本実施形態によれば、CPUの処理ジッタの影響による実行タイミングの遅延を低減することができる。特に、本実施形態は、CPUにおいて高い優先度の処理がブラックボックス化されて実行されている場合に有効である。
(第2の実施形態)
第1の処理のトリガを発生させるために、カウントダウンタイマを使うことで、目標時刻と第1の処理を実行する時刻の差分を小さくすることができる。カウントダウンタイマは、一例として、ハードウェア(後述する図7参照)、あるいはCPU上で動作するソフトウェアとして実現されることができる。カウントダウンタイマは、設定された時間が経過すると、CPU101への割り込みを発生させる。
図6に本発明の第2の実施の形態におけるタイマの時間設定及びその開始手順を示す。
まずCPU101は、任意のトリガを受け付けると、メモリ102に記録されている目標時刻を取得する。ただし、前述のパルス波出力タイミング調整で例に挙げたように、目標時刻は予め一意に決定されていなくてもよく、現在の基準時刻とパルス周期から目標時刻を決定するなど、動的に決定してもよい(S41)。
次に、CPU101は、CPU使用率をメモリから取得し(S42)、現在の基準時刻(S43)をメモリから取得する。CPU使用率の取得と現在の基準時刻の取得については順番が入れ替わってもよい。現在の基準時刻を先に取得する場合、CPU使用率の取得に要する時間を予め測定し、この測定した時間に基づき、先に取得された現在の基準時刻を補正してもよい。
CPU101は、取得された現在の基準時刻から、カウントダウンタイマに設定する時間を計算し、計算した時間をカウントダウンタイマに設定する(S44)。設定する時間は、一例として、取得した現在の基準時刻から目標時刻までの差分から、CPU使用率に応じた調整量を差し引いた値とする。
調整量は以下のようにした取得できる。予めCPU使用率とCPU処理ジッタの関係を測定して、調整量とCPU使用率の関係を関数化あるいはテーブル化しておく。ステップS42で取得されたCPU使用率を、関数あるいはテーブルにより調整量に換算する。これにより、CPU使用率に応じた調整量を取得できる。
CPU101は、このようにして計算された時間をカウントダウンタイマに設定したら、カウントダウンタイマを開始させる(S45)。カウントダウンタイマは、設定された時間が経過すると、CPU101への割り込みを発生させる。CPU101は、当該トリガ(割り込み)を、たとえばその優先度に応じて処理し、第1の処理を実行する。
以下、カウントダウンタイマを使用した制御方法の具体例として、パルス波出力タイミング調整方法を説明する。本具体例を説明するための図として、本実施形態に係る制御装置の例を図7に示す。図3に示した制御装置のペリフェラルにタイマ114が追加されている。
タイマ114は、図13に示すように、前述したカウントダウンタイマ114aに加えて、周期的にパルス波出力タイミングを調整するために周期タイマ114bを有する。周期タイマ114bから周期的に周期トリガが発生し、CPUは周期トリガ(周期割り込み)を受けてカウントダウンタイマに設定するタイマ値を計算し、計算したタイマ値をカウントダウンタイマに設定し、カウントダウンタイマを起動させる。カウントダウンタイマがタイムアウトすると、カウントダウンタイマからCPUへのトリガが発生させられ、CPUはトリガを受けて、第1の処理を実行する。ただし、カウントダウンタイマを設定及び開始する方法としては、このような周期タイマを用いた方法に限定されない。
図8に、本実施形態に係る制御装置の動作シーケンスを示す。各機能ブロックの振る舞いがシーケンスとして示されている。縦に伸びる矢印付の実線は、第1の処理の実行(ここではPWMに伸びる矢印)に至るまでに行うCPU101の制御のタイミングを表したものである。
CPU101は、周期タイマからの周期トリガにより、図6で示した目標時刻情報の代わりに、パルス周期情報Tを取得し(図8では省略)、CPU使用率uを取得し(S51)、現在の基準時刻τを取得する(S52)。この例ではCPU使用率をCPU使用率測定部から直接取得しているが、メモリから取得する構成も可能である。
目標時刻は、例えば(2)式で計算される(S53)。なお、図8ではオフセットは0の例を示している。
(目標時刻t)=(現在の基準時刻τ)+(パルス周期T)−((現在の基準時刻τ)%(パルス周期T))+(オフセットδ)
・・・式(2)
カウントダウンタイマの設定時間は、例えば(3)式で計算される(S54)。
(タイマ設定時間)=(目標時刻t)−(現在の基準時刻τ)−(タイマ調整量α
・・・式(3)
タイマ調整量αは、上述したように、CPU使用率uを関数またはテーブル等に基づき換算して得ることができる。
カウントダウンタイマに時間を設定し、当該タイマを開始させると、(t−τ−α)経過後、カウントダウンタイマがタイムアウトし、トリガを発生させる。図8の例では、カウントダウンタイマが発生させた割り込みを、そのトリガ発生からΔ経過後にCPU101が処理開始しており(S55)、目標時刻tに対して、CPU処理ジッタ(Δ−α)だけ、遅延している。すなわち、第1の処理であるパルス波出力の停止及び開始が、目標時刻tに対して誤差(Δ−α)で実行されている。CPU101が優先度の高い処理を行っている場合、それより優先度の低い第1の処理の割り込み(カウントダウンタイマの割り込み)は待機させられ、割り込みの実行開始が遅延されたり、割り込みの処理そのものが遅延する場合がある。なお、図ではカウントダウンタイマからPWMに直接矢印が延びているが、これはカウントダウンタイマからのトリガがCPU101で処理され、CPU101から第1の処理の実行としてPWMが制御されることを表したものである。
図8の右には、2度目の第1の処理の実行に対するシーケンスが示されている。この例では、CPU使用率uが、1度目のシーケンスのときのCPU使用率uよりも小さく、それに応じて、タイマ調整量αも、タイマ調整量αより小さいことが示されている。また目標時刻tよりも|Δ−α|だけ早く、第1の処理が行われている。
なお、各計算処理遅延(目標時刻の計算処理、タイマ設定時間の計算処理など)を予め測定あるいは所要クロック数から求めておき、これに基づきタイマ設定時間を補正してもよい。
なお、CPU使用率の測定は、上述したように、定期的に行ってもよく、過去に取得された1回以上の値の統計値を、実効CPU使用率として使用してもよい。統計値は、平均値(単純平均、移動平均等)、過去X回分の値の中央値、最頻値、最大値などがある。CPU使用率の取得頻度が高いほど、CPU処理ジッタの影響を正確に推定することができるが、過度のCPU使用率の取得は、これ自体がCPU使用率を増加させる要因になる可能性がある。そこで、予めCPU使用率の取得頻度とCPU処理ジッタの推定精度の関係を測定により明らかにし、所要の推定精度を満たすCPU使用率の取得頻度を設定してもよい。
また、第1の処理よりも優先度が同じかもしくはそれ以下の処理により、CPU使用率が増加している可能性がある。そのような処理について、前述のように予め個別に実行中のCPU使用率を測定して記憶しておき、また、第1の処理よりも優先度が同等以下の処理が実行中であることを示すフラグを設定しておく。実運用中にはCPU使用率を取得する際に、フラグを参照し、該当する処理のCPU使用率を差し引いた値を、実効CPU使用率として使用してもよい。
なお、CPU使用率を運用中に取得できない場合、予めCPU使用率とCPU処理ジッタの関係を測定し、いかなるCPU使用率になってもCPU処理ジッタの影響が最小化されるように固定のタイマ調整量を設定してもよい。例えば、CPU使用率が最小の場合と最大の場合のCPU処理ジッタの平均値を採用することで、第1の処理の実行時刻の目標時刻に対する最大誤差を低減する一定の効果が得られる。
以上、第2の実施形態に係わる制御装置によれば、目的の処理が受けるCPU処理ジッタの程度を予測することでCPU処理ジッタの影響を補正することが可能で、CPU処理ジッタの程度が許容値を超える場合には、目的の処理を実行しないことにより、目的の処理の実行タイミングを安定化させることができる。
また、第1の実施形態で述べた第1の処理の実行直前の時刻の確認に併せて、トリガにカウントダウンタイマを使うことで第1の処理を目標時刻に近い時刻で実行する可能性を向上させることができる。しかし高優先処理の実行により第1の処理のタイミングはCPU処理ジッタの影響を被る。そこで、CPU処理ジッタの程度を予測してカウントダウンタイマの設定に反映することで、第1の処理が被るCPU処理ジッタの影響を緩和することができる。
また、第1の処理と実行優先度が同じかそれ以下の別の処理が実行されている場合、第1の処理は必ずしもCPU使用率に比例した程度のCPU処理ジッタの影響を受けない。そこで、第1の処理と実行優先度が同じかそれ以下の別の処理のCPU使用率を予め個別に測定しておき、その実行状況に応じて現在のCPU使用率から差し引くことで、実効CPU使用率を算出し、より精度よくCPU処理ジッタの影響を緩和することができる。
尚、運用中にCPU使用率を測定できない場合でも、予め適切なタイマ調整量の固定値を設定しておくことで、CPU使用率の影響を緩和する一定の効果が得られる。
(第3の実施形態)
図9は、本発明の第3の実施形態に係わる制御システムとして位相制御システムの例を示す。この制御システムは、本発明の第1の実施形態で説明した制御装置と被制御装置の組を2つ備える。すなわち制御装置1と被制御装置1の組と、制御装置2と被制御装置2の組が示される。図示の例では、制御装置と被制御装置を2組表示しているが、2組以上であってもよい。
制御装置1と被制御装置1は、図7に示した制御装置と被制御装置と同様であるため、拡張または変更された処理を除き重複する説明を省略する。制御装置2と被制御装置2も、図7に示した制御装置と被制御装置と同様であるため、各ブロックの番号を201〜204、211〜214,221〜222に振り直して表示するとともに、拡張または変更された処理を除き重複する説明を省略する。
このシステムでは、各制御装置の通信部113、213を介して各制御装置を時刻同期させることで、各被制御装置を同期制御する。各制御装置を時刻同期させるとは、各制御装置の基準時刻を同期させることである。図示の例では、各制御装置を時刻同期させて、PWM111、211によるパルス波出力を同期させ、これにより各被制御装置を同期制御する。例えば被制御装置がインバータであれば、各被制御装置はそれぞれ制御装置のPIO112、212から入力されるパルス波に位相を合わせて交流電力を出力することで、複数インバータの交流出力は高い力率で合成される。これは特に、交流電力出力同期のリファレンスとなる系統と独立したインバータシステムにおいて有効である。たとえば第1または第2の実施形態の目標時刻を各制御装置で一致させつつ、時刻同期を図ることで、各被制御装置の位相を同期させることができる。
図10は、本発明の第3の実施形態に係わる制御システムとして無線センサネットワークシステムを示す。
このシステムは、2台の制御装置として、通信装置1と通信装置2を備える。ただし、本システムは3台以上の通信装置で構成されてもよい。本システムでは、各通信装置で、必要なときのみ通信部を起動して、データの送受信を行うスリープ制御を行う。
通信装置1では、CPU301、メモリ302、ペリフェラル303がバス304に接続されている。ペリフェラル303は、通信部313、タイマ314、インターフェース315、アンテナ316を備える。同様に、通信装置2は、CPU401、メモリ402、ペリフェラル403がバス404に接続されている。ペリフェラル403は、通信部413、タイマ414、インターフェース415、アンテナ416を備える。これまで述べてきた制御装置と同様の名称のブロックの動作は、基本的に同様であるため、拡張または変更された処理の除き、重複する説明を省略する。インターフェース315、415は、外部とのインターフェースであり、外部から有線または無線でアナログまたはデジタルのデータを取得する。たとえば生体に装着したセンサからセンシングデータを取得する。
ここでは、図9に示したインバータシステムと同様に、通信部313、413間の通信(ここでは特に無線通信)を用いて時刻同期が行われて。所定の時刻になるとデータの送受信を行うために、通信部313、413を起動する。そして、送受信を終えると、通信部313、413の電源供給を停止あるいは低消費電力モードに移行する制御を実行し、消費電力を抑制する。
当該システムの場合、各々の通信装置が持つ基準時刻の同期が、一定の正確性を保っているとしても、これに基づいて通信部313、413を制御する際に、制御遅延が生じ、これにより他の通信装置の送受信の時刻に起動が間に合わないと、通信が失敗してしまう可能性がある。この場合、その間の起動中に消費される電力が無駄になってしまう。また、通信の失敗への対策として早い時刻に通信装置を起動する命令を実行すると、低消費電力化の効果が低下する。
そこで、本実施形態により、起動して通信を実施する時刻を目標時刻とし、第1の処理を通信処理として、適切なタイミングで通信部を起動し、データの送信または受信を実行する。目標時刻に対して所定時間以上の遅延が見込まれる場合には、通信部を起動しないようにする。これにより、より効果的に低消費電力化を図ることができる。尚、遅延が見込まれるとして通信部を起動しなかった場合には、次の機会でデータの送受信を行えばよい。このような制御を行うことで、少なくとも一方の通信装置の通信部を無駄に起動することを阻止できるため、消費電量化の効果を高めることができる。
通信部313および413間の通信は、同期する仕組みを備えていればいかなる方式でもよく、有線/無線を問わない。同期についても方式は問わないが、被制御装置間を同期制御するのに十分な同期精度を達成する方式である必要がある。通信方式と同期方式については、例えば有線通信ではNTP(Network Time Protocol)が双方向通信により数ミリ秒の精度を得られることが知られている。また、無線LANとして知られるIEEE802.11ではTSF(Timing Synchronization Function)でビーコンフレームが時刻情報を配布する片方向通信により数マイクロ秒の同期精度が得られる。被制御装置としてインバータを想定すると、インバータ間の50Hz交流出力位相を同期させるのに、無線LANの同期精度は十分である。
なお、各実施形態で述べた制御装置は、コンピュータ装置に搭載されたプロセッサにプログラムを実行させることにより実現することができる。このとき、制御装置は、上記のプログラムをコンピュータ装置にあらかじめインストールすることで実現してもよいし、CD−ROMなどの記憶媒体に記憶して、あるいはネットワークを介して上記のプログラムを配布して、このプログラムをコンピュータ装置に適宜インストールすることで実現してもよい。また、BおよびCは、上記のコンピュータ装置に内蔵あるいは外付けされたメモリ、ハードディスクもしくはCD−R、CD−RW、DVD−RAM、DVD−Rなどの記憶媒体などを適宜利用して実現することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。

Claims (18)

  1. 第1の処理部を制御するプロセッサを備え、
    前記プロセッサは、前記プロセッサにより実行中のプログラムまたは前記プロセッサとバスを介して接続されたハードウェアから、前記第1の処理部に関する第1の処理の割り込み要求を受け付けた場合、前記第1の処理の実行を開始するまでにどれくらいの遅延が生じるかを判断するための判断情報を取得し、前記判断情報に基づいて、前記第1の処理を実行するか否かを判定する
    制御装置。
  2. 前記プロセッサは、前記第1の処理を実行することを決定した場合に前記第1の処理を実行する
    請求項1に記載の制御装置。
  3. 基準時刻を計数する時刻計数部を備え、
    前記プロセッサは、前記割り込み要求を受け付けた場合に、前記時刻計数部により計数される基準時刻を取得し、前記取得した基準時刻と、前記第1の処理を実行する目標時刻との差分に基づいて、前記判断情報を取得する
    請求項1または2に記載の制御装置。
  4. 前記判断情報は、前記目標時刻と前記基準時刻の差分を表し、
    前記プロセッサは、前記差分が許容範囲内に含まれる場合は、前記第1の処理を実行することを決定し、前記許容範囲内に含まれない場合は、前記第1の処理を実行しないことを決定する
    請求項3に記載の制御装置。
  5. 前記許容範囲を設定する設定部を備え、
    前記第1の処理部は、交流電力を出力するインバータの制御を行い、
    前記設定部は、前記インバータが出力する交流電力の周波数情報に基づいて、前記許容範囲を設定する
    請求項4に記載の制御装置。
  6. 前記プロセッサの使用率または前記使用率の統計値を計算する使用率計算部をさらに備え、
    前記プロセッサは、前記割り込み要求を受けた場合、前記使用率計算部により計算される前記プロセッサの使用率もしくは前記使用率の統計値を前記判断情報として取得し、
    前記プロセッサは、前記判断情報に基づき前記プロセッサが高負荷状態であるときは、前記第1の処理を実行しないことを決定し、前記高負荷状態でないときは、前記第1の処理を実行することを決定する
    請求項1または2に記載の制御装置。
  7. 前記プロセッサは、前記使用率または前記統計値が許容値以上の場合に、前記プロセッサが高負荷状態であると判断する
    請求項6に記載の制御装置。
  8. タイマと、
    前記プロセッサの使用率または前記使用率の統計値を計算する使用率計算部をさらに備え、
    前記プロセッサは、前記プロセッサの使用率または前記使用率の統計値を前記判断情報として取得し、前記第1の処理を実行するか否かを判定する代わりに、前記第1の処理を実行する目標時刻と、前記判断情報に基づき前記タイマに時間を設定し、
    前記プロセッサは、前記タイマがタイムアウトすると、前記タイマからの割り込み要求を受けて前記第1の処理を実行する
    請求項1または2に記載の制御装置。
  9. 前記プロセッサは、前記使用率が高いほど小さな値の時間を前記タイマに設定する
    請求項8に記載の制御装置。
  10. 前記使用率計算部は、前記プロセッサが行う処理別に、前記プロセッサの使用率または前記使用率の統計値を計算し、
    前記プロセッサは、前記プロセッサの使用率または前記使用率の統計値から、あらかじめ決められた処理の使用率またはその統計値を差し引いた値を、前記判断情報として取得する
    請求項6ないし9のいずれか一項に記載の制御装置。
  11. 前記第1の処理よりも実行の優先度が高い第2の処理が実行中か否かを表す高優先処理実行情報を格納するメモリを備え、
    前記プロセッサは、前記高優先処理実行情報を前記判断情報として前記メモリから取得し、前記第2の処理が実行中でないことを示す場合に、前記第1の処理を実行することを決定する
    請求項1または2に記載の制御装置。
  12. 前記基準時刻を格納するメモリを備え、
    前記時刻計数部は、前記メモリにおける前記基準時刻をカウントアップして更新し、
    前記プロセッサは、前記メモリから読み出すことで前記基準時刻を取得する
    請求項3ないし5のいずれか一項に記載の制御装置。
  13. 前記目標時刻を格納するメモリを備え、
    前記プロセッサは、前記メモリから読み出すことで前記目標時刻を取得する
    請求項3ないし5、8、9のいずれか一項に記載の制御装置。
  14. メモリを備え、
    前記使用率計算部は、計算した前記プロセッサの使用率または前記使用率の統計値を前記メモリに書き込み、
    前記プロセッサは、前記メモリから読み出すことで前記プロセッサの使用率または前記使用率の統計値を取得する
    請求項6ないし9のいずれか一項に記載の制御装置。
  15. 前記目標時刻は、予め決定された時刻である
    請求項3に記載の制御装置。
  16. 請求項1ないし15のいずれか一項に従った第1および第2の制御装置を備え、
    前記第1の制御装置は、前記第2の制御装置と通信を行う第1の通信部を含み、
    前記第2の制御装置は、前記第1の制御装置と通信を行う第2の通信部を含み、
    前記第1および第2の制御装置は、前記第1および第2の通信部を用いて基準時刻の同期を行う
    制御システム。
  17. 前記第1および第2の制御装置は、それぞれ
    基準時刻を記憶するメモリ
    前記基準時刻をカウントアップして更新する時刻更新部と、を備え
    前記プロセッサは、前記第1の処理を実行する目標時刻と、前記メモリに記憶された基準時刻との差分に基づいて、前記判断情報を算出し、
    前記目標時刻は前記第1および第2の制御装置でそれぞれ同じ値に設定されている
    請求項16に記載の制御システム。
  18. 第1の処理部を制御するプロセッサが、前記プロセッサにより実行中のプログラムまたは前記プロセッサとバスを介して接続されたハードウェアから、前記第1の処理部に関する第1の処理の割り込み要求を受け付けた場合に、前記第1の処理の実行を開始するまでにどれくらいの遅延が生じるかを判断するための判断情報を取得するステップと
    前記判断情報に基づいて、前記第1の処理を実行するか否かを判定するステップと
    を備えた制御方法。
JP2013189257A 2013-09-12 2013-09-12 制御装置、制御システムおよび制御方法 Active JP6247480B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013189257A JP6247480B2 (ja) 2013-09-12 2013-09-12 制御装置、制御システムおよび制御方法
US14/203,940 US20150074673A1 (en) 2013-09-12 2014-03-11 Control apparatus, control system and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013189257A JP6247480B2 (ja) 2013-09-12 2013-09-12 制御装置、制御システムおよび制御方法

Publications (2)

Publication Number Publication Date
JP2015056039A JP2015056039A (ja) 2015-03-23
JP6247480B2 true JP6247480B2 (ja) 2017-12-13

Family

ID=52626856

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013189257A Active JP6247480B2 (ja) 2013-09-12 2013-09-12 制御装置、制御システムおよび制御方法

Country Status (2)

Country Link
US (1) US20150074673A1 (ja)
JP (1) JP6247480B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9231790B2 (en) * 2007-03-02 2016-01-05 Qualcomm Incorporated N-phase phase and polarity encoded serial interface
US8064535B2 (en) 2007-03-02 2011-11-22 Qualcomm Incorporated Three phase and polarity encoded serial interface
US9711041B2 (en) 2012-03-16 2017-07-18 Qualcomm Incorporated N-phase polarity data transfer
KR101936565B1 (ko) * 2016-11-14 2019-01-09 엘에스산전 주식회사 인버터에서 인터럽트 제어방법
JP6904155B2 (ja) * 2017-08-09 2021-07-14 富士通株式会社 情報処理装置、情報処理方法及びプログラム
US10942773B1 (en) * 2018-11-15 2021-03-09 Amazon Technologies, Inc. Ensemble event scheduling by executing a plurality of schedulers having a probabilistic distribution of ticks to ensure a tick within a threshold time
CN110632878B (zh) * 2019-10-08 2022-06-28 上海宝阶智能科技有限公司 一种异构嵌入式表格化处理及执行动作流程的方法和装置
CN112764889A (zh) * 2019-10-21 2021-05-07 Oppo广东移动通信有限公司 进程调度方法、装置、设备以及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5719786A (en) * 1993-02-03 1998-02-17 Novell, Inc. Digital media data stream network management system
JP2001156842A (ja) * 1999-11-26 2001-06-08 Mitsubishi Electric Corp 伝送システム
JP2005182473A (ja) * 2003-12-19 2005-07-07 Toshiba Corp 周波数制御方法および情報処理装置
US7698541B1 (en) * 2006-10-31 2010-04-13 Netapp, Inc. System and method for isochronous task switching via hardware scheduling
KR101513505B1 (ko) * 2008-11-04 2015-04-20 삼성전자주식회사 프로세서 및 인터럽트 처리 방법
JP2010160713A (ja) * 2009-01-09 2010-07-22 Yokogawa Electric Corp フィールド制御装置およびフィールド制御方法
US9548871B2 (en) * 2013-03-07 2017-01-17 General Electric Company Systems and methods for master arbitration
US10365683B2 (en) * 2013-05-10 2019-07-30 Texas Instruments Incorporated Frequency execution monitoring in a real-time embedded system

Also Published As

Publication number Publication date
JP2015056039A (ja) 2015-03-23
US20150074673A1 (en) 2015-03-12

Similar Documents

Publication Publication Date Title
JP6247480B2 (ja) 制御装置、制御システムおよび制御方法
US10707984B2 (en) Techniques for synchronizing slave devices
US20170041897A1 (en) Apparatus and methods for synchronizing a controller and sensors
TW201426279A (zh) 微處理器、操作微處理器的方法以及電腦程式產品
KR20180071268A (ko) 제어기와 센서들을 동기화하기 위한 장치 및 방법들
KR20150112660A (ko) 시스템 온 칩, 이의 작동 방법, 및 이를 포함하는 장치
TW201519611A (zh) 通訊裝置及頻偏校正方法
JP3523225B2 (ja) クロック監視装置及び監視方法
US20180129180A1 (en) Pch thermal sensor dynamic shutdown
JP2016513322A (ja) アイドル状態の間の電源ユニットによる電力消費の制御
JP2002351825A (ja) 通信システム
US20130061073A1 (en) Computer system and computer
WO2011077563A1 (ja) 情報処理装置又は情報処理方法
KR20060079632A (ko) 휴면 상태를 지원하는 프로세서의 소프트웨어 시간 보상장치 및 그 방법
JP2019106660A (ja) 電池駆動型無線通信システムおよび同期補正方式
JP2012124716A (ja) データ受信装置、データ送信装置、制御方法
JP6018040B2 (ja) クロック供給システム、クロックバッファ群および制御方法
JP5629523B2 (ja) 送信パワー測定装置、及び、無線送信装置
JP2006240130A (ja) 印刷装置のコントローラ
JP2020048152A (ja) 無線センサ装置および無線センサシステム
JP2011135531A (ja) 情報処理装置又は情報処理方法
JP3347987B2 (ja) シリアル通信制御装置
JP2010212771A (ja) 半導体装置、シリアライザ/デシリアライザ評価方法およびプログラム
JP2007257462A (ja) バスリセット・システム及び方法
JP6477032B2 (ja) プロセッサおよびその制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170331

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170516

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171117

R151 Written notification of patent or utility model registration

Ref document number: 6247480

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151