JP5262578B2 - 電子機器 - Google Patents

電子機器 Download PDF

Info

Publication number
JP5262578B2
JP5262578B2 JP2008275647A JP2008275647A JP5262578B2 JP 5262578 B2 JP5262578 B2 JP 5262578B2 JP 2008275647 A JP2008275647 A JP 2008275647A JP 2008275647 A JP2008275647 A JP 2008275647A JP 5262578 B2 JP5262578 B2 JP 5262578B2
Authority
JP
Japan
Prior art keywords
configuration data
data
electronic device
unit
skip
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.)
Expired - Fee Related
Application number
JP2008275647A
Other languages
English (en)
Other versions
JP2010102638A (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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2008275647A priority Critical patent/JP5262578B2/ja
Priority to US12/469,415 priority patent/US7795908B2/en
Priority to CN2009101473707A priority patent/CN101729061B/zh
Publication of JP2010102638A publication Critical patent/JP2010102638A/ja
Application granted granted Critical
Publication of JP5262578B2 publication Critical patent/JP5262578B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/17748Structural details of configuration resources
    • 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/17748Structural details of configuration resources
    • H03K19/17756Structural details of configuration resources for partial configuration or partial reconfiguration

Landscapes

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

Description

本発明は、電子機器に関する。
PGA(Programmable Gate Array)、FPGA(Field Programmable Gate Array)、CPLD(Complex Programmable Logic Device)やDRP(Dynamically Reconfigurable Processor)等の再プログラム可能な論理素子を用いた電子機器が知られている。これらの再プログラム可能な論理素子は、電気的な信号を入力することにより、その内部の論理回路を事後的に書き換えることができるものであり、汎用性が高い、あるいは機能のアップデートが可能である等の利点を有している。
たとえば、特許文献1には、PROM(Programmable ROM)、EEPROM(Electrically Erasable Prorammable ROM)及びFPGAを備えた電子機器であって、電源が投入されると、PROMに記憶されたデータに基づいてFPGAをコンフィグレーション(初期化)した後、EEPROMに記憶されたデータに基づいてFPGAを再度コンフィグレーションするものが記載されている。
また、特許文献2には、フラッシュメモリ、コンフィグレーション制御部及びFPGAを備えた電子機器であって、電源が投入されると、コンフィグレーション制御部がフラッシュメモリに記憶されたデータに基づいてFPGAをコンフィグレーションするものが記載されている。
特許第3644590号公報 特開2004−21867号公報
本発明の目的は、再プログラム可能な論理素子を用いた電子機器において、コンフィグレーションデータを読み飛ばし、代わりにダミーデータを再プログラム可能な論理素子に書き出すことである。
上記課題を解決するために、本願の請求項1に係る電子機器は、再プログラム可能な論理素子と、前記再プログラム可能な論理素子用コンフィグレーションデータを記憶するコンフィグレーションデータ記憶部と、前記コンフィグレーションデータを前記コンフィグレーションデータ記憶部から逐次読み出す読み出し部と、ダミーデータを作成するダミーデータ作成部と、前記コンフィグレーションデータを読み飛ばすか否か判別する読み飛ばし判別部と、前記コンフィグレーションデータまたは前記ダミーデータを前記再プログラム可能な論理素子に書き出す書き出し部と、前記読み飛ばし判別部が前記コンフィグレーションデータを読み飛ばすと判別した場合には、前記ダミーデータ作成部が作成したダミーデータを前記書き出し部へ送るように制御する制御部と、を有し、前記制御部は、前記電子機器が接続される機器が、前記電子機器を認識するために必要なロジックを構築するためのデータと前記ダミーデータを含む第1のコンフィグレーションデータを前記再プログラム可能な論理素子に書き出した後、前記第1のコンフィグレーションデータとは異なる第2のコンフィグレーションデータを前記再プログラム可能な論理素子に書き出すよう制御する。
また、本願の請求項2に係る電子機器は、前記制御部は、前記読み飛ばし判別部が前記コンフィグレーションデータを読み飛ばさないと判別した場合には、前記読み出し部が読み出した前記コンフィグレーションデータを前記書き出し部へ送るように制御する。
また、本願の請求項3に係る電子機器は、前記第2のコンフィグレーションデータは前記再プログラム可能な論理素子に特定の機能を発揮させるためのロジックを構成するためのデータを含む。
また、本願の請求項4に係る電子機器は、前記コンフィグレーションデータ記憶部は、前記第2のコンフィグレーションデータを記憶しており、前記第1のコンフィグレーションデータを記憶していない。
また、本願の請求項5に係る電子機器は、前記コンフィグレーションデータ記憶部は、前記第1のコンフィグレーションデータが前記再プログラム可能な論理素子に正常に書き出されたか否かをチェックするためのデータを記憶している。
また、本願の請求項6に係る電子機器は、前記制御部は、前記第2のコンフィグレーションデータの書き出しを、前記第1のコンフィグレーションデータ中の前記ダミーデータの少なくとも一部を上書きするように部分的に行う。
また、本願の請求項7に係る電子機器は、さらに、前記コンフィグレーションデータを読み飛ばす位置を示す読み飛ばし情報を記憶する読み飛ばし情報記憶部を有し、前記読み飛ばし判別部は、前記読み飛ばし情報記憶部に記憶された前記読み飛ばし情報に基づいて、前記コンフィグレーションデータを読み飛ばすか否か判別する。
また、本願の請求項8に係る電子機器は、前記読み飛ばし判別部は、前記読み出し部が読みだした前記コンフィグレーションデータに基づいて、前記コンフィグレーションデータを読み飛ばすか否か判別する。
また、本願の請求項に係る画像形成装置は、請求項1記載の電子機器を搭載した。
上記本願の請求項1に係る電子機器によれば、当該電子機器は、コンフィグレーション
データを読み飛ばし、代わりにダミーデータを再プログラム可能な論理素子に書き出し、当該電子機器が電子機器を接続した機器から認識可能になった後、再プログラム可能な論理素子上にロジックを構成することができる。
上記本願の請求項2に係る電子機器によれば、当該電子機器は、全てのコンフィグレーションデータを読み出すことなく、当該電子機器を接続した機器から認識可能になる。
また、上記本願の請求項3に係る電子機器によれば、コンフィグレーションデータの全てを不揮発性メモリから読み出して書き出す場合に比して高速に接続先の機器から認識可能な状態となった後、改めて特定の機能を発揮する状態とすることができる。
また、上記本願の請求項4に係る電子機器によれば、第1のコンフィグレーションデータを用意する必要がない。
また、上記本願の請求項5に係る電子機器によれば、再プログラム可能な論理素子がコンフィグレーションデータが正常に書き出されたか否かチェックする場合においても、第1のコンフィグレーションデータを用意する必要がない。
また、上記本願の請求項6に係る電子機器によれば、当該電子機器が電子機器を接続した機器から認識可能になった後、再プログラム可能な論理素子にロジックが構成される。
また、上記本願の請求項7に係る電子機器によれば、コンフィグレーションデータを読み飛ばす位置を任意に設定可能である。
また、上記本願の請求項8に係る電子機器によれば、コンフィグレーションデータを読み飛ばす位置が自動的に認識される。
また、上記本願の請求項に係る画像形成装置によれば、当該画像形成装置の機能を実現する論理回路を事後的に書き換えることができる。
図1は、本発明の第1の実施形態に係る電子機器1を示す概略図である。
電子機器1は、PCI Expressカードであり、基板2の表面に、再プログラム可能な論理素子であるFPGA3、不揮発性メモリ4、コントローラ5及び端子6が実装され、図示しないプリント配線により相互に接続されている。符号7はコンピュータの筐体に取り付けるためのブラケットである。なお、基板2の表面には図示したもの以外にも各種電子部品が実装されるが、それらは公知のものであるため、本明細書においてはその説明を省略する。なお、本実施形態では電子機器1をPCI Expressカードとし、再プログラム可能な論理素子をFPGAとしたが、これらは説明のための一例であって、これに限定されるものではない。
不揮発性メモリ4は、FPGA3のコンフィグレーションデータを記憶するコンフィグレーションデータ記憶部として機能する。不揮発性メモリ4には、フラッシュメモリなどのEEPROMや各種PROMを好適に用いることができる。もちろん、通常のROMを使用してもかまわない。
コントローラ5は、電子機器1に電源が投入された際に、FPGA3をコンフィグレーションするための電子回路である。その内部の動作の詳細は後述する。
端子6は、PCI Express規格に準拠した、コンピュータと接続するための端子である。ここでは、PCI Express x16を例として図示しているが、これに限られず、x1、x2、x8等、任意の数のレーンを有するものでよい。また、PCI Express規格に限定されるものでなく、PCI規格、CardBus規格、ExpressCard規格等、予め定められた時間以内にコンフィグレーションを終えなければならない任意の規格に基づいてよい。
図2は、電子機器1の機能ブロック図である。
図中破線で示した部分がコントローラ5に相当する部分であり、その内部に、不揮発性メモリ4からコンフィグレーションデータを逐次読み出す読み出し部51、ダミーデータを作成するダミーデータ作成部52、FPGA3にコンフィグレーションデータ又はダミーデータを書き出す書き出し部53、制御部54、コンフィグレーションデータを読み飛ばすか否か判別する読み飛ばし判別部55及び、読み飛ばすべきコンフィグレーションデータの位置を記憶する読み飛ばし情報記憶部56を備えている。これらの機能ブロックは、コントローラ5の内部で動作するプログラムによって仮想的に実現されており、必ずしも物理的に分離可能とは限らない。なお、このプログラムは、コントローラ5にあらかじめ記憶させておいても良いし、磁気テープ等の磁気記録媒体や光ディスク等の光記録媒体等の任意の情報記録媒体に記録して提供してもよく、コンピュータ読み取り可能な電気信号として提供してもよい。
図3は、不揮発性メモリ4が記憶しているコンフィグレーションデータを示す図である。
本実施形態では、不揮発性メモリ4は第1のコンフィグレーションデータ41と、第2のコンフィグレーションデータ42を記憶している。そして、第1のコンフィグレーションデータ41は、ヘッダ領域41a、認識用ロジック領域41b、ダミーデータ領域41c及びフッタ領域41dからなっている。第2のコンフィグレーションデータ42は、ヘッダ領域42a、認識用ロジック領域42b、機能ロジック領域42c及びフッタ領域42dからなっている。
ヘッダ領域41a,42aは、FPGA3へコンフィグレーションデータを書き出す際に必要となるデータを含む領域である。認識用ロジック領域41b,42bは、電子機器1が接続される機器(本実施形態では、一例として、コンピュータ)が、電子機器1を認識するために必要なロジックを構築するためのデータを含む領域である。この認識用ロジック領域41b,42bのデータがFPGA3に書き出されると、電子機器1は、接続先の機器からの信号に応答するようになり、正常に認識される。
ダミーデータ領域41cは、FPGA3を特定の機能を持つものとして利用することのないロジックを構成するためのデータからなる領域である。本実施形態では、そのようなデータとして、例えば、NOP(No Operation)や空デザインなどと呼ばれる、FPGA3に何も実行させないロジックを構築するデータを繰り返したものを用いる。もちろん、別の何らかのロジックを構築するデータを用いてもかまわないが、いずれにせよ、ダミーデータ領域41cに含まれるデータにより構築されたロジックは、何らかの機能を発揮するものとしては利用されない。ダミーデータ領域41cを構成するデータは、前述したNOP等のサイズの小さいデータを反復したものか、なんらかのアルゴリズムにより生成可能なものであることが好ましい。そして、第1のコンフィグレーションデータ41における、ダミーデータ領域41cが始まる位置及び終了する位置は、あらかじめ、読み飛ばし情報記憶部56に記憶される。
機能ロジック領域42cは、FPGA3に特定の機能を発揮させるためのロジックを構成するためのデータからなる領域である。機能ロジック領域42cに含まれるデータがFPGA3に書き出されると、電子機器1は、特定の機能を発現する。
フッタ領域41d,42dは、FPGA3へのコンフィグレーションデータの書き出しを終了する際に必要となるデータを含む領域である。フッタ領域41d,42dには、FPGA3へデータが正常に書き出されたか否かをチェックするためのデータ、例えば、チェックサムや、CRC(Cyclic Redundancy Check)のための符号等が含まれる。
本実施形態では、ヘッダ領域41a,42a及び認識用ロジック領域41b,42bのデータは、第1のコンフィグレーションデータ41と第2のコンフィグレーションデータ42とで共通である。フッタ領域41d,42dのデータは、ダミーデータ領域41cと機能ロジック領域42cを構成するデータが同一でないため、異なったものとなる。
続いて、図2及び3を参照しつつ、電子機器1のコンフィグレーションの際の動作を説明する。
まず、電子機器1に電源が投入されると、制御部54は不揮発性メモリ4から第1のコンフィグレーションデータ41を逐次読み出し、書き出し部53へと送るよう読み出し部51を制御する。書き出し部53はFPGA3に受け取ったデータを書き出す。これにより、FPGA3には、第1のコンフィグレーションデータ41がその先頭から逐次書き出されていく。
一方、読み飛ばし判別部55は、読み飛ばし情報記憶部56から、第1のコンフィグレーションデータ41を読み飛ばすべき位置、すなわち、ダミーデータ領域41cの第1のコンフィグレーションデータ41における位置を読み込み、読み出し部51が読み出そうとしているデータが、読み飛ばすべきデータであるダミーデータ領域41cのデータであるか否かを判別し、制御部54に伝える。
制御部54は、読み飛ばし判別部55が、第1のコンフィグレーションデータ41を読み飛ばさないと判別している間は、読み出し部51による読み出しを継続させる。その結果、ヘッダ領域41aと認識用ロジック領域41bのデータが不揮発性メモリ4から読み出され、FPGA3に書き出される。
一方、読み飛ばし判別部55が、第1のコンフィグレーションデータ41を読み飛ばすと判別した場合には、制御部54は、読み出し部51による読み出しを停止させ、ダミーデータ作成部52により作成されたダミーデータを書き出し部53に送るように制御する。
ダミーデータ作成部52は、NOPを構成するデータをダミーデータとして反復して生成する。したがって、読み飛ばし判別部55が、第1のコンフィグレーションデータ41を読み飛ばすと判別している間は、FPGA3にはNOPを生成するデータが反復して書き出されることになる。このようにして書き出されるデータは、ダミーデータ領域41cを構成するデータと同一のものとなる。もちろん、ダミーデータ領域41cを構成するデータがNOP以外のものであれば、ダミーデータ作成部52はそれと同一のデータを作成する。
再度、読み飛ばし判別部55が、第1のコンフィグレーションデータ41を読み飛ばさないと判別すると、制御部54は、読み出し部51が不揮発性メモリ4よりデータ、すなわち、フッタ領域41dを読み出し、書き出し部53に送るよう制御する。
このようにして第1のコンフィグレーションデータ41がFPGA3に書き出されると、FPGA3は、書き出しが正常に行われたか否かのチェックを行い、その結果が正常であれば、電子機器1は、接続先の機器から認識可能な状態となる。
以上の説明から明らかなように、読み飛ばし判別部55が、第1のコンフィグレーションデータ41を読み飛ばすと判別している場合には、コントローラ5がその内部に有するダミーデータ作成部52により作成したダミーデータをFPGA3に書き出す。そして、コントローラ5の動作は、不揮発性メモリ4からのデータの読み出しより高速であるから、第1のコンフィグレーションデータ41の書き出しは、その全てを不揮発性メモリ4から読み出して書き出す場合に比して、高速に完了する。
さらに、制御部54は、第1のコンフィグレーションデータ41の書き出しが完了すると、第2のコンフィグレーションデータ42をFPGA3に書き出すように、読み出し部51を制御する。この場合は、第2のコンフィグレーションデータ42の全てが不揮発性メモリ4から読み出され、既にFPGA3に書き出された第1のコンフィグレーションデータ41に上書きされる。この結果、ダミーデータ領域41cのデータが機能ロジック領域42cのデータに上書きされるため、電子機器1は特定の機能を発現する。
なお、以上の説明では、第2のコンフィグレーションデータ42をFPGA3に書き出す際に、第2のコンフィグレーションデータ42の全てを不揮発性メモリ4から読み出すものとしたが、これを部分的に読み出すようにしても良い。すなわち、第2のコンフィグレーションデータ42のうち、機能ロジック領域42c及びフッタ領域42dのみを不揮発性メモリ4から読み出し、FPGA3に書き出すようにしても良い。また、FPGA3が、データが正常に書き出されたか否かのチェックを行わないものである場合には、機能ロジック領域42cのみを書き出すようにしても良い。さらに、機能ロジック領域42cの一部分のみが特定の機能を実現するために使用され、残りの部分はNOPで埋められているなど使用されない場合には、機能ロジック領域42cの当該一部分のみを書き出すようにしても良い。いずれにせよ、第1のコンフィグレーションデータ41におけるダミーデータの少なくとも一部分は、第2のコンフィグレーションデータ42により上書きされる。
また、読み出し部51にバッファを設けてもよい。電子機器1をこのように構成し、ダミーデータをFPGA3に書き出している間に、不揮発性メモリ4からのデータを読み出すようにすると、第1のコンフィグレーションデータ41の書き出しはさらに高速に完了する。
なお、図2ではコントローラ5内部に読み飛ばし情報記憶部56が存在するものとして図示したが、これに限られず、コントローラ5の外部に読み飛ばし情報記憶部56が存在してもよい。また、不揮発性メモリ4の一部に読み飛ばし情報を記憶させ、読み飛ばし情報記憶部56を代替させても良い。
次に、本発明の第2の実施形態を図4を参照しつつ説明する。
図4は、本実施形態に係る電子機器1の機能ブロック図である。本実施形態は、読み飛ばし情報記憶部を持たず、読み飛ばし判別部55’が、読み出し部51が読み出すデータに基づいて、第1のコンフィグレーションデータ41を読み飛ばすか否か判別する点において第1の実施形態と異なり、その他の点においては同一であるから、重複する部分については第1の実施形態と同符号を付し、その説明は省略する。
本実施形態では、符号57に示すように、読み出し部51が逐次読み出す第1のコンフィグレーションデータ41は、読み飛ばし判別部55’にも送られる。読み飛ばし判別部55’は、第1のコンフィグレーションデータ41を読み飛ばすか否かの判別を、読み出し部51が読み出すデータに基づいて、特定のデータ、たとえば、NOPが読み出されたことを検出することにより行う。すなわち、NOPが読み出されるまでは読み飛ばさないと判別し、NOPが検出されると読み飛ばすと判別するのである。読み飛ばす範囲の終了位置は、FPGA3へ書き出すデータの位置が、フッタ領域41dを書き出すべき位置に来たことにより判別する。
なお、読み飛ばし判別部55’が検出するデータはNOPに限られず、その他の特定のデータであっても良い。
続いて、本発明の第3の実施形態を図5を参照しつつ説明する。
図5は、本実施形態に係る電子機器1において不揮発性メモリ4が記憶しているコンフィグレーションデータを示す図である。本実施形態は、不揮発性メモリ4が第2のコンフィグレーションデータ42を記憶しているが、第1のコンフィグレーションデータを記憶していない点において第1の実施形態と異なり、その他の点においては同一であるから、重複する部分については第1の実施形態と同符号を付し、その説明は省略する。
図5において、符号43で示されるデータは、第1のコンフィグレーションデータが存在したとしたならば、そのフッタ領域となるべきデータである。ここでは、便宜的に差替データ43と呼ぶことにする。第2のコンフィグレーションデータ42は、第1の実施形態と同様である。
本実施形態における電子機器1のコンフィグレーションの際の動作は次のとおりである。
図2を再度参照し、まず、電子機器1に電源が投入されると、制御部54は不揮発性メモリ4から第2のコンフィグレーションデータ42を逐次読み出し、書き出し部53へと送るよう読み出し部51を制御する。書き出し部53はFPGA3に受け取ったデータを書き出す。これにより、FPGA3には、第2のコンフィグレーションデータ42がその先頭から逐次書き出されていく。
一方、読み飛ばし判別部55は、読み飛ばし情報記憶部56から、第2のコンフィグレーションデータ42を読み飛ばすべき位置、すなわち、第1のコンフィグレーションデータが存在するならば、そのダミーデータ領域に対応する位置を読み込み、読み出し部51が読み出そうとしているデータが、読み飛ばすべきデータであるか否かを判別し、制御部54に伝える。
制御部54は、読み飛ばし判別部55が、第2のコンフィグレーションデータ42を読み飛ばさないと判別している間は、読み出し部51による読み出しを継続させる。その結果、ヘッダ領域42aと認識用ロジック領域42bのデータが不揮発性メモリ4から読み出され、FPGA3に書き出される。
一方、読み飛ばし判別部55が、第2のコンフィグレーションデータ42を読み飛ばすと判別した場合には、制御部54は、読み出し部51による読み出しを停止させ、ダミーデータ作成部52により作成されたダミーデータを書き出し部53に送るように制御する。
すなわち、ダミーデータ作成部52は、第2のコンフィグレーションデータ42における機能ロジック領域42cに相当する位置に、ダミーデータを反復して生成し、送り出す。その結果、第1のコンフィグレーションデータが存在するならば、そのダミーデータ領域を構成したであろうデータをFPGA3に書き出すことになる。
そして再度、読み飛ばし判別部55が、第2のコンフィグレーションデータ42を読み飛ばさないと判別すると、制御部54は、読み出し部51が差替データ43を読み出し、書き出し部53に送るよう制御する。
このようにすると、FPGA3には、結果として第1の実施形態における第1のコンフィグレーションデータ41と同一のデータが書き込まれることとなり、電子機器1は、接続先の機器から認識可能な状態となる。また、当然に、第1の実施形態同様に、第1のコンフィグレーションデータ41と同一のデータの書き出しは高速に完了する。
さらに、制御部54は、第1のコンフィグレーションデータ41と同一のデータの書き出しが完了すると、第1の実施形態と同様に第2のコンフィグレーションデータ42をFPGA3に書き出すように、読み出し部51を制御する。この結果、電子機器1は特定の機能を発現する。
以上の説明から明らかな通り、本実施形態では、第1の実施形態に比して不揮発性メモリ4が記憶するコンフィグレーションデータの分量が少ない。
なお、本実施形態においては、差替データ43のデータと、第2のコンフィグレーションデータ42におけるフッタ領域42dのデータとが異なるために、差替データ43を第2のコンフィグレーションデータ42とは別個に用意したが、FPGA3が、データが正常に書き出されたか否かのチェックを行わないものである場合には、両者は同一のデータでよいことになるから、差替データ43を用意せず、フッタ領域42dで代替してもよい。
さらに、本発明の好適な第4の実施形態は、上記第1乃至第3の実施形態に係る電子機器1の少なくともいずれかを搭載した画像形成装置である。ここで、電子機器1に実装されたFPGA3には、コンフィグレーションにより、画像形成装置の機能の少なくとも一部を実現するための論理回路が書き込まれる。電子機器1により実現される画像形成装置の機能には、例えば、画像形成装置自体の動作を制御する機能や、通信用インターフェースとしての機能等がある。
なお、ここで電子機器1は必ずしもPCI Expressカードでなくともよく、また、電子機器1に搭載される再プログラム可能な論理素子はFPGA3に限定されない。
また、ここで画像形成装置とは、プリンター、複写機、複合機を指す。複合機とは、プリンターとしての機能、複写機としての機能、スキャナとしての機能、ファクシミリとしての機能のうち少なくとも2つ以上の機能を有する機器である。
第1の実施形態に係る電子機器を示す概略図である。 電子機器の機能ブロック図である。 不揮発性メモリが記憶しているコンフィグレーションデータを示す図である。 第2の実施形態に係る電子機器の機能ブロック図である。 第3の実施形態に係る電子機器において不揮発性メモリが記憶しているコンフィグレーションデータを示す図である。
符号の説明
1 電子機器、2 基板、3 FPGA、4 不揮発性メモリ、5 コントローラ、6 端子、7 ブラケット、41 第1のコンフィグレーションデータ、41a ヘッダ領域、41b 認識用ロジック領域、41c ダミーデータ領域、41d フッタ領域、42 第2のコンフィグレーションデータ、42a ヘッダ領域、42b 認識用ロジック領域、42c 機能ロジック領域、42d フッタ領域、43 差替データ、51 読み出し部、52 ダミーデータ作成部、53 書き出し部、54 制御部、55,55’ 読み飛ばし判別部、56 読み飛ばし情報記憶部。

Claims (9)

  1. 再プログラム可能な論理素子と、
    前記再プログラム可能な論理素子用コンフィグレーションデータを記憶するコンフィグレーションデータ記憶部と、
    前記コンフィグレーションデータを前記コンフィグレーションデータ記憶部から逐次読み出す読み出し部と、
    ダミーデータを作成するダミーデータ作成部と、
    前記コンフィグレーションデータを読み飛ばすか否か判別する読み飛ばし判別部と、
    前記コンフィグレーションデータまたは前記ダミーデータを前記再プログラム可能な論理素子に書き出す書き出し部と、
    前記読み飛ばし判別部が前記コンフィグレーションデータを読み飛ばすと判別した場合には、前記ダミーデータ作成部が作成したダミーデータを前記書き出し部へ送るように制御する制御部と、
    を有する電子機器であって、
    前記制御部は、前記電子機器が接続される機器が、前記電子機器を認識するために必要なロジックを構築するためのデータと前記ダミーデータを含む第1のコンフィグレーションデータを前記再プログラム可能な論理素子に書き出した後、前記第1のコンフィグレーションデータとは異なる第2のコンフィグレーションデータを前記再プログラム可能な論理素子に書き出すよう制御する電子機器。
  2. 前記制御部は、前記読み飛ばし判別部が前記コンフィグレーションデータを読み飛ばさないと判別した場合には、前記読み出し部が読み出した前記コンフィグレーションデータを前記書き出し部へ送るように制御する請求項1記載の電子機器。
  3. 前記第2のコンフィグレーションデータは前記再プログラム可能な論理素子に特定の機能を発揮させるためのロジックを構成するためのデータを含む請求項1記載の電子機器。
  4. 前記コンフィグレーションデータ記憶部は、前記第2のコンフィグレーションデータを記憶しており、前記第1のコンフィグレーションデータを記憶していない請求項3記載の電子機器。
  5. 前記コンフィグレーションデータ記憶部は、前記第1のコンフィグレーションデータが前記再プログラム可能な論理素子に正常に書き出されたか否かをチェックするためのデータを記憶している請求項4記載の電子機器。
  6. 前記制御部は、前記第2のコンフィグレーションデータの書き出しを、前記第1のコンフィグレーションデータ中の前記ダミーデータの少なくとも一部を上書きするように部分的に行う請求項3記載の電子機器。
  7. さらに、前記コンフィグレーションデータを読み飛ばす位置を示す読み飛ばし情報を記憶する読み飛ばし情報記憶部を有し、
    前記読み飛ばし判別部は、前記読み飛ばし情報記憶部に記憶された前記読み飛ばし情報に基づいて、前記コンフィグレーションデータを読み飛ばすか否か判別する請求項1記載の電子機器。
  8. 前記読み飛ばし判別部は、前記読み出し部が読みだした前記コンフィグレーションデータに基づいて、前記コンフィグレーションデータを読み飛ばすか否か判別する請求項1記載の電子機器。
  9. 請求項1記載の電子機器を搭載した画像形成装置。
JP2008275647A 2008-10-27 2008-10-27 電子機器 Expired - Fee Related JP5262578B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008275647A JP5262578B2 (ja) 2008-10-27 2008-10-27 電子機器
US12/469,415 US7795908B2 (en) 2008-10-27 2009-05-20 Electronic device, method for configuring reprogrammable logic element, computer-readable medium, computer data signal and image forming apparatus
CN2009101473707A CN101729061B (zh) 2008-10-27 2009-06-18 电子器件、配置可重编程逻辑元件的方法及图像形成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008275647A JP5262578B2 (ja) 2008-10-27 2008-10-27 電子機器

Publications (2)

Publication Number Publication Date
JP2010102638A JP2010102638A (ja) 2010-05-06
JP5262578B2 true JP5262578B2 (ja) 2013-08-14

Family

ID=42116863

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008275647A Expired - Fee Related JP5262578B2 (ja) 2008-10-27 2008-10-27 電子機器

Country Status (3)

Country Link
US (1) US7795908B2 (ja)
JP (1) JP5262578B2 (ja)
CN (1) CN101729061B (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101581414B1 (ko) * 2009-02-05 2015-12-30 삼성전자주식회사 전력 소모 감소를 위한 재구성 가능 프로세서 및 그 동작 방법
JP2011048579A (ja) * 2009-08-26 2011-03-10 Univ Of Tokyo 画像処理装置及び画像処理方法
JP2016042296A (ja) * 2014-08-18 2016-03-31 キヤノン株式会社 画像処理装置、情報処理方法及びプログラム
CN104460857B (zh) * 2014-10-30 2018-11-27 曙光信息产业(北京)有限公司 一种高速外设部件互连标准卡及其使用方法和装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0683610A (ja) * 1992-08-31 1994-03-25 Kawasaki Steel Corp プログラマブルロジックデバイス
EP0982665A3 (en) * 1998-08-21 2004-02-04 Matsushita Electronics Corporation A bus system and a master device that stabilizes bus electric potential during non-access periods
TW440845B (en) * 1999-08-11 2001-06-16 Ibm Method and system for programming FPGAs on PC-cards without additional hardware
JP2004021867A (ja) 2002-06-20 2004-01-22 Nec Engineering Ltd 情報処理システム
JP3836109B2 (ja) * 2004-02-19 2006-10-18 東京エレクトロン株式会社 プログラマブル論理回路制御装置、プログラマブル論理回路制御方法及びプログラム
JP4294514B2 (ja) * 2004-03-05 2009-07-15 シャープ株式会社 半導体装置および電子装置
JP4831957B2 (ja) * 2004-12-02 2011-12-07 ルネサスエレクトロニクス株式会社 コピー防止回路装置およびコピー防止方法
JP4223037B2 (ja) * 2005-12-26 2009-02-12 シャープ株式会社 画像処理装置
CN101207382A (zh) * 2007-12-03 2008-06-25 福建星网锐捷网络有限公司 数据配置系统、方法及相关装置

Also Published As

Publication number Publication date
CN101729061A (zh) 2010-06-09
CN101729061B (zh) 2013-09-18
US20100102849A1 (en) 2010-04-29
JP2010102638A (ja) 2010-05-06
US7795908B2 (en) 2010-09-14

Similar Documents

Publication Publication Date Title
JP4896450B2 (ja) 記憶装置
JP5262578B2 (ja) 電子機器
JP2006209744A (ja) カードおよびホスト機器
KR102301761B1 (ko) Usb 메모리의 데이터 복구 장치
KR20030084702A (ko) 불휘발성 반도체 기억 장치
US20080114935A1 (en) Memory Card System and Method Transmitting Host Identification Information Thereof
US20110153896A1 (en) Semiconductor memory card, method for controlling the same, and semiconductor memory system
JP2002247252A (ja) 画像形成装置
US8230234B2 (en) Semiconductor memory devices that are resistant to power attacks and methods of operating semiconductor memory devices that are resistant to power attacks
JP4158935B2 (ja) メモリカード用入出力装置及びその制御方法
JP5259540B2 (ja) 携帯可能電子装置、icカード、携帯可能電子装置の処理システムおよび携帯可能電子装置の制御方法
JP2000218044A (ja) 携帯用電子ゲーム機器
JP2006100991A (ja) 不揮発性論理回路及びそれを有するシステムlsi
JP4684673B2 (ja) 半導体メモリ装置、情報処理装置及び半導体メモリ装置の制御方法
JP2008123450A (ja) 記録媒体及びメモリアクセス可能な電子機器
JP2006209876A (ja) 電子制御装置
JP4005950B2 (ja) マイクロコントローラ
JP2011055232A (ja) 車載カメラ装置
JP2006260273A (ja) サブシステムモジュール、情報処理装置およびサブシステムモジュールにおけるデータ転送方法
JP5367236B2 (ja) 携帯可能電子装置およびicカード
JP2011025781A (ja) 車両用制御装置
JP2006344170A (ja) 画像形成装置
JP2006253815A (ja) 回路デバイスシステムおよびコンフィギュレーション方法
JP4593196B2 (ja) 半導体装置
JP4370886B2 (ja) 機器固有データ送受信システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110926

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130117

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: 20130402

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130415

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5262578

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees