WO2015104810A1 - Fpga及び該fpgaを用いた高信頼システム - Google Patents

Fpga及び該fpgaを用いた高信頼システム Download PDF

Info

Publication number
WO2015104810A1
WO2015104810A1 PCT/JP2014/050197 JP2014050197W WO2015104810A1 WO 2015104810 A1 WO2015104810 A1 WO 2015104810A1 JP 2014050197 W JP2014050197 W JP 2014050197W WO 2015104810 A1 WO2015104810 A1 WO 2015104810A1
Authority
WO
WIPO (PCT)
Prior art keywords
logic
fpga
comparator
output
signal
Prior art date
Application number
PCT/JP2014/050197
Other languages
English (en)
French (fr)
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/JP2014/050197 priority Critical patent/WO2015104810A1/ja
Publication of WO2015104810A1 publication Critical patent/WO2015104810A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources

Definitions

  • the present invention relates to an FPGA, and more particularly to an FPGA having an error detection function and a highly reliable system using the FPGA.
  • a logic circuit is often realized by an application specific integrated circuit (ASIC) or a gate array based on a CBIC (cell-based integrated circuit) that provides fixed logic.
  • ASIC application specific integrated circuit
  • CBIC cell-based integrated circuit
  • the design and manufacturing cost of a mask for manufacturing an ASIC tends to increase, and it is predicted that the ASIC cannot be applied unless it is a very mass-produced product.
  • the production volume is naturally limited due to the particularity of the application.
  • FPGA Field Programmable Gate Array
  • a logic circuit realized by a CBIC or a gate array has a fixed logic and limited failure patterns, so that the number of test patterns to be detected is also limited.
  • the logic circuit realized by the FPGA in addition to the logic used for the original purpose, the logic for the programmable function is included in the LUT, so it is necessary to assume more failure patterns. Therefore, this problem arises because the number of test patterns for detecting them increases greatly.
  • a method of detecting a failure by duplicating a logic unit and comparing its output has been conventionally taken.
  • a duplicated logic A pin arrangement suitable for mounting a comparator for comparing a part and its output in one chip is disclosed.
  • the programmable gate array includes a test subsystem for testing various functional subsystems of the programmable gate array.
  • a series of test methods that use the test subsystem is a method that allows fault isolation there by testing the functionality of the programmable gate array taking into account the interdependencies of the various subsystems. Is disclosed.
  • Prior Art Document 4 Japanese Patent Laid-Open No. 1-136415
  • means for independently checking information programmed in an electrically programmable element and whether the bit memory circuit normally operates A method of providing a bit memory circuit is disclosed.
  • Prior art document 5 Japanese Patent Publication No. 2005-518749 discloses an FPGA including fixed logic.
  • JP 2011-138852 A JP 2000-315767 A JP-A-9-178822 JP-A-1-136415 JP 2005-518749
  • a failure detection means for the comparator that is the above-mentioned problem The purpose is to provide.
  • the FPGA is configured by a plurality of logic units, the first logic unit is configured with low programmability (programmability), and the other second logic unit is programmable.
  • a highly configurable structure A logic circuit (hereinafter referred to as a “functional block”) that is originally intended for use is duplicated and mounted in the second logic unit, and a comparator that determines whether the input signals match or does not match is provided in the first logic unit. After mounting, the output of the duplicated function block is compared by the comparator, so that it is determined that the function block is normal when they match, and that the function block is abnormal when they do not match.
  • the present invention prepares the first and second logic units having different programmability (or failure detectability), and implements the functional block in the second logic unit having high programmability. Fault detection can be realized more easily by configuring a circuit more flexibly and mounting a comparator, which is necessary for fault detection, in the first logic unit having high fault detection ease.
  • the present invention it is possible to avoid the LUT test pattern explosion problem, which is a problem peculiar to the FPGA, and to achieve both the programmability and the ease of fault detection as the entire FPGA.
  • FIG. 1 is a configuration diagram of a first embodiment of an FPGA according to the present invention.
  • FIG. 2 is a configuration diagram of the FPGA according to the second embodiment in which four second logic units are provided.
  • FIG. 3 is a diagram comparing configurations of the functional block logic element 110 and the comparator logic element 110 ′ according to the third embodiment.
  • FIG. 4 is a diagram illustrating a configuration of the functional block logic element 110 according to the third embodiment.
  • FIG. 5 is a diagram illustrating details of the LUT of the functional block logical element 110 according to the third embodiment.
  • FIG. 6 is a diagram illustrating the configuration of the comparator logic element 110 ′ according to the third embodiment.
  • FIG. 7 is a diagram in which the comparator logic element 110 ′ according to the third embodiment is configured by an AND-OR tree.
  • FIG. 8 is a diagram in which the comparator logic element 110 ′ according to the third embodiment is configured by exclusive OR.
  • FIG. 9 is a diagram in which the comparator logic element 110 ′ according to the third embodiment is configured with a comparator based on fixed logic.
  • FIG. 10 is a diagram comparing the configurations of the functional block interconnect structure 130 and the comparator interconnect structure 130 ′ according to the fourth embodiment.
  • FIG. 11 is a diagram illustrating a configuration of the functional block interconnect structure 130 or the comparator interconnect structure 130 ′ according to the fourth embodiment.
  • FIG. 12 is a diagram illustrating another configuration of the functional block interconnection structure 130 or the comparator interconnection structure 130 ′ according to the fourth embodiment.
  • FIG. 13 is a diagram illustrating another configuration of the comparator interconnection structure 130 ′ according to the fourth embodiment.
  • FIG. 14 is a configuration diagram of the FPGA of the fifth embodiment provided with self-checking logic.
  • FIG. 15 is a diagram illustrating a configuration applied to a highly reliable system according to the fifth embodiment.
  • FIG. 16 is a block diagram of a sixth embodiment in which the FPGA according to the present invention is applied to a railway brake control system.
  • Example 1 is shown in FIG. 1 as a basic embodiment of the FPGA according to the present invention.
  • the FPGA 100 includes a first logic unit 190-ab with low programability but high failure detectability and second logic units 180-a and 180-b with high programmability.
  • the first logic unit 190-ab is mounted with a comparator
  • the second logic units 180-a and 180-b are mounted with duplicated function blocks.
  • the second logic unit 180-a and 180-b By comparing the outputs of the duplicated functional blocks, that is, the second logic units 180-a and 180-b with a comparator mounted on the first logic unit 190, the second logic unit 180-a And a failure of a duplicated functional block implemented in 180-b can be detected.
  • the first logic unit 190-ab is composed of a comparator logic element (comparator LE) 110 ′, a comparator interconnect structure 130 ′, and a wiring element 140 that have low programmability but high fault detectability.
  • the second logic units 180-a and 180-b are composed of a function block logic element 110 (function block LE), a function block interconnect structure 130, and a wiring element 140 that have high programmability.
  • the first logic unit 190-ab and the second logic units 180-a and 180-b are connected via a comparator interconnection structure 130 ′.
  • the second logic unit is composed of two.
  • the second logic unit is 180-a, b, c, and d.
  • the case where it consists of four is shown. Accordingly, a configuration in which the first logic units 190-ab, bc, cd, and da are arranged between the four second logic units is also possible, and the number of the second logic units 180 is any number of two or more. Configuration is possible.
  • the first logic units 190-ab, bc, cd, and da detect the failure of the duplicated functional block by comparing the outputs of the two second logic units as in the first embodiment.
  • a majority circuit that compares the outputs of three or more second logic units and detects a failure of a functional block that is tripled by majority (in FIG. 2, in parentheses).
  • a majority circuit LE By configuring the majority circuit with the first logic unit in this way, failure detection is facilitated.
  • FIG. 3 shows a comparison of the configurations of the functional block logic element 110 and the comparator logic element 110 ′.
  • the functional block logic element 110 is configured by an LUT including a volatile element such as a configuration RAM (in the drawing, a configuration RAM) having high programmability.
  • the comparator logic element 110 ′ is configured by a non-volatile element (EPROM, EEPROM, flash memory, fuse type element, antifuse type element, etc.) LUT, AND-OR tree, fixed logic EOR, fixed logic comparator, and the like. . As a result, the failure mode is limited, so that the failure detection is easy.
  • the functional block logic element 110 generally includes an LUT 111, a latch 112, and a selector 113.
  • the selector 113 selects an output signal from the LUT 111 or an output signal synchronized with CLK via the latch 112 and outputs it as an output from the logic element 110.
  • the LUT 111 outputs a signal according to the program information based on the input signal.
  • storage device 115 outputs a value corresponding to the decoded entry .
  • the LUT 111 having an n-bit input is equivalent to a memory having an n-bit address input.
  • the data of each entry in the storage element 115 is often realized by data stored in a configuration RAM (configuration RAM) in many FPGAs.
  • the comparator logic element 110' can be obtained. According to this, when a comparator is necessary, a comparator having a higher fault detectability than the second logic unit can be realized by setting the logic of the predetermined comparator in the storage element 115 ′. Is not necessary, another logic circuit can be realized by setting a predetermined logic mode in the memory element 115 ′.
  • FIG. 7 is a specific example of the comparator logic element 110 ′ configured by an AND-OR tree.
  • a connection selection element 117 is provided at the intersection of the wiring element 140 and the input line of the AND-OR tree 116.
  • Each connection selection element 117 can be realized by a fuse type that is burned out by flowing a large current, or an anti-fuse type element that conducts by causing a phase change by flowing a large current. According to this, when a comparator is necessary, a comparator having a higher fault detectability than the second logic unit can be realized by setting the logic of a predetermined comparator in each connection selection element 117. When a device is not required, another logic circuit can be realized by setting a predetermined logic mode in each connection selection element 117.
  • FIG. 8 is a specific example of the comparator logic element 110 ′ including the exclusive OR EOR 118 based on fixed logic.
  • the exclusive OR EOR 118 also serves as a constituent element of the comparator, and in addition, serves as a constituent element such as an adder or a parity generator. Therefore, when a comparator is necessary, a comparator with higher fault detectability than the second logic unit can be realized, and when the comparator is unnecessary, other logic circuits are added by an addition function or a parity generation function. Can be realized.
  • FIG. 9 is a specific example of the comparator logic element 110 ′ including the comparator 119 based on fixed logic.
  • the comparator 119 based on fixed logic is configured by combining an exclusive OR EOR based on fixed logic and a logical OR OR based on fixed logic as shown in FIG. According to this, it is possible to realize a comparator having a higher fault detectability than the second logic unit.
  • FIG. 10 shows a comparison of each configuration of the functional block interconnection structure 130 and the comparator interconnection structure 130 ′.
  • the functional block interconnection structure 130 is configured by a switch using a volatile element such as a configuration RAM (configuration RAM in the drawing) having high programmability.
  • the comparator interconnection structure 130 ′ is composed of a fixed logic comparator such as a switch using a nonvolatile element (EPROM, EEPROM, flash memory, fuse element, antifuse type element, etc.), and the like. As a result, the failure mode is limited, so that the failure detection is easy.
  • the functional block interconnection structure 130 or the comparator interconnection structure 130 ′ A specific configuration of the functional block interconnection structure 130 or the comparator interconnection structure 130 ′ is shown in FIGS.
  • the switch is controlled by a volatile element
  • the switch is controlled by a non-volatile element.
  • FIG. 11 is a specific example in which the connection can be switched between all the wiring elements 140.
  • FIG. 12 is a specific example in which the connection can be switched only between the wiring elements 140 that intersect at a diagonal portion.
  • the degree of freedom of connection is higher, but the number of switches increases accordingly, and the amount of hardware increases.
  • the connection control by the switch is often realized by data stored in a configuration RAM (configuration RAM) in many FPGAs.
  • FIG. 13 is a specific example of the comparator interconnection structure 130 ′ in which the switch portion is configured by the connection selection element 117.
  • Each connection selection element 117 is a fuse-type element that is burned out by flowing a large current, or an anti-fuse type that causes a dielectric breakdown by applying a predetermined voltage or causes a change in crystal structure by flowing a current. Realized by an element.
  • FIG. 14 is a configuration diagram of Embodiment 5 in which self-checking logic is provided in the FPGA according to the present invention described above.
  • a comparator more preferably, a self-checking comparator
  • a first logic unit is arranged at the center of the chip 100 which is an FPGA, and the second logic unit is arranged on both sides thereof.
  • Duplicated functional block A (180-a) and functional block B (180-b) are arranged. According to this configuration, the failure of the functional block A (180-a) or the functional block B (180-b) can be detected by the self-checking comparator 190 as a mismatch between both outputs.
  • the self-checking comparator 190 is sandwiched between the functional block A (180-a) and the functional block B (180-b), the functional block A (180-a) and the functional block B ( 180-b) can be ensured, and the probability of correlation failure can be reduced. Furthermore, the structure in which the self-checking comparator is sandwiched between the functional blocks can be applied between two functional blocks even in a configuration in which four functional blocks are arranged as shown in FIG.
  • a method of configuring a self-checking comparator is disclosed in, for example, Japanese Patent Application Laid-Open No. 7-234801. By configuring, a self-checking comparator can be realized more easily than a conventional FPGA.
  • FIG. 15 is a specific example of a highly reliable system according to the fifth embodiment.
  • the functional block is duplicated by the functional block A (180-a) and the functional block B (180-b), and both outputs Are compared by a self-checking comparator 190 which is a first logic part.
  • the output of the FPGA is stopped or a command signal for ensuring the safety of the operation of the system is output.
  • a method of stopping the output of the FPGA or outputting a signal for ensuring the safety of the operation of the system a method of controlling the output circuit 400 by the output of the self-checking comparator 190, an output from the output circuit 400 Examples thereof include a method of shutting off the signal at the output of the self-checking comparator 190 and a method of shutting off the power supply to the output circuit 400 at the output of the self-checking comparator 190.
  • the command signal for ensuring the safety of the operation of the system for example, there is a method of outputting a deceleration command signal in a railway brake control system and outputting a command signal for interrupting a level crossing in a railroad crossing control device. Conceivable.
  • FIG. 16 is a block diagram of a sixth embodiment in which the FPGA according to the present invention is applied to a railway brake control system.
  • the following two signals are input to the frequency comparator 190 configured by the first logic unit in the chip 100 which is an FPGA.
  • an actual speed signal 503 having a frequency proportional to the speed of the railway vehicle 500 is output from the frequency generator 502 attached to the wheel 501 of the railway vehicle 500 and input to the chip 100.
  • a signal having a frequency proportional to the speed limit of the railway vehicle 500 sent from the ground unit 504 is received by the antenna 505 attached to the railway vehicle 500 and input to the chip 100 as the speed limit signal 506.
  • the solid line actual speed signal 503 and the solid line speed limit signal 506 are respectively input to the frequency comparator 190 with the function block B (180-b) and the function block A (180-a) as interfaces.
  • a broken line actual speed signal 503 and a broken line speed limit signal 506 indicate cases where each is directly input to the frequency comparator 190.
  • the actual speed signal 503 and the speed limit signal 506 input to the chip 100 which is an FPGA are compared by the frequency comparator 190 configured by the first logic unit, and the actual speed signal 503 is compared with the speed limit signal.
  • the brake command is output, and when the actual speed signal 503 does not exceed the speed limit signal 506, the brake command is not output.
  • the brake is automatically operated to reduce the speed below the speed limit, so that safety is ensured.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Logic Circuits (AREA)

Abstract

FPGAのチップ内で論理部を2重化してその出力を比較することにより故障を検出する場合であっても、比較器自体もFPGA内部に持つため、故障検出のためのテストパターン数が大幅に増えるという問題があった。FPGA(100)を複数の論理部(180,190)により構成し、第1の論理部(190)をプログラム可能性の低い構成とし、第2の論理部(180)はプログラム可能性が高い構成とする。本来の使用目的とする論理回路を2重化して第2の論理部(180)に実装し、入力信号の一致/不一致を判定する比較器を第1の論理部(190)に実装して、該2重化した論理回路の出力を該比較器で比較することにより、一致時にはその論理回路は正常、不一致時にはその論理回路は異常であると判定する。

Description

FPGA及び該FPGAを用いた高信頼システム
 本発明は、FPGAに係り、特に誤り検出機能を有するFPGA及び該FPGAを用いた高信頼システムに関する。
 制御の自動化が進み、電子制御装置の安全性、信頼性の要求が高まってきている。その電子制御装置の安全性を確保するために、異常発生時に直ちにその異常を検出して動作を停止することが求められている。
 従来、論理回路は、固定論理を提供するCBIC(Cell-based Integrated Circuit)によるASIC(Application Specified Integrated Circuit)やゲートアレイにより実現されることが多い。しかし、近年ではムーアの法則にしたがった集積度の向上に伴い、ASICを製造するためのマスクの設計製造コストが高騰する傾向にあり、よほどの量産品でない限りASICを適用できなくなることが予測される。
 特に、本発明の対象とする高い信頼性及び高い安全性が求められるシステム(例えば、鉄道の信号保安システムなど)では、用途の特殊性から自ずと生産量が限られる状況にある。そこで、そのような製造に際して初期費用を抑えられるFPGA(Field Programmable Gate Array)の利用が期待される。
 しかし、FPGAの特有の問題として、FPGAを構成するLUT(Look-Up Table)のテストパターン爆発問題がある。これについては、LUTをブラックボックスとする「Cell Fault Model」によると、x入力のLUTについて全ての故障を検出するためには、2のテストパターンが必要である。
 例えば、nビットの2組の信号同士を比較する比較器を想定すると、最終出力のみを観測した場合にはFPGA全体がブラックボックスと見做されるので、FPGA内の故障を検出するためには22n(ただし、n:比較ビット数)のテストパターンが必要となる。
 CBICやゲートアレイにより実現した論理回路は、固定された論理であり故障パターンも限定されるために、検出するためのテストパターンも数も限定される。これに対して、FPGAにより実現した論理回路では、本来の目的のために使用する論理に加えて、プログラマブル機能のための論理をLUTが含むため、より多くの故障パターンを想定する必要がある。そのために、それらを検出するためのテストパターン数が大幅に増えるということに起因してこの問題が生じるのである。
 論理部を2重化してその出力を比較することにより故障を検出する方法が、従来から取られており、例えば、先行技術文献1(特開2011-138852号公報)では、2重化した論理部とその出力を比較する比較器を1チップ内に実装するのに好適なピン配置を開示している。
 FPGAのテスト方法に関して、例えば、先行技術文献2(特開2000-315767号公報)では、半導体チップ上に、複数の基本論理セル(CLB)とこれらの基本論理セル間の信号線の接続を切替え可能な可変スイッチ回路(CSW)とを備え、上記各基本論理セルごとに、回路が正常か異常かを示す信号を出力可能とする方法が開示されている。
 また、先行技術文献3(特開平9-178822号公報)では、プログラマブル・ゲート・アレイが、このプログラマブル・ゲート・アレイの様々な機能サブシステムをテストするためのテスト・サブシステムを含む。そのテスト・サブシステムを使用する一連のテスト方法は、様々なサブシステムの相互依存度を考慮に入れてプログラマブル・ゲート・アレイの機能性をテストすることにより、そこでの障害分離を可能にする方法が開示されている。
 さらに、先行技術文献4(特開平1-136415号公報)では、電気的にプログラム可能な素子にプログラムされている情報、及びビットメモリ回路が正常に動作するかどうかを互いに独立に検査する手段を、ビットメモリ回路に設ける方法が開示されている。
 そして、先行技術文献5(特表2005-518749号公報)では、固定論理を含むFPGAが開示されている。
特開2011-138852号公報 特開2000-315767号公報 特開平9-178822号公報 特開平1-136415号公報 特表2005-518749号公報
 以上で述べた従来技術により、FPGAのチップ内で論理部を2重化してその出力を比較することにより故障を検出する場合であっても、比較器自体もFPGA内部に持つため、先に述べた故障検出のためのテストパターン数が大幅に増えるという問題の解決には至らない。
 そこで、本発明では、FPGAのチップ内の論理部を2重化してその出力を比較することにより故障を検出するセルフチェッキング比較器を実現するにあたって、上記の課題となる比較器の故障検出手段を提供することを目的とする。
 上記目的を達成するために、本発明では、FPGAを複数の論理部により構成し、第1の論理部をプログラム可能性(プログラマビリティ)の低い構成とし、他方の第2の論理部をプログラム可能性の高い構成とする。本来の使用目的とする論理回路(以下、「機能ブロック」と呼ぶ)を2重化して第2の論理部に実装し、入力信号の一致/不一致を判定する比較器を第1の論理部に実装して、該2重化した機能ブロックの出力を該比較器で比較することにより、一致時にはその機能ブロックは正常、不一致時にはその機能ブロックは異常であると判定する。
 先に述べたように、FPGAによる論理回路の故障検出の阻害要因として、プログラム可能性を高めるために余分な機能を、論理エレメント、さらにはLUTが有することが挙げられる。したがって、プログラム可能性の高い論理部は故障検出容易性が劣り、逆に、故障検出容易性の高い論理部はプログラム可能性が劣り、実装面積が増加するといったデメリットがある。つまり、FPGAでは、プログラム可能性と故障検出容易性とは相反する関係にある。
 そこで、本発明は、プログラム可能性(または、故障検出容易性)が異なる第1及び第2の論理部を用意し、機能ブロックをプログラム可能性が高い第2の論理部に実装することで、より柔軟に回路を構成し、かつ、故障検出の要となる比較器を故障検出容易性の高い第1の論理部に実装することで、より容易に故障検出を実現する。
 本発明によれば、FPGA特有の課題であったLUTのテストパターン爆発問題を回避し、FPGA全体としてプログラム可能性と故障検出容易性の両立を図ることができる。
図1は、本発明に係るFPGAの実施例1の構成図である。 図2は、第2の論理部を4つ設けた実施例2のFPGAの構成図である。 図3は、実施例3に係る機能ブロック用論理エレメント110と比較器用論理エレメント110’の構成を比較した図である。 図4は、実施例3に係る機能ブロック用論理エレメント110の構成を示す図である。 図5は、実施例3に係る機能ブロック用論理エレメント110のLUTの詳細を示すである。 図6は、実施例3に係る比較器用論理エレメント110’の構成を示す図である。 図7は、実施例3に係る比較器用論理エレメント110’をAND-ORツリーで構成した図である。 図8は、実施例3に係る比較器用論理エレメント110’を排他的論理和で構成した図である。 図9は、実施例3に係る比較器用論理エレメント110’を固定論理による比較器で構成した図である。 図10は、実施例4に係る機能ブロック用相互接続構造130と比較器用相互接続構造130’の構成を比較した図である。 図11は、実施例4に係る機能ブロック用相互接続構造130または比較器用相互接続構造130’の構成を示す図である。 図12は、実施例4に係る機能ブロック用相互接続構造130または比較器用相互接続構造130’の別の構成を示す図である。 図13は、実施例4に係る比較器用相互接続構造130’の別の構成を示す図である。 図14は、セルフチェッキング論理を設けた実施例5のFPGAの構成図である。 図15は、実施例5による高信頼システムに適用した構成を示す図である。 図16は、本発明に係るFPGAを鉄道のブレーキ制御システムに適用した実施例6の構成図である。
 以下、本発明の実施形態として、実施例1~実施例6について図面と照らし合わせながら順に説明する。
 本発明に係るFPGAの基本的な実施形態として、実施例1を図1に示す。
 FPGA100は、プログラム可能性は低いが故障検出容易性の高い第1の論理部190-abとプログラム可能性が高い第2の論理部180-a及び180-bとから構成されている。第1の論理部190-abには比較器、第2の論理部180-a、180-bには2重化した機能ブロックが実装される。2重化した機能ブロック、すなわち、第2の論理部180-a及び180-bの出力を第1の論理部190に実装された比較器で比較することにより、第2の論理部180-a及び180-bに実装された2重化した機能ブロックの故障を検出することができる。
 第1の論理部190-abは、プログラム可能性は低いが故障検出容易性の高い比較器用論理エレメント(比較器用LE)110’、比較器用相互接続構造130’及び配線要素140から構成されている。
 第2の論理部180-a及び180-bは、プログラム可能性が高い機能ブロック用論理エレメント110(機能ブロック用LE)、機能ブロック用相互接続構造130及び配線要素140から構成されている。
 なお、第1の論理部190-abと第2の論理部180-a及び180-bとの間は、比較器用相互接続構造130’を介して接続されている。
 実施例1では、第2の論理部が2つで構成される場合を示したが、実施例2では、図2に示すように、第2の論理部が180-a、b、c及びdと4つで構成される場合を示す。これにより、4つの第2の論理部の間に第1の論理部190-ab、bc、cd及びdaを配置した構成も可能となり、2以上の任意の数の第2の論理部180を有する構成が可能となる。
 なお、第1の論理部190-ab、bc、cd及びdaには、実施例1のように、2つの第2の論理部の出力を比較して2重化した機能ブロックの故障を検出する比較器だけでなく、3つ以上の第2の論理部の出力を比較し多数決により3重化等した機能ブロックの故障を検出する多数決回路を実装することも可能である(図2では、括弧書きで多数決回路用LEとして示す)。このように多数決回路を第1の論理部で構成することにより、故障検出が容易となる。
 図3に、機能ブロック用論理エレメント110と比較器用論理エレメント110’の各構成の比較を示す。
 機能ブロック用論理エレメント110は、プログラム可能性が高いコンフィギュレーションRAM(図中は、コンフィグRAM)などの揮発性素子によるLUTで構成される。
 比較器用論理エレメント110’は、不揮発性素子(EPROM、EEPRON、フラッシュメモリ、ヒューズ型素子及びアンチヒューズ型素子など)によるLUT、AND-ORツリー、固定論理EOR及び固定論理比較器等で構成される。これにより、故障モードが限定されるため、故障検出が容易な構造となっている。
 機能ブロック用論理エレメント110の具体的な構成を図4、図5に示す。
 機能ブロック用論理エレメント110は、一般的に、LUT111、ラッチ112及びセレクタ113から構成される。セレクタ113は、LUT111からの出力信号またはラッチ112を介してCLKに同期した出力信号を選択して、論理エレメント110からの出力とする。
 LUT111は、入力信号に基づきプログラム情報に従って信号を出力する。その手段として、一般的には、図5に示すように、入力信号(nビット)をデコーダー114で2のエントリーにデコードし、記憶素子115はそのデコードされたエントリーに対応する値を出力する。見方を変えれば、nビットの入力を持つLUT111は、nビットのアドレス入力を持つメモリと等価である。
 なお、記憶素子115の各エントリーのデータは、多くのFPGAではコンフィギュレーションRAM(構成RAM)に記憶されたデータで実現されることが多い。
 また、図6に示すように、記憶素子115’として不揮発性メモリを用いれば比較器用論理エレメント110’とすることができる。これによれば、比較器が必要である時には、所定の比較器の論理を記憶素子115’に設定すれば第2の論理部よりも高い故障検出性を備えた比較器を実現でき、比較器が不要である時には、所定の論理態様を記憶素子115’に設定すれば他の論理回路を実現することができる。
 次に、比較器用論理エレメント110’のその他の具体例を、図7、図8及び図9に示す。
 図7は、AND-ORツリーにより構成した比較器用論理エレメント110’の具体例である。配線要素140とAND-ORツリー116の入力線との交点に接続選択要素117を有する。各接続選択要素117は、大電流を流すことにより焼き切るヒューズ型、または大電流を流すことにより相変化を引き起こして導通させるアンチヒューズ型素子により実現できる。これによれば、比較器が必要である時には、所定の比較器の論理を各接続選択要素117に設定すれば第2の論理部よりも高い故障検出性を備えた比較器を実現でき、比較器が不要である時には、所定の論理態様を各接続選択要素117に設定すれば他の論理回路を実現することができる。
 図8は、固定論理による排他的論理和EOR118を含む比較器用論理エレメント110’の具体例である。排他的論理和EOR118は、比較器の構成要素ともなり、加えて、加算器やパリティ生成器等の構成要素ともなる。そのため、比較器が必要である時には、第2の論理部よりも高い故障検出性を備えた比較器を実現でき、比較器が不要である時には、加算機能やパリティ生成機能により他の論理回路を実現することができる。
 図9は、固定論理による比較器119を含む比較器用論理エレメント110’の具体例である。この固定論理による比較器119は、図8で示したような固定論理による排他的論理和EORや固定論理による論理和ORを組み合わせることにより構成される。これによれば、第2の論理部よりも高い故障検出性を備えた比較器を実現することができる。
 図10に、機能ブロック用相互接続構造130と比較器用相互接続構造130’の各構成の比較を示す。
 機能ブロック用相互接続構造130は、プログラム可能性の高いコンフィギュレーションRAM(図中は、コンフィグRAM)などの揮発性素子によるスイッチで構成される。
 比較器用相互接続構造130’は、不揮発性素子(EPROM、EEPRON、フラッシュメモリ、ヒューズ素子及びアンチヒューズ型素子など)によるスイッチ等の固定論理比較器等で構成される。これにより、故障モードが限定されるため、故障検出が容易な構造となっている。
 機能ブロック用相互接続構造130または比較器用相互接続構造130’の具体的な構成を図11及び図12に示す。
 FPGAのチップ上においては、縦横に伸びる配線要素140の各交点に相互接続構造130または130’があり、図11及び図12に示すように、スイッチにより配線要素140間の接続を切り替えている。ここで、機能ブロック用相互接続構造130の場合には揮発性素子によりスイッチを制御し、比較器用相互接続構造130’の場合には不揮発性素子によりスイッチを制御している。
 図11は、全ての配線要素140間で接続の切り替えが可能な具体例である。図12は、対角部分で交差する配線要素140間でのみ接続の切り替えが可能な具体例である。
 図11の具体例の方が、接続自由度は高いがその分スイッチの数も多くなり、ハードウェア量が大きくなる。なお、スイッチによる接続の制御は、多くのFPGAではコンフィギュレーションRAM(構成RAM)に記憶されたデータで実現されることが多い。
 また、図13は、スイッチ部分を接続選択要素117で構成した比較器用相互接続構造130’の具体例である。各接続選択要素117は、大電流を流すことにより焼き切るヒューズ型素子、または、所定の電圧を印加して絶縁破壊を起こすか、電流を流すことにより結晶構造の変化を引き起こして導通させるアンチヒューズ型素子により実現される。
 図14は、以上で述べた本発明に係るFPGAにセルフチェッキング論理を設けた実施例5の構成図である。図に示すように、FPGAであるチップ100の中央部に第1の論理部である比較器(さらに望ましくは、セルフチェッキング比較器)190を配置し、その両側に第2の論理部である2重化した機能ブロックA(180-a)及び機能ブロックB(180-b)を配置する。この構成によれば、機能ブロックA(180-a)または機能ブロックB(180-b)の故障は、両者の出力の不一致としてセルフチェッキング比較器190で検出することができる。
 また、機能ブロックA(180-a)及び機能ブロックB(180-b)の間にセルフチェッキング比較器190を挟む構造を採用することで、機能ブロックA(180-a)と機能ブロックB(180-b)間の距離を確保でき、相関故障の確率を下げることができる。さらに、このセルフチェッキング比較器を機能ブロック間に挟む構造は、例えば、図2のように、4つの機能ブロックを配置した構成においても各2つの機能ブロック間に適用できるものである。
 なお、セルフチェッキング比較器の構成方法としては、例えば、特開平7-234801号公報に開示されているが、本発明に係るFPGAにより故障検出容易性の高い第1の論理部に比較器を構成することで、従来のFPGAに比べてより容易にセルフチェッキング比較器を実現することができる。
 図15は、実施例5による高信頼システムの具体例である。第2の論理部で構成され、高信頼システムとして本来の機能を担うために、機能ブロックは機能ブロックA(180-a)及び機能ブロックB(180-b)により2重化され、両方の出力は第1の論理部であるセルフチェッキング比較器190で比較される。
 実施例5による高信頼システムは、セルフチェッキング比較器190で異常が検出された場合には、FPGAの出力を停止するかまたはこのシステムの動作の安全を確保する指令信号を出力する。ここで、FPGAの出力を停止するかまたはシステムの動作の安全を確保する信号を出力する方法としては、出力回路400をセルフチェッキング比較器190の出力で制御する方法、出力回路400からの出力信号をセルフチェッキング比較器190の出力で遮断する方法及び出力回路400への電源をセルフチェッキング比較器190の出力で遮断する方法などが挙げられる。また、システムの動作の安全を確保する指令信号の具体例として、例えば、鉄道のブレーキ制御システムにおいては減速指令信号を出力し、踏切制御装置においては踏切を遮断する指令信号を出力する方法などが考えられる。
 図16は、本発明に係るFPGAを鉄道のブレーキ制御システムに適用した実施例6の構成図である。
 FPGAであるチップ100内の第1の論理部で構成する周波数比較器190には、以下の2つの信号が入力される。片方は、鉄道車両500の車輪501に取り付けられた周波数発電機502から鉄道車両500の速度に比例した周波数の実速度信号503が出力され、チップ100に入力される。他方は、地上子504から送られる鉄道車両500の制限速度に比例した周波数の信号が、鉄道車両500に取り付けられたアンテナ505で受信されて、制限速度信号506としてチップ100に入力される。
 図16において、実線の実速度信号503及び実線の制限速度信号506は、それぞれが機能ブロックB(180-b)及び機能ブロックA(180-a)をインタフェースとして周波数比較器190に入力されるケースを示し、破線の実速度信号503及び破線の制限速度信号506は、それぞれがダイレクトに周波数比較器190に入力されるケースを示している。
 以上のようにして、FPGAであるチップ100に入力された実速度信号503及び制限速度信号506は、第1の論理部で構成される周波数比較器190で比較され、実速度信号503が制限速度信号506を上回る場合にはブレーキ指令が出力され、実速度信号503が制限速度信号506を上回らない場合にはブレーキ指令は出力されない。これにより、鉄道車両500の速度が制限速度を上回る場合には、ブレーキが自動的に動作して制限速度以下にまで速度を下げるので安全性が確保される。
 なお、フェールセーフな周波数比較器の構成方法としては、例えば、特開平8-237801号公報に開示されているが、本発明に係るFPGAにより故障検出容易性の高い第1の論理部により周波数比較器を構成することで、従来のFPGAに比べてより容易に安全性の高いフェールセーフな周波数比較器を実現することができる。
100……FPGA
110……機能ブロック用論理エレメント
110’……比較器用論理エレメント
130……機能ブロック用相互接続構造
130’……比較器用相互接続構造
140……配線要素
180……第2の論理部(機能ブロック)
190……第1の論理部(セルフチェッキング比較器、周波数比較器)
111……LUT
112……ラッチ
113……セレクタ
114……デコーダー
115……記憶素子
116……AND-ORツリー
117……接続選択要素
118……排他的論理和EOR
119……固定論理による比較器
400……出力回路
500……鉄道車両
501……車輪
502……周波数発電機
503……実速度信号
504……地上子
505……アンテナ
506……制限速度信号

Claims (9)

  1.  比較器として機能する論理エレメントを複数個有する第1の論理部と、
     前記比較器による比較対象となるデータ信号を生成または保持する論理エレメントを複数個有する第2の論理部を複数個と
    を備え、
     前記第1の論理部内の各論理エレメントの相互接続構造及び前記第1の論理部と前記複数個の第2の論理部それぞれを結ぶ相互接続構造を不揮発性素子により構成し、
     前記複数個の第2の論理部内の各論理エレメントの相互接続構造を揮発性素子により構成する
    ことを特徴とするFPGA。
  2.  請求項1記載のFPGAであって、
     前記第1の論理部は、当該FPGAであるチップの中央部分に配置され、
     前記複数個の第2の論理部は、少なくとも2つの領域として前記第1の論理部を挟むように該第1の論理部の各両端側にそれぞれ配置される
    ことを特徴とするFPGA。
  3.  請求項1記載のFPGAであって、
     前記比較器は、前記複数個の第2の論理部それぞれからの出力データを入力し、それらの一致不一致を判定する
    ことを特徴とするFPGA。
  4.  請求項1記載のFPGAであって、
     前記比較器は、前記複数個の第2の論理部それぞれからの出力信号を入力し、少なくとも2つの入力信号の周波数の大小関係を判定する
    ことを特徴とするFPGA。
  5.  請求項1記載のFPGAであって、
     前記比較器は、前記複数個の第2の論理部の内から3つ以上の出力を比較してその多数決を採る多数決回路を構成する
    ことを特徴とするFPGA。
  6.  請求項1記載のFPGAであって、
     前記第1の論理部内の論理エレメントは、固定論理による比較器またはAND-ORアレイを含むプログラム可能な論理回路またはルックアップテーブルを含むプログラム可能な論理回路のいずれかにより構成され、
     前記第2の論理部内の論理エレメントは、ルックアップテーブルを含むプログラム可能な論理回路により構成される
    ことを特徴とするFPGA。
  7.  請求項6記載のFPGAであって、
     前記第1の論理部内の論理エレメントを構成する前記プログラム可能な論理回路には不揮発性素子を用い、
     前記第2の論理部内の論理エレメントを構成する前記プログラム可能な論理回路には揮発性素子を用いる
    ことを特徴とするFPGA。
  8.  請求項3記載のFPGAを用いる高信頼システムであって、
     前記比較器の出力が不一致を示す場合には、当該FPGAの出力を停止するかまたは当該システムの動作の安全を確保するための指令信号を出力する
    ことを特徴とする高信頼システム。
  9.  請求項4記載のFPGAを鉄道車両のブレーキ制御に用いる高信頼システムであって、
     前記比較器への前記2つの入力信号の内の第1の入力信号は、前記複数個の第2の論理部の1つから出力される車両の制限速度に比例した周波数の信号であり、
     前記比較器への前記2つの入力信号の内の第2の入力信号は、前記複数個の第2の論理部の1つから出力される車両の実速度に比例した周波数の信号であり、
     前記第2の入力信号の周波数が前記第1の入力信号の周波数を上回るとブレーキ指令を出力する
    ことを特徴とする高信頼システム。
PCT/JP2014/050197 2014-01-09 2014-01-09 Fpga及び該fpgaを用いた高信頼システム WO2015104810A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/050197 WO2015104810A1 (ja) 2014-01-09 2014-01-09 Fpga及び該fpgaを用いた高信頼システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/050197 WO2015104810A1 (ja) 2014-01-09 2014-01-09 Fpga及び該fpgaを用いた高信頼システム

Publications (1)

Publication Number Publication Date
WO2015104810A1 true WO2015104810A1 (ja) 2015-07-16

Family

ID=53523662

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/050197 WO2015104810A1 (ja) 2014-01-09 2014-01-09 Fpga及び該fpgaを用いた高信頼システム

Country Status (1)

Country Link
WO (1) WO2015104810A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3316135A1 (en) 2016-10-26 2018-05-02 Hitachi, Ltd. Control system
CN109815583A (zh) * 2018-02-27 2019-05-28 上海安路信息科技有限公司 Fpga的布线资源的布线方法和测试方法
CN117829056A (zh) * 2023-12-29 2024-04-05 无锡中微亿芯有限公司 一种快速形成测试路径的fpga测试方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07234801A (ja) * 1994-02-25 1995-09-05 Hitachi Ltd 誤り検出機能付き論理回路及びそれを用いたフォールトトレラントシステム
WO1996037047A1 (en) * 1995-05-18 1996-11-21 Actel Corporation Flexible fpga input/output architecture
JPH11220382A (ja) * 1997-11-03 1999-08-10 Altera Corp 内容アドレス可能埋め込みアレイ・ブロックを組み込んだプログラマブル論理アーキテクチャ
JP2011216020A (ja) * 2010-04-01 2011-10-27 Mitsubishi Electric Corp 情報処理装置および回路再構成装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07234801A (ja) * 1994-02-25 1995-09-05 Hitachi Ltd 誤り検出機能付き論理回路及びそれを用いたフォールトトレラントシステム
WO1996037047A1 (en) * 1995-05-18 1996-11-21 Actel Corporation Flexible fpga input/output architecture
JPH11220382A (ja) * 1997-11-03 1999-08-10 Altera Corp 内容アドレス可能埋め込みアレイ・ブロックを組み込んだプログラマブル論理アーキテクチャ
JP2011216020A (ja) * 2010-04-01 2011-10-27 Mitsubishi Electric Corp 情報処理装置および回路再構成装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3316135A1 (en) 2016-10-26 2018-05-02 Hitachi, Ltd. Control system
US10313095B2 (en) 2016-10-26 2019-06-04 Hitachi, Ltd. Control system
CN109815583A (zh) * 2018-02-27 2019-05-28 上海安路信息科技有限公司 Fpga的布线资源的布线方法和测试方法
CN117829056A (zh) * 2023-12-29 2024-04-05 无锡中微亿芯有限公司 一种快速形成测试路径的fpga测试方法

Similar Documents

Publication Publication Date Title
US6982954B2 (en) Communications bus with redundant signal paths and method for compensating for signal path errors in a communications bus
KR100464744B1 (ko) 리던던시 시스템을 구비하는 반도체 메모리 장치
US8315116B2 (en) Repair circuit and repair method of semiconductor memory apparatus
WO2015104810A1 (ja) Fpga及び該fpgaを用いた高信頼システム
KR100921830B1 (ko) 반도체 메모리 장치의 퓨즈 모니터링 회로
KR20100122611A (ko) 퓨즈 회로와 그의 구동 방법
US20130294183A1 (en) Electrical fuse rupture circuit
US8683276B2 (en) Apparatus and method for repairing an integrated circuit
US11281195B2 (en) Integrated circuits with in-field diagnostic and repair capabilities
JP2011210316A (ja) 半導体装置及びヒューズ回路の状態判定方法
KR101156030B1 (ko) 안티퓨즈 회로 및 그를 포함하는 반도체 집적회로
US9257831B2 (en) Electrical circuit for cutting off an electric power supply comprising transistors and fuses having redundant logic
US8059477B2 (en) Redundancy circuit of semiconductor memory
KR20090070964A (ko) 반도체 메모리 장치의 퓨즈 모니터링 회로
JPH11134895A (ja) 半導体記憶装置
KR20020087267A (ko) 반도체 메모리의 컬럼 리페어 장치
CN115348133A (zh) 冗余备份系统的备份控制方法、装置、设备及介质
JP2005038526A (ja) 半導体記憶装置
US7126864B2 (en) Memory device capable of changing data output mode
KR100871691B1 (ko) 병렬 비트 테스트 방법 및 그 방법을 사용하는 반도체메모리 장치
KR100837597B1 (ko) 철도신호 이중계제어기의 자기검사회로
KR20090013620A (ko) 리페어 회로
KR101114244B1 (ko) 반도체 메모리 장치
US8767489B2 (en) Semiconductor memory device for improving repair efficiency
US20240339844A1 (en) An arrangement comprising energy storage units and a related method

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

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP