KR20150110860A - 차량의 펌웨어 업데이트 장치 및 그 방법 - Google Patents

차량의 펌웨어 업데이트 장치 및 그 방법 Download PDF

Info

Publication number
KR20150110860A
KR20150110860A KR1020140032699A KR20140032699A KR20150110860A KR 20150110860 A KR20150110860 A KR 20150110860A KR 1020140032699 A KR1020140032699 A KR 1020140032699A KR 20140032699 A KR20140032699 A KR 20140032699A KR 20150110860 A KR20150110860 A KR 20150110860A
Authority
KR
South Korea
Prior art keywords
firmware
storage unit
firmware data
stored
new
Prior art date
Application number
KR1020140032699A
Other languages
English (en)
Inventor
최문식
Original Assignee
엘에스산전 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘에스산전 주식회사 filed Critical 엘에스산전 주식회사
Priority to KR1020140032699A priority Critical patent/KR20150110860A/ko
Publication of KR20150110860A publication Critical patent/KR20150110860A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 차량의 펌웨어 업데이트 장치 및 방법에 관한 것이다.
본 발명의 실시 예에 따른 펌웨어 업데이트 장치는 펌웨어 데이터를 수신하는 통신부; 상기 통신부에서 수신하는 신규 펌웨어 데이터를 우선 저장하고, 제어부의 제어에 기초하여 상기 신규 펌웨어 데이터의 실행 결과에 따라 상기 펌웨어 데이터를 제2저장부로 출력하는 제1저장부; 제어부의 제어에 따라 상기 제1저장부에 저장된 펌웨어 데이터를 저장하는 제2저장부; 통신부를 통하여 수신되는 신규 펌웨어 데이터를 감지하고, 상기 펌웨어 데이터를 상기 제1저장부에 저장하고, 상기 저장된 펌웨어 데이터를 실행하고, 실행 결과에 따라 상기 펌웨어 데이터를 상기 제2저장부에 저장하는 제어부;를 포함한다.

Description

차량의 펌웨어 업데이트 장치 및 그 방법{Apparatus and method for firmware updating of vehicle}
본 발명은 차량의 펌웨어 업데이트를 위한 장치 및 방법에 관한 것이다.
차량 내부에는 컨트롤러를 가지고 있는 다수의 ECU(Electric Control Unit)들이 내장되어 있다. 각 ECU들은 차량 내부의 전장부들에서 문제 또는 동자 오류가 감지되는 경우 진단 정보를 내부적으로 저장하게 된다. 상기 저장되는 정보는 추후 차량에 문제가 발생하는 경우 중요한 정보로 사용될 수 있다.
ECU는 그 기능 및 동작을 개선하기 위하여 펌웨어의 업데이트가 자주 발생하며 이를 위해 차량용 진단 포트인 OBD(On Board Diagnostics)를 이용하여 업데이트를 수행할 수 있다.
도 1은 종래의 펌웨어 업데이트 동작을 설명하기 위한 동작 흐름도이다.
도 1을 참조하면, 종래의 차량용 ECU는 대기모드 또는 특정 동작 모드 수행 중(S11) 펌웨어 업데이트 요청 신호가 수신되는지를 확인할 수 있다.(S12)
ECU는 펌웨어 업데이트 요청이 수신되면, 롬(제1저장부)에 상기 수신되는 펌웨어를 저장할 수 있다.(S13)
ECU는 펌웨어 저장 중 장치에 전원공급이 차단되거나 불특정한 오류가 발생하게 되는지를 확인하고(S14) 장치에 오류가 감지되면 펌웨어 저장이 중지(강제종료)되고, 오류 알림이 발생할 수 있다.(S15)
반면, 펌웨어 업데이트가 완료되는지를 판단하고(S16) 펌웨어 업데이트가 완료되면 장치를 재부팅하게 된다.(S17) 재부팅이 완료된 장치의 ECU는 제1저장부에 저장된 펌웨어를 제2저장부로 업로드하고(S18) 상기 업로드된 펌웨어로 장치를 구동할 수 있다.(S19)
즉, ECU는 펌웨어 업데이트를 수행할 때 전원 공급이 차단되거나 일시적인 오동작이 발생하는 경우 업데이트의 오류가 발생하게 되고, 그에 따른 펌웨어 업데이트가 정상적으로 종료되지 못하는 상태가 발생한다. 또한, 펌웨어 업데이트가 정상적으로 완료되더라도 장치를 재부팅하도록 해야 새로운 펌웨어가 적용되는 장치의 구동이 가능하다.
따라서 종래의 경우 펌웨어 업데이트 수행 중 불시에 발생하는 장치의 오류에 의해 정상적인 펌웨어 업데이트가 실행되지 않는 경우 장치가 오동작하거나 재부팅에 의한 실행중인 어플리케이션에 의한 데이터 손실이 발생할 수 있다.
본 발명은 차량의 펌웨어를 업데이트하기 위하여 안정적인고, 신뢰성 높은 펌웨어 업데이트를 실행할 수 있도록 하기 위한 차량의 펌웨어 업데이트 장치 및 방법을 제공한다.
본 발명의 실시 예에 따른 펌웨어 업데이트 장치는 펌웨어 데이터를 수신하는 통신부; 상기 통신부에서 수신하는 신규 펌웨어 데이터를 우선 저장하고, 제어부의 제어에 기초하여 상기 신규 펌웨어 데이터의 실행 결과에 따라 상기 펌웨어 데이터를 제2저장부로 출력하는 제1저장부; 제어부의 제어에 따라 상기 제1저장부에 저장된 펌웨어 데이터를 저장하는 제2저장부; 통신부를 통하여 수신되는 신규 펌웨어 데이터를 감지하고, 상기 펌웨어 데이터를 상기 제1저장부에 저장하고, 상기 저장된 펌웨어 데이터를 실행하고, 실행 결과에 따라 상기 펌웨어 데이터를 상기 제2저장부에 저장하는 제어부;를 포함한다.
또한 상기 제어부는 상기 제1저장부에 저장되는 신규 펌웨어 데이터는 저장이 완료되면, 시작 어드레스로 이동할 수 있다.
또한, 상기 제어부는 상기 제1저장부에 저장되는 신규 펌웨어 데이터의 저장이 완료되면, 기 실행중인 펌웨어의 실행을 중지하고, 상기 신규 펌웨어 데이터를 실행할 수 있다.
또한, 상기 제어부는 상기 제1저장부에 저장된 신규 펌웨어 데이터를 실행하는 경우 실행 오류가 감지되면, 상기 실행이 중지된 기 실행된 펌웨어 데이터를 재실행할 수 있다.
또한, 상기 제어부는 상기 제2저장부에 상기 제1저장부에 저장된 신규 펌웨어 데이터를 저장하는 경우 기 저장된 펌웨어 데이터와 상이한 어드레스에 저장할 수 있다.
또한, 상기 제1저장부는 상기 수신되는 신규 펌웨어 데이터를 일시 저장하기 위한 저장영역을 할당하고, 상기 저장 공간에 저장된 신규 펌웨어 데이터는 장치의 전원이 오프되면 삭제될 수 있다.
본 발명의 차량의 펌웨어 업데이트 장치 및 방법에 따르면, 다운로드되는 펌웨어의 저장 공간을 확보하고 그에 따른 장치가 오동작 시에도 안정적이고, 신뢰성 높은 펌웨어를 업데이트할 수 있는 효과를 가지고 있다.
또한 본 발명의 실시 예에 따른 차량의 펌웨어 업데이트 장치 및 방법에 따르면, 다운로드되는 펌웨어를 실행할 경우 데이터 손실을 최소화하고, 그에 따른 장치의 부하를 저감할 수 있도록 하는 효과를 가지고 있다.
도 1은 종래의 펌웨어 업데이트 동작을 설명하기 위한 동작 흐름도이다.
도 2는 본 발명의 실시 예가 적용되는 차량의 펌웨어 업데이트 장치의 블록 구성도이다.
도 3은 본 발명의 실시 예에 따른 차량의 펌웨어 업데이트 동작 흐름도이다.
이하 도면을 참조하여 본 발명의 실시 예를 상세히 설명한다.
도 2는 본 발명의 실시 예가 적용되는 차량의 펌웨어 업데이트 장치의 블록 구성도이다.
도 2를 참조하면, 본 발명의 실시 예에 따른 펌웨어 업데이트 장치(100)는 통신부(110), 저장부(120) 및 제어부(130)를 포함하여 구성될 수 있다.
통신부(110)는 차량의 전장부에서 발생 및 수집되는 캔 통신 포맷의 데이터를 외부장치로 전송하거나 외부 장치로부터 펌웨어 데이터를 수신할 수 있다. 상기 통신부(110)는 캔 통신 모듈을 포함할 수 있으며, 상기 캔 통신 모듈을 통하여 펌웨어를 저장하거나, 차량의 데이터를 관리하기 위한 장치(예를 들어 PC등)와 통신을 수행할 수 있다. 통신부(110)는 펌웨어를 업데이트하기 위한 장치들과 무선 또는 유선 등 다양한 형태로 연결되도록 하는 모듈을 포함할 수 있다.
저장부(120)는 외부장치로부터 수신되는 펌웨어를 저장하고, 제어부(130)의 제어 신호에 기초하여 저장된 펌웨어를 리드하여 출력 할 수 있다.
본 발명의 실시 예에 따른 저장부(120)는 복수의 저장부를 구비할 수 있다. 본 발명의 실시 예에서는 제1저장부(121)와 제2저장부(122)를 포함하는 구성을 예를 들어 설명한다. 상기 제1저장부(121)는 RAM일 수 있으며, 제2저장부(122)는 ROM일 수 있다.
제1저장부(121)는 제2저장부(122)에 저장된 데이터를 리드하여 차량의 구동시 요구되는 다양한 데이터를 일시 저장할 수 있다. 제1저장부(121)는 장치의 구동 시 에 제2저장부(122)에 저장된 데이터를 리드하여 전원이 오프되기 전 또는 사용자 요청에 의해 삭제 되기 전까지 저장할 수 있다. 제1저장부(121)는 본 발명의 실시 예에 따라 외부장치로부터 수신되는 펌웨어를 일시 저장하기 위한 저장 영역을 별도로 할당할 수 있다. 제어부(130)는 상기 일시 저장된 펌웨어를 이용하여 장치를 구동할 수 있다. 또한 제1저장부(121)는 제어부(130)의 제어에 의하여 신규 펌웨어를 적용하여 장치를 구동하고, 상기 구동에 오류가 감지되지 않으면, 신규 펌웨어를 제2저장부(122)로 출력하여 제2저장부(122)에 저장되도록 할 수 있다. 또한 상기 제1저장부(121)의 소정 어드레스에 저장되는 펌웨어 데이터는 장치의 전원이 오프되면 삭제될 수 있다.
제2저장부(122)는 차량의 제어부(130)의 구동 및 다양한 장치의 구동을 위해 요구되는 데이터 및 펌웨어를 저장할 수 있다. 외부로부터 수신되는 펌웨어 데이터를 저장할 수 있다. 상기 제2저장부(122)는 우선적으로 제1저장부(121)에 저장된 신규 펌웨어를 제어부(130)에 의해 실행된 결과에 따라 상기 신규 펌웨어를 저장 할 수 있다. 제2저장부(122)는 제1저장부(121)로부터 이동하여 저장된 신규 펌웨어에 대하여 재부팅 시 제1저장부(121)로 출력되도록 할 수 있다. 또한, 제2저장부(122)는 기 저장된 펌웨어 데이터와 신규한 펌웨어 데이터에 대해 각각 상이한 어드레스에 저장할 수 있다.
제어부(130)는 외부장치로부터 펌웨어 업데이트 요청 여부를 감지하고, 펌웨어 데이터를 수신하여 제1 저장부(121) 및 제2저장부(122)에 저장되도록 제어할 수 있다. 제어부(130)는 신규 펌웨어를 제1저장부(121)에 저장하고, 상기 제1저장부(121)에 저장된 신규 펌웨어를 실행할 수 있다. 상기 신규 펌웨어의 실행에 따른 오류 발생 여부를 감지하고, 오류가 발생하지 않는 정상 상태로 실행되는 경우 상기 신규 펌웨어를 제2저장부(122)로 출력하여, 저장되도록 할 수 있다. 또한 제어부(130)는 전원이 오프되어 온되는 경우(재부팅) 시 상기 제2저장부(122)에 저장된 신규 펌웨어를 제1저정부(121)로 리드하여 펌웨어가 실행될 수 있도록 할 수 있다.
상기한 구성을 기초하여 본 발명의 실시 예에 따른 펌웨어 업데이트 동작에 대해 도 3을 참조하여 상세히 설명한다.
도 3은 본 발명의 실시 예에 따른 차량의 펌웨어 업데이트 동작 흐름도이다.
도 3을 참조하면, 본 발명의 실시 예에 따른 제어부(130)는 대기모드 또는 특정 동작 모드 수행 중(S302) 기 설정된 펌웨어 업데이트 주기 또는 외부로부터 펌웨어 업데이트 요청 신호가 감지되는지를 판단할 수 있다.(S304)
제어부(130)는 상기 펌웨어 업데이트 요청 신호 또는 펌웨어 업데이트 주기가 감지되면 통신부(110)를 통하여 외부 장치 또는 외부 서버 등 신규 업데이트를 제공하는 장치로부터 신규 펌웨어를 수신(다운로드)할 수 있다,(S306)
제어부(130)는 수신되는 신규 펌웨어는 제1저장부(121)에 저장할 수 있다,(S308)
제어부(130)는 상기 제1저장부(121)에 저장되는 신규 펌웨어를 시작 어드레스로 이동하고, 실행 중인 (기존) 펌웨어의 실행을 중지할 수 있다,(S310)
제어부(130)는 기 실행 중인 펌웨어의 실행이 중지되면 시작 어드레스로 이동한 신규 펌웨어를 실행할 수 있다.(S312)
제어부(130)는 상기 실행되는 신규 펌웨어의 실행 오류가 감지되지 않는 정상 동작인지를 판단할 수 있다.(S314)
제어부(130)는 상기 실행되는 신규 펌웨어가 정상 동작 하지 않는 경우 기존 펌웨어를 재 실행하고, 펌웨어 업데이트를 초기 동작부터 재 실행할 수 있다.(S316)
반면, 제어부(130)는 상기 신규 펌웨어의 실행이 정상적으로 동작하는 경우 제1저장부(121)에 저장된 신규 펌웨어를 제2저장부(122)로 출력(복사)하여 저장할 수 있다. 즉, 제어부(130)는 신규 펌웨어를 적용하기 위한 장치 재부팅을 실행하지 않고, 제1저장부(121)에 우선 저장되는 신규 펌웨어를 실행하고 정상 동작 여부에 따라 제2저장부(122)로 저장되도록 할 수 있다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다.
따라서, 본 발명에 개시된 실시 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다.
본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (6)

  1. 펌웨어 데이터를 수신하는 통신부;
    상기 통신부에서 수신하는 신규 펌웨어 데이터를 우선 저장하고, 제어부의 제어에 기초하여 상기 신규 펌웨어 데이터의 실행 결과에 따라 상기 펌웨어 데이터를 제2저장부로 출력하는 제1저장부;
    제어부의 제어에 따라 상기 제1저장부에 저장된 펌웨어 데이터를 저장하는 제2저장부;
    통신부를 통하여 수신되는 신규 펌웨어 데이터를 감지하고, 상기 펌웨어 데이터를 상기 제1저장부에 저장하고, 상기 저장된 펌웨어 데이터를 실행하고, 실행 결과에 따라 상기 펌웨어 데이터를 상기 제2저장부에 저장하는 제어부;를 포함하는
    펌웨어 업데이트 장치.
  2. 제1항에 있어서,
    상기 제어부는
    상기 제1저장부에 저장되는 신규 펌웨어 데이터는 저장이 완료되면, 시작 어드레스로 이동하는
    펌웨어 업데이트 장치.
  3. 제2항에 있어서,
    상기 제어부는
    상기 제1저장부에 저장되는 신규 펌웨어 데이터의 저장이 완료되면, 기 실행중인 펌웨어의 실행을 중지하고, 상기 신규 펌웨어 데이터를 실행하는
    펌웨어 업데이트 장치.
  4. 제3항에 있어서,
    상기 제어부는
    상기 제1저장부에 저장된 신규 펌웨어 데이터를 실행하는 경우 실행 오류가 감지되면, 상기 실행이 중지된 기 실행된 펌웨어 데이터를 재실행하는
    펌웨어 업데이트 장치.
  5. 제1항에 있어서,
    상기 제어부는
    상기 제2저장부에 상기 제1저장부에 저장된 신규 펌웨어 데이터를 저장하는 경우 기 저장된 펌웨어 데이터와 상이한 어드레스에 저장하는
    펌웨어 업데이트 장치.
  6. 제1항에 있어서,
    상기 제1저장부는
    상기 수신되는 신규 펌웨어 데이터를 일시 저장하기 위한 저장영역을 할당하고, 상기 저장 공간에 저장된 신규 펌웨어 데이터는 장치의 전원이 오프되면 삭제되는
    펌웨어 업데이트 장치.
KR1020140032699A 2014-03-20 2014-03-20 차량의 펌웨어 업데이트 장치 및 그 방법 KR20150110860A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140032699A KR20150110860A (ko) 2014-03-20 2014-03-20 차량의 펌웨어 업데이트 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140032699A KR20150110860A (ko) 2014-03-20 2014-03-20 차량의 펌웨어 업데이트 장치 및 그 방법

Publications (1)

Publication Number Publication Date
KR20150110860A true KR20150110860A (ko) 2015-10-05

Family

ID=54344202

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140032699A KR20150110860A (ko) 2014-03-20 2014-03-20 차량의 펌웨어 업데이트 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR20150110860A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101645919B1 (ko) * 2016-02-26 2016-08-04 이앤에이치(주) 전류센서를 이용한 조명장치 제어시스템
KR101702396B1 (ko) 2016-07-20 2017-02-03 이앤에이치(주) 무선 rf통신을 이용한 스마트 조명제어시스템
US10897572B2 (en) 2016-10-25 2021-01-19 Toyota Jidosha Kabushiki Kaisha Imaging and display device for vehicle and recording medium thereof for switching an angle of view of a captured image

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101645919B1 (ko) * 2016-02-26 2016-08-04 이앤에이치(주) 전류센서를 이용한 조명장치 제어시스템
KR101702396B1 (ko) 2016-07-20 2017-02-03 이앤에이치(주) 무선 rf통신을 이용한 스마트 조명제어시스템
US10897572B2 (en) 2016-10-25 2021-01-19 Toyota Jidosha Kabushiki Kaisha Imaging and display device for vehicle and recording medium thereof for switching an angle of view of a captured image

Similar Documents

Publication Publication Date Title
CN106598632B (zh) 一种光模块的固件升级方法及装置
US9110843B2 (en) Rack and method thereof for simultaneously updating basic input output systems
US9563442B2 (en) Baseboard management controller and method of loading firmware
US11433718B2 (en) Upgrading method and apparatus for tire pressure monitoring module and tire pressure sensor
US20160054927A1 (en) System management controller and method of configuration file backup and recovery
CN103309709A (zh) 一种固件升级方法、装置及通信设备
CN104820609A (zh) 一种嵌入式***及其升级维护方法
CN113094072A (zh) 车辆升级方法、装置、电子装置及存储介质
CN110580235A (zh) 一种sas扩展器通信方法及装置
KR20150110860A (ko) 차량의 펌웨어 업데이트 장치 및 그 방법
CN107220009B (zh) 一种不同厂家raid卡状态信息的统一获取方法和装置
US11449329B2 (en) Vehicle control device and program update system
CN103955416A (zh) 一种硬盘管理方法、装置和***
JP5298185B2 (ja) I2c監視シーケンシャルリードデータ記憶装置
CN109697077B (zh) 硬盘固件启动方法、装置及设备
US9058264B2 (en) Method for repairing communication abnormality between data card and host and data card
US11435950B2 (en) Data rewriting method and data rewriting system
CN113960991A (zh) 车辆故障诊断***、方法、装置、片上***芯片及车辆
CN111953803A (zh) Bmc启动方法、设备、***及存储介质
US9529581B2 (en) Circuit and method for writing program codes of basic input/output system
KR102256988B1 (ko) 복수개의 모듈들을 구비하는 차량 기기의 업데이트 장치 및 방법
CN111386518B (zh) 经由电子设备的操作***修复
KR100998565B1 (ko) 로봇 응용 프로그램 실행 방법 및 로봇 제어기 부트로더
TWI556171B (zh) 主機板及開機的方法
CN104202207A (zh) 一种手持总线调试终端及其方法

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination