(57)【要約】【課題】シリアルインターフェースにおけるスレーブ内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットを判定すること。【解決手段】マスタとしてのＣＰＵにより、スレーブとしてのＥＥＰＲＯＭ及びＥＥＰＲＯＭの特定アドレスに異なるデータが書き込まれた後、それぞれのＥＥＰＲＯＭの特定アドレスから書き込まれたデータが読み出され、その読み出されたデータに基づき、それぞれのＥＥＰＲＯＭの転送フォーマットを判定するようにした。【選択図】図６
2007305035.tif 000002
【特許請求の範囲】
【請求項１】
シリアルインターフェースにおけるマスタとスレーブとの間での転送フォーマットを判定する転送フォーマット判定装置であって、
前記マスタは、
前記スレーブの特定アドレスに任意のデータを書き込むデータ書込手段と、
該データ書込手段による前記データの書き込み後、前記スレーブの特定アドレスから前記データを読み出すデータ読出手段と、
該データ読出手段によって読み出されたデータに基づき、前記スレーブ内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットを判定する判定手段とを備える
ことを特徴とする転送フォーマット判定装置。
【請求項２】
シリアルインターフェースにおけるマスタと複数のスレーブとの間での転送フォーマットを判定する転送フォーマット判定装置であって、
前記マスタは、
前記スレーブの特定アドレスに異なるデータを書き込むデータ書込手段と、
該データ書込手段による前記データの書き込み後、前記スレーブの特定アドレスから前記データを読み出すデータ読出手段と、
該データ読出手段によって読み出されたデータに基づき、前記スレーブ内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットを判定する判定手段とを備える
ことを特徴とする転送フォーマット判定装置。
【請求項３】
前記データ書込手段は、前記異なるデータの一方をテストデータとして書き込み、
前記判定手段は、前記特定アドレスから読み出されたデータが前記テストデータであるか否かを判断し、前記転送フォーマットを判定する
ことを特徴とする請求項２に記載の転送フォーマット判定装置。
【請求項４】
前記シリアルインターフェースは、Ｉ２Ｃバスであることを特徴とする請求項１〜３のいずれかに記載の転送フォーマット判定装置。
【請求項５】
シリアルインターフェースにおけるマスタとスレーブとの間での転送フォーマットを判定する転送フォーマット判定方法であって、
前記マスタは、
前記スレーブの特定アドレスに任意のデータを書き込むステップと、
前記データの書き込み後、前記スレーブの特定アドレスから前記データを読み出すステップと、
該読み出されたデータに基づき、前記スレーブ内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットを判定するステップとを有する
ことを特徴とする転送フォーマット判定方法。
【請求項６】
シリアルインターフェースにおけるマスタとスレーブとの間での転送フォーマットを判定する転送フォーマット判定方法であって、
前記マスタは、
前記スレーブの特定アドレスに異なるデータを書き込むステップと、
前記データの書き込み後、前記スレーブの特定アドレスから前記データを読み出すステップと、
該読み出されたデータに基づき、前記スレーブ内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットを判定するステップとを有する
ことを特徴とする転送フォーマット判定方法。
【請求項７】
前記異なるデータの一方をテストデータとして書き込むステップと、
前記特定アドレスから読み出されたデータが前記テストデータであるか否かを判断し、前記転送フォーマットを判定するステップとを有する
ことを特徴とする請求項６に記載の転送フォーマット判定方法。
【請求項８】
前記シリアルインターフェースは、Ｉ２Ｃバスであることを特徴とする請求項５〜７のいずれかに記載の転送フォーマット判定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シリアルインターフェースにおける転送フォーマットの判定に適した転送フォーマット判定装置及び転送フォーマット判定方法に関する。
【背景技術】
【０００２】
シリアル通信を行うシリアルインターフェースとして、Ｉ２Ｃバスを用いたものがある。このＩ２Ｃバスは、マスタに対して複数の機器であるスレーブをクロック信号線及びデータ信号線を介してデータのやり取りを行うものである。
【０００３】
Ｉ２Ｃバスに接続されるマスタとしては、マイコンがある。また、Ｉ２Ｃバスに接続されるスレーブとしては、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｏｎｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等がある。
【０００４】
ところで、ＥＥＰＲＯＭは、メモリ容量が異なっていても同一形状のパッケージのものがあるが、それぞれの容量に応じたＥＥＰＲＯＭ内のアドレス情報の差異によって転送フォーマットが異なっている。
【０００５】
ちなみに、ＥＥＰＲＯＭでの転送フォーマットは、（スレーブアドレス）＋（バイトアドレス）＋（データ）となっている。ただし、ＥＥＰＲＯＭのメモリ容量が１６Ｋバイト以下ではバイトアドレスが１バイトとなり、ＥＥＰＲＯＭのメモリ容量が３２Ｋバイト以上ではバイトアドレスが２バイトとなる。
【０００６】
よって、シリアルインターフェースにおいては、バイトアドレスのバイト数が明らかにならないと、所望の転送フォーマットの生成が不可能となってしまうことになる。
【０００７】
ここで、容量の異なるＥＥＰＲＯＭを判別するようにしたものとして、特許文献１では、ＥＥＰＲＯＭに対して、最大容量に対する最終アドレス（たとえば２Ｍビットに対する最終アドレス）を指定し、該最終アドレスの指定に対するＥＥＰＲＯＭからのＡＣＫ信号の有無を判別し、ＥＥＰＲＯＭからＡＣＫ信号が出力された場合、２ＭビットのＥＥＰＲＯＭであると判別し、ＡＣＫ信号が出力されない場合には、１ＭビットのＥＥＰＲＯＭであると判断するようにした電子機器を提案している。
【特許文献１】特開平０９−２３７２０８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところで、上述した特許文献１では、最終アドレスの指定に対するＥＥＰＲＯＭからのＡＣＫ信号の有無を判別することで、記憶装置の容量を自動的に認識できるが、シリアルインターフェースにおけるスレーブ内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットを判定することはできないという問題があった。
【０００９】
本発明は、このような状況に鑑みてなされたものであり、上記問題点を解決することができる転送フォーマット判定装置及び転送フォーマット判定方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の転送フォーマット判定装置は、シリアルインターフェースにおけるマスタとスレーブとの間での転送フォーマットを判定する転送フォーマット判定装置であって、前記マスタは、前記スレーブの特定アドレスに任意のデータを書き込むデータ書込手段と、該データ書込手段による前記データの書き込み後、前記スレーブの特定アドレスから前記データを読み出すデータ読出手段と、該データ読出手段によって読み出されたデータに基づき、前記スレーブ内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットを判定する判定手段とを備えることを特徴とする。
本発明の転送フォーマット判定装置は、シリアルインターフェースにおけるマスタと複数のスレーブとの間での転送フォーマットを判定する転送フォーマット判定装置であって、前記マスタは、前記スレーブの特定アドレスに異なるデータを書き込むデータ書込手段と、該データ書込手段による前記データの書き込み後、前記スレーブの特定アドレスから前記データを読み出すデータ読出手段と、該データ読出手段によって読み出されたデータに基づき、前記スレーブ内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットを判定する判定手段とを備えることを特徴とする。
また、前記データ書込手段は、前記異なるデータの一方をテストデータとして書き込み、前記判定手段は、前記特定アドレスから読み出されたデータが前記テストデータであるか否かを判断し、前記転送フォーマットを判定するようにすることができる。
また、前記シリアルインターフェースは、Ｉ２Ｃバスであるようにすることができる。
本発明の転送フォーマット判定方法は、シリアルインターフェースにおけるマスタとスレーブとの間での転送フォーマットを判定する転送フォーマット判定方法であって、前記マスタは、前記スレーブの特定アドレスに任意のデータを書き込むステップと、前記データの書き込み後、前記スレーブの特定アドレスから前記データを読み出すステップと、該読み出されたデータに基づき、前記スレーブ内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットを判定するステップとを有することを特徴とする。
本発明の転送フォーマット判定方法は、シリアルインターフェースにおけるマスタとスレーブとの間での転送フォーマットを判定する転送フォーマット判定方法であって、前記マスタは、前記スレーブの特定アドレスに異なるデータを書き込むステップと、前記データの書き込み後、前記スレーブの特定アドレスから前記データを読み出すステップと、該読み出されたデータに基づき、前記スレーブ内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットを判定するステップとを有することを特徴とする。
また、前記異なるデータの一方をテストデータとして書き込むステップと、前記特定アドレスから読み出されたデータが前記テストデータであるか否かを判断し、前記転送フォーマットを判定するステップとを有するようにすることができる。
また、前記シリアルインターフェースは、Ｉ２Ｃバスであるようにすることができる。
本発明の転送フォーマット判定装置及び転送フォーマット判定方法では、マスタにより、スレーブの特定アドレスに異なるデータが書き込まれた後、スレーブの特定アドレスから書き込まれたデータが読み出され、その読み出されたデータに基づき、スレーブ内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットが判定される。
【発明の効果】
【００１１】
本発明の転送フォーマット判定装置及び転送フォーマット判定方法によれば、スレーブの特定アドレスに書き込んだ異なるデータを読み出し、スレーブの転送フォーマットを判定するようにしたので、シリアルインターフェースにおけるスレーブ内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットを判定することができる。
【発明を実施するための最良の形態】
【００１２】
本実施形態では、マスタにより、スレーブの特定アドレスに異なるデータが書き込まれた後、スレーブの特定アドレスから書き込まれたデータが読み出され、その読み出されたデータに基づき、スレーブの転送フォーマットを判定することで、シリアルインターフェースにおけるスレーブ内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットを判定するようにした。
【実施例】
【００１３】
以下、本発明の実施例の詳細について説明する。図１は、本発明の転送フォーマット判定装置をコンピュータシステムに適用した場合の一実施例を説明するための図である。
【００１４】
図１に示すコンピュータシステムは、シリアル通信を行うものであり、マスタとしてのＣＰＵ１０と、第１スレーブであるスレーブ（１）としてのＥＥＰＲＯＭ（Ｅｌｅｃｔｒｏｎｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０と、第２スレーブであるスレーブ（２）としてのＥＥＰＲＯＭ３０とがシリアルインターフェースであるＩ２Ｃバス１Ａを介して接続されている。Ｉ２Ｃバス１Ａは、クロック信号線１ａ及びデータ信号線１ｂを有している。
【００１５】
ここで、ＳＣＬはクロック信号であり、ＳＤＡはシリアルデータである。なお、Ｉ２Ｃバス１Ａでは、論理上、たとえば１２７個までのデバイスであるスレーブを接続することが可能であるが、ここでは説明の都合上、２個のスレーブがマスタに接続される場合を示している。
【００１６】
このようなＩ２Ｃバス１Ａは、基本的にクロック同期通信を行うものである。Ｉ２Ｃバス１Ａのクロック信号線１ａ及びデータ信号線１ｂは、プルアップされており、ＣＰＵ１０からＬ信号を出力にするにはポートから０が出力され、Ｈ信号を出力するにはポートがハイインピーダンス状態にされる。
【００１７】
すなわち、そのハイインピーダンス状態では、クロック信号線１ａ及びデータ信号線１ｂがプルアップされているので、”Ｈ”の状態になる。また、各スレーブであるＥＥＰＲＯＭ２０，３０は、１バイト（８ビット）のアドレスを有しており、自己のアドレスに一致した信号のみ受け取るようになっている。
【００１８】
また、このようなＩ２Ｃバス１Ａでは、ＣＰＵ１０とＥＥＰＲＯＭ２０，３０との間での転送フォーマットが（スレーブアドレス）＋（バイトアドレス）＋（データ）となっている。ここで、スレーブアドレスは１バイト目でＥＥＰＲＯＭ２０又はＥＥＰＲＯＭ３０を指定するアドレスデータである。また、バイトアドレスは、ＥＥＰＲＯＭ２０又はＥＥＰＲＯＭ３０内のアドレス指定用のアドレスデータである。また、ＥＥＰＲＯＭ２０又はＥＥＰＲＯＭ３０の容量に応じてバイトアドレスが異なるため、そのバイトアドレスに応じた転送フォーマットが生成されることになる。
【００１９】
なお、ＣＰＵ１０は、所定の制御プログラムを読み込むことで、データ書込手段、データ読出手段、判定手段を実現している。
【００２０】
図２は、Ｉ２Ｃバス１Ａに接続されるＥＥＰＲＯＭ２０，３０の一例であって、それぞれの容量及びパッケージに応じたバイトアドレスを説明するための図である。同図に示すように、パッケージである、ＤＩＰのＰ，Ｌ及びＳＯＩＣのＪ，Ｗは、メモリ容量に関わらず、シリーズ共通となっている。また、同図に示すように、容量が１Ｋビット〜１６Ｋビットのバイトアドレスは１バイト、３２Ｋビット〜２５６Ｋビットのバイトアドレスは２バイトとなっている。
【００２１】
なお、同図において、
Ｐ：  ＰＤＩＰ
Ｋ：  ＳＯＩＣ（ＥＩＡＪ）
Ｊ：  ＳＯＩＣ（ＪＥＤＥＣ）
Ｌ：  ＰＤＩＰ（Ｌｅａｄ  ｆｒｅｅ，Ｈａｌｏｇｅｎ  ｆｒｅｅ）
Ｗ：  ＳＯＩＣ，ＪＥＤＥＣ（Ｌｅａｄ  ｆｒｅｅ，Ｈａｌｏｇｅｎ  ｆｒｅｅ）
Ｘ：  ＳＯＩＣ，ＥＩＡＪ（Ｌｅａｄ  ｆｒｅｅ，Ｈａｌｏｇｅｎ  ｆｒｅｅ）
である。
【００２２】
図３は、Ｉ２Ｃバス１Ａ上のコマンドフォーマット及びアドレス情報を説明するための図である。図３（ａ）に示すように、容量が１Ｋビット〜１６Ｋビットのバイトアドレスは上述したように１バイト（１ｓｔ部分）となり、３２Ｋビット〜２５６Ｋビットのバイトアドレスは上述したように２バイト（１ｓｔ部分＋２ｎｄ部分）となっている。
【００２３】
また、図３（ａ）に示すＡ２〜Ａ０は、図３（ｂ）に示すＥＥＰＲＯＭ２０，３０のアドレスを示している。すなわち、たとえば図３（ｂ）に示すように、Ａ２〜Ａ０がいずれも電源Ｖｃｃに接続されている場合は、Ａ２，Ａ１，Ａ０が”１１１”となり、図３（ｃ）に示すように、Ａ２〜Ａ０がいずれもＧＮＤに接続されている場合は、Ａ２，Ａ１，Ａ０が”０００”となる。また、図３（ｄ）に示すように、Ａ２が電源Ｖｃｃに接続され、Ａ１〜Ａ０がＧＮＤに接続されている場合は、”１００”となる。
【００２４】
図４は、Ｉ２Ｃバス１Ａでの書き込み処理と読み出し処理とにおける転送フォーマットの一例を示す図である。まず、図４（ａ）は、書き込み処理での転送フォーマットであり、スレーブアドレス＋バイトアドレス＋データ１〜ｍとなっている。また、書き込み処理には、図４（ｂ）に示すように、アドレス指定処理がある。これは、スレーブアドレスを指定するものである。
【００２５】
一方、読み出し処理は、図４（ｃ）に示すように、スレーブアドレス＋データ１〜ｍとなっている。ただし、読み出し処理では、アドレス指定は無く、現在アドレスからの読み出しが行われる。
【００２６】
ここで、Ｉ２Ｃバス１Ａでは、上述したように、デバイスを複数接続することが可能である。そのため、スレーブアドレスの１バイト目に相手先を限定するアドレスデータが書き込まれる。また、スレーブアドレスと同じバイト内に、書き込み処理ではライトコマンド（Ｗ）のデータが付けられ、読み出し処理ではリードコマンド（Ｒ）のデータが付けられる。なお、Ｉ２Ｃバス１Ａを用いたＥＥＰＲＯＭ２０，３０では、上述したように、メモリ内のアドレス指定がバイトアドレスで指定される。
【００２７】
図５は、Ｉ２Ｃバス１Ａでの読み出し処理の手順の一例を示す図である。まず、図５（ａ）は、バイトアドレスが１バイトのＥＥＰＲＯＭ２０に対する読み出し処理の手順を示すものであり、マスタであるＣＰＵ１０から出力された信号ＳＤＡでは、スタートビットに続いて”１０１０”の後にスレーブアドレスがＡ２〜Ａ０の形態で指定され、その後にライトコマンドが続く。
【００２８】
このスレーブアドレスを確認したＥＥＰＲＯＭ２０は、ＡＣＫで示すアクノリッジ信号をＣＰＵ１０に返すと、次の１バイトでバイトアドレスの情報を取り込んでアクノリッジ信号をＣＰＵ１０に返す。すると、ＣＰＵ１０からスタートビットとそれに続くスレーブアドレスとリードコマンドとが出力される。アクノリッジ信号をＣＰＵ１０に返すと、ＥＥＰＲＯＭ２０は読み出した８ビットのデータをＣＰＵ１０に向けて出力する。ＣＰＵ１０は、継続して読み出す場合はアクノリッジを出力して次の読み出し処理を行い、読み出しを終了する場合は、ノーアクノリッジに続いてストップビットを出力して読み出し処理が終了する。
【００２９】
図５（ｂ）は、バイトアドレスが２バイトのＥＥＰＲＯＭ３０に対する読み出し処理の手順を示すものであり、ＣＰＵ１０から出力された信号ＳＤＡでは、スタートビットに続いて”１０１０”の後にスレーブアドレスがＡ２〜Ａ０の形態で指定され、その後にライトコマンドが続く。
【００３０】
このスレーブアドレスを確認したＥＥＰＲＯＭ３０は、ＡＣＫで示すアクノリッジ信号をＣＰＵ１０に返すと、次の１バイトでバイトアドレスの上位ビット側の情報（１ｓｔバイトアドレス）を取り込んでアクノリッジ信号をＣＰＵ１０に返す。次いで、次の１バイトでバイトアドレスの下位ビット側の情報（２ｎｄバイトアドレス）を取り込んでアクノリッジ信号をＣＰＵ１０に返す。
【００３１】
すると、ＣＰＵ１０からスタートビットとそれに続くスレーブアドレスとリードコマンドとが出力される。アクノリッジ信号をＣＰＵ１０に返すと、ＥＥＰＲＯＭ３０は読み出した８ビットのデータをＣＰＵ１０に向けて出力する。ＣＰＵ１０は、継続して読み出す場合はアクノリッジを出力して次の読み出し処理を行い、読み出しを終了する場合は、ノーアクノリッジに続いてストップビットを出力して読み出し処理が終了する。
【００３２】
すなわち、ここでは読み出し処理について示しているが、ここでの説明から分かる通り、ＥＥＰＲＯＭ２０，３０の容量に応じてバイトアドレスが１バイトか２バイトかで異なるため、そのバイトアドレスに応じて所望の転送フォーマットが生成されることになる。
【００３３】
次に、転送フォーマット判定方法について説明する。まず、転送フォーマット判定の概要について説明すると、図６に示すように、テストデータがセットされる（ステップＳ１）。ここでは、転送フォーマットに応じた特定アドレスとしてのテストアドレスに異なる値が書き込まれるように制御される。
【００３４】
次いで、テストアドレスがセットされる（ステップＳ２）。ここでは、転送フォーマットによらず、テストアドレスになるように制御される。次いで、テストデータがリードされる（ステップＳ３）。ここでは、テストアドレスに書き込まれたデータが読み出される。次いで、フォーマット判定が行われる（ステップＳ４）。ここでは、読み出された値により、転送フォーマットが判別される。
【００３５】
次に、転送フォーマット判定を具体的に説明する。なお、以下において、Ｔｙｐｅ＿２Ｋは上述したＥＥＰＲＯＭ２０を示し、Ｔｙｐｅ＿６４Ｋは上述したＥＥＰＲＯＭ３０を示している。なお、以下に説明するテストデータを、０ｘＡＡとする。
【００３６】
まず、図７において、テストデータを書き込むために、１バイト目〜５バイト目に次のようなテストデータをセットする（ステップＳ１０）。なお、以下に示す０ｘの後のデータは１６進数である。
１バイト目：ライトコマンドライト
２バイト目：０ｘ００ライト
３バイト目：０ｘ００ライト
４バイト目：０ｘ０１ライト
５バイト目：ｔｅｓｔ＿ｄａｔａライト
【００３７】
なお、５バイト目のテストデータにおいては、１バイト前のアドレスデータと異なることが必要であるため、たとえば０ｘＡＡとしたデータとする。
【００３８】
すなわち、図８（ａ）に示すように、Ｔｙｐｅ＿２ＫのＥＥＰＲＯＭ２０では、１バイト目がライトコマンド付きのスレーブアドレスとなり、２バイト目がアドレス０ｘ００のバイトアドレスとなり、３バイト目がアドレス０用のデータとなり、４バイト目がアドレス１用のデータとなり、５バイト目がアドレス２用のデータとなる。
【００３９】
また、Ｔｙｐｅ＿６４ＫのＥＥＰＲＯＭ３０では、１バイト目がライトコマンド付きのスレーブアドレスとなり、２バイト目がアドレス０ｘ００００のバイトアドレスとなり、３バイト目がアドレス０ｘ００００のバイトアドレスとなり、４バイト目がアドレス０用のデータとなり、５バイト目がアドレス１用のデータとなる。なお、ＥＥＰＲＯＭ無とは、ＥＥＰＲＯＭが実装されていない状態であり、ＡＣＫが返らないことで判別できる。
【００４０】
これにより、図８（ｂ）に示すように、Ｔｙｐｅ＿２ＫのＥＥＰＲＯＭ２０では、アドレス０に０ｘ００のデータがセットされ、アドレス１に０ｘ０１のデータがセットされ、アドレス２にテストデータである０ｘＡＡのデータがセットされる。
【００４１】
また、Ｔｙｐｅ＿６４ＫのＥＥＰＲＯＭ３０では、アドレス０に０ｘ０１のデータがセットされ、アドレス１に０ｘＡＡのデータがセットされる。ただし、アドレス２は未書込となる。
【００４２】
次に、１バイト目〜３バイト目に次のようなテストアドレスをセットする（ステップＳ２０）。
１バイト目：ライトコマンドライト
２バイト目：０ｘ００ライト
３バイト目：０ｘ０１ライト
【００４３】
すなわち、図８（ｃ）に示すように、Ｔｙｐｅ＿２ＫのＥＥＰＲＯＭ２０では、１バイト目がライトコマンド付きのスレーブアドレスとなり、２バイト目がアドレス０のバイトアドレスとなり、３バイト目がデータ書込後にインクリメントされた０ｘ０１のデータとなる。
【００４４】
また、Ｔｙｐｅ＿６４ＫのＥＥＰＲＯＭ３０では、１バイト目がライトコマンド付きのスレーブアドレスとなり、２バイト目がアドレス０ｘ０００１のバイトアドレスとなり、３バイト目がアドレス０ｘ０００１のバイトアドレスとなる。
【００４５】
これにより、図８（ｄ）に示すように、Ｔｙｐｅ＿２ＫのＥＥＰＲＯＭ２０での現アドレスはアドレス１用の０ｘ０１となり、Ｔｙｐｅ＿６４ＫのＥＥＰＲＯＭ３０での現アドレスはアドレス１用の０ｘ０００１となる。
【００４６】
次に、テストデータを読み出す（ステップＳ３０）。ここでは、１バイト目がリードコマンドで、２バイト目がアドレス１用のデータ読み出しで、３バイト目がアドレス２用のデータ読み出しである。
【００４７】
そして、アドレス１用のデータ読み出しが行われる（ステップＳ４０ａ）。ここでは、図８（ｅ）に示すように、アドレス１用のデータ読み出しで、Ｔｙｐｅ＿２ＫのＥＥＰＲＯＭ２０での０ｘ０１が読み出され、Ｔｙｐｅ＿２ＫのＥＥＰＲＯＭ２０での０ｘＡＡであるテストデータが読み出されることになる。これにより、転送フォーマットは１バイトアドレスであることが判定される（ステップＳ４０ｂ）。
【００４８】
これに対し、（ステップＳ４０ａ）でのアドレス１用のデータ読み出しでテストデータが読み出されなかった場合は、アドレス２用のデータ読み出しが行われる（ステップＳ４０ｃ）。ここでは、図８（ｅ）に示すように、アドレス２用のデータ読み出しで、Ｔｙｐｅ＿２ＫのＥＥＰＲＯＭ２０での０ｘＡＡであるテストデータが読み出されるが、Ｔｙｐｅ＿２ＫのＥＥＰＲＯＭ２０では未読出となる。これにより、転送フォーマットは２バイトアドレスであることが判定される（ステップＳ４０ｄ）。
【００４９】
なお、（ステップＳ４０ｃ）でテストデータが読み出されなかった場合は、転送フォーマットのタイプエラーとなる。
【００５０】
このように、本実施例では、マスタとしてのＣＰＵ１０により、スレーブとしてのＥＥＰＲＯＭ２０及びＥＥＰＲＯＭ３０の特定アドレスに異なるデータが書き込まれた後、ＥＥＰＲＯＭ２０及びＥＥＰＲＯＭ３０の特定アドレスから書き込まれたデータが読み出され、その読み出されたデータに基づき、ＥＥＰＲＯＭ２０及びＥＥＰＲＯＭ３０の転送フォーマットを判定するようにしたので、シリアルインターフェースとしてのＩ２Ｃバス１ＡにおけるＥＥＰＲＯＭ２０及びＥＥＰＲＯＭ３０内のアドレスを指定するアドレス情報のバイト数の相違に伴う転送フォーマットを判定することができる。
【００５１】
なお、本実施例では、スレーブを２個のＥＥＰＲＯＭ２０，３０とした場合で説明したが、この例に限らず、スレーブは１個であってもよいし、３個以上であってもよいことは勿論である。
【産業上の利用可能性】
【００５２】
ＰＩＣやＲＳ２３２Ｃにおけるシリアル通信においても適用可能である。
【図面の簡単な説明】
【００５３】
【図１】本発明の転送フォーマット判定装置をコンピュータシステムに適用した場合の一実施例を説明するための図である。
【図２】図１のＩ２Ｃバスに接続されるＥＥＰＲＯＭの一例であって、それぞれの容量及びパッケージに応じたバイトアドレスを説明するための図である。
【図３】図１のＩ２Ｃバス上のコマンドフォーマット及びアドレス情報を説明するための図である。
【図４】図１のＩ２Ｃバスでの書き込み処理と読み出し処理とにおける転送フォーマットの一例を示す図である。
【図５】図１のＩ２Ｃバスでの読み出し処理の手順の一例を示す図である。
【図６】図１のコンピュータシステムにおける転送フォーマット判定の概要について説明するためのフローチャートである。
【図７】図１のコンピュータシステムにおける転送フォーマット判定を具体的に説明するためのフローチャートである。
【図８】図１のコンピュータシステムにおける転送フォーマット判定を具体的に説明するための図である。
【符号の説明】
【００５４】
１Ａ  Ｉ２Ｃバス
１ａ  クロック信号線
１ｂ  データ信号線
２０  ＥＥＰＲＯＭ
３０  ＥＥＰＲＯＭ
【図１】
2007305035.tif 000003
【図２】
2007305035.tif 000004
【図３】
2007305035.tif 000005
【図４】
2007305035.tif 000006
【図５】
2007305035.tif 000007
【図６】
2007305035.tif 000008
【図７】
2007305035.tif 000009
【図８】
2007305035.tif 000010