(57)【要約】【課題】  複数回に１回分岐する処理を高速化することができる情報処理装置を提供する。【解決手段】  命令語を受け付ける命令語レジスタ２と、命令語レジスタ２によって受け付けられた命令語が間引き分岐命令であるか否かを判定するデコーダ３と、デコーダ３によって間引き分岐命令である旨の判定がされた場合に間引き分岐命令を受け付ける間引き分岐部４２とを備え、間引き分岐部４２は、間引き分岐命令を受け付けた場合に、設定回数に対して１回の割合で、分岐すべき旨の指令をアドレス生成部４１へ出力する一方、他の回数の受け付けについては分岐しない旨の指令をアドレス生成部４１へ出力し、アドレス生成部４１は、間引き分岐部４２により分岐すべき旨の指令が出力された場合、間引き分岐命令による指示に応じて分岐先の第２のアドレスを新たな命令語を読み出すべく出力するようにした。【選択図】      図１
2005107795.tif 000002
【特許請求の範囲】
【請求項１】
動作を指示するための複数の命令語を逐次読み出して、前記読み出した命令語による動作指示を逐次実行する情報処理装置であって、
前記命令語を読み出すための第１のアドレスを出力するアドレス生成部と、
前記第１のアドレスに応じて読み出された命令語を受け付ける受付部と、
前記受付部によって受け付けられた命令語が、所定の分岐処理を指示するための間引き分岐命令であるか否かを判定するデコード部と、
前記デコード部によって前記間引き分岐命令である旨の判定がされた場合に、前記間引き分岐命令を受け付ける間引き分岐部とを備え、
前記間引き分岐部は、前記間引き分岐命令を受け付けた場合に、予め設定された設定回数に対して１回の割合で、分岐すべき旨の指令を前記アドレス生成部へ出力する一方、他の回数の受け付けについては分岐しない旨の指令を前記アドレス生成部へ出力し、
前記アドレス生成部は、前記間引き分岐部により前記分岐すべき旨の指令が出力された場合、前記間引き分岐命令による指示に応じて分岐先の第２のアドレスを、新たな命令語を読み出すべく出力する一方、前記分岐しない旨の指令が出力された場合、前記第１のアドレスの次のアドレスを、新たな命令語を読み出すべく出力することを特徴とする情報処理装置。
【請求項２】
前記間引き分岐部は、前記設定回数を記憶する設定値記憶部と、前記間引き分岐命令を受け付けた回数を計数する計数部とを備え、
前記計数部は、当該計数した値が、前記設定値記憶部に記憶されている設定回数に達した場合に、前記分岐すべき旨の指令を前記アドレス生成部へ出力すると共に新たに前記間引き分岐命令を受け付けた回数を再び始めから計数することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記アドレス生成部は、前記間引き分岐部により前記分岐すべき旨の指令が出力された場合、前記第１のアドレスの次のアドレスを復帰先アドレスとして記憶する復帰先アドレス記憶部をさらに備え、
前記デコード部は、前記受付部によって受け付けられた命令語が、前記復帰先アドレスへの復帰を指示するための復帰命令であるか否かをさらに判定し、
前記アドレス生成部は、前記デコード部によって前記復帰命令である旨の判定がされた場合に、前記復帰先アドレス記憶部により記憶されている復帰先アドレスを、新たな命令語を読み出すべく出力することを特徴とする請求項１又は２記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動作を指示するための命令語を逐次読み出して実行する情報処理装置に関し、特に、画像処理に用いられる情報処理装置に関する。
【背景技術】
【０００２】
従来、例えば、プリンタやデジタル複合機等の画像形成装置において、画像データの解像度を変換する場合、解像度の高いデータからデータを間引いて解像度の低い画像データに変換したり、解像度の低いデータを拡張して解像度の高い画像データに変換したりする処理が行われている。このような解像度の変換処理をＣＰＵ(Central Processing Unit)のソフトウェア処理によって実行する場合には、高解像度のデータからＮ（整数）回に一回、画像データを間引くことによって解像度が１／Ｎの画像データを生成する場合や、低解像度のデータ１ワードに対してＮ回の拡張処理を行って解像度がＮ倍の画像データを生成する場合など、Ｎ回に１回の分岐処理が頻繁に発生する。
【０００３】
図６は、上述のように、Ｎ回に１回の分岐処理が発生する画像処理をＣＰＵのソフトウェア処理によって実行する場合の一例を示すフローチャートである。図６のフローチャートは、例えば、インターネットにおけるホームページの画面のように、１ページの中に６００ＤＰＩ(Dot Per Inch)の画像データと３００ＤＰＩの画像データとが混在している画面をプリンタによって画像形成する場合に、３００ＤＰＩのデータを６００ＤＰＩの解像度に変換して、１枚の画像データに合成する処理を示している。この場合、３００ＤＰＩの画像データを解像度が２倍の６００ＤＰＩのデータに変換するのでＮ＝２となり、まず、変数ｉに２が代入される（ステップＳ１０１）。次に、ＣＰＵによって、６００ＤＰＩの画像データがメモリから１ワード分読み出され、ＣＰＵが備えるレジスタに記憶される（ステップＳ１０２）。
【０００４】
そして、ＣＰＵによって、ｉ＝Ｎか否かが判断され、ｉ＝Ｎの場合（ステップＳ１０３でＹＥＳ）、３００ＤＰＩの画像データがメモリから１ワード分読み出される（ステップＳ１０４）。さらに、ＣＰＵによって、その読み出された１ワードの前半部分が拡張されることにより、３００ＤＰＩから６００ＤＰＩへの解像度変換が１ワード分、行われる（ステップＳ１０６）。
【０００５】
一方、ステップＳ１０３において、ＣＰＵによって、ｉ＝Ｎか否かが判断され、ｉ＝Ｎではなかった場合（ステップＳ１０３でＮＯ）、前回ステップＳ１０４において読み出された１ワードの３００ＤＰＩの画像データが、その画像データの後半部分を拡張処理の対象にするべく、１／２ワードシフトされる（ステップＳ１０５）。そして、ＣＰＵによって、その１／２ワードシフトされた画像データの後半部分が拡張されることにより、３００ＤＰＩから６００ＤＰＩへの解像度変換が１ワード分、行われる（ステップＳ１０６）。
【０００６】
次に、ＣＰＵのレジスタに記憶されていた６００ＤＰＩの画像データと、３００ＤＰＩから６００ＤＰＩへ解像度変換された画像データとが論理和演算され（ステップＳ１０７）、メモリに書き込まれる（ステップＳ１０８）。以上、ステップＳ１０１〜Ｓ１０８の処理により、１ワード分の、６００ＤＰＩの画像データと３００ＤＰＩの画像データとを合成した画像データが、メモリに書き込まれる。
【０００７】
次に、ＣＰＵによって、解像度変換処理の回数をカウントするべく変数ｉが１減算され（ステップＳ１０９）、ｉ＝０であるか否かが判断され（ステップＳ１１０）、ｉ＝０でなかった場合（ステップＳ１１０でＮＯ）ステップＳ１１２へ移行する一方、ｉ＝０であった場合（ステップＳ１１０でＹＥＳ）変数ｉを初期化するべく変数ｉに２（整数Ｎ）が代入（ステップＳ１１１）された後にステップＳ１１２へ移行する。
【０００８】
次に、ＣＰＵによって、１ページ分の解像度変換処理が終了したか否かが判断され１ページ分の解像度変換処理が終了していない場合（ステップＳ１１２でＮＯ）、ステップＳ１０２〜Ｓ１１２のループ処理を繰り返すべくステップＳ１０２へ移行する一方、１ページ分の解像度変換処理が終了した場合（ステップＳ１１２でＹＥＳ）、解像度変換処理を終了する。
【０００９】
以上、ステップＳ１０１〜Ｓ１１２の処理により、メモリに記憶されていた６００ＤＰＩの画像データと３００ＤＰＩの画像データとが、いずれも６００ＤＰＩの解像度に合わされた上で１ページ分の画像データとして合成され、メモリに記憶される。図６に示す画像処理においては、３００ＤＰＩの画像データを６００ＤＰＩの画像データに拡張する処理の例を示したのでＮ＝２となり、ステップＳ１０３において２回に１回ステップＳ１０５への分岐処理が発生しているが、例えば３００ＤＰＩの画像データを１２００ＤＰＩの画像データに拡張する場合にはＮ＝４となり、４回に１回の分岐処理が発生する。同様に、解像度を１／Ｎにする場合、例えば１２００ＤＰＩの画像データを３００ＤＰＩの画像データに変換する場合にも、Ｎ回に１回の分岐処理が発生する。
【００１０】
このような、ステップＳ１０２〜Ｓ１１２を繰り返すループ処理を高速化するため、ループ回数のカウントや、ループ終了の判断をハードウェアを用いて実行する方法が提案されている（例えば、特許文献１参照。）。
【特許文献１】特開平４−２６３３２４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
ところで、上述のように、Ｎ回に１回分岐する処理を実行するためには、図６に示すフローチャートにおいて、Ｎ回をカウントするための変数ｉの減算処理（ステップＳ１０９）、変数ｉが０になったか否かを判断し、変数ｉ＝０であった場合のみステップＳ１１１を実行させる分岐処理（ステップＳ１１０）、変数ｉを初期化するべく変数ｉに整数Ｎを代入する処理（ステップＳ１１１）、及び変数ｉがＮであるか否かを判断し、変数ｉ＝Ｎであった場合には前回読み出された画像データにシフト等の演算処理を施す処理に分岐させる分岐処理（ステップＳ１０３）が必要となる。特に、ステップＳ１０３とステップＳ１１０の条件分岐処理は、ＣＰＵの命令実行としては、比較命令とその比較命令の実行結果に基づいて分岐処理を行う条件分岐命令との組み合わせによる命令実行処理となる。
【００１２】
このため、上述のように、解像度変換処理等の画像処理をソフトウェア処理によって実行する場合、Ｎ回に１回分岐する処理が多用される一方、Ｎ回に１回分岐する処理を実行するために、分岐を制御するための処理が数多く必要となり、処理時間が増大するという問題があった。
【００１３】
また、この場合、ループ回数のカウントや、ループ終了の判断をハードウェアを用いて実行する方法を用いてループ処理を高速化した場合であっても、Ｎ回に１回分岐する処理時間の増大によって、解像度変換処理等の画像処理時間を十分に高速化することができないという問題があった。
【００１４】
本発明は、このような問題に鑑みて為された発明であり、複数回に１回分岐する処理を高速化することができる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１５】
請求項１に記載の発明は、動作を指示するための複数の命令語を逐次読み出して、前記読み出した命令語による動作指示を逐次実行する情報処理装置であって、前記命令語を読み出すための第１のアドレスを出力するアドレス生成部と、前記第１のアドレスに応じて読み出された命令語を受け付ける受付部と、前記受付部によって受け付けられた命令語が、所定の分岐処理を指示するための間引き分岐命令であるか否かを判定するデコード部と、前記デコード部によって前記間引き分岐命令である旨の判定がされた場合に、前記間引き分岐命令を受け付ける間引き分岐部とを備え、前記間引き分岐部は、前記間引き分岐命令を受け付けた場合に、予め設定された設定回数に対して１回の割合で、分岐すべき旨の指令を前記アドレス生成部へ出力する一方、他の回数の受け付けについては分岐しない旨の指令を前記アドレス生成部へ出力し、前記アドレス生成部は、前記間引き分岐部により前記分岐すべき旨の指令が出力された場合、前記間引き分岐命令による指示に応じて分岐先の第２のアドレスを、新たな命令語を読み出すべく出力する一方、前記分岐しない旨の指令が出力された場合、前記第１のアドレスの次のアドレスを、新たな命令語を読み出すべく出力することを特徴としている。
【００１６】
請求項１に記載の発明によれば、第１のアドレスに応じて読み出された間引き分岐命令が受付部によって受け付けられると、デコード部によって間引き分岐命令である旨の判定がされ、間引き分岐部によって間引き分岐命令が受け付けられる。そして、間引き分岐部によって間引き分岐命令が受け付けられた場合に、予め設定された設定回数に対して１回の割合で、アドレス生成部から間引き分岐命令による指示に応じて分岐先の第２のアドレスが、新たな命令語を読み出すべく出力される一方、他の回数の受け付けについてはアドレス生成部から第１のアドレスの次のアドレスが、新たな命令語を読み出すべく出力される。
【００１７】
請求項２に記載の発明は、請求項１に記載の情報処理装置において、前記間引き分岐部は、前記設定回数を記憶する設定値記憶部と、前記間引き分岐命令を受け付けた回数を計数する計数部とを備え、前記計数部は、当該計数した値が、前記設定値記憶部に記憶されている設定回数に達した場合に、前記分岐すべき旨の指令を前記アドレス生成部へ出力すると共に新たに前記間引き分岐命令を受け付けた回数を再び始めから計数することを特徴としている。
【００１８】
請求項２に記載の発明によれば、計数部によって計数された間引き分岐命令の受け付け回数が、設定値記憶部に記憶されている設定回数に達した場合、分岐すべき旨の指令がアドレス生成部へ出力されると共に新たに間引き分岐命令の受け付け回数が、再び始めから計数される。
【００１９】
請求項３に記載の発明は、請求項１又は２に記載の情報処理装置において、前記アドレス生成部は、前記間引き分岐部により前記分岐すべき旨の指令が出力された場合、前記第１のアドレスの次のアドレスを復帰先アドレスとして記憶する復帰先アドレス記憶部をさらに備え、前記デコード部は、前記受付部によって受け付けられた命令語が、前記復帰先アドレスへの復帰を指示するための復帰命令であるか否かをさらに判定し、前記アドレス生成部は、前記デコード部によって前記復帰命令である旨の判定がされた場合に、前記復帰先アドレス記憶部により記憶されている復帰先アドレスを、新たな命令語を読み出すべく出力することを特徴としている。
【００２０】
請求項３に記載の発明によれば、間引き分岐部により分岐すべき旨の指令が出力された場合、復帰先アドレス記憶部によって、第１のアドレスの次のアドレスが復帰先アドレスとして記憶される。また、受付部によって復帰命令が受け付けられた場合、復帰先アドレス記憶部により記憶されている復帰先アドレスが、新たな命令語を読み出すべく出力される。
【発明の効果】
【００２１】
請求項１に記載の発明によれば、受付部によって間引き分岐命令が受け付けられた場合、予め設定された設定回数に対して１回の割合で分岐する処理が実行されるので、ソフトウェア処理によって複数回に１回の分岐を制御するための処理を実行する必要がなく、複数回に１回分岐する処理を高速化することができる。
【００２２】
請求項２に記載の発明によれば、計数部によって間引き分岐命令を受け付けた回数が計数され、当該計数された値が設定回数に達した場合に分岐すべき旨の指令がアドレス生成部へ出力されて分岐する処理が実行されると共に、計数部により新たに間引き分岐命令を受け付けた回数が再び始めから計数されるので、予め設定された設定回数に対して１回の割合で分岐する処理を実行することができる。
【００２３】
請求項３に記載の発明によれば、受付部によって復帰命令が受け付けられた場合に、復帰先アドレス記憶部により記憶されている復帰先アドレスに復帰することができるので、復帰先アドレスを外部から読み出す必要がなく、分岐先からの復帰動作を高速化することができる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明に係る実施形態を図面に基づいて説明する。なお、各図において同一の符号を付した構成は、同一の構成であることを示し、その説明を省略する。
【００２５】
本発明の一実施形態に係る情報処理装置について説明する。図１は、本発明の一実施形態に係る情報処理装置１の構成の一例を説明するための図である。図１に示す情報処理装置１は、例えば命令語レジスタ２と、デコーダ３と、制御部４と、演算処理部５とを備え、いわゆるＣＰＵとして機能する。そして、情報処理装置１は、アドレスバス６及びデータバス７を介して、ＲＯＭ(Read Only Memory)８及びＲＡＭ(Random Access Memory)９と、アクセス可能に接続されている。
【００２６】
ＲＯＭ８には、例えば画像処理プログラムが記憶されている。ＲＡＭ９には、例えば画像処理の対象となる６００ＤＰＩの画像データと３００ＤＰＩの画像データとが記憶されている。また、ＲＡＭ９は、情報処理装置１によって画像処理が施された画像データを記憶したり、情報処理装置１によるプログラムの実行中に生じるデータを一時的に記憶したりする。
【００２７】
命令語レジスタ２は、制御部４からアドレスバス６を介してＲＯＭ８へ出力されたアドレスに応じてＲＯＭ８から出力された命令語や、命令語の一部を構成するオペランドデータなどを、データバス７を介して受け付けると共に一時的に記憶する。また、命令語レジスタ２は、制御部４からアドレスバス６を介してＲＡＭ９へ出力されたアドレスに応じてＲＡＭ９から出力された画像データ等のデータを、データバス７を介して受け付けると共に一時的に記憶する。そして、命令語レジスタ２は、記憶した命令語やデータ等を、デコーダ３、制御部４、及び演算処理部５へ出力する。
【００２８】
デコーダ３は、命令語レジスタ２から出力された命令語をデコードすると共にその命令語に応じた指示信号を制御部４へ出力する。また、デコーダ３は、命令語レジスタ２から出力された命令語が、間引き分岐命令であるか否かを判定し、間引き分岐命令であった場合に間引き分岐命令の実行を指示するべく指示信号ＢＮＸをハイレベルにする間引き分岐命令検出部３１と、命令語レジスタ２から出力された命令語が、復帰命令であるか否かを判定し、復帰命令であった場合に復帰命令の実行を指示するべく指示信号ＲＴＸをハイレベルにする復帰命令検出部３２とを備える。
【００２９】
制御部４は、情報処理装置１内の各部の動作を制御するもので、デコーダ３からの指示信号に応じた命令実行動作をさせるべく、情報処理装置１内の各部に制御信号を出力し、演算処理部５に演算処理を行わせたり、新たな命令語やデータを読み出すべく生成したアドレスをアドレスバス６を介してＲＯＭ８、ＲＡＭ９へ出力したり、演算処理部５による演算処理の結果得られたデータを、演算処理部５からデータバス７を介してＲＡＭ９へ書き込ませたりする。
【００３０】
また、制御部４は、命令語を読み出すためのアドレスを生成するアドレス生成部４１と、間引き分岐命令に基づき分岐指示を出力する間引き分岐部４２とを備える。図２は、アドレス生成部４１の構成の一例を説明するためのブロック図である。図２に示すアドレス生成部４１は、ＩＰレジスタ４３、復帰先レジスタ４４、加算器４５、及びマルチプレクサ４６，４７を備える。ＩＰレジスタ４３は、読み出し対象の命令語のアドレスを記憶するレジスタであり、記憶しているアドレスをマルチプレクサ４７へ出力する。加算器４５は、命令語レジスタ２によって新たな命令語等が読み出される都度、ＩＰレジスタ４３に記憶されているアドレスを１加算することにより、プログラムを歩進させる。
【００３１】
復帰先レジスタ４４は、間引き分岐部４２から出力された分岐信号が、分岐すべき旨を示すべくハイレベルにされた場合、加算器４５によりＩＰレジスタ４３に記憶されているアドレスが１加算されたアドレスを、復帰先アドレスとして記憶する。また、復帰先レジスタ４４は、記憶しているアドレスをマルチプレクサ４６へ出力する。
【００３２】
マルチプレクサ４６は、デコーダ３からの指示信号ＲＴＸに応じて、復帰先レジスタ４４から出力された復帰先アドレスと、命令語レジスタ２から出力された分岐先アドレス、例えば命令語のオペランドにより指定されたアドレスとのいずれかを選択してマルチプレクサ４７へ出力する。なお、命令語レジスタ２から出力される分岐先アドレスは、例えば現在アドレスからの相対アドレスで表されていてもよく、その場合、マルチプレクサ４６は、ＩＰレジスタ４３に記憶されているアドレスと、命令語レジスタ２から出力された相対アドレスとを加算したアドレスを、分岐先アドレスとしてマルチプレクサ４７へ出力する構成であっても良い。また、命令語レジスタ２から出力される分岐先アドレスは、命令語のオペランドによって指定される例に限られず、例えば命令語を表すコードの一部によりアドレスが指定される構成であっても良い。
【００３３】
マルチプレクサ４７は、間引き分岐部４２から出力された分岐信号が、分岐すべき旨を示すべくハイレベルにされた場合、マルチプレクサ４６から出力された分岐先アドレスをアドレスバス６へ出力する。また、マルチプレクサ４７は、デコーダ３からの指示信号ＲＴＸが、復帰命令を実行するべくハイレベルにされた場合、マルチプレクサ４６から出力された復帰先アドレスをアドレスバス６へ出力する。そして、マルチプレクサ４７は、分岐処理が行われない場合、ＩＰレジスタ４３から出力されたアドレスをアドレスバス６へ出力する。
【００３４】
図３は、間引き分岐部４２の構成の一例を示すブロック図である。図３に示す間引き分岐部４２は、初期値レジスタ４８、変数レジスタ４９、比較器５０、及び減算器５１を備える。初期値レジスタ４８は、Ｎ回に１回の分岐を行うための整数Ｎを記憶するレジスタである。変数レジスタ４９は、間引き分岐命令の実行回数を計数するための変数レジスタであり、初期設定により初期値Ｎが設定され、間引き分岐命令が実行される都度、減算器５１によって変数レジスタ４９の値が１減算される。そして、変数レジスタ４９の値が０になった場合、初期値レジスタ４８に記憶されている整数Ｎが、変数レジスタ４９に再度設定される。比較器５０は、デコーダ３からの指示信号ＢＮＸがハイレベルにされた場合、初期値レジスタ４８の値と変数レジスタ４９の値とを比較した結果が等しければ、分岐信号を分岐すべき旨を示すべくハイレベルにする。
【００３５】
次に、上述のように構成された情報処理装置１の動作を説明する。図４は、情報処理装置１の動作の一例を説明するためのフローチャートである。図４に示すフローチャートは、図６に示すフローチャートと同様の処理を、情報処理装置１を用いて実行した場合の動作を示している。まず、情報処理装置１内のレジスタを操作するためのレジスタ操作命令が実行され、初期値レジスタ４８及び変数レジスタ４９に、２が設定される（ステップＳ１）。次に、情報処理装置１によって、６００ＤＰＩの画像データがＲＡＭ９から１ワード分読み出され、例えば演算処理部５が備える図略の汎用レジスタに記憶される（ステップＳ２）。
【００３６】
次に、情報処理装置１によって、間引き分岐命令が実行される（ステップＳ３）。具体的には、ステップＳ３において、命令語レジスタ２によって受け付けられた間引き分岐命令が、デコーダ３によってデコードされ、間引き分岐命令検出部３１によって、間引き分岐命令の実行を指示するべく指示信号ＢＮＸがハイレベルで制御部４へ出力される。そして、図３に示す間引き分岐部４２において、初期値レジスタ４８及び変数レジスタ４９には、いずれも２が記憶されており、比較器５０による初期値レジスタ４８の値と変数レジスタ４９の値との比較結果は等しく、かつデコーダ３からの指示信号ＢＮＸがハイレベルにされているので、比較器５０によって、分岐すべき旨を示すべくハイレベルの分岐信号が、マルチプレクサ４７及び復帰先レジスタ４４へ出力される。さらに、変数レジスタ４９に記憶されている値、すなわち２が減算器５１によって１減算され、変数レジスタ４９に１が記憶される。
【００３７】
そして、図２を参照して、復帰先レジスタ４４によって、ハイレベルの分岐信号が受け付けられ、ＩＰレジスタ４３により記憶されているアドレスに１加算されたアドレスが、復帰先アドレスとして記憶される。
【００３８】
また、マルチプレクサ４７によって、ハイレベルの分岐信号が受け付けられ、命令語レジスタ２から出力された分岐先アドレスが、マルチプレクサ４６，４７によって、アドレスバス６を介してＲＯＭ８へ出力される。さらに、ＲＯＭ８によって、分岐先アドレスにより指定された命令語、すなわちステップＳ４の処理を実行するための命令語が、データバス７を介して命令語レジスタ２へ出力され、命令語レジスタ２によって受け付けられる。さらに、分岐後のアドレス歩進を可能にするべくＩＰレジスタ４３によって分岐先アドレスが記憶される。
【００３９】
このようにして、ステップＳ３において、ステップＳ３からステップＳ４への分岐処理が実行される。この場合、情報処理装置１は、ステップＳ３において、間引き分岐命令を実行することによりステップＳ３からステップＳ４への分岐処理を行うことができるので、図６に示すフローチャートにおけるステップＳ１０３のように、ＣＰＵが比較命令と、その比較命令の実行結果に基づいて分岐処理を行う条件分岐命令との２つの命令を実行する必要がなく、分岐処理を高速化することができる。
【００４０】
次に、ステップＳ４において、情報処理装置１によって、３００ＤＰＩの画像データがＲＡＭ９から１ワード分読み出される。さらに、情報処理装置１によって、その読み出された１ワードの前半部分が拡張されることにより、３００ＤＰＩから６００ＤＰＩへの解像度変換が１ワード分、行われる（ステップＳ６）。
【００４１】
そして、情報処理装置１によって、図略の汎用レジスタに記憶されていた６００ＤＰＩの画像データと、３００ＤＰＩから６００ＤＰＩへ解像度変換された画像データとが論理和演算され（ステップＳ７）、ＲＡＭ９に書き込まれる（ステップＳ８）。以上、ステップＳ１〜Ｓ８の処理により、１ワード分の、６００ＤＰＩの画像データと３００ＤＰＩの画像データとを合成した画像データが、ＲＡＭ９に書き込まれる。
【００４２】
次に、情報処理装置１によって、１ページ分の解像度変換処理が終了したか否かが判断され１ページ分の解像度変換処理が終了していない場合（ステップＳ９でＮＯ）、ステップＳ２〜Ｓ９のループ処理を繰り返すべくステップＳ２へ移行する一方、１ページ分の解像度変換処理が終了した場合（ステップＳ９でＹＥＳ）、解像度変換処理を終了する。
【００４３】
次に、ステップＳ２において、情報処理装置１によって、新たな６００ＤＰＩの画像データがＲＡＭ９から１ワード分読み出され、例えば演算処理部５が備える図略の汎用レジスタに記憶される。
【００４４】
次に、情報処理装置１によって、再び間引き分岐命令が実行される（ステップＳ３）。具体的には、ステップＳ３において、命令語レジスタ２によって受け付けられた間引き分岐命令が、デコーダ３によってデコードされ、間引き分岐命令検出部３１によって、間引き分岐命令の実行を指示するべく指示信号ＢＮＸがハイレベルで制御部４へ出力される。そして、図３に示す間引き分岐部４２において、初期値レジスタ４８には２が記憶されている一方、変数レジスタ４９には１が記憶されているので、比較器５０による初期値レジスタ４８の値と変数レジスタ４９の値との比較結果は等しくない。従って、比較器５０によって、分岐しない旨を示すべくローレベルの分岐信号が、マルチプレクサ４７へ出力される。さらに、変数レジスタ４９に記憶されている値、すなわち１が減算器５１によって１減算され、変数レジスタ４９の値が０となる。そして、変数レジスタ４９の値が０になると、変数レジスタ４９に、初期値レジスタ４８に記憶されている整数Ｎ、すなわち２が再設定される。
【００４５】
そして、図２を参照して、マルチプレクサ４７によって、ローレベルの分岐信号が受け付けられ、ＩＰレジスタ４３により記憶されているアドレス、すなわち現状の実行アドレスの次のアドレスが、アドレスバス６を介してＲＯＭ８へ出力される。さらに、ＲＯＭ８によって、当該次のアドレスにより指定された命令語、すなわちステップＳ５の処理を実行するための命令語が、データバス７を介して命令語レジスタ２へ出力され、命令語レジスタ２によって受け付けられる。さらに、加算器４５によって、ＩＰレジスタ４３により記憶されているアドレスが、１加算される。
【００４６】
このようにして、ステップＳ３において、ステップＳ３からステップＳ５への歩進処理が実行される。この場合、情報処理装置１は、ステップＳ３において、間引き分岐命令を実行することによりステップＳ３からステップＳ５への歩進処理を行うことができるので、図６に示すフローチャートにおけるステップＳ１０３のように、ＣＰＵが比較命令と、その比較命令の実行結果に基づいて歩進処理を行う条件分岐命令との２つの命令を実行する必要がなく、歩進処理を高速化することができる。
【００４７】
また、Ｎ回に１回の分岐タイミングが、間引き分岐部４２によって判定されるので、図６に示すフローチャートにおけるステップＳ１０９、Ｓ１１０、Ｓ１１１が不要となり、Ｎ回に１回分岐する処理を高速化することができる。
【００４８】
次に、前回ステップＳ４において読み出された１ワードの３００ＤＰＩの画像データが、その画像データの後半部分を拡張処理の対象にするべく、１／２ワードシフトされる（ステップＳ５）。そして、ＣＰＵによって、その１／２ワードシフトされた画像データの後半部分が拡張されることにより、３００ＤＰＩから６００ＤＰＩへの解像度変換が１ワード分、行われる（ステップＳ６）。
【００４９】
以下、再びステップＳ７〜Ｓ９の処理が実行され、１ページ分の解像度変換処理が終了するまでステップＳ２〜Ｓ９の処理が繰り返される。以上、ステップＳ１〜Ｓ９の処理により、１ワード分の、６００ＤＰＩの画像データと３００ＤＰＩの画像データとを合成した画像データが、ＲＡＭ９に書き込まれる。
【００５０】
図５は、間引き分岐命令による分岐先から専用の復帰命令を用いて復帰する場合の情報処理装置１の動作の一例を説明するためのフローチャートである。図５に示すフローチャートにおいて、まず、情報処理装置１内のレジスタを操作するためのレジスタ操作命令が実行され、初期値レジスタ４８及び変数レジスタ４９に、整数Ｎが設定される（ステップＳ２１）。そして、所定の処理Ａが実行（ステップＳ２２）された後、図４に示すステップＳ３と同様に、間引き分岐命令が実行され、ステップＳ２４へ分岐する（ステップＳ２３）。このとき、ステップＳ２３において、復帰先レジスタ４４によって、ＩＰレジスタ４３により記憶されているアドレスに１加算されたアドレス、すなわちステップＳ２５を実行するための命令語のアドレスが、復帰先アドレスとして記憶される。
【００５１】
次に、ステップＳ２４において、所定の処理Ｃが実行された後、復帰先アドレスへ復帰するべく復帰命令が実行される。具体的には、ステップＳ２４において、図１を参照して命令語レジスタ２によって受け付けられた復帰命令が、デコーダ３によってデコードされ、復帰命令検出部３２によって、復帰命令の実行を指示するべく指示信号ＲＴＸがハイレベルで制御部４へ出力される。
【００５２】
そして、図２を参照してマルチプレクサ４６，４７によって、ハイレベルの指示信号ＲＴＸが受け付けられ、復帰先レジスタ４４から出力された復帰先アドレスが、アドレスバス６を介してＲＯＭ８へ出力される。さらに、ＲＯＭ８によって、復帰先アドレスにより指定された命令語、すなわちステップＳ２５の処理を実行するための命令語が、データバス７を介して命令語レジスタ２へ出力され、命令語レジスタ２によって受け付けられる。
【００５３】
このようにして、ステップＳ２４において、ステップＳ２４からステップＳ２５への復帰処理が実行される。この場合、情報処理装置１は、ステップＳ２４において、復帰命令を実行することによりステップＳ２４からステップＳ２５への分岐処理を行うことができるので、復帰先のアドレスを、ＲＯＭ８やＲＡＭ９をアクセスして読み出す必要がなく、復帰処理を高速化することができる。そして、情報処理装置１によって、所定の処理Ｂが実行され（ステップＳ２５）、所定回数ステップＳ２２〜Ｓ２６の処理を繰り返した後、処理を終了する（ステップＳ２６）。
【図面の簡単な説明】
【００５４】
【図１】本発明の一実施形態に係る情報処理装置の構成の一例を説明するための図である。
【図２】図１に示すアドレス生成部の構成の一例を説明するためのブロック図である。
【図３】図１に示す間引き分岐部の構成の一例を示すブロック図である。
【図４】図１に示す情報処理装置の動作の一例を説明するためのフローチャートである。
【図５】図１に示す情報処理装置の動作の一例を説明するためのフローチャートである。
【図６】従来の、Ｎ回に１回の分岐処理が発生する画像処理をＣＰＵのソフトウェア処理によって実行する場合の一例を示すフローチャートである。
【符号の説明】
【００５５】
１    情報処理装置
２    命令語レジスタ（受付部）
３    デコーダ（デコード部）
４    制御部
５    演算処理部
６    アドレスバス
７    データバス
３１  分岐命令検出部
３２  復帰命令検出部
４１  アドレス生成部
４２  間引き分岐部
４３  ＩＰレジスタ
４４  復帰先レジスタ（復帰先アドレス記憶部）
４５  加算器
４８  初期値レジスタ（設定値記憶部）
４９  変数レジスタ（計数部）
５０  比較器
５１  減算器
【図１】
2005107795.tif 000003
【図２】
2005107795.tif 000004
【図３】
2005107795.tif 000005
【図４】
2005107795.tif 000006
【図５】
2005107795.tif 000007
【図６】
2005107795.tif 000008