(57)【特許請求の範囲】
【請求項１】
プロセッサを内蔵すると共にＲＯＭ及びＲＡＭと接続可能な集積回路チップを複数個有する情報処理装置であって、
複数の集積回路チップそれぞれは、
他の集積回路チップと通信するための通信部と、
設定に応じて、実行するプログラムを格納するメモリとしてＲＯＭ、ＲＡＭのいずれかのベクタアドレスを設定する設定部と、
プロセッサをリセット状態とする初期のデータを記憶するレジスタを有し、当該レジスタのデータを前記プロセッサのリセット端子に供給するのか、外部からの信号を前記プロセッサのリセット端子に供給するのかを、外部端子の論理レベルに基づいて選択するリセット制御部とを有し、
前記複数の集積回路チップにおける第１の集積回路チップは、
ＲＡＭと、当該第１の集積回路チップ及び接続される第２の集積回路チップが実行するためのプログラムを格納したＲＯＭに接続され、
前記設定部は、実行するプログラムの格納するメモリとして、接続されたＲＯＭのベクタアドレスを設定し、
前記リセット制御部は、外部からの信号を前記プロセッサのリセット端子に供給するように設定され、
前記複数の集積回路チップにおける第２の集積回路チップは、
ＲＡＭに接続され、
前記設定部は、実行するプログラムの格納するメモリとして、接続されたＲＡＭのベクタアドレスを設定し、
前記リセット制御部は、前記レジスタのデータを前記プロセッサのリセット端子に供給するように設定され、
システムの起動時、前記第１の集積回路チップのプロセッサは、
接続されたＲＯＭのプログラムに従って起動処理を行い、
前記通信部を介して、前記第２の集積回路チップと通信し、
前記通信部を介して、前記ＲＯＭに格納された前記第２の集積回路チップ用のプログラムを前記第２の集積回路チップに接続されたＲＡＭに転送し、
前記第２の集積回路チップ用のプログラムが前記第２の集積回路チップに接続されたＲＡＭに転送された後、前記通信部を介して、前記第２の集積回路チップのリセット制御部のレジスタにリセット解除を示すデータを格納することで、前記第２の集積回路チップのプロセッサに対して、ＲＡＭに格納されたプログラムに基づく起動を行わせる
ことを特徴とする情報処理装置。
【請求項２】
前記複数の集積回路チップにおける前記設定部は、外部端子の論理レベルに従い、ＲＯＭ、ＲＡＭのいずれか一方のベクタアドレスをプロセッサに供給する第１の切替部を含むことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記複数の集積回路チップにおける前記リセット制御部は、前記レジスタのデータを前記プロセッサのリセット端子に供給するのか、外部からの信号を前記プロセッサのリセット端子に供給するのかを、外部端子の論理レベルに基づいて切替える第２の切替部を含むことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記複数の集積回路チップにおける前記通信部は、バスマスターとしてデータ転送を行うＤＭＡコントローラを内蔵することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
印字部を更に備えることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路チップを複数個有する情報処理装置に関するものである。
【背景技術】
【０００２】
近年、装置の複雑化に伴い、複数の集積回路チップにより装置を構成する場合が多くなってきた。複数の集積回路チップによる並列処理を行うためである。しかし、これらの集積回路チップのＣＰＵが動作するため、プログラムを格納するＲＯＭ、処理中のデータを一時的に格納するＲＡＭが、それぞれの集積回路チップに必要となる。
【０００３】
このような状況に対して、装置を構成する部品点数を減らしてコストダウンすることが課題となっている。そこで、一の集積回路チップから他の集積回路チップにプログラムを転送することで他方の集積回路チップのＲＯＭを不要とする技術が考えられている（特許文献１）
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−９９５１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１のように集積回路チップに対してマスターチップまたはスレーブチップの機能を決定して製造した場合、マスターチップまたはスレーブチップのそれぞれの事情に応じて起動モードの選択や通信接続の設定を予め設定することができる。
【０００６】
しかし、このようにマスターチップまたはスレーブチップをそれぞれ製造すると開発費や開発工数が増大するおそれがあった。 そこで、マスターまたはスレーブの役割を担うチップを同一のチップで構成することも考えられる。しかしながら、チップのマスターまたはスレーブの役割は製造時点で決定される。特許文献１の場合では、マスターチップとして製造されたチップはマスターとしてのみ機能を発揮するため、上述したように設定された役割によって動作内容を決めることができない。
【課題を解決するための手段】
【０００８】
この課題を解決するため、例えば本発明の情報処理装置は以下の構成を備える。すなわち、
プロセッサを内蔵すると共にＲＯＭ及びＲＡＭと接続可能な集積回路チップを複数個有する情報処理装置であって、
複数の集積回路チップそれぞれは、
他の集積回路チップと通信するための通信部と、
設定に応じて、実行するプログラムを格納するメモリとしてＲＯＭ、ＲＡＭのいずれかのベクタアドレスを設定する設定部と、
プロセッサをリセット状態とする初期のデータを記憶するレジスタを有し、当該レジスタのデータを前記プロセッサのリセット端子に供給するのか、外部からの信号を前記プロセッサのリセット端子に供給するのかを、外部端子の論理レベルに基づいて選択するリセット制御部とを有し、
前記複数の集積回路チップにおける第１の集積回路チップは、
ＲＡＭと、当該第１の集積回路チップ及び接続される第２の集積回路チップが実行するためのプログラムを格納したＲＯＭに接続され、
前記設定部は、実行するプログラムの格納するメモリとして、接続されたＲＯＭのベクタアドレスを設定し、
前記リセット制御部は、外部からの信号を前記プロセッサのリセット端子に供給するように設定され、
前記複数の集積回路チップにおける第２の集積回路チップは、
ＲＡＭに接続され、
前記設定部は、実行するプログラムの格納するメモリとして、接続されたＲＡＭのベクタアドレスを設定し、
前記リセット制御部は、前記レジスタのデータを前記プロセッサのリセット端子に供給するように設定され、
システムの起動時、前記第１の集積回路チップのプロセッサは、
接続されたＲＯＭのプログラムに従って起動処理を行い、
前記通信部を介して、前記第２の集積回路チップと通信し、
前記通信部を介して、前記ＲＯＭに格納された前記第２の集積回路チップ用のプログラムを前記第２の集積回路チップに接続されたＲＡＭに転送し、
前記第２の集積回路チップ用のプログラムが前記第２の集積回路チップに接続されたＲＡＭに転送された後、前記通信部を介して、前記第２の集積回路チップのリセット制御部のレジスタにリセット解除を示すデータを格納することで、前記第２の集積回路チップのプロセッサに対して、ＲＡＭに格納されたプログラムに基づく起動を行わせることを特徴とする。
【発明の効果】
【０００９】
本発明の集積回路チップを複数個有する装置を構成したとしても、全ての集積回路チップにＲＯＭを接続する必要がなくなり、装置の開発費または製造コストを下げることが可能となる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態における情報処理システムのブロック構成図。
【図２】第１の実施形態における通信部の構成図。
【図３】第１の実施形態におけるＣＰＵリセット制御部の構成図。
【図４】第１の実施形態におけるブートベクタ設定部の構成図。
【図５】第１の実施形態における情報処理システムの処理を示すフローチャート。
【図６】第２の実施形態における情報処理システムのブロック構成図。
【図７】第２の実施形態における情報処理システムのブロック構成図。
【図８】第３の実施形態における情報処理システムのブロック構成図。
【図９】第３の実施形態における情報処理システムの処理を示すフローチャート。
【図１０】第４の実施形態における情報処理システムのブロック構成図。
【図１１】第４の実施形態におけるブートベクタ設定部の構成図。
【図１２】第４の実施形態における情報処理システムの処理を示すフローチャート。
【図１３】第５の実施形態における情報処理システムのブロック構成図。
【図１４】第６の実施形態における情報処理システムのブロック構成図。
【図１５】第７の実施形態における画像処理装置のブロック構成図。
【発明を実施するための形態】
【００１１】
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。
【００１２】
［第１の実施形態］
図１は、本第１の実施形態の情報処理システム（又は情報処理装置）のブロック構成図である。本システムは、互いに並列に処理可能で、且つ、同じ回路構成の集積回路チップを複数個有する。具体的には、本システムは、第１の集積回路チップ１１０と第２の集積回路チップ１２０が基板上に実装されている。これらチップは共にＲＯＭ、ＲＡＭが接続可能である。本実施形態における第１の集積回路チップ１１０はＲＯＭ１３２、ＲＡＭ１３３を接続している。しかし、第２の集積回路チップ１２０はＲＡＭ１４３を接続しているものの、ＲＯＭを接続していない。第２の集積回路チップに接続する物品点数を減らすためである。また、本システムの、第１の集積回路チップ１１０には、チップリセット信号線を供給するためのリセットＩＣ１７０が接続されている。また、第１の集積回路チップ１１０と第２の集積回路チップ１２０が通信を行うため、これらはインターフェース１５０で接続されている。インタフェース１５０は、シリアルであっても良いし、パラレルのインターフェースであっても良い。また、第１の集積回路チップ１１０が第２の集積回路チップ１２０をリセットするため、これら間にチップリセット信号線１８１が設けられている。
【００１３】
なお、この情報処理システムを実装する装置は特に問わないが、一例を示すのであれば印刷装置である。昨今の印刷装置の記録解像度が高まるばかりであり、扱うデータ量も膨大になる。それ故、印刷データの受信処理と、印刷に係る記録ヘッドの駆動や記録シートと搬送等の印刷処理を別々の集積回路で実現することで、処理負担の分散を図ることができる。
【００１４】
第１の集積回路チップ１１０と第２の集積回路チップ１２０は共に同じ構成である。それ故、第１の集積回路チップ１１０内の参照符号１１１乃至１１９と、第２の集積回路チップ１２０における参照符号１２１乃至１２９は同じである。また、第１の集積回路チップ１１０には、端子１３５乃至１３７が設けられている。同様の端子１４５乃至１４７が第２の集積回路チップ１２０にも設けられている。
【００１５】
まず、第１の集積回路チップ１１０について説明する。第１の集積回路チップ１１０はＣＰＵ（又はプロセッサ）１１１を内蔵している。また、この第１の集積回路チップ１１０は、ＲＯＭコントローラ部１１２、ＲＡＭコントローラ部１１３、端子制御部１１４、通信部１１５、ＣＰＵリセット制御部１１６、ブートベクタ設定部１１７を有する。また、第１の集積回路チップ１１０には、通信モード設定端子１３５、ＣＰＵ起動モード設定端子１３６、ブートベクタ設定端子１３７が設けられている。また、ＣＰＵリセット制御部１１６とＣＰＵ１１１とは、ＣＰＵリセット信号線１７２で接続されている。また、ブートベクタ設定部１１７とＣＰＵ１１１とは、ブートベクタ信号線１１９で接続されている。そして、第１の集積回路チップ１１０内には、上記構成要素を接続するための基幹バス１１８が設けられている。
【００１６】
なお、以下の説明では、説明を簡素化するため、信号線の参照符号を、信号そのものを表す参照符号として使用する。例えば、ＣＰＵリセット制御部１１６がＣＰＵ１１１をリセットするためにＣＰＵリセット信号線１７２上にリセット信号を出力することを、ＣＰＵリセット制御部１１６がＣＰＵ１１１にＣＰＵリセット信号線１７２を供給する、等と表現する。
【００１７】
ＣＰＵ１１１は、プログラムに従って情報処理システムの制御を行う処理実行手段である。ＲＯＭコントローラ部１１２は、ＲＯＭ１３２からデータを読み出すためのＲＯＭ制御手段である。ＲＯＭ１３２はＣＰＵ１１１が実行するプログラム等を格納する。ＲＡＭコントローラ部１１３は、ＲＡＭ１３３とのデータの読み書きを行うためのＲＡＭ制御手段である。ＲＡＭ１３３は、実行中のプログラムを格納したり、処理中の画像データ等の一時的なデータを格納したりする記憶手段である。端子制御部１１４は第２の集積回路チップ１２０のチップリセット信号１８１を制御するＩ／Ｏ手段である。通信部１１５は、インターフェース１５０を介して第２の集積回路チップ１２０と通信を行うため通信手段であり、バスマスターとして機能する。ＣＰＵリセット制御部１１６は、ＣＰＵ１１１のリセット信号１７２を生成するＣＰＵリセット手段である。ブートベクタ設定部１１７は、ＣＰＵ１１１が起動（ブート）したときにプログラムを読み出すアドレスを示すブートベクタアドレス信号１１９を生成するブート・アドレス選択手段である。基幹バス１１８は、ＣＰＵ１１１からアクセスするほか、通信部の接続が確立した後は他のチップのＣＰＵ１２１からもアクセスすることが可能である。通信モード設定端子１３５は、通信部１１５のモードを設定する通信モード設定手段である。ＣＰＵ起動モード設定端子１３６は、ＣＰＵリセット制御部１１６の起動モードを設定する起動モード設定手段である。ブートベクタ設定端子１３７は、ブートベクタ設定部１１７の値を設定するブート・アドレス選択手段である。
【００１８】
次に、第２の集積回路チップ１２０の構成を説明する。この第２の集積回路チップ１２０の構成は、第１の集積回路チップ１１０と同じである。つまり、第２の集積回路チップ１２０は、ＣＰＵ１２１、ＲＯＭコントローラ部１２２、ＲＡＭコントローラ部１２３、端子制御部１２４、通信部１２５、ＣＰＵリセット制御部１２６、ブートベクタ制御部１２７を有する。また、第２の集積回路チップ１２０は、通信モード設定端子１４５、ＣＰＵ起動モード設定端子１４６、ブートベクタ設定端子１４７を有する。また、参照符号１８２はＣＰＵリセット信号、２９はブートベクタ信号である。
【００１９】
上記のように、第１の集積回路チップ１１０と第２の集積回路チップ１２０は、同じ回路構成であるが、以下の点で異なる。
【００２０】
すなわち、第１の集積回路チップ１１０のＲＯＭコントローラ部１１２は、ＲＯＭを接続しておりＲＯＭからプログラムを読み出すことができる。一方、第２の集積回路チップ１２０のＲＯＭコントローラ部１２２は、ＲＯＭを接続しておらずプログラムの読み出しを行わない（行えない）。
【００２１】
また、第１の集積回路チップ１１０の各端子は以下のように設定される。通信モード設定端子１３５は、プルアップ（端子＝１）してマスターモードに設定されている。ＣＰＵ起動モード設定端子１３６は、プルダウン（端子＝０）して起動時リセット解除に設定する。ブートベクタ設定端子１３７は、プルダウン（端子＝０）してＲＯＭアドレスに設定する。
【００２２】
一方、第２の集積回路チップ１２０の各端子は以下のように設定される。通信モード設定端子１４５は、プルダウン（端子＝０）してスレーブモードに設定する。ＣＰＵ起動モード設定端子１４６は、プルアップ（端子＝１）して起動時リセット状態に設定する。そして、ブートベクタ設定端子１４７は、プルアップ（端子＝１）にしてＲＡＭアドレスに設定する。
【００２３】
なお、上記実施例では、集積回路チップの外部端子として、第１の集積回路チップ１１０の通信モード設定端子１３５、ＣＰＵ起動モード設定端子１３６、ブートベクタ設定端子１３７を設ける例を説明した。しかし、これら兼用して同じ１つの設定端子としても良い。同様に、第２の集積回路チップ１２０の通信モード設定端子１４５、ＣＰＵ起動モード設定端子１４６、ブートベクタ設定端子１４７を兼用して同じ設定端子にしても良い。
【００２４】
図２は、第１の実施形態における、第１の集積回路チップ１１０の通信部１１５と第２の集積回路チップ１２０の通信部１２５それぞれの構成と接続関係を示している。図１と同じ部分は同じ記号で表し説明を省略する。
【００２５】
まず、第１の集積回路チップ１１０の通信部１１５の構成を説明する。通信部１１５は、レジスタ部２１１を有する。このレジスタ部２１１は、通信設定レジスタ２１２、イネーブル・レジスタ２１３を含む。また、通信部１１５は、イネーブル信号切替部２１４、伝送部２１５、ＤＭＡコントローラ２１６を含む。レジスタ部２１１は、通信部１１５が通信を行うための各種の設定を行う。通信設定レジスタ２１２は、通信を行うための設定レジスタである。イネーブル・レジスタ２１３は、ＣＰＵ１１１の設定により伝送部２１５を通信可能とするためのイネーブル信号を生成するレジスタである。イネーブル信号切替部２１４は伝送部２１５を通信可能とするイネーブル信号を切り替えるイネーブル信号切り替え手段である。伝送部２１５は電気的信号をデジタルデータに変換する物理層やプロトコル解析やパケット処理等を行うトランザクション層により構成される通信手段である。ＤＭＡコントローラ部２１６はＣＰＵ１１１の設定によりデータ転送を行うＤＭＡ転送制御手段である。
【００２６】
第２の集積回路チップ１２０の通信部１２５の構成は、第１の集積回路チップ１１０の通信部１１５の構成と同じである。それ故、図示の参照符号２２１乃至２２６は、参照符号２１１乃至２１６に対応する。ただし、ただし第１の集積回路チップ１１０の通信部１１５と第２の集積回路チップ１２０の通信部１２５は以下の点で異なる。
【００２７】
通信部１１５は、通信モード設定端子１３５によりマスターモード（モード設定端子＝１）になっている。従って、通信部１１５はインターフェース１３０の通信接続や省電力の主導権を持つ。さらにイネーブル信号切替部２１４はイネーブル・レジスタ２１３からの信号をイネーブル信号として選択している。
【００２８】
一方、第２の集積回路チップ１２０の通信部１２５は、通信モード設定端子１４５によりスレーブモード（モード設定端子＝０）になっている。従って、主導権を有さず、従の関係となる。さらにイネーブル信号切替部２１４はリセット信号をイネーブル信号として選択している。
【００２９】
このようなインターフェースのモード設定が必要な例としてＰＣＩ−Ｅ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｅｘｐｒｅｓｓ）を挙げる。ＰＣＩ−Ｅでは、Ｒｏｏｔ  Ｃｏｍｐｌｅｘ（以下ＲＣ）モードのときにマスターとしてインターフェースの制御を行う。一方、Ｅｎｄ  Ｐｏｉｎｔ（以下ＥＰ）モードのときにスレーブとして制御される。情報処理システムの起動時にはモードに応じて以下のように動作する。ＲＣモードの場合、ＣＰＵのプログラム実行により、インターフェースの通信速度等の設定や通信開始の設定を行う。ここで、通信開始前に通信速度等の設定をしておく必要がある。さらにＥＰモード側へ、ベース・アドレスやアドレス変換の設定を行う。一方、ＥＰモードの場合は、ＲＣモード側からの前記設定等の制御を待ち受ける状態になる。
【００３０】
本第１の実施形態ではイネーブル信号とリセット信号を別の信号として取り扱っているが、イネーブル信号がそのままリセット信号として伝送部に作用する構成であって、伝送部はリセット解除されると通信可能になる実装であってもよい。
【００３１】
なお、ＤＭＡコントローラ部２１６、２２６は、必須な構成ではなく、ＤＭＡ制御手段を搭載しない構成でもよい。また、ＤＭＡ制御手段を通信部１１５、１２５の外部に実装してもよい。
【００３２】
図３は、第１の実施形態における、第１の集積回路チップ１１０のＣＰＵリセット制御部１１６と、第２の集積回路チップ１２０のＣＰＵリセット制御部１２６それぞれの構成と接続関係を示している。図１と同じ部分は同じ記号で表し説明を省略する。
【００３３】
まず、第１の集積回路チップ１１０のＣＰＵリセット制御部１１６の構成を説明する。ＣＰＵリセット制御部１１６は、レジスタ部３１１を有する。このレジスタ部３１１は、制御レジスタ３１２を含み、電源投入時にはＣＰＵ１１１にとってのリセット状態を示す論理レベルの値が格納される。例えば、ＣＰＵ１１１のリセット端子が負論理の場合には制御レジスタ３１２は初期値として０が格納されるようになっている。ＣＰＵリセット信号切替部１３１は、チップリセット信号１７１と制御レジスタ３１２で生成されたＣＰＵリセット信号を切り替えるＣＰＵリセット信号切り替え手段である。
【００３４】
第２の集積回路チップ１２０のＣＰＵリセット制御部１２６の構成は、第１の集積回路チップ１１０のＣＰＵリセット制御部１１６の構成と同じである。ただし第１の集積回路チップ１１０のＣＰＵリセット制御部１１６と第２の集積回路チップ１２０のＣＰＵリセット制御部１２６は以下の点で異なる。
【００３５】
ＣＰＵリセット制御部１１６はＣＰＵ起動モード設定端子１３６により起動時リセット解除（モード設定端子＝０）になっており、ＣＰＵリセット信号切替部３１３はチップリセット信号１７１からの信号をＣＰＵリセット信号１７２として選択している。一方、ＣＰＵリセット制御部１２６はＣＰＵ起動モード設定端子１４６により起動時リセット状態（モード設定端子＝１）になっており、ＣＰＵリセット信号切替部３２３は制御レジスタ３２２からの信号をＣＰＵリセット信号１８２として選択している。
【００３６】
図４は、第１の実施形態における、第１の集積回路チップ１１０のブートベクタ設定部１１７と、第２の集積回路チップ１２０のブートベクタ設定部１２７の構成と接続関係を示している。図１と同じ部分は同じ記号で表し説明を省略する。
【００３７】
まず、第１の集積回路チップ１１０のブートベクタ設定部１１７の構成を説明する。ブートベクタ設定部１１７は、ＲＯＭ空間アドレス生成部４１１、ＲＡＭ空間アドレス生成部４１２、及び、ブートベクタ信号切替部４１３を含む。ＲＯＭ空間アドレス生成部４１１は、メモリ空間の内ＲＯＭ領域がマッピングされたアドレスを指し示す。一方、ＲＡＭ空間アドレス生成部４１２はメモリ空間の内ＲＡＭがマッピングされたアドレスを指し示す。ＲＡＭ空間アドレス生成部４１２はメモリ空間からＣＰＵ１１１がアクセスして設定することが可能である。ブートベクタ信号切替部４１３はＲＯＭ空間アドレス生成部４１１からのアドレス値とＲＡＭ空間アドレス生成部４１２からのアドレス値を切り替えてブートベクタ信号として出力するブートベクタ値切り替え手段である。
【００３８】
第２の集積回路チップ１２０のブートベクタ設定部１２７の構成は、第１の集積回路チップ１１０のブートベクタ設定部１１７の構成と同じである。ただし第１の集積回路チップ１１０のブートベクタ設定部１１７と第２の集積回路チップ１２０のブートベクタ設定部１２７は以下の点で異なる。
【００３９】
ブートベクタ設定部１１７はブートベクタ設定端子１３７によりＲＯＭアドレス（モード設定端子＝０）が選択されている。そのためＲＯＭ空間アドレス生成部４１１からのアドレス値がブートベクタアドレス値としてＣＰＵ１１１に伝達される。一方、ブートベクタ設定部１２７はブートベクタ設定端子１４７によりＲＡＭアドレス（モード設定端子＝１）が選択されている。そのためＲＡＭ空間アドレス生成部４２２からのアドレス値がブートベクタアドレス値としてＣＰＵ１２１に伝達する。
【００４０】
なお、ＲＡＭ空間アドレス生成部４１２、４２２に、メモリ空間からアクセスできる構成で記載したが、メモリ空間からアクセスできない固定値の構成でも実現可能である。
【００４１】
図５は、第１の実施形態における情報処理システムの処理手順を示すフローチャートである。以下、同図に従って本第１の実施形態の情報処理システムの起動処理時のシーケンスを説明する。
【００４２】
実施形態の情報処理システムに電源が投入されると、Ｓ５０１において、リセットＩＣ１７０が第１の集積回路チップ１１０のリセットを解除する。なお、このとき第２の集積回路チップ１２０は第１の集積回路チップの端子制御部１１４の出力するチップリセット信号１８１によりリセット状態になっている。
【００４３】
さらに第１の集積回路チップ１１０では、通信モード設定端子１３５によりマスターモードになっており、通信部１１５はイネーブルとならない。またＣＰＵ起動モード設定端子１３６により起動時リセット解除に設定されているので、ＣＰＵリセット制御部１１６はＣＰＵリセット信号１７２を解除する。この結果、Ｓ５０２において、ＣＰＵ１１１のリセットが解除される。以降はＣＰＵ１１１の制御化の処理となる。
【００４４】
Ｓ５０３において、ＣＰＵ１１１は、ブートベクタ設定部１１７が出力するＲＯＭアドレスから起動プログラムを読み出し、その後第１の集積回路チップの初期化を行う。そしてＣＰＵ１１１は、Ｓ５０４において、通信部１１５のレジスタを設定する。
【００４５】
Ｓ５０５において、ＣＰＵ１１１は、端子制御部１１４にアクセスし、設定により第２の集積回路チップ１２０のリセットを解除する。その結果、Ｓ５１５にて、第２の集積回路チップ１２０のチップリセットが解除される。このとき、第２の集積回路チップ１２０では、通信モード設定端子１４５によりスレーブモードになっており、通信部１２５はイネーブルとなる（Ｓ５１６）。またＣＰＵ起動モード設定端子１４６により起動時リセット状態に設定されているので、ＣＰＵリセット制御部１２６はＣＰＵリセット信号１８２を解除しない。
【００４６】
Ｓ５０６にて、ＣＰＵ１１１は、通信部１１５のイネーブル・レジスタ２１３を設定することにより、通信部１１５を介して通信部１２５との接続を行う。そしてＳ５０７において通信部１１５，１２５の接続するのを待つ。通信部１１５、１２５が接続すると、ＣＰＵ１１１は、第２の集積回路チップ１２０におけるメモリ空間、Ｉ／Ｏ空間を自由にアクセスすることができる。従って、ＣＰＵ１１１は、通信部１１５を介して、第２の集積回路チップ１２０におけるＲＡＭコントローラ部１２３やＣＰＵリセット制御部１２６等へもアクセス可能となる。
【００４７】
Ｓ５０８において、ＣＰＵ１１１は、第１の集積回路チップ１１０のＲＯＭ１３２内に格納された、第２の集積回路チップ１２０用のプログラムを、第２の集積回路チップ１２０のＲＡＭ１４３に転送する。この結果、Ｓ５１８にて、第２の集積回路チップ１２０のＲＡＭコントローラ１２３は、通信部１２５を介して受信したプログラムを、ＲＡＭ１４３に格納する。なお、このプログラム転送は、ＤＭＡコントローラ部２１６、２２６を用いたＤＭＡ転送でプログラムを転送する方法が望ましい。つまり、ＣＰＵ１１１は自身が有する通信部１１５は勿論、第２の集積回路チップ１２０内の通信部１２５内のＤＭＡコントローラ２２６に各種パメータをセットした上で、転送を行わせる。ＤＭＡコントローラは、バスマスターとして機能する。よって、例えば第２の集積回路チップ１２０のＣＰＵ１２１がリセット状態であっても、ＤＭＡコントローラ２２６は、第１の集積回路チップから転送されてきたプログラムを、ＲＡＭコントローラ部１２３を介してＲＡＭ１４３に格納することができる。なお、Ｓ５０８において、ＲＯＭ１３２からＲＡＭ１３３に展開してから、ＲＡＭ１４３に転送してもよい。
【００４８】
プログラムの転送が完了したら、Ｓ５０９において、ＣＰＵ１１１は、通信部１１５を介して、第２の集積回路チップ１２０のＣＰＵリセット制御部１２６にアクセスし、ＣＰＵのリセットを解除するデータを、制御レジスタ３２２に格納する。この結果、ＣＰＵリセット解除信号１８２がＣＰＵ１２１に供給され、ＣＰＵ１２１が起動する。Ｓ５１９において、ＣＰＵ１２１はＲＡＭ１４３から起動プログラムを読み出し、第２の集積回路チップ１２０の初期化を行う。
【００４９】
ここで、Ｓ５１５、Ｓ５１６、Ｓ５１８、Ｓ５１９は、第１の集積回路チップ１１０からの制御により遷移するステートであり能動的に動作するわけではないという意味で、破線でつなぐ。
【００５０】
本第１の実施形態において、Ｓ５０５（Ｓ５１５）では、第２の集積回路チップ１２０の通信部１２５はチップリセット解除によりイネーブルとなる。一方、Ｓ５０６では、第１の集積回路チップ１１０の通信部１１５はＣＰＵ１１１の制御によりイネーブルとなる。これはスレーブ設定の通信部１２５はレジスタ設定することなくイネーブルにすることができるのに対し、マスター設定の通信部１２６はＳ５０４の通信部の設定が必要であるからである。
【００５１】
なお、上記制御を行うためには、Ｓ５０５はＳ５０６より以前であればよく、Ｓ５０４以前にＳ５０５の制御を行ってもよい。また、第２の集積回路チップ１２０のＲＡＭ１４３に格納するプログラムのアドレスが固定でない場合は、Ｓ５０９の前に、ＲＡＭ空間アドレス生成部４２２にプログラムを格納したアドレスを設定することが可能である。
【００５２】
以上説明したように本第１の実施形態によれば、同じ回路構成の２つの集積回路チップを用いながらも、一方にはＲＯＭ１３２、ＲＡＭ１３２、もう一方にはＲＡＭ１４３のみ実装し、且つ、互いに独立して動作するシステムを構成することが可能になる。
【００５３】
［第２の実施形態］
第２の実施形態では、通信モード設定手段、ブート・アドレス選択手段を用いた例を説明する。図６は、第２の実施形態における情報処理システムのブロック構成図である。図１と同じ部分は同じ記号で表し説明を省略する。それ故、以下では、第１の実施形態（図１）と異なる点について説明する。
【００５４】
本第２の実施形態（図６）では、図１に示されたＣＰＵリセット制御部１１６、１２６は存在しない。また、ＣＰＵ起動モード設定端子１３６、１４６もない。
【００５５】
一方、本第２の実施形態では、ポート制御部１１４がデフォルトでＣＰＵリセット信号１８２を出力するポートを有しており、この信号の制御により、第２の集積回路チップ１２０のＣＰＵ１２１のリセットを操作することができる。
【００５６】
上記を踏まえ、図７のフローチャートに従って、本第２の実施形態における情報処理システムの起動時の処理シーケンスを説明する。
【００５７】
図７におけるＳ７０１〜Ｓ７０８は、図５のＳ５０１〜Ｓ５０８と同じなので説明を省略する。Ｓ７０９において、ＣＰＵ１１１は、第１の集積回路チップ１１０の端子制御部１１４の所定のポートから、第２の集積回路チップ１２０のＣＰＵ１２１のリセットを解除する信号を出力する。この結果、Ｓ７１９において、第２の集積回路チップ１２０内のＣＰＵ１２１は、ＲＡＭ１４３から起動プログラムを読み出し、第２の集積回路チップ１２０の初期化を行うことになる。
【００５８】
［第３の実施形態］
第３の実施形態では、起動モード選択手段、ブート・アドレス選択手段を用いる例を説明する。
【００５９】
図８は、第３の実施形態における情報処理システムのブロック構成図である。図１と同じ部分は同じ記号で表し説明を省略する。それ故、以下では、第１の実施形態（図１）と異なる点について説明する。
【００６０】
本第３の実施形態では、通信部１１５、１２５はリセットが解除されれば初期設定のまま通信ができる実装とする。このようなインターフェースのモード設定が必要な例としてＲＳ−２３２Ｃのようにマスター／スレーブの関係ではなく調停信号のみで転送するような場合が考えられる。またＵＳＢのＯｎ−Ｔｈｅ−Ｇｏのようにマスター／スレーブを自動的に決定するシステムがある。本第３の実施形態では、このようなシステムを使用した場合を想定しているので、通信モード設定端子１３５、１４５は不要としている。
【００６１】
上記を踏まえ、図９のフローチャートに従って、本第３の実施形態における情報処理システムの起動時の処理シーケンスを説明する。
【００６２】
情報処理システムに電源が投入されると、Ｓ９０１において、リセットＩＣ１７０が第１の集積回路チップ１１０のリセットを解除する。するとＳ９０２において、通信部１１５が自動で使用可能になる。なお、このとき第２の集積回路チップ１２０は第１の集積回路チップの端子制御部１１４の出力するチップリセット信号１８１によりリセット状態になっている。
【００６３】
またＣＰＵ起動モード設定端子１３６により起動時リセット解除に設定されているので、ＣＰＵリセット制御部１１６はＣＰＵリセット信号１７２を解除する。この結果、Ｓ９０３において、ＣＰＵ１１１のリセットが解除される。
【００６４】
Ｓ９０４において、ＣＰＵ１１１は、ブートベクタ設定部１１７が出力するＲＯＭアドレスから起動プログラムを読み出して実行し、その後、第１の集積回路チップの初期化を行う。
【００６５】
Ｓ９０５にて、ＣＰＵ１１１は、端子制御部１１４にアクセスし、端子制御部１１４を設定することで、第２の集積回路チップ１２０のリセットを解除する信号を出力させる。この結果、Ｓ９１５において第２の集積回路チップ１２０のチップリセットが解除される。このとき、ＣＰＵ起動モード設定端子１４６により起動時リセット状態に設定されているので、ＣＰＵリセット制御部１２６はＣＰＵ１２１に対するＣＰＵリセット信号１８２を出力しない（ＣＰＵ１２１のリセットを解除しない）。
【００６６】
Ｓ９０７にて、ＣＰＵ１１１は、通信部１１５を介して第２の集積回路チップ１２０（の通信部１２３）と接続するのを待つ。通信部１１５、１２５が接続すると、ＣＰＵ１１１から第２の集積回路チップ１２０内のメモリ空間、Ｉ／Ｏ空間を自由にアクセスすることができる。Ｓ９０８にて、ＣＰＵ１１１は、第１の集積回路チップ１１０のＲＯＭ１３２から、第２の集積回路チップ１２０用のプログラムを読み出し、第２の集積回路チップ１２０のＲＡＭ１４３に転送する。この結果、第２の集積回路チップ１２０のＲＡＭコントローラ１２３は、Ｓ９１８にて、通信部１２５を介して受信したプログラムをＲＡＭ１４３に格納する。プログラムの転送が完了したら、Ｓ９０９にて、ＣＰＵ１１１は、通信部１１５を介して。第２の集積回路チップ１２０のＣＰＵリセット制御部１２６にアクセスし、ＣＰＵのリセットを解除するための信号（データ）を、内部の制御レジスタに格納し、ＣＰＵ１２１を起動させる。Ｓ９１９において、第２の集積回路チップ１２０のＣＰＵ１２１は、ＲＡＭ１４３から起動プログラムを読み出し、第２の集積回路チップ１２０の初期化を行う。
【００６７】
［第４の実施形態］
第４の実施形態では、ブート・アドレス選択手段のみを用いる例を説明する。図１０は、第４の実施形態における情報処理システムのブロック構成図である。図１と同じ部分は同じ記号で表し説明を省略する。それ故、以下では、第１の実施形態（図１）と異なる点について説明する。
【００６８】
図１０に示す、本第４の実施形態のシステムには、通信モード設定端子１３５、１４５は存在しない。また、本第４の実施形態では、通信部１１５、１２５はリセットが解除されれば初期設定の状態で通信ができる実装とする。
【００６９】
図１１は、本第４の実施形態におけるブートベクタ設定部１１７、１２７の構成と接続関係を示している。図４と同じ構成については、同じ参照符号を付し、その説明は省略する。図示の符号４１４は、第１の集積回路チップ１１０のブート・アドレス設定レジスタであり、４２４は第２の集積回路チップ１２０のブート・アドレス設定レジスタである。
【００７０】
ブート・アドレス設定レジスタ４１４及び４２４には初期値としてＲＯＭの空間のアドレス値が設定されている。ＣＰＵからブート・アドレス設定レジスタにライト・アクセスすることにより所定のアドレス値を設定することができる。本第４の実施形態の場合、この後のフローで説明するＲＡＭ空間に格納したプログラムのアドレス値を設定する。
【００７１】
上記を踏まえ、図１２のフローチャートに従って、本第４の実施形態における情報処理システムの起動時の処理シーケンスを説明する。Ｓ１２０１〜Ｓ１２０８は、第３の実施形態の図９のＳ９０１〜Ｓ９０８と同じあるので、その説明を省略する。
【００７２】
Ｓ１２０９において、第１の集積回路チップ１１０のＣＰＵ１１１は、通信部１５０を介して、第２の集積回路チップ１２０のブートベクタ設定部１２７にアクセスし、ＲＡＭの空間のアドレス値に変更する。この後、Ｓ１２１０において、第１の集積回路チップ１１０のＣＰＵ１１１は、端子制御部１１４の所定のポートから、第２の集積回路チップ１２０のＣＰＵ１２１のリセットを解除する信号を出力する。この結果、Ｓ１２２０において、第２の集積回路チップ１２０のＣＰＵ１２１は、ＲＡＭ１４３から起動プログラムを読み出し、第２の集積回路チップ１２０の初期化を行う。
【００７３】
［第５の実施形態］
上記第１乃至第４の実施形態では、チップ数が２つの例であったが、第５の実施形態では３つのチップから構成されるシステムに適用した例を説明する。
【００７４】
図１３は、本第５の実施形態における情報処理システムのブロック構成図である。本システムは、第１の集積回路チップ１３１０、第２の集積回路チップ１３２０、及び、第３の集積回路チップ１３３０を有する。また、符号１７０はリセットＩＣ、１７１は第１の集積回路チップ１３１０のチップリセット信号である。符号１５１は第１の集積回路チップ１３１０と第２の集積回路チップ１３２０の通信を行うインターフェースであり、符号１５２は第２の集積回路チップ１３２０と第３の集積回路チップ１３３０の通信を行うインターフェースである。符号１８１は第２の集積回路チップ１３２０のチップリセット信号であり、符号１８２は第３の集積回路チップ１３３０のチップリセット信号である。本第５の実施形態では、第２の集積回路チップ１３２０は第１の集積回路チップ１３１０側と第３の集積回路チップ１３３０側の両方に通信部を有するものとする。なお、第１乃至第３の集積回路チップが同じ構成であるとするなら、第１の集積回路チップ１３１０、第３の集積回路チップ１３３０それぞれは、２つあるうちの一方のインターフェースしか利用しないことになる。
【００７５】
ここで、第１の集積回路チップ１３１０の構成を説明する。符号１３１３はブートベクタ設定端子、符号１３１４はＣＰＵ起動モード設定端子、符号１３１６は通信モード設定端子である。また、第１の集積回路チップ１３１０は、図示のごとくＲＯＭ１３１１、および、ＲＡＭ１３１２を接続している。このＲＯＭ１３１１には、第１の集積回路チップ１３１０は勿論のこと、第２の集積回路チップ１３２０、及び、第３の集積回路チップ１３３０のプログラムが格納されている。
【００７６】
第２の集積回路チップ１３２０の構成を説明する。符号１３２３はブートベクタ設定端子、符号１３２４はＣＰＵ起動モード設定端子、符号１３２５は第２の集積回路チップ側の通信モード設定端子、符号１３２６は第３の集積回路チップ側の通信モード設定端子である。第２の集積回路チップ１３２０にはＲＡＭ１３２２が接続されているものの、ＲＯＭは接続されていない。
【００７７】
第３の集積回路チップ１３３０の構成を説明する。符号１３３３はブートベクタ設定端子、符号１３３４はＣＰＵ起動モード設定端子、符号１３３５は通信モード設定端子である。第３の集積回路チップ１３３０にはＲＡＭ１３３２が接続されているものの、やはりＲＯＭは接続されていない。
【００７８】
図１３の構成の場合、第１の集積回路チップ１３１０から第２の集積回路チップ１３２０に、第２、第３の集積回路チップのプログラムを転送する。そして、第１の集積回路チップ１３１０は、第２の集積回路チップ１３２０のリセットを解除する。そして、第２の集積回路チップ１３２０（のＣＰＵ）は、ＲＡＭ１３２２に格納された第３の集積回路チップ用のプログラムを、第３の集積回路チップのＲＡＭに転送した後、第３の集積回路チップ１３３０のリセットを解除する。このとき。第２の集積回路チップ１３２０は、ＲＡＭ１３２２内の、第３の集積回路チップ１３３０用のプログラムは転送済みであるので削除（解放）する。
【００７９】
上記の構成とすれば、集積回路チップの数は３つに限らずそれ以上でも構わないことが理解できよう。
【００８０】
［第６の実施形態］
本第６の実施形態では、第１乃至第５の実施形態とリセット系統の異なるシステムの例を説明する。図１４は本第６の実施形態における情報処理システムのブロック構成図である。
【００８１】
図示のように、第１の集積回路チップ１１０のチップリセット信号１７１を、第２の集積回路チップ１２０のチップリセット信号１８１として用いる。この構成により、第１の実施形態の場合であれば、図５の制御フローにおいて、Ｓ５０５の工程を行うことなくＳ５０１のタイミングでＳ５１５を実行する構成とすることができる。
【００８２】
［第７の実施形態］
第７の実施形態では、印刷処理を含む画像処理装置１５００に実装した例を説明する。図１５は、その画像処理装置のブロック構成図である。
【００８３】
画像処理装置１５００は、コントローラチップ１５０１、印字制御チップ１５２０を有する。符号１５１１はコントローラチップに接続されたＲＯＭ、符号１５１２はコントローラチップに接続されたＲＡＭである。符号１５２２は印字制御チップに接続されたＲＡＭである。符号１５２３は印字制御チップに接続されたヘッドや紙搬送等を行う印字部であり、印字制御チップ１５２０が有する通信部や端子制御部に接続される。そして符号１５６０はネットワークである。
【００８４】
本構成例において、コントローラチップを、これまでの第１乃至第６の実施形態で説明した第１の集積回路チップ、印字制御チップを同第２の集積回路チップとする。第１乃至第６の実施形態の制御を行えば、ＲＯＭをコントローラチップのみに搭載し、印字制御チップ１５２０の端子を削減することもでき、コストダウンをすることができる。
【００８５】
こうした本発明を利用した装置は画像処理装置に限定されるものではない。例えばパソコン等の情報処理装置や特殊な産業機器であっても、複数のチップを使用し本発明に該当する制御を行っているならば当該発明の範囲に含まれる。
【産業上の利用可能性】
【００８６】
本明細書では、同一の集積回路チップをマスター／スレーブで用いる構成であったが、本構成に限られるものではない。すなわち、システムによってマスターとスレーブを選択して構成することができる集積回路チップで、モードによってＣＰＵ（プロセッサ）の起動タイミングを切り替えるように構成されたシステムであれば、本発明の範囲に含まれる。
【符号の説明】
【００８７】
１１０…第１の集積回路チップ、１２０…第２の集積回路チップ、１３２…ＲＯＭ、１３３…ＲＡＭ、１４３…ＲＡＭ
【図１】
0006568399.tif 000002
【図２】
0006568399.tif 000003
【図３】
0006568399.tif 000004
【図４】
0006568399.tif 000005
【図５】
0006568399.tif 000006
【図６】
0006568399.tif 000007
【図７】
0006568399.tif 000008
【図８】
0006568399.tif 000009
【図９】
0006568399.tif 000010
【図１０】
0006568399.tif 000011
【図１１】
0006568399.tif 000012
【図１２】
0006568399.tif 000013
【図１３】
0006568399.tif 000014
【図１４】
0006568399.tif 000015
【図１５】
0006568399.tif 000016