(57)【要約】【課題】低コストで、コンピュータへの不正アクセス等の不正行為を防止することのできるプロセッサを提供する。【解決手段】メモリ２０に格納された情報を利用して演算を行う演算手段１２と、演算手段１２と一体に形成され、メモリ２０を認証するためのメモリ認証用情報を保持するメモリ認証用情報保持手段１６と、メモリ２０から、当該メモリ２０を認証するためのメモリ認証用情報を取得するメモリ認証用情報取得手段１４と、メモリ認証用情報取得手段１４が取得したメモリ認証用情報と、メモリ認証用情報保持手段１６が保持するメモリ認証用情報とを比較して、メモリを認証するメモリ認証手段１４と、メモリ認証手段１４による認証に成功した場合に、メモリへのアクセスを許可するメモリアクセス制御手段１４とを備えた。【選択図】        図１
2006309688.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性記憶素子に格納された情報を利用して演算を行う演算手段と、
前記演算手段と一体に形成され、前記不揮発性記憶素子を認証するためのメモリ認証用情報を保持するプロセッサ側メモリ認証用情報保持手段と、
前記不揮発性記憶素子と一体に形成され、当該不揮発性記憶素子を認証するためのメモリ認証用情報を保持するメモリ側メモリ認証用情報保持手段から前記メモリ認証用情報を取得するメモリ認証用情報取得手段と、
前記メモリ認証用情報取得手段が取得した前記メモリ認証用情報と、前記プロセッサ側メモリ認証用情報保持手段が保持する前記メモリ認証用情報とを比較して、前記不揮発性記憶素子を認証するメモリ認証手段と、
前記メモリ認証手段による認証に成功した場合に、前記不揮発性記憶素子へのアクセスを許可するメモリアクセス制御手段と
を備えたことを特徴とするプロセッサ。
【請求項２】
前記演算手段に電力を供給する電源からの電力供給開始を検出する電力供給開始検出手段をさらに備え、
前記メモリ認証用情報取得手段は、前記電力供給開始検出手段が電力供給開始を検出したときに、前記メモリ認証用情報を取得することを特徴とする請求項１に記載のプロセッサ。
【請求項３】
当該プロセッサは、前記演算手段に電力を供給する電源と、前記電源から前記演算手段への電力の供給が停止した場合に、前記演算手段に電力を供給する蓄電装置とからの電力により動作し、
前記電源からの電力供給停止のタイミングを検出する電力供給停止検出手段と、
前記電力供給停止検出手段が検出した前記電力供給停止のタイミングよりも前のタイミングにおいて、前記メモリ認証用情報を生成するメモリ認証用情報生成手段と、
前記電力供給停止検出手段が検出した前記電力供給停止のタイミングよりも前のタイミングにおいて、前記メモリ認証用情報生成手段が生成した前記メモリ認証用情報を前記メモリ側メモリ認証用情報保持手段に送る転送手段と
をさらに備え、
前記プロセッサ側メモリ認証用情報保持手段は、前記メモリ認証用情報生成手段が生成した前記メモリ認証用情報を保持することを特徴とする請求項１に記載のプロセッサ。
【請求項４】
当該プロセッサは、前記演算手段に電力を供給する電源と、前記電源から前記演算手段への電力の供給が停止した場合に、前記演算手段に電力を供給する蓄電装置とからの電力により動作し、
前記電源からの電力供給停止のタイミングを検出する電力供給停止検出手段と、
前記電力供給停止検出手段が検出した前記電力供給停止のタイミングよりも後のタイミングにおいて、前記メモリ認証用情報を生成するメモリ認証用情報生成手段と、
前記電力供給停止検出手段が検出した前記電力供給停止のタイミングよりも後のタイミングにおいて、前記メモリ認証用情報生成手段が生成した前記メモリ認証用情報を前記メモリ側メモリ認証用情報保持手段に送る転送手段と
をさらに備え、
前記プロセッサ側メモリ認証用情報保持手段は、前記メモリ認証用情報生成手段が生成した前記メモリ認証用情報を保持することを特徴とする請求項１に記載のプロセッサ。
【請求項５】
前記メモリ認証用情報生成手段は、予め定められた時間が経過する毎に、前記メモリ認証用情報を生成することを特徴とする請求項３に記載のプロセッサ。
【請求項６】
前記メモリ認証用情報生成手段は、前記演算手段による処理が行われていないときに、前記メモリ認証用情報を生成することを特徴とする請求項３に記載のプロセッサ。
【請求項７】
前記メモリ認証用情報生成手段は、乱数発生器であることを特徴とする請求項３に記載のプロセッサ。
【請求項８】
当該プロセッサは、前記演算手段に電力を供給する電源と、前記電源から前記演算手段への電力の供給が停止した場合に、前記演算手段に電力を供給する蓄電装置とからの電力により動作し、
前記電源からの電力供給停止のタイミングを検出する電力供給停止検出手段をさらに備え、
前記メモリ認証用情報取得手段は、さらに前記電力供給停止検出手段が検出した前記電力供給停止のタイミングよりも前のタイミングにおいて、前記メモリ側メモリ認証用情報保持手段から前記メモリ認証用情報を取得し、
前記プロセッサ側メモリ認証用情報保持手段は、前記メモリ認証用情報取得手段が取得した前記メモリ認証用情報を保持することを特徴とする請求項１に記載のプロセッサ。
【請求項９】
当該プロセッサは、前記演算手段に電力を供給する電源と、前記電源から前記演算手段への電力の供給が停止した場合に、前記演算手段に電力を供給する蓄電装置とからの電力により動作し、
前記電源からの電力供給停止のタイミングを検出する電力供給停止検出手段をさらに備え、
前記メモリ認証用情報取得手段は、さらに前記電力供給停止検出手段が検出した前記電力供給停止のタイミングよりも後のタイミングにおいて、前記メモリ側メモリ認証用情報保持手段から前記メモリ認証用情報を取得し、
前記プロセッサ側メモリ認証用情報保持手段は、前記メモリ認証用情報取得手段が取得した前記メモリ認証用情報を保持することを特徴とする請求項１に記載のプロセッサ。
【請求項１０】
前記プロセッサ側メモリ認証用情報保持手段は、不揮発性記憶素子であることを特徴とする請求項１から９のいずれか一項に記載のプロセッサ。
【請求項１１】
演算手段が利用する情報を保持する不揮発性記憶素子と、
前記不揮発性記憶素子と一体に形成され、前記演算手段を認証するためのプロセッサ認証用情報を保持するメモリ側プロセッサ認証用情報保持手段と、
前記演算手段と一体に形成され、当該演算手段を認証するためのプロセッサ認証用情報を保持するプロセッサ側プロセッサ認証用情報保持手段から前記プロセッサ認証用情報を取得するプロセッサ認証用情報取得手段と、
前記プロセッサ認証用情報取得手段が取得した前記プロセッサ認証用情報と、前記メモリ側プロセッサ認証用情報保持手段が保持する前記プロセッサ認証用情報とを比較して、前記演算手段を認証するプロセッサ認証手段と、
前記プロセッサ認証手段による認証に成功した場合に、前記演算手段からのアクセスを許可するプロセッサアクセス制御手段と
を備えたことを特徴とするメモリ。
【請求項１２】
前記不揮発性記憶素子に電力を供給する電源からの電力供給開始を検出する電力供給開始検出手段をさらに備え、
前記プロセッサ認証用情報取得手段は、前記電力供給開始検出手段が電力供給開始を検出したときに、前記プロセッサ認証用情報を取得することを特徴とする請求項１１に記載のメモリ。
【請求項１３】
当該メモリは、前記不揮発性記憶素子に電力を供給する電源と、前記電源から前記不揮発性記憶素子への電力の供給が停止した場合に、前記不揮発性記憶素子に電力を供給する蓄電装置とからの電力により動作し、
前記電源からの電力供給停止のタイミングを検出する電力供給停止検出手段と、
前記電力供給停止検出手段が検出した前記電力供給停止のタイミングよりも前のタイミングにおいて、前記プロセッサ認証用情報を生成するプロセッサ認証用情報生成手段と、
前記電力供給停止検出手段が検出した前記電力供給停止のタイミングよりも前のタイミングにおいて、前記プロセッサ認証用情報生成手段が生成した前記プロセッサ認証用情報を前記プロセッサ側プロセッサ認証用情報保持手段に送る転送手段と
をさらに備え、
前記メモリ側プロセッサ認証用情報保持手段は、前記プロセッサ認証用情報生成手段が生成した前記プロセッサ認証用情報を保持することを特徴とする請求項１１に記載のメモリ。
【請求項１４】
当該メモリは、前記不揮発性記憶素子に電力を供給する電源と、前記電源から前記不揮発性記憶素子への電力の供給が停止した場合に、前記不揮発性記憶素子に電力を供給する蓄電装置とからの電力により動作し、
前記電源からの電力供給停止のタイミングを検出する電力供給停止検出手段と、
前記電力供給停止検出手段が検出した前記電力供給停止のタイミングよりも後のタイミングにおいて、前記プロセッサ認証用情報を生成するプロセッサ認証用情報生成手段と、
前記電力供給停止検出手段が検出した前記電力供給停止のタイミングよりも後のタイミングにおいて、前記プロセッサ認証用情報生成手段が生成した前記プロセッサ認証用情報を前記プロセッサ側プロセッサ認証用情報保持手段に送る転送手段と
をさらに備え、
前記メモリ側プロセッサ認証用情報保持手段は、前記プロセッサ認証用情報生成手段が生成した前記プロセッサ認証用情報を保持することを特徴とする請求項１１に記載のメモリ。
【請求項１５】
当該メモリは、前記不揮発性記憶素子に電力を供給する電源と、前記電源から前記不揮発性記憶素子に電力を供給する蓄電装置とからの電力により動作し、
前記電源からの電力供給停止のタイミングを検出する電力供給停止検出手段をさらに備え、
前記プロセッサ認証用情報取得手段は、さらに前記電力供給停止検出手段が検出した前記電力供給停止のタイミングよりも前のタイミングにおいて、前記プロセッサから前記プロセッサ認証用情報を取得し、
前記メモリ側プロセッサ認証用情報保持手段は、前記プロセッサ認証用情報取得手段が取得した前記プロセッサ認証用情報を保持することを特徴とする請求項１１に記載のメモリ。
【請求項１６】
当該メモリは、前記不揮発性記憶素子に電力を供給する電源と、前記電源から前記不揮発性記憶素子への電力の供給が停止した場合に、前記不揮発性記憶素子に電力を供給する蓄電装置とからの電力により動作し、
前記電源からの電力供給停止のタイミングを検出する電力供給停止検出手段をさらに備え、
前記プロセッサ認証用情報取得手段は、さらに前記電力供給停止検出手段が検出した前記電力供給停止のタイミングよりも後のタイミングにおいて、前記プロセッサから前記プロセッサ認証用情報を取得し、
前記メモリ側プロセッサ認証用情報保持手段は、前記プロセッサ認証用情報取得手段が取得した前記プロセッサ認証用情報を保持することを特徴とする請求項１１に記載のメモリ。
【請求項１７】
前記メモリ側プロセッサ認証用情報保持手段は、不揮発性記憶素子であることを特徴とする請求項１１から１６のいずれか一項に記載のメモリ。
【請求項１８】
プロセッサと、当該プロセッサにより利用される情報を保持するメモリとを備えたコンピュータシステムであって、
前記メモリは、
前記プロセッサが利用する情報を保持する不揮発性記憶素子と、
前記不揮発性記憶素子と一体に形成され、前記不揮発性記憶素子の認証に利用されるメモリ認証用情報を保持するメモリ側メモリ認証用情報保持手段と
を有し、
前記プロセッサは、
前記不揮発性記憶素子に保持されている情報を利用して演算を行う演算手段と、
前記演算手段と一体に形成され、前記不揮発性記憶素子を認証するためのメモリ認証用情報を保持するプロセッサ側メモリ認証用情報保持手段と、
前記メモリ側メモリ認証用情報保持手段が保持する前記メモリ認証用情報を取得するメモリ認証用情報取得手段と、
前記メモリ認証用情報取得手段が取得した前記メモリ認証用情報と、前記プロセッサ側メモリ認証用情報保持手段が保持する前記メモリ認証用情報とを比較することにより、前記不揮発性記憶素子を認証するメモリ認証手段と、
前記メモリ認証手段が前記不揮発性記憶素子の認証に成功した場合に、前記不揮発性記憶素子へのアクセスを許可するメモリアクセス制御手段と
を有することを特徴とするコンピュータシステム。
【請求項１９】
前記プロセッサは、
前記演算手段と一体に形成され、当該演算手段の認証に利用されるプロセッサ認証用情報を保持するプロセッサ側プロセッサ認証用情報保持手段をさらに有し、
前記メモリは、
前記不揮発性記憶素子と一体に形成され、前記演算手段を認証するためのプロセッサ認証用情報を保持するメモリ側プロセッサ認証用情報保持手段と、
前記プロセッサ側プロセッサ認証用情報保持手段が保持する前記プロセッサ認証用情報を取得するプロセッサ認証用情報取得手段と、
前記プロセッサ認証用情報取得手段が取得した前記プロセッサ認証用情報と、前記メモリ側プロセッサ認証用情報保持手段が保持する前記プロセッサ認証用情報とを比較することにより、前記演算手段を認証するプロセッサ認証手段と、
前記プロセッサ認証手段が前記演算手段の認証に成功した場合に、前記演算手段による前記不揮発性記憶素子へのアクセスを許可するプロセッサアクセス制御手段と
を有することを特徴とする請求項１８に記載のコンピュータシステム。
【請求項２０】
演算手段を備えたコンピュータシステムであって、
前記演算手段が利用する情報を保持する不揮発性記憶素子と、
前記不揮発性記憶素子と一体に形成され、前記演算手段と前記不揮発性記憶素子との間の認証を行う認証情報を保持するメモリ側認証情報保持手段と、
前記演算手段と一体に形成され、前記認証情報を保持するプロセッサ側認証情報保持手段と、
前記メモリ側認証情報保持手段が保持する前記認証情報と、前記プロセッサ側認証情報保持手段が保持する前記認証情報とを比較して、前記演算手段と前記不揮発性記憶素子との間の認証を行う認証手段と、
前記認証手段による認証に成功した場合に、前記不揮発性記憶素子と前記演算手段の間のアクセスを許可するアクセス制御手段と
を備えたことを特徴とするコンピュータシステム。
【請求項２１】
演算手段を備えたコンピュータシステムにおける認証方法であって、
前記演算手段が利用する情報を保持する不揮発性記憶素子と一体に形成され、前記演算手段と前記不揮発性記憶素子との間の認証を行う認証情報を保持するメモリ側認証情報保持手段に保持されている認証情報と、前記演算手段と一体に形成され、前記認証情報を保持するプロセッサ側認証情報保持手段に保持されている認証情報とを比較して、前記演算手段と前記不揮発性記憶素子との間の認証を行う認証ステップと、
前記認証ステップにおいて認証に成功した場合に、前記不揮発性記憶素子と前記演算手段の間のアクセスを許可するアクセス制御ステップと
を有することを特徴とする認証方法。
【請求項２２】
不揮発性記憶素子に格納された情報を利用して演算を行うプロセッサコアと、
前記プロセッサコアと一体に形成され、前記不揮発性記憶素子を認証するためのメモリ認証用情報を保持するプロセッサ側メモリ認証用情報保持手段と、
前記不揮発性記憶素子と一体に形成され、当該不揮発性記憶素子を認証するためのメモリ認証用情報を保持するメモリ側メモリ認証用情報保持手段から前記メモリ認証用情報を取得するメモリ認証用情報取得手段と、
前記メモリ認証用情報取得手段が取得した前記メモリ認証用情報と、前記プロセッサ側メモリ認証用情報保持手段が保持する前記メモリ認証用情報とを比較して、前記不揮発性記憶素子を認証するメモリ認証手段と、
前記メモリ認証手段による認証に成功した場合に、前記不揮発性記憶素子へのアクセスを許可するメモリアクセス制御手段と
を備えたことを特徴とするシステムＬＳＩ。
【請求項２３】
前記不揮発性記憶素子を制御するメモリコントローラをさらに備え、
前記コントローラは、
前記プロセッサ側メモリ認証用情報保持手段と、前記メモリ認証用情報取得手段と、前記メモリ認証手段と、前記メモリアクセス制御手段とを有することを特徴とする請求項２２に記載のシステムＬＳＩ。
【請求項２４】
システムＬＳＩと、当該システムＬＳＩにおいて利用される情報を保持するメモリとを備えたコンピュータシステムであって、
前記メモリは、
プロセッサコアが利用する情報を保持する不揮発性記憶素子と、
前記不揮発性記憶素子と一体に形成され、前記不揮発性記憶素子の認証に利用されるメモリ認証用情報を保持するメモリ側メモリ認証用情報保持手段と
を有し、
前記システムＬＳＩは、
前記不揮発性記憶素子に保持されている情報を利用して演算を行うプロセッサコアと、
前記プロセッサコアと一体に形成され、前記不揮発性記憶素子を認証するためのメモリ認証用情報を保持するプロセッサ側メモリ認証用情報保持手段と、
前記メモリ側メモリ認証用情報保持手段が保持する前記メモリ認証用情報を取得するメモリ認証用情報取得手段と、
前記メモリ認証用情報取得手段が取得した前記メモリ認証用情報と、前記プロセッサ側メモリ認証用情報保持手段が保持する前記メモリ認証用情報とを比較することにより、前記不揮発性記憶素子を認証するメモリ認証手段と、
前記メモリ認証手段が前記不揮発性記憶素子の認証に成功した場合に、前記不揮発性記憶素子へのアクセスを許可するメモリアクセス制御手段と
を有することを特徴とするコンピュータシステム。
【請求項２５】
システムＬＳＩと、当該システムＬＳＩにおいて利用される情報を保持するメモリとを備えたコンピュータシステムであって、
前記システムＬＳＩは、
演算を行うプロセッサコアと、
前記プロセッサコアと一体に形成され、前記プロセッサコアの認証に利用されるプロセッサ認証用情報を保持するプロセッサ側プロセッサ認証用情報保持手段と
を有し、
前記メモリは、
前記プロセッサコアが利用する情報を保持する不揮発性記憶素子と、
前記不揮発性記憶素子と一体に形成され、前記演算手段を認証するためのプロセッサ認証用情報を保持するメモリ側プロセッサ認証用情報保持手段と、
前記プロセッサ側プロセッサ認証用情報保持手段が保持する前記プロセッサ認証用情報を取得するプロセッサ認証用情報取得手段と、
前記プロセッサ認証用情報取得手段が取得した前記プロセッサ認証用情報と、前記メモリ側プロセッサ認証用情報保持手段が保持する前記プロセッサ認証用情報とを比較することにより、前記演算手段を認証するプロセッサ認証手段と、
前記プロセッサ認証手段による認証に成功した場合に、前記演算手段からのアクセスを許可するプロセッサアクセス制御手段と
を有することを特徴とするコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プロセッサ、メモリ、コンピュータシステム、システムＬＳＩおよび認証方法に関するものである。
【背景技術】
【０００２】
デジタルカメラ、デジタルテレビ、ＤＶＤプレーヤ、ＤＶＤ／ＨＤＤレコーダ、ゲーム機、携帯電話、携帯型オーディオプレーヤ、自動車の制御など、数多くの機器にコンピュータが組み込まれている。このようなコンピュータを組み込んだ機器やシステムは、著作権保護されたコンテンツの処理を行っている。また、個人情報や課金情報などの重要な情報を扱っている。
【０００３】
このような機器においては、機器を不正に改造して、暗号を解いた後のコンテンツを不正にコピーしたり、不正なプログラムを実行させて個人情報を取り出したり、課金情報を改竄するなどの不正行為が問題となっている。
【０００４】
このような不正行為ができないように機器を保護する方法として、従来は、機器を構成するＬＳＩチップを搭載した基板を樹脂等で覆ったり、機器の筐体を分解しにくく作る方法が知られている。これにより、改造を困難にしていた。
【０００５】
また、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）が内部ＲＯＭから読み出されたブートソフトウェアがデバイスおよびメーカ識別コードによる認証を行い、認証に成功した場合にのみブートを行う方法が知られている（例えば「特許文献１」参照）。
【０００６】
また、書き換えられた不正なプログラムコードが実行されるのを防止するために、セキュアブートによって、認証された正しいプログラムコード以外の実行を阻止する方式も用いられている。セキュアブートを実現するためには、ＴＰＭ（Ｔｒｕｓｔｅｄ  Ｐｌａｔｆｏｒｍ  Ｍｏｄｕｌｅ）と呼ばれるセキュリティチップを用いる方法が知られている。
【０００７】
【特許文献１】特開２００３−１０８２５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、樹脂で覆ったり筐体を強固にする方法は、製造コストが増えるのに加え、特殊な加工技術によって回避されやすい。
【０００９】
一方、セキュアブートはＴＰＭなどの特殊なハードウェアモジュールを必要とする。また、各機器のＴＰＭはそれぞれ異なる固有の暗号鍵を持っている。このため、実行するプログラムのアップデートが発生すると各機器ごとに異なる暗号鍵を使って認証されるようにしたプログラムを配布しなければならない。したがって、メンテナンスのコストが膨大になる。
【００１０】
また、セキュアブートは、あらかじめ決められたプログラムが起動したことは確認できるが、そのプログラムの漏洩や、ハードウェア的な改造を検出することは困難である。
【００１１】
本発明は、上記に鑑みてなされたものであって、低コストで、コンピュータへの不正アクセス等の不正行為を防止することのできるプロセッサ、メモリ、コンピュータシステムおよび認証方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述した課題を解決し、目的を達成するために、本発明は、プロセッサであって、不揮発性記憶素子に格納された情報を利用して演算を行う演算手段と、前記演算手段と一体に形成され、前記不揮発性記憶素子を認証するためのメモリ認証用情報を保持するプロセッサ側メモリ認証用情報保持手段と、前記不揮発性記憶素子と一体に形成され、当該不揮発性記憶素子を認証するためのメモリ認証用情報を保持するメモリ側メモリ認証用情報保持手段から前記メモリ認証用情報を取得するメモリ認証用情報取得手段と、前記メモリ認証用情報取得手段が取得した前記メモリ認証用情報と、前記プロセッサ側メモリ認証用情報保持手段が保持する前記メモリ認証用情報とを比較して、前記不揮発性記憶素子を認証するメモリ認証手段と、前記メモリ認証手段による認証に成功した場合に、前記不揮発性記憶素子へのアクセスを許可するメモリアクセス制御手段とを備えたことを特徴とする。
【００１３】
また、本発明の他の形態は、メモリであって、演算手段が利用する情報を保持する不揮発性記憶素子と、前記不揮発性記憶素子と一体に形成され、前記演算手段を認証するためのプロセッサ認証用情報を保持するメモリ側プロセッサ認証用情報保持手段と、前記演算手段と一体に形成され、当該演算手段を認証するためのプロセッサ認証用情報を保持するプロセッサ側プロセッサ認証用情報保持手段から前記プロセッサ認証用情報を取得するプロセッサ認証用情報取得手段と、前記プロセッサ認証用情報取得手段が取得した前記プロセッサ認証用情報と、前記メモリ側プロセッサ認証用情報保持手段が保持する前記プロセッサ認証用情報とを比較して、前記演算手段を認証するプロセッサ認証手段と、前記プロセッサ認証手段による認証に成功した場合に、前記演算手段からのアクセスを許可するプロセッサアクセス制御手段とを備えたことを特徴とする。
【００１４】
また、本発明の他の形態は、プロセッサと、当該プロセッサにより利用される情報を保持するメモリとを備えたコンピュータシステムであって、前記メモリは、前記プロセッサが利用する情報を保持する不揮発性記憶素子と、前記不揮発性記憶素子と一体に形成され、前記不揮発性記憶素子の認証に利用されるメモリ認証用情報を保持するメモリ側メモリ認証用情報保持手段とを有し、前記プロセッサは、前記不揮発性記憶素子に保持されている情報を利用して演算を行う演算手段と、前記演算手段と一体に形成され、前記不揮発性記憶素子を認証するためのメモリ認証用情報を保持するプロセッサ側メモリ認証用情報保持手段と、前記メモリ側メモリ認証用情報保持手段が保持する前記メモリ認証用情報を取得するメモリ認証用情報取得手段と、前記メモリ認証用情報取得手段が取得した前記メモリ認証用情報と、前記プロセッサ側メモリ認証用情報保持手段が保持する前記メモリ認証用情報とを比較することにより、前記不揮発性記憶素子を認証するメモリ認証手段と、前記メモリ認証手段が前記不揮発性記憶素子の認証に成功した場合に、前記不揮発性記憶素子へのアクセスを許可するメモリアクセス制御手段とを有することを特徴とする。
【００１５】
また、本発明の他の形態は、演算手段を備えたコンピュータシステムであって、前記演算手段が利用する情報を保持する不揮発性記憶素子と、前記不揮発性記憶素子と一体に形成され、前記演算手段と前記不揮発性記憶素子との間の認証を行う認証情報を保持するメモリ側認証情報保持手段と、前記演算手段と一体に形成され、前記認証情報を保持するプロセッサ側認証情報保持手段と、前記メモリ側認証情報保持手段が保持する前記認証情報と、前記プロセッサ側認証情報保持手段が保持する前記認証情報とを比較して、前記演算手段と前記不揮発性記憶素子との間の認証を行う認証手段と、前記認証手段による認証に成功した場合に、前記不揮発性記憶素子と前記演算手段の間のアクセスを許可するアクセス制御手段とを備えたことを特徴とする。
【００１６】
また、本発明の他の形態は、演算手段を備えたコンピュータシステムにおける認証方法であって、前記演算手段が利用する情報を保持する不揮発性記憶素子と一体に形成され、前記演算手段と前記不揮発性記憶素子との間の認証を行う認証情報を保持するメモリ側認証情報保持手段に保持されている認証情報と、前記演算手段と一体に形成され、前記認証情報を保持するプロセッサ側認証情報保持手段に保持されている認証情報とを比較して、前記演算手段と前記不揮発性記憶素子との間の認証を行う認証ステップと、前記認証ステップにおいて認証に成功した場合に、前記不揮発性記憶素子と前記演算手段の間のアクセスを許可するアクセス制御ステップとを有することを特徴とする。
【００１７】
また、本発明の他の形態は、不揮発性記憶素子に格納された情報を利用して演算を行うプロセッサコアと、前記プロセッサコアと一体に形成され、前記不揮発性記憶素子を認証するためのメモリ認証用情報を保持するプロセッサ側メモリ認証用情報保持手段と、前記不揮発性記憶素子と一体に形成され、当該不揮発性記憶素子を認証するためのメモリ認証用情報を保持するメモリ側メモリ認証用情報保持手段から前記メモリ認証用情報を取得するメモリ認証用情報取得手段と、前記メモリ認証用情報取得手段が取得した前記メモリ認証用情報と、前記プロセッサ側メモリ認証用情報保持手段が保持する前記メモリ認証用情報とを比較して、前記不揮発性記憶素子を認証するメモリ認証手段と、前記メモリ認証手段による認証に成功した場合に、前記不揮発性記憶素子へのアクセスを許可するメモリアクセス制御手段とを備えたことを特徴とする。
【００１８】
また、本発明の他の形態は、システムＬＳＩと、当該システムＬＳＩにおいて利用される情報を保持するメモリとを備えたコンピュータシステムであって、前記メモリは、プロセッサコアが利用する情報を保持する不揮発性記憶素子と、前記不揮発性記憶素子と一体に形成され、前記不揮発性記憶素子の認証に利用されるメモリ認証用情報を保持するメモリ側メモリ認証用情報保持手段とを有し、前記システムＬＳＩは、前記不揮発性記憶素子に保持されている情報を利用して演算を行うプロセッサコアと、前記プロセッサコアと一体に形成され、前記不揮発性記憶素子を認証するためのメモリ認証用情報を保持するプロセッサ側メモリ認証用情報保持手段と、前記メモリ側メモリ認証用情報保持手段が保持する前記メモリ認証用情報を取得するメモリ認証用情報取得手段と、前記メモリ認証用情報取得手段が取得した前記メモリ認証用情報と、前記プロセッサ側メモリ認証用情報保持手段が保持する前記メモリ認証用情報とを比較することにより、前記不揮発性記憶素子を認証するメモリ認証手段と、前記メモリ認証手段が前記不揮発性記憶素子の認証に成功した場合に、前記不揮発性記憶素子へのアクセスを許可するメモリアクセス制御手段と
を有することを特徴とする。
【００１９】
また、本発明の他の形態は、システムＬＳＩと、当該システムＬＳＩにおいて利用される情報を保持するメモリとを備えたコンピュータシステムであって、前記システムＬＳＩは、演算を行うプロセッサコアと、前記プロセッサコアと一体に形成され、前記プロセッサコアの認証に利用されるプロセッサ認証用情報を保持するプロセッサ側プロセッサ認証用情報保持手段とを有し、前記メモリは、前記プロセッサコアが利用する情報を保持する不揮発性記憶素子と、前記不揮発性記憶素子と一体に形成され、前記演算手段を認証するためのプロセッサ認証用情報を保持するメモリ側プロセッサ認証用情報保持手段と、前記プロセッサ側プロセッサ認証用情報保持手段が保持する前記プロセッサ認証用情報を取得するプロセッサ認証用情報取得手段と、前記プロセッサ認証用情報取得手段が取得した前記プロセッサ認証用情報と、前記メモリ側プロセッサ認証用情報保持手段が保持する前記プロセッサ認証用情報とを比較することにより、前記演算手段を認証するプロセッサ認証手段と、前記プロセッサ認証手段による認証に成功した場合に、前記演算手段からのアクセスを許可するプロセッサアクセス制御手段とを有することを特徴とする。
【発明の効果】
【００２０】
本発明にかかるプロセッサは、不揮発性記憶素子と一体に形成されたメモリ側メモリ認証用情報保持手段が保持しているメモリ認証用情報を利用して、不揮発性記憶素子で形成されたメモリを認証するので、プロセッサに他のメモリを接続した場合には、認証に失敗し、当該メモリへのアクセスは許可されないので、不正行為を防止することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２１】
以下に、本発明にかかるプロセッサ、メモリ、コンピュータシステム、システムＬＳＩおよび認証方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００２２】
（実施の形態１）
図１は、実施の形態１にかかるコンピュータシステム１の全体構成を示す図である。コンピュータシステム１は、プロセッサ１０と、メモリ２０と、電源ユニット３０と、バス４０とを備えている。
【００２３】
プロセッサ１０は、記憶制御装置１１と、演算装置１２と、制御装置１３と、起動停止制御装置１４と、メモリ認証用情報生成部１５と、認証用情報記憶部１６とを有している。記憶制御装置１１は、メモリ２０からプログラムやデータを読み込む。また、メモリ２０にデータを書き込む。演算装置１２は、一時的にデータを記憶するレジスタを有している。演算装置１２は、メモリ２０からデータを取得し、レジスタを利用してデータの加工を行う。制御装置１３は、演算装置１２におけるプログラムの実行を管理する。
【００２４】
起動停止制御装置１４は、プロセッサ１０の動作開始時および動作停止時の処理を行う。具体的には、メモリ認証用情報生成部１５および認証用情報記憶部１６を管理し、動作開始時にはメモリ２０の認証を行い、また動作停止時には認証のための認証情報の生成を行う。また、バス４０を介して、メモリ２０との間で情報を送受信する。
【００２５】
このように、起動停止制御装置１４は、メモリ認証用情報取得手段、メモリ認証手段、メモリアクセス制御手段、電力供給開始検出手段、電力供給停止検出手段および転送手段として機能する。
【００２６】
メモリ認証用情報生成部１５は、起動停止制御装置１４からの指示によりメモリ２０を認証するためのメモリ認証用情報を生成する。認証用情報記憶部１６は、メモリ認証用情報生成部１５が生成したメモリ認証用情報を記憶する。認証用情報記憶部１６はさらに、プロセッサ認証用情報を記憶する。プロセッサ認証用情報とは、メモリ２０がプロセッサ１０を認証するための情報である。プロセッサ認証用情報は、起動停止制御装置１４がメモリ２０から取得する。
【００２７】
認証用情報記憶部１６は、不揮発性の記憶素子である。したがって、電力供給が停止した場合であっても、認証用情報記憶部１６に記憶されているデータは消去されずに保持される。不揮発性記憶素子としては、例えばＥＥＰＲＯＭやフラッシュメモリなどがある。なお、不揮発性記憶素子であればよく、その種類は本実施の形態に限定されるものではない。
【００２８】
プロセッサ１０の各部は一体に形成されている。具体的には、プロセッサ１０の各部は１チップに搭載されている。また、他の例としては、プロセッサ１０の各部は、１パッケージ化されている。このように、プロセッサ１０の各部が一体に形成されているとは、物理的に一体に形成されていることを意味する。仮にプロセッサ１０の各部が分離された場合には、各部が機能しなくなるように形成されているのが好ましい。
【００２９】
メモリ２０は、不揮発性記憶素子２１と、起動停止制御装置２４と、プロセッサ認証用情報生成部２５と、認証用情報記憶部２６とを有している。
【００３０】
不揮発性記憶素子２１は、高速のメモリである。具体的には、ＭＲＡＭ（Ｍａｇｎｅｔｉｃ  ＲＡＭ）、ＦｅＲＡＭ（Ｆｅｒｒｏｅｌｅｃｔｒｉｃ  ＲＡＭ）、ＰＲＡＭ（Ｐｈａｓｅ−Ｃｈａｎｇｅ  ＲＡＭ）などである。したがって、電力供給が停止した場合であっても、不揮発性記憶素子２１に記憶されているデータは消去されずに保持される。したがって、不揮発性記憶素子２１に電力停止時の状態を記憶させておくことができる。これにより、電力供給開始時には、電力停止時の状態から動作を再開することができる。
【００３１】
不揮発性記憶素子２１は、バス４０でプロセッサ１０と接続されている。バス４０上には、記憶素子を指定する「アドレス」、指定したアドレスに対応する「データ」、読み書きを指示する「コントロール」の３種類の信号が流れる。
【００３２】
起動停止制御装置２４は、メモリ２０の動作開始時および動作停止時の処理を行う。具体的には、プロセッサ認証用情報生成部２５および認証用情報記憶部２６を管理し、動作開始時にはプロセッサ１０の認証を行い、また動作停止時には認証のための認証用情報生成を行う。また、バス４０を介してプロセッサ１０との間で情報を送受信する。
【００３３】
プロセッサ認証用情報生成部２５は、起動停止制御装置２４からの指示によりプロセッサ１０を認証するためのプロセッサ認証用情報を生成する。認証用情報記憶部２６は、プロセッサ認証用情報生成部２５が生成したプロセッサ認証用情報を記憶する。プロセッサ認証用情報生成部２５はまた、メモリ認証用情報を記憶する。メモリ認証用情報は、起動停止制御装置２４がプロセッサ１０から取得する。認証用情報記憶部２６は、認証用情報記憶部１６と同様不揮発性の記憶素子である。プロセッサ１０と同様、メモリ２０の各部は一体に形成されている。
【００３４】
電源ユニット３０は、電源３１と、電源制御装置３２と、蓄電装置３３とを有している。蓄電装置３３は、電源３１から供給される電力を蓄える。なお、蓄電装置３３は、プロセッサ１０およびメモリ２０が停止処理を行うのに十分な時間だけプロセッサ１０およびメモリ２０に電力を供給するのに十分な容量を有している。なお、停止処理については後述する。また、電源制御装置３２は、電源３１および蓄電装置３３を制御する。
【００３５】
コンピュータシステム１は、これ以外にもさらに図示せぬ各種の入出力装置を備えている。入出力装置には、例えば、メモリ２０上に展開されている映像データをディスプレイ装置に表示するビデオプロセッサなどがある。
【００３６】
図２は、実施の形態１にかかるコンピュータシステム１において、電力供給が停止した場合に実行される停止処理を示すフローチャートである。
【００３７】
電源制御装置３２が電源切断、すなわち電源３１からの電力供給の停止を検出すると（ステップＳ１００）、蓄電装置３３に蓄えている電気をプロセッサ１０およびメモリ２０に供給する（ステップＳ１０１）。これにより、プロセッサ１０およびメモリ２０における動作を継続させる。さらに、電源制御装置３２は、起動停止制御装置１４および起動停止制御装置２４に対し、電力供給停止情報を送る（ステップＳ１０２）。
【００３８】
起動停止制御装置１４および起動停止制御装置２４は、電源制御装置３２から電力供給停止情報を受け付けると、電力供給が停止したことを認識し、電力供給停止情報を受け付けたときに進行していた通常動作を停止させる（ステップＳ１１０，ステップＳ１２０）。
【００３９】
そして、次回電源が入ったときに、電力供給停止情報を受け付けたときと同じ状態から通常動作を再開できる状態、すなわち安定した状態になるまで待機する（ステップＳ１１１，ステップＳ１２１）。
【００４０】
例えば、メモリアクセスサイクルを実行している最中であった場合には、そのサイクルが完了するまで待機する。また例えば、プロセッサのパイプラインの途中に入っている命令を実行している最中であった場合には、当該命令が完了するまで待機する。
【００４１】
さらに、プロセッサ１０が有するレジスタやキャッシュメモリなどの記憶手段が揮発性記憶素子である場合には、レジスタやキャッシュメモリなどの内部状態をメモリ２０に退避させ、次回の動作開始に備える。
【００４２】
プロセッサ１０およびメモリ２０が通常動作を停止し、安定な状態になると、次に、メモリ認証用情報生成部１５は、起動停止制御装置１４からの指示によりメモリ認証用情報を新たに生成する（ステップＳ１１２）。同様に、プロセッサ認証用情報生成部２５は、起動停止制御装置２４からの指示によりプロセッサ認証用情報を新たに生成する（ステップＳ１２２）。
【００４３】
このように、メモリ認証用情報生成部１５は、電源３１からの電力の供給が停止した後であって、かつ蓄電装置３３が蓄えている電力の供給が停止する前に、メモリ認証用情報を生成する。また、プロセッサ認証用情報生成部２５は、電源３１からの電力の供給が停止した後であって、かつ蓄電装置３３が蓄えている電力の供給が停止する前に、プロセッサ認証用情報を生成する。
【００４４】
次に、認証用情報記憶部１６は、メモリ認証用情報生成部１５が生成したメモリ認証用情報を記憶する（ステップＳ１１３）。同様に、認証用情報記憶部２６は、プロセッサ認証用情報生成部２５が生成したプロセッサ認証用情報を記憶する（ステップＳ１２３）。なお、メモリ認証用情報およびプロセッサ認証用情報は、ともにプロセッサ１０とメモリ２０の間で相互認証するための秘密情報である。したがって、プロセッサとメモリ以外が知り得ない情報である必要がある。
【００４５】
次に、起動停止制御装置１４は、認証用情報記憶部１６に記憶されているメモリ認証用情報を、バス４０を介して起動停止制御装置２４に送る。起動停止制御装置２４は、起動停止制御装置１４より取得したメモリ認証用情報を認証用情報記憶部２６に記憶する。
【００４６】
同様に起動停止制御装置２４は、認証用情報記憶部２６に記憶されているプロセッサ認証用情報を、バス４０を介して起動停止制御装置１４に送る。起動停止制御装置１４は、起動停止制御装置２４より取得したプロセッサ認証用情報を認証用情報記憶部１６に記憶する。
【００４７】
以上の処理により、プロセッサ１０およびメモリ２０は、プロセッサ認証用情報およびメモリ認証用情報を共有する（ステップＳ１１４，ステップＳ１２４）。次に、プロセッサ１０およびメモリ２０は、動作を停止する（ステップＳ１１５，ステップＳ１２５）。以上で停止処理が完了する。
【００４８】
なお、プロセッサ認証用情報およびメモリ認証用情報の転送には、安全な通信手段を用いる。不正な信号のモニターなどにより外部に漏れるのを防止する観点である。具体的には、認証用情報を暗号化して転送してもよい。
【００４９】
また、他の例としては、秘密鍵を利用してもよい。すなわち、プロセッサ１０とメモリ２０との間で、あらかじめ秘密鍵を共有する。そして、共有している秘密鍵を利用して認証用情報を暗号化して転送する。
【００５０】
また他の例としては、公開鍵暗号を利用してもよい。すなわち、プロセッサ１０とメモリ２０のそれぞれが自分の秘密鍵と相手の公開鍵を保持する。そして、認証用情報を相手の公開鍵で暗号化して転送する。
【００５１】
なお、本実施の形態においては、プロセッサ認証用情報およびメモリ認証用情報の転送は、バス４０を介して行われるが、これにかえて、コンピュータシステム１は、認証用情報転送専用の信号線をさらに備えてもよい。この場合、認証用情報転送専用の信号線を介してプロセッサ認証用情報およびメモリ認証用情報を転送してもよい。
【００５２】
図３は、実施の形態１にかかるコンピュータシステム１において、電力供給が停止した後、再び電力供給が開始した場合に行う認証処理を示すフローチャートである。プロセッサ１０およびメモリ２０は、電力供給が開始されると、電力供給停止処理において共有したメモリ認証用情報およびプロセッサ認証用情報を、バス４０を介して交換する（ステップＳ２１０，ステップＳ２２０）。具体的には、起動停止制御装置１４は、認証用情報記憶部１６に記憶しておいたプロセッサ認証用情報をバス４０を介して起動停止制御装置２４に送る。
【００５３】
一方、起動停止制御装置２４は、認証用情報記憶部２６に記憶しておいたメモリ認証用情報をバス４０を介して起動停止制御装置１４に送る。なお、この場合も暗号化など安全な手段を用いてメモリ認証用情報およびプロセッサ認証用情報を転送する。
【００５４】
次に、起動停止制御装置１４は、起動停止制御装置２４から受け取ったメモリ認証用情報と、メモリ認証用情報生成部１５が生成し、認証用情報記憶部１６に記憶されているメモリ認証用情報とを比較する（ステップＳ２１１）。２つのメモリ認証用情報が一致した場合には、メモリ２０の認証に成功したと判断し（ステップＳ２１２，Ｙｅｓ）、通常動作を再開する（ステップＳ２１３）。すなわち、メモリ２０へのアクセスが許可され、メモリ２０からのデータの読み出しおよびメモリ２０へのデータの書込みが開始される。
【００５５】
一方、２つのメモリ認証用情報が一致しない場合には、メモリ２０の認証に失敗したと判断し（ステップＳ２１２，Ｎｏ）、動作を停止する（ステップＳ２１４）。２つのメモリ認証用情報が一致しない場合、メモリ２０は電力停止前とは異なる状態になっている。すなわち、悪意の第三者により不正にアクセスされているなど不正行為が行われている可能性がある。または、他のメモリ装置に取り替えられている可能性がある。このような場合には、プロセッサ１０は動作を停止する。すなわち、メモリ２０へのアクセスを行わない。これにより、メモリ２０を介したプロセッサ１０への不正な侵入等の不正行為を防止することができる。
【００５６】
メモリ２０のステップＳ２２１〜ステップＳ２２４における処理は、プロセッサ１０のステップＳ２１１〜ステップＳ２１４における処理と同様である。すなわち、起動停止制御装置２４は、起動停止制御装置１４から受け取ったプロセッサ認証用情報と、プロセッサ認証用情報生成部２５が生成し、認証用情報記憶部２６に記憶されているプロセッサ認証用情報とを比較する（ステップＳ２２１）。２つのプロセッサ認証用情報が一致した場合には、プロセッサ１０の認証に成功したと判断し（ステップＳ２２２，Ｙｅｓ）、通常動作を再開する（ステップＳ２２３）。すなわち、プロセッサ１０からのアクセスが許可され、プロセッサ１０からのデータの読み出しおよび書込みが開始される。
【００５７】
一方、２つのプロセッサ認証用情報が一致しない場合には、プロセッサ１０の認証に失敗したと判断し（ステップＳ２２２，Ｎｏ）、動作を停止する（ステップＳ２２４）。以上で、認証処理が完了する。
【００５８】
以上、本発明を実施の形態を用いて説明したが、上記実施の形態に多様な変更または改良を加えることができる。
【００５９】
そうした第１の変更例としては、本実施の形態においては、プロセッサ１０において生成された認証用情報をメモリ認証用情報とし、メモリ２０において生成された認証用情報をプロセッサ認証用情報としたが、これらは、プロセッサ１０およびメモリ２０それぞれが互いを認証するための情報として利用されればよい。
【００６０】
例えば、メモリ２０はメモリ認証用情報を利用して、すなわちプロセッサにおいて生成された認証用情報を利用してプロセッサ１０の認証を行ってもよい。また、プロセッサ１０は、プロセッサ認証用情報を利用して、すなわちメモリにおいて生成された認証用情報を利用してメモリ２０の認証を行ってもよい。
【００６１】
また、他の例としては、プロセッサ１０は、プロセッサ認証用情報とメモリ認証用情報の両方を利用してメモリ２０の認証を行ってもよい。同様に、メモリ２０は、プロセッサ認証用情報とメモリ認証用情報の両方を利用してプロセッサ１０の認証を行ってもよい。
【００６２】
さらに、プロセッサ１０およびメモリ２０のうちいずれか一方のみが認証用情報を生成することとしてもよい。図４は、プロセッサ１０のみが認証用情報を生成する場合のコンピュータシステム１の全体構成を示す図である。
【００６３】
この場合には、プロセッサ１０のメモリ認証用情報生成部１５が生成したメモリ認証用情報を認証用情報記憶部１６に記憶する。また、メモリ２０の起動停止制御装置２４は、起動停止制御装置１４から取得したメモリ認証用情報を認証用情報記憶部２６に記憶する。そして、電力供給開始時には、プロセッサ１０は、認証用情報記憶部２６に記憶されているメモリ認証用情報を取得する。認証に成功した場合に通常動作を開始する。同様に、メモリ２０は、認証用情報記憶部１６に記憶されているメモリ認証用情報を取得する。そして、認証に成功した場合に通常動作を開始する。
【００６４】
また他の例としては、メモリ２０のみが認証用情報を生成することとしてもよい。この場合、メモリ２０が生成した認証用情報により、メモリ２０とプロセッサ１０の間の認証を行う。具体的には、メモリ２０は、メモリ２０が生成した認証用情報を利用してプロセッサ１０の認証を行う。また、プロセッサ１０も、メモリ２０が生成した認証用情報を利用してメモリ２０の認証を行う。
【００６５】
なお、プロセッサ１０およびメモリ２０の双方が認証用情報を生成する場合であっても、プロセッサ１０およびメモリ２０のうちいずれか一方のみが認証用情報を生成する場合であっても生成した認証用情報を相手装置に送り双方で認証用情報を共有しておく。
【００６６】
第２の変更例としては、本実施の形態においては、起動停止制御装置１４がプロセッサ１０に接続されているメモリを認証し、かつ起動停止制御装置２４がメモリ２０に接続されているプロセッサを認証するが、これにかえていずれか一方のみの認証を行うこととしてもよい。
【００６７】
例えば、起動停止制御装置１４がメモリ２０の認証を行うのみであってもよい。この場合、起動停止制御装置１４は、認証用情報記憶部１６に記憶されているメモリ認証用情報と認証用情報記憶部２６に記憶されているメモリ認証用情報とを比較して、メモリ２０を認証するが、メモリ２０は、プロセッサ１０の認証を行わなくともよい。すなわち、起動停止制御装置２４は、認証用情報記憶部２６に記憶されているプロセッサ認証用情報と認証用情報記憶部１６に記憶されているプロセッサ認証用情報との比較処理を行わなくともよい。そして、起動停止制御装置１４が認証に成功した場合には、プロセッサ１０だけでなくメモリ２０も通常動作を開始する。
【００６８】
また、例えば、起動停止制御装置２４がプロセッサ１０の認証を行うのみであってもよい。この場合、起動停止制御装置２４は、認証用情報記憶部２６に記憶されているプロセッサ認証用情報と認証用情報記憶部１６に記憶されているプロセッサ認証用情報とを比較して、プロセッサ１０を認証するが、プロセッサ１０は、メモリ２０の認証を行わなくともよい。すなわち、起動停止制御装置１４は、認証用情報記憶部１６に記憶されているメモリ認証用情報と認証用情報記憶部２６に記憶されているメモリ認証用情報との比較処理を行わなくともよい。そして、起動停止制御装置２４が認証に成功した場合には、メモリ２０だけでなくプロセッサ１０も通常動作を開始する。
【００６９】
第３の変更例としては、本実施の形態においては、起動停止制御装置１４および起動停止制御装置２４は、バス４０を介してメモリ認証用情報およびプロセッサ認証用情報の交換を行ったが、これにかえて専用の信号線を用いてもよい。
【００７０】
第４の変更例としては、本実施の形態にかかるコンピュータシステム１においては、プロセッサ認証用情報およびメモリ認証用情報は認証用情報記憶部２６に記憶されていたが、これにかえて、メモリを構成する不揮発性記憶素子の一部の領域に記憶されていてもよい。
【００７１】
第５の変更例としては、本実施の形態にかかるコンピュータシステム１は、１つのプロセッサを備えたが、これにかえてプロセッサを複数備えてもよい。この場合には、各プロセッサとメモリ２０との間でそれぞれメモリ認証用情報およびプロセッサ認証用情報の交換を行い、接続相手の認証を行う。
【００７２】
第６の変更例としては、本実施の形態にかかるコンピュータシステム１は、１つのメモリを備えたが、これにかえてメモリを複数備えてもよい。この場合には、プロセッサ１０は、各メモリとの間でそれぞれメモリ認証用情報およびプロセッサ認証用情報の交換を行い、接続相手の認証を行う。
【００７３】
第７の変更例としては、プロセッサを複数備え、かつメモリを複数備えてもよい。この場合には、各プロセッサが各メモリとの間でそれぞれメモリ認証用情報およびプロセッサ認証用情報の交換を行い、各接続相手の認証を行う。
【００７４】
（実施の形態２）
図５は、実施の形態２にかかるコンピュータシステム１の全体構成を示す図である。実施の形態２にかかるコンピュータシステム１のプロセッサ１０は、実施の形態１にかかるプロセッサ１０のメモリ認証用情報生成部１５および認証用情報記憶部１６にかえて、メモリ認証用乱数発生器１７と、メモリ認証用乱数記憶部１８と、プロセッサ認証用乱数記憶部１９とを有している。
【００７５】
また、実施の形態２にかかるコンピュータシステム１のメモリ２０は、実施の形態１にかかるメモリ２０のプロセッサ認証用情報生成部２５および認証用情報記憶部２６にかえて、プロセッサ認証用乱数発生器２７と、プロセッサ認証用乱数記憶部２８と、メモリ認証用乱数記憶部２９とを有している。
【００７６】
なお、実施の形態２にかかるメモリ認証用乱数発生器１７は、実施の形態１にかかるメモリ認証用情報生成部１５に対応する。また、実施の形態２にかかるメモリ認証用乱数記憶部１８およびプロセッサ認証用乱数記憶部１９は、実施の形態１にかかる認証用情報記憶部１６に対応する。また、実施の形態２にかかるプロセッサ認証用乱数発生器２７は、実施の形態１にかかるプロセッサ認証用情報生成部２５に対応する。また、実施の形態２にかかるプロセッサ認証用乱数記憶部２８およびメモリ認証用乱数記憶部２９は、実施の形態１にかかる認証用情報記憶部２６に対応する。
【００７７】
メモリ認証用乱数記憶部１８、プロセッサ認証用乱数記憶部１９、プロセッサ認証用乱数記憶部２８、およびメモリ認証用乱数記憶部２９は、不揮発性の記憶素子である。電源が切れたときにデータが消去されるのを防ぐ観点である。
【００７８】
メモリ認証用乱数発生器１７は、乱数を生成する。メモリ認証用乱数発生器１７により生成される乱数をメモリ認証用乱数と称する。メモリ認証用乱数は、メモリ認証用乱数記憶部１８に記憶される。同様に、プロセッサ認証用乱数発生器２７は、乱数を生成する。プロセッサ認証用乱数発生器２７により生成される乱数をプロセッサ認証用乱数と称する。プロセッサ認証用乱数は、プロセッサ認証用乱数記憶部２８に記憶される。
【００７９】
起動停止制御装置１４は、プロセッサ認証用乱数発生器２７により生成されたプロセッサ認証用乱数を起動停止制御装置２４から取得し、プロセッサ認証用乱数記憶部１９に記憶させる。起動停止制御装置２４は、メモリ認証用乱数発生器１７により生成されたメモリ認証用乱数を起動停止制御装置１４から取得し、メモリ認証用乱数記憶部２９に記憶させる。本実施の形態においては、メモリ認証用乱数およびプロセッサ認証用乱数を認証用情報として利用する。
【００８０】
メモリ認証用乱数発生器１７が生成するメモリ認証用乱数およびプロセッサ認証用乱数発生器２７が生成するプロセッサ認証用乱数は、例えば４０ビットや１２８ビットのサイズ（ビット長）であるのが好ましい。なお、乱数のサイズは、必要に応じて任意に決定すればよいが、安全性の観点からは、一般的に乱数のサイズを大きくするのが好ましい。一方、あまり大きくしすぎると処理時間や通信に要する時間が大きくなったり、処理に必要なハードウェア量が大きくなる。したがって、安全性と処理時間に基づいて定めるのが好ましい。なお、乱数のサイズは、本実施の形態に限定されるものではない。
【００８１】
また、メモリ認証用乱数発生器１７およびプロセッサ認証用乱数発生器２７としては、従来から知られている任意の方式の乱数発生回路を用いる。システムの安全性を高める観点からは、乱数の発生系列が推測できにくい物理現象などを利用した乱数を用いることが好ましい。なお、乱数発生の方式は本実施の形態に限定されるものではない。
【００８２】
図６は、実施の形態２にかかるコンピュータシステム１において、電力供給が停止した場合に実行される停止処理を示すフローチャートである。電源制御装置３２が電力供給停止を検出した場合に、プロセッサ１０およびメモリ２０は安定な状態になるまで待機する。この処理は、実施の形態１において図２を参照しつつ説明した処理（ステップＳ１１０〜ステップＳ１１１，ステップＳ１２０〜ステップＳ１２１）と同様である。
【００８３】
実施の形態２にかかるコンピュータシステム１は、それ以降の処理が実施の形態１にかかるコンピュータシステム１の処理と異なる。ここでは、安定な状態になった後の処理について説明する。
【００８４】
プロセッサ１０およびメモリ２０が通常動作を停止し、安定な状態になると（ステップＳ１１１）、起動停止制御装置１４は、メモリ認証用乱数発生器１７に新しい乱数、すなわちメモリ認証用乱数（ＮＲＭ）を生成させる（ステップＳ１３０）。次に、新しく生成されたメモリ認証用乱数（ＮＲＭ）とメモリ認証用乱数記憶部１８に記憶されているメモリ認証用乱数（ＲＭ）との排他的論理和（Ａ）を求める（ステップＳ１３１）。
【００８５】
なお、前提として、メモリ認証用乱数記憶部１８は、前回の動作開始時の認証処理において、メモリ認証用乱数発生器１７が生成したメモリ認証用乱数（ＲＭ）を記憶している。
【００８６】
次に、排他的論理和（Ａ）を起動停止制御装置２４に送る（ステップＳ１３２）。なお、ＮＲＭとＲＭの排他的論理和を作って送るのは、外部からの観測を避けるためである。ＮＲＭをそのまま送ると外部から観測される恐れがある。そこで、プロセッサ１０とメモリ２０しか知らない秘密の数であるＲＭを暗号の共有鍵として用い、暗号化して送ることとした。なお、ＮＲＭをそのまま送ることとしてもよい。
【００８７】
本実施の形態においては、暗号化したいデータと共有鍵の排他的論理和をとることとしたが、暗号化の方式は、これに限定されるものではなく、任意の暗号化方式を用いてもよい。
【００８８】
一方、起動停止制御装置２４は、安定な状態になると（ステップＳ１２１）、プロセッサ認証用乱数発生器２７に新しい乱数、すなわちプロセッサ認証用乱数（ＮＲＰ）を生成させる（ステップＳ１４０）。次に、新しく生成されたプロセッサ認証用乱数（ＮＲＰ）とプロセッサ認証用乱数記憶部２８に記憶されているプロセッサ認証用乱数（ＲＰ）との排他的論理和（Ｃ）を求める（ステップＳ１４１）。次に、排他的論理和（Ｃ）を起動停止制御装置１４に送る（ステップＳ１４２）。
【００８９】
なお、ステップＳ１４１の前提として、プロセッサ認証用乱数記憶部２８は、前回の動作開始時の認証処理において、プロセッサ認証用乱数発生器２７が生成したプロセッサ認証用乱数（ＲＰ）を記憶している。
【００９０】
プロセッサ１０は、排他的論理和（Ｃ）を受け取ると（ステップＳ１３３）、プロセッサ認証用乱数記憶部１９に記憶されているプロセッサ認証用乱数（ＲＰ）と排他的論理和（Ｃ）との排他的論理和を計算することにより、プロセッサ認証用乱数発生器２７が作成したと予測される新しいプロセッサ認証用乱数（ＮＲＰ）を得る（ステップＳ１３４）。次に、得られたＮＲＭをＲＭとしてメモリ認証用乱数記憶部１８に記憶させる（ステップＳ１３５）。さらに、得られたＮＲＰをＲＰとしてプロセッサ認証用乱数記憶部１９に記憶させる（ステップＳ１３６）。そして、動作を停止する（ステップＳ１３７）。
【００９１】
メモリ２０は、排他的論理和（Ａ）を受け取ると（ステップＳ１４３）、メモリ認証用乱数記憶部２９に記憶されているメモリ認証用乱数（ＲＭ）と排他的論理和（Ａ）との排他的論理和を計算することにより、新しいメモリ認証用乱数（ＮＲＭ）を得る（ステップＳ１４４）。次に、得られたＮＲＰをＲＰとしてプロセッサ認証用乱数記憶部２８に記憶させる（ステップＳ１４５）。さらに、得られたＮＲＭをＲＭとしてメモリ認証用乱数記憶部２９に記憶させる（ステップＳ１４６）。そして、動作を停止する（ステップＳ１４７）。以上で、電力供給が停止したときの停止処理が完了する。
【００９２】
図７は、実施の形態２にかかるコンピュータシステム１において、電力供給が停止した後、再び電力供給が開始した場合に行う認証処理を示すフローチャートである。プロセッサ１０の起動停止制御装置１４は、電力供給が開始されると、メモリ認証用乱数発生器１７に対し、新しいメモリ認証用乱数（ＮＲＭ）を生成させる（ステップＳ２３０）。次に、メモリ認証用乱数記憶部１８に記憶されているメモリ認証用乱数（ＲＭ）と、メモリ認証用乱数発生器１７が新たに生成したメモリ認証用乱数（ＮＲＭ）の排他的論理和（Ａ）を求める（ステップＳ２３１）。
【００９３】
さらに、プロセッサ認証用乱数記憶部１９に記憶されているプロセッサ認証用乱数（ＲＰ）とメモリ認証用乱数発生器１７が新たに生成したメモリ認証用乱数（ＮＲＭ）との排他的論理和（Ｂ）を求める（ステップＳ２３２）。次に、起動停止制御装置１４は、作成した排他的論理和（Ａ）および排他的論理和（Ｂ）を起動停止制御装置２４に送る（ステップＳ２３３）。
【００９４】
メモリ２０の起動停止制御装置２４は、起動停止制御装置１４と同様に、プロセッサ認証用乱数発生器２７に対し、新たにプロセッサ認証用乱数（ＮＲＰ）を生成させる（ステップＳ２５０）。次に、プロセッサ認証用乱数記憶部２８に記憶されているプロセッサ認証用乱数（ＲＰ）と、プロセッサ認証用乱数発生器２７が新たに生成したプロセッサ認証用乱数（ＮＲＰ）の排他的論理和（Ｃ）を求め（ステップＳ２５１）、さらに、メモリ認証用乱数記憶部２９に記憶されているメモリ認証用乱数（ＲＭ）とプロセッサ認証用乱数発生器２７が新たに生成したプロセッサ認証用乱数（ＮＲＰ）の排他的論理和（Ｄ）を求める（ステップＳ２５２）。次に、起動停止制御装置２４は、作成した排他的論理和（Ｃ）および排他的論理和（Ｄ）を起動停止制御装置１４に送る（ステップＳ２５３）。
【００９５】
プロセッサ１０は、排他的論理和（Ｃ）および排他的論理和（Ｄ）を取得すると（ステップＳ２３４）、プロセッサ認証用乱数記憶部１９に記憶されているプロセッサ認証用乱数（ＲＰ）と取得した排他的論理和（Ｃ）との排他的論理和を求めることにより、ステップＳ２５０において生成されたプロセッサ認証用乱数（ＮＲＰ）を特定する（ステップＳ２３５）。次に、特定したプロセッサ認証用乱数（ＮＲＰ）と、取得した排他的論理和（Ｄ）との排他的論理和（ＲＭ'）を求める（ステップＳ２３６）。
【００９６】
次に、求めた排他的論理和（ＲＭ'）とメモリ認証用乱数記憶部１８に記憶されているメモリ認証用乱数（ＲＭ）とを比較する。排他的論理和（ＲＭ'）とメモリ認証用乱数記憶部１８に記憶されているメモリ認証用乱数（ＲＭ）とが一致する場合には（ステップＳ２３７，Ｙｅｓ）、接続先は正しいメモリ２０であると判断し、ＮＲＭをＲＭとしてメモリ認証用乱数記憶部１８に記憶させる（ステップＳ２３８）。さらに、ＮＲＰをＲＰとしてプロセッサ認証用乱数記憶部１９に記憶させる（ステップＳ２３９）。次に、通常動作を開始する（ステップＳ２４０）。
【００９７】
ステップＳ２３７において、排他的論理和（ＲＭ'）とメモリ認証用乱数記憶部１８に記憶されているメモリ認証用乱数（ＲＭ）とが一致しない場合には（ステップＳ２３７，Ｎｏ）、プロセッサ１０は、動作を停止する（ステップＳ２４１）。
【００９８】
一方、メモリ２０は、排他的論理和（Ａ）および排他的論理和（Ｂ）を取得すると（ステップＳ２５４）、メモリ認証用乱数記憶部２９に記憶されているメモリ認証用乱数（ＲＭ）と取得した排他的論理和（Ａ）との排他的論理和を求めることにより、ステップＳ２３０において生成されたメモリ認証用乱数（ＮＲＭ）を特定する（ステップＳ２５５）。次に、特定したメモリ認証用乱数（ＮＲＭ）と、取得した排他的論理和（Ｂ）との排他的論理和（ＲＰ'）を求める（ステップＳ２５６）。
【００９９】
次に、求めた排他的論理和（ＲＰ'）とプロセッサ認証用乱数記憶部２８に記憶されているプロセッサ認証用乱数（ＲＰ）とを比較する。排他的論理和（ＲＰ'）とプロセッサ認証用乱数記憶部２８に記録されているプロセッサ認証用乱数（ＲＰ）とが一致する場合には（ステップＳ２５７，Ｙｅｓ）、接続先は、正しいプロセッサ１０であると判断し、ＮＲＰをＲＰとしてプロセッサ認証用乱数記憶部２８に記憶させる（ステップＳ２５８）。さらに、ＮＲＭをＲＭとしてメモリ認証用乱数記憶部２９に記憶させる（ステップＳ２５９）。次に、通常動作を開始する（ステップＳ２６０）。
【０１００】
ステップＳ２５７において、排他的論理和（ＲＰ'）とプロセッサ認証用乱数記憶部２８に記録されているプロセッサ認証用乱数（ＲＰ）とが一致しない場合には（ステップＳ２５７，Ｎｏ）、メモリ２０は、動作を停止する（ステップＳ２６１）。以上で、認証処理が完了する。
【０１０１】
以上のように、本実施の形態においても、認証用情報として利用されている排他的論理和が一致しない場合には、プロセッサ１０およびメモリ２０はいずれも動作を停止するので、不正行為を防止することができる。
【０１０２】
他の例としてプロセッサとメモリをつなぐバスを使う場合には、通常プロセッサがメモリをＲＥＡＤしたりＷＲＩＴＥしたりするサイクルのほかに、認証用情報交換用の特殊なＲＥＡＤとＷＲＩＴＥのサイクル（ここではそれぞれＣＲＥＡＤとＣＷＲＩＴＥと呼ぶ）を定義して実現する。
【０１０３】
図８は、プロセッサ１０からメモリ２０へメモリ認証用情報（Ａ）を送り、メモリ２０からプロセッサ１０へプロセッサ認証用情報（Ｃ）を送る場合の動作フローを示す図である。このとき、バスのコントロール信号にはＣＷＲＩＴＥを示す信号が流れる。アドレス信号にはメモリ認証用情報（Ａ）であることを示す特殊なアドレスＣＡａが流れる。データ信号にはメモリ認証用情報（Ａ）が流れる。
【０１０４】
その後、プロセッサ１０はＣＲＥＡＤ動作によってプロセッサ認証用情報（Ｃ）をメモリ２０から読み出す。このとき、バスのコントロール信号にはＣＲＥＡＤを示す信号が流れる。アドレス信号にはプロセッサ認証用情報（Ｃ）であることを示す特殊なアドレスＣＡｃが流れる。データ信号にはプロセッサ認証用情報（Ｃ）が流れる。
【０１０５】
なお、ＪＴＡＧなどの特殊な信号線を介す等の手段により、プロセッサ１０やメモリ２０の内部に記憶している認証用情報が外部から読み出されたり、外部から書き込まれたりするのを防止するのが好ましい。
【０１０６】
図９は、乱数等を交換する場合の動作フローを示す図である。図９に示すようにプロセッサ１０からメモリ２０へ排他的論理和（Ａ）と排他的論理和（Ｂ）を送り、メモリ２０からプロセッサ１０へは排他的論理和（Ｃ）と排他的論理和（Ｄ）を送る場合、図９に示すように、プロセッサ１０はまずＣＷＲＩＴＥ動作によって排他的論理和（Ａ）をメモリ２０に伝える。このときバスのコントロール信号にはＣＷＲＩＴＥを示す信号が流れる。アドレス信号には排他的論理和（Ａ）であることを示す特殊なアドレスＣＡａが流れる。データ信号には排他的論理和（Ａ）が流れる。
【０１０７】
次に、プロセッサ１０は、ＣＷＲＩＴＥ動作によって排他的論理和（Ｂ）をメモリ２０に伝える。このときバスのコントロール信号にはＣＷＲＩＴＥを示す信号が流れる。アドレス信号には排他的論理和（Ｂ）であることを示す特殊なアドレスＣＡｂが流れる。データ信号には排他的論理和（Ｂ）が流れる。
【０１０８】
その後、プロセッサ１０は、ＣＲＥＡＤ動作によって排他的論理和（Ｃ）をメモリ２０から読み出す。このとき、バスのコントロール信号にはＣＲＥＡＤを示す信号が流れる。アドレス信号には排他的論理和（Ｃ）であることを示す特殊なアドレスＣＡｃが流れる。データ信号には排他的論理和（Ｃ）が流れる。
【０１０９】
最後に、プロセッサ１０は、ＣＲＥＡＤ動作によって排他的論理和（Ｄ）をメモリ２０から読み出す。このとき、バスのコントロール信号にはＣＲＥＡＤを示す信号が流れる。アドレス信号には排他的論理和（Ｄ）であることを示す特殊なアドレスＣＡｄが流れる。データ信号には排他的論理和（Ｄ）が流れる。
【０１１０】
なお、実施の形態２にかかるコンピュータシステム１のこれ以外の構成および処理は、実施の形態１にかかるコンピュータシステム１の構成および処理と同様である。
【０１１１】
（実施の形態３）
次に、実施の形態３にかかるコンピュータシステム１について説明する。実施の形態３にかかるコンピュータシステム１の全体構成は、図１を参照しつつ説明した実施の形態１にかかるコンピュータシステム１の全体構成と同様である。
【０１１２】
電源制御装置３２は、適当なタイミングで起動停止制御装置１４および起動停止制御装置２４に対して新しい認証用情報の交換を指示する（ステップＳ１０４）。起動停止制御装置１４は、電源制御装置３２から新しい認証用情報の交換を指示されると、通常動作を停止する（ステップＳ１１０）。そして、安定な状態になると（ステップＳ１１１）、メモリ認証用情報を生成し（ステップＳ１１２）、認証用情報記憶部１６に記憶させる（ステップＳ１１３）。
【０１１３】
同様に、起動停止制御装置２４は、電源制御装置３２から新しい認証用情報の交換を指示されると、通常動作を停止する（ステップＳ１２０）。そして、安定な状態になると（ステップＳ１２１）、プロセッサ認証用情報を生成し（ステップＳ１２２）、認証用情報記憶部２６に記憶させる（ステップＳ１２３）。
【０１１４】
そして、起動停止制御装置１４は、プロセッサ認証用情報生成部２５が生成したプロセッサ認証用情報を認証用情報記憶部１６に記憶させる（ステップＳ１１４）。同様に、起動停止制御装置２４は、メモリ認証用情報生成部１５が生成したメモリ認証用情報を認証用情報記憶部２６に記憶させる（ステップＳ１２４）。以上の処理によりプロセッサ１０およびメモリ２０は、プロセッサ認証用情報およびメモリ認証用情報を共有する。
【０１１５】
以上の処理は、実施の形態１において図２を参照しつつ説明したプロセッサ１０のステップＳ１１０〜ステップＳ１１４までの処理およびメモリ２０のステップＳ１２０〜ステップＳ１２４までの処理と同様である。そして、プロセッサ１０およびメモリ２０において認証用情報の共有が完了すると、それぞれ通常動作を再開する（ステップＳ１１６，ステップＳ１２６）。以上で認証用情報生成処理が完了する。
【０１１６】
電源制御装置３２が起動停止制御装置１４および起動停止制御装置２４に対して新しい認証用情報の交換を指示するタイミングとしては、例えば１０秒に１回など一定時間経過するたびに行うこととしてもよい。また、他の例としては、演算装置１２における処理が行われていないときに行うこととしてもよい。
【０１１７】
また、本実施の形態においては、電源制御装置３２からの指示により起動停止制御装置１４および起動停止制御装置２４は、認証用情報の交換を行ったが、他の例としては、プロセッサ１０が認証用情報の交換のタイミングを決定してもよい。
【０１１８】
図１１は、実施の形態３にかかるコンピュータシステム１において、電力供給が停止した場合に実行される停止処理を示すフローチャートである。実施の形態３にかかるコンピュータシステム１においては、通常動作中に既にプロセッサ認証用情報およびメモリ認証用情報の交換が完了している。したがって、電源制御装置３２から停止前処理の指示を受け付けたときには、プロセッサ１０およびメモリ２０は、それぞれ通常動作を停止し（ステップＳ１１０，ステップＳ１２０）、安定な状態になった後に（ステップＳ１１１，ステップＳ１２１）、動作を停止する（ステップＳ１１５，ステップＳ１２５）。以上で停止処理が完了する。
【０１１９】
このように、実施の形態３にかかるコンピュータシステム１においては、停止前処理の処理量が少ないので、蓄電装置３３の容量を小さくすることができる。
【０１２０】
また、実施の形態２にかかるコンピュータシステム１においても、実施の形態３において説明したのと同様に電力供給が停止したタイミングよりも前のタイミングにおいて乱数の交換を行ってもよい。
【０１２１】
なお、実施の形態３にかかるコンピュータシステム１のこれ以外の構成および処理は、実施の形態１にかかるコンピュータシステム１の構成および処理と同様である。
【０１２２】
（実施の形態４）
図１２は、実施の形態４にかかるコンピュータシステム１の全体構成を示す図である。実施の形態４にかかるコンピュータシステム１においては、プロセッサとメモリとの間の認証を行う機構がプロセッサコアを内蔵するシステムＬＳＩ内に設けられている。
【０１２３】
ここで、システムＬＳＩとは、従来独立したＬＳＩチップであったプロセッサや周辺回路をワンチップのＬＳＩ中に搭載したものである。従来は、プロセッサはひとつあるいは複数個のＬＳＩチップとしてとして作られることが多かった。しかし、ＬＳＩの集積度の向上により、このようなシステムＬＳＩが実現されている。なお、システムＬＳＩはまたＳｏＣ（Ｓｙｓｔｅｍ  ｏｎ  Ｃｈｉｐ）などと呼ばれている。また、その中に実装されるプロセッサはプロセッサコアなどと呼ばれている。
【０１２４】
図１２に示すように、コンピュータシステム１は、システムＬＳＩ５０と、メモリ２０と、電源ユニット３０とを備えている。システムＬＳＩ５０は、プロセッサコア５１と、起動停止装置５２と、メモリコントローラ５３と、チップ内高速バス５４とを有している。さらに、起動停止装置５２は、起動停止制御装置１４と、メモリ認証用情報生成部１５と、認証用情報記憶部１６とを有している。
【０１２５】
このように、起動停止制御装置１４と、メモリ認証用情報生成部１５と、認証用情報記憶部１６は、プロセッサコア５１とは独立の回路としてシステムＬＳＩ５０に組み込まれている。
【０１２６】
プロセッサコア５１は、記憶制御装置１１と、演算装置１２と、制御装置１３とを有している。プロセッサコア５１は、通常のプロセッサと同等の機能を持つ回路である。プロセッサコア５１は、他の周辺回路とチップ内のチップ内高速バス５４によって接続されている。プロセッサコア５１は、チップ内高速バス５４を介してメモリコントローラ５３を経由し、システムＬＳＩ５０に接続されたメモリ２０にアクセスし、データ等の読み書きを行う。メモリコントローラ５３は、チップ内高速バス５４の転送プロトコルと、外部のメモリ２０にアクセスするシステムＬＳＩ５０の転送プロトコル間の変換を行う。
【０１２７】
起動停止装置５２の起動停止制御装置１４は、チップ内高速バス５４に接続している。また起動停止制御装置１４は、電源ユニット３０と接続している。さらに起動停止制御装置１４を介してメモリ２０と接続している。起動停止制御装置１４とメモリコントローラ５３との間のデータの受け渡しおよび起動停止制御装置１４とプロセッサコア５１との間のデータの受け渡しは、チップ内高速バス５４を介して行われる。
【０１２８】
図１３は、実施の形態４にかかるコンピュータシステム１において、電力供給が停止した場合に実行される停止処理を示すフローチャートである。実施の形態４においては、蓄電装置３３からの電力供給が開始すると（ステップＳ１０１）、電源制御装置３２は、起動停止装置５２の起動停止制御装置１４および起動停止制御装置２４に対して電力供給停止情報を送る（ステップＳ１０２）。
【０１２９】
起動停止制御装置１４は、電源制御装置３２から電力供給停止情報を受け付けると、プロセッサコア５１に停止を指示する（ステップＳ１６０）。具体的には、起動停止制御装置１４は、例えば割り込みなどの方法により、動作停止の指示をプロセッサコア５１に送る。
【０１３０】
プロセッサコア５１は、停止指示を受けると、このとき進行していた通常動作を停止させる（ステップＳ１１０）。次に、プロセッサコア５１は、安定な状態になるまで待機する（ステップＳ１１１）。そして、安定な状態になると、次に、プロセッサコア５１は、自身の動作を停止することを起動停止装置５２に通知する（ステップＳ１６１）。
【０１３１】
具体的には、プロセッサコア５１は、起動停止制御装置１４の特定のレジスタに書き込むなどの方法で動作停止を起動停止制御装置１４に通知する。次に、プロセッサコア５１は、動作を停止する（ステップＳ１６２）。
【０１３２】
起動停止装置５２の起動停止制御装置１４は、プロセッサコア５１から動作停止の通知を受けると（ステップＳ１６１）、メモリコントローラ５３に停止を指示する（ステップＳ１６３）。具体的には、起動停止制御装置１４は、メモリコントローラ５３の特定のレジスタに書き込むなどの方法で、メモリコントローラ５３に動作停止を指示する。
【０１３３】
次に、起動停止装置５２のメモリ認証用情報生成部１５は、起動停止制御装置１４からの指示によりメモリ認証用情報を新たに生成する（ステップＳ１１２）。以下、ステップＳ１１３〜ステップＳ１１５の処理を行い、起動停止装置５２自身の動作を停止する。
【０１３４】
メモリコントローラ５３は、起動停止装置５２から停止指示を受け付けると（ステップＳ１６３）、自身の動作を停止する（ステップＳ１６４）。以上で停止処理が完了する。これ以外の処理は、実施の形態１において図２を参照しつつ説明した処理と同様である。
【０１３５】
なお、プロセッサコア５１は動作を停止しているので、システムＬＳＩ５０内に、プロセッサコア５１以外にメモリ２０にアクセスする周辺機器が設けられていない場合には、メモリコントローラ５３の動作を停止しなくてもよい。
【０１３６】
図１２に示した構成では起動停止制御装置１４と起動停止制御装置２４はバス４０を介して認証情報の交換を行うが、起動停止制御装置１４がメモリコントローラ５３を介して認証情報の交換を行うように実施してもよい。この場合、図１３の停止処理のフローチャートにおいて、起動停止制御装置によるメモリコントローラ停止の指示（ステップＳ１６３）は認証情報の共有処理（ステップＳ１１４）の後に行うように実施する。
【０１３７】
図１４は、実施の形態４にかかるコンピュータシステム１において、電力供給が停止した後、再び電力供給が開始した場合に行う認証処理を示すフローチャートである。実施の形態４においては、起動停止制御装置１４が起動停止制御装置２４から受け取ったメモリ認証用情報と、メモリ認証用情報生成部１５が生成し、認証用情報記憶部１６に記憶されているメモリ認証用情報とを比較した結果（ステップＳ２１１）、これら２つのメモリ認証用情報が一致した場合には、メモリ２０の認証に成功したと判断し（ステップＳ２１２，Ｙｅｓ）、通常動作を再開する旨をプロセッサコア５１およびメモリコントローラ５３に指示する（ステップＳ２７０）。
【０１３８】
具体的には、起動停止制御装置１４は、メモリコントローラ５３の特定のレジスタにアクセスすることにより、通常動作を開始する旨を指示してもよい。また、起動停止制御装置１４は、プロセッサコア５１に対して割り込みにより指示する。また、他の例としては、プロセッサコア５１が起動停止制御装置１４の特定のレジスタの値をポーリングして通常動作を開始する旨を取得することとしてもよい。
【０１３９】
プロセッサコア５１は、通常動作を再開する旨の指示を受け取ると（ステップＳ２７０）、通常動作を開始する（ステップＳ２１３）。メモリコントローラ５３は、通常動作を開始する旨の指示を受け取ると（ステップＳ２７０）、通常動作を開始する（ステップＳ２７１）。
【０１４０】
また、ステップＳ２１２において認証に失敗した場合には（ステップＳ２１２，Ｎｏ）、プロセッサコア５１およびメモリコントローラ５３のいずれの動作も開始しない。
【０１４１】
なお、他の例としては、メモリコントローラ５３の通常動作は開始しないが、プロセッサコア５１の通常動作を開始することとしてもよい。これにより、メモリコントローラ５３が停止しているので、メモリ２０へのアクセスは行われない。さらに、プロセッサコア５１は、ローカルメモリを有しているので（後述）、ローカルメモリを利用して動作することができる。
【０１４２】
なお、これ以外の処理は、実施の形態１において図３を参照しつつ説明した処理と同様である。
【０１４３】
図１５は、実施の形態４にかかるコンピュータシステム１のシステムＬＳＩ５０のより詳細な機能構成を示す図である。例えば、図１５に示すシステムＬＳＩ５０は、図１２を参照しつつ説明した機能に加えて、グラフィックコントローラ６０と、ローカルメモリ６１と、ネットワークコントローラ６２とを有している。グラフィックコントローラ６０は、表示に関する処理を行う。ネットワークコントローラ６２は、ネットワークアクセスを制御する。
【０１４４】
システムＬＳＩ５０内にあるプロセッサコア５１以外の周辺回路（例えば、グラフィックコントローラ６０など）が外部のメモリ２０をアクセスする場合にも、メモリコントローラ５３を経由する。
【０１４５】
システムＬＳＩ５０は、複数のバスを有する。本実施の形態にかかるシステムＬＳＩ５０は、チップ内高速バス５４に加えて、低速の周辺回路（タイマー、シリアル入出力、キーボード）を接続するチップ内ペリフェラルバスを有する。チップ内ペリフェラルバスは、チップ内高速バス５４とは独立に設けられている。チップ内高速バス５４とチップ内ペリフェラルバスの間は、バスブリッジ６３で接続されている。さらに、チップ内ペリフェラルバスには、タイマー６５、シリアル入出力６６およびキーボード入出力６７が接続されている。
【０１４６】
実施の形態４にかかるコンピュータシステム１のこれ以外の構成および処理は、実施の形態１にかかるコンピュータシステム１の構成および処理と同様である。
【０１４７】
実施の形態４にかかるコンピュータシステム１の第１の変更例としては、システムＬＳＩ５０は、複数のプロセッサコアを備えてもよい。この場合には、いずれのプロセッサコアも外部のメモリ２０にアクセスする場合には、メモリコントローラ５３を経由する。
【０１４８】
図１６は、実施の形態４にかかるコンピュータシステム１の第２の変更例を説明するための図である。図１６に示すように、第２の変更例にかかるコンピュータシステム１においては、起動停止装置５２は、プロセッサコア５１と専用の信号線４１を介して接続している。また、起動停止装置５２は、メモリコントローラ５３とも専用の信号線４２を介して接続している。この場合には、起動停止装置５２は、プロセッサコア５１およびメモリコントローラ５３とのデータの受け渡しは、専用の信号線４１，４２を利用して行う。
【０１４９】
図１７は、実施の形態４にかかるコンピュータシステム１の第３の変更例を説明するための図である。図１７に示すように、第３の変更例にかかるコンピュータシステム１においては、起動停止制御装置１４は、チップ内高速バス５４を介して他の周辺回路と接続しつつ、さらに起動停止制御装置１４とプロセッサコア５１との間の専用の信号線４１および起動停止制御装置１４とメモリコントローラ５３の間の専用の信号線４２を設けてもよい。
【０１５０】
この場合には、起動停止制御装置１４とプロセッサコア５１の間のデータの受け渡しは、起動停止制御装置１４とプロセッサコア５１の間の専用信号線４１を介して行ってもよく、またチップ内高速バス５４を介して行ってもよい。また、起動停止制御装置１４とメモリコントローラ５３の間のデータの受け渡しは、起動停止制御装置１４とメモリコントローラ５３の間の専用の信号線４２を介して行ってもよく、またチップ内高速バス５４を介して行ってもよい。
【０１５１】
実施の形態４にかかるコンピュータシステム１は、実施の形態２にかかるコンピュータシステム１のように、乱数発生器を用いて認証用情報を生成することとしてもよい。また、実施の形態４にかかるコンピュータシステム１は、実施の形態３にかかるコンピュータシステム１のように、認証用情報の交換を、電源３１からの電力供給停止時ではなく通常動作中に定期的に行うようにしてもよい。このように、他の実施の形態にかかるコンピュータシステム１における処理を組み合わせてもよい。
【０１５２】
（実施の形態５）
図１８は、実施の形態５にかかるコンピュータシステム１の全体構成を示す図である。実施の形態５にかかるコンピュータシステム１においては、認証を行う機構はシステムＬＳＩ内のメモリコントローラに組み込まれている。
【０１５３】
図１８に示すように、実施の形態５にかかるシステムＬＳＩ５０は、プロセッサコア５１と、メモリコントローラ５３と、チップ内高速バス５４とを有している。さらに、メモリコントローラ５３は、起動停止制御装置１４と、メモリ認証用情報生成部１５と、認証用情報記憶部１６と、バス変換装置５５とを有している。
【０１５４】
起動停止制御装置１４とプロセッサコア５１とは、バス変換装置５５およびチップ内高速バス５４を介して接続されている。このように、メモリコントローラ５３内に認証を行う機構を組み込んでもよい。
【０１５５】
なお、実施の形態５にかかるコンピュータシステム１のこれ以外の構成および処理は、実施の形態４にかかるコンピュータシステム１の構成および処理と同様である。
【０１５６】
図１９は、第１の変更例にかかるコンピュータシステム１の全体構成を示す図である。このように、起動停止制御装置１４とプロセッサコア５１は、専用の信号線４５を介して接続してもよい。この場合には、プロセッサコア５１と、起動停止制御装置１４の間のデータの受け渡しは、専用の信号線４５を介して行う。
【０１５７】
また、第２の変更例としては、実施の形態５においては、起動停止制御装置１４は、バス変換装置５５を介してチップ内高速バス５４に接続したが、バス変換装置５５を設けず、起動停止制御装置１４をチップ内高速バス５４に直接接続してもよい。
【図面の簡単な説明】
【０１５８】
【図１】実施の形態１にかかるコンピュータシステム１の全体構成を示す図である。
【図２】実施の形態１にかかるコンピュータシステム１において、電力供給が停止した場合に実行される停止処理を示すフローチャートである。
【図３】実施の形態１にかかるコンピュータシステム１において、電力供給が停止した後、再び電力供給が開始した場合に行う認証処理を示すフローチャートである。
【図４】プロセッサ１０のみが認証用情報を生成する場合のコンピュータシステム１の全体構成を示す図である。
【図５】実施の形態２にかかるコンピュータシステム１の全体構成を示す図である。
【図６】実施の形態２にかかるコンピュータシステム１において、電力供給が停止した場合に実行される停止処理を示すフローチャートである。
【図７】実施の形態２にかかるコンピュータシステム１において、電力供給が停止した後、再び電力供給が開始した場合に行う認証処理を示すフローチャートである。
【図８】プロセッサ１０からメモリ２０へメモリ認証用情報（Ａ）を送り、メモリ２０からプロセッサ１０へプロセッサ認証用情報（Ｃ）を送る場合の動作フローを示す図である。
【図９】乱数等を交換する場合の動作フローを示す図である。
【図１０】実施の形態３にかかるコンピュータシステム１における認証用情報生成処理を示すフローチャートである。
【図１１】実施の形態３にかかるコンピュータシステム１において、電力供給が停止した場合に実行される停止処理を示すフローチャートである。
【図１２】実施の形態４にかかるコンピュータシステム１の全体構成を示す図である。
【図１３】実施の形態４にかかるコンピュータシステム１において、電力供給が停止した場合に実行される停止処理を示すフローチャートである。
【図１４】実施の形態４にかかるコンピュータシステム１において、電力供給が停止した後、再び電力供給が開始した場合に行う認証処理を示すフローチャートである。
【図１５】実施の形態４にかかるコンピュータシステム１のシステムＬＳＩ５０のより詳細な機能構成を示す図である。
【図１６】実施の形態４にかかるコンピュータシステム１の第２の変更例を説明するための図である。
【図１７】実施の形態４にかかるコンピュータシステム１の第３の変更例を説明するための図である。
【図１８】実施の形態５にかかるコンピュータシステム１の全体構成を示す図である。
【図１９】実施の形態５の第１の変更例にかかるコンピュータシステム１の全体構成を示す図である。
【符号の説明】
【０１５９】
１  コンピュータシステム
１０  プロセッサ
１１  記憶制御装置
１２  演算装置
１３  制御装置
１４  起動停止制御装置
１５  メモリ認証用情報生成部
１６  認証用情報記憶部
１７  メモリ認証用乱数発生器
１８  メモリ認証用乱数記憶部
１９  プロセッサ認証用乱数記憶部
２０  メモリ
２１  不揮発性記憶素子
２４  起動停止制御装置
２５  プロセッサ認証用情報生成部
２６  認証用情報記憶部
２７  プロセッサ認証用乱数発生器
２８  プロセッサ認証用乱数記憶部
２９  メモリ認証用乱数記憶部
３０  電源ユニット
３１  電源
３２  電源制御装置
３３  蓄電装置
４０  バス
４１，４２，４５  信号線
５０  システムＬＳＩ
５１  プロセッサコア
５２  起動停止装置
５３  メモリコントローラ
５４  チップ内高速バス
６０  グラフィックコントローラ
６１  ローカルメモリ
６２  ネットワークコントローラ
６３  バスブリッジ
６４  チップ内ペリフェラルバス
６５  タイマー
６６  シリアル入出力
６７  キーボード入出力
【図１】
2006309688.tif 000003
【図２】
2006309688.tif 000004
【図３】
2006309688.tif 000005
【図４】
2006309688.tif 000006
【図５】
2006309688.tif 000007
【図６】
2006309688.tif 000008
【図７】
2006309688.tif 000009
【図８】
2006309688.tif 000010
【図９】
2006309688.tif 000011
【図１０】
2006309688.tif 000012
【図１１】
2006309688.tif 000013
【図１２】
2006309688.tif 000014
【図１３】
2006309688.tif 000015
【図１４】
2006309688.tif 000016
【図１５】
2006309688.tif 000017
【図１６】
2006309688.tif 000018
【図１７】
2006309688.tif 000019
【図１８】
2006309688.tif 000020
【図１９】
2006309688.tif 000021