(57)【要約】【課題】  制御装置、画像形成装置および回路装置を提供すること。【解決手段】  制御装置１００は、第１の回路装置１１０と、不揮発性記憶装置１３０と、第２の回路装置１５０とを含む。第２の回路装置１５０は、記憶装置１５４と、複数の端子１５１とを含む。第２の回路装置１５０は、また、複数の端子１５１ａ〜１５１ｄに接続され、第１の回路装置１１０と通信を行うための第１の入出力回路１６０と、複数の端子１５１を第１の入出力回路１６０と共用する第２の入出力回路１７０とを含む。第２の回路装置１５０は、さらに、起動に際して、第２の入出力回路１７０を介して不揮発性記憶装置１３０からデータを読み出し、記憶装置１５４に書き込む制御回路１８０と、データの読み出しの完了に基づいて、複数の端子１５１の入力および出力の方向を切り替える切替手段（１８０，１８６，１８７，１５３ａ〜１５３ｄ）とを含む。【選択図】  図１
2019160204.tif 000002
【特許請求の範囲】
【請求項１】
第１の回路装置と、不揮発性記憶装置と、第２の回路装置とを含む制御装置であって、前記第２の回路装置は、
記憶装置と、
複数の端子と、
前記複数の端子に接続され、前記第１の回路装置と通信を行うための第１の入出力回路と、
前記複数の端子を前記第１の入出力回路と共用する第２の入出力回路と、
起動に際して、前記第２の入出力回路を介して前記不揮発性記憶装置からデータを読み出し、前記記憶装置に書き込む制御回路と、
前記データの読み出しの完了に基づいて、前記複数の端子の入力および出力の方向を切り替える切替手段と
を含む、制御装置。
【請求項２】
前記第１の回路装置は、前記第１の入出力回路が接続される信号線へ転送クロックを出力する第３の入出力回路を有し、
前記第３の入出力回路の選択信号が第１の信号レベルにある場合には、前記信号線へ前記転送クロックが出力され、前記選択信号が第２の信号レベルにある場合には、前記転送クロックの出力を含む前記第３の入出力回路の１または複数の出力がハイ・インピーダンス状態とされ、前記信号線は、前記出力がハイ・インピーダンス状態にある場合に所定の信号レベルに維持される、請求項１に記載の制御装置。
【請求項３】
前記不揮発性記憶装置は、前記信号線に接続されたクロック入力を有する第４の入出力回路を含み、
前記第２の入出力回路は、前記信号線へクロックを出力するクロック出力を含み、前記データの読み出しが行われている間、前記クロック出力は、前記クロックを出力し、前記データの読み出しの完了した後は、前記クロック出力を含む前記第２の入出力回路の１または複数の出力がハイ・インピーダンス状態になる、請求項２に記載の制御装置。
【請求項４】
前記第１の回路装置は、前記第４の入出力回路に対するライトプロテクト信号、または、前記第２の回路装置に対するライトイネーブル信号を制御するポート有する、請求項３に記載の制御装置。
【請求項５】
前記第１の回路装置から前記第２の回路装置へアドレスおよびデータを含むフレーム構造で送信を行う際に、前記不揮発性記憶装置の命令に相当する部分と合致しないようなメモリマップ構造を有する、請求項３に記載の制御装置。
【請求項６】
前記第１の回路装置と前記不揮発性記憶装置とは、前記複数の端子にワイヤード接続される、請求項１〜５のいずれか１項に記載の制御装置。
【請求項７】
前記第２の回路装置は、
前記第１の回路装置からの動作要求に対し、前記データの読み出しが完了している場合に、前記データの読み出しが完了したことを示す信号を前記第１の回路装置に応答するポートをさらに含む、請求項１〜６のいずれか１項に記載の制御装置。
【請求項８】
前記切替手段は、さらに、書き込み要求に基づいて、前記複数の端子の入力および出力の方向を切り替え、前記制御回路は、前記記憶装置の内容を、前記第２の入出力回路を介して前記複数の端子から前記不揮発性記憶装置に書き込む、請求項１〜７のいずれか１項に記載の制御装置。
【請求項９】
第１の回路装置と、不揮発性記憶装置と、画像形成に関する周辺機器を制御するための第２の回路装置とを含む画像形成装置であって、前記第２の回路装置は、
記憶装置と、
複数の端子と、
前記複数の端子に接続され、前記第１の回路装置と通信を行うための第１の入出力回路と、
前記複数の端子を前記第１の入出力回路と共用する第２の入出力回路と、
起動に際して、前記第２の入出力回路を介して前記不揮発性記憶装置からデータを読み出し、前記記憶装置に書き込む制御回路と、
前記データの読み出しの完了に基づいて、前記複数の端子の入力および出力の方向を切り替える切替手段と
を含む、画像形成装置。
【請求項１０】
外部回路装置および不揮発性記憶装置に接続される回路装置であって、
記憶装置と、
複数の端子と、
前記複数の端子に接続され、前記外部回路装置と通信を行うための第１の入出力回路と、
前記複数の端子を前記第１の入出力回路と共用する第２の入出力回路と、
起動に際して、前記第２の入出力回路を介して前記不揮発性記憶装置からデータを読み出し、前記記憶装置に書き込む制御回路と、
前記データの読み出しの完了に基づいて、前記複数の端子の入力および出力の方向を切り替える切替手段と
を含む、回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、画像形成装置および回路装置に関し、より詳細には、他の回路装置と通信する回路装置を備える制御装置、画像形成装置および該回路装置に関する。
【背景技術】
【０００２】
従来より、モータ、センサーなどのシステム装置の周辺機器を制御するために、ＣＰＵ（Central Processing Unit）内蔵のＬＳＩ（Large Scale Integration）などのマイコンが用いられる。ここで、これら周辺機器を制御するマイコンを、システムとして全体を制御するマスターマイコンに対して、スレーブマイコンと称する。
【０００３】
マスターマイコンからスレーブマイコンに対する命令の送出、データの取り込みなどのためにシリアル通信を用いることにより端子数を少なくすることができる。このようなシリアル通信を用いるために、マスターマイコンには、シリアル通信マスター回路、スレーブマイコンにはシリアル通信スレーブ回路が設けられる。
【０００４】
近年、半導体プロセスの微細化により、内部回路は小さくなってきたが、入出力端子回路は、依然として充分に小さくなっているとはいえない。そのため、端子数が少ない方が、チップサイズが小さくなりやすく、１チップあたりの製造コストが安くなる。
【０００５】
ところで、マイコンは、プログラムメモリを備えている。このプログラムメモリは、マスクＲＯＭ（Read Only Memory）で安価に作成する方法や、後から書き換えできるマイコン内蔵のＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）で作成する方法が知られている。
【０００６】
さらに、プログラムメモリを安価なロジックプロセスで作製することができるスタティックＲＡＭ（Random Access Memory）とし、外付けのＥＥＰＲＯＭからダウンロードするという方法も知られている。この方法は、マイコンを高価なＥＥＰＲＯＭ製造用の半導体プロセスで製造する必要がないので、製造コストが比較的に安く、さらに、ＥＥＰＲＯＭを用いるので、プログラムを後から書き換えできるという利点がある。この際に、スレーブマイコンがＥＥＰＲＯＭからプログラムをダウンロードするためにも、端子数削減のためにシリアル通信が使われることが既に知られている。
【０００７】
しかしながら、プログラムをダウンロードする従来技術では、スレーブマイコン側に、ホストからの命令を受けるシリアル通信スレーブ回路の端子と、ＥＥＰＲＯＭからのプログラムダウンロード用にシリアル通信マスター回路の端子との両方を設ける必要があり、コストが増大してしまう点で充分なものではなかった。
【０００８】
上記シリアル通信に関連し、特開２００６−１０９４２７号公報（特許文献１）は、動作プログラムが記憶されたフラッシュメモリを有する外部装置と、外部装置から動作プログラムをダウンロードした所定のプログラムを使用するカメラシステムとからなるプログラムダウンロード装置を開示する。特許文献１は、外部の不揮発性メモリに格納したプログラムをダウンロードする目的で、プログラムダウンロードプログラムによるシリアル通信マスター回路とＣＰＵのシリアル通信マスター回路とを切り替える構成を開示する。しかしながら、特許文献１に開示される従来技術では、依然として、端子の増加を防ぐことができるものではなかった。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本開示は、他の回路装置との通信および不揮発性記憶装置からのデータの読み出しための端子数が削減された回路装置を有する制御装置を提供することを目的する。
【課題を解決するための手段】
【００１０】
本開示によれば、第１の回路装置と、不揮発性記憶装置と、下記特徴を有する第２の回路装置とを含む制御装置が提供される。第２の回路装置は、記憶装置と、複数の端子とを含む。第２の回路装置は、また、上記複数の端子に接続され、第１の回路装置と通信を行うための第１の入出力回路と、上記複数の端子を第１の入出力回路と共用する第２の入出力回路とを含む。第２の回路装置は、さらに、起動に際して、第２の入出力回路を介して不揮発性記憶装置からデータを読み出し、記憶装置に書き込む制御回路と、データの読み出しの完了に基づいて、複数の端子の入力および出力の方向を切り替える切替手段とを含む。
【発明の効果】
【００１１】
上記構成により、他の回路装置との通信を行うとともに、不揮発性記憶装置からデータを読み出す機能を具備した回路装置を含む制御装置において、回路装置が有する端子数を削減することができる。
【図面の簡単な説明】
【００１２】
【図１】本実施形態によるシステム装置を説明する図。
【図２】本実施形態における、電源投入直後のプログラムダウンロード動作およびシリアル信号動作を示すタイミングチャート。
【図３】他の実施形態によるシステム装置を説明する図。
【図４】一般的なシリアルＥＥＰＲＯＭの動作を示すタイミングチャートについて説明する図。
【図５】他の実施形態によるシステム装置で採用されるメモリマップの構造を示す図。
【図６】さらに他の実施形態によるシステム装置を説明する図。
【図７】従来技術における、スレーブ側のプログラムメモリとして不揮発性メモリを用いるシステム装置の構成について説明する図。
【図８】図７に示す従来技術のシステム装置において、ＳＩＯマスター回路およびＳＩＯスレーブ回路の間で行われる、（Ａ）リード動作および（Ｂ）ライト動作時の通信を例示するタイミングチャート。
【図９】従来技術における、スレーブ側のプログラムメモリとして揮発性メモリを用いるシステム装置の構成について説明する図。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態を説明するが、本発明の実施形態は、以下の実施形態に限定されるものではない。なお、以下に説明する実施形態は、回路装置および該回路装置を含む制御装置の一例として、それぞれ、マスターマイコンとシリアル通信を介して接続され、画像処理に関連するモータを制御するスレーブマイコン、および、スレーブマイコンを含むシステム装置を一例として用いて説明する。
【００１４】
以下、本実施形態によるシステム装置を説明する前に、図７〜図９を参照しながら、従来技術のモータ制御のためのシステム装置の構成について説明する。図７は、従来技術における、スレーブ側のプログラムメモリとして不揮発性メモリを用いるシステム装置の構成について説明する図である。図７に示すシステム装置５００は、シリアル通信により相互に接続される、マスターマイコン５１０と、モータ制御用スレーブマイコン５５０とを含み構成される。
【００１５】
マスターマイコン５１０は、システム装置５００の全体動作を決定する。スレーブマイコン５５０は、必要なサーボ制御動作を担っており、マスターマイコン５１０からの指令に応答して、モータ５９０を制御する。マスターマイコン５１０が周辺機器であるモータ５９０を動かす場合、シリアル通信を通じて、スレーブマイコン５５０に対し指令する。
【００１６】
マスターマイコン５１０は、マスターＣＰＵ（Central Processing Unit）５１２と、プログラムメモリ５１４と、ワークメモリ５１６と、ＳＩＯ（Serial Input / Output）マスター回路５２０とを具備する。スレーブマイコン５５０は、スレーブＣＰＵ５５２と、プログラムメモリ５５４と、ワークメモリ５５６と、モータ制御回路５５８と、ＳＩＯスレーブ回路５６０とを具備する。
【００１７】
ＳＩＯマスター回路５２０は、スレーブ対象を選択するスレーブ選択（ＳＳ：Slave Select）信号を出力するＳＳ出力５２２と、転送クロックを出力するＳＣＫ（Serial ClocK）出力５２４と、データＭＯＳＩ（Master Output Slave Input）出力５２６と、データＭＩＳＯ（Master Input Slave Output）入力５２８とを備える。
【００１８】
ＳＩＯスレーブ回路５６０は、スレーブ選択（ＳＳ）信号が入力されるＳＳ入力５６２と、データクロックが入力されるＳＣＫ入力５６４と、データＭＯＳＩ入力５６６と、データＭＩＳＯ出力５６８とを備える。
【００１９】
マスターマイコン５１０のＳＩＯマスター回路５１０は、スレーブ選択信号５０２、データクロック信号５０４、ＭＯＳＩ信号５０６およびＭＩＳＯ信号５０８の信号線で、スレーブマイコン５５０のＳＩＯスレーブ回路５６０と接続される。
【００２０】
ここで、スレーブマイコン５５０のプログラムメモリ５５４は、マスクＲＯＭやＥＥＰＲＯＭなどの不揮発性メモリで構成される。マスクＲＯＭを用いる場合、一般に安価にすることができるが、工期の長い半導体製造の開始前にプログラムが完成していることを要する。ＥＥＰＲＯＭを用いる場合は、半導体製造が完了してからプログラムを書くことができ、後から書き換えできる利点があるが、スレーブマイコン５５０をＥＥＰＲＯＭ製造用の高価な半導体プロセスで製造する必要があり、コストが高い。
【００２１】
図８は、図７に示した従来技術のシステム装置５００において、ＳＩＯマスター回路５２０およびＳＩＯスレーブ回路５６０の間で行われる通信を例示するタイミングチャートである。
【００２２】
図８（Ａ）は、４バイトを１フレームとして、アドレス１５ビット、リードライトフラグ１ビット、データ１６ビットのＳＩＯマスター回路５２０から見た場合のリード動作を示す。図８（Ａ）に示すように、通信開始において、ＬアクティブのＳＳ信号５０２がＬレベルで出力される。そして、データクロック信号５０４の出力に同期して、アドレス１５ビット（ａ１５〜ｓ１）と、リードライトフラグ１ビット（ｒｗ＝０）とがＭＯＳＩ信号５０６から出力される。その後引き続き、データクロック信号５０４に同期して、ＳＩＯスレーブ回路５５０から入力されるデータ１６ビット（ｄ１５〜ｄ０）がＭＩＳＯ信号５０８から取り込まれる。
【００２３】
図８（Ｂ）は、４バイトを１フレームとして、アドレス１５ビット、リードライトフラグ１ビット、データ１６ビットのＳＩＯマスター回路５２０から見た場合のライト動作を示す。通信開始において、ＬアクティブのＳＳ信号５０２がＬレベルで出力される。そして、データクロック信号５０４の出力に同期して、アドレス１５ビット（ａ１５〜ｓ１）と、リードライトフラグ１ビット（ｒｗ＝１）とが、ＭＯＳＩ信号５０６から出力される。その後引き続き、データクロック信号５０４に同期して、ＳＩＯスレーブ回路５５０に対して出力するデータ１６ビット（ｄ１５〜ｄ０）が、ＭＯＳＩ信号５０６から出力される。
【００２４】
図８に示すように、システム装置５００において、マスターマイコン５１０およびスレーブマイコン５５０は、それぞれ、ＳＩＯマスター回路５２０およびＳＩＯスレーブ回路５６０を用いて、例えばモータ５９０を制御するためにシリアル通信を行う。
【００２５】
図９は、従来技術における、スレーブマイコン側のプログラムメモリとして揮発性メモリを用いるシステム装置の構成について説明する図である。図９に示すシステム装置６００は、シリアル通信により相互に接続される、マスターマイコン６１０と、モータ制御用スレーブマイコン６５０とを含み構成される。なお、図７に示したシステム装置５００と共通する要素に関しては、下２桁で同じ番号を有する６百番台の符号にて参照し、特段の変更がない場合は、詳細な説明は割愛する。
【００２６】
図９に示すシステム装置６００は、スレーブマイコン６５０のプログラムメモリ６５４が、ＳＲＡＭ（Static RAM）などの揮発性メモリで構成されている。さらに、図９に示すシステム装置６００は、ＳＩＯスレーブ回路６４０を有するシリアルＥＥＰＲＯＭ６３０を備える。
【００２７】
図７に示したスレーブマイコン５５０と比較すると、図９に示すスレーブマイコン６５０は、さらに、ダウンロード制御回路６８０と、プログラムダウンロード用データバス６８２、ＣＰＵリセット（ＣＰＵ＿ＲＥＳＥＴ）信号６８４と、ＳＩＯマスター回路６７０とを備える。
【００２８】
スレーブマイコン６５０のＳＩＯマスター回路６７０は、スレーブ選択（ＳＳ）信号を出力するＳＳ出力６７２と、データクロックを出力するＳＣＫ出力６７４と、データＭＯＳＩ出力６７６と、データＭＩＳＯ入力６７８とを備える。
【００２９】
シリアルＥＥＰＲＯＭ６３０のＳＩＯスレーブ回路６４０は、チップセレクト信号が入力されるＣＳ＿Ｎ入力６４２と、クロックが入力されるＳＣＫ入力６４４と、ＳＩ入力６４６と、ＳＯ出力６４８とを備える。スレーブマイコン６５０のＳＩＯマスター回路６７０は、スレーブ選択信号６３２、データクロック信号６３４、ＭＯＳＩ信号６３６およびＭＩＳＯ信号６３８の信号線で、シリアルＥＥＰＲＯＭ６３０のＳＩＯスレーブ回路６４０と接続される。
【００３０】
電源が未投入の状態では、スレーブマイコン６５０のプログラムメモリ６５４は、消えた状態にある。電源投入されると、ダウンロード制御回路６８０は、ＣＰＵリセット信号６８４によりスレーブマイコン６５０のスレーブＣＰＵ６５２にリセットをかける。ダウンロード制御回路６８０は、スレーブＣＰＵ６５２のリセットをかけたまま、ＳＩＯマスター回路６７０を動作させ、シリアルＥＥＰＲＯＭ６３０からプログラムメモリの内容を読出し、スレーブマイコン６５０のプログラムメモリ６５４にデータバス６８２を介して書き込む。シリアルＥＥＰＲＯＭ６３０内の全ての内容をスレーブマイコン６５０のプログラムメモリ６５４に書き終えたら、ダウンロード制御回路６８０は、ＣＰＵリセット信号６８４を解除する。スレーブＣＰＵ６５２は、リセットが解除され、通常の動作を開始する。
【００３１】
スレーブマイコン６５０のスレーブＣＰＵ６５２を、デバッガ７００と接続して、プログラムソフトウェアデバッグを行うこともできる。デバッグしたプログラムは、揮発性メモリであるプログラムメモリ６５４に格納される。このとき、デバッガ７００からダウンロード制御回路６８０の操作を行うことにより、デバッグ済みのプログラムであるプログラムメモリ６５４の内容を、シリアルＥＥＰＲＯＭ６３０に転送することも可能である。
【００３２】
マイコンのプログラムメモリ６５４を安価なロジックプロセスで作れるＳＲＡＭなど揮発性メモリのとすることにより、製造コストを抑えることができる。一方で、電源未投入状態でプログラムメモリの内容が消えてしまう問題に対しては、外付けのＥＥＰＲＰＯＭ６３０からダウンロードするという方法で対処することができる。しかしながら、マスターマイコン５５０との信号６０２，６０４，６０６，６０８に加えて、ＥＥＰＲＯＭ６３０からプログラムをダウンロードするための信号６３２，６３４，６３６，６３８に応じた端子を設ける必要があり、端子数が増加してしまう。
【００３３】
以下、上述したマスターマイコンとのシリアル通信およびシリアルＥＥＰＲＯＭとのシリアル通信のための端子数を削減することができる、本実施形態によるシステム装置について、図１および図２を参照しながら説明する。
【００３４】
図１は、本実施形態によるシステム装置の構成について説明する図である。図１に示すシステム装置１００は、シリアル通信により相互に接続された、マスターマイコン１１０と、不揮発性記憶装置であるシリアルＥＥＰＲＯＭ１３０と、モータ制御用スレーブマイコン１５０とを含み構成される。
【００３５】
マスターマイコン１１０は、ＣＰＵ内蔵半導体集積回路装置であり、システム装置１００の全体動作を決定する。スレーブマイコン１５０も、ＣＰＵ内蔵半導体集積回路装置であり、必要なサーボ制御動作を担う。スレーブマイコン１５０は、マスターマイコン１１０からの指令に応答して、周辺機器としてモータ１９０を制御する。マスターマイコン１１０がモータ１９０を動かす場合、シリアル通信を通じて、スレーブマイコン１５０に対し指令する。
【００３６】
マスターマイコン１１０は、マスターＣＰＵ１１２と、プログラムメモリ１１４と、ワークメモリ１１６と、ＳＩＯマスター回路１２０とを具備する。スレーブマイコン１５０は、スレーブＣＰＵ１５２と、プログラムメモリ１５４と、ワークメモリ１５６と、周辺機器であるモータ１９０を制御するためのモータ制御回路１５８と、マスターマイコン１１０と通信を行うためのＳＩＯスレーブ回路１６０と、シリアルＥＥＰＲＯＭ１３０と通信を行うためのＳＩＯマスター回路１７０と、ダウンロード制御回路１８０とを具備する。
【００３７】
ここでは、スレーブマイコン１５０のプログラムメモリ１５４は、ＳＲＡＭなどの揮発性記憶装置で構成される。シリアルＥＥＰＲＯＭ１３０は、ＳＩＯスレーブ回路１４０を具備する。
【００３８】
マスターマイコン１１０のＳＩＯマスター回路１２０は、スレーブ対象を選択するスレーブ選択信号を出力するＳＳ出力１２２と、転送クロックを出力するＳＣＫ出力１２４と、データＭＯＳＩ出力１２６と、データＭＩＳＯ入力１２８とを備える。
【００３９】
シリアルＥＥＰＲＯＭ１３０のＳＩＯスレーブ回路１４０は、チップセレクト信号が入力されるＣＳ＿Ｎ信号入力１４２と、クロックが入力されるＳＣＫ入力１４４と、ＳＩ入力１４６と、ＳＯ出力１４８とを備える。
【００４０】
スレーブマイコン１５０のＳＩＯスレーブ回路１６０は、スレーブ選択信号が入力されるＳＳ入力１６２と、転送クロックが入力されるＳＣＫ入力１６４と、データＭＯＳＩ入力１６６と、データＭＩＳＯ出力１６８とを備える。スレーブマイコン１５０のＳＩＯマスター回路１７０は、スレーブ対象を選択するスレーブ選択信号を出力するＳＳ出力１７２と、転送クロックを出力するＳＣＫ出力１７４と、データＭＯＳＩ出力１７６、データＭＩＳＯ入力１７８とを備える。
【００４１】
図１に示すように、スレーブマイコン１５０のＳＩＯマスター回路１７０およびＳＩＯスレーブ回路１６０の信号が、入出力でワイヤード接続されており、図９に示すシステム装置１００に比べて、信号線の本数が半分になっている。すなわち、スレーブマイコン１５０は、複数の端子１５１ａ〜１５１ｄを備え、ＳＩＯスレーブ回路１６０は、ＳＩＯマスター回路１７０とこれらの複数の端子１５１ａ〜１５１ｄを共用する。ＳＩＯスレーブ回路１６０およびＳＩＯマスター回路１７０の各複数の端子１５１ａ〜１５１ｄを共有する各入出力をまとめたものを、入出力部１５３ａ〜１５３ｄと参照する。なお、図１には、便宜上、４つの端子が示されているが、実際の端子数は、ＧＮＤや電源電圧など他の端子も含み得る点に留意されたい。
【００４２】
そして、システム装置１００上で、マスターマイコン１１０のＳＩＯマスター回路１２０およびシリアルＥＥＰＲＯＭ１３０のＳＩＯスレーブ回路１４０の入出力が、図１に示すように結線されている。より具体的には、ＳＩＯマスター回路１２０のＳＳ出力１２２、ＳＣＫ出力１２４、データＭＯＳＩ出力１２６およびデータＭＩＳＯ入力１２８が、それぞれ、スレーブ選択信号１０２、データクロック信号１０４およびＭＯＳＩ信号１０６の信号線を介して、ＳＩＯスレーブ回路１４０のＣＳ＿Ｎ信号入力１４２、ＳＣＫ入力１４４、ＳＩ入力１４６およびＳＯ出力１４８に接続される。
【００４３】
マスターマイコン１１０のＳＩＯマスター回路１２０のＳＳ出力１２２、ＳＣＫ出力１２４およびデータＭＯＳＩ出力１２６は、その出力部で、ＳＳ出力１２２がＬレベルのときのみ出力するよう制御される。ＳＳ出力１２２、ＳＣＫ出力１２４およびデータＭＯＳＩ出力１２６は、その出力部で、ＳＳ出力１２２がＨレベルのとき、すなわちマスターマイコン１１０のＳＩＯマスター回路１２０が動作しないときは、ハイ・インピーダンス（Ｈｉ−Ｚ）状態とされる。スレーブ選択信号１０２、データクロック信号１０４、ＭＯＳＩ信号１０６およびＭＩＳＯ信号１０８の信号線は、ハイ・インピーダンス状態にある場合に、プルアップ抵抗またはプルダウン抵抗により所定の信号レベルに維持される。
【００４４】
スレーブマイコン１５０の複数の端子１５１ａ〜１５１ｄそれぞれに接続される入出力部１５３ａ〜１５３ｄは、論理否定回路１８７を介さずにまたは介して、ＤＬ＿ＢＵＳＹ信号１８６に接続されている。出力部１５３ａ〜１５３ｄは、ＤＬ＿ＢＵＳＹ信号１８６の信号レベルに応じて入力および出力の方向が切り替わるように構成されている。スレーブマイコン１５０のＳＩＯマスター回路１７０の出力は、ダウンロード制御回路１８０がプログラムのダウンロード動作を行っている間、すなわちＤＬ＿ＢＵＳＹ信号１８６がＨレベルの時、それぞれスレーブ選択信号１０２、データクロック信号１０４、ＭＯＳＩ信号１０６を駆動するように制御される。ＳＩＯマスター回路１７０の出力は、プログラムの読み出しが完了すると、すなわちＤＬ＿ＢＵＳＹ信号１８６がＬレベルのときは、ハイ・インピーダンス（Ｈｉ−Ｚ）状態となるように制御される。入出力部１５３ａ〜１５３、ダウンロード制御回路１８０、ＤＬ＿ＢＵＳＹ信号１８６および論理否定回路１８７は、本実施形態における切替手段を構成する。
【００４５】
電源が未投入状態では、スレーブマイコン１５０のプログラムメモリ１５４は消えた状態である。電源が投入された後、電源が安定すると、ＰＯＲ（Power On Rest）がかかり、コンフィギュレーションが開始される。起動に際して、スレーブマイコン１５０のスレーブＣＰＵ１５２がＣＰＵリセット信号１８４によりリセットがかかったまま、ダウンロード制御回路１８０が動作する。
【００４６】
ダウンロード制御回路１８０は、ＳＩＯマスター回路１７０を介して、ＳＳ出力１７２からスレーブ選択信号１０２を制御し、シリアルＥＥＰＲＯＭ１３０からプログラムを読み出し、データバス１８２を介して、読み出したプログラムをプログラムメモリ１５４に書き込む。シリアルＥＥＰＲＯＭ１３０の全ての内容をスレーブマイコン１５０のプログラムメモリ１５４に書き終わると、プログラムの読み出しの完了に応答して、ダウンロード制御回路１８０は、ＣＰＵリセット信号１８４を解除し、スレーブマイコン１５０のスレーブＣＰＵ１５２が動作を開始する。
【００４７】
図２は、本実施形態における、電源投入直後のプログラムダウンロード動作およびシリアル信号動作を示すタイミングチャートを示す。図２は、プログラムダウンロード前後のシリアル信号の様子を模式的に示したものである。
【００４８】
電源未投入状態４０２においては、スレーブ選択信号１０２、データクロック信号１０４、ＭＯＳＩ信号１０６およびＭＩＳＯ信号１０８は、すべてＬレベルにある。電源投入時４０４においては、スレーブ選択信号１０２およびデータクロック信号１０４は、マスターマイコン１１０のＳＩＯマスター回路１２０およびスレーブマイコン１５０のＳＩＯマスター回路１７０いずれからもドライブされずに、プルアップされＨレベルになる（４１０）。ＭＯＳＩ信号１０６およびＭＩＳＯ信号１０８も、いずれからもドライブされずに、プルダウンされてＬレベルになる（４１２）。
【００４９】
電源が投入された後所定の時間が経過すると、ダウンロード制御回路１８０が、ＳＩＯマスター回路１７０を動作させて、ＤＬ＿ＢＵＳＹ信号１８６をＨレベルとし、ダウンロード動作４０６を開始する。ＳＩＯマスター回路１７０は、スレーブ選択信号１０２、データクロック信号１０４およびＭＯＳＩ信号１０６をドライブし（４１４）、シリアルＥＥＰＲＯＭ１３０のＳＩＯスレーブ回路１４０がドライブするＭＩＳＯ信号１０８からプログラムデータの読出しを行う（４１６）。
【００５０】
ダウンロードが完了したら、ダウンロード制御回路１８０は、ＤＬ＿ＢＵＳＹ信号１８６をＬレベルとするとともに、ＬアクティブであるＣＰＵリセット信号１８４を解除する。スレーブマイコン１５０のスレーブＣＰＵ１５２が動作を開始し、通常動作４０８に移行する。
【００５１】
通常動作４０８中は、マスターマイコン１１０がシリアル通信を行わないとき、スレーブ選択信号１０２、データクロック信号１０４、ＭＯＳＩ信号１０６、ＭＩＳＯ信号１０８への出力は、全てハイ・インピーダンス（Ｈｉ-Ｚ）となり、プルアップまたはプルダウンされてＨレベルまたはＬレベルとなる。
【００５２】
マスターマイコン１１０が、スレーブマイコン１５０に対して、送受信する場合は、ＳＩＯマスター回路１２０が、スレーブ選択信号１０２をＬレベルにドライブすることで、マスターマイコン１１０のＳＳ出力１２２、ＳＣＫ出力１２４およびデータＭＯＳＩ出力１２６が、スレーブ選択信号１０２、データクロック信号１０４およびＭＯＳＩ信号１０６をドライブする（４１８）。またスレーブマイコン１５０のＳＩＯスレーブ回路１６０のデータＭＩＳＯ入力１７８が、ＭＩＳＯ信号１０８をドライブする（４２０）。
【００５３】
図１に示す実施形態では、スレーブマイコン１５０のＳＩＯマスター回路１７０およびＳＩＯスレーブ回路１６０が共用する複数の端子１５１ａ〜１５１ｄにマスターマイコン１１０とシリアルＥＥＰＲＯＭ１３０とがワイヤード接続されている。これにより、マスターマイコン１１０との通信およびシリアルＥＥＰＲＯＭ１３０からのプログラムダウンロードをシリアル通信にて行うスレーブマイコン１５０において、必要な端子数を削減することが可能となり、また、安価に実現することが可能となる。なお、図１および図２を参照して説明したシステム装置は、画像形成装置に好適に組み込むことができる。
【００５４】
以下、端子数を削減することができる、他の実施形態によるシステム装置について、図３〜図６を参照しながら説明する。
【００５５】
図３は、他の実施形態によるシステム装置の構成について説明する図である。図３に示すシステム装置２００は、シリアル通信により相互に接続された、マスターマイコン２１０と、シリアルＥＥＰＲＯＭ２３０と、モータ制御用スレーブマイコン２５０とを含み構成される。なお、図１に示すシステム装置１００と共通する構成要素に関しては、下２桁で同じ番号を有する２百番台の符号にて参照し、特段の変更がない場合は、詳細な説明は割愛する。
【００５６】
図１に示したマスターマイコン１１０と比較すると、図３に示すマスターマイコン２１０は、さらに、レディ（ＲＥＡＤＹ）信号の入力を受けるポート２１３を備える。図３に示すスレーブマイコン２５０は、さらに、レディ（ＲＥＡＤＹ）信号を出力するポート２５７を備える。
【００５７】
スレーブマイコン２５０がポート２５７から出力するレディ（ＲＥＡＤＹ）信号は、スレーブマイコン２５０のプログラムメモリ２５４へのプログラムデータのダウンロードが完了したことを示すものであり、マスターマイコン２１０からの動作要求に対してマスターマイコン２１０に当該レディ信号が応答される。このような信号を設けることにより、マスターマイコン２１０が、動作要求する前に、時間のかかるスレーブマイコン２５０のダウンロードが完了したかどうかを知ることができるようになる。
【００５８】
また、上述したように、スレーブマイコン２５０のプログラムソフトウェアデバッグが行われる場合もある。デバッグは、スレーブマイコン２５０のプログラムメモリ２５４を書き換えることで行われ、プログラムメモリ２５４の内容をシリアルＥＥＰＲＯＭ２３０に書き込むことでデバッグが完了する。この動作を図３で説明する。マスターマイコン２１０がＳＩＯマスター回路２２０から、スレーブマイコン２５０に対し、シリアルＥＥＰＲＯＭ２３０への書き込み命令を行うと、スレーブマイコン２５０は、ＲＥＡＤＹ信号２５７をディセーブル、すなわちＬレベルとし、共用するシリアル端子２５１ａ〜２５１ｄが使用中であることをマスターマイコン２１０に知らせる。ダウンロード制御回路２８０は、プログラムメモリ２５４の内容を、ＳＩＯマスター回路２７０を介して複数の端子２５１ａ〜２５１ｄからシリアルＥＥＰＲＯＭ２３０に書き込むことができる。
【００５９】
マスターマイコン２１０からスレーブマイコン２５０に指令、データ送信、データ要求する場合、図８（Ａ）および図８（Ｂ）を参照して説明した従来技術の場合と同様に、アドレスとデータのフレームを構成し、アドレスで送り先の場所や、命令の種類を指定する方法があり一般的である。
【００６０】
図４（Ａ）および図４（Ｂ）は、市販されたシリアルインターフェースのＥＥＰＲＰＯＭのアクセス方法を示したものである。ある種のＥＥＰＲＯＭは、図４（Ａ）および図４（Ｂ）のタイミングチャートに示すように、８ビットの命令をフレーム先頭にして動作する。
【００６１】
図１に示した実施形態では、マスターマイコン１１０からスレーブマイコン１５０に対して、例えばアドレス０２００（ＨＥＸ）の送信を行うと、スレーブマイコン１５０のＳＩＯスレーブ回路１６０で受信するが、シリアルＥＥＰＲＯＭ１３０のＳＩＯスレーブ回路１４０もライトコマンドと認識してしまう可能性がある。
【００６２】
図５は、他の実施形態によるシステム装置で採用されるメモリマップの構造を示す図である。図５で示すように、他の実施形態においては、マスターマイコン２１０からみたときのスレーブマイコン２５０のアドレスマッピングを、ＥＥＰＲＯＭの命令に相当する部分と合致しないように避けてマッピングする。そうすることにより、特にアクセスの競合の意識をすることなく、シリアル信号線を共用することができるようになる。共用するシリアル信号線に接続された複数のデバイスに対して、受信動作の可否を設定することなく、信号のやりとりが可能となるので、マスターマイコン２１０からシリアルＥＥＰＲＯＭ２３０への直接書込みも可能となる。
【００６３】
図６は、さらに他の実施形態によるシステム装置の構成について説明する図である。図３に示すシステム装置３００は、シリアル通信により相互に接続された、マスターマイコン３１０と、シリアルＥＥＰＲＯＭ３３０と、モータ制御用スレーブマイコン３５０とを含み構成される。なお、図３に示すシステム装置２００と共通する構成要素に関しては、下２桁で同じ番号を有する３百番台の符号にて参照し、特段の変更がない場合は、詳細な説明は割愛する。
【００６４】
図６に示すシステム装置３００は、図５に示した実施形態にあるメモリマップを変更することなしに、マスターマイコン３１０が、シリアルＥＥＰＲＯＭ３３０およびスレーブマイコン３５０へのアクセスの競合を避ける方法を実装するものである。
【００６５】
図３に示したマスターマイコン１１０と比較すると、図６に示すマスターマイコン３１０は、さらに、イネーブル（ＥＮＡＢＬＥ）信号を出力するポート３１１を備える。図６に示すスレーブマイコン３５０は、さらにイネーブル（ＥＮＡＢＬＥ）信号の入力を受けるイネーブル端子３５５を備える。
【００６６】
図６に示す実施形態では、シリアルＥＥＰＲＯＭ３３０のＳＩＯスレーブ回路３４０は、さらに、ライトプロテクト（Write Protect：ＷＰ）入力３４９を含み構成される。マスターマイコン３１０が、スレーブマイコン３５０内部のアドレス０２００（ＨＥＸ）にアクセスするとき、シリアルＥＥＰＲＯＭ３３０の命令に相当するアドレス０２００（ＨＥＸ）が送出されるが、事前にマスターマイコン３１０のポート３１１からスレーブマイコン３５０のイネーブル端子３５５（ＥＮＡＢＬＥ信号）をＨレベルに、さらに、ライトプロテクト信号をＨレベルにし、シリアルＥＥＰＲＯＭ３３０のＳＩＯスレーブ回路３４０のＷＰ入力３４９に入力する。これにより、間違ってシリアルＥＥＰＲＯＭ３３０が動作してしまうという競合を避けることができる。
【００６７】
一方で、マスターマイコン３１０がシリアルＥＥＰＲＯＭ３３０にアクセスするとき、マスターマイコン３１０のポート３１１から、スレーブマイコン３５０のイネーブル端子３５５をＬレベルに、さらに、シリアルＥＥＰＲＯＭ３３０のＷＰ入力３４９をＬレベルとすることで、スレーブマイコン３５０に、シリアルＥＥＰＲＯＭ３３０の命令に相当するアドレスがあったとしても、アドレスが競合するスレーブマイコン３５０に影響させずに、シリアルＥＥＰＲＯＭ３３０のみのアクセスとすることができる。このようにすることで、ＥＮＡＢＬＥ信号とＷＰ信号は同じ論理で制御でき、図５で説明した実施形態によるアドレスマッピングが採用できない場合であっても、マスターマイコン３１０からシリアルＥＥＰＲＯＭ３３０に直接書き込む機能をマスターマイコン３１０にＥＮＡＢＬＥ信号とは別にライトプロテクト信号を出力する端子を増やさずに実現可能である。
【００６８】
以上説明したように、上述までの実施形態によれば、第１の回路装置（マスターマイコン）と、不揮発性記憶装置（シリアルＥＥＰＲＯＭ）と、第１の回路装置（マスターマイコン）との通信および不揮発性記憶装置（シリアルＥＥＰＲＯＭ）からのデータ（例えばプログラム）の読み出しための端子数が削減された第２の回路装置（スレーブマイコン）を有する制御装置（システム装置）、該制御装置を含む画像形成装置および該回路装置を提供することができる。
【００６９】
シリアル通信の信号出力４本がワイヤード接続され、非使用時は、ハイ・インピーダンスとして、プルアップまたはプルダウンされて信号レベルが維持される。使用時には、マスターとなる側が、データクロック信号、スレーブセレクト信号、データＭＯＳＩをドライブし、スレーブとなる側が、データＭＩＳＯ信号線をＨレベルまたはＬレベルともにドライブする。これにより、シリアル通信のスレーブ回路の端子をシリアル通信マスター回路の端子として共用することにより端子を増やさずに、外部の不揮発性記憶媒体からプログラムをダウンロードする回路装置を構成することができる。
【００７０】
特定の実施形態によれば、第１の回路装置（マスターマイコン）は、不揮発性記憶装置（シリアルＥＥＰＲＯＭ）の入出力回路（ＳＩＯスレーブ回路）に対するライトプロテクト信号、または、第２の回路装置（スレーブマイコン）に対するライトイネーブル信号を制御するポート有することができる。これにより、第１の回路装置（マスターマイコン）は、アクセス競合することなく、不揮発性記憶装置（シリアルＥＥＰＲＯＭ）および第２の回路装置（スレーブマイコン）に対しアクセスすることが可能となる。
【００７１】
他の特定の実施形態によれば、第１の回路装置（マスターマイコン）から第２の回路装置（スレーブマイコン）へアドレスおよびデータを含むフレーム構造で送信を行う際に、不揮発性記憶装置（シリアルＥＥＰＲＯＭ）の命令に相当する部分と合致しないようなメモリマップ構造を有することができる。共用するシリアル信号線に接続された複数のデバイスに対して、受信動作の可否を設定することなく、信号のやりとりを可能とし、第１の回路装置（マスターマイコン）から不揮発性記憶装置（シリアルＥＥＰＲＯＭ）への直接書込みが可能となる。
【００７２】
さらに、他の特定の実施形態によれば、第１の回路装置（マスターマイコン）と不揮発性記憶装置（シリアルＥＥＰＲＯＭ）とが、第２の回路装置（スレーブマイコン）が備える複数の端子にワイヤード接続される。この構成により、端子数を減らしたスレーブマイコンを用いて安価にシステム装置を構成することができる。
【００７３】
さらに特定の実施形態によれば、第１の回路装置（マスターマイコン）からの動作要求に対し、データの読み出しが完了している場合に、データの読み出しが完了したことを示す信号（ＲＥＡＤＹ信号）を第１の回路装置（マスターマイコン）に応答するポートをさらに含むことができる。これにより、第１の回路装置（マスターマイコン）は、動作要求する前に、時間のかかる第２の回路装置（スレーブマイコン）のダウンロードが完了したかどうかを知ることが可能となる。
【００７４】
これまで本発明の実施形態について説明してきたが、本発明の実施形態は上述した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【００７５】
１００，２００，３００…システム装置、１０２，２０２，３０２…スレーブ選択信号、１０４，２０４，３０４…データクロック信号、１０６，２０６，３０６…ＭＯＳＩ信号、１０８，２０８，３０８…ＭＩＳＯ信号、１１０，２１０，３１０…マスターマイコン１１２，２１２，３１２…マスターＣＰＵ、１１４，１５４，２１４，２５４，３１４，３５４…プログラムメモリ、１１６，１５６，２１６，２５６，３１６，３５６…ワークメモリ、１２０，１７０，２２０，２７０，３２０，３７０…ＳＩＯマスター回路、１４０，１６０，２４０，２６０，３４０，３６０…ＳＩＯスレーブ回路、１３０，２３０，３３０…シリアルＥＥＰＲＯＭ、１５０，２５０，３５０…スレーブマイコン、１５１，２５１，３５１…端子、１５２，２５２，３５２…スレーブＣＰＵ、１５３，２５３，３５３…入出力部、１５８，２５８，３５８…モータ制御回路、１８０，２８０，３８０…ダウンロード制御回路、１８２，２８２，３８２…データバス、１８４，２８４，３８４…ＣＰＵリセット信号、１８６，２８６，３８６…ＤＬ＿ＢＵＳＹ信号、１９０，２９０，３９０…モータ、２１１，２１３，２５５，２５７，３１１，３１３，３５５，３５７…ポート
【先行技術文献】
【特許文献】
【００７６】
【特許文献１】特開２００６−１０９４２７号公報
【図１】
2019160204.tif 000003
【図２】
2019160204.tif 000004
【図３】
2019160204.tif 000005
【図４】
2019160204.tif 000006
【図５】
2019160204.tif 000007
【図６】
2019160204.tif 000008
【図７】
2019160204.tif 000009
【図８】
2019160204.tif 000010
【図９】
2019160204.tif 000011