直列通信すなわち同期シリアル通信を用いて、CPUと呼称される中央処理装置が、書換え可能な記憶装置に対して、書込み、読込み等の制御をする場合、CPUは記憶装置に対して、CPUの内部に搭載されている同期シリアル通信専用のペリフェラルを使用して行うと、前出の従来技術で説明したような複雑な操作が不要になるが、CPUの同期シリアル専用レジスタの固定データ幅(ビット数)でしか、データ送受が出来なくなる。この場合の課題について説明する。
CPUと記憶装置間の通信では、CPUは記憶装置に、通信の開始を示すスタートビット、データの書込み読込み等の制御内容を示す制御コード、且つ、制御する記憶装置内部のデータ格納エリアを示すアドレスデータを直列データとして送信し、その後、記憶装置にデータを送信(書込み)もしくは、記憶装置からデータを受信する(読み出す)のが一般的である。
図3に、前記CPU1と記憶装置2の、機能構成の概要を示す。CPU1には、シリアルデータを受信するための受信ポートa,送信ポートb及びデータをシリアル送,受信するための同期クロック信号SYNC CLKを出力する同期クロック出力ポートcがある。メイン制御部105がプログラムメモリROM 104からパラレル内部バス107に読み出すプログラムコードを、シリアルポート制御108が解読(デコード)して、該プログラムコードが指定する制御内容に対応して、内部バス107の送信データの、DO7からDO0からなる8ビット(1バイト)の送信レジスタ109へのパラレル格納と送信ポートbへのシリアル出力,同期クロック発生部111,データ送信部112,データ受信部113,DI7からDI0からなる8ビット受信レジスタ110への受信データのシリアル格納と内部バス107へのパラレル出力、等を制御する。
CPU1のメイン制御部105は、記憶装置2にデータを格納するとき、シリアルポート制御108によって、内部バスより記憶装置2に送信する16ビット(2バイト)の制御データおよびアドレスデータならびに8ビット(1バイト)の送信データ(格納用データ)を送信レジスタ109に、1バイト毎に書込み、書込みが終了する毎に、データ送信112に転送し、送信レジスタ109のパラレルデータ(送信データ:格納用データ)を、同期クロック発生部111が出力する同期クロック信号に同期してシリアルに読み出して、データ送信112によって記憶装置2にシリアルに出力する。メイン制御部105は、記憶装置2から格納データを読み出すとき、送信時と同様に16ビット(2バイト)の制御データおよびアドレスデータを出力し、これに応答して記憶装置2が受信ポートaに送り出してくる1バイトの格納データ(読み出しデータ)を、受信レジスタ110に、同期クロック信号に同期して格納する。この1バイトの受信データは、内部バス107を経由し、CPU1内の他の内部レジスタ106又はCPU1外に転送される。
記憶装置2には、CPU1がシリアル出力する送信データを受信する受信端子eと、CPU1に記憶データをシリアル送信する送信端子dと、これらのシリアルデータを受,送信する場合に同期クロック信号を受信する同期クロック受信端子fがある。記憶装置2にはさらに、CPU1から送信されたスタートビットを検出するスタートビット検出114,データの書き込み指示か、読み出し指示かを判定する書き込み制御115,アドレス数1024個(アドレス0〜1023)で、各アドレスの読み書きデータが8ビット(1バイト)であるデータ格納エリア119,該エリアのアドレスを指定するアドレス指定116,受信データ書込み117,格納データ読出し118、等がある。
記憶装置2は、CPU1が出力するデータを、同期クロック受信端子fに入力される同期クロック信号に同期して、受信端子eに入力されたCPU1からの受信データを取り込み、スタートビット検出部114でスタートビットを検出した後、書込み/読込み判定部115により、データを格納エリア119に書き込むか、読み出すかを判定し、判定した後、アドレス指定部116により、データ格納エリア119内の、アクセスするアドレスを指定する。書込み制御の場合は、受信データ書込み部117により、受信したアドレスA9〜A0で指定されるデータ格納エリア119内アドレスに、受信した1バイトの送信データD7〜D0を格納する。読出し制御の場合は、格納データ読出し部118が、受信したアドレスA9〜A0で指定されるデータ格納エリア119内のアドレスに格納された1バイトのデータD7〜D0をデータを読出し、送信端子dからCPU1に送信する。
図4に、CPU1が記憶装置2にデータを送信して格納するときの、メイン制御部105の送信動作制御を示し、図7の(a)に、該送信のときの、各バイト毎に順次に、送信レジスタ109にパラレルに書込みそして送信レジスタ109からシリアルに出力する3バイトのデータを示し、図7の(b)には、該3バイトデータの、CPU1から記憶装置2への送信タイミングを示す。
CPU1のメイン制御部105はまず、送信レジスタ109に、図7の(a)に示す第1バイトデータ120を格納する(図4のステップS1)。つまり、送信レジスタ109のビット格納位置、DO7に"0"、DO6に"0"、DO5に"0"、DO4に"1"、DO3に"C1"、DO2に"C0"、DO1に"A9"、そしてDO0に"A8"を格納する(ステップS1)。
ここで、DO7〜DO5の"0"はダミービット、次のDO4の"1"がスタートビット、次のDO3,DO2のC1,C0は制御コードビット、DO1,DO0のA9,A8は、10ビットで表されるデータ格納エリア119のアドレスの上位2ビットを表す。この構成の1バイトデータが、同期クロック信号であるSYNC_CLKの立ち下りエッジに同期して、CPU_DATA_OUT信号として、最初に記憶装置2に出力される(ステップS2〜S5)。
ここで、CPU1が記憶装置2にデータを送信して格納するとき、図7(b)の下段、CPU_DATA_INとして示されるように、記憶装置は常に"1"をCPU2に対し出力する。このためCPU1はステップS2にて記憶装置2から出力されるデータを受信レジスタ110に格納する。そしてステップS3にて受信レジスタ110への8ビットのデータの格納を確認し、ステップS5にて、ステップS2にて受信レジスタ110に格納したデータをクリアする(以下、ステップS7,S8,S10,ステップS12,S13も同様)。
次に、メイン制御部105は、送信レジスタ109に、図7の(a)に示す第2バイトデータ121を格納する(ステップS6)。すなわち、送信レジスタ109の、DO7に"A7"、DO6に"A6"、DO5に"A5"、DO4に"A4"、DO3に"A3"、DO2に"A2"、DO1に"A1"、DO0に"A0"を格納する(ステップS6)。そして第1バイトデータと同様に記憶装置2に送信する(ステップS7〜ステップS10)。ここで、A7〜A0はデータ格納エリア119のアドレスを示す下位8ビットのデータを表す。
記憶装置2は、第1バイトデータの最下位ビットであるA0を受信すると、A0受信完了すなわち、制御コードおよびアドレスデータの受信完了を表す、A0認識ビット="0"を、A0が出力された次のSYNC_CLKの立ち上りに同期して、CPU1にCPU_DATA_IN信号として出力する。
メイン制御部105は第2バイトデータの送信の次に、図7の(a)に示す第3バイトデータ122を送信レジスタ109に格納する(ステップS11)。すなわち、送信レジスタ109の、DO7に"D7"、DO6に"D6"、DO5に"D5"、DO4に"D4"、DO3に"D3"、DO2に"D2"、DO1に"D1"、DO0に"D0"を格納する(ステップS11)。D7〜D0が、1バイトの送信データ(記憶装置2への書き込みデータ)である。メイン制御部105はこの第3バイトデータを、SYNC_CLKの立ち下りエッジに同期して、シリアルに記憶装置2に送出する(ステップS12〜S14)。記憶装置2は、該送信データD7〜D0を、データ格納エリア119の、先に受信したアドレスA9〜A0で指定されるデータ格納エリア119内のアドレスに格納する。これは、記憶装置2のデータ格納エリア119の、任意の1つのアドレスに対して、CPU1が1回のデータ送信(第1〜第3バイトの順次送信)で、1バイトのデータを書込むことができることを表している。これは、先に送信したスタートビットの前に送信した3ビットの、記憶装置2の制御とは無関係なダミーデータ、つまり擬似的なデータ、を記憶装置2に送信するシリアルデータ中に入れることにより、シリアル送信データを整数バイトとし、しかも送信データ(D7〜D0)の送信がバイト単位となるようにしたものである。
図8の(a)に、CPU1が記憶装置2からデータを読み出すときに、読み出しを指示する2バイトの制御データ123,124を示し、図8の(b)に、該読み出し指示に対応して記憶装置2がCPU1にシリアル送信したデータの、CPU1内部の受信レジスタ110の格納状態を示し、図8の(c)には、CPU1から記憶装置2への2バイトの制御データと、記憶装置2からCPU1への、A0認識ビット="0"と読み出しデータD7〜D0の、CPU1における送,受信タイミングを示す。
この場合CPU1が記憶装置2に送信する制御データは、図8の(a)に示す2バイト123,124であって、そのビット構成は、DO3,DO2の制御コードビットC1,C0の内容が異なるだけで、図7の(a)に示す記憶装置2にデータ書き込みを指示するときと同じである。DO3,DO2の制御コードビットC1,C0の内容が異なるだけである。すなわち、CPU1が記憶装置2に最初に送信する第1バイト123は、3ビットのダミーデータ,1ビットのスタートビット,2ビットの制御コードおよびアドレスデータの上位2ビットであり、第2バイトは、アドレスデータの下位8ビットである。
CPU1は、SYNC_CLKを出力し、最初の立ち上りエッジに同期し、CPU_DATA_IN信号としてCPU1の受信ポートに入力されている記憶装置2からの送信信号を受信レジスタに格納する。記憶装置2は、CPU1がダミービット、スタートビット、制御コード及びアドレスデータを受信し、最後のアドレスデータビットA0を受信するまでは常に、CPU1に"1"を出力する。つまり、CPU1の受信レジスタ110に、記憶装置2からの第1バイト126(シリアル受信データの先頭8ビット)および第2バイト127(シリアル受信データの第9〜第16ビット)を格納する間は、格納データの各ビットは全て"1"となる。
記憶装置2は、通信を開始してから17回目のSYNC_CLKの立ち上りエッジで、A0認識ビットである"0"を出力し、その後から指定されたアドレスに格納されたデータを出力する。この時、CPU1の受信レジスタ110のDI7に、第3バイト128の先頭ビットとして"A0認識ビット"="0"が格納されてしまう。すなわち、記憶装置2が読み出し出力した1アドレス8ビット分のデータと、1回にCPU1の受信レジスタ110に格納されるデータが1対1にならない。つまり、ビットズレが発生する。この場合CPU1は、第3バイト128の第2ビット〜第8ビットのデータD7〜D1と、受信レジスタ110に次に受信した第4バイトの第1ビットのデータD0とを抽出して1バイトのデータD7〜D0として内部バス107に送出しなければならない。
このように、読み込んだデータを再度演算する必要がでてくるため、メモリデータ読み込みのプログラムが複雑な構成になってしまう。上述のように、CPU1が読み込み制御を実施した時、書き込み制御と同じ数のダミーデータを制御コードの前に入れた場合、上述のビットズレが発生してしまう。これでは、ビットズレを補正するためにCPU1は、受信レジスタ110に順次に受信した前後2バイトのデータに対して追加のデータ処理を実施する必要があり、同期シリアル通信専用のペリフェラルを使用するにもかかわらず、プログラムの簡素化をすることが出来なくなってしまう。
本発明は、上述のビットズレを防止することを目的とする。
本発明では、記憶装置に対してデータを書き込みまた記憶装置からデータを読み出すメモリ読み書き装置が、記憶装置からのデータ読み込み時には、記憶装置から読み出したデータの先頭が受信レジスタの先頭位置に格納されるように、記憶装置に送出する制御データのシリアルビット配列上のダミーデータの配置を、記憶装置へのデータ書き込み時とは変更する。これを実現する本発明の読み書き装置は次の通りである。なお、理解を容易にするために括弧内には、図面に示し後述する実施例の対応要素の符号又は対応事項を、例示として参考までに付記した。
本発明のメモリ読み書き装置は、アドレスデータの受信を完了するとアドレス受信完了(A0認識ビット:「0」)を返信する記憶装置の、1つのアドレスに読み書きするデータのビット数B(B=8)の、送信レジスタ(109)および該ビット数Bの受信レジスタ(110)と、前記送信レジスタのデータを前記記憶装置にシリアル送信する送信ポート(b)と、前記記憶装置がシリアル出力するデータを受信し前記受信レジスタに格納する受信ポート(a)と、前記送信ポートおよび受信ポートを介する前記記憶装置に対するシリアルデータ送受信のための同期クロック信号(SYNC CLK)を出力する同期クロック出力ポート(c)とを備える。当該メモリ読み書き装置は更に制御手段(105)を備える。制御手段(105)は、ダミービット(DO7〜DO5:0),スタートビット(DO4:1),制御コードビット(DO3,DO2:C1,C0)およびアドレスデータビット(DO1,DO0,DO7〜DO0:A9〜A0)を、この順のシリアル配列で、ビット数Bと1以上の整数n(n=2)との積B×n(16)とし、該シリアル配列の先頭からビット数B(B=8)のビット群ごとに、前記送信レジスタ(109)に格納し前記送信ポート(b)を介して前記記憶装置に前記同期クロック信号と共にシリアル送信し、該シリアル配列に続けてビット数Bの送信データ(D7〜D0)を前記送信レジスタに格納し前記送信ポートを介して前記記憶装置に前記同期クロック信号と共にシリアル送信することにより、前記記憶装置に前記送信データを書き込み(図4,図7)、ダミービット(DO7,DO6:0),スタートビット(DO5:1),制御コードビット(DO4,DO3:C1,C0),アドレスデータビット(DO2〜DO0,DO7〜DO1:A9〜A0)および1個のダミービット(DO0:0)を、この順のシリアル配列で、ビット数Bと1以上の整数nとの積B×nとし、該シリアル配列の先頭からビット数Bのビット群ごとに、前記送信レジスタに格納し前記送信ポートを介して前記記憶装置に前記同期クロック信号と共にシリアル送信し、これに応答して前記記憶装置が前記受信ポート(a)に与える信号を前記同期クロック信号に同期して前記受信レジスタ(110)にビット数Bのビット群として格納し、該受信レジスタの、最後尾の受信信号を表すビットが、前記アドレス受信完了(A0認識ビット:「0」)となると、その後に前記受信レジスタに格納されたビット数Bのビット群を受信データとして処理することにより、前記記憶装置からデータを読み出す(図5,図6)。
本発明によれば、記憶装置に対してデータを書き込みまた記憶装置からデータを読み出すメモリ読み書き装置が、記憶装置からのデータ読み込み時には、記憶装置から読み出したデータの先頭が受信レジスタの先頭位置に格納されるように、記憶装置に送出する制御データのシリアルビット配列上のダミーデータの配置を、記憶装置へのデータ書き込み時とは変更する。その結果、上述のビットズレを防止することが可能となる。
本発明の他の目的および特徴は、図面を参照した以下の実施例の説明より明らかになろう。
実施例によれば、データを記憶装置2に書き込むときの制御データがB×n(8×2=16)、送信レジスタ(109)および記憶装置2の読み書きデータ単位がBビットであるので、送信レジスタからn(2)回の制御データのデータ送信と、それに続けたビット数Bの書き込みデータの1回の送信により、記憶装置2に、その書き込み単位Bのビット数でデータの書き込みが行われる(図4,図7)。
記憶装置2から格納データを読み出すときには(図5,図6)、CPU1から記憶装置2に送られる制御データが、書き込み時と同じくB×nであって、Bビットずつn回送出されるが、最後に送出されるBビットは、最後尾がダミー1ビットで、その前がアドレスデータビットであって、該ダミー1ビットの直前がアドレスデータの最後のビットA0となる(図6の132)。これにより記憶装置2が該A0を認識してCPU1に送出するアドレス受信完了(A0認識ビット:「0」)が、受信レジスタ(110)のB単位のデータの最後尾となり(図6の135)、受信レジスタ(110)の次のB単位のデータが、記憶装置2が読み出し送信したB単位のデータそのものとなる(図6の136)。したがって、記憶装置2が読み出し出力した1アドレスBビット分のデータと、1回に受信レジスタ(110)に格納されるデータが1対1となる。つまり、ビットズレを生じない。
その結果、受信レジスタに2回に分離して格納される読み出しデータを1アドレスBビット分のデータに編成するデータ処理が不要になる。すなわち、このデータ処理のためのプログラムを削減してメモリデータ読み書きプログラムを簡素化できる。簡素化することにより、プログラム容量が低減し、読み書き装置のコストも低減できる。
すなわち実施例では、メモリ読み書き装置(CPU1)は、アドレスデータの受信を完了するとアドレス受信完了(A0認識ビット:「0」)を返信する記憶装置2の1つのアドレスに対して読み書きするデータのビット数B(B=8)の送信レジスタ(109)を有する。メモリ読み書き装置1は更に、ビット数Bの受信レジスタ(110)、前記送信レジスタのデータを前記記憶装置2にシリアル送信する送信ポート(b)、前記記憶装置2がシリアル出力するデータを受信し前記受信レジスタに格納する受信ポート(a)、前記送信ポートおよび受信ポートを介する前記記憶装置2に対するシリアルデータ送受信のための同期クロック信号(SYNC CLK)を出力する同期クロック出力ポート(c)を有する。又メモリ読み書き装置1は、制御手段(105)により、ダミービット(DO7〜DO5:0),スタートビット(DO4:1),制御コードビット(DO3,DO2:C1,C0)およびアドレスデータビット(DO1,DO0,DO7〜DO0:A9〜A0)を、この順のシリアル配列で送信する。その際、ビット数Bと1以上の整数n(n=2)との積B×n(16)のビット数のデータを送信する。その際、上記シリアル配列の先頭からビット数B(B=8)のビット群ごとに、前記送信レジスタ(109)に格納し前記送信ポート(b)を介して前記記憶装置2に前記同期クロック信号と共にシリアル送信する。そして前記シリアル配列に続けてビット数Bの送信データ(D7〜D0)を前記送信レジスタに格納し、前記送信ポートを介して前記記憶装置2に前記同期クロック信号と共にシリアル送信する(図4,図7)。
そして前記制御手段(105)が、前記ダミービット(DO7〜DO5:0)の数より1少ないダミービット(DO7,DO6:0),スタートビット(DO5:1),制御コードビット(DO4,DO3:C1,C0),アドレスデータビット(DO2〜DO0,DO7〜DO1:A9〜A0)および1個のダミービット(DO0:0)を、この順のシリアル配列で、ビット数Bと1以上の整数nとの積B×nのビット数のデータとして送信する。その際、該シリアル配列の先頭からビット数Bのビット群ごとに、前記送信レジスタに格納し前記送信ポートを介して前記記憶装置2に前記同期クロック信号と共にシリアル送信する。そしてこれに応答して前記記憶装置2が前記受信ポート(a)に与える信号を前記同期クロック信号に同期して前記受信レジスタ(110)にビット数Bのビット群として格納する。そして該受信レジスタの、最後尾の受信信号を表すビットが、前記アドレス受信完了(A0認識ビット:「0」)となると、その後に前記受信レジスタに格納されたビット数Bのビット群を受信データとして処理する(図5,図6)。このようにしてメモリ読み書き装置1は記憶装置2からデータを読み出す。
これによれば、データを記憶装置2に書き込むときの制御データがB×n(8×2=16)、送信レジスタ(109)および記憶装置2の読み書きデータ単位がBビットである。その結果、送信レジスタからn(2)回の制御データのデータ送信と、それに続けたビット数Bの書き込みデータの1回の送信により、記憶装置2に、その書き込み単位Bのビット数でデータの書き込みが行われる(図4,図7)。
記憶装置2から格納データを読み出すときには(図5,図6)、CPU1から記憶装置2に送られる制御データが、書き込み時と同じくB×nであって、Bビットずつn回送出されるが、最後に送出されるBビットは、最後尾がダミー1ビットで、その前がアドレスデータビットであって、該ダミー1ビットの直前がアドレスデータの最後のビットA0となる(図6の132)。これにより記憶装置2が該A0を認識してCPU1に送出するアドレス受信完了(A0認識ビット:「0」)が、受信レジスタ(110)のB単位のデータの最後尾となり(図6の135)、受信レジスタ(110)の次のB単位のデータが、記憶装置2が読み出し送信したB単位のデータそのものとなる(図6の136)。したがって、記憶装置2が読み出し出力した1アドレスBビット分のデータと、1回に受信レジスタ(110)に格納されるデータが1対1となる。つまり、ビットズレを生じない。その結果、受信レジスタに2回に分離して格納される読み出しデータを1アドレスBビット分のデータに編成するデータ処理が不要になる。
すなわち実施例では、記憶装置2はアドレスデータの受信を完了するとアドレス受信完了(A0認識ビット:「0」)を返信し、1つのアドレスに1バイトデータを読み書きする構成を有する。メモリ読み書き装置1は、記憶装置2の該1バイトデータのビット数(=8)と同数ビット数の送信レジスタ(109)および該ビット数の受信レジスタ(110)、前記送信レジスタのデータを前記記憶装置2にシリアル送信する送信ポート(b)、前記記憶装置2がシリアル出力するデータを受信し前記受信レジスタに格納する受信ポート(a)、前記送信ポートおよび受信ポートを介する前記記憶装置2に対するシリアルデータ送受信のための同期クロック信号(SYNC CLK)を出力する同期クロック出力ポート(c)を有する。又メモリ読み書き装置1の制御手段(105)は、ダミービット(DO7〜DO5:0),スタートビット(DO4:1),制御コードビット(DO3,DO2:C1,C0)およびアドレスデータビット(DO1,DO0,DO7〜DO0:A9〜A0)を、この順のシリアル配列で、2バイト(16)として送信する。その際、該シリアル配列の先頭から1バイトのビット群ごとに、前記送信レジスタ(109)に格納し前記送信ポート(b)を介して前記記憶装置2に前記同期クロック信号と共にシリアル送信する。その際、該シリアル配列に続けて1バイトの送信データ(D7〜D0)を前記送信レジスタに格納し前記送信ポートを介して前記記憶装置2に前記同期クロック信号と共にシリアル送信することにより、前記記憶装置2に前記送信データを書き込む(図4,図7)。
そして制御手段(105)が、前記ダミービット(DO7〜DO5:0)の数より1少ないダミービット(DO7,DO6:0),スタートビット(DO5:1),制御コードビット(DO4,DO3:C1,C0),アドレスデータビット(DO2〜DO0,DO7〜DO1:A9〜A0)および1個のダミービット(DO0:0)を、この順のシリアル配列で、2バイトとして送信する。その際、該シリアル配列の先頭から1バイトのビット群ごとに、前記送信レジスタに格納し前記送信ポートを介して前記記憶装置2に前記同期クロック信号と共にシリアル送信する。そしてこれに応答して前記記憶装置2が前記受信ポート(a)に与える信号を前記同期クロック信号に同期して前記受信レジスタ(110)に1バイトのビット群として格納する。その際、該受信レジスタの、1バイトの最後尾の受信信号を表すビットが、前記アドレス受信完了(A0認識ビット:「0」)となると、その後に前記受信レジスタに格納された1バイトのビット群を受信データとして処理することにより(図5,図6)、前記記憶装置2からデータを読み出す。
これによれば、データを記憶装置2に書き込むときの制御データが2バイト(8×2=16)、送信レジスタ(109)および記憶装置2の読み書きデータ単位が1バイトであるので、送信レジスタから2回の制御データのデータ送信と、それに続けた1バイトの書き込みデータの1回の送信により、記憶装置2に、その書き込み単位1バイトでデータの書き込みが行われる(図4,図7)。
記憶装置2から格納データを読み出すときには(図5,図6)、CPU1から記憶装置2に送られる制御データが、書き込み時と同じく2バイトであって、1バイトずつ2回送出されるが、最後に送出される1バイトは、最後尾がダミー1ビットで、その前がアドレスデータビットであって、該ダミー1ビットの直前がアドレスデータの最後のビットA0となる(図6の132)。これにより記憶装置2が該A0を認識してCPU1に送出するアドレス受信完了(A0認識ビット:「0」)が、受信レジスタ(110)の1バイトのデータの最後尾となり(図6の135)、受信レジスタ(110)の次の1バイトのデータが、記憶装置2が読み出し送信したバイト単位のデータそのものとなる(図6の136)。したがって、記憶装置2が読み出し出力した1アドレスの1バイトのデータと、1回に受信レジスタ(110)に格納されるデータが1対1となる。つまり、ビットズレを生じない。その結果、受信レジスタに2回に分離して格納される読み出しデータを1アドレスの1バイトのデータに編成するデータ処理が不要になる。
又前記送信データは8ビット幅、該送信データの直前に送信するデータのシリアル配列は、3個のダミービット(DO7〜DO5:0),1個のスタートビット(DO4:1),2個の制御コードビット(DO3,DO2:C1,C0)および10個のアドレスデータビット(DO1,DO0,DO7〜DO0:A9〜A0)である。前記受信データは8ビット幅、該受信データを読み出すために送信するデータのシリアル配列は、2個のダミービット(DO7,DO6:0),1個のスタートビット(DO5:1),2個の制御コードビット(DO4,DO3:C1,C0),10個のアドレスデータビット(DO2〜DO0,DO7〜DO1:A9〜A0)および1個のダミービット(DO0:0)である。
又画像データが表す画像を用紙上に形成する作像装置(200)として、該作像装置の画像形成の制御を行うエンジン制御手段(510)、および、該エンジン制御手段(510)からの制御命令に従って、前記作像装置(200)のセンサおよび負荷に対する入出力制御を行うI/O制御手段(513)を備える。前記エンジン制御手段(510)が、プログラムメモリ(ROM 510-2),アドレスデータの受信を完了するとアドレス受信完了を返信する前記記憶装置(2)としてのメモリ(NV-RAM 512)、および、該メモリに対してデータの読み書きを行い、前記プログラムメモリ(ROM 510-2)および前記記憶装置2であるメモリ((NV-RAM 512)に格納されたプログラムおよびデータに従って、前記I/O制御手段(513)に制御命令を与えて前記作像装置(200)による作像を制御する、上記メモリ読み書き装置(1)としてのメモリ読み書き装置(CPU 511)を備える。
又、画像データが表す画像を用紙上に形成する作像装置(200)は、該作像装置の画像形成の制御を行うエンジン制御手段(510)、および、ユーザが指定した作像条件の作像を前記エンジン制御手段(510)に指示し該エンジン制御手段(510)に対して画像データを入出力するシステムコントローラ(501)を備える。該システムコントローラ(501)が、プログラムメモリ(ROM 501-2),アドレスデータの受信を完了するとアドレス受信完了を返信する前記記憶装置(2)としてのメモリ(NV-RAM 503)、および、該メモリ(NV-RAM 503)に対してデータの読み書きを行い、通信による画像処理指示ならびに前記プログラムメモリ(ROM 501-2)および前記記憶装置2であるメモリ(NV-RAM 503)に格納されたプログラムおよびデータに従って、前記エンジン制御手段(510)に対して画像データの送受信を行う、上記メモリ読み書き装置(1)としてのメモリ読み書き装置(CPU 502)を備える。
又、画像データが表す画像を用紙上に形成する作像装置(200)は、該作像装置の画像形成の制御を行うエンジン制御手段(510)および、該エンジン制御手段からの制御命令に従って、前記作像装置のセンサおよび負荷に対する入出力制御を行うI/O制御手段(513)を備える。I/O制御手段(513)は、プログラムメモリ(518),アドレスデータの受信を完了するとアドレス受信完了を返信する前記記憶装置2としてのメモリ(NV-RAM 520)を含む。I/O制御手段(513)は更に、メモリ(NV-RAM 520)に対してデータの読み書きを行い、前記エンジン制御手段(510)からの制御命令ならびに前記プログラムメモリ(518)および前記記憶装置(2)としてのメモリ(NV-RAM 520)に格納されたプログラムおよびデータに従って、前記入出力制御を行う、上記メモリ読み書き装置(1)としてのメモリ読み書き装置(CPU 517)を備える。
以下、図とともに実施例の詳細な説明を行う。
図1に、本発明の一実施例のメモリ読み書き装置を装備した複合機能フルカラーデジタル複写機MF1の外観を示す。このフルカラー複写機は、大略で、自動原稿送り装置(ADF)320と、操作ボード10(図2)と、カラースキャナ300と、カラープリンタ200と、給紙バンク400の各ユニットで構成されている。機内のシステムコントローラ501(図2)には、パソコンPCが接続したLAN(Local Area Network)が接続されている。また、機内のファクシミリコントローラ506(図2)は、交換機PBX601および公衆通信網PN602を介して、ファクシミリ通信をすることが出来る。
プリンタ200には、転写ユニットがあり、該転写ユニットには、無端ベルトである転写ベルト208がある。転写ベルト208は、3つの支持ローラR1,R2,R3と1つのテンションローラR4に掛け廻されており、反時計廻りに回動駆動される。テンションローラR4の近くに、画像転写後に転写ベルト208上に残留する残留トナーを除去する転写体クリーニングユニットCUがある。
1つの支持ローラR1ともう1つの支持ローラR2との間の転写ベルト208には、その移動方向に沿って、上流側からBk(ブラック),C(シアン),M(マゼンタ)およびY(イエロー)の各色作像用の作像ユニットIM1,IM2,IM3,IM4が装備され、これらの中にある各感光体ドラム202−1,202−2,202−3,202−4に、転写ベルト208を挟んで対向して、転写ローラ205−1、205−2,205−3,205−4がある。前記作像装置IM1〜IM4の上方には、各色感光体ドラム202−1〜202−4に画像形成のためのレーザ光を照射する光書込ユニット252がある。感光体ドラム202−1〜202−4を、帯電ローラ203−1、203−2,203−4,203−5が均一に帯電し、帯電面に光書込ユニット252が画像信号で変調したレーザを投射する。これによって生じた静電潜像を、現像器204が現像してトナー像とする。このトナー像が転写ベルト208に転写される。
転写ベルト208の下方には、搬送ベルト213がある。搬送ベルト213は、転写ベルト208上のトナー像を、用紙すなわちシート(転写紙)上に転写する。トナー像を転写した用紙は、搬送ベルト213で定着ユニット214に送り出される。搬送ベルト213および定着ユニット214の下方に、表面に画像を形成した直後の用紙を、裏面にも画像を記録するために表裏を反転して送り出すシート反転ユニットである両面ドライブユニット221がある。
操作ボード10(図2)のスタートスイッチが押されると、原稿自動搬送装置(ADF)320に原稿があるときは、それをスキャナ300のコンタクトガラスCG上に搬送してから、ADF320に原稿が無いときにはコンタクトガラスCG上に手置きの原稿を読むために直ちに、スキャナ300を駆動し、スキャナ300内の第1キャリッジCA1および第2キャリッジCA2を、読み取り走査駆動する。そして、第1キャリッジCA1上の光源LSからコンタクトガラスCGに光を発射するとともに原稿面からの反射光を第1キャリッジCA1上の第1ミラーMR1で反射して第2キャリッジCA2に向け、第2キャリッジCA2上のミラーMR2で反射して結像レンズFLを通して読取りセンサであるCCDRSに結像する。読取りセンサRSで得た画像信号に基づいてBk,C,M,Y各色記録データが生成される。
また、スタートスイッチが押されたときに、転写ベルト208の回動駆動が開始されるとともに、前記作像装置の各ユニットIM1〜IM4の作像準備が開始され、そして各色作像の作像シーケンスが開始されて、各色用の感光体ドラム202−1〜202−4に各色記録データに基づいて変調された露光レーザが投射され、各色作像プロセスにより、各色トナー像が転写ベルト208上に一枚の画像として、重ね転写される。このトナー画像の先端が搬送ベルト213に進入するときに同時に先端が搬送ベルト213に進入するようにタイミングをはかって用紙がレジストローラ対212すなわち給送ローラから転写ベルト213に送り込まれ、これにより転写ベルト208上のトナー像が用紙に転写する。転写ベルト208には、転写ローラ205によって、トナーを転写する電圧が印加される。トナー像が移った用紙は定着ユニット214に送り込まれ、そこでトナー像が用紙に定着する。
なお、上述の用紙は、給紙バンク400の給紙トレイ(給紙段又はカセットとも言う)209、210,211の直近上方の給紙ローラ209R1,210R1,211R1の1つを選択回転駆動し、給紙バンク400に多段に備える給紙トレイ209〜211の1つからシートを繰り出し、分離ローラ209R2,210R2,211R2で1枚だけ分離して、縦配列の搬送コロユニット209R3,210R3,211R3に入れ、上方に搬送してプリンタ200内の搬送路CPに導き、搬送路CPの搬送ローラ215でレジストローラ対212に搬送して用紙の先端をレジストローラ対212に突き当てて止めてから、前述のタイミングでレジストローラ対212および搬送ローラ215を回転駆動して搬送ベルト213に送り出されるものである。右側端の手差しトレイTR上に用紙を差し込んで給紙することもできる。ユーザが手差しトレイTR上に用紙を差し込んでいるときには、プリンタ200が手差しトレイ部の給紙ローラTR−Rを回転駆動して手差しトレイTR上のシートの一枚を分離して手差し給紙路TR−Pに引き込み、同じくレジストローラ対212に突き当てて止める。
定着ユニット214で定着処理を受けて排出される用紙は、切換爪SNで排出ローラERに案内して図示を省略した排紙トレイ上にスタックする。または、切換爪SNで両面ドライブユニット221に案内して、そこで反転して再び転写位置へと導き、裏面にも画像を記録して後、排出ローラERで排紙トレイ上に排出する。一方、画像転写後の転写ベルト208上に残留する残留トナーは、転写体クリーニングユニットCUで除去し、再度の画像形成に備える。
図2に、図1に示す複合機能複写機MF1の電装系統のシステム構成を示す。電装システムは、画像形成装置MF1の全体制御を行うシステムコントローラ501、コントローラ501に接続された、画像形成装置MF1の操作ボード10、画像データを記憶するHDD511、アナログ回線を使用して外部との通信を行う通信コントロール装置インターフェースボード504、LANインターフェースボード505、汎用PICバス552に接続された、FAXのコントロールユニット506、IEEE1394ボード、無線LANボード、USBボード等507と、PCIバス552でコントローラ501に接続されたエンジン制御部510、エンジン制御部510に接続された、画像形成装置のI/Oを制御するI/Oボード513、及び、コピー原稿(画像)を読込むスキャナーボード(SBU:Sensor Board Unit)511、及び画像データが表わす画像光を感光体ドラム202−1〜202−4上に投射する(光書込みする)光書込ユニット(LDB)252等で構成される。
原稿を光学的に読み取る読取ユニット300は、原稿に対する原稿照明光源の走査を行い、CCD508(RS)に原稿像を結像する。原稿像すなわち原稿に対する光照射の反射光をCCD508で光電変換してR,G,B画像信号を生成する。
通信コントロール装置インターフェースボード504は、装置MF1に不具合が発生した場合に外部の遠隔地診断装置(図示を省略)に即時に通報し、故障個所の内容,状況等をサービスマンが認識し早急に修理することを可能としている。また、それ以外に装置MF1の使用状況等の発信にも使用されている。
図2に示すCCD508は、3ラインカラーCCDであり、EVENch(偶数画素チャンネル)/ODDch(奇数画素チャンネル)のR、G、B画像信号を生成し、SBUボード509のアナログASIC(Application Specific IC)509−1に入力する。SBUボード509にはアナログASIC509−1及び,CCD、アナログASICの駆動タイミングを発生する回路509−2を備えている。CCD508の出力は、アナログASIC509−1内部のサンプルホールド回路(図示を省略)により、サンプルホールドされその後、A/D変換され、R、G、Bの画像データに変換し、且つシェーディング補正し、そして出力I/F(インターフェイス)509−3で画像データバス509−4を介して画像データ処理器IPP(Image Processing Processor、以下では単にIPPと記述)510−1に送出する。
IPP510−1は画像処理をおこなうプログラマブルな演算処理手段であり、分離生成(画像が文字領域か写真領域かの判定:像域分離),地肌除去,スキャナガンマ変換,フィルタ,色補正,変倍,画像加工,プリンタガンマ変換および階調処理を行う。SBU509からIPP510−1に転送された画像データは、IPP510−1にて光学系およびデジタル信号への量子化に伴う信号劣化(スキャナ系の信号劣化)を補正され、フレームメモリ521に書き込まれる。
システムコントローラ501には、CPU502,該CPU502がシステムコントローラボードの制御を行うプログラムを格納したROM501−2、CPU502が使用する作業用メモリであるSRAM501−3,リチウム電池を内蔵し、SRAM501−3のバックアップと時計を内蔵したNV−RAM503及び、システムコントローラ501のシステバス制御、フレームメモリ制御、FIFO等のCPU周辺を制御するASIC501−4及びそのインターフェース回路(図示を省略)等が搭載されている。
システムコントローラ501は、スキャナアプリケーション,ファクシミリアプリケーション,プリンタアプリケーションおよびコピーアプリケーション等の複数アプリケーションの機能を有し、システム全体の制御を行う。操作ボード10の入力を解読して本システムの設定とその状態内容を操作ボード10の表示部に表示する。
PCIバス552には多くのユニットが接続されており、画像データバス/制御コマンドバスで、画像データと制御コマンドが時分割で転送される。
通信コントロール装置インターフェースボード504は、通信コントロール装置522と、コントローラ501との通信インターフェースボードである。コントローラ501との通信は、全二重非同期シリアル通信で接続されている。通信コントロール装置522とは、RS−485インターフェース規格により、マルチドロップ接続されている。遠隔の管理システム(図示を省略)との通信は、この通信コントローラ装置インターフェースボード504を経由して実施される。
LANインターフェースボード505は、社内LAN600に接続されている。社内LAN600とコントローラ501との通信インターフェースボードであり、PHYチップ(図示を省略)を搭載している。LANインターフェースボード505とコントローラ501とは、PHYチップI/F及びI2CバスI/Fの標準的な通信インターフェースで接続されている。外部機器(図示を省略)との通信はこのLANインターフェースボード505を経由して実施される。
HDD551は、システムのアプリケーションプログラムならびにプリンタ、作像プロセス機器の機器付勢情報を格納するアプリケーションデータベース、ならびに、読取り画像や書込み画像のイメージデータ、すなわち画像データ、ならびにドキュメントデータを蓄える画像データベースとして用いられる。物理インターフェース、電気的インターフェース共に、ATA/ATAPI−4に準拠したインターフェースでコントローラ501に接続されている。
操作ボード10には、CPU10−1及びROM10−2,RAM10−3、LCD及びキー入力を制御するASIC(LCDC)10−4が搭載されている。ROM10−2にはCPU10−1による操作ボード10の入力読込み、及び表示出力を制御する、操作ボード10の制御プログラムが書き込まれている。RAM10−3は、CPU10−1で使用する作業用メモリである。システムコントローラ501との通信により、パネルを操作して使用者がシステム設定の入力を行う入力と、使用者にシステムの設定内容,状態を表示する、表示および入力の制御を行っている。
システムコントローラ501のワークメモリ501−1から出力されたBk,C,M,Yの各色の書込み信号(画像DATA)は、光書込ユニット252に入力される。光書込ユニット252で書込み信号に基づくLD電流制御(PWM制御)が行われ、各LDが書込み信号に対応して付勢(駆動、通電)される。
エンジン制御部510は、画像形成の制御すなわち作像制御を主として行い、CPU511及び、画像処理を行うIPP510−1、CPU511が複写およびプリントアウトを制御するため必要なプログラムを内蔵したROM510−2、その制御に必要なSRAM510−3、及びNV―RAM512を搭載している。NV−RAM512にはSRAM(図示を省略)と、電源OFFを検知して、EEPROMにストアするメモリ(図示を省略)を搭載している。また、他の制御を行なうCPUとの信号の送受信を行なう、シリアルインターフェースも備えているI/O ASIC510−4は、エンジン制御ボードが実装された、近くのI/O(カウンター、ファン、ソレノイド、モータ等(図示を省略))を制御するASICである。I/O制御部513とエンジン制御部510とは同期シリアルインターフェース接続されている。CPU511が、本発明のメモリ読み書き装置の第1実施例である。
I/O制御部513は、エンジン制御部510からの制御命令ならびに、ROM518に格納されたプログラムや不揮発性RAMであるNV−RAM520に格納されたプログラムやデータに従って、センサおよび負荷に対する入出力制御および電源装置の制御を行うCPU517と、CPU517を動作させるためのプログラムを格納するROM518と、CPU517のワークメモリとして使用されるRAM519と、各負荷の動作状態や各動作モードにおける消費電力データを格納した消費電力テーブルや各動作モードにおける印刷処理に要する時間データを格納した印刷処理時間テーブルなどを記憶するNV−RAM520と、フルカラーデジタル複合機能複写機MF1の各種センサ516の入力読み込みおよび各種負荷の個々の駆動を行うI/F(インターフェース)515を備えている。
I/O制御部513は、エンジン制御510の画像読み込み、印刷,複写等のプロセス制御、シーケンス制御に伴う指示に従って、Pセンサ、Tセンサ等のアナログ制御,用紙センサの検出信号を参照するジャム検出,用紙搬送制御も含む画像形成装置MF1のI/O制御を行っており、各動作モードに応じてシーケンシャルに各種アクチュエータ(モータ、クラッチ、ソレノイド)を動作させる。
電源装置PSU514は、画像形成装置MF1を制御する電源を供給するユニットである。メインSWのオン(閉)により、商用電源が供給される。その商用電源からAC制御回路540に商用ACが供給され、AC制御回路540により整流、平滑化のように制御されたAC制御出力を用いて、DC電源装置PSU514は、各制御基板に必要なDC電圧を供給する。DC電源装置PSU514により生成される定電圧を用いて各制御部のCPUが動作している。AC制御回路540は、定着ユニット214のヒータに通電し定着温度を一定に維持する通電制御を行う交流通電回路(ヒータドライバ、図示を省略)がある。メインSWのオフからオンへの切り換わりにより、AC制御回路540によって、定着ユニット214のヒータには商用交流が供給され、DC電源装置514には直流電圧が印加される。これが待機モードである。この状態でコピー又は印刷の指示があると、システムコントローラ501が、エンジン制御部510にコピー又は印刷を指示し、エンジン制御部510がこれを開始する。エンジン制御部510がコピー又は印刷を実行している状態は動作モードであり、消費電力が大きい。
システムコントローラ501は、ユーザの指示を待つ待機モードが操作ボード10に入力された設定時間経過すると、AC制御回路540およびDC電源装置514を省エネモードに切り替える。すなわち、AC制御回路540ではヒータドライバへの交流供給を遮断し、DC電源装置514では、複写機MF1に対するユーザの直接のアクセス(操作ボード10入力又はコピー又は印刷のための操作)もしくは外部(パソコン又はファクシミリ)からの画像要求又は印刷要求を認知し動作モードに復帰する電源操作を行う復帰用電気回路に認知動作用の電圧を供給する待機電源回路(図示を省略)を除くDC出力用の電源回路(図示を省略)を、DC受電ライン(図示を省略)から遮断する。これによりシステムコントローラ501の動作電圧が消滅する。復帰用電気回路(図示を省略)は、省エネモードにおいてユーザ又は外部からのアクセスを認知すると、AC制御回路540およびDC電源装置514を、上記待機モードに設定する。これによりシステムコントローラ501に動作電圧が加わる。
操作ボード10には、液晶タッチパネル(図示を省略)のほかに、テンキー,クリア/ストップキー,スタートキー,初期設定キー,モード切換えキー,テスト印刷キー,電源キー等(図示を省略)がある。また、液晶タッチパネルの左側には、URL,メール文,ファイル名,フォルダ名等の入力,設定用ならびに短縮登録用の、平仮名を付記したアルファベットキーボード(図示を省略)がある。
液晶タッチパネルには、各種機能キーならびにエンジン300およびコントローラ501の動作状態を示すメッセージなどが表示される。液晶タッチパネルには、「コピー」機能,「スキャナ」機能,「プリント」機能,「ファクシミリ」機能,「蓄積」機能,「編集」機能,「登録」機能およびその他の機能の選択用および実行中を表わす機能選択キーが表示される。機能選択キーで指定された機能に定まった入出力画面が表示され、例えば「複写」機能が指定されているときには、機能キーならびに部数及び画像形成装置の状態を示すメッセージが表示される。オペレータが液晶タッチパネルに表示されたキーにタッチすると、操作ボード10はオペレータ入力として読み込み、選択された機能を示すキーを、指定中を表す灰色に反転表示する。また、機能の詳細を指定しなければならない場合(例えばページ印字の種類等)はキーにタッチする事で詳細機能の設定画面がポップアップ表示される。このように、液晶タッチパネルは、ドット表示器を使用している為、その時の最適な表示をグラフィカルに行う事が可能である。機能キーの中には、印刷色指定キー「黒(Bk)」,「フルカラー」,「自動色選択」,「青(C)」,「赤(M)」および「黄(Y)」がある。
エンジン制御部510の、本発明のメモリ読み書き装置の第1実施例であるCPU511と、NV−RAM512との、データ読み書きに関する接続および構成は、図3に示すものと同じである。すなわちCPU511は、図3に示すCPU1と同一構成、また、NV−RAM512は、図3に示す記憶装置2と同一構成である。
CPU511が、NV−RAM512にデータを書き込むときの送信制御の内容は図4、図7とともに上記したメイン制御部105による送信制御の内容と同様である。しかし、CPU511がNV−RAM512から格納データを読み出すシーケンスは、図6に示すものであって、図8とともに上記したものとは異なる。
図5に、本発明の一実施例であるCPU511がNV−RAM512からデータを読み出す場合の、CPU511内のメイン制御部105の受信制御を示す。以下に、図6を参照して、CPU511がNV−RAM512からデータを読み出す場合のCPU511内メイン制御部105の、動作シーケンスを説明する。
CPU511のメイン制御部105はまず、CPU511内の送信レジスタ109内に、第1バイト131の先頭2ビットとしてダミーデータを設定する。すなわち、図6の(a)に示す様に、DO7に"0"、DO6に"0"を格納する。つまり、図8の3ビットのダミーデータは2ビットに変更する。つぎのDO5にスタートビット="1"、DO4に"C1"、DO3に"C0"、DO2に"A9"、DO1に"A8"、DO0に"A7"を格納する(図5のステップS21)。この第1バイト131をSYNC_CLKの立ち下りエッジに同期してCPU_DATA_OUT信号として記憶装置(ここではNV−RAM512)に送信する(ステップS22、S24)。この送信開始と同時に、CPU511のメイン制御部105は、NV−RAM512から受信するCPU_DATA_IN信号を、SYNC_CLKの立ち上りエッジに同期して取り込み受信レジスタ110に格納する(ステップS22、S23)。
NV−RAM512は、アドレスA0を受信するまで、CPU_DATA_IN信号に"1"を送信するため、受信レジスタ110のDI7からDI0には、全て"1"が格納される。つまり、図6の(b)に示すように、受信第1バイト134の全ビットが"1"であり、当該データ"1"はクリアされる(ステップS25)。
CPU511のメイン制御部105は次に、CPU511内の送信レジスタ109内に、第2バイト132として、図6の(a)に示す様に、DO7に"A6"、DO6に"A5"、DO5に"A4"、DO4に"A3"、DO3に"A2"、DO2に"A1"、DO1に"A0"、そして1個のダミーデータとしてDO0に"0"、を格納し(ステップS26)、この第2バイト132のデータビットをSYNC_CLKの立ち下りエッジに同期してCPU_DATA_OUT信号として、NV−RAM512に送信する(ステップS27、S29)。この送信と同時に、CPU511は、NV−RAM512から受信するCPU_DATA_IN信号をSYNC_CLKの立ち上りエッジに同期して取り込み受信レジスタ110に格納する(ステップS27、S28)。
受信レジスタ110のこの格納データすなわち受信第2バイト135は、図6の(b)に示すように、DI7からDI1までは、A0検出ビットをNV−RAM512が検出する前、つまりSYNC_CLKの立ち上りエッジが15回目前までのデータであるため、"1"が格納される。また15回目のSYNC_CLKの立ち上りエッジで、NV−RAM512はA0を認識し、NV−RAM512は、アドレス受信完了をあらわすA0認識ビット="0"を、CPU_DATA_IN信号に出力する。CPU511は、このA0認識ビット="0"をSYNC_CLKの16回目の立ち上りエッジで検出する(ステップS30のYES)。よって、受信レジスタ110に格納した第2バイト135のDI0には、図6の(b)に示すように、A0認識ビット="0"が格納される。NV−RAM512は、A0認識ビット="0"を出力した後、つまりSYNC_CLKの16回目の立ち上りエッジより、NV−RAM512内部のデータ格納エリア119内の、CPU511より指定されたアドレスに格納されている、D7からD0の1バイトデータを出力する。SYNC_CLKの16回目の立ち上りエッジでCPU_DATA_IN信号上にあるA0認識ビット"0"を受信した後の、受信レジスタ110のDI7にはD7、DI6にはD6、DI5にはD5、DI4にはD4、DI3にはD3、DI2にはD2、DI1にはD1、DI0にはD0が格納され(ステップS32〜S35)、図6の(b)に示す様に、NV−RAM512が出力した、指定アドレスの1バイトのデータと、1回にCPU511の受信レジスタ110に格納されるこの第3バイトデータ136とが、1対1になる。つまり、ビットズレを発生しない。これは、1回目に送信レジスタ109に格納する第1バイト131内のDO7,DO6にダミーデータを格納し、及び2回目に送信レジスタ109に格納する第2バイト132のDO1のA0の次のDO0にダミーデータビットを格納し、これら第1および第2バイトをNV−RAM512にCPU_DATA_OUT信号として出力したためである。尚、CPU511がA0認識ビット="0"を検出しなかった場合(ステップS30のNO)、CPU511は通信異常と判断し、通信を停止する(ステップS31)。
図2に示す、システムコントローラ501のCPU502およびI/O制御部513のCPU517の、それぞれNV−RAM503およびNV−RAM520に対するデータの読み書きは、上述のエンジン制御部510のCPU511と同様である。なお、CPU(511,502,517)がアクセスするメモリおよび他のデバイスを、アドレスデータの上位ビットA9,A8で選択する場合、アクセス可能なメモリおよび他のデバイスの数は4以内である。そこで、4を超える実施形態では、アドレスデータをA10〜A0(11ビット)とする。これによりアドレスデータが1ビット増える分、送信レジスタ109に設定する第1バイトデータ(120,131)は、先頭のダミービットを、上述の数(120では3、131では2)より、1少ない数とする。それ以外の、CPUのメモリ読み書きの機能構成および動作シーケンスは、上述のCPU511と同様である。