一実施形態による、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって、移動中に組み込み車両システムを更新可能なシステムの図である。
一実施形態による、保守プラットフォーム103の構成要素の図である。
一実施形態による、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって、移動中に組み込み車両システムを更新するプロセスのフローチャートである。
一実施形態による、移動している間に組み込みシステムの動作時間を判定するプロセスのフローチャートである。
一実施形態による、組み込み車両システムと関連付けられた1つ以上の保守動作を実施するための1つ以上のデータパッケージを構成するプロセスのフローチャートである。
一実施形態による、1つ以上のデータパッケージを送信し、その後、検証するプロセスのフローチャートである。
一実施形態による、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって、移動中に組み込み車両システムを更新するプロセスを例示するフローチャートである。
一実施形態による、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって、移動中に組み込み車両システムを更新するプロセスを例示するフローチャートである。
種々の実施形態による、図3〜6のプロセスにおいて利用されたユーザインターフェースの図である。
種々の実施形態による、図3〜6のプロセスにおいて利用されたユーザインターフェースの図である。
種々の実施形態による、図3〜6のプロセスにおいて利用されたユーザインターフェースの図である。
種々の実施形態による、図3〜6のプロセスにおいて利用されたユーザインターフェースの図である。
本発明の実施形態を実装するために使用され得るハードウェアの図である。
本発明の実施形態を実装するために使用され得るチップセットの図である。
本発明の実施形態を実装するために使用され得るモバイル端末(例えば、ハンドセット)の図である。いくつかの実施形態の説明
移動先及び/またはリソース可用性間の動作時間に基づいて構成されたデータパッケージを使用する組み込みナビゲーションシステムを更新するための方法、装置、及びコンピュータプログラムが開示される。以下の説明において、説明の目的のために、多くの特定の詳細が、本発明の実施形態の完全な理解を提供するために、明らかにされる。しかしながら、本発明の実施形態が、これらの特定の詳細なしで、または同等の構成により実践され得ることが当業者にとって明白である。他の事例において、周知の構造体および機器が、本発明の実施形態を不必要に不明瞭にすることを回避するためにブロック図形式で示される。
図1は、一実施形態による、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって、移動中に組み込み車両システムを更新可能にするシステムの図である。前述のように、サービス提供者及び機器製造者の間で関心のある一領域は、ユーザをその移動(例えば、旅行先への運転)時に補助するために実質的にリアルタイムな位置基盤情報を有するモバイル機器の開発である。特に、ナビゲーションシステムは、より広く使用され、車両に次第に統合されるようになっている(例えば、組み込みナビゲーションシステムは、より新しい車両ではしばしば標準機能である)。しかしながら、このようなナビゲーションシステムは、一般に、定期的な更新(例えば、ソフトウェア/ファームウェア更新)を頻繁に要求する。受信したOTAまたはUSBドライブもしくはDVDを介するものであろうとなかろうと、このような更新は、破損を防止するために安定した接続性を概して要求する(つまり、車両は、停止しなければならず、エンジンは、作動していなければならない)。更新プロセス中、切断が起こった場合(例えば、車両が動くかまたはエンジンが停止する)、更新及び/またはダウンロードプロセスは、完全に改めて再開されなければならない。
この課題を解決するために、図1のシステム100は、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって、移動中に組み込み車両システムを更新する能力を導入する。図1に示されるように、システム100は、通信ネットワーク105を介して保守プラットフォーム103への接続性を有する1つ以上のユーザ端末(UE)101a〜101m(例えば、モバイルフォン、タブレット、ファブレット、PND等)(まとめてUE101としても参照される)を備える。UE101はまた、1つ以上のアプリケーション107a〜107n(まとめてアプリケーション107としても参照される)へのアクセスを含むかまたは有する。例として、アプリケーション107は、地図及び/またはナビゲーションアプリケーション、位置基盤アプリケーション(例えば、位置「チェックイン」を可能にする)、インターネットブラウザ、ソーシャルネットワーキングアプリケーション、音声/動画/メディアプレイヤー等を含み得る。加えて、UE101は、1つ以上のセンサ109a〜109p(まとめてセンサ109としても参照される)を含む。例えば、センサ109は、全地球測位システム(GPS)受信器のような、全地球航法衛星システム(GNSS)受信器、コンパス、高度センサ、加速度センサ、近距離無線通信(NFC)センサ、気圧センサ、速度センサ、加速度センサ、運動センサ、またはそれらの組み合わせを含み得る。システム100はまた、通信ネットワーク105を介して保守プラットフォーム103への接続性を有する1つ以上の組み込みシステム113a〜113q(まとめて組み込みシステム113としても参照される)へのアクセスを含むかまたは有し、例えば、1つ以上の短距離無線通信技術(例えば、Bluetooth(登録商標)、Bluetooth(登録商標) LE(BLE)、NFC、無線フィデリティ(WiFi)、またはそれらの組み合わせ)を介して、UE101への接続性を有する少なくとも1つの車両111(例えば、自動車)を含む。例えば、組み込みシステムまたはアプリケーション113は、組み込みナビゲーションシステム、組み込み診断システム、組み込みインフォテインメントシステム、組み込みダッシュボードシステム、組み込みコンピュータシステム等を含み得る。例えば、組込みシステム113(例えば、組み込みナビゲーションシステム113)は、その位置及び/または経路の保守プラットフォーム103に車両111が通知することを可能にする。加えて、車両111は、1つ以上のセンサ125a〜125t(まとめてセンサ125としても参照される)を含む。例えば、センサ125は、GPS受信器のようなGNSS受信器、コンパス、高度センサ、加速度センサ、NFCセンサ、気圧センサ、速度センサ、加速度センサ、運動センサ、またはそれらの組み合わせを含み得る。
一実施形態において、保守プラットフォーム103は、少なくとも1つの更新データベース115を含み得るかまたはこれと関連付けられ得る。実施形態の一例において、保守プラットフォーム103は、UE101内の全体もしくは部分において、または独立的に存在してもよく、更新データベース115は、保守プラットフォーム103内の全体または部分において存在してもよい。少なくとも1つの更新データベース115は、1つ以上の更新組込みシステム113(例えば、ソフトウェア/ファームウェア更新)、アプリケーション107用の1つ以上の更新、1つ以上のデータ更新(例えば、メディア、地図またはナビゲーションデータ)、またはそれらの組み合わせを少なくとも部分的に含み得る。少なくとも1つの更新データベース115はまた、データセキュリティを確実にするために、車両111、UE101、組込みシステム113(例えば、組み込みナビゲーションシステム113)、またはそれらの組み合わせと関連付けられた1つ以上の資格情報(例えば、ユーザ名及びパスワード)を含み得る。
UE101及び車両111の組み込みシステム113はまた、通信ネットワーク105を介してサービスプラットフォーム117に接続される。一実施形態において、サービスプラットフォーム117は、1つ以上のサービス119a〜119r(まとめてサービス119としても参照される)を含む。サービス119は、1つ以上のアプリケーション107、1つ以上の組み込みシステム113、またはそれらの組み合わせのためのコンテンツ提供サービスのような幅広い種々のサービスを含み得る。例として、サービス119は、地図及び/またはナビゲーションサービス、クラウド基盤サービス等を含み得る。一実施形態において、保守プラットフォーム103、更新データベース115、サービスプラットフォーム117、及び/またはサービス119は、1つのエンティティ(例えば、クラウド基盤サービス119)として実装され得る。一実施形態において、UE101、組み込み車両システム113、サービスプラットフォーム117、及びサービス119はまた、1以上のコンテンツ提供者121a〜121s(まとめてコンテンツ提供者121としても参照される)への接続性を有する。例えば、コンテンツ提供者121はまた、システム100の構成要素に幅広い種々のコンテンツ(例えば、地図、ナビゲーション経路等)を提供し得る。
一実施形態において、保守プラットフォーム103、アプリケーション107(例えば、地図及び/またはナビゲーションアプリケーション)、組み込みシステム113(例えば、組み込みナビゲーションシステム113)、またはそれらの組み合わせは、UE101、車両111、またはそれらの組み合わせに対する位置付けに基づく位置基盤データ(例えば、地図及び/またはナビゲーション情報)の、1つ以上のサービス119、更新データベース115、またはそれらの組み合わせへのリクエストを作成すべく、UE101、車両111、またはそれらの組み合わせの位置を判定するために1つ以上の位置基盤技術(例えば、GPS、セルラー方式三角測量、補助GPS(A−GPS)等)を利用し得る。例えば、UE101は、可能なときにその位置を判定すべく、衛星123から地理的座標を取得するためにGPS受信器109を含み得る。
例として、システム100の通信ネットワーク105は、データネットワーク、無線ネットワーク、電話網、またはそれらの任意の組み合わせのような、1つ以上のネットワークを含む。データネットワークが、任意のローカルエリアネットワーク(LAN)、メトロポリタンエリアネットワーク(MAN)、広域ネットワーク(WAN)、公衆データネットワーク(例えば、インターネット)、短距離無線ネットワーク、あるいは商業上所有された専有パケット交換ネットワーク、例えば、専有ケーブルもしくは光ファイバネットワーク等、またはそれらの任意の組み合わせのような、任意の他の適切なパケット交換ネットワークであり得ることが考えられる。
加えて、無線ネットワークは、例えば、セルラーネットワークであり得、グローバル進化型高速データレート(EDGE)、汎用パケット無線サービス(GPRS)、汎欧州デジタル移動電話方式(GSM(登録商標))、インターネットプロトコルマルチメディアサブシステム(IMS)、ユニバーサル移動体通信システム(UMTS)等、及び任意の他の適切な無線媒体、例えば、ワールドワイドインターオペラビリティフォーマイクロウェーブアクセス(WiMAX)、ロングタームエボリューション(LTE)ネットワーク、符号分割多重アクセス(CDMA)、広帯域符号分割多重アクセス(WCDMA(登録商標))、無線フィデリティ(WiFi)、無線LAN(WLAN)、Bluetooth(登録商標)、インターネットプロトコル(IP)データ放送、衛星、モバイルアドホックネットワーク(MANET)等、またはそれらの任意の組み合わせを含む、種々の技術を採用し得る。
UE101は、モバイルハンドセット、ステーション、ユニット、機器、マルチメディアコンピュータ、マルチメディアタブレット、インターネットノード、通信機、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、ネットブックコンピュータ、タブレットコンピュータ、パーソナル移動通信システム(PCS)端末、パーソナルナビゲーション端末、パーソナルデジタルアシスタント(PDA)、音声/動画プレイヤー、デジタルカメラ/カムコーダー、測位機器、テレビ受信機、ラジオ放送受信機、電子ブック機器、ゲーム機器、またはそれらの任意の組み合わせを含む、任意の形式のモバイル端末、固定端末、または携帯端末である。UE101が、利用者に対し任意の形式のインターフェース(「ウェアラブル」電気回路構成等のような)をサポート可能であることがまた考えられる。
更新が切断(例えば、車両111が動くことかまたは車両111のエンジンが停止されること)により取り消されるか、または更新プロセスが完了するまでユーザが車両111内に留まらなければならないことを回避しつつ、車両111の組み込みシステム113を更新する課題を解決するために、図1のシステム100は、組み込みシステム113用の更新がサービス119(例えば、クラウド基盤サービス119)から利用可能であることを判定する。例えば、組み込みナビゲーションシステム113ソフトウェア及び/またはマップデータ更新が利用可能であり得る。初期ソフトウェア及びデータが、組み込みシステム113(例えば、組み込みナビゲーションシステム113)上に既にインストールされていることが考えられる。組み込み車両システム113ソフトウェア及びデータの現行バージョンが、例えば、サービス119(例えば、クラウド基盤サービス119)に既に記憶されていることがまた考えられる。
一実施形態において、システム100は、ユーザ対話処理に対するリクエストに関する、UE101(例えば、モバイル機器)に対して表示されることになる通知を少なくとも部分的に引き起こし得る。システム100は、その後、組み込み車両システム113ソフトウェア及び/またはデータ更新を進めるためのユーザアクションの受信を判定する。一実施形態において、組み込みシステム113ソフトウェア及び/またはデータ更新は、任意のユーザ対話処理を必要としない。一実施形態において、ユーザの対話処理(例えば、UE101との)または任意のユーザ対話処理がないことの判定に際し、システム100は、少なくとも1つの組み込みシステム113(例えば、組み込みナビゲーションシステム113)、少なくとも1つのユーザ機器(例えば、モバイルフォンのようなUE101)、少なくとも1つのクラウドサービス(例えば、クラウド基盤サービス119)、またはそれらの組み合わせと関連付けられた、機器性能情報(例えば、利用可能記憶容量及び接続性)、リソース可用性情報(例えば、組み込みナビゲーションシステム更新要求)、またはそれらの組み合わせを判定する。一実施形態において、システム100は、ユーザのUE101(例えば、モバイルフォン)、組み込みシステム113(例えば、組み込みナビゲーションシステム113)、またはそれらの組み合わせの最大記憶スペースを分析する。使用ケースの一例において、システム100が、現行ユーザのナビゲーション経路を既に判定している場合、システム100は、動作時間及び更新時間を判定可能であり、システム100は、適宜、1つ以上のデータパッケージの構成を少なくとも部分的に引き起こすことができる。一方で、一実施形態において、システム100は、利用可能スペース(例えば、UE101及び/または組み込みシステム113と関連付けられた記憶スペース)に少なくとも部分的に基づいて、1つ以上のパッケージが構成されることを少なくとも部分的に引き起こす。
一実施形態において、システム100は、1つ以上の新たに利用可能なデータパッケージが、サービス119(例えば、クラウド基盤サービス119)または更新データベース115からユーザのUE101(例えば、モバイルフォンまたはタブレット)にダウンロードされることを少なくとも部分的に引き起こす。例えば、サービス119または更新データベース115からユーザのUE101へのダウンロードは、ユーザの車両111の外側で起こってもよく、1つ以上の新たに利用可能なデータパッケージは、ユーザのUE101を介してユーザの車両111までユーザを追従することができる。現行ユーザのナビゲーション経路が知られていない一実施形態において、一度、ユーザのUE101と組み込みシステム113(例えば、組み込みナビゲーションシステム113)との間の接続性がシステム100によって判定されると、システム100は、組み込みシステム113(例えば、組み込みナビゲーションシステム113)の推定された動作時間を判定する。例えば、システム100は、ユーザ経路及び/または行先の情報が組み込みシステム113、UE101、またはクラウド基盤サービス119内にユーザによって既に入力されている場合、ユーザ経路及び/または行先に少なくとも部分的に基づいて、推定された動作時間を判定し得る。
一実施形態において、システム100は、少なくとも1つの組み込みシステム113(例えば、組み込みナビゲーションシステム113)の少なくとも1のユーザの少なくとも1つの予測された経路に少なくとも部分的に基づいて、推定された動作時間を判定する。例えば、システム100は、ユーザのカレンダー(例えば、カレンダーアプリケーション107)、文脈情報(例えば、週のうちの日または日のうちの時間)、ユーザ、車両111、またはそれらの組み合わせと関連付けられた1つ以上の時系列傾向等から、ユーザが、3つの異なる経路の1つを使用して、近い将来において地点Aから地点Bにユーザの車両(例えば、車両111)を運転しようとすること、及び選択された経路とは無関係に推定された動作時間が、約45分になることを判定し得る。
一実施形態において、組み込みシステム113(例えば、組み込みナビゲーションシステム113)及び/またはUE101(例えば、モバイルフォン)の両方が、予測された経路及び/またはユーザの現行経路を分析することができる。使用ケースの一例において、システム100は、ユーザが車両111に到達する時間(例えば、ユーザが車両111を始動しユーザのシートベルトを締めるための2分を減算する)から、車両111がオフになる時間(車両111がシャットダウンされた後、組み込みシステム113が依然として動作する、2分を加算する)までの推定された動作時間を判定し得る。
少なくとも1つの予測された経路が、少なくとも1つの組み込みナビゲーションシステム113の複数の動作セッションにわたって完了されることになる複数の経路を含む、1つ以上の実施形態において、システム100は、複数の動作セッションに少なくとも部分的に基づいて、推定された動作時間を判定する。例えば、ユーザは、組込みナビゲーションシステム113、アプリケーション107(例えば、地図/ナビゲーションアプリケーション)、及び/またはクラウド基盤ナビゲーションサービス119に移動経路(例えば、乾物店、クリーニング店等での停止)の途中の停止回数を入力し得る。システム100は、各新しい出発地点から各新しい行先に到達するための時間量を予測し得る。例えば、システム100は、組込みナビゲーションシステム113がユーザの家と乾物店との間で20分間、乾物店とクリーニング店との間で10分間、及びクリーニング店とユーザの職場との間で40分間、動作することになることを予測し得る(例えば、利用可能な経路及び交通情報に基づいて)。システム100が、コンテンツ提供者121またはサービス119によって提供された交通及び天候情報を予測に組み込む。加えて、利用者が、運転が単に一部であるマルチモーダル経路をシステム100に入力することが考えられる。例えば、ユーザは、システム100が推定された動作時間を判定する間に車両111に歩いていくことがあり得、これに関連して、それは、将来の経路に対するものである。加えて、ユーザはまた、経路計画を作成するときに将来に対する出発時間を設定する(例えば、UE101を使用して)。この使用ケースの例において、現行経路も可能であるが、しかしながらこれは、車両111が動いているときに更新がUE101において潜在的に受信されることになる場合ほど頻繁に使用されることにはならず、このため切断に影響されやすい。
1つ以上の実施形態において、システム100は、推定された動作時間に少なくとも部分的に基づいて、利用可能なアップロード時間、利用可能なインストール時間、またはそれらの組み合わせを判定する。一実施形態において、一度、システム100が推定された動作時間及び1つ以上のパッケージのための必要とされるアップロード時間の両方を判定すると、システム100は、2つの比較を少なくとも部分的に引き起こす。例として、システム100が、推定された時間が60分であると判定した場合、システム100は、必要とされるアップロード/更新時間を60分−25%=45分として判定することができる。さらに、使用ケースの一例において、システム100は、1つ以上のデータパッケージの1つをアップロードすること(検証を伴う)がシステム100に5分を費やさせることになること、及び組込みシステム113(例えば、組込みナビゲーションシステム113)を更新することがシステム100にさらに5分を費やさせ、データパッケージごとに合計10分を費やすことになることを判定し得る。使用ケースの一例において、システム100は、組み込みシステム113が60分の動作セッション中に4つのデータパッケージによって更新されることを許容することになる、1つ以上の増加単位、例えば、10分の増加単位に少なくとも部分的に基づいて、1つ以上のデータパッケージを構成し得る。一実施形態において、このとき、サービス119(例えば、クラウド基盤サービス119)は、利用可能な複数データパッケージを有し得、各データパッケージは、UE101、組み込みシステム113、またはそれらの組み合わせに独立的にアップロードされ得る。しかしながら、システム100が、動作時間(つまり、ナビゲーションに必要な時間)が1つ以上のデータパッケージをアップロードするために必要とされる時間未満であると判定した場合、システム100は、1つ以上のより小さいデータパッケージがUE101、組み込みシステム113、またはそれらの組み合わせによって必要とされることを判定し得る。
一実施形態において、システム100は、推定された時間に少なくとも部分的に基づいて、1つ以上の保守動作を実施するための1つ以上のデータパッケージを構成する。ちょうど論じられた例において、システム100は、推定された動作時間が60分であること、及び実際に利用可能なアップロード/更新時間が45分であることを既に判定している。加えて、システム100はまた、1つ以上のデータパッケージの各々が組み込みシステム113をアップロードし更新するために10分をシステム100に費やさせることになることを既に判定している。このため、一例において、システム100は、例えば、4つのデータパッケージまたは2+2パッケージとしてアップロード及び更新するための4データパッケージを構成し得る。一実施形態において、システム100が、動作時間が必要とされるアップロード時間未満であると判定した場合、システム100は、1つ以上のデータパッケージのサイズ、例えば、1つ以上の増加単位を低減するためにサービス119(例えば、クラウド基盤サービス119)に送信されることになるリクエストを少なくとも部分的に引き起こし得る。一実施形態において、システム100は、機器性能情報、リソース可用性情報(例えば、利用可能記憶スペース)、推定された動作時間、またはそれらの組み合わせに少なくとも部分的に基づいて、1つ以上のデータパッケージの構成を少なくとも部分的に引き起こす。
1つ以上の実施形態において、システム100は、1つ以上の保守動作を実施するための1つ以上のデータパッケージ間の1つ以上の依存性を判定する(例えば、1つ以上の更新が順番に実施されることを必要とする場合)。一実施形態において、システム100は、1つ以上の判定された依存性に少なくとも部分的に基づいて、1つ以上のデータパッケージの構成を少なくとも部分的に引き起こす。上述された例において、システム100は、クラウド基盤サービス119が、例えば、データパッケージまたはグループが、異なる増加単位に基づき得る、4つのデータパッケージを独立的に、または2つのパッケージの2つのグループ(例えば、2+2パッケージ)として構成することを少なくとも部分的に引き起こし得る。加えて、少なくとも1つの予測された経路が複数の経路を含む場合、システム100は、1つ以上の保守動作が複数の動作セッション(例えば、ユーザの家と乾物店との間、乾物店とクリーニング店との間、クリーニング店とユーザの職場との間の運転)にわたって実施されるように、1つ以上のデータパッケージを構成し得る。
一実施形態において、システム100は、推定された動作時間中に1つ以上の保守動作を開始するために少なくとも1つの組み込みシステム113(例えば、組み込みナビゲーションシステム113)への1つ以上のデータパッケージの送信を少なくとも部分的に引き起こす。例として、システム100は、サービス119(例えば、クラウド基盤サービス119)及び/または更新データベース115が、通信ネットワーク105を介してユーザまたは組み込みシステム113と関連付けられたUE101に1つ以上のデータパッケージを送信することを少なくとも部分的に引き起こし得る。一実施形態において、システム100はまた、UE101(例えば、モバイルフォン)が、1つ以上の短距離通信技術(例えば、Bluetooth(登録商標))を介して組み込みシステム113に1つ以上のデータパッケージを送信することを引き起こし得る。例えば、ユーザは、ケーブルを介してUE101(例えば、モバイルフォンまたはタブレット)を組み込みシステム113に接続し得るか、またはユーザは、UE101と組み込みシステム113との間で1つ以上のデータパッケージを送信するために、ユーザのポケットまたはハンドバッグ内で一度、UE101を車両111の内側で保持し得る。特に、1つ以上の保守動作は、少なくとも1つのアプリケーション更新動作(例えば、システム更新)、少なくとも1つのデータ更新動作(例えば、地図及び/またはナビゲーションデータを更新すること)、またはそれらの組み合わせを含み得る。一実施形態において、1つ以上のデータパッケージの送信はまた、機器性能情報、リソース可用性情報、推定された動作時間、またはそれらの組み合わせに少なくとも部分的に基づく。一実施形態において、車両111及び/または組み込みシステム113がシャットダウンされた場合、UE101と組み込みシステム113との間の1つ以上のデータパッケージの送信は、一度、組み込みシステム113が更なるユーザ対話処理なしで利用可能になると、継続することができる。
一実施形態において、システム100は、少なくとも1つの組み込みシステム、少なくとも1つのユーザ機器、少なくとも1つのクラウドサービス、またはそれらの組み合わせに関する、(a)1つ以上のデータパッケージ、(b)1つ以上の保守動作の1つ以上のステップの進捗状況、(c)1つ以上の保守動作の正常終了、または(d)それらの組み合わせの検証を少なくとも部分的に引き起こす。一実施形態において、システム100は、組み込みシステム113が、更新が完了したことを確認することを少なくとも部分的に引き起こし、システム100はまた、転送に使用されたUE101が、組み込みシステム113が正常に更新されたことを遡及的に検証することを少なくとも部分的に引き起こす。これが、UE101から組み込みシステム113にアップロードされた1つ以上のデータパッケージが両方の機器上で矛盾しないこと、及び組み込みシステム113ソフトウェアが一度、更新されたときに破損されていないことを確実にすることが考えられる。例えば、システム100は、任意のデータが破損されたか否か、パッケージサイズが正しいか否か、認証キーおよび資格情報が正しいか否か等を判定し得る。一実施形態において、システム100は、システム100が1つ以上の保守動作の開始を少なくとも部分的に引き起こす前に、1つ以上のデータパッケージの検証を少なくとも部分的に引き起こす。一実施形態において、一度、1つ以上のデータパッケージが検証されると、システム100は、1つ以上のアップロードされたデータパッケージが組み込みシステム113(例えば、組み込みナビゲーションシステム113)のメモリに保持されることを少なくとも部分的に引き起こし、1つ以上のデータパッケージがそれよりも後(例えば、移動経路の第2の区間の間)に組み込みシステム113によってインストールされることを少なくとも部分的に引き起こし得る。一実施形態において、一度、システム100が1つ以上のデータパッケージの検証を完了すると、システム100は、1つ以上のデータパッケージが、組み込みシステム113(例えば、組み込みナビゲーションシステム113)の共有メモリから保護されたメモリに移動されることを少なくとも部分的に引き起こし得る。一実施形態において、推定された動作時間中に更新され得る1つ以上のデータパッケージのみが、システム100によって使用されることになる。1つ以上の実施形態において、システム100は、未完了/検証されていないパッケージがUE101、組み込みシステム113、またはそれらの組み合わせのメモリから削除されることを少なくとも部分的に引き起こし得る。
例として、UE101、保守プラットフォーム103、アプリケーション107、センサ109、少なくとも1つの車両111、組み込みシステム113、更新データベース115、サービスプラットフォーム117、サービス119、コンテンツ提供者121、及び衛星123は、周知、新しい、またはまだ開発されているプロトコルを使用して、互いに及び通信ネットワーク105の他の構成要素と通信する。これに関連して、プロトコルは、通信ネットワーク105内のネットワークノードが通信リンク越しに送信された情報に基づいてどのように互いに相互作用を行うかを定義する一式のルールを含む。プロトコルは、種々の形式の物理的信号を生成及び受信することから、これらの信号を転送するためのリンクを選択すること、これらの信号によって指示された情報の形式、コンピュータシステム上で実行するどのソフトウェアアプリケーションが情報を送信または受信するかを識別することまで、各ノード内の動作の異なる層において影響を及ぼす。ネットワーク越しに情報を交換するためのプロトコルの概念的に異なる層は、開放型システム間相互接続(OSI)参照モデルにおいて説明される。
ネットワークノード間の通信は、一般にデータの個々のパケットを交換することによってもたらされる。各パケットは、一般に、(1)特定プロトコルと関連付けられたヘッダー情報、及び(2)ヘッダー情報に続き、その特定プロトコルの独立的に処理され得る情報を含有するペイロード情報を含む。いくつかのプロトコルにおいて、パケットは、(3)ペイロード情報に続き、ペイロード情報の末端を指示するトレーラー情報を含む。ヘッダーは、パケットのソース、その送信先、ペイロードの長さ、及びプロトコルによって使用される他の性質のような情報を含む。しばしば、特定プロトコル用のペイロード内のデータは、異なる、OSI参照モデルのより上位の層と関連付けられた異なるプロトコル用のヘッダー及びペイロードを含む。特定プロトコル用のヘッダーは、一般に、そのペイロード内に含有された次のプロトコルの形式を指示する。より上位の層のプロトコルは、より低位の層のプロトコル内に内包されると言える。インターネットのような、パケット横断複数異種ネットワーク内に含まれたヘッダーは、一般に、OSI参照モデルによって定義された、物理(層1)ヘッダー、データリンク(層2)ヘッダー、インターネットワーク(層3)ヘッダー及びトランスポート(層4)ヘッダー、ならびに種々のアプリケーション(層5、層6及び層7)ヘッダーを含む。
図2は、一実施形態による、保守プラットフォーム103の構成要素の図である。例として、保守プラットフォーム103は、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中及び/または車両の走行中に組み込み車両システムを更新するための1つ以上の構成要素を含む。これらの機能が1つ以上の構成要素内に組み合わせられてもよく、または同等の機能の他の構成要素によって実施されてもよい。この実施形態において、保守プラットフォーム103は、分析モジュール201、計算モジュール203、予測モジュール205、構成モジュール207、通信モジュール209、及び検証モジュール211、またはそれらの任意の組み合わせを含む。
一実施形態において、分析モジュール201は、少なくとも1つの組み込みシステム113(例えば、組み込みナビゲーションシステム113)、少なくとも1つのユーザ機器(例えば、UE101)、少なくとも1つのクラウドサービス(例えば、クラウド基盤サービス119)、またはそれらの組み合わせと関連付けられた、機器性能情報、リソース情報、またはそれらの組み合わせを判定するために使用される。例として、分析モジュール201は、1つ以上のデータパッケージの最大サイズを定義するために、ユーザのUE101(モバイルフォン)、組み込みシステム113(例えば、組み込みナビゲーションシステム113)、またはそれらの組み合わせの最大利用可能記憶スペースを分析し得る。使用ケースの一例において、分析モジュール201は、車両111が5ギガバイト(GB)の毎月のデータ制限を有すること及び/またはユーザのUE101(例えば、モバイルフォン)が2GBのみの利用可能メモリを有することを判定し得る、分析モジュール201はまた、1つ以上の保守動作を実施するための1つ以上のデータパッケージ間の1つ以上の依存性を判定するために使用され得る。例えば、分析モジュール201は、上述された使用ケースの例の4つのデータパッケージが、順番にアップロード/更新される必要があること、または4つ全てのデータパッケージが同一動作時間中にアップロード/更新されなければならないことを判定し得る。
一定の実施形態における計算モジュール203は、少なくとも1つの組み込みシステム113の推定された動作時間を判定するために使用される。例として、計算モジュール203は、ユーザの経路及び/または行先の情報が組み込みシステム113(例えば、組み込みナビゲーションシステム113)、UE101(例えば、モバイル機器)、またはサービス119(例えば、クラウド基盤サービス119)内に既に入力されている場合、ユーザの経路及び/または行先に少なくとも部分的に基づいて、推定された動作時間を判定し得る。少なくとも1つの予測された経路が複数の動作セッションにわたって完了されることになる複数の経路を含む、一実施形態において、計算モジュール203はまた、複数の動作セッションに少なくとも部分的に基づいて、推定された動作時間を判定するために使用され得る。例として、計算モジュール203は、各新しい出発地点から各新しい行先に到達するために必要とされる推定された時間に基づいて推定された動作時間を予測し得る。計算モジュール203はまた、推定された動作時間に少なくとも部分的に基づいて、利用可能なアップロード時間、利用可能なインストール時間、またはそれらの組み合わせを判定するために使用され得る。例として、計算モジュール203が推定された動作時間が60分であると判定した場合、抽出モジュール203は、必要とされるアップロード/更新時間が60分−25%=45分であることを判定し得る。さらに、計算モジュール203は、1つ以上のデータパッケージの1つをアップロードすること(検証を伴う)が、通信モジュール209に5分を費やさせることになり、アップロードされたデータパッケージによって組み込みシステム113(例えば、組み込みナビゲーションシステム113)を更新することが、構成モジュール207にさらに5分を費やさせ、データパッケージごとに合計10分を費やすことになることを判定し得る。さらに、一実施形態において、計算モジュール203は、例えば、複数の経路に基づいて、異なる増加単位に基づき1つ以上のデータパッケージの構成を少なくとも部分的に引き起こし得る。
一実施形態において、予測モジュール205は、少なくとも1つの組み込みシステム113の少なくとも1のユーザの少なくとも1つの予測された経路及び/または行先に少なくとも部分的に基づいて、推定された動作時間を判定するために使用される。例えば、予測モジュール205は、ユーザのカレンダー(例えば、カレンダーアプリケーション107)、文脈情報(例えば、週のうちの日または日のうちの時間)、ユーザ、車両111、またはそれらの組み合わせと関連付けられた1つ以上の時系列傾向等から、ユーザが、3つの異なる経路の1つを使用して、近い将来において地点Aから地点Bにユーザの車両111を運転しようとすること、及びユーザによって選択された特定経路とは無関係に推定された動作時間が、約45分になることを判定し得る。
一定の実施形態において構成モジュール207は、推定された動作時間に少なくとも部分的に基づいて1つ以上の保守動作を実施するための1つ以上のデータパッケージを構成するために使用される。例として、計算モジュール203は、推定された動作時間が60分であり実際に利用可能なアップロード/更新時間が45分であることを判定し得る。計算モジュール203はまた、1つ以上のデータパッケージの各々が、通信モジュール209がアップロードするために、及び構成モジュール207が組み込みシステム113(例えば、組み込みナビゲーションシステム113)を更新するために、10分を費やすことを判定し得る。このため、一例において、構成モジュール207は、組み込みシステム113にアップロードし、これを更新するための、例えば、4つのデータパッケージ、2+2のデータパッケージ、1+3のデータパッケージ等を構成し得る。一実施形態において、計算モジュール203が、動作時間が必要とされるアップロード/更新時間未満であると判定した場合、構成モジュール207は、1つ以上のデータパッケージのサイズの低減を少なくとも部分的に引き起こし得る。一実施形態において、構成モジュール207は、機器性能情報、リソース可用性情報、推定された動作時間、またはそれらの組み合わせに少なくとも部分的に基づいて、1つ以上のデータパッケージの構成を少なくとも部分的に引き起こし得る。さらに、一実施形態において、構成モジュール207は、1つ以上のデータパッケージ間の任意の依存性の分析モジュール201の判定に少なくとも部分的に基づいて1つ以上のデータパッケージの構成を少なくとも部分的に引き起こし得る。
一実施形態において、通信モジュール209は、推定された動作時間中に1つ以上の保守動作を開始するために、少なくとも1つの組み込みシステム113への1つ以上のデータパッケージの送信を少なくとも部分的に引き起こすために使用される。例として、通信モジュール209は、サービス119(例えば、クラウド基盤サービス119)及び/または更新データベース115が、通信ネットワーク105を介してユーザと関連付けられたUE101(例えば、モバイルフォン)または組み込みシステム113(例えば、組み込みナビゲーションシステム113)に1つ以上のデータパッケージを送信することを少なくとも部分的に引き起こし得る。一実施形態において、通信モジュール209はまた、UE101(例えば、モバイルフォン)が、1つ以上の短距離通信技術(例えば、Bluetooth(登録商標))を介して1つ以上のデータパッケージを組み込みシステム113(例えば、組み込みナビゲーションシステム113)に送信することを少なくとも部分的に引き起こし得る。一実施形態において、通信モジュール209は、機器性能、リソース可用性情報、推定された動作時間、またはそれらの組み合わせに少なくとも部分的に基づいて、1つ以上のデータパッケージの送信を少なくとも部分的に引き起こし得る。一実施形態において、通信モジュール209はまた、サービス119(例えば、クラウド基盤サービス119)及び/または更新データベース115が、1つ以上の通信技術を介して1つ以上のデータパッケージを組み込みシステム113(例えば、組み込みナビゲーションシステム113)に直接送信することを少なくとも部分的に引き起こし得る。
一定の実施形態において検証モジュール211は、少なくとも1つの組み込みシステム113(例えば、組み込みナビゲーションシステム113)、少なくとも1つのユーザ機器(例えば、モバイルフォンのようなUE101)、少なくとも1つのクラウドサービス(例えば、クラウド基盤サービス119)、またはそれらの組み合わせに関する、(a)1つ以上のデータパッケージ、(b)1つ以上の保守動作の1つ以上のステップの進捗状況、(c)1つ以上の保守動作の正常終了、または(d)それらの組み合わせの検証を少なくとも部分的に引き起こすために使用される。例として、検証モジュール211は、任意のデータが破損しているか否か、パッケージサイズが正しいか否か、認証キー及び資格情報が正しいか否か等を判定し得る。一実施形態において、検証モジュール211は、通信モジュール209が1つ以上の保守動作の開始を少なくとも部分的に引き起こす前に、1つ以上のデータパッケージの検証を少なくとも部分的に引き起こし得る。
図3は、一実施形態による、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって、移動中に組み込み車両システムを更新するプロセスのフローチャートである。一実施形態において、保守プラットフォーム103は、プロセス300を実施し、例えば、図10に示されるプロセッサ及びメモリを含むチップセットにおいて実装される。ステップ301において、保守プラットフォーム103は、少なくとも1つの組み込みシステムの推定された動作時間を判定する。例として、保守プラットフォーム103は、ユーザの経路及び/または行先の方法が組み込みシステム113(例えば、組み込みナビゲーションシステム113)、UE101(例えば、モバイルフォンまたはタブレット)、またはサービス119(例えば、クラウド基盤サービス119)内に既に入力されている場合、ユーザの経路及び/または行先に少なくとも部分的に基づいて推定された動作時間を判定し得る。
303において、保守プラットフォーム103は、推定された動作時間に少なくとも部分的に基づいて1つ以上の保守動作を実施するための1つ以上のデータパッケージを構成する。例として、保守プラットフォーム103は、推定された動作時間が60分であり、実際に利用可能なアップロード/更新時間が45分(例えば、60分−25%=45分)であることを判定し得る。保守プラットフォーム103はまた、1つ以上のデータパッケージの各々がアップロード及び組み込みシステム113(例えば、組み込みナビゲーションシステム113)を更新するために10分を費やすことを判定し得る。その結果、使用ケースの一例において、保守プラットフォーム103は、アップロードするための、及び組み込みシステム113を更新するための、例えば、4つのデータパッケージ、2+2のデータパッケージ、1+3のデータパッケージ等を構成し得る。一実施形態において、保守プラットフォーム103が、動作時間が必要とされるアップロード/更新時間未満であると判定した場合、保守プラットフォーム103は、1つ以上のデータパッケージのサイズ、つまり、増加単位の低減を少なくとも部分的に引き起こし得る。
ステップ305において、保守プラットフォーム103は、推定された動作時間中に1つ以上の保守動作を開始するために少なくとも1つの組込みシステムへの1つ以上のデータパッケージの送信を少なくとも部分的に引き起こす。例として、保守プラットフォーム103は、サービス119(例えば、クラウド基板サービス119)が、通信ネットワーク105を介して1つ以上のデータパッケージをユーザと関連付けられたUE101(例えば、モバイルフォン)または組み込みシステム113(例えば、組み込みナビゲーションシステム113)に送信することを少なくとも部分的に引き起こし得る。一実施形態において、保守プラットフォーム103はまた、UE101(例えば、モバイルフォン)が、1つ以上の短距離通信技術(例えば、Bluetooth(登録商標))を介して1つ以上のデータパッケージを組み込みシステム113(例えば、組み込みナビゲーションシステム113)に送信することを少なくとも部分的に引き起こし得る。
図4は、一実施形態による、移動している間に組み込みシステムの動作時間を判定するプロセスのフローチャートである。一実施形態において、保守プラットフォーム103は、プロセス400を実施し、例えば、図10に示されるプロセッサ及びメモリを含むチップセットにおいて実装される。ステップ401において、保守プラットフォーム103は、少なくとも1つの組込みナビゲーションシステムの少なくとも1つの予測された経路に少なくとも部分的に基づいて、推定された動作時間を判定する。例として、保守プラットフォーム103は、ユーザのカレンダー、文脈情報(例えば、週のうちの日または日のうちの時間)、ユーザ、車両111、またはそれらの組み合わせと関連付けられた1つ以上の時系列傾向等から、ユーザが、3つの異なる経路の1つを使用して、近い将来において地点Aから地点Bにユーザの車両を運転しようとすること、及びユーザによって選択された特定経路とは無関係に、推定された動作時間が約45分になることを判定し得る。
少なくとも1つの予測された経路が少なくとも1つの組み込みナビゲーションシステムの複数の動作セッションにわたって完了されることになる複数の経路を含む、ステップ403において、保守プラットフォーム103は、複数の動作セッションに少なくとも部分的に基づいて、推定された動作時間を判定する。例として、ユーザは、組み込みナビゲーションシステム113に移動経路の途中の停止回数(例えば、乾物店、クリーニング店等での停止)を入力し得る。保守プラットフォーム103は、各新しい出発地点から各新しい行先に到達するために必要とされる時間量を予測し得る。例えば、保守プラットフォーム103は、組み込みシステム113(例えば、組み込みナビゲーションシステム113)が、ユーザの家と乾物店との間で20分間、乾物店とクリーニング店との間で10分間、クリーニング店とユーザの職場との間で30分間、動作することになることを予測し得る(例えば、利用可能な経路及び交通情報に基づいて)。
図5は、一実施形態による、組み込み車両システムと関連付けられた1つ以上の保守動作を実施するための1つ以上のデータパッケージを構成するプロセスのフローチャートである。一実施形態において、保守プラットフォーム103は、プロセス500を実施し、例えば、図10に示されるプロセッサ及びメモリを含むチップセットにおいて実装される。ステップ501において、保守プラットフォーム103は、推定された動作時間に少なくとも部分的に基づいて、利用可能なアップロード時間、利用可能なインストール時間、またはそれらの組み合わせを判定し、1つ以上のデータパッケージ上で構成することはさらに、利用可能なアップロード時間、利用可能なインストール時間、またはそれらの組み合わせに少なくとも部分的に基づく。例として、保守プラットフォーム103が、推定された動作時間が60分であると判定した場合、保守プラットフォーム103は、利用可能なアップロード/更新時間が60分−25%=45分であると判定し得る。さらに、保守プラットフォーム103は、1つ以上のデータパッケージの1つをアップロードすること(検証を伴う)が、保守プラットフォーム103に5分を費やさせ、アップロードされたデータパッケージによって組み込みシステム113(例えば、組み込みナビゲーションシステム113)を更新することが、保守プラットフォーム103にさらに5分を費やさせ、データパッケージごとに合計10分を費やすことを判定し得る。使用ケースの一例において、保守プラットフォーム103は、組み込みシステム113が60分の動作セッション中に4つのデータパッケージによって更新されることを許容することになる、10分の増加単位に少なくとも部分的に基づいて、1つ以上のデータパッケージを構成し得る。
ステップ503において、保守プラットフォーム103は、1つ以上の保守動作を実施するための1つ以上のデータパッケージ間の1つ以上の依存性を判定し、1つ以上のデータパッケージの構成はさらに、1つ以上の依存性に少なくとも部分的に基づく。例として、保守プラットフォーム103は、上述された使用ケースの例の4つのデータパッケージが順番にアップロード/更新される必要があること、または4つ全てのデータパッケージが同一動作時間中にアップロード/更新されなければならないことを判定し得る。
図6は、一実施形態による、1つ以上のデータパッケージを送信し、検証するプロセスのフローチャートである。一実施形態において、保守プラットフォーム103は、プロセス600を実施し、例えば、図10に示されるプロセッサ及びメモリを含むチップセットにおいて実装される。ステップ601において、保守プラットフォーム103は、少なくとも1つの組み込みシステム、少なくとも1つのユーザ機器、少なくとも1つのクラウドサービス、またはそれらの組み合わせと関連付けられた、機器性能情報、リソース可用性情報、またはそれらの組み合わせを判定し、1つ以上のデータパッケージの送信、1つ以上のデータパッケージの構成、またはそれらの組み合わせはさらに、機器性能情報、リソース可用性情報、推定された動作時間、またはそれらの組み合わせに少なくとも部分的に基づく。例として、保守プラットフォーム103は、1つ以上のデータパッケージの最大サイズを定義するために、ユーザのUE101(例えば、モバイルフォン)、組み込みシステム113(例えば、組み込みナビゲーションシステム113)、またはそれらの組み合わせの最大利用可能記憶スペースを分析し得る。さらに、使用ケースの一例において、保守プラットフォーム103は、車両(例えば、車両111)が5GBの毎月のデータ制限を有すること、及び/またはユーザのUE101(例えば、モバイルフォン)が2GBの利用可能メモリのみを有することを判定し得る。その結果、保守プラットフォーム103は、適宜、1つ以上のデータパッケージを構成し得る。
ステップ603において、保守プラットフォーム103は、少なくとも1つの組み込みシステム、少なくとも1つのユーザ機器、少なくとも1つのクラウドサービス、またはそれらの組み合わせに関する、(a)1つ以上のデータパッケージ、(b)1つ以上の保守動作の1つ以上のステップの進捗状況、(c)1つ以上の保守動作の正常終了、または(d)それらの組み合わせの検証を少なくとも部分的に引き起こす。例として、保守プラットフォーム103は、任意のデータが破損されているか否か、パッケージサイズが正しいか否か、認証キー及び資格情報が正しいか否か等を判定し得る。一実施形態において、保守プラットフォーム103は、保守プラットフォーム13が1つ以上の保守動作(例えば、1つ以上の地図の更新)の開始を少なくとも部分的に引き起こす前に、1つ以上のデータパッケージの検証を少なくとも部分的に引き起こす。
図7A及び7Bは、一実施形態による、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって、移動中に組み込み車両システムを更新するプロセスを例示するフローチャートである。図7Aは、少なくとも1のユーザの部分における対話処理によるプロセスフローを図示する。例えば、図700におけるプロセスは、少なくとも1つの車両(例えば、車両111)の少なくとも1つの組み込みシステム113(例えば、組み込みナビゲーションシステム113)、少なくとも1つのUE101(例えば、モバイルフォンまたはタブレット)、少なくとも1つのクラウド基盤サービス119を含む。ステップ701において、保守プラットフォーム103は、初期ソフトウェア及びデータ(例えば、地図/ナビゲーションアプリケーション及び地図データ)が組み込みナビゲーションシステム113に既にインストールされているか否かを判定する。ステップ703において、保守プラットフォーム103は、組み込みナビゲーションユニットソフトウェア及びマップデータがまたクラウド基盤サービス119に記憶されているか否かを判定する。この例において、組み込み車両システム113ソフトウェア及びデータの現行バージョンが組み込みナビゲーションシステム113にインストールされており、またクラウド基盤サービス119に記憶されていると考えられる。ステップ705において、保守プラットフォーム103は、組み込みナビゲーションシステム113用の更新がクラウド基盤サービス119から利用可能であるか否かを判定する。この例において、1つ以上の更新が利用可能であると考えられる。
ステップ707において、保守プラットフォーム103は、UE101(例えば、モバイルフォンまたはタブレット)に対して表示されることになる、ユーザ対話処理に対するリクエストに関する通知を少なくとも部分的に引き起こす。ステップ709において、UE101は、組み込みナビゲーションシステム113ソフトウェア及び/またはデータの更新を進めるためにユーザ対話処理が受信されていることを判定する。ステップ711において、ユーザのUE101との対話処理の判定に際し、保守プラットフォーム103は、組み込みナビゲーションシステム113、UE101、及びクラウド基盤サービス119と関連付けられた、機器性能情報(例えば、利用可能記憶装置及び接続性)、リソース可用性情報(例えば、組み込みナビゲーションシステム更新要求)、またはそれらの組み合わせを判定する。代替的実施形態において、保守プラットフォーム103は、ステップ707におけるユーザ対話処理及び/またはステップ709におけるユーザ対話処理の受信に対するリクエストなしで機器性能情報及び/またはリソース可用性情報を判定してもよい。
ステップ711において、保守プラットフォーム103は、1つ以上のデータパッケージの最大サイズを定義するために、UE101の最大記憶スペースの分析を少なくとも部分的に引き起こす。ステップ713において、保守プラットフォーム103は、クラウド基盤サービス119がまた、UE101の利用可能記憶装置及び接続性を分析することを少なくとも部分的に引き起こす。一実施形態において、これらの分析が実質的に同時に行われ得ることが考えられる。使用ケースの一例において、保守プラットフォーム103が現行ユーザのナビゲーション経路を既に判定している場合、保守プラットフォーム103は、動作及び更新時間を判定可能であり、保守プラットフォーム103は、適宜、1つ以上のデータパッケージの構成(例えば、クラウド基盤サービス119によって)を少なくとも部分的に引き起こし得る。これに代えて、ステップ715において、保守プラットフォーム103は、1つ以上のデータパッケージが、利用可能スペース(例えば、UE101及び/または組み込みナビゲーションシステム113の記憶スペース)に少なくとも部分的に基づいて構成される(例えば、クラウド基盤サービス119によって)ことを少なくとも部分的に引き起こし得る。ステップ717において、保守プラットフォーム103は、UE101が1つ以上のデータパッケージをクラウド基盤サービス119からダウンロードすることを開始することを少なくとも部分的に引き起こし、ステップ719において、保守プラットフォーム103は、1つ以上のデータパッケージの各々がダウンロードされたか否か、及びいつダウンロードされたかを判定する。
ステップ721において、保守プラットフォーム103は、UE101が組み込みナビゲーションシステム113との接続性を検出することを少なくとも部分的に引き起こす。ステップ723において、保守プラットフォーム103は、組み込みナビゲーションシステム113がUE101との接続性を検出することを少なくとも部分的に引き起こす。一実施形態において、保守プラットフォーム103は、UE101及び組み込みナビゲーションシステム113が、実質的に同時に互いへの接続性を検出することを少なくとも部分的に引き起こし得る。一実施形態において、一度、保守プラットフォーム103が組み込みナビゲーションシステム113とUE101との間の接続性を判定すると、保守プラットフォーム103は、組み込みナビゲーションシステム113及び/またはUE101が、組み込みナビゲーションシステム113の予測された経路及び/または現行経路を分析または判定することを少なくとも部分的に引き起こし得る。
図7Bは、図7Aのステップ721及び723の重複によって図示されるように、図7Aに関して説明されたプロセスフローの続きを図示する。ステップ725及び727において、保守プラットフォーム103は、組み込みナビゲーションシステム113及びUE101(例えば、モバイルフォン)それぞれが、動作時間及び更新時間(例えば、45分のアップロード/更新時間に比べて60分の動作時間)を判定すること、及び比較することを少なくとも部分的に引き起こす。一実施形態において、ステップ729において、ステップ717及び719においてクラウド基盤サービス119からダウンロードされた1つ以上のデータパッケージを有するUE101は、ここで1つ以上のデータパッケージを組み込みナビゲーションシステム113にアップロードすることを開始し得る。しかしながら、保守プラットフォーム103が、動作時間(例えば、ナビゲーションに必要とされる時間)が判定されたアップロード/更新時間未満であると判定した場合、保守プラットフォーム103は、ステップ731においてUE101が、1つ以上のより小さなデータパッケージをクラウド基盤サービス119からリクエストすることを少なくとも部分的に引き起こし得る。代替的実施形態において、組み込みナビゲーションシステム113はまた、1つ以上のより小さなデータパッケージをリクエストし得る。例えば、これらの1つ以上のより小さなデータパッケージがステップ733においてクラウド基盤サービス119によって作成され、その後、例えば、ステップ717において再度UE101にダウンロードされ得る。
ステップ735において、保守プラットフォーム103は、1つ以上のデータパッケージの各々が組み込みナビゲーションシステム113にアップロードされたか否か、及びいつアップロードされたかを判定する。ステップ737において、保守プラットフォーム103は、組み込みナビゲーションシステム113が1つ以上のデータパッケージの受信を検証することを少なくとも部分的に引き起こす。同様に、ステップ739において、保守プラットフォーム103は、UE101が、組み込みナビゲーションシステム113への1つ以上のデータパッケージのアップロードを検証することを少なくとも部分的に引き起こす。さらに、ステップ741において、保守プラットフォーム103は、クラウド基盤サービス119が、組み込みナビゲーションシステム113が1つ以上のデータパッケージを受信したこと、及びUE101が1つ以上のデータパッケージを組み込みナビゲーションシステム113にアップロードしたことを検証することを少なくとも部分的に引き起こす。一実施形態において、保守プラットフォーム103は、種々の検証ステップ737、739及び741が実質的に同時に起こることを少なくとも部分的に引き起こし得ることが考えられる。ステップ743において、保守プラットフォーム103は、組み込みナビゲーションシステム113の更新の開始を少なくとも部分的に引き起こす。使用ケースの一例において、データパッケージのダウンロードに伴い、保守プラットフォーム103は、動作時間及び更新時間の判定を少なくとも部分的に引き起こし得る。例えば、保守プラットフォーム103は、利用可能な動作時間内に更新され得る1つ以上のデータパッケージのみがこのときに使用されることになることを判定し得る。ステップ745において、保守プラットフォーム103は、組み込みナビゲーションシステム113が組み込みナビゲーションシステム113更新を検証することを少なくとも部分的に引き起こす。同様に、ステップ745において、保守プラットフォーム103は、UE101が組み込みナビゲーションシステム113更新を検証することを少なくとも部分的に引き起こす。さらに、ステップ749において、保守プラットフォーム103は、クラウド基盤サービス119が組み込みナビゲーションシステム113更新を検証することを少なくとも部分的に引き起こす。一実施形態において、保守プラットフォーム103は、種々の検証ステップ737、739及び741が実質的に同時に起こることを少なくとも部分的に引き起こし得る。
図8A〜8Dは、種々の実施形態による、図3〜6のプロセスにおいて利用されるユーザインターフェースの図である。示されるように、図8A〜8Dのユーザインターフェースの例は、図3〜6に関して説明されたプロセス(例えば、プロセス300、400、500、及び600)から結果としてもたらされる情報、データ、及び/または信号に少なくとも部分的に基づいて作成及び/または変更された1つ以上のユーザインターフェース要素及び/または機能を含む。例えば、図8A〜8Dは、車両(例えば、車両111)(例示的な便宜上示されない)のユーザと関連付けられ、地図及び/またはナビゲーションアプリケーション(例えば、アプリケーション107)を図示する、4つのユーザインターフェース(例えば、インターフェース801、803、805、及び807)を例示する。
一実施形態において、システム100は、少なくとも1つの組み込みシステム113(例えば、組み込みナビゲーションシステム113)(例示的な便宜上、示されない)、少なくとも1つのユーザ機器(例えば、インターフェース801、803、805、及び807)、少なくとも1つのクラウドサービス(例えば、クラウド基盤サービス119)(例示的な便宜上、示されない)、またはそれらの組み合わせと関連付けられた、機器性能情報(例えば、利用可能記憶スペース)、リソース情報、またはそれらの組み合わせを判定する。例として、システム100は、インターフェース801、803、805、807が2GBの利用可能記憶スペースを有することを判定し得る。
1つ以上の実施形態において、システム100は、少なくとも1つの組み込みシステム113(例えば、組み込みナビゲーションシステム113)の推定された時間を判定する。この使用ケースの例において、システム100は、ユーザの家809と、乾物店811と、ユーザの職場813との間において少なくとも1つの組み込みシステム113の推定された動作時間を判定し得る。例として、システム100は、ユーザがUE101においてその経路及び/または行先(例えば、家809、乾物店811及び職場813)を入力することに少なくとも部分的に基づいて、推定された動作時間を判定し得る。この例において、システム100は、移動経路が、完了されることになる複数の経路を含むことを判定することができ、このため、システム100は、複数の動作セッション(例えば、ユーザの家809と乾物店811との間、及び乾物店811とユーザの職場813との間)に少なくとも部分的に基づいて、推定された動作時間を判定することができる。
一実施形態において、システム100は、推定された動作時間に少なくとも部分的に基づいて、利用可能なアップロード時間、利用可能なインストール時間、またはそれらの組み合わせを判定する。この例において、システム100は、ユーザの家809と乾物店811との間の推定された動作時間が20分であり、乾物店811とユーザの職場813との間の推定された動作時間が40分であると判定し得る。その結果、システム100は、必要とされるアップロード/更新時間が20分−25%=15分及び40分−25%=30分であると判定し得る。さらに、システム100は、1つ以上のデータパッケージをアップロードすること(検証を伴う)が、システム100に5分を費やさせることになり、組み込みナビゲーションシステム113を更新することがシステム100にさらに5分を費やさせ、データパッケージごとに合計10分を費やすことになることを判定し得る。この例において、システム100は、インターフェース801の通知815(「3つのナビゲーションシステムの更新が利用可能−開始しますか?」)によって図示されるように、組み込みナビゲーションシステム113を更新するための利用可能な3つのデータパッケージがあることを判定する。10分のアップロード/更新時間要求に基づいて、システム100は、3つのデータパッケージのアップロード/更新をそのときに1度に、1つのパッケージを1度に及び2つのパッケージを別のときに、または3つ全てのパッケージを予測された移動経路の途中の時間及びユーザの位置に応じて1度に、少なくとも部分的に潜在的に引き起こし得る。
一実施形態において、システム100は、推定された動作時間に少なくとも部分的に基づいて、1つ以上の保守動作(例えば、1つ以上の地図の更新)を実施するための1つ以上のデータパッケージを構成する。この使用ケースの例において、システム100が1つ以上の保守動作を実施するための1つ以上のデータパッケージ間の1つ以上の依存性を判定していない場合、システム100は、ユーザがユーザの家809と乾物店811との間を運転している間に1つのデータパッケージがアップロードされ組み込みナビゲーションシステム113が更新され、その後、ユーザが乾物店811とユーザの職場813との間を運転している間に2つの残りのデータパッケージがアップロードされ組み込みナビゲーションシステム113が更新され得るか、またはユーザが乾物店811とユーザの職場813との間を運転している間に3つ全てのデータパッケージがアップロードされ組み込みナビゲーションシステム113が更新され得るように、3つのデータパッケージの構成を少なくとも部分的に引き起こし得る。しかしながら、この使用ケースの例において、システム100は、1つ以上の保守動作を実施するための1つ以上のデータパッケージ間の1つ以上の依存性を判定している。例えば、システム100は、3つの更新が同一動作時間中に実施されなければならないことを判定する。その結果、乾物店811を離れる後にユーザがその車両を始動するときに、システム100は、インターフェース803に通知817(例えば、「推定動作時間=40分、アップロード/更新時間=30分、進めますか?」)の表示を少なくとも部分的に引き起こし得る。
一実施形態において、インターフェース803とのユーザの対話処理の判定に際し、例えば、システム100は、インターフェース805のダウンロードステータスバー819によって図示されるように、3つの新たに利用可能なデータパッケージがクラウド基盤サービス119からインターフェース805にダウンロードされることを少なくとも部分的に引き起こす。特に、乾物店811から10分、運転した後、3つのデータパッケージのうちの2つがダウンロードされている。一実施形態において、システム100は、インターフェース807と、例えば、組み込みナビゲーションシステム113との間の接続性を判定する。この使用ケースの例において、インターフェース807と組み込みナビゲーションシステム113は、図示されるようにインターフェース807のBluetooth(登録商標)シンボル821によって「接続」される。一実施形態において、システム100は、ナビゲーション更新ステータスバー823によって図示されるように、推定された動作時間中に1つ以上の保守動作を開始するために、組み込みナビゲーションシステム113への1つ以上のデータパッケージの送信を少なくとも部分的に引き起こす。特に、乾物店811から30分、運転した後、3つのデータパッケージがアップロードされており、組み込みナビゲーションシステム113の更新が完了している。一実施形態において、システム100は、組み込みナビゲーションシステム113、インターフェース807、クラウド基盤サービス119、またはそれらの組み合わせに関する、(a)1つ以上のデータパッケージ、(b)1つ以上の保守動作の1つ以上のステップの進捗状況、(c)1つ以上の保守動作の正常終了、または(d)それらの組み合わせの検証を少なくとも部分的に引き起こす。一実施形態において、一度、システム100がアップロード及び組み込みナビゲーションシステム113の更新を検証すると、システム100は、インターフェース807におけるステータス通知825(例えば、「更新完了」または「更新失敗」)の表示を少なくとも部分的に引き起こし得る。ダウンロードステータスバー819及びナビゲーション更新ステータスバー823が、車両111を停止またはオフにしないこと、ユーザが計画された経路(例えば、乾物店811とユーザの職場813の間)から逸脱している可能性があることを車両111のユーザに気づかせ得ることが考えられ、システム100が、例えば、ユーザが計画された経路から逸脱している可能性があり、その行先に定刻前に到着することが明らかである場合、インターフェース807において警告通知の表示を少なくとも部分的に引き起こし得ることがさらに考えられる。同様に、「更新完了」ステータス通知825が、ユーザが現在、車両111を停止してもよいこと及び/または車両111のエンジンをオフにしてもよいことを車両111のユーザに知らせ得ることが考えられる。
移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中に組み込み車両システムを更新するための本明細書において説明されたプロセスは、ソフトウェア、ハードウェア、ファームウェアまたはソフトウェア及び/もしくはファームウェア及び/もしくはハードウェアの組み合わせを介して好適に実装され得る。例えば、本明細書において説明されたプロセスは、プロセッサ、デジタル信号処理(DSP)チップ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)等を介して好適に実装され得る。説明された機能を実施するためのこのような代表的なハードウェアが以下に詳述される。
図9は、本発明の実施形態が実装され得るコンピュータシステム900を例示する。コンピュータシステム900が特定機器または設備に関して図示されるが、図9内の他の機器または設備(例えば、ネットワーク要素、サーバ等)がシステム900の例示されたハードウェアまたは構成要素を配備し得ることが考えられる。コンピュータシステム900は、本明細書に説明されたように移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中に組み込み車両システムを更新するようにプログラムされ(例えば、コンピュータプログラムコードまたは命令を介して)、コンピュータシステム900の他の内部及び外部構成要素間で情報を伝達するためのバス910のような通信機構を含む。情報(データとも呼ばれる)は、測定可能現象、一般に電圧の物理的表現として表されるが、他の実施形態において、磁気、電磁気、圧力、化学、生体、分子、原子、亜原子及び量子の相互作用としてのこのような現象を含む。例えば、N極及びS極の磁場、またはゼロ及び非ゼロの電圧は、二進数(bit)の2つの状態(0、1)を表す。他の現象は、より大きい基数を表し得る。測定前の多重同時量子状態の重ね合わせは、量子ビット(qubit)を表す。1以上の桁の列は、数または文字のコードを表すために使用されるデジタルデータを構築する。いくつかの実施形態において、アナログデータと呼ばれる情報は、特定範囲内における測定可能値の近接連続体によって表される。コンピュータシステム900、またはその一部分は、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中に組み込み車両システムを更新するための1つ以上のデータパッケージを実施するための手段を構築する。
バス910は、情報がバス910に接続された機器間に迅速に転送されるように、情報の1つ以上の並列導体を含む。情報を処理するための1つ以上のプロセッサ902は、バス910と結合される。
プロセッサ(またはマルチプロセッサ)902は、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中に組み込み車両システムを更新することに関する、コンピュータプログラムコードによって特定される、情報に対する一式の動作を実施する。コンピュータプログラムコードは、特定の機能を実施するためにプロセッサ及び/またはコンピュータシステムの動作に対する一式の命令または命令を提供する記述である。コードは、例えば、プロセッサのネイティブ命令セットにコンパイルされるコンピュータプログラミング言語で書かれ得る。コードはまた、ネイティブ命令セット(例えば、機械言語)を使用して直接、書かれ得る。一式の動作は、情報をバス910から取得すること、及び情報をバス910に配置することを含む。一式の動作はまた、加算もしくは積算またはOR、排他的OR(XOR)、及びAND等の論理的動作によるような、情報の2つ以上の単位を比較すること、情報の単位の位置付けをシフトすること、及び情報の2つ以上の単位を組み合わせることを一般に含む。プロセッサによって実施され得る一式の動作の各動作は、1以上の桁の動作コードのような、命令と呼ばれる情報によってプロセッサに対して表される。動作コードのシーケンスのような、プロセッサ902によって実行されることになる動作のシーケンスは、コンピュータシステム命令または単にコンピュータ命令とも呼ばれる、プロセッサ命令を構築する。プロセッサは、中でも、機械、電気、磁気、光学、化学、または量子の構成要素として、単独または組み合わせにおいて実装され得る。
コンピュータシステム900はまた、バス910に結合されたメモリ904を含む。ランダムアクセスメモリ(RAM)または任意の他の動的記憶機器のようなメモリ904は、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中に組み込み車両システムを更新するためのプロセッサ命令を含む情報を記憶する。動的メモリは、そこに記憶された情報がコンピュータシステム900によって変更されることを許容する。RAMは、メモリアドレスと呼ばれる位置に記憶された情報の単位が隣接するアドレスにおける情報とは無関係に記憶され検索されることを許容する。メモリ904はまた、プロセッサ命令の実行中に一時的な値を記憶するためにプロセッサ902によって使用される。コンピュータシステム900はまた、コンピュータシステム900によって変更されない、命令を含む静的な情報を記憶するための読み取り専用メモリ(ROM)906またはバス910に結合された任意の静的記憶機器を含む。いくつかのメモリは、電源が失われたときにそこに記憶された情報を失う揮発性メモリからなる。またバス910に結合されるものは、コンピュータシステム900がオフにされるかまたはそうでなければ電源を失うときでも持続する、命令を含む情報を格納するための磁気ディスク、光学ディスクまたはフラッシュカードのような不揮発性(持続性)記憶機器908がある。
移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中に組み込み車両システムを更新するための命令を含む情報は、人間のユーザによって操作される英数字キーを含有するキーボード、マイク、赤外線(IR)リモコン、ジョイスティック、ゲームパッド、スタイラスペン、タッチ画面、またはセンサのような外部入力機器912からプロセッサによる使用のためにバス910に提供される。センサは、その周辺の状態を検出し、これらの検出をコンピュータシステム900において情報を表すために使用される測定可能現象と互換可能な物理的表現に変換する。主に人間との対話処理のために使用される、バス910に結合された他の外部機器は、ブラウン管(CRT)、液晶ディスプレイ(LCD)、発光ダイオード(LED)ディスプレイ、有機LED(OLED)ディスプレイ、プラズマ画面のようなディスプレイ機器914、またはテキストもしくは画像を表示するためのプリンタ、及びディスプレイ914に表示される小さなカーソル画像の位置を制御しディスプレイ914に表示された図形要素と関連付けられた命令を発するためのマウス、トラックボール、カーソル方向キー、または運動センサのようなポインティング機器916を含む。いくつかの実施形態において、例えば、コンピュータシステム900が人間の入力なしで全ての機能を自動的に実施する実施形態において、外部機器912、ディスプレイ機器914及びポインティング機器916の1つ以上が省略される。
例示された実施形態において、特定用途向け集積回路(ASIC)920のような専用ハードウェアが、バス910に結合される。専用ハードウェアは、特定目的に対してプロセッサ902によって十分に迅速に実施されない動作を実施するように構成される。ASICの例としては、ディスプレイ914用の画像を生成するためのグラフィックアクセラレータカード、ネットワーク越しに送信されるメッセージを暗号化及び復号化するための暗号基板、ならびにハードウェアにおいてより効率的に実装される動作のいくつかの複雑なシーケンスを繰り返し実施するロボットアーム及び医療用スキャニング設備のような特定外部機器に対するインターフェースを含む。
コンピュータシステム900はまた、バス910に結合された通信インターフェース970の1つ以上のインスタンスを含む。通信インターフェース970は、プリンタ、スキャナ及び外部ディスクのような、それ自体のプロセッサによって動作する種々の外部機器に結合する一方向または双方向通信を提供する。一般に結合は、それ自体のプロセッサを有する外部機器が接続されるローカルネットワーク980に接続されるネットワークリンク978と行われる。例えば、通信インターフェース970は、パーソナルコンピュータにおけるパラレルポートもしくはシリアルポートまたはユニバーサルシリアルバス(USB)であり得る。いくつかの実施形態において、通信インターフェース970は、サービス総合デジタル網(ISDN)カードもしくはデジタル加入者線(DSL)カードまたは電話線の対応形式に対する情報通信接続を提供する電話モデムである。いくつかの実施形態において、通信インターフェース970は、バス910における信号を同軸ケーブル越しの通信接続用の信号、または光ファイバーケーブル越しの通信接続用の光学信号に変換するケーブルモデムである。別の実施形態のように、通信インターフェース970は、イーサーネットのような互換性LANにデータ通信接続を提供するためにローカルエリアネットワーク(LAN)カードであり得る。無線リンクがまた、実装され得る。無線リンクに対し、通信インターフェース970は、デジタルデータのような情報ストリームを運ぶ、赤外線及び光学信号を含む、電気、音声または電磁信号を送信するかもしくは受信するかまたは送信及び受信の両方を行う。例えば、携帯電話等のモバイル電話のような無線携帯機器において、通信インターフェース970は、無線送受信機と呼ばれる無線帯域電磁送信機及び受信機を含む。一定の実施形態において、通信インターフェース970は、UE101への移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中に組み込み車両システムを更新するための通信ネットワーク105への接続を可能にする。
本明細書において使用される「コンピュータ可読媒体」の用語は、実行用の命令を含む情報をプロセッサ902に提供することに携わる任意の媒体を意味する。このような媒体は、限定されるものではないが、コンピュータ可読記憶媒体(例えば、不揮発性媒体、揮発性媒体)、及び伝送媒体を含む、多くの形式をとり得る。不揮発性媒体のような非一時的媒体は、例えば、記憶機器908のような光学または磁気ディスクを含む。揮発性媒体は、例えば、動的メモリ904を含む。伝送媒体は、例えば、ツイストペアケーブル、同軸ケーブル、銅線、光ファイバーケーブル、ならびに高周波、光学及び赤外波を含む音波及び電磁波のような、配線またはケーブルなしで空間を通って移動する搬送波を含む。信号は、振幅、周波数、位相、偏波または伝送媒体を通して伝送される他の物理的性質における人工的過渡変動を含む。コンピュータ可読媒体の一般形式は、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、CD−ROM、CDRW、DVD、任意の他の光学媒体、パンチカード、紙テープ、光学マークシート、孔のパターンもしくは光学的に認識可能な印を有する任意の他の物理的媒体、RAM、PROM、EPROM、FLASH−EPROM、EEPROM、フラッシュメモリ、任意の他のメモリチップもしくはカートリッジ、搬送波、またはコンピュータが読み出し可能な任意の他の媒体を含む。コンピュータ可読記憶媒体の用語は、伝送媒体を除く任意のコンピュータ可読媒体を意味するように本明細書において使用される。
1つ以上の有形媒体においてエンコードされた論理は、コンピュータ可読記憶媒体及びASIC920のような専用ハードウェアに対するプロセッサ命令の一方または両方を含む。
ネットワークリンク978は、情報を使用するかまたは処理する他の機器に1つ以上のネットワークを通して伝送媒体を使用する情報通信を一般に提供する。例えば、ネットワークリンク978は、ローカルネットワーク980を通してインターネットサービスプロバイダ(ISP)によって操作されるホストコンピュータ982または設備984への接続を提供し得る。ISP設備984は、今度は、現在インターネット990と呼ばれるネットワークの公衆の世界的パケット交換通信ネットワークを通してデータ通信サービスを提供する。
インターネットに接続されたサーバホスト992と呼ばれるコンピュータは、インターネット越しに受信した情報に応答してサービスを提供するプロセスをホストする。例えば、サーバホスト992は、ディスプレイ914において表示するための動画データを表す情報を提供するプロセスをホストする。システム900の構成要素が他のコンピュータシステム、例えば、ホスト982及びサーバ992内の種々の構成において配備され得る。
本発明の少なくともいくつかの実施形態は、本明細書において説明された技術のいくつかまたは全てを実装するためのコンピュータシステム900の使用に関する。本発明の一実施形態によると、これらの技術は、メモリ904内に含有された1つ以上のプロサッサ命令の1つ以上のシーケンスを実行するプロセッサ902に応答してコンピュータシステム900によって実施される。このような命令は、コンピュータ命令、ソフトウェア及びプログラムコードとも呼ばれ、記憶機器908のような別のコンピュータ可読媒体またはネットワークリンク978からメモリ904に読み込まれ得る。メモリ904に含有された命令のシーケンスの実行は、プロセッサ902が本明細書において説明された方法のステップの1つ以上を実施することを引き起こす。代替的実施形態において、ASIC920のようなハードウェアは、本発明を実装するためにソフトウェアの代わりに、またはソフトウェアとの組み合わせにおいて使用され得る。このように、本発明の実施形態は、本明細書に別途、明白に記述されない限り、ハードウェア及びソフトウェアの任意の特定の組み合わせに限定されるものではない。
通信インターフェース970を通ってネットワークリンク978及び他のネットワーク越しに伝送される信号は、コンピュータシステム900に往来する情報を運ぶ。コンピュータシステム900は、ネットワーク980、990、中でも、ネットワークリンク978及び通信インターフェース970を通して、プログラムコードを含む情報を送信及び受信し得る。インターネット990を使用する例において、サーバホスト992は、インターネット990、ISP設備984、ローカルネットワーク980及び通信インターフェース970を通して、コンピュータ900から送信されたメッセージによってリクエストされた、特定のアプリケーション用のプログラムコードを伝送する。受信したコードは、それが受信されるとプロセッサ902によって実行されてもよく、または後の実行のためにメモリ904もしくは記憶機器908もしくは任意の他の不揮発性記憶装置に記憶されてもよく、あるいは両方でもよい。この様式において、コンピュータシステム900は、搬送波における信号の形式でアプリケーションプログラムコードを取得し得る。
コンピュータ可読媒体の種々の形式は、命令もしくはデータまたは両方の1つ以上のシーケンスを実行のためにプロセッサ902に運ぶことに関わり得る。例えば、命令及びデータは、ホスト982のような遠隔コンピュータの磁気ディスクに最初に運ばれ得る。遠隔コンピュータは、命令及びデータをその動的メモリに読み込み、モデムを使用して電話線越しに命令及びデータを送信し得る。コンピュータシステム900にローカルなモデムは、電話線において命令及びデータを受信し、命令及びデータをネットワークリンク978として働く赤外線搬送波における信号に変換するために赤外線送信機を使用する。通信インターフェース970として働く赤外線検出器が、赤外線信号において運ばれた命令及びデータを受信し、命令及びデータを表す情報をバス910に対して配置する。バス910は、プロセッサ902が命令と送信されたデータのいくつかを使用して命令を検索及び実行するメモリ904に情報を運ぶ。メモリ904において受信された命令及びデータは、プロセッサ902による実行の前後いずれかにおいて、記憶機器908に任意に記憶され得る。
図10は、本発明の実施形態が実装され得るチップセットまたはチップ1000を例示する。チップセット1000は、本明細書において説明された、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中に組み込み車両システムを更新するようにプログラムされ、例えば、1つ以上の物理的パッケージ(例えば、チップ)に組み込まれた、図9に関して説明されたプロセッサ及びメモリ構成要素を含む。例として、物理的パッケージは、物理的強度、サイズの維持、及び/または電気的相互作用の制限のような1つ以上の特性を提供するために、1つ以上の材料、構成要素、及び/または構造的アセンブリ(例えば、ベース基板)に対する配線の構成を含む。一定の実施形態においてチップセット1000が単一チップにおいて実装され得ることが考えられる。一定の実施形態においてチップセットまたはチップ1000が単一の「システムオンチップ」として実装され得ることがさらに考えられる。一定の実施形態において別個のASICが使用されず、例えば、本明細書において開示された全ての関連機能がプロセッサまたは複数のプロセッサによって実施されることになることがさらに考えられる。チップセットもしくはチップ1000、またはそれらの一部分は、機能の可用性と関連付けられたユーザインターフェースナビゲーション情報を提供する1つ以上のステップを実施するための手段を構築する。チップセットもしくはチップ1000、またはそれらの一部分は、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中に組み込み車両システムを更新する1つ以上のステップを実施するための手段を構築する。
一実施形態において、チップセットまたはチップ1000は、チップセット1000の構成要素間で情報を伝達するためのバス1001のような通信機構を含む。プロセッサ1003は、例えば、メモリ1005に記憶された命令及びプロセス情報を実行するために、バス1001への接続性を有する。プロセッサ1003は、各コアが独立的に実施するように構成された1つ以上のプロセッシングコアを含み得る。マルチコアプロセッサは、単一物理的パッケージ内でマルチプロセッシングを可能にする。マルチコアプロセッサの例としては、2つ、4つ、8つ、またはより多くの数のプロセッシングコアを含む。これに代えて、または加えて、プロセッサ1003は、命令の独立実行、パイプライン処理、マルチスレッドを可能にするためにバス1001を介して直列に構成された1つ以上のマイクロプロセッサを含み得る。プロセッサ1003はまた、1つ以上のデジタル信号プロセッサ(DSP)1007、または1つ以上の特定用途向け集積回路(ASIC)1009のような一定の処理機能及びタスクを実施するために、1つ以上の専用構成要素を伴い得る。DSP1007は、プロセッサ1003とは無関係にリアルタイムにおいて実世界の信号(例えば、音)を処理するように一般に構成される。同様に、ASIC1009は、より汎用的なプロセッサによって容易に実施されない専用機能を実施するように構成され得る。本明細書において説明された本発明の機能を実施することを補助する他の専用構成要素は、1つ以上のフィールドプログラマブルゲートアレイ(FPGA)、1つ以上のコントローラ、または1つ以上の他の専用コンピュータチップを含み得る。
一実施形態において、チップセットまたはチップ1000は、1つ以上のプロセッサをサポートする及び/またはこれに関する及び/またはこれのための、1つ以上のプロセッサならびにソフトウェア及び/またはファームウェアを単に含む。
プロセッサ1003及び付属構成要素は、バス1001を介してメモリ1005への接続性を有する。メモリ1005は、実行されたときに移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中に組み込み車両システムを更新するために、本明細書において説明された本発明のステップを実施する実行可能命令を記憶するための動的メモリ(例えば、RAM、磁気ディスク、書き込み可能光学ディスク等)及び静的メモリ(例えば、ROM、CD−ROM等)の両方を有する。メモリ1005はまた、本発明のステップと関連付けられたかまたはその実行によって生成されたデータを記憶する。
図11は、一実施形態による、図1のシステムにおいて動作可能である、通信用のモバイル端末(例えば、ハンドセット)の代表的な構成要素の図である。いくつかの実施形態において、モバイル端末1101、またはそれらの一部分は、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中に組み込み車両システムを更新するための1つ以上のステップを実施するための手段を構築する。概して、無線受信機が、フロントエンド及びバックエンド特性に関してしばしば定義される。受信機のフロントエンドが無線周波数(RF)回路の全てを内包するが、バックエンドは、ベースバンド処理回路の全てを内包する。この用途において使用されるように、「回路」の用語は、(1)ハードウェアのみの実装(例えば、アナログ及び/またはデジタル回路のみにおける実装)、(2)回路及びソフトウェア(及び/またはファームウェア)(例えば、特定文脈に適用可能な場合、モバイルフォンまたはサーバのような装置が種々の機能を実施することを引き起こすために一緒に働くデジタル信号プロセッサ(複数可)、ソフトウェア、及びメモリ(複数可)を含むプロセッサ(複数可)の組み合わせ)の両方を意味する。「回路」のこの定義は、任意の請求項におけるものを含む、本出願におけるこの用語の全ての使用に適用する。更なる例のように、本出願において使用されるように、及び特定文脈に適用可能な場合、「回路」の用語はまた、単にプロセッサ(またはマルチプロセッサ)及びその(またはそれらの)付属ソフトウェア/またはファームウェアを包含することになる。「回路」の用語はまた、特定文脈に適用可能な場合、例えば、ベースバンド集積回路またはモバイルフォンにおけるアプリケーションプロセッサ集積回路またはセルラーネットワーク機器もしくは他のネットワーク機器における類似の集積回路を包含することになる。
電話の関連内部構成要素は、主制御装置(MCU)1103、デジタル信号プロセッサ(DSP)1105、ならびにマイクゲイン制御ユニット及びスピーカーゲイン制御ユニットを含む受信機/送信機ユニットを含む。主ディスプレイユニット1107は、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中に組み込み車両システムを更新するステップを実施またはサポートする種々のアプリケーション及びモバイル端末機能のサポートにおいてユーザへの表示を提供する。ディスプレイ1107は、モバイル端末(例えば、モバイル電話)のユーザインターフェースの少なくとも一部分を表示するように構成されたディスプレイ回路を含む。加えて、ディスプレイ1107及びディスプレイ回路は、モバイル端末の少なくともいくつかの機能のユーザ制御を容易化するように構成される。音声機能回路1109は、マイク1111及びマイク1111からの会話信号出力を増幅するマイク増幅器を含む。マイク1111からの増幅された会話信号出力は、コーダ/デコーダ(CODEC)1113に送られる。
無線セクション1115は、アンテナ1117を介して、モバイル通信システムに含まれる基地局と通信するために電力を増幅し周波数を変換する。電力増幅器(PA)1119及び送信機/変調回路は、MCU1103に操作に関して応答的であり、当分野において知られるように、デュプレクサ1121またはサーキュレータまたはアンテナスイッチに結合されたPA1119からの出力を有する。PA1119はまた、バッテリーインターフェース及び電力制御ユニット1120に結合される。
使用において、モバイル端末1101のユーザは、マイク1111に話し、その声は、任意の検出されたバックグラウンドノイズと共にアナログ電圧に変換される。アナログ電圧は、その後、アナログデジタル変換器(ADC)1123を通してデジタル信号に変換される。制御ユニット1103は、会話エンコーディング、チャネルエンコーディング、暗号化、及びインターリービングのような処理をそこで行うためにデジタル信号をDSP1105に導く。一実施形態において、処理された声の信号は、グローバル進化型高速データレート(EDGE)、汎用パケット無線サービス(GPRS)、汎欧州デジタル移動電話方式(GSM(登録商標))、インターネットプロトコルマルチメディアサブシステム(IMS)、ユニバーサル移動体通信システム(UMTS)等、及び任意の他の適切な無線媒体、例えば、ワールドワイドインターオペラビリティフォーマイクロウェーブアクセス(WiMAX)、ロングタームエボリューション(LTE)ネットワーク、符号分割多重アクセス(CDMA)、広帯域符号分割多重アクセス(WCDMA(登録商標))、無線フィデリティ(WiFi)、衛星等、またはそれらの任意の組み合わせのような、セルラー伝送プロトコルを使用する、別個に示されないユニットによってエンコードされる。
エンコードされた信号は、その後、空気を通った伝送中に起こる位相及び振幅歪みのような任意の周波数依存障害の補償のための等化器1125に導かれる。ビットストリームを等化した後、変調器1127が、信号をRFインターフェース1129において生成されたRF信号と合成する。変調器1127は、周波数または位相変調によって正弦波を生成する。伝送用の信号を用意すべく、アップコンバータ1131が、所望の伝送の周波数を実現するために、変調器1127からの正弦波出力をシンセサイザ1133によって生成された別の正弦波と合成する。信号は、その後、信号を適切な電力レベルに増幅するためにPA1119を通って送信される。実用システムにおいて、PA1119は、ネットワーク基地局から受信した情報からDSP1105によってゲインが制御される可変ゲイン増幅器として作用する。信号は、その後、デュプレクサ1121内でフィルタリングされ、最大電力転送を提供するようにインピーダンスを一致させるために任意にアンテナ結合器1135に送信される。最後に、信号は、アンテナ1117を介してローカル基地局に伝送される。自動ゲイン制御(AGC)が、受信機の最終ステージのゲインを制御するために供給され得る。信号は、別の携帯電話、任意の他のモバイルフォン、公衆交換電話網(PSIN)に接続された固定電話、または他の電話網であり得る、遠隔電話機にそこから送られ得る。
モバイル端末1101に伝送された声の信号は、アンテナ1117を介して受信され、低ノイズ増幅器(LNA)1137によって即座に増幅される。ダウンコンバータ1139が、復調器1141がデジタルビットストリームのみを残してRFを取り除く間に搬送周波数を低下させる。信号は、その後、等化器1125を通って進み、DSP1105によって処理される。デジタルアナログ変換器(DAC)1143が信号を変換し、結果として出力がスピーカー1145を通ってユーザに伝送され、全て中央処理装置(CPU)として実装され得る主制御装置(MCU)1103の制御下である。
MCU1103は、キーボード1147からの入力信号を含む種々の信号を受信する。他のユーザ入力構成要素(例えば、マイク1111)との組み合わせにおけるキーボード1147及び/またはMCU1103は、ユーザ入力を管理するためのユーザインターフェースを備える。MCU1103は、移動と関連付けられた動作時間に基づいて構成された1つ以上のデータパッケージによって移動中に組み込み車両システムを更新するためにモバイル端末1101の少なくともいくつかの機能のユーザ制御を容易化するためにユーザインターフェースソフトウェアを動かす。MCU1103はまた、表示コマンド及び切替コマンドをそれぞれディスプレイ1107及び会話出力切替コントローラに送達する。さらに、MCU1103は、DSP1105と情報を交換し、任意に組み込まれたSIMカード1149及びメモリ1151にアクセスし得る。加えて、MCU1103は、端末に要求された種々の制御機能を実行する。DSP1105は、実装によって、声の信号に対して任意の種々の従来のデジタル処理機能を実施し得る。加えて、DSP1105は、マイク1111によって検出された信号からローカル環境のバックグラウンドノイズレベルを判定し、モバイル端末1101のユーザの本来の傾向を補償するために選択されたレベルにマイク1111のゲインを設定する。
CODEC1113は、ADC1123及びDAC1143を含む。メモリ1151は、着信音データを含む種々のデータを記憶し、例えば、グローバルインターネットを介して受信した音楽データを含む他のデータを記憶することが可能である。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、レジスタ、または当分野において知られる任意の他の形式の書き込み可能記憶媒体に存在し得る。メモリ機器1151は、限定されるものではないが、単一メモリ、CD、DVD、ROM、RAM、EEPROM、光学記憶装置、磁気ディスク記憶装置、フラッシュメモリ記憶装置、またはデジタルデータを記憶することが可能な任意の他の不揮発性記憶媒体であり得る。
任意に組み込まれたSIMカード1149は、例えば、携帯電話番号、キャリア供給サービス、加入詳細、及びセキュリティ情報のような、重要な情報を運ぶ。SIMカード1149は、無線ネットワークにおいてモバイル端末1101を識別するために主に働く。カード1149はまた、個人電話番号登録、テキストメッセージ、及びユーザ固有のモバイル端末設定を記憶するためのメモリを含有する。
本発明が複数の実施形態及び実装に関して説明されたが、本発明は、それに限定されるものではなく、添付の請求項の範囲内にある種々の明白な変更及び同等の構成を包含する。本発明の特徴は、請求項間の一定の組み合わせにおいて表現されるが、これらの特徴は、任意の組み合わせ及び順番において構成され得ることが考えられる。