JP2016009332A - 情報処理装置、情報処理方法及びプログラム - Google Patents

情報処理装置、情報処理方法及びプログラム Download PDF

Info

Publication number
JP2016009332A
JP2016009332A JP2014129540A JP2014129540A JP2016009332A JP 2016009332 A JP2016009332 A JP 2016009332A JP 2014129540 A JP2014129540 A JP 2014129540A JP 2014129540 A JP2014129540 A JP 2014129540A JP 2016009332 A JP2016009332 A JP 2016009332A
Authority
JP
Japan
Prior art keywords
additional function
information processing
hardware
processing
processing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014129540A
Other languages
English (en)
Inventor
稔雄 吉原
Toshio Yoshihara
稔雄 吉原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2014129540A priority Critical patent/JP2016009332A/ja
Priority to US14/745,978 priority patent/US9489159B2/en
Publication of JP2016009332A publication Critical patent/JP2016009332A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1211Improving printing performance
    • G06F3/1215Improving printing performance achieving increased printing speed, i.e. reducing the time between printing start and printing end
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1239Restricting the usage of resources, e.g. usage or user levels, credit limit, consumables, special fonts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1275Print workflow management, e.g. defining or changing a workflow, cross publishing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1289Remote printer device, e.g. being remote from client or server in server-client-printer device configuration, e.g. the server does not see the printer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00933Timing control or synchronising
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00938Software related arrangements, e.g. loading applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00954Scheduling operations or managing resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/21Intermediate information storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】ハードウェア処理とソフトウェア処理との最適な分担を決定する情報処理装置、情報処理方法及びプログラムを提供する。
【解決手段】追加機能の選択を受け付ける受付手段と、受け付けられた追加機能のハードウェア処理に関するハードウェア情報を格納する格納部の空き容量と、追加機能に係る追加機能情報と、に基づいて追加機能をハードウェアで処理するかソフトウェアで処理するかを決定する決定手段と、を有する。
【選択図】図3

Description

本発明は、情報処理装置、情報処理方法及びプログラムに関する。
近年、スマートフォンやタブレット等のデバイスでは、ユーザが好みに応じて自由にアプリケーションをダウンロードし、ユーザ毎でデバイスをカスタマイズ可能な構成となっている。このカスタマイズの実現方法は、ダウンロードしたアプリケーションをCPU等による演算処理装置でSW処理する方法が取られている。このようなSW処理によるカスタマイズに加えて、今後、HW処理によるカスタマイズ可能な構成が重要となってくる。つまり、ハードウェア機能をダイナミックに切り替える技術の一つであるFPGA等のデバイスを利用して、ユーザが必要となった追加機能を自由にHW処理させる構成が重要となってくる。なぜなら、半導体の進化によってCPU処理も高速となってきたが、HWによる特定処理の処理スピードにはかなわないからである。更に、複合機のように入力された画像に対してリアルタイム処理が必要な場合では、HWによる高速処理が必須となるからである。
以下、FPGA等による単一のハードウェアにおいて、ハードウェアの機能をダイナミックに切り替える方法について説明する。FPGAに接続されているRAM等の記憶装置に、処理させる全てのハードウェアコンフィグレーションデータ(以後、コンフィグデータという)を保持しておき、必要なときにFPGAに展開し処理する方法がある。この機能切替時において、コンフィグデータの書き換えによる時間を短縮するために、高速アクセスできるRAMに全コンフィグデータを格納し、データ処理に必要なコンフィグデータのみを書き換える手法が提案されている(特許文献1)。
特開2000−89963号公報
しかし特許文献1の技術では、HW処理する機能が増えた場合に、RAMに展開可能な容量は決まっているので、全てのコンフィグデータを展開することができなくなる。その結果、RAMに展開されていないコンフィグデータを使用する場合は、アクセススピードが遅い外部記憶装置からコンフィグデータを読み出し、FPGAに展開する必要があるので、HW処理で実行するにも関わらず結果を得るのに時間を要してしまう。これでは、ユーザのカスタマイズによる複数の機能追加に対応する場合に、多数の機能追加でHWによる処理スピードの恩恵を得ることができない。今後、スマートフォンのようにユーザが自由に機能追加しHW処理による機能実現していく世界が広がった場合に、追加機能数が多くなったときにある追加機能の処理が遅くなるといった問題が発生する。
前述の多数の機能追加による問題を解決するために、HW処理とSW処理とを機能によって分担させることが考えられる。しかし、機能追加は一度に行われるものではなく順次行われていくので、機能が追加されるたびに、HW処理、SW処理の最適な分担構成が変化する。つまり、ある機能は処理時間を要するのでHW処理させたいが、既に他の追加機能によってコンフィグデータを展開するRAM容量が限界に達していて、SW処理となり処理時間が遅くなるという問題が発生する。要するに、ユーザ毎に異なる追加機能に対して、HW処理・SW処理の最適な分担を再構成できる技術の提案が望まれている。
そこで、本発明の情報処理装置は、追加機能の選択を受け付ける受付手段と、前記受け付けられた前記追加機能のハードウェア処理に関するハードウェア情報を格納する格納部の空き容量と、前記追加機能に係る追加機能情報と、に基づいて前記追加機能をハードウェアで処理するかソフトウェアで処理するかを決定する決定手段と、を有する。
本発明によれば、ハードウェア処理とソフトウェア処理との最適な分担を決定することができる。
印刷システムのシステム構成の一例を示す図である。 プリンタのハードウェア構成の一例を示す図である。 追加機能の処理時間によって機能構成を変更する情報処理の一例を示すフローチャートである。 操作表示部に表示される画面の一例を示す図である。 追加機能リストの一例を示す図である。 アドレスマップ及び追加機能データの一例を示す図である。 ユーザ選択によって優先順位を変更する情報処理の一例を示すフローチャートである。 追加機能リストの優先順位を変更する画面の一例を示す図である。 追加機能の使用頻度によって優先順位を変更する情報処理の一例を示すフローチャートである。 追加機能の追加日時によって機能構成を変更する情報処理の一例を示すフローチャートである。 追加機能の実行処理の一例を示すフローチャートである。
以下、本発明の実施形態について図面に基づいて説明する。
(実施形態1)
<システムの全体構成>
図1は、印刷システム100のシステム構成の一例を示す図である。印刷システム100を構成する各装置が、ネットワーク105を介して接続されている。各装置のネットワーク105への接続方法は、ワイヤードLAN(Local Area Network)やワイヤレスLAN等により実現される。
クライアント端末101は、デスクトップPCやノートPC等の電子機器である。クライアント端末101からネットワーク105を介して印刷データが出力され、PDLプリント等の機能が実現される。
プリントサーバ102は、クライアント端末101から送信された印刷データを受信し、格納する。更にプリントサーバ102は、プリンタ103に印刷データを送信する。
プリンタ103は、ネットワークに接続可能なプリンタであり、プリントサーバ102から送信された印刷データを受信し、紙媒体等に印刷を行う。
機能追加サーバ104は、プリンタ103に追加する機能に係るデータ等が格納されているサーバである。プリンタ103からネットワーク105を介して機能追加サーバ104へアクセスし、ユーザによって選択等された機能をダウンロードする。例えば、Android−OSのアプリケーションプログラムが格納されているGooglePlay等の機能が、機能追加サーバ104が提供する機能に相当する。
図1に示される各装置は少なくともハードウェア構成として制御部(例えば、CPU)と記憶部(例えば、ROM)とを有し、制御部が記憶部に記憶されているプログラムに基づき処理を実行することによって各装置の機能やフローチャートの処理等が実現される。
<プリンタの構成>
図2は、プリンタ103のハードウェア構成の一例を示す図である。
ネットワークIF部201は、Gigabit Ethernet(登録商標)等のワイヤードLANに対応したインターフェースであり、ワイヤードLANを介して外部装置とのデータのやり取りを行う。なお、ネットワークIF部201は、ワイヤレスLANのインターフェースとして構成されていてもよい。
操作表示部202は、表示機能と操作機能とを兼ね揃えたタッチパネル等のデバイスであり、プリンタ103のユーザインターフェースとして機能する。なお、操作表示部202は、液晶ディスプレイとハードキーとを組み合わされて構成されていてもよい。
記憶部203は、ハードディスクやSSD(Solid State Drive)等の記憶装置であり、印刷データ等を保存する。また、記憶部203は、制御部205の補助記憶装置としても機能する。また、記憶部203は、追加機能のHWコンフィグデータと、SW処理プログラムと、を格納する。SW処理プログラムとは、制御部205が処理可能な追加機能を実現するプログラムであり、コンパイル済みのオブジェクトデータである。
画像形成部204は、印刷データに基づく画像を紙媒体上に形成するデバイスで構成される。例えば、レーザープリンタ方式であれば、画像形成部204は、紙搬送装置や感光ドラム、定着器等で構成される。
制御部205は、プリンタ103を制御するための中央処理装置である。
追加機能処理部206は、追加機能をHW処理(ハードウェア処理)するデバイスであり、FPGA(Field−Programmable Gate Array)等で構成される。追加機能の一例としては、解像度変換処理や、圧縮伸張機能等がある。
HW構成格納部207は、追加機能処理部206がHW処理するためのコンフィグデータを格納する場所である。HW構成格納部207は、追加機能処理部206と接続され、追加機能処理部206によりデータを読み出し可能なデバイスである。HW構成格納部207は、例えば、FlashROMやDRAMで構成される。本実施形態では、HW構成格納部207は、FlashROMとして以後説明していくが、DRAMであった場合でもアクセス方法が異なるだけである。
<追加機能の処理時間によって機能構成を変更する情報処理>
図3は、追加機能の処理時間によって機能構成を変更する情報処理の一例を示すフローチャートである。
S300において、制御部205は、プリンタ103の操作表示部202におけるユーザ操作に基づいて、機能追加サーバ104へアクセスする。制御部205は、ネットワークIF部201を介して、ネットワーク105へアクセスし、機能追加サーバ104へアクセスする。制御部205は、アクセス方法として一般的なTCP/IPプロトコルで行うことを想定しているが、別のアクセス方法でもよい。図4(A)に操作表示部202の表示画面の一例を示す。図4(A)に示すように、前記表示画面は、タッチパネル400、押しボタン401を含む。タッチパネル400は画像を表示すると共にユーザが表面を触れることで入力する入力装置を兼ねるものである。押しボタン401はテンキーによる数値の入力や、コピー処理の開始等の操作を指示するものである。その指示に並んで、機能追加サーバ104へのアクセスするボタンである機能追加ボタン402があり、ユーザは、機能追加ボタン402を押下することで機能追加サーバ104へアクセスすることをプリンタ103に指示する。本実施形態では、ネットワークを介して機能を追加する説明をしているが、例えば、USBメモリのような記憶媒体に既に格納されてある追加機能をプリンタ103にインストールすることも可能である。
S301において、制御部205は、ユーザの表示画面を介した選択操作に応じて、追加する機能(追加機能)の選択を受け付ける。S301の処理は、受付処理の一例である。図4(B)にこのときの操作表示部202の表示画面の一例を示す。図4(B)に示すように、前記表示画面は、入力部403、表示部404を含む。入力部403は、機能を検索する検索条件等を入力する入力部である。表示部404は、検索結果を表示する表示部である。表示部404で表示された機能のうちの一の機能を選択し、OKボタン405を押下することでユーザは追加機能を決定する。ここで、ユーザによってキャンセルボタン406が押下されると、制御部205は、画面を図4(A)の画面に戻し、図3に示す処理を終了する。このようにして、ユーザは、所望する機能を検索し、選択することができる。
S302において、制御部205は、S301で受け付けた追加機能が既にプリンタ103に追加されているかどうかを判断する。制御部205は、S301で受け付けた追加機能が記憶部203に保持している追加機能リストに記載されているか否かに基づき、既にプリンタ103に追加されているかどうかを判断する。制御部205は、受け付けた追加機能が追加機能リストに既に存在するならば、S303へ進み、まだ存在しないならばS304へ進む。追加機能リストは、追加機能一覧の一例である。
図5に追加機能リストの一例を示す。追加機能リストは、プリンタ103に既に追加されている追加機能を管理するためのリストである。制御部205は、ユーザによって選択され、受け付けた追加機能の機能名と追加機能リストの機能名とを照合することで、既に追加されてある機能か否かを判断する。追加機能リストには、追加機能が現状HW処理なのかSW処理(ソフトウェア処理)なのかを示す処理手段、HWコンフィグデータの容量、機能が追加されてからの使用頻度、機能が追加された追加日時等の情報が含まれる。更に、追加機能リストには、その機能の処理に必要なHWパフォーマンスとSWパフォーマンスとが含まれる。このパフォーマンスは、時間当たりに処理可能なデータ量を表しており、全て同じ環境によって測定された値である。また、HW処理となった機能には、HW構成格納部207に格納されるHWコンフィグデータのスタートアドレスとしてのROMアドレスが含まれる。
図6(a)に、図5の追加機能リストの優先順位を用いた場合のHW構成格納部207のアドレスマップ600の一例を示す。0x000_0000番地から優先順位が1番の高圧縮処理のHWコンフィグデータが格納される。次に、優先順位が2番目のエッジ強調機能が0x080_0000から格納される。このアドレス情報は、実際にデータ処理が実行される際に使用される。制御部205は、データ処理の実行前に追加機能リストのアドレス情報を基にHW構成格納部207からHWコンフィグデータを読み出し、追加機能処理部206に展開する。このようなHWコンフィグデータの書き換えはFPGA技術で実現可能であり、本実施形態の処理に直接関係しないので詳細な説明は省略する。
また、図6(b)は、記憶部203に格納される、機能を実行する処理実行プログラムであるSW処理プログラムとHWコンフィグデータとを示している。図6(b)のように、各追加機能のSW処理プログラムとHWコンフィグデータとの両方が格納されており、例えば、601は高圧縮処理するためのSW処理プログラムであり、602は高圧縮処理するためのHWコンフィグデータである。SW処理する場合、制御部205は、記憶部203に格納されているSW処理プログラムを読み出し、実行する。
S303において、制御部205は、ユーザによって選択された追加機能は既に追加されている旨の表示を操作表示部202に表示する。図4(C)にこのときの操作表示部202の表示画面の一例を示す。図4(C)に示すように、タッチパネル400にポップアップ表示画面407が表示される。ポップアップ表示画面407のOKが押下されると、制御部205は、再びS301に戻り、機能選択画面を表示する。
S304において、制御部205は、ユーザによって選択された追加機能を実行する処理実行データである追加機能データの送信を機能追加サーバ104に要求し、追加機能データを受信する。機能追加サーバ104から送信される追加機能データは、機能を実行する処理実行プログラムであり、SW処理プログラムとHWコンフィグデータとの両方である。これにより、制御部205は、追加機能の実行を、制御部205によるSW処理か、追加機能処理部206によるHW処理かを選択することが可能となる。また、送信される追加機能データには、HWコンフィグデータの他に、HWコンフィグデータの容量やHW処理の実行処理時間も含まれ、これらの情報は制御部205によって追加機能リストに登録される。S304の処理は、追加機能データを取得する取得処理の一例である。
S305において、制御部205は、追加機能データを記憶部203に格納する。全ての追加機能の追加機能データは、記憶部203に格納されている。
S306において、制御部205は、追加機能データのHWコンフィグデータをHW構成格納部207に展開可能かどうかを判断する。つまり、制御部205は、HW構成格納部207の空き容量が追加機能データのHWコンフィグデータ容量以上か否かを判断する。制御部205は、HW構成格納部207の空き容量が追加機能データのHWコンフィグデータ容量以上の場合、S307に進み、HW構成格納部207の空き容量が追加機能データのHWコンフィグデータ容量未満の場合は、S308へ進む。HWコンフィグデータは、ハードウェア情報の一例である。
S307において、制御部205は、HW構成格納部207にHWコンフィグデータを展開し、HWによって追加機能の処理を実行するようにする。そして、制御部205は、S315へ進む。
S308において、制御部205は、追加機能リストに追加されている追加機能の処理時間と新たに追加された追加機能の処理時間とを比較する。
S309において、制御部205は、処理時間を要する順番に優先順位を決定する。図5の追加機能リストを例にすると、優先順位が高い順番に、高圧縮処理(10MB/s)、エッジ強調(50MB/s)、解像度変換(100MB/s)となる。ここで、HWパフォーマンスが同じ値だった場合、制御部205は、SWパフォーマンスが低い程、優先順位が高くなるよう優先順位を決定する。これは、HW処理としたときのほうが、時間的な効率がよくなるように設定するものである。このように、制御部205は、HWパフォーマンスとSWパフォーマンスとの結果から優先順位を決定していく。
S310において、制御部205は、追加機能リストにおいて、HW処理かSW処理かの割り当てがされていない追加機能が存在するかの判断を行う。制御部205は、割り当てがされていない追加機能が存在しない場合、S315に進み、割り当てがされていない追加機能が存在する場合、S311に進む。
S311において、制御部205は、未割り当ての追加機能のうちで優先順位が一番高い追加機能を決定し、S312へ進む。
S312において、制御部205は、S311で決定した追加機能の必要ROM容量と現在のROM空き容量とを比較する。制御部205は、追加機能データのHWコンフィグデータ容量がHW構成格納部207の空き容量よりも小さい場合は、S314へ進み、逆に、追加機能データのHWコンフィグデータ容量がHW構成格納部207の空き容量よりも大きい場合は、S313へ進む。
S313において、制御部205は、該当する追加機能をSW処理として割り当て、S310へ進む。
S314において、制御部205は、HW構成格納部207にHWコンフィグデータを展開し、HWによって追加機能の処理を実行するようにする。
S315において、制御部205は、追加機能リストを更新する。より具体的に説明すると、制御部205は、優先順位、処理手段、ROMアドレス、追加日時を更新する。
以上、フローチャートでは、機能追加サーバ104にアクセスし、追加機能の選択を受け付け、全ての追加機能の処理時間に応じて実際にHW処理、SW処理の割り当てを行う処理を説明した。これにより、まず、追加機能の実行方法をSW処理とHW処理との両方から選択することが可能となる。更に、追加機能の処理時間によって優先順位を変更し、優先的にHW処理に割り当てることが可能となるので、処理時間を要する処理を実行処理が早いHW処理に割り当てることが可能となる。
<ユーザ選択によって優先順位を変更する情報処理>
図7は、ユーザ選択によって優先順位を変更する情報処理の一例を示すフローチャートである。
S700において、制御部205は、例えば、操作表示部202の画面等を介して、ユーザから追加機能リストの表示要求を受け付ける。
S701において、制御部205は、ユーザによって追加機能リストの優先順位が変更されたかどうかを判断する。図8に操作表示部202の表示画面の一例を示す。図8のように追加機能リスト800には、追加した機能名と優先順位と現在の処理手段とが表示されている。ユーザは、追加機能リスト800の優先順位項目のプルダウンボタン803を選択することで優先順位の変更を指示する。このとき変更されないでOKボタン801が押下された場合及びキャンセルボタン802が押下された場合、制御部205は、図7に示す処理を終了する。また、追加機能リスト800の優先順位が変更されてOKボタン801が押下された場合、制御部205は、S702へ進む。
S702において、制御部205は、変更後の全ての追加機能の優先順位を確認し、S703へ進む。
S703からS708までの処理は、図3のS310〜S315までの処理と同様なので説明は省略する。
以上、本フローチャートでは、ユーザが追加機能リスト800の変更を指示し、処理方法の再割り当てを実施する方法について説明した。これにより、ユーザによる追加機能の優先順位の設定が可能となり、ユーザの意図によって、ある機能の担当処理方法をHW処理なのかSW処理なのかを決定することが可能となる。
<使用頻度によって優先順位を変更する情報処理>
図9は、追加機能の使用頻度によって優先順位を変更する情報処理の一例を示すフローチャートである。
S900において、制御部205は、ある決められた期間で追加機能リストの追加機能の使用頻度を確認する。例えば、制御部205は、1カ月間や1週間単位で追加機能の使用頻度を確認する。この使用頻度の確認するタイミングに関しては、本実施形態では期間をその確認タイミングとしているが、例えば追加機能の何れかが使用されたとき等であってもよい。
S901において、制御部205は、追加機能リストの追加機能の使用頻度によって優先順位を決定する。例えば、制御部205は、使用頻度が最も高い追加機能を最も優先順位が高くなるように決定する。
S902において、制御部205は、S901の処理によって追加機能リストの優先順位が変更されたかどうかを判断する。制御部205は、変更があった場合はS903へ進み、変更が無かった場合は図9に示す処理を終了する。
S903において、制御部205は、変更後の全ての追加機能の優先順位を確認し、S904へ進む。
S904からS909までの処理は、図3のS310からS315までの処理と同様なので説明を省略する。
以上、本フローチャートでは、追加機能の使用頻度によって処理方法の再割り当てを実施する方法について説明した。これにより、ユーザの使用状況によって最も使用される機能が処理速度の速いHW処理に割り当てられるので、ユーザが意識することなく最適な処理方法の割り当てを実施することが可能となる。
<追加機能の追加日時によって機能構成を変更する情報処理>
図10は、追加機能の追加日時によって機能構成を変更する情報処理の一例を示すフローチャートである。
S1000からS1005までの処理は、図3のS300からS305までの処理と同様なので、説明は省略する。
S1006において、制御部205は、新しく追加された機能について、追加機能リストの優先順位を最も優先順位が高くなるよう(例えば、1番)に設定する。
S1007〜S1012までの処理は、図3のS310〜S315までの処理と同様なので説明は省略する。
以上、本フローチャートでは、追加機能の追加日時によって処理方法の再割り当てを実施する方法について説明した。これにより、追加された日時が新しいものほど処理速度の速いHW処理に割り当てられるので、ユーザが意識することなく最適な処理方法の割り当てを実施することが可能となる。
また、制御部205は、図3の追加機能の処理時間、図9の追加機能の使用頻度、図10の追加日時の構成決定方法の3つの切り替えは、ユーザによる操作表示部202の操作に応じて切り替えるようにしてもよい。このような構成にすることによって、どの構成決定方法にするかは、ユーザが操作表示部202を操作することで選択することが可能となる。処理時間や、使用頻度、追加日時等は、追加機能情報の一例である。
<追加機能の実行処理>
図11は、追加機能の実行処理の一例を示すフローチャートである。図11では、追加機能リストによって設定されたHW処理かSW処理かの処理手段に従った機能の実行の処理を説明している。
S1100において、制御部205は、何れかの追加機能の実行の指示を受け付けたかどうかを判断する。制御部205は、何れかの追加機能の実行指示を受け付けた場合は、S1101へ進む。
S1101において、制御部205は、追加機能リストから実行する追加機能の処理手段を確認する。
S1102において、制御部205は、S1101の確認の結果、実行する追加機能の処理手段がHWかSWかの判断を行う。制御部205は、HWである場合は、S1103へ進み、SWである場合は、S1104へ進む。
S1103において、制御部205は、HW処理としての必要な設定を行う。例えば、制御部205は、記憶部203から追加機能処理部206へ処理対象データを転送するための転送設定を行う。つまり、HW処理を実施する場合は、追加機能処理部206へ処理対象データを転送する必要がある。より具体的には、制御部205は、記憶部203から追加機能処理部206へデータを転送するためのアドレス設定や記憶部203と追加機能処理部206とに搭載されるIFモジュールの設定等を行う。また、制御部205は、追加機能の詳細設定をHW処理で有効にするためのレジスタ設定等を行う。例えば、追加機能が解像度変換であるならば、制御部205は、対象解像度の設定や各種変換テーブルを設定する各種パラメータを決定するレジスタを設定する。このような各種設定は追加機能により異なるので詳細な説明は省略する。
S1104において、制御部205は、SW処理として必要な設定を行う。設定する内容はS1103の内容と同等で、そのSW設定版である。
S1105において、制御部205は、追加機能の処理実行を開始させる。例えば、追加機能処理部206内のレジスタに制御部205がアクセスすることで処理実行が開始される。
S1106において、制御部205は、全てのデータ処理が終了する際に発生する割込みを待ち、割込みが発生したら、図11に示す処理を終了する。
S1107において、制御部205は、SWによる処理を実行する。その後、制御部205は、図11に示す処理を終了する。
以上、本フローチャートでは、追加機能の実行処理について説明した。これにより、HW処理/SW処理の何れであっても追加機能を実行することが可能となる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
以上、上述した各実施形態によれば、複数の追加された機能のSW処理とするかHW処理とするかの決定を各追加機能の処理時間とコンフィグデータ展開する格納部の容量とによって決定する。これにより処理時間が要する機能をHW処理とできるので、最適な分担を構成することができる。また、ユーザによって、複数の追加された機能のSW処理とするかHW処理とするかの決定をすることができるので、ユーザ意図を反映させることができる。更に、複数の追加された機能の機器での使用頻度によってSW処理とするかHW処理とするかの決定することで、ユーザの使用状況によって得られる時間効果を最大限にすることができる。
100 印刷システム、103 プリンタ、205 制御部

Claims (15)

  1. 追加機能の選択を受け付ける受付手段と、
    前記受け付けられた前記追加機能のハードウェア処理に関するハードウェア情報を格納する格納部の空き容量と、前記追加機能に係る追加機能情報と、に基づいて前記追加機能をハードウェアで処理するかソフトウェアで処理するかを決定する決定手段と、
    を有する情報処理装置。
  2. 前記追加機能情報は、前記受け付けられた前記追加機能の処理時間であり、
    前記決定手段は、前記格納部の空き容量と、前記追加機能の処理時間と、に基づいて前記追加機能をハードウェアで処理するかソフトウェアで処理するかを決定する請求項1記載の情報処理装置。
  3. 前記追加機能情報は、前記受け付けられた前記追加機能の使用頻度であり、
    前記決定手段は、前記格納部の空き容量と、前記追加機能の使用頻度と、に基づいて前記追加機能をハードウェアで処理するかソフトウェアで処理するかを決定する請求項1記載の情報処理装置。
  4. 前記追加機能情報は、前記受け付けられた前記追加機能の追加日時であり、
    前記決定手段は、前記格納部の空き容量と、前記追加機能の追加日時と、に基づいて前記追加機能をハードウェアで処理するかソフトウェアで処理するかを決定する請求項1記載の情報処理装置。
  5. 画面を介したユーザ操作に応じて、前記追加機能情報として、前記受け付けられた前記追加機能の処理時間と、前記受け付けられた前記追加機能の使用頻度と、前記受け付けられた前記追加機能の追加日時と、の何れかを選択する選択手段を更に有し、
    前記決定手段は、前記格納部の空き容量と、前記選択手段により選択された追加機能情報と、に基づいて前記追加機能をハードウェアで処理するかソフトウェアで処理するかを決定する請求項1記載の情報処理装置。
  6. 前記決定された処理で追加機能を実行する実行手段を更に有する請求項1乃至5何れか1項記載の情報処理装置。
  7. 前記受け付けられた追加機能の追加機能データを取得する取得手段を更に有し、
    前記追加機能データには、前記ハードウェア情報と、前記追加機能に係るソフトウェアのプログラムと、が含まれる請求項1乃至6何れか1項記載の情報処理装置。
  8. 前記受付手段により受け付けられた追加機能を追加機能一覧に追加する追加手段を更に有し、
    前記決定手段は、追加機能の処理時間に基づいて、前記追加機能一覧における優先順位を決定し、決定した前記受付手段により受け付けられた追加機能の優先順位と、前記格納部の空き容量と、に基づいて、前記受付手段により受け付けられた追加機能をハードウェアで処理するかソフトウェアで処理するかを決定する請求項2記載の情報処理装置。
  9. 前記受付手段により受け付けられた追加機能を追加機能一覧に追加する追加手段を更に有し、
    前記決定手段は、追加機能の使用頻度に基づいて、前記追加機能一覧における優先順位を決定し、決定した前記受付手段により受け付けられた追加機能の優先順位と、前記格納部の空き容量と、に基づいて、前記受付手段により受け付けられた追加機能をハードウェアで処理するかソフトウェアで処理するかを決定する請求項3記載の情報処理装置。
  10. 前記受付手段により受け付けられた追加機能を追加機能一覧に追加する追加手段を更に有し、
    前記決定手段は、追加機能の追加日時に基づいて、前記追加機能一覧における優先順位を決定し、決定した前記受付手段により受け付けられた追加機能の優先順位と、前記格納部の空き容量と、に基づいて、前記受付手段により受け付けられた追加機能をハードウェアで処理するかソフトウェアで処理するかを決定する請求項4記載の情報処理装置。
  11. 前記追加機能一覧における追加機能の優先順位を変更する変更手段を更に有する請求項8乃至10何れか1項記載の情報処理装置。
  12. 前記変更手段は、前記追加機能一覧の表示要求を受け付けると、前記追加機能一覧を表示する画面を表示部に表示し、前記画面を介した選択操作に応じて、前記追加機能一覧における追加機能の優先順位を変更する請求項11記載の情報処理装置。
  13. 画像を形成する画像形成手段を更に有する請求項1乃至12何れか1項記載の情報処理装置。
  14. 情報処理装置が実行する情報処理方法であって、
    追加機能の選択を受け付ける受付ステップと、
    前記受け付けられた前記追加機能のハードウェア処理に関するハードウェア情報を格納する格納部の空き容量と、前記追加機能に係る追加機能情報と、に基づいて前記追加機能をハードウェアで処理するかソフトウェアで処理するかを決定する決定ステップと、
    を含む情報処理方法。
  15. コンピュータに、
    追加機能の選択を受け付ける受付ステップと、
    前記受け付けられた前記追加機能のハードウェア処理に関するハードウェア情報を格納する格納部の空き容量と、前記追加機能に係る追加機能情報と、に基づいて前記追加機能をハードウェアで処理するかソフトウェアで処理するかを決定する決定ステップと、
    を実行させるためのプログラム。
JP2014129540A 2014-06-24 2014-06-24 情報処理装置、情報処理方法及びプログラム Pending JP2016009332A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014129540A JP2016009332A (ja) 2014-06-24 2014-06-24 情報処理装置、情報処理方法及びプログラム
US14/745,978 US9489159B2 (en) 2014-06-24 2015-06-22 Information processing apparatus, information processing method, and storage medium for performing processing on a function based on a free space

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014129540A JP2016009332A (ja) 2014-06-24 2014-06-24 情報処理装置、情報処理方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2016009332A true JP2016009332A (ja) 2016-01-18

Family

ID=54869666

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014129540A Pending JP2016009332A (ja) 2014-06-24 2014-06-24 情報処理装置、情報処理方法及びプログラム

Country Status (2)

Country Link
US (1) US9489159B2 (ja)
JP (1) JP2016009332A (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6323958B1 (en) * 1993-11-19 2001-11-27 Canon Kabushiki Kaisha Printing apparatus
US5819026A (en) * 1995-06-06 1998-10-06 Apple Computer, Inc System and method for arbitrating accelerator requests
JP4250230B2 (ja) 1998-09-11 2009-04-08 キヤノン株式会社 画像処理装置
JP2001027986A (ja) * 1999-05-10 2001-01-30 Canon Inc データ処理装置及び処理部選択方法
JP4671413B2 (ja) * 2004-08-06 2011-04-20 キヤノン株式会社 画像処理装置、画像処理方法
JP2012224066A (ja) * 2011-04-22 2012-11-15 Ricoh Co Ltd 画像形成装置、描画処理方法及びプログラム

Also Published As

Publication number Publication date
US20150370514A1 (en) 2015-12-24
US9489159B2 (en) 2016-11-08

Similar Documents

Publication Publication Date Title
EP3070921B1 (en) Display apparatus, display method, and storage medium
US11296943B2 (en) Information processing apparatus, control method for information processing apparatus, and recording medium
JP6233605B2 (ja) 管理サーバ、プログラム、端末装置
JP5371726B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
EP3086541A1 (en) Image forming apparatus, information processing method, and computer-readable recording medium
JP2015104023A (ja) 画像処理装置、その制御方法、及びプログラム
US20130247049A1 (en) Control apparatus and method of starting control apparatus
EP2990933A1 (en) Method and system for controlling operation of image forming apparatus by using wearable device
JP2010092458A (ja) 画像処理装置、プログラム起動方法
JP2013183396A (ja) 無線通信装置、無線通信制御方法、および無線通信制御プログラム
JP6455376B2 (ja) 画像処理装置および端末装置
JP5754904B2 (ja) 印刷装置、印刷装置の制御方法、及びプログラム
US8359564B2 (en) Circuit design information generating equipment, function execution system, and memory medium storing program
JP2016009332A (ja) 情報処理装置、情報処理方法及びプログラム
JP2017213827A (ja) 情報処理装置、情報処理システム、情報処理方法、及びプログラム
JP5307071B2 (ja) ハードキー割当方法、ハードキー割当装置およびハードキー割当システム
JP2016224899A (ja) 画像形成システムおよび画像形成方法
JP2013152509A (ja) 画像処理装置
JP5182152B2 (ja) 操作画面表示装置、画像形成装置および操作支援方法
JP7346937B2 (ja) 情報処理装置、情報処理方法、プログラム、画像形成システム
JP5619245B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2012252411A (ja) 選択プログラム、画像処理装置、及び、コンピュータ
JP5800934B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
US20190018620A1 (en) Image forming apparatus and control method
JP2018034404A (ja) 遠隔サポートシステム、情報処理装置、画像形成装置、および、プログラム