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

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

▶ レノボ・シンガポール・プライベート・リミテッドの特許一覧

<>
  • 特許-情報処理装置、及び制御方法 図1
  • 特許-情報処理装置、及び制御方法 図2
  • 特許-情報処理装置、及び制御方法 図3
  • 特許-情報処理装置、及び制御方法 図4
  • 特許-情報処理装置、及び制御方法 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2025-03-25
(45)【発行日】2025-04-02
(54)【発明の名称】情報処理装置、及び制御方法
(51)【国際特許分類】
   G06F 8/654 20180101AFI20250326BHJP
   G06F 13/10 20060101ALI20250326BHJP
【FI】
G06F8/654
G06F13/10 330B
【請求項の数】 5
(21)【出願番号】P 2023181428
(22)【出願日】2023-10-20
【審査請求日】2023-10-20
(73)【特許権者】
【識別番号】505205731
【氏名又は名称】レノボ・シンガポール・プライベート・リミテッド
(74)【代理人】
【識別番号】100161207
【弁理士】
【氏名又は名称】西澤 和純
(74)【代理人】
【識別番号】100169764
【弁理士】
【氏名又は名称】清水 雄一郎
(74)【代理人】
【識別番号】100175824
【弁理士】
【氏名又は名称】小林 淳一
(74)【代理人】
【識別番号】100206081
【弁理士】
【氏名又は名称】片岡 央
(72)【発明者】
【氏名】佐々木 健
(72)【発明者】
【氏名】鈴木 智美
(72)【発明者】
【氏名】瀬戸 裕一郎
(72)【発明者】
【氏名】森重 勇作
【審査官】今川 悟
(56)【参考文献】
【文献】特開2016-066129(JP,A)
【文献】特開2011-090481(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 8/654
G06F 13/10
(57)【特許請求の範囲】
【請求項1】
システムの処理を実行するためのプログラムを記憶するメモリと、
前記メモリに記憶されたプログラムに基づいてシステム処理を実行する第1プロセッサと、
前記メモリと接続され、前記第1プロセッサの動作の開始および停止を制御する第2プロセッサと、
外部通信用の接続部と、
前記接続部を介した外部通信の接続先を前記第1プロセッサまたは前記第2プロセッサに切り替える切替部と、
を備え、
前記第2プロセッサは、
前記第1プロセッサの動作が停止しているときに、前記接続部を介した外部通信の接続先が前記第2プロセッサになるように前記切替部を制御し、前記接続部を介した外部通信により取得したプログラムの一部または全部を前記メモリに書き込む書き込み処理を実行し、
前記書き込み処理の実行中は、前記第1プロセッサの動作を開始させるトリガを受けたとしても、前記第1プロセッサの動作が停止している状態を継続させる、
情報処理装置。
【請求項2】
システムの処理を実行するためのプログラムを記憶するメモリと、
前記メモリに記憶されたプログラムに基づいてシステム処理を実行する第1プロセッサと、
前記メモリと接続され、前記第1プロセッサの動作の開始および停止を制御する第2プロセッサと、
外部通信用の接続部と、
前記接続部を介した外部通信の接続先を前記第1プロセッサまたは前記第2プロセッサに切り替える切替部と、
を備え、
前記第2プロセッサは、
前記第1プロセッサの動作が停止しているときに、前記接続部を介した外部通信の接続先が前記第2プロセッサになるように前記切替部を制御し、前記接続部を介した外部通信により取得したプログラムの一部または全部を前記メモリに書き込む書き込み処理を実行し、
前記第1プロセッサの動作が停止しているときに、前記第2プロセッサ内の各部を低電力モードに制御するとともに、前記各部のうち外部通信部を低電力モードから復帰させる復帰機能を有効に設定し、前記接続部を介した外部通信を受信したことに応じて前記外部通信部を低電力モードから復帰させ、
前記外部通信部を低電力モードから復帰させた後に前記書き込み処理を開始し、前記書き込み処理が終了すると、前記外部通信部を低電力モードに戻す、
情報処理装置。
【請求項3】
前記第2プロセッサは、
前記書き込み処理の終了後に前記第1プロセッサの動作を開始させた際に、前記復帰機能を無効に設定し、前記各部を低電力モードから復帰させる、
請求項に記載の情報処理装置。
【請求項4】
システムの処理を実行するためのプログラムを記憶するメモリと、前記メモリに記憶されたプログラムに基づいてシステム処理を実行する第1プロセッサと、前記メモリと接続され、前記第1プロセッサの動作の開始および停止を制御する第2プロセッサと、外部通信用の接続部と、前記接続部を介した外部通信の接続先を前記第1プロセッサまたは前記第2プロセッサに切り替える切替部とを備える情報処理装置における制御方法であって、
前記第2プロセッサが、
前記第1プロセッサの動作が停止しているときに、前記接続部を介した外部通信の接続先が前記第2プロセッサになるように前記切替部を制御するステップと、
前記切替部を制御した後に、前記接続部を介した外部通信により取得したプログラムの一部または全部を前記メモリに書き込む書き込み処理を実行するステップと、
を含み、
前記書き込み処理の実行中は、前記第1プロセッサの動作を開始させるトリガを受けたとしても、前記第1プロセッサの動作が停止している状態を継続させる、
制御方法。
【請求項5】
システムの処理を実行するためのプログラムを記憶するメモリと、前記メモリに記憶されたプログラムに基づいてシステム処理を実行する第1プロセッサと、前記メモリと接続され、前記第1プロセッサの動作の開始および停止を制御する第2プロセッサと、外部通信用の接続部と、前記接続部を介した外部通信の接続先を前記第1プロセッサまたは前記第2プロセッサに切り替える切替部とを備える情報処理装置における制御方法であって、
前記第2プロセッサが、
前記第1プロセッサの動作が停止しているときに、前記接続部を介した外部通信の接続先が前記第2プロセッサになるように前記切替部を制御するステップと、
前記切替部を制御した後に、前記接続部を介した外部通信により取得したプログラムの一部または全部を前記メモリに書き込む書き込み処理を実行するステップと、
前記第1プロセッサの動作が停止しているときに、前記第2プロセッサ内の各部を低電力モードに制御するとともに、前記各部のうち外部通信部を低電力モードから復帰させる復帰機能を有効に設定し、前記接続部を介した外部通信を受信したことに応じて前記外部通信部を低電力モードから復帰させるステップと、
前記外部通信部を低電力モードから復帰させた後に前記書き込み処理を開始し、前記書き込み処理が終了すると、前記外部通信部を低電力モードに戻すステップと、
を含む制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、及び制御方法に関する。
【背景技術】
【0002】
PC(Personal Computer)などの情報処理装置は、BIOS(Basic Input Output System)などのシステムを実行させるためのプログラムが格納された不揮発性のメモリ(例えば、フラッシュROM(Read Only Memory))を内部に備えている。PCは、このプログラムを実行することでシステムを起動して各種の処理を実行する(例えば、特許文献1)。
【0003】
このメモリに書き込まれているプログラムのデータが壊れた場合、或いは誤ったプログラムがメモリに書き込まれた場合には、システムを正常に起動することができなくなる。メモリ内のデータを修復する方法としては、従来、メモリの端子(リード)を専用のクリップで挟んでROMライターでデータを書き直す方法、或いはメモリ自体を交換する方法がある。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2014-10492号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら現在のPCでは、メモリの端子としてリードの代わりに電極パッドが用いられるようになってきており、実際にはROMライターを用いる方法は使用できず、メモリ自体の交換しかプログラムを修復する方法がない。メモリを交換するには、回路基板を痛めてしまうことや、部品の張替に高いコストがかるといった懸念がある。
【0006】
本発明は、上記した事情に鑑みてなされたもので、外部通信を用いてメモリ内のデータを容易に更新できる情報処理装置、及び制御方法を提供することを目的の一つとする。
【課題を解決するための手段】
【0007】
本発明は上記の課題を解決するためになされたものであり、本発明の第1態様に係る情報処理装置は、システムの処理を実行するためのプログラムを記憶するメモリと、前記メモリに記憶されたプログラムに基づいてシステム処理を実行する第1プロセッサと、前記メモリと接続され、前記第1プロセッサの動作の開始および停止を制御する第2プロセッサと、外部通信用の接続部と、前記接続部を介した外部通信の接続先を前記第1プロセッサまたは前記第2プロセッサに切り替える切替部と、を備え、前記第2プロセッサは、前記第1プロセッサの動作が停止しているときに、前記接続部を介した外部通信の接続先が前記第2プロセッサになるように前記切替部を制御し、前記接続部を介した外部通信により取得したプログラムの一部または全部を前記メモリに書き込む書き込み処理を実行する。
【0008】
上記情報処理装置において、前記第2プロセッサは、前記第1プロセッサが動作しているときに、前記接続部を介した外部通信の接続先が前記第1プロセッサになるように前記切替部を制御してもよい。
【0009】
上記情報処理装置において、前記第2プロセッサは、前記書き込み処理の実行中は、前記第1プロセッサの動作を開始させるトリガを受けたとしても、前記第1プロセッサの動作が停止している状態を継続させてもよい。
【0010】
上記情報処理装置において、前記第2プロセッサは、前記第1プロセッサの動作が停止しているときに、前記第2プロセッサ内の各部を低電力モードに制御するとともに、前記各部のうち外部通信部を低電力モードから復帰させる復帰機能を有効に設定し、前記接続部を介した外部通信を受信したことに応じて前記外部通信部を低電力モードから復帰させてもよい。
【0011】
上記情報処理装置において、前記第2プロセッサは、前記外部通信部を低電力モードから復帰させた後に前記書き込み処理を開始し、前記書き込み処理が終了すると、前記外部通信部を低電力モードに戻してもよい。
【0012】
上記情報処理装置において、前記第2プロセッサは、前記書き込み処理の終了後に前記第1プロセッサの動作を開始させた際に、前記復帰機能を無効に設定し、前記各部を低電力モードから復帰させてもよい。
【0013】
また、本発明の第2態様に係る、システムの処理を実行するためのプログラムを記憶するメモリと、前記メモリに記憶されたプログラムに基づいてシステム処理を実行する第1プロセッサと、前記メモリと接続され、前記第1プロセッサの動作の開始および停止を制御する第2プロセッサと、外部通信用の接続部と、前記接続部を介した外部通信の接続先を前記第1プロセッサまたは前記第2プロセッサに切り替える切替部とを備える情報処理装置における制御方法は、前記第2プロセッサが、前記第1プロセッサの動作が停止しているときに、前記接続部を介した外部通信の接続先が前記第2プロセッサになるように前記切替部を制御するステップと、前記切替部を制御した後に、前記接続部を介した外部通信により取得したプログラムの一部または全部を前記メモリに書き込む書き込み処理を実行するステップと、を含む。
【発明の効果】
【0014】
本発明の上記態様によれば、外部通信を用いてメモリ内のデータを容易に更新できる。
【図面の簡単な説明】
【0015】
図1】実施形態に係る情報処理装置の概要の説明図。
図2】実施形態に係るROMへの書き込み手順の一例を示すフローチャート。
図3】実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図。
図4】実施形態に係る情報処理装置のROM書き込み処理を行う構成の一例を示すブロック図。
図5】実施形態に係るROM書き込み処理の一例を示すフローチャート。
【発明を実施するための形態】
【0016】
以下、図面を参照して、本発明の実施形態について説明する。
図1は、本実施形態に係る情報処理装置の概要の説明図である。図示する情報処理装置1は、クラムシェル型のノートPC(Personal Computer)である。情報処理装置1は、BIOS(Basic Input Output System)などのシステムを実行させるためのプログラムが格納された不揮発性のメモリ(例えば、フラッシュROM(Read Only Memory))を内部に備えている。この不揮発性のメモリのことを、以下では「ROM」と記載して説明する。
【0017】
ROMに記憶されているBIOS(Basic Input Output System)などのプログラムのデータが壊れた場合、或いは誤ったプログラムがメモリに書き込まれた場合には、システムを正常に起動することができなくなる。本実施形態では、他の情報処理装置からの通信接続により、ROMのデータを修復する。
【0018】
この図1に示す情報処理装置1Aは、ROMのデータの修復が必要なターゲット側のPCである。一方、情報処理装置1Bは、情報処理装置1AのROMにデータの書き込みを行って修復するホスト側のPCである。情報処理装置1Aと情報処理装置1Bとをケーブル5で通信接続することにより、情報処理装置1Aから情報処理装置1BのROMにアクセスしてデータを書き込むことができる。
【0019】
例えば、ケーブル5は、USB(Universal Serial Bus)ケーブル(例えば、USB2.0ケーブル)である。情報処理装置1Aと情報処理装置1BとのそれぞれのUSB Type-Cコネクタを、ケーブル5を用いて接続することで、ホスト側の情報処理装置1Bからターゲット側の情報処理装置1AのROMにアクセスする。
【0020】
ここで、ターゲット側の情報処理装置1Aは、システムを正常に起動することができない状態でもホスト側の情報処理装置1Bからの通信接続を行う必要がある。そのため、情報処理装置1Aは、電源オフ(CPUオフ)の状態で、EC(Embedded Controller)が通信機能を有効にしてROMへの書き込み処理を行う。CPUおよびEC等のシステム構成については後述する。
【0021】
次に、情報処理装置1Bから情報処理装置1AのROMへ書き込みを行う際のユーザの手順について、図2を参照して説明する。
図2は、本実施形態に係るROMへの書き込み手順の一例を示すフローチャートである。まず、ユーザは、情報処理装置1Aの電源をオフにする。なお、このとき、情報処理装置1AにはAC電源(ACパワーアダプタ)が挿入されて電源が供給されている状態とする(ステップS11)。
【0022】
次に、ユーザは、ターゲット側の情報処理装置1Aとホスト側の情報処理装置1Bとをケーブル5で接続する(ステップS13)。続いて、ユーザは、ホスト側の情報処理装置1Bにおいて専用のアプリケーション(以下、「専用アプリ」と称する)を起動する(ステップS15)。この専用アプリは、ターゲット側の情報処理装置1AのROMにデータを書き込む機能を有する。
【0023】
ユーザは、情報処理装置1Bにおいて起動した専用アプリを用いて、情報処理装置1AのROMへ書き込むデータを選択する。例えば、ユーザは、情報処理装置1Bに保存されているデータの中から情報処理装置1AのROMへ書き込むBIOSのプログラムデータを、専用アプリを用いて選択する。情報処理装置1Bは、ユーザにより選択されたデータを、ケーブル5で接続された通信を介して情報処理装置1A送信し、情報処理装置1AのROMへの書き込みを開始する。
【0024】
以下、情報処理装置1の構成について詳しく説明する。なお、ここでは、ターゲット側の情報処理装置1Aとしての機能を有する情報処理装置1の構成例について説明する。なお、ホスト側の情報処理装置1Bの構成は、ターゲット側の情報処理装置1Aの構成と同様であってもよいし、ターゲット側の機能(一部の構成)を持たない一般的なPCの構成であってもよい。
【0025】
[情報処理装置のハードウェア構成]
図3は、本実施形態に係る情報処理装置の主要なハードウェア構成の一例を示すブロック図である。この図において、図1の各部に対応する構成には、同一の符号を付している。
【0026】
図3に示すように、情報処理装置1は、CPU11と、メインメモリ12と、ビデオサブシステム13と、表示部14と、ストレージ15と、オーディオシステム16と、通信部17と、USBコネクタ18と、切替部21と、EC(Embedded Controller)31と、ROM32と、キーボード33と、電源ボタン34と、電源回路35と、バッテリ36とを備える。
【0027】
CPU(Central Processing Unit)11は、BIOSおよびOS(Operating System)のプログラムを実行するプロセッサ(第1プロセッサ)の一例である。CPU11は、プログラム制御により種々の演算処理を実行し、情報処理装置1全体を制御している。
【0028】
CPU11は、USB、シリアルATA(AT Attachment)、SPI(Serial Peripheral Interface)バス、PCI(Peripheral Component Interconnect)バス、PCI-Expressバス、及びeSPIバスなどを用いて複数のデバイスと接続される。図3に示す例では、デバイスの例示として、メインメモリ12、ビデオサブシステム13、ストレージ15、オーディオシステム16、通信部17、切替部21を介してUSBコネクタ18などがCPU11と接続されている。
【0029】
例えば、CPU11は、ROM32に記憶されているBIOSのプログラムを、EC31を介して読み込みメインメモリ12へ展開し、当該プログラムに基づいてBIOSの処理(POST処理など)を実行する。また、CPU11は、ストレージ15からメインメモリ12へOS、各種ドライバ、各種サービス/ユーティリティ、アプリケーションプログラムなどを読み込み、それぞれの処理を実行する。また、CPU11は、ビデオサブシステム13の制御およびオーディオシステム16の制御、USBコネクタ18を介した外部装置・機器とのUSB通信の処理を実行する。
【0030】
なお、CPU11は、バスなどを用いて接続される複数のデバイスとのインターフェースおよび処理を担うチップセットと組み合わせて構成されてもよい。また、CPU11は、チップセットや周辺のデバイスとSoC(System on a chip)として構成されてもよい。
【0031】
メインメモリ12は、CPU11が実行するプログラムの読み込み領域として、又は、実行するプログラムの処理データを書き込む作業領域として利用される書き込み可能なメモリである。メインメモリ12は、例えば、複数個のDRAM(Dynamic Random Access Memory)チップで構成される。このCPU11が実行するプログラムには、BIOS、OS、周辺機器類をハードウェア操作するための各種ドライバ、各種サービス/ユーティリティ、アプリケーションプログラム等が含まれる。
【0032】
ビデオサブシステム13は、画像表示に関連する機能を実現するためのサブシステムであり、ビデオコントローラを含んでいる。このビデオコントローラは、CPU11からの描画命令を処理し、処理した描画情報をビデオメモリに書き込むとともに、ビデオメモリからこの描画情報を読み出して、表示部14に描画データ(表示データ)として出力する。
【0033】
表示部14は、例えば、液晶ディスプレイや有機ELディスプレイなどを含んで構成されている。表示部14は、ビデオサブシステム13から出力された描画データ(表示データ)に基づく表示画面を表示する。
【0034】
ストレージ15は、HDD(Hard Disk Drive)、SSD(Solid State Drive)などの不揮発性の記憶装置を含んで構成される。例えば、ストレージ15は、OS、各種ドライバ、各種サービス/ユーティリティ、アプリケーションプログラム、及び各種データなどを記憶する。
【0035】
オーディオシステム16は、音データの記録、再生、出力を行う。
通信部17は、無線LAN(Local Area Network)または有線LANにより通信ネットワークに接続し、データ通信を行う。
【0036】
USBコネクタ18は、USBを利用して外部の装置・機器と通信するための外部通信用の接続部の一例である。例えば、USBコネクタ18は、USB Type-Cに対応したコネクタである。USB2.0用のケーブル5(図1参照)の一端をUSBコネクタ18に接続することにより、ケーブル5の他端が接続されている外部の装置・機器との外部通信が可能である。なお、USBコネクタ18は、複数の外部の装置・機器と接続可能なように、複数のコネクタを備えてもよい。
【0037】
切替部21は、既存の備え付けポートを外部通信に利用するためのものであり、例えば、既存のUSB信号をUART(Universal Asynchronous Receiver/Transmitter)通信に利用するために設けられている。切替部21は、USBコネクタ18を介した外部通信の接続先をCPU11(USB通信側)またはEC31(UART通信側)のいずれかに切り替える。例えば、切替部21は、EC31の制御により、USBコネクタ18の接続先をメインCPU11またはEC31のいずれかに切り替える。
【0038】
EC31(第2プロセッサの一例)は、情報処理装置1のシステムの動作状態に関わらず、各種デバイス(周辺装置やセンサ等)を監視し制御するワンチップマイコン(One-Chip Microcomputer)である。EC31は、不図示のCPUおよびメモリ(ROM、RAMなど)などで構成されるとともに、各種のバス、複数チャネルのA/D入力端子、D/A出力端子、タイマ、及びデジタル入出力端子を備えている。EC31は、例えば、CPU11、切替部21、ROM32、キーボード33、電源ボタン34、及び電源回路35などと接続されており、EC31は、これらの動作を制御する。例えば、EC31は、CPU11の動作の開始及び停止の制御などを行う。
【0039】
ROM32は、例えば、SPIフラッシュメモリなどの電気的に書き換え可能な不揮発性メモリである。ROM32は、BIOSのプログラム、EC31を制御するためのプログラムなどのシステムファームウェアなどを記憶する。なお、ROM32は、EEPROM(Electrically Erasable Programmable Read Only Memory)であってもよい。
【0040】
キーボード33は、例えば物理的なキーボードである。キーボード33は、ユーザによって操作(タイピング操作)がされると、操作されたキーを示す操作信号をEC31へ送信する。EC31は、キーボード33から送信された操作信号に基づいて、ユーザによって操作されたキーに応じた処理を実行する。
【0041】
電源ボタン34は、電源オンまたは電源オフをユーザが指示するための操作子である。電源ボタン34は、ユーザによって操作されると、操作に応じた操作信号をEC31へ送信する。
【0042】
電源回路35は、例えば、DC/DCコンバータ、充放電ユニット、電池ユニット、AC/DCアダプタなどを含んでおり、ACアダプタ(AC/DCアダプタ)またはバッテリ36(電池ユニット)から供給される直流電圧を、情報処理装置1を動作させるために必要な複数の電圧に変換する。また、電源回路35は、EC31からの電源オンまたは電源オフの制御に基づいて、情報処理装置1の各部への電力の供給を制御する。
【0043】
[外部通信でROM書き込み処理を行う構成の説明]
次に、外部通信により情報処理装置1のROM32にデータを書き込むROM書き込み処理を行う構成について詳しく説明する。
【0044】
図4は、本実施形態に係る情報処理装置のROM書き込み処理を行う構成の一例を示すブロック図である。この図4に示す構成は、図1に示すターゲット側の情報処理装置1Aにおいて必要な構成である。この図において、図3の各部に対応する構成には、同一の符号を付している。
【0045】
(外部通信の切り替え制御)
まず、切替部21による外部通信の切り替え制御について説明する。前述したように、切替部21は、既存の備え付けポートを外部通信に利用するためのものであり、例えば、既存のUSB信号をUART(Universal Asynchronous Receiver/Transmitter)通信に利用するために設けられている。図4に示す例において、切替部21は、CPU11とUSBコネクタ18とのUSB通信の経路の途中に設けられている。
切替部21は、ROM書き込み処理を行う際には、CPU11とUSBコネクタ18との接続を遮断し、EC31とUSBコネクタ18とを接続する。例えば、EC31は、UART(Universal Asynchronous Receiver/Transmitter)を利用して、USBコネクタ18を介して接続される外部の装置・機器と通信を行う。USBのD+/D-の信号線をUARTのTX/RXの信号線に対応させることで、EC31は、USB通信の経路をROM書き込み処理時のデータ通信(UART通信)の経路として利用して、USBコネクタ18を介して接続される外部の装置・機器と通信を行う。
【0046】
つまり、USBコネクタ18の接続先がCPU11の場合には、CPU11は、USBコネクタ18を介して接続される外部の装置・機器とUSB通信を行う。一方、ROM書き込み処理を行うためにUSBコネクタ18の接続先がEC31に切り替わった場合には、EC31は、USBコネクタ18を介して接続される外部の装置・機器とUARTを利用して通信を行う。ここで、ROM書き込み処理を行う際にUSBコネクタ18を介して接続される外部の装置・機器を、図1に示すホスト側の情報処理装置1Bとして説明する。
【0047】
図3を参照して説明したように、切替部21は、USBコネクタ18を介した外部通信の接続先をCPU11またはEC31のいずれかに切り替える。この切替部21による外部通信の切り替えは、EC31が制御する。
【0048】
EC31は、切替部21による外部通信の切り替えを制御する切替制御信号を切替部21へ出力する。例えば、切替制御信号を「Low」にすることで、切替部21において外部通信の接続先がEC31に切り替わる。また、切替制御信号を「High」にすることで、切替部21において外部通信の接続先がCPU11に切り替わる。
【0049】
EC31は、CPU11の動作が停止しているとき(CPUオフ時)には、切替制御信号を「Low」にすることで、USBコネクタ18を介した外部通信の接続先がEC31になるように切替部21を制御する。即ち、EC31は、CPU11の動作が停止しているとき(CPUオフ時)に、切替部21においてUART信号の通信を開通させる。ここで、CPU11の動作が停止しているとき(CPUオフ時)とは、例えば、電源ボタン34が押下される前、或いは、システムが動作している状態からシャットダウンした状態である。なお、CPU11の動作が停止しているとき(CPUオフ時)の条件には、ACアダプタが接続されていることが含まれてもよい。
【0050】
また、EC31は、CPU11が動作しているとき(CPUオン時)に、切替制御信号を「High」にすることで、USBコネクタ18を介した外部通信の接続先がCPU11になるように切替部21を制御する。即ち、EC31は、CPU11が動作しているとき(CPUオン時)に、切替部21においてUSB信号の通信を開通させる。ここで、CPU11が動作しているとき(CPUオン時)とは、例えば、電源ボタン34が押下された後の状態である。
【0051】
このように、EC31は、CPU11の動作が停止しているとき(CPUオフ時)のみ切替部21においてUART信号の通信を開通させるため、CPU11とEC31とが同時にアクセスすることがなく、USB信号利用して、UART通信を行うことができる。
【0052】
(ROMへのデータの書き込み制御)
次に、ROM32へのデータの書き込み制御について説明する。EC31は、CPU11の動作が停止しているとき(CPUオフ時)に、書き込み処理を開始する。EC31は、USBコネクタ18を介して接続されているホスト側の情報処理装置1Bから外部通信により送信されたデータ(例えば、BIOSのプログラムデータ)を取得し、取得したプログラムの一部または全部をROM32に書き込むROM書き込み処理を実行する。
【0053】
ここで、EC31とCPU11から同時にROM32へアクセスする衝突が発生しないようにする必要があるため、EC31は、ROM書き込み処理の実行中は、CPU11の動作を制限する。図4に示す例では、EC31からCPU11へ起動制御信号が出力される。起動制御信号は、CPU11の起動を制御する制御信号である。例えば、起動制御信号を「Low」にすることで、CPU11が起動しないように起動制限が設定される。また、起動制御信号を「High」にすることで、CPU11が動作可能となるように起動制限が解除される。
【0054】
EC31は、ROM書き込み処理を開始する際には起動制御信号を「Low」にすることで起動制限を設定し、ROM書き込み処理が終了すると起動制御信号を「High」にすることで起動制限を解除する。これにより、EC31は、ROM書き込み処理の実行中は、CPU11の動作を開始(CPUオン)させるトリガ(例えば、電源ボタン34の押下)を受けたとしても、CPU11の動作が停止している状態を継続させることができるため、EC31とCPU11から同時にROM32へアクセスする衝突が発生せず。正常にROM書き込み処理を実行することができる。
【0055】
(ECのUART通信部の電源制御)
次に、EC31における電源制御について説明する。CPU11の動作が停止しているとき(CPUオフ時)、EC31は、EC31自身(コアの部分)およびEC31内の各部(各機能ユニット)を低電力モードに制御するため、UARTを利用して通信を行うためには、UART通信を行うUART通信部311と自身の電源制御が必要となる。例えば、EC31は、GPIO(General Purpose Input/Output)のウェイクアップ機能を用いて電源制御を行う。GPIOウェイクアップ機能は、EC31が低電力モードにおいても、接続された信号線の電圧変化を検知し、低電力モードより自信を復帰することができる復帰機能を有し、割り込み処理を発生させることのできる機能とする。
【0056】
具体的には、EC31は、CPU11の動作が停止しているとき(CPUオフ時)、低電力モードに制御している各部のうちUART通信部311を低電力モードから復帰させるため、復帰機能であるGPIOウェイクアップ機能を有効(Enable)に設定する。そして、EC31は、USBコネクタ18を介した外部通信を受信したこと(信号線の電圧変化)をGPIOで検出し、GPIOウェイクアップ機能による割り込み処理を発生させ、UART通信部311を低電力モードから復帰させる。
【0057】
また、EC31は、UART通信部311を低電力モードから復帰させた後に、ホスト側の情報処理装置1Bから外部通信により取得したコマンド及びデータに基づいて、ROM32へのデータの書き込みを開始する。そして、EC31は、ROM32へのデータの書き込みが終了すると、UART通信部311を低電力モードに戻す。
【0058】
一方、CPU11が動作しているとき(CPUオン時)、EC31は、UART通信部311を低電力モードから復帰させる復帰機能であるGPIOウェイクアップ機能を無効(Disable)に設定する。例えば、EC31は、ROM書き込み処理の終了後にCPU11の動作を開始させた際に、UART通信部311を低電力モードから復帰させる復帰機能であるGPIOウェイクアップ機能を無効(Disable)に設定する。また、EC31は、EC31内の各部を低電力モードから復帰させる。
【0059】
[外部通信によるROM書き込み処理の動作]
次に、外部通信によるROM書き込み処理の動作について説明する。
図5は、本実施形態に係るROM書き込み処理の一例を示すフローチャートである。この処理は、情報処理装置1Aが電源オフになったことに応じて開始される。
【0060】
(ステップS101)EC31は、CPU11の動作を停止させた状態(CPUオフ)に制御し、ステップS103の処理へ進む。
【0061】
(ステップS103)EC31は、低電力モードに制御している各部のうちUART通信部311を低電力モードから復帰させる復帰機能(GPIOウェイクアップ機能)を有効(Enable)に設定する。そして、ステップS105の処理へ進む。
【0062】
(ステップS105)EC31は、切替制御信号を「Low」にすることで、外部通信(USBコネクタ18)の接続先がCPU11からEC31になるように切替部21を制御する。このEC31による制御に応じて、切替部21は、外部通信(USBコネクタ18)の接続先をCPU11からEC31へ切り替える。
【0063】
(ステップS107)EC31は、EC31内の各部を低電力モードに制御し、GPIOウェイクアップ機能による割り込み処理を待つ。
【0064】
(ステップS109)EC31は、割り込みを受けるとUSBコネクタ18を介した外部通信を受信したか否かを判定する。EC31は、外部通信を受信したと判定した場合(YES)、ステップS111の処理へ進む。一方、EC31は、外部通信を受信していないと判定した場合(NO)、ステップS121の処理へ進む。
【0065】
(ステップS111)EC31は、UART通信部311を低電力モードから復帰させて、ステップS113の処理へ進む。
【0066】
(ステップS113)EC31は、起動制御信号を「Low」にすることで、CPU11が起動しないように起動を制限し、ステップS115の処理へ進む。
【0067】
(ステップS115)EC31は、外部通信を用いてROM32へデータの書き込みを行う。例えば、EC31は、ホスト側の情報処理装置1Bから外部通信により取得したコマンド及びデータに基づいて、ROM32へのデータの書き込みを開始する。EC31は、ROM32へのデータの書き込みが終了すると、ステップS117の処理へ進む。
【0068】
(ステップS117)EC31は、起動制御信号を「High」にすることで、CPU11が動作可能となるように起動制限を解除し、ステップS119の処理へ進む。
【0069】
(ステップS119)EC31は、UART通信部311を低電力モードに戻して、割り込み待ちへ戻る。
【0070】
(ステップS121)EC31は、CPU11の動作を開始(CPUオン)させるトリガ(例えば、電源ボタン34の押下)があったか否かを判定する。EC31は、CPU11の動作を開始(CPUオン)させるトリガが無いと判定した場合(NO)、割り込み待ちへ戻る。一方、EC31は、CPU11の動作を開始(CPUオン)させるトリガがあったと判定した場合(YES)、ステップS123の処理へ進む。
【0071】
(ステップS123)EC31は、UART通信部311を低電力モードから復帰させる復帰機能(GPIOウェイクアップ機能)を無効(Disable)に設定して、ステップS125の処理へ進む。
【0072】
(ステップS125)EC31は、EC31内の各部を低電力モードから復帰させ、ステップS127の処理へ進む。
【0073】
(ステップS127)EC31は、CPU11の動作を開始(CPUオン)させる。RON32内のプログラムデータが正常または修復されていれば、システムが正常に起動する。
【0074】
以上説明してきたように、本実施形態に係る情報処理装置1は、ROM32(メモリの一例)と、CPU11(第1プロセッサの一例)と、EC31(第2プロセッサの一例)と、外部通信用のUSBコネクタ18(接続部の一例)と、切替部21と、を備えている。ROM32は、システム(例えば、BIOS)の処理を実行するためのプログラムを記憶する。CPU11は、ROM32に記憶されたプログラムに基づいてシステム処理(例えば、BIOS処理)を実行する。EC31は、ROM32と接続され、CPU11の動作の開始および停止を制御する。切替部21は、USBコネクタ18を介した外部通信の接続先をCPU11またはEC31に切り替える。そして、EC31は、CPU11の動作が停止しているときに、USBコネクタ18を介した外部通信の接続先がEC31になるように切替部21を制御し、USBコネクタ18を介した外部通信により取得したプログラムの一部または全部をROM32に書き込むROM書き込み処理を実行する。
【0075】
これにより、情報処理装置1は、外部通信を用いて他の情報処理装置からROM32のデータを容易に更新できる。例えば、情報処理装置1は、ROM32に書き込まれているプログラムのデータが壊れた場合、或いは誤ったプログラムがROM32に書き込まれた場合などシステムを正常に起動することができなくなっても、CPU11の動作が停止している電源オフ(CPUオフ)の状態で、外部通信を用いて他の情報処理装置からROM32のデータを修復することができる。また、情報処理装置1は、端子に電極パッドが用いられているためROMライターを用いる方法が使用できない場合であっても、回路基板に実装されているROM32を剥がして交換する必要がないため、回路基板を痛めてしまうことや、部品の張替に高いコストがかるといった懸念が無い。
【0076】
また、EC31は、CPU11が動作しているとき(CPUオン時)に、USBコネクタ18を介した外部通信の接続先がCPU11になるように切替部21を制御する。
【0077】
これにより、情報処理装置1は、CPUオン時は外部の装置・機器とUSB通信を行うことができる。
【0078】
また、EC31は、ROM書き込み処理の実行中は、CPU11の動作を開始させるトリガを受けたとしても、CPU11の動作が停止している状態(CPUオフの状態)を継続させる。
【0079】
これにより、情報処理装置1は、EC31が外部通信により送信されたデータをROM32に書き込みしているときに、既存の備え付けポートをEC31の外部通信に利用でき、EC31からのROM32へのアクセスとCPU11からのROM32へのアクセスとの衝突が発生しないようにすることができる。
【0080】
また、EC31は、CPU11の動作が停止しているとき(CPUオフ時)に、EC31内の各部を低電力モードに制御するとともに、各部のうちUART通信部311(外部通信部の一例)を低電力モードから復帰させる復帰機能を有効(Enable)に設定する。また、EC31は、USBコネクタ18を介した外部通信を受信したことに応じてUART通信部311を低電力モードから復帰させる。
【0081】
これにより、情報処理装置1は、電源オフ(CPUオフ)の状態ではEC31を低電力モードにして消費電力を抑えているが、外部通信を受信したときにはUART通信部311を低電力モードから復帰させて、電源オフ(CPUオフ)の状態でも外部通信による通信データを取得することができる。
【0082】
また、EC31は、UART通信部311を低電力モードから復帰させた後にROM書き込み処理を開始し、ROM書き込み処理が終了すると、UART通信部311を低電力モードに戻す。
【0083】
これにより、情報処理装置1は、ROM書き込み処理の実行中のみUART通信部311を低電力モードから復帰させるため、ROM書き込み処理による消費電力の増加を抑制することができる。
【0084】
また、EC31は、ROM書き込み処理の終了後にCPU11の動作を開始させた際に、UART通信部311(外部通信部の一例)を低電力モードから復帰させる復帰機能を無効(Disable)に設定し、EC31内の各部を低電力モードから復帰させる。
【0085】
これにより、情報処理装置1は、ROM書き込み処理によりROM32のデータを修復した後は、CPU11の動作の開始(CPUオン)とともに、有効(Enable)に設定した復帰機能を無効に戻して、EC31内の各部を低電力モードから復帰させることができる。即ち、情報処理装置1は、ROM書き込み処理によりROM32のデータを修復した後は、CPU11の動作の開始(CPUオン)とともに、電源オフ(CPUオフ)のときに制御した内容を元に戻すことができる。
【0086】
また、本実施形態に係る、システム(例えば、BIOS)の処理を実行するためのプログラムを記憶するROM32(メモリの一例)と、ROM32に記憶されたプログラムに基づいてシステム処理(例えば、BIOS処理)を実行するCPU11(第1プロセッサの一例)と、ROM32と接続され、CPU11の動作の開始および停止を制御するEC31(第2プロセッサの一例)と、外部通信用のUSBコネクタ18(接続部の一例)と、USBコネクタ18を介した外部通信の接続先をCPU11またはEC31に切り替える切替部21と、を備える情報処理装置1における制御方法は、EC31が、CPU11の動作が停止しているときに、USBコネクタ18を介した外部通信の接続先がEC31になるように切替部21を制御するステップと、切替部21を制御した後に、USBコネクタ18を介した外部通信により取得したプログラムの一部または全部をROM32に書き込むROM書き込み処理を実行するステップと、を含む。
【0087】
これにより、情報処理装置1における制御方法は、外部通信を用いて他の情報処理装置からROM32のデータを容易に更新できる。例えば、情報処理装置1における制御方法は、ROM32に書き込まれているプログラムのデータが壊れた場合、或いは誤ったプログラムがROM32に書き込まれた場合などシステムを正常に起動することができなくなっても、CPU11の動作が停止している電源オフ(CPUオフ)の状態で、外部通信を用いて他の情報処理装置からROM32のデータを修復することができる。また、情報処理装置1は、端子に電極パッドが用いられているためROMライターを用いる方法が使用できない場合であっても、回路基板に実装されているROM32を剥がして交換する必要がないため、回路基板を痛めてしまうことや、部品の張替に高いコストがかるといった懸念が無い。
【0088】
以上、この発明の各実施形態について図面を参照して詳述してきたが、具体的な構成は上述の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。例えば、上述の実施形態において説明した各構成は、任意に組み合わせることができる。
【0089】
また、上述の実施形態では、ターゲット側の情報処理装置1Aとホスト側の情報処理装置1BとのそれぞれのUSB Type-Cに対応したUSBコネクタ18をケーブル5で接続する例を説明したが、これに限られるものではない。例えば、USBコネクタ18は、USB Type-C以外の規格(例えば、USB Type-Aなど)に対応したUSBコネクタとしてもよい。また、USBコネクタ18に代えて、HDMI(登録商標)などのようにUSB以外の通信規格に対応したコネクタとしてもよい。また、ケーブル5は、ターゲット側の情報処理装置1Aおよびホスト側の情報処理装置1Bのそれぞれのコネクタの仕様に適合したケーブルであれば任意のケーブルを用いることができる。即ち、ターゲット側の情報処理装置1Aとホスト側の情報処理装置1Bとの通信接続は、任意の通信規格を適用することができる。
【0090】
また、上述の実施形態では、ROM書き込み処理を行う際にEC31とUSBコネクタ18とが切替部21を介して接続された場合、EC31は、UARTを利用して通信を行う例を説明したが、これに限られるものではない。例えば、EC31は、EC31が有する任意の通信機能を利用してもよく、例えばUSB通信の機能を有する場合には、USBコネクタ18を介して接続されるホスト側の情報処理装置1BとUSB通信を行ってもよい。
【0091】
なお、上述した情報処理装置1は、内部にコンピュータシステムを有している。そして、上述した情報処理装置1が備える各構成の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより上述した情報処理装置1が備える各構成における処理を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。このように、プログラムを記憶した記録媒体は、CD-ROM等の非一過性の記録媒体であってもよい。
【0092】
また、記録媒体には、当該プログラムを配信するために配信サーバからアクセス可能な内部又は外部に設けられた記録媒体も含まれる。なお、プログラムを複数に分割し、それぞれ異なるタイミングでダウンロードした後に情報処理装置1が備える各構成で合体される構成や、分割されたプログラムのそれぞれを配信する配信サーバが異なっていてもよい。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【0093】
また、上述した実施形態における情報処理装置1が備える各機能の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。各機能は個別にプロセッサ化してもよいし、一部、又は全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
【0094】
また、上記実施形態の情報処理装置1は、ノートPCに限定されるものではなく、デスクトップ型のPC、タブレット型のPC等であってもよい。また、情報処理装置1は、PC(Personal Computer)に限定されるものではなく、ゲーム装置や、マルチメディア端末、スマートフォンなど等であってもよい。
【符号の説明】
【0095】
1 情報処理装置、11 CPU、12 メインメモリ、13 ビデオサブシステム、14 表示部、15 ストレージ、16 オーディオシステム、17 通信部、18 USBコネクタ、21 切替部、31 EC、32 ROM、33 キーボード、34 電源ボタン、35 電源回路、36 バッテリ、311 UART通信部
【要約】
【課題】外部通信を用いてメモリ内のデータを容易に更新すること。
【解決手段】情報処理装置は、システムの処理を実行するためのプログラムを記憶するメモリと、メモリに記憶されたプログラムに基づいてシステム処理を実行する第1プロセッサと、メモリと接続され、第1プロセッサの動作の開始および停止を制御する第2プロセッサと、外部通信用の接続部と、接続部を介した外部通信の接続先を第1プロセッサまたは第2プロセッサに切り替える切替部と、を備える。第2プロセッサは、第1プロセッサの動作が停止しているときに、接続部を介した外部通信の接続先が第2プロセッサになるように切替部を制御し、接続部を介した外部通信により取得したプログラムの一部または全部をメモリに書き込む書き込み処理を実行する。
【選択図】図1
図1
図2
図3
図4
図5