KR20230171725A - 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 그 방법 - Google Patents

멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 그 방법 Download PDF

Info

Publication number
KR20230171725A
KR20230171725A KR1020220072227A KR20220072227A KR20230171725A KR 20230171725 A KR20230171725 A KR 20230171725A KR 1020220072227 A KR1020220072227 A KR 1020220072227A KR 20220072227 A KR20220072227 A KR 20220072227A KR 20230171725 A KR20230171725 A KR 20230171725A
Authority
KR
South Korea
Prior art keywords
core
data
vehicle
monitoring
status
Prior art date
Application number
KR1020220072227A
Other languages
English (en)
Other versions
KR102709503B1 (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 KR1020220072227A priority Critical patent/KR102709503B1/ko
Priority claimed from KR1020220072227A external-priority patent/KR102709503B1/ko
Publication of KR20230171725A publication Critical patent/KR20230171725A/ko
Application granted granted Critical
Publication of KR102709503B1 publication Critical patent/KR102709503B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • B60R16/0231Circuits relating to the driving or the functioning of the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/02Registering or indicating driving, working, idle, or waiting time only
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0808Diagnosing performance data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Quality & Reliability (AREA)
  • Small-Scale Networks (AREA)

Abstract

본 발명은 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 그 방법에 관한 것으로, 방법은 멀티코어 프로세서의 복수의 코어 중 특정 코어를 모니터링 전용으로 할당하여, 자동차의 하드웨어 및 소프트웨어 적으로 모니터링 용 구성을 자동차의 주행 제어와 분리하여 처리함으로써 자동차의 부하를 감소시키고 기능 저하를 방지할 수 있으며, 자동차의 상태 데이터를 주기적으로 업데이트 하고, 자동차의 내부 또는 외부의 요청에 따라 자동차의 상태에 대한 데이터를 전송하여, 자동차의 모니터링 효율을 향상시킬 수 있다.

Description

멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 그 방법{CONTROL APPARATUS AND METHOD FOR MONITORING STATE OF VEHICLE USING MULTICORE PROCESSOR}
본 발명은 자동차의 제어와 상태 모니터링에 따른 동작을 멀티코어 프로세서를 기반으로 분리하여 처리함으로써 낮은 부하로 자동차의 상태를 모니터링하는, 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 그 방법에 관한 것이다.
자동차는 IT기술의 발달로 각종 센서가 탑재되고 있고, 전자적인 제어에 의해 구동하는 부품이 증가하고 있다. 또한, 자동차는 배터리에 충전된 에너지를 이용하여 구동하는 전지 자동차의 보급이 확산되고 있고, 자동차의 자율 주행을 구현하여 이를 시험하는 단계에 이르렀다.
자동차는 주행을 위한 제어 전반이 전자적으로 이루어지고 있으므로, 전자 제어 유닛(ECU, Electric Control Unit)의 역할이 중요해지고 있으며, 자동차의 전자 제어를 위해서는 자동차의 제어영역마다 복수의 ECU가 탑재되고 있는 실정이다.
이러한 자동차는 각 영역의 동작 및 성능을 테스트하는데, 테스트 과정에서 획득되는 데이터를 기반으로 탑재된 하드웨어 및 소프트웨어를 수정하는 것을 반복하게 된다.
종래에는 개발단계에서 자동차의 상태를 모니터링하기 위한 장치가 자동차의 ECU에 별도로 연결되어 ECU의 데이터를 획득하였다. 그러나 별도의 장치를 추가하여 ECU에 연결해야 하므로, 애드온(ADD ON) 모듈 또는 특수 어셈블리를 제작할 필요가 있었다.
이러한 과정으로 개발된 자동차는 출시된 이후에도 자동차가 정상적으로 주행하는지 여부를 확인하기 위하여 자동차의 상태를 모니터링할 필요가 있다.
자동차가 출시된 이후에는 자동차 내부의 CAN통신에 접속하여 자동차의 상태를 확인하기 위한 데이터를 요청하고, 자동차로부터 차량상태 데이터를 획득한다.
관련 기술로, 대한민국 등록특허 제10-2041846호, 'OBD-Ⅱ를 활용한 차량 CAN 데이터 자동 수집 단말기와 수집 방법' 이 있다.
그러나 자동차는 외부에서의 데이터 요청에 대하여 지정된 동작을 수행하는 동안 수신된 요청을 처리해야 하므로 자동차의 ECU 및 CAN통신에 부하가 증가하고, 반복적인 요청으로 인하여 데이터 수가 제한되거나 처리 횟수가 제한되는 등의 문제가 있다.
또한, 문제가 발생할 경우 차량에 접속해서 데이터 획득하는 것이 아니라 차량 운행 중에도 상시 필요한 데이터를 사용하여 차량의 문제 유무를 사전 판단하거나 차량용 빅데이터(Big data)로 사용되도록 하는 요구가 증대되고 있다.
따라서 기존과 달리 새로운 구조의 차량 데이터 획득 방식이 필요하다.
대한민국 등록특허 제10-2041846호
본 발명은 상기와 같은 필요성에 의해 창출된 것으로서, 자동차의 하드웨어 및 소프트웨어 적으로 모니터링을 위한 구성을 별도로 할당하여 자동차의 상태에 대한 데이터를 처리함으로써 자동차의 전자제어유닛 및 통신모듈의 부하를 감소시키고 효과적으로 자동차의 상태를 모니터링하는, 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 그 방법을 제공하는 데 있다.
상기한 목적을 달성하기 위하여 본 발명에 따른 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치는, 자동차의 동작을 제어하는 멀티코어 프로세서; 상기 자동차의 데이터가 저장되는 메모리; 상기 자동차 내 데이터를 송수신하는 제 1 통신모듈; 및 모니터링장치로부터 데이터 요청을 수신하고 상기 멀티코어 프로세서의 제어명령에 따라 상기 모니터링장치로 요청된 데이터를 전송하는 제 2 통신모듈; 을 포함하고, 상기 멀티코어 프로세서는, 복수의 코어 중 어느 하나를 상기 모니터링장치의 요청을 처리하기 위한 모니터링 전용코어로 할당하는 것을 특징으로 한다.
상기 멀티코어 프로세서는, 상기 자동차의 데이터의 입출력을 제어하고 상기 메모리에 차량상태 데이터를 저장하는 제 1 코어; 및 상기 모니터링장치의 데이터 요청을 처리하는 상기 모니터링 전용코어인 제 2 코어; 를 포함한다.
상기 제 2 코어는, 상기 제 1 코어에 접속하여 상기 차량상태 데이터를 읽어 버퍼에 저장하고, 상기 버퍼에 저장된 상기 차량상태 데이터를 상기 제 2 통신모듈을 통해 상기 모니터링장치로 전송하는 것을 특징으로 한다.
상기 제 2 코어는 상기 데이터 요청에 대응하여, 요청된 데이터 리스트 및 반복데이터를 확인하고, 요청된 데이터의 지정된 주소를 이용하여 상기 제 1 코어에 접속하는 것을 특징으로 한다.
상기 제 2 코어는 상기 데이터 요청에 따라, 상기 제 1 코어에 접속하여 수신된 데이터를 상기 모니터링장치로 전송하는 동작을 반복적으로 수행하고, 최소 반복횟수에 도달하면 다음 데이터 요청을 처리하는 것을 특징으로 한다.
상기 제 1 코어는 상기 메모리에 저장된 상기 차량상태 데이터를 읽어 버퍼에 저장하는 것을 특징으로 하는 한다.
상기 제 2 코어는 일정시간 간격으로 상기 메모리에 접속하여 상기 버퍼에 저장된 상기 차량상태 데이터를 갱신하는 것을 특징으로 한다.
상기 제 1 통신모듈은 CAN(Communication Area Network) 통신 모듈이고, 상기 제 2 통신모듈은 이더넷(Ethernet) 통신 모듈인 것을 특징으로 한다.
상기 제 2 코어는 상기 제 2 통신모듈의 이더넷 물리 계층(Ethernet Physical Layer)을 이용하여 상기 모니터링장치와 통신하는 것을 특징으로 한다.
본 발명에 따른 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 방법은, 멀티코어 프로세서의 제 1 코어가 차량 내 데이터 송수신을 처리하는 제 1 통신모듈을 통해 자동차의 상태에 대한 데이터를 메모리에 저장하는 단계; 상기 멀티코어 프로세서가 복수의 코어 중 제 2 코어를 모니터링 전용코어로 할당하는 단계; 모니터링장치로부터 데이터 요청을 수신하는 단계; 상기 제 2 코어가 상기 데이터 요청에 따른 데이터 리스트를 확인하는 단계; 상기 제 2 코어가 상기 제 1 코어에 접속하여 차량상태 데이터를 읽어 저장하는 단계; 및 상기 제 2 코어가 상기 제 1 코어로부터 읽어 저장한 상기 차량상태 데이터를 상기 모니터링장치로 전송하는 단계; 를 포함한다.
상기 차량상태 데이터를 읽어 저장하는 단계는, 상기 제 2 코어가, 요청된 데이터 리스트 및 반복데이터를 확인하고, 요청된 데이터의 지정된 주소를 이용하여 상기 제 1 코어에 접속하는 것을 특징으로 한다.
상기 차량상태 데이터를 읽어 저장하는 단계는, 상기 데이터 요청에 대응하여, 상기 제 2 코어가 상기 제 1 코어에 접속하여 수신된 데이터를 상기 모니터링장치로 전송하는 동작을 반복하는 단계; 를 더 포함한다.
상기 차량상태 데이터를 읽어 저장하는 단계는, 상기 제 2 코어가, 작업을 반복하여 수행하는 중, 그 횟수가 최소 반복횟수에 도달하면 반복 동작을 중지하는 단계; 및 다음 데이터 요청을 처리하는 단계; 를 더 포함한다.
상기 차량상태 데이터를 읽어 저장하는 단계 전, 상기 제 1 코어가 상기 일정시간 간격으로 상기 메모리에 접속하는 단계; 상기 제 1 코어가 상기 메모리로부터 상기 차량상태 데이터를 읽어 버퍼에 복사하는 단계; 및 일정시간 간격으로 상기 제 1 코어가 상기 차량상태 데이터를 상기 버퍼 수신하여 데이터를 갱신하는 단계; 를 더 포함한다.
상기 모니터링장치로 전송하는 단계는, 상기 제 2 코어가 상기 제 2 통신모듈의 이더넷 물리 계층(Ethernet Physical Layer)을 이용하여 상기 모니터링장치와 통신하는 것을 특징으로 한다.
일 측면에 따르면, 본 발명의 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 그 방법은 멀티코어 프로세서의 복수의 코어 중 특정 코어를 모니터링 전용으로 할당하여, 자동차의 상태를 모니터링하는 동작을 자동차의 주행 제어와 분리하여 처리함으로써, 자동차의 부하를 감소시키고 기능 저하를 방지하며, 주행 중에도 자동차의 상태를 모니터링 할 수 있다.
본 발명의 일 측면에 따르면, 모니터링을 위한 전용 프로세서를 통해 자동차의 상태 데이터를 주기적으로 업데이트 하고, 자동차의 내부 또는 외부의 요청에 따라 자동차의 상태에 대한 데이터를 전송하여, 자동차의 모니터링 효율을 향상시킬 수 있다.
도 1 은 본 발명의 일 실시예에 따른 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 모니터링장치의 구성이 도시된 도이다.
도 2 는 도 1의 제어장치의 구성 및 데이터 전송을 설명하는 데 참조되는 도이다.
도 3 은 도 1 의 멀티코어 프로세서의 데이터 처리 흐름을 설명하는 데 참조되는 도이다.
도 4 는 본 발명의 일 실시예에 따른 멀티코어 프로세서의 제 1 코어(COREx)의 동작방법이 도시된 순서도이다.
도 5 는 본 발명의 일 실시예에 따른 멀티코어 프로세서 중 제 2 코어(COREy)의 동작방법이 도시된 순서도이다.
이하, 첨부된 도면들을 참조하여 본 발명을 설명하도록 한다.
이 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로써 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1 은 본 발명의 일 실시예에 따른 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 모니터링장치의 구성이 도시된 도이다.
도 1에 도시된 바와 같이, 제어장치(10)는 모니터링장치(20)의 요청에 따라 자동차(미도시)의 차량상태 데이터(121)를 모니터링장치(20)로 전송한다.
제어장치(10)는 자동차의 내부에 구비되어, 자동차의 데이터를 처리하고 자동차 외부와 통신한다. 제어장치(10)는 자동차의 주행을 제어하고, 차량 내부의 데이터 입출력을 제어하는 제어기이다.
모니터링장치(20)는 자동차의 외부에서 자동차와 통신하여 자동차의 상태를 모니터링하고, 고장 또는 이상에 대하여 진단한다.
모니터링장치(20)는 제2 통신모듈(150)의 통신방식이 적용된 단말로, 자동차 모니터링용 단말 또는 자동차 점검용 단말인 것을 예로 하여 설명하나, 스마트폰 또는 PDA 등의 휴대용 단말, 개인용 컴퓨터(PC), 태블릿PC, 랩탑(노트북) 또한 사용될 수 있다.
또한, 모니터링장치(20)는 자동차의 관리서버(미도시)에 접속하여 자동차의 상태에 대한 모니터링 결과데이터를 관리서버로 전송할 수 있다. 모니터링장치(20)는 데이터베이스(DB)(미도시)에 자동차의 상태에 대한 모니터링 결과데이터를 저장할 수 있다.
제어장치(10)는 멀티코어 프로세서(uC)(110), 제 1 통신모듈(130), 제 2 통신모듈(150) 및 메모리(120)를 포함한다.
메모리(120)는 자동차의 주행제어를 위한 복수의 제어알고리즘을 저장하고, 복수의 센서로부터 입력되는 데이터를 저장하며, 차량제어를 위한 데이터를 저장한다.
또한, 메모리(120)는 자동차의 상태를 진단하고 모니터링하기 위한 차량 상태 데이터(121)를 저장한다. 차량 상태 데이터(121)는 지정된 주소에 저장된다.
메모리(120)는 램(RAM, Random Access Memory), 롬(ROM), EEPROM(Electrically Erased Programmable Rom) 등의 비휘발성 메모리, 및 플래시 메모리를 포함할 수 있고, SSD와 같은 대용량 저장수단을 포함할 수 있다.
제1 통신모듈(130)은 CAN(Controller Area Network) 통신용 드라이버(CAN DRIVER)로 자동차 내에서 데이터를 송수신한다. 제1 통신모듈(130)은 자동차 내부의 데이터 송수신을 위한 통신버스(BUS)를 형성하여 자동차의 각 영역과 통신한다.
제2 통신모듈(150)은 자동차의 외부와 데이터를 송수신한다.
제2 통신모듈(150)은 유선 또는 무선의 통신모듈을 포함하고, 모니터링장치(20), 외부의 클라우드서버(미도시), 다른 자동차(미도시) 또는 데이터베이스(미도시)에 연결될 수 있다.
예를 들어 제2 통신모듈(150)은 이더넷(Ethernet) 모듈이 사용될 수 있다. 제 2 통신모듈(150)은 자동차의 상태 모니터링을 위해 요청되는 데이터(121)를 송수신한다.
제2 통신모듈(150)은 이더넷 물리 계층 유닛(Ethernet Physical Layer unit)을 이용하여 모니터링장치(20)의 요청을 수신하고, 차량상태 데이터(121)를 모니터링 장치(20)로 전송한다.
제2 통신모듈(150)은 멀티코어 프로세서(110)에 의해 이더넷 물리 계측 유닛이 제어되고, 인포테인먼트 기능 등을 수행할 수 있다.
멀티코어 프로세서(uC)(110)는 입출력되는 신호를 처리하고 자동차의 주행을 제어한다.
멀티코어 프로세서(uC)(110)는 전자 제어 유닛(ECU, Electric Control Unit), 자동차 제어유닛(Vehicle Control Unit), 엔진 제어 유닛(Engine Control Unit), 메인 제어 유닛(Main Control Unit) 및 모터 제어 유닛(Motor Control Unit) 중 어느 하나 일 수 있다.
멀티코어 프로세서(uC)(110)는 자동차의 동작을 처리하기 위한 복수의 코어(COREs)(140)를 포함한다. 복수의 코어(140)는 각각 독립적으로 지정된 알고리즘에 따라 동작을 수행하고, 필요에 따라 상호 연동하여 동작한다.
멀티코어 프로세서(uC)(110)는 복수의 코어(140) 중 작업이 할당되지 않은 적어도 하나의 코어를 자동차의 상태를 모니터링하기 위한 모니터링 전용코어로 할당할 수 있다.
멀티코어 프로세서(uC)(110)는 자동차의 복수의 데이터 중 모니터링 용 차량상태 데이터(121)가 메모리(120)의 지정된 주소에 저장되도록 한다.
멀티코어 프로세서(uC)(110)는 자동차의 상태를 모니터링 하기 위한 데이터를 기반으로 데이터 테이블을 생성하여 차량상태 데이터(121)로써 메모리(120)에 저장한다.
자동차의 상태를 모니터링 하기 위한 데이터는 사전에 종류가 정의되어 있고, 메모리(120) 중 전용 주소가 있는 지정된 영역에 저장되므로, 멀티코어 프로세서(uC)(110)의 모니터링 전용 코어는 전용 주소를 이용하여 메모리(120)의 차량상태 데이터를 처리한다.
또한, 멀티코어 프로세서(uC)(110)의 모니터링 전용코어는 내부 또는 외부에서 수신되는 데이터 요청을 처리하고, 수신되는 요청에 대응하여 차량상태 데이터(121)를 모니터링장치(20)로 전송한다.
도 2 는 도 1의 제어장치의 구성 및 데이터 전송을 설명하는 데 참조되는 도이다.
도 2에 도시된 바와 같이, 멀티코어 프로세서(uC)(110)는 자동차의 데이터를 처리하고 위치를 제어하는 제 1 코어(COREx)(141) 및 자동차의 상태를 모니터링하기 위한 차량상태 데이터(121)를 처리하는 제 2 코어(COREy)(142)를 포함한다.
제 1 코어(COREx)(141)는 자동차의 데이터를 처리하고 메모리(120)에 저장하며, 메모리(120)에 저장된 데이터를 관리한다.
제 1 코어(COREx)(141) 기 설정된 데이터 테이블을 생성하여 메모리(120)의 지정된 주소(위치)에 저장한다. 제 1 코어(COREx)(141)는 자동차의 복수의 데이터 중 차량상태 데이터(121)를 데이터 테이블로 생성하여 메모리(120)에 저장한다.
제 1 코어(COREx)(141)는 메모리(120)에 저장된 차량상태 데이터(121)를 읽어 버퍼(미도시)에 저장한다.
제 1 코어(COREx)(141)는 일정시간 간격으로 차량상태 데이터(121)를 읽어 버퍼에 저장하는 것을 반복하여 버퍼에 저장되는 데이터를 갱신한다.
제 2 코어(COREy)(142)는 새로 할당된, 자동차의 상태 모니터링을 위한 모니터링 전용 코어이다.
제 2 코어(COREy)(142)는 제2 통신모듈(15)의 이더넷 물리 계층을 이용하여 모니터링장치(20)로부터의 데이터 요청을 처리한다.
제 2 코어(COREy)(142)는 제 1 코어(COREx)(141)에 의해 갱신되는 버퍼의 차량상태 데이터(121), 즉 복사된 데이터(182)를 호출하여 모니터링장치(20)로 전송한다.
도 3 은 도 1 의 멀티코어 프로세서의 데이터 처리 흐름을 설명하는 데 참조되는 도이다.
도 3에 도시된 바와 같이, 제 1 코어(COREx)(141)는 메모리(120)의 차량상태 데이터(121)를 읽어 버퍼에 저장한다.
제 1 코어(COREx)(141)는 기 설정된 데이터 테이블에 오리지널 데이터(181)와 복사된 데이터(182)를 저장한다.
제 1 코어(COREx)(141)는 주기적으로 차량상태 데이터(121)를 읽어 복사된 데이터(182)로 저장하는 것을 반복하여, 데이터를 갱신한다.
제 2 코어(COREy)(142)는 수신된 데이터요청에 대하여 데이터 리스트 및 반복데이터를 확인한다. 예를 들어 RPM, T Coolant, Speed 및 Z값에 대한 데이터가 요청될 수 있다.
제 2 코어(COREy)(142)는 요청된 데이터를 획득하기 위해, 제 1 코어(COREx)(141)의 복사된 데이터(182)에 접속하여 데이터를 읽어오고(183), 복사된 데이터(182)를 버퍼(184)에 저장한다.
제 2 코어(COREy)(142)는 이더넷을 통해 버퍼에 저장된 데이터(184)를 차량상태 데이터로써 모니터링장치(20)로 전송한다.
제 2 코어(COREy)(142)는 요청된 데이터를 획득하기 위해 제 1 코어(COREx)(141)의 복사된 데이터(182)에 반복적으로 접속하고 읽어온 데이터를 모니터링장치(20)로 반복적으로 전송한다.
제 2 코어(COREy)(142)는 데이터 요청에 대한 전송이 완료되면 다음 데이터 요청을 처리한다.
도 4 는 본 발명의 일 실시예에 따른 멀티코어 프로세서의 제 1 코어(COREx)의 동작방법이 도시된 순서도이다.
도 4에 도시된 바와 같이, 제 1 코어(COREx)(141)는 자동차의 데이터를 메모리(120)에 저장한다.
제 1 코어(COREx)(141)는 메모리(120)에 저장되는 차량상태 데이터(121)에 접속하여 데이터를 읽어 버퍼에 저장한다(S310).
제 1 코어(COREx)(141)는 복사된 데이터(182)에 읽어온 차량상태 데이터를 저장하고 일정시간 간격으로 반복적으로 읽어 데이터 케이블을 갱신한다(S320).
도 5 는 본 발명의 일 실시예에 따른 멀티코어 프로세서 중 제 2 코어(COREy)의 동작방법이 도시된 순서도이다.
도 5에 도시된 바와 같이, 제 2 코어(COREy)(142)는 멀티코어 프로세서(uC)(110)에 의해 자동차의 상태를 모니터링하기 위한 모니터링 전용코어로 할당되어 모니터링장치(20)의 차량상태 데이터에 대한 요청을 처리한다.
제 2 코어(COREy)(142)는 모니터링장치(20)로부터 데이터 요청을 수신한다(S410).
제 2 코어(COREy)(142)는 이더넷 물리 계층을 이용하여 모니터링장치(20)로부터 데이터 요청을 수신하고, 그에 대한 데이터를 전송한다.
제 2 코어(COREy)(142)는 요청된 데이터 리스트를 확인하고, 데이터를 획득하기 위해 제 1 코어(COREx)(141)에 접속한다. 제 2 코어(COREy)(142)는 지정된 주소를 기반으로 제 1 코어(COREx)(141)에 접속한다(S420).
제 2 코어(COREy)(142)는 요청되는 차량상태 데이터가 일정 범위 내로 한정되어 있고, 데이터는 메모리 중 미리 등록된 주소에 저장되므로 데이터 리스트를 바탕으로 등록된 주소를 이용하여 제 1 코어(COREx)(141)에 접속할 수 있다.
제 2 코어(COREy)(142)는 제 1 코어(COREx)(141)에 의해 갱신되는 데이터, 즉 복사된 데이터(182)를 읽어 버퍼에 저장한다(S430). 제 2 코어(COREy)(142)는 앞서 설명한 바와 같이 전송할 데이터(184)로써 버퍼에 저장한다.
제 2 코어(COREy)(142)는 전송한 데이터(184)를 이더넷 물리 계층을 이용하여 모니터링장치(20)로 전송한다(S440).
제 2 코어(COREy)(142)는 모니터링이 종료되는지 여부를 확인하고(S450) 모니터링을 지속하는 경우, 최소 반복이 종료되었는지 확인한다(S460). 제 2 코어(COREy)는 반복데이터의 최소 반복 횟수에 도달하면 종료되는 것으로 판단할 수 있다.
제 2 코어(COREy)(142)는 현재의 데이터 요청에 포함된 반복데이터의 최소 반복이 종료된 경우, 다음 데이터 요청을 처리한다(S410).
한편, 제 2 코어(COREy)(142)는 현재의 데이터 요청에 포함된 반복데이터의 최소 반복이 종료되지 않은 경우 데이터 요청의 반복데이터를 처리한다(S420 내지 S460).
제 2 코어(COREy)(142)는 요청된 데이터의 반복데이터를 처리하기 위하여 제 1 코어(COREx)(141)에 반복적으로 접속하여 데이터를 읽어 전송할 데이터(184)에 저장하고, 이를 이더넷을 통해 모니터링장치(20)로 전송한다.
제 2 코어(COREy)(142)는 모니터링이 종료되면, 데이터 요청에 따른 반복작업을 종료한다.
현재의 데이터 요청에 포함된 반복데이터의 최소 반복이 종료된 경우, 다음 데이터 요청을 처리한다(S410).
따라서 본 발명은 업이 할당되지 않은 어느 하나의 코어를 모니터링데이터를 처리하기 위한 전용 코어로 할당하여 요청되는 데이터 요청을 효과적으로 처리할 수 있다.
또한, 본 발명은 모니터링 데이터, 즉 차량상태 데이터의 전송에 CAN통신 외에 이더넷 방식을 이용하여 모니터링장치와 통신하고 데이터를 전송하여 CAN통신의 부하를 감소시킬 수 있다.
본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며 당해 기술이 속하는 기술분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 진정한 기술적 보호범위는 아래의 특허청구범위에 의하여 정해져야할 것이다.
10: 자동차 20: 모니터링장치
110: 멀티코어 프로세서 120: 메모리
130: 제 1 통신모듈
141: 제 1 코어(COREx) 142: 제 2 코어(COREy)
150: 제 2 통신모듈

Claims (15)

  1. 자동차의 동작을 제어하는 멀티코어 프로세서;
    상기 자동차의 데이터가 저장되는 메모리;
    상기 자동차 내 데이터를 송수신하는 제 1 통신모듈; 및
    모니터링장치로부터 데이터 요청을 수신하고 상기 멀티코어 프로세서의 제어명령에 따라 상기 모니터링장치로 요청된 데이터를 전송하는 제 2 통신모듈; 을 포함하고,
    상기 멀티코어 프로세서는, 복수의 코어 중 어느 하나를 상기 모니터링장치의 요청을 처리하기 위한 모니터링 전용코어로 할당하는 것을 특징으로 하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치.
  2. 제 1 항에 있어서,
    상기 멀티코어 프로세서는,
    상기 자동차의 데이터의 입출력을 제어하고 상기 메모리에 차량상태 데이터를 저장하는 제 1 코어; 및
    상기 모니터링장치의 데이터 요청을 처리하는 상기 모니터링 전용코어인 제 2 코어; 를 포함하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치.
  3. 제 2 항에 있어서,
    상기 제 2 코어는, 상기 제 1 코어에 접속하여 상기 차량상태 데이터를 읽어 버퍼에 저장하고, 상기 버퍼에 저장된 상기 차량상태 데이터를 상기 제 2 통신모듈을 통해 상기 모니터링장치로 전송하는 것을 특징으로 하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치.
  4. 제 3 항에 있어서,
    상기 제 2 코어는 상기 데이터 요청에 대응하여, 요청된 데이터 리스트 및 반복데이터를 확인하고, 요청된 데이터의 지정된 주소를 이용하여 상기 제 1 코어에 접속하는 것을 특징으로 하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치.
  5. 제 2 항에 있어서,
    상기 제 2 코어는 상기 데이터 요청에 따라, 상기 제 1 코어에 접속하여 수신된 데이터를 상기 모니터링장치로 전송하는 동작을 반복적으로 수행하고, 최소 반복횟수에 도달하면 다음 데이터 요청을 처리하는 것을 특징으로 하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치.
  6. 제 2 항에 있어서,
    상기 제 1 코어는 상기 메모리에 저장된 상기 차량상태 데이터를 읽어 버퍼에 저장하는 것을 특징으로 하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치.
  7. 제 6 항에 있어서,
    상기 제 2 코어는 일정시간 간격으로 상기 메모리에 접속하여 상기 버퍼에 저장된 상기 차량상태 데이터를 갱신하는 것을 특징으로 하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치.
  8. 제 2 항에 있어서,
    상기 제 1 통신모듈은 CAN(Communication Area Network) 통신 모듈이고,
    상기 제 2 통신모듈은 이더넷(Ethernet) 통신 모듈인 것을 특징으로 하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치.
  9. 제 8 항에 있어서,
    상기 제 2 코어는 상기 제 2 통신모듈의 이더넷 물리 계층(Ethernet Physical Layer)을 이용하여 상기 모니터링장치와 통신하는 것을 특징으로 하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치.
  10. 멀티코어 프로세서의 제 1 코어가 차량 내 데이터 송수신을 처리하는 제 1 통신모듈을 통해 자동차의 상태에 대한 데이터를 메모리에 저장하는 단계;
    상기 멀티코어 프로세서가 복수의 코어 중 제 2 코어를 모니터링 전용코어로 할당하는 단계;
    모니터링장치로부터 데이터 요청을 수신하는 단계;
    상기 제 2 코어가 상기 데이터 요청에 따른 데이터 리스트를 확인하는 단계;
    상기 제 2 코어가 상기 제 1 코어에 접속하여 차량상태 데이터를 읽어 저장하는 단계; 및
    상기 제 2 코어가 상기 제 1 코어로부터 읽어 저장한 상기 차량상태 데이터를 상기 모니터링장치로 전송하는 단계; 를 포함하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 방법.
  11. 제 10 항에 있어서,
    상기 차량상태 데이터를 읽어 저장하는 단계는,
    상기 제 2 코어가, 요청된 데이터 리스트 및 반복데이터를 확인하고, 요청된 데이터의 지정된 주소를 이용하여 상기 제 1 코어에 접속하는 것을 특징으로 하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 방법.
  12. 제 11 항에 있어서,
    상기 차량상태 데이터를 읽어 저장하는 단계는,
    상기 데이터 요청에 대응하여, 상기 제 2 코어가 상기 제 1 코어에 접속하여 수신된 데이터를 상기 모니터링장치로 전송하는 동작을 반복하는 단계; 를 더 포함하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 방법.
  13. 제 12 항에 있어서,
    상기 차량상태 데이터를 읽어 저장하는 단계는,
    상기 제 2 코어가, 작업을 반복하여 수행하는 중, 그 횟수가 최소 반복횟수에 도달하면 반복 동작을 중지하는 단계; 및
    다음 데이터 요청을 처리하는 단계; 를 더 포함하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 방법.
  14. 제 10 항에 있어서,
    상기 차량상태 데이터를 읽어 저장하는 단계 전,
    상기 제 1 코어가 상기 일정시간 간격으로 상기 메모리에 접속하는 단계;
    상기 제 1 코어가 상기 메모리로부터 상기 차량상태 데이터를 읽어 버퍼에 복사하는 단계; 및
    일정시간 간격으로 상기 제 1 코어가 상기 차량상태 데이터를 상기 버퍼로 수신하여 데이터를 갱신하는 단계; 를 더 포함하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 방법.
  15. 제 12 항에 있어서,
    상기 모니터링장치로 전송하는 단계는,
    상기 제 2 코어가 상기 제 2 통신모듈의 이더넷 물리 계층(Ethernet Physical Layer)을 이용하여 상기 모니터링장치와 통신하는 것을 특징으로 하는 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 방법.
KR1020220072227A 2022-06-14 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 그 방법 KR102709503B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220072227A KR102709503B1 (ko) 2022-06-14 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220072227A KR102709503B1 (ko) 2022-06-14 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20230171725A true KR20230171725A (ko) 2023-12-21
KR102709503B1 KR102709503B1 (ko) 2024-09-24

Family

ID=

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102041846B1 (ko) 2017-11-14 2019-12-10 (주)세코인터페이스 Obd-ⅱ를 활용한 차량 can 데이터 자동 수집 단말기와 수집 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102041846B1 (ko) 2017-11-14 2019-12-10 (주)세코인터페이스 Obd-ⅱ를 활용한 차량 can 데이터 자동 수집 단말기와 수집 방법

Similar Documents

Publication Publication Date Title
US20190340116A1 (en) Shared backup unit and control system
CN111399884A (zh) 一种车辆组件的升级方法、装置及电子设备
US11360698B2 (en) Electronic control unit for vehicle and method of writing data
CN108279916B (zh) 电子控制单元程序更新方法和装置
EP2770432B1 (en) Electronic control device for automobile and data communication method
US8255108B2 (en) Dynamic file system creation for scan tools
US20190349432A1 (en) Vehicular communication device
CN111176695A (zh) 一种车辆ecu配置的方法、服务器及终端
CN115314416B (zh) 网卡状态自动检测方法、装置、电子设备及存储介质
KR102709503B1 (ko) 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 그 방법
KR20230171725A (ko) 멀티코어 프로세서를 이용하여 자동차의 상태를 모니터링하는 제어장치 및 그 방법
CN114090027A (zh) 一种固件刷写方法及装置
US11836045B2 (en) Electronic control device having a non-volatile memory with a reserved area storing failure data
US12008256B2 (en) Memory system with accessible storage region to gateway
US11698735B2 (en) Common storage management device and common storage management method
JP2023170662A (ja) 電子制御装置、ソフトウェア更新方法、ソフトウェア更新プログラム、及び電子制御システム
CN114780114A (zh) 固件升级方法、系统、车辆及存储介质
CN109933292B (zh) 存储器命令处理方法、终端及存储介质
CN113220317A (zh) 车辆控制器并行刷新方法、装置、计算机设备和存储介质
JP2003280902A (ja) マイコンロジック開発システム及びそのプログラム
CN110677466A (zh) 应用程序的下载方法、装置、网关和存储介质
US20240036943A1 (en) Vehicle control module allocation
JP2017228319A (ja) 自動車用電子制御装置
US20240028326A1 (en) Vehicular electronic control device, rewriting program, and data structure
CN118377365B (zh) 基于核间通信的数据处理方法、装置、芯片及电子设备

Legal Events

Date Code Title Description
E902 Notification of reason for refusal