IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ エルジー エナジー ソリューション リミテッドの特許一覧

特許7179255ウォッチドッグシステム、ウォッチドッグ方法、およびウォッチドッグシステムを含むバッテリー管理システム
<>
  • 特許-ウォッチドッグシステム、ウォッチドッグ方法、およびウォッチドッグシステムを含むバッテリー管理システム 図1
  • 特許-ウォッチドッグシステム、ウォッチドッグ方法、およびウォッチドッグシステムを含むバッテリー管理システム 図2
  • 特許-ウォッチドッグシステム、ウォッチドッグ方法、およびウォッチドッグシステムを含むバッテリー管理システム 図3
  • 特許-ウォッチドッグシステム、ウォッチドッグ方法、およびウォッチドッグシステムを含むバッテリー管理システム 図4
  • 特許-ウォッチドッグシステム、ウォッチドッグ方法、およびウォッチドッグシステムを含むバッテリー管理システム 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-11-18
(45)【発行日】2022-11-29
(54)【発明の名称】ウォッチドッグシステム、ウォッチドッグ方法、およびウォッチドッグシステムを含むバッテリー管理システム
(51)【国際特許分類】
   G06F 11/07 20060101AFI20221121BHJP
   H02J 7/00 20060101ALI20221121BHJP
【FI】
G06F11/07 157
H02J7/00 B
【請求項の数】 13
(21)【出願番号】P 2021540279
(86)(22)【出願日】2020-11-04
(65)【公表番号】
(43)【公表日】2022-08-19
(86)【国際出願番号】 IB2020060337
(87)【国際公開番号】W WO2021048835
(87)【国際公開日】2021-03-18
【審査請求日】2021-07-13
(73)【特許権者】
【識別番号】521065355
【氏名又は名称】エルジー エナジー ソリューション リミテッド
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(74)【代理人】
【識別番号】100188558
【弁理士】
【氏名又は名称】飯田 雅人
(72)【発明者】
【氏名】キム、ヒョ ジュン
(72)【発明者】
【氏名】ベク、ジョンシク
【審査官】山本 俊介
(56)【参考文献】
【文献】米国特許出願公開第2014/0013150(US,A1)
【文献】特開2018-107679(JP,A)
【文献】特開2002-140209(JP,A)
【文献】特表2013-541089(JP,A)
【文献】特開2019-101515(JP,A)
【文献】特開2009-289119(JP,A)
【文献】国際公開第2019/117512(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/00-11/36
H02J 7/00
(57)【特許請求の範囲】
【請求項1】
ブートローダー領域およびアプリケーション領域を含むソフトウェア領域と、
最後のウォッチドッグリフレッシュタイミングを保存する共有メモリ領域と、
前記ブートローダー領域および前記アプリケーション領域のうちの一つから伝送されるリフレッシュ要請に応答して、前記共有メモリ領域から前記最後のウォッチドッグリフレッシュタイミングと前記伝送されたリフレッシュ要請タイミングに基づいて、前記伝送されたリフレッシュ要請タイミングがオープンウィンドウタイミングであればウォッチドッグをリフレッシュする外部ウォッチドッグモジュールとを備える、
ウォッチドッグシステム。
【請求項2】
前記ブートローダー領域および前記アプリケーション領域のうちの一つは、
リフレッシュ要請を生成し、前記リフレッシュ要請が生成された時点と前記共有メモリ領域から獲得された前記最後のウォッチドッグリフレッシュタイミングに基づいて、前記外部ウォッチドッグモジュールのウィンドウ期間中のオープンウィンドウタイミングであるか判断し、前記リフレッシュ要請が生成された時点が前記オープンウィンドウタイミングであれば前記外部ウォッチドッグモジュールに伝送する、
請求項1に記載のウォッチドッグシステム。
【請求項3】
前記外部ウォッチドッグモジュールは、
前記ウォッチドッグをリフレッシュした時点を前記共有メモリ領域に前記最後のウォッチドッグリフレッシュ時点としてアップデートする、
請求項1または2に記載のウォッチドッグシステム。
【請求項4】
前記ソフトウェア領域のプログラムフローによって前記ブートローダー領域および前記アプリケーション領域のうちの一つが決定される、
請求項1から3のいずれか一項に記載のウォッチドッグシステム。
【請求項5】
ブートローダー領域、アプリケーション領域、共有メモリ領域、および外部ウォッチドッグモジュールを備えるウォッチドッグシステムのウォッチドッグ方法において、
前記ブートローダー領域および前記アプリケーション領域のうちの一つがリフレッシュ要請を前記外部ウォッチドッグモジュールに伝送する段階と、
前記外部ウォッチドッグモジュールが前記共有メモリ領域から最後のウォッチドッグリフレッシュタイミングを獲得し、前記リフレッシュ要請を受信した時間がウォッチドッグリフレッシュの可能なオープンウィンドウタイミングであるか判断する段階と、
前記外部ウォッチドッグモジュールの判断結果、前記リフレッシュ要請を受信した時間が前記オープンウィンドウタイミングである場合、前記リフレッシュ要請によってウォッチドッグをリフレッシュする段階と、
前記ウォッチドッグリフレッシュタイミングが最後のウォッチドッグリフレッシュタイミングとして前記共有メモリ領域に保存される段階とを含む、
ウォッチドッグ方法。
【請求項6】
前記外部ウォッチドッグモジュールの判断結果、前記リフレッシュ要請を受信した時間がウォッチドッグリフレッシュの可能でないクローズウィンドウタイミングであれば、ウォッチドッグリフレッシュを行わない段階をさらに含む、
請求項5に記載のウォッチドッグ方法。
【請求項7】
前記ブートローダー領域および前記アプリケーション領域のうちの一つがリフレッシュ要請を前記外部ウォッチドッグモジュールに伝送する段階は、
前記ブートローダー領域および前記アプリケーション領域のうちの一つがリフレッシュ要請を生成し、前記共有メモリ領域から最後のウォッチドッグリフレッシュタイミングを獲得する段階と、
前記ブートローダー領域および前記アプリケーション領域のうちの一つが、前記リフレッシュ要請の生成時点と前記獲得された最後のウォッチドッグリフレッシュタイミングとの差に基づいて、前記リフレッシュ要請の生成時点が前記オープンウィンドウタイミングに該当するか判断する段階と、
前記ブートローダー領域および前記アプリケーション領域のうちの一つの判断結果、前記リフレッシュ要請の生成時点が前記オープンウィンドウタイミングに該当すれば、前記外部ウォッチドッグモジュールに前記リフレッシュ要請を伝送する段階とを含む、
請求項5または6に記載のウォッチドッグ方法。
【請求項8】
前記ブートローダー領域および前記アプリケーション領域のうちの一つがリフレッシュ要請を前記外部ウォッチドッグモジュールに伝送する段階は、
前記ブートローダー領域および前記アプリケーション領域のうちの一つの判断結果、前記リフレッシュ要請の生成時点が前記オープンウィンドウタイミングに該当しなければ、前記リフレッシュ要請を無視する段階をさらに含む、
請求項7に記載のウォッチドッグ方法。
【請求項9】
ソフトウェア領域のプログラムフローによって前記ブートローダー領域および前記アプリケーション領域のうちの一つが決定される段階をさらに含む、
請求項5から8のいずれか一項に記載のウォッチドッグ方法。
【請求項10】
複数のバッテリーセルを含むバッテリーパックを管理するバッテリー管理システムにおいて、
前記複数のバッテリーセルの電圧を測定し、前記複数のバッテリーセルに対するセルバランシングを行う少なくとも一つのASICと、
前記少なくとも一つのASICを制御するメイン制御回路とを備え、
前記メイン制御回路は、
ブートローダー領域およびアプリケーション領域を含むソフトウェア領域と、最後のウォッチドッグリフレッシュタイミングを保存する共有メモリ領域とを含み、
前記少なくとも一つのASICは、
前記ブートローダー領域および前記アプリケーション領域のうちの一つから伝送されるリフレッシュ要請に応答して、前記共有メモリ領域から前記最後のウォッチドッグリフレッシュタイミングと前記伝送されたリフレッシュ要請タイミングに基づいて、前記伝送されたリフレッシュ要請タイミングがオープンウィンドウタイミングであればウォッチドッグをリフレッシュする外部ウォッチドッグモジュールを含む、
バッテリー管理システム。
【請求項11】
前記ブートローダー領域および前記アプリケーション領域のうちの一つは、
リフレッシュ要請を生成し、前記リフレッシュ要請が生成された時点と前記共有メモリ領域から獲得された前記最後のウォッチドッグリフレッシュタイミングに基づいて、前記外部ウォッチドッグモジュールのウィンドウ期間中のオープンウィンドウタイミングであるか判断し、前記リフレッシュ要請が生成された時点が前記オープンウィンドウタイミングであれば前記外部ウォッチドッグモジュールに伝送する、
請求項10に記載のバッテリー管理システム。
【請求項12】
前記外部ウォッチドッグモジュールは、
前記ウォッチドッグをリフレッシュした時点を前記共有メモリ領域に前記最後のウォッチドッグリフレッシュ時点としてアップデートする、
請求項10または11に記載のバッテリー管理システム。
【請求項13】
前記ソフトウェア領域のプログラムフローによって前記ブートローダー領域および前記アプリケーション領域のうちの一つが決定される、
請求項10から12のいずれか一項に記載のバッテリー管理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ウォッチドッグシステム、ウォッチドッグ方法、およびウォッチドッグシステムを含むバッテリー管理システムに関するものである。
【背景技術】
【0002】
高い水準の管理のためにウォッチドッグ(watchdog)がウィンドウモード(window mode)で運用され、より高い安全レベル(safety level)のためにバッテリー管理システムのメイン制御回路(Main Control Unit)内部のウォッチドッグ(watchdog)モジュールだけでなく、バッテリー管理システムでメイン制御回路外部のASICのウォッチドッグモジュールがメイン制御回路のウォッチドッグモジュールと連動できる。
【0003】
ウィンドウモードでウォッチドッグはオープンウィンドウタイミング(open window timing)のみでウォッチドッグサービスを提供することができて、クローズウィンドウタイミング(close window timing)で行われるウォッチドッグサービスは失敗(fail)と認識される。ウォッチドッグリフレッシュが一定時間行われない場合、システムはリセットされる。このようにシステム問題などによって正常的なリフレッシュが行われない場合、安全不可能(safety disable、例えば、リセット)を発生させることがウォッチドッグの目的である。
【0004】
時間が長くかかる特定シークエンス(sequence)を行う場合、ウォッチドッグによるリセットを防止するためにコード中間にウォッチドッグサービスを行うようにすることができる。従来は、正確なオープンウィンドウタイミングを把握するのに困難があった。
【0005】
例えば、再プログラミング/ソフトウェアフラッシュ(Reprogramming/Softwareflash)を行う場合、互いに異なるソフトウェア構成(Software component)であるブートローダー(bootloader)とアプリケーション(application)間にトランザクション(transaction)が発生するようになり、バッテリー管理システムでメイン制御回路外部のASICのウォッチドッグをサービスする場合、正確なオフウィンドウタイミングを把握するのに困難があって、安全不可能動作、例えば、リセットが発生するようになる。
【0006】
即ち、システムに問題が発生しなかったが、オープンウィンドウタイミングを把握しにくくて意図しない安全不可能状況が発生することがある。
【発明の概要】
【発明が解決しようとする課題】
【0007】
システムに問題が発生しなかったが、オープンウィンドウタイミングを把握しにくくて意図しない安全不可能状況が発生する問題点を解決するためのウォッチドッグシステム、ウォッチドッグ方法、およびバッテリー管理システムを提供しようとする。
【課題を解決するための手段】
【0008】
本発明の一特徴によるウォッチドッグシステムは、ブートローダー領域およびアプリケーション領域を含むソフトウェア領域、そして最後のウォッチドッグリフレッシュタイミングを保存する共有メモリ領域、および外部ウォッチドッグモジュールを含み、外部ウォッチドッグモジュールは、ブートローダー領域およびアプリケーション領域のうちの一つから伝送されるリフレッシュ要請に応答して、共有メモリ領域から最後のウォッチドッグリフレッシュタイミングと伝送されたリフレッシュ要請タイミングに基づいて、伝送されたリフレッシュ要請タイミングがオープンウィンドウタイミングであればウォッチドッグをリフレッシュする。
【0009】
ブートローダー領域およびアプリケーション領域のうちの一つは、リフレッシュ要請を生成し、リフレッシュ要請が生成された時点と共有メモリ領域から獲得された最後のウォッチドッグリフレッシュタイミングに基づいて、外部ウォッチドッグモジュールのウィンドウ期間中のオープンウィンドウタイミングであるか判断し、リフレッシュ要請が生成された時点がオープンウィンドウタイミングであれば外部ウォッチドッグモジュールに伝送することができる。
【0010】
外部ウォッチドッグモジュールは、ウォッチドッグをリフレッシュした時点を共有メモリ領域に最後のウォッチドッグリフレッシュ時点としてアップデートすることができる。
【0011】
ソフトウェア領域のプログラムフローによってブートローダー領域およびアプリケーション領域のうちの一つが決定できる。
【0012】
本発明の他の特徴による、ブートローダー領域、アプリケーション領域、共有メモリ領域、および外部ウォッチドッグモジュールを含むウォッチドッグシステムのウォッチドッグ方法は、ブートローダー領域およびアプリケーション領域のうちの一つがリフレッシュ要請を外部ウォッチドッグモジュールに伝送する段階、外部ウォッチドッグモジュールが共有メモリ領域から最後のウォッチドッグリフレッシュタイミングを獲得し、リフレッシュ要請を受信した時間がウォッチドッグリフレッシュの可能なオープンウィンドウタイミングであるか判断する段階、外部ウォッチドッグモジュールの判断結果、リフレッシュ要請を受信した時間がオープンウィンドウタイミングである場合、ウォッチドッグリフレッシュ要請によってウォッチドッグをリフレッシュする段階、およびウォッチドッグリフレッシュ段階タイミングが最後のウォッチドッグリフレッシュタイミングとして共有メモリ領域に保存される段階を含む。
【0013】
ウォッチドッグ方法は、外部ウォッチドッグモジュールの判断結果、リフレッシュ要請を受信した時間がウォッチドッグリフレッシュの可能でないクローズウィンドウタイミングであれば、ウォッチドッグリフレッシュを行わない段階をさらに含むことができる。
【0014】
ブートローダー領域およびアプリケーション領域のうちの一つがリフレッシュ要請を外部ウォッチドッグモジュールに伝送する段階は、ブートローダー領域およびアプリケーション領域のうちの一つがリフレッシュ要請を生成し、共有メモリ領域から最後のウォッチドッグリフレッシュタイミングを獲得する段階、ブートローダー領域およびアプリケーション領域のうちの一つがリフレッシュ要請生成時点と獲得された最後のウォッチドッグリフレッシュタイミング間の差に基づいてリフレッシュ要請生成時点がオープンウィンドウタイミングに該当するか判断する段階、およびブートローダー領域およびアプリケーション領域のうちの一つの判断結果、リフレッシュ要請生成時点がオープンウィンドウタイミングに該当すれば、外部ウォッチドッグモジュールにリフレッシュ要請を伝送する段階を含むことができる。
【0015】
ブートローダー領域およびアプリケーション領域のうちの一つがリフレッシュ要請を外部ウォッチドッグモジュールに伝送する段階は、ブートローダー領域およびアプリケーション領域のうちの一つの判断結果、リフレッシュ要請生成時点がオープンウィンドウタイミングに該当しなければ、リフレッシュ要請を無視する段階をさらに含むことができる。
【0016】
ウォッチドッグ方法は、ソフトウェア領域のプログラムフローによってブートローダー領域およびアプリケーション領域のうちの一つが決定される段階をさらに含むことができる。
【0017】
本発明のまた他の特徴による、複数のバッテリーセルを含むバッテリーパックを管理するバッテリー管理システムは、複数のバッテリーセルの電圧を測定し、複数のバッテリーセルに対するセルバランシングを行う少なくとも一つのASIC、および少なくとも一つのASICを制御するメイン制御回路を含む。メイン制御回路は、ブートローダー領域およびアプリケーション領域を含むソフトウェア領域、そして最後のウォッチドッグリフレッシュタイミングを保存する共有メモリ領域を含む。少なくとも一つのASICは、ブートローダー領域およびアプリケーション領域のうちの一つから伝送されるリフレッシュ要請に応答して、共有メモリ領域から最後のウォッチドッグリフレッシュタイミングと伝送されたリフレッシュ要請タイミングに基づいて、伝送されたリフレッシュ要請タイミングがオープンウィンドウタイミングであればウォッチドッグをリフレッシュする外部ウォッチドッグモジュールを含む。
【0018】
ブートローダー領域およびアプリケーション領域のうちの一つは、リフレッシュ要請を生成し、リフレッシュ要請が生成された時点と共有メモリ領域から獲得された最後のウォッチドッグリフレッシュタイミングに基づいて、外部ウォッチドッグモジュールのウィンドウ期間中のオープンウィンドウタイミングであるか判断し、リフレッシュ要請が生成された時点がオープンウィンドウタイミングであれば外部ウォッチドッグモジュールに伝送することができる。
【0019】
外部ウォッチドッグモジュールは、ウォッチドッグをリフレッシュした時点を共有メモリ領域に最後のウォッチドッグリフレッシュ時点としてアップデートすることができる。
【0020】
ソフトウェア領域のプログラムフローによってブートローダー領域およびアプリケーション領域のうちの一つが決定できる。
【発明の効果】
【0021】
システムに問題が発生しなかったが、オープンウィンドウタイミングを把握しにくくて意図しない安全不可能状況が発生する問題点を解決するためのウォッチドッグシステム、ウォッチドッグ方法、およびバッテリー管理システムを提供する。
【図面の簡単な説明】
【0022】
図1】一実施形態によるウォッチドッグシステムを示すブロック図である。
図2】一実施形態によるメイン制御回路および外部ウォッチドッグモジュールの動作を示すフローチャートである。
図3】一実施形態によるウォッチドッグリフレッシュが行われる場合を図式的に示した図である。
図4】一実施形態が適用されたメイン制御回路および外部ウォッチドッグモジュールを含むバッテリーシステムを示した図である。
図5】一実施形態によるバッテリー管理システムの構成を示した図である。
【発明を実施するための形態】
【0023】
本開示は、ウォッチドッグのオープンウィンドウタイミングを計算するルーティン(routine)をさらに含み、当該ルーティンを通じてオープンウィンドウタイミングにのみウォッチドッグサービスが行われる。あるタイミングにウォッチドッグサービス試みが発生してもウィンドウタイミングによって欠陥(fault)状況が行われない。
【0024】
互いに異なるソフトウェア構成であるブートローダーとアプリケーション間のトランザクション状況でウォッチドッグサービスを試みる場合に誤ったウィンドウタイミングによる欠陥(fault)状況が発生しないように、本開示は特定メモリ領域、例えば、共有メモリにタイミング計算のための領域を設定することができる。共有メモリおよび共有メモリとのインターフェースを通じて、互いに異なるモジュール間のタイミング同期を合わせて全てのモジュールが正確なタイミングにウォッチドッグサービスを行うことができる。即ち、ウィンドウタイミング計算エラーによって意図しない安全不可能状況を防止することができる。
【0025】
以下、添付した図面を参照して本明細書に開示された実施形態を詳しく説明し、同一であるか類似の構成要素には同一、類似の図面符号を付与し、これに関する重複する説明は省略する。以下の説明で使用される構成要素に対する接尾辞「モジュール」および/または「部」は明細書作成の容易さのみが考慮されて付与されるか混用されるものであって、それ自体で互いに区別される意味または役割を有するものではない。また、本明細書に開示された実施形態を説明することにおいて関連公知技術に対する具体的な説明が本明細書に開示された実施形態の要旨を不明瞭にすることがあると判断される場合、その詳細な説明を省略する。また、添付した図面は本明細書に開示された実施形態を容易に理解することができるようにするためのものに過ぎず、添付した図面によって本明細書に開示された技術的な思想が制限されず、本発明の思想および技術範囲に含まれる全ての変更、均等物または代替物を含むと理解されなければならない。
【0026】
第1、第2などのように序数を含む用語は多様な構成要素を説明することに使用できるが、構成要素は用語によって限定されない。用語は一つの構成要素を他の構成要素から区別する目的としてのみ使用される。
【0027】
ある構成要素が他の構成要素に「連結されて」いるとか「接続されて」いると言及された時には、その他の構成要素に直接的に連結されているかまたは接続されていることもあるが、中間に他の構成要素が存在することもあると理解されなければならないはずである。反面、ある構成要素が他の構成要素に「直接連結されて」いるとか「直接接続されて」いると言及された時には、中間に他の構成要素が存在しないと理解されなければならないはずである。
【0028】
本出願で、「含む」または「有する」などの用語は、明細書上に記載された特徴、数字、段階、動作、構成要素、部品またはこれらを組み合わせたものが存在するのを指定しようとするものであり、一つまたはそれ以上の他の特徴や数字、段階、動作、構成要素、部品またはこれらを組み合わせたものの存在または付加可能性を予め排除しないと理解されなければならない。
【0029】
図1は、一実施形態によるウォッチドッグシステムを示すブロック図である。
【0030】
図2は、一実施形態によるメイン制御回路および外部ウォッチドッグモジュールの動作を示すフローチャートである。
【0031】
図1に示されているように、ウォッチドッグシステムは、メイン制御回路1および外部ウォッチドッグモジュール4を含む。メイン制御回路1は、ソフトウェア領域2と共有メモリ領域3を含む。ソフトウェア領域2は、ブートローダー領域21およびアプリケーション領域22を含む。
【0032】
共有メモリ領域3は、外部ウォッチドッグモジュール4から伝送される最後のウォッチドッグリフレッシュタイミングを保存することができる。
【0033】
ブートローダー領域21にはアプリケーション領域をアップデートするためのコードが入っている。アプリケーション領域22に保存されたアプリケーションのアップデートまたは再プログラミングが必要な場合、アプリケーション領域22のコードが変質するか欠陥を含む場合などに、ブートローダー領域21のコードによってアプリケーション領域22がアップデートされる。
【0034】
アプリケーション領域22には、測定、制御、通信のような多様な機能を果たすためのコードから構成された複数のアプリケーションが保存されている。
【0035】
ブートローダー領域21およびアプリケーション領域22それぞれは、リフレッシュサービスを要請するためのタイマーを含む。図1に示されているように、ブートローダー領域21はタイマー211を含み、アプリケーション領域22はタイマー221を含む。タイマー211、221それぞれは時間の経過をカウントする。
【0036】
ブートローダー領域21およびアプリケーション領域22のそれぞれは、共有メモリ領域3から最後のウォッチドッグリフレッシュタイミングを受信する。ブートローダー領域21はタイマー211の時間と最後のウォッチドッグリフレッシュタイミングに基づいてリフレッシュ要請タイミングがウィンドウ期間中のオープンウィンドウタイミングに該当するか判断することができる。アプリケーション領域22もタイマー221の時間と最後のウォッチドッグリフレッシュタイミングに基づいてリフレッシュ要請タイミングがウィンドウ期間中のオープンウィンドウタイミングに該当するか判断することができる。
【0037】
ブートローダー領域21およびアプリケーション領域22のそれぞれは、ウォッチドッグタイマーのリフレッシュのためのリフレッシュ要請を一定の時間間隔で発生させることができる。ブートローダー領域21およびアプリケーション領域22のそれぞれは、このように発生するリフレッシュ要請を外部ウォッチドッグモジュール4に全て伝送するのではなく、リフレッシュ要請が外部ウォッチドッグモジュール4のウィンドウ期間中のオープンウィンドウタイミングであるか判断し、オープンウィンドウに属する時点であれば外部ウォッチドッグモジュール4に伝送し、そうでなければ伝送しない。
【0038】
ソフトウェア領域2で運用されるプログラムがブートローダー領域21からアプリケーション領域22に変更でき、その反対にアプリケーション領域22からブートローダー領域21に変更できる。現在運用されるプログラムがどの領域に属するのかによって該当領域がウォッチドッグリフレッシュを要請することができる。
【0039】
外部ウォッチドッグモジュール4はウォッチドッグリフレッシュ遂行時点に同期されてウィンドウ期間を設定し、ソフトウェア領域2からウォッチドッグリフレッシュ要請を受信すれば共有メモリ領域3から最後のウォッチドッグリフレッシュタイミングを獲得し、ウォッチドッグリフレッシュが可能なタイミングであるかチェックし、チェックの結果、ウォッチドッグリフレッシュが可能であればウォッチドッグリフレッシュ要請によってウォッチドッグをリフレッシュし、チェックの結果、ウォッチドッグリフレッシュが可能でなければウォッチドッグリフレッシュを行わなくてもよい。
【0040】
ウォッチドッグがリフレッシュされれば、メイン制御回路1および外部ウォッチドッグモジュール4に欠陥がないと判断され、ウォッチドッグは今までカウントした結果をリセットし、オシレータクロックを用いてカウントを改めて開始することができる。従来の場合、ブートローダー領域からアプリケーション領域に、またはその反対にジャンプが発生する場合、最後のウォッチドッグリフレッシュタイミングが分からなくて、ウォッチドッグリフレッシュ要請時点がオープンウィンドウタイミングに該当しなくて欠陥が発生したと認識される問題があった。本開示の一実施形態はこれを防止するために共有メモリ領域に最後のウォッチドッグリフレッシュタイミングを保存する。
【0041】
図2に示されているように、まず、メイン制御回路1のブートローダー領域21およびアプリケーション領域22のうちの一つが共有メモリ領域3から最後のウォッチドッグリフレッシュタイミングを獲得する(S1)。
【0042】
ブートローダー領域21またはアプリケーション領域22のうちの一つは周期的にリフレッシュ要請を生成し、リフレッシュ要請の生成時点と獲得された最後のウォッチドッグリフレッシュタイミング間の差に基づいて現在リフレッシュ要請生成時点がウィンドウ期間中のオープンウィンドウタイミングに該当するか判断する(S2)。
【0043】
S2の判断結果、リフレッシュ要請生成時点がオープンウィンドウタイミングに該当すれば、ブートローダー領域21およびアプリケーション領域22のうちの一つは該当リフレッシュ要請を外部ウォッチドッグモジュール4に伝送する(S3)。
【0044】
ブートローダー領域21およびアプリケーション領域22のうちのいずれか一つが共有メモリ領域3から最後のウォッチドッグリフレッシュタイミングを獲得するか、そしてリフレッシュ要請を行うかは、ソフトウェア領域2でのプログラムフローによって決定される。即ち、現在プログラムがブートローダー領域21で行われれば、ブートローダー領域21でリフレッシュ要請を行うことができ、アプリケーション領域22で行われれば、アプリケーション領域22でリフレッシュ要請を行うことができる。
【0045】
S2の判断結果、リフレッシュ要請生成時点がオープンウィンドウタイミングに該当されなければ、該当リフレッシュ要請は無視され(S4)、その次に発生するリフレッシュ要請に対してS2段階の判断を行う。
【0046】
外部ウォッチドッグモジュール4は伝送されたリフレッシュ要請を受信し、共有メモリ領域3から最後のウォッチドッグリフレッシュタイミングを獲得する(S5)。外部ウォッチドッグモジュール4はウォッチドッグリフレッシュが可能なタイミング、即ち、オープンウィンドウタイミングであるか判断する(S6)。
【0047】
S6の判断結果、リフレッシュ要請を受信した時間がウォッチドッグリフレッシュの可能なオープンウィンドウタイミングである場合、外部ウォッチドッグモジュール4はウォッチドッグリフレッシュ要請によってウォッチドッグをリフレッシュする(S7)。
【0048】
S6の判断結果、リフレッシュ要請を受信した時間がウォッチドッグリフレッシュの可能でないタイミングであるクローズウィンドウタイミングであれば、外部ウォッチドッグモジュール4はウォッチドッグリフレッシュを行わない(S8)。S8段階以後、再びS6段階に移動して時間の経過によってウォッチドッグリフレッシュが可能なタイミングであるか判断することができる。
【0049】
S7段階の遂行時点が最後のウォッチドッグリフレッシュタイミングになって、外部ウォッチドッグモジュール4は共有メモリ領域3にこれを伝送し、共有メモリ領域3に最後のウォッチドッグリフレッシュタイミングが保存される。即ち、最後のウォッチドッグリフレッシュタイミングがアップデートされる(S9)。
【0050】
一実施形態によれば、段階S1~S9が持続的に繰り返される。
【0051】
図3は、一実施形態によるウォッチドッグリフレッシュが行われる場合を図式的に示した図である。
【0052】
図3に示されているように、プログラムフローはブートローダー領域21から時点t8にアプリケーション領域22に変更されると説明する。
【0053】
ブートローダー領域21は時点t1にリフレッシュ要請を生成し、共有メモリ領域3から最後のリフレッシュタイミングを獲得して、時点t1のリフレッシュ要請時点がオープンウィンドウタイミングであると判断する。そうすれば、時点t1のリフレッシュ要請が外部ウォッチドッグモジュール4に伝送され、外部ウォッチドッグモジュール4は時点t1のリフレッシュ要請によってウォッチドッグをリフレッシュし、新たなウィンドウ期間W1を時点t1に同期されて開始する。
【0054】
時点t2およびt3に生成されたリフレッシュ要請はウィンドウ期間W1のオープンリフレッシュタイミング以前であるクローズリフレッシュ期間に属するので、ブートローダー領域21は外部ウォッチドッグモジュール4に該当リフレッシュ要請を伝送しない。
【0055】
ブートローダー領域21は時点t4にリフレッシュ要請を生成し、共有メモリ領域3から最後のリフレッシュタイミングであるt1を獲得して、時点t4のリフレッシュ要請時点がオープンウィンドウタイミングであると判断する。そうすれば、時点t4のリフレッシュ要請が外部ウォッチドッグモジュール4に伝送され、外部ウォッチドッグモジュール4は時点t4のリフレッシュ要請によってウォッチドッグをリフレッシュし、新たなウィンドウ期間W2を時点t4に同期されて開始する。
【0056】
同一の方式で時点t5およびt6に生成されたリフレッシュ要請は無視され、時点t7に生成されたリフレッシュ要請が外部ウォッチドッグモジュール4に伝送され、外部ウォッチドッグモジュール4は時点t7のリフレッシュ要請によってウォッチドッグをリフレッシュし、新たなウィンドウ期間W3を時点t7に同期されて開始する。
【0057】
時点t8にプログラムフローがブートローダー領域21からアプリケーション領域22に変更される。
【0058】
アプリケーション領域22は時点t9にリフレッシュ要請を生成し、共有メモリ領域3から最後のリフレッシュタイミングであるt7を獲得して、時点t9のリフレッシュ要請時点がウィンドウ期間W3のオープンウィンドウタイミング以前であるクローズウィンドウタイミングと判断し、時点t9のリフレッシュ要請を無視する。時点t10に生成されたリフレッシュ要請も同一の方式で無視される。
【0059】
アプリケーション領域22は時点t11にリフレッシュ要請を生成し、共有メモリ領域3から最後のリフレッシュタイミングであるt7を獲得して、時点t11のリフレッシュ要請時点がオープンウィンドウタイミングであると判断する。そうすれば、時点t11のリフレッシュ要請が外部ウォッチドッグモジュール4に伝送され、外部ウォッチドッグモジュール4は時点t11のリフレッシュ要請によってウォッチドッグをリフレッシュし、新たなウィンドウ期間W4を時点t11に同期されて開始する。
【0060】
同一の方式で時点t12およびt13に生成されたリフレッシュ要請は無視され、時点t14に生成されたリフレッシュ要請が外部ウォッチドッグモジュール4に伝送され、外部ウォッチドッグモジュール4は時点t14のリフレッシュ要請によってウォッチドッグをリフレッシュし、新たなウィンドウ期間W5を時点t14に同期されて開始する。
【0061】
図4は、一実施形態が適用されたメイン制御回路および外部ウォッチドッグモジュールを含むバッテリーシステムを示した図である。
【0062】
図5は、一実施形態によるバッテリー管理システムの構成を示した図である。
【0063】
バッテリーシステム100は、バッテリー管理システム(Battery Management System、BMS)110、バッテリーパック120、および連結部130を含む。
【0064】
BMS110は、複数のバッテリーセルC1~Cnに関する情報を含むバッテリーシステムに関する多様な情報を集合および分析してバッテリーシステムの充放電、バッテリーセルバランシング、保護動作などを制御することができる。
【0065】
バッテリーパック120は、電気的に連結されている複数のバッテリーセルC1~Cnを含む。バッテリーパック120を構成する複数のバッテリーセルC1~CnそれぞれはBMS110と複数の配線を通じて電気的に連結されている。図4に示されたバッテリーパック120は一例として、所定個数のバッテリーセルが直列連結されてバッテリーモジュールを構成し、所定個数のバッテリーモジュールが直列および並列連結されてバッテリーパックを構成することができる。
【0066】
連結部130はリレーやnチャンネルタイプのトランジスターなどで実現でき、バッテリーパック120と外部装置の間に直列連結されている。連結部130は、BMS110から供給される信号によって動作できる。
【0067】
BMS110は、メイン制御回路(Main Control Unit、MCU)111と、複数のASIC(Application Specific Integrated Circuit)112~114を含む。複数のASIC112~114それぞれは複数のバッテリーセルC1~Cnのうちの対応するバッテリーセルに連結されて、MCU111の制御によってバッテリーセル電圧を測定することができ、バッテリーセルのうちのバランシングが必要なセルに対してバッテリーセルバランシングを行うことができ、バッテリーセル温度を測定することができる。図4では3個のASIC112~114が示されているが、これは一例であって、バッテリーパック120を構成する複数のセル個数によってASICの個数が変わってもよい。
【0068】
MCU111はソフトウェア領域101と共有メモリ領域102を含み、ソフトウェア領域101は図1図3を参照して説明したソフトウェア領域2と同一の方式で実現できる。
【0069】
ソフトウェア領域101のアプリケーション領域1012に保存されたアプリケーションが行われ、MCU111はアプリケーションによって動作できる。アプリケーション領域1012にはバッテリーモニタリングおよび管理に必要な多数のアプリケーションが保存でき、実行されるアプリケーションによって、MCU111が駆動できる。例えば、アプリケーション領域1012はバッテリーパックの充電状態および寿命を推定するためのアプリケーション、バッテリーパック電流およびバッテリーセルの電圧、温度など状態情報を感知するためのアプリケーションなどを含むことができる。また、アプリケーション領域1012はバッテリーのセルバランシングを制御するか、バッテリーの充放電を制御するか、バッテリーに対する保護動作を行うためのアプリケーションなどを含むことができる。即ち、複数のASIC112~114がバッテリーパックに関する状態情報を収集するように制御し、MCU110が収集された情報を処理してバッテリーパックを管理するために必要な動作(セルバランシング、充放電など)を制御するための多様なアプリケーションがアプリケーション領域1012に保存できる。
【0070】
図5に示されているように、複数のASIC112~114のうちの少なくとも一つのASIC112に外部ウォッチドッグモジュール121が実現できる。
【0071】
図5に示されているように、ASIC112に外部ウォッチドッグモジュール121、MCU111のブートローダー領域1011、アプリケーション領域1012、および共有メモリ領域102は先に図1図3を参照した説明と同様に実現されて同一の方式で動作できる。
【0072】
従来は正確なオープンウィンドウタイミングのみでウォッチドッグリフレッシュが可能でウィンドウサイズ(window size)を考慮して特定作業(task)にウォッチドッグリフレッシュルーティンが挿入された。ウィンドウサイズが32msである時、オープンウィンドウが16msから32msである場合、25ms作業にリフレッシュ要請を入れて正常に動作できるようにした。しかし、互いに異なるソフトウェア構成間のジャンプ(jump)が発生する場合、作業タイミングおよび最後のウォッチドッグリフレッシュタイミングなどが分からなくて意図しないウォッチドッグ失敗が発生した。
【0073】
本開示で紹介された実施形態を通じて上記のような問題を解決することができる。
【0074】
以上で本発明の実施形態に関して詳細に説明したが、本発明の権利範囲がこれに限定されるのではなく、本発明の属する分野における通常の知識を有する者が多様に変形および改良した形態も本発明の権利範囲に属する。
【符号の説明】
【0075】
1、111:メイン制御回路
2、101:ソフトウェア領域
3、102:共有メモリ領域
4、121:外部ウォッチドッグモジュール
21、1011:ブートローダー領域
22、1012:アプリケーション領域
100:バッテリーシステム
110:バッテリー管理システム(Battery Management System)
120:バッテリーパック
130:連結部
図1
図2
図3
図4
図5