KR20180028570A - Multi core system and method of driving the same - Google Patents
Multi core system and method of driving the same Download PDFInfo
- Publication number
- KR20180028570A KR20180028570A KR1020160115413A KR20160115413A KR20180028570A KR 20180028570 A KR20180028570 A KR 20180028570A KR 1020160115413 A KR1020160115413 A KR 1020160115413A KR 20160115413 A KR20160115413 A KR 20160115413A KR 20180028570 A KR20180028570 A KR 20180028570A
- Authority
- KR
- South Korea
- Prior art keywords
- core
- code
- memory
- data
- shared memory
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2028—Failover techniques eliminating a faulty processor or activating a spare
Abstract
Description
본 발명은 멀티 코어 시스템 및 이의 구동 방법에 관한 것으로, 보다 상세하게는 제2 코어가 정상 동작하지 않는 것으로 진단되면, 제1 코어가 제2 코어가 실행하는 제2 코드와 제2 코드를 실행하여 생성된 제2 처리 데이터를 각각 제1 백업 코드 메모리와 제2 공유 메모리로부터 입력받아 제2 코드를 실행하는 멀티 코어 시스템 및 이의 구동 방법에 관한 것이다.The present invention relates to a multicore system and a method of driving the same, and more particularly, to a system and method for operating a multicore system, Core system and a method for driving the same, and a method for executing the second code by receiving the generated second processing data from the first backup code memory and the second shared memory, respectively.
단일 코어 기반의 시스템은 추가 성능 향상과 저전력 구현의 한계로 인하여, 멀티 코어 시스템 구조의 점유율이 증가하고 있고, 앞으로도 멀티 코어 시스템이 대세로 자리 잡게 될 것이다.Due to the limitations of additional performance enhancement and low power implementation, the share of multi-core system architecture is increasing, and multi-core system will become popular in the future.
멀티 코어 시스템 환경에서 중요한 것은 다수의 코어 중에서 일부 코어에 고장이 발생하더라도 고장이 발생하지 않은 다른 코어를 이용하여 지속적으로 시스템을 구동시키는 구동 안정성이다.What is important in a multicore system environment is the stability of driving the system continuously by using other cores that fail in some cores even if some cores fail.
즉, 멀티 코어 시스템은 다수의 코어 중 일부 코어에 고장이 발생하여도, 해당 고장 코어를 시스템에서 차단하여 나머지 정상 코어들에게 영향이 가지 않도록 한다면 정상적으로 동작할 수 있다. 따라서, 멀티 코어 시스템은 정확한 고장 진단을 통해 고장 코어를 판별하고, 여분의 정상 코어로 대체하거나 고장 코어를 차단하여 다소의 성능감소를 감안한 채 구동 안정성을 유지하게 된다.That is, even if a failure occurs in some of the cores of a plurality of cores, the multi-core system can operate normally if the corresponding cores are blocked in the system and the remaining cores are not affected. Therefore, a multicore system determines the faulty core through accurate fault diagnosis, replaces it with a spare normal core, or blocks the faulty core to maintain the driving stability while taking into account some performance degradation.
이를 위하여, 다수의 코어 각각은 코드를 실행한 결과로 생성되는 처리 데이터를 로컬 메모리와 공유 메모리에 각각 저장하게 된다. 즉, 일부의 코어에 고장이 발생하는 경우, 고장이 발생하지 않은 코어에서 고장이 발생한 코어를 대신해 코드를 실행하기 위하여 공유 메모리에 고장이 발생한 코어가 고장 전까지 생성한 처리 데이터를 저장한다.To this end, each of the plurality of cores stores processing data generated as a result of executing the code in the local memory and the shared memory, respectively. That is, when a failure occurs in some of the cores, the processing data generated until the failure of the core in which the failure occurs in the shared memory is stored to execute the code in place of the core in which the failure has occurred in the core in which the failure has not occurred.
이에 따라, 다수의 코어는 처리 데이터를 공유하기 위하여 코드 실행 결과 생성된 처리 데이터를 로컬 메모리뿐만 아니라 공유 메모리에 추가로 저장함으로써, 처리 데이터의 저장에 소요되는 코어 로드가 부가되는 문제점이 있다.Accordingly, a large number of cores have a problem in that a core load for storing processing data is added by storing the processing data generated as a result of executing the code in addition to the local memory as well as the shared memory in order to share processing data.
본 발명은 제1 코어가 제2 코어의 정상 동작 여부의 진단 결과에 기초하여 제2 공유 메모리에 저장된 제2 처리 데이터를 이용하여 제1 백업 코드 메모리에 저장된 제2 코드를 실행함으로써, 제2 코어가 정상 동작을 하지 않는 경우에도 제1 코어를 통해 제2 코드를 실행할 수 있는 구동 안정성이 향상된 멀티 코어 시스템 및 이의 구동 방법을 제공하는 것을 목적으로 한다.The present invention is characterized in that the first core executes the second code stored in the first backup code memory using the second process data stored in the second shared memory based on the diagnosis result of whether or not the second core is normally operated, Core system in which the second code can be executed through the first core even when the normal operation is not performed, and a method of driving the same.
또한, 본 발명은 제1 데이터 버스를 이용하여 제1 코어가 제1 코드를 실행하여 생성한 제1 처리 데이터를 분기시켜 제1 로컬 메모리와 제1 공유 메모리로 입력함으로써, 로컬 메모리와 공유 메모리 모두에 처리 데이터를 저장하는데 소요되는 코어 로드를 감소시킬 수 있는 멀티 코어 시스템 및 이의 구동 방법을 제공하는 것을 목적으로 한다.Further, according to the present invention, the first processing data generated by executing the first code by the first core is branched and input to the first local memory and the first shared memory by using the first data bus, so that both the local memory and the shared memory Core system and a method of driving the same, which can reduce a core load required for storing processing data in a multi-core system.
또한, 본 발명은 제1 코어와 제2 코어로 진단 계산식을 각각 송신하고, 송신된 진단 계산식에 대응하는 진단 데이터의 수신 여부에 기초하여 제1 코어와 제2 코어의 정상 동작 여부를 각각 진단함으로써, 제1 코어와 제2 코어의 정상 동작 여부를 정확하게 진단할 수 있는 멀티 코어 시스템 및 이의 구동 방법을 제공하는 것을 목적으로 한다.Further, according to the present invention, diagnosis diagnosis formulas are transmitted to the first core and the second core, respectively, and whether or not the first core and the second core are normally operated based on whether or not diagnosis data corresponding to the transmitted diagnosis formula is received And a multicore system capable of accurately diagnosing whether or not the first core and the second core are operating normally, and a method of driving the same.
본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects and advantages of the present invention which are not mentioned can be understood by the following description and more clearly understood by the embodiments of the present invention. It will also be readily apparent that the objects and advantages of the invention may be realized and attained by means of the instrumentalities and combinations particularly pointed out in the appended claims.
상술된 목적을 달성하기 위한 본 발명의 일 실시예에 따른 멀티 코어 시스템은 제1 코드를 실행하여 제1 처리 데이터를 생성하는 제1 코어, 생성된 제1 처리 데이터를 분기시켜 제1 로컬 메모리와 제1 공유 메모리로 입력하는 제1 데이터 버스; 제2 코드를 실행하여 제2 처리 데이터를 생성하는 제2 코어, 생성된 제2 처리 데이터를 분기시켜 제2 로컬 메모리와 제2 공유 메모리로 입력하는 제2 데이터 버스 및 제2 코드를 미리 저장하는 제1 백업 코드 메모리를 포함하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a multi-core system including a first core for executing a first code to generate first processing data, a second core for branching the generated first processing data, A first data bus for inputting to a first shared memory; A second core for executing a second code to generate second processed data, a second data bus for branching the generated second processed data and inputting to the second local memory and the second shared memory, and a second code And a first backup code memory.
일 실시예에서, 제1 코어는 제2 코어의 정상 동작 여부의 진단 결과에 기초하여 제2 공유 메모리에 저장된 제2 처리 데이터를 이용하여 제1 백업 코드 메모리에 저장된 제2 코드를 실행할 수 있다.In one embodiment, the first core may execute the second code stored in the first backup code memory using the second processing data stored in the second shared memory based on the diagnostic result of whether or not the second core is operating normally.
일 실시예에서, 멀티 코어 시스템은 제1 코어와 제2 코어로 진단 계산식을 각각 송신하고, 송신된 진단 계산식에 대응하는 진단 데이터의 수신 여부에 기초하여 제1 코어와 제2 코어의 정상 동작 여부를 각각 진단하는 진단부를 더 포함할 수 있다. In one embodiment, the multicore system transmits diagnosis diagnostic formulas to the first and second cores, respectively, and determines whether normal operation of the first and second cores, based on whether diagnostic data corresponding to the transmitted diagnostic formula is received, Respectively.
일 실시예에서, 제1 코어는 제2 코어가 정상 동작하지 않는 것으로 진단되면, 제2 공유 메모리에 저장된 제2 처리 데이터를 이용하여 제1 백업 코드 메모리에 저장된 제2 코드를 실행할 수 있다.In one embodiment, if the first core is diagnosed as not functioning normally, the second core may execute the second code stored in the first backup code memory using the second process data stored in the second shared memory.
일 실시예에서, 제1 코어는 제2 코어가 정상 동작하지 않는 것으로 진단되면, 제2 코드를 실행하여 제2 처리 데이터를 생성하고, 생성된 제2 처리 데이터를 제2 공유 메모리로 출력할 수 있다.In one embodiment, if the first core is diagnosed that the second core is not functioning normally, it may execute the second code to generate the second process data and output the generated second process data to the second shared memory have.
일 실시예에서, 제2 코어는 동작 상태가 정상 동작으로 복구되면 제1 코어로부터 출력되어 제2 공유 메모리에 저장된 제2 처리 데이터를 이용하여 제2 코드를 실행할 수 있다.In one embodiment, the second core may execute the second code using the second process data output from the first core and stored in the second shared memory if the operating state is restored to normal operation.
상술된 목적을 달성하기 위한 본 발명의 일 실시예에 따른 멀티 코어 시스템의 구동 방법은 제1 코어가 제1 코드를 실행하여 제1 처리 데이터를 생성하는 단계, 제1 데이터 버스가 생성된 제1 처리 데이터를 분기시켜 제1 로컬 메모리와 제1 공유 메모리로 입력하는 단계, 제2 코어가 제2 코드를 실행하여 제2 처리 데이터를 생성하는 단계, 제2 데이터 버스가 생성된 제2 처리 데이터를 분기시켜 제2 로컬 메모리와 제2 공유 메모리로 입력하는 단계, 제1 백업 코드 메모리에 제2 코드를 미리 저장하는 단계 및 제1 코어가 제2 코어의 정상 동작 여부의 진단 결과에 기초하여 제2 공유 메모리에 저장된 제2 처리 데이터를 이용하여 제1 백업 코드 메모리에 저장된 제2 코드를 실행하는 단계를 포함하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a method of driving a multi-core system, the method comprising: a first core executing a first code to generate first processing data; Inputting the processed data into the first local memory and the first shared memory; executing the second code to generate second processed data; and generating second processed data in which the second data bus is generated Storing the second code in the first backup code memory in advance, and storing the second code in the first backup code memory in advance, based on the result of the diagnosis of whether the first core is operating normally or not, And executing the second code stored in the first backup code memory using the second process data stored in the shared memory.
일 실시예에서, 멀티 코어 시스템의 구동 방법은 진단부가 제1 코어와 제2 코어로 진단 계산식을 각각 송신하고, 송신된 진단 계산식에 대응하는 진단 데이터의 수신 여부에 기초하여 제1 코어와 제2 코어의 정상 동작 여부를 각각 진단하는 단계를 더 포함할 수 있다.In one embodiment, a method for driving a multicore system is one in which a diagnostic unit sends a diagnostic calculation formula to a first core and a second core, respectively, and the first and second cores, based on whether or not diagnostic data corresponding to the transmitted diagnostic formula is received, And diagnosing whether the core is operating normally.
일 실시예에서, 멀티 코어 시스템의 구동 방법은 제2 코어가 정상 동작하지 않는 것으로 진단되면, 제2 공유 메모리에 저장된 제2 처리 데이터를 이용하여 제1 백업 코드 메모리에 저장된 제2 코드를 실행하는 단계를 더 포함할 수 있다.In one embodiment, when the second core is diagnosed as not operating normally, the method of driving the multicore system executes the second code stored in the first backup code memory using the second process data stored in the second shared memory Step < / RTI >
일 실시예에서, 멀티 코어 시스템의 구동 방법은 제2 코어가 정상 동작하지 않는 것으로 진단되면, 제1 코어가 제2 코드를 실행하여 제2 처리 데이터를 생성하고, 생성된 제2 처리 데이터를 제2 공유 메모리로 출력하는 단계를 더 포함할 수 있다.In one embodiment, when the second core is diagnosed as not operating normally, the first core executes the second code to generate the second process data, 2 shared memory.
일 실시예에서, 멀티 코어 시스템의 구동 방법은 제2 코어가 동작 상태가 정상 동작으로 복구되면 제1 코어로부터 출력되어 제2 공유 메모리에 저장된 제2 처리 데이터를 이용하여 제2 코드를 실행하는 단계를 더 포함할 수 있다.In one embodiment, a method of driving a multicore system includes executing a second code using second processing data output from a first core and stored in a second shared memory when a second core is restored to a normal operation state As shown in FIG.
전술한 바와 같은 본 발명에 의하면 제1 코어가 제2 코어의 정상 동작 여부의 진단 결과에 기초하여 제2 공유 메모리에 저장된 제2 처리 데이터를 이용하여 제1 백업 코드 메모리에 저장된 제2 코드를 실행함으로써, 제2 코어가 정상 동작을 하지 않는 경우에도 제1 코어를 통해 제2 코드를 실행하여 구동 안정성을 향상시키는 효과가 있다.According to the present invention as described above, the first core executes the second code stored in the first backup code memory by using the second process data stored in the second shared memory based on the diagnosis result of the normal operation of the second core Thus, even when the second core does not operate normally, there is an effect of improving the driving stability by executing the second code through the first core.
또한, 본 발명에 의하면 제1 데이터 버스를 이용하여 제1 코어가 제1 코드를 실행하여 생성한 제1 처리 데이터를 분기시켜 제1 로컬 메모리와 제1 공유 메모리로 입력함으로써, 로컬 메모리와 공유 메모리 모두에 처리 데이터를 저장하는데 소요되는 코어 로드를 감소시킬 수 있는 효과가 있다.According to the present invention, the first processing data generated by executing the first code by the first core using the first data bus is branched and input to the first local memory and the first shared memory, It is possible to reduce the core load required to store the process data in all of them.
또한, 본 발명에 의하면 제1 코어와 제2 코어로 진단 계산식을 각각 송신하고, 송신된 진단 계산식에 대응하는 진단 데이터의 수신 여부에 기초하여 제1 코어와 제2 코어의 정상 동작 여부를 각각 진단함으로써, 제1 코어와 제2 코어의 정상 동작 여부를 정확하게 진단할 수 있는 효과가 있다.According to the present invention, diagnosis diagnosis formulas are transmitted to the first core and the second core, respectively, and whether normal operation of the first core and the second core is detected based on whether diagnosis data corresponding to the transmitted diagnosis formula is received Thereby, it is possible to accurately diagnose whether or not the first core and the second core normally operate.
도 1은 본 발명의 일 실시예에 따른 멀티 코어 시스템의 구성을 도시한 도면.
도 2는 본 발명의 일 실시예에 따른 멀티 코어 시스템의 제1 코어부와 제2 코어부의 데이터 흐름을 도시한 도면.
도 3 및 도 4는 본 발명의 일 실시예에 따른 멀티 코어 시스템의 제2 코어부가 정상 동작하지 않는 경우 제1 코어부의 데이터 흐름을 도시한 도면.
도 5는 본 발명의 일 실시예에 따른 멀티 코어 시스템의 제2 코어부가 복구되는 경우 제1 코어부와 제2 코어부의 데이터 흐름을 도시한 도면.
도 6은 본 발명의 일 실시예에 따른 멀티 코어 시스템의 구동 방법을 도시한 순서도.BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a diagram showing a configuration of a multicore system according to an embodiment of the present invention; Fig.
FIG. 2 illustrates a data flow of a first core portion and a second core portion of a multicore system according to an embodiment of the present invention; FIG.
FIG. 3 and FIG. 4 illustrate a data flow of a first core unit when a second core unit of a multicore system according to an embodiment of the present invention does not operate normally. FIG.
FIG. 5 illustrates a data flow of a first core part and a second core part when a second core part of a multicore system according to an embodiment of the present invention is restored; FIG.
6 is a flowchart illustrating a method of driving a multicore system according to an embodiment of the present invention.
전술한 목적, 특징 및 장점은 첨부된 도면을 참조하여 상세하게 후술되며, 이에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 감지되는 경우에는 상세한 설명을 생략한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다. 도면에서 동일한 참조부호는 동일 또는 유사한 구성요소를 가리키는 것으로 사용된다.The above and other objects, features, and advantages of the present invention will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings, which are not intended to limit the scope of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the drawings, the same reference numerals are used to denote the same or similar elements.
도 1은 본 발명의 일 실시예에 따른 멀티 코어 시스템의 구성을 도시한 도면이고, 도 2는 본 발명의 일 실시예에 따른 멀티 코어 시스템의 제1 코어부와 제2 코어부의 데이터 흐름을 도시한 도면이다.FIG. 1 is a diagram illustrating a configuration of a multicore system according to an embodiment of the present invention. FIG. 2 is a diagram illustrating a data flow of a first core part and a second core part of a multicore system according to an embodiment of the present invention. Fig.
도 1 및 도 2를 참조하면, 본 발명의 일 실시예에 따른 멀티 코어 시스템(1000)은 제1 코어부(100), 제2 코어부(200), 공유 메모리부(10) 및 진단부(20)를 포함하여 구성될 수 있다. 도 1 및 도 2에 도시된 멀티 코어 시스템(1000)은 일 실시예에 따른 것이고, 그 구성요소들이 도 1 및 도 2에 도시된 실시예에 한정되는 것은 아니며, 필요에 따라 일부 구성요소가 부가, 변경 또는 삭제될 수 있다.Referring to FIGS. 1 and 2, a
본 발명의 일 실시예에 따른 멀티 코어 시스템(1000)의 제1 코어부(100)와 제2 코어부(200)가 정상 동작하는 경우 멀티 코어 시스템(1000)에 포함된 구성의 동작에 대해 설명하도록 한다.The operation of the configuration included in the
제1 코어부(100)와 제2 코어부(200)는 코드를 실행하고, 실행 결과에 따른 처리 데이터를 생성하는 역할을 수행할 수 있다. 또한, 제1 코어부(100)와 제2 코어부(200) 중 어느 하나의 코어부가 정상 동작하지 않는 경우, 정상 동작하는 코어부가 정상 동작하지 않는 코어부를 대신하여 코드를 실행하고, 실행 결과에 따른 처리 데이터를 생성할 수 있다.The
보다 구체적으로, 제1 코어부(100)는 제1 주 코드 메모리(110), 제1 백업 코드 메모리(120), 제1 코어(130), 제1 데이터 버스(140) 및 제1 로컬 메모리(150)를 포함하여 구성될 수 있다.More specifically, the
제1 주 코드 메모리(110)는 제1 코어부(100)의 제1 코어(130)가 실행하는 제1 코드를 저장하는 역할을 수행할 수 있다. 여기서, 제1 주 코드 메모리(110)는 저장된 제1 코드가 외부 전원의 공급여부에 따라 삭제되지 않도록 비휘발성 메모리일 수 있다.The first
제1 백업 코드 메모리(120)는 후술되는 제2 코어부(200)의 제2 코어(230)가 실행하는 제2 코드를 미리 저장하는 역할을 수행 할 수 있다. 제1 백업 코드 메모리(120)는 저장된 제2 코드가 외부 전원의 공급여부에 따라 삭제되지 않도록 비휘발성 메모리일 수 있다.The first
일 실시예에서, 제1 주 코드 메모리(110)와 제1 백업 코드 메모리(120)는 하나의 비휘발성 메모리에 포함될 수 있다. 이때, 제1 주 코드 메모리(110)와 제1 백업 코드 메모리(120)가 하나의 비휘발성 메모리에 포함된 경우, 하나의 비휘발성 메모리는 서로 다른 두 영역으로 분할되어 각각 제1 주 코드 메모리(110)와 제1 백업 코드 메모리(120)로 설정될 수 있다.In one embodiment, the first
제1 코어(130)는 제2 코어부(200)의 제2 코어(230)가 정상 동작하는 경우, 제1 주 코드 메모리(110)에 저장된 제1 코드를 실행하는 역할을 수행할 수 있다. 또한, 제1 코어(130)는 제1 코드를 실행하고, 실행 결과에 따른 제1 처리 데이터를 생성할 수 있다. The
이때, 제1 처리 데이터는 제1 데이터 버스(140)에 입력되고, 제1 데이터 버스(140)는 입력된 제1 처리 데이터를 분기시켜 제1 로컬 메모리(150)와 공유 메모리부(10)의 제1 공유 메모리(11)로 입력할 수 있다.The first processing data is input to the
즉, 제1 코어(130)는 입력된 데이터를 분기시켜 제1 로컬 메모리(150)와 공유 메모리부(10)의 제1 공유 메모리(11)로 동시에 입력시키는 제1 데이터 버스(140)로 한차례 출력하는 과정을 수행할 수 있다.That is, the
이를 통해, 제1 코어(130)는 제1 처리 데이터를 제1 로컬 메모리(150)와 제1 공유 메모리(11)로 각각 별도로 출력하는 출력 과정을 두차례 수행하지 않음으로써, 제1 처리 데이터를 저장하는 과정에서 소요되는 코어 로드를 감소시킬 수 있다.Accordingly, the
제2 코어부(200)는 제2 주 코드 메모리(210), 제2 백업 코드 메모리(220), 제2 코어(230), 제2 데이터 버스(240) 및 제2 로컬 메모리(250)를 포함하여 구성될 수 있다.The
제2 주 코드 메모리(210)는 제2 코어부(200)의 제2 코어(230)가 실행하는 제2 코드를 저장하는 역할을 수행할 수 있다. 여기서, 제2 주 코드 메모리(210)는 저장된 제2 코드가 외부 전원의 공급여부에 따라 삭제되지 않도록 비휘발성 메모리일 수 있다.The second
제2 백업 코드 메모리(220)는 제1 코어부(100)의 제1 코어(130)가 실행하는 제1 코드를 미리 저장하는 역할을 수행할 수 있다. 제2 백업 코드 메모리(220)는 저장된 제1 코드가 외부 전원의 공급여부에 따라 삭제되지 않도록 비휘발성 메모리일 수 있다.The second
일 실시예에서, 제2 주 코드 메모리(210)와 제2 백업 코드 메모리(220)는 하나의 비휘발성 메모리에 포함될 수 있다. 이때, 제2 주 코드 메모리(210)와 제2 백업 코드 메모리(220)가 하나의 비휘발성 메모리에 포함된 경우, 하나의 비휘발성 메모리는 서로 다른 두 영역으로 분할되어 각각 제2 주 코드 메모리(210)와 제2 백업 코드 메모리(220)로 설정될 수 있다.In one embodiment, the second
제2 코어(230)는 제1 코어부(100)의 제1 코어(130)가 정상 동작하는 경우, 제2 주 코드 메모리(210)에 저장된 제2 코드를 실행하는 역할을 수행할 수 있다. 또한, 제2 코어(230)는 제2 코드를 실행하고, 실행 결과에 따른 제2 처리 데이터를 생성할 수 있다. The
이때, 제2 처리 데이터는 제2 데이터 버스(240)에 입력되고, 제2 데이터 버스(240)는 입력된 제2 처리 데이터를 분기시켜 제2 로컬 메모리(250)와 공유 메모리부(20)의 제2 공유 메모리(21)로 입력할 수 있다.At this time, the second process data is input to the
즉, 제2 코어(230)는 입력된 데이터를 분기시켜 제2 로컬 메모리(250)와 공유 메모리부(20)의 제2 공유 메모리(11)로 동시에 입력시키는 제2 데이터 버스(240)로 한차례 출력하는 과정을 수행할 수 있다.That is, the
이를 통해, 제2 코어(230)는 제2 처리 데이터를 제2 로컬 메모리(250)와 제2 공유 메모리(11)로 각각 별도로 출력하는 출력 과정을 두차례 수행하지 않음으로써, 제2 처리 데이터를 저장하는 과정에서 소요되는 코어 로드를 감소시킬 수 있다.Accordingly, the
공유 메모리부(10)는 제1 공유 메모리(11) 및 제2 공유 메모리(12)를 포함할 수 있다. 상술한 바와 같이, 제1 공유 메모리(11)는 제1 코어(130)의 제1 코드 실행 결과에 따른 제1 처리 데이터를 제1 데이터 버스(140)로부터 입력받아 저장하는 역할을 수행할 수 있다.The shared
이와 유사하게, 제2 공유 메모리(21)는 제2 코어(230)의 제2 코드 실행 결과에 따른 제2 처리 데이터를 제2 데이터 버스(240)로부터 입력받아 저장하는 역할을 수행할 수 있다.Similarly, the second shared memory 21 may receive the second processed data according to the second code execution result of the
진단부(20)는 제1 코어(130)와 제2 코어(230)로 각각 진단 계산식을 송신하고, 송신된 진단 계산식에 대응하는 진단 데이터의 수신 여부에 기초하여 제1 코어와 제2 코어의 정상 동작 여부를 진단하는 역할을 수행할 수 있다.The
보다 구체적으로, 진단부(20)는 제1 코어(130)로 정상 동작 여부를 진단하기 위한 진단 계산식을 주기적으로 송신할 수 있다.More specifically, the
이후, 진단부(20)는 송신된 진단 계산식에 대응하는 진단 데이터의 수신 여부에 기초하여 제1 코어(130)의 정상 동작 여부를 진단할 수 있다.Then, the
예를 들어, 진단부(20)는 제1 코어(130)로부터 진단 데이터가 수신되지 않거나 진단 계산식에 대응하는 진단 데이터가 수신되지 않는 경우, 제1 코어(130)가 정상 동작하지 않는 것으로 진단할 수 있다.For example, when the diagnostic data is not received from the
이를 위하여, 제1 코어(130)는 진단부(20)로부터 진단 계산식을 수신하는 경우, 진단 계산식을 연산하고 진단 계산식을 연산한 결과인 진단 데이터를 진단부(20)로 송신할 수 있다.For this, when receiving the diagnostic calculation formula from the
이와 유사하게, 진단부(20)는 제2 코어(230)로 정상 동작 여부를 진단하기 위한 진단 계산식을 주기적으로 송신할 수 있다.Similarly, the
이후, 진단부(20)는 송신된 진단 계산식에 대응하는 진단 데이터의 수신 여부에 기초하여 제2 코어(230)의 정상 동작 여부를 진단할 수 있다.Thereafter, the
예를 들어, 진단부(20)는 제2 코어(230)로부터 진단 데이터가 수신되지 않거나 진단 계산식에 대응하는 진단 데이터가 수신되지 않는 경우, 제2 코어(230)가 정상 동작하지 않는 것으로 진단할 수 있다.For example, when the diagnostic data is not received from the
이를 위하여, 제2 코어(230)는 진단부(20)로부터 진단 계산식을 수신하는 경우, 진단 계산식을 연산하고 진단 계산식을 연산한 결과인 진단 데이터를 진단부(20)로 송신할 수 있다.For this, the
상술한 바와 같이, 일 실시예에 따른 진단부(20)는 하나로 구성되어 제1 코어(130)와 제2 코어(230)의 정상 동작 여부를 진단할 수 있다. 다른 실시예에 따른 진단부(20)는 제1 코어부(100)에 포함되는 제1 진단부(미도시)와 제2 코어부(200)에 포함되는 제2 진단부(미도시)를 포함할 수 있다.As described above, the
이를 통해, 다른 실시예에 따른 진단부(20)는 코어부별로 개별로 구성된 제1 진단부와 제2 진단부를 이용하여 제1 코어(130)와 제2 코어(230)의 정상 동작 여부를 각각 진단할 수 있다.Accordingly, the
다음으로, 본 발명의 일 실시예에 따른 멀티 코어 시스템(1000)의 제2 코어부(200)가 정상 동작하지 않는 경우 멀티 코어 시스템(1000)에 포함된 구성의 동작에 대해 설명하도록 한다.Next, the operation of the configuration included in the
도 3 및 도 4는 본 발명의 일 실시예에 따른 멀티 코어 시스템(1000)의 제2 코어부(200)가 정상 동작하지 않는 경우 제1 코어부(100)의 데이터 흐름을 도시한 도면이다.FIG. 3 and FIG. 4 are diagrams illustrating a data flow of the
도 3을 참조하면, 진단부(20)는 제2 코어(230)로 진단 계산식을 송신한 뒤 진단 데이터가 수신되지 않거나 진단 계산식에 대응하는 진단 데이터가 수신되지 않는 경우, 제2 코어(230)가 정상 동작하지 않는 것으로 진단할 수 있다.3, the
이후, 진단부(20)는 제1 코어부(100)의 제1 코어(130)로 제2 코어(230)가 정상 동작하지 않음을 알리는 제2 코어 비정상 동작 신호를 송신할 수 있다.The
제1 코어(130)는 진단부(20)로부터 제2 코어 비정상 동작 신호를 수신하는 경우, 제1 코드의 실행을 중단하고 제1 백업 코드 메모리(120)에 저장된 제2 코드를 실행할 수 있다.When receiving the second core abnormal operation signal from the
보다 구체적으로, 제1 코어(130)는 제2 코어(230)에 고장이 발생하기 전까지 제2 코어(230)가 제2 코드를 실행하여 생성한 제2 처리 데이터를 이용하여 제2 코드를 실행할 수 있다.More specifically, the
이를 위하여, 제1 코어(130)는 제2 코어(230)에서 생성되어 제2 데이터 버스(240)를 통해 제2 공유 메모리(12)에 저장된 제2 처리 데이터를 입력받을 수 있다.To this end, the
즉, 제1 코어(130)는 제2 코어(230)가 정상 동작하지 않는 경우, 제2 공유 메모리(12)에 저장된 제2 처리 데이터를 이용하여 제1 백업 코드 메모리(120)에 저장된 제2 코드를 실행할 수 있다.In other words, when the
이를 통해, 제2 코어(230)가 정상 동작하지 않는 경우, 제1 코어(130)가 정상 동작하지 않는 제2 코어(230)를 대신하여 제2 코드를 실행할 수 있다.Accordingly, when the
한편, 제1 코어(130)는 제2 코드를 실행하고, 제2 코드의 실행에 따라 제2 처리 데이터를 생성할 수 있다. 이때, 제1 코어(130)가 생성한 제2 처리 데이터는 제2 공유 메모리(12)로 입력되어 제2 처리 데이터를 업데이트할 수 있다.On the other hand, the
상술된 설명에서는 제2 코어(230)가 정상 동작하지 않는 경우, 제1 코어(130)가 제2 코드를 대신하여 실행하는 과정에 대해서만 설명하였다. 하지만, 본 발명에 따른 멀티 코어 시스템(1000)은 제1 코어(130)가 정상 동작하지 않는 경우, 제2 코어(230)가 제1 코어(130)를 대신하여 제1 코드를 실행하고 제1 코드 실행에 따라 제1 처리 데이터를 생성할 수 있다.In the above description, only the process in which the
한편, 도 4를 참조하면, 제1 코어(130)는 제2 코어(230)가 정상 동작하지 않는 경우, 제2 공유 메모리(12)에 저장된 제2 처리 데이터를 이용하여 제1 백업 코드 메모리(120)의 제2 코드를 실행하는 과정만을 수행하지 않을 수 있다.4, if the
즉, 제1 코어(130)는 제2 코어(230)가 정상 동작하지 않는 경우, 미리 설정된 주기에 따라 제2 코드와 제1 코드의 실행을 한차례씩 반복할 수 있다.That is, when the
이를 위해, 제1 코어(130)는 제2 코드를 실행한 이후 제1 코드를 실행하기 위하여, 제1 공유 메모리(11)에 저장된 제1 처리 데이터를 입력받고, 입력받은 제1 처리 데이터를 이용하여 제1 주 코드 메모리(110)에 저장된 제1 코드를 실행할 수 있다.To this end, the
이를 통해, 제1 코어(130)는 제2 코드를 실행하기 전에 제1 코드의 실행에 따라 생성된 최신의 제1 처리 데이터를 이어서 이용하여 제1 코드를 실행할 수 있다.In this way, the
다음으로, 본 발명의 일 실시예에 따른 멀티 코어 시스템(1000)의 제2 코어부(200)가 복구되는 경우 제1 코어부(100)와 제2 코어부(200)의 데이터 흐름을 도시한 도면이다.Next, data flows of the
도 5를 참조하면, 진단부(20)는 정상 동작하지 않는 것으로 진단된 제2 코어(230)로 주기적으로 진단 계산식을 송신할 수 있다. 이후, 진단부(20)는 제2 코어(230)로부터 진단 계산식 대응하는 진단 데이터가 수신되는 경우, 정상 동작하지 않던 제2 코어(230)가 정상 동작하는 것으로 진단할 수 있다.Referring to FIG. 5, the
진단부(20)는 정상 동작하지 않던 제2 코어(230)가 정상 동작하는 것으로 진단되면, 제2 코어(230)로 제2 코어 복구 신호를 송신할 수 있다.The
제2 코어(230)는 진단부(20)로부터 제2 코어 복구 신호를 수신하는 경우, 제2 공유 메모리(12)로부터 제2 처리 데이터를 입력받아 제2 주 코드 메모리(210)에 저장된 제2 코드를 실행할 수 있다.The
이때, 제2 공유 메모리(12)에는 정상 동작하지 않던 제2 코어(230)가 정상 동작하는 것으로 진단되기 전까지 제1 코어(130)가 제2 코드를 실행하여 생성한 제2 처리 데이터가 저장될 수 있다.At this time, the second processing data generated by the
이후, 정상 동작하지 않던 제2 코어(230)는 복구된 후에 제1 코어(130)가 제2 코드를 실행하여 생성한 최신의 제2 처리 데이터를 이어서 이용하여 제2 코드를 실행할 수 있다.Thereafter, the
한편, 진단부(20)는 정상 동작하지 않던 제2 코어(230)가 정상 동작하는 것으로 진단되면, 제1 코어(130)로도 제2 코어 복구 신호를 송신할 수 있다.On the other hand, the
제1 코어(130)는 진단부(20)로부터 제2 코어 복구 신호를 수신하는 경우, 제1 공유 메모리(11)로부터 제1 처리 데이터를 입력받아 제1 주 코드 메모리(210)에 저장된 제1 코드를 실행할 수 있다.The
즉, 제1 코어(130)는 제2 코어(230)가 복구되면 제1 코어(130)의 주 실행 코드인 제1 코드를 실행할 수 있다. 이를 위해, 제1 코어(130)는 제1 공유 메모리(11)에 저장된 최신의 제1 처리 데이터를 이어서 이용하여 제1 코드를 실행할 수 있다.That is, the
도 6은 본 발명의 일 실시예에 따른 멀티 코어 시스템의 구동 방법을 도시한 순서도이다.6 is a flowchart illustrating a method of driving a multicore system according to an embodiment of the present invention.
도 6을 참조하면, 제1 코어부의 제1 코어가 제1 주 코드 메모리에 저장된 제1 코드를 실행하여 제1 처리 데이터를 생성하고(S101), 제1 데이터 버스는 생성된 제1 처리 데이터를 분기시켜 제1 로컬 메모리와 공유 메모리부의 제1 공유 메모리에 저장하게 된다(S201).6, the first core of the first core unit executes the first code stored in the first main code memory to generate the first process data (S101), and the first data bus transfers the generated first process data And stored in the first local memory and the first shared memory of the shared memory unit (S201).
이후, 진단부가 주기적으로 제1 코어부의 제1 코어와 제2 코어부의 제2 코어로 진단 계산식을 송신하고, 진단 계산식에 대응하는 진단 데이터의 수신 여부에 따라 제1 코어와 제2 코어의 정상 동작 여부를 진단한다(S301).Thereafter, the diagnostic unit periodically transmits the diagnosis formula to the first core of the first core unit and the second core of the second core unit, and transmits the diagnosis formula corresponding to the diagnosis formula to the normal operation of the first core and the second core (S301).
진단부로부터 제2 코어가 정상 동작하지 않음을 알리는 비정상 동작 신호가 수신되지 않으면 S101 단계로 돌아가 제1 코어가 제1 코드를 지속하여 실행한다.If the abnormality operation signal indicating that the second core is not operating normally is not received from the diagnosis unit, the process returns to step S101 and the first core continuously executes the first code.
반대로, 제2 코어를 정상 동작하지 않는 것으로 진단한 진단부로부터 제2 코어 비정상 동작 신호가 수신되면 제1 코어는 제2 공유 메모리에 저장된 제2 처리 데이터를 이용하여 제1 백업 코드 메모리에 저장된 제2 코드를 실행한다(S401).On the other hand, when the second core abnormal operation signal is received from the diagnosis unit diagnosing that the second core is not operating normally, the first core uses the second process data stored in the second shared memory to read the data stored in the first backup code memory 2 code (S401).
이를 통해, 제1 코어는 정상 동작하지 않은 제2 코어를 대신하여 제2 코드를 실행할 수 있다.Thereby, the first core can execute the second code on behalf of the second core which has not operated normally.
다음으로, 제1 코어는 제2 코드를 실행하고, 제2 코드의 실행에 따른 제2 처리 데이터를 생성하여 제2 공유 메모리로 출력함으로써 제2 처리 데이터를 제2 공유 메모리에 저장한다(S501).Next, the first core executes the second code, generates the second process data according to the execution of the second code, and outputs the second process data to the second shared memory, thereby storing the second process data in the second shared memory (S501) .
이때, 제1 코어는 제2 코드만을 실행하지 않고 미리 설정된 주기에 따라 제1 코드와 제2 코드를 반복하여 실행할 수 있다.At this time, the first core can repeatedly execute the first code and the second code according to a predetermined period without executing the second code.
이후, 진단부가 정상 동작하지 않던 제2 코어로부터 진단 계산식에 대응하는 진단 데이터를 수신하면 제2 코어가 정상 동작하는 것으로 진단한다. 이에 따라, 진단부는 정상 동작하지 않던 제2 코어가 복구됨을 알리는 제2 코어 복구 신호를 제1 코어로 송신한다(S601).Thereafter, when the diagnostic unit receives diagnostic data corresponding to the diagnostic calculation formula from the second core for which the diagnostic unit has not normally operated, it is diagnosed that the second core is operating normally. Accordingly, the diagnosis unit transmits a second core repair signal to the first core notifying that the second core that has not been normally operated is restored (S601).
진단부로부터 제2 코어가 복구됨을 알리는 제2 코어 복구 신호가 수신되지 않으면 S401 단계로 돌아가 제1 코어가 제2 코드를 지속하여 실행한다.If the second core restoration signal indicating that the second core is restored from the diagnosis unit is not received, the process returns to step S401 and the first core continuously executes the second code.
반대로, 제2 코어를 정상 동작하는 것으로 진단한 진단부로부터 제2 코어 복구 신호가 수신되면 제1 코어는 S101 단계로 돌아가 제1 공유 메모리에 저장된 제1 처리 데이터를 이용하여 제1 주 코드 메모리에 저장된 제1 코드를 실행한다.On the contrary, if the second core recovery signal is received from the diagnosis unit diagnosing that the second core is operating normally, the first core returns to step S101 and uses the first process data stored in the first shared memory to write the first core data in the first main code memory And executes the stored first code.
이를 통해, 제2 코어가 정상 동작하지 않는 경우 제1 코어가 제2 코드를 실행할 뿐만 아니라, 정상 동작하지 않던 제2 코어가 정상 동작하는 경우 제1 코어는 주 실행 코드인 제1 코드의 실행으로 돌아감으로써 멀티 코어 시스템의 안정성을 향상시킬 수 있다.Accordingly, when the second core is not operating normally, the first core not only executes the second code, but also when the second core, which did not operate normally, operates normally, the first core executes the first code as the main execution code By returning, the stability of the multicore system can be improved.
전술한 본 발명은, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, But the present invention is not limited thereto.
1000 : 멀티 코어 시스템
100 : 제1 코어부
110 : 제1 주 코드 메모리
120 : 제1 백업 코드 메모리
130 : 제1 코어
140 : 제1 데이터 버스
150 : 제1 로컬 메모리
200 : 제2 코어부
210 : 제2 주 코드 메모리
220 : 제2 백업 코드 메모리
230 : 제2 코어
240 : 제2 데이터 버스
250 : 제2 로컬 메모리
10 : 공유 메모리부
11 : 제1 공유 메모리
12 : 제2 공유 메모리
20 : 진단부1000: Multicore system
100: a first core part
110: first main code memory 120: first backup code memory
130: first core 140: first data bus
150: first local memory
200:
210: second main code memory 220: second backup code memory
230: second core 240: second data bus
250: second local memory
10: Shared memory unit
11: first shared memory 12: second shared memory
20:
Claims (10)
상기 생성된 제1 처리 데이터를 분기시켜 제1 로컬 메모리와 제1 공유 메모리로 입력하는 제1 데이터 버스;
제2 코드를 실행하여 제2 처리 데이터를 생성하는 제2 코어;
상기 생성된 제2 처리 데이터를 분기시켜 제2 로컬 메모리와 제2 공유 메모리로 입력하는 제2 데이터 버스; 및
상기 제2 코드를 미리 저장하는 제1 백업 코드 메모리를 포함하고,
상기 제1 코어는
상기 제2 코어의 정상 동작 여부의 진단 결과에 기초하여 상기 제2 공유 메모리에 저장된 상기 제2 처리 데이터를 이용하여 상기 제1 백업 코드 메모리에 저장된 상기 제2 코드를 실행하는 멀티 코어 시스템.
A first core for executing a first code to generate first processing data;
A first data bus for branching the generated first processing data and inputting the first processing data to a first local memory and a first shared memory;
A second core for executing a second code to generate second processed data;
A second data bus for branching the generated second processed data and inputting to the second local memory and the second shared memory; And
And a first backup code memory for previously storing the second code,
The first core
And the second code stored in the first backup code memory is executed using the second process data stored in the second shared memory based on a diagnosis result of normal operation of the second core.
상기 제1 코어와 상기 제2 코어로 진단 계산식을 각각 송신하고, 상기 송신된 진단 계산식에 대응하는 진단 데이터의 수신 여부에 기초하여 상기 제1 코어와 상기 제2 코어의 정상 동작 여부를 각각 진단하는 진단부를
더 포함하는 멀티 코어 시스템.
The method according to claim 1,
And diagnosing the normal operation of the first core and the second core based on whether diagnosis data corresponding to the transmitted diagnosis formula is received or not The diagnosis department
A further multi-core system.
상기 제1 코어는
상기 제2 코어가 정상 동작하지 않는 것으로 진단되면, 상기 제2 공유 메모리에 저장된 상기 제2 처리 데이터를 이용하여 상기 제1 백업 코드 메모리에 저장된 상기 제2 코드를 실행하는 멀티 코어 시스템.
The method according to claim 1,
The first core
And executes the second code stored in the first backup code memory using the second process data stored in the second shared memory if the second core is diagnosed as not operating normally.
상기 제1 코어는
상기 제2 코어가 정상 동작하지 않는 것으로 진단되면, 제2 코드를 실행하여 제2 처리 데이터를 생성하고, 상기 생성된 제2 처리 데이터를 상기 제2 공유 메모리로 출력하는 멀티 코어 시스템.
The method according to claim 1,
The first core
Core system, and when the second core is diagnosed as not operating normally, executes a second code to generate second process data, and outputs the generated second process data to the second shared memory.
상기 제2 코어는
동작 상태가 정상 동작으로 복구되면 상기 제1 코어로부터 출력되어 상기 제2 공유 메모리에 저장된 상기 제2 처리 데이터를 이용하여 상기 제2 코드를 실행하는 멀티 코어 시스템.
5. The method of claim 4,
The second core
Wherein the second code is output from the first core and is executed using the second process data stored in the second shared memory when the operation state is restored to a normal operation.
제1 데이터 버스가 상기 생성된 제1 처리 데이터를 분기시켜 제1 로컬 메모리와 제1 공유 메모리로 입력하는 단계;
제2 코어가 제2 코드를 실행하여 제2 처리 데이터를 생성하는 단계;
제2 데이터 버스가 상기 생성된 제2 처리 데이터를 분기시켜 제2 로컬 메모리와 제2 공유 메모리로 입력하는 단계;
제1 백업 코드 메모리에 상기 제2 코드를 미리 저장하는 단계; 및
상기 제1 코어가 상기 제2 코어의 정상 동작 여부의 진단 결과에 기초하여 상기 제2 공유 메모리에 저장된 상기 제2 처리 데이터를 이용하여 상기 제1 백업 코드 메모리에 저장된 상기 제2 코드를 실행하는 단계를 포함하는 멀티 코어 시스템의 구동 방법.
The first core executing a first code to generate first processing data;
The first data bus branching the generated first processing data and inputting the first processing data to the first local memory and the first shared memory;
The second core executing a second code to generate second processing data;
The second data bus branching the generated second process data and inputting to the second local memory and the second shared memory;
Storing the second code in advance in a first backup code memory; And
Executing the second code stored in the first backup code memory using the second processing data stored in the second shared memory based on a diagnosis result of whether or not the first core is operating normally in the first core The method comprising the steps of:
진단부가 상기 제1 코어와 상기 제2 코어로 진단 계산식을 각각 송신하고, 상기 송신된 진단 계산식에 대응하는 진단 데이터의 수신 여부에 기초하여 상기 제1 코어와 상기 제2 코어의 정상 동작 여부를 각각 진단하는 단계를
더 포함하는 멀티 코어 시스템의 구동 방법.
The method according to claim 6,
Wherein the diagnosing unit transmits diagnostic diagnosis formulas to the first and second cores, respectively, and determines whether or not the first and second cores operate normally based on whether or not diagnosis data corresponding to the transmitted diagnosis formula is received To diagnose
Core system.
상기 제2 코어가 정상 동작하지 않는 것으로 진단되면, 상기 제2 공유 메모리에 저장된 상기 제2 처리 데이터를 이용하여 상기 제1 백업 코드 메모리에 저장된 상기 제2 코드를 실행하는 단계를
더 포함하는 멀티 코어 시스템의 구동 방법.
The method according to claim 6,
Executing the second code stored in the first backup code memory using the second process data stored in the second shared memory if the second core is diagnosed as not operating normally
Core system.
상기 제2 코어가 정상 동작하지 않는 것으로 진단되면, 상기 제1 코어가 제2 코드를 실행하여 제2 처리 데이터를 생성하고, 상기 생성된 제2 처리 데이터를 상기 제2 공유 메모리로 출력하는 단계를
더 포함하는 멀티 코어 시스템의 구동 방법.
The method according to claim 6,
And if the second core is diagnosed as not operating normally, the first core executes the second code to generate second process data, and outputting the generated second process data to the second shared memory
Core system.
상기 제2 코어가 동작 상태가 정상 동작으로 복구되면 상기 제1 코어로부터 출력되어 상기 제2 공유 메모리에 저장된 상기 제2 처리 데이터를 이용하여 상기 제2 코드를 실행하는 단계를
더 포함하는 멀티 코어 시스템의 구동 방법.
10. The method of claim 9,
And executing the second code using the second process data output from the first core and stored in the second shared memory when the second core is restored to a normal operation state
Core system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160115413A KR20180028570A (en) | 2016-09-08 | 2016-09-08 | Multi core system and method of driving the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160115413A KR20180028570A (en) | 2016-09-08 | 2016-09-08 | Multi core system and method of driving the same |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20180028570A true KR20180028570A (en) | 2018-03-19 |
Family
ID=61911246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160115413A KR20180028570A (en) | 2016-09-08 | 2016-09-08 | Multi core system and method of driving the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20180028570A (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003330737A (en) * | 2002-05-15 | 2003-11-21 | Hitachi Ltd | Computer system |
JP2009274569A (en) * | 2008-05-14 | 2009-11-26 | Denso Corp | Vehicle controlling device |
JP2010218277A (en) * | 2009-03-17 | 2010-09-30 | Toyota Motor Corp | Failure diagnostic system, electronic control unit, failure diagnostic method |
JP2015118493A (en) * | 2013-12-18 | 2015-06-25 | 三菱電機株式会社 | Trace device and trace program |
-
2016
- 2016-09-08 KR KR1020160115413A patent/KR20180028570A/en not_active Application Discontinuation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003330737A (en) * | 2002-05-15 | 2003-11-21 | Hitachi Ltd | Computer system |
JP2009274569A (en) * | 2008-05-14 | 2009-11-26 | Denso Corp | Vehicle controlling device |
JP2010218277A (en) * | 2009-03-17 | 2010-09-30 | Toyota Motor Corp | Failure diagnostic system, electronic control unit, failure diagnostic method |
JP2015118493A (en) * | 2013-12-18 | 2015-06-25 | 三菱電機株式会社 | Trace device and trace program |
Non-Patent Citations (2)
Title |
---|
일본 공개특허공보 특개2010-218277호(2010.09.30.) 1부. * |
일본 특허공보 특허 제 4030951호(2008.01.09.) 1부. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5660798B2 (en) | Information processing device | |
CN107430167B (en) | Semiconductor device and diagnostic test method | |
US10394675B2 (en) | Vehicle control device | |
JP2006293420A (en) | Distributed control apparatus | |
CN103678031A (en) | Double 2-vote-2 redundant system and method | |
US11544160B2 (en) | IPS SOC PLL monitoring and error reporting | |
CN104781792A (en) | Redundancy device unit and method for determining fault in industrial control system, industrial control system and industrial system comprising redundancy device unit | |
CN103475514B (en) | Node, group system and BIOS without BMC repair and upgrade method | |
JP2009116642A (en) | Method and program for recovering from pci bus fault | |
KR20180028570A (en) | Multi core system and method of driving the same | |
JP2014186454A (en) | Electronic control device for vehicle | |
TWI615718B (en) | Computer system | |
JP2010244158A (en) | Control device and communication management method | |
JP2007304972A (en) | Microprocessor system | |
WO2018116400A1 (en) | Control device, and processing method in event of failure in control device | |
CN110673793B (en) | Storage device node event management method and system, electronic device and storage medium | |
JP2008129669A (en) | Hardware failure recording device and method | |
JP4232589B2 (en) | Duplex controller and its equalization mode decision method | |
JP2008090656A (en) | Programmable controller | |
JP2008146222A (en) | Computer failure detection system and computer failure detection method | |
EP3296874B1 (en) | Apparatus and associated method | |
CN112416665B (en) | Apparatus and method for detecting processor running state | |
JP6274947B2 (en) | Abnormality diagnosis method for microprocessor of in-vehicle control device | |
KR20150144203A (en) | Method for failure check and recovery of Protective relay | |
JP6546008B2 (en) | Protection relay device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
E601 | Decision to refuse application | ||
E801 | Decision on dismissal of amendment |