JP2008052389A - Programmable logic circuit update device, update method, data processor and network equipment - Google Patents

Programmable logic circuit update device, update method, data processor and network equipment Download PDF

Info

Publication number
JP2008052389A
JP2008052389A JP2006226086A JP2006226086A JP2008052389A JP 2008052389 A JP2008052389 A JP 2008052389A JP 2006226086 A JP2006226086 A JP 2006226086A JP 2006226086 A JP2006226086 A JP 2006226086A JP 2008052389 A JP2008052389 A JP 2008052389A
Authority
JP
Japan
Prior art keywords
logic circuit
data
configuration data
error detection
memory
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
JP2006226086A
Other languages
Japanese (ja)
Inventor
Yoshiyuki Morishima
良行 森嶋
Takeshi Kato
剛 加藤
Shigeki Yoshino
茂樹 吉野
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.)
Alaxala Networks Corp
Original Assignee
Alaxala Networks 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 Alaxala Networks Corp filed Critical Alaxala Networks Corp
Priority to JP2006226086A priority Critical patent/JP2008052389A/en
Publication of JP2008052389A publication Critical patent/JP2008052389A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To detect the error of new configuration data written in a memory by simple configurations. <P>SOLUTION: When new configuration data are written from a CPU 140 in a flash memory 130, a check logic circuit 114 configured as the internal circuit of an EPGA 110 reads the data, and calculates check sum data. Not only the new configuration data but also preliminarily calculated check sum data are recorded in the flash memory 130. Then, a check logic circuit 114 compares the preliminarily recorded check sum data with the check data calculated by reading the configuration data. Thus, it is possible to independently detect whether or not the new configuration data are correctly written in the flash memory 130. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、プログラマブル論理回路の内部回路を更新する技術に関する。   The present invention relates to a technique for updating an internal circuit of a programmable logic circuit.

近年、特定用途向けの集積回路であるASIC(Application Specific Integrated Circuit)に代わり、内部回路のプログラムが可能なFPGA(Field Programmable Gate Array)やCPLD(Complex Programmable Logic Device)といったプログラマブル論理回路が最終製品の基幹部品として実装されることが多くなっている。   In recent years, programmable logic circuits such as FPGAs (Field Programmable Gate Arrays) and CPLDs (Complex Programmable Logic Devices) that can program internal circuits are the final products instead of ASICs (Application Specific Integrated Circuits) that are integrated circuits for specific applications. It is increasingly mounted as a key component.

上述したプログラマブル論理回路のうち、SRAM型のFPGAは、その起動時に不揮発性のメモリからコンフィギュレーションデータと呼ばれるデータをダウンロードして、このデータに基づき内部回路の構成を行うものが一般的である(下記特許文献1参照)。このようなプログラマブル論理回路では、不揮発性のメモリに記憶されるコンフィギュレーションデータを随時書き換えることで、容易に、内部回路の修正や更新を行うことができる。なお、以下では、プログラマブル論理回路がコンフィギュレーションデータを読み込んで内部回路を構成することを、「コンフィギュレーション」と呼ぶ。   Among the programmable logic circuits described above, SRAM-type FPGAs generally download data called configuration data from a non-volatile memory at the time of startup, and configure the internal circuit based on this data ( See Patent Document 1 below). In such a programmable logic circuit, it is possible to easily modify or update the internal circuit by rewriting configuration data stored in the nonvolatile memory as needed. Hereinafter, the configuration in which the programmable logic circuit reads the configuration data to configure the internal circuit is referred to as “configuration”.

特開2002−305438号公報JP 2002-305438 A 特開2005−258996号公報JP 2005-258996 A 特開2002−197900号公報JP 2002-197900 A 特開2002−94369号公報JP 2002-94369 A

こうしたプログラマブル論理回路を搭載した製品では、不揮発性のメモリに記憶されたコンフィギュレーションデータを書き換えた際に、何らかの原因でその書き込み時にエラーが生じてしまうと、システムの起動後のコンフィギュレーションによってFPGAが正常に機能しなくなるという問題があった。このような問題に対処するために、例えば、コンフィギュレーションデータの書き換え後に、そのFPGAを備える製品に搭載されたCPUが、コンペアチェック等の方法で書き込み後のコンフィギュレーションデータの整合性を確認することが考えられる。ところが、このような方法では、CPUにかかる処理負担が増大してしまい、CPUが本来実行すべき処理に影響が及び、処理速度の低下や起動時間の遅延等が発生してしまうおそれがあった。特に、1つのCPUに対して、複数のFPGAが接続されているシステムにおいて、このような影響は看過できないものとなる。   In a product equipped with such a programmable logic circuit, when the configuration data stored in the non-volatile memory is rewritten, if an error occurs during the writing for some reason, the FPGA is configured by the configuration after system startup. There was a problem that it would not function properly. In order to deal with such a problem, for example, after rewriting the configuration data, the CPU mounted on the product including the FPGA confirms the consistency of the configuration data after writing by a method such as a compare check. Can be considered. However, with such a method, the processing load on the CPU increases, which may affect the processing that the CPU originally executes, and may cause a reduction in processing speed, a delay in startup time, and the like. . In particular, in a system in which a plurality of FPGAs are connected to one CPU, such influence cannot be overlooked.

このようなコンフィギュレーションデータの書き換え時に発生する問題を考慮し、本発明が解決しようとする課題は、メモリに書き込まれたコンフィギュレーションデータの誤りを簡易な構成で検出することにある。   In consideration of such a problem that occurs at the time of rewriting configuration data, the problem to be solved by the present invention is to detect an error in configuration data written in a memory with a simple configuration.

上記課題を踏まえ、本発明のプログラマブル論理回路更新装置を次のように構成した。すなわち、
プログラマブル論理回路の回路構成を更新するプログラマブル論理回路更新装置であって、
所定のメモリに記憶されたコンフィギュレーションデータを読み込み、該コンフィギュレーションデータに基づいて、所定の機能を有する主論理回路と、前記メモリに記憶されたコンフィギュレーションデータの誤り検出を行うチェック論理回路とを実現するプログラマブル論理回路と、
前記メモリに、新たなコンフィギュレーションデータと、該新たなコンフィギュレーションデータに基づいて定まる誤り検出データとを書き込む書込部と、
前記チェック論理回路によって前記新たなコンフィギュレーションデータの誤り検出を行った結果、該新たなコンフィギュレーションデータに誤りが検出されなかった場合に、該新たなコンフィギュレーションデータに基づき、前記プログラマブル論理回路に回路構成を更新させる更新部とを備え、
前記チェック論理回路は、前記書込部によって前記新たなコンフィギュレーションデータと前記誤り検出データとが前記メモリに書き込まれた場合に、前記メモリから該新たなコンフィギュレーションデータを読み出して該コンフィギュレーションデータに基づき誤り検出データを算出し、該算出した誤り検出データと、前記書込部によって前記メモリに書き込まれた前記誤り検出データとを比較することで、前記メモリに書き込まれた新たなコンフィギュレーションデータの誤り検出を行うことを要旨とする。
Based on the above problems, the programmable logic circuit update device of the present invention is configured as follows. That is,
A programmable logic circuit updating device for updating a circuit configuration of a programmable logic circuit,
A main logic circuit having a predetermined function is read based on the configuration data, and a check logic circuit for detecting an error in the configuration data stored in the memory, based on the configuration data. A programmable logic circuit to be realized;
A writing unit for writing new configuration data and error detection data determined based on the new configuration data to the memory;
If no error is detected in the new configuration data as a result of the error detection of the new configuration data by the check logic circuit, a circuit is connected to the programmable logic circuit based on the new configuration data. An update unit for updating the configuration,
The check logic circuit, when the new configuration data and the error detection data are written to the memory by the writing unit, reads the new configuration data from the memory and converts it into the configuration data. The error detection data is calculated based on the calculated error detection data, and the error detection data written to the memory by the writing unit is compared with the new configuration data written to the memory. The gist is to perform error detection.

また、本発明は、次のようなプログラマブル論理回路の更新方法としても構成することができる。すなわち、本発明の更新方法は、
プログラマブル論理回路の回路構成を更新する更新方法であって、
前記プログラマブル論理回路が、所定のメモリに記憶されたコンフィギュレーションデータを読み込み、該コンフィギュレーションデータに基づいて、所定の機能を有する主論理回路と、前記メモリに記憶されたコンフィギュレーションデータの誤り検出を行うチェック論理回路とを実現し、
所定の書込部が、前記メモリに、新たなコンフィギュレーションデータと、該新たなコンフィギュレーションデータに基づいて定まる誤り検出データとを書き込み、
前記書込部によって前記新たなコンフィギュレーションデータと前記誤り検出データとが前記メモリに書き込まれた場合に、前記チェック論理回路が、前記メモリから前記新たなコンフィギュレーションデータを読み出して該コンフィギュレーションデータに基づき誤り検出データを算出し、該算出した誤り検出データと、前記メモリに書き込まれた前記誤り検出データとを比較して、前記メモリに書き込まれた新たなコンフィギュレーションデータの誤り検出を行い、
前記チェック論理回路による誤り検出の結果、前記新たなコンフィギュレーションデータに誤りが検出されなかった場合に、該新たなコンフィギュレーションデータに基づき、前記プログラマブル論理回路に回路構成を更新させることを要旨とする。
The present invention can also be configured as a method for updating a programmable logic circuit as follows. That is, the update method of the present invention is:
An update method for updating a circuit configuration of a programmable logic circuit,
The programmable logic circuit reads configuration data stored in a predetermined memory, and based on the configuration data, detects an error in the main logic circuit having a predetermined function and the configuration data stored in the memory. The check logic circuit to perform,
A predetermined writing unit writes new configuration data and error detection data determined based on the new configuration data to the memory;
When the new configuration data and the error detection data are written to the memory by the writing unit, the check logic circuit reads the new configuration data from the memory and uses the new configuration data as the configuration data. Calculating error detection data based on the error detection data, comparing the calculated error detection data with the error detection data written to the memory, and performing error detection of the new configuration data written to the memory;
As a result, when no error is detected in the new configuration data as a result of error detection by the check logic circuit, the programmable logic circuit is updated based on the new configuration data. .

本発明のプログラマブル論理回路更新装置および更新方法では、新たなコンフィギュレーションデータをメモリに書き込むと、プログラマブル論理回路内に実現されたチェック論理回路によって、そのコンフィギュレーションデータがメモリに正しく書き込まれたかを確認することができる。従って、電源の再投入に伴ってプログラム論理回路のコンフィギュレーションが実行されたとしても、メモリに対する書き込みエラー等に起因して、プログラマブル論理回路が動作不能となることを抑制することができる。   In the programmable logic circuit updating apparatus and the updating method of the present invention, when new configuration data is written in the memory, the check logic circuit implemented in the programmable logic circuit confirms whether the configuration data is correctly written in the memory. can do. Therefore, even if the configuration of the program logic circuit is executed as the power is turned on again, it is possible to prevent the programmable logic circuit from becoming inoperable due to a write error to the memory or the like.

また、本発明では、コンフィギュレーションデータの誤り検出を行うチェック論理回路を、プログラマブル論理回路の内部回路として実現するものとした。そのため、新たなハードウェアを別途用意することなく簡易な構成で誤り検出を行うことができる。   Further, in the present invention, the check logic circuit for detecting configuration data errors is realized as an internal circuit of the programmable logic circuit. For this reason, error detection can be performed with a simple configuration without separately preparing new hardware.

なお、上記構成のプログラマブル論理回路更新装置において、前記プログラマブル論理回路としては、フィールドプログラマブルゲートアレイ(FPGA)を採用することができる。また、FPGA以外にも、電源の投入毎にコンフィギュレーションデータを入力して回路構成を行う他のデバイスを採用するものとしてもよい。   In the programmable logic circuit updating apparatus having the above configuration, a field programmable gate array (FPGA) can be adopted as the programmable logic circuit. In addition to the FPGA, another device that inputs the configuration data every time the power is turned on and performs the circuit configuration may be employed.

上記構成において、メモリに書き込まれる誤り検出データは、書込部がコンフィギュレーションデータの書き込み時に事前に算出して求めるものとしてもよい。また、その他にも、コンフィギュレーションデータを用意する他の機器によって予め算出されているものとしてもよい。   In the above configuration, the error detection data written in the memory may be calculated and obtained in advance by the writing unit when the configuration data is written. In addition, it may be calculated in advance by another device that prepares configuration data.

上記構成のプログラマブル論理回路更新装置において、
前記チェック論理回路は、前記誤り検出の結果、前記新たなコンフィギュレーションデータに誤りを検出した場合に、前記書込部に、再度、前記新たなコンフィギュレーションデータと前記誤り検出データとを書き込ませるものとしてもよい。
In the programmable logic circuit update device configured as described above,
The check logic circuit causes the writing unit to write the new configuration data and the error detection data again when an error is detected in the new configuration data as a result of the error detection. It is good.

このような構成であれば、メモリに対する新たなコンフィギュレーションデータの書き込みが失敗した場合であっても、再度、書き込み処理を行うことができるため、コンフィギュレーションデータが正しく書き込まれる精度を高めることができる。   With such a configuration, even if the writing of new configuration data to the memory fails, the writing process can be performed again, so that the accuracy of correctly writing the configuration data can be improved. .

上記構成のプログラマブル論理回路更新装置において、
前記誤り検出データは、前記新たなコンフィギュレーションデータから算出されたチェックサムデータ、CRCデータ、および、パリティデータのうち、いずれかのデータ、または、これらのデータを2以上組み合わせたデータであるものとすることができる。
In the programmable logic circuit update device configured as described above,
The error detection data is any of checksum data, CRC data, and parity data calculated from the new configuration data, or data obtained by combining two or more of these data can do.

このような構成であれば、既存の誤り検出方法を用いて容易にメモリに書き込まれたコンフィギュレーションデータの誤りを検出することができる。特に、チェックサムデータによって誤り検出を行うものとすれば、単純な加算回路や比較回路によって誤り検出の精度が比較的高いチェック論理回路を実現することができる。この結果、プログラマブル論理回路の回路規模が増大することを抑制することができる。   With such a configuration, it is possible to easily detect an error in the configuration data written in the memory using an existing error detection method. In particular, if error detection is performed using checksum data, a check logic circuit with relatively high error detection accuracy can be realized by a simple addition circuit or comparison circuit. As a result, an increase in the circuit scale of the programmable logic circuit can be suppressed.

また、本発明は、上述したプログラマブル論理回路更新装置を備え、前記主論理回路が、入力したデータに対して所定のデータ処理を行って出力するデータ処理装置として構成することができる。   Furthermore, the present invention can be configured as a data processing device that includes the above-described programmable logic circuit updating device, and in which the main logic circuit performs predetermined data processing on input data and outputs it.

このようなデータ処理装置であれば、例えば、入力したネットワークデータの宛先アドレスを解析したり、転送したパケットの数をカウントしたりする処理を行うことができる。また、その他にも、入力した画像データや映像データに対して、種々の画像処理を施すものとすることもできるし、入力した音声データに基づき音声を出力する処理を行うものとすることも可能である。   With such a data processing device, for example, it is possible to perform processing for analyzing the destination address of the input network data and counting the number of transferred packets. In addition, it is also possible to perform various image processing on the input image data and video data, or to perform processing for outputting sound based on the input audio data. It is.

また、本発明は、次のようなネットワーク装置としても構成することができる。すなわち、本発明のネットワーク装置は、
プログラマブル論理回路を備えるネットワーク装置であって、
それぞれ前記プログラマブル論理回路を有すると共に、複数の回線ポートを備え、該回線ポートのいずれかから入力したネットワークパケットを、該ネットワークパケットの宛先に応じて他の回線ポートに転送する複数の回線処理カードと、
前記各回線処理カードの統括管理を行うCPUとを備え、
前記各回線処理カードのプログラマブル論理回路は、該各回線処理カードに搭載された所定のメモリからコンフィギュレーションデータを読み込み、該コンフィギュレーションデータに基づいて、該回線処理カードと前記CPUとの接続を行うインタフェース論理回路と、前記メモリに記憶されたコンフィギュレーションデータの誤り検出を行うチェック論理回路とを実現し、
前記CPUは、
前記インタフェース論理回路を介して、前記各回線処理カードに搭載されたメモリに、新たなコンフィギュレーションデータと、該新たなコンフィギュレーションデータに基づいて定まる誤り検出データとを書き込む手段と、
前記チェック論理回路によって前記新たなコンフィギュレーションデータの誤り検出を行った結果、前記新たなコンフィギュレーションデータに誤りが検出されなかった場合に、該新たなコンフィギュレーションデータに基づき、前記プログラマブル論理回路に回路構成を更新させる手段とを備え、
前記チェック論理回路は、前記CPUによって前記新たなコンフィギュレーションデータと前記誤り検出データとが前記メモリに書き込まれた場合に、前記メモリから該新たなコンフィギュレーションデータを読み出して該コンフィギュレーションデータに基づき誤り検出データを算出し、該算出した誤り検出データと、前記CPUによって前記メモリに書き込まれた前記誤り検出データとを比較することで、前記メモリに書き込まれた新たなコンフィギュレーションデータの誤り検出を行うことを要旨とする。
The present invention can also be configured as the following network device. That is, the network device of the present invention
A network device comprising a programmable logic circuit,
A plurality of line processing cards each having the programmable logic circuit, including a plurality of line ports, and transferring a network packet input from any of the line ports to another line port according to the destination of the network packet; ,
A CPU that performs overall management of each line processing card,
The programmable logic circuit of each line processing card reads configuration data from a predetermined memory mounted on each line processing card, and connects the line processing card and the CPU based on the configuration data. An interface logic circuit and a check logic circuit for detecting an error in the configuration data stored in the memory are realized,
The CPU
Means for writing new configuration data and error detection data determined based on the new configuration data to the memory mounted on each line processing card via the interface logic circuit;
If no error is detected in the new configuration data as a result of detecting the error in the new configuration data by the check logic circuit, a circuit is connected to the programmable logic circuit based on the new configuration data. Means for updating the configuration,
The check logic circuit, when the new configuration data and the error detection data are written to the memory by the CPU, reads the new configuration data from the memory and performs an error based on the configuration data. The detection data is calculated, and the error detection data newly written in the memory is detected by comparing the calculated error detection data with the error detection data written in the memory by the CPU. This is the gist.

本発明のネットワーク装置は、プログラマブル論理回路によって実現されたインタフェース論理回路を介して、1つのCPUと複数の回線処理カードとが接続されている態様を採っている。こうした本発明のネットワーク装置によれば、各回線処理カードが備えるチェック論理回路によって、各回線処理カードが、それぞれ自立的に、メモリに書き込まれた新たなコンフィギュレーションデータの誤りを検出することができる。そのため、CPUにかかる処理負担が軽減されるとともに、コンフィギュレーションデータの書き込みエラーに伴う再起動後の動作不良を抑制することが可能になる。   The network apparatus of the present invention adopts a mode in which one CPU and a plurality of line processing cards are connected via an interface logic circuit realized by a programmable logic circuit. According to such a network apparatus of the present invention, each line processing card can independently detect an error in new configuration data written in the memory by the check logic circuit included in each line processing card. . As a result, the processing burden on the CPU is reduced, and it is possible to suppress malfunctions after restart due to configuration data write errors.

以下、上述した本発明の作用・効果を一層明らかにするため、本発明の実施の形態および実施例を次の順序で説明する。
A.実施の形態:
(A1)プログラマブル論理回路更新装置の構成:
(A2)コンフィギュレーションデータ更新時の動作:
B.実施例:
(B1)ネットワークスイッチ装置の構成:
(B2)プログラマブル論理回路更新装置の構成:
(B3)コンフィギュレーションデータ更新時の動作:
Hereinafter, in order to further clarify the operation and effect of the present invention described above, embodiments and examples of the present invention will be described in the following order.
A. Embodiment:
(A1) Configuration of programmable logic circuit update device:
(A2) Operation when updating configuration data:
B. Example:
(B1) Configuration of network switch device:
(B2) Configuration of programmable logic circuit update device:
(B3) Operation when updating configuration data:

A.実施の形態:
(A1)プログラマブル論理回路更新装置の構成:
図1は、本発明の実施形態としてのプログラマブル論理回路更新装置100の概略構成を示す説明図である。図示するように、本実施形態のプログラマブル論理回路更新装置100は、FPGA110と更新制御回路120とフラッシュメモリ130とCPU140とRAM150とを備えている。本実施形態のFPGA110は、本願の「プログラマブル論理回路」に対応し、フラッシュメモリ130は「メモリ」に、CPU140および更新制御回路120は「書込部」と「更新部」に、それぞれ対応する。
A. Embodiment:
(A1) Configuration of programmable logic circuit update device:
FIG. 1 is an explanatory diagram showing a schematic configuration of a programmable logic circuit update device 100 as an embodiment of the present invention. As shown in the figure, the programmable logic circuit update device 100 of this embodiment includes an FPGA 110, an update control circuit 120, a flash memory 130, a CPU 140, and a RAM 150. The FPGA 110 of the present embodiment corresponds to the “programmable logic circuit” of the present application, the flash memory 130 corresponds to “memory”, and the CPU 140 and the update control circuit 120 correspond to “write unit” and “update unit”, respectively.

FPGA110は、制御信号線122と、データ信号線124と、要求信号線126とによって更新制御回路120に接続されている。この更新制御回路120には、フラッシュインタフェース135を介してフラッシュメモリ130が接続されている。FPGA110と更新制御回路120とには、CPUバス145を介して、CPU140が接続されている。CPU140には、メモリバス155を介してRAM150が接続されている。   The FPGA 110 is connected to the update control circuit 120 by a control signal line 122, a data signal line 124, and a request signal line 126. A flash memory 130 is connected to the update control circuit 120 via a flash interface 135. A CPU 140 is connected to the FPGA 110 and the update control circuit 120 via a CPU bus 145. A RAM 150 is connected to the CPU 140 via a memory bus 155.

FPGA110は、例えば、数十万ゲートの規模を有するプログラマブル論理回路であり、LUT(Look Up Table)やセレクタ、フリップフロップ等の回路を多数備えている。LUTの内容は揮発性のSRAMによって保持されている。そのため、電源の投入毎に、外部のメモリからコンフィギュレーションデータと呼ばれるデータを入力し、これにより、内部の論理回路を構成(コンフィギュレーション)する。本実施形態では、このコンフィギュレーションにより、主機能論理回路112と、チェック論理回路114とが内部回路として構成される。   The FPGA 110 is a programmable logic circuit having a scale of several hundred thousand gates, for example, and includes a number of circuits such as an LUT (Look Up Table), a selector, and a flip-flop. The contents of the LUT are held by a volatile SRAM. Therefore, every time the power is turned on, data called configuration data is input from an external memory, thereby configuring (configuring) an internal logic circuit. In this embodiment, the main function logic circuit 112 and the check logic circuit 114 are configured as internal circuits by this configuration.

主機能論理回路112は、FPGA110の動作状態において所定の機能を発揮するメインの論理回路である。この主機能論理回路112によって実現する機能は、プログラマブル論理回路更新装置100を備える装置に応じて適宜種々のものを適用できる。例えば、プログラマブル論理回路更新装置100がネットワーク装置に搭載される場合には、MIB(Management Information Base)情報としてパケットの転送数をカウントする論理回路や回線毎のMACアドレスを学習する論理回路等として構成することができる。また、映像機器や音声機器に搭載される場合には、画像処理や音声出力を行う回路としても構成することができる。一方、チェック論理回路114は、CPU140が、フラッシュメモリ130に新たなコンフィギュレーションデータを書き込んだ場合に、書き込み後のデータの誤り検出を行う論理回路である。このチェック論理回路114によって行われる処理の詳細については後述する。   The main function logic circuit 112 is a main logic circuit that exhibits a predetermined function in the operation state of the FPGA 110. Various functions can be applied to the functions realized by the main function logic circuit 112 according to the device including the programmable logic circuit updating device 100. For example, when the programmable logic circuit update device 100 is mounted on a network device, it is configured as a logic circuit that counts the number of packet transfers as MIB (Management Information Base) information, a logic circuit that learns a MAC address for each line, or the like. can do. Further, when mounted on video equipment or audio equipment, it can also be configured as a circuit that performs image processing and audio output. On the other hand, the check logic circuit 114 is a logic circuit that performs error detection of data after writing when the CPU 140 writes new configuration data into the flash memory 130. Details of the processing performed by the check logic circuit 114 will be described later.

更新制御回路120は、プログラマブル論理回路更新装置100の電源投入時やCPU140から指示を受けた場合に、FPGA110にコンフィギュレーションを行わせる機能と、CPU140から転送された新たなコンフィギュレーションデータを、フラッシュメモリ130に中継する機能とを備える。更新制御回路120は、例えば、FPGA110とは異なるFPGAや、CPLD、マイクロコンピュータ等によって構成することができる。   The update control circuit 120 has a function of causing the FPGA 110 to perform configuration when the programmable logic circuit update device 100 is turned on or receives an instruction from the CPU 140, and new configuration data transferred from the CPU 140 to the flash memory. And a function of relaying to 130. The update control circuit 120 can be configured by, for example, an FPGA different from the FPGA 110, a CPLD, a microcomputer, or the like.

更新制御回路120は、プログラマブル論理回路更新装置100の電源投入時やCPU140から指示を受けた場合に、制御信号線122を駆動することで、FPGA110に対してコンフィギュレーションを行うよう命令する。FPGA110は、この命令を受けると、データ信号線124を通じて更新制御回路120によってフラッシュメモリ130から転送されたコンフィギュレーションデータを読み込み、内部回路(主機能論理回路112およびチェック論理回路114)を構成する。   The update control circuit 120 instructs the FPGA 110 to perform configuration by driving the control signal line 122 when the programmable logic circuit update device 100 is powered on or receives an instruction from the CPU 140. Upon receiving this command, the FPGA 110 reads the configuration data transferred from the flash memory 130 by the update control circuit 120 through the data signal line 124, and configures internal circuits (main function logic circuit 112 and check logic circuit 114).

CPU140は、フラッシュメモリ130に記憶されたコンフィギュレーションデータを更新する機能を備える。この更新処理は、RAM150に記憶された所定のプログラムを実行することで行われる。CPU140に接続されたRAM150には、新たなコンフィギュレーションデータが記憶されている。この新たなコンフィギュレーションデータにも、チェック論理回路114を実現するためのデータが含まれている。CPU140はメモリバス155を介してこのデータを読み込み、更新制御回路120を介してフラッシュメモリ130に書き込みを行う。RAM150に記憶されている新たなコンフィギュレーションデータは、例えば、ネットワークやメモリカード、CD−ROM等の媒体から入力することができる。   The CPU 140 has a function of updating configuration data stored in the flash memory 130. This update process is performed by executing a predetermined program stored in the RAM 150. New configuration data is stored in the RAM 150 connected to the CPU 140. This new configuration data also includes data for realizing the check logic circuit 114. The CPU 140 reads this data via the memory bus 155 and writes it to the flash memory 130 via the update control circuit 120. New configuration data stored in the RAM 150 can be input from a medium such as a network, a memory card, or a CD-ROM.

(A2)コンフィギュレーションデータ更新時の動作:
図2は、本実施形態のプログラマブル論理回路更新装置100において、コンフィギュレーションデータを更新する際の動作の流れを示すフローチャートである。
(A2) Operation when updating configuration data:
FIG. 2 is a flowchart showing an operation flow when the configuration data is updated in the programmable logic circuit update device 100 of the present embodiment.

まず、CPU140は、RAM150から新たなコンフィギュレーションデータを読み出し、更新制御回路120を介して、フラッシュメモリ130内のコンフィギュレーションデータの書き換えを行う(ステップS100)。このとき、CPU140は、RAM150から新たなコンフィギュレーションデータを読み込むと同時に、このデータの値を合計することで、誤り検出データとしてチェックサムデータを算出する。そして、このチェックサムデータを、新たなコンフィギュレーションデータとともにフラッシュメモリ130に書き込む(ステップS110)。なお、かかる処理では、予め算出されたチェックサムデータをRAM150から読み出し、これをフラッシュメモリ130に書き込むものとしてもよい。   First, the CPU 140 reads new configuration data from the RAM 150 and rewrites the configuration data in the flash memory 130 via the update control circuit 120 (step S100). At this time, the CPU 140 calculates new checksum data as error detection data by reading new configuration data from the RAM 150 and summing the values of the data. Then, this checksum data is written into the flash memory 130 together with new configuration data (step S110). In this process, checksum data calculated in advance may be read from the RAM 150 and written into the flash memory 130.

コンフィギュレーションデータとチェックサムデータの書き換えが完了すると、CPU140は、CPUバス145を介して、FPGA110内のチェック論理回路114に、新たなコンフィギュレーションデータの誤り検出を行うよう命令する(ステップS120)。チェック論理回路114は、この命令を受けると、要求信号線126を駆動して、更新制御回路120に対し、新たなコンフィギュレーションデータとチェックサムデータの転送を要求する(ステップS130)。かかる要求を受けると、更新制御回路120は、フラッシュメモリ130からコンフィギュレーションデータおよびチェックサムデータを読み出し、データ信号線124を介してこれらをチェック論理回路114に転送する(ステップS140)。なお、このとき更新制御回路120は、FPGA110が通常のコンフィギュレーションを開始しないよう、制御信号線122の駆動は行わない。   When the rewriting of the configuration data and the checksum data is completed, the CPU 140 instructs the check logic circuit 114 in the FPGA 110 to detect an error in the new configuration data via the CPU bus 145 (step S120). Upon receiving this command, the check logic circuit 114 drives the request signal line 126 to request the update control circuit 120 to transfer new configuration data and checksum data (step S130). Upon receiving such a request, the update control circuit 120 reads the configuration data and checksum data from the flash memory 130 and transfers them to the check logic circuit 114 via the data signal line 124 (step S140). At this time, the update control circuit 120 does not drive the control signal line 122 so that the FPGA 110 does not start normal configuration.

チェック論理回路114は、新たなコンフィギュレーションデータとチェックサムデータとを受信すると、受信したコンフィギュレーションデータを構成する各データの合計値からチェックサムデータを算出し、こうして算出したチェックサムデータと、データ信号線124を介して入力したチェックサムデータとを比較する(ステップS150)。比較の結果、値が異なれば、誤りが検出されたことになる。このように誤り検出を行うと、チェック論理回路114は、この誤り検出の結果をCPU140に通知する(ステップS160)。   When the check logic circuit 114 receives new configuration data and checksum data, the check logic circuit 114 calculates checksum data from the total value of each data constituting the received configuration data, and the checksum data thus calculated and the data The checksum data input via the signal line 124 is compared (step S150). If the values are different as a result of the comparison, an error is detected. When error detection is performed in this way, the check logic circuit 114 notifies the CPU 140 of the result of error detection (step S160).

CPU140は、誤り検出の結果を受信し、その結果が「誤りなし」であれば(ステップS170:Yes)、更新制御回路120に指令を与え、FPGA110のコンフィギュレーションを行わせる(ステップS180)。こうすることで、書き換え後のコンフィギュレーションデータがフラッシュメモリ130から読み込まれ、FPGA110に新たな論理回路(新たな主機能論理回路112およびチェック論理回路114)が構成される。これに対して、誤り検出の結果が、「誤りあり」であれば(ステップS170:No)、CPU140は、再度上記ステップS100に処理を戻し、再度、コンフィギュレーションデータの書き換えを実行する。こうすることで、新たなコンフィギュレーションデータに誤りがなくなるまで、フラッシュメモリ130に新たなコンフィギュレーションデータが書き込まれることになる。なお、上記ステップS180で実行されるコンフィギュレーションのタイミングは、ステップS170で「誤りなし」と判定された直後でなくてもよい。例えば、主機能論理回路112が機能を停止しているタイミングや、装置全体が再起動されるタイミングで実行することができる。   The CPU 140 receives the error detection result, and if the result is “no error” (step S170: Yes), the CPU 140 gives an instruction to the update control circuit 120 to configure the FPGA 110 (step S180). In this way, the rewritten configuration data is read from the flash memory 130, and new logic circuits (new main function logic circuit 112 and check logic circuit 114) are configured in the FPGA 110. On the other hand, if the result of error detection is “with error” (step S170: No), the CPU 140 returns the process to step S100 again, and rewrites the configuration data again. By doing so, new configuration data is written in the flash memory 130 until there is no error in the new configuration data. Note that the timing of the configuration executed in step S180 does not have to be immediately after it is determined as “no error” in step S170. For example, it can be executed when the main function logic circuit 112 stops functioning or when the entire apparatus is restarted.

以上で説明した本実施形態によれば、FPGA110の動作中にフラッシュメモリ130に新たなコンフィギュレーションデータが書き込まれると、チェック論理回路114によってそのデータが正しく書き込まれたか否かをチェックすることができる。従って、コンフィギュレーションデータの書き込みエラーを原因として、次回の電源投入等に行われるコンフィギュレーションにおいてFPGA110に動作不良が発生することを防止することができる。   According to the present embodiment described above, when new configuration data is written in the flash memory 130 during the operation of the FPGA 110, the check logic circuit 114 can check whether or not the data is correctly written. . Therefore, it is possible to prevent an operation failure from occurring in the FPGA 110 in the configuration performed at the next power-on or the like due to a configuration data write error.

また、本実施形態では、フラッシュメモリ130に書き込まれたコンフィギュレーションデータの誤り検出を、FPGA110の内部回路として構成したチェック論理回路114で行うものとした。従って、誤り検出専用のハードウェアを別途用意することなく、低コストに装置を構成することができる。特に、本実施形態では、コンフィギュレーションデータが正しく書き込まれたか否かの確認をチェックサムデータを用いて行うものとしたため、チェック論理回路114は、比較的単純な加算回路や比較回路によって実現することができる。従って、FPGA110の回路規模が増大することを抑制することができるので、FPGA110にチェック論理回路を追加することに伴うコストアップを抑制することができる。   In this embodiment, the error detection of the configuration data written in the flash memory 130 is performed by the check logic circuit 114 configured as an internal circuit of the FPGA 110. Therefore, the apparatus can be configured at low cost without separately preparing hardware dedicated to error detection. In particular, in this embodiment, the check logic circuit 114 is realized by a relatively simple addition circuit or comparison circuit because the check sum data is used to check whether the configuration data has been correctly written. Can do. Accordingly, an increase in the circuit scale of the FPGA 110 can be suppressed, so that an increase in cost associated with adding a check logic circuit to the FPGA 110 can be suppressed.

なお、上述したコンフィギュレーションデータ書き換え時の動作において、書き換え後のコンフィギュレーションデータに誤りが検出された場合には、CPU140は、再度、フラッシュメモリ130に新たなコンフィギュレーションデータを書き込むものとしたが、この再書き込みには、回数制限を設けるものとしてもよい。例えば、3回連続して書き込みに失敗した場合には、警告音を発したり、所定のLEDを点滅あるいは点灯したりするなどして、管理者に書き込みが正常に行えないことを報知するものとしてもよい。こうすることで、ハードウェアの不具合等によって正常な書き込みが行えないことを管理者に知らせることが可能になる。   In the operation at the time of rewriting the configuration data, when an error is detected in the rewritten configuration data, the CPU 140 writes new configuration data in the flash memory 130 again. This rewriting may be limited in number of times. For example, when writing fails three times in succession, a warning sound is emitted or a predetermined LED blinks or lights up to notify the administrator that writing cannot be performed normally. Also good. By doing so, it becomes possible to notify the administrator that normal writing cannot be performed due to a hardware defect or the like.

B.実施例:
(B1)ネットワークスイッチ装置の構成:
次に、上述した実施の形態を踏まえ、本発明のより具体的な実施例について説明する。
図3は、実施例としてのプログラマブル論理回路更新装置540を備えるネットワークスイッチ装置200の概略構成を示す説明図である。このネットワークスイッチ装置200は、いわゆるシャーシ型のネットワークスイッチ装置であり、内部に、CPUカード300と、スイッチ処理カード400と、複数の回線処理カード500とを備えている。本実施例では、回線処理カード500にプログラマブル論理回路更新装置540が備えられているものとする。ただし、CPUカード300やスイッチ処理カード400にもプログラマブル論理回路更新装置が備えられているものとしてもよい。
B. Example:
(B1) Configuration of network switch device:
Next, based on the above-described embodiment, more specific examples of the present invention will be described.
FIG. 3 is an explanatory diagram illustrating a schematic configuration of the network switch device 200 including the programmable logic circuit update device 540 as an embodiment. The network switch device 200 is a so-called chassis type network switch device, and includes a CPU card 300, a switch processing card 400, and a plurality of line processing cards 500 therein. In this embodiment, it is assumed that the line processing card 500 is provided with a programmable logic circuit update device 540. However, the CPU card 300 and the switch processing card 400 may be provided with a programmable logic circuit updating device.

CPUカード300は、ネットワークスイッチ装置200の全般的な統括制御を行うためのカードである。CPUカード300は、CPU310とRAM330とROM340と、CPUインタフェースとして機能するFPGA320とによって構成されている。ROM340にはファームウェアが格納されており、CPU310は、このファームウェアをRAM330に展開して実行することで種々の処理を行う。実行する処理としては、例えば、回線処理カード500が備えるFPGA520の回路内容の更新処理、図示していない外部機器や操作パネルからの設定操作の受け付け、ルーティングテーブルの維持管理、SNMP(Simple Network Management Protocol)プロトコルの処理、回線処理カード500が備える各回線ポート510の有効/無効あるいは回線速度の設定などといった処理がある。   The CPU card 300 is a card for performing overall control of the network switch device 200. The CPU card 300 includes a CPU 310, a RAM 330, a ROM 340, and an FPGA 320 that functions as a CPU interface. Firmware is stored in the ROM 340, and the CPU 310 performs various processes by developing the firmware in the RAM 330 and executing it. As the processing to be executed, for example, update processing of circuit contents of the FPGA 520 provided in the line processing card 500, acceptance of setting operation from an external device or operation panel (not shown), maintenance management of a routing table, SNMP (Simple Network Management Protocol) ) Protocol processing, processing for enabling / disabling each line port 510 provided in the line processing card 500, setting the line speed, and the like.

CPUカード300のRAM330には、各回線処理カード500に実装されたFPGA520の回路内容を更新するための新たなコンフィギュレーションデータが記憶されている。このコンフィギュレーションデータは、例えば、ネットワークやメモリカード、CD−ROM等の媒体を介してRAM330に入力することができる。   The RAM 330 of the CPU card 300 stores new configuration data for updating the circuit contents of the FPGA 520 mounted on each line processing card 500. The configuration data can be input to the RAM 330 via a medium such as a network, a memory card, or a CD-ROM, for example.

CPUカード300に実装されたFPGA320は、スイッチ処理カード400のFPGA420や各回線処理カード500のFPGA520とCPUバス360によって接続されている。上述したように、これらのFPGAは、それぞれ、CPU140との通信を仲介するインタフェース回路として機能する。   The FPGA 320 mounted on the CPU card 300 is connected to the FPGA 420 of the switch processing card 400 and the FPGA 520 of each line processing card 500 by the CPU bus 360. As described above, each of these FPGAs functions as an interface circuit that mediates communication with the CPU 140.

回線処理カード500は、それぞれがスイッチングハブとしての機能を備えるカードである。回線処理カード500は、複数の回線ポート510と、回線処理LSI530と、CPUインタフェースとして機能するFPGA520と、プログラマブル論理回路更新装置540とによって構成されている。回線処理LSI530は、各回線ポート510から入力したパケットのMACアドレスを解析して最適な回線ポート510にパケットの転送を行う。この回線処理LSI530は、スイッチ処理カード400のスイッチLSI410に、広帯域な通信路460を介して接続されている。回線処理LSI530は、入力したパケットが、自己の管理していないポート宛のパケットであれば、通信路460を通じてそのパケットをスイッチ処理カード400に転送する。   The line processing cards 500 are cards each having a function as a switching hub. The line processing card 500 includes a plurality of line ports 510, a line processing LSI 530, an FPGA 520 that functions as a CPU interface, and a programmable logic circuit update device 540. The line processing LSI 530 analyzes the MAC address of the packet input from each line port 510 and transfers the packet to the optimum line port 510. The line processing LSI 530 is connected to the switch LSI 410 of the switch processing card 400 via a broadband communication path 460. If the input packet is a packet addressed to a port that is not managed by the line processing LSI 530, the line processing LSI 530 transfers the packet to the switch processing card 400 through the communication path 460.

スイッチ処理カード400は、回線処理カード500から転送されたパケットを他の回線処理カード500に転送するためのカードである。スイッチ処理カード400は、スイッチLSI410とCPUインタフェースとして機能するFPGA420とによって構成されている。スイッチLSI410には、各回線処理カード500の回線処理LSI530が接続されている。スイッチLSI410は、ある回線処理カード500からパケットの転送を受けると、そのパケットの宛先を解析して、その宛先に適した回線処理カード500に対してそのパケットを転送する機能を備える。   The switch processing card 400 is a card for transferring a packet transferred from the line processing card 500 to another line processing card 500. The switch processing card 400 includes a switch LSI 410 and an FPGA 420 that functions as a CPU interface. A line processing LSI 530 of each line processing card 500 is connected to the switch LSI 410. When receiving a packet transfer from a certain line processing card 500, the switch LSI 410 has a function of analyzing the destination of the packet and transferring the packet to the line processing card 500 suitable for the destination.

(B2)プログラマブル論理回路更新装置の構成:
図4は、回線処理カード500が備えるプログラマブル論理回路更新装置540の詳細な構成を示す説明図である。プログラマブル論理回路更新装置540は、FPGA520と、更新制御回路542と、フラッシュメモリ544とから構成される。
(B2) Configuration of programmable logic circuit update device:
FIG. 4 is an explanatory diagram showing a detailed configuration of the programmable logic circuit updating device 540 included in the line processing card 500. The programmable logic circuit update device 540 includes an FPGA 520, an update control circuit 542, and a flash memory 544.

FPGA520は、内部回路として、CPUインタフェース論理回路522とチェック論理回路524とを備えている。CPUインタフェース論理回路522は、CPUカード300のCPU140と回線処理カード500とを接続するためのインタフェース回路である。このCPUインタフェース論理回路522は、バッファ領域として512バイト分の内蔵RAM523を備えている。チェック論理回路524は、上述した実施形態のチェック論理回路114と同様に、フラッシュメモリ544に記憶されたコンフィギュレーションデータの誤り検出を行うための回路である。チェック論理回路524は、CPU310からの種々の指令の受け付けや、誤り検出の結果を保存するためのレジスタ525を内部に備えている。CPUインタフェース論理回路522とチェック論理回路524とは、FPGA520が、フラッシュメモリ544に記憶されたコンフィギュレーションデータを読み込むことで構成される。   The FPGA 520 includes a CPU interface logic circuit 522 and a check logic circuit 524 as internal circuits. The CPU interface logic circuit 522 is an interface circuit for connecting the CPU 140 of the CPU card 300 and the line processing card 500. The CPU interface logic circuit 522 includes a 512-byte built-in RAM 523 as a buffer area. The check logic circuit 524 is a circuit for detecting an error in the configuration data stored in the flash memory 544, like the check logic circuit 114 of the above-described embodiment. The check logic circuit 524 includes a register 525 for receiving various commands from the CPU 310 and storing the result of error detection. The CPU interface logic circuit 522 and the check logic circuit 524 are configured by the FPGA 520 reading configuration data stored in the flash memory 544.

更新制御回路542は、上述した実施形態の更新制御回路120と同等の機能を備える。すなわち、回線処理カード500の電源投入時に、制御信号線552を用いてFPGA520にコンフィギュレーションを行わせる機能と、CPUカード300からCPUインタフェース論理回路522を介して転送された新たなコンフィギュレーションデータを、フラッシュメモリ544に中継する機能とを備える。本実施例の更新制御回路542は、不揮発性のプログラマブル論理回路であるCPLDによって構成されている。   The update control circuit 542 has a function equivalent to that of the update control circuit 120 of the above-described embodiment. That is, when the power of the line processing card 500 is turned on, a function for causing the FPGA 520 to perform configuration using the control signal line 552 and new configuration data transferred from the CPU card 300 via the CPU interface logic circuit 522, A function of relaying to the flash memory 544. The update control circuit 542 of this embodiment is configured by a CPLD that is a nonvolatile programmable logic circuit.

CPUインタフェース論理回路522と更新制御回路542とは、ローカルバス551によって接続されている。また、チェック論理回路524と更新制御回路542とは、データ信号線553と、要求信号線554と、応答信号線555とによって接続されている。更新制御回路542とフラッシュメモリ544とは、フラッシュインタフェース556によって接続されている。   The CPU interface logic circuit 522 and the update control circuit 542 are connected by a local bus 551. The check logic circuit 524 and the update control circuit 542 are connected by a data signal line 553, a request signal line 554, and a response signal line 555. The update control circuit 542 and the flash memory 544 are connected by a flash interface 556.

(B3)コンフィギュレーションデータ更新時の動作:
図5は、本実施例のプログラマブル論理回路更新装置540において、コンフィギュレーションデータを更新する際の動作の流れを示すフローチャートである。
(B3) Operation when updating configuration data:
FIG. 5 is a flowchart showing an operation flow when the configuration data is updated in the programmable logic circuit update device 540 of the present embodiment.

まず、CPUカード300に実装されたCPU310は、フラッシュメモリ544内に記憶された更新前のコンフィギュレーションデータの消去を行う(ステップS200)。   First, the CPU 310 mounted on the CPU card 300 erases the configuration data before update stored in the flash memory 544 (step S200).

次に、CPU310は、CPUカード300上のRAM340に記憶された新たなコンフィギュレーションデータを512バイト単位に分割し、分割した各データを、回線処理カード500のCPUインタフェース論理回路522に送信する。CPUインタフェース論理回路522は、このデータの転送を受けると、一旦、内蔵RAM523にバッファリングし、これを、順次、フラッシュメモリ544に書き込む(ステップS210)。なお、本実施例では、RAM340に記憶されている新たなコンフィギュレーションの先頭には、このコンフィギュレーションデータから予め計算されたチェックサムデータが付加されているものとする。   Next, the CPU 310 divides the new configuration data stored in the RAM 340 on the CPU card 300 into units of 512 bytes, and transmits the divided data to the CPU interface logic circuit 522 of the line processing card 500. Upon receiving this data transfer, the CPU interface logic circuit 522 once buffers the built-in RAM 523 and sequentially writes it in the flash memory 544 (step S210). In this embodiment, it is assumed that checksum data calculated in advance from this configuration data is added to the head of the new configuration stored in the RAM 340.

CPUインタフェース論理回路522は、512バイトのデータの書き込みが完了したと判断すると(ステップS220:Yes)、その旨をCPU310に通知する。CPU310は、この通知を受けると、全てのデータの書き込みが完了したかを判断し(ステップS230)、完了していなければ(ステップS230:No)、次の512バイトのデータをCPUインタフェース論理回路522に転送し、書き込みを行う。   When the CPU interface logic circuit 522 determines that the writing of 512-byte data has been completed (step S220: Yes), it notifies the CPU 310 accordingly. Upon receiving this notification, the CPU 310 determines whether or not writing of all data has been completed (step S230). If not completed (step S230: No), the CPU interface logic circuit 522 transfers the next 512-byte data. Transfer to and write.

上記ステップS230において、CPU310が、全てのデータの書き込みが完了したと判断すると(ステップS230:Yes)、続いて、書き込みを行った新たなコンフィギュレーションデータのサイズをチェック論理回路524のレジスタに設定する(ステップS240)。チェック論理回路524は、この設定を受けると、要求信号線554を駆動して、更新制御回路542に対して上記ステップS240で設定を受けたサイズ分のコンフィギュレーションデータの転送を要求する(ステップS250)。更新制御回路542は、この要求を受けると、コンフィギュレーションデータの転送の準備が完了次第、応答信号線555を駆動し、これからデータの転送を開始する旨をチェック論理回路524に通知する。かかる通知の後、更新制御回路542は、フラッシュメモリ544からコンフィギュレーションデータを読み出し、データ信号線553を介して、チェック論理回路524に新たなコンフィギュレーションデータを転送する(ステップS260)。チェック論理回路524は、このデータの転送を受けて、コンフィグレーションデータの誤り検出を実行する(ステップS270)。   In step S230, when the CPU 310 determines that all the data has been written (step S230: Yes), the size of the new configuration data that has been written is set in the register of the check logic circuit 524. (Step S240). Upon receiving this setting, the check logic circuit 524 drives the request signal line 554 to request the update control circuit 542 to transfer configuration data for the size set in step S240 (step S250). ). Upon receipt of this request, the update control circuit 542 drives the response signal line 555 as soon as the preparation for transferring the configuration data is completed, and notifies the check logic circuit 524 that data transfer will be started. After such notification, the update control circuit 542 reads the configuration data from the flash memory 544 and transfers new configuration data to the check logic circuit 524 via the data signal line 553 (step S260). Upon receiving this data transfer, the check logic circuit 524 executes configuration data error detection (step S270).

上述したように、フラッシュメモリ544に記憶された新たなコンフィギュレーションデータの先頭には、予め計算されたチェックサムデータが付加されている。従って、チェック論理回路524は、更新制御回路542からコンフィギュレーションデータの転送を受けると、まず、このチェックサムデータをコンフィギュレーションデータから分離し、その値を保持しておく。そして、データ信号線553を通じて受信したコンフィギュレーションデータの各値を加算していく。そして、その総計から算出されるチェックサムデータと、保持しておいたチェックサムデータの値とが一致しているかを確認する。これらの値が一致すれば、コンフィギュレーションデータが正しくフラッシュメモリ544に書き込まれていることになる。   As described above, checksum data calculated in advance is added to the head of new configuration data stored in the flash memory 544. Accordingly, when the check logic circuit 524 receives the transfer of the configuration data from the update control circuit 542, first, the check logic circuit 524 separates the checksum data from the configuration data and holds the value. Then, the values of the configuration data received through the data signal line 553 are added. Then, it is checked whether the checksum data calculated from the total matches the value of the stored checksum data. If these values match, the configuration data is correctly written in the flash memory 544.

以上の処理によって、書き換え後のコンフィギュレーションデータの誤り検出が完了すると、チェック論理回路524は、誤り検出の結果をレジスタ525に書き込み(ステップS280)、CPU310に誤り検出が完了した旨を通知する。   When the error detection of the rewritten configuration data is completed by the above processing, the check logic circuit 524 writes the error detection result in the register 525 (step S280), and notifies the CPU 310 that the error detection is completed.

CPU310は、チェック論理回路524から誤り検出が完了した旨の通知を受けると、レジスタ525に記録された検出結果を読み込む(ステップS290)。そして、この読み込みの結果、コンフィギュレーションデータに誤りなしと判断すれば(ステップS300:Yes)、更新制御回路542に指示を与え、FPGA520のコンフィギュレーションを行わせる(ステップS310)。これに対して、コンフィグレーションデータに誤りがあると判断すれば(ステップS300:No)、コンフィギュレーションデータが正しくフラッシュメモリ544に書き込まれていないことになるため、再度、上記ステップS200から処理をやり直す。こうすることで、新たなコンフィギュレーションデータが正しくフラッシュメモリ544に書き込まれるまで、上述した一連の処理が繰り返し実行されることになる。   When the CPU 310 receives a notification that the error detection is completed from the check logic circuit 524, the CPU 310 reads the detection result recorded in the register 525 (step S290). As a result of this reading, if it is determined that there is no error in the configuration data (step S300: Yes), an instruction is given to the update control circuit 542 to cause the FPGA 520 to be configured (step S310). On the other hand, if it is determined that there is an error in the configuration data (step S300: No), the configuration data is not correctly written in the flash memory 544. Therefore, the processing is restarted from step S200. . By doing so, the above-described series of processing is repeatedly executed until new configuration data is correctly written in the flash memory 544.

なお、本実施例においても、上述した実施形態と同様に、新たなコンフィギュレーションデータが正しく書き込めなかった場合において、フラッシュメモリ544に対する再書き込み回数を制限するものとしてもよい。また、上記ステップS310で実行されるコンフィギュレーションは、CPUインタフェース論理回路522が機能を停止しているタイミングや、回線処理カード500の電源が再投入されるタイミングで実行することができる。また、上記ステップS270によってチェック論理回路524が誤り検出を行った結果、その判断結果が、「誤りなし」であれば、各回線処理カード500は、CPU310からの指示を待つことなく、自立的にFPGA520のコンフィギュレーションを行うものとすることができる。   In the present embodiment, similarly to the above-described embodiment, the number of rewrites to the flash memory 544 may be limited when new configuration data cannot be written correctly. The configuration executed in step S310 can be executed when the CPU interface logic circuit 522 stops functioning or when the line processing card 500 is turned on again. If the check logic circuit 524 detects an error in step S270 and the determination result is “no error”, each line processing card 500 autonomously waits for an instruction from the CPU 310. The FPGA 520 can be configured.

以上で説明した実施例によれば、ネットワークスイッチ装置200が備える複数の回線処理カード500が、それぞれ自立的に新たなコンフィギュレーションデータのチェックを行うことになる。従って、CPU310にかかる処理負担が軽減される。この結果、CPU310は、早期に、コンフィギュレーションデータの更新処理から解放されるため、自身が本来実行すべき処理(例えば、SNMPプロトコルの処理、設定操作の受け付け等)に早期に復帰することができる。   According to the embodiment described above, the plurality of line processing cards 500 included in the network switch device 200 each independently check for new configuration data. Therefore, the processing load on the CPU 310 is reduced. As a result, since the CPU 310 is released from the configuration data update process at an early stage, the CPU 310 can quickly return to a process that should be executed by itself (for example, SNMP protocol process, accepting a setting operation). .

また、本実施例では、CPU310が書き換え後のコンフィギュレーションデータをチェックするのではなく、各回線処理カード500が自立的に書き換え後のコンフィギュレーションデータをチェックするため、各回線処理カード500は、CPU310によるチェック等を待たずに即座に自己が備えるFPGA520の更新を行うことができる。従って、回線処理カード500の更新自体が高速になり、FPGA520の更新を即座に行わないとネットワークスイッチ装置200の実運用に支障をきたすような状況においても、迅速に対応することが可能になる。   In the present embodiment, each line processing card 500 does not check the rewritten configuration data, but each line processing card 500 autonomously checks the rewritten configuration data. It is possible to immediately update the FPGA 520 included in the self without waiting for the check or the like. Therefore, the update of the line processing card 500 itself becomes faster, and it is possible to quickly cope with a situation where the actual operation of the network switch device 200 is hindered unless the FPGA 520 is updated immediately.

また、本実施例では、CPUインタフェース論理回路522が備える内蔵RAM523を利用して512バイト毎にコンフィギュレーションデータの転送を行うので、データの書き換え時にCPUバス360を長期間占有することがない。従って、CPUバス360を利用した他の処理に対する影響を抑制しつつ、効率的にフラッシュメモリ544に対する書き込みを行うことができる。   In this embodiment, the configuration data is transferred every 512 bytes by using the built-in RAM 523 provided in the CPU interface logic circuit 522. Therefore, the CPU bus 360 is not occupied for a long time when data is rewritten. Therefore, it is possible to efficiently write to the flash memory 544 while suppressing the influence on other processes using the CPU bus 360.

また、本実施例においても、FPGA520の動作中に、新たなコンフィギュレーションデータが正しく書き込まれたかをチェックすることができるので、コンフィギュレーションデータの書き込みエラーに伴って、次回の電源投入時にFPGA520が動作不良となることを防止することができる。   Also in this embodiment, since it is possible to check whether new configuration data has been correctly written during the operation of the FPGA 520, the FPGA 520 will operate when the power is turned on next time due to a configuration data write error. It can be prevented from becoming defective.

以上、本発明の実施の形態および実施例について説明したが、本発明はこれらの例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば、上述した実施形態や実施例では、コンフィギュレーションデータの誤り検出にチェックサムデータを用いるものとしたが、その他にも、例えば、CRCデータやパリティデータを利用することができる。また、チェックサムデータやCRCデータ、パリティデータ等のうち2以上のデータを組み合わせて誤り検出を行うことも可能である。   As mentioned above, although embodiment and Example of this invention were described, it cannot be overemphasized that this invention is not limited to these examples, and can take a various structure in the range which does not deviate from the meaning. For example, in the above-described embodiments and examples, checksum data is used for configuration data error detection. In addition, for example, CRC data and parity data can be used. It is also possible to detect errors by combining two or more of checksum data, CRC data, parity data, and the like.

実施形態としてのプログラマブル論理回路更新装置100の概略構成を示す説明図である。It is explanatory drawing which shows schematic structure of the programmable logic circuit update apparatus 100 as embodiment. 実施形態においてコンフィギュレーションデータを更新する際の動作の流れを示すフローチャートである。It is a flowchart which shows the flow of operation | movement at the time of updating configuration data in embodiment. 実施例としてのプログラマブル論理回路更新装置540を備えるネットワークスイッチ装置200の概略構成を示す説明図である。It is explanatory drawing which shows schematic structure of the network switch apparatus 200 provided with the programmable logic circuit update apparatus 540 as an Example. 回線処理カード500が備えるプログラマブル論理回路更新装置540の詳細な構成を示す説明図である。It is explanatory drawing which shows the detailed structure of the programmable logic circuit update apparatus 540 with which the line processing card 500 is provided. 実施例においてコンフィギュレーションデータを更新する際の動作の流れを示すフローチャートである。It is a flowchart which shows the flow of operation | movement at the time of updating configuration data in an Example.

符号の説明Explanation of symbols

100…プログラマブル論理回路更新装置
110…FPGA
112…主機能論理回路
114…チェック論理回路
120…更新制御回路
122…制御信号線
124…データ信号線
126…要求信号線
130…フラッシュメモリ
135…フラッシュインタフェース
140…CPU
145…CPUバス
150…RAM
155…メモリバス
200…ネットワークスイッチ装置
300…CPUカード
310…CPU
320…FPGA
330…RAM
340…ROM
360…CPUバス
400…スイッチ処理カード
410…スイッチLSI
420…FPGA
460…通信路
500…回線処理カード
510…回線ポート
520…FPGA
522…CPUインタフェース論理回路
523…内蔵RAM
524…チェック論理回路
525…レジスタ
530…回線処理LSI
540…プログラマブル論理回路更新装置
542…更新制御回路
544…フラッシュメモリ
551…ローカルバス
552…制御信号線
553…データ信号線
554…要求信号線
555…応答信号線
556…フラッシュインタフェース
DESCRIPTION OF SYMBOLS 100 ... Programmable logic circuit update apparatus 110 ... FPGA
DESCRIPTION OF SYMBOLS 112 ... Main function logic circuit 114 ... Check logic circuit 120 ... Update control circuit 122 ... Control signal line 124 ... Data signal line 126 ... Request signal line 130 ... Flash memory 135 ... Flash interface 140 ... CPU
145 ... CPU bus 150 ... RAM
155 ... Memory bus 200 ... Network switch device 300 ... CPU card 310 ... CPU
320 ... FPGA
330 ... RAM
340 ... ROM
360 ... CPU bus 400 ... switch processing card 410 ... switch LSI
420 ... FPGA
460 ... Communication channel 500 ... Line processing card 510 ... Line port 520 ... FPGA
522: CPU interface logic circuit 523: Built-in RAM
524: Check logic circuit 525: Register 530: Line processing LSI
540 ... Programmable logic circuit update device 542 ... Update control circuit 544 ... Flash memory 551 ... Local bus 552 ... Control signal line 553 ... Data signal line 554 ... Request signal line 555 ... Response signal line 556 ... Flash interface

Claims (7)

プログラマブル論理回路の回路構成を更新するプログラマブル論理回路更新装置であって、
所定のメモリに記憶されたコンフィギュレーションデータを読み込み、該コンフィギュレーションデータに基づいて、所定の機能を有する主論理回路と、前記メモリに記憶されたコンフィギュレーションデータの誤り検出を行うチェック論理回路とを実現するプログラマブル論理回路と、
前記メモリに、新たなコンフィギュレーションデータと、該新たなコンフィギュレーションデータに基づいて定まる誤り検出データとを書き込む書込部と、
前記チェック論理回路によって前記新たなコンフィギュレーションデータの誤り検出を行った結果、該新たなコンフィギュレーションデータに誤りが検出されなかった場合に、該新たなコンフィギュレーションデータに基づき、前記プログラマブル論理回路に回路構成を更新させる更新部とを備え、
前記チェック論理回路は、前記書込部によって前記新たなコンフィギュレーションデータと前記誤り検出データとが前記メモリに書き込まれた場合に、前記メモリから該新たなコンフィギュレーションデータを読み出して該コンフィギュレーションデータに基づき誤り検出データを算出し、該算出した誤り検出データと、前記書込部によって前記メモリに書き込まれた前記誤り検出データとを比較することで、前記メモリに書き込まれた新たなコンフィギュレーションデータの誤り検出を行う
プログラマブル論理回路更新装置。
A programmable logic circuit updating device for updating a circuit configuration of a programmable logic circuit,
A main logic circuit having a predetermined function is read based on the configuration data, and a check logic circuit for detecting an error in the configuration data stored in the memory, based on the configuration data. A programmable logic circuit to be realized;
A writing unit for writing new configuration data and error detection data determined based on the new configuration data to the memory;
If no error is detected in the new configuration data as a result of the error detection of the new configuration data by the check logic circuit, a circuit is connected to the programmable logic circuit based on the new configuration data. An update unit for updating the configuration,
The check logic circuit, when the new configuration data and the error detection data are written to the memory by the writing unit, reads the new configuration data from the memory and converts it into the configuration data. The error detection data is calculated based on the calculated error detection data, and the error detection data written to the memory by the writing unit is compared with the new configuration data written to the memory. Programmable logic circuit update device that performs error detection.
請求項1に記載のプログラマブル論理回路更新装置であって、
前記チェック論理回路は、前記誤り検出の結果、前記新たなコンフィギュレーションデータに誤りを検出した場合に、前記書込部に、再度、前記新たなコンフィギュレーションデータと前記誤り検出データとを書き込ませる
プログラマブル論理回路更新装置。
The programmable logic circuit updating device according to claim 1,
The check logic circuit causes the writing unit to write the new configuration data and the error detection data again when an error is detected in the new configuration data as a result of the error detection. Logic circuit update device.
請求項1または2に記載のプログラマブル論理回路更新装置であって、
前記誤り検出データは、前記新たなコンフィギュレーションデータから算出されたチェックサムデータ、CRCデータ、および、パリティデータのうち、いずれかのデータ、または、これらのデータを2以上組み合わせたデータである
プログラマブル論理回路更新装置。
The programmable logic circuit updating device according to claim 1 or 2,
The error detection data is any one of checksum data, CRC data, and parity data calculated from the new configuration data, or data obtained by combining two or more of these data. Programmable logic Circuit update device.
請求項1ないし請求項3のいずれかに記載のプログラマブル論理回路更新装置であって、
前記プログラマブル論理回路は、フィールドプログラマブルゲートアレイである
プログラマブル論理回路更新装置。
The programmable logic circuit update device according to any one of claims 1 to 3,
The programmable logic circuit is a field programmable gate array.
プログラマブル論理回路の回路構成を更新する更新方法であって、
前記プログラマブル論理回路が、所定のメモリに記憶されたコンフィギュレーションデータを読み込み、該コンフィギュレーションデータに基づいて、所定の機能を有する主論理回路と、前記メモリに記憶されたコンフィギュレーションデータの誤り検出を行うチェック論理回路とを実現し、
所定の書込部が、前記メモリに、新たなコンフィギュレーションデータと、該新たなコンフィギュレーションデータに基づいて定まる誤り検出データとを書き込み、
前記書込部によって前記新たなコンフィギュレーションデータと前記誤り検出データとが前記メモリに書き込まれた場合に、前記チェック論理回路が、前記メモリから前記新たなコンフィギュレーションデータを読み出して該コンフィギュレーションデータに基づき誤り検出データを算出し、該算出した誤り検出データと、前記メモリに書き込まれた前記誤り検出データとを比較して、前記メモリに書き込まれた新たなコンフィギュレーションデータの誤り検出を行い、
前記チェック論理回路による誤り検出の結果、前記新たなコンフィギュレーションデータに誤りが検出されなかった場合に、該新たなコンフィギュレーションデータに基づき、前記プログラマブル論理回路に回路構成を更新させる
更新方法。
An update method for updating a circuit configuration of a programmable logic circuit,
The programmable logic circuit reads configuration data stored in a predetermined memory, and based on the configuration data, detects an error in the main logic circuit having a predetermined function and the configuration data stored in the memory. The check logic circuit to perform,
A predetermined writing unit writes new configuration data and error detection data determined based on the new configuration data to the memory;
When the new configuration data and the error detection data are written to the memory by the writing unit, the check logic circuit reads the new configuration data from the memory and uses the new configuration data as the configuration data. Calculating error detection data based on the error detection data, comparing the calculated error detection data with the error detection data written to the memory, and performing error detection of the new configuration data written to the memory;
An update method for causing the programmable logic circuit to update a circuit configuration based on the new configuration data when no error is detected in the new configuration data as a result of error detection by the check logic circuit.
請求項1ないし請求項4のいずれかに記載のプログラマブル論理回路更新装置を備えるデータ処理装置であって、
前記主論理回路は、入力したデータに対して所定のデータ処理を行って出力するものである
データ処理装置。
A data processing device comprising the programmable logic circuit updating device according to any one of claims 1 to 4,
The data processing device, wherein the main logic circuit performs predetermined data processing on input data and outputs the processed data.
プログラマブル論理回路を備えるネットワーク装置であって、
それぞれ前記プログラマブル論理回路を有すると共に、複数の回線ポートを備え、該回線ポートのいずれかから入力したネットワークパケットを、該ネットワークパケットの宛先に応じて他の回線ポートに転送する複数の回線処理カードと、
前記各回線処理カードの統括管理を行うCPUとを備え、
前記各回線処理カードのプログラマブル論理回路は、該各回線処理カードに搭載された所定のメモリからコンフィギュレーションデータを読み込み、該コンフィギュレーションデータに基づいて、該回線処理カードと前記CPUとの接続を行うインタフェース論理回路と、前記メモリに記憶されたコンフィギュレーションデータの誤り検出を行うチェック論理回路とを実現し、
前記CPUは、
前記インタフェース論理回路を介して、前記各回線処理カードに搭載されたメモリに、新たなコンフィギュレーションデータと、該新たなコンフィギュレーションデータに基づいて定まる誤り検出データとを書き込む手段と、
前記チェック論理回路によって前記新たなコンフィギュレーションデータの誤り検出を行った結果、前記新たなコンフィギュレーションデータに誤りが検出されなかった場合に、該新たなコンフィギュレーションデータに基づき、前記プログラマブル論理回路に回路構成を更新させる手段とを備え、
前記チェック論理回路は、前記CPUによって前記新たなコンフィギュレーションデータと前記誤り検出データとが前記メモリに書き込まれた場合に、前記メモリから該新たなコンフィギュレーションデータを読み出して該コンフィギュレーションデータに基づき誤り検出データを算出し、該算出した誤り検出データと、前記CPUによって前記メモリに書き込まれた前記誤り検出データとを比較することで、前記メモリに書き込まれた新たなコンフィギュレーションデータの誤り検出を行う
ネットワーク装置。
A network device comprising a programmable logic circuit,
A plurality of line processing cards each having the programmable logic circuit, including a plurality of line ports, and transferring a network packet input from any of the line ports to another line port according to the destination of the network packet; ,
A CPU that performs overall management of each line processing card,
The programmable logic circuit of each line processing card reads configuration data from a predetermined memory mounted on each line processing card, and connects the line processing card and the CPU based on the configuration data. An interface logic circuit and a check logic circuit for detecting an error in the configuration data stored in the memory are realized,
The CPU
Means for writing new configuration data and error detection data determined based on the new configuration data to the memory mounted on each line processing card via the interface logic circuit;
If no error is detected in the new configuration data as a result of detecting the error in the new configuration data by the check logic circuit, a circuit is connected to the programmable logic circuit based on the new configuration data. Means for updating the configuration,
The check logic circuit, when the new configuration data and the error detection data are written to the memory by the CPU, reads the new configuration data from the memory and performs an error based on the configuration data. The detection data is calculated, and the error detection data newly written in the memory is detected by comparing the calculated error detection data with the error detection data written in the memory by the CPU. Network device.
JP2006226086A 2006-08-23 2006-08-23 Programmable logic circuit update device, update method, data processor and network equipment Pending JP2008052389A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006226086A JP2008052389A (en) 2006-08-23 2006-08-23 Programmable logic circuit update device, update method, data processor and network equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006226086A JP2008052389A (en) 2006-08-23 2006-08-23 Programmable logic circuit update device, update method, data processor and network equipment

Publications (1)

Publication Number Publication Date
JP2008052389A true JP2008052389A (en) 2008-03-06

Family

ID=39236407

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006226086A Pending JP2008052389A (en) 2006-08-23 2006-08-23 Programmable logic circuit update device, update method, data processor and network equipment

Country Status (1)

Country Link
JP (1) JP2008052389A (en)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010166488A (en) * 2009-01-19 2010-07-29 Alaxala Networks Corp Network relaying apparatus
JP2010170240A (en) * 2009-01-21 2010-08-05 Fujitsu Telecom Networks Ltd Revision management system of configuration data
CN101587353B (en) * 2008-05-23 2011-06-22 深圳市先阳软件技术有限公司 Constant tension controller and control method for winding equipment
JP2012038305A (en) * 2010-08-05 2012-02-23 Freescale Semiconductor Inc Data processing system having error detection of set information of peripheral device
JP2012190368A (en) * 2011-03-13 2012-10-04 Sii Network Systems Kk Configuration redundancy apparatus and configuration method
JP2013025437A (en) * 2011-07-19 2013-02-04 Hitachi Cable Ltd Fpga system and electronic equipment
CN103513994A (en) * 2012-06-19 2014-01-15 记忆科技(深圳)有限公司 Method and system for carrying out FPGA on-line upgrading through PCIE
CN104050067A (en) * 2014-05-23 2014-09-17 北京兆易创新科技股份有限公司 Method and device for operation of FPGA (Field Programmable Gate Array) in MCU (Microprogrammed Control Unit) chip
JP2014174812A (en) * 2013-03-11 2014-09-22 Ricoh Co Ltd Integrated circuit, image processing device, method and program
US9117047B2 (en) 2013-11-28 2015-08-25 Fujitsu Limited Diagnosis device, control method of diagnosis device, and recording medium
JP2017027133A (en) * 2015-07-16 2017-02-02 東芝ディーエムエス株式会社 Configuration rom upgrading apparatus and configuration rom upgrading method
WO2018131065A1 (en) * 2017-01-10 2018-07-19 株式会社日立製作所 Reconfigurable device and electronic device using same
CN109542492A (en) * 2018-12-03 2019-03-29 郑州云海信息技术有限公司 A kind of method, system and the equipment of FPGA board online updating
EP3605335A4 (en) * 2017-03-21 2020-04-22 Nec Corporation Integrated circuit system, startup control method for integrated circuit system, and startup control program
CN111259459A (en) * 2020-02-20 2020-06-09 福建师范大学 Deployment, storage, acquisition and arbitration method for important data in mobile terminal
WO2020165944A1 (en) * 2019-02-12 2020-08-20 三菱電機株式会社 Programmable device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000020425A (en) * 1998-07-01 2000-01-21 Toyo Commun Equip Co Ltd Method for updating stored contents in terminal network on communication network
JP2002169602A (en) * 2000-11-30 2002-06-14 Matsushita Electric Works Ltd General-purpose functional circuit and general-purpose unit for programmable controller
JP2003132010A (en) * 2001-07-30 2003-05-09 Hewlett Packard Co <Hp> Method and apparatus for bridge connection between jtag bus and serial bus
JP2004252855A (en) * 2003-02-21 2004-09-09 Nec Saitama Ltd Programmable logic device and identification display system of information written in the same
JP2005018474A (en) * 2003-06-26 2005-01-20 Nec Corp System and method for downloading software
JP2006113743A (en) * 2004-10-13 2006-04-27 Oki Techno Creation:Kk Information processing system, information processing method and information processing program

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000020425A (en) * 1998-07-01 2000-01-21 Toyo Commun Equip Co Ltd Method for updating stored contents in terminal network on communication network
JP2002169602A (en) * 2000-11-30 2002-06-14 Matsushita Electric Works Ltd General-purpose functional circuit and general-purpose unit for programmable controller
JP2003132010A (en) * 2001-07-30 2003-05-09 Hewlett Packard Co <Hp> Method and apparatus for bridge connection between jtag bus and serial bus
JP2004252855A (en) * 2003-02-21 2004-09-09 Nec Saitama Ltd Programmable logic device and identification display system of information written in the same
JP2005018474A (en) * 2003-06-26 2005-01-20 Nec Corp System and method for downloading software
JP2006113743A (en) * 2004-10-13 2006-04-27 Oki Techno Creation:Kk Information processing system, information processing method and information processing program

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101587353B (en) * 2008-05-23 2011-06-22 深圳市先阳软件技术有限公司 Constant tension controller and control method for winding equipment
JP2010166488A (en) * 2009-01-19 2010-07-29 Alaxala Networks Corp Network relaying apparatus
JP2010170240A (en) * 2009-01-21 2010-08-05 Fujitsu Telecom Networks Ltd Revision management system of configuration data
JP2012038305A (en) * 2010-08-05 2012-02-23 Freescale Semiconductor Inc Data processing system having error detection of set information of peripheral device
JP2012190368A (en) * 2011-03-13 2012-10-04 Sii Network Systems Kk Configuration redundancy apparatus and configuration method
JP2013025437A (en) * 2011-07-19 2013-02-04 Hitachi Cable Ltd Fpga system and electronic equipment
CN103513994A (en) * 2012-06-19 2014-01-15 记忆科技(深圳)有限公司 Method and system for carrying out FPGA on-line upgrading through PCIE
JP2014174812A (en) * 2013-03-11 2014-09-22 Ricoh Co Ltd Integrated circuit, image processing device, method and program
US9117047B2 (en) 2013-11-28 2015-08-25 Fujitsu Limited Diagnosis device, control method of diagnosis device, and recording medium
CN104050067A (en) * 2014-05-23 2014-09-17 北京兆易创新科技股份有限公司 Method and device for operation of FPGA (Field Programmable Gate Array) in MCU (Microprogrammed Control Unit) chip
JP2017027133A (en) * 2015-07-16 2017-02-02 東芝ディーエムエス株式会社 Configuration rom upgrading apparatus and configuration rom upgrading method
WO2018131065A1 (en) * 2017-01-10 2018-07-19 株式会社日立製作所 Reconfigurable device and electronic device using same
EP3605335A4 (en) * 2017-03-21 2020-04-22 Nec Corporation Integrated circuit system, startup control method for integrated circuit system, and startup control program
US10778225B2 (en) 2017-03-21 2020-09-15 Nec Corporation Integrated circuit system, startup control method for integrated circuit system, and startup control program
CN109542492A (en) * 2018-12-03 2019-03-29 郑州云海信息技术有限公司 A kind of method, system and the equipment of FPGA board online updating
WO2020165944A1 (en) * 2019-02-12 2020-08-20 三菱電機株式会社 Programmable device
JPWO2020165944A1 (en) * 2019-02-12 2021-11-04 三菱電機株式会社 Programmable device
JP7142731B2 (en) 2019-02-12 2022-09-27 三菱電機株式会社 programmable device
CN111259459A (en) * 2020-02-20 2020-06-09 福建师范大学 Deployment, storage, acquisition and arbitration method for important data in mobile terminal

Similar Documents

Publication Publication Date Title
JP2008052389A (en) Programmable logic circuit update device, update method, data processor and network equipment
US11650829B2 (en) Network switch recovery after reboot
US9313364B2 (en) Image processing apparatus and control method for the same
WO2021098485A1 (en) Method and system for power-on and power-off control of pcie device
US10579469B2 (en) Interconnection network for integrated circuit
US20120011423A1 (en) Silent error detection in sram-based fpga devices
US9495178B2 (en) Electronics apparatus able to revise micro-program and algorithm to revise micro-program
WO2009107212A1 (en) Storage device, storage controller, and method for controlling storage
JP2019160238A (en) Memory interface and memory system
JP2009508243A (en) Reconfigurable circuit with reconfigurable spare cluster
US7984323B2 (en) Apparatus, system, and method for providing a backup configuration image to a programmable hardware device
JP2013257640A (en) Configuration controller, configuration control method and configuration control program
US10846179B2 (en) Hitless repair for network device components
US9237096B2 (en) Network relay apparatus
JP2009065547A (en) Semiconductor integrated circuit device and storage device equipped with same
TW201346529A (en) Signal processing circuit and testing apparatus using the same
CN117608883A (en) Method and system for detecting computer system start-up fault in prototype verification
JP2009176232A (en) Starting device, starting method, and starting program
US8291270B2 (en) Request processing device, request processing system, and access testing method
US20220342749A1 (en) Data integrity verification
US20210281527A1 (en) Line monitor device and network switch
CN113923173B (en) Quick starting recovery method for data surface of network switching equipment
JP2015216507A (en) Device for mounting fpga
JP2016212460A (en) Programmable device, information processing device, and method for controlling processing circuit in programmable device
JP6435884B2 (en) Information processing apparatus and abnormality detection method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110913

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111129

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120214