Electronic devices, reconfiguration methods, and programs
The electronic device and method address the challenge of soft errors in FPGAs by switching to dummy data upon detection, allowing for cost-effective error resolution without external circuits, suitable for various electronic devices including those in plants.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2023-03-29
- Publication Date
- 2026-04-01
AI Technical Summary
Conventional methods for addressing soft errors in FPGAs require external circuits, which are costly and impractical to install in the large number of existing electronic devices, especially in plants where communication and instrumentation equipment is concerned.
An electronic device and method that utilizes a configuration data switching unit to switch to non-existent dummy configuration data upon detecting a soft error, thereby triggering a reload of the actual configuration data, eliminating the need for external reconfiguration circuits.
Enables easy resolution of soft errors in FPGAs without adding external circuits, applicable to a wide range of devices including those without pre-installed reconfiguration capabilities, particularly beneficial in plants with numerous electronic devices.
Smart Images

Figure 0007838508000001 
Figure 0007838508000002 
Figure 0007838508000003
Abstract
Description
Technical Field
[0001] The present invention relates to an electronic device, a reconfiguration method, and a program.
Background Art
[0002] In recent years, in plants, DCS (Distributed Control System) and SIS (Safety Instrumented System) have become more important. Inside various electronic devices such as DCS, SIS, communication devices, and other FA (Factory Automation) devices used in plants, an FPGA (Field Programmable Gate Array), which is an integrated circuit, is often mounted.
[0003] There is a risk that soft errors may occur in the FPGA, in which data such as CRAM (Configuration Random Access Memory), which is an internal configuration memory, is destroyed due to disturbances caused by cosmic rays or the like. Therefore, when configuring logic that requires reliability, countermeasures are necessary.
[0004] Note that many FPGA vendors implement a soft error detection function as a standard function in the FPGA. Therefore, for example, when a soft error signal is output by such a detection function, an FPGA user can take a countermeasure such as previously mounting an external circuit in an electronic device that reconfigures the FPGA using this signal as a trigger.
Prior Art Documents
Patent Documents
[0005]
Patent Document 1
Summary of the Invention
[0006] However, conventional technology still has room for improvement in its ability to easily eliminate soft errors without adding external circuitry.
[0007] For example, when using the external circuit described above, the electronic device must have the external circuit pre-installed. Therefore, there is a problem in that conventional technology cannot be applied to electronic devices that do not have this external circuit installed.
[0008] One possible solution to this problem is to replace the electronic equipment with products that have external circuits so that conventional technology can be applied. However, the number of electronic devices installed in the plant is enormous, and this is not easy even from a cost perspective, considering only labor costs, human resource costs, and other expenses.
[0009] The present invention aims to provide an electronic device, a reconfiguration method, and a program that can easily resolve soft errors without adding external circuits. [Means for solving the problem]
[0010] The electronic device relating to one aspect comprises a first storage unit, a second storage unit, a user processing unit, a switching unit, and a loader. The first storage unit stores first configuration data. The second storage unit is loaded with the first configuration data. The user processing unit executes user processing included in the first configuration data. If a soft error is detected in the second storage unit during the execution of the user processing, the switching unit switches the first storage unit to second configuration data, which does not actually exist. The loader reloads the first configuration data into the second storage unit, treating the switch to the second configuration data as an error.
[0011] A reconfiguration method relating to one aspect involves a computer comprising a first storage unit that stores first configuration data and a second storage unit into which the first configuration data is loaded. The computer executes user processing included in the first configuration data loaded into the second storage unit, and if a soft error is detected in the second storage unit during the execution of the user processing, it executes a switch to non-existent second configuration data in the first storage unit, and then reloads the first configuration data into the second storage unit as an error due to the switch to the second configuration data.
[0012] The program relating to one aspect causes a computer, which includes a first storage unit that stores first configuration data and a second storage unit into which the first configuration data is loaded, to execute user processing included in the first configuration data loaded into the second storage unit, and if a soft error is detected in the second storage unit during the execution of the user processing, to execute a switch to second configuration data that does not actually exist in the first storage unit, and to reload the first configuration data into the second storage unit as an error when the switch to the second configuration data occurs. [Effects of the Invention]
[0013] According to one embodiment, it is possible to provide an electronic device, a reconfiguration method, and a program that can easily resolve soft errors without adding external circuits. [Brief explanation of the drawing]
[0014] [Figure 1] Block diagram showing examples of electronic device configurations related to existing technologies. [Figure 2] This is a block diagram showing an example configuration of an electronic device according to an embodiment. [Figure 3] This is an explanatory diagram of the reconfiguration method according to an embodiment. [Figure 4] This flowchart shows the processing procedure performed by the electronic device according to the embodiment. [Figure 5]This is a hardware configuration diagram showing an example of a computer that implements the functions of an electronic device according to the embodiment. [Modes for carrying out the invention]
[0015] The embodiments of the electronic device, reconfiguration method, and program disclosed herein will be described in detail below with reference to the drawings. However, the present invention is not limited by these embodiments. Furthermore, the same elements are denoted by the same reference numerals, redundant descriptions are omitted as appropriate, and each embodiment can be combined as appropriate within the bounds of consistency.
[0016] Furthermore, the following explanation will primarily use the case where the electronic device 10 (see Figure 2) according to the embodiment is equipped with an FPGA 12 (see Figure 1). The FPGA 12 is an example of a Programmable Logic Device (PLD), which is an integrated circuit whose internal logic circuits can be reconfigured by the user.
[0017] "Configuration" refers to the FPGA12 loading the circuit configuration information (logic and wiring) of the logic circuit from the program ROM (Read Only Memory) 11 (see Figure 1) into the CRAM 121 (see Figure 1). Hereafter, "configuration" will be abbreviated as "config" as appropriate. Accordingly, the soft error "reconfiguration" will be abbreviated as "reconfig" as appropriate. "Reconfiguration" can be interpreted as "reset" or "reboot" as appropriate.
[0018] Furthermore, in the following description, the reconfiguration method according to the embodiment is assumed to be a reconfiguration method for FPGA12.
[0019] The reconfiguration method according to this embodiment will be described with reference to FIGS. 1 to 3. FIG. 1 is a block diagram showing a configuration example of an electronic device 10A according to the prior art. FIG. 2 is a block diagram showing a configuration example of an electronic device 10 according to the embodiment. FIG. 3 is an explanatory diagram of the reconfiguration method according to the embodiment.
[0020] In FIGS. 1 and the corresponding FIG. 2, only the components necessary for the description of this embodiment are shown as functional blocks, and the description of general components is omitted.
[0021] [Configuration Example of Electronic Device According to Prior Art] First, the problems when using the prior art will be described more specifically. As shown in FIG. 1, an electronic device 10A according to the prior art includes a program ROM 11, an FPGA 12, and a reconfiguration circuit 13. The program ROM 11, the FPGA 12, and the reconfiguration circuit 13 are mounted, for example, on a PWB (Printed Wired Board) mounted on the electronic device 10A.
[0022] The program ROM 11 stores configuration data 11a. The configuration data 11a is data including circuit configuration information to be loaded into the CRAM 121 of the FPGA 12. The configuration data 11a may be read as "program data". Note that the capacity of the program ROM 11 is restricted to one piece of program data of the FPGA 12 from the viewpoint of cost and the like.
[0023] As described above, the FPGA 12 is an integrated circuit whose internal logic circuit can be reconfigured by the user. The FPGA 12 includes a configuration controller 120, a CRAM 121, standard function blocks 122, and user logic blocks 123.
[0024] The configuration controller 120 is equivalent to a so-called "loader". When the power to the electronic device 10A is turned on and the FPGA 12 starts up, the configuration controller 120 reads the configuration data 11a from the program ROM 11 and loads it into the CRAM 121.
[0025] Furthermore, when the configuration controller 120 receives a reconfiguration command from the reconfiguration circuit 13, it performs a reconfiguration by rereading the configuration data 11a from the program ROM 11 and reloading it into the CRAM 121.
[0026] CRAM121 expands the configuration data 11a, which includes circuit configuration information, onto the memory image.
[0027] The standard function block 122 is a logic block that executes standard functions provided by the FPGA 12 vendor. The standard function block 122 includes a soft error detection unit 122a. The soft error detection unit 122a monitors for the occurrence of soft errors due to disturbances such as cosmic rays and outputs a soft error detection signal when a soft error occurs.
[0028] The user logic block 123 is a logic block that can be arbitrarily reconfigured by the user of FPGA 12. The user logic block 123 has a user processing unit 123a. The user processing unit 123a executes processing according to an algorithm arbitrarily described by the user using Hardware Description Language (HDL).
[0029] Incidentally, in existing technologies, as a countermeasure when the aforementioned soft error occurs, an external circuit is sometimes installed in advance, and the soft error signal is used as a trigger to cause this external circuit to issue a reconfiguration command, thereby reconfiguring and resolving the soft error.
[0030] The reconfiguration circuit 13 corresponds to this external circuit. The reconfiguration circuit 13 is connected to the FPGA 12 via external pins PN1 and PN2. When the soft error detection unit 122a detects a soft error, it outputs a soft error signal to external pin PN1.
[0031] When the reconfiguration circuit 13 receives a soft error signal via external pin PN1, it issues a reconfiguration command to external pin PN2, activating external pin PN2. When the configuration controller 120 detects the activation of external pin PN2 by this reconfiguration command, the configuration controller 120 performs a reconfiguration by rereading the configuration data 11a from the program ROM 11 and reloading it into the CRAM 121.
[0032] However, when using this reconfiguration circuit 13, it is necessary to have the reconfiguration circuit 13 installed in the electronic device 10A beforehand. For this reason, there is a problem that existing technology cannot be applied to electronic devices that do not have this reconfiguration circuit 13 installed, for example.
[0033] Regarding this problem, one possible approach is to replace the electronic equipment with products equipped with a reconfiguration circuit 13 so that existing technologies can be applied. However, the number of electronic devices installed in the plant is enormous, and this is particularly evident in communication equipment connecting the field side and the instrumentation side. Therefore, even considering only the cost aspects such as labor costs, personnel costs, and operational costs, it is not an easy solution.
[0034] Therefore, in the reconfiguration method according to the embodiment, the electronic device 10, which includes a program ROM 11 that stores first configuration data and a CRAM 121 into which the first configuration data is loaded, executes user processing included in the first configuration data loaded into the CRAM 121. If a soft error in the CRAM 121 is detected during the execution of the user processing, it executes a switch to second configuration data that does not actually exist in the program ROM 11, and then, treating the switch to the second configuration data as an error, it reloads the first configuration data into the CRAM 121.
[0035] [Example configuration of electronic equipment according to the embodiment] Figure 2 shows an example configuration of the electronic device 10 according to this embodiment. Since Figure 2 corresponds to Figure 1, this explanation will primarily focus on the differences between Figure 1 and Figure 2.
[0036] As shown in Figure 2, the electronic device 10 according to this embodiment differs from the existing electronic device 10A in that, in addition to storing the first configuration data 11b in the program ROM 11, it is disguised as if the second configuration data 11c is also stored there.
[0037] The first configuration data 11b is identical to the configuration data 11a shown in Figure 1. Furthermore, the first configuration data 11b is the default configuration data that is initially loaded into the CRAM 121 when the power is turned on.
[0038] On the other hand, the second configuration data 11c has no actual existence. The second configuration data 11c is made to appear as if it is stored in the program ROM 11 due to the configuration data switching command setting described later. In other words, the second configuration data 11c is "dummy" configuration data, as shown in Figure 2.
[0039] Furthermore, the electronic device 10 differs from the existing electronic device 10A in that the standard function block 122 further includes a configuration data switching unit 122b. The configuration data switching unit 122b performs configuration data switching, which is one of the standard functions provided by the FPGA 12 vendor. In this embodiment, the configuration data switching unit 122b is pre-enabled by the user, as shown in Figure 2, so that this function can be executed.
[0040] The configuration data switching unit 122b is configured to issue a configuration data switching command to the configuration controller 120 when a trigger signal specified by the user is input, instructing it to switch the configuration data.
[0041] In this embodiment, the configuration data switching unit 122b is pre-specified by the user as a trigger signal when a soft error signal from the soft error detection unit 122a is input. Furthermore, the configuration data switching unit 122b is pre-specified by the user to issue a configuration data switching command that instructs switching from the first configuration data 11b to the second configuration data 11c when a soft error signal is input.
[0042] In this embodiment, when a soft error signal is input from the soft error detection unit 122a, the configuration data switching unit 122b issues a configuration data switching command to the configuration controller 120, instructing it to switch from the first configuration data 11b to the second configuration data 11c. Figure 3 shows the reconfiguration method executed by the electronic device 10 configured in this way.
[0043] [Description of the reconfiguration method according to the embodiment] As shown in Figure 3, in the reconfiguration method according to this embodiment, when the electronic device 10 is powered on, the configuration controller 120 of the FPGA 12 executes a configuration that loads the first configuration data 11b of the program ROM 11 into the CRAM 121.
[0044] Then, when the configuration controller 120 receives a configuration data switching command from the configuration data switching unit 122b while the electronic device 10 is starting up, it performs a reconfiguration by loading the second configuration data 11c from the program ROM 11 into the CRAM 121.
[0045] However, as mentioned above, the second configuration data 11c is dummy data and has no actual existence, so this reconfiguration will result in an "error". In the reconfiguration method according to the embodiment, the electronic device 10 is deliberately configured so that reconfiguration to the second configuration data 11c results in an error.
[0046] If the reconfiguration to the second configuration data 11c fails, the configuration controller 120 performs a reconfiguration that loads the default first configuration data 11b into the CRAM 121. As a result, according to the reconfiguration method of this embodiment, a reconfiguration using the first configuration data 11b is performed in response to a soft error, so the first configuration data 11b is reloaded into the CRAM 121, and the soft error can be resolved.
[0047] Thus, in the reconfiguration method according to this embodiment, a situation in which an error occurs during reconfiguration to the second configuration data 11c is deliberately created, thereby enabling the final reconfiguration using the first configuration data 11b.
[0048] In other words, the reconfiguration method according to the embodiment effectively resets the FPGA12 by using a configuration data switching algorithm that is not a reset algorithm that resets the FPGA12.
[0049] Therefore, according to the reconfiguration method of the embodiment, even if the FPGA12 vendor does not provide a reset function as a standard feature, the FPGA12 can be reset by a configuration data switching function instead, thereby eliminating soft errors.
[0050] Furthermore, this eliminates the need to replace configuration data or products in existing electronic devices 10, even if a reset function is provided by the FPGA12 vendor.
[0051] Returning to the explanation of Figure 2, the reconfiguration method according to the embodiment eliminates the need to implement the reconfiguration circuit 13, as shown in Figure 2. Consequently, the use of external pins PN1 and PN2 also becomes unnecessary. Therefore, the reconfiguration method according to the embodiment eliminates the need to replace the existing electronic device 10 with a product equipped with the reconfiguration circuit 13, making it possible to easily resolve soft errors.
[0052] Furthermore, according to the reconfiguration method of the embodiment, a non-existent second configuration data 11c is spoofed in the program ROM 11. In other words, the program ROM 11 is not actually used due to the second configuration data 11c. Therefore, according to the reconfiguration method of the embodiment, even if there is a constraint that the program ROM 11 only has the capacity for one configuration data, it is possible to easily resolve soft errors without replacing the program ROM 11.
[0053] From the above, the reconfiguration method according to the embodiment is particularly useful in plants and the like where a vast number of electronic devices 10 are installed.
[0054] [Processing Procedure] Next, the processing procedure performed by the electronic device 10 according to the embodiment will be explained using Figure 4. Figure 4 is a flowchart showing the processing procedure performed by the electronic device 10 according to the embodiment.
[0055] As shown in Figure 4, first, the electronic device 10 activates the configuration data switching unit 122b as specified by the user (step S101). Then, the user specifies that the configuration data switching unit 122b should switch to the second configuration data 11c triggered by a soft error signal (step S102).
[0056] Based on this, when the electronic device 10 is powered on (step S103), it first loads the default first configuration data 11b into the CRAM 121 (step S104).
[0057] Then, the user processing unit 123a of the electronic device 10 executes user processing (step S105). While the user processing is being executed, the soft error detection unit 122a monitors for the occurrence of soft errors (step S106).
[0058] If it is determined that a soft error has occurred (step S106, Yes), the electronic device 10's configuration data switching unit 122b issues a configuration data switching command to the configuration controller 120 (step S107). In response, the configuration controller 120 performs the switch to the second configuration data 11c (step S108).
[0059] However, since the second configuration data 11c is a dummy configuration data with no actual data, a switching error will occur (step S109).
[0060] Then, the configuration controller 120 of the electronic device 10 reloads the first configuration data 11b as an error handling step (step S110). This resolves the soft error in the electronic device 10. The electronic device 10 then repeats the process from step S105.
[0061] Furthermore, if no soft error occurs in step S106 (step S106, No), the electronic device 10 will repeat the process from step S105.
[0062] [effect] As described above, the electronic device 10 according to the embodiment includes a program ROM 11 (corresponding to an example of a "first storage unit"), a CRAM 121 (corresponding to an example of a "second storage unit"), a user processing unit 123a, a configuration data switching unit 122b, and a configuration controller 120 (corresponding to an example of a "loader"). The program ROM 11 stores the first configuration data 11b. The CRAM 121 is loaded with the first configuration data 11b. The user processing unit 123a executes the user processing included in the first configuration data 11b. If a soft error in the CRAM 121 is detected during the execution of the above user processing, the configuration data switching unit 122b switches to the second configuration data 11c, which does not actually exist in the program ROM 11. The configuration controller 120 recognizes the switch to the second configuration data 11c as an error and reloads the first configuration data 11b into the CRAM 121. Therefore, according to the electronic device 10 of this embodiment, soft errors can be easily resolved without adding a reconfiguration circuit 13 (corresponding to an example of an "external circuit").
[0063] Furthermore, the program ROM 11 has a capacity equivalent to one configuration data file. Therefore, according to the electronic device 10 of this embodiment, even with the constraint that the program ROM 11 only has a capacity equivalent to one configuration data file, it is possible to easily resolve soft errors without replacing the program ROM 11 by faking the existence of a non-existent second configuration data file 11c.
[0064] Furthermore, the electronic device 10 includes a programmable logic device. The programmable logic device comprises a CRAM 121, a user processing unit 123a, a configuration data switching unit 122b, and a configuration controller 120. Therefore, according to the electronic device 10 of this embodiment, when a programmable logic device, such as a PAL (Programmable Array Logic), GAL (Generic Array Logic), CPLD (Complex Programmable Logic Device), FPGA 12, etc., is installed, soft errors can be easily resolved without adding a reconfiguration circuit 13.
[0065] Furthermore, the configuration data switching unit 122b is pre-enabled so that the switching between the first configuration data 11b and the second configuration data 11c can be performed. Therefore, according to the electronic device 10 of this embodiment, soft errors can be easily resolved without adding a reconfiguration circuit 13 by utilizing the configuration data switching function, which is a standard function of the FPGA 12.
[0066] Furthermore, the configuration data switching unit 122b can issue a configuration data switching command (corresponding to an example of a "switching command") to the configuration controller 120 when an arbitrary trigger signal is specified. When a soft error signal is input when the above-mentioned soft error is detected, the unit is pre-configured to issue a configuration data switching command to the configuration controller 120 instructing it to switch to the second configuration data 11c. Therefore, according to the electronic device 10 of the embodiment, by deliberately creating a situation in which an error occurs when reconfiguring to the second configuration data 11c, it is possible to ultimately achieve reconfiguration with the first configuration data 11b. In other words, the electronic device 10 of the embodiment effectively resets the FPGA 12 using a configuration data switching algorithm that is not a reset algorithm that resets the FPGA 12. Therefore, according to the electronic device 10 of the embodiment, even if the FPGA 12 vendor does not provide a reset function as a standard function, the FPGA 12 can be reset by the configuration data switching function instead, and the soft error can be resolved.
[0067] Furthermore, the above-mentioned programmable logic device is an FPGA 12. Therefore, according to the electronic device 10 of this embodiment, when an FPGA 12 is installed, soft errors can be easily resolved without adding a reconfiguration circuit 13.
[0068] Furthermore, the electronic equipment 10 is installed in the plant. Therefore, according to the electronic equipment 10 of this embodiment, soft errors can be easily resolved in a plant where a huge number of electronic equipment 10 are installed, without adding a reconfiguration circuit 13.
[0069] Furthermore, the electronic device 10 is installed as a communication device in the plant. Therefore, according to the electronic device 10 of this embodiment, soft errors can be easily resolved in communication devices, which tend to be installed in larger quantities in a plant compared to other devices, without adding a reconfiguration circuit 13.
[0070] Furthermore, the reconfiguration method according to the embodiment includes an electronic device 10 (corresponding to an example of a "computer") which has a program ROM 11 that stores the first configuration data 11b and a CRAM 121 into which the first configuration data 11b is loaded. The device executes user processing included in the first configuration data 11b, and if a soft error in the CRAM 121 is detected during the execution of the user processing, it executes a switch to the second configuration data 11c, which does not have a physical form in the program ROM 11, and then, treating the switch to the second configuration data 11c as an error, it reloads the first configuration data 11b into the CRAM 121. Therefore, according to the reconfiguration method according to the embodiment, soft errors can be easily resolved without adding a reconfiguration circuit 13.
[0071] Furthermore, the program according to the embodiment causes an electronic device 10 (corresponding to an example of a "computer"), which includes a program ROM 11 that stores the first configuration data 11b and a CRAM 121 into which the first configuration data 11b is loaded, to execute user processing included in the first configuration data 11b. If a soft error in the CRAM 121 is detected during the execution of the user processing, the program ROM 11 is instructed to switch to the non-existent second configuration data 11c, and the switch to the second configuration data 11c is treated as an error, causing the first configuration data 11b to be reloaded into the CRAM 121. Therefore, according to the program according to the embodiment, soft errors can be easily resolved without adding a reconfiguration circuit 13.
[0072] Furthermore, according to the program of this embodiment, since the additional elements for realizing the program are contained within the FPGA 12, it can be applied to existing electronic devices 10 by adding them later (reconfiguring the logic circuits inside the FPGA 12).
[0073] [Other embodiments] Now, while embodiments of the present invention have been described, the present invention may be implemented in various other forms besides those described above.
[0074] [system] Unless otherwise specified, the processing procedures, control procedures, specific names, and various data and parameters shown in the above documents and drawings may be changed at will.
[0075] Furthermore, the components of each illustrated device are functionally conceptual and do not necessarily need to be physically configured as shown. In other words, the specific forms of distribution and integration of each device are not limited to those shown. That is, all or part of them can be functionally or physically distributed and integrated in any unit according to various loads and usage conditions.
[0076] Furthermore, each processing function performed by each device may be implemented, in whole or in part, by a CPU and a program executed for analysis by that CPU, or by hardware using wired logic.
[0077] [Hardware] The electronic device 10 according to the above embodiment is realized by a computer 1000 having a configuration such as that shown in Figure 5. Figure 5 is a hardware configuration diagram showing an example of a computer 1000 that realizes the functions of the electronic device 10 according to the embodiment.
[0078] As shown in Figure 5, the computer 1000 includes a communication device 1000a, a secondary storage device 1000b, a memory 1000c, and a processor 1000d. Furthermore, the components shown in Figure 5 are interconnected by a bus or the like.
[0079] The communication device 1000a is a NIC (Network Interface Card) or the like, and communicates with other devices. The secondary storage device 1000b is implemented using flash memory or an HDD, and stores programs and databases that operate the functions shown in Figure 2.
[0080] The processor 1000d reads programs that perform the same processing as each processing unit shown in Figure 2 from the secondary storage device 1000b, etc., and loads them into memory 1000c, thereby operating threads that perform the functions described in Figure 2, etc. For example, these threads perform the same functions as each processing unit of the electronic device 10. Specifically, the processor 1000d reads programs that have the same functions as each functional block of the FPGA 12 from the secondary storage device 1000b, etc. Then, the processor 1000d executes threads that perform the same processing as each functional block of the FPGA 12.
[0081] Thus, the computer 1000 operates as an electronic device that performs various processing methods by reading and executing a program. Furthermore, the computer 1000 can also achieve the same functionality as the embodiment described above by reading the program from a recording medium using a media reader and executing the read program. It should be noted that the program referred to herein is not limited to being executed solely by the computer 1000. For example, the present invention can be similarly applied when a computer or server with other hardware configurations executes the program, or when these devices cooperate to execute the program.
[0082] This program can be distributed via a network such as the Internet. Furthermore, this program can be recorded on a computer-readable recording medium such as an HDD, flexible disk (FD), CD-ROM, MO (Magneto-Optical disk), or DVD (Digital Versatile Disc), and executed by reading it from the recording medium by a computer. A recording medium on which such a program is recorded is also an embodiment of this disclosure.
[0083] [others] Some examples of the combinations of technical features that will be disclosed are listed below.
[0084] (1) A first storage unit that stores the first configuration data, The second storage unit on which the first configuration data is loaded, A user processing unit that executes user processing included in the first configuration data, A switching unit that, when a soft error is detected in the second storage unit during the execution of the user processing, switches to a second configuration data that does not actually exist in the first storage unit, A loader that reloads the first configuration data into the second storage unit, treating the switch to the second configuration data as an error, An electronic device equipped with the following features. (2) The first storage unit has a capacity equivalent to one configuration data file. (1) Electronic equipment as described above. (3) Equipped with programmable logic devices, The aforementioned programmable logic device is The system comprises the second storage unit, the user processing unit, the switching unit, and the loader. (1) or (2) the electronic device described above. (4) The aforementioned switching unit is The following are pre-enabled so that the switching between the first configuration data and the second configuration data can be performed. (3) Electronic equipment as described above. (5) The aforementioned switching unit is It is possible to issue a switching command to the loader by specifying an arbitrary trigger signal, and it is pre-configured to issue the switching command to the loader instructing switching to the second configuration data when a soft error signal is input when the soft error is detected. (3) or (4) the electronic device described above. (6) The aforementioned programmable logic device is an FPGA (Field Programmable Gate Array). (3), (4), or (5) the electronic equipment described in (3), (4), or (5). (7) Installed in the plant, Any electronic device listed in any one of (1) to (6). (8) The following are installed as communication equipment in the aforementioned plant: (7) Electronic equipment as described above. (9) A computer comprising a first storage unit that stores first configuration data and a second storage unit into which the first configuration data is loaded, The user processing included in the first configuration data loaded into the second storage unit is executed. If a soft error is detected in the second storage unit during the execution of the user processing, the first storage unit will be switched to the non-existent second configuration data. The first configuration data is reloaded into the second storage unit as an error when switching to the second configuration data. The method for executing the process and reconfiguring. (10) A computer comprising a first storage unit that stores first configuration data and a second storage unit into which the first configuration data is loaded, The user processing included in the first configuration data loaded into the second storage unit is executed. If a soft error is detected in the second storage unit during the execution of the user processing, the first storage unit will be switched to the non-existent second configuration data. The first configuration data is reloaded into the second storage unit as an error when switching to the second configuration data. A program that executes a process. (11) A computer-readable recording medium on which a program is recorded, The aforementioned program, A computer comprising a first storage unit that stores first configuration data and a second storage unit into which the first configuration data is loaded, The user processing included in the first configuration data loaded into the second storage unit is executed. If a soft error is detected in the second storage unit during the execution of the user processing, the first storage unit will be switched to the non-existent second configuration data. The first configuration data is reloaded into the second storage unit as an error when switching to the second configuration data. A computer-readable recording medium that performs processing. [Explanation of symbols]
[0085] 10,10A electronic equipment 11 Program ROM 11a Configuration Data 11b First Configuration Data 11c Second Configuration Data 12 FPGA 13 Reconfiguration Circuit 120 Configuration Controllers 121 CRAM 122 Standard Function Blocks 122a Soft error detection unit 122b Configuration Data Switching Section 123 User Logical Blocks 123a User Processing Unit
Claims
1. A first storage unit that stores the first configuration data, The second memory unit, A loader that loads the first configuration data from the first storage unit to the second storage unit, A user processing unit that executes user processing included in the first configuration data loaded into the second storage unit, A switching unit that, when a soft error is detected in the second storage unit during the execution of the user processing, issues a switching command to the loader from the first configuration data to second configuration data that is not stored in the first storage unit and would cause an error if loaded into the second storage unit, Equipped with, The loader, upon failure to load the second configuration data into the second storage unit in response to the switching command, performs an error process by reloading the first configuration data into the second storage unit. electronic equipment.
2. The first storage unit has a capacity equivalent to one configuration data file. The electronic device according to claim 1.
3. Equipped with programmable logic devices, The aforementioned programmable logic device is The system comprises the second storage unit, the user processing unit, the switching unit, and the loader. The electronic device according to claim 1.
4. The aforementioned switching unit is The following are pre-enabled so that the commands to switch between the first and second configuration data can be issued. The electronic device according to claim 3.
5. The aforementioned switching unit is It is possible to issue a switching command to the loader by specifying an arbitrary trigger signal, and it is pre-configured to issue the switching command to the loader instructing switching to the second configuration data when a soft error signal is input when the soft error is detected. The electronic device according to claim 3.
6. The aforementioned programmable logic device is an FPGA (Field Programmable Gate Array). The electronic device according to claim 3.
7. Installed in the plant, The electronic device according to claim 1.
8. The following are installed as communication equipment in the aforementioned plant: The electronic device according to claim 7.
9. A computer comprising a first storage unit for storing first configuration data, a second storage unit, and a loader for loading the first configuration data from the first storage unit to the second storage unit, The user processing included in the first configuration data loaded into the second storage unit is executed. If a soft error is detected in the second storage unit during the execution of the user processing, a switching command is issued to the loader from the first configuration data to the second configuration data which is not stored in the first storage unit and which would cause an error if loaded into the second storage unit. If the loader fails to load the second configuration data into the second storage unit in response to the switching command, the first configuration data is reloaded into the second storage unit as an abnormal processing step. The method for executing the process and reconfiguring.
10. A computer comprising a first storage unit for storing first configuration data, a second storage unit, and a loader for loading the first configuration data from the first storage unit to the second storage unit, The user processing included in the first configuration data loaded into the second storage unit is executed. If a soft error is detected in the second storage unit during the execution of the user processing, a switching command is issued to the loader from the first configuration data to the second configuration data which is not stored in the first storage unit and which would cause an error if loaded into the second storage unit. If the loader fails to load the second configuration data into the second storage unit in response to the switching command, the first configuration data is reloaded into the second storage unit as an abnormal processing step. A program that executes a process.
Citation Information
Patent Citations
Error correction circuit of programmable logic circuit
JP2012053778A
FPGA monitoring control circuit
JP2014052781A
Device for mounting FPGA
JP2015216507A