(57)【要約】【課題】  メディアなどのコンテンツの保護を高いレベルで行う事である。    【解決手段】  データの入出力制御及びデータ処理のための命令の実行を行う命令実行部及び、データを一時的に保持するキャッシュメモリを有するプロセッサーコア１２２と、プロセッサーコア１２２に接続され、キャッシュメモリを含むメモリの管理を行うメモリ管理部１２３と、プロセッサーコア１２２及びメモリ管理部１２３に接続され、このマイクロプロセッサー１２１の外部とのデータの入出力を行う際にデータバスの信号を入れ換え可能なバスインターフェイス１２４と、を有するようにしてある。このバスインターフェイス１２４は、データの入出力を行うデータ入出力部１２８と、データの入出力の際に、データバスの接続状況の入れ換えを行うプリルーター１２９と、所定のビット数の単位で前記データバスの接続状況の入れ換えを行うバススイッチ１３０と、を有するようにしてある。【選択図】  図２
2005078494.tif 000002
【特許請求の範囲】
【請求項１】
マイクロプロセッサーにおいて、
データの入出力制御及び前記データ処理のための命令の実行を行う命令実行部及び、前記データを一時的に保持するキャッシュメモリを有するプロセッサーコアと、
前記プロセッサーコアに接続され、前記キャッシュメモリを含むメモリの管理を行うメモリ管理部と、
前記プロセッサーコア及び前記メモリ管理部に接続され、このマイクロプロセッサーの外部との前記データの入出力を行う際にデータバスの信号を入れ換え可能なバスインターフェイスと、
を有することを特徴とするマイクロプロセッサー。
【請求項２】
前記バスインターフェイスは、
前記プロセッサーコア及びメモリ管理部に接続され、データの入出力を行うデータ入出力部と、
前記データ入出力部に接続され、前記データの入出力の際に、データバスの接続状況の入れ換えを行うスイッチング回路と、
前記スイッチング回路に接続され、所定のビット数の単位で前記データバスの接続状況の入れ換えを行うバススイッチと、
を有することを特徴とする請求項１記載のマイクロプロセッサー。
【請求項３】
前記メモリ管理部は、
前記データバスの信号の入れ替えを制御する情報であるプリルーティング情報を格納するプリルーティング格納部と、
前記プロセッサーコア内で生成された仮想アドレスを物理アドレスに変換する際に参照される情報を格納するアドレス変換キャッシュメモリと、
を有することを特徴とする請求項２記載のマイクロプロセッサー。
【請求項４】
前記プリルーティング情報は、前記メモリ管理部に保持されることを特徴とする請求項３記載のマイクロプロセッサー。
【請求項５】
前記プリルーティング情報は、外部アクセスの段階で、前記メモリ管理部から前記スイッチング回路に転送されることを特徴とする請求項４記載のマイクロプロセッサー。
【請求項６】
前記スイッチング回路は１ビット単位で前記データバスの接続状況の入れ換えを行うことを特徴とする請求項２記載のマイクロプロセッサー。
【請求項７】
前記バススイッチは、バススイッチ制御情報に基づいて、前記データバスの接続状況の入れ換えの制御を行うことを特徴とする請求項２記載のマイクロプロセッサー。
【請求項８】
前記バススイッチ制御情報は、前記メモリ管理部に保持されることを特徴とする請求項７記載のマイクロプロセッサー。  
【請求項９】
前記バススイッチは、前記メモリ管理部が管理するページ単位で接続状況の入れ換えを行うことを特徴とする請求項２記載のマイクロプロセッサー。
【請求項１０】
前記メモリ管理部は、アドレス変換キャッシュメモリの各エントリーにバススイッチ制御情報を格納することを特徴とする請求項９記載のマイクロプロセッサー。  
【請求項１１】
前記バススイッチ制御情報は、前記プロセッサーコアのキャッシュメモリの各エントリーに格納されることを特徴とする請求項１０記載のマイクロプロセッサー。
【請求項１２】
前記バススイッチは、前記プロセッサーコアから外部へのアクセスが発行された場合には、前記バススイッチ制御情報を受け取り、前記バススイッチ制御情報に基づいてデータバスの接続状況の入れ換えを行うことを特徴とする請求項９記載のマイクロプロセッサー。
【請求項１３】
前記メモリ管理部は、バススイッチ制御情報を格納するバススイッチ制御情報保持部を有し、外部アクセスの段階で、前記アドレス変換キャッシュメモリに格納される物理アドレスに基づき、該当するバススイッチ制御情報を送信することを特徴とする請求項３記載のマイクロプロセッサー。
【請求項１４】
映像音声システムにおいて、
データの入出力制御の命令の実行を行う命令実行部及び、前記データを一時的に保持するキャッシュメモリを有するプロセッサーコア、前記プロセッサーコアに接続され、前記キャッシュメモリを含むメモリの管理を行うメモリ管理部、及び、前記プロセッサーコア及び前記メモリ管理部に接続され、このプロセッサーの外部との前記データの入出力を行う際にデータバスの信号を入れ換え可能なバスインターフェイス、を有するマイクロプロセッサーと、
コンテンツを格納する記憶装置と、
前記記憶装置に接続され、前記記憶装置内に格納されるコンテンツの送受信を行うブリッジ部と、
前記ブリッジ部に接続され、ブリッジ部から送信されたコンテンツを一時的に保持するメモリ部と、
前記メモリ部に接続され、前記プロセッサーにより加工されたデータのデータをアナログに変換して出力するアナログ変換部と、
を有することを特徴とする映像音声システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイクロプロセッサー及び映像音声システムに関し、特に、メディアなどのコンテンツの保護を高いレベルかつ低コストで行う技術に関する。
【背景技術】
【０００２】
現在、映像音声等を扱う機器には、映像音声情報の再生処理等を行うためにマイクロプロセッサーや専用ＬＳＩが搭載されている。映像や音声等のデータ（以下、コンテンツと記す）は光ディスク等の物理メディアや、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）のような磁気記憶装置に格納されている場合が多い。近年、映像音声などの情報は、著作権保護のために特殊な方法で暗号化などが施され、上記光ディスクや磁気記憶装置に格納されるのが殆どである。上記のような記憶装置に格納されたコンテンツの保護やセキュリティ対策を施しているため、格納されたデータを悪用して他の装置で再生しようとする者がいたとしても、通常は簡単にはセキュリティを破ることはできない。しかし、解析する上でのヒントがあれば、コンピューター上でのデータ処理によって、簡単にセキュリティが破られてしまう可能性がある。解析する上でのヒントとなる情報は、最終的にデータを処理する部分、つまりプロセッサーや専用ＬＳＩの周辺に存在する。そこではまさに暗号化された情報が、暗号が解かれた元の情報に変換されている。その暗号が解かれて変換された情報の多くはデータ処理を行うプロセッサーや専用ＬＳＩに接続されるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）といったメモリに格納される。
【０００３】
この場合、ＲＡＭ自体の信号を測定装置でもって測定しデータを解析していくと、その解析情報がヒントとなり、セキュリティが破られるきっかけになる可能性がある。
【０００４】
そのため従来技術としては、そのメモリのバスを外部から隠蔽するために、プロセッサーとメモリを１チップにまとめるといった手法が使われたり、プロセッサーの素性がわからないように異なった型番をＩＣのパッケージにシルク印刷したりする方法が取られてきた。
【０００５】
一方、従来の秘密情報の解読攻撃対抗方法においては、変換後の秘密情報を格納する揮発性メモリへの書き込み時に情報を任意に変換する手段を具備し、この変換手段により秘密情報を電子機器毎及び揮発性メモリに書き込む毎に異なる場所に変換して格納するようにする技術が開示されている（例えば、特許文献１参照。）。
【０００６】
また、マイクロプロセッサー内のバスインターフェースユニットに仮想アドレスを物理アドレスに変換するアドレス変換手段と、マイクロプロセッサー外部のメモリから指定された物理アドレスに対応する内容を読み出すメモリ読み出し手段を含み、命令ＴＬＢでは、アドレス変換規則と、各々が仮想アドレスで指定された範囲の暗号化属性情報を有する１以上のエントリーを含むテーブルを格納する技術について開示されている（例えば、特許文献２参照。）。
【特許文献１】特開平１１−４５２１２号公報（第１図）
【特許文献２】特開２００１−２３０７７０号公報（第５図）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記の手法では専用品を製造する必要があり、低コスト化が非常に困難である。従って、システムコスト上の問題で、基本的にメモリは汎用品を使う場合がほとんどなので、メモリにつながる信号線とその信号線の機能はすぐに突き止められてしまう可能性があるという問題点があった。
【０００８】
本発明は上記事情に鑑みて成されたものであり、その目的とするところはメディアなどのコンテンツの保護を高いレベルで行うマイクロプロセッサー及びセキュリティ機能を有する映像音声システムを安価で提供することにある。
【課題を解決するための手段】
【０００９】
本願発明の一態様によれば、データの入出力制御及び前記データ処理のための命令の実行を行う命令実行部及び、前記データを一時的に保持するキャッシュメモリを有するプロセッサーコアと、前記プロセッサーコアに接続され、前記キャッシュメモリを含むメモリの管理を行うメモリ管理部と、前記プロセッサーコア及び前記メモリ管理部に接続され、このマイクロプロセッサーの外部との前記データの入出力を行う際にデータバスの信号を入れ換え可能なバスインターフェイスと、を有することを特徴とするマイクロプロセッサーが提供される。
【００１０】
また、本願発明の一態様によれば、データの入出力制御の命令の実行を行う命令実行部及び、前記データを一時的に保持するキャッシュメモリを有するプロセッサーコア、前記プロセッサーコアに接続され、前記キャッシュメモリを含むメモリの管理を行うメモリ管理部、及び、前記プロセッサーコア及び前記メモリ管理部に接続され、このプロセッサーの外部との前記データの入出力を行う際にデータバスの信号を入れ換え可能なバスインターフェイス、を有するマイクロプロセッサーと、コンテンツを格納する記憶装置と、前記記憶装置に接続され、前記記憶装置内に格納されるコンテンツの送受信を行うブリッジ部と、前記ブリッジ部に接続され、ブリッジ部から送信されたコンテンツを一時的に保持するメモリ部と、前記メモリ部に接続され、前記プロセッサーにより加工されたデータのデータをアナログに変換して出力するアナログ変換部と、を有することを特徴とする映像音声システムが提供される。
【発明の効果】
【００１１】
以上説明したように、本発明によれば、メディアなどのコンテンツの保護を高いレベルで行うマイクロプロセッサー及びセキュリティ機能を有する映像音声システムを提供することができる。
【発明を実施するための最良の形態】
【００１２】
本発明に係るマイクロプロセッサー及びセキュリティ機能を有する映像音声システムの実施形態について、図面を参照しながら詳細に説明する。
【００１３】
図１は本実施形態の映像音声システムを示すブロック図である。この映像音声システム１０１は、プロセッサー１０２と、メモリ１０３と、ブリッジ部１０４と、記憶装置１０５と、映像アナログ変換部１０８と、を有する。プロセッサー１０２は、データの管理およびデータの処理を行う。ここで、本実施形態においては、プロセッサー１０２はセキュリティ機能を強化するため、このプロセッサー外部へのデータを出力する際には、そのデータに係る信号の入れ替えを行う。プロセッサー１０２はローカルバス１１０に接続され、このローカルバス１１０を経由して各種データの入出力を行う。メモリ１０３はローカルバス１１０に接続され、各種データを一時的に保持する機能を有する。ブリッジ部１０４はローカルバス１１０及びドライブ接続バス１１１、１１２に接続され、ローカルバス１１０とドライブ接続バス１１１，１１２とのインターフェースを担う。記憶装置１０５は、映像や音声等のコンテンツを格納する。記憶装置１０５には、光学系記憶装置１０６と磁気系記憶装置１０７とが含まれる。ここで光学系記憶装置１０６は、例えば、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭといった記憶媒体を扱う装置が用いられる。また、磁気系記憶装置１０７は、ＨＤＤ（ハードディスクドライブ）といった装置が用いられる。これらの記憶装置は、専用の信号線であるドライブ接続バス１１１，１１２によってブリッジ部１０４と接続される。光学系記憶装置１０６や磁気系記憶装置１０７に格納されている映像や音声等のコンテンツは圧縮を行うというように、コンテンツの全容量を減らすという目的と、そのままのデータ形式では映像や音声として観賞することができないようにするという意図も含めて、データの形式を変える形で格納されるようにしても良い。なお、この映像音声システム１０１は映像及び音声のみを取り扱うシステムに限られず、記憶装置１０５に記憶可能な様々なコンテンツを取り扱うことができる。
【００１４】
次に、この映像音声システムが映像や音声等のコンテンツが再生される場合について説明する。まず、プロセッサー１０２の指示により、記憶装置１０５に格納されたコンテンツは、ドライブ接続バス１１１，１１２を経由してブリッジ部１０４へ転送され、さらに、ローカルバス１１０を経由してメモリ１０３に転送される。この段階では、メモリ上に転送されたコンテンツの情報は、記憶装置１０５に格納されているコンテンツの状態と同じものであり、通常は、圧縮等の処理が施されている。プロセッサー１０２は、メモリ上のコンテンツの情報を元にデータの処理を行ない、観賞等することが可能な映像情報または音声情報に変換を施す。プロセッサー１０２による変換が終了した結果得られる、映像や音声として観賞可能な情報は、ローカルバス１１０を経由して一旦メモリ１０３に格納され、その後、映像音声アナログ変換部１０８に転送され、デジタル情報からアナログ情報に変換され、アナログ情報は、映像音声出力として出力される。
【００１５】
図２は、本実施形態のマイクロプロセッサーを示すブロック図である。このマイクロプロセッサー１２１は、外部のメモリと接続されるバスインターフェイス１２４にデータバスシャッフル機構を備えるものである。本実施形態では、データバスを３２ビット長とした場合について以下に説明する。このマイクロセッサ１２１は、プロセッサーコア１２２と、メモリ管理部（ＭＭＵ）１２３と、外部バスインターフェイス部１２４と、を有する。プロセッサーコア１２２は、データの入出力制御及びデータ処理のための命令の実行を行う命令実行部１２５と、データを一時的に保持するキャッシュメモリ１２６とを有する。命令実行部１２５による命令を読み出す作業である命令フェッチ処理、命令実行部１２５のロード命令やストア命令等の実行処理、若しくは、キャッシュメモリ１２６で発生したキャストアウト処理（不要なエントリー情報を外部メモリに退避させる処理）によって外部バスインターフェイスに接続されているメモリにアクセスする必要がある場合、そのアクセス情報は内部データバス１２７を介して、外部バスインターフェイス１２４に送られる。ここで、キャストアウト処理とは、キャッシュメモリからあふれた情報を外部メモリに書き戻す処理を言う。
【００１６】
このようにして、実際に外部バスインターフェイス部１２４を介して外部バスに接続されているメモリにアクセスする場合、データの転送方向に関わらず外部バスインターフェイス部１２４を経由するようにする。ここで、この外部バスインターフェイス部１２４は、プロセッサーコア１２２及びメモリ管理部１２３とのデータの入出力を行うデータ入出力部１２８と、データバス信号のシャッフルを行うためのスイッチング回路（以下、プリルーターとも記す）１２９と、バススイッチ１３０と、を有するようにしてある。ここで、本実施形態においては、バススイッチ１３０は４ビット幅にしたが、これには限られずコスト等の条件に応じて何ビット幅でも実施可能である。
【００１７】
次に、プリルーター１２９について説明する。プリルーター１２９は、外部バスインターフェイスのデータバスと内部デ−タバス１２７間で、１ビット単位で信号の入れ換えを行う（シャッフル）機能を有し、いわば、スイッチャとしての役目をする。プリルーター１２９によるデータバスのシャッフルの制御は、ＭＭＵ１２３に存在するプリルーター用レジスター１３１に格納されている情報を元に行われる。この情報をプリルーティング情報とする。プリルーティング情報には、外部バスインターフェイスのデータバスの各信号と、内部バスインターフェイスのデータバスの各信号の接続状況を示した情報が格納される。
【００１８】
図３は、プリルーター１２９が格納するプリルーティング情報のフォーマット例を示す図である。図示の如く、外部バスインターフェイスのデータバスが３２ビットの時には、プリルーティング情報は、５ビットのパラメーターを３２個格納できるように、１６０ビットで構成される。ここで、５ビットのパラメーターというのは、外部バスのデータバス３２ビットの信号線それぞれに名前代わりに特定の番号をつけるために使われる。
【００１９】
例を挙げると、仮に、外部データバスのＤ［０］信号は十六進数で０ｘ００が割り当てられ、Ｄ［３１］信号は同様に０ｘ１Ｆが割り当てられることになる。このような方法で、内部データバスのあるビットと接続される外部データバスのビットを対応付けることができる。
【００２０】
図４は、図３のプリルーティング情報を例にしたプリルーター接続例を説明するための図である。本図を用いて具体的に接続例を説明する。内部データバスにおけるＤ［３１］の部分に接続される外部データバスは、プリルーティング情報の［３１］を見ると０ｘ０７になっているので、外部データバスのＤ［０７］が接続されることになる。また、Ｄ［３０］の部分に接続される外部データバスは、プリルーティング情報の［３０］を見ると０ｘ１３になっているので、外部データバスのＤ［１９］が接続されることになる。以下同じようにして結び付けていく。プリルーティング情報は、実際に外部にアクセスが行われる段階で、プリルーター用レジスター１３１からプリルーター制御線１３３を通してプリルーターに送られる。ここで、実際にプロセッサーに実装する上では、プリルーティング用レジスターは複数持たせることも可能である。その場合には、プリルーティング情報の選択方法として、アクセスするアドレスの上位側の情報を利用するという方法も考えられる。
【００２１】
図５は、本実施形態の４ビットバススイッチ１３０を示す図である。バススイッチのビット数は何ビットでも良いが、本実施形態においては、４ビットの例を挙げる。このバススイッチは、ＭＭＵ１２３が管理するページ単位で、ある決まったビット数範囲内でのシャッフルを切り替えることができるように搭載したものである。
【００２２】
このバススイッチの目的は、ページ単位でシャッフルのパターンを切り替えることにより、よりデータの構成を外部から分かりにくくすることである。このバススイッチ３２ビットのデータバスを４ビット単位に分割し、それぞれに４ビット幅のバススイッチを設ける。つまり３２ビットのデータバスの場合、４ビットバススイッチは８個必要になる。この４ビットのバススイッチは、その内部バス側（正確にはプリルーター側）と外部バス側のそれぞれ４ビットデータバス間で任意に接続関係を変えられるスイッチである。
【００２３】
４ビットバススイッチに接続される各信号の接続関係を制御するためにバススイッチ制御信号が設けられているが、データのシャッフルの度合いを高めるため、各バススイッチに別々に設けることようにしてもよい。図５の実施形態においては、４ビットスイッチ１３０は、４つのスイッチ部を有する。これらスイッチは、バススイッチ制御情報に基づいて動作を行う。本実施形態の場合において、バススイッチ制御情報は５ビットになる。５ビットである理由は、４ビット対４ビット同士の接続の組み合わせの総数は２４通りあるため、その２４通りを表すことが可能なパラメーターとして５ビットを選択したためである。
【００２４】
図６は、バススイッチ制御信号と接続状況の対応を示す図である。図５に示す４ビットバススイッチにおいては、内部バス側（プリルーター側）の信号Ａ，Ｂ，Ｃ，Ｄと、外部データバス側の信号Ｅ，Ｆ，Ｇ，Ｈとの接続は、信号Ａは信号Ｈに接続され、信号Ｂは信号Ｅに接続され、信号Ｃは信号Ｇに接続され、信号Ｄは信号Ｆに接続される。
【００２５】
図７は、バススイッチの接続状況とバススイッチ制御信号のパラメーターの組み合わせを示す図表である。この図表において、各行（横方向）は、あるバススイッチ制御信号（情報）における接続状況を示している。バススイッチ接続状況の「Ａ」の列（縦方向）に示されているＥ、Ｆ、Ｇ、Ｈという記号があるバススイッチ制御信号（情報）における、内部バス（プリルーター）側のＡ信号と接続される外部バス側の信号であることを示している。ここで、図５において、バススイッチ制御信号（情報）は十六進数で“０ｘ１９”となっている。この値で図７を見ると、Ａ信号にはＨ信号が接続され、Ｂ信号にはＥ信号が、Ｃ信号にはＧ信号が、Ｄ信号にはＦ信号が接続されるということになり、これは図５に示した場合と一致する。このように、図５のバススイッチは図７の図表に基づいて接続される。
【００２６】
外部バスのデータバス幅が３２ビットの場合には、４ビットバススイッチは８個必要になる。バススイッチが８個になるので、それらのバススイッチを制御するバススイッチ制御信号は８個分になり、５ビット×８＝４０ビットの信号（情報）になる。バススイッチの切り替えパターンを、ページ単位で管理するために、本実施形態ではＭＭＵ（メモリ管理ユニット）のアドレス変換キャッシュメモリであるＴＬＢ（Ｔａｂｌｅ  ｌｏｏｋａｓｉｄｅ  ｂｕｆｆｅｒ）１３２の各エントリーに格納する。
【００２７】
図８は、本実施形態におけるＴＬＢの構造例を示す図である。ここで、ＴＬＢの仕組みについて説明を行う。ＴＬＢは、プロセッサーの中で生成された仮想アドレスと呼ばれるアドレスを、実際に物理的に利用可能な物理アドレスに変換するための、変換参照用の情報を格納するキャッシュメモリの１つである。
【００２８】
ここでこのＴＬＢの１組の情報を格納する部分をエントリーと呼ぶ。基本的に各エントリーの中には、仮想アドレスと比較を行うための仮想アドレスタグと呼ばれる情報が格納され、仮想アドレスと仮想アドレスタグの内容が一致すると、その一致したエントリーの変換参照用の情報を利用して、物理アドレスを生成する。ここで説明した仮想アドレスタグは、図８に示すＶＡＴＡＧ（仮想アドレス比較用情報格納部）１４１で示され、変換参照用の情報は、図８のＰＡ（物理アドレス置換用情報格納部）１４４で示される。ＴＬＢの各エントリーには、上記以外にもページと呼ばれる領域のサイズを示す情報や、アクセス制限を指定するステータス情報１４２も含まれる。
【００２９】
本実施形態では、ＴＬＢの各エントリーにバススイッチ制御情報格納部１４３を設け、ページ単位でバススイッチの接続状況を変えられるようにしてある。このバススイッチ制御情報格納部１４３は、外部データバス幅を３２ビット、バススイッチのビット数を４ビットとした本例では、５ビット×８個となり計４０ビットのパラメーターで構成する。
【００３０】
この４０ビットのパラメーターで、８個ある４ビットのバススイッチを、それぞれ図７に示す図表に基づいて接続を切り替えるが、これらのバススイッチ制御情報１４５は、仮想アドレスと一致するエントリーが選択された直後に、物理アドレス置換用情報格納部１４４から物理アドレス上位側情報１４６が取り出されるのと同時に、ＴＬＢ情報出力として取り出される。
【００３１】
この情報出力は、ただちに外部バスインターフェイスに転送されるのではなく、例えば、データキャッシュメモリーのみの書き込みアクセスの場合には、キャッシュメモリにバススイッチ制御情報が送られるだけで、バススイッチには転送されない。つまり、キャッシュメモリ側にも、バススイッチ制御情報を格納する機能が必要になる。  
図９は、本実施形態におけるキャッシュメモリの構造例を説明するための図である。このキャッシュメモリには、物理アドレス比較用情報格納部１５１と、ステータス情報格納部１５２と、バススイッチ制御格納部１５３と、データ格納部１５４とを有する。
【００３２】
プロセッサー内部から発行された外部バスインターフェイスに対するアクセスの場合にはＴＬＢ１３２からそのままバススイッチ制御情報が、外部バスインターフェイス中のバススイッチに送られ、データのシャッフルが行われる。また、キャッシュメモリに格納されているデータが、キャストアウト処理（キャッシュメモリの空き容量が無くなり、その結果キャッシュ中のあるデータを外部バスに追い出して、外部メモリに書き戻す処理）が行われる時には、キャストアウトされるデータやそのアドレス値と共に、キャッシュに格納されていたバススイッチ情報も外部バスインターフェイスに送られる。その際に、キャストアウトされるデータに対するシャッフルが行われる。
【００３３】
バススイッチ制御情報は、プログラマーが何らかの方法によって定義する場合と、ハードウェアで自動生成する場合が考えられる。どちらにしろ、一度ページに定義されたバススイッチ制御情報は、電源を切ったり、ハードウェアリセットを行うなどしてプロセッサー自体の動作を止め初期化を行わない限り、変更することは出来ない。それは、プロセッサーが動作している途中で変えてしまうと、制御情報を変える前に書き込んだ値は、制御情報を変えた後の状態では正しく値を読み出すことができなくなるためである。従って、本実施形態のプロセッサーを搭載したシステムが動作し続ける期間は、一度生成したバススイッチ制御情報は同一のものを用いる。
【００３４】
図１０は、外部メモリにＴＬＢ情報とバススイッチ制御情報を格納する場合を説明するための図である。ここではプロセッサー１６１内のＴＬＢ１６２に格納されたバススイッチ制御情報が、このＴＬＢ１６２のエントリーから追い出される場合には、外部バス１６３を通って外部メモリ１６４内のあるメモリ領域１６５に格納される。その際には、外部メモリ上にＴＬＢのエントリー情報も一緒に格納するようにする。これらＴＬＢのエントリー情報と、バススイッチ制御情報を合わせて、ページテーブル情報とする。
【００３５】
上述した実施形態１では、プリルーターによるデータ信号線のシャッフル機構と、バススイッチとＴＬＢを組み合わせることで可能になる、ページ単位でシャッフルパターンを切り替えるプロセッサーについて説明した。この場合には、シャッフルパターンの情報であるバススイッチ制御情報は外部バスインターフェイスに出力されるので、バススイッチ情報の解析が行われてしまう可能性がある。そのため、実施形態２としては、バススイッチ情報を外部バスに出力させない方式を用いることにより、シャッフル機構の秘匿性を上げ、よりセキュリティ効果を上げる事が可能なプロセッサーについて説明する。
【００３６】
図１１は、実施形態２に係るプロセッサーを説明するための図である。この場合、ＴＬＢ１７１は実施形態１とは異なり、各エントリーにバススイッチ制御情報は格納されない。バススイッチ制御情報は、専用のバススイッチ制御情報格納部１７４に格納される。ここには、複数のバススイッチ制御情報が各エントリーごとに分けられて格納される。以下、本実施形態では、そのエントリー数がｎ個の場合について説明する。
【００３７】
バススイッチ制御情報格納部１７４内のｎ個のエントリーは、それぞれ０番からｎ−１番までに番号付けされていて、外部から与えられる値によって、任意の１つのエントリーが選ばれて、バススイッチ制御情報が出力されるようになっている。
【００３８】
本実施形態における外部から与えられる値とは、実際にはＴＬＢを利用したアドレス変換作業において、選ばれたＴＬＢ中のエントリーの物理アドレス情報の一部分になっている。つまり、アドレス変換作業で選ばれた、ＴＬＢ中の１エントリーの物理アドレス情報の一部分の値（これも０〜ｎ−１までの値を持つ）に基づいて、バススイッチ制御情報格納部から、任意のバススイッチ制御情報が格納されたエントリーを選ぶということになる。
【００３９】
次に、図１１を用いて本実施形態に係るプロセッサーの処理の流れを説明する。プロセッサー内部から、外部物理メモリに対するアクセスが発生すると、まず生成されたアドレス（仮想アドレス）は、ＴＬＢ１７１のエントリー中に存在する仮想アドレス比較用情報格納部であるＴＬＢ１７１内のＶＡＴＡＧと比較が行われる。比較の結果、仮想アドレスとＶＡＴＡＧが一致したエントリーが選択される。選択されたエントリー１７２は、仮にエントリー（Ｋ−２）とすると、そのエントリー中に存在する物理アドレス置換用情報格納部に格納されているＴＬＢ１７１のＰＡを取り出し、その物理アドレス上位側情報１７３の一部分であるＰＡ［Ｑ：Ｒ］は、バススイッチ制御情報格納部１７４の所定の記憶領域１７５に転送される。ＰＡ［Ｑ：Ｒ］＝０ｘＳという値であった場合には、バススイッチ制御情報格納部１７４のエントリーからエントリー［Ｓ］１７５が選ばれる。選ばれたエントリー［Ｓ］から、内部に格納されているバススイッチ制御情報が取り出されて、キャッシュメモリもしくは、外部バスインターフェイスに送られる。
【００４０】
キャッシュメモリに送られるバススイッチ制御情報は、すぐにバススイッチの制御には使われないが、キャッシュに格納されているデータが、何らかの理由で外部バスに接続されているメモリに書き戻されるといった処理に移る場合に、データと共にキャッシュメモリに格納されていたバススイッチ制御情報がバススイッチの制御に使用される。
【００４１】
このようにアクセスアドレス値とバススイッチ制御情報間に相関性を持たせて、かつバススイッチ情報を外部に出力しないようにしたので、シャッフル機構の秘匿性を挙げ、よりセキュリティ効果を上げることができる。
【００４２】
図１２は、実施形態２におけるバススイッチ制御情報を生成する処理を示すフローチャートである。このフローチャートにおいては、バススイッチ制御情報のエントリー数をｎとして以下に説明する。まず、電源スイッチが入れられるか、または、ハードウェアリセットが投入され、初期状態となり（ステップＳ１８１）、ハードウェアのリセット解除を待つ（ステップＳ１８２）。ここで、ハードウェアのリセット解除があった場合には、バススイッチ制御情報の所定のエントリー番号（Ｅ）に初期値０をセットする（ステップＳ１８３）。続いて、バススイッチ制御情報のためのランダム値を生成し（ステップＳ１８４）、そのエントリーに制御情報を書き込む（ステップＳ１８５）。続いて、エントリー番号（Ｅ）を更新し（ステップＳ１８６）、エントリー番号（Ｅ）がバススイッチ制御情報のエントリー数に達したか否かを判定し（ステップＳ１８７）、バススイッチ制御情報のエントリー数に達していない場合には、ステップＳ１８４へ進む。一方、バススイッチ制御情報のエントリー数に達した場合には、バススイッチ制御情報の登録終了として（ステップＳ１８８）、処理を終了する。
【００４３】
ここで、バススイッチ制御情報格納部１７４に格納されるバススイッチ制御情報は、プロセッサーのハードウェアリセットの実行や電源をオンにする度に、ランダムな値として生成されバススイッチ制御情報格納部に格納され、利用されるのを待つ。バススイッチ制御情報は、ランダムな値として生成されるので、電源を立ち上げや、リセットの実行をする度に、異なる値が設定される。従って、同じようなバススイッチの入れ換えパターンでアクセスするといった再現性はなくなる。その結果、逆に外部バスインターフェイスの情報を解析していくといった作業を、複雑なものにしていくことができる。これにより、コンテンツのセキュリティをより高めることができる。
【００４４】
このように本実施形態のプロセッサーによれば、複数ビット存在するメモリ用データ信号線を、入れ換え（シャッフル）を行うことで、メモリ用信号線が突き止められてしまったとしても、そのバスを流れるデータから容易にコンテンツのデータのフォーマットや処理内容が解析できないようにすることができる。  以上説明したように、本実施形態によれば、データバスの信号線の入れ換え機能を持たせることで、画像や音声といった著作権が絡むような、コンテンツの処理を行うプロセッサーのデータバスの信号の解析を行って、コンテンツのセキュリティを破るといったことが難解になり、それによってコンテンツの保護をより高いレベルで行うことができる。
【図面の簡単な説明】
【００４５】
【図１】本実施形態の映像音声システムを示すブロック図である。
【図２】本実施形態のマイクロプロセッサーを示すブロック図である。
【図３】プリルーター１２９が格納するプリルーティング情報のフォーマット例を示す図である。
【図４】図３のプリルーティング情報を例にしたプリルーター接続例を説明するための図である。
【図５】本実施形態の４ビットバススイッチを示す図である。
【図６】バススイッチ制御信号と接続状況の対応を示す図である。
【図７】バススイッチの接続状況とバススイッチ制御信号のパラメーターの組み合わせを示す図表である。
【図８】本実施形態におけるＴＬＢの構造例を示す図である。
【図９】本実施形態におけるキャッシュメモリの構造例を説明するための図である。
【図１０】外部メモリにＴＬＢ情報とバススイッチ制御情報を格納する場合を説明するための図である。
【図１１】実施形態２に係るプロセッサーを説明するための図である。
【図１２】実施形態２におけるバススイッチ制御情報を生成する処理を示すフローチャートである。
【符号の説明】
【００４６】
１０１  映像音声システム
１０２，１６１  プロセッサー
１０３  メモリ
１０４  ブリッジ部
１０５  記憶装置
１０６  光学系記憶装置
１０７  磁気系記憶装置
１０８  映像音声アナログ変換部
１１０    ローカルバス
１１１，１１２  ドライブ接続バス
１２１  マイクロプロセッサー  
１２２  プロセッサーコア
１２３  メモリ管理部（ＭＭＵ）
１２４  外部バスインターフェイス部
１２５  命令実行部
１２６  キャッシュメモリ
１２７  内部データバス
１２８  データ入出力部
１２９  スイッチング回路（プリルーター）
１３０  バススイッチ
１３１  プリルーター用レジスター
１３２，１６２，１７１  ＴＬＢ（Ｔａｂｌｅ  ｌｏｏｋａｓｉｄｅ  ｂｕｆｆｅｒ）
１３３  プリルーター制御線
１４１  ＶＡＴＡＧ（仮想アドレス比較用情報格納部
１４２  ステータス情
１４３  バススイッチ制御情報格納部
１４４  物理アドレス置換用情報格納部
１４５  バススイッチ制御情報
１４６  物理アドレス上位側情報
１５１  物理アドレス比較用情報格納部
１５２  ステータス情報格納部
１５３  バススイッチ制御格納部
１５４  データ格納部
１５５  バススイッチ制御情報
１６３  外部バス
１６４  外部メモリ
１６５  メモリ領域
１７２  選択されたエントリー
１７３  物理アドレス上位側情報  
１７４  バススイッチ制御情報格納部  
１７５  選択されたエントリー
【図１】
2005078494.tif 000003
【図２】
2005078494.tif 000004
【図３】
2005078494.tif 000005
【図４】
2005078494.tif 000006
【図５】
2005078494.tif 000007
【図６】
2005078494.tif 000008
【図７】
2005078494.tif 000009
【図８】
2005078494.tif 000010
【図９】
2005078494.tif 000011
【図１０】
2005078494.tif 000012
【図１１】
2005078494.tif 000013
【図１２】
2005078494.tif 000014
【手続補正書】
【提出日】平成15年12月22日(2003.12.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
マイクロプロセッサーにおいて、
データの入出力制御及び前記データ処理のための命令の実行を行う命令実行部及び、前記データを一時的に保持するキャッシュメモリを有するプロセッサーコアと、
前記プロセッサーコアに接続され、前記キャッシュメモリを含むメモリの管理を行うメモリ管理部と、
前記プロセッサーコア及び前記メモリ管理部に接続され、このマイクロプロセッサーの外部との前記データの入出力を行う際にデータバスの信号を入れ換え可能なバスインターフェイスと、
を有することを特徴とするマイクロプロセッサー。
【請求項２】
前記バスインターフェイスは、
前記プロセッサーコア及びメモリ管理部に接続され、データの入出力を行うデータ入出力部と、
前記データ入出力部に接続され、前記データの入出力の際に、データバスの接続状況の入れ換えを行うスイッチング回路と、
前記スイッチング回路に接続され、所定のビット数の単位で前記データバスの接続状況の入れ換えを行うバススイッチと、
を有することを特徴とする請求項１記載のマイクロプロセッサー。
【請求項３】
前記メモリ管理部は、
前記データバスの信号の入れ替えを制御する情報であるプリルーティング情報を格納するプリルーティング格納部と、
前記プロセッサーコア内で生成された仮想アドレスを物理アドレスに変換する際に参照される情報を格納するアドレス変換キャッシュメモリと、
を有することを特徴とする請求項２記載のマイクロプロセッサー。
【請求項４】
前記プリルーティング情報は、前記メモリ管理部に保持されることを特徴とする請求項３記載のマイクロプロセッサー。
【請求項５】
映像音声システムにおいて、
データの入出力制御の命令の実行を行う命令実行部及び、前記データを一時的に保持するキャッシュメモリを有するプロセッサーコア、前記プロセッサーコアに接続され、前記キャッシュメモリを含むメモリの管理を行うメモリ管理部、及び、前記プロセッサーコア及び前記メモリ管理部に接続され、このプロセッサーの外部との前記データの入出力を行う際にデータバスの信号を入れ換え可能なバスインターフェイス、を有するマイクロプロセッサーと、
コンテンツを格納する記憶装置と、
前記記憶装置に接続され、前記記憶装置内に格納されるコンテンツの送受信を行うブリッジ部と、
前記ブリッジ部に接続され、ブリッジ部から送信されたコンテンツを一時的に保持するメモリ部と、
前記メモリ部に接続され、前記プロセッサーにより加工されたデータのデータをアナログに変換して出力するアナログ変換部と、
を有することを特徴とする映像音声システム。