JP7243965B2 - バッテリー管理装置及び方法 - Google Patents

バッテリー管理装置及び方法 Download PDF

Info

Publication number
JP7243965B2
JP7243965B2 JP2021534594A JP2021534594A JP7243965B2 JP 7243965 B2 JP7243965 B2 JP 7243965B2 JP 2021534594 A JP2021534594 A JP 2021534594A JP 2021534594 A JP2021534594 A JP 2021534594A JP 7243965 B2 JP7243965 B2 JP 7243965B2
Authority
JP
Japan
Prior art keywords
core
data
main
sub
main memory
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2021534594A
Other languages
English (en)
Other versions
JP2022514551A (ja
Inventor
チョイ、ジェ-イェオン
ベク、ジョン-シク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LG Energy Solution Ltd
Original Assignee
LG Energy Solution Ltd
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 LG Energy Solution Ltd filed Critical LG Energy Solution Ltd
Publication of JP2022514551A publication Critical patent/JP2022514551A/ja
Application granted granted Critical
Publication of JP7243965B2 publication Critical patent/JP7243965B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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
    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0808Multiuser, multiprocessor or multiprocessing cache systems with cache invalidating means
    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/084Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0842Multiuser, multiprocessor or multiprocessing cache systems for multiprocessing or multitasking
    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0882Page mode
    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0891Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
    • 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/10Address translation
    • G06F12/109Address translation for multiple virtual address spaces, e.g. segmentation
    • 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
    • G06F12/1425Protection 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 the protection being physical, e.g. cell, word, block
    • G06F12/1433Protection 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 the protection being physical, e.g. cell, word, block for a module or a part of a module
    • 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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0637Permissions
    • 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/4405Initialisation of multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/526Mutual exclusion algorithms
    • 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
    • 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
    • H02J7/005Detection of state of health [SOH]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/656Address space sharing
    • 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
    • H02J7/0048Detection of remaining charge capacity or state of charge [SOC]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation
    • Y02E60/10Energy storage using batteries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Power Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Human Computer Interaction (AREA)
  • Secondary Cells (AREA)
  • Charge And Discharge Circuits For Batteries Or The Like (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Memory System (AREA)

Description

本発明は、バッテリー管理装置及び方法に関し、より詳しくは、マルチコアが備えられたバッテリー管理装置及びそれを用いたバッテリー管理方法に関する。
本出願は、2019年9月20日付け出願の韓国特許出願第10-2019-0116253号に基づく優先権を主張し、当該出願の明細書及び図面に開示された内容は、すべて本出願に組み込まれる。
近年、ノートパソコン、ビデオカメラ、携帯電話などのような携帯用電子製品の需要が急激に伸び、電気自動車、エネルギー貯蔵用蓄電池、ロボット、衛星などの開発が本格化するにつれて、繰り返して充放電可能な高性能バッテリーに対する研究が活発に行われている。
現在、ニッケルカドミウム電池、ニッケル水素電池、ニッケル亜鉛電池、リチウムバッテリーなどのバッテリーが商用化しているが、中でもリチウムバッテリーはニッケル系列のバッテリーに比べてメモリ効果が殆ど起きず充放電が自在であって、自己放電率が非常に低くてエネルギー密度が高いという長所から脚光を浴びている。
バッテリーセルの状態を推定して管理するため、バッテリー管理システム(Battery Management System:BMS)の開発が活発に行われている。一般に、バッテリー管理システムには単一コアが含まれるが、性能向上のためにマルチコアを備えたバッテリー管理システムの開発が求められている。
一方、従来、マルチコア環境におけるデータ不整合(data inconsistency)を防止するための構成が開示されている(特許文献1)。
ここで、データ不整合とは、複数のコアに含まれたキャッシュメモリに保存されたデータとメインメモリに保存されたデータとが互いに一致しないことを意味する。データが一致しない場合とは、例えば、メインメモリ及び第1コアの第1キャッシュメモリには0x02データが保存されているのに、第2コアの第2キャッシュメモリには0x01データが保存されている場合である。結果的に、第1キャッシュメモリ及び第2キャッシュメモリのデータのうちメインメモリの同一領域に保存されたデータが相異なる場合が生じ得る。
特許文献1は、キャッシュの一貫性を保障するための共有仮想メモリ管理装置に関する。特に、特許文献1は、仮想メモリページに複数のコアが同時にアクセスする場合、物理メモリページを割り当ててデータを処理した後、修正されたデータのみを元の物理メモリページに更新してキャッシュの一貫性を保障する。
ただし、特許文献1では、仮想メモリページに複数のコアが同時にアクセスする場合、物理メモリページが割り当てられるため、物理メモリページを割り当てるために多くのシステム資源が必要となる。したがって、バッテリーセルが備えられたバッテリーパックまたは自動車などには適用し難い。
また、特許文献1は、物理メモリページでデータを処理し、処理されたデータを再び更新するため、データ処理にかかる時間が長くなる。したがって、バッテリーセルが備えられた自動車が運行中である状況のように、迅速なデータ処理が求められる環境には適用し難いという問題がある。
韓国特許第10-1355105号公報
本発明は、上記問題点に鑑みてなされたものであり、マルチコア環境においてもデータ不整合を防止し、バッテリーセルの状態をより正確に且つ信頼度高く管理することができるバッテリー管理装置及び方法を提供することを目的とする。
本発明の他の目的及び長所は、下記の説明によって理解でき、本発明の実施形態によってより明らかに分かるであろう。また、本発明の目的及び長所は、特許請求の範囲に示される手段及びその組合せによって実現することができる。
本発明の一態様によるバッテリー管理装置は、マルチコア環境におけるデータ不整合を防止するためのバッテリー管理装置であって、それぞれキャッシュメモリが備えられた複数のコアを含み、複数のコアのうちキャッシュメモリに記録対象データが保存されたコアをメインコアに設定し、複数のコアのうちメインコア以外のコアをサブコアに設定するように構成されたプロセッサと、メインコアによって記録対象データを保存するように構成されたメインメモリと、を含む。
メインコアは、記録対象データをメインメモリに書き込む間、サブコアのメインメモリに対するアクセス権限を遮断し、記録対象データがメインメモリに書き込まれた後、サブコアにメインメモリに対するアクセス権限を与えるように構成され得る。
プロセッサは、キャッシュメモリに記録対象データが保存されたコアから記録対象データをメインメモリに書き込む旨の記録要請が入力されれば、メインコア及びサブコアを設定するように構成され得る。
サブコアは、メインメモリに対するアクセス権限が遮断されれば、サブコアに備えられたキャッシュメモリに保存されたデータを削除するように構成され得る。
サブコアは、メインメモリに対するアクセス権限が遮断されれば、サブコアに備えられたキャッシュメモリに保存されたデータのうち記録対象データに対応するデータを削除するように構成され得る。
プロセッサは、サブコアにメインメモリに対するアクセス権限が与えられた後、メインコア及びサブコアに対する設定を初期化するように構成され得る。
プロセッサは、バッテリーセルの電流、電圧及び温度のうち少なくとも一つ以上についての測定データを受信するように構成され得る。
複数のコアは、プロセッサが受信した測定データに基づいてバッテリーセルの充電状態(State of Charge:SOC)及び健康状態(State of Health:SOH)の少なくとも一つを推定するように構成され得る。
記録対象データは、測定データ、メインコアによって推定されたバッテリーセルの充電状態及び健康状態のうち少なくとも一つを含むように構成され得る。
本発明の他の態様によるバッテリーパックは、本発明の一態様によるバッテリー管理装置を含む。
本発明のさらに他の態様による自動車は、本発明の一態様によるバッテリー管理装置を含む。
本発明のさらに他の態様によるバッテリー管理方法は、複数のコアのうち備えられたキャッシュメモリに保存された記録対象データをメインメモリに書き込もうとするコアをメインコアに設定するメインコア設定段階と、メインコアが記録対象データをメインメモリに書き込む間、複数のコアのうちメインコア以外のサブコアのメインメモリに対するアクセス権限を遮断するアクセス権限遮断段階と、記録対象データがメインメモリに書き込まれた後、サブコアにメインメモリに対するアクセス権限を与えるアクセス権限付与段階と、を含む。
本発明のさらに他の態様によるバッテリー管理方法は、アクセス権限遮断段階の後、サブコアのキャッシュメモリに保存されたデータを削除するキャッシュメモリ初期化段階をさらに含み得る。
本発明の実施形態によれば、マルチコア環境においてもデータ不整合を防止することができる。
また、本発明の実施形態によれば、メインコア及びサブコアを弾力的に設定できるため、別途のメモリを割り当てなくても、最小限のシステム資源だけでバッテリーセルの状態をより効率的に管理することができる長所がある。
本発明の効果は上記の効果に制限されず、他の効果は特許請求の範囲の記載から当業者に明確に理解できるであろう。
本明細書に添付される次の図面は、発明の詳細な説明ともに本発明の技術的な思想をさらに理解させる役割をするものであるため、本発明は図面に記載された事項だけに限定されて解釈されてはならない。
本発明の一実施形態によるバッテリー管理装置を概略的に示した図である。 本発明の一実施形態によるバッテリー管理装置の動作過程を概略的に示した図である。 本発明の一実施形態によるバッテリー管理装置が含まれたバッテリーパックを概略的に示した図である。 本発明の他の実施形態によるバッテリー管理方法を概略的に示した図である。 本発明のさらに他の実施形態によるバッテリー管理方法を概略的に示した図である。
本明細書及び特許請求の範囲に使われた用語や単語は通常的や事前的な意味に限定して解釈されてはならず、発明者自らは発明を最善の方法で説明するために用語の概念を適切に定義できるという原則に則して本発明の技術的な思想に応ずる意味及び概念で解釈されねばならない。
したがって、本明細書に記載された実施形態及び図面に示された構成は、本発明のもっとも望ましい一実施形態に過ぎず、本発明の技術的な思想のすべてを代弁するものではないため、本出願の時点においてこれらに代替できる多様な均等物及び変形例があり得ることを理解せねばならない。
また、本発明の説明において、関連公知構成または機能についての具体的な説明が本発明の要旨を不明瞭にし得ると判断される場合、その詳細な説明は省略する。
第1、第2などのように序数を含む用語は、多様な構成要素のうちある一つをその他の要素と区別するために使われたものであり、これら用語によって構成要素が限定されることはない。
明細書の全体において、ある部分がある構成要素を「含む」とするとき、これは特に言及されない限り、他の構成要素を除外するものではなく、他の構成要素をさらに含み得ることを意味する。また、明細書に記載されたプロセッサのような用語は少なくとも一つの機能や動作を処理する単位を意味し、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアとの組合せで具現され得る。
さらに、明細書の全体において、ある部分が他の部分と「連結(接続)」されるとするとき、これは「直接的な連結(接続)」だけではなく、他の素子を介在した「間接的な連結(接続)」も含む。
以下、添付された図面を参照して本発明の望ましい実施形態を詳しく説明する。
図1は、本発明の一実施形態によるバッテリー管理装置100を概略的に示した図である。
図1を参照すると、本発明の一実施形態によるバッテリー管理装置100は、プロセッサ110及びメインメモリ120を含むことができる。具体的には、本発明の一実施形態によるバッテリー管理装置100は、複数のコアが備えられたマルチコア環境におけるデータ不整合を防止するためのものであり得る。
すなわち、プロセッサ110には、コアの個数に制限なく複数のコアが含まれ得る。しかし、以下では、説明の便宜上、プロセッサ110に第1コア111及び第2コア113のみが含まれたとして説明する。
プロセッサ110は、キャッシュメモリがそれぞれ備えられた複数のコアを含むことができる。すなわち、プロセッサ110に備えられた複数のコアはそれぞれキャッシュメモリを含むことができる。したがって、複数のコアは、それぞれ独立的に各種の演算を行うことができる。
ここで、キャッシュメモリは、メインメモリ120に保存された内容の一部を一時的に写して保存する記憶装置である。例えば、キャッシュメモリは、プロセッサ110の内部に備えられたL1キャッシュメモリであり得る。すなわち、複数のコアのそれぞれにはL1キャッシュメモリが含まれ得る。
例えば、図1の実施形態において、プロセッサ110には第1コア111及び第2コア113が含まれ得る。また、第1コア111及び第2コア113はそれぞれキャッシュメモリを含み得る。すなわち、第1コア111は第1キャッシュメモリ112を含み、第2コア113は第2キャッシュメモリ114を含み得る。もし、第1キャッシュメモリ112に記録対象データが保存された場合、プロセッサ110は、第1コア111をメインコアに設定することができる。
プロセッサ110は、複数のコアのうちキャッシュメモリに記録対象データが保存されたコアをメインコアに設定するように構成され得る。
具体的には、プロセッサ110は、複数のコアのそれぞれに備えられたキャッシュメモリのうち、記録対象データが保存されたキャッシュメモリを把握することができる。そして、プロセッサ110は、記録対象データが保存されたと把握されたキャッシュメモリが備えられたコアをメインコアに設定することができる。
そして、プロセッサ110は、複数のコアのうちメインコア以外のコアをサブコアに設定するように構成され得る。
例えば、上述した実施形態のように、第1コア111がメインコアに設定された場合、プロセッサ110は第2コア113をサブコアに設定することができる。
すなわち、メインコア及びサブコアは、キャッシュメモリに記録対象データを備えるか否かに応じて設定できる。例えば、記録対象データが第2キャッシュメモリ114に保存された場合は、第2コア113がメインコアに設定され、第1コア111がサブコアに設定され得る。
メインメモリ120は、メインコアによって記録対象データを保存するように構成され得る。
ここで、メインメモリ120は、本発明の一実施形態によるバッテリー管理装置100の各構成要素が動作及び機能を実行するのに必要なデータ、若しくは、プログラムまたは動作及び機能が実行される過程で生成されるデータなどを保存することができる。メインメモリ120は、データを記録、消去、更新及び読出できると知られた公知の情報記録手段であれば、その種類に特に制限がない。一例として、メインメモリ120には、RAM、フラッシュメモリ、ROM、EEPROM、レジスタなどが含まれ得る。望ましくは、メインメモリ120は、不揮発性メモリであって、プロセッサ110に含まれた複数のコアがメモリ資源を共有するメモリであり得る。
複数のコアのそれぞれは、メインメモリ120に対するアクセス権限を有する。すなわち、複数のコアのそれぞれは、メインメモリ120に対する読み取り権限(read permission)及び書き込み権限(write permission)を有する。したがって、複数のコアのそれぞれは、キャッシュメモリに保存されたデータをメインメモリ120に保存することができる。また、複数のコアのそれぞれはメインメモリ120に保存されたデータを読み込むことができる。
望ましくは、複数のコアのそれぞれは、備えられたキャッシュメモリに保存された記録対象データをメインメモリ120に保存することができる。ここでの保存は、メインメモリ120に新規データを保存することだけでなく、メインメモリ120に予め保存されたデータを更新することを含む。
例えば、メインメモリ120にAデータが予め保存されており、第1コア111の第1キャッシュメモリ112に記録対象データとしてAAデータが保存されていると仮定する。ここで、AAデータは、第1コア111がAデータを修正して取得した派生データであり得る。第1コア111は、メインメモリ120に保存されたAデータを第1キャッシュメモリ112に保存されたAAデータで上書きし得る。すなわち、メインメモリ120に保存されたAデータは第1キャッシュメモリ112に保存されたAAデータに更新され得る。
メインコアは、記録対象データをメインメモリ120に書き込む間、サブコアのメインメモリ120に対するアクセス権限を遮断することができる。すなわち、記録対象データがメインメモリ120に保存される間、サブコアはメインメモリ120に対するアクセス権限を一時的に喪失することができる。
複数のコアのそれぞれは自己以外のコアにインターラプトを送信できるように構成され得る。すなわち、メインコアは、一つ以上のサブコアに第1インターラプトを送信することができる。メインコアが第1インターラプトを送信した時点から、サブコアはメインメモリ120に対するアクセス権限を喪失する。したがって、サブコアは第1インターラプトが送信された時点から、メインメモリ120にデータを書き込むか又はメインメモリ120からデータを読み取ることができない。
例えば、メインコアは、第1インターラプトをサブコアに送信した直後、サブコアのメインメモリ120に対するアクセス権限のうち書き込み権限を遮断するように構成され得る。この場合、メインコアが記録対象データをメインメモリ120に書き込む間、サブコアがメインメモリ120にデータを書き込む重複記録を防止することができる。
また、メインコアは、第1インターラプトをサブコアに送信した直後、サブコアのメインメモリ120に対するアクセス権限のうち読み取り権限を遮断するように構成され得る。この場合、メインコアが記録対象データをメインメモリ120に書き込む間、サブコアがメインメモリ120に保存されたデータを読み込むことができない。したがって、メインコアとサブコアとメインメモリ120との間のデータ不整合を防止することができる。
メインコアは、記録対象データがメインメモリ120に書き込まれた後、サブコアにメインメモリ120に対するアクセス権限を与えるように構成され得る。
例えば、メインコアは、キャッシュメモリに保存された記録対象データをメインメモリ120に書き込んだ後、第2インターラプトをサブコアに送信することができる。メインコアが第2インターラプトを送信した時点から、サブコアはメインメモリ120に対するアクセス権限を再び受けることができる。
すなわち、メインコアのキャッシュメモリに保存された記録対象データをメインメモリ120に保存する間のみに、サブコアがメインメモリ120にアクセスすることが遮断される。したがって、バッテリー管理装置100は、複数のコアがメインメモリ120に同時にアクセスできないようにアクセス権限を調整し、データ不整合を防止することができる。したがって、バッテリー管理装置100のシステム安定性をより向上させることができる。
また、本発明によれば、データ不整合を防止するために別途のメモリを割り当てなくても、アクセス権限が弾力的に設定されることで、最小限のシステム資源だけでバッテリーセル10の状態をより効率的に管理することができる。
プロセッサ110は、キャッシュメモリに記録対象データが保存されたコアから記録対象データをメインメモリ120に書き込む旨の記録要請が入力されれば、メインコア及びサブコアを設定するように構成され得る。
例えば、複数のコアは、それぞれ、キャッシュメモリに新規データを生成するか又は既存データを修正することができる。そして、複数のコアは、それぞれ、キャッシュメモリでのデータ処理を完了した場合、キャッシュメモリに保存されたデータをメインメモリ120に書き込む旨の記録要請をプロセッサ110に送信することができる。ここで、記録要請の対象になるデータが記録対象データである。
プロセッサ110は、複数のコアのうちいずれか一つから記録要請を受信すれば、記録要請を送信したコアをメインコアに設定することができる。そして、プロセッサ110は、複数のコアのうちメインコア以外のコアをサブコアに設定することができる。
ここで、メインコア及びサブコアは、種類、仕様またはプロセッサ110に備えられた位置などによって設定されるものではなく、キャッシュメモリに保存された記録対象データをメインメモリ120に保存するか否かに応じて設定される。望ましくは、メインメモリ120に書き込まれる記録対象データを保存しているか否かに応じてメインコア及びサブコアを設定することができる。より望ましくは、キャッシュメモリに保存された記録対象データをメインメモリ120に書き込む旨の記録要請をプロセッサ110に送信したか否かに応じてメインコア及びサブコアを設定することができる。
したがって、バッテリー管理装置100は、メインコア及びサブコアを弾力的に設定することができる。すなわち、場合によっては、複数のコアそれぞれがメインコアに設定できるため、記録対象データをメインメモリ120に書き込む過程を簡素化することができる。また、記録対象データがメインメモリ120に書き込まれる記録時間を短縮することができる。また、メインコアに保存された記録対象データがメインメモリ120に書き込まれる間に、データ不整合を防止することができる。
サブコアは、メインメモリ120に対するアクセス権限が遮断されれば、サブコアに備えられたキャッシュメモリに保存されたデータを削除するように構成され得る。
殆どのキャッシュメモリは、メインメモリ120からデータを読み込み、読み込んだデータを読み取るか又は修正することができる。したがって、メインコアに保存された記録対象データがメインメモリ120に保存される間、データ不整合を防止するためにサブコアに保存されたキャッシュメモリを初期化することができる。
例えば、図1の実施形態において、第1コア111がメインコアに設定され、第2コア113がサブコアに設定されたと仮定する。プロセッサ110は、第1コア111から、第1キャッシュメモリ112に保存された記録対象データをメインメモリ120に保存する旨の記録要請を受けた場合、第1コア111をメインコアに設定し、第2コア113をサブコアに設定する。サブコアに設定された第2コア113は、メインメモリ120に対するアクセス権限を喪失し、第2キャッシュメモリ114に保存されたデータを削除することができる。
第1コア111に保存された記録対象データをメインメモリ120に保存する一連の過程については図2を参照してより具体的に説明する。
図2は、本発明の一実施形態によるバッテリー管理装置100の動作過程を概略的に示した図である。
具体的には、図2は、第1キャッシュメモリ112に保存された記録対象データがメインメモリ120に保存される動作過程を時間順に概略的に示した図である。
まず、第1コア111は、プロセッサ110に第1キャッシュメモリ112に保存された記録対象データをメインメモリ120に書き込む旨の記録要請を送信することができる。
プロセッサ110は、記録要請を受信すれば、記録要請を送信した第1コア111をメインコアに設定し、第2コア113をサブコアに設定することができる。
メインコアに設定された第1コア111は、第2コア113に第1インターラプトを送信することができる。すなわち、第1コア111は、第1インターラプトを送信した時点から、第2コア113のメインメモリ120に対するアクセス権限を遮断することができる。
そして、第1コア111は、第1キャッシュメモリ112に保存された記録対象データをメインメモリ120に書き込むことができる。
記録対象データがメインメモリ120に書き込まれる間、第2コア113は、第2キャッシュメモリ114に保存されたデータをすべて削除することができる。望ましくは、第2コア113は、第1インターラプトを受信すれば、第2キャッシュメモリ114を初期化することができる。したがって、第1コア111と第2コア113とメインメモリ120とにデータ不整合が発生する可能性がなくなる。
第1コア111は、メインメモリ120に記録対象データを書き込んだ後、第2コア113に第2インターラプトを送信することができる。すなわち、第1コア111は、第2インターラプトを送信した時点から、第2コア113のメインメモリ120に対するアクセス権限を与えることができる。
以下、図2を参照して、第2コア113の読み取り権限または書き込み権限が遮断されず、データ不整合が発生する場合についてより具体的に説明する。
例えば、第1コア111のキャッシュメモリに保存された記録対象データが0x11111であり、第2コア113のキャッシュメモリに保存されたデータが0x10101であり、メインメモリ120に保存されたデータが0x00000であると仮定する。第1コア111は、第2コア113に第1インターラプトを送信した後、記録対象データ(0x11111)をメインメモリ120に書き込むことができる。
また、以下では、データを書き込むとき、MSB(Most Significant Bit)から書き込まれると仮定する。すなわち、メインメモリ120には、記録対象データ(0x11111)が0x10000、0x11000、0x11100、0x11110及び0x11111の順に保存され得る。
<読み取り権限を遮断しなかったときのデータ不整合>
上述した実施形態のように、第1コア111のキャッシュメモリに保存された記録対象データが0x11111であり、第2コア113のキャッシュメモリに保存されたデータが0x10101であり、メインメモリ120に保存されたデータが0x00000であると仮定する。
もし、記録対象データ(0x11111)がメインメモリ120に保存される間に、第2コア113の読み取り権限が遮断されないと仮定すれば、データ不整合が発生し得る。
具体的には、第2コア113の第2キャッシュメモリ114が初期化された後、メインメモリ120に記録対象データが書き込まれている途中に第2コア113がメインメモリ120にアクセスしてデータを読み込めば、データ不整合が発生し得る。
例えば、メインメモリ120に0x11100が書き込まれた瞬間、読み取り権限を有する第2コア113がメインメモリ120に保存されたデータを読み込むと仮定すれば、第2キャッシュメモリ114には0x11100が保存されることになる。第1コア111による記録対象データの書き込みが完了した後、第1キャッシュメモリ112及びメインメモリ120には0x11111が保存されているが、第2キャッシュメモリ114には0x11100が保存され得る。したがって、このような場合、第2コア113の読み取り権限が遮られなかったため、データ不整合が発生するおそれがある。
<書き込み権限を遮断しなかったときのデータ不整合>
第2コア113が第2キャッシュメモリ114に保存されたデータを削除する前、第2キャッシュメモリ114に保存されたデータをメインメモリ120に書き込む場合、データ重複記録によってデータ不整合が発生し得る。
具体的には、第1コア111が記録対象データをメインメモリ120に書き込んだ後、第2コア113が第2キャッシュメモリ114に保存されたデータをメインメモリ120に書き込む場合、データ不整合が発生することになる。
例えば、上述した実施形態のように、第1コア111のキャッシュメモリに保存された記録対象データが0x11111であり、第2コア113のキャッシュメモリに保存されたデータが0x10101であり、メインメモリ120に保存されたデータが0x00000であると仮定する。
第1コア111が第1キャッシュメモリ112に保存された0x11111をメインメモリ120に書き込んだ後、第2コア113が第2キャッシュメモリ114に保存された0x10101をメインメモリ120に書き込むことがあり得る。その後、第2キャッシュメモリ114は初期化され得る。
この場合、第1キャッシュメモリ112には0x11111が保存され、メインメモリ120には0x10101が保存され、第2キャッシュメモリ114は初期化されている。
したがって、第2コア113の書き込み権限が遮断されなかった場合にも、データ不整合が発生するおそれがある。
すなわち、本発明の一実施形態によるバッテリー管理装置100は、メインコアに保存された記録対象データがメインメモリ120に保存される場合、サブコアのメインメモリ120に対するアクセス権限を遮断し、サブコアのキャッシュメモリを初期化することで、マルチコア環境におけるデータ不整合を確実に防止することができる。
サブコアは、メインメモリ120に対するアクセス権限が遮断されれば、サブコアに備えられたキャッシュメモリに保存されたデータのうち記録対象データに対応するデータを削除するように構成され得る。
例えば、図1の実施形態において、第1キャッシュメモリ112にAデータが保存され、第2キャッシュメモリ114にAAデータ及びBデータが保存されたと仮定する。ここで、AAデータはAデータに対応するデータであり、BデータはAデータと対応しないデータである。すなわち、AAデータはAデータから派生したデータであり得る。
プロセッサ110によって第1コア111がメインコアに設定され、第2コア113がサブコアに設定され得る。そして、第1コア111は記録対象データであるAデータをメインメモリ120に書き込む前、第2コア113に第1インターラプトを送信することができる。このとき、第1コア111は第2コア113に第1インターラプトとともにAデータ情報を送信することができる。第1インターラプト及びAデータ情報を受信した第2コア113は、第2キャッシュメモリ114に保存されたデータのうちAデータに対応するAAデータを削除することができる。
すなわち、第2キャッシュメモリ114に保存されたデータのうちBデータは削除されない。この場合、Bデータに対する第2コア113の作業は、記録対象データであるAデータがメインメモリ120に書き込まれることとは別途に、引き続いて行われ得る。Aデータがメインメモリ120に書き込まれた後、第2コア113はプロセッサ110にBデータの記録を要請することができる。プロセッサ110は、Bデータの記録を要請した第2コア113をメインコアに設定できる。結果的に、BデータはAデータがメインメモリ120に書き込まれることとは関係なく第2キャッシュメモリ114に保存され続けるため、メインメモリ120にAデータ及びBデータが書き込まれる総時間を短縮することができる。
したがって、本発明の一実施形態によるバッテリー管理装置100は、サブコアに保存されたデータのうちデータ不整合が発生し得るデータのみを選択的に削除することで、プロセッサ110の作業効率を向上させることができる。
プロセッサ110は、サブコアにメインメモリ120に対するアクセス権限が与えられた後、メインコア及びサブコアに対する設定を初期化するように構成され得る。
具体的には、メインコアが記録対象データをメインメモリ120に書き込み、サブコアに第2インターラプトを送信すれば、プロセッサ110は、メインコア及びサブコアに対する設定を初期化することができる。
すなわち、メインコア及びサブコアは、コアの仕様、種類または構造的特徴に基づいて設定されるものではなく、メインメモリ120に書き込む記録対象データを保存しているか否かに応じて弾力的に設定されるものである。
もし、メインコア及びサブコアが固定的に設定されていると仮定すれば、メインコアのみがサブコアにインターラプトを送信できるため、サブコアに保存された記録対象データをメインメモリ120に効率的に書き込むことができないという問題が生じる。例えば、サブコアのキャッシュメモリに保存されたデータは、メインコアを通じてメインメモリ120に保存されることになり得る。
したがって、本発明の一実施形態によるバッテリー管理装置は、他のコアにインターラプトを送信できるメインコアを記録対象データの保存如何に応じて弾力的に設定することができるという長所を有する。
図3は、本発明の一実施形態によるバッテリー管理装置100が含まれたバッテリーパック1を概略的に示した図である。
図3を参照すると、バッテリーパック1は、バッテリーセル10、測定部20及びバッテリー管理装置100を含むことができる。すなわち、本発明の一実施形態によるバッテリー管理装置100は、バッテリーパック1に備えられ得る。
バッテリーパック1は、一つのバッテリーセル10を含んでもよく、複数のバッテリーセル10が直列及び/または並列で接続されたバッテリーモジュールを含んでもよい。以下、説明の便宜上、バッテリーパック1に一つのバッテリーセル10が含まれたとして説明する。
測定部20は、バッテリーセル10の温度、電圧及び電流のうち少なくとも一つ以上を測定するように構成され得る。具体的には、測定部20は、温度測定ユニット21、電圧測定ユニット22及び電流測定ユニット23のうち少なくとも一つ以上を選択的に含むことができる。
温度測定ユニット21は、一般的な温度センサであって、バッテリーセル10の温度を測定するように構成され得る。
電圧測定ユニット22は、バッテリーセル10の正極電位及び負極電位を測定し、測定した正極電位と負極電位との差を算出してバッテリーセル10の電圧を測定することができる。具体的には、電圧測定ユニット22は、バッテリーセル10の正極端子と連結されたセンシングラインを通じてバッテリーセル10の正極電位を測定し、バッテリーセル10の負極端子と連結されたセンシングラインを通じてバッテリーセル10の負極電位を測定することができる。
電流測定ユニット23は、バッテリーセル10の充放電経路上に備えられた電流計Aを通じてバッテリーセル10の充電電流または放電電流を測定することができる。
プロセッサ110は、バッテリーセル10の電流、電圧及び温度のうち少なくとも一つ以上についての測定データを受信するように構成され得る。
プロセッサ110は、測定部20とラインを通じて連結され得る。そして、プロセッサ110は、連結されたラインを通じて測定部20からバッテリーセル10の電流データ、電圧データ及び温度データのうち少なくとも一つ以上を受信するように構成され得る。
また、図3に示されたように、プロセッサ110と測定部20とを連結するラインは、第1コア111及び第2コア113のそれぞれにも連結され得る。したがって、プロセッサ110が測定部20から受信した測定データは、第1コア111及び第2コア113のそれぞれに入力できる。そして、測定データは、第1キャッシュメモリ112及び第2キャッシュメモリ114にもそれぞれ保存できる。
複数のコアは、プロセッサ110が受信した測定データに基づいてバッテリーセル10の充電状態(State of Charge)及び健康状態(State of Health)の少なくとも一つを推定するように構成され得る。
図3の実施形態において、第1コア111は、第1キャッシュメモリ112に保存された測定データに基づいてバッテリーセル10の充電状態及び健康状態の少なくとも一つを推定することができる。また、第2コア113は、第1コア111とは別個に、第2キャッシュメモリ114に保存された測定データに基づいてバッテリーセル10の充電状態及び健康状態の少なくとも一つを推定することができる。
例えば、複数のコアは、それぞれ、測定部20で測定した電圧データに基づいてバッテリーセル10の充電状態を推定し得る。メインメモリ120にはバッテリーセル10の電圧と充電状態とがマッピングされた電圧-充電状態ルックアップテーブルが予め保存され得る。したがって、複数のコアは、メインメモリ120に保存された電圧-充電状態ルックアップテーブルを参照し、バッテリーセル10の充電状態を推定することができる。
望ましくは、複数のコアは、それぞれ、測定部20で測定した電圧データ及び温度データに基づいてバッテリーセル10の充電状態を推定し得る。メインメモリ120にはバッテリーセル10の温度に応じてバッテリーセル10の電圧と充電状態とがマッピングされた温度-電圧-充電状態ルックアップテーブルが予め保存され得る。したがって、複数のコアは、メインメモリ120に保存された温度-電圧-充電状態ルックアップテーブルを参照し、バッテリーセル10の充電状態を推定することができる。バッテリーセル10の充電状態は、バッテリーセル10の電圧と一対一の対応関係を有するが、バッテリーセル10の温度にも影響を受ける。したがって、バッテリーセル10の温度までも考慮してバッテリーセル10の充電状態が推定されるため、バッテリーセル10の状態をより正確に推定することができる。
また、複数のコアは、それぞれ、測定部20で測定した電流データに基づいてバッテリーセル10の充電状態を推定し得る。この場合、複数のコアのそれぞれは、バッテリーセル10の充電中または放電中に測定された電流データを積算し、バッテリーセル10の充電状態を推定することができる。
また、複数のコアは、それぞれ、測定部20で測定した電圧データ及び電流データに基づいてバッテリーセル10の内部抵抗を算出し、算出された内部抵抗をバッテリーセル10の初期抵抗と比べてバッテリーセル10の健康状態を推定することもできる。このとき、バッテリーセル10の初期抵抗についてのデータはメインメモリ120に予め保存され得る。
他にも、複数のコアのそれぞれは、測定部20で測定した電圧データ、電流データ及び温度データのうち少なくとも一つ以上を用いてバッテリーセル10の充電状態及び/または健康状態を推定することができる。
そして、図1及び図2を参照して上述したように、第1コア111及び第2コア113は、キャッシュメモリに保存されたデータをメインメモリ120に書き込むことができる。
したがって、本発明の一実施形態によるバッテリー管理装置100は、マルチコア環境において、バッテリーセル10の状態情報に対するデータ不整合を防止することができる。したがって、バッテリーセル10の状態に対する情報の正確度及び信頼度を非常に向上させることができる。また、基本的にマルチコア環境であるため、バッテリーセル10の状態推定が迅速に行われ、バッテリーセル10の状態を推定する時間を画期的に短縮することができる。
望ましくは、記録対象データは、測定データ、メインコアによって推定されたバッテリーセル10の充電状態及び健康状態のうち少なくとも一つを含むように構成され得る。
上述したように、メインコア及びサブコアは、メインメモリ120に書き込む記録対象データを保存しているか否かに応じて弾力的に設定される。そして、測定部20によって測定された測定データは、第1コア111及び第2コア113にともに入力される。また、第1コア111及び第2コア113は、入力された測定データに基づいてバッテリーセル10の充電状態及び健康状態をそれぞれ推定できる。
メインメモリ120にデータを書き込むことができるメインコアは、プロセッサ110にキャッシュメモリに保存されたデータの記録を要請したコアである。すなわち、メインメモリ120に書き込まれる記録対象データは、メインコアのキャッシュメモリに保存された記録対象データであるしかない。
したがって、メインコアは、測定部20から入力された測定データだけでなく、直接推定したバッテリーセル10の充電状態及び/または健康状態を記録対象データにすることができる。そして、メインコアは、記録対象データをメインメモリ120に書き込むことができる。
メインコアが記録対象データをメインメモリ120に書き込む間、サブコアのキャッシュメモリは初期化されるため、バッテリーセル10に対するデータ不整合が発生する可能性がない。
例えば、第1コア111及び第2コア113がともに測定部20で測定した電圧データ、電流データ及び温度データを受信したと仮定する。第1コア111及び第2コア113は、それぞれ、受信したデータに基づいてバッテリーセル10の充電状態及び健康状態を推定することができる。
第1コア111は、バッテリーセル10の充電状態及び健康状態に対する推定を完了し、プロセッサ110に推定したバッテリーセル10の充電状態及び健康状態に対する記録を要請し得る。すると、第1コア111はメインコアに設定され、第2コア113はサブコアに設定される。第1コア111は、第2コア113に第1インターラプトを送信し、第2コア113のメインメモリ120に対するアクセス権限を遮断することができる。
その後、第1コア111が推定したバッテリーセル10の充電状態及び健康状態をメインメモリ120に書き込むとき、第2コア113に保存されたキャッシュメモリは初期化され得る。すなわち、この状況において、第1コア111のキャッシュメモリには第1コア111によって推定されたバッテリーセル10の充電状態及び健康状態が保存されており、第2コア113のキャッシュメモリは初期化された状態であり得る。したがって、第1コア111と第2コア113との間のデータ不整合を防止することができる。
すなわち、本発明の一実施形態によるバッテリー管理装置100は、マルチコア環境におけるデータ不整合を防止できるため、バッテリーセル10の状態をより正確に推定することができる。また、推定バッテリーセル10の状態に対する信頼度も増加できる。
望ましくは、サブコアのキャッシュメモリに保存されたデータのうちメインコアのキャッシュメモリに保存された記録対象データに対応するデータのみが削除され得る。
例えば、上述した実施形態において、バッテリーセル10の状態推定を迅速に行うため、第1コア111はバッテリーセル10の充電状態を推定し、第2コア113はバッテリーセル10の健康状態を推定し得る。この場合、メインコアである第1コア111は、サブコアである第2コア113に第1インターラプト及び推定されたバッテリーセル10の充電状態情報を一緒に送信することができる。第2コア113は、第1インターラプト及び第1コア111が推定したバッテリーセル10の充電状態を受信し、第2コア113のキャッシュメモリに保存されたデータのうちバッテリーセル10の充電状態に対応するデータのみを削除することができる。このとき、第2コア113によって推定されたバッテリーセル10の健康状態は削除されない。
第1コア111によって推定されたバッテリーセル10の充電状態がメインメモリ120に書き込まれた後、第2コア113によって推定されたバッテリーセル10の健康状態がメインメモリ120に書き込まれ得る。勿論、この場合、プロセッサ110は第2コア113をメインコアに設定する。
したがって、本発明の一実施形態によるバッテリー管理装置100は、マルチコア環境における利点を最大限に用いてデータ処理時間を画期的に短縮できると同時にデータ不整合を防止することができる。
また、本発明の一実施形態によるバッテリー管理装置100は、自動車に備えることができる。具体的には、バッテリー管理装置100は、一つ以上のバッテリーセル10が備えられた自動車に備えることができる。バッテリー管理装置100は、マルチコアを用いて、自動車に備えられたバッテリーセル10の充電状態及び/または健康状態を迅速に推定することができる。そして、バッテリー管理装置100は、推定したバッテリーセル10の充電状態及び/または健康状態に対するバッテリー状態情報を、データ不整合を防止しながらメインメモリ120に保存して管理することができる。望ましくは、バッテリー管理装置100は、バッテリーパック1に備えられ、バッテリーパック1が自動車に含まれ得る。
図4は、本発明の他の実施形態によるバッテリー管理方法を概略的に示した図である。
図4を参照すると、バッテリー管理方法は、メインコア設定段階S100、アクセス権限遮断段階S200、データ記録段階S300及びアクセス権限付与段階S400を含むことができる。ここで、バッテリー管理方法の各段階は、バッテリー管理装置100によって実行できる。
メインコア設定段階S100は、複数のコアのうち備えられたキャッシュメモリに保存された記録対象データをメインメモリ120に書き込もうとするコアをメインコアに設定する段階であって、プロセッサ110によって実行できる。
例えば、記録対象データは、バッテリーセル10の温度、電圧、電流、充電状態及び健康状態のうち少なくとも一つ以上であり得る。プロセッサ110に含まれた複数のコアのうちキャッシュメモリに記録対象データが保存されたコアは、プロセッサ110に記録要請を送信することができる。ここで、記録要請は、キャッシュメモリに保存された記録対象データをメインメモリ120に書き込む旨の要請であり得る。
プロセッサ110は、記録要請を受信すれば、記録要請を送信したコアをメインコアに設定することができる。また、プロセッサ110は、複数のコアのうちメインコアを除いた他のコアをすべてサブコアに設定することができる。
アクセス権限遮断段階S200は、メインコアが記録対象データをメインメモリ120に書き込む間、複数のコアのうちメインコア以外のサブコアのメインメモリ120に対するアクセス権限を遮断する段階であって、メインコアによって実行できる。
まず、プロセッサ110に含まれた複数のコアのそれぞれは他のコアにインターラプトを送信することができる。したがって、メインコアは、記録対象データをメインメモリ120に保存しようとするとき、サブコアに第1インターラプトを送信し、サブコアのメインメモリ120に対するアクセス権限を遮断することができる。
具体的には、図2を参照すると、メインコアに設定された第1コア111は、サブコアに設定された第2コア113に第1インターラプトを送信した後、記録対象データをメインメモリ120に書き込むことができる。この場合、第1インターラプトが送信された直後から、第2コア113はメインメモリ120に対する読み取り権限及び書き込み権限を喪失する。したがって、第1コア111が記録対象データをメモリに書き込む間、第2コア113はメインメモリ120にアクセスすることができない。
アクセス権限付与段階S400は、記録対象データがメインメモリ120に書き込まれた後、サブコアにメインメモリ120に対するアクセス権限を与える段階であって、メインコアによって実行できる。
具体的には、図2を参照すると、第1コア111は、メインメモリ120に記録対象データをすべて書き込んだ後、第2コア113に第2インターラプトを送信することができる。この場合、第2インターラプトが送信された直後から、第2コア113はメインメモリ120に対する読み取り権限及び書き込み権限を回復する。第2インターラプトが送信された直後から、第2コア113はメインメモリ120にアクセスできる。
バッテリー管理方法は、マルチコア環境において、データ重複によるデータ不整合を防止するため、サブコアのメインメモリ120へのアクセス権限を弾力的に設定することができる。したがって、メインメモリ120に書き込まれたデータの不整合が防止され、システム衝突が低下してシステムがより安定化できる。
図5は、本発明のさらに他の実施形態によるバッテリー管理方法を概略的に示した図である。ここで、バッテリー管理方法の各段階はバッテリー管理装置100によって実行できる。
図5に示されたバッテリー管理方法は、図4に示されたバッテリー管理方法でキャッシュメモリ初期化段階S210をさらに含むことができる。
以下、図4を参照して説明した部分は除き、図5に加えられたキャッシュメモリ初期化段階S210について説明する。
バッテリー管理方法は、アクセス権限遮断段階S200とデータ記録段階S300との間に、キャッシュメモリ初期化段階S210をさらに含むことができる。
キャッシュメモリ初期化段階S210は、サブコアのキャッシュメモリに保存されたデータを削除する段階であって、サブコアによって実行できる。
図2を参照すると、サブコアは、メインコアから第1インターラプトを受信した後、キャッシュメモリに保存されたデータを削除してキャッシュメモリを初期化することができる。この場合、サブコアのキャッシュメモリに保存されたデータはなく、メインコアのキャッシュメモリに保存された記録対象データがメインメモリ120に書き込まれるため、メインコアとサブコアとメインメモリ120との間にデータ不整合が生じない。
記録対象データがメインメモリ120に書き込まれる間、サブコアはメインメモリ120にアクセスできないため、サブコアはメインメモリ120から記録進行中のデータを読み取ることができない。
また、記録対象データがメインメモリ120に書き込まれる間、サブコアはキャッシュメモリに保存されたデータをメインメモリ120に書き込むこともできないため、システム衝突又はデータ不整合が生じる可能性がない。また、サブコアのキャッシュメモリが初期化された後は、サブコアのキャッシュメモリにメインメモリ120に書き込むデータがないため、データ不整合が発生しない。
結果的に、サブコアはメインメモリ120に記録対象データがすべて書き込まれてからアクセスできるため、データ不整合を防止することができる。
すなわち、バッテリー管理方法は、サブコアのキャッシュメモリを初期化し、サブコアのメインメモリ120に対するアクセス権限を遮断することで、マルチコア環境においてデータ不整合が発生することを予め防止することができる。また、マルチコア環境であるため、バッテリーセル10の状態情報がより迅速に推定されると同時に、推定の正確度及び信頼度が画期的に向上できるという長所がある。
上述した本発明の実施形態は、装置及び方法のみによって具現されるものではなく、本発明の実施形態の構成に対応する機能を実現するプログラムまたはそのプログラムが記録された記録媒体を通じても具現され得、このような具現は上述した実施形態の記載から当業者であれば容易に具現できるであろう。
以上のように、本発明を限定された実施形態と図面によって説明したが、本発明はこれに限定されるものではなく、本発明の属する技術分野で通常の知識を持つ者によって本発明の技術思想と特許請求の範囲の均等範囲内で多様な修正及び変形が可能であることは言うまでもない。
また、上述した本発明は、本発明が属する技術分野で通常の知識を持つ者により、本発明の技術的思想を逸脱しない範囲内で様々な置換、変形及び変更が可能であって、上述した実施形態及び添付の図面によって限定されるものではなく、多様な変形のため各実施形態の全部または一部が選択的に組み合わせられて構成され得る。
1:バッテリーパック
10:バッテリーセル
20:測定部
21:温度測定ユニット
22:電圧測定ユニット
23:電流測定ユニット
100:バッテリー管理装置
110:プロセッサ
111:第1コア
112:第1キャッシュメモリ
113:第2コア
114:第2キャッシュメモリ
120:メインメモリ
A:電流計

Claims (11)

  1. マルチコア環境におけるデータ不整合を防止するバッテリー管理装置であって、
    それぞれキャッシュメモリが備えられた複数のコアを含み、前記複数のコアのうちキャッシュメモリに記録対象データが保存されたコアをメインコアに設定し、前記複数のコアのうちメインコア以外のコアをサブコアに設定するプロセッサと、
    前記メインコアによって前記記録対象データを保存するメインメモリと、を含み、
    前記メインコアは、
    前記記録対象データを前記メインメモリに書き込む間、前記サブコアの前記メインメモリに対するアクセス権限を遮断し、
    前記記録対象データが前記メインメモリに書き込まれた後、前記サブコアに前記メインメモリに対するアクセス権限を与える、バッテリー管理装置。
  2. 前記プロセッサは、
    前記キャッシュメモリに記録対象データが保存されたコアから前記記録対象データを前記メインメモリに書き込む旨の記録要請が入力された場合、前記メインコア及びサブコアを設定する、請求項1に記載のバッテリー管理装置。
  3. 前記サブコアは、
    前記メインメモリに対するアクセス権限が遮断された場合、前記サブコアに備えられたキャッシュメモリに保存されたデータを削除する、請求項1または2に記載のバッテリー管理装置。
  4. 前記サブコアは、
    前記メインメモリに対するアクセス権限が遮断された場合、前記サブコアに備えられたキャッシュメモリに保存されたデータのうち前記記録対象データに対応するデータを削除する、請求項3に記載のバッテリー管理装置。
  5. 前記プロセッサは、
    前記サブコアに前記メインメモリに対するアクセス権限が与えられた後、前記メインコア及び前記サブコアに対する設定を初期化する、請求項1から4のいずれか一項に記載のバッテリー管理装置。
  6. 前記プロセッサは、
    バッテリーセルの電流、電圧及び温度のうち少なくとも一つ以上についての測定データを受信し、
    前記複数のコアは、
    前記プロセッサが受信した測定データに基づいて前記バッテリーセルの充電状態及び健康状態の少なくとも一つを推定する、請求項1から5のいずれか一項に記載のバッテリー管理装置。
  7. 前記記録対象データは、
    前記測定データ、前記メインコアによって推定された前記バッテリーセルの充電状態及び健康状態のうち少なくとも一つを含む、請求項6に記載のバッテリー管理装置。
  8. 請求項1から7のいずれか一項に記載のバッテリー管理装置を含む、バッテリーパック。
  9. 請求項1から7のいずれか一項に記載のバッテリー管理装置を含む、自動車。
  10. 複数のコアのうち備えられたキャッシュメモリに保存された記録対象データをメインメモリに書き込もうとするコアをメインコアに設定するメインコア設定段階と、
    前記メインコアが前記記録対象データを前記メインメモリに書き込む間、前記メインコアによって前記複数のコアのうちメインコア以外のサブコアの前記メインメモリに対するアクセス権限を遮断するアクセス権限遮断段階と、
    前記記録対象データが前記メインメモリに書き込まれた後、前記メインコアによって前記サブコアに前記メインメモリに対するアクセス権限を与えるアクセス権限付与段階と、を含む、バッテリー管理方法。
  11. 前記アクセス権限遮断段階の後、
    前記サブコアのキャッシュメモリに保存されたデータを削除するキャッシュメモリ初期化段階をさらに含む、請求項10に記載のバッテリー管理方法。
JP2021534594A 2019-09-20 2020-09-17 バッテリー管理装置及び方法 Active JP7243965B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR10-2019-0116253 2019-09-20
KR1020190116253A KR20210034372A (ko) 2019-09-20 2019-09-20 배터리 관리 장치 및 방법
PCT/KR2020/012583 WO2021054749A1 (ko) 2019-09-20 2020-09-17 배터리 관리 장치 및 방법

Publications (2)

Publication Number Publication Date
JP2022514551A JP2022514551A (ja) 2022-02-14
JP7243965B2 true JP7243965B2 (ja) 2023-03-22

Family

ID=74883635

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021534594A Active JP7243965B2 (ja) 2019-09-20 2020-09-17 バッテリー管理装置及び方法

Country Status (6)

Country Link
US (1) US12007894B2 (ja)
EP (1) EP3929754B1 (ja)
JP (1) JP7243965B2 (ja)
KR (1) KR20210034372A (ja)
CN (1) CN113748396A (ja)
WO (1) WO2021054749A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210016795A (ko) * 2019-08-05 2021-02-17 주식회사 엘지화학 에너지 허브 장치 및 에너지 관리 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003030042A (ja) 2001-07-11 2003-01-31 Fujitsu Ten Ltd 複数コア付マイクロコンピュータ装置
JP2005044342A (ja) 2003-07-22 2005-02-17 Samsung Electronics Co Ltd マルチプロセッサシステム及びマルチプロセッサシステムのキャッシュ一貫性維持方法
JP2008225906A (ja) 2007-03-13 2008-09-25 Toyota Motor Corp 情報処理システム及びその情報処理システムを構成するコア識別コントローラ
JP2018013843A (ja) 2016-07-19 2018-01-25 アイシン・エィ・ダブリュ株式会社 マルチコア演算装置
WO2019088746A1 (ko) 2017-11-01 2019-05-09 주식회사 엘지화학 배터리 soc 추정 장치 및 방법

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01282668A (ja) 1988-05-10 1989-11-14 Sharp Corp 処理時間調停方式
JP2848681B2 (ja) 1990-09-18 1999-01-20 株式会社東芝 マルチプロセッサシステムの排他制御回路
US6519685B1 (en) * 1999-12-22 2003-02-11 Intel Corporation Cache states for multiprocessor cache coherency protocols
US7328313B2 (en) 2005-03-30 2008-02-05 Intel Corporation Methods to perform cache coherency in multiprocessor system using reserve signals and control bits
US7487279B2 (en) * 2007-01-23 2009-02-03 International Business Machines Corporation Achieving both locking fairness and locking performance with spin locks
US20080320236A1 (en) 2007-06-25 2008-12-25 Makoto Ueda System having cache snoop interface independent of system bus interface
US7617345B2 (en) * 2007-07-02 2009-11-10 International Business Machines Corporation Prioritization of interrupts in a storage controller based on interrupt control directives received from hosts
US8244982B2 (en) 2009-08-21 2012-08-14 Empire Technology Development Llc Allocating processor cores with cache memory associativity
JP5387776B2 (ja) 2010-07-27 2014-01-15 富士通株式会社 割込制御方法、マルチコアプロセッサシステム、および割込制御プログラム
JP5121896B2 (ja) 2010-08-11 2013-01-16 株式会社東芝 マルチコアプロセッサシステムおよびマルチコアプロセッサ
JP2013003793A (ja) 2011-06-15 2013-01-07 Toshiba Corp マルチコアプロセッサシステムおよびマルチコアプロセッサ
US9170947B2 (en) 2011-12-29 2015-10-27 Intel Corporation Recovering from data errors using implicit redundancy
KR101355105B1 (ko) 2012-01-03 2014-01-23 서울대학교산학협력단 캐시 일관성 보장을 위한 공유 가상 메모리 관리 장치
US10025711B2 (en) 2012-01-16 2018-07-17 Qualcomm Incorporated Hybrid write-through/write-back cache policy managers, and related systems and methods
US8977874B2 (en) * 2012-01-26 2015-03-10 Qualcomm Incorporated System and method for battery load management in a portable computing device
US9251105B2 (en) * 2012-11-20 2016-02-02 Intel Corporation Transmitting an interrupt packet
WO2014204495A1 (en) 2013-06-19 2014-12-24 Empire Technology Development, Llc Locating cached data in a multi-core processor
JP2016118818A (ja) * 2014-12-18 2016-06-30 本田技研工業株式会社 車両の制御装置
US10417128B2 (en) * 2015-05-06 2019-09-17 Oracle International Corporation Memory coherence in a multi-core, multi-level, heterogeneous computer architecture implementing hardware-managed and software managed caches
US9875047B2 (en) * 2015-05-27 2018-01-23 Red Hat Israel, Ltd. Exit-less host memory locking in a virtualized environment
US10488467B2 (en) * 2015-07-13 2019-11-26 Lg Chem, Ltd. Apparatus and method for estimating remaining service life of battery
KR102454577B1 (ko) 2017-02-23 2022-10-13 니폰 제온 가부시키가이샤 전자 디바이스용 수지 필름 및 전자 디바이스
CN108664325B (zh) 2017-03-30 2019-06-28 视联动力信息技术股份有限公司 处理数据的方法和电子设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003030042A (ja) 2001-07-11 2003-01-31 Fujitsu Ten Ltd 複数コア付マイクロコンピュータ装置
JP2005044342A (ja) 2003-07-22 2005-02-17 Samsung Electronics Co Ltd マルチプロセッサシステム及びマルチプロセッサシステムのキャッシュ一貫性維持方法
JP2008225906A (ja) 2007-03-13 2008-09-25 Toyota Motor Corp 情報処理システム及びその情報処理システムを構成するコア識別コントローラ
JP2018013843A (ja) 2016-07-19 2018-01-25 アイシン・エィ・ダブリュ株式会社 マルチコア演算装置
WO2019088746A1 (ko) 2017-11-01 2019-05-09 주식회사 엘지화학 배터리 soc 추정 장치 및 방법

Also Published As

Publication number Publication date
WO2021054749A1 (ko) 2021-03-25
US20220091982A1 (en) 2022-03-24
KR20210034372A (ko) 2021-03-30
EP3929754A1 (en) 2021-12-29
CN113748396A (zh) 2021-12-03
EP3929754A4 (en) 2022-05-18
JP2022514551A (ja) 2022-02-14
US12007894B2 (en) 2024-06-11
EP3929754B1 (en) 2024-05-01

Similar Documents

Publication Publication Date Title
EP3301584B1 (en) Storage system, storage management device, storage device, hybrid storage device, and storage management method
US11088845B2 (en) Non-volatile memory with replay protected memory block having dual key
TWI459201B (zh) Information processing device
KR102196971B1 (ko) 스토리지 시스템, 그것의 쓰기 방지 수행 방법, 그리고 그것의 쓰기 방지 인증 방법
US7725653B2 (en) Method for enabling a memory as a function of estimated power source capacity
CN102799396B (zh) 存储设备、中断控制方法以及供电时间测量方法
KR101924022B1 (ko) 메모리 시스템 및 그것의 페이지 교체 방법
CN107111452B (zh) 应用于计算机系统的数据迁移方法和装置、计算机系统
JP7243965B2 (ja) バッテリー管理装置及び方法
TWI648634B (zh) 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元
EP2816482A1 (en) Information processing apparatus, control circuit, and control method
EP3707636B1 (en) Apparatus for adding protection function for indirect access memory controller
CN115269450A (zh) 内存协同管理系统和方法
WO2020186455A1 (zh) 数据存储方法及存储芯片
CN113874942A (zh) 一种数据读取方法、存储控制器及电子设备
TWI554881B (zh) 資料存取方法與系統及記憶體儲存裝置
US20030014595A1 (en) Cache apparatus and cache method
CN112863577A (zh) 便携式存储设备以及操作便携式存储设备的方法
WO2014147448A1 (en) A method of controlling direct memory access of a peripheral memory of a peripheral by a master, an associated circuitry, an associated device and an associated computer program product
US11956348B2 (en) Systems, methods, and apparatus for security key management for I/O devices
KR102078347B1 (ko) 데이터 무결성 검증 및 복구 기능을 가진 배터리 관리 시스템
KR102324263B1 (ko) 비휘발성 메모리 업데이트 장치 및 방법
KR102507400B1 (ko) 온도 측정 회로 진단 장치
KR20170062843A (ko) 보안 정책에 따라 공유 데이터 영역의 접근을 통제하는 배터리 관리 시스템
CN112622652A (zh) 充电控制方法及设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210618

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220719

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221013

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230207

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230224

R150 Certificate of patent or registration of utility model

Ref document number: 7243965

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150