(57)【要約】【課題】  ＩＣカードに不正なデータが残っているかどうかを意識することなく、そのＩＣカードの書き込み／読み込みを可能とし、また、書き込みが中断したデータの書き込みを最後まで完了させる。【解決手段】  ＩＣカード１０は、データが書き込み／読み込みされる第１，第２データ保存領域１３，１４と、正常にデータが書き込まれたデータ保存領域を特定するための識別コードを格納する識別コード格納領域１５とを少なくとを有している。リーダライタは、ＩＣカード１０へのデータの書き込みを行う時には、識別コード格納領域１５内の識別コードをチェックして、正常にデータが書き込まれたデータ保存領域とは別のデータ保存領域へデータを書き込み、一方、ＩＣカード１０からのデータ読み込み時には、識別コードにて示されるデータ保存領域（常にデータが書き込まれたデータ保存領域）からデータを読み込む。【選択図】  図１
2009271829.tif 000002
【特許請求の範囲】
【請求項１】
データが書き込み／読み込みされる二以上のデータ保存領域と、正常にデータが書き込まれたＩＣカード及びデータ保存領域を特定するための識別コードを格納する識別コード格納領域とを、少なくとも有するＩＣカードとの間で、通信を行うカード通信部と、
上記ＩＣカードのデータ保存領域に正常にデータが書き込まれた時に、上記識別コード格納領域に格納する識別コードを生成する識別コード生成部と、
上記ＩＣカードのデータ保存領域に対するデータの書き込み／読み込みと上記識別コード格納領域に対する識別コードの書き込み／読み込みを行うと共に、上記ＩＣカードの識別コード格納領域に格納されている識別コードに応じて、上記データ保存領域に対するデータ書き込み／読み込みを制御する制御部と、
を有するＩＣカードリーダライタ装置。
【請求項２】
上記制御部は、上記ＩＣカードからデータを読み込む際には上記識別コードにより特定されるデータ保存領域からデータを読み込み、上記ＩＣカードにデータを書き込む際には上記識別コードにより特定されるデータ保存領域とは別のデータ保存領域へデータを書き込む請求項１記載のＩＣカードリーダライタ装置。
【請求項３】
上記ＩＣカードのデータ保存領域へのデータ書き込みが中断した時、上記制御部は、当該データ保存領域の書き込み中断位置情報と、当該書き込み中断時の未書き込みデータと、上記ＩＣカードの識別コード格納領域から読み込んだ識別コードとを内部に保存し、
上記書き込みが中断したデータの再書き込みを行う時、上記制御部は、当該再書き込みの際にＩＣカードの識別コード格納領域から読み込んだ識別コードと上記書き込み中断時に保存した識別コードとが一致するＩＣカードに対して、上記書き込み中断時の未書き込みデータを、上記中断位置情報にて示されるデータ保存領域内の位置から書き込む請求項２記載のＩＣカードリーダライタ装置。
【請求項４】
上記識別コード生成部は、ＩＣカード及びデータ保存領域を一意に特定するランダムな値の識別コードを生成する請求項１記載のＩＣカードリーダライタ装置。
【請求項５】
データが書き込み／読み込みされる二以上のデータ保存領域と、正常にデータが書き込まれたＩＣカード及びデータ保存領域を特定するための識別コードを格納する識別コード格納領域とを、少なくとも有するＩＣカードとの間で、通信を行うカード通信部と、
上記ＩＣカードのデータ保存領域に正常にデータが書き込まれた時に、上記識別コード格納領域に格納する識別コードを生成する識別コード生成部と、
上記ＩＣカードのデータ保存領域に対するデータの書き込み／読み込みと上記識別コード格納領域に対する識別コードの書き込み／読み込みを行うと共に、上記ＩＣカードの識別コード格納領域に格納されている識別コードに応じて、上記データ保存領域に対するデータ書き込み／読み込みを制御する制御部とを有するＩＣカードリーダライタ機能を、
備えた携帯通信端末。
【請求項６】
データが書き込み／読み込みされる二以上のデータ保存領域と、正常にデータが書き込まれたＩＣカード及びデータ保存領域を特定するための識別コードを格納する識別コード格納領域とを、少なくとも有するＩＣカードとの間で、カード通信部が通信を行うステップと、
上記ＩＣカードのデータ保存領域に正常にデータが書き込まれた時に、識別コード生成部が、上記識別コード格納領域に格納する識別コードを生成するステップと、
制御部が、上記ＩＣカードのデータ保存領域に対するデータの書き込み／読み込みと上記識別コード格納領域に対する識別コードの書き込み／読み込みを行うと共に、上記ＩＣカードの識別コード格納領域に格納されている識別コードに応じて、上記データ保存領域に対するデータ書き込み／読み込みを制御するステップと、
を有するＩＣカード管理方法。
【請求項７】
データが書き込み／読み込みされる二以上のデータ保存領域と、正常にデータが書き込まれたＩＣカード及びデータ保存領域を特定するための識別コードを格納する識別コード格納領域とを、少なくとも有するＩＣカードとの間で行われる通信を、制御するカード通信制御部と、
上記ＩＣカードのデータ保存領域に正常にデータが書き込まれた時に、上記識別コード格納領域に格納する識別コードを生成する識別コード生成部と、
上記ＩＣカードの識別コード格納領域に対する識別コードの書き込み／読み込みを制御すると共に、上記ＩＣカードの識別コード格納領域に格納されている識別コードに応じて、当該ＩＣカードのデータ保存領域に対するデータ書き込み／読み込みを制御する制御部として、
コンピュータを機能させるＩＣカード管理プログラム。
【請求項８】
データが書き込み／読み込みされる二以上のデータ保存領域と、
正常にデータが書き込まれたデータ保存領域を特定するための識別コードを格納する識別コード格納領域とを、
少なくとも有するＩＣカード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所謂非接触型或いは接触型のＩＣカードに対するデータの書き込み／読み込みを行うＩＣカードリーダライタ装置、少なくともＩＣカードリーダライタ機能を備えた携帯通信端末、ＩＣカード管理方法、ＩＣカード管理プログラム、及びＩＣカードに関する。
【背景技術】
【０００２】
近年は、電気的な接点を介してデータの書き込み／読み込みが行われる従来の接触型のＩＣカードのみならず、例えば電磁誘導を利用して非接触状態にてデータの書き込み／読み込みが行われる非接触型のＩＣカードなど、多種多様のＩＣカードが出回っている。以下の説明では、接触型や非接触型のＩＣカードを区別せずに単にＩＣカードと表記し、当該ＩＣカードに対してデータを書き込み／読み込みする装置をリーダライタと表記する。
【０００３】
ここで、通常、上述のようなＩＣカードへのデータの書き込み／読み込みは、ブロック（若しくはパケット）と呼ばれる単位で行われている。例えば１６バイトを１ブロックとしたＩＣカードでは、１６バイト単位でデータの書き込み／読み込みが行われる。
【０００４】
また、ＩＣカードにおけるデータ書き込み時の一回当たりのトランザクションでは、一度に複数のブロックの書き込みが可能となされている。但し、一回のトランザクションで書き込み可能なブロック数は、ＩＣカードにより異なっている。例えば、一度に４ブロック分のデータの書き込みが可能なＩＣカードの場合は、１６バイト×４ブロック分、すなわち６４バイトのデータを一回のトランザクションで書き込むことができる。なお、これは読み込みの場合も同様である。
【０００５】
一方、データの長さが一度に書き込みできるバイト数を超える場合、リーダライタは、当該データを分割し、それら分割されたデータをそれぞれ書き込むようにする。なお、読み込みの場合、リーダライタは、分割されて書き込まれているデータをそれぞれ読み込んで繋げることになる。
【０００６】
ここで、例えばＩＣカードへのデータ書き込み中に、何らかの異常により書き込みが正常に行えなくなったような場合、当該ＩＣカード内では、以前の正常な書き込み済みデータの上に、書き込み中のデータが途中まで上書きされた不正な状態になることがある。なお、書き込み異常の例としては、書き込み中にＩＣカードがリーダライタと通信できなくなった場合や、ＩＣカードへの書き込み中にリーダライタで装置異常が発生して通信が停止した場合、瞬断等により正常に書き込みが完了しなかった場合等が挙げられる。また、書き込み中にＩＣカードがリーダライタと通信できなくなる例としては、接触型ＩＣカードの接点部とリーダライタ側の接点部とが物理的に離れた場合や、非接触型ＩＣカードがリーダライタのＲＦ領域外に離れてしまった場合などが挙げられる。
【０００７】
これに対し、例えば特開平６−３５７７６号の公開特許公報（特許文献１）には、データ書き込み作業中に中断事故が発生した後、当該中断があったことをリーダライタが認識できるようにする技術が開示されている。
【０００８】
また、特開平４−４３４７７号の公開特許公報（特許文献２）には、データ書き込み作業中に中断事故が発生した場合に、その書き込み中断位置をリーダライタが認識できるようにした技術が開示されている。
【０００９】
また、特開２００１−２２６５３号の公開特許公報（特許文献３）には、データ書き込み実行中にその動作が中断した場合、その位置のアドレス情報とパリティ情報をバックアップエリアに書き込んでおくことで、データの修復を可能とした技術が開示されている。
【００１０】
さらに、特開２００３−８５５１１号の公開特許公報（特許文献４）には、書き換え可能なバッファ領域に書き込み用データを一時的に記憶させておくことで、書き込みデータを保護することを可能とする技術が開示されている。
【００１１】
【特許文献１】特開平６−３５７７６号公報（図１０）
【特許文献２】特開平４−４３４７７号公報（図１）
【特許文献３】特開平１１−１９６８２４号公報（図１）
【特許文献４】特開２０００−８５５１１号公報（図２）
【発明の開示】
【発明が解決しようとする課題】
【００１２】
上述した各公開特許公報にて開示されている技術を利用、若しくはそれら技術を組み合わせて利用すれば、何らかの理由で書き込みが中断した後、リーダライタは、書き込みの再開及びその書き込みを最後まで完了させることが可能となる。また、リーダライタは、再書き込みや読み込みを行う前に、書き込み前のデータを復旧することが可能となる。
【００１３】
しかしながら、それら技術をもってしても、例えば前述のように書き込み中断により途中までデータが上書きされた不正な状態のＩＣカードが在った場合、リーダライタは、当該ＩＣカードから上記不正な状態のデータを読み込んでしまう虞がある。したがって、このような不正な状態のデータの読み込みを無くすためには、リーダライタが、必ず書き込みを最後まで完了させるようにするか、又は、パリティ情報等を利用して書き込み前のデータを復旧する必要がある。すなわちこの場合のリーダライタは、ＩＣカードの書き込みや読み込みを行う前に、必ずデータを復旧するための手順等を行わなければならなくなる。この手順を実行するようにした場合、リーダライタにおける処理が複雑になり、同時にトランザクションが完了するまでに時間がかかるという問題がある。
【００１４】
本発明は、ＩＣカードに不正なデータが残っているかどうかを意識することなく、該ＩＣカードのデータを読み込むことを可能にするＩＣカードリーダライタ装置、携帯通信端末、ＩＣカード管理方法及びプログラム、ＩＣカードの提供を目的とする。
【００１５】
また、本発明は、書き込みが中断したデータの書き込みを最後まで完了させることを可能とするＩＣカードリーダライタ装置、携帯通信端末、ＩＣカード管理方法、プログラム、及びＩＣカードの提供を目的とする。
【課題を解決するための手段】
【００１６】
本発明では、データが書き込み／読み込みされる二以上のデータ保存領域と正常にデータが書き込まれたＩＣカード及びデータ保存領域を特定するための識別コードを格納する識別コード格納領域とを少なくとも有するＩＣカードの書き込み／読み出しを行う。ここで、ＩＣカードのデータ保存領域に正常にデータが書き込まれた時には、識別コード格納領域に格納する識別コードを生成する。また、ＩＣカードのデータ保存領域に対するデータの書き込み／読み込みを行う際には、ＩＣカードの識別コード格納領域に格納されている識別コードに応じて、データ保存領域に対するデータ書き込み／読み込みを制御する。これにより、本発明は上述した課題を解決する。
【００１７】
また、本発明では、ＩＣカードのデータ保存領域へのデータ書き込みが中断した時には、当該データ保存領域の書き込み中断位置情報と、当該書き込み中断時の未書き込みデータと、上記ＩＣカードの識別コード格納領域から読み込んだ識別コードとを内部に保存する。そして、書き込みが中断したデータの再書き込みを行う場合、ＩＣカードの識別コード格納領域から読み込んだ識別コードと書き込み中断時に保存した識別コードとが一致するＩＣカードに対して、書き込み中断時の未書き込みデータを、中断位置情報にて示されるデータ保存領域内の位置から書き込む。
【００１８】
すなわち本発明によれば、ＩＣカードには二以上のデータ保存領域と、正常にデータが書き込まれたデータ保存領域を特定する識別コードが格納される識別コード格納領域とが設けられている。そして、ＩＣカードリーダライタ装置は、識別コード格納領域の識別コードをチェックすることで、何れのデータ保存領域からデータを読み込むべきか、また、何れのデータ保存領域へデータを書き込むかを判断する。
【００１９】
また本発明によれば、書き込みが中断した時、ＩＣカードから読み込んだ識別コードと書き込み中断位置と未書き込みデータとを保存しておくことで、その後再書き込みを行う際に、中断位置からの未書き込みデータの書き込みを可能にしている。
【発明の効果】
【００２０】
本発明においては、ＩＣカード内の識別コードにより、二以上のデータ保存領域の中で正常なデータ書き込みが行われたデータ保存領域を特定可能であり、それにより、何れのデータ保存領域に対して書き込み／読み込みを行うかを判断可能となされている。このため、本発明によれば、ＩＣカードに不正なデータが残っているかどうかを意識することなく、当該ＩＣカードのデータを読み込むことができる。
【００２１】
また、本発明においては、書き込み中断時、ＩＣカードから読み込んだ識別コードと中断位置と未書き込みデータとを保存し、データの再書き込み時には、未書き込みデータを中断位置から書き込むことにより、中断した書き込みを最後まで完了させることができる。
【発明を実施するための最良の形態】
【００２２】
以下、図面を参照しながら、本発明の一実施形態について説明する。
【００２３】
なお、以下の実施形態では、本発明の適用例として、接触型や非接触型のＩＣカードに対してデータを書き込み／読み込み可能なＩＣカードリーダライタ機能を備えた携帯電話端末を挙げている。以下の説明では、ＩＣカードリーダライタ機能が起動した状態の本実施形態の携帯電話端末を単にリーダライタと呼ぶことにする。勿論、ここで説明する内容はあくまで一例であり、本発明はこの例に限定されないことは言うまでもない。
【００２４】
〔ＩＣカードの概略的内部構成〕
図１には、本実施形態のリーダライタによりデータが書き込み／読み込みされるＩＣカード１０の概略的な内部構成を示す。
【００２５】
図１に示すように、本実施形態のＩＣカード１０は、その内部に、リーダライタとの間でデータ通信を行うための図示しない信号処理及び制御回路と、データ記録用のメモリとが設けられている。また、本実施形態の場合、リーダライタは、当該ＩＣカード１０内のメモリの記憶領域１２を、複数の領域に分けて使用するようになされている。
【００２６】
図１の例は、リーダライタが、ＩＣカード１０の記憶領域１２を、第１データ保存領域１３及び第２データ保存領域１４と識別コード格納領域１５に分けて用いる場合を図示している。なお、本実施形態では、記憶領域１２の領域分けの管理をリーダライタが行う例を挙げているが、ＩＣカード１０の信号処理及び制御回路が、領域分けとその管理を行っても良い。
【００２７】
上記第１データ保存領域１３と第２データ保存領域１４は、データが書き込み／読み込みされる記憶領域である。そして、リーダライタは、データ書き込みを行う場合、これら第１データ保存領域１３又は第２データ保存領域１４の何れかに書き込むようにする。但し、詳細は後述するが、本実施形態の場合、リーダライタは、データの書き込みを行う場合、前回（つまり最後に）正しく書き込まれたデータ保存領域ではない方のデータ保存領域から書き込みを開始する。すなわち例えば、最後にデータが正しく書き込まれたのが第１データ保存領域１３であった場合、リーダライタは、第２データ保存領域１４から書き込みを開始する。逆に、最後にデータが正しく書き込まれたのが第２データ保存領域１４であった場合、リーダライタは、第１データ保存領域１３から書き込みを開始する。
【００２８】
このようなことを実現するために、リーダライタは、前回正しく書き込まれた領域が上記第１データ保存領域１３と第２データ保存領域の何れの領域であるかを判断するための情報として、識別コードを用いる。言い換えると、識別コードは、最後の（前回の）データ書き込みの際に、そのデータ書き込みが途中で中断したかどうかを、リーダライタが判断するために使用されるコードとなされている。このため、識別コードは、全てのＩＣカード及び全てのデータ保存領域においてそれぞれ一意となるコードとなされる。なお本実施形態において、一意の識別コードは、リーダライタにてランダムに生成されたコードが用いられる。
【００２９】
より具体的に説明すると、識別コードは、第１属性と第２属性の何れか一方の属性を有している。一例として、当該識別コードは、図２に示すように、ＭＳＢ（最上位ビット）が“０”の場合には、第１属性の識別コードＮ１となり、ＭＳＢが“１”の場合は第２属性の識別コードＮ２となされる。なお、本実施形態では、一例としてＭＳＢを属性のフラグとして用いているが、実装に当たっては、リーダライタのプログラムが実際に扱い易く、当該属性を判定し易い情報を用いるようにしても良い。
【００３０】
リーダライタは、最後に正しくデータを書き込んだデータ保存領域が上記第１，第２データ保存領域１３，１４の何れであるかに応じて、上記第１属性の識別コードＮ１と第２属性の識別コードＮ２の何れか一方を、識別コード格納領域１５に格納する。すなわち例えば、リーダライタは、最後に正しくデータを書き込んだデータ保存領域が例えば第１データ保存領域１３である場合には、識別コード格納領域１５に第１属性の識別コードＮ１を格納する。また例えば、最後に正しくデータを書き込んだデータ保存領域が例えば第２データ保存領域１４である場合、リーダライタは、識別コード格納領域１５に上記第２属性の識別コードＮ２を格納する。
【００３１】
一方、リーダライタは、ＩＣカード１０の記憶領域１２からデータを読み込む際には、実際にデータの読み込みを開始する前に、上記識別コード格納領域１５内の識別コードを確認する。そして、リーダライタは、その識別コードの属性により、いずれのデータ保存領域からデータを読み込むか判断する。すなわち、リーダライタは、識別コード格納領域１５に第１属性の識別コードＮ１が格納されている場合には、前回正しくデータが書き込まれたデータ保存領域が第１データ保存領域１３であると判断する。したがってこの場合、リーダライタは、当該第１データ保存領域１３からデータを読み込む。一方、リーダライタは、識別コード格納領域１５に第２属性の識別コードＮ２が格納されている場合には、前回正しくデータが書き込まれたデータ保存領域が第２データ保存領域１４であると判断する。したがってこの場合、リーダライタは、当該第２データ保存領域１４からデータを読み込む。
【００３２】
また、リーダライタは、ＩＣカード１０に新たにデータを書き込む際には、実際にデータの書き込みを開始する前に、上記識別コード格納領域１５内の識別コードを確認する。そして、リーダライタは、その識別コードの属性により、いずれのデータ保存領域へデータを書き込むか判断する。すなわち例えば、リーダライタは、識別コード格納領域１５に第１属性の識別コードＮ１が格納されている場合には、最後に正しくデータが書き込まれたデータ保存領域が第１データ保存領域１３であると判断する。したがってこの場合、リーダライタは、最後に正しく書き込みがなされた第１データ保存領域１３ではない方の第２データ保存領域１４からデータの書き込みを開始する。また例えば、リーダライタは、識別コード格納領域１５に第２属性の識別コードＮ２が格納されている場合には、最後に正しくデータが書き込まれたデータ保存領域が第２データ保存領域１４であると判断する。したがってこの場合、リーダライタは、最後に正しく書き込みがなされた第２データ保存領域１４ではない方の第１データ保存領域１３からデータの書き込みを開始する。
【００３３】
〔リーダライタの主要部の概略構成〕
図３には、本実施形態のリーダライタ２０の主要部の概略構成を示す。なお図３では、携帯電話端末が一般的に備えている構成の図示は省略している。
【００３４】
図３に示すように、本実施形態のリーダライタ２０は、主要な構成として、ＣＰＵ２２と、メモリ２３、及び、ＲＦアンテナ２１とを有して構成されている。なお、ＲＦアンテナ２１は、ＩＣカード１０が非接触型カードである場合の構成であり、ＩＣカード１０が接触型カードである場合にはＲＦアンテナ２１に代えて電気接点が設けられる。
【００３５】
また本実施形態において、メモリ２３の記憶領域内には、少なくともプログラム格納領域３５、識別コード保存領域３６、中断データ保存領域３７、中断位置保存領域３８、データ一時格納領域３９が設けられている。
【００３６】
上記メモリ２３のデータ一時格納領域３９には、ＩＣカード１０に書き込まれるデータ或いはＩＣカード１０から読み込まれたデータが、一時的に蓄積される。
【００３７】
上記メモリ２３のプログラム格納領域３５には、当該リーダライタ２０のＣＰＵ２２により実行されるプログラムが格納されている。本実施形態の場合、プログラム格納領域３５内には、前述のようにＩＣカードの第１，第２データ保存領域１３，１４の管理と識別コードの生成、識別コード格納領域１５の管理等の処理及びそれらの制御を、ＣＰＵ２２が実行するためのＩＣカード管理プログラムが格納されている。
【００３８】
ＣＰＵ２２は、上記ＩＣカード管理プログラムを実行する。当該ＩＣカード管理プログラム実行時のＣＰＵ２２内には、少なくとも、識別コード生成部３１、識別コードチェック部３２、書き込み／読み込み制御部３４及び通信制御部３３の各処理実行部が形成される。
【００３９】
上記識別コード生成部３１は、ＩＣカード１０に正常にデータが書き込まれた時に、当該正常にデータが書き込まれたＩＣカード及びデータ保存領域を一意に特定可能な前述の識別コードを生成する。
【００４０】
識別コードチェック部３２は、ＩＣカード１０からのデータ読み込みや書き込みの際に、前記識別コード格納領域１５内の識別コードを確認する。また、識別コードチェック部３２は、後述するように、前回書き込みが中断されたＩＣカードへの再書き込みを行う際に、当該書き込みが中断されたＩＣカードと再書き込みするデータ保存領域を特定するために、前記識別コード格納領域１５内の識別コードを確認する。
【００４１】
通信制御部３３は、ＩＣカード１０との間のデータ送受の際の各種信号処理と通信制御を行う。
【００４２】
書き込み／読み込み制御部３４は、ＩＣカード１０の第１，第２データ保存領域１３，１４に対するデータの書き込み／読み込みと、識別コード格納領域１５に対する識別コードの書き込み／読み込みを制御する。
【００４３】
また、書き込み／読み込み制御部３４は、当該リーダライタ２０のメモリ２３内の識別コード保存領域３６、中断データ保存領域３７、中断位置保存領域３８、データ一時格納領域３９に対する各種データやコード等の書き込み／読み込みも制御する。
【００４４】
上記メモリ２３の識別コード保存領域３６には、ＩＣカード１０のデータ保存領域へのデータ書き込みが途中で中断した場合、先に当該ＩＣカード１０の識別コード格納領域１５から読み込まれた識別コードが保存される。
【００４５】
メモリ２３の中断データ保存領域３７には、ＩＣカード１０への書き込みが途中で中断した場合、その中断したデータが保存される。
【００４６】
メモリ２３の中断位置保存領域３８には、ＩＣカード１０のデータ保存領域へのデータ書き込みが途中で中断した場合、そのデータ保存領域内でデータ書き込みが中断した位置情報（メモリアドレス）が保存される。
【００４７】
〔リーダライタによるＩＣカードの書き込み／読み込み処理の概要〕
上述した図３の構成を有するリーダライタ２０において、例えばＩＣカード１０に対してデータを読み込み／書き込みする場合には、以下のような処理が行われる。
【００４８】
ＩＣカード１０からデータを読み込む場合、ＣＰＵ２２の書き込み／読み込み制御部３４は、先ず、ＩＣカード１０の識別コード格納領域１５に格納されている識別コードを読み込む。
【００４９】
次いで、識別コードチェック部３２は、その識別コードが前述した第１属性、第２属性の何れの属性であるかを確認する。すなわち、識別コードチェック部３２は、識別コードが第１属性である場合には前回の書き込みが第１データ保存領域１３に正常に書き込まれているものとみなし、第２属性である場合には第２データ保存領域１４に正常に書き込まれているものとみなす。
【００５０】
そして、識別コードチェック部３２にて第１データ保存領域１３が正常に書き込まれていると確認された場合、書き込み／読み込み制御部３４は、当該第１データ保存領域１３からデータを読み込む。また、識別コードチェック部３２にて第２データ保存領域１４が正常に書き込まれていると確認された場合、書き込み／読み込み制御部３４は、当該第２データ保存領域１４からデータを読み込む。
【００５１】
一方、ＩＣカード１０にデータを書き込む場合、ＣＰＵ２２の書き込み／読み込み制御部３４は、先ず、ＩＣカード１０の識別コード格納領域１５に格納されている識別コードを読み込む。
【００５２】
次いで、識別コードチェック部３２は、その識別コードの属性を確認する。すなわち識別コードチェック部３２は、識別コードが第１属性である場合には前回の書き込みが第１データ保存領域１３に正常に書き込まれているものとみなし、第２属性である場合には第２データ保存領域１４に正常に書き込まれているものとみなす。
【００５３】
ここで、識別コードチェック部３２にて第１データ保存領域１３が正常に書き込まれていると確認された場合、書き込み／読み込み制御部３４は、第２データ保存領域１４からデータの書き込みを開始する。また、当該第２データ保存領域１４へのデータ書き込みが正しく完了した場合、識別コード生成部３１は、ランダムな値からなる第２属性の識別コードＮ２を生成する。そして、書き込み／読み込み制御部３４は、上記第２属性の識別コードＮ２を、識別コード格納領域１５に書き込む。一方、識別コードチェック部３２にて第２データ保存領域１４が正常に書き込まれていると確認された場合、書き込み／読み込み制御部３４は、第１データ保存領域１３からデータの書き込みを開始する。また、当該第１データ保存領域１３へのデータ書き込みが正しく完了した場合、識別コード生成部３１は、ランダムな値からなる第１属性の識別コードＮ１を生成する。そして、書き込み／読み込み制御部３４は、上記第１属性の識別コードＮ１を、識別コード格納領域１５に書き込む。
【００５４】
また、ＩＣカード１０へのデータ書き込み中に、何らかの理由により途中で書き込みが中断した場合、ＣＰＵ２２では以下のような処理が行われる。
【００５５】
データ書き込みの中断が発生した場合、先ず、ＣＰＵ２２の書き込み／読み込み制御部３４は、ＩＣカード１０の識別コード格納領域１５に格納されている識別コードを読み込む。
【００５６】
次いで、識別コードチェック部３２は、その識別コードの属性を前述の書き込み／読み込み時と同様にして確認する。
【００５７】
ここで、一例として、ＩＣカード１０がリーダライタ２０のＲＦフィールド外（非接触通信が可能なＲＦ領域の外）に移動したこと等の理由により、データ書き込みが途中で中断したと想定する。なお、ＩＣカード１０がリーダライタ２０のＲＦフィールド内に存在するかどうかは、例えば通信制御部３３が通信状態を監視することにより行う。
【００５８】
ＩＣカード１０がリーダライタ２０のＲＦフィールド外に移動した場合、ＣＰＵ２２の通信制御部３３は、ＩＣカード１０への書き込みコマンドに対するレスポンスとして、エラーレスポンスを受け取ることになる。なお、当該エラーレスポンスは、通常はＩＣカード１０から送られてくるが、ＩＣカード１０との通信そのものが出来なくなった場合には通信制御部３３自身が発生しても良い。
【００５９】
通信制御部３３がエラーレスポンスを受け取った場合、書き込み／読み込み制御部３４４は、その時点までにＩＣカード１０のデータ保存領域へデータを書き込んだ位置情報（アドレス情報）を、中断位置保存領域３８に保存する。同時に、書き込み／読み込み制御部３４は、当該書き込みが中断した時の残りのデータ（未書き込みデータ）を、中断データ保存領域３７に保存する。また、書き込み／読み込み制御部３４は、当該データの書き込みを行う前に、ＩＣカード１０の識別コード格納領域１５から読み込んだ識別コードを、識別コード保存領域３６に保存する。
【００６０】
そしてその後、ＩＣカード１０がリーダライタ２０のＲＦフィールド内に再び入ったことが通信制御部３３により検知されると、書き込み／読み込み制御部３４は、その時のＩＣカード１０の識別コード格納領域１５に格納されている識別コードを再度読み込む。また同時に、書き込み／読み込み制御部３４は、メモリ２３の識別コード保存領域３６からも識別コードを読み込む。
【００６１】
次に、識別コードチェック部３２は、上記ＩＣカード１０から再読み込みされた識別コードと、メモリ２３の識別コード保存領域３６に保存されていた識別コードとを比較する。すなわちこの場合、識別コードチェック部３２では、ＲＦフィールド内に入ったＩＣカード１０が、先に書き込みが中断したＩＣカードであるかどうかの確認が行われる。
【００６２】
それら識別コードの比較の結果、両識別コードが一致した場合、書き込み／読み込み制御部３４は、中断位置保存領域３８に保存されている位置情報、つまり前回の書き込み中断位置情報を読み込む。また同時に、書き込み／読み込み制御部３４は、中断データ保存領域３７に保存されているデータ、つまり書き込み中断時の残りのデータ（未書き込みデータ）を読み込む。
【００６３】
そして、書き込み／読み込み制御部３４は、書き込みが中断されたＩＣカードのデータ保存領域に対し、上記書き込み中断位置から上記未書き込みデータを書き込む。これにより、リーダライタは、先に書き込みが中断されたＩＣカードへ、データの書き込みを再開することができる。
【００６４】
なお、書き込みが中断されたＩＣカード１０からデータを読み込む場合には、前述したような通常の読み込み処理と全く同じ流れで、読み込み処理が行われる。すなわち、最初にＩＣカード１０の識別コード格納領域１５から識別コードを読み込み、その属性に対応したデータ保存領域からデータを読み込む。
【００６５】
また、上記識別コードの比較の結果、両識別コードが一致しなかった場合、通信制御部１０は、前回書き込みが中断したＩＣカード１０とは異なる別のＩＣカードがＲＦフィールド内に入ったと判断する。この場合、リーダライタ２０は、当該新たなＩＣカードに対する通常の書き込み／読み込み処理を行う。
【００６６】
〔リーダライタによるＩＣカードの書き込み／読み込み処理のフローチャート〕
図４〜図９には、リーダライタ２０のＣＰＵ２２が、ＩＣカード管理プログラムを実行し、ＩＣカード１０に対してデータの書き込み／読み込みを行う際の処理の流れを示す。
【００６７】
先ず、図４〜図７を参照してデータの書き込み時の処理の流れを説明する。
【００６８】
図４において、例えばＩＣカード１０へのデータ書き込み処理が開始されると、ステップＳ１の処理として、ＣＰＵ２２の書き込み／読み込み制御部３４は、先ず、書き込み対象のＩＣカード１０の識別コード格納領域１５から識別コードを読み込む。
【００６９】
次に、ステップＳ２の処理として、ＣＰＵ２２の書き込み／読み込み制御部３４は、メモリ２３の識別コード保存領域３６から識別コードを読み込む。また、識別コードチェック部３２は、対象ＩＣカード１０から読み込んだ識別コードが、メモリ２３内に保存されている識別コードと一致するか判定する。そして、それら両識別コードが一致した場合、ＣＰＵ２２は、図８の書き込み再開処理のフローチャートへ処理を進める。一方、識別コード保存領域３６に識別コードが保存されていないか、又は、識別コード保存領域３６のに保存されている識別コードと対象ＩＣカード１０の識別コードとが不一致である場合、ＣＰＵ２２は、ステップＳ３へ処理を進める。
【００７０】
ステップＳ３の処理に進むと、ＣＰＵ２２の識別コードチェック部３２は、両識別コードの属性をチェックする。そして、ＣＰＵ２２は、それら識別コードの属性が第１属性である場合には図５のステップＳ１１へ処理を進め、一方、第２属性である場合には図６のステップＳ２１へ処理を進める。
【００７１】
図４のステップＳ３から図５のステップＳ１１の処理に進むと、ＣＰＵ２２の識別コード生成部３１は、ランダムな値からなる第２属性の識別コードＮ２を生成する。
【００７２】
次に、ＣＰＵ２２の書き込み／読み込み制御部３４は、ステップＳ１２の処理として、ＩＣカード１０の第２データ保存領域１４へのデータ書き込みループ処理を開始する。
【００７３】
このデータ書き込みループ処理に移行すると、書き込み／読み込み制御部３４は、ステップＳ１３の処理として、書き込むべき例えば複数のデータパケット（つまりデータブロック）を順次書き込んでいく。
【００７４】
またこの時、通信制御部３３は、データ書き込みのエラーレスポンスを受信したか否か判定する。そして、ＣＰＵ２２は、上記通信制御部３３がエラーレスポンスを受信した場合には図７のステップＳ３１へ処理を進め、一方エラーレスポンスを受信していない時にはステップＳ１５へ処理を進める。
【００７５】
ステップＳ１５の処理に進むと、書き込み／読み込み制御部３４は、全てのデータパケットの書き込みが完了したか判定し、完了していない場合にはステップＳ１３へ処理を戻す。一方、全てのデータの書き込みが完了した場合、ＣＰＵ２２は、ステップＳ１６にて第２データ保存領域１４へのデータ書き込みループ処理を終了し、ステップＳ１７へ処理を進める。
【００７６】
ステップＳ１７の処理に進むと、書き込み／読み込み制御部３４は、ステップＳ１１にて識別コード生成部３１が生成した第２属性の識別コードＮ２を、ＩＣカードの識別コード格納領域１５に格納する。
【００７７】
このステップＳ１７の処理後、ＣＰＵ２２は、書き込み処理を終了する。
【００７８】
また、図４のステップＳ３から図６のステップＳ２１の処理に進むと、ＣＰＵ２２の識別コード生成部３１は、ランダムな値からなる第１属性の識別コードＮ１を生成する。
【００７９】
次に、ＣＰＵ２２の書き込み／読み込み制御部３４は、ステップＳ２２の処理として、ＩＣカード１０の第１データ保存領域１３へのデータ書き込みループ処理を開始する。
【００８０】
このデータ書き込みループ処理に移行すると、書き込み／読み込み制御部３４は、ステップＳ２３の処理として、書き込むべき複数のデータパケット（データブロック）を順次書き込んでいく。
【００８１】
またこの時、通信制御部３３は、データ書き込みのエラーレスポンスを受信したか否か判定する。そして、ＣＰＵ２２は、上記通信制御部３３がエラーレスポンスを受信した場合には図７のステップＳ３１へ処理を進め、一方エラーレスポンスを受信していない時にはステップＳ２５へ処理を進める。
【００８２】
ステップＳ２５の処理に進むと、書き込み／読み込み制御部３４は、全てのデータパケットの書き込みが完了したか判定し、完了していない場合にはステップＳ２３へ処理を戻す。一方、全てのデータの書き込みが完了した場合、ＣＰＵ２２は、ステップＳ２６にて第１データ保存領域１３へのデータ書き込みループ処理を終了し、ステップＳ２７へ処理を進める。
【００８３】
ステップＳ２７の処理に進むと、書き込み／読み込み制御部３４は、ステップＳ２１にて識別コード生成部３１が生成した第１属性の識別コードＮ１を、ＩＣカードの識別コード格納領域１５に格納する。
【００８４】
このステップＳ２７の処理後、ＣＰＵ２２は、書き込み処理を終了する。
【００８５】
一方、図５のステップＳ１４或いは図６のステップＳ２４から図７のステップＳ３１の処理に進むと、ＣＰＵ２２の書き込み／読み込み制御部３４は、書き込み中断時の残りのデータを中断データ保存領域３７に保存する。すなわち、データパケットｎまで書き込み済みである場合、書き込み／読み込み制御部３４は、当該データパケットｎの次のパケット（ｎ＋１）から最終パケットまでのデータを中断データ保存領域３７に保存する。
【００８６】
次に、ＣＰＵ２２の書き込み／読み込み制御部３４は、ステップＳ３２の処理として、データ書き込みが中断された時の、上記データ保存領域内の中断位置情報（中断アドレス情報）を、中断位置保存領域３８に保存する。
【００８７】
また同時に、書き込み／読み込み制御部３４は、ステップＳ３３の処理として、当該データ書き込みが中断された時の識別コードを、メモリ２３の識別コード保存領域３６に保存する。つまりこの場合、書き込み／読み込み制御部３４は、先のステップＳ１にてＩＣカード１０の識別コード格納領域１５から読み込まれた識別コードをメモリ２３の識別コード保存領域３６に保存する。
【００８８】
このステップＳ３３の処理後、ＣＰＵ２２は、書き込み処理を終了する。
【００８９】
次に、図８を参照してデータ書き込みが中断した後、書き込みを再開する場合の処理の流れを説明する。
【００９０】
図４のステップＳ２から図８の書き込み再開処理開始のフローチャートに進むと、ＣＰＵ２２の書き込み／読み込み制御部３４は、ステップＳ４１の処理として、中断データ保存領域３７から、書き込み中断時の残りの未書き込みデータを取得する。
【００９１】
また同時に、書き込み／読み込み制御部３４は、ステップＳ４２の処理として、
次に、ＣＰＵ２２の書き込み／読み込み制御部３４は、ステップＳ３２の処理として、中断位置保存領域３８から、書き込み中断時のデータ保存領域の中断位置情報（中断アドレス情報）を取得する。
【００９２】
次に、ＣＰＵ２２の書き込み／読み込み制御部３４は、ステップＳ４３の処理として、書き込みが中断したデータ保存領域に対し、その中断アドレスから上記未書き込みデータを書き込むループ処理を開始する。
【００９３】
当該中断データの書き込みループ処理に移行すると、書き込み／読み込み制御部３４は、ステップＳ４４の処理として、未書き込みの複数のデータパケット（データブロック）を順次書き込んでいく。
【００９４】
またこの時、通信制御部３３は、データ書き込みのエラーレスポンスを受信したか否か判定する。そして、ＣＰＵ２２は、上記通信制御部３３がエラーレスポンスを受信した場合にはステップＳ４９へ処理を進め、一方エラーレスポンスを受信していない時にはステップＳ４６へ処理を進める。
【００９５】
ステップＳ４６の処理に進むと、書き込み／読み込み制御部３４は、上記未書き込みとなっていた全てのデータパケットの書き込みが完了したか判定し、完了していない場合にはステップＳ４４へ処理を戻す。一方、全てのデータの書き込みが完了した場合、ＣＰＵ２２は、ステップＳ４７にて上記書き込みが中断していたデータ保存領域へのデータ書き込みループ処理を終了し、ステップＳ４８へ処理を進める。
【００９６】
ステップＳ４８の処理に進むと、書き込み／読み込み制御部３４は、先に識別コード生成部３１が生成した識別コードを、ＩＣカードの識別コード格納領域１５に格納する。
【００９７】
このステップＳ４８の処理後、ＣＰＵ２２は、書き込み再開処理を終了する。
【００９８】
また、ステップＳ４５からステップＳ４９の処理に進んだ場合、ＣＰＵ２２の書き込み／読み込み制御部３４は、書き込み中断時の残りのデータを中断データ保存領域３７に保存する。例えば、データパケットｎまで書き込み済みである場合、書き込み／読み込み制御部３４は、当該データパケットｎの次のパケット（ｎ＋１）から最終パケットまでのデータを中断データ保存領域３７に保存する。
【００９９】
次に、ＣＰＵ２２の書き込み／読み込み制御部３４は、ステップＳ５０の処理として、データ書き込みが中断された時の、上記データ保存領域内の中断位置情報（中断アドレス情報）を、中断位置保存領域３８に保存する。つまりこの場合、書き込み／読み込み制御部３４は、先のステップＳ１にてＩＣカード１０の識別コード格納領域１５から読み込まれた識別コードをメモリ２３の識別コード保存領域３６に保存する。
【０１００】
また同時に、書き込み／読み込み制御部３４は、ステップＳ５１の処理として、当該データ書き込みが中断された時の識別コードを、メモリ２３の識別コード保存領域３６に保存する。
【０１０１】
このステップＳ５１の処理後、ＣＰＵ２２は、書き込み再開処理を終了する。
【０１０２】
次に、図９を参照してデータ読み込み時の処理の流れを説明する。
【０１０３】
図９において、例えばＩＣカード１０へのデータ読み込み処理が開始されると、ステップＳ６１の処理として、ＣＰＵ２２の書き込み／読み込み制御部３４は、先ず、書き込み対象のＩＣカード１０の識別コード格納領域１５から識別コードを読み込む。
【０１０４】
次に、ステップＳ６２の処理として、ＣＰＵ２２の識別コードチェック部３２は、上記対象ＩＣカード１０から読み込まれた識別コードの属性をチェックする。そして、ＣＰＵ２２は、その識別コードの属性が第１属性である場合にはステップＳ７１へ処理を進め、一方、第２属性である場合にはステップＳ８１へ処理を進める。
【０１０５】
ステップＳ６２からステップＳ７１の処理に進むと、ＣＰＵ２２の書き込み／読み込み制御部３４は、ＩＣカード１０の第１データ保存領域１３からのデータ読み込みループ処理を開始する。
【０１０６】
このデータ読み込みループ処理に移行すると、書き込み／読み込み制御部３４は、ステップＳ７２の処理として、読み込むべき複数のデータパケット（データブロック）を順次読み込んでいく。
【０１０７】
またこの時、書き込み／読み込み制御部３４は、ステップＳ７３の処理として、全てのデータパケットの読み込みが完了したか判定し、完了していない場合にはステップＳ７２へ処理を戻す。一方、全てのデータの読み込みが完了した場合、ＣＰＵ２２は、ステップＳ７４にて第１データ保存領域１３からのデータ読み込みループ処理を終了する。
【０１０８】
このステップＳ７４の処理後、ＣＰＵ２２は、読み込み処理を終了する。
【０１０９】
またステップＳ６２からステップＳ８１の処理に進むと、ＣＰＵ２２の書き込み／読み込み制御部３４は、ＩＣカード１０の第２データ保存領域１４からのデータ読み込みループ処理を開始する。
【０１１０】
このデータ読み込みループ処理に移行すると、書き込み／読み込み制御部３４は、ステップＳ８２の処理として、読み込むべき複数のデータパケット（データブロック）を順次読み込んでいく。
【０１１１】
またこの時、書き込み／読み込み制御部３４は、ステップＳ８３の処理として、全てのデータパケットの読み込みが完了したか判定し、完了していない場合にはステップＳ８２へ処理を戻す。一方、全てのデータの読み込みが完了した場合、ＣＰＵ２２は、ステップＳ８４にて第２データ保存領域１４からのデータ読み込みループ処理を終了する。
【０１１２】
このステップＳ８４の処理後、ＣＰＵ２２は、読み込み処理を終了する。
【０１１３】
〔まとめ〕
以上説明したように、本実施形態によれば、データの書き込みトランザクションが中断したＩＣカードを、別のリーダライタにて書き込み／読み込みする場合、そのＩＣカードが書き込み中断したカードであるかどうかを意識する必要がない。
【０１１４】
また、本実施形態によれば、例えばＩＣカードへのデータ書き込みが中断し、その中断したデータを最後まで書き込む場合、書き込み中断位置からの書き込み再開が可能となる。さらに、本実施形態によれば、書き込みが中断した時の残りのデータから書き込みを再開することができるため、再書き込みのための処理時間の短縮も可能となる。
【０１１５】
なお、上述した本発明の各実施形態の説明は、本発明の一例である。このため、本発明は上述の実施形態に限定されることなく、本発明に係る技術的思想を逸脱しない範囲であれば、設計等に応じて種々の変更が可能であることはもちろんである。
【０１１６】
上述の実施形態では、ＩＣカードの記憶領域内に二つのデータ保存領域を設けた例を挙げたが、データ保存領域は三つ以上であっても良い。データ保存領域を三つ以上にした場合、それらデータ保存領域の数に対応して、識別データの属性も三つ以上とする。一例として、第１〜第４データ保存領域の四つがある場合、識別データの属性は、上位２ビットの“００”，“０１”，“１０”，“１１”により表される第１〜第４属性とすることができる。同様のことから、識別データの属性を表すためのビット数を増やせば、さらに多くのデータ保存領域を設けた場合にも対応可能となる。
【０１１７】
また、このようにデータ保存領域を複数設けた場合には、一つのＩＣカードにおける複数回の連続した書き込み中断にも対応可能となる。例えば、データ保存領域を第１〜第４データ保存領域の四つにした場合には、最大で３回分の連続した書き込み中断にも対応可能となる。すなわち例えば、第１データ保存領域への書き込みが中断した後、さらに第２データ保存領域への別のデータ書き込みが中断し、またさらに第３データ保存領域への別のデータ書き込みが中断した場合でもあってもリーダライタは対応できることになる。具体的に説明すると、この例の場合、ＩＣカードの識別データ格納領域には第４属性の識別コードのみ格納されているため、リーダライタは、データ読み込みを行う場合には、当該識別コードから、第４データ保存領域に正常なデータが格納されていることを知る。これにより、リーダライタは、第４データ保存領域から正常なデータを読み込むことができる。一方、リーダライタは、データ書き込みを行う場合には、ＩＣカードの識別コード格納領域の上記第４属性の識別コードから、第１〜第３データ保存領域にデータを書き込んでも良いことを知る。これにより、リーダライタは、第１〜第３データ保存領域の何れかに（或いは予め決められた順に）データを書き込むことができる。またこの時、メモリ２３内の識別コード保存領域３６には第４属性の識別コードが保存され、中断位置保存領域３８には第１〜第３データ保存領域の各中断位置情報が、中断データ保存領域３７には第１〜第３データ保存領域に各々対応した未書き込みデータが保存される。したがって、リーダライタは、それら各領域３６，３７，３８内の情報を基に、第１〜第３データ保存領域の各中断アドレスから、それぞれ未書き込みデータの書き込みを再開できる。
【０１１８】
さらに、本実施形態によれば、各識別コードは、それぞれ一意のコードであるため、例えば複数の各々異なるＩＣカードにおける中断時の再書き込みにも対応可能となる。例えば、メモリ２３の識別コード保存領域に、それぞれ異なる四つの識別コードが保存されているような場合には、リーダライタは、それら四つの識別コードから特定可能な四つのＩＣカードに対する再書き込みが可能となる。具体的に説明すると、この例の場合、リーダライタは、各ＩＣカードへの書き込み中断時の識別コードと、それら各ＩＣカードのデータ保存領域の中断アドレス及び中断データを保存している。したがって、リーダライタは、保存している識別コードから、何れのＩＣカードの何れのデータ保存領域への書き込みが中断したのかを知ることができ、また、その中断アドレスも知ることができる。これにより、リーダライタは、四つの各々異なるＩＣカードにおける中断時の再書き込みが可能となる。
【０１１９】
その他、上述した実施形態では、リーダライタ機能を備えた携帯電話端末を例に挙げたが、本発明はそれに限定されず、リーダライタ機能を備えた各種の機器にも適用可能である。また、それら機器は、据え置き型、携帯型何れであっても良い。
【図面の簡単な説明】
【０１２０】
【図１】本実施形態のリーダライタによりデータの書き込み／読み込みがなされるＩＣカードの概略的な内部構成を示す図である。
【図２】識別コードとその属性の説明に用いる図である。
【図３】本実施形態のリーダライタの主要部の概略構成を示す図である。
【図４】リーダライタがＩＣカードに対してデータの書き込みを行う際の処理の流れを示し、書き込み処理開始から識別コードの属性をチェックするまでのフローチャートである。
【図５】リーダライタがＩＣカードに対してデータの書き込み行う際の処理の流れを示し、ＩＣカードの識別コードが第１属性であった場合の書き込み処理のフローチャートである。
【図６】リーダライタがＩＣカードに対してデータの書き込み行う際の処理の流れを示し、ＩＣカードの識別コードが第２属性であった場合の書き込み処理のフローチャートである。
【図７】リーダライタがＩＣカードに対してデータの書き込み行う際の処理の流れを示し、データの書き込みが途中で中断した場合の書き込み処理のフローチャートである。
【図８】リーダライタがＩＣカードに対し、中断したデータの再書き込み行う際の処理の流れを示すフローチャートである。
【図９】リーダライタがＩＣカードからデータの読み込みを行う際の処理の流れを示すフローチャートである。
【符号の説明】
【０１２１】
１０  ＩＣカード、１２  記憶領域、１３  第１データ保存領域、１４  第２データ保存領域、１５  識別コード格納領域、２０  リーダライタ、２１  ＲＦアンテナ、２２  ＣＰＵ、２３  メモリ、３１  識別コード生成部、３２  識別コードチェック部、３３  通信制御部、３４  書き込み／読み込み制御部、３５  プログラム格納領域、３６  識別コード保存領域、３７  中断データ保存領域、３８  中断位置保存領域
【図１】
2009271829.tif 000003
【図２】
2009271829.tif 000004
【図３】
2009271829.tif 000005
【図４】
2009271829.tif 000006
【図５】
2009271829.tif 000007
【図６】
2009271829.tif 000008
【図７】
2009271829.tif 000009
【図８】
2009271829.tif 000010
【図９】
2009271829.tif 000011