WO2018128204A1 - 파티셔닝 기술을 이용하여 lsm 및 dpm을 동시에 사용할 수 있는 멀티코어 시스템 - Google Patents

파티셔닝 기술을 이용하여 lsm 및 dpm을 동시에 사용할 수 있는 멀티코어 시스템 Download PDF

Info

Publication number
WO2018128204A1
WO2018128204A1 PCT/KR2017/000172 KR2017000172W WO2018128204A1 WO 2018128204 A1 WO2018128204 A1 WO 2018128204A1 KR 2017000172 W KR2017000172 W KR 2017000172W WO 2018128204 A1 WO2018128204 A1 WO 2018128204A1
Authority
WO
WIPO (PCT)
Prior art keywords
core
partition
program code
dpm
lsm
Prior art date
Application number
PCT/KR2017/000172
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/KR2017/000172 priority Critical patent/WO2018128204A1/ko
Publication of WO2018128204A1 publication Critical patent/WO2018128204A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating

Definitions

  • DPM decoupled parallel mode
  • fault tolerance is a method of improving the quality of the electronics used and creating a complete system through many inspections.
  • defects are bound to occur due to the influence of temperature, humidity, dust, and the like.
  • the fault-tolerant method is a method to allow hardware to operate in a normal system by blocking a situation where an error is propagated when an error occurs when a hardware is provided in a basic system.
  • Embodiments of the present invention aim to improve the reliability and stability of a multicore system.
  • Embodiments of the present invention aim to benefit from the energy efficiency and computation of multicore systems.
  • the multi-core system is partitioned such that each core of the input unit receiving the program code has a plurality of partitions, and executes a plurality of cores and program codes for executing the program code in different ways for each partition of the core. It may include an output unit for outputting the result value obtained by.
  • the plurality of cores may include a first core partitioned to have a first partition and a second partition; And a second core partitioned to have a third partition and a fourth partition.
  • the first partition of the first core and the third partition of the second core execute program codes in a lock step mode (LSM) manner
  • the second partition and the fourth partition of the second core may execute program code in a decoupled parallel mode (DPM) method.
  • LSM lock step mode
  • DPM decoupled parallel mode
  • the multicore system may further include a code distribution unit that distributes program code to any one partition for each core.
  • the code distribution unit uses the received program code as a first partition of the first core and a third partition of the second core. If the program code received through the input unit relates to a second program for software error detection or processing performance improvement, a part of the received program code is distributed to the second partition of the first core and The remainder of the received program code may be distributed to a fourth partition of the second core.
  • the present invention aims to benefit from energy efficiency and computational processing of a multicore system.
  • FIG. 1 is a block diagram of a multicore system according to an embodiment of the present invention.
  • FIG. 2 is an exemplary flowchart illustrating a software error detection method using an LSM method according to an embodiment of the present invention.
  • FIG. 3 is an exemplary flowchart illustrating a software error detection method using a DPM scheme according to an embodiment of the present invention.
  • FIG. 4 is an exemplary flowchart illustrating a method used to improve performance of a DPM scheme according to an embodiment of the present invention.
  • FIG. 5 is a flowchart of a multicore system according to an embodiment of the present invention.
  • the terms ' ⁇ ', ' ⁇ ', ' ⁇ block', ' ⁇ module', etc. used throughout the present specification may mean a unit for processing at least one function or operation.
  • it can mean a hardware component such as software, FPGA, or ASIC.
  • ' ⁇ ', ' ⁇ ', ' ⁇ block', ' ⁇ module', etc. are not limited to software or hardware.
  • ' ⁇ ', ' ⁇ ', ' ⁇ ', ' ⁇ ' May be configured to reside in an addressable storage medium or may be configured to play one or more processors.
  • ' ⁇ ', ' ⁇ ', ' ⁇ block', ' ⁇ module' are components such as software components, object-oriented software components, class components, and task components. And processes, functions, properties, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and Contains variables
  • the components and the functions provided within ' ⁇ ', ' ⁇ ', ' ⁇ ', ' ⁇ ', ',' ⁇ Module 'or may be further separated into additional components and' ⁇ part ',' ⁇ group ',' ⁇ block ',' ⁇ module '.
  • FIG. 1 is a block diagram of a multicore system according to an embodiment of the present invention.
  • a multicore system 10 using a partitioning technique includes an input unit 100, a code distribution unit 200, a first core 300, a second core 400, and an output unit 500. And output the result of the program code.
  • the multicore system 10 utilizes partitioning technology to separate two tasks of different importance within one core in a timely and spatially secure manner so as not to influence each other.
  • each of the cores 300, 400 may be partitioned to have multiple partitions and may include multiple cores that execute program code in different ways for each partition of each core.
  • the multi-core system 10 is a system for receiving a program code to the input unit 100 in a format of exchanging data between modules and outputting a result value to the output unit 500.
  • the multicore system 10 may be a computing device.
  • the multicore system 10 may be a PC (desktop PC, laptop PC, laptop, etc.).
  • the multicore system 10 is not limited to a PC and may be various electronic devices such as a smartphone, a tablet PC, a server, a workstation, a camera, and the like.
  • the multicore system 10 receives a program code through the input unit 100.
  • the input program code may be same or different.
  • the program code input to the input unit 100 is input to at least one core of the first core 300 or the second core 400.
  • the plurality of cores are partitioned to have a first core 300 and a third partition 410 and a fourth partition 420 partitioned to have a first partition 310 and a second partition 320. It may comprise a second core 400.
  • the preprocessing step of the step of distributing to the plurality of cores is in the code distribution unit 200, which will be described later.
  • the program code input to the first core 300 or the second core 400 to process the program code may determine whether the program code is processed in a lock step mode (LSM) or a decoupled parallel mode (DPM).
  • the code distribution unit 200 determines. In other words, the code distribution unit 200 distributes the program code to any one partition for each core.
  • first partition 310 of the first core 300 and the third partition 410 of the second core 400 execute a program code in an LSM manner
  • the second partition 320 and the fourth partition 420 of the second core 400 execute the program code in a DPM manner.
  • the output value from the first core 3000 or the second core 400 is output from the output unit 500.
  • FIG. 2 is an exemplary flowchart illustrating a software error detection method using an LSM method according to an embodiment of the present invention.
  • the LSM method is a method of processing an identical program code in multiple cores at the same time to compare errors of each result with each other.
  • hardware errors such as a computation core and a memory can be detected.
  • software errors cannot be detected.
  • the same program code is input to each of the cores 300 and 400, processed, and the result values of the cores 300 and 400 are compared. If the result values are the same, the process proceeds to the next step.
  • FIG. 3 is an exemplary flowchart illustrating a software error detection method using a DPM scheme according to an embodiment of the present invention.
  • the DPM method has the same function but allocates different program codes to multiple cores simultaneously, and compares the result values with each other to detect errors. In this case, not only hardware defects but also software errors can be detected.
  • the disadvantage is that the two modules that are configured are implemented in different ways, causing considerable delay overhead.
  • FIG. 4 is an exemplary flowchart illustrating a method used to improve performance of a DPM scheme according to an embodiment of the present invention.
  • FIG. 5 is a flowchart of a multicore system according to an embodiment of the present invention.
  • the first core 300 and the second core 400 may include a first partition 310 operating in an LSM manner by separating two tasks of different importance within each core in time and space.
  • the third partition 410 or the second partition 320 and the fourth partition 420 operating in a DPM scheme may be included.
  • the received program code uses the LSM method.
  • the first partition 310 of the first core 300 and the third partition 410 of the second core 400 are distributed.
  • the second partition 320 of the first core 300 uses a part of the input program code using a DPM method.
  • the multi-core system distributes the data to the fourth partition 420 of the second core 400.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 파티셔닝 기술을 이용하여 LSM(Lock Step Mode) 및 DPM(Decoupled Parallel Mode)을 동시에 사용할 수 있는 멀티코어 시스템으로서, 프로그램 코드를 입력받는 입력부, 각각의 코어가 다수의 파티션을 갖도록 파티셔닝되어 상기 코어의 파티션마다 상이한 방식으로 프로그램 코드를 실행하는 다수의 코어 및 프로그램 코드를 실행하여 얻은 결과값을 출력하는 출력부를 포함하는 멀티코어 시스템이다.

Description

파티셔닝 기술을 이용하여 LSM 및 DPM을 동시에 사용할 수 있는 멀티코어 시스템
본 발명은 파티셔닝 기술을 이용하여 LSM(Lock Step Mode) 및 DPM(Decoupled Parallel Mode)을 동시에 사용할 수 있는 멀티코어 시스템 관한 것으로, 미래창조과학부의 재원으로 지원을 받아 수행된 "클라우드 맵 기반의 자율이동 서비스 다양성 지원을 위한 개방형 PnP형 플랫폼 기술 개발"의 연구결과이다.
시스템의 신뢰도를 향상시키는 방법은 결함 허용과 결함 회피방법으로 나누어진다. 결함 회피 방법은 사용되는 전자 부품의 질을 향상하고 많은 검사를 통해 완벽한 시스템을 만드는 방법이다. 하지만, 전자 부품의 특성상 사용시간이 지나게 됨에 따라 온도와 습도, 분진 등의 영향으로 결함이 일어날 수밖에 없다. 이러한 이유로, 결함이 발생하여도 시스템의 정상 동작을 유지할 수 있는 결함 허용 방식이 더욱 효과적이다. 결함 허용 방법은 기본적인 시스템에 여유의 하드웨어를 두어 결함이 발생하였을 경우, 오류가 전파되어 사고가 발생하는 상황을 차단하여 정상적인 동작을 할 수 있도록 하는 방법이다. 이러한 방법은 구체적으로 하드웨어 여분, 소프트웨어 여분, 시간 여분, 정보 여분으로 나눌 수 있다.
본 발명의 실시예는 멀티코어 시스템의 신뢰도 및 안정성 향상을 목적으로 한다.
본 발명의 실시예는 멀티코어 시스템의 에너지 효율과 연산에서 이익을 목적으로 한다.
본 발명의 일 실시예에 따른 멀티코어 시스템은 프로그램 코드를 입력받는 입력부 각각의 코어가 다수의 파티션을 갖도록 파티셔닝되어 상기 코어의 파티션마다 상이한 방식으로 프로그램 코드를 실행하는 다수의 코어 및 프로그램 코드를 실행하여 얻은 결과값을 출력하는 출력부를 포함할 수 있다.
상기 다수의 코어는 제 1 파티션 및 제 2 파티션을 갖도록 파티셔닝된 제 1 코어; 및 제 3 파티션 및 제 4 파티션을 갖도록 파티셔닝된 제 2 코어를 포함할 수 있다.
본 발명의 일 실시예에 따른 멀티코어 시스템은 상기 제 1 코어의 제 1 파티션과 상기 제 2 코어의 제 3 파티션은 프로그램 코드를 LSM(Lock Step Mode) 방식으로 실행하고, 상기 제 1 코어의 제 2 파티션과 상기 제 2 코어의 제 4 파티션은 프로그램 코드를 DPM(Decoupled Parallel Mode) 방식으로 실행할 수 있다.
본 발명의 일 실시예에 따른 멀티코어 시스템은 프로그램 코드를 각각의 코어마다 어느 하나의 파티션에 분배하는 코드 분배부를 더 포함할 수 있다.
상기 코드 분배부는 상기 입력부를 통해 입력받은 프로그램 코드가 하드웨어 오류 검출을 위한 제 1 프로그램에 관한 것인 경우, 상기 입력받은 프로그램 코드를 상기 제 1 코어의 제 1 파티션 및 상기 제 2 코어의 제 3 파티션에 분배하고, 상기 입력부를 통해 입력받은 프로그램 코드가 소프트웨어 오류 검출 또는 처리 성능 향상을 위한 제 2 프로그램에 관한 것인 경우, 상기 입력받은 프로그램 코드 중 일부를 상기 제 1 코어의 제 2 파티션에 분배하고 상기 입력받은 프로그램 코드 중 나머지를 상기 제 2 코어의 제 4 파티션에 분배할 수 있다.
본 발명의 실시예에 따르면, 멀티코어 시스템의 신뢰도 및 성능 향상을 달성할 수 있다.
본 발명의 실시예에 따르면, 멀티코어 시스템의 에너지 효율과 연산 처리에서 이익을 목적으로 한다.
도 1은 본 발명의 일 실시예에 따른 멀티코어 시스템의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 LSM 방식의 소프트웨어 오류검출 방법을 설명하는 예시적인 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 DPM 방식의 소프트웨어 오류검출 방법을 설명하는 예시적인 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 DPM 방식의 성능 향상에 사용되는 방법을 설명하는 예시적인 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 멀티코어 시스템의 흐름도이다.
본 발명의 다른 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술 되는 실시 예를 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예는 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
만일 정의되지 않더라도, 여기서 사용되는 모든 용어들(기술 혹은 과학 용어들을 포함)은 이 발명이 속한 종래 기술에서 보편적 기술에 의해 일반적으로 수용되는 것과 동일한 의미를 가진다. 일반적인 사전들에 의해 정의된 용어들은 관련된 기술 그리고/혹은 본 출원의 본문에 의미하는 것과 동일한 의미를 갖는 것으로 해석될 수 있고, 그리고 여기서 명확하게 정의된 표현이 아니더라도 개념화되거나 혹은 과도하게 형식적으로 해석되지 않을 것이다.
본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 '포함한다' 및/또는 이 동사의 다양한 활용형들 예를 들어, '포함', '포함하는', '포함하고', '포함하며' 등은 언급된 조성, 성분, 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 조성, 성분, 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다. 본 명세서에서 '및/또는' 이라는 용어는 나열된 구성들 각각 또는 이들의 다양한 조합을 가리킨다.
한편, 본 명세서 전체에서 사용되는 '~부', '~기', '~블록', '~모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미할 수 있다. 예를 들어 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미할 수 있다. 그렇지만 '~부', '~기', '~블록', '~모듈' 등이 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부', '~기', '~블록', '~모듈'은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.
따라서, 일 예로서 '~부', '~기', '~블록', '~모듈'은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '~부', '~기', '~블록', '~모듈'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부', '~기', '~블록', '~모듈'들로 결합되거나 추가적인 구성요소들과 '~부', '~기', '~블록', '~모듈'들로 더 분리될 수 있다.
이하, 본 명세서에 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 멀티코어 시스템의 블록도이다.
도 1을 참조하면, 파티셔닝 기술을 이용한 멀티코어 시스템(10)은 입력부(100), 코드 분배부(200), 제 1 코어(300), 제 2 코어(400) 및 출력부(500)로 구성되어 프로그램 코드의 결과값을 출력한다.
상기 멀티코어 시스템(10)은 한 코어 안에서 중요도가 다른 두가지 작업을 시간적, 공간적으로 안전하게 분리하여 서로 영향을 미치지 않게 하도록 파티셔닝기술을 활용한다.
더 상세하게는, 상기 각각의 코어(300, 400)가 다수의 파티션을 갖도록 파티셔닝되어 상기 각각의 코어의 파티션마다 상이한 방식으로 프로그램 코드를 실행하는 다수의 코어를 포함할 수 있다. 상기 멀티코어 시스템(10)은 각 모듈 간에 데이터를 주고 받는 형식으로 상기 입력부(100)에 프로그램 코드를 입력 받고 상기 출력부(500)로 결과값을 출력하는 시스템이다.
여기서, 상기 멀티코어 시스템(10)은 컴퓨팅 장치로서, 일 예로 PC(데스크탑 PC, 랩탑 PC, 노트북 등)일 수 있다. 그러나, 상기 멀티코어 시스템(10)은 PC로 제한되지 않고 스마트폰, 태블릿 PC, 서버, 워크스테이션, 카메라 등 각종 전자장치 일 수도 있다.
상기 멀티코어 시스템(10)은 상기 입력부(100)를 통해서 프로그램 코드를 입력받는다. 이 때 입력받는 프로그램 코드는 같을 수도 있고, 다를 수도 있다. 상기 입력부(100)로 입력된 프로그램 코드는 상기 제 1 코어(300) 또는 제 2 코어(400) 중 적어도 어느 하나의 코어로 입력된다.
더 상세하게는, 상기 다수의 코어는 제 1 파티션(310) 및 제 2 파티션(320)을 갖도록 파티셔닝된 제 1 코어(300) 및 제 3 파티션(410) 및 제 4 파티션(420)을 갖도록 파티셔닝된 제 2 코어(400)를 포함할 수 있다.
상기 다수의 코어로 분배되는 단계의 전처리 단계는 코드 분배부(200)에서 하는데, 이는 후술하기로 한다.
프로그램 코드를 처리하기 위해 상기 제 1 코어(300) 또는 제 2 코어(400)로 입력된 프로그램 코드는 상기 프로그램 코드를 LSM(Lock Step Mode) 또는 DPM(Decoupled Parallel Mode) 중 어느 방식으로 처리할지를 상기 코드 분배부(200)에서 결정한다. 다시 말하면, 상기 프로그램 코드를 상기 각각의 코어마다 어느 하나의 파티션에 분배하는 역할을 상기 코드 분배부(200)에서 한다.
더 상세하게는, 상기 제 1 코어(300)의 제 1 파티션(310)과 상기 제 2 코어(400)의 제 3 파티션(410)은 프로그램 코드를 LSM 방식으로 실행하고, 상기 제 1 코어(300)의 제 2 파티션(320)과 상기 제 2 코어(400)의 제 4 파티션(420)은 프로그램 코드를 DPM 방식으로 실행 한다.
그 뒤, 상기 제 1 코어(3000 또는 제 2 코어(400)에서 나온 결과값을 상기 출력부(500)에서 출력한다.
도 2는 본 발명의 일 실시예에 따른 LSM 방식의 소프트웨어 오류검출 방법을 설명하는 예시적인 흐름도이다.
도 2를 참조하면, LSM 방식은 동일한 프로그램 코드를 다중 코어에서 동시에 처리하도록 하여 각각의 결과값을 서로 비교해서 오류를 검출하는 방식이다. 이 경우 연산 코어나 메모리 등의 하드웨어적인 오류 검출을 할 수 있다. 그러나 소프트웨어적인 오류는 검출할 수 없다는 단점이 있다.
동일한 프로그램 코드를 상기 각각의 코어(300, 400)에 입력받아 처리하고, 상기 각각의 코어(300, 400)의 결과값을 비교한 후, 결과값이 같으면 다음 단계로 넘어간다.
도 3은 본 발명의 일 실시예에 따른 DPM 방식의 소프트웨어 오류검출 방법을 설명하는 예시적인 흐름도이다.
전술한 LSM 방식에 비해 시스템의 안정성과 신뢰성을 높이기 위한 DPM 방식이 있다. DPM 방식은 같은 기능을 하지만 서로 다른 프로그램 코드를 다중 코어에 동시에 처리하도록 할당하고, 결과 값을 서로 비교해서 오류를 검출하는 방식이다. 이 경우 하드웨어의 결함뿐만 아니라 소프트웨어의 오류 검출이 가능하다는 장점이 있다. 그러나 구성되는 두 모듈이 서로 다른 방식으로 구현되었기 때문에 상당한 딜레이 오버헤드가 발생하게 된다는 단점이 있다.
도 4는 본 발명의 일 실시예에 따른 DPM 방식의 성능 향상에 사용되는 방법을 설명하는 예시적인 흐름도이다.
도 4를 참조하면, DPM 방식의 경우 성능 향상을 위해 상기 제 1 코어(300)와 제 2 코어(400)의 안정성을 무시한다면 시스템 처리 및 에너지 효율성을 높일 수 있다.
도 5는 본 발명의 일 실시예에 따른 멀티코어 시스템의 흐름도이다.
도 5를 참조하면, 상기 제 1 코어(300) 및 제 2 코어(400)는 각각의 코어 내부에서 중요도가 다른 두가지 작업을 시간적, 공간적으로 분리하여 LSM 방식으로 동작하는 제 1 파티션(310) 및 제 3 파티션(410) 또는 DPM 방식으로 동작하는 제 2파티션(320) 및 제 4 파티션(420)을 포함 할 수 있다.
더 상세하게는, 상기 코드 분배부(200)에서 상기 입력부(100)를 통해 입력받은 프로그램 코드가 하드웨어 오류 검출을 위한 제 1 프로그램에 관한 것인 경우에는 상기 입력받은 프로그램 코드를 LSM 방식을 이용하는 상기 제 1 코어(300)의 제 1 파티션(310) 및 상기 제 2 코어(400)의 제 3 파티션(410)에 분배한다.
더해서 상기 입력부(100)를 통해 입력받은 프로그램 코드가 소프트웨어 오류 검출 또는 처리 성능 향상이 필요한 경우에는 상기 입력받은 프로그램 코드 중 일부를 DPM 방식을 이용하는 상기 제 1 코어(300)의 제 2 파티션(320)에 분배하고, 상기 입력받은 프로그램 중 나머지를 상기 제 2 코어(400)의 제 4 파티션(420)에 분배하는 멀티코어 시스템이다.
이상에서 실시예를 통해 본 발명을 설명하였으나, 위 실시예는 단지 본 발명의 사상을 설명하기 위한 것으로 이에 한정되지 않는다. 통상의 기술자는 전술한 실시예에 다양한 변형이 가해질 수 있음을 이해할 것이다. 본 발명의 범위는 첨부된 특허청구범위의 해석을 통해서만 정해진다.

Claims (5)

  1. 프로그램 코드를 입력받는 입력부;
    각각의 코어가 다수의 파티션을 갖도록 파티셔닝되어 상기 코어의 파티션마다 상이한 방식으로 프로그램 코드를 실행하는 다수의 코어; 및
    프로그램 코드를 실행하여 얻은 결과값을 출력하는 출력부를 포함하는 멀티코어 시스템.
  2. 제 1항에 있어서,
    상기 다수의 코어는,
    제 1 파티션 및 제 2 파티션을 갖도록 파티셔닝된 제 1 코어; 및
    제 3 파티션 및 제 4 파티션을 갖도록 파티셔닝된 제 2 코어를 포함하는 멀티코어 시스템.
  3. 제 2항에 있어서,
    상기 제 1 코어의 제 1 파티션과 상기 제 2 코어의 제 3 파티션은 프로그램 코드를 LSM(Lock Step Mode) 방식으로 실행하고,
    상기 제 1 코어의 제 2 파티션과 상기 제 2 코어의 제 4 파티션은 프로그램 코드를 DPM(Decoupled Parallel Mode) 방식으로 실행하는 멀티코어 시스템.
  4. 제 3항에 있어서,
    프로그램 코드를 각각의 코어마다 어느 하나의 파티션에 분배하는 코드 분배부를 더 포함하는 멀티코어 시스템.
  5. 제 4항에 있어서,
    상기 코드 분배부는,
    상기 입력부를 통해 입력받은 프로그램 코드가 하드웨어 오류 검출을 위한 제 1 프로그램에 관한 것인 경우, 상기 입력받은 프로그램 코드를 상기 제 1 코어의 제 1 파티션 및 상기 제 2 코어의 제 3 파티션에 분배하고,
    상기 입력부를 통해 입력받은 프로그램 코드가 소프트웨어 오류 검출 또는 처리 성능 향상을 위한 제 2 프로그램에 관한 것인 경우, 상기 입력받은 프로그램 코드 중 일부를 상기 제 1 코어의 제 2 파티션에 분배하고 상기 입력받은 프로그램 코드 중 나머지를 상기 제 2 코어의 제 4 파티션에 분배하는 멀티코어 시스템.
PCT/KR2017/000172 2017-01-06 2017-01-06 파티셔닝 기술을 이용하여 lsm 및 dpm을 동시에 사용할 수 있는 멀티코어 시스템 WO2018128204A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2017/000172 WO2018128204A1 (ko) 2017-01-06 2017-01-06 파티셔닝 기술을 이용하여 lsm 및 dpm을 동시에 사용할 수 있는 멀티코어 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2017/000172 WO2018128204A1 (ko) 2017-01-06 2017-01-06 파티셔닝 기술을 이용하여 lsm 및 dpm을 동시에 사용할 수 있는 멀티코어 시스템

Publications (1)

Publication Number Publication Date
WO2018128204A1 true WO2018128204A1 (ko) 2018-07-12

Family

ID=62789383

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2017/000172 WO2018128204A1 (ko) 2017-01-06 2017-01-06 파티셔닝 기술을 이용하여 lsm 및 dpm을 동시에 사용할 수 있는 멀티코어 시스템

Country Status (1)

Country Link
WO (1) WO2018128204A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110066779A1 (en) * 2007-05-25 2011-03-17 Freescale Semiconductor, Inc Data processing system, data processing method, and apparatus
US20120304024A1 (en) * 2010-02-16 2012-11-29 Freescale Semiconductor, Inc. Data processing method, data processor and apparatus including a data processor
KR20130119452A (ko) * 2010-11-19 2013-10-31 콘티넨탈 테베스 아게 운트 코. 오하게 오류 허용 아키텍쳐를 갖는 마이크로프로세서 시스템
US20140173247A1 (en) * 2011-07-20 2014-06-19 Freescale Semiconductor, Inc. Processing apparatus and method of synchronizing a first processing unit and a second processing unit
US20150178102A1 (en) * 2011-11-23 2015-06-25 Freescale Semiconductor, Inc. System-on-chip, method of manufacture thereof and method of controlling a system-on-chip

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110066779A1 (en) * 2007-05-25 2011-03-17 Freescale Semiconductor, Inc Data processing system, data processing method, and apparatus
US20120304024A1 (en) * 2010-02-16 2012-11-29 Freescale Semiconductor, Inc. Data processing method, data processor and apparatus including a data processor
KR20130119452A (ko) * 2010-11-19 2013-10-31 콘티넨탈 테베스 아게 운트 코. 오하게 오류 허용 아키텍쳐를 갖는 마이크로프로세서 시스템
US20140173247A1 (en) * 2011-07-20 2014-06-19 Freescale Semiconductor, Inc. Processing apparatus and method of synchronizing a first processing unit and a second processing unit
US20150178102A1 (en) * 2011-11-23 2015-06-25 Freescale Semiconductor, Inc. System-on-chip, method of manufacture thereof and method of controlling a system-on-chip

Similar Documents

Publication Publication Date Title
US10176063B2 (en) Faulty core recovery mechanisms for a three-dimensional network on a processor array
US8151024B2 (en) Reconfigurable virtual backplane systems and methods
CN108108329B (zh) Ima系统动态重构策略多特性分析方法
US8683485B2 (en) Evenly distributing workload and providing a predictable failover scenario in a data replication system
US7421526B2 (en) Reconfigurable virtual backplane architecture
US11175937B2 (en) Virtualized avionics systems for operational environments
US10090953B2 (en) Method and system to add and communicate with remote terminal addresses beyond a standard bus protocol
CN104182624A (zh) 一种综合模块化航电系统服务能力评估方法
WO2018128204A1 (ko) 파티셔닝 기술을 이용하여 lsm 및 dpm을 동시에 사용할 수 있는 멀티코어 시스템
US7418558B2 (en) Information processing system, system control apparatus, and system control method
US9449714B2 (en) Flexible interrupt generation mechanism
US20150006974A1 (en) Information processing technique for supporting data setting
Zhao et al. Reliability analysis of the reconfigurable integrated modular avionics using the continuous-time Markov chains
CA2382927A1 (en) Semaphore control of shared-memory
CN111208744A (zh) 一种综合模块化航空电子架构下的中央告警验证方法
CN109254795B (zh) 并行控制方法及电子设备
US20170153949A1 (en) Switching Allocation of Computer Bus Lanes
WO2014178544A1 (ko) 컴퓨터 실행 가능한 데이터 정렬 방법, 이를 수행하는 데이터 정렬 시스템 및 이를 저장하는 기록매체
CN104618191A (zh) 一种主机与裸存储块之间的通信故障检测方法和装置
Shankar et al. Design of a decentralized detection of interacting LTI systems
US9569215B1 (en) Method of synchronizing independent functional unit
US20180276088A1 (en) Controlling device, controlling method, and fault tolerant apparatus
CN103825676B (zh) 一种基于负载均衡的mvb设备状态字传输的方法
US11695849B2 (en) Transaction tracking for high availability architecture using a tracking token and middleware instance information
WO2016117730A1 (ko) Sdr 기반 통신 장치, 및 이의 동작 방법

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

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

Country of ref document: EP

Kind code of ref document: A1