KR20180128576A - 다중 코어 제어 방법 - Google Patents

다중 코어 제어 방법 Download PDF

Info

Publication number
KR20180128576A
KR20180128576A KR1020170063854A KR20170063854A KR20180128576A KR 20180128576 A KR20180128576 A KR 20180128576A KR 1020170063854 A KR1020170063854 A KR 1020170063854A KR 20170063854 A KR20170063854 A KR 20170063854A KR 20180128576 A KR20180128576 A KR 20180128576A
Authority
KR
South Korea
Prior art keywords
core
memory
dma
application
vehicle
Prior art date
Application number
KR1020170063854A
Other languages
English (en)
Other versions
KR102300908B1 (ko
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 KR1020170063854A priority Critical patent/KR102300908B1/ko
Publication of KR20180128576A publication Critical patent/KR20180128576A/ko
Application granted granted Critical
Publication of KR102300908B1 publication Critical patent/KR102300908B1/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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0011Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D2201/0213

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Hardware Redundancy (AREA)
  • Traffic Control Systems (AREA)

Abstract

다중 코어 제어 방법이 개시된다. 본 발명의 다중 코어 제어 방법은 제2 코어가 애플리케이션을 수행하는 제1 코어를 모니터링하는 단계; 제2 코어가 모니터링 결과에 따라 제1 코어를 리셋시키는 단계; 및 제2 코어가 제1 코어의 동작에 이어서 애플리케이션을 수행하는 단계를 포함하는 것을 특징으로 한다.

Description

다중 코어 제어 방법{MULTI CORE CONTROL METHOD}
본 발명은 다중 코어 제어 방법에 관한 것으로서, 보다 상세하게는 복수 개의 코어 각각이 다른 코어의 동작 상태를 모니터링하여 모니터링한 결과에 따라 해당 동작에 이어서 애플리케이션을 수행하는 다중 코어 제어 방법에 관한 것이다.
차량의 안전성이 증가함에 따라 리던던시 프로세스(Redundancy process)가 동작하도록 설계하는 것이 증가하고 있다. 특히, 자율 주행 시스템은 높은 고가용성과 고장 안정성을 요구한다. 이를 위해 자율 주행 시스템은 매우 낮은 고장 확률을 확보하기 위해 복수 개의 코어를 구비한다.
각각의 코어는 동일한 입력 정보를 가지고 동일한 기능을 서로 독립적으로 수행한다.
기존 안전을 위한 리던던시 방법은 두 코어가 동작하되, 어느 하나의 코어에서만 출력을 내보는 방식으로 사용하다가 해당 코어에 오류가 발생하면 다른 코어의 출력으로 스위칭하여 대체하는 방식이 이용된다.
그러나, 종래 방법은 2개의 코어가 동시에 동작하기 때문에 CPU(CENTRAL PROCESSING UNIT) 자원이 낭비되는 경향이 있으며, 어느 하나의 코어에 오류가 발생했을 경우 그 상태를 그대로 다른 코어가 이어 받았다고 할 수도 없어 또 다른 오류가 발생할 소지가 있었다.
본 발명의 배경기술은 대한민국 등록특허공보 10-1534974호(2015.07.01)의 '다중 마이크로 코어 감시 장치 및 방법'에 개시되어 있다.
본 발명은 전술한 문제점을 개선하기 위해 창안된 것으로서, 본 발명의 일 측면에 따른 목적은 복수 개의 코어 각각이 다른 코어의 동작 상태를 모니터링하여 모니터링한 결과 오류가 발생하면 해당 동작에 이어서 애플리케이션을 수행하는 다중 코어 제어 방법을 제공하는 것이다.
본 발명의 일 측면에 따른 다중 코어 제어 방법은 제2 코어가 애플리케이션을 수행하는 제1 코어를 모니터링하는 단계; 상기 제2 코어가 모니터링 결과에 따라 상기 제1 코어를 리셋시키는 단계; 및 상기 제2 코어가 상기 제1 코어의 동작에 이어서 애플리케이션을 수행하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 상기 제2 코어는 상기 제1 코어에 대한 모니터링 결과 상기 제1 코어에 오류가 발생하면 상기 제1 코어를 리셋시키는 것을 특징으로 한다.
본 발명의 상기 제1 코어는 부팅을 시작하면 DMA(Direct Memory Access)를 제어하여 제2 메모리로의 데이터 전송을 위한 데이터 처리를 수행하여 DMA 전송 준비를 완료하는 것을 특징으로 한다.
본 발명의 상기 제2 코어는 부팅을 시작하면 DMA를 제어하여 제1 메모리로의 데이터 전송을 위한 데이터 처리를 수행하여 DMA 전송 준비를 완료하는 것을 특징으로 한다.
본 발명의 상기 제2 코어는 상기 제1 코어를 리셋시키면 제1 메모리로부터 전달된 데이터를 이용하여 애플리케이션을 수행하는 것을 특징으로 한다.
본 발명의 상기 제2 코어는 상기 제1 코어가 현재 애플리케이션을 수행 중이면 상기 제1 코어를 모니터링하는 것을 특징으로 한다.
본 발명의 상기 제2 코어는 상기 제1 코어에 대한 모니터링 결과 상기 제1 코어의 오류가 주행상황이 기 설정된 설정상황에 해당되는 것이면 원격 서버와 연계하여 차량을 제어하는 단계를 더 포함하는 것을 특징으로 한다.
본 발명의 상기 원격 서버와 연계하여 차량을 제어하는 단계는 상기 제2 코어가 주행환경 정보를 분석하여 상기 주행상황이 상기 설정상황인지 여부를 판단하여 판단 결과에 따라 주행환경 정보를 상기 원격 서버로 전달하는 단계; 및 상기 원격 서버로부터 전달받은 제어 정보에 따라 차량을 제어하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 상기 설정상황은 도로 공사, 교통 사고, 교차로 진입에 따른 우선 순위 결정 중 적어도 하나를 포함하는 것을 특징으로 한다.
본 발명의 일 측면에 따른 다중 코어 제어 방법은 복수 개의 코어 각각이 다른 코어의 동작 상태를 모니터링하여 모니터링한 결과에 따라 해당 동작에 이어서 애플리케이션을 수행할 수 있다.
본 발명의 다른 측면에 따른 다중 코어 제어 방법은 CPU 자원의 로드를 상대적으로 적게 사용할 수 있고, 기존 CPU의 코어보다 낮은 성능 및 적은 개수의 코어를 이용하여 CPU를 구현할 수 있다.
도 1 은 본 발명의 일 실시예에 따른 다중 코어 제어 장치의 블럭 구성도이다.
도 2 는 본 발명의 일 실시예에 따른 제1 코어와 제2 코어의 동작을 개념적으로 나타낸 도면이다.
도 3 은 본 발명의 일 실시예에 따른 제1 메모리와 제2 메모리의 데이터 송수신 방식을 개념적으로 나타낸 도면이다.
도 4 는 본 발명의 일 실시예에 따른 다중 코어 제어 방법의 순서도이다.
도 5 는 본 발명의 일 실시예에 따른 예기치 못한 설정 상황에서 원격 제어를 수행하는 과정을 도시한 순서도이다.
이하에서는 본 발명의 일 실시예에 따른 다중 코어 제어 방법을 첨부된 도면들을 참조하여 상세하게 설명한다. 이러한 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다. 또한 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서, 이는 이용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야할 것이다.
도 1 은 본 발명의 일 실시예에 따른 다중 코어 제어 장치의 블럭 구성도이고, 도 2 는 본 발명의 일 실시예에 따른 제1 코어와 제2 코어의 동작을 개념적으로 나타낸 도면이며, 도 3 은 본 발명의 일 실시예에 따른 제1 메모리와 제2 메모리의 데이터 송수신 방식을 개념적으로 나타낸 도면이다.
도 1 을 참조하면, 본 발명의 일 실시예에 따른 다중 코어 제어 장치는 제1 코어(11), 제2 코어(12), DMA(Direct Memory Access)(13), 제1 메모리(14), 제2 메모리(15), 정보 수집부(20) 및 원격 서버(30)를 포함한다.
정보 수집부(20)는 차량의 자율 주행에 필요한 각종 주변환경 정보를 수집한다. 정보 수집부(20)에 의해 수집된 주변환경 정보는 차량의 자율 주행에 필요할 뿐만 아니라, 차량의 주행상황이 예기치 못한 설정상황에 해당되는지 여부를 판단하기 위해 사용될 수 있다.
정보 수집부(20)에는 레이더 센서(21), 라이더 센서(22), 적외선 센서(23), 위치 센서(24) 및 촬영부(25) 등이 포함될 수 있으며, 이들을 통해 수집되는 주변환경 정보는 차량 전방의 장애물까지의 거리, 장애물의 위치, 도로 상황, 교통 정보, 주행 경로 등 차량의 자율 주행시 주행상황을 식별하는데 사용될 수 있다.
참고로, 본 실시예에서는 정보 수집부(20)에는 레이더 센서(21), 라이더 센서(22), 적외선 센서(23), 위치 센서(24) 및 촬영부(25)가 포함되는 것을 예시로 설명하였으나, 본 발명의 기술적 범위는 이에 한정되는 것은 아니며 다양한 센서를 추가적으로 더 구비할 수 있다.
원격 서버(30)는 차량과 무선으로 연결되어 제1 코어(11) 또는 제2 코어(12)로부터 주변환경 정보를 전달받고 이 주변환경 정보를 분석하여 차량의 원격 제어를 위한 제어 정보를 생성하며, 생성된 제어 정보를 제1 코어(11) 또는 제2 코어(12)로 전달한다.
원격 서버(30)는 주행환경 분석부(31) 및 제어정보 생성부(32)를 포함한다.
주행환경 분석부(31)는 제1 코어(11) 또는 제2 코어(12)로부터 주변환경 정보가 전달되면 이 주변환경 정보를 분석하여 차량의 주행상황이 기 설정된 설정상황인지 여부를 판단한다.
설정상황은 차량의 자율주행시 예기치 못한 상황으로써 도로 공사, 교통 사고, 교차로 진입에 따른 우선 순위 결정 등이 포함될 수 있다.
제어정보 생성부(32)는 주행환경 분석부(31)에 의해 차량의 주행상황이 설정상황에 해당되는 것으로 판단되면, 주변환경 정보를 이용하여 차량 제어를 위한 제어 정보를 생성한다. 제어 정보에는 차량의 궤적 정보, 속도 정보 등이 포함될 수 있다.
참고로, 제어 정보에는 궤적 정보와 속도 정보 이외에도 차량의 원격 제어를 위한 것이라면 다양한 제어 정보가 모두 포함될 수 있다.
제1 메모리(14)는 제1 코어(11)의 동작에 필요한 데이터를 저장한다.
제2 메모리(15)는 제2 코어(12)의 동작에 필요한 데이터를 저장한다.
DMA(13)는 제2 코어(12)의 제어명령에 따라 제1 메모리(14)의 데이터를 제2 코어(12)로 전달하거나, 제1 코어(11)의 제어명령에 따라 제2 메모리(15)의 데이터를 제2 코어(12)로 전달한다.
예를 들어, 제1 코어(11)에 오류가 발생할 경우, DMA(13)는 제2 코어(12)의 제어명령에 따라 제1 메모리(14)에 저장되어 있는 데이터를 제2 메모리(15)에 저장하고, 제2 코어(12)에 오류가 발생할 경우 제1 코어(11)의 제어명령에 따라 제2 메모리(15)에 저장되어 있는 데이터를 제1 메모리(14)에 저장한다.
아울러, DMA(13)는 제1 코어(11)가 부팅을 시작하면 DMA 방식으로 데이터를 전송할 수 있도록 제1 메모리(14)에 저장되어 있는 데이터를 제2 메모리(15)로 전송하기 위한 데이터 최적화 처리를 수행하여 제2 메모리(15)로의 데이터 전송 준비를 완료한다.
또한, DMA(13)는 제2 코어(12)가 부팅을 시작하면 DMA 방식으로 데이터를 전송할 수 있도록 제2 메모리(15)에 저장되어 있는 데이터를 제1 메모리(14)로 전송하기 위한 데이터 최적화 처리를 수행하여 제1 메모리(14)로의 데이터 전송 준비를 완료한다.
상기한 바와 같이 데이터 전송 준비가 완료됨에 따라, DMA(13)는 이후 제2 코어(12)의 제어명령에 따라 제1 메모리(14)에 저장된 데이터를 제2 메모리(15)에 전달하거나, 제1 코어(11)의 제어명령에 따라 제2 메모리(15)에 저장된 데이터를 제1 메모리(14)에 전달한다.
이와 같이, 제1 코어(11) 또는 제2 코어(12)의 부팅이 시작되면, DMA(13)는 DMA 방식에 따른 데이터 전송 준비를 완료하고, 이후 제어명령에 따라 DMA 방식으로 데이터를 전송함으로써, 제1 메모리(14)와 제2 메모리(15) 간의 데이터 송수신이 3msec 이내의 빠른 시간 이내에 가능하게 된다.
참고로, 본 실시예에서는 하나의 DMA(13)가 제1 메모리(14)와 제2 메모리(15)에 공동으로 연결되는 것을 예시로 설명하였으나, 본 발명의 기술적 범위는 이에 한정되는 것은 아니며, 제1 메모리(14)와 제2 메모리(15) 각각에 대응되게 별개로 마련되어 버스(미도시)를 통해 서로 연결되는 것도 포함한다.
제1 코어(11)와 제2 코어(12)는 CPU(CENTRAL PROCESSING UNIT)(10)에 탑재되며, 각각이 자율 주행을 위한 동일한 애플리케이션을 독립적으로 수행할 수 있다.
아울러, 본 실시예에서는 2개의 코어를 구비하고, 각각을 제1 코어(11)와 제2 코어(12)로 명시하였으나, 본 발명의 기술적 범위는 이에 한정되는 것은 아니며 더욱 많은 코어를 구비하는 것도 포함한다 할 것이다.
제1 코어(11)는 제1 메모리(14)와 연결되고 제2 코어(12)는 제2 메모리(15)와 연결된다.
제1 코어(11)와 제2 코어(12)는 각기 독립적으로 동작하는데, 제1 코어(11)와 제2 코어(12) 각각은 서로 간에 그 동작 상태를 모니터링하여 모니터링한 결과에 따라 데이터를 전달받아 해당 동작에 이어서 애플리케이션을 수행한다.
예를 들어, 제1 코어(11)가 애플리케이션을 수행하는 경우에는 제2 코어(12)는 제1 코어(11)를 모니터링하여 제1 코어(11)의 상태를 감시한다. 또한 제2 코어(12)가 애플리케이션을 수행하는 경우에는 제1 코어(11)는 제2 코어(12)를 모니터링하여 제2 코어(12)의 상태를 감시한다.
도 2 를 참조하면, 애플리케이션을 수행하는 제1 코어(11)에서 오류가 발생하면, 제2 코어(12)는 DMA(13)를 제어하여 제1 메모리(14)에 저장된 데이터를 제2 메모리(15)에 저장하고, 제1 코어(11)를 리셋시킨다. 이어 제2 코어(12)는 제2 메모리(15)에 저장된 데이터를 이용하여 제1 코어(11)의 동작에 이어서 애플리케이션을 수행한다.
또한, 애플리케이션을 수행하는 제2 코어(12)에서 오류가 발생하면, 제1 코어(11)는 DMA(13)를 제어하여 제2 메모리(15)에 저장된 데이터를 제1 메모리(14)에 저장하고 제2 코어(12)를 리셋시킨다. 이어 제1 코어(11)는 제1 메모리(14)에 저장된 데이터를 이용하여 제2 코어(12)의 동작에 이어서 애플리케이션을 수행한다.
여기서, 제1 메모리(14)의 데이터 구조와 제2 메모리(15)의 데이터 구조는 도 3 에 도시된 바와 같이 동일한 바, 제1 메모리(14)의 데이터를 제2 메모리(15)로 전달할 경우에는 사전에 설정된 제1 메모리(14)의 시작 주소와 끝 주소를 바탕으로 해당 영역의 데이터를 제2 메모리(15)로 전달하고, 제2 메모리(15)의 데이터를 제1 메모리(14)로 전달할 경우에는 사전에 설정된 제2 메모리(15)의 시작 주소와 끝 주소를 바탕으로 해당 영역의 데이터를 제1 메모리(14)로 전달한다.
한편, 제2 코어(12)가 제1 코어(11)를 모니터링하는 과정에서, 제2 코어(12)는 주변환경 정보를 분석하여 차량의 주행상황이 설정상황에 해당되면 주변상황 정보를 원격 서버(30)에 전달하고, 제1 코어(11)를 리셋시킨 후 원격 서버(30)로부터 전달된 제어 정보에 따라 차량을 제어한다.
또한, 제1 코어(11)가 제2 코어(12)를 모니터링하는 과정에서, 제1 코어(11)는 주변환경 정보를 분석하여 차량의 주행상황이 설정상황에 해당되면 주변상황 정보를 원격 서버(30)에 전달하고, 제2 코어(12)를 리셋시킨 후 원격 서버(30)로부터 전달된 제어 정보에 따라 차량을 제어한다.
이하 본 발명의 일 실시예에 따른 다중 코어 제어 방법을 도 4 및 도 5 를 참조하여 상세하게 설명한다.
도 4 는 본 발명의 일 실시예에 따른 다중 코어 제어 방법의 순서도이고, 도 5 는 본 발명의 일 실시예에 따른 예기치 못한 설정 상황에서 원격 제어를 수행하는 과정을 도시한 순서도이다.
도 4 의 (a) 참조하면, 먼저 제1 코어(11)가 부팅을 시작한다(S110).
제1 코어(11)가 부팅이 완료됨에 따라, DMA(13)는 DMA 방식으로 데이터를 전송할 수 있도록, 제1 메모리(14)에 저장되어 있는 데이터를 제2 메모리(15)로 전송하기 위한 데이터 최적화를 수행하여 제2 메모리(15)로의 데이터 전송 준비를 완료한다(S120).
이어 제1 코어(11)는 현재 제2 코어(12)가 애플리케이션을 수행중인지 여부를 판단하고(S130), 판단 결과 제2 코어(12)가 애플리케이션을 수행중이지 않으면 제1 메모리(14)에 저장된 데이터를 이용하여 애플리케이션을 수행한다(S170).
반면에, 단계(S130)에서의 판단 결과 현재 제2 코어(12)가 애플리케이션을 수행 중이면, 제1 코어(11)는 제2 코어(12)를 모니터링하여 제2 코어(12)에 오류가 발생하는지 여부를 판단한다(S140).
이때, 제2 코어(12)에 오류가 발생하지 않으면 제1 코어(11)는 제2 코어(12)에 대한 모니터링을 계속 수행한다.
반면에, 제2 코어(12)에 대한 모니터링을 수행하는 과정(S140)에서 제2 코어(12)에 오류가 발생하면, 제1 코어(11)는 DMA(13)를 제어하여 제2 메모리(15)에 저장된 데이터를 제1 메모리(14)에 저장하고(S150), 제1 코어(11)를 리셋시킨다(S160).
이어 제1 코어(11)는 제1 메모리(14)에 저장된 데이터를 이용하여 제1 코어(11)의 동작에 이어서 애플리케이션을 수행한다(S170).
한편, 단계(S160)에서 리셋된 제2 코어(12)는 도 4 의 (b)에 도시된 바와 같이 부팅(S210)되고, DMA(13)는 제2 메모리(15)에 저장되어 있는 데이터를 제1 메모리(14)로 전송하기 위한 데이터 최적화를 수행하여 제1 메모리(14)로의 데이터 전송 준비를 완료한다(S220).
이어 제2 코어(12)는 현재 제1 코어(11)가 애플리케이션을 수행중인지 여부를 판단하고(S230), 판단 결과 제1 코어(11)가 애플리케이션을 수행 중이지 않으면 제2 메모리(15)에 저장된 데이터를 이용하여 애플리케이션을 수행한다(S270).
반면에, 단계(S230)에서의 판단 결과 현재 제1 코어(11)가 애플리케이션을 수행 중(도 4 의 (a) 참조)이면, 제2 코어(12)는 제1 코어(11)를 모니터링하여 제1 코어(11)에 오류가 발생하는지 여부를 판단한다(S240).
이때, 제1 코어(11)에 오류가 발생하지 않으면 제2 코어(12)는 제1 코어(11)에 대한 모니터링을 계속 수행한다.
반면에, 제1 코어(11)에 대한 모니터링을 수행하는 과정(S240)에서 제1 코어(11)에 오류가 발생하면, 제2 코어(12)는 DMA(13)를 제어하여 제1 메모리(14)에 저장된 데이터를 제2 메모리(15)에 저장하고(S250), 제1 코어(11)를 리셋시킨다(S260). 이 경우, 제1 코어(11)는 도 4 의 (a)에 도시된 바와 같이 부팅되어 그 이후의 과정을 수행한다.
한편, 제2 코어(12)는 제2 메모리(15)에 저장된 데이터를 이용하여 제1 코어(11)의 동작에 이어서 애플리케이션을 수행한다(S270).
즉, 제1 코어(11)가 동작하고 제2 코어(12)가 제1 코어(11)를 모니터링하는 과정에서, 제1 코어(11)에 오류가 발생하면 제2 코어(12)는 제1 메모리(14)의 데이터를 제2 메모리(15)에 저장하고, 제1 코어(11)를 리셋시킨 후, 제1 코어(11)의 동작에 이어서 애플리케이션을 수행한다. 또한, 제2 코어(12)가 동작하고 제1 코어(11)가 제2 코어(12)를 모니터링하는 과정에서, 제2 코어(12)에 오류가 발생하면 제1 코어(11)는 제2 메모리(15)의 데이터를 제1 메모리(14)에 저장하고, 제2 코어(12)를 리셋시킨 후, 제2 코어(12)의 동작에 이어서 애플리케이션을 수행한다.
한편, 상기한 모니터링하는 과정에서, 오류가 차량의 주행상황이 설정상황에 해당하는 경우이면, 제1 코어(11) 또는 제2 코어(12)는 원격 서버(30)를 통해 차량을 원격 제어하도록 한다. 이를 도 5 를 참조하여 설명한다.
참고로, 본 실시예에서는 제1 코어(11)가 제2 코어(12)를 모니터링하는 경우를 예시로 설명한다.
도 5 를 참조하면, 제1 코어(11)가 제2 코어(12)를 모니터링하는 과정에서, 제1 코어(11)는 정보 수집부(20)를 통해 주변환경 정보를 수집하고 수집된 주변환경 정보를 분석하여 오류가 차량의 주행상황이 설정상황에 해당하는지 여부를 판단한다(S310).
단계(S310)에서의 판단 결과 주행상황이 설정상황에 해당되면, 제1 코어(11)는 주변환경 정보를 원격 서버(30)에 전달한다(S320).
이에 따라, 원격 서버(30)는 주변환경 정보를 분석하여 차량의 주행상황이 기 설정된 설정상황인지 여부를 판단하고, 판단 결과 차량의 주행상황이 설정상황이면 주변환경 정보를 이용하여 차량의 원격 제어를 위한 제어 정보를 생성하고(S330), 생성된 제어 정보를 제1 코어(11)로 전달한다(S340).
아울러, 제1 코어(11)는 제2 코어(12)를 리셋시키고 원격 서버(30)로부터 전달받은 제어 정보에 따라 차량을 제어한다(S350).
이 경우 제1 코어(11)는 운전자에게 차량의 원격 제어에 대한 승인 여부를 확인하고, 운전자로부터 원격 제어를 승인받으면 해당 제어 정보에 따라 차량을 제어할 수도 있다.
이와 같이 본 발명의 일 실시예에 따른 다중 코어 제어 방법은 복수 개의 코어 각각이 다른 코어의 동작 상태를 모니터링하여 모니터링한 결과에 따라 데이터를 전달받아 해당 동작에 이어서 애플리케이션을 수행할 수 있다.
또한 본 발명의 일 실시예에 따른 다중 코어 제어 방법은 CPU 자원의 로드를 기존보다 적게 사용할 수 있고, 기존 CPU의 코어보다 적은 성능 및 적은 개수의 코어를 이용하여 CPU를 구현할 수 있다.
본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며 당해 기술이 속하는 기술분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 아래의 특허청구범위에 의하여 정해져야할 것이다.
10: CPU 11: 제1 코어
12: 제2 코어 13: DMA
14: 제1 메모리 15: 제2 메모리
20: 정보 수집부 21: 레이더 센서
22: 라이더 센서 23: 적외선 센서
24: 위치 센서 25: 촬영부
30: 원격 서버 31: 주행환경 분석부
32: 제어정보 생성부

Claims (9)

  1. 제2 코어가 애플리케이션을 수행하는 제1 코어를 모니터링하는 단계;
    상기 제2 코어가 모니터링 결과에 따라 상기 제1 코어를 리셋시키는 단계; 및
    상기 제2 코어가 상기 제1 코어의 동작에 이어서 애플리케이션을 수행하는 단계를 포함하는 다중 코어 제어 방법.
  2. 제 1 항에 있어서, 상기 제2 코어는 상기 제1 코어에 대한 모니터링 결과 상기 제1 코어에 오류가 발생하면 상기 제1 코어를 리셋시키는 것을 특징으로 하는 다중 코어 제어 방법.
  3. 제 1 항에 있어서, 상기 제1 코어는 부팅을 시작하면 DMA(Direct Memory Access)를 제어하여 제2 메모리로의 데이터 전송을 위한 데이터 처리를 수행하여 DMA 전송 준비를 완료하는 것을 특징으로 하는 다중 코어 제어 방법.
  4. 제 1 항에 있어서, 상기 제2 코어는 부팅을 시작하면 DMA를 제어하여 제1 메모리로의 데이터 전송을 위한 데이터 처리를 수행하여 DMA 전송 준비를 완료하는 것을 특징으로 하는 다중 코어 제어 방법.
  5. 제 1 항에 있어서, 상기 제2 코어는 상기 제1 코어를 리셋시키면 제1 메모리로부터 전달된 데이터를 이용하여 애플리케이션을 수행하는 것을 특징으로 하는 다중 코어 제어 방법.
  6. 제 1 항에 있어서, 상기 제2 코어는 상기 제1 코어가 현재 애플리케이션을 수행 중이면 상기 제1 코어를 모니터링하는 것을 특징으로 하는 다중 코어 제어 방법.
  7. 제 1 항에 있어서, 상기 제2 코어는 상기 제1 코어에 대한 모니터링 결과 상기 제1 코어의 오류가 주행상황이 기 설정된 설정상황에 해당되는 것이면 원격 서버와 연계하여 차량을 제어하는 단계를 더 포함하는 것을 특징으로 하는 다중 코어 제어 방법.
  8. 제 7 항에 있어서, 상기 원격 서버와 연계하여 차량을 제어하는 단계는
    상기 제2 코어가 주행환경 정보를 분석하여 상기 주행상황이 상기 설정상황인지 여부를 판단하여 판단 결과에 따라 주행환경 정보를 상기 원격 서버로 전달하는 단계; 및
    상기 원격 서버로부터 전달받은 제어 정보에 따라 차량을 제어하는 단계를 포함하는 것을 특징으로 하는 다중 코어 제어 방법.
  9. 제 7 항에 있어서, 상기 설정상황은 도로 공사, 교통 사고, 교차로 진입에 따른 우선 순위 결정 중 적어도 하나를 포함하는 것을 특징으로 하는 다중 코어 제어 방법.






KR1020170063854A 2017-05-24 2017-05-24 다중 코어 제어 방법 KR102300908B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170063854A KR102300908B1 (ko) 2017-05-24 2017-05-24 다중 코어 제어 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170063854A KR102300908B1 (ko) 2017-05-24 2017-05-24 다중 코어 제어 방법

Publications (2)

Publication Number Publication Date
KR20180128576A true KR20180128576A (ko) 2018-12-04
KR102300908B1 KR102300908B1 (ko) 2021-09-10

Family

ID=64668995

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170063854A KR102300908B1 (ko) 2017-05-24 2017-05-24 다중 코어 제어 방법

Country Status (1)

Country Link
KR (1) KR102300908B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102160259B1 (ko) * 2019-11-21 2020-09-25 주식회사 넥스트칩 클록의 기능 안전을 결정하는 방법 및 그 방법을 수행하는 전자 장치

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040066889A (ko) * 2001-12-11 2004-07-27 콘티넨탈 테베스 아게 운트 코. 오하게 멀티-코어 중복 제어 컴퓨터 시스템, 모터 차량의 안전에중요한 애플리케이션들을 위한 컴퓨터 네트워크, 및 그용도
KR20130007754A (ko) * 2011-07-11 2013-01-21 한국전자통신연구원 자율주행 교차로에서 차량 제어 장치 및 그 방법
KR20130009816A (ko) * 2010-03-23 2013-01-23 콘티넨탈 테베스 아게 운트 코. 오하게 제어 컴퓨터 시스템, 제어 컴퓨터 시스템을 제어하는 방법, 및 제어 컴퓨터 시스템의 이용
KR20150037317A (ko) * 2013-09-30 2015-04-08 한국전자통신연구원 자동 제어 차량의 오류 복구 장치 및 그 방법
KR20150072484A (ko) * 2013-12-19 2015-06-30 현대자동차주식회사 다중 마이크로 코어 감시 장치 및 방법
KR20160110203A (ko) * 2015-03-12 2016-09-21 인피니언 테크놀로지스 아게 안전 관련 중대한 에러를 처리하는 방법 및 장치

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040066889A (ko) * 2001-12-11 2004-07-27 콘티넨탈 테베스 아게 운트 코. 오하게 멀티-코어 중복 제어 컴퓨터 시스템, 모터 차량의 안전에중요한 애플리케이션들을 위한 컴퓨터 네트워크, 및 그용도
KR20130009816A (ko) * 2010-03-23 2013-01-23 콘티넨탈 테베스 아게 운트 코. 오하게 제어 컴퓨터 시스템, 제어 컴퓨터 시스템을 제어하는 방법, 및 제어 컴퓨터 시스템의 이용
KR20130007754A (ko) * 2011-07-11 2013-01-21 한국전자통신연구원 자율주행 교차로에서 차량 제어 장치 및 그 방법
KR20150037317A (ko) * 2013-09-30 2015-04-08 한국전자통신연구원 자동 제어 차량의 오류 복구 장치 및 그 방법
KR20150072484A (ko) * 2013-12-19 2015-06-30 현대자동차주식회사 다중 마이크로 코어 감시 장치 및 방법
KR20160110203A (ko) * 2015-03-12 2016-09-21 인피니언 테크놀로지스 아게 안전 관련 중대한 에러를 처리하는 방법 및 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102160259B1 (ko) * 2019-11-21 2020-09-25 주식회사 넥스트칩 클록의 기능 안전을 결정하는 방법 및 그 방법을 수행하는 전자 장치

Also Published As

Publication number Publication date
KR102300908B1 (ko) 2021-09-10

Similar Documents

Publication Publication Date Title
US9616896B1 (en) System for switching control of an autonomous vehicle
US10585432B2 (en) Drive-by-wire control system
US20200017114A1 (en) Independent safety monitoring of an automated driving system
JP7066767B2 (ja) 車両間のインタラクション方法、装置、端末、記憶媒体、及びプログラム
CN111634286B (zh) 自动驾驶车辆控制方法、装置、设备及可读存储介质
US11378954B2 (en) Multi-processor SoC system
WO2019208442A1 (ja) 車両制御装置
CN114348020B (zh) 一种5g远程与自动驾驶安全冗余系统及控制方法
CN109991841B (zh) 飞行控制计算系统及控制信号输出方法、装置和存储介质
WO2013099391A1 (ja) 運転支援システム
US20210146953A1 (en) Electronic Control Unit
KR101802858B1 (ko) 자동차용 통합데이터 처리 제어 시스템 및 방법
JP7416144B2 (ja) 運転引継制御装置、方法およびプログラム
US11318929B2 (en) Electronic control apparatus, electronic control system, and electronic control method
CN111766866A (zh) 信息处理装置和包括信息处理装置的自动行驶控制系统
KR20180128576A (ko) 다중 코어 제어 방법
KR20190100482A (ko) 주행 모드 전환 장치 및 방법
US11789730B2 (en) Electronic control device and control method
CN112636881B (zh) 一种信号切换方法、装置及车辆
CN114407917B (zh) 驾驶模式的切换方法、装置、车辆及可读存储介质
US20240231394A9 (en) System, control device, and control method
US20240134381A1 (en) System, control device, and control method
JP7146118B2 (ja) 車両制御装置及び車両制御方法
CN113165662B (zh) 车辆控制装置
CN115107790A (zh) 自动驾驶装置、自动驾驶方法以及多个非暂时性存储介质

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant