(57)【要約】【課題】チップのパッド数を必要以上に増加させず、また、各機能制限の組合せ毎にマスクの改版を行う必要がなく、さらに、ユーザまたは第三者により機能制限解除のリスクがない電気回路および機能制限方法の提供を図る。【解決手段】予め準備された複数の機能のうち、任意の組合せで機能制限を掛ける鍵データを格納する機能制限鍵格納用メモリ５と、前記機能制限鍵格納用メモリから読出した前記鍵データに従って、前記機能制限を掛ける機能のメモリ領域を示す通知を出力する機能制限制御回路４と、前記通知を受け取って、前記複数の機能のデータを読出し、前記機能制限を掛ける機能のデータに対して所定の処理を行って機能ブロック用メモリ９に格納する演算処理装置３と、を備えるように構成する。【選択図】図３
2010055386.tif 000002
【特許請求の範囲】
【請求項１】
予め準備された複数の機能のうち、任意の組合せで機能制限を掛ける鍵データを格納する機能制限鍵格納用メモリと、
前記機能制限鍵格納用メモリから読出した前記鍵データに従って、前記機能制限を掛ける機能のメモリ領域を示す通知を出力する機能制限制御回路と、
前記通知を受け取って、前記複数の機能のデータを読出し、前記機能制限を掛ける機能のデータに対して所定の処理を行って機能ブロック用メモリに格納する演算処理装置と、を備えることを特徴とする電気回路。
【請求項２】
請求項１に記載の電気回路において、
前記演算処理装置は、前記通知に含まれる前記機能制限を掛ける機能のメモリ領域の情報に従って、前記機能制限を行う機能のメモリ領域から読出したデータを全て任意の固定値にするか、或いは、前記機能制限を行う機能のメモリ領域をスキップして読出すことを特徴とする電気回路。
【請求項３】
請求項１または２のいずれか１項に記載の電気回路において、
前記機能制限鍵格納用メモリは、ＯＴＰＲＯＭであることを特徴とする電気回路。
【請求項４】
予め準備された複数の機能のうち、任意の組合せで機能制限を掛ける電気回路の機能制限方法であって、
前記任意の組合せで機能制限を掛ける鍵データを予め機能制限鍵格納用メモリに格納しておき、
前記電気回路のブート時に、前記機能制限鍵格納用メモリから読出した前記鍵データに従って、前記機能制限を掛ける機能のメモリ領域を演算処理装置に通知し、
前記機能制限を掛ける機能のメモリ領域に対して所定の処理を行って機能ブロック用メモリに格納することを特徴とする機能制限方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この出願は、電気回路および機能制限方法に関し、特に、複数の機能を選択的に制限可能な電気回路および機能制限方法に関する。
【背景技術】
【０００２】
従来、例えば、ケーブルテレビのＳＴＢ（セットトップボックス）を始めとする様々な端末装置において、予め複数の機能を準備しておき、ユーザ或いは仕様に応じて任意の組合せで機能を制限することが行われている。このとき、制限する機能は、ユーザや第三者により改ざんや解読がされることなく設定する必要がある。
【０００３】
図１は従来の電気回路の一例を示すブロック図である。
図１に示されるように、電気回路（チップ）１００は、ＣＰＵ１０１，デコード回路／機能制限制御回路１０２，セレクタ１０３−１〜１０３−ｎ，機能ブロック１０４−１〜１０４−ｎおよびパッド１０５を備える。
【０００４】
ここで、機能ブロック１０４−１〜１０４−ｎは、ハードおよびソフトのどちらであってもよく、例えば、ＪＰＥＧデコーダ，オーディオデコーダ，拡大・縮小機能，或いは，様々なスクランブルの解除機能等のブロックである。また、ＣＰＵ１０１は、ブートメモリ（Boot ROM）１１１を有している。
【０００５】
図１に示す電気回路は、例えば、チップ１００の周囲に設けられた複数のパッド（Pad）１０５のうち、所定数のパッド１０５ａを電源線Ｖccまたは接地線ＧＮＤに接続することで機能制限を設定する。ここで、パッド１０５ａの電源線Ｖccまたは接地線ＧＮＤへの接続は、例えば、ボンディングオプションとして行う。
【０００６】
すなわち、パッド１０５ａを電源線Ｖccまたは接地線ＧＮＤに接続することで、デコード回路／機能制限制御回路１０２に対して任意の組合せの機能制限を設定する。そして、例えば、ブートメモリ１１１からデータを読込んで行うブート時に、デコード回路／機能制限制御回路１０２からの制御信号によりセレクタ１０３−１〜１０３−ｎを制御して、対応する機能ブロック１０４−１〜１０４−ｎの機能制限を行う。
【０００７】
これにより、ユーザや第三者により機能の制限を改ざんや解読がされることなく、チップ１００内部の機能ブロック１０４−１〜１０４−ｎを任意の組合せで機能制限するようになっている。
【０００８】
図２は従来の電気回路の他の例を示すブロック図である。
図２に示されるように、電気回路２００は、ＣＰＵ２０１，デコード回路／機能制限制御回路２０２，セレクタ２０３−１〜２０３−ｎ，機能ブロック２０４−１〜２０４−ｎおよび機能制限設定用マスクＲＯＭ２０５を備える。
【０００９】
図２に示す電気回路は、例えば、機能制限設定用マスクＲＯＭ２０５に対して予め所定のデータを書込むことで、デコード回路／機能制限制御回路２０２に対して任意の組合せの機能制限を設定する。そして、例えば、ブートメモリ２１１からデータを読込んで行うブート時に、デコード回路／機能制限制御回路２０２からの制御信号によりセレクタ２０３−１〜２０３−ｎを制御して、対応する機能ブロック２０４−１〜２０４−ｎの機能制限を行う。
【００１０】
これにより、ユーザや第三者により機能の制限を改ざんや解読がされることなく、チップ２００内部の機能ブロック２０４−１〜２０４−ｎを任意の組合せで機能制限するようになっている。
【００１１】
なお、上述のような予め複数の機能を準備しておき、ユーザ或いは仕様に応じて任意の組合せで行う機能制限は、ケーブルテレビのＳＴＢ等の端末装置だけでなく、様々な電気回路において幅広く適用され得るものである。
【００１２】
ところで、従来、セルラ電話などの電子システムの不正使用を防止するものとして、メインメモリの他に補助メモリを設け、その補助メモリに少なくとも１つの特有のコードをプログラムすることによって制御することが提案されている。ここで、補助メモリは、メインメモリのアレイ空間の外部で、永久的にロック可能なメモリである。
【００１３】
【特許文献１】特表２００２−５１４８４０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
上述したように、従来、予め複数の機能を準備しておいて任意の組合せで機能制限を行う電気回路としては、ボンディングオプションとして所定数のパッドをクリップし、或いは、内蔵されたマスクＲＯＭに機能制限用のデータを書込むものが知られていた。
【００１５】
すなわち、図１に示す従来の電気回路の一例では、ボンディングオプションによって所定数のパッド１０５ａを電源線Ｖccまたは接地線ＧＮＤに接続して任意の組合せで機能制限を行っていた。
【００１６】
しかしながら、図１の電気回路では、機能制限の対象となる機能ブロックの数に応じたパッドが必要になるため、パッドの数が増加してコストアップになってしまう。
【００１７】
また、図２に示す従来の電気回路の他の例では、機能制限設定用マスクＲＯＭ２０５に対して予め所定のデータを書込んで任意の組合せで機能制限を行っていた。しかしながら、例えば、外部からの設定なし（ＣＰＵ２０１に搭載されたファームウェアによるものを含む）で機能制限を行う場合、機能制限の組合せ毎にマスクの改版が必要になってしまう。
【００１８】
この出願は、上述した課題に鑑み、チップのパッド数を必要以上に増加させず、また、各機能制限の組合せ毎にマスクの改版を行う必要がなく、さらに、ユーザまたは第三者により機能制限解除のリスクがない電気回路および機能制限方法の提供を目的とする。
【課題を解決するための手段】
【００１９】
第１実施形態によれば、機能制限鍵格納用メモリと、機能制限制御回路と、演算処理装置と、を備えることを特徴とする電気回路が提供される。
【００２０】
機能制限鍵格納用メモリは、予め準備された複数の機能のうち、任意の組合せで機能制限を掛ける鍵データを格納する。また、機能制限制御回路は、機能制限鍵格納用メモリから読出した前記鍵データに従って、機能制限を掛ける機能のメモリ領域を示す通知を出力する。
【００２１】
さらに、演算処理装置は、機能制限制御回路からの通知を受け取って、複数の機能のデータを読出し、機能制限を掛ける機能のデータに対して所定の処理を行って機能ブロック用メモリに格納する。
【００２２】
第２実施形態によれば、予め準備された複数の機能のうち、任意の組合せで機能制限を掛ける電気回路の機能制限方法が提供される。
【００２３】
まず、任意の組合せで機能制限を掛ける鍵データを予め機能制限鍵格納用メモリに格納しておく。さらに、電気回路のブート時に、機能制限鍵格納用メモリから読出した鍵データに従って、機能制限を掛ける機能のメモリ領域を演算処理装置に通知する。
【００２４】
そして、機能制限を掛ける機能のメモリ領域に対して所定の処理を行って機能ブロック用メモリに格納する。
【発明の効果】
【００２５】
各実施形態によれば、チップのパッド数を必要以上に増加させず、また、各機能制限の組合せ毎にマスクの改版を行う必要がなく、さらに、ユーザまたは第三者により機能制限解除のリスクがない電気回路および機能制限方法を提供することができる。
【発明を実施するための最良の形態】
【００２６】
以下、電気回路および機能制限方法の実施例を、添付図面を参照して詳述する。
図３は電気回路の一実施例を示すブロック図である。
【００２７】
図３に示されるように、本実施例の電気回路１は、ＣＰＵ（演算処理装置）３，機能制限制御回路４，機能制限鍵格納用ＯＴＰ（One Time Programmable）ＲＯＭ５，書込み制御回路６，システムバス７，ブートＲＯＭ８および機能ブロック用メモリ９を備える。
【００２８】
図３に示す電気回路は、例えば、外部メモリ２に格納されているソフトウェア機能０〜ｍ（ｍ＝０，…，ｎ）における機能制限の組合せに対応した任意ビット列のデータ（鍵データ）テーブルを予め作成しておく。なお、図示はしないが、外部メモリ２に格納するソフの機能以外に、ハードまたはソフトの機能を電気回路１の内部に設けることができるのはいうまでもない。
【００２９】
外部メモリ２に格納する機能０〜ｍは、ソフトウェアを示し、例えば、JPEG、JPEG200、MPEG、MPEG2、MPEG4、MPEG4-AVC(H.264)、MPEG1-Layer1,2,3、MPEG2-Layer1,2,3、或いは、MPEG2/AACの各種デコーダ等が挙げられる。また、外部メモリ２は、例えば、ＮＯＲ型フラッシュメモリ、ＮＡＮＤ型フラッシュメモリ、ＳＤＲ−ＳＤＲＡＭ、ＤＤＲ−ＳＤＲＡＭ、或いは、ＤＤＲ２−ＳＤＲＡＭ等のメモリで構成される。
【００３０】
ここで、機能制限の組合せと鍵データの対応テーブルは、例えば、次の表１のように予め作成される。なお、表１では、ｍ＝２，鍵データが３ビットの場合の例を示している。
【表１】
2010055386.tif 000003
【００３１】
具体的に、表１において、例えば、機能０〜機能２を全て制限して使用不可とする場合には、鍵データを「１１１」とし、機能０および〜機能１を制限せずに使用可能とし、機能２を制限して使用不可とする場合には、鍵データを「００１」とする。
【００３２】
本実施例の電気回路によれば、各機能の制限の組合せに対応した任意の長さの鍵データを機能制限鍵格納用ＯＴＰＲＯＭ５に書込み、その鍵データ機能制限制御回路４が読出してＣＰＵ３へ通知することで機能制限を行う。
【００３３】
すなわち、ＣＰＵ３は、外部メモリ２からデータ（ソフトウェア）を順次読出して機能ブロック用メモリ９の指定したメモリ領域に書込む。ここで、本実施例において、機能ブロック用メモリ９は、電気回路１の内部に設けられた組込み型の密結合メモリ（ＴＣＭ：Tightly Coupled Memory）として構成されている。
【００３４】
このように、機能ブロック用メモリとして電気回路１の内部に設けた密結合メモリ９を使用するのは、例えば、対象となる機能（ソフトウェア）の容量が小さい場合や使用頻度が多い場合に好ましい。
【００３５】
機能制限が掛けられた機能に対応した外部メモリ２のアドレス領域からの読出し処理が発生した場合、対応する機能ブロック用メモリ９のメモリ領域に対して、固定値を書込むか、或いは、その領域を飛ばして書込みを行う。これにより、機能制限が掛けられた外部メモリ２の機能は制限されて使用不可となる。
【００３６】
このように、本実施例の電気回路によれば、外部からは機能制限鍵格納用ＯＴＰＲＯＭ５に対する鍵データの書込みに必要なパッドだけで所望の組合せの機能制限を掛けることができる。
【００３７】
ここで、ＣＰＵ３は、機能制限鍵格納用ＯＴＰＲＯＭ５、機能制限制御回路４、並びに、書込み制御回路６へのアクセスはできない構成になっているため、ユーザや第３者による鍵データの解読や機能の制限解除を行うことは困難となっている。
【００３８】
なお、各機能のソフトウェアを格納する外部メモリ２は、バイナリデータとなっているため、ユーザや第３者によるデータ自体の改ざんや解読は困難となっている。また、機能制限鍵格納用メモリ５は、ＯＴＰＲＯＭ以外のメモリ、例えば、紫外線照射によりデータの消去が可能なＵＶ−ＥＰＲＯＭ等を適用することも可能である。
【００３９】
図４は図３に示す電気回路における鍵データ書込み処理の一例を示すフローチャートである。
鍵データ書込み処理を開始すると、まず、ステップＳＴ１１において、ＯＴＰＲＯＭ書込み制御端子を有効にしてステップＳＴ１２に進み、外部リセット解除を行う。
【００４０】
さらに、ステップＳＴ１３に進んで、機能制限を掛けたいソフトウェアの組合せに対応した任意ビット長の鍵データを入力する。ここで、鍵データは、例えば、前述した表１のような機能制限の組合せと鍵データの対応テーブルを予め作成しておき、必要とする機能制限の組合せに対応した鍵データを入力する。
【００４１】
これにより、書込み制御回路６は、機能制限鍵格納用ＯＴＰＲＯＭ５を書込み状態に設定し、入力された鍵データを機能制限鍵格納用ＯＴＰＲＯＭ５に書込む。すなわち、ステップＳＴ１４において、機能制限鍵格納用ＯＴＰＲＯＭ５へのデータ書込みを完了して、鍵データ書込み処理を終了する。
【００４２】
このように、書込み制御回路６に対して、ＯＴＰＲＯＭ書込み制御端子を有効にして鍵データを入力すると、書込み制御回路６は、機能制限鍵格納用ＯＴＰＲＯＭ５に供給する書込み制御信号を有効として鍵データを機能制限鍵格納用ＯＴＰＲＯＭ５に書込む。
【００４３】
ここで、ＯＴＰＲＯＭ書込み制御端子を有効にするのは、例えば、所定のパッドに対して動作時の電源電圧よりも高い電圧を印加する等により行う。また、機能制限鍵格納用ＯＴＰＲＯＭ５は、その性質上、一度書込みを実施すると、その書込みを実施した個所のデータは２度と値を消去できないようになっている。
【００４４】
図５は図３に示す電気回路における機能制限処理の一例を示すフローチャートであり、図６は図３に示す電気回路における内部メモリのマッピングの一例を示す図である。
【００４５】
機能制限処理を開始すると、まず、ステップＳＴ２１において、外部リセット解除を行って、ステップＳＴ２２およびステップＳＴ２３に進む。ここで、ステップＳＴ２２（ＳＴ２２およびＳＴ２５〜ＳＴ２７）はＣＰＵ３の処理であり、また、ステップＳＴ２３およびＳＴ２４は機能制限制御回路４の処理である。
【００４６】
ＣＰＵ４は、ステップＳＴ２２において、ブートＲＯＭ８に格納された命令に従ってブート処理を開始してステップＳＴ２５に進み、また、機能制限制御回路４は、ステップＳＴ２３およびＳＴ２４の処理を行う。
【００４７】
ステップＳＴ２３において、機能制限制御回路４は、機能制限の鍵データが格納された機能制限鍵格納用ＯＴＰＲＯＭ５へアクセスしてステップＳＴ２４に進む。ステップＳＴ２４において、機能制限制御回路４は、機能制限鍵格納用ＯＴＰＲＯＭ５から読出した鍵データに対応した通知（ａ）をＣＰＵ３に出力する。
【００４８】
ここで、機能制限制御回路４からＣＰＵ４に対する通知（ａ）は、例えば、図６のメモリマップ情報から機能制限を掛ける機能に対応したアドレス領域に関するものである。
【００４９】
さらに、ステップＳＴ２５に進んで、機能制限の掛かったメモリ空間からのソフトウェア読出しの際、全て任意の固定値（例えば、全て『０』）を読出すか、または、対応するメモリ空間をスキップする。
【００５０】
通常は、外部メモリ２からデータを読出して機能ブロック用メモリ９の指定したメモリ領域にデータ書込みを行う。
【００５１】
そして、機能制限を掛ける機能に対応したアドレス領域からの読出し処理が発生した場合、機能ブロック用メモリ９における書込み対象のメモリ領域へ固定値を書込むか、或いは、その領域を飛ばして書込みを行う。なお、外部メモリ２は、例えば、フラッシュメモリ等で構成される。
【００５２】
具体的に、例えば、表１の鍵データが「００１」（機能２をＯＦＦ）だった場合、機能制限制御回路４からＣＰＵ３への通知（ａ）は、「0x00006000h」および「0x00007fffh」のアドレス情報となる。
【００５３】
そして、ＣＰＵ３は、固定値書込みの場合、ブート処理の最中に、図６のメモリ領域２（「0x00006000h」〜「0x00007fffh」）の読出しに差し掛かった際、図３のシステムバス７からＣＰＵ３への読出し値を任意の固定値（例えば、『０』）とする。
【００５４】
或いは、ＣＰＵ３は、領域スキップの場合、ブート処理の最中、先頭アドレス「0x0006000」の読出しに差し掛かった際、機能２のメモリ領域を飛ばして機能３のメモリ領域の先頭アドレス「0x00008000h」から読出しを行う。
【００５５】
なお、メモリ２から読出されたデータは、対応する機能ブロック用メモリ９に書込まれるが、例えば、機能３のメモリ領域に対応するメモリ領域には、全て任意の固定値（例えば、全て『０』）が書込まれることになる。
【００５６】
さらに、上述したステップＳＴ２６の処理を行った後、ステップＳＴ２７に進んで、ブート処理が完了したか否かを判別し、ブート処理が完了していない場合には、ステップＳＴ２５に戻り、ブート処理が完了するまで同様の処理を繰り返す。そして、ステップＳＴ２７において、ブート処理が完了したと判別されると、次の処理へ進むことになる。
【００５７】
図７は電気回路の他の実施例を示すブロック図である。
図７と前述した図３との比較から明らかなように、図７に示す実施例では、図３の実施例における密結合メモリとして構成された機能ブロック用メモリ９を、電気回路１の外部に設けたＤＲＡＭ等のメモリ９’として構成されている。
【００５８】
このように、機能ブロック用メモリとして電気回路１の外部に設けたメモリ９’を使用するのは、例えば、対象となる機能（ソフトウェア）の容量が大きい場合や使用頻度が少ない場合であり、電気回路１の回路規模を増大させる必要がなくなる。
【００５９】
なお、機能ブロック用メモリを電気回路１の外部に設けたＤＲＡＭ等のメモリ９’として構成した場合でも、例えば、メモリ９’に格納されるデータにおいて、機能制限を掛けるデータは、全て任意の固定値（例えば、全て『０』）またはスキップされており、ユーザまたは第３者による機能制限解除のリスクはない。
【００６０】
上述したように、各実施例によれば、チップのパッド数を必要以上に増加させず、また、各機能制限の組合せ毎にマスクの改版を行う必要がなく、さらに、ユーザまたは第三者により機能制限解除のリスクがない電気回路および機能制限方法を提供することが可能になる。
【００６１】
以上の実施例を含む実施形態に関し、さらに、以下の付記を開示する。
（付記１）
予め準備された複数の機能のうち、任意の組合せで機能制限を掛ける鍵データを格納する機能制限鍵格納用メモリと、
前記機能制限鍵格納用メモリから読出した前記鍵データに従って、前記機能制限を掛ける機能のメモリ領域を示す通知を出力する機能制限制御回路と、
前記通知を受け取って、前記複数の機能のデータを読出し、前記機能制限を掛ける機能のデータに対して所定の処理を行って機能ブロック用メモリに格納する演算処理装置と、を備えることを特徴とする電気回路。
【００６２】
（付記２）
付記１に記載の電気回路において、
前記演算処理装置は、前記通知に含まれる前記機能制限を掛ける機能のメモリ領域の情報に従って、前記機能制限を行う機能のメモリ領域から読出したデータを全て任意の固定値にするか、或いは、前記機能制限を行う機能のメモリ領域をスキップして読出すことを特徴とする電気回路。
【００６３】
（付記３）
付記１または２のいずれか１項に記載の電気回路において、
前記機能制限鍵格納用メモリは、ＯＴＰＲＯＭであることを特徴とする電気回路。
【００６４】
（付記４）
付記１〜３のいずれか１項に記載の電気回路において、
前記通知に従った処理は、前記電気回路のブート時に行うことを特徴とする電気回路。
【００６５】
（付記５）
付記１〜４のいずれか１項に記載の電気回路において、
前記予め準備された複数の機能は、前記電気回路の外部に設けられた不揮発性メモリのデータとして格納されたソフトウェアであることを特徴とする電気回路。
【００６６】
（付記６）
付記１〜５のいずれか１項に記載の電気回路において、
前記機能ブロック用メモリは、前記電気回路の内部に設けられた密結合メモリであることを特徴とする電気回路。
【００６７】
（付記７）
予め準備された複数の機能のうち、任意の組合せで機能制限を掛ける電気回路の機能制限方法であって、
前記任意の組合せで機能制限を掛ける鍵データを予め機能制限鍵格納用メモリに格納しておき、
前記電気回路のブート時に、前記機能制限鍵格納用メモリから読出した前記鍵データに従って、前記機能制限を掛ける機能のメモリ領域を演算処理装置に通知し、
前記機能制限を掛ける機能のメモリ領域に対して所定の処理を行って機能ブロック用メモリに格納することを特徴とする機能制限方法。
【００６８】
（付記８）
付記７に記載の機能制限方法において、
前記機能制限を行う機能のメモリ領域に対する所定の処理は、前記機能制限を行う機能のメモリ領域から読出したデータを全て任意の固定値にするか、或いは、前記機能制限を行う機能のメモリ領域をスキップして読出すことを特徴とする機能制限方法。
【図面の簡単な説明】
【００６９】
【図１】従来の電気回路の一例を示すブロック図である。
【図２】従来の電気回路の他の例を示すブロック図である。
【図３】電気回路の一実施例を示すブロック図である。
【図４】図３に示す電気回路における鍵データ書込み処理の一例を示すフローチャートである。
【図５】図３に示す電気回路における機能制限処理の一例を示すフローチャートである。
【図６】図３に示す電気回路における内部メモリのマッピングの一例を示す図である。
【図７】電気回路の他の実施例を示すブロック図である。
【符号の説明】
【００７０】
１，１００，２００    電気回路（チップ）
２    外部メモリ
３，１０１，２０１    ＣＰＵ（演算処理装置）
４    機能制限制御回路
５    機能制限鍵格納用ＯＴＰＲＯＭ
６    書込み制御回路
７    システムバス
８，１１１，２１１    ブートＲＯＭ
９，９’    機能ブロック用メモリ
１０２，２０２    デコード回路／機能制限制御回路
１０３−１〜１０３−ｎ，２０３−１〜２０３−ｎ，    セレクタ
１０４−１〜１０４−ｎ，２０４−１〜２０４−ｎ    機能ブロック
１０５，１０５ａ    パッド
２０５    機能制限制設定用マスクＲＯＭ
【図１】
2010055386.tif 000004
【図２】
2010055386.tif 000005
【図３】
2010055386.tif 000006
【図４】
2010055386.tif 000007
【図５】
2010055386.tif 000008
【図６】
2010055386.tif 000009
【図７】
2010055386.tif 000010