JP5876017B2 - 周辺機器制御装置および情報処理装置 - Google Patents

周辺機器制御装置および情報処理装置 Download PDF

Info

Publication number
JP5876017B2
JP5876017B2 JP2013180543A JP2013180543A JP5876017B2 JP 5876017 B2 JP5876017 B2 JP 5876017B2 JP 2013180543 A JP2013180543 A JP 2013180543A JP 2013180543 A JP2013180543 A JP 2013180543A JP 5876017 B2 JP5876017 B2 JP 5876017B2
Authority
JP
Japan
Prior art keywords
peripheral device
device control
processor
peripheral
address
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
JP2013180543A
Other languages
English (en)
Other versions
JP2015049675A (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.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Interactive Entertainment Inc
Sony Computer Entertainment Inc
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 Sony Interactive Entertainment Inc, Sony Computer Entertainment Inc filed Critical Sony Interactive Entertainment Inc
Priority to JP2013180543A priority Critical patent/JP5876017B2/ja
Priority to US14/452,818 priority patent/US9727495B2/en
Priority to TW103127104A priority patent/TWI608355B/zh
Priority to CN201410418120.3A priority patent/CN104424135B/zh
Publication of JP2015049675A publication Critical patent/JP2015049675A/ja
Application granted granted Critical
Publication of JP5876017B2 publication Critical patent/JP5876017B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/126Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine and has means for transferring I/O instructions and statuses between control unit and main processor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
    • 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
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Description

本発明は、周辺機器制御装置および周辺機器制御装置を備える情報処理装置に関する。
近年、PC(Personal Computer)やゲーム機等の情報処理装置の高性能化が急速に進行している。これらの情報処理装置は高性能なCPU(Central Processing Unit)を備え、種々の周辺機器との間で大量のデータを転送したり、取得したデータを処理したりするようになってきている。
情報処理装置の高性能化に伴って、これらの装置が実行するプログラムやデータの容量も増大する傾向にあり、例えばネットワークを介してこれらのプログラムやデータをダウンロードするために要する時間も増加する傾向にある。一方で、これらの機器の消費電力を低減することも求められている。
本発明はこうした課題に鑑みてなされたものであり、その目的は、周辺機器の制御に要する電力消費を抑制する技術を提供することにある。
上記課題を解決するために、本発明のある態様は、周辺機器を介したデータの流れを制御する周辺機器制御装置である。この周辺機器制御装置は、1以上の周辺機器の動作を制御可能な周辺機器制御プロセッサと、周辺機器制御プロセッサと、周辺機器制御装置の外部に設けられ1以上の周辺機器の動作を制御するメインプロセッサと、1以上の周辺機器とを接続するバスとを備える。バスは、メインプロセッサと周辺機器制御プロセッサとが、1以上の周辺機器にアクセスするために参照するアドレスを格納し、メインプロセッサが動作している間は、周辺機器制御プロセッサによる周辺機器へのアクセスを禁止する。
本発明の別の態様は、情報処理装置である。この装置は、1以上の周辺機器と、周辺機器を介したデータの流れを制御する周辺機器制御装置と、周辺機器制御装置の外部に設けられ1以上の周辺機器の動作を制御するメインプロセッサとを備える。周辺機器制御装置は、1以上の周辺機器の動作を制御可能な周辺機器制御プロセッサと、周辺機器制御プロセッサ、メインプロセッサ、および1以上の周辺機器とを接続するバスであって、メインプロセッサと周辺機器制御プロセッサとが、1以上の周辺機器にアクセスするために参照するアドレスを格納するバスとを備える。バスは、メインプロセッサが通電されて動作している間は、周辺機器制御プロセッサによる周辺機器へのアクセスを禁止する。
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
本発明によれば周辺機器の制御に要する電力消費を抑制する技術を提供することができる。
実施の形態に係る情報処理システムの一例を示す図である。 実施の形態に係る情報処理装置の内部構成を模式的に示す図である。 実施の形態に係る情報処理装置が取り得る動作モードを示す図である。 実施の形態に係るロールバック攻撃を防止する機能を説明するための図である。 実施の形態に係る周辺機器制御プロセッサが記憶装置におけるその他の記憶領域に参照する際の処理の流れを説明するフローチャートである。 実施の形態に係る制御アドレス格納部のデータ構造を模式的に示す図である。 実施の形態に係る情報処理装置が第1動作モードから他の動作モードに遷移するときの処理の流れを説明するフローチャートである。 実施の形態に係る情報処理装置が取り得る動作モードの遷移図である。 実施の形態に係る情報処理装置のパワーグループを示す図である。
本発明の実施の形態の概要を述べる。本発明の実施の形態に係る情報処理装置は、メインプロセッサとは別に、メインプロセッサよりも電力消費が少ない、周辺機器の制御に特化した周辺機器制御プロセッサを備える。メインプロセッサが動作している間は、メインプロセッサが周辺機器の制御を行うが、メインプロセッサが休止中は周辺機器制御プロセッサが周辺機器の動作を制御する。ソフトウェア処理の負荷は小さいが実行に時間を要するような処理を周辺機器制御プロセッサが担うことにより、周辺機器の制御に要する消費電力を低減することができる。
(情報処理システムの構成)
図1は、実施の形態に係る情報処理システム100の一例を示す図である。実施の形態係る情報処理システム100は、情報処理装置200、表示装置300、およびコントローラ400を備える。
表示装置300は、情報処理装置200が出力する映像を表示する。表示装置300は、例えば液晶モニタや有機EL(Electroluminescence)モニタ、PDP(Plasma Display Panel)、CRT(Cathode Ray Tube)モニタなどを用いて実現できる。なお、表示装置300は情報処理装置200の周辺機器のひとつとして、例えば情報処理装置200のHDMI(登録商標)端子(図示せず)を介して接続する。
情報処理装置200は、後述するメインプロセッサや記憶装置を備え、種々のアプリケーションソフトウェアを実行する。また、情報処理装置200は様々な周辺機器と接続可能である。例えば、情報処理装置200は光学ディスクドライブ202を備え、CD(Compact Disc)、DVD(Digital Versatile Disc)、Blu−ray(登録商標)ディスク等の光学ディスクが格納する情報を読み出すことができる。情報処理装置200はまたUSB(Universal Serial Bus)ポート204を備え、USBを介して図示しないカメラやキーボード等と接続することができる。
情報処理装置200はさらに、図示しないWi−Fi(登録商標)やBluetooth(登録商標)等の近距離無線通信モジュールを備え、対応する周辺機器と無線で通信することもできる。図1に示す例では、情報処理装置200のコントローラ400は、無線で情報処理装置200と接続する。なお、コントローラ400はUSBケーブル等の有線で情報処理装置200と接続することもでき、この場合、有線で送られた電力を用いてコントローラ400内の図示しないバッテリを充電することもできる。
この他、情報処理装置は、図示しないLAN(Local Area Network)ポートを介して有線で、あるいは上述した無線通信モジュールを介して無線でインターネットに接続し、情報をやりとりすることができる。さらに、情報処理装置200はIEEE1394端子、MIDI(Musical Instrument Digital Interface)端子等を介して周辺機器と接続できるようにしてもよい。
図1は情報処理装置200の一例として据え置き型のゲーム機器を示すが、情報処理装置200は据え置き型のゲーム機器に限られず、例えばPCやBlu−ray/DVDレコーダ等であってもよい。また情報処理装置200は据え置き型に限られず、携帯ゲーム機やスマートフォン、携帯電話、電子書籍端末、タブレットPC等の携帯型の電子機器であってもよい。その場合、表示装置300は情報処理装置200と一体となっていてもよい。
図2は、実施の形態に係る情報処理装置200の内部構成を模式的に示す図である。実施の形態に係る情報処理装置200は、少なくとも、メインプロセッサ210と周辺機器制御装置250とを備える。なお図2は、実施の形態に係る情報処理装置200を実現するための構成を示しており、その他の構成は省略している。
本明細書において「周辺機器」は、例えば情報処理装置200とは異なるハードウェアであって、情報処理装置200と接続して使用する機器のことをいう。情報処理装置200の周辺機器は種々存在するが、例えば、上述した表示装置300やコントローラ400、キーボード、光学ディスクドライブ、カメラの他、マウス等のポインティングデバイス、ネットワーク機器、記憶装置、メモリカード、プリンタ、スピーカ等があげられる。
図2において記憶装置258は周辺機器のひとつであり、周辺機器制御装置250や周辺機器を含む情報処理装置200を統括的に制御するためのオペレーティングシステムプログラムや、その他のアプリケーションプログラムおよびデータを格納する。記憶装置258は、例えばHDD(Hard Disk Drive)、SSD(Solid State Drive)等の既知の大容量記憶装置を用いて実現される。また図2において、記憶装置258以外の他の周辺機器は、その他の周辺機器260として総称しているが、その他の周辺機器260には上述した種々の周辺機器の少なくともひとつを含み得る。以下、本明細書において、記憶装置258とその他の周辺機器260とを区別しない場合は、単に周辺機器261と記載する。
周辺機器制御装置250は、周辺機器261とメインプロセッサ210との間のデータの流れを制御する装置であり、サウスブリッジ(Southbridge)と呼ばれることもある。メインプロセッサ210は周辺機器制御装置250の外部に設けられており、周辺機器制御装置250を介して取得したオペレーティングシステムプログラムやアプリケーションプログラムを実行したり、データ等を処理したりする。このため、メインプロセッサ210は周辺機器制御装置250を介して1以上の周辺機器261の動作を制御することができる。メインプロセッサ210による周辺機器261の動作制御の具体例としては、例えば周辺機器261のひとつであるメモリカードが格納するデータを、メインメモリ211(図9に示す)にDMA(Direct Memory Access)転送させる制御である。
周辺機器制御装置250はバス252を備え、バス252は、メインプロセッサ210と、1以上の周辺機器261とを接続する。バス252は周辺機器インタフェース254と接続しており、周辺機器インタフェース254を介して1以上の周辺機器261と接続する。周辺機器制御装置250はまた、1以上の周辺機器261の動作を制御可能な周辺機器制御プロセッサ256も備え、周辺機器制御プロセッサ256はバス252と接続している。周辺機器制御プロセッサ256はメインプロセッサ210とは独立して動作するプロセッサであり、情報処理装置200はメインプロセッサ210が動作していないときでも、周辺機器制御プロセッサ256を動作させて1以上の周辺機器261を制御することができる。
図示はしないが、バス252は、周辺機器261とメインメモリ211との間でデータを転送するために使用されるデータバスや、データ転送元および転送先を定めるためのアドレスを転送するアドレスバス、その他周辺機器261の制御に利用する制御バス等を含む。
例えばメインプロセッサ210や周辺機器制御装置250が、記憶装置258中に格納されたデータをメインメモリ211にDMA転送させる場合、メインプロセッサ210または周辺機器制御装置250は、記憶装置258にアクセスするためのバス252におけるアドレスを用いて記憶装置258を特定する。またメインプロセッサ210または周辺機器制御装置250は、データの転送先を示すメインメモリ211のメモリアドレスを用いて、データの転送先を特定する。これらのアドレスはバス252中のアドレスバスを介して転送され、実際のデータはバス252中のデータバスを介して転送される。
制御アドレス格納部262は、メインプロセッサ210と周辺機器制御プロセッサ256とが、1以上の周辺機器261にアクセスするために参照するバス252のアドレスを格納する。アドレス参照についての詳細は後述するが、メインプロセッサ210や周辺機器制御装置250は、制御アドレス格納部262が格納するアドレスを参照することで、周辺機器261を制御することができる。
(情報処理装置の動作モード)
以下、実施の形態に係る情報処理装置200における周辺機器261の制御に関し、メインプロセッサ210と周辺機器制御プロセッサ256との役割分担について説明し、続いて情報処理装置200の動作モードについて説明する。
メインプロセッサ210は、情報処理装置200の電源が投入され、情報処理装置200が完全に起動しているときに動作するプロセッサである。メインプロセッサ210は周辺機器制御プロセッサ256と比較すると処理能力が高く、負荷の高いソフトウェアプログラムを実行することができる。一方で、メインプロセッサ210は周辺機器制御プロセッサ256と比較して消費電力も大きく、動作中の発熱も大きい。
例えばネットワークを介して情報処理装置200のオペレーティングシステムプログラムやファームウェアプログラムの更新をするとき等、ソフトウェアの実行負荷は高くはないものの長時間の動作となり得るような処理には、メインプロセッサ210は過剰性能である。このような処理にメインプロセッサ210を動作させると、消費電力が大きいのみならず、発熱によってメインプロセッサ210を含む基板の寿命を短くしかねない。
そこで実施の形態に係る情報処理装置200は、上述のような処理をする際には、周辺機器制御装置250を使用する。例えば夜間等のユーザが使用していない時期にメインプロセッサ210には通電せずに周辺機器制御プロセッサ256のみを動作させて、プログラムのダウンロード等の処理を実行する。これにより、メインプロセッサ210の温度サイクル寿命に依存しないサービスが提供可能となり、上述のような処理に要する電力消費を数十分の一に低減することも可能となる。なお、図2においてサブメモリ276は、周辺機器制御プロセッサ256の主記憶として用いられ、メモリインタフェース274およびバス252を介して周辺機器制御プロセッサ256と接続している。サブメモリ276は、例えばSRAM、DRAM等の既知の技術を用いて実現できる。
このように、実施の形態に係る情報処理装置200において、周辺機器制御プロセッサ256は、メインプロセッサ210が動作していないときに、メインプロセッサ210に代わって周辺機器261の動作を制御する。メインプロセッサ210が動作しているときは、周辺機器の制御権はメインプロセッサ210が保持するため、周辺機器制御プロセッサ256は通電されてはいるが特段の処理は行わない。
ここで、周辺機器制御装置250はシステム制御マイコン264を備え、システム制御マイコン264は、休止中のメインプロセッサ210や周辺機器制御プロセッサ256に電源を供給し、これらを起動する。システム制御マイコン264は、メインプロセッサ210および周辺機器制御プロセッサ256への通電、すなわち電力供給を制御して、メインプロセッサ210および周辺機器制御プロセッサ256の起動を制御する。この意味において、システム制御マイコン264は、情報処理装置200におけるシステム制御部として機能する。以下、メインプロセッサ210、周辺機器制御プロセッサ256、およびシステム制御マイコン264の動作状態に応じて定まる情報処理装置200の動作モードについて説明する。
図3は、実施の形態に係る情報処理装置200が取り得る動作モードを示す図である。図3に示すように、実施の形態に係る情報処理装置200が取り得る動作モードは3種類である。
第1動作モードは、メインプロセッサ210が通電されて動作するモードである。第1動作モードにおいては、周辺機器制御プロセッサ256にも通電しているが、特段の処理を行わない待機状態となっている。あるいは、第1動作モードにおいて、周辺機器制御プロセッサ256は、クロック停止かつリセットの休止状態としてもよい。いずれにしても、第1動作モードは、周辺機器制御装置250がいわばI/OブリッジLSI(Large Scale Integration)として動作するブリッジモードである。
第2動作モードは、メインプロセッサ210には通電されず休止し、周辺機器制御プロセッサ256が動作するモードである。第2動作モードは、周辺機器制御装置250がメインプロセッサ210に代わるサブシステムとして動作するサブシステムモードである。第2動作モードでは、周辺機器制御プロセッサ256が周辺機器261の動作を制御し、メインプロセッサ210が電力を消費することはない。
第3動作モードは、メインプロセッサ210および周辺機器制御プロセッサ256に通電されずに休止し、システム制御マイコン264が動作するモードである。システム制御マイコン264は周辺機器制御プロセッサ256と比較してもさらに処理能力が低く、周辺機器261の動作を制御することができない。したがって、第3動作モードは、例えば図示しない電源ボタンがユーザによって投入されること等を契機として、メインプロセッサ210を動作させるためのスタンバイモードである。第3動作モードでは、システム制御マイコン264はリアルタイムクロック266(real-time clock;RTC)を参照してタイマで周辺機器制御プロセッサ256を起動し、周辺機器制御プロセッサ256があらかじめ定められたタスク(例えばネットワークを介したソフトウェアプログラムのダウンロード等)を実行することもできる。なお、システム制御マイコン264は、情報処理装置200の電源および温度管理等を目的として常に動作している。
(バスプロテクション)
上述したとおり、実施の形態に係る情報処理装置200は、消費電力の大きなメインプロセッサ210を用いずに周辺機器制御プロセッサ256を用いて周辺機器261を制御できるので、メインプロセッサ210の温度サイクル寿命に依存しないサービスの提供や、消費電力の抑制が可能となる。しかしながら、周辺機器制御プロセッサ256が周辺機器261を制御可能であることは、悪意のある第三者等が何らかの手段によって周辺機器制御プロセッサ256の制御権を取得すると、周辺機器261も制御され得るということを意味する。その結果、例えばメインプロセッサが周辺機器261を介してデータをメインメモリにDMA転送させている間に、周辺機器制御プロセッサ256が、メインプロセッサが設定したDMAセッティングやディスクリプタ等を書き換えることで、バッファフォーバーフロー攻撃が仕掛けられる危険性がないとは言い切れない。
実施の形態に係る情報処理装置200は、第三者によるバッファオーバーフロー攻撃を防止するために、周辺機器制御プロセッサ256およびシステム制御マイコン264によるバス252を介した周辺機器261へのアクセスを禁止するバスプロテクション機能を備える。以下、実施の形態に係る情報処理装置200のバスプロテクション機能について説明する。
図2において、バス252は、メインプロセッサ210が動作している間、すなわち情報処理装置200が第1動作モードの間は、周辺機器制御プロセッサ256による周辺機器261にアクセスするためのバス252のアドレス(以下、「周辺機器アドレス」という。)のアクセスを禁止する。なお、情報処理装置200が第1動作モードの間であっても、システム制御マイコン264は情報処理装置200の電源および温度管理のための周辺機器261にはアクセス可能である。またバス252は、メインプロセッサ210が休止している間、すなわち情報処理装置200が第2動作モードの間は、周辺機器制御プロセッサ256およびシステム制御マイコン264による周辺機器アドレスへのアクセスを許可する。
このように、バス252は、情報処理装置200の動作モードに応じて周辺機器制御プロセッサ256による周辺機器アドレスへのアクセスの可否を制御する。これにより、仮に周辺機器制御プロセッサ256の制御権が第三者に取得されたとしても、メインプロセッサ210が周辺機器261にDMA転送している間に第三者は周辺機器制御プロセッサ256を介してバッファオーバーフロー攻撃を防止することができる。なお、情報処理装置200の電源および温度管理のための周辺機器261はDMA機能を持たないため、第三者はこれらの周辺機器261を利用したバッファオーバーフロー攻撃はできない。
制御アドレス格納部262が格納する周辺機器アドレスは、制御対象の周辺機器261を一意に特定するために、各周辺機器に一対一に対応づけられたバス252のアドレスである。したがって、どの周辺機器261にどのような周辺機器アドレスを割り当てるかには自由度があり、変更可能である。実施の形態に係る情報処理装置200において、周辺機器アドレスの割り当は、周辺機器261のTA(トランスレーションアドレス)機能を使用して実現される。例えば、メインプロセッサ210や周辺機器制御プロセッサ256が、周辺機器アドレスにおけるアドレスXに対応づけられた周辺機器Xにアクセスするときに、プロセッサが実際にアクセスするアドレスがアドレスAであるとする。また、周辺機器アドレスにおけるアドレスYに対応づけられた別の周辺機器Yにアクセスするときに、プロセッサが実際にアクセスするアドレスがアドレスBであるとする。TA機能は、アドレスAをアドレスXに変換するとともに、アドレスBをアドレスYに変換する既知の技術である。編集時参照アドレス格納部269に格納されている編集時参照アドレスは、TA機能におけるアドレス変換の対応関係を編集するために参照するアドレスである。メインプロセッサ210は、編集時参照アドレスを介して、アドレス変換の対応関係を編集することができる。
周辺機器制御装置250は周辺機器制御プロセッサ256およびシステム制御マイコン264による第2記憶装置参照アドレスの参照の可否を示すアクセス可否指標を格納するアクセス指標格納部268を備えている。メインプロセッサ210がアクセス指標格納部268へのアクセスにより、周辺機器制御プロセッサ256およびシステム制御マイコン264による特定の周辺機器アドレスへのアクセスを禁止したとする。このとき、アクセス指標格納部268へのアクセスが、第三者によって上述したTA機能におけるアドレス変換の対応関係が編集されて書き換えられることにより全く別のアドレス空間に変更されたとする。例えば、上記の例においてアドレスAをアドレスYに変換するとともに、アドレスBをアドレスXに変換するように変換されたとする。このような場合、例えば周辺機器Xのアクセスを禁止しようとしても、アドレス変換の対応関係が変更されると、メインプロセッサ210によるへのアクセス禁止設定は行われていないこととなり、当該周辺機器261を周辺機器制御プロセッサ256によって制御されてしまう事態も起こりうる。
そこでバス252は、メインプロセッサ210による編集時参照アドレスのアクセスは許可する。一方バス252は、周辺機器制御プロセッサ256およびシステム制御マイコン264による編集時参照アドレスへのアクセスを、情報処理装置200の動作モードによらず禁止する。これにより、仮に周辺機器制御プロセッサ256の制御権が第三者に取得されたとしても、周辺機器制御プロセッサ256はアドレス変換の対応関係を変更することはできず、結果として周辺機器制御プロセッサ256によって周辺機器261が制御されることを防止することができる。以下本明細書において、メインプロセッサ210等がTA機能にるアドレス変換を介して周辺機器261にアクセスすることを前提とする。各プロセッサが特定の周辺機器261にアクセスする際に参照するアドレスは、当該周辺機器261と1対1に対応する。このため、TA機能におけるアドレス変換の対応関係を変更することを、単に「周辺機器アドレスと周辺機器との対応関係を変更する」のように記載する。
なお、バス252および制御アドレス格納部262を用いたバス252のアドレスへの参照を許可するか否かの制御は、バスプロテクション機能を有する既知のバスを用いて実現できる。実施の形態に係る情報処理装置200は、バスプロテクション機能を備える既知のバスを利用して、上述したプロセッサ毎の動作モードに応じた周辺機器アドレスへのアクセス制御を実現している。
(オペレーティングシステムプログラムのロールバック攻撃の防止)
以上、実施の形態に係る情報処理装置200のバスプロテクション機能について説明した。バスプロテクション機能を含め、情報処理装置200のセキュリティの少なくとも一部は、記憶装置258が格納するオペレーティングシステムプログラムをメインプロセッサ210が実行することで実現されている。
一般に、オペレーティングシステムプログラムは新機能の追加やセキュリティの向上を目的としてしばしばアップデートされるため、最新のオペレーティングシステムプログラムが最も充実したセキュリティ機能を実現することができる。このため、第三者によって記憶装置258が格納するオペレーティングシステムプログラムをダウングレードされる、いわゆるロールバック攻撃が成功すると、情報処理装置200のセキュリティ機能が低下することも起こり得る。
そこで実施の形態に係る情報処理装置200は、上述したバスプロテクション機能を利用して、オペレーティングシステムプログラムのロールバック攻撃を防止する機能を備える。以下、オペレーティングシステムプログラムのロールバック攻撃の防止について説明する。
図4は、実施の形態に係るロールバック攻撃を防止する機能を説明するための図である。図4に示すように、記憶装置258は、オペレーティングシステムプログラムを格納するオペレーティングシステムの記憶領域258aと、オペレーティングシステムプログラム以外のその他のプログラムやデータを格納するその他の記憶領域258bとのふたつの記憶領域を備える。なお、記憶領域258aと記憶領域258bとは記憶装置258において物理的に異なる領域である。これらの領域は、情報処理装置200の製造者等が、製造時に一度だけ周辺機器制御装置250上に設定可能であり、以後は変更することができない。
記憶装置258は周辺機器261のひとつであり、基本的にメインプロセッサ210や周辺機器制御プロセッサ256、システム制御マイコン264がアクセス可能である。メインプロセッサ210や周辺機器制御プロセッサ256、システム制御マイコン264が記憶装置258にアクセする際には、他の周辺機器261の場合と同様に、制御アドレス格納部262が格納する記憶装置258にアクセスするためのアドレスを参照する。
ここで制御アドレス格納部262は、記憶装置258が記憶するデータのうち、オペレーティングシステムプログラムを格納する記憶領域258aにアクセスするための第1記憶装置参照アドレスと、オペレーティングシステムプログラムを格納する領域を除くその他の記憶領域258bにアクセスするための第2記憶装置参照アドレスとを格納する。ここで制御アドレス格納部262は、記憶装置258が記憶する任意のデータ、すなわち記憶装置258の全記憶領域にアクセス可能な第1記憶装置参照アドレスと、オペレーティングシステムプログラムを格納する領域を除くその他の記憶領域258bにのみアクセス可能な第2記憶装置参照アドレスとを格納する。バス252は、周辺機器制御プロセッサ256およびシステム制御マイコン264による第1記憶装置参照アドレスの参照を、情報処理装置200の動作モードによらず禁止する。
メインプロセッサ210は、第1記憶装置参照アドレスを参照してその他の記憶領域258bにアクセスする。周辺機器制御プロセッサ256およびシステム制御マイコン264は、第2記憶装置参照アドレスを参照してその他の記憶領域258bにアクセスするが、バス252は、周辺機器制御プロセッサ256またはシステム制御マイコン264による第2記憶装置参照アドレスの参照を常に許可するわけではない。
より具体的には、上述したとおり、周辺機器制御装置250は周辺機器制御プロセッサ256およびシステム制御マイコン264による第2記憶装置参照アドレスの参照の可否を示すアクセス可否指標を格納するアクセス指標格納部268を備えている。バス252は、アクセス指標格納部268が格納するアクセス可否指標が、周辺機器制御プロセッサ256による第2記憶装置参照アドレスの参照が可能であることを示しているときは、周辺機器制御プロセッサ256またはシステム制御マイコン264による第2記憶装置参照アドレスの参照を許可する。
一方、バス252は、周辺機器制御プロセッサ256およびシステム制御マイコン264による第2記憶装置参照アドレスの参照が可能でないことを示しているときは、周辺機器制御プロセッサ256またはシステム制御マイコン264による第2記憶装置参照アドレスの参照を禁止する。この意味で、アクセス指標格納部268が格納するアクセス可否指標は、周辺機器制御プロセッサ256およびシステム制御マイコン264による記憶装置258へのアクセスを禁止するアクセスブロッカーとして機能する。
バス252は、周辺機器制御プロセッサ256およびシステム制御マイコン264によるアクセス可否指標の変更を禁止する。これは例えば上述のバスプロテクション機能を用いて実現できる。すなわち、制御アドレス格納部262はアクセス指標格納部268にアクセする際に参照するアドレスを含み、バス252は、メインプロセッサ210にのみそのアドレスの参照を許可する。
メインプロセッサ210は、第1記憶装置参照アドレスを参照して記憶領域258aにアクセスする前に、アクセス指標格納部268が格納するアクセス可否指標を参照不可に変更する。メインプロセッサ210はまた、記憶領域258aへのアクセスが終了した後に、アクセス指標格納部268が格納するアクセス可否指標を参照可能に変更する。このため、周辺機器制御プロセッサ256およびシステム制御マイコン264は、メインプロセッサ210が記憶領域258aにアクセスしているときは、記憶領域258aのみならず記憶領域258bにもアクセスすることができない。
図5は、実施の形態に係る周辺機器制御プロセッサ256が記憶装置258におけるその他の記憶領域258bに参照する際の処理の流れを説明するフローチャートである。本フローチャートにおける処理は、周辺機器制御プロセッサ256が第2記憶装置参照アドレスを参照する際に開始する。
バス252は、周辺機器制御プロセッサ256による第2記憶装置参照アドレスへの参照要求があったとき、アクセス指標格納部268が格納するアクセス可否指標を確認する(S2)。アクセス可否指標が、周辺機器制御プロセッサ256による第2記憶装置参照アドレスの参照が可能であることを示している場合(S4のY)、バス252は、周辺機器制御プロセッサ256による第2記憶装置参照アドレスの参照を許可する(S6)。
アクセス可否指標が、周辺機器制御プロセッサ256による第2記憶装置参照アドレスの参照が可能であることを示していない場合(S4のN)、バス252は、周辺機器制御プロセッサ256による第2記憶装置参照アドレスの参照を禁止する(S8)。
これにより、仮に周辺機器制御プロセッサ256の制御権が第三者に取得されたとしても、メインプロセッサ210が記憶領域258aにアクセス中に第2記憶装置参照アドレスを介して記憶領域258aにアクセスして、オペレーティングシステムプログラムをダウングレードするように記憶領域258aを書き換えることが防止される。また上述したとおり周辺機器制御プロセッサ256は第1記憶装置参照アドレスを参照できないので、第1記憶装置参照アドレスを介して周辺機器制御プロセッサ256によってオペレーティングシステムプログラムがロールバックされることも防止できる。
なお、オペレーティングシステムプログラムを格納する記憶装置とは別に、新たな記憶装置を設けてオペレーティングシステムプログラム以外の他のプログラムやデータを格納するようにしてバスプロテクション機能を用いれば、同様のロールバック防止機能を実現できる。すなわち、オペレーティングシステムプログラムを格納する記憶装置はメインプロセッサ210にのみアクセス可能にし、周辺機器制御プロセッサ256やシステム制御マイコン264によるアクセスを禁止する方法である。この方法と比較して、実施の形態に係る情報処理装置200は、記憶装置258単体でオペレーティングシステムプログラムのロールバック攻撃の防止を実現でき、また、記憶装置258自体は汎用のデバイスで足りる。このため、記憶装置を複数設ける場合や特殊な記憶装置を用意する場合と比較してコストを抑制でき、また汎用性を向上することもできる。
(制御アドレス格納部のデータ構造)
図6は、実施の形態に係る制御アドレス格納部262のデータ構造を模式的に示す図であり、情報処理装置200の動作モードと各プロセッサによるアドレス参照の可否をまとめた図である。図6は、バス252を用いて上述したバスプロテクション機能、およびロールバック攻撃の防止を実現するための、アドレス参照の可否の構成図である。
重複した記載を避けるために全ての説明は省略するが、図6、例えばメインプロセッサ210による編集時参照アドレスの参照は許可するが、周辺機器制御プロセッサ256およびシステム制御マイコン264による編集時参照アドレスの参照を、情報処理装置200の動作モードによらず禁止することを示している。また図6において「条件付き可」は、周辺機器制御プロセッサ256による第2記憶装置参照アドレスの参照が可能であることを示している場合にのみ、周辺機器制御プロセッサ256またはシステム制御マイコン264による第2記憶装置参照アドレスの参照を許可することを示す。
(動作モードの遷移)
以上、実施の形態に係る情報処理装置200のバスプロテクション機能、およびロールバック攻撃の防止について説明した。次に、実施の形態に係る情報処理装置200の動作モードの遷移について説明する。
情報処理装置200が据え置き型のゲーム機の場合、情報処理装置200は図示しない差し込みプラグを備える。差し込みプラグが電源を供給するためのコンセント(electrical outlet)に差し込まれている場合、情報処理装置200は上述した第1動作モードから第3動作モードまでの3つの動作モードを取り得る。
情報処理装置200のユーザが、差し込みプラグをコンセントから抜いた状態からコンセントに差し込み、かつ情報処理装置200の電源ボタンを押す前においては、情報処理装置200は上述した第2動作モードまたは第3動作モードとなる。より具体的には、図2に示すように、情報処理装置200内の周辺機器制御装置250は、メインプロセッサ210の休止時において周辺機器制御プロセッサ256への通電の可否を示す通電可否指標を格納する通電指標格納部を備えており、この通電可否指標に応じて情報処理装置200は第2動作モードまたは第3動作モードとなる。
差し込みプラグがコンセントに差し込まれると、システム制御マイコン264に電力が供給されてシステム制御マイコン264が動作状態となり、情報処理装置200は第3動作モードとなる。このとき、通電指標格納部270が格納する通電可否指標が周辺機器制御プロセッサ256への通電を許可することを示している場合、システム制御マイコン264は周辺機器制御プロセッサ256に電力を供給する。この結果周辺機器制御プロセッサ256は動作状態となり、情報処理装置200は第3動作モードから第2動作モードに遷移する。
上述したとおり、情報処理装置200が第2動作モードの場合、周辺機器制御プロセッサ256は周辺機器を制御可能である。これにより、メインプロセッサ210を起動することなくプログラムのダウンロード等の処理を実行することが可能となる。また、例えば周辺機器としてカメラ等を動作させることができるので、ユーザの顔やユーザのジェスチャを撮像することもできる。周辺機器制御プロセッサ256は撮像したユーザの顔やジェスチャを解析して、ユーザ認証やメインプロセッサ210の起動等の処理を実行することも可能となり、ユーザビリティを向上させることもできる。これは既知の認証技術やジェスチャ認識技術を利用することで実現できる。
これに対し、通電指標格納部270が格納する通電可否指標が周辺機器制御プロセッサ256への通電を許可することを示していない場合、差し込みプラグがコンセントに差し込まれても、システム制御マイコン264は周辺機器制御プロセッサ256に電力を供給しない。このため、情報処理装置200は第3動作モードを維持する。周辺機器制御プロセッサ256はメインプロセッサ210と比較すると消費電力は少ないが、システム制御マイコン264と比較すると動作に電力を要する。したがって、ユーザが情報処理装置200の待機電力を抑制したい場合には、情報処理装置200が第2動作モードとなることを禁止することにより、さらなる消費電力の抑制が可能となる。これは例えば情報処理装置200がバッテリ等で駆動する携帯型の端末である場合等に、電力消費を抑えてバッテリの持ちをよくする上でも有用である。
情報処理装置200が第2動作モードまたは第3動作モードであるときに、ユーザが情報処理装置200の電源ボタンを押下することを契機として、システム制御マイコン264はメインプロセッサ210に電力を供給するとともに、ブートROM(Read Only Memory)272からオペレーティングシステムプログラムを読み出して起動するためのプログラムコードを読み出してメインプロセッサ210に供給する。
メインプロセッサ210は電力の供給を受けて起動すると、ブートROM272に格納されたプログラムコードを実行して、記憶装置258中の記憶領域258aからオペレーティングシステムプログラムを読み出す。情報処理装置200が第2動作モードのときに電源ボタンが押下された場合、オペレーティングシステムが起動するまでの間は、一時的にメインプロセッサ210と周辺機器制御プロセッサとが同時に動作する期間である。上述したオペレーティングシステムプログラムのロールバック攻撃の防止技術は、オペレーティングシステムの起動時のメインプロセッサ210と周辺機器制御プロセッサ256とが同時に動作する期間において特に有効である。
オペレーティングシステムが起動し、メインプロセッサ210が周辺機器261の制御権を掌握すると、周辺機器制御プロセッサ256は通電されているものの待機状態となり、情報処理装置200は第1動作モードに遷移する。
通電指標格納部270が格納する通電可否指標は、システム制御マイコン264が参照することができるが、変更はメインプロセッサ210にのみが許可される。これは上述したバスプロテクション機能を用いて実現できる。ユーザは情報処理装置200が第1動作モードのとき、GUI(Graphical User Interface)等で構成された図示しないシステムメニュー等を介して、通電可否指標を変更することができる。
図7は、実施の形態に係る情報処理装置200が第1動作モードから他の動作モードに遷移するときの処理の流れを説明するフローチャートである。
情報処理装置200が第1動作モードのときに、ユーザによって明示的に終了の指示がなされるか、またはあらかじめ定められた終了時刻となると、メインプロセッサ210はシステム終了の指示を取得する(S10)。システム制御マイコン264はメインプロセッサ210からの指示により、通電指標格納部270が格納する通電可否指標を確認する(S12)。
通電可否指標が周辺機器制御プロセッサ256への通電を許可する場合(S14のY)、システム制御マイコン264は、周辺機器制御プロセッサ256への通電を維持する(S16)。この結果、情報処理装置200は第2動作モードに遷移する(S18)。通電可否指標が周辺機器制御プロセッサ256への通電を許可しない場合(S14のN)、システム制御マイコン264は、周辺機器制御プロセッサ256への通電を停止する(S20)。この結果、情報処理装置200は第3動作モードに遷移する(S22)。情報処理装置200が第1動作モードから第2動作モードまたは第3動作モードに遷移すると、本フローチャートにおける処理は終了する。
図8は、実施の形態に係る情報処理装置200が取り得る動作モードの遷移図である。上述したとおり、第1動作モードST1へは、第2動作モードST2および第3動作モードST3から遷移可能である。また、第1動作モードST1から、第2動作モードST2および第3動作モードST3へ遷移することができる。
第3動作モードST3から第2動作モードST2へ遷移することはできるが、第2動作モードST2から第3動作モードST3に遷移することはない。これは、通電指標格納部270が格納する通電可否指標の変更はメインプロセッサ210にのみが許可されることに対応する。すなわち、情報処理装置200が第2動作モードまたは第3動作モードであるときに、ユーザの指示によって周辺機器制御プロセッサ256への通電を開始したり終了したりすることはできないことを意味する。
周辺機器制御プロセッサ256は例えば夜間等のユーザが使用していない時期にメインプロセッサ210に代わってプログラムのダウンロード等の処理を実行する、いわば裏方的な役割のプロセッサである。したがって、周辺機器制御プロセッサ256の存在をユーザに知らしめることはユーザに混乱を与える可能性もある。したがって、周辺機器制御プロセッサ256はユーザから隠す方がユーザビリティを向上させる点で効果があり、またセキュリティの観点からも好ましい。
(パワーグループ)
以上、図8を参照して、実施の形態に係る情報処理装置200の動作モードの遷移について説明した。続いて、情報処理装置200の動作モードを、情報処理装置200の電源管理の観点から説明する。
図9は、実施の形態に係る情報処理装置200のパワーグループを示す図であり、図2に示す情報処理装置200の内部構成を電源管理の観点から複数のグループに分類した状態を模式的に示す図である。図9に示すように、実施の形態に係る情報処理装置200は、全体として第1パワーグループ10、第2パワーグループ20、および第3パワーグループ30の複数のパワーグループに分類される。ここで「パワーグループ」とは、例えば情報処理装置200における電源管理、すなわち電力供給の単位を意味する。
第1パワーグループ10は、メインプロセッサ210、およびメインメモリ211、GPU212(Graphics Processing Unit212)を含む、情報処理装置200全体を含むグループである。上述した第1動作モードにおいては、第1パワーグループの構成要素の全てに電力が供給される。なお上述したように、第1動作モードにおいては、周辺機器制御プロセッサ256にも通電しているが、特段の処理を行わない待機状態となっていか、あるいは、第1動作モードにおいて、周辺機器制御プロセッサ256は、クロック停止かつリセットの休止状態となっている。したがって、第1パワーグループにおいて実質的に駆動電力を消費するプロセッサはメインプロセッサ210である。
第2パワーグループ20は、第1パワーグループの構成要素のから、メインメモリ211、メインプロセッサ210、およびGPU212を除いたグループである。上述した第2動作モードにおいては第2パワーグループの構成要素に電力が供給されるが、駆動電圧の大きなメインプロセッサ210には電力が供給されない。このため、は第2パワーグループの駆動電力は、第1パワーグループの駆動電力よりも小さくなる。
第3パワーグループ30は、システム制御マイコン264およびブートROM272を構成要素に含むグループである。上述した第3動作モードでは、第3パワーグループ30野構成要素に電力が供給され、他の構成要素には電力は供給されない。システム制御マイコン264は周辺機器制御プロセッサ256よりもさらに駆動電力が小さいため、第3パワーグループ30は、3つのパワーグループの中で最も駆動電力が小さいパワーグループである。
このように、実施の形態に係る情報処理装置200は、情報処理装置200の動作目的、すなわち動作モードに応じて異なるパワーグループを選択して電力を供給する。これにより、情報処理装置200のく動電力が動作モードに応じてシステム全体として適切に変更されるため、電力消費の低減が実現できる。
以上説明したように、実施の形態に係る情報処理装置200によれば、周辺機器261の制御に要する電力消費を抑制する技術を提供することができる。
特に、メインプロセッサ210の温度サイクル寿命に依存しないサービスが提供可能となり、上述のような処理に要する電力消費を数十分の一に低減することも可能となる。また、仮に周辺機器制御プロセッサ256の制御権が第三者に取得されたとしても、メインプロセッサ210が周辺機器261にDMA転送している間に第三者は周辺機器制御プロセッサ256を介してバッファオーバーフロー攻撃を防止することができる。さらに、仮に周辺機器制御プロセッサ256の制御権が第三者に取得されたとしても、周辺機器制御プロセッサ256によってオペレーティングシステムプログラムがロールバックされることも防止できる。加えて、ロールバック防止機能は、オペレーティングシステムプログラムとそれ以外のデータとを同一の記憶装置258に格納する場合で機能するため、記憶装置を複数設ける場合や特殊な記憶装置を用意する場合と比較してコストを抑制でき、また汎用性を向上することもできる。
(変形例)
以上、本発明を実施の形態をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
上記の説明では、仮に周辺機器制御プロセッサ256の制御権が第三者に取得されたとしても、メインプロセッサ210の制御権が第三者に取得されることを防止する技術について説明した。これに加えて、周辺機器制御プロセッサ256の制御権が第三者に取得されることが抑制されるように構成してもよい。
具体的には、周辺機器制御プロセッサ256に実行させるプログラムコードにデジタル署名を付しておき、プログラムコードの実行前に整合性(integrity;インテグリティ)の確認を行うようにしてもよい。周辺機器制御プロセッサ256は、整合性が崩れているプログラムコードの実行を禁止することにより、第三者が任意のプログラムコードを周辺機器制御プロセッサ256に実行させることを抑制できる。
100 情報処理システム、 200 情報処理装置、 202 光学ディスクドライブ、 204 USBポート、 210 メインプロセッサ、 211 メインメモリ、 212 GPU、 250 周辺機器制御装置、 252 バス、 254 周辺機器インタフェース、 256 周辺機器制御プロセッサ、 258 記憶装置、 260 その他の周辺機器、 262 制御アドレス格納部、 264 システム制御マイコン、 266 リアルタイムクロック、 268 アクセス指標格納部、 269 編集時参照アドレス格納部、 212 GPU、 270 通電指標格納部、 272 ブートROM、274 メモリインタフェース、 276 サブメモリ、 300 表示装置、 400 コントローラ。

Claims (7)

  1. 周辺機器を介したデータの流れを制御する周辺機器制御装置であって、
    1以上の周辺機器の動作を制御可能な周辺機器制御プロセッサと、
    前記周辺機器制御プロセッサと、前記周辺機器制御装置の外部に設けられ前記1以上の周辺機器の動作を制御するメインプロセッサと、前記1以上の周辺機器とを接続するバスと、
    記メインプロセッサと前記周辺機器制御プロセッサとが、前記1以上の周辺機器にアクセスするために参照するアドレスを格納する制御アドレス格納部と、
    前記メインプロセッサおよび前記周辺機器制御プロセッサへの通電を制御して、前記メインプロセッサおよび前記周辺機器制御プロセッサの起動を制御するシステム制御部と、
    前記メインプロセッサの休止時における前記周辺機器制御プロセッサへの通電の可否を示す通電可否指標を格納する通電指標格納部とを備え、
    前記バスは、前記メインプロセッサが動作している間は、前記周辺機器制御プロセッサによる周辺機器へのアクセスを禁止し、
    前記システム制御部は、前記メインプロセッサが休止する場合に前記通電指標格納部が格納する通電可否指標を参照し、当該通電可否指標が前記周辺機器制御プロセッサへの通電を許可する場合、前記周辺機器制御プロセッサへの通電を維持することを特徴とする周辺機器制御装置。
  2. 前記バスは、前記メインプロセッサが休止している間は、前記周辺機器制御プロセッサによる周辺機器へのアクセスを許可することを特徴とする請求項1に記載の周辺機器制御装置。
  3. 前記周辺機器は、前記メインプロセッサと前記周辺機器制御プロセッサとがアクセス可能なデータを記憶するための記憶装置を備え、
    前記記憶装置が記憶するデータは、前記メインプロセッサが実行することによって、前記周辺機器制御装置および前記1以上の周辺機器の動作を制御するためのオペレーティングシステムプログラムを含み、
    前記制御アドレス格納部は、
    前記記憶装置が記憶する任意のデータにアクセスするための第1記憶装置参照アドレスと、
    前記記憶装置が記憶するデータのうち、前記オペレーティングシステムプログラムを格納する領域を除く領域にアクセスするための第2記憶装置参照アドレスとを格納し、
    前記バスは、前記周辺機器制御プロセッサによる前記第1記憶装置参照アドレスの参照を禁止することを特徴とする請求項1または2に記載の周辺機器制御装置。
  4. 前記周辺機器制御プロセッサによる前記第2記憶装置参照アドレスの参照の可否を示すアクセス可否指標を格納するアクセス指標格納部をさらに備え、
    前記バスは、
    前記アクセス指標格納部が格納するアクセス可否指標が、前記周辺機器制御プロセッサによる前記第2記憶装置参照アドレスの参照が可能であることを示しているときは、前記周辺機器制御プロセッサによる前記第2記憶装置参照アドレスの参照を許可し、
    前記周辺機器制御プロセッサによる前記第2記憶装置参照アドレスの参照が可能でないことを示しているときは、前記周辺機器制御プロセッサによる前記第2記憶装置参照アドレスの参照を禁止することを特徴とする請求項3に記載の周辺機器制御装置。
  5. 前記アクセス指標格納部は、前記周辺機器制御プロセッサによる前記アクセス可否指標の変更を禁止することを特徴とする請求項4に記載の周辺機器制御装置。
  6. 前記制御アドレス格納部は、当該制御アドレス格納部が格納するアドレスと周辺機器との対応関係を変更するときに参照する編集時参照アドレスを格納し、
    前記バスは、前記メインプロセッサによる前記編集時参照アドレスの参照を許可するとともに、前記周辺機器制御プロセッサによる前記編集時参照アドレスの参照を禁止することを特徴とする請求項1から5のいずれかに記載の周辺機器制御装置。
  7. 1以上の周辺機器と、
    前記周辺機器を介したデータの流れを制御する周辺機器制御装置と、
    前記周辺機器制御装置の外部に設けられ前記1以上の周辺機器の動作を制御するメインプロセッサとを備え、
    前記周辺機器制御装置は、
    前記1以上の周辺機器の動作を制御可能な周辺機器制御プロセッサと、
    前記周辺機器制御プロセッサ、前記メインプロセッサ、および前記1以上の周辺機器とを接続するバスと、
    前記メインプロセッサと前記周辺機器制御プロセッサとが、前記1以上の周辺機器にアクセスするために参照するアドレスを格納する制御アドレス格納部と、
    前記メインプロセッサおよび前記周辺機器制御プロセッサへの通電を制御して、前記メインプロセッサおよび前記周辺機器制御プロセッサの起動を制御するシステム制御部と、
    前記メインプロセッサの休止時における前記周辺機器制御プロセッサへの通電の可否を示す通電可否指標を格納する通電指標格納部とを備え、
    前記バスは、前記メインプロセッサが通電されて動作している間は、前記周辺機器制御プロセッサによる周辺機器へのアクセスを禁止し、
    前記システム制御部は、前記メインプロセッサが休止する場合に前記通電指標格納部が格納する通電可否指標を参照し、当該通電可否指標が前記周辺機器制御プロセッサへの通電を許可する場合、前記周辺機器制御プロセッサへの通電を維持することを特徴とする情報処理装置。
JP2013180543A 2013-08-30 2013-08-30 周辺機器制御装置および情報処理装置 Active JP5876017B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2013180543A JP5876017B2 (ja) 2013-08-30 2013-08-30 周辺機器制御装置および情報処理装置
US14/452,818 US9727495B2 (en) 2013-08-30 2014-08-06 Peripheral equipment control device and information processing
TW103127104A TWI608355B (zh) 2013-08-30 2014-08-07 周邊設備控制裝置及資訊處理裝置
CN201410418120.3A CN104424135B (zh) 2013-08-30 2014-08-22 外围设备控制装置和信息处理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013180543A JP5876017B2 (ja) 2013-08-30 2013-08-30 周辺機器制御装置および情報処理装置

Publications (2)

Publication Number Publication Date
JP2015049675A JP2015049675A (ja) 2015-03-16
JP5876017B2 true JP5876017B2 (ja) 2016-03-02

Family

ID=52584874

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013180543A Active JP5876017B2 (ja) 2013-08-30 2013-08-30 周辺機器制御装置および情報処理装置

Country Status (4)

Country Link
US (1) US9727495B2 (ja)
JP (1) JP5876017B2 (ja)
CN (1) CN104424135B (ja)
TW (1) TWI608355B (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10754988B2 (en) * 2016-08-30 2020-08-25 Winbond Electronics Corporation Anti-rollback version upgrade in secured memory chip
CN110149308B (zh) * 2019-04-03 2020-10-27 特斯联(北京)科技有限公司 一种基于网络数据库的外接设备管理方法、装置及系统
CN114460868A (zh) * 2020-11-10 2022-05-10 中兴通讯股份有限公司 一种终端设备分级管理方法及系统
US11940933B2 (en) * 2021-03-02 2024-03-26 Mellanox Technologies, Ltd. Cross address-space bridging

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69118466T2 (de) * 1990-08-31 1996-10-31 Advanced Micro Devices Inc Übertragungssystem zwischen einer Rechnervorrichtung und Peripheriegeräten
US5857117A (en) * 1995-12-22 1999-01-05 Intel Corporation Apparatus and method for multiplexing integrated device electronics circuitry with an industry standard architecture bus
US6711691B1 (en) * 1999-05-13 2004-03-23 Apple Computer, Inc. Power management for computer systems
US6748548B2 (en) * 2000-12-29 2004-06-08 Intel Corporation Computer peripheral device that remains operable when central processor operations are suspended
TWI325564B (en) * 2003-09-03 2010-06-01 Via Tech Inc Inquiring apparatus and method thereof
JP2005235043A (ja) * 2004-02-23 2005-09-02 Fujitsu Ltd 情報処理装置及び方法
JP2007094528A (ja) * 2005-09-27 2007-04-12 Canon Inc マルチプロセッサシステムのメモリ使用方法
JP2007141166A (ja) * 2005-11-22 2007-06-07 Sony Corp 情報処理装置、制御方法及び制御プログラム
TW200721013A (en) * 2005-11-25 2007-06-01 Via Tech Inc Power source management apparatus of multi-processor system and method thereof
CN101046783A (zh) * 2007-04-29 2007-10-03 华为技术有限公司 外围设备运行方法、外围设备及主机
CN101051279B (zh) 2007-05-15 2010-04-14 华为技术有限公司 外围设备运行方法、外围设备及主机
US7870323B2 (en) * 2007-12-26 2011-01-11 Marvell World Trade Ltd. Bridge circuit for interfacing processor to main memory and peripherals

Also Published As

Publication number Publication date
TWI608355B (zh) 2017-12-11
JP2015049675A (ja) 2015-03-16
CN104424135B (zh) 2018-04-20
US9727495B2 (en) 2017-08-08
US20150067211A1 (en) 2015-03-05
CN104424135A (zh) 2015-03-18
TW201520769A (zh) 2015-06-01

Similar Documents

Publication Publication Date Title
JP5481308B2 (ja) データ制御装置及びプログラム
EP2851807A1 (en) Method and system for supporting resource isolation under multi-core architecture
JP2008146566A5 (ja)
JP6399916B2 (ja) 情報処理装置およびその制御方法
JP2011100431A (ja) 仮想マシン制御装置及び仮想マシン制御方法
JP5876017B2 (ja) 周辺機器制御装置および情報処理装置
US9043806B2 (en) Information processing device and task switching method
JP2012256223A (ja) 情報処理装置および情報処理方法
JP2017519294A (ja) フラッシュメモリベースストレージデバイスのマルチホスト電力コントローラ(mhpc)
JP4635092B2 (ja) 情報処理装置および記憶装置制御方法
JP4966422B1 (ja) 情報処理装置及びデータ保護方法
JP2009020555A (ja) スワップ処理装置
JP2013007974A (ja) 電子機器、電子機器の制御方法、電子機器の制御プログラム
KR100994723B1 (ko) 시스템에서 초기 구동시간을 단축시키는 선택적 서스펜드 리쥼 방법 및 그 기록매체
TWI476693B (zh) 在電子裝置之多個作業系統間進行資訊交換之方法
US20180343302A1 (en) Data management circuit with network functions and network-based data management method
JP2008243049A (ja) 情報処理装置および同装置のメモリ制御方法
JP2013101710A (ja) 情報処理装置及び起動制御方法
US20170083235A1 (en) Device capable of using external volatile memory and device capable of releasing internal volatile memory
JP2011013836A (ja) メモリ配置管理装置及びマイクロプロセッサ
JP2011008753A (ja) 記憶装置の隠し記憶領域に記憶されたファイルの実行方法及び装置
JP2017084014A (ja) 情報処理装置
JP2016537751A (ja) コンピューティングデバイスにおける消費電力の低減
JP2013246646A (ja) 情報処理装置及びデータ読出方法
JP2009301504A (ja) コンピュータ、記録媒体および情報処理方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150617

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150623

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150807

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: 20160112

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160120

R150 Certificate of patent or registration of utility model

Ref document number: 5876017

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250