JP4385247B2 - 集積回路、および情報処理装置 - Google Patents

集積回路、および情報処理装置 Download PDF

Info

Publication number
JP4385247B2
JP4385247B2 JP2003285732A JP2003285732A JP4385247B2 JP 4385247 B2 JP4385247 B2 JP 4385247B2 JP 2003285732 A JP2003285732 A JP 2003285732A JP 2003285732 A JP2003285732 A JP 2003285732A JP 4385247 B2 JP4385247 B2 JP 4385247B2
Authority
JP
Japan
Prior art keywords
program
data
integrated circuit
received
reception
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
Application number
JP2003285732A
Other languages
English (en)
Other versions
JP2005056106A (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2003285732A priority Critical patent/JP4385247B2/ja
Priority to US10/909,364 priority patent/US7640371B2/en
Priority to EP04018464A priority patent/EP1505500A3/en
Priority to CN2004100558279A priority patent/CN1581127B/zh
Publication of JP2005056106A publication Critical patent/JP2005056106A/ja
Application granted granted Critical
Publication of JP4385247B2 publication Critical patent/JP4385247B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/065Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Communication Control (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Systems (AREA)

Description

本発明は、シリアル通信によりプログラム等のプログラムをダウンロードして実行するCPUを有する集積回路、およびそのような集積回路を有する携帯電話、コンピュータ等の情報処理装置に関するものである。
従来、CPUを内蔵したLSI等の集積回路では、ある機能を実現・追加する場合、その機能を実現・追加するためにCPUで実行されるプログラムをマスクROMに格納していた。
しかしながら、近年、システムの複雑化、プログラムの大規模化に伴い、マスクROM化した後に不具合が発生するリスクが大きくなっている。
そこで、この種の集積回路では、書き換え可能な不揮発メモリ(FLASHメモリ)にプログラムを格納し、不具合が発生した場合にプログラムを書き換えにより更新することも行われている。
しかしながら、不揮発メモリは一般的に外付けとなるため、実装面積の増加およびコストアップなどが問題となる。
そのため、この種の集積回路では、当該集積回路内にRAMを設け、上位の集積回路からダウンロードしたプログラムをRAMに格納してから、CPUで実行することも行われている。
以下、シリアル通信によりダウンロードしたプログラムをRAMに格納してからCPUで実行する集積回路を有する従来の情報処理装置について説明する。
図20を参照すると、本従来例の情報処理装置は、マスターデバイス8と、スレーブデバイス9とを有する。
マスターデバイス8は、CPU81と、マスターとなる同期式シリアルインターフェース(SSI)82とを有するLSIである。
スレーブデバイス9は、マスターデバイス8からシリアル通信によりプログラムをダウンロードして実行可能なCPU91を有するLSIである。CPU91は、バス制御回路95を介してROM93およびRAM94に接続される。ROM93には、ダウンロードを実行するためのプログラムが格納される。RAM94は、マスターデバイス8からダウンロードされ、CPU81で実行されるプログラムおよびワークデータを格納するために使用される。
さらに、スレーブデバイス9は、通信路・制御信号線10を介してマスターデバイス8と通信およびマスターデバイス8からのプログラムのダウンロードを行うための同期式シリアルインターフェース(SSI)92を有する。
ここで、スレーブデバイス9内の同期式シリアルインターフェース92の構成について図21を参照して説明する。
図21を参照すると、本従来例に係る同期式シリアルインターフェース92は、バス制御回路95を介してCPU91と接続されるバスインターフェース回路921と、送信側に配置された送信FIFO922および送信回路923と、受信側に配置された受信FIFO924および受信回路925と、通信処理に関する制御を行うタイミング制御回路926とを有する。
タイミング制御回路926は、CPU91からのデータをマスターデバイス8に送信する場合は、送信FIFO922および送信回路923を介してデータを送信する。一方、タイミング制御回路926は、マスターデバイス8からのデータを受信する場合は、マスターデバイス8から受信回路925により受信されたデータを受信FIFO924に蓄積する。なお、受信FIFO924に蓄積されたデータは、CPU91によりバスインターフェース回路921を介して読み出される。
以下に、本従来例の動作について説明する。ここでは、スレーブデバイス9が、チップセレクト(CS)、クロック(CLK)、出力データ(SDO)、入力データ(SDI)用の4本の信号線を用いた4線同期式シリアル通信によりマスターデバイス8からプログラムをダウンロードする例について説明する。
図22および図23に、マスターデバイス8側の動作を説明するタイミングチャートを示す。なお、図22および図23において、CS、CLK、SDOはそれぞれマスターデバイス8から出力されるチップセレクト、クロック、出力データを示し、図23において、SDIはマスターデバイス8に入力される入力データを示す。
図22および図23を参照すると、マスターデバイス8からの出力データ(SDO)のフォーマットは、アドレスや制御用のフィールド(以下、アドレスフィールドと称する。図22および図23では、8ビット分のフィールド)と、これに続くデータ用のデータフィールド(図22および図23では、8ビット分のフィールド)とに分かれている。なお、図22は、マスターデバイス8からスレーブデバイス9へデータが転送される場合のタイミングチャートであり、図23は、スレーブデバイス9からマスターデバイス8へデータの転送要求が送信される場合のタイミングチャートである。また、図示していないが、スレーブデバイス9からの出力データ(SDO)のフォーマットも同様に、アドレスフィールドと、これに続くデータフィールドとに分かれている。
スレーブデバイス9は、受信回路925によりデータが受信された場合、そのデータのアドレスフィールドの設定に基づいて、マスターデバイス8からのデータを受信しようとしているのか、または、マスターデバイス8へデータを送信しようとしているのかを判定する。
具体的には、スレーブデバイス9側では、受信回路925は、データを受信すると、そのアドレスフィールドの内容をタイミング制御回路926に送る。タイミング制御回路926は、アドレスフィールドの設定に基づき、マスターデバイス8へデータを送信しようとしていると判定した場合、送信FIFO222から読み出したデータをデータフィールドに含めて送信回路223を介して送信する。一方、マスターデバイス8へデータを送信しようとしていると判定した場合、図24に示すように、受信回路225により受信されたデータフィールド内のデータを受信FIFO224に蓄積する。なお、図24において、CS、CLK、SDIはそれぞれマスターデバイス8からスレーブデバイス9に入力されるチップセレクト、クロック、入力データを示し、受信FIFOはスレーブデバイス9内の受信FIFO924に蓄積されるデータを示す。
このように装置間でプログラム等のデータを転送する技術としては、特許文献1〜3に開示された技術等が挙げられる。
特開平07−312627号公報 特開2001−134543号公報 特開2003−029809号公報
しかしながら、従来の情報処理装置においては、プログラムのサイズが大きくなった場合に、下位の集積装置側でUART(Universal Asynchronous Receiver Transmitter)などの一般的なインターフェースを用いてプログラムをダウンロードしようとすると、非常に時間がかかってしまう。また、高速にプログラムをダウンロードしようとすると、下位の集積装置側で専用の高速インターフェースを持つ必要がある。
また、従来の情報処理装置においては、図24に示すように、1チップの転送において、1バイト分の意味の有るデータ(プログラム)しか転送できないため、スループットが低下してしまう。そのため、プログラムのダウンロードに要する時間がさらに長くなってしまう。
そこで、本発明の目的は、高速インターフェースを用いることなく、プログラムのダウンロードに要する時間を削減することができる集積回路、および情報処理装置を提供することにある。
上記目的を達成するために本発明の集積回路は、他の集積回路からプログラムをシリアル通信によりダウンロードして実行するCPUを有する集積回路において、前記他の集積回路から前記プログラムを含む受信データをダウンロードして受信した時に、特定モードに設定されている場合、当該受信データのフォーマットが変更されていると判断して、当該受信データから前記プログラムを取り出すインターフェース回路を有することを特徴とする。
具体的には、前記インターフェース回路は、前記他の集積回路から前記プログラムを含む受信データを受信した時に、特定モードに設定されている場合、前記受信データのデータフィールドだけでなく当該データフィールド以外のフィールドにも前記プログラムが含まれていると判断して、当該受信データから前記プログラムを取り出すことを特徴とする。
なお、前記インターフェース回路は、前記他の集積回路から送信される信号によって特定モードに設定されることとしても良く、前記CPUは、前記他の集積回路から送信されるコマンドによって前記インターフェース回路を特定モードに設定することとしても良い。
さらに、前記インターフェース回路は、通常モード時には、前記他の集積回路に送信される送信データを蓄積する送信バッファと、通常モード時には、前記他の集積回路から受信した受信データに含まれる前記プログラムを蓄積する受信バッファと、通常モード時には、前記他の集積回路から受信した受信データに含まれる前記プログラムを受信バッファにのみ蓄積するよう制御し、特定モード時には、前記他の集積回路から受信した受信データに含まれる前記プログラムを前記送信バッファおよび前記受信バッファの双方に蓄積するよう制御するタイミング制御回路とを有することを特徴とする。
上記目的を達成するために本発明の情報処理装置は、第1の集積回路と、当該第1の集積回路からプログラムをシリアル通信によりダウンロードして実行するCPUを具備する第2の集積回路とを有してなる情報処理装置において、前記第2の集積回路は、前記第1の集積回路から前記プログラムを含む受信データをダウンロードして受信した時に、特定モードに設定されている場合、当該受信データのフォーマットが変更されていると判断して、当該受信データから前記プログラムを取り出すインターフェース回路を有することを特徴とする。
以上説明したように本発明の集積回路においては、他の集積回路からプログラムをシリアル通信によりダウンロードして実行するCPUと、他の集積回路からプログラムを含む受信データをダウンロードした時に、特定モードに設定されている場合、受信データのフォーマットが変更されていると判断して、受信データからプログラムを取り出すインターフェース回路とを設けた構成としている。
具体的には、インターフェース回路は、特定モードに設定されている場合、受信データのデータフィールドだけでなくデータフィールド以外のフィールドにもプログラムが含まれていると判断し、受信データからプログラムを取り出す。
したがって、他の集積回路側では、データフィールド以外のフィールドであって、通常はアドレスデータまたは制御データを格納するために使用されるフィールドにもプログラムを格納することが可能となる。そのため、大量のプログラムを一方的に転送する際に冗長度が無くなり、スループットが向上し、高速に転送することができる。
また、本発明の集積回路においては、上記のようなインターフェース回路を用いているため、一般的な同期式シリアルの通信方式を容易に拡張でき、ダウンロード専用の高速インターフェースを持つ必要がない。
さらに、本発明の集積回路においては、インターフェース回路において、送信バッファおよび受信バッファと、特定モード時には、受信データに含まれる前記プログラムを送信バッファおよび受信バッファの双方に蓄積するよう制御するタイミング制御回路とを設けた構成としている。
したがって、特定モード時には、送信バッファを受信バッファの拡張用バッファとして用いていることができるため、予め容量の大きな受信バッファを設けた構成と比較して、回路規模の削減を図ることができる。
以下に、本発明を実施するための形態について図面を参照して説明する。
(第1の実施形態)
図1を参照すると、本発明の情報処理装置を携帯電話に適用した例が示されている。この情報処理装置は、マスターデバイス1と、プロトコルの処理を実行するスレーブデバイス2と、その他周辺機能の処理を実行するスレーブデバイス3とを有する。
さらに、図1に示した情報処理装置は、GSM(Global System for Mobile Communications)方式のRF部4と、W-CDMA(Wide-Band CDMA)方式のRF部5と、アンテナ6とを有し、アンテナ6を介して、GSMまたはW-CDMAのどちらか一方の通信方式で基地局(不図示)との間で通信を行う。
マスターデバイス1は、CPU11と、マスターとなる同期式シリアルインターフェース(SSI)12とを有するLSIである。
スレーブデバイス2は、マスターデバイス1から同期式シリアル通信によりプログラムをダウンロードして実行可能なCPU21を有し、複数の通信方式に対応したプロトコルLSIである。CPU21は、バス制御回路27を介してROM24およびRAM25に接続される。ROM24には、ダウンロードを実行するためのプログラムが格納される。RAM25は、マスターデバイス1からダウンロードされ、CPU21で実行されるプログラムおよびワークデータを格納するために使用される。
また、スレーブデバイス2は、GSM方式のベースバンド処理部26と、W-CDMA方式のベースバンド処理部23とを有し、CPU21で実行されるプログラムに応じてGSMまたはW-CDMAのどちらか一方または両方の通信方式に対応することが可能である。
さらに、スレーブデバイス2は、通信路・制御信号線7を介してマスターデバイス1と通信およびマスターデバイス1からのプログラムのダウンロードを行うための同期式シリアルインターフェース(SSI)22を有する。
スレーブデバイス3は、通信路・制御信号線7を介してマスターデバイス1と接続される電源制御用LSIや音源LSIなどである。
ここで、スレーブデバイス2内の同期式シリアルインターフェース22の構成について図2を参照して説明する。
図2を参照すると、本実施形態に係る同期式シリアルインターフェース22は、バス制御回路27を介してCPU21と接続されるバスインターフェース回路221と、送信側に配置された送信FIFO222および送信回路223と、受信側に配置された受信FIFO224および受信回路225と、通信処理に関する制御を行うタイミング制御回路226とを有する。
本実施形態に係る同期式シリアルインターフェース22は、図21に示した従来例とは異なり、マスターデバイス1により制御されるバースト(BURST)信号の状態に応じて、マスターデバイス1からの受信データのフォーマットが変更されていると判断し、送信FIFO222を受信FIFO224の拡張用FIFOとして動作するように切り替える。
具体的には、タイミング制御回路226は、4線同期式シリアル通信によりマスターデバイス1からデータを受信した時に、バースト信号がアクティブに設定されている場合には、アドレスや制御用のフィールド(以下、アドレスフィールドと称する)内のデータを送信FIFO222に蓄積し、これに続くデータフィールド内のデータを受信FIFO224に蓄積する。
また、タイミング制御回路226は、送信FIFO222および受信FIFO224が全て埋まった時に、バスインターフェース回路221を介してCPU21に対して割り込み(INTERRUPT)信号を送信する。CPU21は、タイミング制御回路226からの割り込み(INTERRUPT)信号を受信すると、バスインターフェース回路221を介して送信FIFO222および受信FIFO224から受信データを読み込み、RAM25上のプログラムエリアに転送し、次の受信に備える。
このように、タイミング制御回路226は、バースト信号がアクティブに設定されている場合、アドレスフィールドもデータフィールドとして扱われていると判断して、アドレスフィールド内のデータをも意味のあるデータ(プログラム等)として取り出し、その後の処理を行っている。
したがって、マスターデバイス1は、従来例(図22参照)とは異なり、図3に示すように、1チップの転送において、アドレスフィールドをもデータフィールドとして扱ってデータを転送することができる。そのため、全てのビットが意味のあるデータ(プログラム等)となり、アドレスフィールドの冗長分が無くなる。なお、図3において、CS、CLK、SDIはそれぞれマスターデバイス1から出力されるチップセレクト、クロック、出力データを示す。
また、タイミング制御回路226は、4線同期式シリアル通信によるマスターデバイス1からのデータ受信時に、バースト信号が非アクティブに設定されている場合には、従来例と同様に、アドレスフィールドの設定に基づき、データフィールド内のデータを受信FIFO224に蓄積することのみを行う。
以下に、本実施形態の動作について説明する。ここでは、スレーブデバイス2が、4線同期式シリアル通信によりマスターデバイス1からプログラムをダウンロードする例について説明する。このとき、ダウンロードするプログラムは、スレーブデバイス2のリセット解除後または起動後に使用されるネットワークの種類に応じて、スレーブデバイス2で必要となるプロトコルスタック、信号処理プログラムなどである(後述する第2の実施形態、第3の実施形態でも同様)。
図4に、マスターデバイス1側の動作を説明するフローチャートを示し、図5および図6に、スレーブデバイス2側の動作を説明するフローチャートを示し、図7に、スレーブデバイス2側の動作を説明するタイミングチャートを示す。なお、図7において、CS、CLK、SDIはそれぞれマスターデバイス8から入力されるチップセレクト、クロック、入力データを示し、受信FIFO、送信FIFOはそれぞれ受信FIFO924に蓄積されるデータ、送信FIFO222に蓄積されるデータを示す。
図4を参照すると、マスターデバイス1側では、CPU11は、プログラムのダウンロード処理を開始する場合(ステップ401)、まず、バースト信号をアクティブに設定する(ステップ402)。
次に、CPU11は、プログラムの全データのうち、スレーブデバイス2内の送信FIFO222および受信FIFO222の容量分に相当する最初のデータを転送する(ステップ403)。このとき、CPU11は、アドレスフィールドをデータフィールドとして扱うこととして送信データのフォーマットを変更した上で、データを転送する。なお、本実施形態では、送信FIFO222および受信FIFO224の各々が16バイトのFIFOであるものとし、CPU11は、トータルで32バイト(16ワード)分のデータを転送する。
次に、CPU11は、プログラムの全データの転送が完了しているか判定し(ステップ404)、全データの転送が完了していなければ、再度、16ワード(32バイト)分のデータを転送する。
CPU11は、プログラムの全データの転送が完了していれば、バースト信号を非アクティブに設定し(ステップ405)、スレーブデバイス2の処理時間を考慮して一定時間待機した後、スレーブデバイス2をリセットし(ステップ406)、ダウンロード処理を終了する(ステップ407)。
図5を参照すると、スレーブデバイス2側では、CPU21は、リセットが解除された時または起動時に(ステップ501)、ROM24上の起動用プログラムに基づく起動処理を行い、RAM25上のプログラムの有無を判定する(ステップ502)。CPU21は、RAM25上にプログラムが存在すれば、RAM25上のプログラムを実行する(ステップ503)。
CPU21は、RAM25上にプログラムが存在しなければ、ROM24上のダウンロード実行用のダウンロードプログラムを起動し、ダウンロードデータの受信待ち状態に移行する(ステップ504)。
図6を参照すると、スレーブデバイス2側では、図5のステップ504の状態で、マスターデバイス1からダウンロードデータを受信した場合(ステップ601)、タイミング制御回路226は、バースト信号がアクティブであるかを判定する(ステップ602)。タイミング制御回路226は、バースト信号がアクティブでない場合、マスターデバイス1からのデータは通常のデータ(アドレスフィールド内にプログラムが含まれていないデータ)であると判定し、通常の通信処理の制御を行う(ステップ603)。具体的には、タイミング制御回路226は、マスターデバイス1からのデータフィールド内のデータを受信FIFO224に蓄積することのみを行い、アドレスフィールド内のデータを送信FIFO222に蓄積することは行わない。
一方、タイミング制御回路226は、バースト信号がアクティブである場合、図7に示すように、マスターデバイス1からのアドレスフィールド内のデータを送信FIFO222に蓄積するとともに、これに続くデータフィールド内のデータを受信FIFO224に蓄積する。そして、タイミング制御回路226は、送信FIFO222および受信FIFO224が全て埋まった時に、CPU21に対する割り込み(INTERRUPT)信号をアクティブに設定する。CPU21は、割り込み(INTERRUPT)信号がアクティブに設定されると、送信FIFO222および受信FIFO224内のデータを読み出してRAM25上のプログラムエリアに転送し(ステップ604)、プログラム有りフラグを設定する(ステップ605)。
その後、CPU21は、次のダウンロードデータの受信待ち状態に移行する(ステップ606)。
上述したように本実施形態においては、スレーブデバイス2において、バースト信号がアクティブに設定されている場合、アドレスフィールドもデータフィールドとして扱われていると判断して、アドレスフィールド内のデータをも意味のあるデータ(プログラム等)として取り出し、その後の処理を行っている。
したがって、マスターデバイス1は、アドレスフィールドおよびデータフィールドの双方に意味の有るデータ(プログラム)を含めてバースト的にスレーブデバイス2に転送することができるため、スループットが向上し、ダウンロード時間を短縮することができる(以下、この動作モードをバーストモードと示す)。
また、本実施形態においては、スレーブデバイス2において、バーストモード時には、送信FIFO222を受信FIFO224の拡張用FIFOとして用いているため、予め容量の大きな受信FIFO224を設けた構成と比較して、回路規模の削減を図ることができる。
なお、本実施形態においては、アドレスフィールドをデータフィールドとして扱う例について説明したが、アドレスフィールドをそのままにして、データフィールド長を拡張(例えば、8ビットから16ビットへ拡張)する場合も本発明に含まれる。
(第2の実施形態)
本実施形態の情報処理装置は、マスターデバイス1からスレーブデバイス2へのプログラムのダウンロード時に、マスターデバイス1とスレーブデバイス2との間でハンドシェイク処理を行うものである。
なお、本実施形態の情報処理装置は、第1の実施形態と比較して、スレーブデバイス2内の同期式シリアルインターフェース22の内部構成が異なり、それ以外の構成は第1の実施形態と同様である。
図8を参照すると、本実施形態に係る同期式シリアルインターフェース22は、図2に示した第1の実施形態とは異なり、タイミング制御回路226からマスターデバイス1に対する割り込み(INTR)信号が追加されている。
割り込み(INTR)信号は、CPU7によりアクティブまたは非アクティブに設定されても良く、また、ハードウェアにより送信FIFO222および受信FIFO224が空である場合はアクティブ、空ではない場合は非アクティブと自動設定されても良い。ここでは、CPU7により設定される例を示す。
以下に、本実施形態の動作について説明する。ここでは、スレーブデバイス2が、4線同期式シリアル通信によりマスターデバイス1からプログラムをダウンロードする例について説明する。
図9および図10に、マスターデバイス1側の動作を説明するフローチャートを示し、図11および図12に、スレーブデバイス2側の動作を説明するフローチャートを示す。
図9を参照すると、マスターデバイス1側では、CPU11は、プログラムのダウンロード処理を開始する場合(ステップ901)、まず、バースト信号をアクティブに設定する(ステップ902)。
次に、CPU11は、アドレスフィールドをデータフィールドとして扱うこととして送信データのフォーマットを変更し、プログラムの最初の16ワード(32バイト)分のデータを転送し(ステップ903)、スレーブデバイス2からのダウンロード要求の受信待ち状態に移行する(ステップ904)。
図11を参照すると、スレーブデバイス2側では、リセットが解除された時または起動時に(ステップ1101)、CPU21は、ROM24上の起動用プログラムに基づく起動処理を行い、RAM25上のプログラムの有無を判定する(ステップ1102)。CPU21は、RAM25上にプログラムが存在すれば、RAM25上のプログラムを実行する(ステップ1103)。
CPU21は、RAM25上にプログラムが存在しなければ、マスターデバイス1にダウンロード要求を行うために、マスターデバイス1に対する割り込み(INTR)信号をアクティブに設定し(ステップ1104)、ダウンロードデータの受信待ち状態に移行する(ステップ1105)。
図10を参照すると、マスターデバイス1側では、図9のステップ904の状態で、割り込み(INTR)信号がアクティブに設定されてダウンロード要求を受信すると(ステップ1001)、CPU11は、プログラムの全データの転送が完了したかを判定する(ステップ1002)。
CPU11は、プログラムの全データの転送が完了していれば、バースト信号を非アクティブに設定し(ステップ1003)、スレーブデバイス2の処理時間を考慮して一定時間待機した後、スレーブデバイス2をリセットし(ステップ1004)、ダウンロード処理を終了する(ステップ1005)。
一方、CPU11は、プログラムの全データの転送が完了していなければ、再度、16ワード(32バイト)分のデータを転送し(ステップ1006)、ダウンロード要求の受信待ち状態に移行する(ステップ1007)。
図12を参照すると、スレーブデバイス2側では、図11のステップ1105の状態で、マスターデバイス1からのダウンロードデータを受信した場合(ステップ1201)、CPU21は、マスターデバイス1に対する割り込み(INTR)信号を非アクティブに設定する(ステップ1202)。
次に、タイミング制御回路226は、バースト信号がアクティブであるかを判定し(ステップ1203)、バースト信号がアクティブでない場合、通常の通信処理の制御を行う(ステップ1204)。
一方、タイミング制御回路226は、バースト信号がアクティブである場合、マスターデバイス1からのアドレスフィールド内のデータを送信FIFO222に蓄積するとともに、これに続くデータフィールド内のデータを受信FIFO224に蓄積する。そして、CPU21は、タイミング制御回路226により割り込み(INTERRUPT)信号がアクティブに設定されると、送信FIFO222および受信FIFO224内のデータを読み出してRAM25上のプログラムエリアに転送し(ステップ1205)、プログラム有りフラグを設定し(ステップ1206)、マスターデバイス1に対する割り込み(INTR)信号をアクティブに設定する(ステップ1207)。
その後、CPU21は、次のダウンロードデータの受信待ち状態に移行する(ステップ1208)。
上述したように本実施形態においては、マスターデバイス1とスレーブデバイス2との間で、確実に16ワード(32バイト)単位でプログラムの受信確認を行うことができる。
(第3の実施形態)
本実施形態の情報処理装置は、マスターデバイス1からスレーブデバイス2へのプログラムのダウンロード時に、プログラムのサイズ、チェックサムを含めたダウンロードの正当性を判断する処理を行うことにより、ハードウェア的なバースト信号を不要とするものである。
なお、本実施形態の情報処理装置は、第1の実施形態と比較して、スレーブデバイス2内の同期式シリアルインターフェース22の内部構成が異なり、それ以外の構成は第1の実施形態と同様である。
図13を参照すると、本実施形態に係る同期式シリアルインターフェース22は、図8に示した第2の実施形態とは異なり、スレーブデバイス2内のCPU22が、マスターデバイス1内のCPU11からのコマンドに基づきバスインターフェース回路221を経由してタイミング制御回路226に対してバースト信号を設定している。また、マスターデバイス1に対する割り込み(INTR)信号は、CPU7によりアクティブに設定され、マスターデバイス1からデータを受信したときにハードウェア的に非アクティブにクリアされる構成をとる。
以下に、本実施形態の動作について説明する。ここでは、スレーブデバイス2が、4線同期式シリアル通信によりマスターデバイス1からプログラムをダウンロードする例について説明する。
図14および図15に、マスターデバイス1側の動作を説明するフローチャートを示し、図16、図17および図18に、スレーブデバイス2側の動作を説明するフローチャートを示し、図19に、スレーブデバイス2側の動作を説明するタイミングチャートを示す。なお、図19において、CS、SDOはそれぞれマスターデバイス1から出力されるチップセレクト、出力データを示し、INTRはスレーブデバイス2から出力される割り込み(INTR)信号を示す。また、図19において、出力データSDOにおけるA、Dはそれぞれアドレスフィールド、データアドレスフィールドとして扱われるフィールドを示す。
図16を参照すると、スレーブデバイス2側では、リセットが解除された時または起動時に(ステップ1601)、CPU21は、ROM24上の起動用プログラムに基づく起動処理を行い、RAM25上のプログラムの有無を判定する(ステップ1602)。
CPU21は、RAM25上にプログラムが存在すれば、プログラム有りのフラグをセットしてマスターデバイス1へ起動通知を発行し(ステップ1603)、RAM25上のプログラムを実行する(ステップ1604)。
一方、CPU21は、RAM25上にプログラムが存在しなければ、プログラム無しのフラグをセットしてマスターデバイス1へ起動通知を発行し(ステップ1605)、ダウンロードデータの受信待ち状態に移行する(ステップ1606)。
図14を参照すると、マスターデバイス1側では、CPU11は、スレーブデバイス2にて発行された起動通知の内容に基づいてダウンロードが必要か否かを判定し、必要であればダウンロード処理を開始する(ステップ1401)。
CPU11は、プログラムのダウンロードに先立ち、ダウンロードされるプログラムの情報をスレーブデバイス2に送信する(ステップ1402、図19の時刻t1〜t2間)。本実施形態では、CPU11は、プログラム全体のチェックサムと、32バイトを1ブロックとした総転送ブロック数とをプログラム情報として設定する。さらに、CPU11は、これ以外にも転送先のアドレスなどをプログラム情報として設定することも可能である。
CPU11は、プログラム情報を送信した後に、スレーブデバイス2内の同期式シリアルインターフェース22をバーストモードに設定するためのバースト設定コマンドをスレーブデバイス2に送信する(ステップ1403、図19の時刻t3)。
その後、CPU11は、スレーブデバイス2からのダウンロード要求の受信待ち状態に移行する(ステップ1404)。
図18を参照すると、スレーブデバイス2側では、CPU21は、マスターデバイス1からバースト設定コマンドを受信した場合(ステップ1801)、バス制御回路27を介して同期式シリアルインターフェース22をバーストモードに設定する(ステップ1802)。
その後、CPU21は、マスターデバイス1に対する割り込み(INTR)信号をアクティブに設定し(ステップ1803、図19の時刻t4、時刻t8)、バースト設定コマンドの受信処理を終了する(ステップ1804)。
図15を参照すると、マスターデバイス1側では、図14のステップ1404の状態で、割り込み(INTR)信号がアクティブに設定されてダウンロード要求を受信したとする(ステップ1501、図19の時刻t4)。
すると、CPU11は、アドレスフィールドをデータフィールドとして扱うこととして送信データのフォーマットを変更し、プログラムを1ブロック分転送し(ステップ1502、図19の時刻t5〜t7間、t9〜t11間)、全ブロックのプログラムの転送が完了したかを判定する(ステップ1503)。全ブロックの転送が完了していなければ、ダウンロード要求の受信待ち状態に移行する(ステップ1504)。
一方、CPU11は、全ブロックの転送が完了してれば、スレーブデバイス2の処理時間を考慮して一定時間待機した後(ステップ1505)、スレーブデバイス2をリセットし、ダウンロード処理を終了する(ステップ1506)。
図17を参照すると、スレーブデバイス2側では、図16のステップ1606の状態で、マスターデバイス1からのダウンロードデータを受信した場合(ステップ1701)、タイミング制御回路226は、マスターデバイス1からのアドレスフィールド内のデータを送信FIFO222に蓄積するとともに、これに続くデータフィールド内のデータを受信FIFO224に蓄積する。CPU21は、タイミング制御回路226により割り込み(INTERRUPT)信号がアクティブに設定されると、受信データをRAM25上のプログラムエリアに転送する(ステップ1702)。
次に、CPU21は、予めプログラム情報として通知されていた全ブロック数の受信が完了したかを判定し(ステップ1703)、完了していない場合はマスターデバイス1に対する割り込み(INTR)信号をアクティブに設定し(ステップ1704、図19の時刻t8)、次のブロックのダウンロードデータの受信待ち状態に移行する(ステップ1705)。
一方、CPU21は、全ブロック数の受信が完了している場合は、チェックサムの計算を行い、計算が正しいかを判定する(ステップ1706)。チェックサムの計算が正しければ、プログラム有りフラグを設定し(ステップ1707)、ダウンロード処理を終了し、リセット待ち状態に移行する(ステップ1708)。このとき、マスターデバイス1に対する割り込み(INTR)信号をアクティブに設定していないため、マスターデバイス1側では、全ブロック数のダウンロードが行われたことを知ることができる(図19の時刻t12)。
また、CPU21は、チェックサムの計算が間違っている場合は、プログラム有りフラグを設定せずに、ダウンロード処理を終了する
上述したように本実施形態においては、プログラムのダウンロード時に、プログラムのサイズ、チェックサムを含む処理を行うため、ダウンロードの正当性の向上を図ることができる。
本発明の情報処理装置を示す図である。 本発明の第1の実施形態に係る同期式シリアルインターフェースを示す図である。 本発明の第1の実施形態において、マスターデバイス側の動作の一例を説明するタイミングチャートである。 本発明の第1の実施形態において、マスターデバイス側の動作の一例を説明するフローチャートである。 本発明の第1の実施形態において、スレーブデバイス側の動作の一例を説明するフローチャートである。 本発明の第1の実施形態において、スレーブデバイス側の動作の他の例を説明するフローチャートである。 本発明の第1の実施形態において、スレーブデバイス側の動作の一例を説明するタイミングチャートである。 本発明の第2の実施形態に係る同期式シリアルインターフェースを示す図である。 本発明の第2の実施形態において、マスターデバイス側の動作の一例を説明するフローチャートである。 本発明の第2の実施形態において、マスターデバイス側の動作の他の例を説明するフローチャートである。 本発明の第2の実施形態において、スレーブデバイス側の動作の一例を説明するフローチャートである。 本発明の第2の実施形態において、スレーブデバイス側の動作の他の例を説明するフローチャートである。 本発明の第3の実施形態に係る同期式シリアルインターフェースを示す図である。 本発明の第3の実施形態において、マスターデバイス側の動作の一例を説明するフローチャートである。 本発明の第3の実施形態において、マスターデバイス側の動作の他の例を説明するフローチャートである。 本発明の第3の実施形態において、スレーブデバイス側の動作の一例を説明するフローチャートである。 本発明の第3の実施形態において、スレーブデバイス側の動作の他の例を説明するフローチャートである。 本発明の第3の実施形態において、スレーブデバイス側の動作のさらに他の例を説明するフローチャートである。 本発明の第3の実施形態において、スレーブデバイス側の動作を簡略化して説明するタイミングチャートである。 本従来例の情報処理装置を示す図である。 本従来例に係る同期式シリアルインターフェースを示す図である。 本従来例において、マスターデバイス側の動作の一例を説明するタイミングチャートである。 本従来例において、マスターデバイス側の動作の他の例を説明するタイミングチャートである。 本従来例において、スレーブデバイス側の動作の一例を説明するタイミングチャートである。
符号の説明
1 マスターデバイス
2,3 スレーブデバイス
4 RF部(GSM方式)
5 RF部(W-CDMA方式)
6 アンテナ
7 通信路・制御信号線
11 CPU
12 同期式シリアルインターフェース(SSI)
21 CPU
22 同期式シリアルインターフェース(SSI)
23 ベースバンド処理部(GSM方式)
24 ROM
25 RAM
26 ベースバンド処理部(W-CDMA方式)
27 バス制御回路
221 バスインターフェース回路
222 送信FIFO
223 送信回路
224 受信FIFO
225 受信回路
226 タイミング制御回路

Claims (4)

  1. 他の集積回路からプログラムをシリアル通信によりダウンロードして実行するCPUと、
    データフィールドのみにプログラムを含める通常モードまたはデータフィールド以外のアドレスフィールドの冗長分にもプログラムを含める特定モードのいずれかに設定されるインターフェース回路と、を有し、
    前記インターフェース回路は、
    前記他の集積回路から送信される信号によってまたは前記他の集積回路から送信されるコマンドによって特定モードに設定され、
    前記他の集積回路から前記プログラムを含む受信データをダウンロードして受信した時に、特定モードに設定されている場合、当該受信データのフォーマットが変更されていると判断して、当該受信データから前記プログラムを取り出す、集積回路であって、
    前記インターフェース回路は、
    通常モード時には、前記他の集積回路に送信される送信データを蓄積する送信バッファと、
    通常モード時には、前記他の集積回路から受信した受信データに含まれる前記プログラムを蓄積する受信バッファと、
    通常モード時には、前記他の集積回路から受信した受信データに含まれる前記プログラムを受信バッファにのみ蓄積するよう制御し、特定モード時には、前記他の集積回路から受信した受信データに含まれる前記プログラムを前記送信バッファおよび前記受信バッファの双方に蓄積するよう制御するタイミング制御回路と、を有することを特徴とする集積回路。
  2. 請求項1に記載の集積回路において、
    前記インターフェース回路は、前記他の集積回路から前記プログラムを含む受信データを受信した時に、特定モードに設定されている場合、前記受信データのデータフィールドだけでなくアドレスフィールドにも前記プログラムが含まれていると判断して、当該受信データから前記プログラムを取り出すことを特徴とする集積回路。
  3. 第1の集積回路と、
    当該第1の集積回路からプログラムをシリアル通信によりダウンロードして実行するCPUと、データフィールドのみにプログラムを含める通常モードまたはデータフィールド以外のアドレスフィールドの冗長分にもプログラムを含める特定モードのいずれかに設定されるインターフェース回路と、を具備する第2の集積回路と、を有し、
    前記インターフェース回路は、
    前記第1の集積回路から送信される信号によってまたは前記第1の集積回路から送信されるコマンドによって特定モードに設定され、
    前記第1の集積回路から前記プログラムを含む受信データをダウンロードして受信した時に、特定モードに設定されている場合、当該受信データのフォーマットが変更されていると判断して、当該受信データから前記プログラムを取り出す、情報処理装置であって、
    前記インターフェース回路は、
    通常モード時には、前記第1の集積回路に送信される送信データを蓄積する送信バッファと、
    通常モード時には、前記第1の集積回路から受信した受信データに含まれる前記プログラムを蓄積する受信バッファと、
    通常モード時には、前記第1の集積回路から受信した受信データに含まれる前記プログラムを、受信バッファにのみ蓄積するよう制御し、特定モード時には、前記第1の集積回路から受信した受信データに含まれる前記プログラムを、前記送信バッファおよび前記受信バッファの双方に蓄積するよう制御するタイミング制御回路と、を有することを特徴とする情報処理装置。
  4. 請求項3に記載の情報処理装置において、
    前記インターフェース回路は、前記第1の集積回路から前記プログラムを含む受信データを受信した時に、特定モードに設定されている場合、前記受信データのデータフィールドだけでなくアドレスフィールドにも前記プログラムが含まれていると判断して、当該受信データから前記プログラムを取り出すことを特徴とする情報処理装置。
JP2003285732A 2003-08-04 2003-08-04 集積回路、および情報処理装置 Expired - Fee Related JP4385247B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2003285732A JP4385247B2 (ja) 2003-08-04 2003-08-04 集積回路、および情報処理装置
US10/909,364 US7640371B2 (en) 2003-08-04 2004-08-03 Integrated circuit and information processing apparatus
EP04018464A EP1505500A3 (en) 2003-08-04 2004-08-04 Integrated circuit and information processing apparatus
CN2004100558279A CN1581127B (zh) 2003-08-04 2004-08-04 集成电路和信息处理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003285732A JP4385247B2 (ja) 2003-08-04 2003-08-04 集積回路、および情報処理装置

Publications (2)

Publication Number Publication Date
JP2005056106A JP2005056106A (ja) 2005-03-03
JP4385247B2 true JP4385247B2 (ja) 2009-12-16

Family

ID=33549988

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003285732A Expired - Fee Related JP4385247B2 (ja) 2003-08-04 2003-08-04 集積回路、および情報処理装置

Country Status (4)

Country Link
US (1) US7640371B2 (ja)
EP (1) EP1505500A3 (ja)
JP (1) JP4385247B2 (ja)
CN (1) CN1581127B (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7716536B2 (en) * 2006-06-29 2010-05-11 Intel Corporation Techniques for entering a low-power link state
JP2010091686A (ja) * 2008-10-06 2010-04-22 Rohm Co Ltd タイミングコントロール回路およびそれを用いた表示装置および電子機器
WO2012025728A1 (en) 2010-08-27 2012-03-01 Fxi Technologies As Electronics Device
CN103812962B (zh) * 2014-02-12 2017-03-22 南京欧帝科技股份有限公司 基于串行接口的设备通信地址自动分配系统及工作方法
JP5945044B2 (ja) * 2015-06-26 2016-07-05 日立オートモティブシステムズ株式会社 自動車用電子制御装置、自動車用電子制御装置の書込みシステム、及び車両制御の制御プログラムの書込み方法
CN107368440B (zh) * 2017-07-06 2021-06-18 沈阳理工大学 一种同位控制猝发总线的控制方法
JP6445646B2 (ja) * 2017-09-21 2018-12-26 日立オートモティブシステムズ株式会社 自動車用電子制御装置
JP2020040613A (ja) * 2018-09-13 2020-03-19 株式会社デンソー 車載器のソフトウェア更新システム、車載器及び情報処理装置
JP6692400B2 (ja) * 2018-11-29 2020-05-13 日立オートモティブシステムズ株式会社 自動車用電子制御装置
CN111600785A (zh) * 2020-04-30 2020-08-28 青岛鼎信通讯股份有限公司 一种m-bus智能水表低功耗通信方法

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2717647A (en) * 1952-06-23 1955-09-13 Baker Oil Tools Inc Apparatus for automatically filling well casing
JPS61117643A (ja) 1984-11-13 1986-06-05 Nec Corp 回線制御装置
JP3310990B2 (ja) * 1991-04-15 2002-08-05 キヤノン株式会社 電子機器
US5696920A (en) * 1992-09-07 1997-12-09 Sharp Kabushiki Kaisha Stand-alone data driven type information processor
US5434976A (en) * 1992-09-28 1995-07-18 Standard Microsystems Corporation Communications controller utilizing an external buffer memory with plural channels between a host and network interface operating independently for transferring packets between protocol layers
EP0598502B1 (en) * 1992-11-18 1998-04-29 Canon Kabushiki Kaisha Method and apparatus for providing a bi-directional interface between a local area network and a peripheral
JPH07312627A (ja) 1994-05-19 1995-11-28 Nippondenso Co Ltd 2cpu間のシリアル通信によるデータ転送方法
US5659801A (en) * 1994-12-07 1997-08-19 Emc Corporation Method and apparatus for replacing resident peripheral device control microcode by download via an application program
US5742502A (en) * 1995-04-25 1998-04-21 Motorola, Inc. Method and apparatus for generating synchronous data transmissions in a device having a universal asynchronous receiver/transmitter
US5657289A (en) 1995-08-30 1997-08-12 Micron Technology, Inc. Expandable data width SAM for a multiport RAM
JPH09319727A (ja) * 1996-05-31 1997-12-12 Hitachi Ltd データプロセッサ及びデータ処理システム
US5983291A (en) * 1996-09-24 1999-11-09 Cirrus Logic, Inc. System for storing each of streams of data bits corresponding from a separator thereby allowing an input port accommodating plurality of data frame sub-functions concurrently
FR2772535B1 (fr) * 1997-12-11 2000-12-15 Micropross Interface de communication avec une carte a puce synchrone et dispositif equipe d'une telle interface
US6202116B1 (en) * 1998-06-17 2001-03-13 Advanced Micro Devices, Inc. Write only bus with whole and half bus mode operation
US6115760A (en) * 1998-08-24 2000-09-05 3Com Corporation Intelligent scaleable FIFO buffer circuit for interfacing between digital domains
JP2000207190A (ja) 1999-01-14 2000-07-28 Nec Shizuoka Ltd ファ―ムウェアプログラム書き換え方式及びその方法
EP1266294B1 (en) 2000-03-21 2006-06-21 Siemens Energy & Automation, Inc. A communication interface system, method and apparatus
US6529970B1 (en) * 2000-04-13 2003-03-04 Fujitsu Microelectronics America, Inc. Method and microprocessor with fast program downloading features
US6898646B1 (en) * 2000-05-03 2005-05-24 Hewlett-Packard Development Company, L.P. Highly concurrent DMA controller with programmable DMA channels
JP3415567B2 (ja) * 2000-06-21 2003-06-09 エヌイーシーマイクロシステム株式会社 Usb転送制御方法およびusbコントローラ
JP2001134543A (ja) 2000-08-02 2001-05-18 Canon Inc 電子機器
JP2002202987A (ja) * 2000-11-02 2002-07-19 At System:Kk データ管理方法
JP2002358177A (ja) 2001-06-01 2002-12-13 Ricoh Co Ltd 画像形成装置、該装置のシリアル通信方法および該方法をコンピュータに実行させるプログラム並びに該プログラムを記録した記録媒体
JP3669302B2 (ja) 2001-07-19 2005-07-06 オムロン株式会社 プログラマブルコントローラ
CN1169063C (zh) * 2002-06-21 2004-09-29 华中科技大学 现场总线与串行接口设备间的协议转换方法

Also Published As

Publication number Publication date
EP1505500A3 (en) 2008-12-31
US7640371B2 (en) 2009-12-29
CN1581127A (zh) 2005-02-16
US20050091421A1 (en) 2005-04-28
CN1581127B (zh) 2010-10-06
JP2005056106A (ja) 2005-03-03
EP1505500A2 (en) 2005-02-09

Similar Documents

Publication Publication Date Title
EP1687997B1 (en) A method and apparatus to provide data streaming over a network connection in a wireless mac processor
KR100642045B1 (ko) 호스트 프로세서로부터 멀티미디어 프로세서로 멀티미디어프로그램을 다운로드하는 시스템 및 방법
JP4684909B2 (ja) ソフトウエア無線装置
JP4385247B2 (ja) 集積回路、および情報処理装置
JP2011029780A (ja) 無線通信装置、無線通信方法および無線通信プログラム
JP4452690B2 (ja) 電子装置、その制御方法、ホスト装置及びその制御方法
EP1124362A2 (en) Apparatus for processing TCP/IP by hardware, and operating method therefor
US6728795B1 (en) DMA channel for high-speed asynchronous data transfer
EP1391827B1 (en) Transmission apparatus and tramsmission method
JP2003023469A (ja) 通信端末装置およびそのデータ送信方法
JPH03265334A (ja) マルチチャネル通信処理装置
JP5150668B2 (ja) 無線通信装置及び無線通信システム
KR100251747B1 (ko) 휴대용 무선 단말기의 비휘발성 메모리 데이터 다운로드 장치
CN101047721B (zh) 采用dma控制器进行数据过滤处理的方法
KR100966925B1 (ko) 패킷 신호 프로세싱 아키텍쳐
JP2007074641A (ja) 通信システム
KR100470993B1 (ko) 디에스피 프로그램 다운로드 장치 및 그 방법
US20060104227A1 (en) Data communication methods and systems
CN116049060B (zh) 数据转换桥电路和数据传输系统
JP4624252B2 (ja) データパケット転送装置、データパケット転送方法、及び、データパケット転送プログラム
JP2002517820A (ja) ダイレクトメモリアクセスを用いるシリアルポートデータおよびステータスの圧縮および復元
KR101065588B1 (ko) 하드웨어 기반의 객체 교환(obex) 모듈, 그 모듈을 포함한 송수신 장치 및 그 프로토콜 모듈을 이용한 송수신 방법
JP2009037550A (ja) マスタースレーブカードシステムとその処理方法
CN114911499A (zh) 一种升级方法及电子设备
WO2009083027A1 (en) Method and system for managing data in a memory

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20050117

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20050117

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060201

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060713

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090624

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090731

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121009

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131009

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees