(57)【要約】    【課題】逓倍率等の設定用のピンを用意する必要がなく，かつ，逓倍率等の変更時に外部リセット信号を供給する必要がない半導体集積回路を、提供する。    【解決手段】半導体集積回路１０を、各種の内部回路に供給する内部クロックを外部クロックから生成するための、生成する内部クロックの種類を指定可能であると共に，生成する内部クロックの種類を指定し直すときにリセットが必要なクロックジェネレータ１１と、生成する内部クロックの種類をクロックジェネレータ１１に対して指定する処理とクロックジェネレータ１１をリセットする処理とを，ＣＰＵからのコマンドに基づき実行可能なリセット信号生成回路１２及び設定用回路１３とを備える回路としておく。    【選択図】  図１
2007079904.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵと接続されて使用される半導体集積回路であって、
各種の内部回路と、
前記各種の内部回路に供給する内部クロックを外部クロックから生成するための、生成する内部クロックの種類を指定可能であると共に，生成する内部クロックの種類を指定し直すときにリセットが必要なクロックジェネレータと、
生成する内部クロックの種類を前記クロックジェネレータに対して指定するための処理と前記クロックジェネレータをリセットする処理とを，前記ＣＰＵからのコマンドに基づき実行するリブート制御回路と
を備えることを特徴とする半導体集積回路。
【請求項２】
前記リブート制御回路が、自回路が既に機能したか否かを示すリブートフラグを記憶しておくための，前記ＣＰＵがアクセス可能なレジスタを有する回路である
ことを特徴とする請求項１記載の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動作内容（逓倍率等）を指定可能なクロックジェネレータを備えた半導体集積回路に関する。
【背景技術】
【０００２】
コンピュータやプリンタ等に使用されている半導体集積回路の中には、動作内容を指定可能なクロックジェネレータ（外部クロックから内部クロックを生成するための，逓倍率や周波数変調率の指定／設定が可能な回路）を備えたものが、存在している。
【０００３】
図５に模式的に示したように、そのような既存の半導体集積回路２０は、クロックジェネレータ２１の逓倍率や周波数変調率を指定するためのピン（端子）が設けられた回路（例えば、非特許文献１参照。）となっている。また、既存の半導体集積回路２０は、逓倍率や周波数変調率を変更する際に、リセットしなければならない（外部リセット信号を，所定時間，アサートしなければならない）回路ともなっている。
【０００４】
換言すれば、既存の半導体集積回路２０の回路構成は、逓倍率等の設定用のピンを必要とする，ソフトウェアによる逓倍率等の変更が困難な（逓倍率等の変更時に外部リセット信号を供給する必要がある）ものとなっている。
【０００５】
【非特許文献１】μPD77111 ファミリ  ユーザーズ・マニュアル  インターネット＜ＵＲＬ：http://www.necel.com/nesdis/image/U14623JJ3V0UM00.pdf＞
【発明の開示】
【発明が解決しようとする課題】
【０００６】
そこで、本発明の課題は、逓倍率等の設定用のピンを用意する必要がなく，かつ，逓倍率等の変更時に外部リセット信号を供給する必要がない半導体集積回路を、提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明では、ＣＰＵと接続されて使用される半導体集積回路を、各種の内部回路と、各種の内部回路に供給する内部クロックを外部クロックから生成するための、生成する内部クロックの種類を指定可能であると共に，生成する内部クロックの種類を指定し直すときにリセットが必要なクロックジェネレータと、生成する内部クロックの種類をクロックジェネレータに対して指定するための処理とクロックジェネレータをリセットする処理とを，ＣＰＵからのコマンドに基づき実行するリブート制御回路とを備えるものとして構成しておく。
【０００８】
すなわち、本発明の半導体集積回路は、ＣＰＵからのコマンドによって、クロックジェネレータの動作内容を変更するリブート制御回路を有している。従って、本発明の半導体集積回路は、逓倍率等の設定用のピン（生成する内部クロックの種類を指定するためのピン）を用意する必要がなく、逓倍率等の変更時に外部リセット信号を供給する必要がない回路として機能することになる。
【０００９】
本発明の半導体集積回路を実現するに際しては、ＣＰＵが半導体集積回路（クロックジェネレータ）の動作状態を把握できるようにするために、リブート制御回路を、自回路が既に機能したか否かを示すリブートフラグを記憶しておくための，ＣＰＵがアクセス可能なレジスタを有する回路としておくことが望ましい。
【発明を実施するための最良の形態】
【００１０】
以下、本発明を実施するための最良の形態を、図面を参照して詳細に説明する。
【００１１】
図１に模式的に示したように、本発明の一実施形態に係る半導体集積回路１０は、半導体集積回路１０の本来の目的のための各種処理を行う幾つか（図では、１個）の内部回路と，クロックジェネレータ１１と，リセット信号生成回路１２と，設定用回路１３とを備えた回路（いわゆるＡＳＩＣ）である。また、半導体集積回路１０は、ＣＰＵと接続されて使用される回路となっている。
【００１２】
この半導体集積回路１０が備えるクロックジェネレータ１１は、図５の半導体集積回路２０内のクロックジェネレータ２１と同じ回路である。すなわち、クロックジェネレータ１１は、逓倍率と周波数変調率とを指定可能であると共に、逓倍率／周波数変調率を指定し直す場合には、リセット信号を入力する必要がある回路となっている。そして、本実施形態に係る半導体集積回路１０は、クロックジェネレータ２１には外部から入力されていた３種の信号（外部リセット信号，逓倍率指定用の信号，周波数変調率指定用の信号）が，リセット信号生成回路１２からクロックジェネレータ１１に入力されるように構成された回路となっている。
【００１３】
リセット信号生成回路１２及び設定用回路１３は、ＣＰＵからのコマンドによって、クロックジェネレータ１１の動作内容（逓倍率，周波数変調率）を変更できるようにするために、半導体集積回路１０内に設けられている回路（本発明のリブート制御回路に相当する回路）である。
【００１４】
図示してあるように、リセット信号生成回路１２は、ＳＳＣＧ[Spread Spectrum Clock Generator]設定反映レジスタ，逓倍率設定反映レジスタ，リブート回路，アンドゲート，リセットカウンタ等を備えた回路となっている。また、図から明らかなように、このリセット信号生成回路１２は、外部リセット信号をそのままReset1xとして出力する機能，各内部回路をリセットするためのReset1xを出力する機能を有する回路となっている。
【００１５】
設定用回路１３は、ＳＳＣＧ設定レジスタ，逓倍率設定レジスタ，リブートフラグレジスタ，リブート実行フラグレジスタ等を備えた回路である。この設定用回路１３は、設定用回路１３内の各レジスタをＣＰＵがアクセス可能な回路となっている。
【００１６】
以下、図２及び図３も用いて、リセット信号生成回路１２及び設定用回路１３の構成，動作をさらに具体的に説明する。なお、これらの図のうち，図２は、半導体集積回路１０の，各部間の結線をより明確に示した構成図である。この構成図は、設定レジスタ（SＳＣＧ設定レジスタ，逓倍率設定レジスタ）、設定反映レジスタ（ＳＳＣＧ設定反映レジスタ，逓倍率設定反映レジスタ）を、１つしか示していないものとなっている。
【００１７】
設定用回路１３内のＳＳＣＧ設定レジスタ，逓倍率設定レジスタ（図１，２参照。）は、それぞれ、周波数変調率を指定するための情報，逓倍率を指定するための情報が、ＣＰＵによって設定されるレジスタである。リブート実行フラグレジスタは、各設定レジスタに設定しておいた情報に応じた内容の動作をクロックジェネレータ１１に開始させる必要が生じたときに、ＣＰＵによって所定値が設定されるレジスタである。以下、このリブート実行フラグレジスタに記憶される情報のことをリブート実行フラグと表記し、上記所定値のことを、“ＯＮ”と表記する。また、リブート実行フラグレジスタから出力可能な信号（リブート実行フラグの値を示す信号；図２参照）のことを、リブート実行信号と表記する。
【００１８】
リブートフラグレジスタは、リブートが行われたか否かを示すリブートフラグを記憶しておくことが出来るようにするために、半導体集積回路１０内に設けられているレジスタである。このリブートフラグレジスタは、図１に示してあるように、外部リセット信号によってリセットされるレジスタとなっている。また、
【００１９】
リセット信号生成回路１２内のＳＳＣＧ設定反映レジスタ、逓倍率設定反映レジスタは、それぞれ、リブート実行時（リブート実行フラグが“ＯＮ”とされたとき；詳細は後述）に、ＳＳＣＧ設定レジスタ，逓倍率設定レジスタに設定されている情報が読み込まれるレジスタである。また、ＳＳＣＧ設定反映レジスタ、逓倍率設定反映レジスタは、リセット信号が入力されたクロックジェネレータ１１が、それらに記憶されている情報に応じた内容の動作を開始するレジスタともなっている。さらに、各設定反映レジスタは、外部リセット信号によってリセットされる（Reset1xではリセットされない）レジスタとなっている。
【００２０】
リブート回路は、図２に示してあるように、リブート実行フラグレジスタからのリブート実行信号が２つのＦＦを介して入力されている回路である。なお、２つのＦＦが設けられているのは、リブート回路が使用するクロック（外部クロック）が，リブート実行フラグレジスタが使用するクロック（クロックジェネレータ１１が発生する内部クロック）と異なるクロック（非同期関係にあるクロック）となっているためである。
【００２１】
このリブート回路は、外部クロックをカウントするカウンタ等から構成された、アイドル状態，設定待ち状態，リブート実行状態を取り得る回路となっている。ここで、アイドル状態とは、リブート実行信号がアサートされる（ＦＦからの信号がハイレベルとなる）のを監視している状態のことである。また、設定待ち状態とは、設定レジスタの値が設定反映レジスタに取り込まれるのを待機している状態（１クロック分の時間の経過を待機する状態）のことであり、リブート実行状態とは、アンドゲートへの信号を一定時間アサートする状態（Reset1が一定時間アサートされることになる状態）のことである。
【００２２】
そして、リブート回路は、図３に示してあるように、リブート実行信号がアサートされた（ＦＦからの信号がハイレベルとなった）ときに、設定待ち状態に移行してから，リブート実行状態に移行する回路となっている。
【００２３】
以上の説明から明らかなように、本実施形態に係る半導体集積回路１０は、ＣＰＵによって、リブート実行フラグがＯＮとされると、各設定レジスタの値が設定反映レジスタに取り込まれた後、クロックジェネレータ１１がリセットされる（Reset1が一定時間アサートされる）回路（つまり、逓倍率等の設定用のピンを用意する必要がなく、逓倍率等の変更時に外部リセット信号を供給する必要がない回路）となっている。
【００２４】
また、半導体集積回路１０には、リブートが行われたか否かを示すリブートフラグを記憶可能なリブートフラグレジスタが設けられている。このため、半導体集積回路１０は、図４に例示したように、ＣＰＵに、リブートフラグが“ＯＮ”であるか否かによって処理内容を変えさせることも可能な回路となっている。
【００２５】
従って、この半導体集積回路１０を用いれば、ソフトウェアにより内部クロックの周波数等が制御可能な情報処理装置を安価に製造できることになる。
【図面の簡単な説明】
【００２６】
【図１】実施形態に係る半導体集積回路の構成図。
【図２】実施形態に係る半導体集積回路の要部構成図。
【図３】実施形態に係る半導体集積回路に設けられているリブート回路の機能を説明するためのタイミング図。
【図４】リブートフラグレジスタの用途を説明するための流れ図。
【図５】従来の半導体集積回路の構成図。
【符号の説明】
【００２７】
１０，２０  半導体集積回路、  １１，２１  クロックジェネレータ
１２  リセット信号生成回路、  １３  設定用回路
【図１】
2007079904.tif 000003
【図２】
2007079904.tif 000004
【図３】
2007079904.tif 000005
【図４】
2007079904.tif 000006
【図５】
2007079904.tif 000007