KR20210031317A - 워치독 시스템, 워치독 방법, 및 워치독 시스템을 포함하는 배터리 관리 시스템 - Google Patents

워치독 시스템, 워치독 방법, 및 워치독 시스템을 포함하는 배터리 관리 시스템 Download PDF

Info

Publication number
KR20210031317A
KR20210031317A KR1020190113110A KR20190113110A KR20210031317A KR 20210031317 A KR20210031317 A KR 20210031317A KR 1020190113110 A KR1020190113110 A KR 1020190113110A KR 20190113110 A KR20190113110 A KR 20190113110A KR 20210031317 A KR20210031317 A KR 20210031317A
Authority
KR
South Korea
Prior art keywords
watchdog
area
timing
refresh
refresh request
Prior art date
Application number
KR1020190113110A
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 KR1020190113110A priority Critical patent/KR20210031317A/ko
Priority to CN202080012320.2A priority patent/CN113383331A/zh
Priority to US17/430,520 priority patent/US11928008B2/en
Priority to PCT/IB2020/060337 priority patent/WO2021048835A2/ko
Priority to EP20862313.2A priority patent/EP3905045B1/en
Priority to JP2021540279A priority patent/JP7179255B2/ja
Publication of KR20210031317A publication Critical patent/KR20210031317A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/123Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices
    • 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/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • 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/0706Error 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 the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/073Error 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 the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
    • 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/0706Error 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 the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error 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 the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/123Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list
    • 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/4401Bootstrapping
    • 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/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01MPROCESSES OR MEANS, e.g. BATTERIES, FOR THE DIRECT CONVERSION OF CHEMICAL ENERGY INTO ELECTRICAL ENERGY
    • H01M10/00Secondary cells; Manufacture thereof
    • H01M10/42Methods or arrangements for servicing or maintenance of secondary cells or secondary half-cells
    • H01M10/425Structural combination with electronic components, e.g. electronic circuits integrated to the outside of the casing
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J7/00Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
    • H02J7/0068Battery or charger load switching, e.g. concurrent charging and load supply
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01MPROCESSES OR MEANS, e.g. BATTERIES, FOR THE DIRECT CONVERSION OF CHEMICAL ENERGY INTO ELECTRICAL ENERGY
    • H01M10/00Secondary cells; Manufacture thereof
    • H01M10/42Methods or arrangements for servicing or maintenance of secondary cells or secondary half-cells
    • H01M10/425Structural combination with electronic components, e.g. electronic circuits integrated to the outside of the casing
    • H01M2010/4271Battery management systems including electronic circuits, e.g. control of current or voltage to keep battery in healthy state, cell balancing
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J7/00Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
    • H02J7/0013Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries acting upon several batteries simultaneously or sequentially
    • H02J7/0014Circuits for equalisation of charge between batteries
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02JCIRCUIT ARRANGEMENTS OR SYSTEMS FOR SUPPLYING OR DISTRIBUTING ELECTRIC POWER; SYSTEMS FOR STORING ELECTRIC ENERGY
    • H02J7/00Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries
    • H02J7/0047Circuit arrangements for charging or depolarising batteries or for supplying loads from batteries with monitoring or indicating devices or circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Engineering (AREA)
  • Chemical & Material Sciences (AREA)
  • Remote Sensing (AREA)
  • Chemical Kinetics & Catalysis (AREA)
  • Electrochemistry (AREA)
  • General Chemical & Material Sciences (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Manufacturing & Machinery (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)
  • Charge And Discharge Circuits For Batteries Or The Like (AREA)

Abstract

워치독 시스템은, 부트로더 영역 및 어플리케이션 영역을 포함하는 소프트웨어 영역, 그리고 마지막 워치독 리프레시 타이밍을 저장하는 공유 메모리 영역, 및 외부 워치독 모듈을 포함하고, 상기 외부 워치독 모듈은, 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나로부터 전송되는 리프레시 요청에 응답하여, 상기 공유 메모리 영역으로부터 상기 마지막 워치독 리프레시 타이밍과 상기 전송된 리프레시 요청 타이밍에 기초하여, 상기 전송된 리프레시 요청 타이밍이 오픈 윈도우 타이밍이면 워치독을 리프레시한다.

Description

워치독 시스템, 워치독 방법, 및 워치독 시스템을 포함하는 배터리 관리 시스템{WATCHDOG SYSTEM, METHOD OF WATCHDOG, AND BATTERY MANAGEMENT SYSTEM COMPRISING THE WATCHDOG SYSTEM}
본 개시는 워치독 시스템, 워치독 방법, 및 워치독 시스템을 포함하는 배터리 관리 시스템에 관한 것이다.
높은 수준의 관리를 위해서 워치독(watchdog)이 윈도우 모드(window mode)로 운용되고, 보다 높은 안전 레벨(safety level)을 위해 배터리 관리 시스템의 메인 제어 회로(Main Control Unit) 내부의 워치독(watchdog) 모듈뿐만 아니라, 배터리 관리 시스템에서 메인 제어 회로 외부의 ASIC의 워치독 모듈이 메인 제어 회로의 워치독 모듈과 연동될 수 있다.
윈도우 모드에서 워치독은 오픈 윈도우 타이밍(open window timing)에서만 워치독 서비스를 제공할 수 있어, 클로즈 윈도우 타이밍(close window timing)에서 수행되는 워치독 서비스는 실패(fail)로 인식된다. 워치독 리프레쉬가 일정 시간 동안 이뤄지지 않을 경우 시스템은 리셋된다. 이와 같이 시스템 문제 등으로 인해 정상적인 리프레쉬가 이뤄지지 않는 경우 안전 불가능(safety disable, 예를 들어 리셋)을 발생시키는 것이 워치독의 목적이다.
시간이 오래 걸리는 특정 시퀀스(sequence)를 수행하는 경우 워치독으로 인한 리셋을 방지하기 위해 코드 중간에 워치독 서비스를 수행하게 할 수 있다. 종래에는 정확하 오픈 윈도우 타이밍을 파악하는데 어려움이 있어 왔다.
예를 들어, 재프로그래밍/소프트웨어 플래시(Reprogramming/Software flash)를 수행하는 경우 서로 다른 소프트웨어 구성(Software component)인 부트로더(bootloader)와 어플리케이션(application) 간에 트랜잭션(transaction)이 발생하게 되는데, 배터리 관리 시스템에서 메인 제어 회로 외부의 ASIC의 워치독을 서비스하는 경우 정확한 오프 윈도우 타이밍을 파악하는데 어려움이 있어, 안전 불가능 동작 예를 들어, 리셋이 발생하게 된다.
즉, 시스템에 문제가 생기지 않았지만, 오픈 윈도우 타이밍을 파악하기 어려워 의도치 않은 안전 불가능 상황이 발생할 수 있다.
시스템에 문제가 생기지 않았지만, 오픈 윈도우 타이밍을 파악하기 어려워 의도치 않은 안전 불가능 상황이 발생하는 문제점을 해결하기 위한 워치독 시스템, 워치독 방법, 및 배터리 관리 시스템을 제공하고자 한다.
본 발명의 한 특징에 따른 워치독 시스템은, 부트로더 영역 및 어플리케이션 영역을 포함하는 소프트웨어 영역, 그리고 마지막 워치독 리프레시 타이밍을 저장하는 공유 메모리 영역, 및 외부 워치독 모듈을 포함하고, 상기 외부 워치독 모듈은, 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나로부터 전송되는 리프레시 요청에 응답하여, 상기 공유 메모리 영역으로부터 상기 마지막 워치독 리프레시 타이밍과 상기 전송된 리프레시 요청 타이밍에 기초하여, 상기 전송된 리프레시 요청 타이밍이 오픈 윈도우 타이밍이면 워치독을 리프레시한다.
상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나는, 프레시 요청을 생성하고, 상기 리프레시 요청이 생성된 시점과 상기 공유 메모리 영역으로부터 획득된 상기 마지막 워치독 리프레시 타이밍에 기초하여, 상기 외부 워치독 모듈의 윈도운 기간 중 오픈 윈도우 타이밍인지 판단하고, 상기 리프레시 요청이 생성된 시점이 상기 오픈 윈도우 타이밍이면 상기 외부 워치독 모듈에 전송할 수 있다.
상기 외부 워치독 모듈은, 상기 워치독을 리프레시한 시점을 상기 공유 메모리 영역에 상기 마지막 워치독 리프레시 시점으로 업데이트 할 수 있다.
상기 소프트웨어 영역의 프로그램 플로우에 따라 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 결정될 수 있다.
본 발명의 다른 특징에 따른 부트로더 영역, 어플리케이션 영역, 공유 메모리 영역, 및 외부 워치독 모듈을 포함하는 워치독 시스템의 워치독 방법은, 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 리프레시 요청을 상기 외부 워치독 모듈에 전송하는 단계, 상기 외부 워치독 모듈이 상기 공유 메모리 영역으로부터 마지막 워치독 리프레시 타이밍을 획득하고, 상기 리프레시 요청을 수신한 시간이 워치독 리프레시가 가능한 오픈 윈도우 타이밍인지 판단하는 단계, 상기 외부 워치독 모듈의 판단 결과, 상기 리프레시 요청을 수신한 시간이 상기 오픈 윈도우 타이밍인 경우, 상기 워치독 리프레시 요청에 따라 워치독을 리프레시 하는 단계, 및 상기 워치독 리프레시 단계 타이밍이 마지막 워치독 리프레시 타이밍으로 상기 공유 메모리 영역에 저장되는 단계를 포함한다.
상기 워치독 방법은, 상기 외부 워치독 모듈의 판단 결과, 상기 리프레시 요청을 수신한 시간이 워치독 리프레시가 가능하지 않은 클로즈 윈도우 타이밍이면, 워치독 리프레시를 수행하지 않는 단계를 더 포함할 수 있다.
상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 리프레시 요청을 상기 외부 워치독 모듈에 전송하는 단계는, 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 리프레시 요청을 생성하고, 상기 공유 메모리 영역으로부터 마지막 워치독 리프레시 타이밍을 획득하는 단계, 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 상기 리프레시 요청 생성 시점과 상기 획득된 마지막 워치독 리프레시 타이밍 간의 차에 기초하여 상기 리프레시 요청 생성 시점이 상기 오픈 윈도우 타이밍에 해당하는지 판단하는 단계, 및 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나의 판단 결과, 상기 리프레시 요청 생성 시점이 상기 오픈 윈도우 타이밍에 해당하면, 상기 외부 워치독 모듈에 상기 리프레시 요청을 전송하는 단계를 포함할 수 있다.
상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 리프레시 요청을 상기 외부 워치독 모듈에 전송하는 단계는, 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나의 판단 결과, 상기 리프레시 요청 생성 시점이 오픈 윈도우 타이밍에 해당되지 않으면, 상기 리프레시 요청을 무시하는 단계를 더 포함할 수 있다.
상기 워치도 방법은, 상기 소프트웨어 영역의 프로그램 플로우에 따라 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 결정되는 단계를 더 포함할 수 있다.
본 발명의 또 다른 특징에 따른 복수의 배터리 셀을 포함하는 배터리 팩을 관리하는 배터리 관리 시스템은, 상기 복수의 배터리 셀의 전압을 측정하고, 상기 복수의 배터리 셀에 대한 셀 밸런싱을 수행하는 적어도 하나의 ASIC, 및 상기 적어도 하나의 ASIC을 제어하는 메인 제어 회로를 포함한다. 상기 메인 제어 회로는, 부트로더 영역 및 어플리케이션 영역을 포함하는 소프트웨어 영역, 그리고 마지막 워치독 리프레시 타이밍을 저장하는 공유 메모리 영역을 포함한다. 상기 적어도 하나의 ASIC은, 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나로부터 전송되는 리프레시 요청에 응답하여, 상기 공유 메모리 영역으로부터 상기 마지막 워치독 리프레시 타이밍과 상기 전송된 리프레시 요청 타이밍에 기초하여, 상기 전송된 리프레시 요청 타이밍이 오픈 윈도우 타이밍이면 워치독을 리프레시하는 외부 워치독 모듈을 포함한다.
상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나는, 리프레시 요청을 생성하고, 상기 리프레시 요청이 생성된 시점과 상기 공유 메모리 영역으로부터 획득된 상기 마지막 워치독 리프레시 타이밍에 기초하여, 상기 외부 워치독 모듈의 윈도운 기간 중 오픈 윈도우 타이밍인지 판단하고, 상기 리프레시 요청이 생성된 시점이 상기 오픈 윈도우 타이밍이면 상기 외부 워치독 모듈에 전송할 수 있다.
상기 외부 워치독 모듈은, 상기 워치독을 리프레시한 시점을 상기 공유 메모리 영역에 상기 마지막 워치독 리프레시 시점으로 업데이트 할 수 있다.
상기 소프트웨어 영역의 프로그램 플로우에 따라 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 결정될 수 있다.
시스템에 문제가 생기지 않았지만, 오픈 윈도우 타이밍을 파악하기 어려워 의도치 않은 안전 불가능 상황이 발생하는 문제점을 해결하기 위한 워치독 시스템, 워치독 방법, 및 배터리 관리 시스템을 제공한다.
도 1은 일 실시예에 따른 워치독 시스템을 나타낸 블록도이다.
도 2는 일 실시예에 따른 메인 제어 회로 및 외부 워치독 모듈의 동작을 나타낸 순서도이다.
도 3은 일 실시예에 따른 워치독 리프레시가 수행되는 경우를 도식적으로 나타낸 도면이다.
도 4는 일 실시예가 적용된 메인 제어 회로 및 외부 워치독 모듈을 포함하는 배터리 시스템을 나타낸 도면이다.
도 5는 일 실시예에 따른 배터리 관리 시스템의 구성을 나타낸 도면이다.
본 개시는 워치독의 오픈 윈도우 타이밍을 계산하는 루틴(routine)을 더 포함하고, 해당 루틴을 통해서 오픈 윈도우 타이밍에만 워치독 서비스가 수행된다. 어떤 타이밍에 워치독 서비스 시도가 발생하여도 윈도우 타이밍에 의해 결함(fault) 상황이 이루어지지 않는다.
서로 다른 소프트웨어 구성인 부트로더와 어플리케이션 간의 트랜잭션 상황에서 워치독 서비스를 시도하는 경우에 잘못된 윈도우 타이밍에 의한 결함(fault) 상황이 발생하지 않도록, 본 개시는 특정 메모리 영역 예를 들어, 공유 메모리에 타이밍 계산을 위한 영역을 설정할 수 있다. 공유 메모리 및 공유 메모리와의 인터페이스를 통해, 서로 다른 모듈 간의 타이밍 동기를 맞추어 모든 모듈이 정확한 타이밍에 워치독 서비스를 수행할 수 있다. 즉, 윈도우 타이밍 계산 오류로 인하여 의도치 않은 안전 불가능 상황을 방지할 수 있다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시예를 상세히 설명하되, 동일하거나 유사한 구성요소에는 동일, 유사한 도면부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및/또는 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
도 1은 일 실시예에 따른 워치독 시스템을 나타낸 블록도이다.
도 2는 일 실시예에 따른 메인 제어 회로 및 외부 워치독 모듈의 동작을 나타낸 순서도이다.
도 1에 도시된 바와 같이, 워치독 시스템은 메인 제어 회로(1) 및 외부 워치독 모듈(4)을 포함한다. 메인 제어 회로(1)는 소프트웨어 영역(2)과 공유 메모리 영역(3)을 포함한다. 소프트웨어 영역(2)은 부트로더 영역(21) 및 어플리케이션 영역(22)을 포함한다.
공유 메모리 영역(3)은 외부 워치독 모듈(4)로부터 전송되는 마지막 워치독 리프레시 타이밍을 저장할 수 있다.
부트로더 영역(21)에는 어플리케이션 영역을 업데이트하기 위한 코드가 들어있다. 어플리케이션 영역(22)에 저장된 어플리케이션의 업데이트 또는 재프로그래밍이 필요한 경우, 어플리케이션 영역(22)의 코드가 변질되거나 결함을 포함하는 경우 등에, 부트로더 영역(21)의 코드에 따라 어플리케이션 영역(22)이 업데이트 된다.
어플리케이션 영역(22)에는 측정, 제어, 통신과 같은 다양한 기능을 수행하기 위한 코드로 구성된 복수의 어플리케이션이 저장되어 있다.
부트로더 영역(21) 및 어플리케이션 영역(22) 각각은 리프레시 서비스를 요청하기 위한 타이머를 포함한다. 도 1에 도시된 바와 같이, 부트로더 영역(21)은 타이머(211)를 포함하고, 어플리케이션 영역(22)은 타이머(221)를 포함한다. 타이머(211, 221) 각각은 시간의 경과를 카운트한다.
부트로더 영역(21) 및 어플리케이션 영역(22) 각각은 공유 메모리 영역(3)으로부터 마지막 워치독 리프레시 타이밍을 수신한다. 부트로더 영역(21)은 타이머(211)의 시간과 마지막 워치독 리프레시 타이밍에 기초하여 리프레시 요청 타이밍이 윈도우 기간 중 오픈 윈도우 타이밍에 해당되는지 판단할 수 있다. 어플리케이션 영역(22)도 타이머(221)의 시간과 마지막 워치독 리프레시 타이밍에 기초하여 리프레시 요청 타이밍이 윈도우 기간 중 오픈 윈도우 타이밍에 해당되는지 판단할 수 있다.
부트로더 영역(21) 및 어플리케이션 영역(22) 각각은 워치독 타이머의 리프레시를 위한 리프레시 요청을 일정한 시간 간격으로 발생시킬 수 있다. 부트로더 영역(21) 및 어플리케이션 영역(22) 각각은 이렇게 발생하는 리프레시 요청을 외부 워치독 모듈(4)에 모두 전송하는 것이 아니라 리프레시 요청이 외부 워치독 모듈(4)의 윈도우 기간 중 오픈 윈도우 타이밍인지 판단하고, 오픈 윈도우에 속하는 시점이면 외부 워치독 모듈(4)에 전송하고, 그렇지 않으면 전송하지 않는다.
소프트웨어 영역(2)에서 운용되는 프로그램이 부트로더 영역(21)에서 어플리케이션 영역(22)으로 변경될 수 있고, 그 반대로 어플리케이션 영역(22)에서 부트로더 영역(21)으로 변경될 수 있다. 현재 운용되는 프로그램이 어느 영역에 속하는지에 따라 해당 영역이 워치독 리프레시를 요청할 수 있다.
외부 워치독 모듈(4)은 워치독 리프레시 수행 시점에 동기되어 윈도우 기간을 설정하고, 소프트웨어 영역(2)으로부터 워치독 리프레시 요청을 수신하면 공유 메모리 영역(3)으로부터 마지막 워치독 리프레시 타이밍을 획득하며, 워치독 리프레시가 가능한 타이밍인지 체크하고, 체크 결과 워치독 리프레시가 가능하면 워치독 리프레시 요청에 따라 워치독을 리프레시 하고, 체크 결과 워치독 리프레시가 가능하지 않으면 워치독 리프레시를 수행하지 않을 수 있다.
워치독이 리프레시되면 메인 제어 회로(1) 및 외부 워치독 모듈(4)에 결함이 없는 것으로 판단되고, 워치독은 지금까지 카운트한 결과를 리셋하고 오실레이터 클록을 이용하여 카운트를 다시 시작할 수 있다. 종래의 경우 부트로더 영역에서 어플리케이션 영역으로, 또는 그 반대로 점프가 발생할 경우, 마지막 워치독 리프레시 타이밍을 알 수 없어, 워치독 리프레시 요청 시점이 오픈 윈도우 타이밍에 해당되지 않아 결함이 발생한 것으로 인식되는 문제가 있었다. 본 개시의 일 실시예는 이를 방지하기 위해 공유 메모리 영역에 마지막 워치독 리프레시 타이밍을 저장한다.
도 2에 도시된 바와 같이, 먼저, 메인 제어 회로(1)의 부트로더 영역(21) 및 어플리케이션 영역(22) 중 하나가 공유 메모리 영역(3)으로부터 마지막 워치독 리프레시 타이밍을 획득한다(S1).
부트로더 영역(21) 또는 어플리케이션 영역(22) 중 하나는 주기적으로 리프레시 요청을 생성하고, 리프레시 요청의 생성 시점과 획득된 마지막 워치독 리프레시 타이밍 간의 차에 기초하여 현재 리프레시 요청 생성 시점이 윈도우 기간 중 오픈 윈도우 타이밍에 해당하는지 판단한다(S2).
S2의 판단 결과, 리프레시 요청 생성 시점이 오픈 윈도우 타이밍에 해당하면, 부트로더 영역(21) 및 어플리케이션 영역(22) 중 하나는 해당 리프레시 요청을 외부 워치독 모듈(4)에 전송한다(S3).
부트로더 영역(21) 및 어플리케이션 영역(22) 중 어느 하나가 공유 메모리 영역(3)으로부터 마지막 워치독 리프레시 타이밍을 획득하는지 그리고 리프레시 요청을 수행하는지는, 소프트웨어 영역(2)에서의 프로그램 플로우에 따라 결정된다. 즉, 현재 프로그램이 부트로더 영역(21)에서 수행된다면, 부트로드 영역(21)에서 리프레시 요청을 수행할 수 있고, 어플리케이션 영역(22)에서 수행된다면, 어플리케이션 영역(22)에서 리프레시 요청을 수행할 수 있다.
S2의 판단 결과, 리프레시 요청 생성 시점이 오픈 윈도우 타이밍에 해당되지 않으면, 해당 리프레시 요청은 무시되고(S4), 다음에 발생하는 리프레시 요청에 대해서 S2 단계의 판단을 수행한다.
외부 워치독 모듈(4)은 전송된 리프레시 요청을 수신하고, 공유 메모리 영역(3)으로부터 마지막 워치독 리프레시 타이밍을 획득한다(S5). 외부 워치독 모듈(4)은 워치독 리프레시가 가능한 타이밍 즉, 오픈 윈도우 타이밍인지 판단한다(S6).
S6의 판단 결과, 리프레시 요청을 수신한 시간이 워치독 리프레시가 가능한 오픈 윈도우 타이밍인 경우, 외부 워치독 모듈(4)은 워치독 리프레시 요청에 따라 워치독을 리프레시 한다(S7).
S6의 판단 결과, 리프레시 요청을 수신한 시간이 워치독 리프레시가 가능하지 않은 타이밍인 클로즈 윈도우 타이밍이면, 외부 워치독 모듈(4)은 워치독 리프레시를 수행하지 않는다(S8). S8 단계 이후 다시 S6 단계로 이동하여 시간의 경과에 따라 워치독 리프레시가 가능한 타이밍인지 판단할 수 있다.
S7 단계의 수행 시점이 마지막 워치독 리프레시 타이밍이 되어, 외부 워치독 모듈(4)은 공유 메모리 영역(3)에 이를 전송하고, 공유 메모리 영역(3)에 마지막 워치독 리프레시 타이밍이 저장된다. 즉, 마지막 워치독 리프레시 타이밍이 업데이트된다(S9).
일 실시예에 따르면 단계 S1-S9가 지속적으로 반복된다.
도 3은 일 실시예에 따른 워치독 리프레시가 수행되는 경우를 도식적으로 나타낸 도면이다.
도 3에 도시된 바와 같이, 프로그램 플로우는 부트로더 영역(21)에서 시점 t8에 어플리케이션 영역(22)으로 변경되는 것으로 설명한다.
부트로더 영역(21)은 시점 t1에 리프레시 요청을 생성하고, 공유 메모리 영역(3)으로부터 마지막 리프레시 타이밍을 획득하여, 시점 t1의 리프레시 요청 시점이 오픈 윈도우 타이밍인 것으로 판단한다. 그러면 시점 t1의 리프레시 요청이 외부 워치독 모듈(4)에 전송되고, 외부 워치독 모듈(4)은 시점 t1의 리프레시 요청에 따라 워치독을 리프레시 하고, 새로운 윈도우 기간(W1)을 시점 t1에 동기되어 시작한다.
시점 t2 및 t3에 생성된 리프레시 요청은 윈도우 기간(W1)의 오픈 리프레시 타이밍 이전인 클로즈 리프레시 기간에 속하므로, 부트로더 영역(21)은 외부 위치독 모듈(4)에 해당 리프레시 요청을 전송하지 않는다.
부트로더 영역(21)은 시점 t4에 리프레시 요청을 생성하고, 공유 메모리 영역(3)으로부터 마지막 리프레시 타이밍인 t1을 획득하여, 시점 t4의 리프레시 요청 시점이 오픈 윈도우 타이밍인 것으로 판단한다. 그러면 시점 t4의 리프레시 요청이 외부 워치독 모듈(4)에 전송되고, 외부 워치독 모듈(4)은 시점 t4의 리프레시 요청에 따라 워치독을 리프레시 하고, 새로운 윈도우 기간(W2)을 시점 t4에 동기되어 시작한다.
동일한 방식으로 시점 t5 및 t6에 생성된 리프레시 요청은 무시되고, 시점 t7에 생성된 리프레시 요청이 외부 워치독 모듈(4)에 전송되고, 외부 워치독 모듈(4)은 시점 t7의 리프레시 요청에 따라 워치독을 리프레시 하고, 새로운 윈도우 기간(W3)을 시점 t7에 동기되어 시작한다.
시점 t8에 프로그램 플로우가 부트로더 영역(21)에서 어플리케이션 영역(22)으로 변경된다.
어플리케이션 영역(22)은 시점 t9에 리프레시 요청을 생성하고, 공유 메모리 영역(3)으로부터 마지막 리프레시 타이밍인 t7을 획득하여, 시점 t9의 리프레시 요청 시점이 윈도우 기간(W3)의 오픈 윈도우 타이밍 이전인 클로즈 윈도우 타이밍으로 판단하고, 시전 t9의 리프레시 요청을 무시한다. 시점 t10에 생성된 리프레시 요청도 동일한 방식으로 무시된다.
어플리케이션 영역(22)은 시점 t11에 리프레시 요청을 생성하고, 공유 메모리 영역(3)으로부터 마지막 리프레시 타이밍인 t7을 획득하여, 시점 t11의 리프레시 요청 시점이 오픈 윈도우 타이밍인 것으로 판단한다. 그러면 시점 t11의 리프레시 요청이 외부 워치독 모듈(4)에 전송되고, 외부 워치독 모듈(4)은 시점 t11의 리프레시 요청에 따라 워치독을 리프레시 하고, 새로운 윈도우 기간(W4)을 시점 t11에 동기되어 시작한다.
동일한 방식으로 시점 t12 및 t13에 생성된 리프레시 요청은 무시되고, 시점 t14에 생성된 리프레시 요청이 외부 워치독 모듈(4)에 전송되고, 외부 워치독 모듈(4)은 시점 t14의 리프레시 요청에 따라 워치독을 리프레시 하고, 새로운 윈도우 기간(W5)을 시점 t14에 동기되어 시작한다.
도 4는 일 실시예가 적용된 메인 제어 회로 및 외부 워치독 모듈을 포함하는 배터리 시스템을 나타낸 도면이다.
도 5는 일 실시예에 따른 배터리 관리 시스템의 구성을 나타낸 도면이다.
배터리 시스템(100)는 배터리 관리 시스템(Battery Management System, BMS)(110), 배터리 팩(120), 및 연결부(130)를 포함한다.
BMS(110)는 복수의 배터리 셀(C1-Cn)에 대한 정보를 포함한 배터리 시스템에 관한 다양한 정보를 취합 및 분석하여 배터리 시스템의 충방전, 배터리 셀 밸런싱, 보호 동작 등을 제어할 수 있다.
배터리 팩(120)은 전기적으로 연결되어 있는 복수의 배터리 셀(C1-Cn)을 포함한다. 배터리 팩(120)를 구성하는 복수의 배터리 셀((C1-Cn) 각각은 BMS(110)와 복수의 배선을 통해 전기적으로 연결되어 있다. 도 4에 도시된 배터리 팩(120)은 일 예로, 소정 개수의 배터리 셀이 직렬 연결되어 배터리 모듈을 구성하고, 소정 개수의 배터리 모듈이 직렬 및 병렬 연결되어 배터리 팩을 구성할 수 있다.
연결부(130)는 릴레이나 n 채널 타입의 트랜지스터등으로 구현될 수 있고, 배터리 팩(120)과 외부 장치 사이에 직렬 연결되어 있다. 연결부(130)은 BMS(110)로부터 공급되는 신호에 의해 동작할 수 있다.
BMS(110)는 메인 제어 회로(Main Control Unit, MCU)(111)와 복수의 ASIC(Application Specific Integrated Circuit)(112-114)를 포함한다. 복수의 ASIC(112-114) 각각은 복수의 배터리 셀(C1-Cn) 중 대응하는 배터리 셀에 연결되어, MCU(111)의 제어에 따라 배터리 셀 전압을 측정할 수 있고, 배터리 셀 중 밸런싱이 필요한 셀에 대해서 배터리 셀 밸런싱을 수행할 수 있으며, 배터리 셀 온도를 측정할 수 있다. 도 4에서는 3 개의 ASIC(112-114)가 도시되어 있으나, 이는 일 예로 배터리 팩(120)을 구성하는 복수의 셀 개수에 따라 ASIC의 개수가 달라질 수 있다.
MCU(111)는 소프트웨어 영역(101)과 공유 메모리 영역(102)를 포함하고, 소프트웨어 영역(101)은 도 1 내지 도 3을 참조로 설명한 소프트웨어 영역(2)과 동일한 방식으로 구현될 수 있다.
소프트웨어 영역(101)의 어플리케이션 영역(1012)에 저장된 어플리케이션이 수행되고, MCU(111)는 어플리케이션에 따라 동작할 수 있다. 어플리케이션 영역(1012)에는 배터리 모니터링 및 관리에 필요한 다수의 어플리케이션이 저장될 수 있고, 실행되는 어플리케이션에 따라, MCU(111)가 구동될 수 있다. 예를 들어, 어플리케이션 영역(1012)은 배터리 팩의 충전 상태 및 수명을 추정하기 위한 어플리케이션, 배터리 팩 전류 및 배터리 셀의 전압, 온도 등 상태 정보를 감지하기 위한 어플리케이션 등을 포함할 수 있다. 또한, 어플리케이션 영역(1012)은 배터리의 셀 밸런싱을 제어하거나, 배터리의 충방전을 제어하거나, 배터리에 대한 보호 동작을 수행하기 위한 어플리케이션 등을 포함할 수 있다. 즉, 복수의 ASIC(112-114)이 배터리 팩에 대한 상태 정보를 수집하도록 제어하고, MCU(110)가 수집된 정보를 처리하여 배터리 팩을 관리하기 위해 필요한 동작(셀 밸런싱, 충방전 등)을 제어하기 위한 다양한 어플리케이션이 어플리케이션 영역(1012)에 저장될 수 있다.
도 5에 도시된 바와 같이, 복수의 ASIC(112-114) 중 적어도 하나의 ASIC(112)에 외부 워치독 모듈(121)이 구현될 수 있다.
도 5에 도시된 바와 같이, ASIC(112)에 외부 워치독 모듈(121), MCU(111)의 부트로더 영역(1011), 어플리케이션 영역(1012), 및 공유 메모리 영역(102)은 앞서 도 1 내지 도 3을 참조로 한 설명과 동일하게 구현되어 동일한 방식으로 동작할 수 있다.
종래에는 정확한 오픈 윈도우 타이밍에서만 워치독 리프레쉬가 가능하여 윈도우 사이즈(window size)를 고려하여 특정 작업(task)에 워치독 리프레시 루틴이 삽입되었다. 윈도우 사이즈가 32ms일 때, 오픈 윈도우가 16ms부터 32ms인 경우, 25ms 작업에 리프레시 요청을 넣어 정상적으로 동작할 수 있도록 하였다. 그러나 서로 다른 소프트웨어 구성 간의 점프(jump)가 발생하는 경우 작업 타이밍 및 마지막 워치독 리프레시 타이밍 등을 알 수 없어 의도하지 않은 워치독 실패가 발생하였다.
본 개시에서 소개된 실시예들을 통해 위와 같은 문제를 해결할 수 있다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였으나, 본 발명의 권리범위가 이에 한정되는 것은 아니며 본 발명이 속하는 분야에서 통상의 지식을 가진 자가 여러 가지로 변형 및 개량한 형태 또한 본 발명의 권리범위에 속한다.
1, 111: 메인 제어 회로
2, 101: 소프트웨어 영역
3, 102: 공유 메모리 영역
4, 121: 외부 워치독 모듈
21, 1011: 부트로더 영역
22, 1012: 어플리케이션 영역
100: 배터리 시스템
110: 배터리 관리 시스템(Battery Management System)
120: 배터리 팩
130: 연결부

Claims (13)

  1. 부트로더 영역 및 어플리케이션 영역을 포함하는 소프트웨어 영역, 그리고 마지막 워치독 리프레시 타이밍을 저장하는 공유 메모리 영역; 및
    상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나로부터 전송되는 리프레시 요청에 응답하여, 상기 공유 메모리 영역으로부터 상기 마지막 워치독 리프레시 타이밍과 상기 전송된 리프레시 요청 타이밍에 기초하여, 상기 전송된 리프레시 요청 타이밍이 오픈 윈도우 타이밍이면 워치독을 리프레시하는 외부 워치독 모듈을 포함하는,
    워치독 시스템.
  2. 제1항에 있어서,
    상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나는,
    리프레시 요청을 생성하고, 상기 리프레시 요청이 생성된 시점과 상기 공유 메모리 영역으로부터 획득된 상기 마지막 워치독 리프레시 타이밍에 기초하여, 상기 외부 워치독 모듈의 윈도운 기간 중 오픈 윈도우 타이밍인지 판단하고, 상기 리프레시 요청이 생성된 시점이 상기 오픈 윈도우 타이밍이면 상기 외부 워치독 모듈에 전송하는,
    워치독 시스템.
  3. 제1항에 있어서,
    상기 외부 워치독 모듈은,
    상기 워치독을 리프레시한 시점을 상기 공유 메모리 영역에 상기 마지막 워치독 리프레시 시점으로 업데이트 하는,
    워치독 시스템.
  4. 제1항에 있어서,
    상기 소프트웨어 영역의 프로그램 플로우에 따라 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 결정되는,
    워치독 시스템.
  5. 부트로더 영역, 어플리케이션 영역, 공유 메모리 영역, 및 외부 워치독 모듈을 포함하는 워치독 시스템의 워치독 방법에 있어서,
    상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 리프레시 요청을 상기 외부 워치독 모듈에 전송하는 단계;
    상기 외부 워치독 모듈이 상기 공유 메모리 영역으로부터 마지막 워치독 리프레시 타이밍을 획득하고, 상기 리프레시 요청을 수신한 시간이 워치독 리프레시가 가능한 오픈 윈도우 타이밍인지 판단하는 단계;
    상기 외부 워치독 모듈의 판단 결과, 상기 리프레시 요청을 수신한 시간이 상기 오픈 윈도우 타이밍인 경우, 상기 워치독 리프레시 요청에 따라 워치독을 리프레시 하는 단계; 및
    상기 워치독 리프레시 단계 타이밍이 마지막 워치독 리프레시 타이밍으로 상기 공유 메모리 영역에 저장되는 단계를 포함하는,
    워치독 방법.
  6. 제5항에 있어서,
    상기 외부 워치독 모듈의 판단 결과, 상기 리프레시 요청을 수신한 시간이 워치독 리프레시가 가능하지 않은 클로즈 윈도우 타이밍이면, 워치독 리프레시를 수행하지 않는 단계를 더 포함하는,
    워치독 방법.
  7. 제5항에 있어서,
    상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 리프레시 요청을 상기 외부 워치독 모듈에 전송하는 단계는,
    상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 리프레시 요청을 생성하고, 상기 공유 메모리 영역으로부터 마지막 워치독 리프레시 타이밍을 획득하는 단계;
    상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 상기 리프레시 요청 생성 시점과 상기 획득된 마지막 워치독 리프레시 타이밍 간의 차에 기초하여 상기 리프레시 요청 생성 시점이 상기 오픈 윈도우 타이밍에 해당하는지 판단하는 단계; 및
    상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나의 판단 결과, 상기 리프레시 요청 생성 시점이 상기 오픈 윈도우 타이밍에 해당하면, 상기 외부 워치독 모듈에 상기 리프레시 요청을 전송하는 단계를 포함하는,
    워치독 방법.
  8. 제7항에 있어서,
    상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 리프레시 요청을 상기 외부 워치독 모듈에 전송하는 단계는,
    상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나의 판단 결과, 상기 리프레시 요청 생성 시점이 오픈 윈도우 타이밍에 해당되지 않으면, 상기 리프레시 요청을 무시하는 단계를 더 포함하는,
    워치독 방법.
  9. 제5항에 있어서,
    상기 소프트웨어 영역의 프로그램 플로우에 따라 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 결정되는 단계를 더 포함하는,
    워치독 방법.
  10. 복수의 배터리 셀을 포함하는 배터리 팩을 관리하는 배터리 관리 시스템에 있어서,
    상기 복수의 배터리 셀의 전압을 측정하고, 상기 복수의 배터리 셀에 대한 셀 밸런싱을 수행하는 적어도 하나의 ASIC; 및
    상기 적어도 하나의 ASIC을 제어하는 메인 제어 회로를 포함하며,
    상기 메인 제어 회로는,
    부트로더 영역 및 어플리케이션 영역을 포함하는 소프트웨어 영역, 그리고 마지막 워치독 리프레시 타이밍을 저장하는 공유 메모리 영역을 포함하고,
    상기 적어도 하나의 ASIC은,
    상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나로부터 전송되는 리프레시 요청에 응답하여, 상기 공유 메모리 영역으로부터 상기 마지막 워치독 리프레시 타이밍과 상기 전송된 리프레시 요청 타이밍에 기초하여, 상기 전송된 리프레시 요청 타이밍이 오픈 윈도우 타이밍이면 워치독을 리프레시하는 외부 워치독 모듈을 포함하는,
    배터리 관리 시스템.
  11. 제10항에 있어서,
    상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나는,
    리프레시 요청을 생성하고, 상기 리프레시 요청이 생성된 시점과 상기 공유 메모리 영역으로부터 획득된 상기 마지막 워치독 리프레시 타이밍에 기초하여, 상기 외부 워치독 모듈의 윈도운 기간 중 오픈 윈도우 타이밍인지 판단하고, 상기 리프레시 요청이 생성된 시점이 상기 오픈 윈도우 타이밍이면 상기 외부 워치독 모듈에 전송하는,
    배터리 관리 시스템.
  12. 제10항에 있어서,
    상기 외부 워치독 모듈은,
    상기 워치독을 리프레시한 시점을 상기 공유 메모리 영역에 상기 마지막 워치독 리프레시 시점으로 업데이트 하는,
    배터리 관리 시스템.
  13. 제10항에 있어서,
    상기 소프트웨어 영역의 프로그램 플로우에 따라 상기 부트로더 영역 및 상기 어플리케이션 영역 중 하나가 결정되는,
    배터리 관리 시스템.
KR1020190113110A 2019-09-11 2019-09-11 워치독 시스템, 워치독 방법, 및 워치독 시스템을 포함하는 배터리 관리 시스템 KR20210031317A (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020190113110A KR20210031317A (ko) 2019-09-11 2019-09-11 워치독 시스템, 워치독 방법, 및 워치독 시스템을 포함하는 배터리 관리 시스템
CN202080012320.2A CN113383331A (zh) 2019-09-11 2020-11-04 看门狗系统、看门狗方法以及包括看门狗系统的电池管理系统
US17/430,520 US11928008B2 (en) 2019-09-11 2020-11-04 Watchdog system, watchdog method, and battery management system comprising watchdog system
PCT/IB2020/060337 WO2021048835A2 (ko) 2019-09-11 2020-11-04 워치독 시스템, 워치독 방법, 및 워치독 시스템을 포함하는 배터리 관리 시스템
EP20862313.2A EP3905045B1 (en) 2019-09-11 2020-11-04 Watchdog system, watchdog method, and battery management system comprising watchdog system
JP2021540279A JP7179255B2 (ja) 2019-09-11 2020-11-04 ウォッチドッグシステム、ウォッチドッグ方法、およびウォッチドッグシステムを含むバッテリー管理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190113110A KR20210031317A (ko) 2019-09-11 2019-09-11 워치독 시스템, 워치독 방법, 및 워치독 시스템을 포함하는 배터리 관리 시스템

Publications (1)

Publication Number Publication Date
KR20210031317A true KR20210031317A (ko) 2021-03-19

Family

ID=74870013

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190113110A KR20210031317A (ko) 2019-09-11 2019-09-11 워치독 시스템, 워치독 방법, 및 워치독 시스템을 포함하는 배터리 관리 시스템

Country Status (6)

Country Link
US (1) US11928008B2 (ko)
EP (1) EP3905045B1 (ko)
JP (1) JP7179255B2 (ko)
KR (1) KR20210031317A (ko)
CN (1) CN113383331A (ko)
WO (1) WO2021048835A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102384589B1 (ko) * 2021-12-17 2022-04-08 주식회사 티머니 Pmic를 이용한 임베디드 단말기 상태 모니터링 및 제어 방법 및 이를 위한 임베디드 단말기

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116521201B (zh) * 2023-04-26 2024-07-09 如果新能源科技(江苏)股份有限公司 电池包的软件升级方法和电池包

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4721955A (en) * 1983-04-22 1988-01-26 Motorola, Inc. Paging universal remote control system
JP3536293B2 (ja) 1997-12-16 2004-06-07 横河電機株式会社 二重化コンピュータ装置
DE19800462C1 (de) 1998-01-08 1999-06-17 Siemens Ag Verfahren zum Synchronisieren einer elektronischen Einrichtung zur Funktionsüberwachung eines Mikroprozessors sowie elektronische Einrichtung zur Durchführung des Verfahrens
JP2002140209A (ja) * 2000-10-31 2002-05-17 Toshiba Corp ウオッチドッグタイマ
JP2009218784A (ja) 2008-03-10 2009-09-24 Yaskawa Electric Corp ウオッチドグタイマ監視システム及びウオッチドグタイマ監視方法
JP2009289119A (ja) * 2008-05-30 2009-12-10 Nec Electronics Corp ウォッチドッグ・タイマ及びマイクロコンピュータ
DE102010041003A1 (de) * 2010-09-20 2012-03-22 Sb Limotive Company Ltd. Verfahren zum Überwachen von mindestens zwei Mikrocontrollern
GB2487945A (en) 2011-02-10 2012-08-15 Jaguar Cars Motor Vehicle Shutdown Control
JP5739290B2 (ja) 2011-09-14 2015-06-24 株式会社ケーヒン 電子制御装置
EP2842035A2 (en) 2012-04-27 2015-03-04 Marvell World Trade Ltd. Memory dump and analysis in a computer system
US8943303B2 (en) * 2012-07-05 2015-01-27 Infineon Technologies Ag Monitoring circuit with a window watchdog
US9032258B2 (en) 2012-09-14 2015-05-12 Infineon Technologies Ag Safety system challenge-and-response using modified watchdog timer
KR102007246B1 (ko) * 2012-12-04 2019-08-05 현대모비스 주식회사 와치독 감지 작동 확인 방법 및 장치
KR101491347B1 (ko) 2013-11-14 2015-02-06 현대오트론 주식회사 프로세서와 와치독 모듈의 동작 방법 및 장치
GB201413836D0 (en) * 2014-08-05 2014-09-17 Arm Ip Ltd Device security apparatus and methods
US20170010896A1 (en) * 2015-07-06 2017-01-12 Lear Corporation Shared Memory Architecture Autoupdater
JP6742899B2 (ja) * 2016-12-27 2020-08-19 ルネサスエレクトロニクス株式会社 半導体装置
CN206930958U (zh) * 2017-06-06 2018-01-26 青岛优迈自动化科技有限公司 一种自循迹智能小车控制系统
US10067834B1 (en) 2017-10-05 2018-09-04 Dell Products Lp Systems and methods for resetting one or more system components in response to a watchdog timer (WDT) event
JP2019101515A (ja) * 2017-11-29 2019-06-24 ルネサスエレクトロニクス株式会社 半導体装置及びその電源監視方法
KR102258171B1 (ko) 2017-12-15 2021-05-28 주식회사 엘지에너지솔루션 워치독 타이머를 진단하기 위한 장치 및 방법
CN110727536A (zh) * 2019-10-09 2020-01-24 上海元城汽车技术有限公司 控制器自检方法、装置、计算机设备和可读存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102384589B1 (ko) * 2021-12-17 2022-04-08 주식회사 티머니 Pmic를 이용한 임베디드 단말기 상태 모니터링 및 제어 방법 및 이를 위한 임베디드 단말기

Also Published As

Publication number Publication date
WO2021048835A3 (ko) 2021-05-06
EP3905045A2 (en) 2021-11-03
JP7179255B2 (ja) 2022-11-29
US20220129341A1 (en) 2022-04-28
JP2022536818A (ja) 2022-08-19
CN113383331A (zh) 2021-09-10
EP3905045A4 (en) 2022-04-27
US11928008B2 (en) 2024-03-12
EP3905045B1 (en) 2023-05-24
WO2021048835A2 (ko) 2021-03-18

Similar Documents

Publication Publication Date Title
US11415630B2 (en) Methods and apparatus for updating a fuel gauge and estimating state of health of an energy storage cell
EP2851700B1 (en) Method and terminal for displaying capacity of battery
JP7179255B2 (ja) ウォッチドッグシステム、ウォッチドッグ方法、およびウォッチドッグシステムを含むバッテリー管理システム
US20210039519A1 (en) Apparatus and application for predicting discharge of battery
US20130238826A1 (en) Device and method for global time information in event-controlled bus communication
WO2020255557A1 (ja) 電池劣化診断システム、診断処理装置、測定装置及びプログラム
US20180102670A1 (en) Vehicle Battery Status Detection By Tracking a Temperature Gradient
WO2017071357A1 (zh) 时间获取方法与装置
Reindl et al. Software update of a decentralized, intelligent battery management system based on multi-microcomputers
KR20200087494A (ko) 배터리 관리 방법 및 장치
US9933488B2 (en) Open circuit voltage checking for a battery system
Hester et al. Batteries not included
CN110659138A (zh) 基于定时任务的数据同步方法、装置、终端及存储介质
KR20210016797A (ko) 배터리의 성능 예측 장치 및 애플리케이션
CN112485640A (zh) 内置电容器的检测方法、装置、检测设备和存储介质
KR102668470B1 (ko) 배터리 관리 시스템 및 배터리 팩
US20160103704A1 (en) Data processing device and method of controlling the same
KR20210034373A (ko) 배터리 관리 장치 및 방법, 및 이를 포함하는 배터리 관리 시스템
US11232651B2 (en) Method for determining a period
US11843095B2 (en) Secondary battery management device, secondary battery management method, and non-transitory computer readable storage medium
KR20160054298A (ko) 태스크 실행 오류 진단 장치 및 방법
CN110109342B (zh) 一种晶振频率守时的方法及守时设备
CN110083393A (zh) 快闪存储器和植入式医疗设备
WO2020149703A1 (ko) 메모리, 메모리의 에러 복구 방법, 및 메모리를 포함하는 배터리 장치
KR20230032351A (ko) 배터리 관리 장치 및 그것의 동작 방법

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination