JP5804924B2 - Configuration device - Google Patents

Configuration device Download PDF

Info

Publication number
JP5804924B2
JP5804924B2 JP2011270585A JP2011270585A JP5804924B2 JP 5804924 B2 JP5804924 B2 JP 5804924B2 JP 2011270585 A JP2011270585 A JP 2011270585A JP 2011270585 A JP2011270585 A JP 2011270585A JP 5804924 B2 JP5804924 B2 JP 5804924B2
Authority
JP
Japan
Prior art keywords
configuration
signal
programmable
control unit
unit
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
JP2011270585A
Other languages
Japanese (ja)
Other versions
JP2013123125A (en
Inventor
剛 小宮山
剛 小宮山
八代 大基
大基 八代
聖 冨川
聖 冨川
謙一 大藤
謙一 大藤
孝泰 石橋
孝泰 石橋
Original Assignee
三菱電機株式会社
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 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to JP2011270585A priority Critical patent/JP5804924B2/en
Publication of JP2013123125A publication Critical patent/JP2013123125A/en
Application granted granted Critical
Publication of JP5804924B2 publication Critical patent/JP5804924B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、コンフィグレーション装置に関する。   The present invention relates to a configuration device.

FPGA(Field Programmable Gate Array)に代表されるプログラマブルデバイスは、デバイス内部の論理回路をハードウェア記述言語により記述し、回路をフィールド(現場)において書き換えることが可能なデバイスである。近年はプログラマブルデバイスに実装可能な回路規模が増大し、またプログラマブルデバイスの動作速度が改善し、さらに価格も下落しているため、プログラマブルデバイスが用いられる分野が広がっている。   A programmable device typified by an FPGA (Field Programmable Gate Array) is a device in which a logic circuit inside the device is described in a hardware description language, and the circuit can be rewritten in the field (in the field). In recent years, the scale of circuits that can be mounted on a programmable device has increased, the operation speed of the programmable device has improved, and the price has fallen, so the field in which the programmable device is used has expanded.

FPGAは起動時にROM(Read Only Memory)などの記憶装置から論理回路情報を読み込み、論理回路を構成するコンフィグレーションと呼ばれる初期動作が必要である。従来は、JTAG(Joint Test Action Group)インタフェース経由で予め論理回路情報を書き込んでおいた専用のコンフィグレーションROMから、該ROMにコンフィグレーションバスで接続されたFPGAに論理回路情報を読み込んでコンフィグレーションを行う方法が主流であった。この方法においては、専用のコンフィグレーションROMに記憶された論理回路情報を更新するためにJTAGケーブルや書き込みツールを導入したPCが必要であった。   The FPGA reads logic circuit information from a storage device such as a ROM (Read Only Memory) at the time of startup, and requires an initial operation called a configuration that configures the logic circuit. Conventionally, logic circuit information is read from a dedicated configuration ROM in which logic circuit information has been written in advance via a JTAG (Joint Test Action Group) interface into an FPGA connected to the ROM via a configuration bus. The way to do was mainstream. In this method, a PC in which a JTAG cable and a writing tool are introduced is necessary to update the logic circuit information stored in the dedicated configuration ROM.

特許文献1に開示される情報処理システムは、論理回路情報を汎用的なフラッシュメモリに格納し、コンフィグレーション制御部がフラッシュメモリから論理回路情報を読み込んでFPGAのコンフィグレーションを行う。   The information processing system disclosed in Patent Document 1 stores logic circuit information in a general-purpose flash memory, and a configuration control unit reads the logic circuit information from the flash memory and configures the FPGA.

特開2004−21867号公報Japanese Patent Laid-Open No. 2004-21867

従来の専用のコンフィグレーションROMを用いる方法では、一般的にプログラマブルデバイスを備える装置はCPUのブートコードなどのプログラムを記憶するためのフラッシュメモリを備えているにも関わらず、さらに専用のコンフィグレーションROMを備えることで、必要な実装スペースが増大してしまう。   In the conventional method using a dedicated configuration ROM, a device having a programmable device generally includes a flash memory for storing a program such as a CPU boot code, but a dedicated configuration ROM is further provided. As a result, the required mounting space increases.

特許文献1に開示される情報処理システムは、論理回路情報をフラッシュメモリに格納するので、論理回路情報を格納するための専用ROMを必要としない。しかし、コンフィグレーション中にFPGAがバス上の信号に影響を及ぼさないようにFPGAをバスから分離するための回路の実装が必要となり、必要な実装スペースが増大してしまう。   Since the information processing system disclosed in Patent Document 1 stores logic circuit information in a flash memory, a dedicated ROM for storing logic circuit information is not required. However, it is necessary to mount a circuit for separating the FPGA from the bus so that the FPGA does not affect the signals on the bus during the configuration, and the necessary mounting space increases.

本発明は、上述のような事情に鑑みてなされたものであり、プログラマブルデバイスを備える装置の小型化を可能とすることを目的とする。   This invention is made | formed in view of the above situations, and aims at enabling size reduction of an apparatus provided with a programmable device.

上記目的を達成するために、本発明に係るコンフィグレーション装置は、プログラマブルデバイスと、プログラマブルデバイスのコンフィグレーションに用いる論理回路情報を記憶する不揮発性メモリとを備え、プログラマブルデバイスと不揮発性メモリは、それぞれ、中央処理装置にバスで接続される。コンフィグレーション装置は、信号部と、制御部とをさらに備える。コンフィグレーション装置が起動した場合に、信号部は停止信号を継続して送って中央処理装置を停止状態に保ち、停止信号の発生を停止することで、中央処理装置を作動させる。制御部は、プログラマブルデバイスにバスで接続され、中央処理装置と不揮発性メモリとを接続するバスに接続される。制御部は、信号部が停止信号を継続して送っている間に、不揮発性メモリに記憶された論理回路情報を用いてプログラマブルデバイスのコンフィグレーションを行う。制御部は、プログラマブルデバイスのコンフィグレーション中に異常が生じた場合には異常フラグを設定し、プログラマブルデバイスのコンフィグレーションの完了後に、異常フラグが設定されていない場合には、中央処理装置と不揮発性メモリとを接続するバスへの当該制御部の接続を切断する。 In order to achieve the above object, a configuration apparatus according to the present invention includes a programmable device and a nonvolatile memory that stores logic circuit information used for the configuration of the programmable device. The programmable device and the nonvolatile memory are respectively , Connected to the central processing unit by a bus. The configuration device further includes a signal unit and a control unit. When the configuration device is activated, the signal unit continuously sends a stop signal to keep the central processing unit in a stopped state, and stops the generation of the stop signal, thereby operating the central processing unit. The control unit is connected to the programmable device by a bus, and is connected to a bus that connects the central processing unit and the nonvolatile memory. The control unit configures the programmable device using the logic circuit information stored in the nonvolatile memory while the signal unit continuously sends the stop signal. The controller sets an error flag if an error occurs during the configuration of the programmable device. If the error flag is not set after the configuration of the programmable device is completed, the control unit Disconnect the control unit from the bus connecting to the memory.

本発明によれば、プログラマブルデバイスを備える装置の小型化が可能となる。   According to the present invention, it is possible to reduce the size of an apparatus including a programmable device.

本発明の実施の形態に係るコンフィグレーション装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the configuration apparatus which concerns on embodiment of this invention. 実施の形態に係るCFG制御部および信号部の構成例を示すブロック図である。It is a block diagram which shows the structural example of the CFG control part and signal part which concern on embodiment. 実施の形態に係るコンフィグレーション装置が行うコンフィグレーション制御のタイミングチャートである。It is a timing chart of the configuration control which the configuration apparatus which concerns on embodiment performs. 実施の形態に係るコンフィグレーション装置が行う信号制御およびコンフィグレーション制御の動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the signal control and configuration control which the configuration apparatus which concerns on embodiment performs. 実施の形態における遅延回路の構成例を示すブロック図である。It is a block diagram which shows the structural example of the delay circuit in embodiment. 実施の形態における遅延回路における信号を示すタイミングチャートである。3 is a timing chart illustrating signals in the delay circuit according to the embodiment.

以下、本発明の実施の形態について図面を参照して詳細に説明する。なお図中、同一または同等の部分には同一の符号を付す。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In the drawings, the same or equivalent parts are denoted by the same reference numerals.

図1は、本発明の実施の形態に係るコンフィグレーション装置の構成例を示すブロック図である。コンフィグレーション装置1(以下、CFG装置1と記す)は、CFG制御部10、信号部20、CPU(Central Processing Unit:中央処理装置)30、FPGA(Field Programmable Gate Array)40、およびフラッシュ50を備える。CFG装置1は、プログラマブルデバイスとしてFPGA40を用い、不揮発性メモリとしてフラッシュメモリであるフラッシュ50を用いる。フラッシュ50は、CPU30がブート時にロードするブートコードなどのプログラムに加え、FPGA40のコンフィグレーションに用いる論理回路情報を記憶する。   FIG. 1 is a block diagram showing a configuration example of a configuration apparatus according to an embodiment of the present invention. The configuration device 1 (hereinafter referred to as CFG device 1) includes a CFG control unit 10, a signal unit 20, a CPU (Central Processing Unit) 30, an FPGA (Field Programmable Gate Array) 40, and a flash 50. . The CFG apparatus 1 uses an FPGA 40 as a programmable device and a flash 50 that is a flash memory as a nonvolatile memory. The flash 50 stores logic circuit information used for configuration of the FPGA 40 in addition to programs such as a boot code that the CPU 30 loads at the time of booting.

CFG制御部10は、CPU30およびフラッシュ50とそれぞれローカルバス60を介して接続されている。またCFG制御部10とFPGA40はコンフィグレーションバス(以下、CFGバスと記す)61を介して接続されている。CPU30およびFPGA40はFPGAバス62を介して接続されている。CFG制御部10は、ローカルバス60を介してフラッシュ50から論理回路情報を読み出し、CFGバス61を介して論理回路情報をFPGA40に書き込み、FPGA40のコンフィグレーションを行う。図1において双方向にデータのやり取りが発生し得るものについては矢印を省略した。これは他の図においても同様である。   The CFG control unit 10 is connected to the CPU 30 and the flash 50 via local buses 60, respectively. The CFG control unit 10 and the FPGA 40 are connected via a configuration bus (hereinafter referred to as a CFG bus) 61. The CPU 30 and the FPGA 40 are connected via the FPGA bus 62. The CFG control unit 10 reads the logic circuit information from the flash 50 via the local bus 60, writes the logic circuit information to the FPGA 40 via the CFG bus 61, and configures the FPGA 40. In FIG. 1, arrows that omit bidirectional data exchanges are omitted. The same applies to other drawings.

図1において点線で示すように、信号部20と、CFG制御部10およびフラッシュ50とは、パワーオンリセット(以下、PORと記す)信号を送るためのPOR信号線70で接続されている。信号部20は、リセット信号であるPOR信号を継続して送ってCFG制御部10およびフラッシュ50をリセット状態に保ち、リセット信号の発生を停止することでCFG制御部10およびフラッシュ50を作動させる。また信号部20と、CPU30およびFPGA40とは、ハードウェアリセット(以下、HWRと記す)信号を送るためのHWR信号線71で接続されている。信号部20は、停止信号であるHWR信号を継続して送ってCPU30およびFPGA40を停止状態に保ち、停止信号の発生を停止することでCPU30およびFPGA40を作動させる。CFG制御部10と、信号部20とは、FPGA40のコンフィグレーションの完了を示す完了通知信号を送るための完了通知信号線72で接続されている。   As shown by a dotted line in FIG. 1, the signal unit 20, the CFG control unit 10, and the flash 50 are connected by a POR signal line 70 for sending a power-on reset (hereinafter referred to as POR) signal. The signal unit 20 continuously sends a POR signal, which is a reset signal, keeps the CFG control unit 10 and the flash 50 in a reset state, and stops the generation of the reset signal to operate the CFG control unit 10 and the flash 50. The signal unit 20 is connected to the CPU 30 and the FPGA 40 by an HWR signal line 71 for sending a hardware reset (hereinafter referred to as HWR) signal. The signal unit 20 continuously sends the HWR signal, which is a stop signal, keeps the CPU 30 and the FPGA 40 in the stop state, and stops the generation of the stop signal to operate the CPU 30 and the FPGA 40. The CFG control unit 10 and the signal unit 20 are connected by a completion notification signal line 72 for sending a completion notification signal indicating completion of configuration of the FPGA 40.

図2は、本発明の実施の形態に係るCFG制御部および信号部の構成例を示すブロック図である。CFG制御部10は、制御部101、ローカルバスIF部102、CFGバスIF部103を備える。ローカルバスIF部102は、フラッシュ50からローカルバス60を介して論理回路情報を読み出すためのバスインタフェース制御を行う。CFGバスIF部103は、CFGバス61を介して論理回路情報をFPGA40に書き込むためのバスインタフェース制御を行う。   FIG. 2 is a block diagram illustrating a configuration example of the CFG control unit and the signal unit according to the embodiment of the present invention. The CFG control unit 10 includes a control unit 101, a local bus IF unit 102, and a CFG bus IF unit 103. The local bus IF unit 102 performs bus interface control for reading logic circuit information from the flash 50 via the local bus 60. The CFG bus IF unit 103 performs bus interface control for writing logic circuit information to the FPGA 40 via the CFG bus 61.

信号部20は、POR信号部201およびHWR信号部202を備える。図2において点線で示すように、POR信号部201と、CFG制御部10内の制御部101、HWR信号部202およびフラッシュ50とは、POR信号線70で接続されている。HWR信号部202とCPU30およびFPGA40は、HWR信号線71で接続されている。CFG制御部10内の制御部101と、HWR信号部202とは、完了通知信号線72で接続されている。   The signal unit 20 includes a POR signal unit 201 and an HWR signal unit 202. As shown by a dotted line in FIG. 2, the POR signal unit 201, the control unit 101 in the CFG control unit 10, the HWR signal unit 202, and the flash 50 are connected by a POR signal line 70. The HWR signal unit 202 and the CPU 30 and the FPGA 40 are connected by an HWR signal line 71. The control unit 101 in the CFG control unit 10 and the HWR signal unit 202 are connected by a completion notification signal line 72.

図3は、本発明の実施の形態に係るコンフィグレーション装置が行うコンフィグレーション制御のタイミングチャートである。図1、図2および図3を用いて、CFG装置1が行うコンフィグレーション制御の例について以下に説明する。   FIG. 3 is a timing chart of configuration control performed by the configuration device according to the embodiment of the present invention. An example of configuration control performed by the CFG device 1 will be described below with reference to FIGS. 1, 2, and 3.

図3のタイミングT1において、CFG装置1が起動した場合、POR信号部201は、POR信号をアサートすることによりCFG制御部10およびフラッシュ50をリセット状態に保つ。CFG装置1の起動とは、電源投入による起動に限られず、再起動も含む。HWR信号部202は、POR信号がアサートされているまたは完了通知信号がアサートされていない場合には、HWR信号をアサートすることによりCPU30およびFPGA50を停止状態に保つ。したがって、CFG装置1が起動した場合には、POR信号がアサートされ、続いてHWR信号がアサートされ、CFG制御部10およびフラッシュ50がリセット状態に保たれ、CPU30およびFPGA40が停止状態に保たれる。   When the CFG device 1 is activated at the timing T1 in FIG. 3, the POR signal unit 201 keeps the CFG control unit 10 and the flash 50 in the reset state by asserting the POR signal. The activation of the CFG device 1 is not limited to activation by power-on, but also includes reactivation. When the POR signal is asserted or the completion notification signal is not asserted, the HWR signal unit 202 keeps the CPU 30 and the FPGA 50 in a stopped state by asserting the HWR signal. Therefore, when the CFG device 1 is activated, the POR signal is asserted, the HWR signal is subsequently asserted, the CFG control unit 10 and the flash 50 are kept in the reset state, and the CPU 30 and the FPGA 40 are kept in the stopped state. .

POR信号部201は、電源が安定したとみなすことができる所定の基準が満たされた場合に、POR信号をディアサートすることによりCFG制御部10およびフラッシュ50を作動させる。POR信号部201は、図3のタイミングT2において、例えば図示しない電源監視回路から電源正常信号を受け取り、電源電圧が安定したと判定して、POR信号をディアサートする。HWR信号部202は、完了通知信号がアサートされていないので、POR信号がディアサートされても、HWR信号をアサートした状態を維持する。   The POR signal unit 201 operates the CFG control unit 10 and the flash 50 by deasserting the POR signal when a predetermined criterion that can be regarded as a stable power supply is satisfied. The POR signal unit 201 receives a power supply normal signal from, for example, a power supply monitoring circuit (not shown) at timing T2 in FIG. 3, determines that the power supply voltage is stable, and deasserts the POR signal. Since the completion notification signal is not asserted, the HWR signal unit 202 maintains the state where the HWR signal is asserted even when the POR signal is deasserted.

POR信号がディアサートされると、CFG制御部10はFPGA40のコンフィグレーションを開始する。この時点ではHWR信号がアサートされており、CPU30は停止状態に保たれているので、ローカルバス60においてバスアクセスの競合は発生せず、CFG制御部10がフラッシュ50から論理回路情報を読み出すことが可能となる。制御部101は、論理回路情報の読み出しアドレスを初期化する。論理回路情報が記憶されるフラッシュ50のアドレスは予め定められているものとする。   When the POR signal is deasserted, the CFG control unit 10 starts configuration of the FPGA 40. At this time, since the HWR signal is asserted and the CPU 30 is kept in a stopped state, bus access contention does not occur in the local bus 60, and the CFG control unit 10 reads the logic circuit information from the flash 50. It becomes possible. The control unit 101 initializes the read address of the logic circuit information. Assume that the address of the flash 50 in which logic circuit information is stored is predetermined.

制御部101は、ローカルバスIF部102を制御して、ローカルバス60を介してフラッシュ50から論理回路情報DAT0を読み出す。そして、CFGバスIF部103を制御して、CFGバス61を介して論理回路情報DAT0をFPGA40に書き込む。FPGA40は書き込まれた論理回路情報を用いてコンフィグレーションを行う。   The control unit 101 controls the local bus IF unit 102 to read out the logic circuit information DAT0 from the flash 50 via the local bus 60. Then, the CFG bus IF unit 103 is controlled to write the logic circuit information DAT 0 into the FPGA 40 via the CFG bus 61. The FPGA 40 performs configuration using the written logic circuit information.

例えばDAT0が論理回路情報として不正なデータであり、コンフィグレーション中にエラーが発生した場合には、FPGA40は、CFGバスIF部103を介して制御部101にコンフィグレーションエラーを通知する。エラー通知を受け取った制御部101は、コンフィグレーションが完了したと判定して、完了通知信号をアサートする。コンフィグレーションの完了とは、コンフィグレーションの正常終了および異常終了を含むものとする。なお制御部101は、エラー通知を受け取ると異常フラグを設定する。   For example, if DAT0 is illegal data as logic circuit information and an error occurs during configuration, the FPGA 40 notifies the control unit 101 of the configuration error via the CFG bus IF unit 103. Receiving the error notification, the control unit 101 determines that the configuration is complete and asserts a completion notification signal. Completion of configuration includes normal termination and abnormal termination of configuration. The control unit 101 sets an abnormality flag when receiving an error notification.

制御部101は、FPGA40からコンフィグレーションエラーの通知を受けなかった場合には、全ての論理回路情報がFPGA40に書き込まれてコンフィグレーションが完了したか否かを判定する。制御部101は、FPGA40からコンフィグレーションが完了した旨の通知を受けたか否かに基づき全ての論理回路情報についてコンフィグレーションが完了したか否かを判定する。   When the controller 101 does not receive a configuration error notification from the FPGA 40, the controller 101 determines whether all the logic circuit information is written in the FPGA 40 and the configuration is completed. The control unit 101 determines whether or not the configuration has been completed for all the logic circuit information based on whether or not the notification that the configuration has been completed is received from the FPGA 40.

全ての論理回路情報についてコンフィグレーションが完了していない場合には、論理回路情報の読み出しアドレスを例えばインクリメントし、次の論理回路情報DAT1を読み出す。上述の処理を繰り返し、FPGA40からコンフィグレーションが完了した旨の通知を受けると、制御部101は、コンフィグレーションが完了したと判定して、完了通知信号をアサートする。   When the configuration is not completed for all the logic circuit information, the read address of the logic circuit information is incremented, for example, and the next logic circuit information DAT1 is read. When the above processing is repeated and a notification that the configuration is completed is received from the FPGA 40, the control unit 101 determines that the configuration is completed and asserts a completion notification signal.

また制御部101は、コンフィグレーションが完了したと判定した場合であって、異常フラグが設定されていない場合に、ローカルバスIF部102を制御してローカルバス60への接続を切断するよう構成してもよい。ローカルバス60への接続を切断することで、CPU30の作動後のローカルバス60上でのCPU30とCFG制御部10のバスアクセスの競合を防ぐことができる。   Further, the control unit 101 is configured to control the local bus IF unit 102 to disconnect the connection to the local bus 60 when it is determined that the configuration is completed and the abnormality flag is not set. May be. By disconnecting the connection to the local bus 60, it is possible to prevent a conflict in bus access between the CPU 30 and the CFG control unit 10 on the local bus 60 after the CPU 30 operates.

図3のタイミングT3で完了通知信号がアサートされると、HWR信号部202は、POR信号がアサートされておらず、完了通知信号がアサートされたので、コンフィグレーションが完了したと判定し、図3のタイミングT4でHWR信号をディアサートする。コンフィグレーション中に何らかの異常が発生してCFG制御部10が完了通知信号をアサートしない場合には、HWR信号がディアサートされない。そのため、POR信号がディアサートされてから所定の時間が経過しても完了通知信号がアサートされない場合には、HWR信号部202はコンフィグレーションが完了したと判定してHWR信号をディアサートするタイムアウト処理を行うよう構成するのが望ましい。所定の時間とは装置の設計において決定される任意の時間である。   When the completion notification signal is asserted at timing T3 in FIG. 3, the HWR signal unit 202 determines that the configuration is completed because the POR signal is not asserted and the completion notification signal is asserted. At time T4, the HWR signal is deasserted. If any abnormality occurs during configuration and the CFG control unit 10 does not assert the completion notification signal, the HWR signal is not deasserted. For this reason, if the completion notification signal is not asserted even after a predetermined time has elapsed after the POR signal is deasserted, the HWR signal unit 202 determines that the configuration is completed and performs a time-out process for deasserting the HWR signal. It is desirable to configure so that The predetermined time is an arbitrary time determined in the design of the apparatus.

HWR信号がディアサートされると、CPU30およびFPGA40が作動する。CPU30は図3のタイミングT5でフラッシュ50からブートコードのロードを開始する。CPU30は、ブート後にフラッシュ50に自由にアクセスすることが可能となり、フラッシュ50に記憶された論理回路情報を更新することが可能となる。またCPU30のブート後にソフトウェアによって、ローカルバス60およびローカルバスIF部102を介して、制御部101内に保持されている異常フラグが読み出される。コンフィグレーション中のエラー発生により異常フラグが設定されている場合には、フラッシュ50内の不正なコンフィグレーションデータを正常なデータに書き換える。   When the HWR signal is deasserted, the CPU 30 and the FPGA 40 operate. The CPU 30 starts loading the boot code from the flash 50 at the timing T5 in FIG. The CPU 30 can freely access the flash 50 after booting, and can update the logic circuit information stored in the flash 50. In addition, after the CPU 30 is booted, the abnormality flag held in the control unit 101 is read by software via the local bus 60 and the local bus IF unit 102. If the error flag is set due to the occurrence of an error during configuration, invalid configuration data in the flash 50 is rewritten with normal data.

図4は、本発明の実施の形態に係るコンフィグレーション装置が行う信号制御およびコンフィグレーション制御の動作の一例を示すフローチャートである。CFG装置1が起動すると、信号部20は信号制御を開始する。POR信号部201はPOR信号をアサートし、HWR信号部202はHWR信号をアサートする(ステップS110)。POR信号部201は、電源監視回路が電源正常信号をアサートしたか否かを確認する(ステップS120)。電源正常信号がアサートされていない場合には(ステップS130:N)、ステップS120に戻って、上述の処理を繰り返し行う。電源正常信号がアサートされた場合には(ステップS130:Y)、POR信号部201はPOR信号をディアサートする(ステップS140)。   FIG. 4 is a flowchart showing an example of signal control and configuration control operations performed by the configuration device according to the embodiment of the present invention. When the CFG device 1 is activated, the signal unit 20 starts signal control. The POR signal unit 201 asserts the POR signal, and the HWR signal unit 202 asserts the HWR signal (step S110). The POR signal unit 201 confirms whether or not the power supply monitoring circuit has asserted the power supply normal signal (step S120). When the power supply normal signal is not asserted (step S130: N), the process returns to step S120 and the above-described processing is repeated. When the power supply normal signal is asserted (step S130: Y), the POR signal unit 201 deasserts the POR signal (step S140).

POR信号がディアサートされるとCFG制御部10が作動し、コンフィグレーション制御を開始する。制御部101は、論理回路情報の読み出しアドレスを初期化する(ステップS210)。制御部101は、ローカルバスIF部102を制御して、ローカルバス60を介してフラッシュ50から論理回路情報を読み出す(ステップS220)。そして、CFGバスIF部103を制御して、CFGバス61を介して論理回路情報をFPGA40に書き込む(ステップS230)。FPGA40からコンフィグレーションエラーの通知を受けた場合には(ステップS240:Y)、制御部101は異常フラグを設定する(ステップS270)。そして、ステップS280に進む。   When the POR signal is deasserted, the CFG control unit 10 operates to start configuration control. The control unit 101 initializes a read address for the logic circuit information (step S210). The control unit 101 controls the local bus IF unit 102 to read out the logic circuit information from the flash 50 via the local bus 60 (step S220). Then, the CFG bus IF unit 103 is controlled, and logic circuit information is written into the FPGA 40 via the CFG bus 61 (step S230). When receiving a configuration error notification from the FPGA 40 (step S240: Y), the control unit 101 sets an abnormality flag (step S270). Then, the process proceeds to step S280.

制御部101は、FPGA40からコンフィグレーションエラーの通知を受けなかった場合には(ステップS240:N)、FPGA40からコンフィグレーション完了した旨の通知を受けたか否かに基づき、全ての論理回路情報がFPGA40に書き込まれてコンフィグレーションが完了したか否かを判定する。全ての論理回路情報についてコンフィグレーションが完了していない場合には(ステップS250:N)、論理回路情報の読み出しアドレスをインクリメントする(ステップS260)。そしてステップS220に戻り、上述の処理を繰り返す。上述の処理を繰り返して、全ての論理回路情報についてコンフィグレーションが完了した場合には(ステップS250:Y)、ステップS280に進む。   When the control unit 101 does not receive a configuration error notification from the FPGA 40 (step S240: N), all the logic circuit information is stored in the FPGA 40 based on whether or not a configuration completion notification is received from the FPGA 40. To determine whether the configuration is complete. If the configuration has not been completed for all the logic circuit information (step S250: N), the logic circuit information read address is incremented (step S260). And it returns to step S220 and repeats the above-mentioned process. When the above process is repeated and configuration is completed for all the logic circuit information (step S250: Y), the process proceeds to step S280.

制御部101は、完了通知信号をアサートする(ステップS280)。そして、異常フラグが設定されていない場合には(ステップS290:N)、ローカルバスIF部102を制御してローカルバス60への接続を切断し(ステップS300)、処理を終了する。異常フラグが設定されている場合には(ステップS290:Y)、ステップS300のローカルバス60への接続の切断は行わずに、処理を終了する。   The control unit 101 asserts a completion notification signal (step S280). If the abnormality flag is not set (step S290: N), the local bus IF unit 102 is controlled to disconnect the connection to the local bus 60 (step S300), and the process ends. If the abnormality flag is set (step S290: Y), the process ends without disconnecting the connection to the local bus 60 in step S300.

ステップS140でPOR信号部201がPOR信号をディアサートすると、HWR信号部202は、コンフィグレーションのタイムアウトを判定するためのタイマを起動する(ステップS150)。HWR信号部202は、完了通知信号がアサートされたか否かを確認する(ステップS160)。完了通知信号がアサートされていない場合には(ステップS170:N)、タイマの計測時間が所定の時間を経過しているか否かを判定する。タイマの計測時間が所定の時間を経過していない場合には(ステップS180:N)、ステップS160に戻って上述の処理を繰り返す。   When the POR signal unit 201 deasserts the POR signal in step S140, the HWR signal unit 202 starts a timer for determining a configuration timeout (step S150). The HWR signal unit 202 confirms whether or not the completion notification signal has been asserted (step S160). If the completion notification signal is not asserted (step S170: N), it is determined whether or not the measurement time of the timer has passed a predetermined time. If the predetermined time has not elapsed (step S180: N), the process returns to step S160 and the above-described processing is repeated.

上述の処理を繰り返し、ステップS160で完了通知信号がアサートされたことを確認した場合には(ステップS170:Y)、コンフィグレーションが完了したと判定し、ステップS190に進む。また上述の処理を繰り返して完了通知信号がアサートされていないが(ステップS170:N)、タイマの計測時間が所定の時間を経過した場合には(ステップS180:Y)、コンフィグレーションが完了したと判定し、ステップS190に進む。   If it is confirmed that the completion notification signal is asserted in step S160 (step S170: Y), it is determined that the configuration is completed, and the process proceeds to step S190. The completion notification signal is not asserted by repeating the above process (step S170: N), but if the predetermined time has elapsed (step S180: Y), the configuration is completed. Determine and proceed to step S190.

HWR信号部202は、HWR信号をディアサートし(ステップS190)、処理を終了する。HWR信号がディアサートされると、CPU30およびFPGA40が作動する。CPU30はフラッシュ50からブートコードのロードを開始する。   The HWR signal unit 202 deasserts the HWR signal (step S190) and ends the process. When the HWR signal is deasserted, the CPU 30 and the FPGA 40 operate. The CPU 30 starts loading the boot code from the flash 50.

以上説明したように、本実施の形態に係るコンフィグレーション装置は、論理回路情報を格納するための専用ROM(Read Only Memory)や、コンフィグレーション中にプログラマブルデバイスをバスから切り離すための回路を実装する必要がないので、プログラマブルデバイスを備える装置を小型化することが可能となり、装置のコストの低減も期待できる。またコンフィグレーションの完了後に、CFG制御部10がローカルバス60への接続を切断するよう構成した場合には、CPU30の作動後にCFG制御部10とCPU30のバスアクセスの競合を防ぐための回路を実装する必要がないので、さらなる装置の小型化およびコストの低減が可能となる。   As described above, the configuration device according to the present embodiment is mounted with a dedicated ROM (Read Only Memory) for storing logic circuit information and a circuit for separating the programmable device from the bus during configuration. Since it is not necessary, it is possible to reduce the size of an apparatus including a programmable device, and the cost of the apparatus can be expected to be reduced. In addition, when the CFG control unit 10 is configured to disconnect the connection to the local bus 60 after the configuration is completed, a circuit for preventing a conflict of bus access between the CFG control unit 10 and the CPU 30 after the operation of the CPU 30 is mounted. Therefore, it is possible to further reduce the size of the apparatus and reduce the cost.

また本実施の形態に係るコンフィグレーション装置は、論理回路情報を記憶する専用ROMをJTAG(Joint Test Action Group)インタフェース経由で更新する方法のように専用のケーブルやPCを必要としないので、論理回路情報の更新を簡易化することができる。   Further, the configuration device according to the present embodiment does not require a dedicated cable or PC as in the method of updating a dedicated ROM for storing logic circuit information via a JTAG (Joint Test Action Group) interface. Update of information can be simplified.

本発明の実施の形態は上述の実施の形態に限られない。CFG制御部10、CPU30、FPGA40、およびフラッシュ50がローカルバス60で接続され、CFG制御部10およびFPGA40がCFGバスで接続されるよう構成してもよい。CPU30は、FPGA40およびフラッシュ50とそれぞれバスで接続されていれば、CFG装置1の外部に配置されてもよい。   The embodiment of the present invention is not limited to the above-described embodiment. The CFG control unit 10, the CPU 30, the FPGA 40, and the flash 50 may be connected by the local bus 60, and the CFG control unit 10 and the FPGA 40 may be connected by the CFG bus. The CPU 30 may be disposed outside the CFG device 1 as long as it is connected to the FPGA 40 and the flash 50 via a bus.

また例えばPOR信号部201が出力するPOR信号をCPU30およびFPGA40にも送り、図5に示すインバータ80、81およびコンデンサ82を備える遅延回路を用いてPOR信号をコンフィグレーションに要する時間だけ遅延させた信号をHWR信号としてCPU30およびFPGA40に送るよう構成してもよい。図5の構成により、POR信号が、遅延回路を介してHWR信号として、CPU30およびFPGA40に送られる。POR信号、遅延信号、およびHWR信号は図6のタイミングチャートに示すようにディアサートされる。図6に示すようにPOR信号のディアサートが遅延されてHWR信号として送られることで、コンフィグレーションを行っている間にCPU30を停止状態に保つことが可能となる。   Further, for example, a POR signal output from the POR signal unit 201 is also sent to the CPU 30 and the FPGA 40, and a signal obtained by delaying the POR signal by a time required for configuration using the delay circuit including the inverters 80 and 81 and the capacitor 82 shown in FIG. May be sent to the CPU 30 and the FPGA 40 as an HWR signal. With the configuration of FIG. 5, the POR signal is sent to the CPU 30 and the FPGA 40 as an HWR signal through the delay circuit. The POR signal, the delay signal, and the HWR signal are deasserted as shown in the timing chart of FIG. As shown in FIG. 6, the deassertion of the POR signal is delayed and sent as the HWR signal, so that the CPU 30 can be kept stopped during the configuration.

なお論理回路情報はハードウェアの動作に影響するものであるから、アプリケーションが扱うデータとは区別して管理することが望ましい。例えばファイルシステム上の1ファイルとして扱うのではなく専用領域へ格納し、一般的なファイルアクセスとは異なる処理により読み書きが行えるようにすることが望ましい。   Since the logic circuit information affects the operation of the hardware, it is desirable to manage it separately from the data handled by the application. For example, it is desirable not to handle as one file on the file system but to store it in a dedicated area so that reading and writing can be performed by a process different from general file access.

1 コンフィグレーション装置
10 CFG制御部
20 信号部
30 CPU
40 FPGA
50 フラッシュ
60 ローカルバス
61 コンフィグレーションバス
62 FPGAバス
70 POR信号線
71 HWR信号線
72 完了通知信号線
80、81 インバータ
82 コンデンサ
101 制御部
102 ローカルバスIF部
103 CFGバスIF部
201 POR信号部
202 HWR信号部
1 Configuration device
10 CFG controller
20 Signal section
30 CPU
40 FPGA
50 flashes
60 Local bus
61 Configuration Bus
62 FPGA bus
70 POR signal line
71 HWR signal line
72 Completion notification signal line 80, 81 Inverter
82 capacitors
101 Control unit
102 Local bus IF section
103 CFG bus IF section
201 POR signal section
202 HWR signal section

Claims (2)

  1. プログラマブルデバイスと、前記プログラマブルデバイスのコンフィグレーションに用いる論理回路情報を記憶する不揮発性メモリと、を備えるコンフィグレーション装置であって、
    前記プログラマブルデバイスと前記不揮発性メモリは、それぞれ、中央処理装置にバスで接続され、
    前記コンフィグレーション装置が起動した場合に、停止信号を継続して送って前記中央処理装置を停止状態に保ち、前記停止信号の発生を停止することで、前記中央処理装置を作動させる信号部と、
    前記プログラマブルデバイスにバスで接続され、前記中央処理装置と前記不揮発性メモリとを接続する前記バスに接続され、前記信号部が前記停止信号を継続して送っている間に、前記不揮発性メモリに記憶された前記論理回路情報を用いて前記プログラマブルデバイスのコンフィグレーションを行う制御部と、
    をさらに備え
    前記制御部は、前記プログラマブルデバイスのコンフィグレーション中に異常が生じた場合には異常フラグを設定し、前記プログラマブルデバイスのコンフィグレーションの完了後に、前記異常フラグが設定されていない場合には、前記中央処理装置と前記不揮発性メモリとを接続する前記バスへの当該制御部の接続を切断する、
    コンフィグレーション装置。
    A configuration device comprising: a programmable device; and a nonvolatile memory for storing logic circuit information used for configuration of the programmable device,
    The programmable device and the nonvolatile memory are each connected to a central processing unit by a bus,
    When the configuration device is activated, a signal unit for continuously operating the central processing unit by sending a stop signal to keep the central processing unit in a stopped state and stopping the generation of the stop signal;
    Connected to the programmable device by a bus, connected to the bus connecting the central processing unit and the nonvolatile memory, while the signal unit continuously sends the stop signal to the nonvolatile memory A control unit configured to configure the programmable device using the stored logic circuit information;
    Further comprising a,
    The controller sets an abnormality flag when an abnormality occurs during configuration of the programmable device, and when the abnormality flag is not set after the configuration of the programmable device is completed, the control unit sets the abnormality flag. Disconnecting the control unit from the bus connecting the processing device and the non-volatile memory;
    Configuration device.
  2. 前記信号部は、前記コンフィグレーション装置が起動した場合に、リセット信号を前記制御部に継続して送って前記制御部をリセット状態に保ち、また前記停止信号を前記中央処理装置および前記プログラマブルデバイスに継続して送って前記中央処理装置および前記プログラマブルデバイスを停止状態に保ち、その後電源電圧が安定したとみなすことができる所定の基準が満たされた場合には前記リセット信号の発生を停止することで、前記制御部を作動させ、前記制御部が行う前記プログラマブルデバイスのコンフィグレーションが完了したと判定した場合に前記停止信号の発生を停止することで、前記中央処理装置および前記プログラマブルデバイスを作動させる請求項1に記載のコンフィグレーション装置。   When the configuration device is activated, the signal unit continuously sends a reset signal to the control unit to keep the control unit in a reset state, and sends the stop signal to the central processing unit and the programmable device. By continuously sending the central processing unit and the programmable device in a stopped state, and then stopping the generation of the reset signal when a predetermined standard that can be regarded as a stable power supply voltage is satisfied. And activating the central processing unit and the programmable device by operating the control unit and stopping the generation of the stop signal when it is determined that the configuration of the programmable device performed by the control unit is completed. Item 2. The configuration device according to Item 1.
JP2011270585A 2011-12-09 2011-12-09 Configuration device Active JP5804924B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011270585A JP5804924B2 (en) 2011-12-09 2011-12-09 Configuration device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011270585A JP5804924B2 (en) 2011-12-09 2011-12-09 Configuration device

Publications (2)

Publication Number Publication Date
JP2013123125A JP2013123125A (en) 2013-06-20
JP5804924B2 true JP5804924B2 (en) 2015-11-04

Family

ID=48774870

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011270585A Active JP5804924B2 (en) 2011-12-09 2011-12-09 Configuration device

Country Status (1)

Country Link
JP (1) JP5804924B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003044303A (en) * 2001-07-27 2003-02-14 Ando Electric Co Ltd Computer system
JP3904493B2 (en) * 2002-07-24 2007-04-11 株式会社ルネサステクノロジ Semiconductor device

Also Published As

Publication number Publication date
JP2013123125A (en) 2013-06-20

Similar Documents

Publication Publication Date Title
US8687451B2 (en) Power management in semiconductor memory system
US9182999B2 (en) Reintialization of a processing system from volatile memory upon resuming from a low-power state
TWI420388B (en) Method and apparatus for booting a microprocessor system using boot code stored on a serial flash memory array having a random-access interface
JP5229326B2 (en) Power consumption control method, power consumption control program and information processing system in multi-core CPU
JP2016009489A (en) Memory built-in self-test for data processing apparatus
US5701417A (en) Method and apparatus for providing initial instructions through a communications interface in a multiple computer system
US8145894B1 (en) Reconfiguration of an accelerator module having a programmable logic device
US7296143B2 (en) Method and system for loading processor boot code from serial flash memory
US10628169B2 (en) Method of implementing magnetic random access memory (MRAM) for mobile system-on-chip boot
CN106462520B (en) Techniques for communicating with a controller of a non-volatile dual in-line memory module
JP4750564B2 (en) Reset signal generation circuit
US6851014B2 (en) Memory device having automatic protocol detection
US20040193783A1 (en) Computer system with operating system permitting dynamic reallocation of main memory
US20090106572A1 (en) Microcomputer system
US7219248B2 (en) Semiconductor integrated circuit operable to control power supply voltage
US5923838A (en) Microcomputer with built-in flash memory
US8065512B2 (en) Embedded memory protection
WO2004070786A2 (en) Detection circuit for mixed asynchronous and synchronous memory operation
US9652410B1 (en) Automated modification of configuration settings of an integrated circuit
WO2002069146A2 (en) Data processing system having an on-chip background debug system and method therefor
JP4492394B2 (en) Microcomputer
US9870233B2 (en) Initializing a memory subsystem of a management controller
TWI410793B (en) Computer, and method for error-detecting and booting of bios thereof
KR101283431B1 (en) Microcomputer
JP2007304781A (en) Semiconductor device and start-up method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141028

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150602

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150715

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150901

R150 Certificate of patent or registration of utility model

Ref document number: 5804924

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250