(57)【特許請求の範囲】
【請求項１】
プロセッサと、
該プロセッに結合され、プログラムが格納される記憶手段と、
該プロセッに結合された揮発性メモリと、
該プロセッに結合され又は該プロセッに内蔵されたメモリ管理ユニットと、
を有し、該メモリ管理ユニットは、
入力アドレスである変換元ブロックアドレスを出力データである変換先ブロックアドレスに変換するテーブルメモリと、
該変換元ブロックアドレスと該変換先ブロックアドレスとの一方を選択するマルチプレクサと、
複数のレジスタを備え、該変換元ブロックアドレスが該複数のレジスタのいずれかに格納されたエラーブロックアドレスと一致する場合には該マルチプレクサに対し該変換先ブロックアドレスを選択させ、そうでない場合には該マルチプレクサに対し該変換元ブロックアドレスを選択させる選択制御回路と、
を有し、該プログラムは該プロセッサに対し、
該揮発性メモリに対するメモリエラーチェックを行わせ、
メモリエラーが検出された場合には、そのブロックのブロックアドレスを、メモリエラーが検出されなかったブロックのブロックアドレスに変換するように該テーブルメモリの内容を定めるとともに、該メモリエラーが検出されたブロックのブロックアドレスを該複数のレジスタのいずれかに格納させる、
ことを特徴とする画像形成装置。
【請求項２】
該プログラムは該プロセッサに対し、該メモリエラーが検出されなかったブロックのブロックアドレスとして、該揮発性メモリの最終ブロックアドレス側から順のブロックアドレスを割り当てさせることを特徴とする請求項１に記載の画像形成装置。
【請求項３】
該揮発性メモリは複数の半導体チップで構成され、
該マルチプレクサで選択されたアドレスの上位ビットをデコードして複数のチップ選択信号を生成するデコーダをさらに有し、
該複数のチップ選択信号が該複数の半導体チップのチップイネーブル端子にそれぞれ結合されている、
ことを特徴とする請求項１又は２に記載の画像形成装置。
【請求項４】
該テーブルメモリには、該変換先ブロックアドレスに対応して該変換元ブロックアドレスが有効であるか無効であるかを示す情報が格納されており、
該情報が無効であることを示している場合には該プロセッサに割込がかかるように、該情報に対応する該テーブルメモリの出力が該プロセッサに結合されている、
ことを特徴とする請求項１乃至３のいずれか１つに記載の画像形成装置。
【請求項５】
該プログラムは該プロセッサに対し、
該揮発性メモリに対するメモリエラーチェックをブロック単位でブロック列一端側から順次行わせ、
メモリエラーが検出される毎に、該揮発性メモリに対するメモリエラーチェックをブロック単位でブロック列他端側から順次、メモリエラー無しブロックが出現するまで行わせ、
該出現したメモリエラー無しブロックのアドレス値を、該テーブルメモリの、該メモリエラーが検出されたブロックに対応したアドレスに格納させる、
ことを特徴とする請求項１乃至４のいずれか１つに記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、用紙を搬送して用紙に画像を形成する、プリンタ、複写機、ファクシミリ又は復号機等の画像形成装置に係り、特に、大容量のメモリを搭載した場合に好適な画像形成装置に関する。
【背景技術】
【０００２】
画像形成装置では、形成画像の高解像度化及びカラー化並びにメモリの安価化に伴い、搭載されるメモリの大容量化が進んでいる。
【０００３】
一方、画像形成装置では、搭載メモリの全ビットに対してエラーチェックが行われ、正常であることを確認してシステムが起動される。このため、１ビットでもメモリエラーが検出されると、システムが起動されない。メモリの大容量化に伴い、メモリエラーが検出される確率が高くなる。
【０００４】
下記特許文献１には、メモリエラーが検出されたバンクメモリを使用不可とし、使用可能なバンクメモリのみ使用することにより、印刷処理を可能にすることが開示されている。
【０００５】
しかしながら、どのような構成で、使用可能なバンクメモリのみ使用するのかについて、全く記載がない。
【０００６】
第１のプログラムをデータとみなし、その命令がメモリアクセス命令であるか否かを第２のプログラムで判定し、メモリアクセスである場合に、使用可能なバンクメモリに対するアクセスであるか否かを判定し、使用不可のバンクメモリであった場合には命令語中のアドレスを変更することも可能である。しかし、第１のプログラム実行前に第２のプログラムでこのような処理を行うと共に、この処理で変更された第１のプログラムを別のメモリ領域へ格納してそれを実行させなければならないので、オーバヘッドが大きいと共に、必要なメモリ領域が増大するという問題がある。
【特許文献１】特開平８−２０４９２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、このような問題点に鑑み、簡単な構成で、メモリエラーが検出されなかったブロックのみ使用することができるようにすると共に、オーバヘッドが小さい画像形成装置を提供することにある。
【課題を解決するための手段】
【０００８】
本発明による画像形成装置の第１態様では、
プロセッサと、
該プロセッに結合され、プログラムが格納される記憶手段と、
該プロセッに結合された揮発性メモリと、
該プロセッに結合され又は該プロセッに内蔵されたメモリ管理ユニットと、
を有し、該メモリ管理ユニットは、
入力アドレスである変換元ブロックアドレスを出力データである変換先ブロックアドレスに変換するテーブルメモリと、
該変換元ブロックアドレスと該変換先ブロックアドレスとの一方を選択するマルチプレクサと、
複数のレジスタを備え、該変換元ブロックアドレスが該複数のレジスタのいずれかに格納されたエラーブロックアドレスと一致する場合には該マルチプレクサに対し該変換先ブロックアドレスを選択させ、そうでない場合には該マルチプレクサに対し該変換元ブロックアドレスを選択させる選択制御回路と、
を有し、該プログラムは該プロセッサに対し、
該揮発性メモリに対するメモリエラーチェックを行わせ、
メモリエラーが検出された場合には、そのブロックのブロックアドレスを、メモリエラーが検出されなかったブロックのブロックアドレスに変換するように該テーブルメモリの内容を定めるとともに、該メモリエラーが検出されたブロックのブロックアドレスを該複数のレジスタのいずれかに格納させる。
【０００９】
本発明による画像形成装置の第２態様では、第１態様において、該プログラムは該プロセッサに対し、該メモリエラーが検出されなかったブロックのブロックアドレスとして、該揮発性メモリの最終ブロックアドレス側から順のブロックアドレスを割り当てさせる。
【００１０】
本発明による画像形成装置の第３態様では、第１又は２態様において、
該揮発性メモリは複数の半導体チップで構成され、
該マルチプレクサで選択されたアドレスの上位ビットをデコードして複数のチップ選択信号を生成するデコーダをさらに有し、
該複数のチップ選択信号が該複数の半導体チップのチップイネーブル端子にそれぞれ結合されている。
【００１１】
本発明による画像形成装置の第４態様では、第１乃至３態様のいずれか１つにおいて、
該テーブルメモリには、該変換先ブロックアドレスに対応して該変換元ブロックアドレスが有効であるか無効であるかを示す情報が格納されており、
該情報が無効であることを示している場合には該プロセッサに割込がかかるように、該情報に対応する該テーブルメモリの出力が該プロセッサに結合されている。
【００１２】
本発明による画像形成装置の第５態様では、第１乃至４態様のいずれか１つにおいて、
該プログラムは該プロセッサに対し、
該揮発性メモリに対するメモリエラーチェックをブロック単位でブロック列一端側から順次行わせ、
メモリエラーが検出される毎に、該揮発性メモリに対するメモリエラーチェックをブロック単位でブロック列他端側から順次、メモリエラー無しブロックが出現するまで行わせ、
該出現したメモリエラー無しブロックのアドレス値を、該テーブルメモリの、該メモリエラーが検出されたブロックに対応したアドレスに格納させる。
【発明の効果】
【００１３】
上記第１態様の構成によれば、揮発性メモリに対するメモリエラーチェックを行い、メモリエラーが検出された場合には、そのブロックを、メモリエラーの無いブロックに変換するように、テーブルメモリの内容を定めると共に、メモリエラーが検出されたブロックのブロックアドレスを複数のレジスタのいずれかのレジスタに格納させ、変換元ブロックアドレスが、複数のレジスタに格納されたいずれかのエラーブロックアドレスと一致する場合にはマルチプレクサに対し変換先ブロックアドレスを選択させ、そうでない場合には変換元ブロックアドレスを選択させるので、簡単な構成で、メモリエラーが検出されたブロックでも少ないオーバヘッドで揮発性メモリを使用可能となる。
【００１４】
また、揮発性メモリの一部にメモリエラーが検出されても、メモリエラーが無いブロックについては、マルチプレクサに変換元ブロックアドレスを選択させるので、変換先ブロックアドレスを選択させる場合よりも揮発性メモリを高速アクセス可能となる。
【００１５】
上記第２態様の構成によれば、変換元ブロックアドレスを変換先ブロックアドレスに対応させるのに、変換先ブロックアドレスとして、揮発性メモリの最終ブロックアドレス側から順のブロックアドレスを割り当てるので、変換元ブロックアドレスが無効となるブロックが最終ブロック側に集まって、有効な変換元ブロックアドレスが連続的になり、メモリ使用効率が向上する。
【００１６】
上記第３態様の構成によれば、マルチプレクサで選択されたアドレスの上位ビットをデコーダでデコードしてチップ選択信号を生成するので、メモリエラーに応じて適切なチップを選択することができる。
【００１７】
上記第４態様の構成によれば、テーブルメモリに、変換先ブロックアドレスと共に、対応する変換元ブロックアドレスが有効であるか無効であるかを示す情報が格納され、この情報が無効であることを示している場合にプロセッサに割込がかけられるので、メモリエラーブロックの存在により記憶領域が狭くなったことに起因するメモリオーバフローエラーに対処することができる。
【００１８】
上記第５態様の構成によれば、揮発性メモリに対するメモリエラーチェックをブロック単位でブロック列一端側から順次行わせ、メモリエラーが検出される毎に、該揮発性メモリに対するメモリエラーチェックをブロック単位でブロック列他端側から順次、メモリエラー無しブロックが出現するまで行わせ、該出現したメモリエラー無しブロックのアドレス値を、該テーブルメモリの、該メモリエラーが検出されたブロックに対応したアドレスに格納させるので、メモリエラーチェックを行いながら複数のレジスタ及びテーブルメモリの内容を容易に定めることができる。
【００１９】
本発明の他の目的、構成及び効果は以下の説明から明らかになる。
【実施例１】
【００２０】
図１は、本発明の実施例１に係る画像形成装置のハードウェア構成を示す概略ブロック図である。
【００２１】
この画像形成装置１０は、例えば複合機であり、制御装置１１に操作・表示部１２及び画像形成装置本体１３が結合されて構成されている。制御装置１１は、操作・表示部１２で設定された情報やディフォルトの設定値に基づいて、画像形成装置本体１３で読み取られた原稿画像を処理し、又は、外部のホストコンピュータ２０から供給される設定情報及び画像データに基づいて、画像形成装置本体１３に対し画像を形成させる。
【００２２】
制御装置１１は、ＭＰＵ１１０に不揮発性メモリ１１１、揮発性メモリ１１２及びインタフェース１１３〜１１５がバスで結合され、インタフェース１１３〜１１５はそれぞれ操作・表示部１２、画像形成装置本体１３及びホストコンピュータ２０に結合されている。不揮発性メモリ１１１には、プログラム及びシステムの初期値等のデータが格納されている。
【００２３】
図２は、ＭＰＵ１１０と揮発性メモリ１１２との間の概略構成を示すブロック図である。
【００２４】
この例では、ＭＰＵ１１０の出力アドレスが２８ビットで、その上位８ビットが変換元ブロックアドレスＳＢＡとしてテーブルＲＡＭ３０１のアドレス入力端子に供給されると共に、マルチプレクサ３０２の一方の入力端子及び選択制御回路３０３に供給される。これらテーブルＲＡＭ３０１、マルチプレクサ３０２及び選択制御回路３０３はメモリ管理ユニット３０を構成している。
【００２５】
ここで、図５（Ａ）に示す如く、揮発性メモリ１１２は、上位８ビットで識別される論理的なブロックに分割されている。頭文字０ｘを付けて１６進数を表記すると（図５では頭文字０ｘを省略）、例えばメモリブロック０ｘ００はアドレス範囲０ｘ０００００００〜０ｘ００ＦＦＦＦＦであり、メモリブロック０ｘ０１はアドレス範囲０ｘ０１０００００〜０ｘ０１ＦＦＦＦＦであり、メモリブロック０ｘＦＥはアドレス範囲０ｘＦＥ０００００〜０ｘＦＥＦＦＦＦＦである。
【００２６】
図示のようにメモリブロック０ｘ０１、０ｘ０３及び０ｘＦＤでメモリエラーが検出された場合、図５（Ｄ）に示すようなテーブルが、後述のようにプログラムに従ってＭＰＵ１１０で作成される。このテーブルは、ＲＡＭ３０１に格納され、ＲＡＭ３０１の入力端子に８ビットの変換元ブロックアドレスＳＢＡを供給したときに、８ビットの変換先ブロックアドレスＤＢＡと１ビットの無効フラグＦｎをＲＡＭ３０１から出力するためのものである。例えば変換元ブロックアドレスＳＢＡが０ｘ０３のとき、ＤＢＡ＝０ｘＦＣ及びＦｎ＝‘０’がテーブルＲＡＭ３０１から出力される。
【００２７】
メモリエラーがなければ図５（Ａ） に示す全範囲をアドレス可能であるが、メモリエラーがあるとそのブロックが使用不可となるので、アドレス可能な範囲が狭くなる。ブロックアドレス変換により、使用不可の変換元ブロックアドレスＳＢＡが移動する。Ｆｎ＝‘１’は、変換元ブロックアドレスＳＢＡが無効であることを示す。
【００２８】
無効フラグＦｎの信号は、ＭＰＵ１１０の割込要求入力端子ＩＲＱに供給され、Ｆｎ＝‘１’のときにＭＰＵ１１０に割込みがかけられ、その割込処理により、メモリオーバフローエラーであることが図１の操作・表示部１２に表示される。
【００２９】
図３は、選択制御回路３０３の概略構成を示すブロック図である。
【００３０】
この選択制御回路３０３では、レジスタファイル４０が８個のレジスタＲＥＧ０〜ＲＥＧ７を備え、各々の最上位ビットには有効フラグＦｖが格納される。Ｆｖ＝‘１’は、そのレジスタの格納値（メモリエラーの在るブロックアドレス）が有効であることを示す。レジスタファイル４０に格納された、有効フラグＦｖを除くブロックアドレスはそれぞれ、比較回路４１を構成する８個の比較器に供給されて変換元ブロックアドレスＳＢＡと比較され、その結果はオアゲート４２を介し、図２のマルチプレクサ３０２の選択制御入力端子ＳＥＬに供給される。
【００３１】
レジスタＲＥＧ０〜ＲＥＧ７のそれぞれに対応した比較器のイネーブル入力端子ＥＮには、対応する有効フラグＦｖが供給され、Ｆｖ＝‘１’のとき、対応する比較器の出力が有効となり、Ｆｖ＝‘０’のとき、対応する比較器の出力が比較結果によらず‘０’となる。
【００３２】
このような構成により、レジスタファイル４０に格納された有効な（Ｆｖ＝‘１’）メモリエラーブロックアドレスのいずれにも変換元ブロックアドレスＳＢＡが一致しない場合には、選択制御回路３０３の出力が‘０’となって、マルチプレクサ３０２により変換元ブロックアドレスＳＢＡが選択される。
【００３３】
したがって、メモリエラーの無いブロックの変換元ブロックアドレスＳＢＡは、テーブルＲＡＭ３０１を介さずにマルチプレクサ３０２で選択されて、メモリ管理ユニット３０から出力され、これによりメモリアクセスが高速となる。
【００３４】
なお、マルチプレクサ３０２により変換元ブロックアドレスＳＢＡが選択されるば場合であっても、テーブルＲＡＭ３０１の出力自体は有効であり、無効フラグＦｎが‘１’であればＭＰＵ１１０に割込がかけられる。
【００３５】
レジスタファイル４０に格納された有効なメモリエラーブロックアドレスのいずれかに変換元ブロックアドレスＳＢＡが一致する場合には、選択制御回路３０３の出力が‘１’となって、マルチプレクサ３０２により変換先ブロックアドレスＤＢＡが選択される。したがって、テーブルＲＡＭ３０１には、メモリエラーの在るブロックアドレスのみについて、変換アドレスを格納すればよい。
【００３６】
マルチプレクサ３０２で選択された一方の８ビットのうち、上位４ビットはデコーダ３１でデコードされ、それぞれ揮発性メモリ１１２を構成する１６個のＤＲＡＭ１１２０〜１１２Ｆのチップイネーブル入力端子ＣＥに供給される。仮想アドレスを物理アドレスに変換する従来のＭＭＵでは、変換元ブロックアドレスＳＢＡの上位ビットをデコーダに供給する構成となっているが、本実施例では、同じ変換元ブロックアドレスＳＢＡであっても、メモリエラーが存在するブロックによってアクセス対象のチップが異なる場合があるので、マルチプレクサ３０２の出力の上位ビットをデコーダ３１に供給して、チップセレクト用としている。
【００３７】
ＤＲＡＭのアドレス信号線数を半減するために、マルチプレクサ３０２の出力の下位４ビットとＭＰＵ１１０の出力アドレスの２０ビットとがマルチプレクサ３２に供給され、行アドレスと列アドレスとが順次時分割で、ＤＲＡＭ１１２０〜１１２Ｆのアドレス入力端子ＡＤＲに供給される。
【００３８】
図６に示すように、ブロック０ｘ００から昇順にブロック単位でメモリエラーチェックを行い、メモリエラーが検出された場合には、エンドブロックｅｂから降順にブロック単位でメモリエラーチェックを行い、メモリエラーが検出されなかったブロックを、このメモリエラーが検出されたブロックに割り当てる（置換する）。
【００３９】
このようにすれば、変換先ブロックアドレスＤＢＡを昇順にしなくても、変換元ブロックアドレスＳＢＡが無効となるブロック（Ｆｎ＝‘１’のブロック）がエンド側に集まって、有効な変換元ブロックアドレスＳＢＡが連続的になるので、メモリ使用効率が向上するとともに、メモリエラーの無いブロックがアドレス変換対象外となり、高速アクセスが可能となる。
【００４０】
図４は、このような処理を行うプログラムのフローチャートを示す。このプログラムはＭＰＵ１１０により実行され、画像形成装置１０への電源投入により開始される。
【００４１】
最初に、ステップＳ０〜Ｓ１０において、ブロック単位でメモリエラーチェックが行われながらテーブルＲＡＭ３０１と選択制御回路３０３の内容が決定され、次に、ステップＳ１１においてシステムが起動される。
【００４２】
（Ｓ０）テーブルＲＡＭ３０１及びレジスタファイル４０の内容を初期化する。すなわち、テーブルＲＡＭ３０１の内容を図５（Ｂ）に示す如く、ゼロクリアするとともに、レジスタファイル４０の内容をゼロクリアする。
【００４３】
（Ｓ１）メモリエラーチェック対象ブロック識別変数ｉに初期値０を代入し、有効なエンドブロック識別変数ｅｂに初期値０ｘＦＥを代入する。
【００４４】
（Ｓ２）ブロックｉをメモリエラーチェックする。このチェックでは、不揮発性メモリ１１１に格納された複数のチェックパターン、例えば'０１０１０１０１'及び'１０１０１０１０'の各々について、揮発性メモリ１１２のメモリブロックｉにチェックパターンを書き込み、その内容を読み出してこれが書き込値と一致しているか否かを判定し、不一致であればエラーと判定する。
【００４５】
（Ｓ３）ステップＳ２でエラーが検出された場合にはステップＳ４へ進み、そうでなければステップＳ９へ進む。
【００４６】
（Ｓ４）ｉの値をレジスタファイル４０の、Ｆｖ＝‘０’のレジスタに格納し、この有効フラグＦｖを‘１’にする。
【００４７】
（Ｓ５）有効なエンドブロックｅｂを、ステップＳ２と同様にメモリエラーチェックする。
【００４８】
（Ｓ６）ステップＳ５でエラーが検出された場合にはステップＳ７へ進み、そうでなければステップＳ８へ進む。
【００４９】
（Ｓ７）Ｆｎ（ｅｂ）を‘１’にし、ｅｂを１だけデクリメントする。ここにＦｎ（ｅｂ）は、ＳＢＡ＝ｅｂであるときの無効フラグＦｎである。次にステップＳ５へ戻る。
【００５０】
（Ｓ８）ＤＢＡ（ｉ）に、ｅｂの値を代入する。ここにＤＢＡ（ｉ）は、ＳＢＡ＝ｉであるときの変換先ブロックアドレスＤＢＡである。
【００５１】
また、無効フラグＦｎ（ｅｂ）を‘１’にし、ｅｂを１だけデクリメントする。
【００５２】
（Ｓ９）ｉを１だけインクリメントする。
【００５３】
（Ｓ１０）ｉ＞ｅｂであればステップＳ１１へ進み、そうでなければステップＳ２へ戻る。
【００５４】
（Ｓ１１）オペレーティングシステム（ＯＳ）及びこのＯＳ上で動作する専用プログラムを起動して画像形成装置１０をレディ状態にする。
【００５５】
次に、上記のような処理の具体例を、図５を参照して説明する。
【００５６】
図５（Ｃ）は、ｉ＝０ｘ０１において、ステップＳ２でメモリエラーが検出され、ステップＳ３〜Ｓ６を通り、次にステップＳ８でＤＢＡ（０ｘ０１）＝０ｘＦＥ、Ｆｎ（０ｘＦＥ）＝‘１’、ｅｂ＝０ｘＦＤとなった場合を示す。
【００５７】
図５（Ｄ）は、ｉ＝０ｘ０３において、ステップＳ２でメモリエラーが検出され、ステップＳ３及びＳ４を通りステップＳ５でブロック０ｘＦＤのメモリエラーが検出され、ステップＳ７でＦｎ（０ｘＦＤ）＝‘１’、ｅｂ＝０ｘＦＣとなり、次いでステップＳ５〜Ｓ６を通り、ステップＳ８でＤＢＡ（０ｘ０３）＝０ｘＦＣ、Ｆｎ（０ｘＦＣ）＝‘１’、ｅｂ＝０ｘＦＢとなった場合を示す。
【００５８】
その後、ｉ＝０ｘＦＢにおいて、ステップＳ２でメモリエラーが検出されず、ステップＳ３からステップＳ９へ進んでｉ＝０ｘＦＣとなり、ステップＳ１０でｉ＞ｅｂが成立してステップＳ１１へ進む。
【００５９】
以上説明した如く、本実施例１によれば、揮発性メモリ１１２に対するメモリエラーチェックを行い、メモリエラーが検出された場合には、そのブロックを、メモリエラーの無いブロックに変換するように、テーブルＲＡＭ３０１の内容を定めると共に、メモリエラーが検出されたブロックのブロックアドレスをレジスタファイル４０のいずれかのレジスタに格納させ、その有効フラグＦｖを‘１’にして変換元ブロックアドレスＳＢＡとの比較出力を有効にし、変換元ブロックアドレスＳＢＡがレジスタファイル４０に格納されたいずれかのエラーブロックアドレスと一致する場合にはマルチプレクサ３０２に対し変換先ブロックアドレスＤＢＡを選択させ、そうでない場合には変換元ブロックアドレスＳＢＡを選択させるので、簡単な構成で、メモリエラーが検出されたブロックでも少ないオーバヘッドで揮発性メモリ１１２を使用可能となる。
【００６０】
また、揮発性メモリ１１２の一部にメモリエラーが検出されても、メモリエラーが無いブロックについては、マルチプレクサ３０２に変換元ブロックアドレスＳＢＡを選択させるので、変換先ブロックアドレスＤＢＡを選択させる場合よりも揮発性メモリ１１２を高速アクセス可能となる。
【００６１】
さらに、変換元ブロックアドレスＳＢＡを変換先ブロックアドレスＤＢＡに対応させるのに、変換先ブロックアドレスＤＢＡとして、揮発性メモリ１１２の最終ブロックアドレス側から順のブロックアドレスを割り当てるので、変換元ブロックアドレスＳＢＡが無効となるブロック（Ｆｎ＝‘１’のブロック）がエンド側に集まって、有効な変換元ブロックアドレスＳＢＡが連続的になり、メモリ使用効率が向上する。
【００６２】
また、マルチプレクサ３２で選択されたアドレスの上位ビットをデコーダ３１でデコードしてチップ選択信号を生成するので、メモリエラーに応じて適切なチップを選択することができる。
【００６３】
また、テーブルＲＡＭ３０１に、変換先ブロックアドレスＤＢＡと共に、対応する変換元ブロックアドレスＳＢＡが有効であるか無効であるかを示す無効フラグＦｎが格納され、このフラグＦｎが無効であることを示している場合にＭＰＵ１１０に割込がかけられるので、メモリエラーブロックの存在により記憶領域が狭くなったことに起因するメモリオーバフローエラーに対処することができる。
【００６４】
さらにまた、揮発性メモリ１１２に対するメモリエラーチェックをブロック単位で昇順に行い、メモリエラーが検出される毎に、そのブロックのブロックアドレスをレジスタファイル４０のいずれかのレジスタに格納させ、その有効フラグＦｖを‘１’にし、次に、揮発性メモリ１１２に対するメモリエラーチェックをブロック単位でブロックエンド側から降順に、メモリエラー無しブロックが出現するまで行い、出現したメモリエラー無しブロックのアドレス値をテーブルＲＡＭ３０１の、該メモリエラーが検出されたブロックに対応したアドレスに格納するので、メモリエラーチェックを行いながらレジスタファイル４０及びテーブルＲＡＭ３０１の内容を容易に定めることができる。
【００６５】
なお、本発明には外にも種々の変形例が含まれる。
【００６６】
例えば、上記実施例ではアドレス変換対象である揮発性メモリ１１２がＤＲＡＭである場合を説明したが、本発明はマルチプレクサ３２を省略して、ＳＲＡＭに適用可能である。
【００６７】
また、メモリ管理ユニット３０がＭＰＵ１１０に内蔵された構成であってもよい。
【００６８】
さらに、本発明はメモリエラーチェックを電源投入時に行うもの限定されず、例えば、電源オフ前にメモリエラーチェックを行ってその結果を不揮発性記憶手段に格納しておき、次に電源投入時に当該結果を読み出してテーブルＲＡＭ３０１の内容を定める構成であってもよい。このようにすれば、システム起動時間を短縮させることができる。
【００６９】
また、上記実施例ではプログラムが不揮発性メモリ１１１に格納されている場合を説明したが、ログラムは不揮発性記憶装置に格納されていればよく、ハードディスク等の外部記憶装置に格納された場合であってもよい。
【図面の簡単な説明】
【００７０】
【図１】本発明の実施例１に係る画像形成装置のハードウェア構成を示す概略ブロック図である。
【図２】ＭＰＵとメモリとの間の概略構成を示すブロック図である。
【図３】図２中の選択制御回路３０３の概略構成を示すブロック図である。
【図４】電源投入により実行が開始されるプログラムの概略フローチャートである。
【図５】図４の処理の説明図であって、（Ａ）はメモリブロックを示す図、（Ｂ）〜（Ｄ）はテーブルＲＡＭの内容がどのように決定されるかを示す図である。
【図６】図４の処理の概要説明図である。
【符号の説明】
【００７１】
１０  画像形成装置
１１  制御装置
１１０  ＭＰＵ
１１１  不揮発性メモリ
１１２  揮発性メモリ
１１２０〜１１２Ｆ  ＤＲＡＭ
１１３〜１１５  インタフェース
１２  操作・表示部
１３  画像形成装置本体
２０  ホストコンピュータ
３０  メモリ管理ユニット
３０１  テーブルＲＡＭ
３０２、３２  マルチプレクサ
３０３  選択制御回路
３１  デコーダ
４０  レジスタファイル
４１  比較回路
４２  オアゲート
ＣＥ  チップイネーブル入力端子
ＥＮ  イネーブル入力端子
ＡＤＲ  アドレス入力端子
ＳＢＡ  変換元ブロックアドレス
ＤＢＡ  変換先ブロックアドレス
ＳＥＬ  選択制御入力端子
Ｆｖ  有効フラグ
Ｆｎ  無効フラグ
【図１】
0004438739.tif 000002
【図２】
0004438739.tif 000003
【図３】
0004438739.tif 000004
【図４】
0004438739.tif 000005
【図５】
0004438739.tif 000006
【図６】
0004438739.tif 000007