(57)【要約】 【課題】  パラレルインターフェースでのデータの配置が互いに異なる複数の種類のフォントメモリからのフォントデータをそれぞれ使用可能にすることができるデータスワップ制御装置を提供する。【解決手段】  デバイスＩＤ判定回路２６は、データスワップ回路２５によって配置入替処理が実行された入替ＩＤが、デバイスＩＤ格納テーブル２３に格納される登録ＩＤに一致するか否かを判定する。データスワップ制御回路２７は、デバイスＩＤ判定回路２６によって一致しないと判定されるとき、配置入替処理の種類を変更するようにデータスワップ回路２５を制御し、デバイスＩＤ判定回路２６によって一致すると判定されるとき、外部ＩＤ制御回路２１によって読み出されたフォントデータに対して、そのときの配置入替処理を実行するようにデータスワップ回路２５を制御する。【選択図】      図２
2009064192.tif 000002
【特許請求の範囲】
【請求項１】
所定のデータを格納するとともにデバイスＩＤデータを格納し、パラレルインターフェースを有するメモリから、このメモリに格納されるデータを読み出す読出手段と、
読出手段によって読み出されたデータに対して、データの配置を入れ替える複数の種類の配置入替処理を選択的に実行可能な入替手段と、
予め登録されるデバイスＩＤデータを格納する格納手段と、
入替手段によって配置入替処理が実行されたデバイスＩＤデータが、格納手段に格納されるデバイスＩＤデータに一致するか否かを判定する判定手段と、
判定手段によって一致しないと判定されるとき、配置入替処理の種類を変更するように入替手段を制御し、判定手段によって一致すると判定されるとき、読出手段によって読み出された所定のデータに対して、そのときの配置入替処理を実行するように入替手段を制御する制御手段とを含むことを特徴とするデータスワップ制御装置。
【請求項２】
前記予め登録されるデバイスＩＤデータは、追加書き換えが可能であることを特徴とする請求項１に記載のデータスワップ制御装置。
【請求項３】
前記配置入替処理は、バイト単位に行うことを特徴とする請求項１に記載のデータスワップ制御装置。
【請求項４】
前記配置入替処理は、ビット単位に行うことを特徴とする請求項１に記載のデータスワップ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリから所定のデータを得るために用いられるデータスワップ制御装置に関する。
【背景技術】
【０００２】
従来から、ディジタル複合機は、ＤＩＭＭ（Dual In-line Memory Module）ソケットを備え、このＤＩＭＭソケットには、メモリモジュールが着脱可能に装着される。メモリモジュールは、フラッシュＲＯＭ（Read Only Memory）によって実現される。フラッシュＲＯＭとしては、プログラムＲＯＭおよびフォントＲＯＭなどが挙げられる。プログラムＲＯＭには、プログラムが格納され、このプログラムは、プログラムの拡張のために用いられる。フォントＲＯＭには、フォントデータが格納され、このフォントデータは、印刷処理のために用いられる。
【０００３】
プログラムは、ディジタル複合機の機種によってコード内容が異なるので、このようなプログラムについては、機種に応じたものを選択して使用する必要がある。これに対して、フォントデータは、ディジタル複合機の機種に依存しないので、このようなフォントデータについては、複数の機種で共通に使用することができる。
【０００４】
特許文献１には、フォントファイルのデータエラーを検出するための技術が開示される。特許文献１の技術では、フォントファイルに少なくとも１つのチェックサムを設け、このチェックサムに基づいてフォントデータのサムチェックを行い、フォントファイルのデータエラーの有無を検出する。
【０００５】
【特許文献１】特開平２−４２８８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ディジタル複合機は、機種によって、パラレルインターフェースでのデータの配置が異なる。フラッシュＲＯＭは、ディジタル複合機の機種に応じて、パラレルインターフェースでのデータの配置が設定されている。換言すれば、フラッシュＲＯＭがディジタル複合機に対応するときは、ディジタル複合機とフラッシュＲＯＭとで、パラレルインターフェースでのデータの配置が互いに同一である。
【０００７】
ディジタル複合機では、その機種に対応していないフォントＲＯＭを用いる場合、ディジタル複合機とフォントＲＯＭとで、パラレルインターフェースでのデータの配置が異なる。この場合、フォントＲＯＭからのフォントデータは、たとえば特許文献１のようなサムチェックによってデータエラーがあると判定されてしまう。その結果、フォントＲＯＭからのフォントデータは、使用することができるにも拘わらず、使用不可能と判定されてしまう。このようなディジタル複合機では、その機種に対応する１種類のフォントＲＯＭからのフォントデータ以外は使用することができないという問題がある。
【０００８】
本発明の目的は、パラレルインターフェースでのデータの配置が互いに異なる複数の種類のメモリからの所定のデータをそれぞれ使用可能にすることができるデータスワップ制御装置を提供することである。
【課題を解決するための手段】
【０００９】
本発明は、所定のデータを格納するとともにデバイスＩＤデータを格納し、パラレルインターフェースを有するメモリから、このメモリに格納されるデータを読み出す読出手段と、
読出手段によって読み出されたデータに対して、データの配置を入れ替える複数の種類の配置入替処理を選択的に実行可能な入替手段と、
予め登録されるデバイスＩＤデータを格納する格納手段と、
入替手段によって配置入替処理が実行されたデバイスＩＤデータが、格納手段に格納されるデバイスＩＤデータに一致するか否かを判定する判定手段と、
判定手段によって一致しないと判定されるとき、配置入替処理の種類を変更するように入替手段を制御し、判定手段によって一致すると判定されるとき、読出手段によって読み出された所定のデータに対して、そのときの配置入替処理を実行するように入替手段を制御する制御手段とを含むことを特徴とするデータスワップ制御装置である。
【００１０】
また本発明は、前記予め登録されるデバイスＩＤデータは、追加書き換えが可能であることを特徴とする。
【００１１】
また本発明は、前記配置入替処理は、バイト単位に行うことを特徴とする。
また本発明は、前記配置入替処理は、ビット単位に行うことを特徴とする。
【発明の効果】
【００１２】
本発明によれば、メモリには、所定のデータが格納されるとともにデバイスＩＤデータが格納される。このメモリは、パラレルインターフェースを有する。このようなメモリに格納されるデータは、読出手段によって読み出される。入替手段は、読出手段によって読み出されたデータに対して、データの配置を入れ替える複数の種類の配置入替処理を選択的に実行可能である。
【００１３】
格納手段には、予め登録されるデバイスＩＤデータが格納される。判定手段は、入替手段によって配置入替処理が実行されたデバイスＩＤデータが、格納手段に格納されるデバイスＩＤデータに一致するか否かを判定する。
【００１４】
制御手段は、判定手段によって一致しないと判定されるとき、配置入替処理の種類を変更するように入替手段を制御し、判定手段によって一致すると判定されるとき、読出手段によって読み出された所定のデータに対して、そのときの配置入替処理を実行するように入替手段を制御する。このように制御手段によって入替手段を制御するので、配置入替処理の種類を適宜に選択して、パラレルインターフェースでのデータの配置が互いに異なる複数の種類のメモリからの所定のデータをそれぞれ使用可能にすることができる。
【００１５】
また本発明によれば、予め登録されるデバイスＩＤデータは、追加書き換え可能であるので、予め登録されるデバイスＩＤデータを、必要に応じて後から変更することができ、したがって利便性を向上することができる。
【００１６】
また本発明によれば、配置入替処理をバイト単位に行うので、配置入替処理の簡素化を図ることができる。
【００１７】
また本発明によれば、配置入替処理をビット単位に行うので、多くの入れ替え方を実現することができ、したがって多くの種類のメモリからの所定のデータをそれぞれ使用可能にすることができる。
【発明を実施するための最良の形態】
【００１８】
図１は、本発明の実施の一形態であるデータスワップ制御装置１を備えるデータ処理システム２の構成を示すブロック図である。データ処理システム２は、ディジタル複合機に搭載される。データ処理システム２は、メモリモジュール３と、外部メモリ４と、外部装置５と、コントローラ６とを含む。
【００１９】
メモリモジュール３は、フラッシュＲＯＭ（Read Only Memory）が基板に実装されて構成される。フラッシュＲＯＭは、フラッシュメモリとも呼ばれる。フラッシュＲＯＭには、デバイスを識別するためのデバイスＩＤデータ（以下、「デバイスＩＤ」という）が格納される。フラッシュＲＯＭとしては、プログラムメモリであるプログラムＲＯＭ３ａ，３ｂとフォントメモリであるフォントＲＯＭ３ｃとが挙げられる。プログラムＲＯＭ３ａ，３ｂには、プログラムが格納され、このプログラムは、プログラムの拡張のために用いられる。フォントＲＯＭ３ｃには、所定のデータであるフォントデータが格納され、このフォントデータは、印刷処理のために用いられる。メモリモジュール３は、たとえばＤＩＭＭ（Dual In-line Memory Module）によって実現され、ディジタル複合機が備えるＤＩＭＭソケットに着脱可能に装着される。このようなメモリモジュール３は、パラレルインターフェースを有する。
【００２０】
外部メモリ４は、プログラムおよびデータを記憶するとともに、外部装置５を制御するためのドライバなどを記憶する。外部メモリ４は、たとえばＳＤＲＡＭ（Synchronous 
Dynamic Random Access Memory）によって実現される。
【００２１】
外部装置５は、ディジタル複合機で必要な画像処理を実行する画像処理回路などを含む。外部装置５は、画像処理回路以外の処理回路であってもよい。
【００２２】
コントローラ６は、ＣＰＵ（Central Processing Unit）１１と、ＤＭＡ（Direct 
Memory Access）コントローラ１２と、メモリモジュールコントローラ１３と、外部メモリコントローラ１４と、ＰＣＩ（Peripheral Component Interconnect）コントローラ１５とを含む。コントローラ６を構成する各部１１〜１５は、システムバス１６を介して互いに接続される。
【００２３】
ＤＭＡコントローラ１２は、ＣＰＵ１１に代わってシステムバス１６を占有して、外部装置５と外部メモリ４との間でのデータを転送する。
【００２４】
メモリモジュールコントローラ１３は、メモリモジュール３、詳しくはプログラムＲＯＭ３ａ，３ｂおよびフォントＲＯＭ３ｃにアクセスするためのコントローラである。メモリモジュールコントローラ１３は、パラレルバスであるバス１７を介してメモリモジュール３に接続される。このようなメモリモジュールコントローラ１３は、パラレルインターフェースを有する。本実施の形態では、メモリモジュールコントローラ１３は、後述のデータスワップ制御装置１を備える。
【００２５】
外部メモリコントローラ１４は、外部メモリ４にアクセスするためのコントローラである。外部メモリコントローラ１４は、バス１８を介して外部メモリ４に接続される。
【００２６】
ＰＣＩコントローラ１５は、外部装置５にアクセスするためのコントローラである。ＰＣＩコントローラ１５は、ＰＣＩバス１９を介して外部装置５に接続される。
【００２７】
以下、フォントＲＯＭ３ｃからのデータの読み出しに注目して説明する。
図２は、データスワップ制御装置１の構成を示すブロック図である。データスワップ制御装置１は、データをスワップする。本実施の形態では、スワップとは、データの配置を入れ替えることをいう。
【００２８】
データスワップ制御装置１は、読出手段である外部ＩＦ制御回路２１と、読み出しデバイスＩＤ格納レジスタ２２と、格納手段であるデバイスＩＤ格納テーブル２３と、テーブル制御回路２４と、入替手段であるデータスワップ回路２５と、判定手段であるデバイスＩＤ判定回路２６と、制御手段であるデータスワップ制御回路２７とを含む。
【００２９】
外部ＩＦ制御回路２１は、フォントＲＯＭ３ｃから、このフォントＲＯＭ３ｃに格納されるデータを読み出す。このような外部ＩＦ制御回路２１は、フォントＲＯＭ３ｃへのアクセス信号を生成する。
【００３０】
読み出しデバイスＩＤ格納レジスタ２２は、外部ＩＦ制御回路２１によってフォントＲＯＭ３ｃから読み出されたデータ（以下「読出データ」という）のうちでデバイスＩＤ（以下「読出ＩＤ」という）を格納する。
【００３１】
デバイスＩＤ格納テーブル２３は、予め登録されるデバイスＩＤ（以下「登録ＩＤ」という）を格納する。登録ＩＤは、１つであってもよく、あるいは、複数であってもよい。
【００３２】
テーブル制御回路２４は、デバイスＩＤ格納テーブル２３から登録ＩＤを１つずつ読み出すためのアドレス制御を行う。
【００３３】
データスワップ回路２５は、データをスワップする。詳しくは、データスワップ回路２５は、読出データに対して、データの配置を入れ替える複数の種類の配置入替処理を選択的に実行可能である。配置入替処理は、読出データに対してデータの配置をそのままにするという処理を含んでもよい。たとえば、データの配置の入れ替えが不要な場合は、読出データがそのまま、データスワップ回路２５から出力される。本実施の形態では、配置入替処理はバイト単位に行い、これによって配置入替処理の簡素化を図ることができる。
【００３４】
デバイスＩＤ判定回路２６は、データスワップ回路２５によって配置入替処理が実行された読出ＩＤ（以下、「入替ＩＤ」という）が登録ＩＤに一致するか否かを判定する。デバイスＩＤ判定回路２６は、判定結果をデータスワップ制御回路２７に出力する。
【００３５】
データスワップ制御回路２７は、外部ＩＦ制御回路２１に対して、データを読み出すためのアクセス指示、詳しくは、デバイスＩＤを読み出すためのアクセス指示およびフォントデータを読み出すためのアクセス指示を行う。データスワップ制御回路２７は、テーブル制御回路２４に対して、アドレス更新指示を行う。データスワップ制御回路２７は、読み出しデバイスＩＤ格納レジスタ２２に対して、読出ＩＤを保持するための指示および読出ＩＤを更新するための指示を行う。データスワップ制御回路２７は、データスワップ回路２５に対して、配置入替処理の種類を選択するための指示を行う。本実施の形態では、データの配置を入れ替えるか否かの指示を行う。データスワップ制御回路２７は、デバイスＩＤ判定回路２６から判定結果を与えられ、また制御を切り換えるための指示をＣＰＵ１１から与えられる。
【００３６】
図３は、データスワップ制御装置１のデバイスＩＤ検知処理を説明するためのフローチャートである。データスワップ制御装置１は、フォントＲＯＭ３ｃへのアクセス指令をＣＰＵ１１から与えられると、デバイスＩＤ検知処理を開始する。フォントＲＯＭ３ｃへのアクセス指令は、データスワップ制御回路２７に与えられる。
【００３７】
デバイスＩＤ検知処理を開始すると、まずステップａ１で、データスワップ制御回路２７は、デバイスＩＤを読み出すためのアクセス指示を、外部ＩＦ制御回路２１に与える。外部ＩＦ制御回路２１は、このアクセス指示を与えられると、フォントＲＯＭ３ｃへのアクセス信号を生成し、フォントＲＯＭ３ｃから、このフォントＲＯＭ３ｃに格納されるデバイスＩＤを読み出し、読み出しＩＤ格納レジスタ２２に格納する。
【００３８】
次にステップａ２で、後述のデバイスＩＤ判定ルーチンを実行する。このデバイスＩＤ判定ルーチンでは、読み出しＩＤ格納レジスタ２２に格納される読出ＩＤが、デバイスＩＤ格納テーブル２３に格納される登録ＩＤに一致するか否かを、デバイスＩＤ判定回路２６によって判定する。ここでは、登録ＩＤと比較される読出ＩＤは、配置入替処理として、データの配置をそのままにする処理が実行されている。デバイスＩＤ判定回路２６は、読出ＩＤと登録ＩＤとが一致するとき、デバイスＩＤ判定フラグを０から１にセットする。
【００３９】
次にステップａ３で、データスワップ制御回路２７は、デバイスＩＤ判定フラグに基づいて、デバイスＩＤが特定できたか否かを判定する。ステップａ３において、デバイスＩＤ判定フラグが１であり、すなわちデバイスＩＤが特定できた場合、ステップａ４に進む。
【００４０】
ステップａ４では、データスワップ制御回路２７は、デバイス認識ＯＫとして、デバイスＩＤ検知処理を終了する。この後、データスワップ制御回路２７は、データスワップ回路２５の配置入替処理の設定を保持して、通常のアクセスモードに移行する。通常のアクセスモードでは、データスワップ制御回路２７は、フォントデータを読み出すための指示を外部ＩＦ制御回路２１に与え、外部ＩＦ制御回路２１は、このアクセス指示を与えられると、フォントＲＯＭ３ｃへのアクセス信号を生成し、フォントＲＯＭ３ｃから、このフォントＲＯＭ３ｃに格納されるフォントデータを読み出す。
【００４１】
ステップａ３において、デバイスＩＤ判定フラグが０であり、すなわちデバイスＩＤが特定できない場合、ステップａ５に進む。ステップａ５では、データスワップ回路２５によって、読出ＩＤをスワップする。換言すれば、データスワップ回路２５によって、読み出しデバイスＩＤ格納レジスタ２２に格納される読出ＩＤに対して、所定の配置入替処理を実行する。
【００４２】
次にステップａ６で、後述のデバイスＩＤ判定ルーチンを再び実行する。デバイスＩＤ判定ルーチンでは、データスワップ回路２５によって所定の配置入替処理が実行された入替ＩＤが、デバイスＩＤ格納テーブル２３に格納される登録ＩＤに一致するか否かを、デバイスＩＤ判定回路２６によって判定する。デバイスＩＤ判定回路２６は、入替ＩＤと登録ＩＤとが一致するとき、デバイスＩＤ判定フラグを０から１にセットする。
【００４３】
次にステップａ７で、データスワップ制御回路２７は、デバイスＩＤ判定フラグに基づいて、デバイスＩＤが特定できたか否かを判定する。ステップａ７において、デバイスＩＤ判定フラグが１であり、すなわちデバイスＩＤが特定できた場合、ステップａ４に進む。ステップａ７において、デバイスＩＤ判定フラグが０であり、すなわちデバイスＩＤが特定できない場合、ステップａ８に進む。ステップａ８では、データスワップ制御回路２７は、デバイス認識ＮＧとしてＣＰＵ１１に通知して、デバイスＩＤ検知処理を終了する。
【００４４】
図４は、デバイスＩＤ判定ルーチンを説明するためのフローチャートである。デバイスＩＤ判定ルーチンを開始すると、まずステップｂ１で、データスワップ制御回路２７は、デバイスＩＤ判定フラグを初期化するとともに、テーブル参照ポインタを初期化する。
【００４５】
デバイスＩＤ判定フラグは、０または１である。デバイスＩＤ判定フラグが０のときは無効状態であることを意味し、デバイスＩＤ判定フラグが１のときは有効状態であることを意味する。無効状態とは、被判定ＩＤが登録ＩＤに一致していない状態をいい、有効状態とは、被判定ＩＤが登録ＩＤに一致している状態をいう。被判定ＩＤは、前記ステップａ２では読出ＩＤであり、前記ステップａ６では入替ＩＤである。本実施の形態では、デバイスＩＤ判定フラグを初期化するとは、デバイスＩＤ判定フラグを０にリセットすることをいう（DeviceIDen=０）。
【００４６】
テーブル参照ポインタは、整数である。本実施の形態では、テーブル参照ポインタを初期化するとは、テーブル参照ポインタを０にすることをいう（TblNum=０）。
【００４７】
次のステップｂ２では、データスワップ制御回路２７は、現在のテーブル参照ポインタとテーブル格納数とを比較する。テーブル格納数は、デバイスＩＤ格納テーブルに格納される登録ＩＤの個数である。ステップｂ２において、現在のテーブル参照ポインタがテーブル格納数よりも小さいとき（TblNum<TblTotal）、ステップｂ３に進む。
【００４８】
ステップｂ３では、デバイスＩＤ判定回路２６は、被判定ＩＤが、テーブル参照ポインタが示す登録ＩＤに一致するか否かを判定する。ステップｂ３において、デバイスＩＤ判定回路２６によって一致する（DeviceIDen==TblID[TblNum]）と判定されるとき、ステップａ４に進む。ステップａ４では、データスワップ制御回路２７は、デバイスＩＤ判定フラグを１にセットし、この後、デバイスＩＤ判定ルーチンを終了する。
【００４９】
ステップｂ３において、デバイスＩＤ判定回路２６によって一致しないと判定されるとき、ステップｂ５に進む。ステップｂ５では、テーブル制御回路２４によって、テーブル参照ポインタを１、加算して（TblNum++）、ステップｂ２に戻る。ステップｂ２において、現在のテーブル参照ポインタがテーブル格納数以上になるとき、デバイスＩＤ判定ルーチンを終了する。
【００５０】
このようなデバイスＩＤ判定ルーチンでは、デバイスＩＤ格納テーブルに格納される登録ＩＤが１つずつ、被判定ＩＤと比較される。登録ＩＤの１つが被判定ＩＤに一致すると、デバイスＩＤ判定フラグが１にセットされて、デバイスＩＤ判定ルーチンが終了される。また全ての登録ＩＤが被判定ＩＤに一致しないときは、デバイスＩＤ判定フラグが０のまま、デバイスＩＤ判定ルーチンが終了される。
【００５１】
以上のような本実施の形態によれば、デバイスＩＤ判定回路２６は、データスワップ回路２５によって配置入替処理が実行された入替ＩＤが、デバイスＩＤ格納テーブル２３に格納される登録ＩＤに一致するか否かを判定する。データスワップ制御回路２７は、デバイスＩＤ判定回路２６によって一致しないと判定されるとき、配置入替処理の種類を変更するようにデータスワップ回路２５を制御し、デバイスＩＤ判定回路２６によって一致すると判定されるとき、外部ＩＤ制御回路２１によって読み出されたフォントデータに対して、そのときの配置入替処理を実行するようにデータスワップ回路２５を制御する。このようにデータスワップ制御回路２７によってデータスワップ回路２５を制御するので、配置入替処理の種類を適宜に選択して、パラレルインターフェースでのデータの配置が互いに異なる複数の種類のフォントＲＯＭ３ｃからのフォントデータをそれぞれ使用可能にすることができる。
【００５２】
前述の実施の各形態は、本発明の例示に過ぎず、本発明の範囲内において構成を変更することができる。たとえば登録ＩＤは、追加書き換え可能であってもよい。この場合、登録ＩＤを、必要に応じて後から変更することができ、したがって利便性を向上することができる。
【００５３】
また配置入替処理は、ビット単位に行ってもよい。この場合、多くの入れ替え方を実現することができ、したがって多くの種類のフォントメモリからのフォントデータをそれぞれ使用可能にすることができる。
【００５４】
さらに所定のデータは、フォントデータに限定されるものではなく、複数の機種で共通に使用することができるデータであればよい。
【図面の簡単な説明】
【００５５】
【図１】本発明の実施の一形態であるデータスワップ制御装置１を備えるデータ処理システム２の構成を示すブロック図である。
【図２】データスワップ制御装置１の構成を示すブロック図である。
【図３】データスワップ制御装置１のデバイスＩＤ検知処理を説明するためのフローチャートである。
【図４】デバイスＩＤ判定ルーチンを説明するためのフローチャートである。
【符号の説明】
【００５６】
１  データスワップ制御装置
２  データ処理システム
３  メモリモジュール
３ａ，３ｂ  プログラムＲＯＭ
３ｃ  フォントＲＯＭ
４  外部メモリ
５  外部装置
６  コントローラ
１１  ＣＰＵ
１２  ＤＭＡコントローラ
１３  メモリモジュールコントローラ
１４  外部メモリコントローラ
１５  ＰＣＩコントローラ
２１  外部ＩＦ制御回路
２２  読み出しデバイスＩＤ格納レジスタ
２３  デバイスＩＤ格納テーブル
２４  テーブル制御回路
２５  データスワップ回路
２６  デバイスＩＤ判定回路
２７  データスワップ制御回路
【図１】
2009064192.tif 000003
【図２】
2009064192.tif 000004
【図３】
2009064192.tif 000005
【図４】
2009064192.tif 000006