(57)【要約】【課題】  処理能力や記憶容量が少ないＣＰＵやＲＡＭにファームウェア更新を行わせると、その処理能力や記憶容量の少なさから、高速な更新ができない可能性がある。【解決手段】  第１のＣＰＵを含む第１のシステムと、第２のＣＰＵおよび第２のＣＰＵが実行するファームウェアを記憶するメモリを含む第２のシステムとを有する画像形成装置において、受け取ったデータを第２のシステム内のデバイスに書き込む書き込みデバイスに対して、第２のＣＰＵは、第１のシステムから受け取ったファームウェアの更新データを、第２のシステム内の前記メモリに書き込むことができるよう設定する。【選択図】  図３
2020021246.tif 000002
【特許請求の範囲】
【請求項１】
第１のＣＰＵを含む第１のシステムと、第２のＣＰＵを含む第２のシステムと、を有する画像形成装置において、
前記第１のシステムは、データを前記第１のシステムから前記第２システムに転送する転送デバイスを有し、
前記第２のシステムは、受け取ったデータを前記第２システムのデバイスに書き込む書き込みデバイスと、前記第２のＣＰＵが実行するファームウェアを記憶する不揮発性メモリと、
を有し、
前記第２のＣＰＵは、前記書き込みデバイスに対して、前記転送デバイスから受け取ったデータを前記第２システムの前記不揮発性メモリに書き込むことができるような設定を行い、
前記設定が前記第２のＣＰＵによって行われた前記書き込みデバイスは、前記第２のＣＰＵが実行するファームウェアの更新データを前記転送デバイスから受け取って、当該受け取った更新データを前記不揮発性メモリに書き込むことを特徴とする画像形成装置。
【請求項２】
前記書き込みデバイスは、前記第２のＣＰＵによって行われた前記設定にしたがって、前記転送デバイスから受け取った前記ファームウェアの更新データを、前記第２のＣＰＵが実行するファームウェアを記憶する前記不揮発性メモリに書き込むことを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記転送デバイスは、データ、および、当該データが書き込まれるアドレスとして前記第１のＣＰＵによって指定されたアドレスを、前記第１システムから前記第２システムに転送し、
前記第２のＣＰＵは、前記書き込みデバイスに対して、前記転送デバイスから転送された前記第１のＣＰＵによって指定された前記アドレスを、前記第２のシステムにおけるアドレスに変換し、かつ、前記転送デバイスから転送された前記データを、当該変換により得られる前記第２システムにおけるアドレスに該当するデバイスに書き込むことができるような設定を行うことを特徴とする請求項１または２に記載の画像形成装置。
【請求項４】
前記第２のシステムは、前記第２のＣＰＵ、前記不揮発性メモリ、前記書き込みデバイスそれぞれと接続しているバスを有し、
前記第２のシステムにおけるアドレスとは、前記第２のシステムが有する前記バス上のアドレスであることを特徴とする請求項３に記載の画像形成装置。
【請求項５】
データを記憶する不揮発性の記憶デバイスを有し、
前記不揮発性メモリに記憶されている前記ファームウェアは、前記設定を前記第２のＣＰＵに実行させるプログラムと、前記記憶デバイスに対してデータの書き込み制御を前記第２のＣＰＵに実行させるプログラムとを含み、
前記ファームウェアの更新データは、前記記憶デバイスに対してデータの書き込み制御を前記第２のＣＰＵに実行させるプログラムの更新データを含むことを特徴とする請求項１乃至４の何れか１項に記載の画像形成装置。
【請求項６】
前記不揮発性メモリは、前記設定を前記第２のＣＰＵに実行させるプログラムを記憶している第１の記憶領域と、前記記憶デバイスに対してデータの書き込み制御を前記第２のＣＰＵに実行させるプログラムを記憶している第２の記憶領域と、を含み、
前記設定を前記第２のＣＰＵに実行させるプログラムは、前記第１の記憶領域を前記書き込み手段によるデータの書き込み対象にしないようにすることを特徴とする請求項５に記載の画像形成装置。
【請求項７】
前記記憶デバイスは、ハードディスクドライブおよびソリッドステートドライブを含む複数の記憶デバイスの何れかであることを特徴とする請求項５または６に記載の画像形成装置。
【請求項８】
シートに画像を印刷する印刷デバイスを有し、
前記第２システムは、前記印刷デバイスによって印刷される画像に対して画像処理を行う画像処理デバイスを含むことを請求項１乃至７の何れか１項に記載の画像形成装置。
【請求項９】
前記第２のシステムは、前記画像処理デバイスを制御する第３のＣＰＵと、前記第３のＣＰＵのブートプログラムがロードされる揮発性メモリとを有し、
前記第１のシステムは、前記第３のＣＰＵの前記ブートプログラムを記憶する不揮発性メモリを有し、
前記第２のＣＰＵは、前記設定において、前記転送デバイスから受け取ったデータを前記第２のシステムの前記揮発性メモリに書き込むことができるような設定も行い、
前記設定が前記第２のＣＰＵによって行われた前記書き込みデバイスは、前記転送デバイスから受け取った前記第３のＣＰＵの前記ブートプログラムを、前記第３のＣＰＵが実行できるように前記揮発性メモリに書き込むことを特徴とする請求項８に記載の画像形成装置。
【請求項１０】
前記第１のＣＰＵは、前記転送デバイスに対して、前記第２システムを参照するための設定を行うことを特徴とする請求項１乃至８の何れか１項に記載の画像形成装置。
【請求項１１】
前記第１のシステムは、前記第２のＣＰＵが実行するファームウェアの前記更新データを前記画像形成装置の外部から取得する手段をさらに有することを特徴とする請求項１乃至１０の何れか１項に記載の画像形成装置。
【請求項１２】
前記第２のシステムは、前記第２のＣＰＵが前記ファームウェアを実行するために当該ファームウェアが前記第２のＣＰＵによってロードされる揮発性メモリを有し、
前記書き込みデバイスは、前記第２のＣＰＵが実行する前記ファームウェアの更新データを、前記第２のＣＰＵおよび前記ファームウェアがロードされる前記揮発性メモリを経由せずに、前記第２システムの前記不揮発性メモリに書き込むことを特徴とする請求項１乃至１１の何れか１項に記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファームウェアを更新する技術に関する。
【背景技術】
【０００２】
情報機器ではファームウェアを更新することによって、その情報機器に新たな機能を追加したり、プログラムの不具合を改善したりする。特許文献１は、ＵＳＢコントローラおよびＣＰＵを含むメインシステムと、画像プロセッサおよびプリンタエンジンを制御するデバイスコントローラおよびＣＰＵを含むサブシステムとを有する画像形成装置を開示する。この特許文献１では、このようなメインシステムとサブシステムとを有する画像形成装置における、サブシステム側のＣＰＵの起動プログラムの更新処理を開示する。この画像形成装置では、メインシステム側のＣＰＵが、サブシステム側のＣＰＵの起動プログラムの更新用データをＵＳＢメモリ等から取得してメインシステム側のＲＡＭに展開する。そしてサブシステムのＣＰＵは、メインシステム側のＲＡＭに展開された更新用データを、サブシステム側のＲＡＭにコピーして、コピーされたその更新用データを、サブシステム側のブートＲＯＭに上書き（更新）する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−５０１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のような画像形成装置においてメインシステムとサブシステムとでは果たすべき役割が異なる。そのため、サブシステム側のＣＰＵやＲＡＭは、メインシステム側のものと比べて処理能力が低かったり、記憶容量が少なかったりすることがある。処理能力や記憶容量が少ないＣＰＵやＲＡＭにファームウェア更新を行わせると、その処理能力や記憶容量の少なさから、高速な更新ができない可能性がある。
【課題を解決するための手段】
【０００５】
本発明の画像形成装置は、第１のＣＰＵを含む第１のシステムと、第２のＣＰＵを含む第２のシステムと、を有する画像形成装置において、前記第１のシステムは、データを前記第１のシステムから前記第２システムに転送する転送デバイスを有し、前記第２のシステムは、受け取ったデータを前記第２システムのデバイスに書き込む書き込みデバイスと、前記第２のＣＰＵが実行するファームウェアを記憶する不揮発性メモリと、を有し、前記第２のＣＰＵは、前記書き込みデバイスに対して、前記転送デバイスから受け取ったデータを前記第２システムの前記不揮発性メモリに書き込むことができるような設定を行い、前記設定が前記第２のＣＰＵによって行われた前記書き込みデバイスは、前記第２のＣＰＵが実行するファームウェアの更新データを前記転送デバイスから受け取って、当該受け取った更新データを前記不揮発性メモリに書き込むことを特徴とする。
【発明の効果】
【０００６】
ファームウェアの更新を高速に行うことができる。
【図面の簡単な説明】
【０００７】
【図１】画像形成装置のブロック図。
【図２】画像形成装置のコントローラ内部のブロック図。
【図３】コントローラの起動シーケンス図。
【図４】ファームウェアの更新方法の一例を示す図。
【図５】本実施形態におけるサブシステム第二ＣＰＵの動作プログラム（ファームウェア）の更新フローを示す図。
【図６】実施形態２におけるサブシステム第二ＣＰＵの動作プログラムの更新方法を説明する図。
【図７】実施形態３におけるサブシステム第二ＣＰＵの動作プログラムの更新方法を説明する図。
【図８】メインシステムおよびサブシステムのアドレス空間について説明する図。
【発明を実施するための形態】
【０００８】
次に本発明を実施するための形態について図面を参照して説明する。
【０００９】
＜システム構成の説明＞
以下、図面を参照して実施の形態を説明する。なお、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１０】
（実施形態１）
本実施形態に係る情報処理装置の一例としての画像形成装置について説明する。
【００１１】
図１は本システムのブロック図である。画像形成装置１は、コントローラ（制御装置）３、スキャナ装置２、プリンタ装置４、記憶装置６、操作部５、ＦＡＸ装置７を有する。
【００１２】
スキャナ装置（スキャナデバイス）２は、自動的に原稿束を自動的に逐次入れ替えることが可能な原稿給紙ユニット２１、原稿を光学スキャンしデジタル画像に変換する事が可能なスキャナユニット２２を備える。このスキャナ装置２は、得られたデジタル画像データをコントローラ３に送信する。
【００１３】
プリンタ装置（印刷デバイス）４は、内部に格納された紙束から一枚ずつ逐次給紙可能な給紙ユニット４２、給紙した紙に画像データを印刷するためのマーキングユニット４１、印刷後の紙を排紙するための排紙ユニット４３を備える。このプリンタ装置４は、スキャナ装置２で得られたデジタル画像やＬＡＮ８を経由して外部のコンピュータ９から受け取られた印刷データに由来するデジタル画像を紙などのシートに印刷する。
【００１４】
操作部５は、ユーザに対して装置の設定等の情報を表示し、かつ、ユーザからのタッチ操作を受け付けるタッチスクリーン、および、ユーザからコピーの開始指示やスキャンの開始指示を受け付ける開始キーなどのハードキーを備えるユーザインタフェースである。操作部５は、操作部５に対するユーザの操作内容をコントローラ３に通知する。
【００１５】
記憶装置（記憶デバイス）６は、デジタル画像や制御プログラム等を記憶する。本実施例では、記憶装置６は、ＨＤＤ（ハードディスクドライブ）およびＳＳＤ（ソリッドステートドライブ）を含む複数種類の記憶デバイスの何れかである。ＦＡＸ装置７は、電話回線に接続され、デジタル画像を外部に送信する。コントローラ３は、これらと接続され各モジュール（各装置、各部）に指示を出す事でプリント、スキャン、データ送信等のジョブを実行することが可能である。またコントローラ３は、外部からファームウェアの更新データを受信し、その受信した更新データでファームウェアを更新する。
【００１６】
画像形成装置１は多彩なジョブを実行可能である。一例を以下に記載する。
・複写機能：スキャナ装置２から読み込んだ画像を記憶装置６に記録し、同時にプリンタ装置４を使用して印刷を行なう。
・画像送信機能：スキャナ装置２から読み込んだ画像はＬＡＮ８を介してコンピュータ９に送信する。
・画像保存機能：スキャナ装置２から読み込んだ画像を記憶装置６に記録し、必要に応じて画像送信や画像印刷を行なう。
・画像印刷機能：コンピュータ９から送信された例えばページ記述言語を解析し、プリンタ装置４で印刷する。
【００１７】
図２はコントローラのブロック図である。
【００１８】
コントローラ３はメインシステム１００と、このメインシステム１００にＰＣＩＥ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｅｘｐｒｅｓｓ）バスを介して接続されるサブシステム２００から構成される。後述のように、メインシステム１００の物理アドレス空間と、サブシステム２００の物理アドレス空間とは異なり、ＰＣＩＥ−ＡＸＩ変換器３０２によって、互いの物理アドレス空間の一部どうしがマッピングされている。例えば、サブシステム２００内のデバイスにアクセスするためにメインシステムＣＰＵ１０１によって指定されるアドレスと、サブシステム２００内のそのデバイスの物理アドレスとがマッピングされる。このマッピングの設定は、サブシステム２００側のサブシステム第二ＣＰＵ２１１によってサブシステム第二不揮発性メモリ２１３に記憶されているファームウェアプログラムにしたがって行われる。
【００１９】
以下説明する本実施形態では、このマッピングの設定をサブシステム第二ＣＰＵ２１１がＰＣＩＥ−ＡＸＩ変換器３０２に対して行う。そしてマッピングの設定が行われたＰＣＩＥ−ＡＸＩ変換器３０２が、このマッピングの設定を行うサブシステム第二ＣＰＵ２１１によって実行されるファームウェアの少なくとも一部を、メインシステムＣＰＵ１０１からの指示にしたがって更新する。
【００２０】
メインシステム１００はいわゆる汎用的なＣＰＵシステムである。メインシステム１００は、図２に示される通りの各ハードウェアを有し、それぞれのハードウェアは内部バスに接続されている。
【００２１】
メインシステムＣＰＵ１０１（以降、ＣＰＵ１０１と呼ぶ）は、コントローラ３の全体の制御を司るプロセッサである。ブートＲＯＭ１０４は、ＣＰＵ１０１のリセットが解除された直後にＣＰＵ１０１によって実行されるプログラム（すなわちＣＰＵ１０１のブートプログラム）を格納する。このブートプログラムは、ＣＰＵ１０１が次に実行すべきプログラムの格納場所を指示する。本実施形態において、この場所はメインシステム不揮発性メモリ１０３（以降、不揮発性メモリ１０３と呼ぶ）である。
【００２２】
不揮発性メモリ１０３は、ブートプログラムの後にＣＰＵ１０１によって実行される動作プログラムを格納する。この動作プログラムはメインシステム１００のＯＳ（オペレーティングシステム）を含む。またこの動作プログラムは、ネットワークコントローラ１０６やＵＳＢインタフェース１０５の初期設定（初期化）を行うプログラムを含む。またこの動作プログラムは、ＰＣＩＥコントローラ３０１の初期設定を行うプログラムも含む。このＰＣＩＥコントローラ３０１は、ＣＰＵ１０１によって指定されたデータおよびそのデータが書き込まれるアドレスを、メインシステム１００側からサブシステム２００側に転送する転送デバイスとして機能する。またＰＣＩＥコントローラ３０１は、サブシステム２００側からメインシステム１００側にデータを転送するデバイスとしても機能する。
【００２３】
不揮発性メモリ１０３に格納されている動作プログラムは、ＯＳ上で動作するメインシステム１００のアプリケーションプログラムも含む。このアプリケーションプログラム中には、メインシステム１００内の内部バスおよびサブシステム２００内のＡＸＩ（Ａｄｖａｎｃｅｄ  ｅＸｔｅｎｓｉｂｌｅ  Ｉｎｔｅｒｆａｃｅ）バスに接続された各デバイスのアドレスが予め記載されている。ＣＰＵ１０１は、アプリケーションプログラムにしたがって、このアドレスを用いて各デバイスにアクセスする。例えばＣＰＵ１０１がサブシステム第二不揮発性メモリ２１３を示すアドレスに対してデータを書き込む指示を出すと、ＰＣＩＥコントローラ３０１がそのアドレスにデータを書き込む指示をＰＣＩＥ−ＡＸＩ変換器３０２に通知する。サブシステム第二不揮発性メモリ２１３のことを、以降、不揮発性メモリ２１３と呼び、ＰＣＩＥ−ＡＸＩ変換器３０２のことを、以降、変換器３０２と呼ぶ。この不揮発性メモリ２１３は、フラッシュメモリである。
【００２４】
変換器３０２は、サブシステム２００内のＡＸＩバスのバスマスタとして機能することができ、メインシステム１００内のバスアクセスを、サブシステム２００内のバスアクセスに変換する変換機能を有する。この変換機能は、例えば、ＰＣＩＥバス経由でＣＰＵ１０１から通知されたアドレス（データが書き込まれるアドレス）を、サブシステム２００内のＡＸＩバス上のアドレス（すなわちサブシステム２００上で有効なアドレス）に変換する。またこの変換機能は例えば、ＰＣＩＥバスを流れるデータのデータ形式を、ＡＸＩバスを流れるデータのデータ形式に変換する。そして変換器３０２は、ＡＸＩバスのバスマスタとして、メインシステムから受け取ったデータを、このＡＸＩバス上のアドレス（ここでの例では不揮発性メモリ２１３）に書き込む。すなわち変換器３０２は、メインシステム１００から受け取ったデータを、サブシステム２００内のデバイスに書き込む書き込みデバイスとして機能する。このデータ書き込みにおいて、変換器３０２がバスマスタとなっているので、サブシステム第二ＣＰＵ２１１（以降、ＣＰＵ２１１と呼ぶ）は用いられない。また同様に変換器３０２はバスマスタとして、ＣＰＵ１０１からのデータをサブシステム第一揮発性メモリ２０２（以降、揮発性メモリ２０２と呼ぶ）に書き込むことができる。このデータ書き込みにおいてサブシステム第一ＣＰＵ２０１（以降、ＣＰＵ２０１と呼ぶ）は用いられない。揮発性メモリ２０２は、ＣＰＵ２０１のメインメモリ（ワークメモリ）として使用される揮発性のＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
【００２５】
メインシステム揮発性メモリ１０２（以降、揮発性メモリ１０２と呼ぶ）は、ＣＰＵ１０１のメインメモリ（ワークメモリ）として使用される揮発性のＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。ＣＰＵ１０１は、不揮発性メモリ１０３に格納されている上記動作プログラムをこの揮発性メモリ１０２に展開して実行する。ＵＳＢインタフェース１０５は、ＵＳＢメモリ１０などの外部記憶装置をメインシステム１００に接続するインタフェースである。ネットワークコントローラ１０６は、ＬＡＮケーブルを介して画像形成装置１の外部のコンピュータ９と通信するためのインタフェースである。操作部インタフェース１０７は、操作部５をメインシステム１００に接続するインタフェースである。
【００２６】
サブシステム２００は、画像処理機能を制御するＣＰＵシステムである。サブシステム２００は、図２に示される通りの各ハードウェアを有する。
【００２７】
ＣＰＵ２１１は、電源投入後にリセットが解除されると、不揮発性メモリ２１３の０番地アドレスに格納されているプログラムを実行するプロセッサである。このプログラムは、ＣＰＵ２１１のブートプログラムである。また、このプログラムは、ブートプログラムの次にＣＰＵ２１１に実行させる動作プログラム（ＣＰＵ２１１のファームウェアプログラム）が格納されている場所を指示する。本実施形態ではこの場所は不揮発性メモリ２１３の特定アドレスである。この動作プログラムは、実行時に、ＣＰＵ２１１によってサブシステム第二揮発性メモリ２１２（以降、揮発性メモリ２１２と呼ぶ）に展開される。揮発性メモリ２１２は、ＣＰＵ２１１のメインメモリ（ワークメモリ）として使用される揮発性のＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。この動作プログラムは、記憶装置６および電源制御ハードウェア回路２２２の制御プログラムでもある。またこの動作プログラムは、変換器３０２の初期設定を行う。この初期設定では、メインシステム１００が管理するアドレスとＡＸＩバス上の物理的なアドレスとの対応関係（マッピング）が設定される。すなわち、この初期設定が行われると、メインシステム１００（ＣＰＵ１０１）のアドレス空間に、サブシステム２００のＡＸＩバスに接続されている各ハードウェアデバイスが割り当てられることになる。その結果、上述の通り、メインシステム１００側のＣＰＵ１０１は、自身が持つメモリアドレス空間へのアクセス命令を発行することによって、サブシステム２００のＡＸＩバスに接続されている該当するハードウェアデバイスにアクセスできる。本実施形態では、この仕組みを用いて、サブシステム２００の不揮発性メモリ２１３に格納されているＣＰＵ２１１のブートプログラムを、更新データで更新する。なお、この更新データは、ＬＡＮ８やＵＳＢインタフェース１０５を経由して、外部から取得される。
【００２８】
またサブシステム２００は、ＣＰＵ２０１を有する。このＣＰＵ２０１は、揮発性メモリ２０２に書き込まれたＣＰＵ２０１用のブートプログラムを実行するプロセッサである。このＣＰＵ２０１用のブートプログラムは、ＣＰＵ１０１からの指示によってメインシステム１００から揮発性メモリ２０２に書き込まれている。ブートプログラムを実行することにより、ＣＰＵ２０１は、画像処理ＡＳＩＣ（画像処理デバイス）２０３およびエンジンコントローラ２２３を介してプリンタ装置４、スキャナ装置２、ＦＡＸ装置７を制御できる。
【００２９】
例えば、ユーザが操作部５から画像複写を指示すると、ＣＰＵ１０１がＣＰＵ２０１に画像複写に関わる制御を行わせる。具体的には、ＣＰＵ１０１は、ＣＰＵ２０１を介してスキャナ装置２に画像読み取り命令を送る。するとスキャナ装置２は、紙原稿を光学スキャンしデジタル画像データに変換してエンジンコントローラ２２３を介して画像処理ＡＳＩＣ２０３に入力する。画像処理ＡＳＩＣ２０３は、ＣＰＵ２０１を介して揮発性メモリ２０２にＤＭＡ転送を行いデジタル画像データの一時保存を行なう。次に、ＣＰＵ１０１は、デジタル画像データが揮発性メモリ２０２に一定量もしくは全て入ったことを確認すると、ＣＰＵ２０１を介してプリンタ装置４に画像出力指示を出す。このときＣＰＵ２０１は、画像処理ＡＳＩＣ２０３に不揮発性メモリ２０２の画像データの格納場所（格納アドレス）を教える。するとエンジンコントローラ２２３は、プリンタ装置４からの同期信号に従ってメモリ２０２上の画像データをプリンタ装置４に送信する。その結果、プリンタ装置４は、デジタル画像データを印刷する。
【００３０】
なお、本図はブロック図であり簡略化している。例えばＣＰＵ１０１、ＣＰＵ２０１等にはチップセット、バスブリッジ、クロックジェネレータ等のＣＰＵ周辺ハードウェアが多数含まれているが、説明の粒度的に不必要であるため簡略化記載しており、このブロック構成が本発明を制限するものではない。
【００３１】
次に図３を用いて、コントローラ３の起動シーケンスについて説明する。起動シーケンスは大きく分けてメインシステム１００の起動とサブシステム２００の起動に分けて考えることができる。以下では画像形成装置の電源スイッチがユーザによってオンされると、パワーオンリセット回路が内部リセット信号をアサートすることでＣＰＵ１０１およびＣＰＵ２１１をリセットする。そして画像形成装置の電源電圧が基準電圧まで立ち上がったことを検知したパワーオンリセット回路は内部リセット信号をデアサート（ネゲート）することでＣＰＵ１０１およびＣＰＵ２１１のリセットを解除する。
【００３２】
＜メインシステム１００の起動＞
リセットが解除されたＣＰＵ１０１は、ステップＳ３１１においてメインシステム１００を起動する。具体的には、ＣＰＵ１０１は、ブートＲＯＭ１０４のブートプログラムを実行し、そのブートプログラムにしたがってＣＰＵ１０１は、不揮発性メモリ１０３に記憶されているブートローダーを揮発性メモリ１０２に読み込んで実行する。そしてＣＰＵ１０１はブートローダーにしたがって、ＯＳを不揮発性メモリ１０３から揮発性メモリ１０２に読み込んで実行する。この過程の中で、ＣＰＵ１０１は、ＰＣＩＥコントローラ３０１、ＵＳＢインタフェース１０５、ネットワークコントローラ１０６、操作部インタフェース１０７等の各デバイスの初期化を行う。これによってＣＰＵ１０１は、各デバイスにアクセス可能になる。例えば、ＣＰＵ１０１は、ＰＣＩＥコントローラ３０１先のＰＣＩＥバスを参照してアクセスできるようになる。その後、ＣＰＵ１０１は、ＯＳによって不揮発性メモリ１０３から揮発性メモリ１０２に読み込まれたジョブ処理アプリケーションを実行する。このようにしてメインシステム１００が起動する。
【００３３】
＜サブシステム２００の起動＞
メインシステム１００の起動処理（Ｓ３１１）と並行して、リセットが解除されたＣＰＵ２１１は、次のステップＳ３２１〜Ｓ３２４を行う。
【００３４】
ステップＳ３２１においてＣＰＵ２１１は、不揮発性メモリ２１３の０番地から格納されているプログラムを実行する。そしてＣＰＵ２１１は、該プログラムで指定されているアドレスに格納されている動作プログラム（ファームウェアプログラムとも呼ぶ）を不揮発性メモリ２１３から揮発性メモリ２１２に読み出す（ロードする）。この動作プログラムは以下のステップＳ３２２〜Ｓ３２４の処理を引き起こす。
【００３５】
ステップＳ３２２においてＣＰＵ２１１は、変換器３０２に対して、ＰＣＩＥバスアクセスをサブシステム側のバスアクセスへ変換するアドレス変換ルールを設定する。これで、メインシステム１００のＣＰＵ１０１は、サブシステム２００のＡＸＩバスに接続されたデバイス（例えば揮発性メモリ２０２や不揮発性メモリ２１３）を、自分（ＣＰＵ１０１）のメモリ空間上にマッピングされているかのように参照できる。ＣＰＵ１０１が、ＰＣＩＥコントローラ３０１と変換器３０２によって、サブシステム２００のアドレス空間を参照する方法について、図８を用いて説明する。
【００３６】
図８は、ＣＰＵ１０１が参照可能なアドレス空間を示している。ＣＰＵ１０１は、このアドレス空間のアドレスを指定することで、そのアドレスに対応するデバイスにアクセスすることができる。
【００３７】
ＣＰＵ１０１が参照できるアドレス空間（メインシステムメモリ空間５１０）は、メインシステム物理メモリ空間５１１、ＰＣＩＥ空間５１２、メインシステムほかハードウェア空間５１３を含む。
【００３８】
揮発性メモリ１０２は、メインシステム物理メモリ空間５１１にマッピングされており、ＣＰＵ１０１はこのアドレスにアクセスすることで、揮発性メモリ１０２にアクセスできる。本例では揮発性メモリ１０２は、アドレス（０ｘ００００＿００００〜０ｘＣＦＦＦ＿ＦＦＦＦ）に配置される。
【００３９】
ＰＣＩＥコントローラ３０１を介したＰＣＩＥバス上のデバイスは、ＰＣＩＥ空間５１２にマッピングされており、ＣＰＵ１０１はこのアドレスにアクセスすることで、ＰＣＩＥバス上のデバイスにアクセスできる。本例ではＰＣＩＥバス上のデバイスは、アドレス（０ｘＤ０００＿００００〜０ｘＥＦＦＦ＿ＦＦＦＦ）に配置される。このアドレスへのアクセスは、ＰＣＩＥコントローラ３０１へのアクセスである。ＣＰＵ１０１からアクセスを受けたＰＣＩＥコントローラ３０１は、ＰＣＩＥ準拠したプロトコルを用いて、ＣＰＵ１０１がアクセスしようとしているアドレスに対応するデバイス（すなわちＰＣＩＥバスに接続されたハードウェア）と通信を行う。
【００４０】
ここでＰＣＩＥバスに接続されているのは変換器３０２なので、変換器３０２は、ＣＰＵ１０１からのアクセス対象のアドレスを、ＡＸＩバス上のアドレスに変換する。すなわち変換器３０２は、ＰＣＩＥ空間に対するアクセスを、ＡＸＩバス上のサブシステムメモリ空間５２０に対するアクセスに変換する。そして変換器３０２は、バスマスタとしてＡＸＩバス上のそのアドレスにアクセスすることで、ＣＰＵ１０１からのＡＸＩバス上のデバイスへのアクセスが実現される。
【００４１】
本例では、ＣＰＵ１０１はＰＣＩＥ空間５１２（０ｘＤ０００＿００００〜０ｘＤＦＦＦ＿ＦＦＦＦ）にアクセスすると、サブシステム第一揮発性メモリ空間５２１（０ｘ００００＿００００〜０ｘＥＦＦＦ＿ＦＦＦＦ）にアクセスすることになる。これによりＣＰＵ１０１は、サブシステム第一揮発性メモリ２０２にアクセスする。
【００４２】
またＣＰＵ１０１はＰＣＩＥ空間５１２（０ｘＥ０００＿００００〜０ｘＥ４ＦＦ＿ＦＦＦＦ）にアクセスすると、サブシステム第二揮発性メモリ空間５２２（０ｘ１０００＿００００〜０ｘ１４ＦＦ＿ＦＦＦＦ）にアクセスすることになる。これによりＣＰＵ１０１は、サブシステム第二揮発性メモリ２１２にアクセスする。
【００４３】
またＣＰＵ１０１はＰＣＩＥ空間５１２（０ｘＥ５００＿００００〜０ｘＥＦＦＦ＿ＦＦＦＦ）にアクセスすると、サブシステム第二不揮発性メモリ空間５２３（０ｘ１５００＿００００〜０ｘ１ＦＦＦ＿ＦＦＦＦ）にアクセスすることになる。これによりＣＰＵ１０１は、サブシステム第二不揮発性メモリ２１３にアクセスする。
【００４４】
これらサブシステムメモリ空間５２０へのアクセスは、ＡＸＩバスのバスマスタとして振る舞う変換器３０２が行うので、サブシステム２００内のＣＰＵ２０１もＣＰＵ２１１も用いずに行える。
【００４５】
またＵＳＢインタフェース１０５や、ネットワークコントローラ１０６、操作部インタフェース１０７、記憶装置６へのアクセスは、メインシステムほかハードウェア空間５１３へのアクセスによって行われる。なおＣＰＵ１０１からの記憶装置６へのアクセスは、図８に図示しないが、ＰＣＩＥコントローラ３０１および変換器３０２経由で行われる。またこの記憶装置６へのアクセスは、後述するようにＣＰＵ２１１の制御の下、行われる。
【００４６】
図３の説明に戻る。ステップＳ３２３においてＣＰＵ２１１は、記憶装置６の制御を開始する。この制御により、ＣＰＵ１０１からのＰＣＩＥバス経由のデータ書き込み指示またはデータ読み出し指示をＣＰＵ２１１が受け付けると、ＣＰＵ２１１は、記憶装置６に対してデータ書き込み制御またはデータ読み出し制御を行う。また、ＣＰＵ２０１からのデータ書き込み指示またはデータ読み出し指示をＣＰＵ２１１が受け付けると、ＣＰＵ２１１は記憶装置６に対してデータ書き込み制御またはデータ読み出し制御を行う。ここでＣＰＵ２１１は、動作プログラムにしたがって、データ書き込み制御やデータ読み出し制御の方法を行う。この動作プログラムは、記憶装置６の種類によって異なる。つまり記憶装置６がＨＤＤであればＨＤＤ用の動作プログラムが実行され、記憶装置６がＳＳＤであればＳＳＤ用の動作プログラムが実行される。この動作プログラムは、記憶装置６の種類に応じたものが不揮発性メモリ２１３に記憶され、不揮発性メモリ２１３の省容量化が図られている。
【００４７】
ステップＳ３２４においてＣＰＵ２１１は、電源制御ハードウェア回路２２２の制御を開始する。この制御によってＣＰＵ２１１は、サブシステム２００内の各ハードウェアに対する電力制御（およびクロック供給制御）を行う。
【００４８】
＜メインシステム１００からサブシステム２００へのサブシステム用ブートプログラムの転送＞
ステップＳ３１４においてＣＰＵ１０１は、不揮発性メモリ１０３から、サブシステム用ブートプログラムを、不揮発性メモリ１０３から、ＰＣＩＥコントローラ３０１および変換器３０２を経由して、揮発性メモリ２０２に転送する。このサブシステム用ブートプログラムは、ＣＰＵ２０１のブートプログラムであり、サブシステム２００のシステムブートイメージに相当する。
【００４９】
その後、ステップＳ３１５においてＣＰＵ１０１は、ＣＰＵ２０１のリセットを解除する。
【００５０】
すると、ステップＳ３３１において、リセットが解除されたＣＰＵ２０１は、揮発性メモリ２０２に記憶されたブートプログラムを実行することで、サブシステム２００の起動を行う。これにより、メインシステム１００とサブシステム２００とが互いに通信して協調しながらジョブを処理できるようになる。
【００５１】
＜メインシステム１００およびサブシステム２００の起動後の制御＞
ＣＰＵ１０１、ＣＰＵ２０１、ＣＰＵ２２１は互いに通信しながらジョブを処理する（Ｓ３４０）。すなわち、ジョブが発生した場合に、ＣＰＵ１０１はＣＰＵ２０１と通信しながら、画像処理ＡＳＩＣ２０３およびエンジンコントローラ２２３とその先のプリンタ装置４、スキャナ装置２、ＦＡＸ装置７を制御して、プリント、スキャン、ＦＡＸ受送信を行う。
【００５２】
例えばネットワークコントローラ１０６を介してＣＰＵ１０１が印刷データを受信すると、ＣＰＵ１０１はプリントジョブを生成する。そしてＣＰＵ１０１は、印刷データをサブシステム２００に送信する。ＣＰＵ２０１は、画像処理ＡＳＩＣ２０３に受信した印刷データを処理させる。画像処理ＡＳＩＣ２０３によって処理された画像データは、揮発性メモリ２０２に記憶される。この処理の際に、ＣＰＵ２０１は、画像処理ＡＳＩＣ２０３へ電力を供給するように電源制御ハードウェア回路２２２を制御する。また、ＣＰＵ２０１は、画像処理ＡＳＩＣ２０３が行った画像データを揮発性メモリ２０２から記憶装置６に記憶させるよう、ＣＰＵ２１１に指示する。するとＣＰＵ２１１は、揮発性メモリ２０２に記憶された画像データを記憶装置６に記憶するよう、記憶装置６を制御する。さらに、ＣＰＵ２０１は、エンジンコントローラ２２３を介してプリンタ装置４が印刷の準備ができたことを検知すると、ＣＰＵ２１１に対して記憶装置６から画像データを読み出すことを指示する。そしてＣＰＵ２１１は、記憶装置６を制御して画像データを読出し、ＣＰＵ２０１に送信する。そしてＣＰＵ２０１は、エンジンコントローラ２２３を介してプリンタ装置４に受け取った画像データを印刷させる。
【００５３】
本実施形態では上述のように、メインシステム１００のＣＰＵ１０１が、サブシステム２００のＣＰＵ２０１のブートプログラムを、サブシステム２００の揮発性メモリ２０２にＰＣＩＥバスを経由して送信する。そのためサブシステム２００のＣＰＵ２０１のブートプログラムを更新する場合には次の処理を行えばよい。すなわち、メインシステム１００のＣＰＵ１０１がブートプログラムの更新データをＬＡＮ８やＵＳＢメモリ１０から取得し、その更新データで不揮発性メモリ１０３内のＣＰＵ２０１用のブートプログラムを更新すればよい。
【００５４】
しかしＣＰＵ２１１が実行する動作プログラム（ファームウェアプログラム）は不揮発性メモリ２１３に記憶されているため、ＬＡＮ８やＵＳＢメモリ１０から取得して不揮発性メモリ１０３に記憶するだけでは十分でない。不揮発性メモリ１０３に記憶したファームウェアの更新データを、不揮発性メモリ２１３にＰＣＩＥバスおよび変換器３０２を経由して記憶する必要がある。
【００５５】
ＣＰＵ２１１のファームウェアは、上述の通り、変換器３０２の初期設定、記憶装置６の制御、電力制御を行う動作プログラムを含む。そのため、記憶装置６の種類がＨＤＤからＳＳＤに換装されたことによる制御プログラムの変更や、電力制御の仕様の変更（例えば起動時の電源投入順の変更）に従って、これらの動作プログラムを更新する必要がある。
【００５６】
ここでＣＰＵ２１１のファームウェアプログラムの更新方法の比較例を、図４を用いて説明する。ＣＰＵ２１１のファームウェアを更新する場合、ＣＰＵ２１１は、ＵＳＢインタフェース１０５やネットワークコントローラ１０６を制御して画像形成装置の外部（外部装置）からファームウェアの更新データを取得する。そしてＣＰＵ２１１は、その更新データをＣＰＵ２１１のワークメモリである揮発性メモリ２１２に格納する。そしてＣＰＵ２１１は、揮発性メモリ２１２に格納された更新データを使って、不揮発性メモリ２１３に格納されているファームウェアを更新する。
【００５７】
このように上記比較例において、ＣＰＵ２１１は、外部から更新データを取得するべくインタフェースを制御するための処理能力や、不揮発性メモリ２１３に格納されているファームウェアを高速に更新するための処理能力が必要となる。また、揮発性メモリ２１２は、ＣＰＵ２１１用の更新前のファームウェアが展開されるメモリ領域に加えて、更新データを格納するのに十分なメモリ容量が必要となる。
【００５８】
しかしながら、ＣＰＵ２１１の処理能力や、揮発性メモリ２１２の利用可能容量によっては、上記比較例のような更新方法を採用すると更新の効率が悪くなることがある。
【００５９】
そこで、本実施形態ではＣＰＵ１０１が、外部からＣＰＵ２１１のファームウェアの更新データを取得し、そしてその更新データをＣＰＵ２１１および揮発性メモリ２１２を経由せずに、不揮発性メモリ２１３に格納されているファームウェアを更新する。本実施形態によるファームウェア更新方法について図５を用いて説明する。
【００６０】
図５は、ＣＰＵ１０１によって実行される処理フローである。この処理フローは、ＣＰＵ２１１のファームウェア更新処理フローであり、この処理フローを実行するためのプログラム（ＣＰＵ２１１のファームウェア更新プログラム）は、不揮発性メモリ１０３に予め格納されている。ＣＰＵ１０１は、画像形成装置１のオペレータが操作部５に対してＣＰＵ２１１のファームウェア更新プログラムの実行指示をしたことを検知すると、このファームウェア更新プログラムを不揮発性メモリ１０３から揮発性メモリ１０２に読み出して実行する。なお、この更新処理フローが実行される前に、ＣＰＵ１０１は図３のＳ３１１の処理を実行し、かつ、ＣＰＵ２１１は更新前のファームウェアプログラムにしたがって図３のＳ３２２の処理を行っている。そのため、ＣＰＵ１０１は、ＣＰＵ２１１および揮発性メモリ２１２を経由せず、不揮発性メモリ２１３にアクセスできるようになっている。なお以下説明するファームウェアの更新データは、次を含む。記憶装置６のデータ読み出し制御およびデータ書き込み制御をＣＰＵ２１１に実行させるプログラムの更新データ。変換器３０２の初期設定をＣＰＵ２１１に実行させるプログラムの更新データ。電力制御をＣＰＵ２１１に実行させるプログラムの更新データ。
【００６１】
Ｓ５０１において、ＣＰＵ１０１は、ＵＳＢインタフェース１０５を制御してＵＳＢメモリ１０からＣＰＵ２１１のファームウェアの更新データを取得し、その更新データを不揮発性メモリ１０３に一旦格納する。これにより、ファームウェア更新中に画像形成装置１の電源が不意の停電により落ちたとしても、不揮発性メモリ１０３に格納されたままの更新データを使って再度、ファームウェアの更新を開始できる。なおこのＳ５０１では、ＵＳＢインタフェース１０５ではなく、ネットワークコントローラ１０６を制御してＬＡＮ８経由で外部装置から更新データを取得してもよい。
【００６２】
Ｓ５０２において、ＣＰＵ１０１は、不揮発性メモリ１０３に格納された更新データを、ＰＣＩＥコントローラ３０１および変換器３０２経由で、サブシステム２００内の不揮発性メモリ２１３に書き込む。
【００６３】
具体的には、ＣＰＵ１０１は、ＰＣＩＥ空間５１２に配置された不揮発性メモリ２１３の特定アドレスに対して更新データを書き込む指示を発行する。すると、ＰＣＩＥコントローラ３０１はその更新データをＰＣＩＥバスを介して変換器３０２に転送し、変換器３０２は、その指示にしたがってＡＸＩバス上の不揮発性メモリ２１３の特定アドレスに更新データを上書きする。このとき変換器３０２は、ＰＣＩＥコントローラ３０１から通知されたバスアクセスを、Ｓ３２２で設定された対応関係にしたがって、ＡＸＩバス上のバスアクセスに変換している。
【００６４】
前述した通り、更新データは、ＣＰＵ２１１および揮発性メモリ２１２を用いずに、不揮発性メモリ２１３に書き込まれる。
【００６５】
Ｓ５０３において、ＣＰＵ１０１は、更新内容を反映するため、画像形成装置１（メインシステム１００およびサブシステム２００）の再起動（リブート）を行う。
【００６６】
以上が、本実施形態におけるＣＰＵ２１１のファームウェアの更新処理である。すなわち、ＣＰＵ２１１は、更新データを取得するＣＰＵ１０１が、不揮発性メモリ２１３にＣＰＵ２１１および揮発性メモリ２１２を用いずにアクセスできるように、変換器３０２の設定を行う。言い換えると、ＣＰＵ２１１は、ＣＰＵ１０１からの更新データの書き込み指示を受け付けた変換器３０２がＡＸＩバスを経由して不揮発性メモリ２１３に更新データを直接書き込めるような設定を、変換器３０２に対して行う。その後でＣＰＵ１０１が、更新データをＡＸＩバス上の不揮発性メモリ２１３に書き込む指示を行うと、変換器３０２は、ＰＣＩＥコントローラ３０１を経由してその指示を受け取って、その指示に従って更新データを不揮発性メモリ２１３に書き込む。このように、更新データの書き込みを、ＣＰＵ２１１も揮発性メモリ２１２も使わずに実行できる。
【００６７】
また、上記実施形態では、変換器３０２は、サブシステム２００内に含まれるような説明を行ったが、変換器３０２はメインシステム１００とサブシステム２００との間に配置されていてもよい。主要なのは、変換器３０２の設定を行うＣＰＵ２１１が実行する動作プログラムを格納する不揮発性メモリ２１３に対して、ＣＰＵ２１１および揮発性メモリ２１２を経由せずに更新データを書き込むことである。
【００６８】
（実施形態２）
上記実施形態１では、ＣＰＵ１０１は、不揮発性メモリ２１３に更新データを書き込むことができる。ここで更新データには、図３のＳ３２２の設定処理を行うための動作プログラムも含まれる。そのため、この動作プログラムの更新中の停電や、ネットワーク経由のサイバー攻撃などの不測の事態が生じると、不揮発性メモリ２１３中のこの動作プログラムが壊れることがある。これらの結果、画像形成装置１の起動処理（図３）で、ＣＰＵ２１１は、Ｓ３２２において変換器３０２に対して正しい設定を行えず、メインシステム１００とサブシステム２００との間の通信が全くできなくなってしまう。このような事態に陥ると、画像形成装置１の電源を入れなおしたとしても、やはりＳ３２２で正しい設定が行われないため、不都合は解消されない。
【００６９】
そこで、本実施形態では、不揮発性メモリ２１３の更新対象からＳ３２２に関わる動作プログラムを除外する。さらにメインシステム１００（ＣＰＵ１０１）からＳ３２２の動作プログラムを格納する不揮発性メモリ２１３のメモリブロック（記憶領域）を参照しないようにする。本実施形態において説明されない部分については実施形態１と同様の構成である。
【００７０】
本実施形態では、不揮発性メモリ２１３を２つのメモリブロックに分けて管理する。すなわち、不揮発性メモリ２１３の一部のメモリブロックを、Ｓ３２２の設定処理を実行するための動作プログラムを格納する部分とし、別のメモリブロックを、Ｓ３２３およびＳ３２４の制御処理を実行するための動作プログラムを格納する部分として管理する。前者のメモリブロックは不揮発性メモリ第１ブロック２１３−１として管理され、後者のメモリブロックは不揮発性メモリ第２ブロック２１３−２として管理される。
【００７１】
図３に示される起動処理で、ＣＰＵ１０１は、Ｓ３１１におけるＰＣＩＥコントローラの初期化処理（初期設定）において次の設定を行う（図６の６０１）。すなわち、ＣＰＵ１０１から不揮発性メモリ第１ブロック２１３−１を参照できないように設定するが、不揮発性メモリ第２ブロック２１３−２を参照できるように設定する。これは図８で説明したＰＣＩＥ空間５１２において、不揮発性メモリ第１ブロック２１３−１だけを利用できないようにＰＣＩＥ空間５１２を設定することで実現できる。
【００７２】
このようなＰＣＩＥコントローラ３０１の設定をＳ３１１において行うことで、ＣＰＵ１０１から不揮発性メモリ第１ブロック２１３−１への書き込みが不可能となり（図６の６０３）、Ｓ３２２で用いられる動作プログラムが壊れる可能性を防ぐことができる。その一方、ＣＰＵ２１１はＳ３２２で実施形態１と同様に変換器３０２の設定を行うことで（図６の６０２）、ＣＰＵ１０１から不揮発性メモリ第２ブロック２１３−２への更新データの書き込みが可能となる。その結果、Ｓ３２３およびＳ３２４で用いられる動作プログラムをＣＰＵ１０１がＣＰＵ２１１および揮発性メモリ２１２を用いずに更新できる（図６の６０４）。また、本実施形態においてＳ３２２でＣＰＵ２１１が変換器３０２に対して、変換器３０２が不揮発性メモリ第１ブロック２１３−１へアクセスできないような設定を行う（図６の６０２）。
【００７３】
（実施形態３）
本実施形態は実施形態２とは異なる方法で不揮発性メモリ第１ブロック２１３−１へのデータ書き込みを防ぐ。なお本実施形態において説明されない部分については実施形態２と同様の構成である。
【００７４】
図３に示される起動処理で、ＣＰＵ１０１は、Ｓ３１１におけるＰＣＩＥコントローラの初期化処理（初期設定）において次の設定を行う（図７の７０１）。すなわち、ＣＰＵ１０１から不揮発性メモリ第１ブロック２１３−１および不揮発性メモリ第２ブロック２１３−２を参照できないように設定する。これは図８で説明したＰＣＩＥ空間５１２において、不揮発性メモリ２１３だけを利用できないようにＰＣＩＥ空間５１２を設定することで実現できる。
【００７５】
またＣＰＵ１０１は、Ｓ３１４において、ＣＰＵ２０１が用いるブートプログラムの他に、更新データも揮発性メモリ２０２に転送する（図７の７０４）。
【００７６】
ＣＰＵ２０１は、Ｓ３３１の実行後、ＡＸＩバスのメモリコントローラユニット２０７経由で、揮発性メモリ２０２中の更新データを不揮発性メモリ２１３に書き込む（図７の７０５）。このメモリコントローラユニット２０７は、不揮発性メモリ第１ブロック２１３−１へのデータ書き込みを行わないように構成されている（図７の７０６）。またこのメモリコントローラユニット２０７は、不揮発性メモリ第２ブロック２１３−２へのデータ書き込みは可能なように構成されている（図７の７０７）。このようにメモリコントローラ２０７が不揮発性メモリ２１３へのアクセス制御を行うので、不揮発性メモリ第１ブロック２１３−１へのデータ書き込みを防ぐことができる。
【００７７】
前記サブシステム第一ＣＰＵ２０１の前記記憶、電源制御部へのアクセスは可能である（７０７）。
【００７８】
本実施形態においても、実施形態２同様、ＣＰＵ１０１は、Ｓ３１１におけるＰＣＩＥコントローラの初期化処理（初期設定）において次の設定を行ってよい（図７の７０１、７０３）。すなわち、ＣＰＵ１０１から不揮発性メモリ第１ブロック２１３−１を参照できないように設定するが、不揮発性メモリ第２ブロック２１３−２を参照できるように設定する。これは図８で説明したＰＣＩＥ空間５１２において、不揮発性メモリ第１ブロック２１３−１だけを利用できないようにＰＣＩＥ空間５１２を設定することで実現できる。また本実施形態においても、Ｓ３２２でＣＰＵ２１１が変換器３０２に対して、変換器３０２が不揮発性メモリ第１ブロック２１３−１へアクセスできないような設定を行ってよい（図７の７０２）。
【００７９】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2020021246.tif 000003
【図２】
2020021246.tif 000004
【図３】
2020021246.tif 000005
【図４】
2020021246.tif 000006
【図５】
2020021246.tif 000007
【図６】
2020021246.tif 000008
【図７】
2020021246.tif 000009
【図８】
2020021246.tif 000010