WO2014115289A1 - Programmable device and electronic syst em device - Google Patents

Programmable device and electronic syst em device Download PDF

Info

Publication number
WO2014115289A1
WO2014115289A1 PCT/JP2013/051517 JP2013051517W WO2014115289A1 WO 2014115289 A1 WO2014115289 A1 WO 2014115289A1 JP 2013051517 W JP2013051517 W JP 2013051517W WO 2014115289 A1 WO2014115289 A1 WO 2014115289A1
Authority
WO
WIPO (PCT)
Prior art keywords
error
configuration memory
programmable device
unit
electronic system
Prior art date
Application number
PCT/JP2013/051517
Other languages
French (fr)
Japanese (ja)
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 PCT/JP2013/051517 priority Critical patent/WO2014115289A1/en
Publication of WO2014115289A1 publication Critical patent/WO2014115289A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant

Definitions

  • the present invention relates to a programmable device and an electronic system apparatus.
  • Patent Document 1 As background art in this technical field, there is JP 2005-505827 A (Patent Document 1).
  • Programmable logic resource configuration data is loaded into a cyclic redundancy check (CRC) module, where checksum calculation is performed.
  • CRC cyclic redundancy check
  • the check The sum is compared to an expected value, which is pre-computed by a checksum on the data before or during programming into the programmable logic resource.
  • the expected value is calculated during the checksum calculation.
  • An output is formed indicating whether an error has been detected according to the relationship between the checksum and the expected value, or the numerical value of the checksum itself, which is transmitted to an output terminal accessible by the user logic. It is described.
  • Patent Document 2 JP-A-2007-293856
  • Patent Document 3 JP-A-2007-293856
  • a logic integrated circuit having a dynamic replacement function for reconfiguring a circuit that can be reconfigured by a program in response to detection of an error in the fixed circuit into a function of the fixed circuit each of which includes a plurality of functional circuits.
  • a programmable bus that connects between the plurality of fixed circuits divided into blocks, and a plurality of functional block groups in which the functional circuit blocks extracted from the different fixed circuits are grouped
  • a plurality of reconfigurable circuits provided, a memory for storing reconfiguration data of the functional circuit block, and a functional circuit block in which the error is detected in response to detection of an error in the functional circuit block
  • the functional circuit block in which the reconfigurable circuit corresponding to the functional block group is specified and the error is detected from the memory A control circuit that reads the reconfiguration data and reconfigures the identified reconfigurable circuit into the functional circuit block in which the error is detected, and the functional circuit block in which the error is detected is read from the programmable bus
  • SEU Single Event Upset
  • MCU Multiple Cell Upset
  • SBU Single Bit Upset: single bit error
  • MBU Multiple Bit Upset
  • ECC Error Correction Code
  • soft errors including SEU are updated to new data even after an error occurs, and return to normal by restarting etc.
  • the influence of the soft error generated in the logic circuit means that the malfunction of the computer processor, ASIC, control digital circuit, etc. is caused, and there is a concern that it may cause malfunction of the electronic system.
  • FPGA Field Programmable Gate Array
  • the FPGA stores logic circuit information in a memory inside the device (hereinafter referred to as a configuration memory) to construct an arithmetic circuit and a control circuit.
  • the data stored in the memory is destroyed by a soft error. It is becoming a problem that electronic system devices can malfunction. In general, it is considered that the electronic system is not affected by malfunction, but this causes an increase in power consumption, development, verification man-hours, cost, and the like.
  • Patent Documents 1 to 3 can be cited as countermeasures against data inversion of the FPGA configuration memory.
  • an environmental radiation error detection method for a configuration memory (a memory for storing circuit information) of a programmable device is a method in which circuit data stored in a configuration memory is a fixed-length data frame. The error is detected by rotating each data frame.
  • the time required to circulate the entire device becomes longer, and the time until error detection becomes longer.
  • the time to error detection is long, it is necessary to completely stop the device, reboot, etc., and the burden on the recovery process in the system product equipped with the programmable device is large, which may impair reliability.
  • the countermeasure cost may increase.
  • the system is mainly duplicated, and the switching time is generally required to be within several tens of ms. It takes 100 ms or more to circulate the configuration memory, and this time is expected to increase as the capacity increases further in the future.
  • an object of the present invention is to provide a programmable device that shortens the soft error detection time and improves the reliability, and an electronic system apparatus using the programmable device.
  • the present application includes a plurality of means for solving the above problems.
  • a programmable device having a configuration memory, which directly reads and writes the configuration memory, and an error in user logic.
  • An error detection signal output means for detecting an error detection signal, an error detection signal output means for outputting an error detection signal, an error part specifying means for acquiring address information for identifying an error occurrence part from the error detection signal output from the error detection signal output means, Storage means for storing address information indicating a physical position in the storage memory, and address information for identifying the error occurrence part specified by the error part specifying means, based on the address information stored in the storage means, Error location on the configuration memory Based on the physical address conversion means for converting the address information indicating the physical position and the physical address of the error occurrence part converted by the physical address conversion unit, the error determination of the data in the configuration memory corresponding to the physical address is performed. And an error determination means.
  • the present invention it is possible to provide a programmable device having a reduced soft error detection time and improved reliability, and an electronic system apparatus using the programmable device.
  • FIG. 1 is a configuration diagram of a programmable device in a soft error tolerance circuit caused by environmental radiation or the like of the present invention.
  • the programmable device 10 of this embodiment includes a configuration memory 7 having a function block 8 that is a circuit for realizing a desired function as user logic, and a configuration control unit that controls access to data in the configuration memory 7.
  • the configuration control unit 1 reads and writes data in the configuration memory 7 and a CRC (for determining whether there is an error in the data in the configuration memory 7 Cyclic Redundancy Code) determination unit 3, error detection signal output means for detecting an error occurring in function block 8 and outputting an error detection signal, and error detection signals (ER 1, ER 2, ER 3.
  • CRC Cyclic Redundancy Code
  • an address storage unit 6 that stores physical address information in the configuration memory 7, and the error flag encoder 4
  • an address conversion unit 5 that converts an address indicating a functional block that detects the error into a physical address on the configuration memory 7.
  • the configuration control unit 1 is provided in a part of the configuration memory 7. However, it may be configured as a dedicated circuit other than the configuration memory 7.
  • CRC is used for the error detection of the CRC determination part 3 mentioned above, the method for detecting an error is not limited to CRC.
  • the error detection signal detected by the functional block 8 is input to the error flag encoder 4, and the error output from the error flag encoder 4 is detected by the address conversion unit 5.
  • the functional block information is converted into a physical address on the configuration memory 7 and passed to the configuration memory R / W control unit 2.
  • the configuration memory R / W control unit 2 reads the circuit information data at the address in the configuration memory 7 and sends it to the CRC determination unit 3, where it checks whether there is an abnormality in the data in the configuration memory 7 If there is an error, an error signal is output outside the programmable device.
  • the physical address representing the storage location of the configuration memory 7 is represented by the intersection of the number of rows and the number of columns on the horizontal axis (Col) and the vertical axis (Row).
  • the way of expressing the physical address is not limited to this.
  • FIG. 2 shows a configuration example of circuit information data in the configuration memory 7 in the configuration shown in FIG.
  • Circuit information data is stored in the configuration memory 7, and the circuit information stored therein is a logical expression representing a function as a logical table.
  • a logical expression for the 4-input bit string is created.
  • a plurality of such logic tables are combined to form a user logic data frame 12.
  • This data frame 12 is composed of a user logic data area 13 and a cyclic redundancy code (CRC) 14 which is a redundant bit for error detection.
  • CRC cyclic redundancy code
  • An error in the configuration memory 7 can be detected. Thereby, it can be detected that the data bits in the data frame 12 are inverted by the environmental radiation.
  • error detection signal output means is provided so that an error occurring in the functional block 8 can be detected and an error detection signal can be output as described above.
  • FIG. 3 shows an example of the data structure of the address storage unit 6.
  • the data in the left end column is a code indicating an error part that is input by the error detection signal and output by the error flag encoder unit 4.
  • the data on the right side indicates the address of the configuration memory 7 corresponding to the code indicating the error part.
  • the addresses of the corresponding configuration memory 7 are represented by the horizontal axis (Col) and the vertical axis (Row), and are designated as the start address and end address of the target part.
  • the range of the physical error part is represented by a rectangle, and the start address and end address indicate diagonal vertex addresses.
  • the code “0001” in FIG. 3 is represented by (R S1 , C S1 ) as a start address and (R E1 , C E1 ) as an end address.
  • coding for each combination makes it possible to deal with a physical error part.
  • the code “0111” represents a combination of the error detection signals (E1) and (E3), and the start address (R S4 , C S4 ), the end address (R E4 , C E4 ), and (R S5 ). , C S5 ) (R E5 , C E5 ).
  • FIG. 5 shows an example of an operation monitor result screen in an electronic system device equipped with a programmable device according to this embodiment.
  • An operation monitor window 42 is displayed on the display screen 41, and an operation monitor result of the apparatus is displayed therein.
  • the contents of the operation monitor are configured by a window 43 (next to the control FPGA error in the figure) that displays error detection from the programmable device and a window 44 (next to the error occurrence address in the figure) showing the physical address where the error occurred.
  • a window 43 next to the control FPGA error in the figure
  • a window 44 next to the error occurrence address in the figure showing the physical address where the error occurred.
  • FIG. 6 shows another configuration example of the functional block 8.
  • the function block 8 is defined as a rectangle, but in this configuration example, circuit information is stored in a free shape as shown in FIG. 6 instead of a simple rectangle.
  • the delimiter is configured with fixed-length data called frame data.
  • the delimitation is realized with variable-length data without the delimitation of frame data.
  • the fixed-length data frame needs to be collected together with frame data that is not used because it is stored in a rectangular functional block, and it may be difficult to efficiently store circuit information data.
  • the user logic data area 13 that does not store user logic information is also subject to determination of the presence or absence of errors due to environmental radiation. Even if an error is detected in the unstored user logic data area 13, it will be determined as an error although there is no functional problem, and the error rate as a programmable device will be raised. Become.
  • variable-length data By using variable-length data, the amount of information for managing the physical address of the functional block increases. However, as described above, there is no need to add a data frame that does not contain user logic information effective for making a rectangle. In addition, it is possible to improve the mounting efficiency in the configuration memory for storing circuit information and to suppress an increase in error rate due to the data frame 12 not storing user logic information.
  • the programmable device can be applied to various electronic system apparatuses, for example, a communication apparatus.
  • the communication device inputs communication packet data, selects a destination according to destination data added to the packet data, a communication control unit, a diagnosis unit for diagnosing whether the communication control unit is operating normally, It is composed of a control unit that controls unit operations such as operation start and reset of the communication control unit and diagnostic unit, and initialization of installed processors and programmable devices.
  • the programmable device is mounted on all the units described above.
  • information changes due to environmental radiation can be monitored in real time, and in the case of a communication device, the time until detection and recovery can be greatly shortened, and the number of discarded packets can be reduced. Therefore, the influence of the service stop of the communication device can be reduced.
  • a product equipped with a programmable device to which the present invention is applied can detect a configuration memory error at high speed, shorten the recovery time of the apparatus, and achieve high reliability and improved availability.
  • a programmable device in which the soft error detection time is shortened and the reliability is improved can detect a configuration memory error at high speed, shorten the recovery time of the apparatus, and achieve high reliability and improved availability.
  • FIG. 7 is a configuration diagram of a programmable device according to the second embodiment of the present invention.
  • the programmable device of the present embodiment is an example in which a circuit for detecting an error is incorporated instead of detecting an error from the function block 8 and outputting a detection signal as an error detection signal output means.
  • the programmable device 60 includes a configuration memory 7 that stores circuit information for realizing a desired function, and a configuration control unit 61 that controls access to data in the configuration memory 7.
  • the configuration control unit 61 reads and writes data in the configuration memory 7, and collects signals from the error detection circuit network 64 and the error detection circuit network 64 in the configuration memory 7.
  • An error detection signal transmission unit 62 that transmits an error signal to the configuration control unit 61
  • a mesh information collection unit 65 that collects and encodes the error signal from the error detection signal transmission unit 62
  • the address conversion unit 5 is searched from the address storage unit 6 that stores a correspondence table with physical addresses based on the part information and converts it into a physical address.
  • FIG. 8 shows a detailed circuit example of the programmable device according to the second embodiment.
  • FIG. 8 shows the structure of an FPGA which is a kind of programmable device.
  • the error detection network 64 shown in FIG. 7 includes a storage element such as a flip-flop and a logic table that stores circuit information data.
  • a lookup table (LUT) 71 which is an example of the configuration of the logical table, is provided, and a flip-flop (F / F) 72 is connected to the output thereof.
  • a logic block constituted by the LUT 71 and the F / F 72 is arranged on the tile.
  • the circuit information of the user for realizing the desired function is also stored on the logic block arranged on this tile to configure the circuit.
  • the error detection circuit network 64 in this embodiment is also realized by using a part of this logic block. That is, the user circuit information and the error detection circuit network 64 are arranged so as to be mixed on the logic block.
  • the error detection of the present embodiment utilizes the fact that data inversion caused by environmental radiation or the like becomes an MCU (Multi Cell Upset) that covers a plurality of data bits. For example, a single neutron collides with a logic block storing a user circuit, and the influence spreads to a plurality of bits, thereby affecting the error detection circuit network 64 arranged in the vicinity, and the result is an error.
  • the detection signal sending unit 62 reports the error information to the error collecting unit 65.
  • the error detection circuit network 64 is configured by a plurality of circuit networks so that it can detect in which part an error has occurred. Therefore, it can also be determined whether or not the error position is an area in which user logic information is stored, and an error check can be performed only on the area in which user logic information is stored.
  • a product equipped with a programmable device to which the present invention is applied can detect a configuration memory error at high speed, shorten the recovery time of the apparatus, and achieve high reliability and improved availability.
  • a programmable device in which the soft error detection time is shortened and the reliability is improved can detect a configuration memory error at high speed, shorten the recovery time of the apparatus, and achieve high reliability and improved availability.
  • FIG. 4 shows an embodiment having a configuration for correcting circuit information data of an error occurrence part after receiving an error detection signal.
  • the configuration control unit 21 includes a redundant bit generation unit 23, a redundant bit storage unit 24, and an error check correction unit 28 in addition to the configuration of the configuration control unit 1 according to the first embodiment illustrated in FIG.
  • the configuration control unit 21 of this embodiment operates as follows. When an error occurs in the configuration memory 7 (not shown) and the error detection signal ER1 or the like is input to the error flag encoder 4, the error flag encoder 4 converts it into address information for identifying the error part. Is output to the unit 5.
  • the error detection part in the functional block That is, it is converted into an address indicating an error part output from the error flag encoder 4, and this physical address 27 is output to the configuration memory R / W control unit 2.
  • the configuration memory R / W control unit 2 reads circuit information data from the configuration memory 7 based on the address information 27 output from the address conversion unit 5, and sends a physical address 32 indicating an error part to the error check correction unit 28.
  • the error check correction unit 28 searches the redundant bit storage unit 24 based on the physical address 32, and reads the redundant bit corresponding to the error check target part.
  • the redundant bits in the redundant bit storage unit 24 are composed of a correction redundant bit location tag 25 for searching based on a physical address and redundant bit data 26.
  • the error check correction unit 28 checks the presence / absence of an error based on the redundant bit data 26 that is circuit information data read from the configuration memory 7, and if there is an error, sends a signal 31 to the configuration memory R / W control unit 2, Correct using redundant bits.
  • the code correction method of the error check correction unit 28 may be any method such as an error correcting code (ECC) code, a BCH (Bose-Chauduri-Hocquenhem) code, or a Reed-Solomon code.
  • ECC error correcting code
  • BCH Bit-Chauduri-Hocquenhem
  • the error check correction unit 28 corrects the error and outputs an error signal to the outside as an error signal.
  • the error signal is output to an error processing unit or the like of the electronic system device on which the programmable device according to the present embodiment is mounted, and the process corresponding to the error is output to the display device of the electronic system device.
  • an error signal is output if correction is not possible.
  • a plurality of types of error signals may be provided, and a signal indicating the presence / absence of an error, a signal indicating that the error has been corrected, and a signal indicating that the error cannot be corrected may be provided.
  • Redundant bits stored in the redundant bit storage unit 24 are generated and stored by the redundant bit generation unit 23 when circuit information data is written in the configuration memory 7. Note that when it is determined that there is an error after the error check correction unit 28 determines whether there is an error, the circuit information data may be read from the external ROM and written back to the configuration memory 7 for correction.
  • the redundant bit generation unit 23 and the redundant bit storage unit 24 are not necessary.
  • the error determination is made based on the error detection signal from the configuration memory 7, but the present invention is not limited to this.
  • the structure described in the second embodiment may be adopted.
  • FIG. 9 shows an example of a control method when an error occurs in the electronic system apparatus equipped with the programmable device according to this embodiment.
  • a communication device will be described as an example of an electronic system device.
  • FIG. 9 shows an example in which an FPGA is used as a programmable device.
  • the communication device inputs communication packet data, selects a destination according to destination data added to the packet data, a communication control unit, a diagnosis unit for diagnosing whether the communication control unit is operating normally, It is composed of a control unit that controls unit operations such as operation start and reset of the communication control unit and diagnostic unit, and initialization of installed processors and programmable devices.
  • the programmable device is mounted on all the units described above.
  • the control method of FIG. 9 shows an example in which the processes of S83 and S86 are performed by the programmable device mounted on the communication control unit, S82 and S85 are processed by the diagnostic unit, and S84, S87 and S88 are processed by the control unit. ing.
  • the configuration memory error signal from the programmable device according to this embodiment is monitored (S82).
  • S83 When an error is detected (S83), a temporary stop process is performed on the in-device unit related to the FPGA that has generated the error in the device (S84).
  • the error information is displayed on the operation monitor screen. At this time, it is also possible to output to a log file. (S85).
  • error correction processing of the configuration memory S86
  • reset processing of the FPGA S87
  • packet discarding before and after error detection by the firmware of the device recovery processing by retransmission are performed (S88), and the system is restarted (S89).
  • the communication device When the communication device is configured using the programmable device according to the present embodiment, it is possible to reduce the time for detecting a configuration memory error that has conventionally spent much of the main recovery processing time, and it is possible to reduce the device recovery processing time.
  • a failure of the standby system that is normally stopped may occur immediately after switching, and in the case of a so-called soft error failure such as a failure due to environmental radiation, the system 1 is restored within the system switching time as in the present invention.
  • preparing for the occurrence of a failure in the standby system is effective in a device that requires reliability and availability such as a communication device.
  • the standby system clock may be stopped in a state where it can be operated immediately, such as by stopping the standby system.
  • the standby system programmable device executes from standby. It is conceivable that the data inversion of the configuration memory in the programmable device is detected immediately after the mode is shifted, and in this case, the recovery can be performed within the time allowed as the system switching time.
  • the error detection time of the programmable device can be shortened, and the recovery time of the apparatus can be shortened.
  • CRC Cyclic Redundancy Code
  • Error detection circuit network 65 Mesh information collection unit 66 Error transmission flip-flop 67 Error detection lookup table (LUT) 71 Look-up table (LUT) 72 Flip-flop (F / F) 73 Circuit Operation Path 91 Electronic System Device (Example of Communication Device) 92 Communication Device Main System 93 Communication Device Backup System 94 Programmable Device Installed in Main System 95 Programmable Device Installed in Backup System

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)

Abstract

The purpose of the present invention is to provide a programmable device in which the time for detecting a soft error is shortened and reliability is improv ed, and an electronic system device using the same. According to the pre sent invention, a portion in which an error occurred is identified by an error detection signal from a user logic and then converted into a physical address in configuration memory, and only such a portion affected by this operation inside the configuration memory of the programmable de vice to be used in an electronic system product is checked for error. Therefor e, the time for detecting a configuration memory error can be shortened.

Description

プログラマブルデバイス及び電子システム装置Programmable device and electronic system apparatus
 本発明は、プログラマブルデバイス及び電子システム装置に関する。 The present invention relates to a programmable device and an electronic system apparatus.
 本技術分野の背景技術として、特表2005-505827号公報(特許文献1)がある。この公報には、「プログラマブルロジックリソース上にエラー検出回路を設ける。プログラマブルロジックリソース構成データが巡回冗長検査(CRC)モジュール内にロードされ、そこでチェックサム計算が実行される。一実施例において、チェックサムは期待値と比較され、この期待値はプログラマブルロジックリソース内にプログラムされる前あるいは最中のデータ上のチェックサムによって予め計算される。別の実施例において、期待値はチェックサム計算中に含めることができる。チェックサムと期待値との間の関係、あるいはチェックサム自体の数値に従ってエラーが検出されたかどうかを示す出力が形成される。この出力はユーザロジックによってアクセス可能な出力端子に伝送される。」と記載されている。
  また、特開2007-293856号公報(特許文献2)がある。この公報には、「プログラマブルデバイスの構成メモリにおけるエラーを検出する方法であって、該構成メモリから構成メモリデータを読み取ることと、該構成メモリデータにおいてエラーが発生したか否かを判断することと、エラーが発生したという判断に応答して、エラーである該構成データに対応する感度データを読み取ることと、該エラーを無視することができるか否かを判断するために該感度データを解析することと、該エラーを無視することができない場合、修復アクティビティを開始することと、該エラーを無視することができる場合、該修復アクティビティを開始しないことによって該エラーを無視することとを包含する、方法。」と記載されている。
  また、特許4456552号公報(特許文献3)がある。この公報には、「固定回路のエラーの検出に応じて、プログラムにより再構成可能な回路を、前記固定回路の機能に再構成する動的代替機能を有する論理集積回路において、各々複数の機能回路ブロックに分割された複数の前記固定回路と、それぞれ異なる前記固定回路から取り出した前記機能回路ブロックをグループ化した複数の機能ブロック群の間を接続するプログラマブルバスと、前記複数の機能ブロック群ごとに設けられた複数の再構成可能な回路と、前記機能回路ブロックの再構成データを格納するメモリと、前記機能回路ブロックのエラーの検出に応じて、前記エラーが検出された機能回路ブロックが含まれる機能ブロック群に対応する前記再構成可能な回路を特定し、前記メモリから前記エラーが検出された機能回路ブロックの再構成データを読み出し、前記特定した再構成可能な回路を、前記エラーが検出された機能回路ブロックに再構成する制御回路とを有し、前記エラーが検出された機能回路ブロックを前記プログラマブルバスから切り離し、前記再構成された回路を、前記プログラマブルバスに接続することを特徴とする動的代替機能を有する論理集積回路。」と記載されている。
As background art in this technical field, there is JP 2005-505827 A (Patent Document 1). In this publication, "An error detection circuit is provided on a programmable logic resource. Programmable logic resource configuration data is loaded into a cyclic redundancy check (CRC) module, where checksum calculation is performed. In one embodiment, the check The sum is compared to an expected value, which is pre-computed by a checksum on the data before or during programming into the programmable logic resource.In another embodiment, the expected value is calculated during the checksum calculation. An output is formed indicating whether an error has been detected according to the relationship between the checksum and the expected value, or the numerical value of the checksum itself, which is transmitted to an output terminal accessible by the user logic. It is described.
There is also JP-A-2007-293856 (Patent Document 2). In this publication, “a method for detecting an error in a configuration memory of a programmable device, reading configuration memory data from the configuration memory, and determining whether an error has occurred in the configuration memory data; In response to determining that an error has occurred, reading sensitivity data corresponding to the configuration data that is in error, and analyzing the sensitivity data to determine whether the error can be ignored And initiating a repair activity if the error cannot be ignored, and ignoring the error by not initiating the repair activity if the error can be ignored. Method. "
Moreover, there exists patent 4456552 (patent document 3). In this publication, “a logic integrated circuit having a dynamic replacement function for reconfiguring a circuit that can be reconfigured by a program in response to detection of an error in the fixed circuit into a function of the fixed circuit, each of which includes a plurality of functional circuits. For each of the plurality of functional blocks, a programmable bus that connects between the plurality of fixed circuits divided into blocks, and a plurality of functional block groups in which the functional circuit blocks extracted from the different fixed circuits are grouped A plurality of reconfigurable circuits provided, a memory for storing reconfiguration data of the functional circuit block, and a functional circuit block in which the error is detected in response to detection of an error in the functional circuit block The functional circuit block in which the reconfigurable circuit corresponding to the functional block group is specified and the error is detected from the memory A control circuit that reads the reconfiguration data and reconfigures the identified reconfigurable circuit into the functional circuit block in which the error is detected, and the functional circuit block in which the error is detected is read from the programmable bus A logic integrated circuit having a dynamic replacement function, characterized in that it disconnects and connects the reconfigured circuit to the programmable bus. "
特表2005-505827号公報JP 2005-505827 Gazette 特開2007-293856号公報JP 2007-293856 A 特許4456552号公報Japanese Patent No. 4456552
 半導体デバイスの微細化に伴い、環境放射線(地上における宇宙線中性子,α線)等に起因するソフトエラーの問題が特にSRAMや論理ゲート、クロック系などについて顕在化している。極めて高いエネルギーを有する中性子がデバイスを構成する原子核内に突入すると核内の核子(中性子、陽子)が衝突を繰り返し、特に高いエネルギーを持った核子は核外に放出される。核子が核外に飛び出すだけの運動エネルギーを持ち得ない状態になると、励起状態にある残留原子核から陽子、中性子、重陽子、アルファ粒子などの軽粒子が蒸発する過程が続き、最終的に残留核も反挑エネルギーを持つためこれらの2次粒子は全てその飛程に見合った距離デバイスの中を飛ぶことになる。 With the miniaturization of semiconductor devices, the problem of soft errors caused by environmental radiation (cosmic neutrons and α-rays on the ground) and the like has become apparent especially in SRAMs, logic gates, clock systems, and the like. When neutrons with extremely high energy enter the nuclei that make up the device, nucleons (neutrons and protons) in the nucleus repeatedly collide, and nucleons with particularly high energy are emitted outside the nucleus. When the nucleon is unable to have enough kinetic energy to jump out of the nucleus, light particles such as protons, neutrons, deuterons, and alpha particles evaporate from the residual nuclei in the excited state. However, because of the counter-attack energy, all of these secondary particles will fly in the distance device corresponding to the range.
 半導体パッケージなどに含まれる放射性同位元素から発生するα線や、核反応の結果発生する電荷を持った2次イオンがSRAMの“high”状態にあるストレージノードの空乏層を通過すると電子はノードに吸収され正孔は反対方向に流れイオンの飛跡に沿って電荷収集領域が広がるファネリングメカニズムによってストレージノードに電荷が収集される。臨界電荷量以上の電荷が収集されると”high”状態が“low”状態に推移し、ソフトエラーになる。 When alpha ions generated from radioactive isotopes contained in a semiconductor package or the like or secondary ions having charges generated as a result of a nuclear reaction pass through the depletion layer of the storage node in the “high” state of the SRAM, electrons are transferred to the nodes. The absorbed holes flow in the opposite direction, and charges are collected in the storage node by a funneling mechanism in which the charge collection region extends along the track of ions. When charges exceeding the critical charge amount are collected, the “high” state changes to the “low” state, and a soft error occurs.
 これが、環境放射線ソフトエラーのメカニズムとして考えられてきた典型的なメカニズムでありSEU(Single Event Upset)とも称する。メモリデバイスのSEUについて複数のセルが同時にエラーになるケースをMCU(Multi Cell Upset)と呼んでSBU(Single Bit Upset:単一ビットエラー)とは区別する。MCUは同一ワードに発生した場合MBU(Multiple Bit Upset)と呼んで通常のECC(Error Correction Code)では修復困難なためシステムダウンに至る可能性がある。 This is a typical mechanism that has been considered as a mechanism of environmental radiation soft error, and is also referred to as SEU (Single Event Upset). A case where a plurality of cells simultaneously cause an error in the SEU of the memory device is called MCU (Multi Cell Upset) and is distinguished from SBU (Single Bit Upset: single bit error). When the MCU occurs in the same word, it is called MBU (Multiple Bit Upset), and normal ECC (Error Correction Code) is difficult to repair.
 SEUを含むソフトエラーは、ハードエラー(ハードウェアの固定故障)と異なり、エラー発生後も、新たなデータに更新され、再起動などによって正常に復帰してしまうためにエラーの要因特定が困難といった問題もある。このように論理回路に発生するソフトエラーの影響とは、コンピュータのプロセッサやASIC、制御用デジタル回路等の誤作動を引き起こすことを意味し、電子システムとしての誤作動の要因となることが懸念される。 Unlike hard errors (hardware fixed failures), soft errors including SEU are updated to new data even after an error occurs, and return to normal by restarting etc. There is also a problem. As described above, the influence of the soft error generated in the logic circuit means that the malfunction of the computer processor, ASIC, control digital circuit, etc. is caused, and there is a concern that it may cause malfunction of the electronic system. The
 近年では,様々な電子システム装置の制御用ロジック回路としてプログラマブルデバイスが多用されており、特にプログラマブルデバイスの中でもFPGA(Field Programmable Gate Array)の利用は増大している。FPGAは、ロジック回路情報をデバイス内部のメモリ(以下コンフィギュレーションメモリと称す)に格納して演算回路や制御回路を構築するが、このメモリに格納されたデータがソフトエラーにより破壊されることで、電子システム装置の誤作動を引き起こす可能性があることが問題視されつつある。通常、電子システムとして誤動作による影響がでないよう考えられているが、消費電力、開発、検証工数、コスト等の増大を招く要因となっている。 In recent years, programmable devices are frequently used as control logic circuits for various electronic system devices, and the use of FPGA (Field Programmable Gate Array) is increasing among programmable devices. The FPGA stores logic circuit information in a memory inside the device (hereinafter referred to as a configuration memory) to construct an arithmetic circuit and a control circuit. The data stored in the memory is destroyed by a soft error. It is becoming a problem that electronic system devices can malfunction. In general, it is considered that the electronic system is not affected by malfunction, but this causes an increase in power consumption, development, verification man-hours, cost, and the like.
 FPGAのコンフィギュレーションメモリのデータ反転への対応策として、特許文献1~3が挙げられる。 Patent Documents 1 to 3 can be cited as countermeasures against data inversion of the FPGA configuration memory.
 従来の特許文献1~3に記載の技術では、プログラマブルデバイスのコンフィギュレーションメモリ(回路情報を格納するメモリ)の環境放射線エラーの検出方法は、コンフィギュレーションメモリに格納する回路データを固定長のデータフレームに分割し、そのデータフレーム毎に巡回してエラーを検出している。しかし、この方法では、大容量化が進むプログラマブルデバイスでは、デバイス全体を巡回する時間が長くなり、エラー検出までの時間が長大化する。さらに、エラー検出までの時間が長い場合、装置の完全停止や、リブート等が必要となり、プログラマブルデバイスを搭載するシステム製品でのリカバリ処理への負担が大きく、信頼性を損なう可能性があるとともに、その対策コストの増大を招く恐れがある。また、通信装置では、主にシステムの2重化が行われており、その切替え時間は、数十ms以内にすることを求められることが一般的であるが、現状、容量が大きなプログラマブルデバイスでは、コンフィギュレーションメモリを巡回する時間に100ms以上かかり、今後さらに大容量化が進むと、この時間も増大することが予想される。 In the conventional techniques described in Patent Documents 1 to 3, an environmental radiation error detection method for a configuration memory (a memory for storing circuit information) of a programmable device is a method in which circuit data stored in a configuration memory is a fixed-length data frame. The error is detected by rotating each data frame. However, in this method, in a programmable device whose capacity has been increased, the time required to circulate the entire device becomes longer, and the time until error detection becomes longer. In addition, if the time to error detection is long, it is necessary to completely stop the device, reboot, etc., and the burden on the recovery process in the system product equipped with the programmable device is large, which may impair reliability. The countermeasure cost may increase. In communication devices, the system is mainly duplicated, and the switching time is generally required to be within several tens of ms. It takes 100 ms or more to circulate the configuration memory, and this time is expected to increase as the capacity increases further in the future.
 よってコンフィギュレーションメモリの環境放射線によるエラー検出時間を短縮し、装置の停止、リカバリ時間を短縮することが必要となる。また、エラー検出に加え、訂正手段を設けることでプログラマブルデバイス内で短時間でエラー訂正、復旧することが求められる。 Therefore, it is necessary to shorten the error detection time due to environmental radiation in the configuration memory, and to shorten the device stop and recovery time. In addition to error detection, it is required to correct and recover errors in a short time within the programmable device by providing correction means.
 以上のことから、本発明は、ソフトエラー検出時間を短縮し、信頼性を向上したプログラマブルデバイス及びこれを用いた電子システム装置を提供することを目的とする。 In view of the above, an object of the present invention is to provide a programmable device that shortens the soft error detection time and improves the reliability, and an electronic system apparatus using the programmable device.
 上記課題を解決するために、例えば特許請求の範囲に記載の構成を採用する。
  本願は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、コンフィギュレーションメモリを有するプログラマブルデバイスであって、コンフィギュレーションメモリを直接リード、ライトする手段と、ユーザロジックでのエラーを検出し、エラー検出信号を出力するエラー検出信号出力手段と、前記エラー検出信号出力手段から出力されるエラー検出信号により、エラー発生部位を識別するアドレス情報を取得するエラー部位特定手段と、コンフィギュレーションメモリ内の物理的な位置を示すアドレス情報を格納する格納手段と、前記エラー部位特定手段により特定したエラー発生部位を識別するアドレス情報を、前記格納手段に格納されたアドレス情報を基に、コンフィギュレーションメモリ上のエラー発生部位の物理的な位置を示すアドレス情報に変換する物理アドレス変換手段と、前記物理アドレス変換部で変換したエラー発生部位の物理アドレスに基づき、当該物理アドレスに対応するコンフィギュレーションメモリ内データのエラー判定を行うエラー判定手段と、を有することを特徴とする。
In order to solve the above problems, for example, the configuration described in the claims is adopted.
The present application includes a plurality of means for solving the above problems. For example, a programmable device having a configuration memory, which directly reads and writes the configuration memory, and an error in user logic. An error detection signal output means for detecting an error detection signal, an error detection signal output means for outputting an error detection signal, an error part specifying means for acquiring address information for identifying an error occurrence part from the error detection signal output from the error detection signal output means, Storage means for storing address information indicating a physical position in the storage memory, and address information for identifying the error occurrence part specified by the error part specifying means, based on the address information stored in the storage means, Error location on the configuration memory Based on the physical address conversion means for converting the address information indicating the physical position and the physical address of the error occurrence part converted by the physical address conversion unit, the error determination of the data in the configuration memory corresponding to the physical address is performed. And an error determination means.
 本発明によれば、ソフトエラー検出時間を短縮し、信頼性を向上したプログラマブルデバイス及びこれを用いた電子システム装置を提供することができる。 According to the present invention, it is possible to provide a programmable device having a reduced soft error detection time and improved reliability, and an electronic system apparatus using the programmable device.
本発明の第1の実施形態に係るプログラマブルデバイスの構成図である。It is a lineblock diagram of the programmable device concerning a 1st embodiment of the present invention. 本発明の第1の実施形態に係るプログラマブルデバイスのコンフィギュレーションメモリのデータ構造を示した図である。It is the figure which showed the data structure of the configuration memory of the programmable device which concerns on the 1st Embodiment of this invention. 本発明の第1の実施形態に係るプログラマブルデバイスにおけるアドレス格納部内のデータ構成例を示した図である。It is the figure which showed the data structural example in the address storage part in the programmable device which concerns on the 1st Embodiment of this invention. 本発明による第3の実施形態に係るエラー訂正手段を備えたプログラマブルデバイスの構成例の図である。It is a figure of the structural example of the programmable device provided with the error correction means which concerns on 3rd Embodiment by this invention. 本発明による第1の実施形態に係るプログラマブルデバイスを搭載した電子装置の制御用設定画面およびエラー検出結果を出力する画面の例である。It is an example of the screen which outputs the setting screen for control of an electronic device carrying the programmable device concerning a 1st embodiment by the present invention, and an error detection result. 本発明の第1の実施形態に係るプログラマブルデバイスにおけるエラー検出単位の他の例を示した図である。It is the figure which showed the other example of the error detection unit in the programmable device which concerns on the 1st Embodiment of this invention. 本発明による第2の実施形態に係るプログラマブルデバイスにおけるエラー検出用回路の構成例である。It is a structural example of the circuit for error detection in the programmable device which concerns on 2nd Embodiment by this invention. 図7におけるLUTの構成図である。It is a block diagram of LUT in FIG. 本発明に係るプログラマブルデバイスを搭載した電子システム装置の復旧処理フローを示す。The restoration processing flow of the electronic system apparatus carrying the programmable device which concerns on this invention is shown. 本発明に係るプログラマブルデバイスを搭載した通信装置の2重系による復旧処理の制御方法を示す。The control method of the recovery process by the duplex system of the communication apparatus carrying the programmable device which concerns on this invention is shown.
 以下、実施例を図面を用いて説明する。 Hereinafter, examples will be described with reference to the drawings.
  本発明に係るプログラマブルデバイス及びこれを用いた電子システム装置の実施例を、図面を用いて説明する。 An embodiment of a programmable device and an electronic system apparatus using the same according to the present invention will be described with reference to the drawings.
 図1は、本発明の環境放射線等に起因するソフトエラー耐性回路におけるプログラマブルデバイスの構成図である。本実施例のプログラマブルデバイス10は、ユーザロジックとして、所望の機能を実現するための回路である機能ブロック8を有するコンフィギュレーションメモリ7と、コンフィギュレーションメモリ7内データへのアクセスを制御するコンフィグ制御部1とを有し、コンフィグ制御部1はコンフィギュレーションメモリ7内のデータをリード、ライトするコンフィギュレーションメモリR/W制御部2と、コンフィギュレーションメモリ7内データのエラー有無を判定するためのCRC(Cyclic Redundancy Code)判定部3と、機能ブロック8に生じたエラーを検出し、エラー検出信号を出力するエラー検出信号出力手段と、機能ブロック8から出力されるエラー検出信号(ER1、ER2、ER3・・・ERn)に基づき、エラー検出信号が出力された機能ブロックを識別するアドレス情報に変換するエラーフラグエンコーダ4と、コンフィギュレーションメモリ7内の物理的なアドレス情報を格納するアドレス格納部6と、エラーフラグエンコーダ4から出力されるエラー部位を示すアドレス情報とアドレス格納部6に格納されているコンフィギュレーションメモリ内の物理的なアドレス情報とから、エラーを検出した機能ブロック、すなわちエラーフラグエンコーダ4から出力されるエラーを検出した機能ブロックを示すアドレスをコンフィギュレーションメモリ7上の物理的なアドレスに変換するアドレス変換部5と、から構成される。 FIG. 1 is a configuration diagram of a programmable device in a soft error tolerance circuit caused by environmental radiation or the like of the present invention. The programmable device 10 of this embodiment includes a configuration memory 7 having a function block 8 that is a circuit for realizing a desired function as user logic, and a configuration control unit that controls access to data in the configuration memory 7. The configuration control unit 1 reads and writes data in the configuration memory 7 and a CRC (for determining whether there is an error in the data in the configuration memory 7 Cyclic Redundancy Code) determination unit 3, error detection signal output means for detecting an error occurring in function block 8 and outputting an error detection signal, and error detection signals (ER 1, ER 2, ER 3. ..ERn Based on the error flag encoder 4 that converts the functional block from which the error detection signal has been output into address information, an address storage unit 6 that stores physical address information in the configuration memory 7, and the error flag encoder 4 The error block output from the error flag encoder 4, that is, the function block that detected the error from the address information indicating the error part output from the address information and the physical address information in the configuration memory stored in the address storage unit 6. And an address conversion unit 5 that converts an address indicating a functional block that detects the error into a physical address on the configuration memory 7.
 この実施例では、コンフィグ制御部1は、コンフィギュレーションメモリ7の一部に設ける構成としている。ただし、コンフィギュレーションメモリ7以外の専用回路として設ける構成としてもよい。なお、上述したCRC判定部3のエラー検出は、CRCを用いているが、エラーを検出するための方法をCRCに限定するものではない。 In this embodiment, the configuration control unit 1 is provided in a part of the configuration memory 7. However, it may be configured as a dedicated circuit other than the configuration memory 7. In addition, although CRC is used for the error detection of the CRC determination part 3 mentioned above, the method for detecting an error is not limited to CRC.
 図1に示すプログラマブルデバイス10の構成における動作は、機能ブロック8で検出されるエラー検出信号をエラーフラグエンコーダ4に入力し、アドレス変換部5により、エラーフラグエンコーダ4から出力されたエラーを検出した機能ブロック情報をコンフィギュレーションメモリ7上の物理的なアドレスに変換し、コンフィギュレーションメモリR/W制御部2に渡す。 In the operation of the configuration of the programmable device 10 shown in FIG. 1, the error detection signal detected by the functional block 8 is input to the error flag encoder 4, and the error output from the error flag encoder 4 is detected by the address conversion unit 5. The functional block information is converted into a physical address on the configuration memory 7 and passed to the configuration memory R / W control unit 2.
 コンフィギュレーションメモリR/W制御部2は、コンフィギュレーションメモリ7内の当該アドレスの回路情報データを読み出し、CRC判定部3に送り、ここでコンフィギュレーションメモリ7のデータに異常があるかを検査して、エラーがあればプログラマブルデバイス外部へエラー信号を出力する。 The configuration memory R / W control unit 2 reads the circuit information data at the address in the configuration memory 7 and sends it to the CRC determination unit 3, where it checks whether there is an abnormality in the data in the configuration memory 7 If there is an error, an error signal is output outside the programmable device.
 ここで、コンフィギュレーションメモリ7の格納場所を表す物理的なアドレスは、横軸(Col)と縦軸(Row)の行数、列数の交点で表す方法がある。ただし、物理アドレスの表し方はこれに限定するものではない。 Here, there is a method in which the physical address representing the storage location of the configuration memory 7 is represented by the intersection of the number of rows and the number of columns on the horizontal axis (Col) and the vertical axis (Row). However, the way of expressing the physical address is not limited to this.
 図2は、図1に示す構成において、コンフィギュレーションメモリ7の回路情報データの構成例を示したものである。コンフィギュレーションメモリ7には、回路情報データが格納されるが、ここに格納される回路情報とは、機能を表す論理式を論理テーブルとして構成するものである。例えば、4入力1出力の論理テーブルの場合、4入力に対応する論理状態が16種類格納され、その4入力のビット列に対する論理式が作成される。 FIG. 2 shows a configuration example of circuit information data in the configuration memory 7 in the configuration shown in FIG. Circuit information data is stored in the configuration memory 7, and the circuit information stored therein is a logical expression representing a function as a logical table. For example, in the case of a 4-input 1-output logic table, 16 types of logic states corresponding to 4 inputs are stored, and a logical expression for the 4-input bit string is created.
 図2では、このような論理テーブルを複数組み合わせ、ユーザロジックのデータフレーム12として構成している。このデータフレーム12は、ユーザロジックデータ領域13とエラー検出のための冗長ビットである巡回冗長符号(CRC)14で構成され、そのデータフレーム12を順次読み出してCRC符号によるエラー有無を判断することでコンフィギュレーションメモリ7内のエラーを検出することができる。これにより、環境放射線によってデータフレーム12内のデータビットが反転したことを検出できる。本発明ではエラー検出信号出力手段を備え、上記のように機能ブロック8に生じたエラーを検出し、エラー検出信号を出力できるように構成している。 In FIG. 2, a plurality of such logic tables are combined to form a user logic data frame 12. This data frame 12 is composed of a user logic data area 13 and a cyclic redundancy code (CRC) 14 which is a redundant bit for error detection. By sequentially reading the data frame 12 and determining whether or not there is an error by the CRC code. An error in the configuration memory 7 can be detected. Thereby, it can be detected that the data bits in the data frame 12 are inverted by the environmental radiation. In the present invention, error detection signal output means is provided so that an error occurring in the functional block 8 can be detected and an error detection signal can be output as described above.
 図3は、アドレス格納部6のデータ構造例を示す。左端列のデータがエラー検出信号を入力しエラーフラグエンコーダ部4が出力するエラー部位を示すコードである。右側のデータが、エラー部位を示すコードに対応するコンフィギュレーションメモリ7のアドレスを示している。この例では、対応するコンフィギュレーションメモリ7のアドレスを横軸(Col)、縦軸(Row)で表し、対象部位のスタートアドレスとエンドアドレスとして指定する。 FIG. 3 shows an example of the data structure of the address storage unit 6. The data in the left end column is a code indicating an error part that is input by the error detection signal and output by the error flag encoder unit 4. The data on the right side indicates the address of the configuration memory 7 corresponding to the code indicating the error part. In this example, the addresses of the corresponding configuration memory 7 are represented by the horizontal axis (Col) and the vertical axis (Row), and are designated as the start address and end address of the target part.
 本実施例では、物理的なエラー部位の範囲は矩形で表し、スタートアドレスとエンドアドレスは対角の頂点アドレスを示す。例えば、図3のコード“0001”は、スタートアドレスとして、(RS1,CS1)を、エンドアドレスとして、(RE1,CE1)で表している。また、エラー検出信号が複数の場合もその組み合わせ毎にコード化することで、物理的なエラー部位との対応を取る。 In this embodiment, the range of the physical error part is represented by a rectangle, and the start address and end address indicate diagonal vertex addresses. For example, the code “0001” in FIG. 3 is represented by (R S1 , C S1 ) as a start address and (R E1 , C E1 ) as an end address. In addition, even when there are a plurality of error detection signals, coding for each combination makes it possible to deal with a physical error part.
 図3の例では、コード“0111”は、エラー検出信号(E1)と(E3)の組み合わせを表し、スタートアドレス(RS4,CS4)、エンドアドレス(RE4,CE4)と(RS5,CS5)(RE5,CE5)の2つの部位に対応している。 In the example of FIG. 3, the code “0111” represents a combination of the error detection signals (E1) and (E3), and the start address (R S4 , C S4 ), the end address (R E4 , C E4 ), and (R S5 ). , C S5 ) (R E5 , C E5 ).
 図5は、本実施例によりプログラマブルデバイスを搭載した電子システム装置における動作モニタ結果画面の例を示す。ディスプレイ画面41に動作モニタウインドウ42を表示し、その中に装置の動作モニタ結果を表示する。 FIG. 5 shows an example of an operation monitor result screen in an electronic system device equipped with a programmable device according to this embodiment. An operation monitor window 42 is displayed on the display screen 41, and an operation monitor result of the apparatus is displayed therein.
 動作モニタの内容は、プログラマブルデバイスからのエラー検出を表示するウインドウ43(図中、制御FPGAエラー横)と、エラーの有った物理アドレスを示すウインドウ44(図中、エラー発生アドレス横)で構成する。なお、エラー発生アドレスとして、物理アドレスを表示した例を示しているが、機能ブロックの名称とエラー検出信号の種類両方、もしくはいずれかを表示しても良い。 The contents of the operation monitor are configured by a window 43 (next to the control FPGA error in the figure) that displays error detection from the programmable device and a window 44 (next to the error occurrence address in the figure) showing the physical address where the error occurred. To do. In addition, although the example which displayed the physical address as an error occurrence address is shown, you may display the name of a functional block, the kind of error detection signal, or either.
 図6は、機能ブロック8の他の構成例を示す。図2で示した例では、機能ブロック8を矩形で定義していたが、本構成例では、単純な長方形ではなく、図6に示すような自由な形状で回路情報を格納する。 FIG. 6 shows another configuration example of the functional block 8. In the example shown in FIG. 2, the function block 8 is defined as a rectangle, but in this configuration example, circuit information is stored in a free shape as shown in FIG. 6 instead of a simple rectangle.
 図2で示した例では、フレームデータという固定長のデータで区切り構成することとしていたが、図6に示す例では、フレームデータという区切りはなく、可変長のデータで区切り実現する。固定長のデータフレームは、長方形の機能ブロックに納めるため使用していないフレームデータも含めてまとめる必要があり、回路情報データを効率よく格納することが困難な場合がある。 In the example shown in FIG. 2, the delimiter is configured with fixed-length data called frame data. However, in the example shown in FIG. 6, the delimitation is realized with variable-length data without the delimitation of frame data. The fixed-length data frame needs to be collected together with frame data that is not used because it is stored in a rectangular functional block, and it may be difficult to efficiently store circuit information data.
 そのため、ユーザロジック情報を格納していないユーザロジックデータ領域13も環境放射線によるエラー有無の判断対象となる。この格納していないユーザロジックデータ領域13でエラーを検出した場合も、機能的には問題ないにも関わらずエラーと判断することになり、返ってプログラマブルデバイスとしてのエラー率を上げてしまうことになる。 Therefore, the user logic data area 13 that does not store user logic information is also subject to determination of the presence or absence of errors due to environmental radiation. Even if an error is detected in the unstored user logic data area 13, it will be determined as an error although there is no functional problem, and the error rate as a programmable device will be raised. Become.
 可変長データにすることで、機能ブロックの物理的なアドレスを管理する情報量は増えるが、上述したように矩形にするために有効なユーザロジック情報を含まないデータフレームを付加することが必要なく、回路情報を格納するコンフィギュレーションメモリへの実装効率を上げることができるとともに、ユーザロジック情報を格納していないデータフレーム12によるエラー率の上昇を抑えることができる。 By using variable-length data, the amount of information for managing the physical address of the functional block increases. However, as described above, there is no need to add a data frame that does not contain user logic information effective for making a rectangle. In addition, it is possible to improve the mounting efficiency in the configuration memory for storing circuit information and to suppress an increase in error rate due to the data frame 12 not storing user logic information.
 本実施例に係るプログラマブルデバイスは様々な電子システム装置に適用可能であり、例えば、通信装置に適用することができる。
  通信装置は、通信用パケットデータを入力し、そのパケットデータに付加される送り先データに従って出力先を選択する通信制御ユニットと、この通信制御ユニットが正常に動作しているかを診断する診断ユニットと、通信制御ユニットおよび診断ユニットの動作開始、リセット、搭載しているプロセッサやプログラマブルデバイスの初期化等、ユニット動作の制御を行う制御ユニットで構成される。プログラマブルデバイスは、上述した全てのユニットに搭載される。
The programmable device according to the present embodiment can be applied to various electronic system apparatuses, for example, a communication apparatus.
The communication device inputs communication packet data, selects a destination according to destination data added to the packet data, a communication control unit, a diagnosis unit for diagnosing whether the communication control unit is operating normally, It is composed of a control unit that controls unit operations such as operation start and reset of the communication control unit and diagnostic unit, and initialization of installed processors and programmable devices. The programmable device is mounted on all the units described above.
 本実施例のプログラマブルデバイスを用いた電子システム装置稼動後、本実施例によるエラー検出回路網64からエラー検出信号が出力された場合、環境放射線によりコンフィギュレーションメモリのデータの一部が変化したことを示し、ユーザロジックの機能的動作に異常が発生するか否かに関わらず、コンフィグメモリのエラー訂正処理、FPGAのリセット処理、装置のファームウエアによるエラー検出前後のパケット廃棄、再送によるリカバリ処理を行い、再稼動させることができる。 When an error detection signal is output from the error detection circuit network 64 according to this embodiment after the electronic system apparatus using the programmable device of this embodiment is operated, it is confirmed that a part of the data in the configuration memory has changed due to environmental radiation. Regardless of whether an error occurs in the functional operation of the user logic, configuration memory error correction processing, FPGA reset processing, packet discard before and after error detection by device firmware, and recovery processing by retransmission are performed. Can be restarted.
 本実施例によれば、環境放射線による情報の変化をリアルタイムで監視することができ、通信装置の場合、検出、リカバリまでの時間を大幅に短縮し、廃棄するパケット数を削減することが可能となることから、通信装置のサービス停止の影響を削減できる。 According to this embodiment, information changes due to environmental radiation can be monitored in real time, and in the case of a communication device, the time until detection and recovery can be greatly shortened, and the number of discarded packets can be reduced. Therefore, the influence of the service stop of the communication device can be reduced.
 以上のことから、本発明によれば、電子システム製品に用いるプログラマブルデバイスのコンフィギュレーションメモリ内の動作に影響した部位のみエラーチェックすることで、コンフィギュレーションメモリエラーの検出時間を短縮することができる。 As described above, according to the present invention, it is possible to reduce the detection time of a configuration memory error by performing an error check only on a part that affects the operation in the configuration memory of the programmable device used in the electronic system product.
 また、本発明を適用したプログラマブルデバイスを搭載した製品では、高速にコンフィギュレーションメモリのエラーを検知でき、装置のリカバリ時間を短縮でき、高信頼化および可用性の向上を図ることができる。これより、ソフトエラー検出時間を短縮し、信頼性を向上したプログラマブルデバイス及びこれを用いた電子システム装置を提供することができる。 Also, a product equipped with a programmable device to which the present invention is applied can detect a configuration memory error at high speed, shorten the recovery time of the apparatus, and achieve high reliability and improved availability. As a result, it is possible to provide a programmable device in which the soft error detection time is shortened and the reliability is improved, and an electronic system apparatus using the programmable device.
 図7は本発明の実施例2にかかるプログラマブルデバイスの構成図である。本実施例のプログラマブルデバイスは、エラー検出信号出力手段として機能ブロック8からのエラーを検出し、検出信号を出力するのではなく、エラーを検出する回路を組み込んだ例である。 FIG. 7 is a configuration diagram of a programmable device according to the second embodiment of the present invention. The programmable device of the present embodiment is an example in which a circuit for detecting an error is incorporated instead of detecting an error from the function block 8 and outputting a detection signal as an error detection signal output means.
 このプログラマブルデバイス60は、所望の機能を実現するための回路情報を格納するコンフィギュレーションメモリ7と、コンフィギュレーションメモリ7内データへのアクセスを制御するコンフィグ制御部61とを有する。 The programmable device 60 includes a configuration memory 7 that stores circuit information for realizing a desired function, and a configuration control unit 61 that controls access to data in the configuration memory 7.
 コンフィグ制御部61はコンフィギュレーションメモリ7内のデータをリード、ライトするコンフィギュレーションメモリR/W制御部2と、コンフィギュレーションメモリ7にエラー検出回路網64と、エラー検出回路網64からの信号を集め、コンフィグ制御部61にエラー信号を伝達するエラー検出信号送信部62と、このエラー検出信号送信部62からのエラー信号を収集し、コード化するメッシュ情報収集部65と、コード化されたエラー発生部位情報をもとに物理アドレスとの対応表を格納しているアドレス格納部6から検索して物理アドレスに変換するアドレス変換部5とにより構成される。 The configuration control unit 61 reads and writes data in the configuration memory 7, and collects signals from the error detection circuit network 64 and the error detection circuit network 64 in the configuration memory 7. , An error detection signal transmission unit 62 that transmits an error signal to the configuration control unit 61, a mesh information collection unit 65 that collects and encodes the error signal from the error detection signal transmission unit 62, and an encoded error occurrence The address conversion unit 5 is searched from the address storage unit 6 that stores a correspondence table with physical addresses based on the part information and converts it into a physical address.
 図8に実施例2にかかるプログラマブルデバイスの詳細な回路例を示す。図8は、プログラマブルデバイスの一種であるFPGAの構造を示している。図7に示したエラー検出回路網64は、フリップフロップ等の記憶素子と、回路情報データを格納する論理テーブルで構成する。ここでは論理テーブルの一構成例であるルックアップテーブル(LUT)71を有し、その出力にフリップフロップ(F/F)72が接続されている。そしてLUT71とF/F72で構成するロジックブロックがタイル上に並べられている構成である。 FIG. 8 shows a detailed circuit example of the programmable device according to the second embodiment. FIG. 8 shows the structure of an FPGA which is a kind of programmable device. The error detection network 64 shown in FIG. 7 includes a storage element such as a flip-flop and a logic table that stores circuit information data. Here, a lookup table (LUT) 71, which is an example of the configuration of the logical table, is provided, and a flip-flop (F / F) 72 is connected to the output thereof. A logic block constituted by the LUT 71 and the F / F 72 is arranged on the tile.
 所望の機能を実現するためのユーザの回路情報もこのタイル上に配置されたロジックブロック上に格納して回路を構成する。本実施例でのエラー検出回路網64も同様にこのロジックブロックの一部を使用して実現する。つまり、ユーザの回路情報とエラー検出回路網64が、ロジックブロック上に混在するように配置する。 The circuit information of the user for realizing the desired function is also stored on the logic block arranged on this tile to configure the circuit. The error detection circuit network 64 in this embodiment is also realized by using a part of this logic block. That is, the user circuit information and the error detection circuit network 64 are arranged so as to be mixed on the logic block.
 本実施例のエラー検出は、環境放射線等により引き起こされるデータ反転が、複数のデータビットに及ぶMCU(Multi Cell Upset)になることを利用するものである。例えば、単一の中性子がユーザ回路を格納しているロジックブロックに衝突し、その影響が複数ビットに広がることで、近傍に配置されているエラー検出回路網64にも影響し、その結果をエラー検出信号送出部62により、エラー情報収集部65に報告される。 The error detection of the present embodiment utilizes the fact that data inversion caused by environmental radiation or the like becomes an MCU (Multi Cell Upset) that covers a plurality of data bits. For example, a single neutron collides with a logic block storing a user circuit, and the influence spreads to a plurality of bits, thereby affecting the error detection circuit network 64 arranged in the vicinity, and the result is an error. The detection signal sending unit 62 reports the error information to the error collecting unit 65.
 エラー検出回路網64は、複数の回路網で構成することで、どの部位でエラーが発生したかを検知できるように構成されている。よって、エラー位置がユーザロジック情報を格納している領域であるか否かも判定することができ、ユーザロジック情報を格納している領域にのみ対するエラーチェックを行うことが可能である。 The error detection circuit network 64 is configured by a plurality of circuit networks so that it can detect in which part an error has occurred. Therefore, it can also be determined whether or not the error position is an area in which user logic information is stored, and an error check can be performed only on the area in which user logic information is stored.
 以上のことから、本発明によれば、電子システム製品に用いるプログラマブルデバイスのコンフィギュレーションメモリ内の動作に影響した部位のみエラーチェックすることで、コンフィギュレーションメモリエラーの検出時間を短縮することができる。また、本発明を適用したプログラマブルデバイスを搭載した製品では、高速にコンフィギュレーションメモリのエラーを検知でき、装置のリカバリ時間を短縮でき、高信頼化および可用性の向上を図ることができる。これより、ソフトエラー検出時間を短縮し、信頼性を向上したプログラマブルデバイス及びこれを用いた電子システム装置を提供することができる。 As described above, according to the present invention, it is possible to reduce the detection time of a configuration memory error by performing an error check only on a part that affects the operation in the configuration memory of the programmable device used in the electronic system product. In addition, a product equipped with a programmable device to which the present invention is applied can detect a configuration memory error at high speed, shorten the recovery time of the apparatus, and achieve high reliability and improved availability. As a result, it is possible to provide a programmable device in which the soft error detection time is shortened and the reliability is improved, and an electronic system apparatus using the programmable device.
 図4は、エラー検出信号を受けた後、エラー発生部位の回路情報データを訂正する構成を有する実施の形態を示す。 FIG. 4 shows an embodiment having a configuration for correcting circuit information data of an error occurrence part after receiving an error detection signal.
 コンフィグ制御部21は、図1の実施例1にかかるコンフィグ制御部1の構成に加え、冗長ビット生成部23、冗長ビット格納部24及びエラーチェック訂正部28を有している。 The configuration control unit 21 includes a redundant bit generation unit 23, a redundant bit storage unit 24, and an error check correction unit 28 in addition to the configuration of the configuration control unit 1 according to the first embodiment illustrated in FIG.
 本実施例のコンフィグ制御部21は以下のように動作する。図示しないコンフィギュレーションメモリ7でエラーが発生し、エラー検出信号ER1等がエラーフラグエンコーダ4に入力されると、エラーフラグエンコーダ4でエラー部位を識別するアドレス情報に変換され、このアドレス情報がアドレス変換部5に出力される。 The configuration control unit 21 of this embodiment operates as follows. When an error occurs in the configuration memory 7 (not shown) and the error detection signal ER1 or the like is input to the error flag encoder 4, the error flag encoder 4 converts it into address information for identifying the error part. Is output to the unit 5.
 そして、アドレス変換部5でエラーフラグエンコーダ4から出力されるエラー部位を示すアドレス情報とアドレス格納部6に格納されているコンフィギュレーションメモリ内の物理的なアドレス情報とから、機能ブロックにおけるエラー検出部位、すなわちエラーフラグエンコーダ4から出力されるエラー部位を示すアドレスに変換され、この物理アドレス27はコンフィグメモリR/W制御部2に出力される。 Then, from the address information indicating the error part output from the error flag encoder 4 in the address conversion unit 5 and the physical address information in the configuration memory stored in the address storage unit 6, the error detection part in the functional block That is, it is converted into an address indicating an error part output from the error flag encoder 4, and this physical address 27 is output to the configuration memory R / W control unit 2.
 コンフィグメモリR/W制御部2は、アドレス変換部5が出力するアドレス情報27に基づきコンフィギュレーションメモリ7から回路情報データを読み出して、エラーチェック訂正部28にエラー部位を示す物理アドレス32を送る。 The configuration memory R / W control unit 2 reads circuit information data from the configuration memory 7 based on the address information 27 output from the address conversion unit 5, and sends a physical address 32 indicating an error part to the error check correction unit 28.
 エラーチェック訂正部28は、物理アドレス32をもとに冗長ビット格納部24を検索し、エラーチェック対象部位に対応する冗長ビットを読み出す。本実施例では、冗長ビット格納部24の冗長ビットは、物理アドレスをもとに検索するための訂正用冗長ビットロケーションタグ25と、冗長ビットデータ26で構成されている。 The error check correction unit 28 searches the redundant bit storage unit 24 based on the physical address 32, and reads the redundant bit corresponding to the error check target part. In the present embodiment, the redundant bits in the redundant bit storage unit 24 are composed of a correction redundant bit location tag 25 for searching based on a physical address and redundant bit data 26.
 エラーチェック訂正部28は、コンフィギュレーションメモリ7から読み出した回路情報データである冗長ビットデータ26を基にエラー有無をチェックし、エラーがあればコンフィグメモリR/W制御部2に信号31を送り、冗長ビットを利用して訂正する。 The error check correction unit 28 checks the presence / absence of an error based on the redundant bit data 26 that is circuit information data read from the configuration memory 7, and if there is an error, sends a signal 31 to the configuration memory R / W control unit 2, Correct using redundant bits.
 ただし、エラーチェック訂正部28の符号訂正方法は、誤り訂正符号(Error correcting code:ECC)符号や、BCH(Bose-Chaudhuri-Hocquenghem)符号や、リードソロモン符号など、その方法は問わない。例えば、冗長ビット24に図2に示すデータフレーム12に対応させたCRC符号を格納する。この場合、データフレーム12内は、ユーザロジックデータ領域13だけでも構わない。 However, the code correction method of the error check correction unit 28 may be any method such as an error correcting code (ECC) code, a BCH (Bose-Chauduri-Hocquenhem) code, or a Reed-Solomon code. For example, the CRC code corresponding to the data frame 12 shown in FIG. In this case, the user frame data area 13 alone may be included in the data frame 12.
 エラーチェック訂正部28は、エラーを訂正するとともに、エラーがあったことを外部にエラー信号として出力する。エラー信号は、例えば本実施例によるプログラマブルデバイスを搭載した電子システム装置のエラー処理部等へ出力し、電子システム装置の表示装置に出力する等のエラーに対応した処理を行う。 The error check correction unit 28 corrects the error and outputs an error signal to the outside as an error signal. For example, the error signal is output to an error processing unit or the like of the electronic system device on which the programmable device according to the present embodiment is mounted, and the process corresponding to the error is output to the display device of the electronic system device.
 また、訂正不可であった場合もエラー信号を出力する。なお、エラー信号の種類を複数設け、エラー有無を表す信号とエラーを訂正したことを示す信号と、訂正不可であったことを示す信号を設けても良い。 Also, an error signal is output if correction is not possible. A plurality of types of error signals may be provided, and a signal indicating the presence / absence of an error, a signal indicating that the error has been corrected, and a signal indicating that the error cannot be corrected may be provided.
 冗長ビット格納部24に格納する冗長ビットは、コンフィギュレーションメモリ7に回路情報データを書き込む際に、冗長ビット生成部23により生成し格納する。
  なお、エラーチェック訂正部28でエラーの有無を判定した後、エラーがあることが判明した際、外部ROMより当該回路情報データを読み込み、コンフィギュレーションメモリ7へ書き戻すことで訂正することでも良い。
Redundant bits stored in the redundant bit storage unit 24 are generated and stored by the redundant bit generation unit 23 when circuit information data is written in the configuration memory 7.
Note that when it is determined that there is an error after the error check correction unit 28 determines whether there is an error, the circuit information data may be read from the external ROM and written back to the configuration memory 7 for correction.
 この場合、冗長ビット生成部23と冗長ビット格納部24は不要となる。また、本実施例では、コンフィギュレーションメモリ7からのエラー検出信号を基にエラー判定する構成としたが、これに限定されず、例えば実施例2に記載の構成を採用したものでもよい。 In this case, the redundant bit generation unit 23 and the redundant bit storage unit 24 are not necessary. In the present embodiment, the error determination is made based on the error detection signal from the configuration memory 7, but the present invention is not limited to this. For example, the structure described in the second embodiment may be adopted.
 図9は、本実施例によるプログラマブルデバイスを搭載した電子システム装置のエラー発生時の制御方法例を示す。本実施例では電子システム装置として通信装置を例に挙げて説明する。また、図9中ではプログラマブルデバイスとしてFPGAを用いた例を示している。 FIG. 9 shows an example of a control method when an error occurs in the electronic system apparatus equipped with the programmable device according to this embodiment. In the present embodiment, a communication device will be described as an example of an electronic system device. FIG. 9 shows an example in which an FPGA is used as a programmable device.
 通信装置は、通信用パケットデータを入力し、そのパケットデータに付加される送り先データに従って出力先を選択する通信制御ユニットと、この通信制御ユニットが正常に動作しているかを診断する診断ユニットと、通信制御ユニットおよび診断ユニットの動作開始、リセット、搭載しているプロセッサやプログラマブルデバイスの初期化等、ユニット動作の制御を行う制御ユニットで構成される。プログラマブルデバイスは、上述した全てのユニットに搭載される。 The communication device inputs communication packet data, selects a destination according to destination data added to the packet data, a communication control unit, a diagnosis unit for diagnosing whether the communication control unit is operating normally, It is composed of a control unit that controls unit operations such as operation start and reset of the communication control unit and diagnostic unit, and initialization of installed processors and programmable devices. The programmable device is mounted on all the units described above.
 図9の制御方法は、通信制御ユニットに搭載されているプログラマブルデバイスでS83、S86の処理を行い、S82、S85を診断ユニットで処理し、S84、S87、S88を制御ユニットで処理する例を示している。 The control method of FIG. 9 shows an example in which the processes of S83 and S86 are performed by the programmable device mounted on the communication control unit, S82 and S85 are processed by the diagnostic unit, and S84, S87 and S88 are processed by the control unit. ing.
 本実施例のプログラマブルデバイスを用いた電子システム装置稼動(S81)後、本実施例によるプログラマブルデバイスからのコンフィグメモリエラー信号を監視する(S82)。エラーが検出された場合(S83)、装置内のエラーを発生したFPGAに関連する装置内ユニットの一時的停止処理を行う(S84)。エラー情報は、動作モニタ画面に表示される。このときログファイルに出力することも可能である。(S85)。その後、コンフィグメモリのエラー訂正処理(S86)、FPGAのリセット処理(S87)、装置のファームウエアによるエラー検出前後のパケット廃棄、再送によるリカバリ処理を行い(S88)、再稼動させる(S89)。 After the operation of the electronic system apparatus using the programmable device of this embodiment (S81), the configuration memory error signal from the programmable device according to this embodiment is monitored (S82). When an error is detected (S83), a temporary stop process is performed on the in-device unit related to the FPGA that has generated the error in the device (S84). The error information is displayed on the operation monitor screen. At this time, it is also possible to output to a log file. (S85). Thereafter, error correction processing of the configuration memory (S86), reset processing of the FPGA (S87), packet discarding before and after error detection by the firmware of the device, recovery processing by retransmission are performed (S88), and the system is restarted (S89).
 本実施例によるプログラマブルデバイスを用いて通信装置を構成すると、従来本リカバリ処理時間の多くを費やすコンフィグメモリエラーの検出時間を短縮することができ、装置復旧処理時間を短縮することが可能となる。 When the communication device is configured using the programmable device according to the present embodiment, it is possible to reduce the time for detecting a configuration memory error that has conventionally spent much of the main recovery processing time, and it is possible to reduce the device recovery processing time.
 例えば、図10に示す待機系を持つ通信装置の場合、通常1系と呼ばれる実行系が何らかの事象により停止した場合、装置を利用しているユーザに影響のない時間で系を切り替える必要がある。この場合、2系への切り替えが短時間であれば、装置を利用しているユーザには影響はないようにすることができる。 For example, in the case of a communication apparatus having a standby system as shown in FIG. 10, when an execution system, usually called system 1, stops due to some event, it is necessary to switch the system in a time that does not affect the user who uses the apparatus. In this case, if switching to the second system is performed in a short time, it is possible to prevent the user who uses the apparatus from being affected.
 また、通常停止している待機系の障害が切り替え直後に発生することもあり、環境放射線による障害のようないわゆるソフトエラー障害では、本発明のように系切り替え時間内に1系を復旧することで、待機系の障害発生に備えることが通信装置のような信頼性、可用性を求める装置において有効である。 In addition, a failure of the standby system that is normally stopped may occur immediately after switching, and in the case of a so-called soft error failure such as a failure due to environmental radiation, the system 1 is restored within the system switching time as in the present invention. Thus, preparing for the occurrence of a failure in the standby system is effective in a device that requires reliability and availability such as a communication device.
 また、電力削減を目的として、待機系のクロックを停止する等で、即動作可能な状態で、動作のみ停止させて待機することがあるが、この場合、待機系のプログラマブルデバイスが、待機から実行モードに移った直後にプログラマブルデバイス内のコンフィギュレーションメモリのデータ反転が検出されることも考えられ、その場合も系切替時間として許される時間内での復旧を行うことができる。 In addition, for the purpose of reducing power consumption, the standby system clock may be stopped in a state where it can be operated immediately, such as by stopping the standby system. In this case, the standby system programmable device executes from standby. It is conceivable that the data inversion of the configuration memory in the programmable device is detected immediately after the mode is shifted, and in this case, the recovery can be performed within the time allowed as the system switching time.
 以上述べたように、本発明によれば、プログラマブルデバイスのエラー検出時間を短縮することができ、装置の復旧時間を短縮することができる。また、本実施例によれば、電子システム製品に用いるプログラマブルデバイスの環境放射線等によるソフトエラーの検出時間を短縮することができ、装置の復旧を短時間で行うことが可能であり、通信機器等の電子システム装置の信頼性を向上することができる。 As described above, according to the present invention, the error detection time of the programmable device can be shortened, and the recovery time of the apparatus can be shortened. In addition, according to the present embodiment, it is possible to shorten the detection time of the soft error due to the environmental radiation of the programmable device used in the electronic system product, and to recover the apparatus in a short time, such as communication equipment The reliability of the electronic system apparatus can be improved.
10、60  プログラマブルデバイス
1、21、61  コンフィグ制御部
2  コンフィギュレーションメモリR/W制御部
3  CRC判定部
4  エラーフラグエンコーダ
5  アドレス変換部
6  アドレス格納部
7  コンフィギュレーションメモリ
8  機能ブロック(所望の機能実現するユーザ回路ブロック)
9  コンフィギュレーションメモリ上のコンフィグ制御部
12  データフレーム
13  ユーザロジックデータ領域
14  巡回冗長符号(CRC:Cyclic Redundancy Code)
23  冗長ビット生成部
24  冗長ビット格納部
25  訂正用冗長ビットロケーションタグ
26  冗長ビットデータ
27  リードアドレス
28  エラーチェック訂正部
29  エラー訂正フレームアドレス
30  リード・ライトフレームアドレス
31  エラー訂正フレームアドレス
41  ディスプレイ画面
42  動作モニタウインドウ
43  エラー検出を表示するウインドウ
44  物理アドレスを示すウインドウ
51  頂点アドレス
62  エラー検出信号送信部
63  コンフィギュレーションメモリの一部を拡大した図
64  エラー検出回路網
65  メッシュ情報収集部
66  エラー伝達用フリップフロップ
67  エラー検出用ルックアップテーブル(LUT)
71  ルックアップテーブル(LUT)
72  フリップフロップ(F/F)
73  回路動作経路
91  電子システム装置(通信装置の例)
92  通信装置の主系
93  通信装置のバックアップ系
94  主系に搭載されているプログラマブルデバイス
95  バックアップ系に搭載されているプログラマブルデバイス
10, 60 Programmable devices 1, 21, 61 Configuration control unit 2 Configuration memory R / W control unit 3 CRC determination unit 4 Error flag encoder 5 Address conversion unit 6 Address storage unit 7 Configuration memory 8 Functional block (realization of desired function) User circuit block)
9 Configuration Control Unit 12 on Configuration Memory 12 Data Frame 13 User Logic Data Area 14 Cyclic Redundancy Code (CRC)
23 Redundant bit generation unit 24 Redundant bit storage unit 25 Redundant bit location tag for correction 26 Redundant bit data 27 Read address 28 Error check correction unit 29 Error correction frame address 30 Read / write frame address 31 Error correction frame address 41 Display screen 42 Operation Monitor window 43 Window for displaying error detection 44 Window indicating physical address 51 Vertex address 62 Error detection signal transmission unit 63 FIG. 64 is an enlarged view of a part of the configuration memory. Error detection circuit network 65 Mesh information collection unit 66 Error transmission flip-flop 67 Error detection lookup table (LUT)
71 Look-up table (LUT)
72 Flip-flop (F / F)
73 Circuit Operation Path 91 Electronic System Device (Example of Communication Device)
92 Communication Device Main System 93 Communication Device Backup System 94 Programmable Device Installed in Main System 95 Programmable Device Installed in Backup System

Claims (12)

  1.  コンフィギュレーションメモリを有するプログラマブルデバイスであって、
     コンフィギュレーションメモリを直接リード、ライトする手段と、
     ユーザロジックでのエラーを検出し、エラー検出信号を出力するエラー検出信号出力手段と、
     前記エラー検出信号出力手段から出力されるエラー検出信号により、エラー発生部位を識別するアドレス情報を取得するエラー部位特定手段と、
     コンフィギュレーションメモリ内の物理的な位置を示すアドレス情報を格納する格納手段と、
     前記エラー部位特定手段により特定したエラー発生部位を識別するアドレス情報を、前記格納手段に格納されたアドレス情報を基に、コンフィギュレーションメモリ上のエラー発生部位の物理的な位置を示すアドレス情報に変換する物理アドレス変換手段と、
     前記物理アドレス変換部で変換したエラー発生部位の物理アドレスに基づき、当該物理アドレスに対応するコンフィギュレーションメモリ内データのエラー判定を行うエラー判定手段と、を有することを特徴とするプログラマブルデバイス。
    A programmable device having a configuration memory,
    Means for directly reading and writing the configuration memory;
    An error detection signal output means for detecting an error in the user logic and outputting an error detection signal;
    Error part specifying means for acquiring address information for identifying an error occurrence part by an error detection signal output from the error detection signal output means;
    Storage means for storing address information indicating a physical location in the configuration memory;
    The address information for identifying the error occurrence part specified by the error part specifying means is converted into address information indicating the physical position of the error occurrence part on the configuration memory based on the address information stored in the storage means. Physical address translation means for
    A programmable device comprising: error determination means for performing error determination on data in the configuration memory corresponding to the physical address based on the physical address of the error occurrence part converted by the physical address conversion unit.
  2.  請求項1に記載のプログラマブルデバイスであって、
     前記コンフィギュレーションメモリの回路情報データは、各ロジックデータ毎に巡回冗長符号が付加された構成であることを特徴とするプログラマブルデバイス。
    The programmable device according to claim 1,
    The programmable device is characterized in that the circuit information data of the configuration memory has a configuration in which a cyclic redundancy code is added to each logic data.
  3.  請求項2に記載のプログラマブルデバイスであって、
     コンフィギュレーションメモリのロジックデータを順次読み出し、ロジックデータ毎に付加された巡回冗長符号により、誤りビットを計算する計算手段を設けたことを特徴とするプログラマブルデバイス。
    A programmable device according to claim 2,
    A programmable device comprising: calculation means for sequentially reading logic data of a configuration memory and calculating an error bit using a cyclic redundancy code added to each logic data.
  4.  請求項1に記載のプログラマブルデバイスであって、
     前記エラー検出信号出力手段は、コンフィギュレーションメモリ上に配したエラー検出回路網と、前記エラー検出回路網からのエラー信号を受信し、エラー信号を送信するエラー検出信号送信部と、を有し、
     前記エラー部位特定手段は、前記エラー検出信号送信部から送信されるエラー信号を受信するメッシュ情報収集部であり、
     前記メッシュ情報収集部でコード化されたエラー発生部位情報をもとに前記物理アドレス変換手段でエラー部位の物理アドレス情報を変換することを特徴とするプログラマブルデバイス。
    The programmable device according to claim 1,
    The error detection signal output means includes an error detection circuit network arranged on a configuration memory, and an error detection signal transmission unit that receives an error signal from the error detection circuit network and transmits an error signal,
    The error part specifying means is a mesh information collecting unit that receives an error signal transmitted from the error detection signal transmitting unit,
    A programmable device, wherein physical address information of an error part is converted by the physical address conversion unit based on error occurrence part information encoded by the mesh information collection unit.
  5.  請求項1乃至4のいずれか1項に記載のプログラマブルデバイスであって、
     前記エラー判定手段で、エラー判定されたコンフィギュレーションメモリの部位のエラーを訂正するエラー訂正手段を有することを特徴とするプログラマブルデバイス。
    The programmable device according to any one of claims 1 to 4,
    A programmable device comprising error correction means for correcting an error in a portion of the configuration memory in which the error is determined by the error determination means.
  6.  請求項5に記載のプログラマブルデバイスであって、
     誤りのない回路情報を格納している記憶手段を有し、
    前記エラー判定手段でエラー判定された際に、前記エラー訂正手段でエラー部位に対応する前記記憶手段に記憶された誤りのない回路情報を読み出し、エラー部位を正しい回路情報に書き直し訂正することを特徴とするプログラマブルデバイス。
    The programmable device according to claim 5,
    Having storage means for storing circuit information without error;
    When an error is determined by the error determination unit, the error correction unit reads out error-free circuit information stored in the storage unit corresponding to the error part, and rewrites and corrects the error part into correct circuit information. A programmable device.
  7.  コンフィギュレーションメモリを有するプログラマブルデバイスを搭載した電子システム装置であって、
     前記プログラマブルデバイスは、
     コンフィギュレーションメモリを直接リード、ライトする手段と、
    と、
     前記エラー検出信号出力手段から出力されるエラー検出信号により、エラー発生部位を識別するアドレス情報を取得するエラー部位特定手段と、
     コンフィギュレーションメモリ内の物理的な位置を示すアドレス情報を格納する格納手段と、
     前記エラー部位特定手段により特定したエラー発生部位を識別するアドレス情報を、前記格納手段に格納されたアドレス情報を基に、コンフィギュレーションメモリ上のエラー発生部位の物理的な位置を示すアドレス情報に変換する物理アドレス変換手段と、
     前記物理アドレス変換部で変換したエラー発生部位の物理アドレスに基づき、当該物理アドレスに対応するコンフィギュレーションメモリ内データのエラー判定を行うエラー判定手段と、を有することを特徴とした電子システム装置。
    An electronic system device equipped with a programmable device having a configuration memory,
    The programmable device is:
    Means for directly reading and writing the configuration memory;
    When,
    Error part specifying means for acquiring address information for identifying an error occurrence part by an error detection signal output from the error detection signal output means;
    Storage means for storing address information indicating a physical location in the configuration memory;
    The address information for identifying the error occurrence part specified by the error part specifying means is converted into address information indicating the physical position of the error occurrence part on the configuration memory based on the address information stored in the storage means. Physical address translation means for
    An electronic system apparatus comprising: an error determination unit configured to determine an error of data in the configuration memory corresponding to the physical address based on the physical address of the error occurrence portion converted by the physical address conversion unit.
  8.  請求項7に記載の電子システム装置であって、
     前記コンフィギュレーションメモリの回路情報データは、各ロジックデータ毎に巡回冗長符号が付加された構成であることを特徴とする電子システム装置。
    The electronic system device according to claim 7,
    The circuit information data of the configuration memory has a configuration in which a cyclic redundancy code is added to each logic data.
  9.  請求項8に記載の電子システム装置であって、
     コンフィギュレーションメモリのロジックデータを順次読み出し、ロジックデータ毎に付加された巡回冗長符号により、誤りビットを計算する計算手段を設けたことを特徴とする電子システム装置。
    The electronic system device according to claim 8, comprising:
    An electronic system apparatus comprising: calculation means for sequentially reading logic data of a configuration memory and calculating an error bit using a cyclic redundancy code added to each logic data.
  10.  請求項7に記載の電子システム装置であって、
     前記エラー検出信号出力手段は、コンフィギュレーションメモリ上に配したエラー検出回路網と、前記エラー検出回路網からのエラー信号を受信し、エラー信号を送信するエラー検出信号送信部と、を有し、
     前記エラー部位特定手段は、前記エラー検出信号送信部から送信されるエラー信号を受信するコード化するメッシュ情報収集部であり、
     前記メッシュ情報収集部でコード化されたエラー発生部位情報をもとに前記物理アドレス変換手段でエラー部位の物理アドレス情報を変換することを特徴とする電子システム装置。
    The electronic system device according to claim 7,
    The error detection signal output means includes an error detection circuit network arranged on a configuration memory, and an error detection signal transmission unit that receives an error signal from the error detection circuit network and transmits an error signal,
    The error part specifying means is a mesh information collecting unit for encoding to receive an error signal transmitted from the error detection signal transmitting unit,
    An electronic system apparatus, wherein the physical address conversion means converts physical address information of an error part based on error occurrence part information encoded by the mesh information collection unit.
  11.  請求項7乃至10のいずれか1項に記載の電子システム装置であって、
     前記エラー判定手段で、エラー判定されたコンフィギュレーションメモリの部位のエラーを訂正するエラー訂正手段を有することを特徴とする電子システム装置。
    The electronic system device according to any one of claims 7 to 10,
    An electronic system apparatus comprising: an error correction unit that corrects an error in a portion of the configuration memory in which the error is determined by the error determination unit.
  12.  請求項11に記載の電子システム装置であって、
     誤りのない回路情報を格納している記憶手段を有し、
     前記エラー判定手段でエラー判定された際に、前記エラー訂正手段でエラー部位に対応する前記記憶手段に記憶された誤りのない回路情報を読み出し、エラー部位を正しい回路情報に書き直し訂正することを特徴とする電子システム装置。
    The electronic system device according to claim 11,
    Having storage means for storing circuit information without error;
    When an error is determined by the error determination unit, the error correction unit reads out error-free circuit information stored in the storage unit corresponding to the error part, and rewrites and corrects the error part into correct circuit information. Electronic system device.
PCT/JP2013/051517 2013-01-25 2013-01-25 Programmable device and electronic syst em device WO2014115289A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/051517 WO2014115289A1 (en) 2013-01-25 2013-01-25 Programmable device and electronic syst em device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/051517 WO2014115289A1 (en) 2013-01-25 2013-01-25 Programmable device and electronic syst em device

Publications (1)

Publication Number Publication Date
WO2014115289A1 true WO2014115289A1 (en) 2014-07-31

Family

ID=51227104

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/051517 WO2014115289A1 (en) 2013-01-25 2013-01-25 Programmable device and electronic syst em device

Country Status (1)

Country Link
WO (1) WO2014115289A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018123205A1 (en) * 2016-12-27 2018-07-05 日立オートモティブシステムズ株式会社 Microcomputer and logical circuit
CN108398915A (en) * 2017-02-08 2018-08-14 欧姆龙株式会社 Control device and its control method
CN110931074A (en) * 2019-11-25 2020-03-27 北京时代民芯科技有限公司 Optional bit width error correction and detection circuit for single event upset resistant memory

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1084275A (en) * 1996-09-06 1998-03-31 Nec Corp Logic circuit
JP2007293856A (en) * 2006-04-21 2007-11-08 Altera Corp Soft error location and sensitivity detection for programmable devices
JP2008015965A (en) * 2006-07-10 2008-01-24 Fuji Xerox Co Ltd Information processor, operation method of information processor, and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1084275A (en) * 1996-09-06 1998-03-31 Nec Corp Logic circuit
JP2007293856A (en) * 2006-04-21 2007-11-08 Altera Corp Soft error location and sensitivity detection for programmable devices
JP2008015965A (en) * 2006-07-10 2008-01-24 Fuji Xerox Co Ltd Information processor, operation method of information processor, and program

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018123205A1 (en) * 2016-12-27 2018-07-05 日立オートモティブシステムズ株式会社 Microcomputer and logical circuit
CN108398915A (en) * 2017-02-08 2018-08-14 欧姆龙株式会社 Control device and its control method
EP3361333A1 (en) * 2017-02-08 2018-08-15 Omron Corporation Control device and method of controlling the same
JP2018128820A (en) * 2017-02-08 2018-08-16 オムロン株式会社 Control device and method for controlling the same
CN108398915B (en) * 2017-02-08 2021-03-02 欧姆龙株式会社 Control device and control method thereof
CN110931074A (en) * 2019-11-25 2020-03-27 北京时代民芯科技有限公司 Optional bit width error correction and detection circuit for single event upset resistant memory
CN110931074B (en) * 2019-11-25 2021-09-28 北京时代民芯科技有限公司 Optional bit width error correction and detection circuit for single event upset resistant memory

Similar Documents

Publication Publication Date Title
US20140164839A1 (en) Programmable device, method for reconfiguring programmable device, and electronic device
CN100578462C (en) Device, method and system for reducing the error rate in clock synchronization dual-modular redundancy system
CN105659215B (en) A kind of fault handling method, relevant apparatus and computer
TWI766874B (en) METHOD AND SYSTEM OF HIGH-AVAILABILITY PCIe SSD WITH SOFTWARE-HARDWARE JOINTLY ASSISTED IMPLEMENTATION TO ENHANCE IMMUNITY ON MULTI-CELL UPSET
JP6290934B2 (en) Programmable device, error holding system, and electronic system apparatus
US8108724B2 (en) Field replaceable unit failure determination
US9535784B2 (en) Self monitoring and self repairing ECC
JP2007248378A (en) Semiconductor integrated circuit
US8448042B2 (en) Data processing device and a method for error detection and error correction
US20090217281A1 (en) Adaptable Redundant Bit Steering for DRAM Memory Failures
US20120011423A1 (en) Silent error detection in sram-based fpga devices
CN110413456B (en) Triple redundant data step-by-step voting system and method
US20130246868A1 (en) Arithmetic processing apparatus and method of controlling arithmetic processing apparatus
WO2014115289A1 (en) Programmable device and electronic syst em device
US9043683B2 (en) Error protection for integrated circuits
US8522091B1 (en) Prioritized detection of memory corruption
US9201727B2 (en) Error protection for a data bus
US9041428B2 (en) Placement of storage cells on an integrated circuit
US10108486B2 (en) Error protection
JP2007135190A (en) Single event functional interrupt detection system
JP6408482B2 (en) Programmable device and electronic system apparatus using the same
US20100162269A1 (en) Controllable interaction between multiple event monitoring subsystems for computing environments
CN113254252B (en) Satellite load FPGA with BRAM and use method thereof
JP5838103B2 (en) Electronic device, soft error tolerance evaluation system and evaluation method
US20140201599A1 (en) Error protection for integrated circuits in an insensitive direction

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13873115

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13873115

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP