JP7419764B2 - 情報処理装置およびコンフィグレーション方法 - Google Patents

情報処理装置およびコンフィグレーション方法 Download PDF

Info

Publication number
JP7419764B2
JP7419764B2 JP2019209910A JP2019209910A JP7419764B2 JP 7419764 B2 JP7419764 B2 JP 7419764B2 JP 2019209910 A JP2019209910 A JP 2019209910A JP 2019209910 A JP2019209910 A JP 2019209910A JP 7419764 B2 JP7419764 B2 JP 7419764B2
Authority
JP
Japan
Prior art keywords
fpga
configuration data
information processing
prom
fpgas
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.)
Active
Application number
JP2019209910A
Other languages
English (en)
Other versions
JP2021082081A (ja
Inventor
崇之 柴田
裕一 桜田
達也 石井
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2019209910A priority Critical patent/JP7419764B2/ja
Priority to US17/063,849 priority patent/US11461524B2/en
Publication of JP2021082081A publication Critical patent/JP2021082081A/ja
Application granted granted Critical
Publication of JP7419764B2 publication Critical patent/JP7419764B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • G06F15/7871Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Stored Programmes (AREA)
  • Logic Circuits (AREA)

Description

本発明は、情報処理装置およびコンフィグレーション方法に関する。
従来、画像形成装置等の情報処理装置において、CPU(Central Processing Unit)がFPGA(Field Programmable Gate Array)に特定の機能を実行させることにより、CPUに係る負荷を軽減する技術が用いられている。
FPGAは、所定のメモリから、当該FPGA用にカスタマイズされたコンフィグレーションデータを読み出して、当該コンフィグレーションデータを用いたコンフィグレーション(コンフィグレーションデータの書き込み)を行うことにより、特定の機能を実行することが可能となる。
なお、下記特許文献1には、シリアル伝送に対応するFPGAに対しては、シリアル伝送部を介して該FPGAへ送信し、パラレル伝送に対応するFPGAに対しては、パラレル伝送部を介してデータを送信する技術が開示されている。
しかしながら、従来技術では、仕様変更等に対応できるように、複数のFPGAの各々のコンフィグレーションデータを更新可能にする場合、全てのFPGAに、1対1で対応するPROM(Programmable Read Only Memory)に記憶されているコンフィグレーションデータの更新を行うための更新処理部を設ける必要があるため、各FPGAの回路規模が大きくなる等の問題が生じていた。
本発明は、上述した従来技術の課題を解決するため、複数のFPGAの各々のコンフィグレーションデータの更新に係る、各FPGAの回路規模が大きくなる等の問題を解決できるようにすることを目的とする。
上述した課題を解決するために、本発明の情報処理装置は、CPUと、CPUと通信可能に接続された複数のFPGAと、複数のFPGAの各々に対して1対1で対応して設けられ、各々が対応するFPGAのコンフィグレーションデータを記憶する複数のメモリとを備え、複数のFPGAのうちのいずれか一のFPGAは、複数のメモリの各々に記憶されている、複数のFPGAの各々のコンフィグレーションデータを更新する更新処理部を有する。
本発明によれば、複数のFPGAの各々のコンフィグレーションデータの更新に係る、各FPGAの回路規模が大きくなる等の問題を解決することができる。
本発明の一実施形態に係る情報処理装置のシステム構成を示す図 本発明の一実施形態に係る情報処理装置が備える処理回路およびデータの一覧を示す図 本発明の一実施形態に係る情報処理装置による通常起動処理の手順を示すフローチャート 本発明の一実施形態に係る情報処理装置による更新処理の手順を示すフローチャート 本発明の一実施形態に係る更新処理部によるFPGA_1のコンフィグレーションデータの更新処理を示すフローチャート 本発明の一実施形態に係る更新処理部による他のFPGAのコンフィグレーションデータの更新処理を示すフローチャート 本発明の一実施形態に係るセレクタの通常起動時の状態を示す図 本発明の一実施形態に係るセレクタのFPGA_1のコンフィグレーションデータの更新処理時の状態を示す図 本発明の一実施形態に係るセレクタのFPGA_2のコンフィグレーションデータの更新処理時の状態を示す図 本発明の一実施形態に係るセレクタのFPGA_3のコンフィグレーションデータの更新処理時の状態を示す図
以下、図面を参照して、本発明の一実施形態について説明する。
(情報処理装置10のシステムの概要)
図1は、本発明の一実施形態に係る情報処理装置10のシステム構成を示す図である。本実施形態では、「複数のFPGA」の一例として、3つのFPGAを備える情報処理装置10に対し、本発明を適用する例について説明する。但し、これに限らず、本発明は、2つまたは4つ以上のFPGAを備える情報処理装置にも適用可能である。
図1に示す情報処理装置10は、CPU101および複数のFPGA110(FPGA_1,FPGA_2,FPGA_3)を有する。情報処理装置10は、複数のFPGA110によって特定の機能を実行することで、CPU101に係る負荷を軽減することができる。
例えば、画像形成装置のエンジン制御のように、作像制御、定着制御、搬送制御等、多くの制御を実施する場合、CPU101の負荷が大きくなるような演算処理(例えば、画像位置補正制御、色ムラ補正処理等)を、複数のFPGA110によって実行することにより、CPU101に係る負荷を軽減することができる。
複数のFPGA110を使用するためには、各FPGA110が、FPGA110毎にカスタマイズされたコンフィグレーションデータをメモリから読み出して起動する必要がある。
本実施形態の情報処理装置10は、図1に示すように、FPGA_1,FPGA_2,FPGA_3の各々のコンフィグレーションデータを、PROM_1,PROM_2,PROM_3の各々に保存しておく。このため、本実施形態の情報処理装置10は、FPGA_1,FPGA_2,FPGA_3が、互いに並列に、コンフィグレーションデータの読み出しおよび起動を行うことができる。すなわち、本実施形態の情報処理装置10は、複数のFPGA110の起動時間を短時間化することができる。
(情報処理装置10のシステム構成)
以下、図1を参照して、情報処理装置10のシステム構成について、具体的に説明する。図1に示すように、情報処理装置10は、CPU101、FROM102、複数のFPGA110(FPGA_1,FPGA_2,FPGA_3)、およびパラレルバス103を備える。
CPU101は、システム全体を制御する。例えば、CPU101は、FROM102に格納されているプログラムを実行し、パラレルバス103を介して、FPGA_1,FPGA_2,FPGA_3を制御する。FROM102は、CPU101が実行するプログラムを格納する。
<FPGA110>
複数のFPGA110(FPGA_1,FPGA_2,FPGA_3)の各々は、情報処理装置10が備える特定の機能を実行する。複数のFPGA110の各々は、パラレルバス103によって、CPU101と通信可能に接続されている。複数のFPGA110の各々は、コンフィグレーションデータが書き込まれることで、特定の機能を実行するためのロジック回路を形成する。
複数のFPGA110の各々は、通常動作部111を備える。通常動作部111は、FPGA110の通常起動時に動作する処理回路である。
また、複数のFPGA110のうち、FPGA_1は、更新処理部112を備える。更新処理部112は、後述する複数のPROM120(PROM_1,PROM_2,PROM_3)の各々に格納されている、複数のFPGA110(FPGA_1,FPGA_2,FPGA_3)の各々のコンフィグレーションデータを更新する処理回路である。
<PROM_1,PROM_2,PROM_3>
また、情報処理装置10は、FPGA_1,FPGA_2,FPGA_3の各々と1対1で対応する、複数のPROM120(PROM_1,PROM_2,PROM_3)を備える。PROM_1,PROM_2,PROM_3は、それぞれ、FPGA_1,FPGA_2,FPGA_3のコンフィグレーションデータを格納する。
<シリアルバス131~136>
PROM_1は、シリアルバス131,132によって、FPGA_1に接続されている。PROM_1は、FPGA_1のコンフィグレーションデータを格納する。シリアルバス131は、FPGA_1がPROM_1に対し、通信コマンド、コンフィグレーションデータの送信を行う際の、通信経路となる。シリアルバス132は、PROM_1がFPGA_1に対し、通信コマンドに対する応答、コンフィグレーションデータ等の送信を行う際の、通信経路となる。
また、PROM_2は、シリアルバス133,134によって、FPGA_2に接続されている。PROM_2は、FPGA_2のコンフィグレーションデータを格納する。シリアルバス133は、FPGA_2がPROM_2に対し、通信コマンドの送信を行う際の、通信経路となる。シリアルバス134は、PROM_2がFPGA_2に対し、通信コマンドに対する応答、コンフィグレーションデータ等の送信を行う際の、通信経路となる。
また、PROM_3は、シリアルバス135,136によって、FPGA_3に接続されている。PROM_3は、FPGA_3のコンフィグレーションデータを格納する。シリアルバス135は、FPGA_3がPROM_3に対し、通信コマンドの送信を行う際の、通信経路となる。シリアルバス136は、PROM_3がFPGA_3に対し、通信コマンドに対する応答、コンフィグレーションデータ等の送信を行う際の、通信経路となる。
<シリアルバス137~140>
シリアルバス131,132は、シリアルバス137,138によって、シリアルバス133,134と接続されている。
シリアルバス137は、FPGA_1の更新処理部112がPROM_2に記憶されているFPGA_2のコンフィグレーションデータの更新を行う際に、FPGA_1からPROM_2へ送信される、通信コマンドおよびコンフィグレーションデータの通信経路となる。
シリアルバス138は、FPGA_1の更新処理部112がPROM_2に記憶されているFPGA_2のコンフィグレーションデータの更新を行う際に、PROM_2からFPGA_1へ送信される、通信コマンドに対する応答の通信経路となる。
また、シリアルバス131,132は、シリアルバス139,140によって、シリアルバス135,136と接続されている。
シリアルバス139は、FPGA_1の更新処理部112がPROM_3に記憶されているFPGA_3のコンフィグレーションデータの更新を行う際に、FPGA_1からPROM_3へ送信される、通信コマンドおよびコンフィグレーションデータの通信経路となる。
シリアルバス140は、FPGA_1の更新処理部112がPROM_3に記憶されているFPGA_3のコンフィグレーションデータの更新を行う際に、PROM_3からFPGA_1へ送信される、通信コマンドに対する応答の通信経路となる。
<セレクタ141~145>
また、また、情報処理装置10は、「切替手段」の一例として、セレクタ141~145を備える。セレクタ141は、シリアルバス131,132上に設けられている。セレクタ141は、シリアルバス131,132を接続状態または遮断状態に選択的に切り替え可能である。
セレクタ142は、シリアルバス133,134上に設けられている。セレクタ142は、シリアルバス133,134を接続状態または遮断状態に選択的に切り替え可能である。
セレクタ143は、シリアルバス135,136上に設けられている。セレクタ143は、シリアルバス135,136を接続状態または遮断状態に選択的に切り替え可能である。
セレクタ144は、シリアルバス137,138上に設けられている。セレクタ144は、シリアルバス137,138を接続状態または遮断状態に選択的に切り替え可能である。
セレクタ145は、シリアルバス139,140上に設けられている。セレクタ145は、シリアルバス139,140を接続状態または遮断状態に選択的に切り替え可能である。
セレクタ141~145の切り替えは、FPGA_1から送信される切替信号SELによって制御される。
上記構成を有する情報処理装置10において、通常動作時においては、CPU101が、パラレルバス103を介して、各FPGA_1,FPGA_2,FPGA_3に対して、初期設定や演算命令を行う。各FPGA_1,FPGA_2,FPGA_3においては、通常動作部111が、対応するPROM_1,PROM_2,PROM_3からコンフィグレーションデータを読み出し、当該FPGAを起動する。
一方、上記構成を有する情報処理装置10において、コンフィグレーションデータ更新時においては、CPU101が、パラレルバス103を介して、FPGA_1に対して、各FPGA_1,FPGA_2,FPGA_3のコンフィグレーションデータの更新データを送信する。
FPGA_1は、セレクタ141を「接続状態」に切り替え、シリアルバス131を介して、FPGA_1用の更新データを、PROM_1に格納する。
また、FPGA_1は、セレクタ144を「接続状態」に切り替え、シリアルバス131,137,133を介して、FPGA_2用の更新データを、PROM_2に格納する。
さらに、FPGA_1は、セレクタ145を「接続状態」に切り替え、シリアルバス131,139,135を介して、FPGA_3用の更新データを、PROM_3に格納する。
(情報処理装置10が備える処理回路およびデータ)
図2は、本発明の一実施形態に係る情報処理装置10が備える処理回路およびデータの一覧を示す図である。
図2に示すように、本実施形態の情報処理装置10は、FPGA_1のみが更新処理部112を備える。このため、本実施形態の情報処理装置10は、その他のFPGA-2,FPGA-3の回路規模を抑制することができる。
また、図2に示すように、本実施形態の情報処理装置10は、FPGA_1に対応するPROM_1のみが、更新処理用のコンフィグレーションデータを記憶する。このため、本実施形態の情報処理装置10は、その他のPROM_2,PROM_3のメモリ使用量を抑制することができる。
(情報処理装置10による通常起動処理の手順)
図3は、本発明の一実施形態に係る情報処理装置10による通常起動処理の手順を示すフローチャートである。
まず、CPU101が、パラレルバス103を介して、各FPGA_1,FPGA_2,FPGA_3に対して、通常起動を指示する(ステップS301)。
次に、FPGA_1が、図7に示すように、通常起動用に、各セレクタ141~145を切り替える(ステップS302)。これにより、FPGA_1,FPGA-2,FPGA-3の各々が、PROM_1,PROM-2,PROM-3の各々と通信可能に接続される。
次に、FPGA_1の通常動作部111が、シリアルバス132を介して、PROM_1から通常起動時用のコンフィグレーションデータを読み出して、当該コンフィグレーションデータを用いたコンフィグレーションを行う(ステップS303)。
同時に、FPGA-2の通常動作部111が、シリアルバス134を介して、PROM_2から通常起動時用のコンフィグレーションデータを読み出して、当該コンフィグレーションデータを用いたコンフィグレーションを行う(ステップS304)。
同時に、FPGA-3の通常動作部111が、シリアルバス136を介して、PROM_3から通常起動時用のコンフィグレーションデータを読み出して、当該コンフィグレーションデータを用いたコンフィグレーションを行う(ステップS305)。
そして、CPU101が、全てのFPGAのコンフィグレーションが完了したか否かを判断する(ステップS306)。ステップS306において、全てのFPGAのコンフィグレーションが完了したと判断された場合(ステップS306:Yes)、情報処理装置10は、図3に示す一連の処理を終了する。一方、ステップS306において、全てのFPGAのコンフィグレーションが完了していないと判断された場合(ステップS306:No)、CPU101が、ステップS306の処理を再度実行する。
(情報処理装置10による更新処理の手順)
図4は、本発明の一実施形態に係る情報処理装置10による更新処理の手順を示すフローチャートである。
まず、CPU101が、パラレルバス103を介して、各FPGA_1,FPGA_2,FPGA_3に対して、コンフィグレーションデータの更新を指示する(ステップS401)。
次に、FPGA_1が、図8に示すように、更新処理用に、各セレクタ141~145を切り替える(ステップS402)。これにより、FPGA_1が、PROM_1と通信可能に接続される。
次に、FPGA_1の更新処理部112が、シリアルバス132を介して、PROM_1から更新処理用のコンフィグレーションデータを読み出して、当該コンフィグレーションデータを用いたコンフィグレーションを行う(ステップS403)。
そして、FPGA_1の更新処理部112が、FPGA_1のコンフィグレーションが完了したか否かを判断する(ステップS404)。
ステップS404において、FPGA_1のコンフィグレーションが完了していないと判断された場合(ステップS404:No)、FPGA_1の更新処理部112が、ステップS404の処理を再度実行する。
一方、ステップS404において、FPGA_1のコンフィグレーションが完了したと判断された場合(ステップS404:Yes)、FPGA_1の更新処理部112が、FPGA_1のコンフィグレーションデータの更新が必要であるか否かを判断する(ステップS405)。
ステップS405において、FPGA_1のコンフィグレーションデータの更新が必要であると判断された場合(ステップS405:Yes)、情報処理装置10が、FPGA_1のコンフィグレーションデータの更新処理を行い(ステップS406)、情報処理装置10が、ステップS407へ処理を進める。なお、FPGA_1のコンフィグレーションデータの更新処理の詳細な手順については、図5を用いて後述する。
一方、ステップS405において、FPGA_1のコンフィグレーションデータの更新が必要ではないと判断された場合(ステップS405:No)、情報処理装置10が、ステップS407へ処理を進める。
ステップS407では、FPGA_1の更新処理部112が、全てのコンフィグレーションデータの更新が完了したか否かを判断する。
ステップS407において、全てのコンフィグレーションデータの更新が完了していないと判断された場合(ステップS407:No)、情報処理装置10が、コンフィグレーションデータの更新が完了していない、FPGA_1以外の他のFPGAのコンフィグレーションデータの更新処理を行う(ステップS408)。そして、情報処理装置10は、ステップS407へ処理を戻す。なお、FPGA_1以外の他のFPGAのコンフィグレーションデータの更新処理の詳細な手順については、図6を用いて後述する。
一方、ステップS407において、全てのコンフィグレーションデータの更新が完了したと判断された場合(ステップS407:Yes)、情報処理装置10は、図4に示す一連の処理を終了する。
(FPGA_1のコンフィグレーションデータの更新処理の手順)
図5は、本発明の一実施形態に係る情報処理装置10によるFPGA_1のコンフィグレーションデータの更新処理を示すフローチャートである。
まず、FPGA_1が、PROM_1に記憶されている、FPGA_1のコンフィグレーションデータをイレースする(ステップS501)。
次に、CPU101が、FPGA_1へ、FPGA_1のコンフィグレーションデータの更新データを送信する(ステップS502)。
次に、FPGA_1が、FPGA_1のコンフィグレーションデータの更新データを、PROM_1にライトする(ステップS503)。そして、情報処理装置10は、図5に示す一連の処理を終了する。
(他のFPGAのコンフィグレーションデータの更新処理の手順)
図6は、本発明の一実施形態に係る情報処理装置10による他のFPGAのコンフィグレーションデータの更新処理を示すフローチャートである。
まず、FPGA_1が、図9または図10に示すように、更新対象のFPGA(FPGA_2またはFPGA_3)のコンフィグレーションデータの更新処理用に、各セレクタ141~145を切り替える(ステップS601)。これにより、FPGA_1が、更新対象のメモリ(PROM_2またはPROM_3)と通信可能に接続される。
次に、FPGA_1が、更新対象のメモリ(PROM_2またはPROM_3)に記憶されている、更新対象のFPGA(FPGA_2またはFPGA_3)のコンフィグレーションデータをイレースする(ステップS602)。
次に、CPU101が、FPGA_1へ、更新対象のFPGA(FPGA_2またはFPGA_3)のコンフィグレーションデータの更新データを送信する(ステップS603)。
次に、FPGA_1が、更新対象のFPGA(FPGA_2またはFPGA_3)のコンフィグレーションデータの更新データを、更新対象のメモリ(PROM_2またはPROM_3)にライトする(ステップS604)。そして、情報処理装置10は、図6に示す一連の処理を終了する。
(セレクタ141~145の状態)
<通常起動時の状態>
図7は、本発明の一実施形態に係るセレクタ141~145の通常起動時の状態を示す図である。図7に示すように、通常起動時においては、セレクタ141,142,143の各々が、「接続」状態に切り替えられる。これにより、FPGA_1,FPGA-2,FPGA-3の各々が、PROM_1,PROM-2,PROM-3の各々と通信可能に接続される。よって、FPGA_1,FPGA-2,FPGA-3の各々が、PROM_1,PROM-2,PROM-3の各々から、通常起動用のコンフィグレーションデータを読み出すことが可能となる。
<FPGA_1のコンフィグレーションデータの更新処理時の状態>
図8は、本発明の一実施形態に係るセレクタ141~145のFPGA_1のコンフィグレーションデータの更新処理時の状態を示す図である。図8に示すように、FPGA_1のコンフィグレーションデータの更新処理時においては、少なくともセレクタ141が「接続」状態に切り替えられる。これにより、FPGA_1が、シリアルバス131,132を介して、PROM_1と通信可能に接続される。よって、FPGA_1の更新処理部112が、PROM_1に記憶されている、FPGA_1用のコンフィグレーションデータを更新することが可能となる。
<FPGA_2のコンフィグレーションデータの更新処理時の状態>
図9は、本発明の一実施形態に係るセレクタ141~145のFPGA_2のコンフィグレーションデータの更新処理時の状態を示す図である。図9に示すように、FPGA_2のコンフィグレーションデータの更新処理時においては、少なくともセレクタ144が「接続」状態に切り替えられ、セレクタ141,142が「遮断」状態に切り替えられる。これにより、FPGA_1が、シリアルバス131,132、シリアルバス137,138、およびシリアルバス133,134を介して、PROM_2と通信可能に接続される。よって、FPGA_1の更新処理部112が、PROM_2に記憶されている、FPGA_2用のコンフィグレーションデータを更新することが可能となる。
<FPGA_3のコンフィグレーションデータの更新処理時の状態>
図10は、本発明の一実施形態に係るセレクタ141~145のFPGA_3のコンフィグレーションデータの更新処理時の状態を示す図である。図9に示すように、FPGA_3のコンフィグレーションデータの更新処理時においては、少なくともセレクタ145が「接続」状態に切り替えられ、セレクタ141,143,144が「遮断」状態に切り替えられる。これにより、FPGA_1が、シリアルバス131,132、シリアルバス139,140、およびシリアルバス135,136を介して、PROM_3と通信可能に接続される。よって、FPGA_1の更新処理部112が、PROM_3に記憶されている、FPGA_3用のコンフィグレーションデータを更新することが可能となる。
以上説明したように、本発明の一実施形態に係る情報処理装置10は、CPU101と、CPU101と通信可能に接続された複数のFPGA110と、複数のFPGA110の各々に対して1対1で対応して設けられ、各々が対応するFPGA110のコンフィグレーションデータを記憶する複数のPROM120とを備え、複数のFPGA110のうちのいずれか一のFPGA110は、複数のPROM120の各々に記憶されている、複数のFPGA110の各々のコンフィグレーションデータを更新する更新処理部112を有する。
これにより、本実施形態の情報処理装置10は、一のFPGA110のみが更新処理部112を備えればよいため、その他のFPGA110の回路規模を抑制することができる。
また、本実施形態の情報処理装置10は、一のFPGA110に対応するPROM120のみが、更新処理用のコンフィグレーションデータを記憶すればよいため、その他のPROM120のメモリ使用量を抑制することができる。
また、本発明の一実施形態に係る情報処理装置10は、複数のPROM120の中から、一のFPGA110の接続先を切り替えるセレクタ141~145をさらに備え、更新処理部112は、セレクタ141~145を制御して、一のFPGA110の接続先を、他のFPGA110に対応するPROM120に切り替えることにより、当該PROM120に記憶されている、他のFPGA110のコンフィグレーションデータを更新する。
これにより、本実施形態の情報処理装置10は、セレクタ141~145を切り替えるだけといった簡単な制御により、一のFPGA110から、複数のFPGA110の各々のコンフィグレーションデータを更新することができる。
また、本発明の一実施形態に係る情報処理装置10は、複数のFPGA110の各々と、複数のPROM120の各々とを1対1で接続する、シリアルバス131~136をさらに備え、更新処理部112は、一のFPGA110に繋がるシリアルバスの接続先を、他のFPGA110に対応するPROM120に繋がるシリアルバスに切り替えることにより、一のFPGA110の接続先を、他のFPGA110に対応するPROM120に切り替える。
これにより、本実施形態の情報処理装置10は、FPGA110毎に設けられたシリアルバス131~136を利用して、一のFPGA110から、複数のFPGA110の各々のコンフィグレーションデータを更新することができる。したがって、本実施形態の情報処理装置10によれば、コンフィグレーションデータの更新用に追加される伝送路の数を抑制することができる。
以上、本発明の好ましい実施形態について詳述したが、本発明はこれらの実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形又は変更が可能である。
10 情報処理装置
101 CPU
102 FROM
103 パラレルバス
110 FPGA
111 通常動作部
112 更新処理部
120 PROM
131~140 シリアルバス
141~145 セレクタ
特開2013-038741号公報

Claims (5)

  1. CPUと、
    前記CPUと通信可能に接続された複数のFPGAと、
    複数のFPGAの各々に対して1対1で対応して設けられ、各々が対応するFPGAのコンフィグレーションデータを記憶する複数のメモリと
    を備え、
    前記複数のFPGAのうちのいずれか一のFPGAは、
    前記複数のメモリの各々に記憶されている、前記複数のFPGAの各々の前記コンフィグレーションデータを更新する更新処理部を有する
    ことを特徴とする情報処理装置。
  2. 前記複数のメモリの中から、前記一のFPGAの接続先を切り替える切替手段をさらに備え、
    前記更新処理部は、
    前記切替手段を制御して、前記一のFPGAの接続先を、他のFPGAに対応する前記メモリに切り替えることにより、当該メモリに記憶されている、前記他のFPGAの前記コンフィグレーションデータを更新する
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記複数のFPGAの各々と、前記複数のメモリの各々とを1対1で接続する、複数のシリアルバスをさらに備え、
    前記更新処理部は、
    前記一のFPGAに繋がる前記シリアルバスの接続先を、前記他のFPGAに対応するメモリに繋がる前記シリアルバスに切り替えることにより、前記一のFPGAの接続先を、前記他のFPGAに対応するメモリに切り替える
    ことを特徴とする請求項2に記載の情報処理装置。
  4. 前記一のFPGAは、
    当該一のFPGAに対応する前記メモリに格納されている、更新処理用のコンフィグレーションデータが書き込まれることにより、前記複数のメモリの各々に記憶されている、前記複数のFPGAの各々の前記コンフィグレーションデータを更新する
    ことを特徴とする請求項1から3のいずれか一項に記載の情報処理装置。
  5. CPUと、
    前記CPUと通信可能に接続された複数のFPGAと、
    複数のFPGAの各々に対して1対1で対応して設けられ、各々が対応するFPGAのコンフィグレーションデータを記憶する複数のメモリと
    を備えた情報処理装置用のコンフィグレーション方法であって、
    前記複数のFPGAのうちのいずれか一のFPGAが、前記複数のメモリの各々に記憶されている、前記複数のFPGAの各々の前記コンフィグレーションデータを更新する更新処理工程を含む
    ことを特徴とするコンフィグレーション方法。
JP2019209910A 2019-11-20 2019-11-20 情報処理装置およびコンフィグレーション方法 Active JP7419764B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019209910A JP7419764B2 (ja) 2019-11-20 2019-11-20 情報処理装置およびコンフィグレーション方法
US17/063,849 US11461524B2 (en) 2019-11-20 2020-10-06 Information processing apparatus and configuration method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019209910A JP7419764B2 (ja) 2019-11-20 2019-11-20 情報処理装置およびコンフィグレーション方法

Publications (2)

Publication Number Publication Date
JP2021082081A JP2021082081A (ja) 2021-05-27
JP7419764B2 true JP7419764B2 (ja) 2024-01-23

Family

ID=75908711

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019209910A Active JP7419764B2 (ja) 2019-11-20 2019-11-20 情報処理装置およびコンフィグレーション方法

Country Status (2)

Country Link
US (1) US11461524B2 (ja)
JP (1) JP7419764B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023056664A (ja) 2021-10-08 2023-04-20 株式会社リコー 画像読取装置、及び、画像形成装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003132010A (ja) 2001-07-30 2003-05-09 Hewlett Packard Co <Hp> Jtagバス−シリアルバス間をブリッジ接続する方法および装置
JP2010113630A (ja) 2008-11-10 2010-05-20 Panasonic Electric Works Co Ltd シリアルバスシステム
JP2014175891A (ja) 2013-03-11 2014-09-22 Seiko Epson Corp コンフィグレーション装置、コンフィグレーション方法、およびプロジェクター

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5493239A (en) * 1995-01-31 1996-02-20 Motorola, Inc. Circuit and method of configuring a field programmable gate array
JP3736855B2 (ja) * 1995-07-10 2006-01-18 ジーリンクス インコーポレイテッド フィールドプログラマブル・ゲートアレイ及びインテリジェント・メモリを含んでいるシステム
US6097211A (en) * 1996-07-18 2000-08-01 Altera Corporation Configuration memory integrated circuit
US6898101B1 (en) * 1997-12-16 2005-05-24 Cypress Semiconductor Corp. Microcontroller with programmable logic on a single chip
US6198303B1 (en) * 1998-03-25 2001-03-06 Altera Corporation Configuration eprom with programmable logic
US6347346B1 (en) * 1999-06-30 2002-02-12 Chameleon Systems, Inc. Local memory unit system with global access for use on reconfigurable chips
US6883109B2 (en) 2001-07-30 2005-04-19 Hewlett-Packard Development Company, L.P. Method for accessing scan chains and updating EEPROM-resident FPGA code through a system management processor and JTAG bus
GB0122477D0 (en) * 2001-09-18 2001-11-07 Anadigm Ltd Methods and apparatus for reconfiguring programmable devices
JP3845389B2 (ja) 2003-05-12 2006-11-15 埼玉日本電気株式会社 コンフィグレーション装置
US7320064B2 (en) * 2004-07-23 2008-01-15 Honeywell International Inc. Reconfigurable computing architecture for space applications
US7538577B2 (en) * 2005-06-29 2009-05-26 Thomas Bollinger System and method for configuring a field programmable gate array
US7589558B1 (en) * 2008-02-27 2009-09-15 Xilinx, Inc. Method and apparatus for configuring an integrated circuit
JP2011173382A (ja) 2010-02-25 2011-09-08 Ricoh Co Ltd 電子機器
JP5774941B2 (ja) 2011-08-11 2015-09-09 日本信号株式会社 コンフィグレーション装置及びコンフィグレーション方法
JP2014081825A (ja) 2012-10-17 2014-05-08 Ricoh Co Ltd 画像形成装置、画像形成方法、及びプログラム
JP6149585B2 (ja) 2013-08-01 2017-06-21 株式会社リコー パラレルバス装置、電気機器及び配線制御方法
JP2015061238A (ja) * 2013-09-19 2015-03-30 株式会社東芝 再構成可能な半導体集積回路および電子機器
JP2018005762A (ja) 2016-07-07 2018-01-11 株式会社リコー 情報処理装置及びコンフィグレーション方法
JP6750489B2 (ja) 2016-12-06 2020-09-02 株式会社リコー 電子機器、画像形成装置、制御方法、およびプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003132010A (ja) 2001-07-30 2003-05-09 Hewlett Packard Co <Hp> Jtagバス−シリアルバス間をブリッジ接続する方法および装置
JP2010113630A (ja) 2008-11-10 2010-05-20 Panasonic Electric Works Co Ltd シリアルバスシステム
JP2014175891A (ja) 2013-03-11 2014-09-22 Seiko Epson Corp コンフィグレーション装置、コンフィグレーション方法、およびプロジェクター

Also Published As

Publication number Publication date
US11461524B2 (en) 2022-10-04
US20210150113A1 (en) 2021-05-20
JP2021082081A (ja) 2021-05-27

Similar Documents

Publication Publication Date Title
US8299816B2 (en) Data processing apparatus
US9313364B2 (en) Image processing apparatus and control method for the same
US9292777B2 (en) Information processing apparatus, information processing method, and storage medium
US10289787B2 (en) Control program and control method for programmable logic device and information processing apparatus including the same
US9774671B2 (en) Parallel processing system and operation method of parallel processing system
JP7419764B2 (ja) 情報処理装置およびコンフィグレーション方法
JP2016035692A (ja) 画像処理装置、システム、情報処理方法及びプログラム
US20100070260A1 (en) Verification device, verifying apparatus and verification system
KR101886609B1 (ko) 프로그래머블 표시기 및 제어 시스템
KR100849212B1 (ko) 메모리 카드 및 메모리 카드의 구동 프로그램 업데이트방법
JP6111680B2 (ja) 信号処理装置およびプログラマブルロジックデバイスの構成方法
US8537405B2 (en) Controller, control apparatus, and image-forming apparatus
JP6576556B2 (ja) 通信デバイス、通信処理方法、通信処理装置及び通信システム
JP7006410B2 (ja) 制御装置、画像形成装置および回路装置
JP5223612B2 (ja) ディスク制御装置およびファームウェアの更新方法
JP5951123B2 (ja) 制御装置
JP7468260B2 (ja) 二重系制御システムのメモリ等価方式
US10782975B1 (en) Information processing apparatus, dynamic reconfiguration device, and non-transitory computer readable medium
WO2014020745A1 (ja) 情報処理装置およびその制御方法
JP2007193501A (ja) ファームウェアダウンロード装置
JP5889372B2 (ja) 情報処理装置、情報処理システム、情報処理方法、制御装置および制御方法
JP5904148B2 (ja) 再構成可能回路、画像形成装置及びプログラム
JP2021125008A (ja) サイクリック通信システムおよびその通信方法
JP2009223357A (ja) 機器およびそのパラメータ設定方法
US20160005144A1 (en) Programmable display

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220914

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230808

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231225

R151 Written notification of patent or utility model registration

Ref document number: 7419764

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151