KR20170062843A - 보안 정책에 따라 공유 데이터 영역의 접근을 통제하는 배터리 관리 시스템 - Google Patents

보안 정책에 따라 공유 데이터 영역의 접근을 통제하는 배터리 관리 시스템 Download PDF

Info

Publication number
KR20170062843A
KR20170062843A KR1020150168536A KR20150168536A KR20170062843A KR 20170062843 A KR20170062843 A KR 20170062843A KR 1020150168536 A KR1020150168536 A KR 1020150168536A KR 20150168536 A KR20150168536 A KR 20150168536A KR 20170062843 A KR20170062843 A KR 20170062843A
Authority
KR
South Korea
Prior art keywords
data
module
security
layer
battery
Prior art date
Application number
KR1020150168536A
Other languages
English (en)
Other versions
KR102034207B1 (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 KR1020150168536A priority Critical patent/KR102034207B1/ko
Publication of KR20170062843A publication Critical patent/KR20170062843A/ko
Application granted granted Critical
Publication of KR102034207B1 publication Critical patent/KR102034207B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • H02J2007/0001

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 보안 정책에 따라 공유 데이터 영역의 접근을 통제하는 배터리 관리 시스템을 개시한다. 본 발명에 따른 시스템은, 배터리 관리 프로그램이 저장되고 보안 정책이 적용되는 복수의 데이터 블록들을 포함하는 공유 데이터 영역이 할당되는 메모리 디바이스 및 상기 배터리 관리 프로그램을 실행하는 마이크로프로세서를 포함한다. 상기 배터리 관리 프로그램은 상기 메모리 디바이스에 데이터를 기록하고 읽는 기능을 추상화한 메모리 추상화 모듈이 포함된 베이직 계층; 상기 베이직 계층 상에 적층된 RTE(Run Time Environment) 계층; 및 상기 RTE 계층 위에 적층되고, 응용 모듈과 보안 관리 모듈을 포함하는 응용 계층을 포함한다. 상기 보안 관리 모듈은 상기 RTE 계층을 통해 상기 응용 모듈로부터 ID와 함께 적어도 하나의 데이터 블록에 대한 읽기 또는 쓰기 요청을 전달 받고, 상기 ID에 대해 상기 복수의 데이터 블록 별로 미리 할당된 보안 설정 데이터를 참조하여 상기 응용 모듈의 읽기 또는 쓰기 권한을 판별하고, 권한이 인정된 읽기 또는 쓰기 요청에 대해서만 상기 RTE 계층을 통해 상기 메모리 추상화 모듈을 호출하여 상기 데이터 블록에 대한 읽기 또는 쓰기 요청을 실행한다.

Description

보안 정책에 따라 공유 데이터 영역의 접근을 통제하는 배터리 관리 시스템{Battery Management System Controlling Access to Share Data Region Based on Security Policy}
본 발명은 배터리 관리를 위해 사용되는 배터리 관리 시스템(Battery Management System: BMS)에서 메모리 디바이스에 저장된 데이터의 접근을 통제하는 기술에 관한 것이다.
배터리는 휴대폰, 랩탑 컴퓨터, 스마트 폰, 스마트 패드 등의 모바일 디바이스뿐만 아니라 전기로 구동되는 자동차(EV, HEV, PHEV)나 대용량 전력 저장 장치(ESS) 등의 분야로까지 그 용도가 급속도로 확산되고 있다.
배터리는 배터리 관리 시스템과 결합된다. 배터리 관리 시스템은, 배터리의 동작을 전반적으로 제어한다.
배터리 관리 시스템은 하드웨어적 관점에서, 메모리 디바이스, 마이크로프로세서, I/O 인터페이스, 통신 인터페이스, 전압 측정 회로와 같은 측정 요소, 셀 밸런싱 회로, 온도 센서, 전류 센서, 전류 흐름을 개폐하기 위한 릴레이 스위치, 전계효과트랜지스터(FET) 등의 반도체 스위치 등을 포함한다.
배터리 관리 시스템은, 기능적 관점에서, 배터리의 전압, 전류 및 온도 측정; 과충전 및 과방전 제어; 충전 상태(State Of Charge; SOC) 및 건강 상태(State Of Health; SOH)의 추정; 셀 전압의 균등화; 릴레이 스위치와 같은 디바이스의 성능 진단; 다른 제어 디바이스와의 데이터 통신 등의 기능을 수행한다.
마이크로프로세서는 상기 기능들을 실행하기 위해 프로그램 언어로 작성된 복수의 응용 모듈을 실행한다.
복수의 응용 모듈은, 예컨대 주기적으로 배터리의 전압, 전류 및 온도를 측정하는 측정 모듈; 측정된 데이터로부터 배터리의 충전 상태, 건강 상태 및 출력을 추정하는 추정 모듈; 배터리에 관한 측정 데이터와 추정 데이터를 외부에 있는 다른 제어 디바이스 측으로 전송하는 통신 모듈 등을 포함한다.
복수의 응용 모듈은 다양한 데이터를 생성한다. 생성된 데이터는 전압, 전류, 온도, 충전 상태, 건강 상태, 출력 등을 포함한다. 생성된 데이터는 메모리 디바이스에 저장된다.
메모리 디바이스는 배터리 관리 시스템의 전원이 차단되어도 보존되어야 하는 데이터, 예컨대 배터리의 충전 상한 전압(Vmax), 충전 하한 전압(Vmin), 개방전압-충전 상태 룩업 테이블, 배터리가 키-오프 되었을 때의 개방 전압과 그에 대응되는 충전 상태, 배터리의 충전 상태와 건강 상태를 추정하는데 필요한 파라미터들을 저장한다. 또한, 메모리 디바이스는 시간 간격을 두고 반복 측정된 전압, 전류 및 온도 등의 측정 데이터와 시간 간격을 두고 갱신되는 충전 상태 등의 데이터를 저장한다.
메모리 디바이스에 저장되는 데이터들 중에서 일부 데이터는 보안성이 요구된다. 예를 들어, 배터리의 충전 상태를 계산할 때 사용되는 파라미터 중 하나인 배터리의 공칭 용량이 대표적이다.
보안성이 요구되는 데이터가 변조되면 배터리를 안전하게 동작시킬 수 없다. 상기의 예에서, 공칭 용량이 변조되면, 배터리의 충전 상태가 실제 값과 다르기 때문에 배터리가 과충전되거나 과방전될 수 있다.
메모리 디바이스에 저장된 데이터의 변조는 응용 모듈들 상호 간의 충돌, 응용 모듈의 잘못된 코딩에 의한 오동작, 외부 침입자 등에 의해 이루어질 수 있다.
특히, 배터리가 인포테인먼트 기능을 지원하는 전기 자동차에 탑재될 경우 데이터의 변조는 더욱 심각한 문제를 초래할 수 있다.
전기 자동차는 배터리 관리 시스템과 자동차의 ECU(Electronic Control Unit)가 CAN 통신망을 통해 연결되어 있다. 또한, 대부분의 전기 자동차는 스마트 기기가 서로 링크되어 무선 데이터 통신을 한다.
스마트 기기는 잘 알려진 바와 같이 무선 통신망을 통해 외부 침입자가 배터리 관리 시스템에 접근할 수 있는 루트를 제공한다. 따라서, 메모리 디바이스에 저장된 데이터가 해킹에 의해 변조될 수 있다.
전기 자동차에 탑재된 배터리는 안전성이 최우선이다. 만약 배터리 관리 시스템이 해킹되어 보안이 요구되는 데이터가 변조되면 배터리의 충전과 방전이 안전하게 제어될 수 없다. 최악의 경우, 전기 자동차가 운행 중에 갑자기 멈춤으로써 치명적인 교통 사고가 일어날 수 있다.
본 발명은 위와 같은 종래 기술의 배경하에 창안된 것으로서, 보안 정책에 따라 배터리 관리 시스템의 메모리 디바이스에 저장된 데이터의 접근을 통제하여 보안성이 요구되는 데이터의 변조를 방지할 수 있는 배터리 관리 시스템을 제공하는데 그 목적이 있다.
상기 기술적 과제를 달성하기 위한 본 발명에 따른 배터리 관리 시스템은, 배터리 관리 프로그램이 저장되고 보안 정책이 적용되는 복수의 데이터 블록들을 포함하는 공유 데이터 영역이 할당되는 메모리 디바이스 및 상기 배터리 관리 프로그램을 실행하는 마이크로프로세서를 포함할 수 있다.
바람직하게, 상기 배터리 관리 프로그램은 상기 메모리 디바이스에 데이터를 기록하고 읽는 기능을 추상화한 메모리 추상화 모듈이 포함된 베이직 계층; 상기 베이직 계층 상에 적층된 RTE(Run Time Environment) 계층; 및 상기 RTE 계층 위에 적층되고, 응용 모듈과 보안 관리 모듈을 포함하는 응용 계층을 포함할 수 있다.
바람직하게, 상기 보안 관리 모듈은 상기 RTE 계층을 통해 상기 응용 모듈로부터 ID와 함께 적어도 하나의 데이터 블록에 대한 읽기 또는 쓰기 요청을 전달 받고, 상기 ID에 대해 상기 복수의 데이터 블록 별로 미리 할당된 보안 설정 데이터를 참조하여 상기 응용 모듈의 읽기 또는 쓰기 권한을 판별하고, 권한이 인정된 읽기 또는 쓰기 요청에 대해서만 상기 RTE 계층을 통해 상기 메모리 추상화 모듈을 호출하여 상기 데이터 블록에 대한 읽기 또는 쓰기 요청을 실행할 수 있다.
일 측면에 따르면, 상기 메모리 디바이스는 비휘발성 메모리와 휘발성 메모리를 포함하고, 상기 복수의 데이터 블록들은 비휘발성 메모리 또는 휘발성 메모리에 할당될 수 있다.
다른 측면에 따르면, 상기 메모리 디바이스는 비휘발성 메모리와 휘발성 메모리를 포함하고, 상기 복수의 데이터 블록들 중 일부는 비휘발성 메모리에 할당되고 나머지는 휘발성 메모리에 할당될 수 있다.
바람직하게, 상기 보안 설정 데이터는 상기 복수의 데이터 블록들 각각에 대한 읽기 또는 쓰기 권한을 나타내는 보안 정책 비트의 배열을 포함할 수 있다.
바람직하게, 상기 보안 관리 모듈은 상기 보안 정책 비트의 배열에서 상기 응용 모듈이 읽기 또는 쓰기 접근을 시도하는 데이터 블록에 대응되는 보안 정책 비트를 식별하고, 식별된 보안 정책 비트를 참조하여 상기 응용 모듈의 읽기 또는 쓰기 권한을 판별할 수 있다.
일 측면에 따르면, 상기 복수의 데이터 블록들 중 어느 하나에 배터리 관리에 사용되는 파라미터 상수가 저장되고, 상기 보안 설정 데이터는 상기 파라미터 상수가 저장된 데이터 블록에 대한 쓰기 권한을 인정하지 않는 보안 정책 코드를 포함하고, 상기 보안 관리 모듈은 상기 RTE 계층을 통해 상기 응용 모듈로부터 ID와 함께 상기 파라미터 상수가 저장된 데이터 블록에 대한 쓰기 요청을 전달 받고, 상기 보안 설정 데이터를 참조하여 상기 응용 모듈의 쓰기 요청에 대한 거부 메시지를 RTE 계층을 통해 상기 응용 모듈로 전달할 수 있다.
바람직하게, 상기 응용 계층은 미리 설정된 스케쥴에 따라 상기 RTE 계층을 통해 상기 응용 모듈을 호출하여 실행시키는 실행 관리 모듈을 더 포함할 수 있다.
바람직하게, 상기 베이직 계층은 상기 메모리 추상화 모듈로부터 전달되는 상기 메모리 디바이스의 접근 커맨드를 실행하는 메모리 드라이버를 더 포함할 수 있다.
바람직하게, 상기 응용 계층은 상기 공유 데이터 영역에 접근하는 복수의 응용 모듈을 포함하고, 상기 보안 관리 모듈은 복수의 응용 모듈에 대해 할당된 ID 별로 미리 할당된 보안 설정 데이터를 참조하여 각 응용 모듈의 읽기 또는 쓰기 권한을 통제하고, 각 보안 설정 데이터는 상기 복수의 데이터 블록들에 대한 접근 권한을 정의한 보안 정책 비트의 배열을 포함할 수 있다.
본 발명에 따르면, 복수의 응용 모듈들이 배터리 관리 시스템의 메모리 디바이스에 저장된 공유 데이터에 접근할 때 각 응용 모듈에게 할당된 보안 정책에 따라 데이터의 접근을 통제함으로써 데이터의 보안성을 향상시킬 수 있다.
또한, 메모리 디바이스에 저장된 데이터의 변조를 차단함으로써 배터리의 제어 안전성이 향상될 수 있다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 한 실시예를 예시하는 것이며, 후술하는 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 배터리가 전기 자동차에 탑재되었을 때 본 발명의 실시예에 따른 배터리 관리 시스템이 어떠한 연결 구조를 가지는지를 보여주는 블록도이다.
도 2는 본 발명의 실시예에 따른 배터리 관리 시스템의 하드웨어 구성을 보여주는 블록도이다.
도 3은 본 발명의 실시예에 따른 배터리 관리 시스템의 프로그램에 대한 계층도이다.
도 4는 본 발명의 실시예에 따른 공유 데이터 영역에 할당된 복수의 데이터 블록을 도시한 개념도이다.
도 5 및 도 6은 본 발명의 실시예에 따라 응용 모듈의 공유 데이터 영역에 대한 접근을 통제하는 과정을 설명하기 위한 동작 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 출원을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 발명시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
도 1은 배터리(2)가 전기 자동차(1)에 탑재되었을 때 본 발명의 실시예에 따른 배터리 관리 시스템(3)이 어떠한 연결 구조를 가지는지를 보여주는 블록도이다.
도 1을 참조하면, 자동차(1)는 배터리(2), 배터리 관리 시스템(3), ECU(Electronic Control Unit, 4), 인버터(5) 및 모터(6)를 포함할 수 있다.
여기서, 본 발명은 배터리(2)와 배터리 관리 시스템(3)이 탑재되는 부하 장치의 종류에 의해 한정되지 않는다는 것을 이해하여야 한다.
배터리(2)는 모터(6)에 구동력을 제공하여 자동차(1)를 구동시키는 전기 에너지원이다. 배터리(2)는 인버터(5)를 통해서 충전 전력을 받아들이거나 방전 전력을 제공할 수 있다. 인버터(5)는 충전 전력을 배터리(2) 측으로 제공하기 위해 상용 전원 및/또는 브레이크와 결합된 회생 발전기와 전기적으로 커플링될 수 있다.
배터리(2)의 종류는 특별히 한정되지 않으며, 예컨대 리튬 이온 전지, 리튬 폴리머 전지, 니켈 카드뮴 전지, 니켈 수소 전지, 니켈 아연 전지 등으로 구성할 수 있다.
배터리(2)는 복수의 전지 셀이 직렬 또는 병렬로 연결되어 있는 팩으로 형성된다. 그리고 이러한 팩이 하나 이상 구비되어 배터리(2)를 형성할 수도 있다.
배터리 관리 시스템(3)은 배터리(2)의 전압, 전류, 온도 등을 모니터한다. 또한, 배터리(2)의 개방 전압(Open Circuit Voltage), 충전 상태(State Of Charge; SOC), 건강 상태(State Of Health; SOH), 출력 등 배터리(2)의 상태 정보를 측정 또는 추정한다. 또한, 배터리(2)의 전압이 설계 전압 범위를 벗어나면 배터리(2)의 충전 또는 방전을 중단시킨다. 또한, 배터리(2)에 포함된 단위 셀들의 전압 편차가 증가하면 단위 셀들의 전압을 균등화시킨다. 또한, ECU(4)가 요청한 데이터를 통신을 통해 ECU(4) 측으로 전송한다. 배터리 관리 시스템(3)은 이러한 기능 이외에도 다른 부가적인 기능들도 수행할 수 있다.
ECU(4)는 자동차(1)의 상태를 제어하는 전자 제어 장치이다. 예컨대, 엑셀레이터(accelerator)의 조작, 브레이크(break)의 조작, 자동차(1) 속도 등의 정보에 기초하여 주행 토크를 결정하고, 모터(6)의 출력이 주행 토크에 맞도록 모터(6)를 제어한다.
ECU(4)는 또한 배터리 관리 시스템(3)으로부터 전달받은 배터리(2)의 전압, 전류, 온도, SOC, SOH 등의 상태 정보에 부합하게 배터리(2)가 충전 또는 방전될 수 있도록 인버터(5)에 제어 신호를 인가한다.
ECU(4)는 그것의 기능에 따라서 복수 개가 구비될 수도 있음은 자명하다.
인버터(5)는 ECU(4)의 제어 신호에 기초하여 배터리(2)를 충전 또는 방전시킨다.
모터(6)는 배터리(2)의 전기 에너지를 이용하여 ECU(4)로부터 전달되는 제어 정보(예컨대, 토크 정보)에 기초하여 자동차(1)를 구동한다.
자동차(1)는 배터리(2)의 전기 에너지를 이용하여 구동되므로 배터리(2)와 모터(6)는 전기 회로를 통해 연결될 수 있다.
배터리 관리 시스템(3)은 크게 하드웨어와 프로그램을 포함한다.
도 2를 참조하면, 하드웨어(H)는, 적어도, 마이크로프로세서(31); 메모리 디바이스(32); ECU(4)와 통신을 수행하기 위한 통신 요소(33); 배터리(2)의 전압, 전류 또는 온도를 지시하는 전압 신호를 출력하는 측정 요소(34)를 포함한다.
통신 요소(33)는 CAN(Controller Area Network), LIN(Local Interconnect Network), FlexRay 또는 MOST(Media Oriented Systems Transport) 통신을 지원할 수 있는 통신 인터페이스를 포함할 수 있다.
측정 요소(34)는 전압 측정 회로, 전류 측정 회로 및 온도 측정 회로를 포함할 수 있다. 바람직하게, 각 회로는 독립적으로 구비된다.
메모리 디바이스(32)는 배터리 관리 프로그램을 구성하는 컴포넌트들과 라이브러리가 저장되어 있는 프로그램 영역(35)을 포함한다. 마이크로프로세서(31)는 프로그램 영역(35)에 접근하여 배터리 관리 프로그램을 실행한다.
메모리 디바이스(32)는 또한 배터리 관리 프로그램에 의해 생성되거나 미리 정의된 데이터들과 파라미터들이 저장되는 데이터 영역(36)을 포함한다.
도 3은 메모리 디바이스(32)에 저장된 배터리 관리 프로그램(10)의 논리적 계층 구조를 보여주는 블록 도이다.
도 3을 참조하면, 본 발명의 실시예에 따른 배터리 관리 프로그램(10)은, 계층적 관점에서, 베이직 계층(B); RTE(Run Time Environment) 계층(R); 및 응용 계층(C)을 포함한다.
RTE 계층(R)은 응용 계층(C)에 포함된 컴포넌트들 간의 상호 작용(interaction) 또는 응용 계층(C)과 베이직 계층(B)에 포함된 컴포넌트들 간의 상호 작용을 지원하기 위한 런타임 환경을 제공한다.
런타임 환경에 의해 지원되는 상호 작용은 특별히 제한되지 않지만, 데이터의 전송, 데이터의 요청, 데이터의 수신, 커맨드의 전달, 커맨드 실행 결과의 반환, API 호출, API 연결, 데이터 통신 등을 포함한다.
RTE 계층(R)은 또한 응용 계층(4)과 베이직 계층(B)에 포함된 컴포넌트들 간의 계층 내 또는 계층 간 상호 작용(interaction)을 구현하기 위해 응용 계층(C) 및 베이직 계층(B)에 포함된 각각의 컴포넌트들에게 적절한 인터페이스를 제공할 수 있다.
바람직하게, 베이직 계층(B)은 운영 체제(OS), 추상화부(A) 및 드라이버부(D)를 포함한다.
운영 체제(OS)는 멀티 태스킹, 이벤트/자원/태스크 관리, 인터럽트 관리, 알람, 에러 처리 등의 기능을 수행한다.
추상화부(A)는 배터리 관리 시스템(3)을 구성하는 하드웨어(H)와 배터리 관리 프로그램(10) 사이의 상호 작용을 추상화한 컴포넌트들을 포함한다.
바람직하게, 추상화부(A)는 시스템 추상화 모듈(A1), 통신 추상화 모듈(A2), I/O 추상화 모듈(A3) 및 메모리 추상화 모듈(A4)을 포함한다. 물론, 추상화 모듈의 수와 종류는 필요에 따라 변경될 수 있다.
시스템 추상화 모듈(A1)은, 에러 메니저, 워치 독, 운영체제(OS)의 라이브러리 함수 등과 같이 모든 계층에서 공통적으로 호출될 수 있는 서비스들을 추상화하는 모듈이다.
통신 추상화 모듈(A2)은 CAN(Controller Area Network), LIN(Local Interconnect Network), FlexRay 또는 MOST(Media Oriented Systems Transport)와 같은 통신 프로토콜을 이용한 통신이나 응용 계층(C)에 포함된 컴포넌트들 사이의 통신을 추상화하는 모듈이다.
I/O 추상화 모듈(A3)은 배터리(2)의 전압, 전류 및 온도를 측정하는 측정요소(34)를 이용하여 전압, 전류, 온도 등의 측정을 추상화하는 모듈이다. 또한, I/O 추상화 모듈(A3)은 냉각 팬이나 릴레이 스위치와 같은 엑츄에이터의 제어를 추상화하는 모듈이다.
메모리 추상화 모듈(A4)은 플래쉬 메모리나 EEPROM과 같은 비휘발성 메모리나 DRAM과 같은 휘발성 메모리를 포함하는 메모리 디바이스(32)에 데이터 영역을 할당하고 데이터를 기록하거나 읽는 것을 추상화하는 모듈이다.
바람직하게, 드라이버부(D)는 추상화부(A)와 배터리 관리 시스템(3)을 구성하는 하드웨어 사이에서 인터페이스를 형성하는 것으로서, 통신 드라이버(D1), I/O 드라이버(D2) 및 메모리 드라이버(D3)를 포함할 수 있다.
통신 드라이버(D1)는 통신 추상화 모듈(A2)로부터 송신 메시지를 제공 받아 통신망을 통해 출력하고, 반대로 통신망을 통해 수신되는 수신 메시지를 통신 추상화 모듈(A2)로 전달한다.
I/O 드라이버(D2)는 I/O 추상화 모듈(A3)의 커맨드에 따라 측정 요소(34)로부터 수신된 전압, 전류 또는 온도에 대한 아날로그 신호를 디지털 값으로 변환하여 I/O 추상화 모듈(A3)로 전달한다. 또한, I/O 드라이버(D2)는 외부의 엑츄에이터의 상태를 제어하기 위한 I/O 추상화 모듈(A3)의 커맨드에 따라 외부의 엑츄에이터 측으로 제어 신호를 출력한다. 엑츄에이터는 냉각 팬이나 릴레이 스위치 등을 포함한다.
메모리 드라이버(D3)는 데이터 영역의 할당, 데이터 쓰기, 데이터 읽기 등 에 대한 메모리 추상화 모듈(A4)의 커맨드에 따라 메모리 디바이스(32)에 데이터 영역을 할당하거나 데이터 영역에 데이터를 쓰거나 데이터를 읽어서 메모리 추상화 모듈(A4)로 전달한다.
바람직하게, 응용 계층(C)은, 실행 관리 모듈(I), 제1 내지 제n 응용 모듈(C1,..., Cn) 및 보안 관리 모듈(S)을 포함한다.
실행 관리 모듈(I)은 미리 정해진 스케쥴에 따라 RTE 계층(R)을 통해 제1 내지 제n 응용 모듈(C1,…,Cn)과 보안 관리 모듈(S)을 호출하여 실행하는 모듈이다.
응용 계층(C)에 포함된 컴포넌트들의 호출 순서는 미리 설계된다. 실행 관리 모듈(I)은 RTE 계층(R)을 통해 컴포넌트들의 실행을 호출할 수 있는 인터페이스를 포함할 수 있다.
제1 내지 제n 응용 모듈(C1,…,Cn)은 여러 가지 배터리 관리 기능을 구현한다. 배터리 관리 기능은, 배터리(2)의 전압, 전류 및 온도의 측정; 배터리(2)의 개방 전압, 충전 상태, 건강 상태 및 출력의 추정; 배터리(2)의 과충전 및 과방전 차단; 배터리(2)에 포함된 단위 셀들의 전압 균등화; 외부 ECU와의 데이터 통신; 릴레이 스위치 제어; 냉각 팬 제어 등을 포함한다.
상기 기능들은 제1 내지 제n 응용 모듈(C1,…,Cn)의 기능으로서 적절하게 배분되어 할당된다.
예를 들어, 제1 내지 제n응용 모듈(C1,…,Cn)들 중 하나의 컴포넌트는 주기적으로 배터리(2)의 전압, 전류 및 온도를 측정하고 측정된 전압 값, 전류 값 및 온도 값을 메모리 디바이스(32)에 저장하는 기능을 구현할 수 있다.
또한, 제1 내지 제n응용 모듈(C1,…,Cn)들 중 다른 하나의 컴포넌트는 주기적으로 메모리 디바이스(32)에 저장된 배터리(2)의 전압, 전류 및 온도에 관한 측정 데이터를 이용하여 배터리(2)의 충전 상태, 건강 상태 또는 출력을 결정하여 메모리 디바이스(32)에 저장하는 기능을 구현할 수 있다.
또한, 제1 내지 제n응용 모듈(C1,…,Cn)들 중 또 다른 하나의 컴포넌트는 메모리 디바이스(32)에 저장된 배터리(2)의 전압, 전류, 온도, 충전 상태, 건강 상태, 출력 등과 같이 측정되거나 계산된 데이터를 읽어서 통신망을 통해 외부의 ECU(4)로 전송할 수 있다.
또한, 제1 내지 제n응용 모듈(C1,…,Cn)들 중 또 다른 하나의 컴포넌트는 메모리 디바이스(32)에 저장된 배터리(2)의 온도 값이 기준 값보다 크면 냉각 팬을 구동시키는 기능을 구현할 수 있다.
상기에서 열거된 컴포넌트들의 기능은 일 예시에 불과하며, 시스템 설계자에 의해 얼마든지 변경될 수 있음은 당업자에게 자명하다.
제1 내지 제n 응용 모듈(C1,…,Cn)의 적어도 일부의 컴포넌트(들)은 RTE 계층(R)을 통해 메모리 추상화 모듈(A4)을 호출하여 메모리 디바이스(32)에 미리 정의되어 있는 공유 데이터 영역에 데이터를 쓰거나 데이터를 읽을 수 있다.
본 발명에 있어서, 공유 데이터 영역이라 함은 여러 개의 컴포넌트들에 의해 접근되는 메모리 디바이스의 데이터 영역을 의미한다.
예를 들어, 전압을 측정하는 응용 모듈은 공유 데이터 영역에 전압 데이터를 기록할 수 있다. 또한, 배터리(2)의 과충전과 과방전을 차단하는 응용 모듈은 공유 데이터 영역에 기록된 전압 데이터를 읽어서 배터리(2)의 전압이 동작 전압 범위를 벗어났는지 판별할 수 있다. 또한, 배터리(2)의 출력을 추정하는 응용 모듈은 공유 데이터 영역에 기록된 전압 데이터를 읽어서 배터리(2)의 출력을 추정하는데 이용할 수 있다. 또한, 배터리(2)의 충전 상태를 추정하는 응용 모듈은 공유 데이터 영역에 기록된 전압 데이터를 읽어서 배터리(2)의 충전 상태를 추정하는데 이용할 수 있다. 또한, 통신을 통해 ECU(4) 측으로 배터리(2)의 전압을 전송하는 응용 모듈은 공유 데이터 영역에 기록된 전압 데이터를 읽어서 ECU(4) 측으로 전송할 수 있다.
본 발명은 응용 계층(C)에 포함된 컴포넌트들이 공유 데이터 영역을 접근하고자 할 때 보안 정책에 따라 접근을 통제한다.
도 4는 메모리 디바이스(32)에 정의되는 공유 데이터 영역(M)의 논리적 구조를 보여주는 도면이다.
도 4를 참조하면, 본 발명의 실시예에 따른 공유 데이터 영역(M)은 p개의 데이터 블록(M1, M2,…, Mp)을 포함한다.
바람직하게, 각 데이터 블록에는 서로 다른 보안 정책이 적용된다. 따라서 데이터 블록에 할당된 보안 정책과 해당 데이터 블록에 접근하고자 하는 컴포넌트에 할당된 보안 정책이 서로 매칭되지 않으면 컴포넌트의 데이터 접근은 차단될 수 있다.
본 발명의 실시예에서, 메모리 디바이스(32)는 비휘발성 메모리와 휘발성 메모리를 포함할 수 있다. 비휘발성 메모리는 EEPROM 또는 플래쉬 메모리일 수 있고, 휘발성 메모리는 DRAM일 수 있다. 물론, 본 발명은 메모리의 구체적인 종류에 의해 한정되는 것은 아니다.
일 측면에 따르면, 공유 데이터 영역(M)은 비휘발성 메모리 또는 휘발성 메모리에 미리 할당될 수 있다.
다른 측면에 따르면, 복수의 데이터 블록 중에서 일부의 데이터 블록은 비휘발성 메모리에 할당되고, 나머지 데이터 블록은 휘발성 메모리에 할당될 수 있다. 일 예로, 데이터 블록 M1, M2 및 M3는 비휘발성 메모리에 할당되고, 데이터 블록 M4 내지 Mp는 휘발성 메모리에 할당될 수 있다.
다시 도 3으로 돌아가서, 보안 관리 모듈(S)은 실행 관리 모듈(I)에 의해 호출되어 실행될 때 RTE 계층(R)을 통해 메모리 추상화 모듈(A4)을 호출하여 메모리 디바이스(32)에 포함된 비휘발성 메모리 및/또는 휘발성 메모리에 복수의 데이터 블록(M1, …, Mp)을 포함하는 공유 데이터 영역(M)을 할당할 수 있다.
또한, 보안 관리 모듈(S)은 공유 데이터 영역(M)의 특정 데이터 블록(Mi, 1≤i≤p)에 대해 접근(쓰기 또는 읽기)을 시도하는 컴포넌트가 있을 때 해당 컴포넌트에 대해 미리 할당된 보안 정책에 따라 데이터 블록(Mi)의 접근을 통제할 수 있다.
도 5 및 도 6은 보안 관리 모듈(S)이 공유 데이터 영역(M)의 접근을 통제하는 개념을 구체적으로 예시한 개념도이다.
도 5를 참조하면, 먼저 단계 ①에서, 보안 관리 모듈(S)은 RTE 계층(R)을 통해 응용 계층(C)에 포함된 하나의 응용 모듈(Ck)로부터 공유 메모리 영역(M)에 포함된 특정 데이터 블록(Mi)에 대한 접근(쓰기 또는 읽기) 요청을 수신한다.
접근 요청은 적어도 응용 모듈(Ck)의 ID; 데이터 블록(Mi)의 식별자; 및 접근 방식(즉 읽기인지 쓰기인지)을 나타내는 식별자를 포함한다. 또한, 접근 요청이 데이터의 쓰기일 때, 접근 요청은 데이터 블록(Mi)에 기록될 데이터를 더 포함할 수 있다. 단계 ① 이후에 단계 ②가 진행된다.
단계 ②에서, 보안 관리 모듈(S)은 RTE 계층(R)을 통해 메모리 추상화 모듈(A4)을 호출하여 데이터 블록(Mi)에 접근을 시도하는 응용 모듈(Ck)의 ID에 해당하는 보안 설정 데이터의 읽기 커맨드를 메모리 추상화 모듈(A4)로 전달한다. 단계 ② 이후에 단계 ③이 진행된다.
단계 ③에서, 메모리 추상화 모듈(A4)은 메모리 드라이버(D3)을 이용하여 메모리 디바이스(MD)의 비휘발성 메모리에 저장된 보안 정책 데이터(Security Information: SI)로부터 데이터 블록(Mi)에 접근을 시도하는 응용 모듈(Ck)의 ID에 대응되는 보안 설정 데이터를 읽는다.
여기서, 보안 정책 데이터(SI)는 메모리 디바이스(MD)의 비휘발성 메모리에 미리 저장될 수 있다. 대안적으로, 보안 정책 데이터(SI)는 보안 관리 모듈(S)이 실행 관리 모듈(I)에 의해 실행될 때 메모리 디바이스(MD)의 비휘발성 메모리에 저장될 수 있다. 후자의 예에서, 보안 관리 모듈(S)은 RTE 계층(R)을 통해 메모리 추상화 모듈(A4)을 호출하여 보안 정책 데이터(SI)를 메모리 디바이스(MD)의 비휘발성 메모리에 기록한다. 이를 위해, 보안 관리 모듈(S)은 보안 정책 데이터(SI)를 데이터 구조체로서 정의하는 프로그램 코드를 포함할 수 있다. 데이터 구조체는 개발자에 의해 미리 정의될 수 있다.
보안 정책 데이터(SI)는 응용 계층(C)에 포함된 각 컴포넌트의 ID와 해당 ID에게 할당된 보안 설정 데이터를 포함한다. 각 컴포넌트의 ID 별로 할당되는 보안 설정 데이터는 공유 데이터 영역(M)에 포함된 각 데이터 블록에 대한 읽기 권한 및 쓰기 권한에 관한 보안 정책 비트를 포함한다.
각 데이터 블록에 대한 읽기 권한 및 쓰기 권한은 보안 정책 비트의 배열로 정의될 수 있다.
일 예로서, 하나의 데이터 블록에 대한 보안 정책 비트는 10, 01 및 11로 정의될 수 있다. 여기서, 10은 쓰기 권한만 있음을 의미하고, 01은 읽기 권한만 있음을 의미하고, 11은 읽기와 쓰기 권한이 모두 있음을 의미한다.
일 예로서, 공유 데이터 영역(M)에 포함된 데이터 블록의 수가 총 8개이고, 특정 컴포넌트의 ID에 대한 보안 정책을 나타내는 보안 정책 비트의 배열이 '11;10;01;11;10;01;10;01' 이라고 하자. 여기서, 세미 콜론은 보안 정책 비트의 배열을 구분하기 위해 삽입한 것으로 실제 보안 정책 비트의 배열에서는 제외될 수 있다.
상기 보안 정책 비트의 배열은 해당 컴포넌트가 첫 번째 데이터 블록에 대해서는 쓰기 및 읽기 권한이 있고, 두 번째 데이터 블록에 대해서는 쓰기 권한만 있고, 세 번째 데이터 블록에 대해서는 읽기 권한만 있고, 네 번째 데이터 블록에 대해서는 쓰기 및 읽기 권한이 있고, 다섯 번째 데이터 블록에 대해서는 쓰기 권한만 있고, 여섯 번째 데이터 블록에 대해서는 읽기 권한만 있고, 일곱 번째 데이터 블록에 대해서는 쓰기 권한만 있고, 여덟 번째 데이터 블록에 대해서는 읽기 권한만 있다는 것을 나타낸다.
도 5에 있어서, 단계 ③은 메모리 추상화 모듈(A4)이 데이터 블록(Mi)에 대한 접근 시도를 요청한 응용 모듈(Ck)의 보안 설정 데이터를 획득하는 단계이다.
응용 모듈(Ck)의 보안 설정 데이터는, 공유 데이터 영역(M)에 포함된 각 데이터 블록(M1-Mn)에 대한 응용 모듈(Ck)의 접근 권한을 정의한 보안 정책 비트를 포함한다.
보안 정책 비트의 배열에 의해 각 데이터 블록의 접근 권한을 정의한 보안 설정 데이터의 일 예시는 앞서 상술하였다. 단계 ③ 이후에 단계 ④가 진행된다.
단계 ④에서, 보안 관리 모듈(S)은 메모리 추상화 모듈(A4)로부터 응용 모듈(Ck)의 ID에 대응되는 보안 설정 데이터를 RTE 계층(R)을 통해 제공 받는다. 단계 ④ 이후에 도 6의 단계 ⑤가 진행된다.
도 6을 참조하면, 단계 ⑤에서, 보안 관리 모듈(S)은 메모리 추상화 모듈(A4)로부터 RTE 계층(R)을 통해 제공 받은 응용 모듈(Ck)의 보안 설정 데이터를 이용하여 응용 모듈(Ck)이 접근을 시도하는 데이터 블록(Mi)에 대해 접근 권한이 있는지 판별한다.
바람직하게, 보안 관리 모듈(S)은 보안 설정 데이터에 포함된 보안 정책 비트의 배열 중에서 응용 모듈(Ck)이 접근을 시도하는 데이터 블록(Mi)에 대응되는 보안 정책 비트를 이용하여 응용 모듈(Ck)이 데이터 블록(Mi)에 대해 접근 권한을 가지는지 판단한다.
일 예로, 데이터 블록(Mi)에 대한 응용 모듈(Ck)의 접근 시도가 데이터의 쓰기이고, 보안 설정 데이터의 보안 정책 비트의 배열 중에서 해당 데이터 블록(Mi)에 대응되는 보안 정책 비트가 읽기 권한(01)만 지시하고 있다고 하자.
이런 경우, 보안 관리 모듈(S)은 응용 모듈(Ck)이 데이터 블록(Mi)에 대해 접근 권한이 없다고 판단하고, 단계 ⑥을 진행한다.
즉, 단계 ⑥에서, 보안 관리 모듈(S)은 RTE 계층(R)을 통해 데이터 블록(Mi)에 대한 접근 거부 메시지를 응용 모듈(Ck)로 전달한다.
반면, 데이터 블록(Mi)에 대한 응용 모듈(Ck)의 접근 시도가 데이터의 쓰기이고, 보안 정책 비트의 배열 중에서 해당 데이터 블록(Mi)에 대응되는 보안 정책 비트가 쓰기 권한(10)만 지시하고 있거나 읽기/쓰기 권한을 모두 지시하고 있다고 하자.
이런 경우, 보안 관리 모듈(S)은 응용 모듈(Ck)이 데이터 블록(Mi)에 대해 접근 권한을 가지고 있다고 판단하고, 단계 ⑦을 진행한다.
단계 ⑦에서, 보안 관리 모듈(S)은 RTE 계층(R)을 통해 메모리 추상화 모듈(A4)을 호출하여 응용 모듈(Ck)이 요청한 데이터 블록(Mi)에 대한 접근 커맨드를 전달한다. 접근 커맨드는 데이터 블록(Mi)에 응용 모듈(Ck)이 보안 관리 모듈(S)로 전달한 데이터를 쓰거나 데이터 블록(Mi)에 저장된 데이터를 읽는 커맨드를 포함한다. 접근 커맨드의 종류는 응용 모듈(Ck)이 데이터 블록(Mi)에 대해 가지는 접근 권한에 따라 달라진다. 단계 ⑦ 이후에 단계 ⑧이 진행된다.
단계 ⑧에서, 메모리 추상화 모듈(A4)은 메모리 드라이버(D3)를 통해 데이터 블록(Mi)에 대한 접근 커맨드를 실행한다. 즉, 접근 커맨드가 응용 모듈(Ck)이 보안 관리 모듈(S)로 전달한 데이터를 데이터 블록(Mi)에 쓰라는 메시지를 포함하면, 데이터 블록(Mi)에 해당 데이터를 기록한다. 또한, 접근 커맨드가 데이터 블록(Mi)에 저장된 데이터를 읽으라는 메시지이면, 데이터 블록(Mi)에 저장된 데이터를 읽는다. 단계 ⑧ 이후에 단계 ⑨가 진행된다.
단계 ⑨에서, 메모리 추상화 모듈(A4)은 RTE 계층(R)을 통해 데이터 블록(Mi)에 대한 접근 커맨드의 실행 결과 메시지를 보안 관리 모듈(S)로 반환한다. 즉, 접근 커맨드가 응용 모듈(Ck)이 보안 관리 모듈(S)로 전달한 데이터를 데이터 블록(Mi)에 쓰라는 메시지이면, 상기 실행 결과 메시지는 데이터 쓰기가 정상적으로 이루어졌음을 지시하는 메시지를 포함할 수 있다. 또한, 접근 커맨드가 데이터 블록(Mi)에 저장된 데이터를 읽으라는 메시지이면, 상기 실행 결과 메시지는 데이터 읽기가 정상적으로 이루어졌음을 지시하는 메시지와 데이터 블록(Mi)으로부터 독출된 데이터를 포함한다. 단계 ⑨ 이후에 단계 ⑩이 진행된다.
단계 ⑩에서, 보안 관리 모듈(S)은 RTE 계층(R)을 통해 메모리 추상화 모듈(A4)로부터 제공 받은 실행 결과 메시지를 데이터 블록(Mi)에 대한 접근 시도를 요청한 응용 모듈(Ck) 측으로 전달한다.
이로써, 데이터 블록(Mi)에 대한 응용 모듈(Ck)의 접근 시도가 있을 때, 응용 모듈(Ck)의 ID에 대해 미리 할당된 보안 설정 데이터를 이용하여 데이터 블록(Mi)에 대한 선별적인 접근 통제가 구현될 수 있다.
본 발명에 따르면, 배터리(2)의 공칭 용량, 쿨롱 효율, 동작 상한 전압, 동작 하한 전압과 같은 중요한 파라미터는 하나의 데이터 블록에 기록하고 변조가 불가능하도록 모든 응용 모듈에 대해 읽기 권한만 부여할 수 있다. 또한, 전압, 전류 및 온도를 측정하는 응용 모듈에 대해서는 상기 파라미터들의 접근 권한을 완전히 차단하는 보안 정책 적용도 가능하다. 또한, 데이터 통신을 담당하는 응용 모듈에 대해서는 ECU 측으로 전송하는 데이터가 저장되어 있는 데이터 블록에 대해서만 읽기 권한을 부여하고 나머지 데이터 블록에 대한 접근 권한은 완전히 차단할 수 있다. 이러한 경우, 상기 파라미터들의 변조를 방지하여 배터리(2)의 관리 신뢰성을 향상시킬 수 있다.
본 발명에 있어서, 각 응용 모듈에 대한 보안 설정 데이터를 구성하는 방식에는 보안 정책 비트의 배열 이외에도 여러 가지 변경이 가능하다. 따라서, 본 발명은 보안 설정 데이터의 구체적인 형식에 의해 한정되는 것으로 해석되어서는 안 된다.
본 발명에 있어서, 베이직 계층(B), RTE 계층(R) 및 응용 계층(C)을 구성하는 컴포넌트들은 컴퓨터가 읽을 수 있는 코드 체계로 작성되어 컴퓨터가 읽을 수 있는 기록매체에 수록될 수 있다.
바람직하게, 기록매체는, 배터리 관리 시스템(3)에 포함된 마이크로프로세서가 접근 가능한 메모리 디바이스일 수 잇다.
또한, 기록매체는 배터리 관리 시스템(3) 또는 다른 컴퓨터에 포함된 마이크로프로세서에 의해 접근이 가능한 것이라면 그 종류에 특별한 제한이 없다.
일 예로서, 기록매체는 ROM, RAM, 레지스터, 플래쉬 메모리, CD-ROM, 자기 테이프, 하드 디스크, 플로피디스크 및 광 데이터 기록장치를 포함하는 군에서 선택된 적어도 하나 이상을 포함한다.
또한, 베이직 계층(B), RTE 계층(R) 및 응용 계층(C)을 구성하는 컴포넌트들을 구성하는 코드 체계는 캐리어 신호로 변조되어 특정한 시점에 통신 캐리어에 포함될 수 있고, 네트워크로 연결된 컴퓨터에 분산되어 저장되고 실행될 수 있다.
본 발명의 다양한 실시 양태를 설명함에 있어서, '~모듈'이라고 명명된 구성 요소들은 물리적으로 구분되는 요소들이라고 하기 보다 기능적으로 구분되는 요소들로 이해되어야 한다. 따라서 각각의 구성요소는 다른 구성요소와 선택적으로 통합되거나 각각의 구성요소가 제어 로직(들)의 효율적인 실행을 위해 서브 구성요소들로 분할될 수 있다.
하지만 구성요소들이 통합 또는 분할되더라도 기능의 동일성이 인정될 수 있다면 통합 또는 분할된 구성요소들도 본 발명의 범위 내에 있다고 해석되어야 함은 당업자에게 자명하다.
이상에서 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술사상과 아래에 기재될 특허청구범위의 균등범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.

Claims (9)

  1. 배터리 관리 프로그램이 저장되고 보안 정책이 적용되는 복수의 데이터 블록들을 포함하는 공유 데이터 영역이 할당되는 메모리 디바이스 및 상기 배터리 관리 프로그램을 실행하는 마이크로프로세서를 포함하는 배터리 관리 시스템에 있어서,
    상기 배터리 관리 프로그램은 상기 메모리 디바이스에 데이터를 기록하고 읽는 기능을 추상화한 메모리 추상화 모듈이 포함된 베이직 계층; 상기 베이직 계층 상에 적층된 RTE(Run Time Environment) 계층; 및 상기 RTE 계층 위에 적층되고, 응용 모듈과 보안 관리 모듈을 포함하는 응용 계층을 포함하고,
    상기 보안 관리 모듈은 상기 RTE 계층을 통해 상기 응용 모듈로부터 ID와 함께 적어도 하나의 데이터 블록에 대한 읽기 또는 쓰기 요청을 전달 받고, 상기 ID에 대해 상기 복수의 데이터 블록 별로 미리 할당된 보안 설정 데이터를 참조하여 상기 응용 모듈의 읽기 또는 쓰기 권한을 판별하고, 권한이 인정된 읽기 또는 쓰기 요청에 대해서만 상기 RTE 계층을 통해 상기 메모리 추상화 모듈을 호출하여 상기 데이터 블록에 대한 읽기 또는 쓰기 요청을 실행하는 것을 특징으로 하는 배터리 관리 시스템.
  2. 제1항에 있어서,
    상기 메모리 디바이스는 비휘발성 메모리와 휘발성 메모리를 포함하고,
    상기 복수의 데이터 블록들은 비휘발성 메모리 또는 휘발성 메모리에 할당되는 것을 특징으로 하는 배터리 관리 시스템.
  3. 제1항에 있어서,
    상기 메모리 디바이스는 비휘발성 메모리와 휘발성 메모리를 포함하고,
    상기 복수의 데이터 블록들 중 일부는 비휘발성 메모리에 할당되고 나머지는 휘발성 메모리에 할당되는 것을 특징으로 하는 배터리 관리 시스템.
  4. 제1항에 있어서,
    상기 보안 설정 데이터는 상기 복수의 데이터 블록들 각각에 대한 읽기 또는 쓰기 권한을 나타내는 보안 정책 비트의 배열을 포함하는 것을 특징으로 하는 배터리 관리 시스템.
  5. 제4항에 있어서,
    상기 보안 관리 모듈은 상기 보안 정책 비트의 배열에서 상기 응용 모듈이 읽기 또는 쓰기 접근을 시도하는 데이터 블록에 대응되는 보안 정책 비트를 식별하고, 식별된 보안 정책 비트를 참조하여 상기 응용 모듈의 읽기 또는 쓰기 권한을 판별하는 것을 특징으로 하는 배터리 관리 시스템.
  6. 제1항에 있어서,
    상기 복수의 데이터 블록들 중 어느 하나에 배터리 관리에 사용되는 파라미터 상수가 저장되고,
    상기 보안 설정 데이터는 상기 파라미터 상수가 저장된 데이터 블록에 대한 쓰기 권한을 인정하지 않는 보안 정책 코드를 포함하고,
    상기 보안 관리 모듈은 상기 RTE 계층을 통해 상기 응용 모듈로부터 ID와 함께 상기 파라미터 상수가 저장된 데이터 블록에 대한 쓰기 요청을 전달 받고, 상기 보안 설정 데이터를 참조하여 상기 응용 모듈의 쓰기 요청에 대한 거부 메시지를 RTE 계층을 통해 상기 응용 모듈로 전달하는 것을 특징으로 하는 배터리 관리 시스템.
  7. 제1항에 있어서,
    상기 응용 계층은 미리 설정된 스케쥴에 따라 상기 RTE 계층을 통해 상기 응용 모듈을 호출하여 실행시키는 실행 관리 모듈을 더 포함하는 것을 특징으로 하는 배터리 관리 시스템.
  8. 제1항에 있어서,
    상기 베이직 계층은 상기 메모리 추상화 모듈로부터 전달되는 상기 메모리 디바이스의 접근 커맨드를 실행하는 메모리 드라이버를 더 포함하는 것을 특징으로 하는 배터리 관리 시스템.
  9. 제1항에 있어서,
    상기 응용 계층은 상기 공유 데이터 영역에 접근하는 복수의 응용 모듈을 포함하고,
    상기 보안 관리 모듈은 복수의 응용 모듈에 대해 할당된 ID 별로 미리 할당된 보안 설정 데이터를 참조하여 각 응용 모듈의 읽기 또는 쓰기 권한을 통제하고,
    각 보안 설정 데이터는 상기 복수의 데이터 블록들에 대한 접근 권한을 정의한 보안 정책 비트의 배열을 포함하는 것을 특징으로 하는 배터리 관리 시스템.
KR1020150168536A 2015-11-30 2015-11-30 보안 정책에 따라 공유 데이터 영역의 접근을 통제하는 배터리 관리 시스템 KR102034207B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150168536A KR102034207B1 (ko) 2015-11-30 2015-11-30 보안 정책에 따라 공유 데이터 영역의 접근을 통제하는 배터리 관리 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150168536A KR102034207B1 (ko) 2015-11-30 2015-11-30 보안 정책에 따라 공유 데이터 영역의 접근을 통제하는 배터리 관리 시스템

Publications (2)

Publication Number Publication Date
KR20170062843A true KR20170062843A (ko) 2017-06-08
KR102034207B1 KR102034207B1 (ko) 2019-11-08

Family

ID=59221199

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150168536A KR102034207B1 (ko) 2015-11-30 2015-11-30 보안 정책에 따라 공유 데이터 영역의 접근을 통제하는 배터리 관리 시스템

Country Status (1)

Country Link
KR (1) KR102034207B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11228060B2 (en) 2017-10-13 2022-01-18 Lg Chem, Ltd. Data input scheduling apparatus
CN114122500A (zh) * 2021-11-24 2022-03-01 东莞新能安科技有限公司 电化学装置及其控制方法、电子装置、介质和充电装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100032504A (ko) * 2008-09-18 2010-03-26 삼성전자주식회사 공유 버스를 갖는 불휘발성 메모리와 멀티포트 반도체 메모리 장치를 채용한 멀티 프로세서 시스템
KR20150049777A (ko) * 2013-10-31 2015-05-08 주식회사 엘지화학 응용 모듈 실행제어장치 및 그 실행제어방법
KR20150049782A (ko) * 2013-10-31 2015-05-08 주식회사 엘지화학 모듈 중계 장치 및 그 중계 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100032504A (ko) * 2008-09-18 2010-03-26 삼성전자주식회사 공유 버스를 갖는 불휘발성 메모리와 멀티포트 반도체 메모리 장치를 채용한 멀티 프로세서 시스템
KR20150049777A (ko) * 2013-10-31 2015-05-08 주식회사 엘지화학 응용 모듈 실행제어장치 및 그 실행제어방법
KR20150049782A (ko) * 2013-10-31 2015-05-08 주식회사 엘지화학 모듈 중계 장치 및 그 중계 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11228060B2 (en) 2017-10-13 2022-01-18 Lg Chem, Ltd. Data input scheduling apparatus
CN114122500A (zh) * 2021-11-24 2022-03-01 东莞新能安科技有限公司 电化学装置及其控制方法、电子装置、介质和充电装置

Also Published As

Publication number Publication date
KR102034207B1 (ko) 2019-11-08

Similar Documents

Publication Publication Date Title
EP3648234B1 (en) Wireless battery management apparatus and battery pack including same
EP3800092B1 (en) Vehicle-mounted network system, invalidity detection electronic control unit, and invalidity detection method
EP2168819B1 (en) Vehicle-mounted device control system
US11958366B2 (en) Method for operating an electrical energy store of an electrically operable motor vehicle
US9595739B2 (en) Apparatus and method for controlling battery
CN108973720B (zh) 电池管理的方法及装置
KR102034207B1 (ko) 보안 정책에 따라 공유 데이터 영역의 접근을 통제하는 배터리 관리 시스템
KR102676243B1 (ko) 차량용 배터리 관리 시스템 및 그의 배터리 관리 방법과 그를 포함하는 차량
JP6184575B1 (ja) プログラム書き換え及び検証システム
US20230061577A1 (en) Vehicle-based safety processor
KR20210051462A (ko) 배터리 관리 시스템 및 그 통신 방법
KR102078347B1 (ko) 데이터 무결성 검증 및 복구 기능을 가진 배터리 관리 시스템
US9849801B2 (en) Battery control device for standardization of battery
CN113002301A (zh) 车辆工作模式的切换方法及系统
JP7243965B2 (ja) バッテリー管理装置及び方法
KR102541328B1 (ko) 배터리 정보 관리 방법 및 장치
KR101783924B1 (ko) 재사용성 향상을 위한 내부 구조를 가지는 프로그램이 수록된 기록매체를 포함하는 전지 관리 시스템
EP3840102B1 (en) Bms recognition system and method
KR101787635B1 (ko) 재사용성 향상을 위한 내부 구조를 가지는 프로그램이 수록된 기록매체를 포함하는 전지 관리 시스템
KR20220045497A (ko) 배터리 관리 장치 및 방법
US12126511B2 (en) Communication system and method
US20230269154A1 (en) Communication System and Method
US20240308533A1 (en) Vehicle control modules including containerized orchestration and resource management for mixed criticality systems
KR20230018726A (ko) 친환경 차량 및 그를 위한 전원 관리 방법
US20200282970A1 (en) Apparatus and method for controlling driving mode of hybrid electric vehicle

Legal Events

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