KR20120136955A - Train contol system for obtain safty integrity - Google Patents

Train contol system for obtain safty integrity Download PDF

Info

Publication number
KR20120136955A
KR20120136955A KR1020110056188A KR20110056188A KR20120136955A KR 20120136955 A KR20120136955 A KR 20120136955A KR 1020110056188 A KR1020110056188 A KR 1020110056188A KR 20110056188 A KR20110056188 A KR 20110056188A KR 20120136955 A KR20120136955 A KR 20120136955A
Authority
KR
South Korea
Prior art keywords
core
system device
control
error
control unit
Prior art date
Application number
KR1020110056188A
Other languages
Korean (ko)
Other versions
KR101295770B1 (en
Inventor
김봉택
박주열
김효상
Original Assignee
김봉택
박주열
김효상
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 김봉택, 박주열, 김효상 filed Critical 김봉택
Priority to KR1020110056188A priority Critical patent/KR101295770B1/en
Publication of KR20120136955A publication Critical patent/KR20120136955A/en
Application granted granted Critical
Publication of KR101295770B1 publication Critical patent/KR101295770B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B61RAILWAYS
    • B61LGUIDING RAILWAY TRAFFIC; ENSURING THE SAFETY OF RAILWAY TRAFFIC
    • B61L15/00Indicators provided on the vehicle or vehicle train for signalling purposes ; On-board control or communication systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B61RAILWAYS
    • B61CLOCOMOTIVES; MOTOR RAILCARS
    • B61C17/00Arrangement or disposition of parts; Details or accessories not otherwise provided for; Use of control gear and control systems
    • B61C17/12Control gear; Arrangements for controlling locomotives from remote points in the train or when operating in multiple units
    • 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/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Abstract

PURPOSE: A train control system for securing safety integrity is provided to improve reliability and safety by minimizing a fault using a multi processor. CONSTITUTION: A multi processor includes first to third cores. A memory(120) is independently connected to the first to third cores. A control logic(130) is independently connected to the first to third cores. A voting control unit(400) restarts the core after resetting the core when errors occur in the core.

Description

안전 무결성 확보를 위한 열차제어 시스템{Train contol system for obtain safty integrity}Train control system for obtain safty integrity

본 발명은 열차제어 시스템에 관한 것으로, 더욱 상세하게는 다중 프로세서를 이용하여 오류 발생을 최소화하여 제어 시스템의 안정성, 및 신뢰도를 확보하고, 오류가 발생한 프로세서를 재 가동하도록 함으로써 전체 시스템의 활용도를 향상시키는 안전 무결성 확보를 위한 열차제어 시스템에 관한 것이다. The present invention relates to a train control system, and more particularly, to minimize the occurrence of errors by using multiple processors to secure stability and reliability of the control system, and to restart the failed processor to improve the utilization of the entire system. The present invention relates to a train control system for securing safety integrity.

전자제품의 안전에 대한 등급을 다루는 IEC 61508 표준이 발표된 이후, 철도 시스템 관련 업계에서는 안전무결성 레벨(SIL : Safety Integrity Level)에 대한 관심이 증가하고 있다.Since the publication of the IEC 61508 standard covering the safety ratings of electronics, there has been a growing interest in the safety integrity level (SIL) in the rail system industry.

안정무결성 레벨은 열차 제어 시스템에 요구되는 성능 대비 고장률과 위험 대비 고장률을 제안하는 것으로, 안전무결성 레벨은 가장 낮은 레벨 1부터 가장 높은 레벨 4까지 제안되어 있다. 열차와 신호 시스템 사이의 오류에 의해 대량의 인명, 및 재산 피해가 발생 가능한 시스템의 경우, 레벨 4(SIL 4)가 요구되고 있다.The safety integrity level suggests the failure rate versus the risk ratio for the performance required for the train control system. The safety integrity level is proposed from the lowest level 1 to the highest level 4. Level 4 (SIL 4) is required for systems where a large number of lives and property damage can occur due to an error between the train and the signal system.

열차 신호의 안정성 확보를 위해서는, 열차 시스템을 구성하는 각 모듈, 및 각 모듈의 제어를 위한 제어 시스템의 안정성 확보와, 모듈간의 통신 신뢰성 향상이 요구된다. 각 모듈과 연결되어 제어하는 제어 시스템은 프로세서, 버스 제어장치, 타이머, 메모리, 및 입출력 장치의 요소로 규정될 수 있으며, 각 요소의 결함 혀용성(Fault Tolerance)을 구현하기 위해서는, 각 요소를 실시간으로 진단하여 오류를 정정함으로써 오류가 타 요소로 전달되는 것을 차단할 필요가 있다. In order to secure the stability of the train signal, it is required to secure the stability of each module constituting the train system and the control system for controlling each module, and to improve the communication reliability between the modules. The control system connected and controlled with each module may be defined as elements of a processor, a bus controller, a timer, a memory, and an input / output device, and in order to implement fault tolerance of each element, each element may be implemented in real time. It is necessary to prevent the error from being transmitted to other elements by diagnosing and correcting the error.

열차에 탑재되어 열차를 제어하는 ATP/ATO(Auto Train Operation)의 경우, 제어 시스템의 안정성 확보를 위해, 동일한 장치가 열차에 한 쌍으로 배치되고, 둘 중 하나가 액티브(ACTIVE) 상태일 때, 다른 하나가 스텐바이(STAND_BY) 상태를 유지하도록 구성된다. 액티브 상태의 제어 시스템에 오류가 발생 시, 스텐바이 상태의 제어 시스템이 대신 구동하도록 함으로써 열차를 제어하는 제어 시스템의 오류를 최소화하고 있다. 그러나, 액티브 상태의 제어 시스템은 차고지에 입고되어 보수될 때까지 사용되지 않으며, 스탠바이 상태의 제어 시스템에 오류가 발생하지 않음을 보증할 수는 없다. In the case of ATP / ATO (Auto Train Operation) mounted on a train to control the train, when the same device is placed in a pair in the train and one of them is in an ACTIVE state to ensure stability of the control system, The other is configured to maintain a standby state (STAND_BY). When an error occurs in the active control system, the standby control system is driven instead to minimize the error of the control system controlling the train. However, the active control system is not used until it is received and repaired in the garage, and there is no guarantee that an error does not occur in the standby control system.

한편, 열차, 및 열차 제어 시스템에 대한 안정성 확보를 위해 IEC62278에서RAMS(an acronym meaning a combination of Reliability, Availability, Maintainability and Safety) 규격을 정의한바 있다. RAMS 규격은 시스템의 신뢰성, 가용성, 유지보수성, 안정성의 조합을 의미하는 단어의 첫 문자로 표현되며, 어느 분야보다도, 열차 시스템에 요구되는 특징에 해당한다. RAMS 규격은 박영수가 저술한 "철도 시스템 안전무결성레벨(SIL)의 검증방안에 대한 연구"(한국철도학회 2007년 춘계학술대회논문집 pp.9-13, 2007), 및 2008년에 발간된 한국 철도학회 논문지 제11권 제4호에 371 ? 377에 기재된 내용을 참조하도록 한다. On the other hand, hanba define the train, and train control system in IEC62278 RAMS to secure stability with respect to (an acronym meaning a combination of R eliability, vailability A, M and S aintainability afety) standard. The RAMS specification is represented by the first letter of the word, which represents a combination of system reliability, availability, maintainability, and stability, and, more than anything else, corresponds to the characteristics required for train systems. The RAMS specification is written by Park Young-soo, "A Study on the Verification Method of the Safety Integrity Level (SIL) of Railroad System" (Korean Rail Society 2007 Spring Conference Papers pp.9-13, 2007), and Korean Railways published in 2008. The Journal of Korean Journal of Vol. 11, No. 4, pp. 371? See 377.

안전무결성 레벨(SIL)은 프로그래머블 제어시스템의 RAMS 규격은 규격인 IEC 62278(EN 50126)에서 사고와 관련된 고장의 발생빈도를 완화한 수준을 평가할 때 사용된다. The Safety Integrity Level (SIL) is used to assess the level at which the programmable control system's RAMS specification mitigates the occurrence of accident-related failures in IEC 62278 (EN 50126).

안전무결성 레벨(SIL)은 하기의 표 1과 같이 레벨 1부터 레벨 4까지의 레벨로 표시되며, 각각의 레벨은 위험원(Hazard 또는 Dangerous Failure)의 발생빈도로 정의된다. 따라서 안전무결성 레벨(SIL)의 대상은 위험원 또는 위험측고장이 되며, 어떤 사고를 발생시키는 위험원 또는 위험 측 고장인지를 정의해야만 위험 측 고장률에 대한 안전성 측면의 SIL평가가 성립된다. 일반적으로 열차 시스템에서 언급하는 안전무결성 레벨(SIL4)은 사고와 관련된 위험원의 발생빈도로써 표 1의 우측의 위험 측 고장에 대한 발생빈도를 기준으로 평가된다. 표 1의 신뢰성 측면의 고장률 기준은 기대된 기능에 대한 실패의 발생빈도로써 고장발생의 영향이 사고와의 관련 여부를 평가하지 않고, 단지 주어진 기능이 실패할 확률을 의미한다. 하지만 신뢰성측면의 고장률에 대한 목표는 안전무결성 레벨(SIL)보다는 MTBF(Mean Time between Failure)나 MKBF(Mean Kilometer Between Failure)등으로 더 많이 표현될 수 있다.The safety integrity level (SIL) is expressed as a level from level 1 to level 4 as shown in Table 1 below, and each level is defined as a frequency of occurrence of a hazard or dangerous failure. Therefore, the target of SIL is to be a risk source or a risk side failure, and the SIL evaluation of safety side of the risk failure rate is established only by defining which accident causes the risk source or risk side failure. In general, the safety integrity level (SIL4) referred to in the train system is the frequency of occurrence of the hazards associated with the accident and is evaluated based on the frequency of occurrence of the hazard on the right side of Table 1. The failure rate criteria in terms of reliability in Table 1 are the incidences of failures for expected functions, and do not assess whether the effects of failures are related to an accident, but merely the probability that a given function will fail. However, the target of failure rate in terms of reliability can be expressed more as Mean Time Between Failure (MTBF) or Mean Kilometer Between Failure (MKBF) rather than Safety Integrity Level (SIL).

Figure pat00001
Figure pat00001

따라서, 열차 시스템에 대한 안전무결성 레벨(SIL)의 의미는 사고(국내의 경우 철도 안전법상의 중대사고인 "열차충돌", "열차탈선", "화재", "건널목 사고")를 위험으로 정의하고, 제어 시스템의 고장으로 인해 열거된 사고를 발생시킬 수 있는 사고의 발생 빈도가 SIL4의 범위인 10-8/hour 미만임을 입증하는 것에 해당한다. Therefore, the meaning of SIL for the train system defines accidents ("train collisions", "train derailments", "fire", "crosswalk accidents" which are serious accidents in the railroad safety law in Korea). And to prove that the frequency of incidents that could cause the listed incidents due to a failure of the control system is below the SIL4 range of 10 -8 / hour.

이에, 본 출원인은 다중 프로세서를 이용하여 상호 보완하는 다중 시스템을 구성하고, 이를 통해 열차 제어 시스템의 신뢰도 향상, 및 무결성 향상을 구현하는 안전 무결성 확보를 위한 열차제어 시스템을 제안하고자 한다. Accordingly, the present applicant is to configure a multi-complementary system using a multi-processor, and through this to propose a train control system for securing the safety integrity to implement the improved reliability and integrity of the train control system.

본 발명의 목적은 다중 프로세서를 이용하여 고장 발생을 최소화하며, 각 프로세서가 타 프로세서를 상호 감시, 및 보완하여 신뢰성, 및 안정성을 향상시키는 무결성 확보를 위한 열차제어 시스템을 제공함에 있다.An object of the present invention is to provide a train control system for minimizing the occurrence of failure by using multiple processors, and to ensure the integrity of each processor to mutually monitor and complement other processors to improve reliability and stability.

상기한 목적은 본 발명에 따라, 제1 프로세서를 포함하는 제1시스템 장치, 제2 프로세서를 포함하는 제2시스템 장치, 및 제3프로세서를 포함하는 제3시스템 장치, 및 상기 제1시스템 장치 내지 상기 제3시스템 장치의 제어 출력값을 수신하고, 이들 제어 출력값에 대해 다수결 선택을 적용하여 상기 제1시스템 장치 내지 상기 제3시스템 장치 중 상이한 제어 출력값을 생성하는 것에 대해 오류를 판정하며, 오류로 판정난 시스템 장치를 리셋 후, 재 기동하여 액티브 상태의 전환 여부를 판단하는 보팅(voting) 제어부에 의해 달성된다.The above object is, according to the present invention, a first system device including a first processor, a second system device including a second processor, and a third system device including a third processor, and the first system device to Receive a control output value of the third system apparatus, apply a majority vote selection to these control output values to determine an error for generating different control output values of the first system apparatus or the third system apparatus, and determine as an error This is accomplished by a voting control that resets the egg system device and then restarts to determine whether to switch to the active state.

상기한 목적은 본 발명에 따라, 제1 내지 제3 코어를 구비하는 멀티 프로세서, 상기 제1 내지 상기 제3 코어와 독립적으로 연결되는 메모리, 상기 제1 내지 상기 제3 코어와 독립적으로 연결되는 제어로직, 및 상기 제1 내지 상기 제3 코어에 할당된 작업 명령에 대한 제어 출력값을 수신하고, 상기 각 코더에 의해 발생하는 제어 출력값들에 대해 다수결 선택을 적용하여 상기 제1 코어 내지 상기 제3코어 중 상이한 제어 출력값을 생성하는 코어에 대해 오류가 발생한 것으로 판단하고, 오류가 발생한 코어를 리셋 후, 재 기동하는 보팅 제어부에 의해 달성된다.The above object is, according to the present invention, a multi-processor having a first to third cores, a memory independently connected to the first to the third core, a control connected independently to the first to the third core Receives control outputs for logic and work instructions assigned to the first to third cores, and applies majority vote selection to the control outputs generated by the respective coders to apply the majority vote selection to the first to third cores. Is determined by a voting control unit which determines that an error has occurred for a core generating a different control output value, and restarts after resetting the core in which the error has occurred.

본 발명에 따르면, 다중 코어로 구성되는 멀티 프로세서, 또는 독립적인 프로세서를 포함하는 다중 시스템 장치에 의해 열차 제어를 수행 시, 상호 감시, 및 보완하도록 함으로써, 열차제어 시스템의 신뢰도, 및 안정성을 향상시킬 수 있다. According to the present invention, when the train control is performed by a multi-system composed of multiple cores or a multi-system device including independent processors, mutual monitoring and complementation are performed, thereby improving reliability and stability of the train control system. Can be.

도 1은 본 발명의 일 실시예에 따른 안전 무결성 확보를 위한 열차제어 시스템의 블럭개념도를 도시한다.
도 2는 본 발명에 따른 열차제어 시스템의 소프트웨어 진단 방식에 대한 개념도를 도시한다.
도 3은 듀얼 코어의 오류정정부호 방식에 대한 참조도면을 도시한다.
도 4는 본 발명의 다른 실시예에 따른 열차제어 시스템의 블록개념도를 도시한다.
도 5는 시스템 장치, 또는 멀티 코어를 이용하는 본 발명의 열차 제어시스템의 Markov 모델에 대한 참조도면을 도시한다.
1 is a block diagram of a train control system for securing safety integrity according to an embodiment of the present invention.
2 is a conceptual diagram illustrating a software diagnostic method of a train control system according to the present invention.
3 is a reference diagram for an error correcting code scheme of a dual core.
Figure 4 shows a block diagram of a train control system according to another embodiment of the present invention.
FIG. 5 shows a reference drawing to a Markov model of a system arrangement, or a train control system of the present invention using multiple cores.

이하, 도면을 참조하여 본 발명을 상세히 설명하도록 한다.Hereinafter, the present invention will be described in detail with reference to the drawings.

도 1은 본 발명의 일 실시예에 따른 안전 무결성 확보를 위한 열차제어 시스템의 블럭개념도를 도시한다.1 is a block diagram of a train control system for securing safety integrity according to an embodiment of the present invention.

도 1을 참조하면, 본 실시예에 따른 안전 무결성 확보를 위한 열차제어 시스템(이하, "열차제어 시스템" 이라 한다)은 동일한 형태로 구현되는 제1시스템 장치(110), 제2시스템 장치(200), 제3시스템 장치(300), 및 보팅 제어부(400)로 구성될 수 있다.Referring to FIG. 1, a train control system (hereinafter, referred to as a “train control system”) for securing safety integrity according to the present embodiment may include a first system device 110 and a second system device 200. ), The third system device 300, and the voting control unit 400.

제1시스템 장치(100)는 작업 로드(Load) 저감을 위한 듀얼 코어(CORE)(예컨대 TI社의 TMS570)(111)를 포함할 수 있으며, 듀얼 코어(110)는 메모리(120), 제어로직(130), 메모리 인터페이스(140), 및 오류검출 로직(150)을 구비할 수 있다. The first system device 100 may include a dual core (CORE) (eg, TI's TMS570) 111 for reducing a workload, and the dual core 110 may include a memory 120 and a control logic. 130, a memory interface 140, and error detection logic 150.

제1시스템 장치(100)에는 듀얼 코어(프로세서, 이하 생략함)가 예시되고 있으나, 싱글 코어, 트리플 코어, 또는 쿼드 코어와 같이 다양한 형태의 것이 적용될 수 있다. 다만 한정하지는 않는다.Although a dual core (processor, hereinafter omitted) is illustrated in the first system device 100, various types such as a single core, a triple core, or a quad core may be applied. However, it is not limited.

메모리(120)는 비 휘발성의 플래시 메모리, 휘발성 램을 포함할 수 있으며, 플래시 롬과 램은 ECC 오류 보정 기능을 구비할 수 있다. The memory 120 may include a nonvolatile flash memory and a volatile RAM, and the flash ROM and the RAM may have an ECC error correction function.

오류 보정부(130)는 오류 보정부(130)는 메모리(120), 또는 제어 로직에 대한 오류 진단, 및 보정을 수행하며, 제1시스템 장치(100)의 오류 여부를 진단하는 PBIST(Programmable Built-In Self-Test), 제1시스템 장치(100) 내의 제어 로직의 오류 여부를 진단하는 LBIST(Logic built-in self-test), 메모리 CRC 체크부(CRC), 리셋 제어부(RESET), 디지털 와치독(DWD : Digital Watch Dog) 타이머(DWD), 리얼 타임 인터럽트 제어부(RTI)를 포함하여 구성될 수 있다. The error correction unit 130 performs an error diagnosis and correction on the memory 120 or the control logic, and the PBIST (Programmable Built Built-in) for diagnosing an error of the first system device 100. -In Self-Test, LBIST (Logic built-in self-test) for diagnosing the error of control logic in the first system device 100, memory CRC check unit (CRC), reset control unit (RESET), digital watch And a digital watch dog (DWD) timer (DWD) and a real time interrupt control unit (RTI).

메모리 인터페이스부(140)는 내부, 및 외부 메모리를 듀얼 코어(110)에 연결하기 위한 인터페이스를 제공한다. 메모리 인터페이스부(140)는 비 동기 EMIF(External Memory Interface)를 포함할 수 있으며, 비동기 EMIF는 듀얼 코어(110)가 외부 메모리에 억세스 할 수 있도록 한다.The memory interface unit 140 provides an interface for connecting internal and external memories to the dual core 110. The memory interface unit 140 may include an asynchronous external memory interface (EMIF), and the asynchronous EMIF allows the dual core 110 to access an external memory.

제2시스템 장치(200), 및 제3시스템 장치(300)는 전술한 제1시스템 장치(100)와 동일한 하드웨어로 구성된다. 따라서, 제2시스템 장치(200), 및 제3시스템 장치(300)에 대한 구성요소의 설명은 제1시스템 장치(100)의 것을 준용하도록 하며, 중복되는 설명은 생략하도록 한다.The second system apparatus 200 and the third system apparatus 300 are composed of the same hardware as the first system apparatus 100 described above. Therefore, the descriptions of the components of the second system device 200 and the third system device 300 are to be the same as those of the first system device 100, and redundant description thereof will be omitted.

제1시스템 장치(100), 제2시스템 장치(200), 및 제3시스템 장치(300)는 FPGA(Field-Programmable Gate Array)로 구현되는 보팅 제어부(400)와 CAN( Control Area Network) 버스로 접속될 수 있다. 보팅 제어부(400)는 열차 제어를 위해 발생하는 제어 명령에 대해 제1시스템 장치(100) 내지 제3시스템 장치(300)의 제어 출력값을 수신한다. 보팅 제어부(400)는 수신된 제어 출력값들 중 다수를 점하는 제어출력값과 소수를 점하는 제어출력값을 판단하고, 다수결에 따라 오류가 발생한 시스템 장치를 판단한다. 예컨대, 제1시스템 장치(100)와 제2시스템 장치(200)의 제어출력값이 동일하고, 제3시스템 장치(300)의 제어 출력값이 상이한 경우, 제3시스템 장치(300)에 오류가 발생한 것으로 판단할 수 있다. The first system device 100, the second system device 200, and the third system device 300 are connected to a voting control unit 400 and a control area network (CAN) bus implemented as a field-programmable gate array (FPGA). Can be connected. The voting controller 400 receives a control output value of the first system device 100 to the third system device 300 with respect to a control command generated for train control. The voting controller 400 determines a control output value that occupies a large number of the received control output values and a control output value that occupies a decimal number, and determines a system device in which an error occurs according to a majority vote. For example, when the control output values of the first system device 100 and the second system device 200 are the same and the control output values of the third system device 300 are different, an error has occurred in the third system device 300. You can judge.

보팅 제어부(400)는 오류가 발생한 시스템 장치에 대해 리셋을 수행할 수 있다. 이때, 제1시스템 장치(100), 제2시스템 장치(200), 및 제3시스템 장치(300)는 각기 독립적인 전원에 의해 구동되는 것이 바람직하다.The voting controller 400 may reset the system device in which the error occurs. In this case, the first system device 100, the second system device 200, and the third system device 300 are preferably driven by independent power sources.

보팅 제어부(400)는 오류가 발생한 시스템 장치에 대해 리셋을 수행 후, 리셋된 시스템 장치에서 출력되는 장치 체크 신호를 참조하거나, 리셋된 시스템 장치의 메모리의 메모리값을 참조하여 정상적으로 부팅되어 구동하는가를 판단하고, 판단 결과, 리셋된 시스템 장치가 정상으로 판단되면, 액티브 상태로 전환할 수 있다. 이는 종래의 시스템 구조와 가장 큰 차이점을 보이는 것으로, 종래에는 시스템 장치에 오류가 발생하면, 대체 시스템 장치를 구동하고, 오류가 발생한 시스템 장치는 비 활성화상태로 유지하는데 비하여 오류가 발생한 시스템 장치도 재 사용할 수 있도록 함으로써 시스템 활용도를 높일 수 있는데 따른다.After the voting control unit 400 performs a reset on the system device in which an error occurs, the voting control unit 400 refers to the device check signal output from the reset system device, or refers to the memory value of the memory of the reset system device to determine whether it normally boots and operates. If it is determined that the reset system device is normal, the determination may be made to the active state. This is the biggest difference from the conventional system structure. In the past, when an error occurs in the system device, the replacement system device is driven, and the failed system device is kept inactive. It can be used to increase system utilization.

보팅 제어부(400)는 에러 제어부(410), 컴팩트 PCI 제어부(420), 트랜시버(430), 및 자가 진단부(440)를 구비할 수 있다.The voting controller 400 may include an error controller 410, a compact PCI controller 420, a transceiver 430, and a self diagnosis unit 440.

에러 제어부(410)는 CAN 버스로 접속된 제1시스템 장치(100) 내지 제3시스템 장치(300)에서 출력되는 제어 출력값을 참조하여 다수결에 따라 오류가 발생한 시스템 장치를 판단하고, 오류가 발생한 시스템 장치를 리셋 후, 리셋된 시스템 장치에서 출력되는 장치 체크 신호를 참조하거나, 리셋된 시스템 장치의 메모리의 메모리값을 참조하여 시스템 장치의 정상 여부를 판단한다. 리셋된 시스템 장치가 정상으로 판단되면 재 가동하고, 반대의 경우, 시스템 장치를 비 활성화시킬 수 있다. The error control unit 410 refers to the control output values output from the first system device 100 to the third system device 300 connected by the CAN bus, and determines a system device in which an error occurs according to a majority vote, and the system in which the error occurs. After resetting the device, it is determined whether the system device is normal by referring to the device check signal output from the reset system device or by referring to the memory value of the memory of the reset system device. If it is determined that the reset system device is normal, it can be restarted and vice versa.

한편, 보팅 제어부(400)는 그 자신도 다중화되어 보팅 제어부(400)의 오류 발생을 제한할 수 있다.On the other hand, the voting control unit 400 itself may be multiplexed to limit the occurrence of errors in the voting control unit 400.

보팅 제어부(400)는 동일한 보팅 로직이 둘, 셋, 또는 그 이상의 개수로 FPGA로 구현될 수 있다. 예컨대, 동일한 보팅 로직이 4개로 구성되고, 각 보팅 로직의 결과들 중 소수자 결과를 제출하는 보팅 로직을 리셋하거나 비 활성화함으로써 보팅 로직의 무결성을 확보할 수 있다. The voting control unit 400 may be implemented as an FPGA with two, three, or more numbers of the same voting logic. For example, the same voting logic is composed of four, and the integrity of the voting logic can be secured by resetting or deactivating the voting logic that submits a decimal result among the results of each voting logic.

따라서, 보팅 제어부(400)는 제1시스템 장치(100), 제2시스템 장치(200), 및 제3시스템 장치(300)로 다중화된 결과판정 장치들의 오류를 점검하면서, 자신의 오류도 함께 진단하도록 구성된다. 통상의 열차제어 시스템이 액티브(Active) 장치와 스텐바이(standby) 장치로 구성되고, 액티브 장치에 오류가 발생하면 스텐바이 장치가 열차 제어를 수행하도록 하는 구조이며, 이들 장치들이 SIL4(Safety Integrity Level 4)의 규격을 만족하고 있으나, 본 발명에 따른 열차제어 시스템은 상시 가용한 3개의 시스템 장치(100, 200, 300)의 제어 결과 값이 비교되어 오류 발생을 차단함은 물론, 오류의 발생을 진단하고 조치하는 보팅 제어부(400) 자체도 오류 진단을 수행하므로, 기존의 SIL 4 규격에 따른 열차제어 시스템의 안전성을 상회할 수 있다. 즉, 본 발명에 따른 열차제어 시스템은 SIL4 규격이 요구하는 안정성을 상회하는 안정성을 제공할 수 있다. Accordingly, the voting control unit 400 checks the errors of the result determination devices multiplexed into the first system device 100, the second system device 200, and the third system device 300, and diagnoses the error thereof. It is configured to. A typical train control system consists of an active device and a standby device, and if a failure occurs in the active device, the standby device performs the train control. These devices are SIL4 (Safety Integrity Level). 4), but the train control system according to the present invention is compared with the control result value of the three system devices (100, 200, 300) that are always available, as well as blocking the occurrence of the error, the occurrence of the error Since the voting control unit 400 itself for diagnosing and taking measures also performs error diagnosis, the safety of the train control system according to the existing SIL 4 standard may be exceeded. That is, the train control system according to the present invention can provide stability that exceeds the stability required by the SIL4 standard.

컴팩트 PCI 제어부(420)는 보팅 제어부(400)가 컴팩트 PCI 버스 규격에 따라 열차의 차상 컴퓨터에 접속될 수 있도록 하거나, 또는 보팅 제어부(400)가 컴팩트 PCI 규격에 따른 애드-온(ADD-ON)카드와 연결될 수 있도록 한다. 트랜시버(430)는 CAN-FT를 내장하는 형태의 것으로, 제1시스템 장치(100) 내지 제3시스템 장치(300)와 데이터 송수신을 위해 마련된다. The compact PCI control unit 420 may allow the voting control unit 400 to be connected to the onboard computer of a train according to the compact PCI bus standard, or the voting control unit 400 may be an add-on according to the compact PCI standard. Allow the card to be connected. The transceiver 430 is a type in which the CAN-FT is embedded, and is provided for data transmission and reception with the first system device 100 to the third system device 300.

자가 진단부(440)는 FPGA 로직으로 구현되는 보팅 제어부(400)의 오류 여부를 진단한다. The self diagnosis unit 440 diagnoses an error of the voting control unit 400 implemented by FPGA logic.

자가 진단부(440)는 에러 제어부(410), 컴팩트 PCI 제어부(420), 트랜시버(430)가 동일한 형태로 삼중 구조로 구성되는 보팅 제어부(400)의 출력제어값(또는 데이터)를 비교하여 보팅 제어부(400)의 오류 여부를 진단한다. 즉, 보팅 제어부(400)는 동일한 구조의 FPGA 로직이 3 셋트 마련되며, 3 셋트의 에러 제어부(410), 컴팩트 PCI 제어부(420), 트랜시버(430) 각각에서 출력되는 데이터, 및 제어신호가 동일한지를 자가 진단부(400)가 비교하고, 그 결과에 따라 오류가 발생한 FPGA 로직을 판단하여 리셋, 또는 비 활성화시킬 수 있다. The self-diagnosis unit 440 compares the output control value (or data) of the voting control unit 400, in which the error control unit 410, the compact PCI control unit 420, and the transceiver 430 have a triple structure in the same form. Diagnose whether the control unit 400 is an error. That is, the voting control unit 400 includes three sets of FPGA logic having the same structure, and the data output from each of the three sets of the error control unit 410, the compact PCI control unit 420, and the transceiver 430, and the control signal are the same. The self-diagnostic unit 400 compares the result, and determines or resets the failed FPGA logic according to the result.

도 2는 본 발명에 따른 열차제어 시스템의 소프트웨어 진단 방식에 대한 개념도를 도시한다. 2 is a conceptual diagram illustrating a software diagnostic method of a train control system according to the present invention.

도 2를 참조하면, 듀얼 코어(110)가 TI社의 TMS570 이라고 가정할 때, TMS570에 내장된 리얼 타임용 코어(111, 112)에 동일한 소프트웨어를 실행시키고, 두 코어(111, 112)가 동시에 수행하도록 하여 각각의 결과 값을 서로 비교함으로써, 오류를 검출할 수 있다. LSM 방법을 사용하였을 경우 연산 코어나 메모리 등의 하드웨어적인 오류를 검출 할 수 있지만. 소프트웨어 오류는 검출할 수 없다는 단점이 있으나, 도 2에 도시된 소프트웨어 진단 방식은 동일한 소프트웨어를 각각의 코어에서 동시 실행하여 각 코어의 결과값이 서로 같으면 다음 단계로 넘어가도록 한다. Referring to FIG. 2, assuming that the dual core 110 is a TMS570 manufactured by TI, the same software is executed on the real time cores 111 and 112 embedded in the TMS570, and the two cores 111 and 112 simultaneously operate. The error can be detected by comparing the respective result values with each other. In case of using LSM method, hardware error such as operation core or memory can be detected. Although there is a disadvantage in that a software error cannot be detected, the software diagnostic method shown in FIG. 2 executes the same software on each core simultaneously, and proceeds to the next step if the result values of each core are the same.

도 3은 듀얼 코어(110)의 오류정정부호 방식에 대한 참조도면을 도시한다. 3 illustrates a reference diagram for an error correcting code scheme of the dual core 110.

도 3을 참조하면, 듀얼 코어(110)가 TI社의 TMS570이고, 플래시 롬(121), 또는 램(122)에 32비트 크기의 제어 명령어나 데이터가 인가되는 경우, 제어 명령어나 데이터에 4비트 크기의 ECC(Error Correction Code)를 삽입하여 제어 명령어나 데이터를 복구할 수 있도록 한다. 이러한 방식을 이용하여 하나의 비트에 오류가 발생하면 오류를 복구하거나 두 개의 비트에서 오류가 발생하게 되면 제어 명령어나 데이터의 재 전송을 요청할 수 있다.Referring to FIG. 3, when the dual core 110 is a TMS570 manufactured by TI, and a 32-bit control command or data is applied to the flash ROM 121 or the RAM 122, 4 bits of the control command or data are applied. Insert a sized Error Correction Code (ECC) to recover control commands or data. In this way, if an error occurs in one bit, the error can be repaired, or if an error occurs in two bits, a control command or data retransmission can be requested.

도 4는 본 발명의 다른 실시예에 따른 열차제어 시스템의 블록개념도를 도시한다. Figure 4 shows a block diagram of a train control system according to another embodiment of the present invention.

도시된 열차제어 시스템은, 하나의 멀티 프로세서에 복수의 코어가 내장되는 형태, 또는 개별 프로세서가 하나의 시스템 장치에 집합되는 형태일 수 있다. The illustrated train control system may have a form in which a plurality of cores are built in one multiprocessor or a form in which individual processors are aggregated in one system device.

메모리, 및 소프트웨어를 독립적으로 구동 가능한 시스템 코어(510 ? 540)는 개별적인 메모리, 제어로직과 연결되어 구동하며, 독립적으로 소프트웨어(SW1 ? SW4)를 구동하고 소프트웨어(SW1 ? SW4)의 수행 결과값을 보팅 제어부(400)로 제공할 수 있다.The system cores 510 to 540 capable of independently driving the memory and the software are driven in connection with the individual memory and control logic. The system cores 510 to 540 independently drive the software (SW1 to SW4) and execute the result values of the software (SW1 to SW4). It may be provided to the voting control unit 400.

보팅 제어부(400)의 판단 결과 코어 1(510)의 소프트웨어 실행 결과값에 오류가 발생하여 코어 2(520)와 코어 3(530)의 것과 상이한 경우, 코어 1(510)은 레지스터(Register)와 메모리의 값을 모두 버리고 리셋(쓰래드를 죽이고 새로 생성)을 할 수 있다. 이때, 코어 4(540)는 코어 1(510)을 대신하여 구동하게 되며, 코어 2(520)나 코어 3(530)으로부터 연산을 위한 데이터, 및 명령어를 넘겨받아 연산을 시작할 수 있다. 코어 1(510)은 그 사이 리셋을 마치고 하드웨어의 고착 에러의 여부를 스스로 판단하게 된다. If the voting control unit 400 determines that an error occurs in the software execution result of the core 1 510 and is different from that of the core 2 520 and the core 3 530, the core 1 510 is a register and a register. You can discard all the values in memory and do a reset (killing the thread and creating a new one). In this case, the core 4 540 may be driven in place of the core 1 510, and the core 4 540 may receive the data for the operation and the instruction from the core 2 520 or the core 3 530 to start the operation. The core 1 510 finishes the reset in the meantime and determines for itself whether the hardware is stuck.

도 5는 시스템 장치, 또는 멀티 코어를 이용하는 본 발명의 열차 제어시스템의 Markov 모델에 대한 참조도면을 도시한다. FIG. 5 shows a reference drawing to a Markov model of a system arrangement, or a train control system of the present invention using multiple cores.

M1 : 모든 제어장치가 정상 동작M1: All control devices operate normally

M2 : 세 개의 제어장치가 정상 동작M2: Three controllers work normally

M3 : 두 개의 제어장치가 정상 동작M3: Two controllers work normally

M4 : 세 개 혹은 모든 제어 장치가 고장
M4: Three or all control units fail

제안된 쿼드 코어 장치의 Markov 모델을 살펴보면 그림 10과 같다. 4개의 Core가 동일한 고장율

Figure pat00002
을 가지고 있고. 자가 복구 시스템의 고장율을
Figure pat00003
로 가정한다.Figure 10 shows the Markov model of the proposed quad-core device. 4 Cores have the same failure rate
Figure pat00002
Have it. Failure rate of self-healing system
Figure pat00003
.

이 중에서 제어 시스템이 동작 할 수 있는 모드는 M1, M2과 M3 상태이다. 이를 Markov Process로 모델링하면 다음과 같다. 먼저 상태 확률 벡터를

Figure pat00004
라 놓으면 그림의 상태도에서
Figure pat00005
은 아래의 수학식 1과 같다.The modes in which the control system can operate are M1, M2 and M3. When modeled as Markov Process, it is as follows. First, state probability vector
Figure pat00004
In the state diagram of the picture
Figure pat00005
Is the same as Equation 1 below.

Figure pat00006
Figure pat00006

100 : 제1시스템 장치 200 : 제2시스템 장치
300 : 제3시스템 장치 400 : 보팅 제어부
100: first system device 200: second system device
300: third system device 400: voting control

Claims (11)

제1 프로세서를 포함하는 제1시스템 장치, 제2 프로세서를 포함하는 제2시스템 장치, 및 제3프로세서를 포함하는 제3시스템 장치; 및
상기 제1시스템 장치 내지 상기 제3시스템 장치의 제어 출력값을 수신하고, 이들 제어 출력값에 대해 다수결 선택을 적용하여 상기 제1시스템 장치 내지 상기 제3시스템 장치 중 상이한 제어 출력값을 생성하는 것에 대해 오류를 판정하며, 오류로 판정난 시스템 장치를 리셋 후, 재 기동하여 액티브 상태의 전환 여부를 판단하는 보팅(voting) 제어부;를 포함하는 것을 특징으로 하는 안전 무결성 확보를 위한 열차제어 시스템.
A first system device including a first processor, a second system device including a second processor, and a third system device including a third processor; And
Receive control output values of the first system apparatus or the third system apparatus and apply a majority vote selection to these control output values to generate an error for generating different control output values of the first system apparatus or the third system apparatus. And a voting control unit for determining whether to switch the active state after resetting the system device determined to be an error and restarting the system device.
제1항에 있어서,
상기 보팅 제어부는,
상기 제1시스템 장치 내지 상기 제3시스템 장치들 중 오류로 판정난 시스템 장치를 리셋 후, 오류로 판정된 시스템 장치의 메모리 출력값이 정상으로 판정되면 상기 오류로 판정된 시스템 장치를 액티브 상태로 전환하는 것을 특징으로 하는 안전 무결성 확보를 위한 열차제어 시스템.
The method of claim 1,
The voting control unit,
After resetting a system device determined to be an error among the first to third system devices, if the memory output value of the system device determined to be an error is determined to be normal, the system device determined to be an error is changed to an active state. Train control system for securing safety integrity, characterized in that.
제1항에 있어서,
상기 제1시스템 장치 내지 상기 제3시스템 장치는,
동일한 하드웨어, 및 소프트웨어가 설치되며,
동일한 제어에 대해 동일한 프로그램을 구동하여 작업을 수행하고, 그 결과값을 상기 보팅 제어부로 전달하며, 상기 보팅 제어부는 상기 제1시스템 장치 내지 상기 제3시스템 장치의 상기 결과값을 참조하여 상기 제1시스템 장치 내지 상기 제3 시스템 장치에 대한 무결성 여부를 판단하는 것을 특징으로 하는 안전 무결성 확보를 위한 열차제어 시스템.
The method of claim 1,
The first system device to the third system device,
The same hardware and software are installed,
The same program is executed with respect to the same control, and a result is transmitted to the voting control unit, and the voting control unit refers to the result value of the first system device to the third system device with reference to the first value. A train control system for ensuring safety integrity, characterized in that for determining the integrity of the system device to the third system device.
제1항에 있어서,
상기 제3시스템 장치는,
적어도 하나 이상인 것을 특징으로 하는 안전 무결성 확보를 위한 열차제어 시스템.
The method of claim 1,
The third system device,
Train control system for securing safety integrity, characterized in that at least one or more.
제1항에 있어서,
상기 제1시스템 장치, 상기 제2시스템 장치, 상기 제3시스템 장치, 및 상기 보팅 제어부는 CAN 버스로 연결되는 것을 특징으로 하는 안전 무결성 확보를 위한 열차제어 시스템.
The method of claim 1,
And the first system device, the second system device, the third system device, and the voting control unit are connected to a CAN bus.
제1항에 있어서,
상기 보팅 제어부는,
FPGA(Field Programmable Gate Array)로 구현되는 것을 특징으로 하는 안전 무결성 확보를 위한 열차제어 시스템.
The method of claim 1,
The voting control unit,
Train control system for securing safety integrity, characterized in that implemented as a field programmable gate array (FPGA).
제1항에 있어서,
상기 제1 내지 상기 제3시스템 장치는,
독립 전원에 의해 구동되는 것을 특징으로 하는 안전 무결성 확보를 위한 열차제어 시스템.
The method of claim 1,
The first to third system apparatus,
Train control system for securing safety integrity, characterized in that driven by an independent power source.
제1 코어 내지 제3 코어를 구비하는 멀티 프로세서;
상기 제1 코어 내지 상기 제3 코어와 독립적으로 연결되는 메모리;
상기 제1 코어 내지 상기 제3 코어와 독립적으로 연결되는 제어로직; 및
상기 제1 코어 내지 상기 제3 코어에 할당된 작업 명령에 대한 제어 출력값을 수신하고, 상기 각 코어에 의해 발생하는 제어 출력값들에 대해 다수결 선택을 적용하여 상기 제1 코어 내지 상기 제3코어 중 상이한 제어 출력값을 생성하는 코어에 대해 오류가 발생한 것으로 판단하고, 오류가 발생한 코어를 리셋 후, 재 기동하는 보팅 제어부;를 포함하는 것을 특징으로 하는 안전 무결성 확보를 위한 열차제어 시스템.
A multiprocessor having a first core to a third core;
A memory connected independently to the first to third cores;
A control logic connected independently to the first to third cores; And
Receives a control output value for a work command assigned to the first core to the third core, and applies a majority vote selection to the control output values generated by the respective cores so as to be different from the first core to the third core. And a voting control unit configured to determine that an error has occurred in the core generating the control output value and to restart the core in which the error has occurred, and to restart the core.
제8항에 있어서,
상기 제1 코어, 내지 상기 제3 코어는,
동일한 하드웨어와 연결되어, 독립적인 제어 시스템을 이루는 것을 특징으로 하는 안전 무결성 확보를 위한 열차제어 시스템.
9. The method of claim 8,
The first core, to the third core,
Train control system for securing safety integrity, characterized in that the independent hardware control system connected to the same hardware.
제8항에 있어서,
상기 제1 코어 내지 상기 제3 코어는,
동일한 소프트웨어를 구동하며,
동일한 제어 명령에 대해 동일한 프로그램을 구동하여 작업을 수행하고, 그 결과값을 상기 보팅 제어부로 전달하며,
상기 보팅 제어부는 상기 제1 코어 내지 상기 제3 코어의 결과값을 참조하여 상이한 결과값을 산출하는 코어에 대해 오류 판정을 수행하는 것을 특징으로 하는 안전 무결성 확보를 위한 열차제어 시스템.
9. The method of claim 8,
The first core to the third core,
Run the same software,
The same program is executed for the same control command, and the result is transmitted to the voting control unit;
The voting control unit performs an error determination on a core that calculates different result values by referring to result values of the first core to the third core.
제8항에 있어서,
상기 제3 코어는,
적어도 하나 이상인 것을 특징으로 하는 안전 무결성 확보를 위한 열차제어 시스템.
9. The method of claim 8,
The third core,
Train control system for securing safety integrity, characterized in that at least one or more.
KR1020110056188A 2011-06-10 2011-06-10 Train contol system for obtain safty integrity KR101295770B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110056188A KR101295770B1 (en) 2011-06-10 2011-06-10 Train contol system for obtain safty integrity

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110056188A KR101295770B1 (en) 2011-06-10 2011-06-10 Train contol system for obtain safty integrity

Publications (2)

Publication Number Publication Date
KR20120136955A true KR20120136955A (en) 2012-12-20
KR101295770B1 KR101295770B1 (en) 2013-08-12

Family

ID=47904230

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110056188A KR101295770B1 (en) 2011-06-10 2011-06-10 Train contol system for obtain safty integrity

Country Status (1)

Country Link
KR (1) KR101295770B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110837233A (en) * 2018-08-16 2020-02-25 舍弗勒技术股份两合公司 Safety control system for improving functional safety
KR102202468B1 (en) * 2019-07-15 2021-01-13 에이치웨이 주식회사 Centralized controlling system of train based on cloud and method thereof

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101630703B1 (en) 2014-10-27 2016-06-16 한국철도기술연구원 Module type train control system
KR20200044206A (en) * 2018-10-10 2020-04-29 삼성전자주식회사 Electronic apparatus and method for controlling thereof

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100380658B1 (en) * 2001-01-31 2003-04-18 한국전력공사 Out put device using serial communication of triple type control device and control method thereof
KR100468888B1 (en) * 2002-10-29 2005-01-29 한국철도기술연구원 Apparatus and method for mediation serial data in rail control system
KR20040037697A (en) * 2002-10-29 2004-05-07 한국철도기술연구원 Apparatus and method for processing serial data in rail control system
KR100694511B1 (en) * 2004-12-24 2007-03-13 한국철도기술연구원 Device for controlling fault by using majority logic at onboard equipment of train in RCBTC system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110837233A (en) * 2018-08-16 2020-02-25 舍弗勒技术股份两合公司 Safety control system for improving functional safety
CN110837233B (en) * 2018-08-16 2024-03-05 舍弗勒技术股份两合公司 Safety control system for improving functional safety
KR102202468B1 (en) * 2019-07-15 2021-01-13 에이치웨이 주식회사 Centralized controlling system of train based on cloud and method thereof

Also Published As

Publication number Publication date
KR101295770B1 (en) 2013-08-12

Similar Documents

Publication Publication Date Title
JP5722426B2 (en) Computer system for control, method for controlling computer system for control, and use of computer system for control
US11691638B2 (en) Determination of reliability of vehicle control commands using a voting mechanism
CA3003039C (en) Fault coverage for multiple failures in redundant systems
US9372774B2 (en) Redundant computing architecture
US8977895B2 (en) Multi-core diagnostics and repair using firmware and spare cores
CN109634171B (en) Dual-core dual-lock-step two-out-of-two framework and safety platform thereof
DE102011086530A1 (en) Microprocessor system with fault-tolerant architecture
CN111891134B (en) Automatic driving processing system, system on chip and method for monitoring processing module
US20080046802A1 (en) Memory controller and method of controlling memory
US10394675B2 (en) Vehicle control device
Buja et al. Dependability and functional safety: Applications in industrial electronics systems
KR101295770B1 (en) Train contol system for obtain safty integrity
US9690678B2 (en) Fault tolerant systems and method of using the same
EP1014237A1 (en) Modular computer architecture
US10503582B2 (en) Method and computer system for fault tolerant data integrity verification of safety-related data
US10747186B2 (en) Multi-channel control switchover logic
EP2442229A1 (en) High reliability method of data processing, and controller unit
CN110140112B (en) Periodic non-invasive diagnostics for lockstep systems
US11080161B2 (en) Control device, and processing method in event of failure in control device
KR101448013B1 (en) Fault-tolerant apparatus and method in multi-computer for Unmanned Aerial Vehicle
DE102011102012B4 (en) Systems and methods for secure interrupt handling
KR20200068065A (en) Method for processing error in autonomous drive controller
JP6584055B2 (en) System recovery circuit and system recovery method
RU2718168C2 (en) Automated security system of industrial plant
KR101366775B1 (en) Fault-tolerant apparatus for computer system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160808

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170807

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180806

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190806

Year of fee payment: 7