KR20200089482A - 메모리, 상기 메모리의 에러 복구 방법, 및 상기 메모리를 포함하는 배터리 장치 - Google Patents

메모리, 상기 메모리의 에러 복구 방법, 및 상기 메모리를 포함하는 배터리 장치 Download PDF

Info

Publication number
KR20200089482A
KR20200089482A KR1020190006275A KR20190006275A KR20200089482A KR 20200089482 A KR20200089482 A KR 20200089482A KR 1020190006275 A KR1020190006275 A KR 1020190006275A KR 20190006275 A KR20190006275 A KR 20190006275A KR 20200089482 A KR20200089482 A KR 20200089482A
Authority
KR
South Korea
Prior art keywords
fbl
area
binary code
bum
image
Prior art date
Application number
KR1020190006275A
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 KR1020190006275A priority Critical patent/KR20200089482A/ko
Priority to PCT/KR2020/000875 priority patent/WO2020149703A1/ko
Priority to JP2021516726A priority patent/JP7205982B2/ja
Priority to EP20741742.9A priority patent/EP3842945A4/en
Priority to CN202080005617.6A priority patent/CN112805689B/zh
Priority to US17/282,804 priority patent/US11429484B2/en
Publication of KR20200089482A publication Critical patent/KR20200089482A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • G06F11/104Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error using arithmetic codes, i.e. codes which are preserved during operation, e.g. modulo 9 or 11 check
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Stored Programmes (AREA)
  • Secondary Cells (AREA)

Abstract

메모리는, 적어도 하나의 어플리케이션을 저장하는 어플리케이션 영역, 상기 어플리케이션 영역을 업데이트하기 위한 코드를 포함하는 FBL(Flash BootLoader) 영역, 및 상기 FBL 영역의 결함이 감지된 후 활성화되어, 상기 FBL 영역을 삭제하고, FBL 이미지의 이진(binary) 코드 정보를 상기 FBL 영역에 기입한 후 상기 FBL 영역에 기입된 이진 코드가 상기 FBL 이미지의 이진 코드 정보와 일치하는지 판단하며, 두 이진 코드 정보가 일치하면 비활성화되는 BUM 모듈을 포함할 수 있다. 상기 FBL 이미지 및 상기 BUM 모듈은 상기 어플리케이션 영역에 위치할 수 있다.

Description

메모리, 상기 메모리의 에러 복구 방법, 및 상기 메모리를 포함하는 배터리 장치{MEMORY, ERROR RESTORATION METHOD OF THE MEMORY, AND BATTERY DEVICE COMPRISING THE MEMORY}
본 개시는 메모리, 상기 메모리의 에러 복구 방법, 및 상기 메모리를 포함하는 배터리 장치에 관한 것이다.
메모리에 저장된 소프트웨어의 구조는 어플리케이션 영역과 플래시 부트로더(Flash BootLoader, FBL) 영역으로 구성된다.
어플리케이션의 영역의 코드가 변질(corruption)되거나, 결함을 포함하는 경우, FBL 영역의 코드를 통해 어플리케이션 영역은 업데이트 또는 재프로그래밍(reprogramming) 될 수 있다.
그러나, FBL 영역에 결함이 있을 경우, FBL 영역의 결함을 찾기가 어려울 뿐만 아니라, 어플리케이션 영역의 업데이터 또는 재프로그래밍이 불가능하다. 이 경우 메모리를 포함하는 시스템을 분해하여 업데이트 장비를 통해 재프로그래밍하거나, 시스템 전체를 교체해야 하는 문제가 발생한다.
FBL에 문제가 있을 경우, FBL의 에러를 복구할 수 있는 메모리, 메모리의 복구 방법, 및 이를 포함하는 배터리 장치를 제공하고자 한다.
본 발명의 한 특징에 따른 메모리는, 적어도 하나의 어플리케이션을 저장하는 어플리케이션 영역, 상기 어플리케이션 영역을 업데이트하기 위한 코드를 포함하는 FBL(Flash BootLoader) 영역, 및 상기 FBL 영역의 결함이 감지된 후 활성화되어, 상기 FBL 영역을 삭제하고, FBL 이미지의 이진(binary) 코드 정보를 상기 FBL 영역에 기입한 후 상기 FBL 영역에 기입된 이진 코드가 상기 FBL 이미지의 이진 코드 정보와 일치하는지 판단하며, 두 이진 코드 정보가 일치하면 비활성화되는 BUM 모듈을 포함할 수 있다. 상기 FBL 이미지 및 상기 BUM 모듈은 상기 어플리케이션 영역에 위치할 수 있다.
상기 FBL 영역은 상기 메모리를 포함하는 장치의 웨이크-업에 동기되어 부트로더 코드 플래시(bootloader code flash)의 결함 체크를 수행할 수 있다.
상기 BUM 모듈은 상기 FBL 영역에 기입한 이진 코드의 체크섬을 계산하고, 상기 계산 값과 상기FBL 이미지의 이진 코드에 대한 체크섬(checksum) 계산 값인 기준 체크섬이 일치하는 것으로 판단하면, 비활성화될 수 있다.
또는, 상기 BUM 모듈은 상기 FBL 영역에 기입한 이진 코드의 체크섬을 계산하고, 상기 계산 값과 상기 FBL 이미지의 이진 코드에 대한 체크섬 계산 값인 기준 체크섬이 일치하지 않은 것으로 판단하면, 상기 FBL 영역을 삭제하고, 상기 FBL 이미지의 이진(binary) 코드 정보를 상기 FBL 영역에 기입한 후 상기 FBL 영역에 기입한 이진 코드의 체크섬을 계산하고, 상기 계산 값과 상기 FBL 이미지의 이진 코드에 대한 체크섬 계산 값인 기준 체크섬이 일치하는지 판단할 수 있다.
본 발명의 다른 특징에 따른 메모리의 어플리케이션 영역 및 상기 어플리케이션이 업데이트를 위한 코드를 포함하는 FBL(Flash BootLoader) 영역을 포함하는 메모리의 에러 복구 방법은, 상기 FBL 영역이 웨이크-업에 동기되어 부트로더 코드 플래시(bootloader code flash)의 결함 체크를 수행하는 단계, 상기 결함 체크 단계 결과, 상기 FBL 영역의 결함을 감지하면, BUM(Bootloader Update Manager) 모듈이 활성화되는 단계, 상기 BUM 모듈이 상기 FBL 영역을 삭제하는 단계 상기 BUM 모듈이 상기 FBL 이미지의 이진(binary) 코드 정보를 상기 FBL 영역에 기입하는 단계, 상기 BUM 모듈이 상기 FBL 영역에 기입된 이진 코드가 상기 FBL 이미지의 이진 코드 정보와 일치하는지 판단하는 단계, 및 상기 판단 결과에 따라 상기 BUM 모듈이 활성화 또는 비활성화되는 단계를 포함할 수 있다. 상기 FBL 이미지 및 상기 BUM 모듈은 상기 어플리케이션 영역에 위치할 수 있다.
상기 FBL 영역의 부트로더 코드 플래시 결함 체크 단계는, 상기 부트로더 코드 플래시의 체크섬을 이용하는 단계를 포함할 수 있다.
상기 BUM 모듈이 상기 FBL 영역에 기입된 이진 코드가 상기 FBL 이미지의 이진 코드 정보와 일치하는지 판단하는 단계는, 상기 BUM 모듈이 상기 FBL 영역에 기입한 이진 코드의 체크섬을 계산하는 단계, 및 상기 계산 값과 상기 FBL 이미지의 이진 코드에 대한 체크섬 계산 값인 기준 체크섬을 비교하는 단계를 포함할 수 있다.
상기 메모리의 에러 복구 방법은, 상기 계산 값과 상기 FBL 이미지의 이진 코드에 대한 체크섬 계산 값인 기준 체크섬이 일치하면, 상기 BUM 모듈은 비활성화되는 단계를 더 포함할 수 있다.
상기 메모리의 에러 복구 방법은, 상기 계산 값과 상기 FBL 이미지의 이진 코드에 대한 체크섬 계산 값인 기준 체크섬이 일치하지 않으면, 상기 BUM 모듈이 상기FBL 영역을 삭제하는 단계, 상기 FBL 이미지의 이진 코드 정보를 상기 FBL 영역에 기입하는 단계, 및 상기 BUM 모듈이 상기 FBL 영역에 기입된 이진 코드가 상기 FBL 이미지의 이진 코드 정보와 일치하는지 판단하는 단계를 반복할 수 있다.
상기 배터리 장치는, 복수의 배터리 셀을 포함하는 배터리 셀 조립체, 및 상기 배터리 셀 조립체를 관리하는 배터리 관리 시스템을 포함하고, 상기 배터리 관리 시스템은 상기 배터리 셀 조립체에 대한 상태 정보를 수집, 처리 및 배터리 셀 조립체를 관리하기 위해 필요한 다양한 어플리케이션을 포함하는 앞서 설명한 메모리를 포함할 수 있다.
본 개시는 FBL에 문제가 있을 경우, FBL의 에러를 복구할 수 있는 메모리, 메모리의 복구 방법, 및 이를 포함하는 배터리 장치를 제공할 수 있다.
도 1은 일 실시예에 따른 메모리의 구조를 나타낸 도면이다.
도 2는 일 실시예에 따른 FBL 영역의 결함을 감지 및 복구하는 방법을 나타낸 순서도이다.
도 3은 다른 실시예에 따른 메모리의 구조를 나타낸 도면이다.
도 4는 또 다른 실시예에 따른 메모리의 구조를 나타낸 도면이다.
도 5는 또 다른 실시예에 다른 메모리의 구조를 나타낸 도면이다.
도 6은 일 실시예가 적용된 메모리를 포함하는 배터리 장치를 나타낸 도면이다.
본 발명의 일 실시예에 따른 메모리는 FBL 영역 상태를 점검하고, FBL 영역에 이상을 감지하면, 부트로더 업데이터 매니저(Bootloader Update Manager, BUM) 모듈을 구동하여 특정 영역에 저장된 FBL 이미지로 FBL 영역을 업데이트 한다. 메모리는 어플리케이션 영역과 FBL 영역을 포함하고, 부트로더 업데이트 매니저는 어플리케이션 영역에 위치하고, FBL 이미지는 어플리케이션 영역에 저장될 수 있다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 일 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 일 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 일 실시예에 따른 메모리의 구조를 나타낸 도면이다.
메모리(1)는 어플리케이션 영역(10) 및 FBL 영역(20)을 포함한다.
어플리케이션 영역(10)은 BUM 모듈(11) 및FBL 이미지(12)를 포함한다.
FBL 영역(20)에는 어플리케이션 영역을 업데이트하기 위한 코드가 들어있다. 어플리케이션 영역(11)에 저장된 어플리케이션의 업데이트 또는 재프로그래밍이 필요한 경우, 어플리케이션 영역(11)의 코드가 변질되거나 결함을 포함하는 경우 등에, FBL 영역(20)의 코드에 따라 어플리케이션 영역(11)을 업데이트한다. FBL 영역(20)은 웨이크-업에 동기되어 FBL 영역(20)을 체크하여 결함 여부를 감지하고, FBL 영역(20)의 결함이 감지되면 BUM 모듈(11)을 활성화 시킨다.
BUM 모듈(11)은 활성화된 후, FBL 영역(20)을 삭제하고, FBL 이미지(12)의 이진(binary) 코드 정보를 FBL 영역(20)에 기입한 후 FBL 영역(20)에 기입된 이진 코드가 FBL 이미지(12)의 이진 코드 정보와 일치하는지 판단한다. BUM 모듈(11)은 FBL 영역(20)에 기입된 이진 코드와 FBL 이미지(12)의 이진 코드 정보가 일치하는 것으로 판단하면, 비활성화될 수 있다.
BUM 모듈(11)이 비활성화된 후, 어플리케이션(10)이 실행될 수 있다.
도 2는 일 실시예에 따른 FBL 영역의 결함을 감지 및 복구하는 방법을 나타낸 순서도이다.
도 2에 도시된 바와 같이, 먼저 메모리(1)를 포함하는 장치가 웨이크-업 된다(S1 단계). 메모리를 포함하는 장치는 임베디드(embedded) 시스템의 IC-Chip을 포함하는 다양한 장치일 수 있다. 예를 들어, 배터리, 자동차, 스마트 폰, 스마트 와치 등일 수 있다.
웨이크-업 후, FBL 영역(20)은 웨이크-업에 동기되어 부트로더 코드 플래시(bootloader code flash)의 결함 체크를 수행한다(S2 단계). 예를 들어, FBL 영역(20)은 부트로더 코드 플래시에 저장된 이진 코드에 체크섬 알고리즘(checksum algorithm)을 적용하고, 체크섬 결과에 따라 부트로더 코드 플래시의 결함 여부를 결정할 수 있다.
체크섬은 저장된 코드나 데이터에 오류가 있는지를 검사하기 위한 방법으로, 이진 코드의 합이 정확한 코드들의 합과 일치하는 지를 비교하여 코드 플래시에 저장된 코드에 오류가 있는 지를 검사할 수 있다. 체크섬 알고리즘마다 체크섬을 산출하는 방식이 다를 수 있고, 설계에 따라 알고리즘이 결정될 수 있다. 또한, 발명이 체크섬에 한정되는 것은 아니고, 체크섬 대신, FBL 영역(20)은 부트로드 코드 플래시의 결함 여부를 체크할 수 있는 다양한 에러 검출 방식을 사용할 수 있다.
S2 단계 결과, FBL 영역(20)은 결함을 감지하면, 메모리(1)는 BUM 모듈(11)을 활성화시킨다(S3 단계). FBL 영역(20)이 메모리(1)의 전체적인 동작을 제어하는 프로세서에 이를 알리고, 해당 프로세서가 BUM 모듈(11)을 활서화시키거나, FBL 영역(20)이 직접 BUM 모듈(11)의 활성화를 기동시킬 수 있다. 결함 감지에 의해 BUM 모듈(11)이 활성화되는 구체적인 방법이 이에 제한되는 것은 아니다.
BUM 모듈(11)은 활성화된 후, BUM 모듈(11)은 FBL 영역(20)을 삭제한다(S4 단계).
BUM 모듈(11)은 FBL 이미지(12)의 이진(binary) 코드 정보를 FBL 영역(20)에 기입한다(S5 단계).
BUM 모듈(11)은 FBL 영역(20)에 기입된 이진 코드의 체크섬을 계산한다(S6 단계).
BUM 모듈(11)은 S6 단계의 체크섬 계산 값이 FBL 이미지(12)의 이진 코드에대한체크섬 계산 값인 기준 체크섬을 비교하여 두 체크섬이 일치하는지 판단한다(S7 단계).
S7 단계 결과, 두 체크섬이 일치하면, BUM 모듈(11)은 비활성화된다(S8 단계), 두 체크섬이 일치하지 않으면, BUM 모듈(11)의 활성화 상태는 유지되어 S3 단계부터 반복된다.
S2 단계에서 부트로더 코드 플래시에 결함이 없을 경우 그리고 S8 단계의 BUM 모듈(11)의 비활성화 이후, 웨이크-업 이후의 입력된 명령이나 정해진 루틴에 따라 필요한 어플리케이션(10)이 실행될 수 있다.
이와 같이, 일 실시예에 따른 메모리는 FBL 영역의 오류가 감지될 때, FBL 영역이 아닌 다른 영역 예를 들어, 어플리케이션 영역에 위치한 BUM 모듈 및 FBL 이미지를 통해 FBL 영역을 지우고 FBL 영역을 정상적으로 업데이트할 수 있다.
따라서, FBL 영역에 오류가 발생한 경우에도, 메모리를 포함하는 전체 시스템에 대한 별도의 변경 없이, FBL 영역의 업데이트를 종래에 비해 시간, 비용 등을 월등하게 줄이면서 제공할 수 있다.
도 1에는 BUM 모듈(11) 및 FBM 이미지(12)가 어플리케이션 영역(10)에 포함된 것으로 도시되어 있으나, 발명이 이에 한정되는 것은 아니다. 메모리(1)에서 어플리케이션 영역(10) 및 FBL 영역(20) 이외의 영역(이하, 외부 영역이라 함)에 BUM 모듈(11) 및 FBM 이미지(12) 중 적어도 하나가 위치할 수 있다.
도 3은 다른 실시예에 따른 메모리의 구조를 나타낸 도면이다.
도 3에 도시된 바와 같이, BUM 모듈(11) 및 FBM 이미지(12)가 외부 영역에 위치할 수 있다.
도 4는 또 다른 실시예에 따른 메모리의 구조를 나타낸 도면이다.
도 4에 도시된 바와 같이, BUM 모듈(11)은 어플리케이션 영역(10)에 위치하고, FBM 이미지(12)는 외부 영역에 위치할 수 있다.
도 5는 또 다른 실시예에 다른 메모리의 구조를 나타낸 도면이다.
도 5에 도시된 바와 같이, FBM 이미지(12)는 어플리케이션 영역(10)에 위치하고, BUM 모듈(11)은 외부 영역에 위치할 수 있다.
도 3 내지 도 5의 다양한 실시예들에서, FBL 영역(20) 상태를 점검하고, FBL 영역에 이상을 감지하면, BUM 모듈(11)을 구동하여 FBL 이미지(12)로 FBL 영역(20)을 업데이트하는 방법은 도 1 및 2를 참조로 설명한 실시예와 동일하다. 구체적으로, 일 실시예에 따른 메모리는 배터리 장치에 적용될 수 있다.
도 6은 일 실시예가 적용된 메모리를 포함하는 배터리 장치를 나타낸 도면이다.
배터리 장치(100)는 배터리 관리 시스템(Battery Management System, BMS)(110), 배터리 셀 조립체(130), 및 릴레이(140,150)를 포함한다.
BMS(110)는 복수의 배터리 셀에 대한 정보를 포함한 배터리 장치에 관한 다양한 정보를 취합 및 분석하여 배터리 장치의 충방전, 배터리 셀 밸런싱, 보호 동작 등을 제어할 수 있다. BMS(110)는 메모리(120)을 포함할 수 있으나, 발명이 이에 한정되는 것은 아니고, BMS(110)의 외부에 메모리(120)가 위치하고, 유선 또는 무선 통신을 통해 필요한 정보를 서로 송수신할 수 있다.
메모리(120)는 앞서 설명한 실시예들 중 어느 하나에 따라 구현될 수 있다. 메모리(120)에 저장된 어플리케이션이 수행되고, BMS(110)는 어플리케이션에 따라 동작할 수 있다. 즉, 메모리(120)는 배터리 모니터링 및 관리에 필요한 다수의 어플리케이션을 저장할 수 있다. 메모리(120)에서 실행되는 어플리케이션에 따라, BMS(110)가 구동될 수 있다. 예를 들어, 메모리(120)는 배터리 셀 조립체의 충전 상태 및 수명을 추정하기 위한 어플리케이션, 배터리 셀 조립체 및 배터리 셀의 전류, 전압, 온도 등 상태 정보를 감지하기 위한 어플리케이션 등을 포함할 수 있다. 또한, 메모리(120)는 배터리의 셀 밸런싱을 수행하거나, 배터리의 충방전을 제어하거나, 배터리에 대한 보호 동작을 수행하기 위한 어플리케이션 등을 포함할 수 있다. 즉, BMS(110)가 배터리 셀 조립체에 대한 상태 정보를 수집, 처리 및 배터리 셀 조립체를 관리하기 위해 필요한 다양한 어플리케이션이 메모리(120)에 저장될 수 있다.
앞서 설명한 바와 같이, 배터리 장치(100)가 외부 장치에 전원을 공급하거나 외부 장치로부터 전력을 공급 받는 등을 위해 웨이크-업하면, 메모리(120)는 FBL 영역에 오류가 있는지 검사한다. 그 구체적인 방식은 앞서 도 1 및 도 2를 참조하여 설명한 내용과 동일하므로, 상세한 설명은 생략한다.
배터리 셀 조립체(130)는 전기적으로 연결되어 있는 복수의 배터리 셀을 포함한다. 소정 개수의 배터리 셀이 직렬 연결되어 배터리 모듈을 구성하고, 소정 개수의 배터리 모듈이 직렬 및 병렬 연결되어 원하는 전력을 공급할 수 있다.
배터리 셀 조립체(130)를 구성하는 복수의 배터리 셀 각각은 BMS(110)와 복수의 배선을 통해 전기적으로 연결되어 있다.
릴레이(140,150)는 릴레이나 n 채널 타입의 트랜지스터등으로 구현될 수 있고, 배터리 셀 조립체(130)와 외부 장치 사이에 직렬 연결되어 있다. 릴레이(140,150) 각각은 BMS(110)로부터 공급되는 신호에 의해 동작할 수 있다.
배터리 장치(100)의 웨이크-업 이후에, 배터리 셀 조립체의 충전 상태 추정을 위한 배터리 상태 정보를 감지하기 위한 어플리케이션이 BMS(110)에서 실행될 수 있다. 메모리(120)에 저장된 어플리케이션의 일 예로, 메모리(120)에서 배터리 셀 조립체의 충전 상태(State of Charge, SOC)를 추정하기 위한 어플리케이션에 대해서 설명한다.
구체적으로, 메모리(120)에 저장된 복수의 어플리케이션 중 SOC 추정 어플리케이션이 수행되면, BMS(110)는 어플리케이션에 따라 SOC를 추정한다. SOC의 추정 방식은 어플리케이션에 따라 결정된다.
일 예로, SOC 추정 어플리케이션은 제1 배터리 모델링 방식을 이용하여 SOC를 추정할 수 있고(이하, 제1 SOC), 제2 배터리 모델링 방식을 이용할 SOC를 추정할 수 있으며(이하, 제2 SOC), 제1 및 제2 배터리 모델링 방식은 서로 다를 수 있다. 배터리 모델링 방식은 비선형적인 특성을 가지는 배터리의 상태를 추정하기 위해 이용되는 배터리 모델링 방법으로서, 전기 회로 모델(Electrical Circuit Model), 전기 화학 모델(Electrochemical Model), 분석적 모델(Analytical Model) 및 확률적 모델(Stochastic Model) 등이 포함될 수 있다.
구체적으로, BMS(110)는 SOC 추정 어플리케이션에 따라 제1 배터리 모델링 방식으로서 전기 회로 모델을 이용하여 직전 단계에서 추정된 SOC 및 배터리 셀 조립체 상태 정보에 포함된 정보에 기초하여 현 단계의 제1 SOC를 추정할 수 있다. 제2 배터리 모델링 방식으로서 전기 화학 모델이 이용될 수 있다.
전기 회로 모델은, 전기 회로로 구현된 등가 회로로 배터리의 입력과 출력 특성을 모델링하는 방법이다. 전기 회로 모델은, SOC 추정을 위한 연산 과정이 비교적 간단하여 연산에 따른 소요 시간이 길지 않고, 연산을 위한 부하가 많이 걸리지 않는다는 장점을 갖는다. 그러나, 이러한 전기 회로 모델의 경우 정확성이 다소 떨어지는 문제가 있다.
반면, 전기 화학 모델은, 배터리 내부에서 발생하는 화학적 작용을 기반으로 배터리의 특성을 모델링하는 방법이다. 이러한 전기 화학 모델의 대표적인 예로서, DFN(Doyle-Fuller-Newman) 모델을 들 수 있다. DFN 모델은, 다공성의 전극 내에 존재하는 리튬 이온 농도의 시공간적인 변화, 전위, 인터칼레이션 키네틱, 고체상과 전해액 상 간의 전류 밀도 등을 모델링할 수 있다. 이러한 전기 화학 모델은, 정확성이 매우 높다는 장점을 갖는다.
BMS(110)는 SOC 추정 어플리케이션에 따라 DFN 모델과 같은 전기 화학 모델을 이용하여 배터리 셀 조립체의 상태 정보에 기초한 정확도 높은 SOC 추정값(제2 SOC)을 얻을 수 있다. 그리고, BMS(110)는 SOC 추정 어플리케이션에 따라 이처럼 높은 정확도를 갖는SOC 추정 결과(제2 SOC)를 입력 파라미터에 반영함으로써, SOC(제1 SOC) 추정의 정확도를 높일 수 있다.
예를 들어, BMS(110)는 SOC 추정 어플리케이션에 따라 제2 SOC값을 직전 단계의 제1 SOC로 인식하고, 수신된 배터리 셀 조립체의 상태 정보 및 직전 단계의 제1 SOC를 제1 배터리 모델링 방식에 적용하여 현 단계의 제1 SOC를 추정할 수 있다. 그러면, 제1 SOC 값이 주기적으로 보정되어, 제1 SOC 추정의 오차가 커지는 것을 주기적으로 방지할 수 있으며, 이로 인해SOC 추정의 정확성을 향상시킬 수 있다.
이상에서 본 발명의 일 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
1, 120: 메모리
10: 어플리케이션 영역
20: FBL(Flash BootLoader) 영역
100: 배터리 장치
110: 배터리 관리 시스템(Battery Management System, BMS)
130: 배터리 셀 조립체
140, 150: 릴레이

Claims (10)

  1. 적어도 하나의 어플리케이션을 저장하는 어플리케이션 영역;
    상기 어플리케이션 영역을 업데이트하기 위한 코드를 포함하는 FBL(Flash BootLoader) 영역; 및
    상기 FBL 영역의 결함이 감지된 후 활성화되어, 상기 FBL 영역을 삭제하고, FBL 이미지의 이진(binary) 코드 정보를 상기 FBL 영역에 기입한 후 상기 FBL 영역에 기입된 이진 코드가 상기 FBL 이미지의 이진 코드 정보와 일치하는지 판단하며, 두 이진 코드 정보가 일치하면 비활성화되는 BUM 모듈을 포함하고,
    상기 FBL 이미지 및 상기 BUM 모듈은 상기 어플리케이션 영역에 위치하는 것을 특징으로 하는 메모리.
  2. 제1항에 있어서,
    상기 FBL 영역은 상기 메모리를 포함하는 장치의 웨이크-업에 동기되어 부트로더 코드 플래시(bootloader code flash)의 결함 체크를 수행하는, 메모리.
  3. 제1항에 있어서,
    상기 BUM 모듈은 상기 FBL 영역에 기입한 이진 코드의 체크섬을 계산하고, 상기 계산 값과 상기FBL 이미지의 이진 코드에 대한 체크섬 계산 값인 기준 체크섬이 일치하는 것으로 판단하면, 비활성화되는, 메모리.
  4. 제1항에 있어서,
    상기 BUM 모듈은 상기 FBL 영역에 기입한 이진 코드의 체크섬을 계산하고, 상기 계산 값과 상기FBL 이미지의 이진 코드에 대한 체크섬 계산 값인 기준 체크섬이 일치하지 않은 것으로 판단하면,
    상기FBL 영역을 삭제하고, 상기 FBL 이미지의 이진(binary) 코드 정보를 상기 FBL 영역에 기입한 후 상기 FBL 영역에 기입한 이진 코드의 체크섬을 계산하고, 상기 계산 값과 상기 FBL 이미지의 이진 코드에 대한 체크섬 계산 값인 기준 체크섬이 일치하는지 판단하는, 메모리.
  5. 어플리케이션 영역 및 상기 어플리케이션이 업데이트를 위한 코드를 포함하는 FBL(Flash BootLoader) 영역을 포함하는 메모리의 에러 복구 방법에 있어서,
    상기 FBL 영역이 웨이크-업에 동기되어 부트로더 코드 플래시(bootloader code flash)의 결함 체크를 수행하는 단계;
    상기 결함 체크 단계 결과, 상기 FBL 영역의 결함을 감지하면, BUM(Bootloader Update Manager) 모듈이 활성화되는 단계;
    상기 BUM 모듈이 상기FBL 영역을 삭제하는 단계;
    상기 BUM 모듈이 상기 FBL 이미지의 이진(binary) 코드 정보를 상기 FBL 영역에 기입하는 단계;
    상기 BUM 모듈이 상기 FBL 영역에 기입된 이진 코드가 상기 FBL 이미지의 이진 코드 정보와 일치하는지 판단하는 단계; 및
    상기 판단 결과에 따라 상기 BUM 모듈이 활성화 또는 비활성화되는 단계를 포함하며,
    상기 FBL 이미지 및 상기 BUM 모듈은 상기 어플리케이션 영역에 위치하는 것을 특징으로 하는 메모리의 에러 복구 방법.
  6. 제5항에 있어서,
    상기 FBL 영역의 부트로더 코드 플래시 결함 체크 단계는,
    상기 부트로더 코드 플래시의 체크섬을 이용하는 단계를 포함하는, 메모리의 에러 복구 방법.
  7. 제5항에 있어서,
    상기 BUM 모듈이 상기 FBL 영역에 기입된 이진 코드가 상기 FBL 이미지의 이진 코드 정보와 일치하는지 판단하는 단계는,
    상기 BUM 모듈이 상기 FBL 영역에 기입한 이진 코드의 체크섬을 계산하는 단계; 및
    상기 계산 값과 상기FBL 이미지의 이진 코드에 대한 체크섬 계산 값인 기준 체크섬을 비교하는 단계를 포함하는,
    , 메모리의 에러 복구 방법.
  8. 제6항에 있어서,
    상기 계산 값과 상기FBL 이미지의 이진 코드에 대한 체크섬 계산 값인 기준 체크섬이 일치하면, 상기 BUM 모듈은 비활성화되는 단계를 더 포함하는,
    메모리의 에러 복구 방법.
  9. 제6항에 있어서,
    상기 계산 값과 상기FBL 이미지의 이진 코드에 대한 체크섬 계산 값인 기준 체크섬이 일치하지 않으면,
    상기 BUM 모듈이 상기FBL 영역을 삭제하는 단계, 상기 FBL 이미지의 이진 코드 정보를 상기 FBL 영역에 기입하는 단계, 및 상기 BUM 모듈이 상기 FBL 영역에 기입된 이진 코드가 상기 FBL 이미지의 이진 코드 정보와 일치하는지 판단하는 단계를 반복하는 것을 특징으로 하는,
    메모리의 에러 복구 방법.
  10. 복수의 배터리 셀을 포함하는 배터리 셀 조립체; 및
    상기 배터리 셀 조립체를 관리하는 배터리 관리 시스템을 포함하고,
    상기 배터리 관리 시스템은 상기 배터리 셀 조립체에 대한 상태 정보를 수집, 처리 및 배터리 셀 조립체를 관리하기 위해 필요한 다양한 어플리케이션을 포함하는 메모리를 포함하며,
    상기 메모리는, 상기 제1항 내지 제4항 중 어느 하나인,
    배터리 장치.
KR1020190006275A 2019-01-17 2019-01-17 메모리, 상기 메모리의 에러 복구 방법, 및 상기 메모리를 포함하는 배터리 장치 KR20200089482A (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020190006275A KR20200089482A (ko) 2019-01-17 2019-01-17 메모리, 상기 메모리의 에러 복구 방법, 및 상기 메모리를 포함하는 배터리 장치
PCT/KR2020/000875 WO2020149703A1 (ko) 2019-01-17 2020-01-17 메모리, 메모리의 에러 복구 방법, 및 메모리를 포함하는 배터리 장치
JP2021516726A JP7205982B2 (ja) 2019-01-17 2020-01-17 メモリ、メモリのエラー復旧方法、およびメモリを含むバッテリ装置
EP20741742.9A EP3842945A4 (en) 2019-01-17 2020-01-17 MEMORY, TROUBLESHOOTING PROCEDURES AND BATTERY DEVICE WITH MEMORY
CN202080005617.6A CN112805689B (zh) 2019-01-17 2020-01-17 存储器、存储器的错误恢复方法以及包括该存储器的电池装置
US17/282,804 US11429484B2 (en) 2019-01-17 2020-01-17 Memory, error restoration method of the memory, and battery device comprising the memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190006275A KR20200089482A (ko) 2019-01-17 2019-01-17 메모리, 상기 메모리의 에러 복구 방법, 및 상기 메모리를 포함하는 배터리 장치

Publications (1)

Publication Number Publication Date
KR20200089482A true KR20200089482A (ko) 2020-07-27

Family

ID=71613778

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190006275A KR20200089482A (ko) 2019-01-17 2019-01-17 메모리, 상기 메모리의 에러 복구 방법, 및 상기 메모리를 포함하는 배터리 장치

Country Status (5)

Country Link
US (1) US11429484B2 (ko)
EP (1) EP3842945A4 (ko)
JP (1) JP7205982B2 (ko)
KR (1) KR20200089482A (ko)
WO (1) WO2020149703A1 (ko)

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6473856B1 (en) 1999-06-30 2002-10-29 International Business Machines Corporation Gold code backup for corrupt boot code recovery
AU2003242930A1 (en) * 2002-06-28 2004-01-19 Koninklijke Philips Electronics N.V. Software download into a receiver
CN100405297C (zh) 2005-05-18 2008-07-23 鸿富锦精密工业(深圳)有限公司 嵌入式系统出厂预设值初始设定程序的更新方法
KR100778293B1 (ko) 2005-10-10 2007-11-22 삼성전자주식회사 디지털방송처리장치 및 디지털방송처리장치 부트로더의업그레이드 방법
KR100907550B1 (ko) 2007-03-15 2009-07-14 주식회사넥싸이트 시리얼 eeprom의 손상된 데이터를 복구하기 위한장치 및 방법
KR101393034B1 (ko) 2007-06-07 2014-05-13 삼성전자주식회사 시스템 복원 장치 및 방법
US20130036300A1 (en) 2010-02-26 2013-02-07 Samsung Electronics Co., Ltd Method of fixing error of boot image for fast booting and image forming apparatus for performing the method
US8589730B2 (en) 2010-08-31 2013-11-19 Apple Inc. Handling errors during device bootup from a non-volatile memory
US8732527B2 (en) * 2011-08-16 2014-05-20 Google Inc. Secure recovery apparatus and method
KR101418451B1 (ko) * 2012-11-02 2014-07-14 현대오토에버 주식회사 전자 제어 장치 및 그 업데이트 방법
KR20140121233A (ko) 2013-04-05 2014-10-15 삼성전자주식회사 부트로더에 의한 운영 체제 부팅 기능의 전자 장치, 방법 및 저장 매체
KR101844095B1 (ko) * 2013-12-26 2018-05-14 에릭슨엘지엔터프라이즈 주식회사 부트로더 실행 방법 및 장치
US9390258B2 (en) * 2014-07-16 2016-07-12 General Electric Company Systems and methods for verifying the authenticity of an application during execution
US20160162268A1 (en) * 2014-12-08 2016-06-09 Nec Energy Solutions, Inc. Serial protocol communications between a computerized user device and a battery module
KR101692839B1 (ko) * 2015-06-09 2017-01-05 (주) 비엠지 배터리 원격 제어 시스템
KR20170126230A (ko) * 2016-05-09 2017-11-17 한국전자통신연구원 펌웨어 업데이트 장치 및 방법, 그리고 펌웨어 업데이트 시스템

Also Published As

Publication number Publication date
EP3842945A1 (en) 2021-06-30
EP3842945A4 (en) 2021-12-08
WO2020149703A1 (ko) 2020-07-23
JP2022502756A (ja) 2022-01-11
US20210349779A1 (en) 2021-11-11
JP7205982B2 (ja) 2023-01-17
CN112805689A (zh) 2021-05-14
US11429484B2 (en) 2022-08-30

Similar Documents

Publication Publication Date Title
CN110389774A (zh) 使用备份固件映像的低功率设备恢复
Reindl et al. Software update of a decentralized, intelligent battery management system based on multi-microcomputers
US20230273262A1 (en) Battery capacity estimation apparatus and method
CN114489732A (zh) 一种更新设备的fpga固件的方法、装置及电子设备
US11429484B2 (en) Memory, error restoration method of the memory, and battery device comprising the memory
CN112805689B (zh) 存储器、存储器的错误恢复方法以及包括该存储器的电池装置
KR20220060931A (ko) 배터리 관리 장치 및 방법
US7061206B2 (en) Method for restoring battery data in portable appliance
US20240175937A1 (en) Battery management apparatus and method
US11899951B2 (en) Error restoring method, microcontroller unit using the same, and battery device including the microcontroller unit
US11928008B2 (en) Watchdog system, watchdog method, and battery management system comprising watchdog system
CN110333387B (zh) 一种电能表的电量计量方法
CN113434086A (zh) 数据存储方法、装置、非易失性存储器件和存储器
KR20240019650A (ko) 배터리 관리 장치 및 그것의 동작 방법
CN113361289B (zh) 拨码开关编码识别处理方法、装置和读码电路
EP4293792A1 (en) Battery management device and operation method therefor
US20240063647A1 (en) Battery Management Apparatus and Method
US20220268843A1 (en) Battery analysis apparatus and method
US10720222B2 (en) Solid state storage device using state prediction method
CN118051358A (zh) 一种嵌入式系统故障恢复方法和装置
CN113601266A (zh) 机床振动检测装备交互方法、终端、存储介质及电子设备
KR20240006204A (ko) 배터리의 순차적 충전을 위한 배터리 시스템 및 이의 제어 방법
CN116207382A (zh) 一种电压阈值配置方法、电池单元、系统及存储介质
CN113760605A (zh) 深空探测器整器断电再上电器地通信再恢复实现方法
CN117192408A (zh) 用于预测电池寿命的设备及预测电池寿命的方法

Legal Events

Date Code Title Description
E902 Notification of reason for refusal