(57)【特許請求の範囲】
【請求項１】
所定の周期で電位レベルが遷移する第１のクロック信号あるいは該所定の周期より短い周期で電位レベルが遷移する第２のクロック信号が入力クロック信号として入力されるものであり、該入力クロック信号及び制御信号によって制御され、入力されるデータ信号に応じた信号を出力し、それを保持可能なデータ転送回路において、
クロック端子、データ端子、及び出力端子を有し、前記クロック端子に入力される信号の所定の方向への電位レベルの遷移に応じて、前記データ端子に入力される信号の電位レベルに基づく電位レベルの出力信号を前記出力端子から出力し、それを保持する保持回路と、
電位レベルにより、前記入力クロック信号が第１のクロック信号に基づくものであることを指示する第１のモードあるいは前記入力クロック信号が第２のクロック信号に基づくものであることを指示する第２のモードとが指示される指示信号と、前記制御信号とを受信し、前記指示信号が前記第１のモードを指示する電位レベルの時には、前記制御信号に応じた電位レベルとなる信号をクロック制御信号として出力するとともに所定の電位レベルの信号をデータ制御信号として出力し、前記指示信号が前記第２のモードを指示する電位レベルの時には、所定の電位レベルの信号を前記クロック制御信号として出力するとともに前記制御信号に応じた電位レベルとなる信号を前記データ制御信号として出力する制御回路と、
前記クロック制御信号が前記所定の電位レベルの信号である時には、前記入力クロック信号に基づく信号を第１の転送信号として常時前記クロック端子へ出力し、前記クロック制御信号が前記制御信号に応じた電位レベルとなる信号である時には、該クロック制御信号の電位レベルに応じて、前記入力クロック信号に基づく信号を前記第１の転送信号として選択的に前記クロック端子へ出力する第１の転送回路と、
前記データ制御信号が前記所定の電位レベルの信号である時には、前記データ信号に基づく信号を第２の転送信号として常時前記データ端子へ出力し、前記データ制御信号が前記制御信号に応じた電位レベルとなる信号である時には、該データ制御信号の電位レベルに応じて、前記データ信号に基づく信号を前記第２の転送信号として選択的に前記データ端子へ出力する第２の転送回路と、
を有することを特徴とするデータ転送回路。
【請求項２】
前記保持回路及び前記第２の転送回路は、複数の前記データ信号の数に応じた数がそれぞれ準備され、前記第１の転送信号は、準備された前記保持回路それぞれのクロック端子へ出力され、前記データ制御信号は、準備された前記第２の転送回路それぞれへ出力されることを特徴とする請求項１記載のデータ転送回路。
【請求項３】
前記制御信号は、前記保持回路への前記データ信号の転送の許可を指示する第１の電位レベルと、前記保持回路への前記データ信号の転送の禁止を指示する第２の電位レベルとが設定可能であり、前記第１の電位レベルの期間は、前記各モードにおける前記入力クロック信号の周期に基づくことを特徴とする請求項１あるいは請求項２に記載のデータ転送回路。
【請求項４】
前記第２の転送回路は、前記データ制御信号が前記制御信号に応じた電位レベルとなる信号である時、該データ制御信号の第１の電位レベルに応じて、前記保持回路から出力される出力信号に基づく信号を前記第２の転送信号として前記データ端子へ出力し、該データ制御信号の第２の電位レベルに応じて、前記データ信号に基づく信号を前記第２の転送信号として前記データ端子へ出力することを特徴とする請求項１〜３のいずれか１つに記載のデータ転送回路。
【請求項５】
請求項１〜４のいずれか１つに記載のデータ転送回路を搭載するマイクロコンピュータであって、
基本クロック信号としての前記第１のクロック信号を分周し、前記第２のクロック信号を生成する分周回路と、
前記指示信号に応じて、前記第１のクロック信号と前記第２のクロック信号とのいずれか一方を前記入力クロック信号として選択的に出力するセレクタと、
を有することを特徴とするマイクロコンピュータ。
【請求項６】
前記マイクロコンピュータは、外部から入力される前記第１のモードあるいは前記第２のモードのいずれかを指示するフラグを保持するとともに、該フラグに基づく電位レベルの前記指示信号を出力するレジスタを有することを特徴とする請求項５記載のマイクロコンピュータ。
【請求項７】
前記マイクロコンピュータは、外部から入力されるワンショットパルスに基づいて電位レベルを遷移させた前記制御信号を出力する制御信号出力回路を有することを特徴とする請求項５または請求項６記載のマイクロコンピュータ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、マイクロコンピュータ等に用いられるデータ転送回路に関し、特に、クロック信号及び制御信号によって制御され、入力されるデータ信号に応じた信号を出力し、それを保持することが可能なデータ保持回路に関する。
【０００２】
【従来の技術】
半導体集積回路は、例えば、中央処理装置（以下、ＣＰＵと称する）、メモリ、ディジタル・シグナル・プロセッサ（以下、ＤＳＰと称する）等がある。
【０００３】
これらＣＰＵ、メモリ、ＤＳＰ等をいくつか組み合わせてマイクロコンピュータとして使用することができる。また、これらのいくつかを１つの半導体チップに集積してなるワンチップマイクロコンピュータと呼ばれるものもある。
【０００４】
マイクロコンピュータは、一般的に、クロック信号に同期して動作し、演算情報、格納すべき情報やアドレス情報といったデータをデジタル信号として内蔵されたメモリやＣＰＵへ、バス等の多数の信号配線を用いて転送している。また、マイクロコンピュータは、例えば外部の周辺装置から自身へ入力されるデータを確実に取り込むために、データ転送回路を有する。
【０００５】
データ転送回路は、マイクロコンピュータに入力されるデータやマイクロコンピュータから出力すべきデータを一時的に格納して、格納したデータの情報に応じた電位レベルの信号を、データとして出力し、それを維持するものである。データ転送回路を有することで、データの伝達に用いられる信号配線や、マイクロコンピュータに内蔵された内部回路が１つのデータの転送に使用されている時間を短くすることができる。また、データを受信すべき内部回路にタイミングよくデータを転送することができる。このため、データ転送回路は、マイクロコンピュータのようにデジタル信号のデータを扱う半導体集積回路においては、動作の高速化や誤動作を防止した高性能化を実現するのに不可欠なものである。
【０００６】
データ転送回路は、タイミングよくデータを格納したり、転送したりするため、クロック信号と制御信号によって制御されている。つまり、データ転送回路は、制御信号として、データの格納を許可する信号に応じて動作が制御され、クロック信号の立ち下がりあるいは立ち上がりといった所定の方向への電位レベルの遷移に同期して、データを格納する。このようにすることで、制御信号により確実にデータの格納が行なえ、クロック信号により他の内部回路との同期をとることができる。
【０００７】
【発明が解決しようとする課題】
近年においては、半導体集積回路は高速化や高性能化の他に低消費電力化が望まれている。これは、携帯型の電子機器の普及によることや、家庭電気製品への半導体集積回路の利用増加に伴う消費者ニーズによることによるところが大きい。高速化に対して、マイクロコンピュータは、入力されたクロック信号（ここでは通常用クロック信号と称する）に対して、さらにマイクロコンピュータ内部で分周して通常用クロック信号の１／ｎ周期（ただし、ｎは２以上の正の整数）で１周期となるような高速用クロック信号を生成し、高速用クロック信号に同期して内部回路を動作させている。あるいは、マイクロコンピュータに、既に高速用クロック信号に相当するクロック信号が入力されることもある。
【０００８】
しかしながら、高速用クロック信号を用いると、マイクロコンピュータにおいて、この高速用クロック信号に伴って動作する各内部回路の動作もｎ倍に増加するため、この動作に伴う消費電力が増加することとなる。
【０００９】
このため、高速化と低消費電力化とを両立するために、マイクロコンピュータにおいては、通常用クロック信号と高速用クロック信号とを選択的に利用することが考えられる。つまり、高速動作を要求された時に、これを把握して高速モードに設定し、高速用クロック信号を内部回路の動作用として用いるものである。高速動作を要求されていない時、あるいはスタンバイ状態の時に、これを把握して通常モードに設定し、通常用クロック信号を内部回路の動作用として用いるものである。
【００１０】
しかしながら、高速用クロック信号により各内部回路の動作が高速化するのにともない、高性能化を維持するためにはデータの転送タイミングをより綿密に制御しなければならない。これには、データを転送する信号配線の配線抵抗や配線容量によるデータの遅延を充分考慮して対応しなければならない。
【００１１】
前述したように、データ転送回路はクロック信号と制御信号により動作が制御されるようになっている。このため、低消費電力化に伴ってクロック信号の供給を選択的に行なって、制御信号が供給されているときにのみデータ格納するようにクロック信号を供給するようにすると、高速用クロック信号に応じて動作する際に、信号配線の配線抵抗や配線容量により制御信号の伝達されるタイミングが遅延すると、格納すべきデータを正しく格納できなくなってしまう。また、このような問題を避けるために、高速用クロック信号の電位レベルの遷移に応じて常時動作するようにすると、消費電力の低減を求めることを妨げることとなる。
【００１２】
本発明は、上記問題点を解決し、高速化と低消費電力化とを両立させたデータ転送回路を実現することを目的とする。
【００１３】
また、本願発明は、機能が低減することなく、回路素子数の増加を極力低減して本発明のデータ転送回路を実現することを、他の目的とする。
【００１４】
【課題を解決するための手段】
上記目的を達成するために、本発明のデータ転送回路に講じた手段は、クロック信号及び制御信号によって制御され、入力されるデータ信号に応じた信号を出力し、それを保持可能なデータ転送回路において、クロック端子、データ端子、及び出力端子を有し、クロック端子に入力される信号の所定の方向への電位レベルの遷移に応じて、データ端子に入力される信号の電位レベルに基づく電位レベルの出力信号を出力端子から出力し、それを保持する保持回路と、所定の周期でクロック信号の電位レベルが遷移する第１のモードと第１のモードにおける所定の周期より短い周期で電位レベルが遷移する第２のモードとを電位レベルにより指示する指示信号の電位レベルに応じて、一方は制御信号に応じた電位レベルとなる信号を、他方は所定の電位レベルとなる信号を、それぞれクロック制御信号及びデータ制御信号として出力する制御回路と、クロック制御信号の電位レベルに応じて、クロック信号に応じた信号あるいは制御信号に応じた信号を第１の転送信号としてクロック端子へ転送する第１の転送回路と、データ制御信号の電位レベルに応じて、データ信号に応じた信号あるいは出力端子から出力される信号をに応じた信号を第２の転送信号としてデータ端子へ転送する第２の転送回路と、を有するようにしたことである。
【００１５】
また、本発明のデータ転送回路は、さらに、保持回路及び第２の転送回路を、複数のデータ信号の数に応じた数準備し、第１の転送信号を、準備された保持回路それぞれのクロック端子に転送し、データ制御信号を、準備された第２の転送回路それぞれに与えるようにすること、あるいは制御信号を、保持回路へのデータ信号の転送の許可を指示する第１の電位レベルと、保持回路へのデータ信号の転送の禁止を指示する第２の電位レベルとが設定可能とし、第１の電位レベルの期間を、各モードにおけるクロック信号の周期に基づくようにすることを講じてもよい。
【００１６】
【発明の実施の形態】
本発明のデータ転送回路についてを、図面を用いて以下に詳細に説明する。なお、本発明においては、ワンチップマイコンに内蔵されたデータ転送回路を前提として説明する。図１は、本発明の第１の実施の形態におけるデータ転送回路１を示す回路図である。
【００１７】
図１において、データ転送回路１は、制御回路１０、第１の転送回路であるＡＮＤゲート２０、第２の転送回路３０、及び保持回路であるＤ型フリップフロップ回路４０（以下、ＦＦ回路４０と称する）から構成されている。
【００１８】
図１において、制御回路１０は２つの２入力１出力のＯＲゲート１２と１４から構成されている。ＯＲゲート１２の一方の入力端子には、制御信号として、データ転送回路に対して入力されるデータの新たな格納あるいは格納済みデータの保持を指示するための信号、例えば、書込み信号ＷＥが入力されている。ＯＲゲート１２の他方の入力端子には、指示信号として、高速動作を要求されていない時（つまり、通常動作状態）あるいはスタンバイ状態の通常動作モードか、高速動作を要求されている高速動作状態の高速動作モードかを指示するモード指示信号ＨＳＰが、その電位レベルを反転されて入力されている。
【００１９】
また、ＯＲゲート１４の一方の入力端子には、書込み信号ＷＥが入力されている。ＯＲゲート１４の他方の入力端子には、モード指示信号ＨＳＰが入力されている。
【００２０】
本実施の形態においては、書込み信号ＷＥの電位レベルが電源電位レベル（以下、Ｈレベルと称する）の時は、データ転送回路に対して、入力されるデータの新たな格納を要求することを示すものとする。また、書込み信号ＷＥの電位レベルが接地電位レベル（以下、Ｌレベルと称する）の時は、データ転送回路へ、格納済みデータの保持を要求することを示すものとする。
【００２１】
また、モード指示信号ＨＳＰの電位レベルがＨレベルの時は、高速動作モードを示し、モード指示信号ＨＳＰの電位レベルがＬレベルの時は、通常動作モードを示すものとする。
【００２２】
このため、モード指示信号ＨＳＰの電位レベルがＬレベルの時には、ＯＲゲート１２の出力端子からは書込み信号ＷＥの電位レベルに関係なく電位レベルがＨレベルの信号Ｋ２が出力され、ＯＲゲート１４の出力端子からは書込み信号ＷＥの電位レベルに応じた電位レベルの信号Ｋ１が出力される。モード指示信号ＨＳＰの電位レベルがＨレベルの時には、ＯＲゲート１２の出力端子からは書込み信号ＷＥの電位レベルに応じた電位レベルの信号Ｋ２が出力され、ＯＲゲート１４の出力端子からは書込み信号ＷＥの電位レベル関係なく電位レベルがＨレベルの信号Ｋ１が出力される。
【００２３】
言い換えると、制御回路１０は、通常動作モード（モード指示信号ＨＳＰの電位レベルがＬレベル）の時には、信号Ｋ１の電位レベルを書込み信号ＷＥに応じた電位レベルとし、信号Ｋ２の電位レベルをＨレベルに固定する。また、制御回路１０は、高速動作モード（モード指示信号ＨＳＰの電位レベルがＨレベル）の時には、信号Ｋ１の電位レベルをＨレベルに固定し、信号Ｋ２の電位レベルを書込み信号ＷＥに応じた電位レベルとする。なお、信号Ｋ１はクロック信号を制御するためのクロック制御信号として用いられ、Ｋ２はデータ信号を制御するためのデータ制御信号として用いられる。これについては後述する説明にて明らかにする。
【００２４】
図１において、ＡＮＤゲート２０は、２入力１出力のものである。ＡＮＤゲート２０の一方の入力端子には信号Ｋ１が入力され、他方の入力端子にはクロック信号ＣＬＫが入力されている。
【００２５】
本発明の実施の形態において、クロック信号ＣＬＫは、高速動作モード時には、通常動作モード時のクロック信号の周期より短い、例えば、通常動作モード時のクロック信号の周期の１／２の周期のクロック信号となるものである。
【００２６】
ＡＮＤゲート２０は、信号Ｋ１の電位レベルがＬレベルの時には、クロック信号ＣＬＫに関係なく、電位レベルがＬレベルに固定された信号ＷＣＬＫを出力端子から出力する。また、ＡＮＤゲート２０は、信号Ｋ１の電位レベルがＨレベルの時には、クロック信号ＣＬＫに応じた電位レベルの信号ＷＣＬＫを出力端子から出力する。
【００２７】
言い換えると、ＡＮＤゲート２０は、信号Ｋ１の電位レベルが書込み信号ＷＥに応じたものとなる通常動作モード（モード指示信号ＨＳＰの電位レベルがＬレベル）の時に、書込み信号ＷＥの電位レベルがＨレベルの時にクロック信号ＣＬＫの転送を許可し、書込み信号ＷＥの電位レベルがＬレベルの時にクロック信号の転送を禁止する。また、ＡＮＤゲート２０は、信号Ｋ１の電位レベルがＨレベルに固定される高速動作モード（モード指示信号ＨＳＰの電位レベルがＨレベル）の時に、書込み信号ＷＥの電位レベルに関係なくクロック信号ＣＬＫの転送を許可する。つまり、ＡＮＤゲート２０は、第１の転送回路としてクロック信号ＣＬＫの転送を制御し、第１の転送信号として、クロック信号ＣＬＫの電位レベルに応じた信号ＷＣＬＫを出力可能とするものである。
【００２８】
図１において、第２の転送回路３０は、２つの２入力１出力のＡＮＤゲート３２、３４と１つの２入力１出力のＯＲゲート３６とから構成されている。
【００２９】
ＡＮＤゲート３２の一方の入力端子には、後述するＦＦ回路４０の出力信号ＯＵＴが入力されている。ＡＮＤゲート３２の他方の入力端子には、信号Ｋ２が、その電位レベルを反転されて入力されている。ＡＮＤゲート３２の出力端子からは２つの入力端子に入力された信号の論理積に相当する電位レベルを有する信号Ｋ４が出力される。
【００３０】
ＡＮＤゲート３４の一方の入力端子には、格納すべきデータ信号ＤＡＴＡが入力されている。ＡＮＤゲート３４の他方の入力端子には、信号Ｋ２が入力されている。ＡＮＤゲート３４の出力端子からは２つの入力端子に入力された信号の論理積に相当する電位レベルを有する信号Ｋ３が出力される。
【００３１】
ＯＲゲート３６の一方の入力端子には信号Ｋ３が入力され、他方の入力端子には信号Ｋ４が入力されている。ＯＲゲート３６の出力端子からは、信号Ｋ３と信号Ｋ４との論理和に相当する電位レベルを有する信号Ｋ５が出力される。
【００３２】
このため、信号Ｋ２の電位レベルがＬレベルの時には、ＡＮＤゲート３２は、ＦＦ回路４０のから出力される出力信号ＯＵＴの電位レベルに応じた電位レベルの信号Ｋ４を出力端子から出力する。一方、ＡＮＤゲート３４は、データ信号ＤＡＴＡの電位レベルに関係なく、電位レベルがＬレベルに固定された信号Ｋ３を出力端子から出力する。このため、ＯＲゲート３６は、信号Ｋ４の電位レベルに応じた電位レベルの信号Ｋ５を出力する。信号Ｋ２の電位レベルがＨレベルの時には、ＡＮＤゲート３２は、ＦＦ回路４０のから出力される出力信号ＯＵＴの電位レベルに関係なく、電位レベルがＬレベルに固定された信号Ｋ４を出力端子から出力する。一方、ＡＮＤゲート３４は、データ信号ＤＡＴＡの電位レベルに応じた信号Ｋ３を出力端子から出力する。このため、ＯＲゲート３６は、信号Ｋ３の電位レベルに応じた電位レベルの信号Ｋ５を出力する。
【００３３】
言い換えると、第２の転送回路３０は、信号Ｋ２の電位レベルが書込み信号ＷＥに応じたものとなる高速動作モード（モード指示信号ＨＳＰの電位レベルがＨレベル）の時に、書込み信号ＷＥの電位レベルがＨレベルの時にデータ信号ＤＡＴＡに応じた電位レベルとして信号Ｋ５を出力し、書込み信号ＷＥの電位レベルがＬレベルの時にＦＦ回路４０の出力信号ＯＵＴの電位レベルに応じた電位レベルとして信号Ｋ５を出力する。また、第２の転送回路３０は、信号Ｋ２の電位レベルがＨレベルに固定される通常動作モード（モード指示信号ＨＳＰの電位レベルがＬレベル）の時に、書込み信号ＷＥの電位レベルに関係なくデータ信号ＤＡＴＡに応じた電位レベルとして信号Ｋ５を出力する。つまり、第２の転送回路３０は、データ信号ＤＡＴＡの転送を制御し、第２の転送信号として、データ信号ＤＡＴＡあるいはＦＦ回路４０の出力信号ＯＵＴに応じた電位レベルの信号を選択的に出力可能とするものである。
【００３４】
ＦＦ回路４０は、データ端子Ｄ、クロック端子、出力端子Ｑを有している。データ端子Ｄには、第２の転送回路の出力である信号Ｋ５が入力されている。クロック端子には、第１の転送回路の出力である信号ＷＣＬＫが、その電位レベルが反転されて入力されている。
【００３５】
つまり、ＦＦ回路４０は、信号ＷＣＬＫの立ち下がりに応答して、信号Ｋ５の電位レベルに応じた電位レベルの信号を出力信号ＯＵＴとして出力し、それを保持するものである。言い換えると、ＦＦ回路４０は、信号Ｋ５をデータ信号としてその情報を格納し、それを保持する機能を有するものである。なお、本発明の実施の形態においては、データとして用いられる信号の電位レベルがＬレベルであれば、そのデータは”０”の情報を有するものとし、データとして用いられる信号の電位レベルがＨレベルであれば、そのデータは”１”の情報を有するものとしている。
【００３６】
ここで、以上の説明から理解されるように、図１におけるデータ転送回路１全体の動作としては次のようになるものである。
【００３７】
つまり、モード指示信号ＨＳＰの電位レベルがＬレベル（通常動作モード）の時は、ＦＦ回路４０の入力端子Ｄには、データ信号ＤＡＴＡの電位レベルに応じた電位レベルの信号Ｋ５が常時入力された状態となり、ＦＦ回路４０のクロック端子へのクロック信号ＣＬＫの転送が書込み信号ＷＥにより制御されるものとなる。このため、データ転送回路１は、書込み信号ＷＥの電位レベルがＨレベルの時に、クロック信号ＣＬＫの電位レベルに応じた電位レベルの信号ＷＣＬＫの立ち下がりに応じて、データ信号ＤＡＴＡを格納する。書込み信号ＷＥの電位レベルがＬレベルの時には、信号ＷＣＬＫの電位レベルをＬレベルに固定して、ＦＦ回路４０のデータ格納動作を禁止するとともに、格納しているデータ信号ＤＡＴＡを保持する。
【００３８】
このように、通常動作モードにおいては、新たなデータの格納時にＦＦ回路４０に格納動作を実行させ、それ以外の時には、ＦＦ回路４０に格納動作を実行させないようにしているため、ＦＦ回路４０の格納動作に伴う消費電力を低減することができる。よって、データ転送回路１あるいはこのデータ転送回路１を内蔵する装置全体としての消費電力を低減することができる。
【００３９】
次に、モード指示信号ＨＳＰの電位レベルがＨレベル（高速動作モード）の時は、ＦＦ回路４０のクロック端子には、クロック信号ＣＬＫの電位レベルに応じた電位レベルの信号ＷＣＬＫが常時入力された状態となり、ＦＦ回路４０のデータ端子Ｄへのデータ信号ＤＡＴＡの転送を書込み信号ＷＥにより制御されるものとなる。このため、データ転送回路１は、書込み信号ＷＥの電位レベルがＨレベルの時に、信号ＷＣＬＫの立ち下がりに応じて、データ信号ＤＡＴＡを格納する。書込み信号ＷＥの電位レベルがＬレベルの時には、信号ＷＣＬＫの立ち下がりに応じて、データ端子Ｄに帰還される出力信号ＯＵＴを格納する。
【００４０】
つまり、高速動作モード時には、ＦＦ回路４０は、書込み信号ＷＥの電位レベルに関係なく、信号ＷＣＬＫの立ち下がり毎に格納動作を常時行なっているものとなる。しかしながら、書込み信号ＷＥの電位レベルがＬレベルの時には、出力信号ＯＵＴを新たなデータとして格納するので、機能的には格納しているデータを保持していることとなる。
【００４１】
この場合、ＦＦ回路４０が常時格納動作を行なうので、ＦＦ回路４０にて消費電力が減らせないが、遅延を考慮して、書込み信号ＷＥによりデータ転送期間を設定し易いデータ信号ＤＡＴＡを制御するようにしている。
【００４２】
例えば、データ転送回路１が通常動作モードにおける機能の場合を考えると、書込み信号ＷＥが遅延し、クロック信号ＣＬＫのある立ち下がりＡとその後の立ち上がりＢを含む期間で書込み信号ＷＥの電位レベルがＨレベルとなることがある。立ち上がりＢの後のクロック信号ＣＬＫの立ち下がりＣより前に、書込み信号ＷＥの電位レベルがＬレベルになったとしても、信号ＷＣＬＫは、２回の立ち下がりを発生することとなる。データ信号ＤＡＴＡの電位レベルが立ち下がりＡの時にはＨレベルで、立ち上がりＢの時にはＬレベルとなっていたとすると、データ信号ＤＡＴＡの電位レベルがＨレベルの情報（”１”）を保持すべきＦＦ回路４０は、信号ＷＣＬＫの１回目の立ち下がりで情報として”１”を格納し、保持するが、２回目の立ち下がりで情報として”０”を格納し、保持してしまうこととなる。このため、データ転送回路１は誤ったデータの転送を行なうこととなってしまう訳である。クロック信号ＣＬＫの１周期の期間が比較的長い通常動作モードであれば、このような問題もほとんど生じないが、クロック信号ＣＬＫの１周期の期間が短い高速動作モードには、通常動作モードにおけるデータ転送回路１の機能をそのまま用いると上述のような問題を生じ易い。
【００４３】
このため、本発明においては、上述のように、高速動作モード時には信号ＷＣＬＫの電位レベルを、常時クロック信号ＣＬＫの電位レベルに応じたものとし、書込み信号ＷＥによってデータ信号ＤＡＴＡを制御するようにしている。ここで、上述のような書込み信号ＷＥの遅延が生じたことを検討してみる。つまり、書込み信号ＷＥが遅延し、クロック信号ＣＬＫのある立ち下がりＡとその後の立ち上がりＢでは書込み信号ＷＥの電位レベルがＨレベルとなり、立ち上がりＢの後のクロック信号ＣＬＫの立ち下がりＣでは書込み信号ＷＥの電位レベルがＬレベルになっていたとする。また、データ信号ＤＡＴＡの電位レベルが立ち下がりＡの時にはＨレベルで、立ち上がりＢの時にはＬレベルとなっていたとする。
【００４４】
このような場合、本発明の高速動作モード時のデータ転送回路１の機能では、クロック信号ＣＬＫの立ち下がりＡの時には、ＦＦ回路４０のデータ端子Ｄには、データ信号ＤＡＴＡの電位レベルに応じた電位レベルの信号Ｋ５が入力されるので、ＦＦ回路４０は実質的にクロック信号ＣＬＫの立ち下がりＡに応答して、情報として”１”を格納し、保持する。また、クロック信号ＣＬＫの立ち上がりＢの時には、データ信号ＤＡＴＡの電位レベルはＬレベルとなっているが、立ち下がりＣの時には、ＦＦ回路４０のデータ端子Ｄには、ＦＦ回路４０の出力信号ＯＵＴの電位レベルに応じた電位レベルの信号Ｋ５が入力されることになる。このため、ＦＦ回路４０は実質的にクロック信号ＣＬＫの立ち上がりＢの後の立ち下がりＣに応答して、帰還された情報として”１”を再び格納し、保持する。このように、前述のような書込み信号ＷＥの遅延により誤ったデータの格納をすることが防止できるものである。
【００４５】
以上のように、本発明のデータ転送回路１は、通常動作モードと高速動作モードとでデータ転送回路１の動作を選択的に変えることにより、データ転送回路１の高速化と低消費電力化の両立を実現することができる。
【００４６】
また、これを実現するために、本発明のデータ転送回路１においては極力共有できる構成を共有させるようにしているので、本発明のデータ転送回路１を構成する素子数も少なくて済み、本発明のデータ転送回路１を設けるのに必要な、半導体チップ上での面積も少なくて済む。また、上述したように、本発明においては、通常動作モードにおいても高速動作モードにおいても、データ転送回路として必要な機能は損なうことがない。
【００４７】
ここで、本発明のデータ転送回路１の具体的な動作についてを図面を用いて説明する。図２は、本発明のデータ転送回路１における動作を説明するタイミングチャートである。図２において、各波形の左側にその波形の信号名を示している。
【００４８】
なお、クロック信号ＣＬＫ、モード指示信号ＨＳＰ、書込み信号ＷＥは、データ転送回路１を内蔵するワンチップマイクロコンピュータの外部の周辺装置から入力されるものであってもよいが、ワンチップマイクロコンピュータにて生成するものとしてもよい。これらの信号をワンチップマイクロコンピュータにて生成する場合の、クロック信号ＣＬＫ、モード指示信号ＨＳＰ、書込み信号ＷＥを発生する回路構成についてを、データ転送回路１の動作説明に先だって、図面を用いて説明する。図３は、上記の信号を発生する回路を示す図である。
【００４９】
図３には、本発明のデータ転送回路１を内蔵するワンチップマイクロコンピュータに内蔵された、レジスタ３、分周回路５、セレクタ７、書込み信号発生回路９とが示されている。
【００５０】
レジスタ３は、通常動作モードと高速動作モードとを指示するフラグＭＯＤＥが入力され、このフラグＭＯＤＥを格納し、モード指示信号ＨＳＰとして出力する。例えば、フラグＭＯＤＥの情報が”０”であれば、モード指示信号ＨＳＰの電位レベルをＬレベルとして出力し、フラグＭＯＤＥの情報が”１”であれば、モード指示信号ＨＳＰの電位レベルをＨレベルとして出力する。本発明の実施の形態においては、レジスタ３は１ビットの情報を格納するラッチ回路で構成される。
【００５１】
分周回路５は、ワンチップマイクロコンピュータの外部装置から入力される基本クロック信号ＢＣＬＫを１／ｎ分周（ただし、ｎは２以上の正の整数）した信号を生成し、出力するものである。基本クロック信号ＢＣＬＫは、通常動作モード時のクロック信号の周期と同じ周期である。本発明の実施の形態においては、ｎ＝２であるため、分周回路６が出力する信号は、通常動作モード時より短い、基本クロック信号ＢＣＬＫの周期の１／２の周期を有するクロック信号と言える。
【００５２】
セレクタ７は、モード指示信号ＨＳＰの電位レベルに応じて、入力されている基本クロック信号ＢＣＬＫあるいは分周回路５から出力される信号のいずれか一方を選択し、クロック信号ＣＬＫとして出力する。モード指示信号ＨＳＰの電位レベルがＬレベルの時には、セレクタ７は基本クロック信号ＢＣＬＫを選択し、基本クロック信号ＢＣＬＫの電位レベルに応じた信号をクロック信号ＣＬＫとして出力する。モード指示信号ＨＳＰの電位レベルがＨレベルの時には、セレクタ７は分周回路５から出力される信号を選択し、分周回路５から出力される信号の電位レベルに応じた信号をクロック信号ＣＬＫとして出力する。
【００５３】
書込み信号発生回路９は、ワンチップマイクロコンピュータの外部装置から入力された書込み指示信号ＷＯＰを入力し、セレクタ７から出力されるクロック信号ＣＬＫに応じてクロック信号ＣＬＫの１周期分だけ電位レベルがＨレベルとなる書込み信号ＷＥを出力する。例えば、書込み指示信号ＷＯＰはワンショットパルスのようなものでよく、このワンショットパルスに基づき書込み信号ＷＥを発生している。
【００５４】
なお、図３は一例でありこれに限定されるものではない。例えば、書込み信号ＷＥを生成する書込み信号発生回路９は削除することもできる。書込み信号発生回路９を設けておけば、クロック信号ＣＬＫに同期させて書込み信号ＷＥを発生できる。書込み信号発生回路９を設けないならば、書込み指示信号ＷＯＰを本実施の形態のような書込み信号ＷＥとする必要がある。書込み指示信号ＷＯＰを本実施の形態のような書込み信号ＷＥとする場合、高速動作モード時における書込み信号ＷＥの電位レベルがＨレベルの期間を通常動作モード時とは異なる（通常動作モード時より短い）ようにしたほうが好ましいが、必ずしも必要はない。これは、高速動作モード時においてはクロック信号ＣＬＫではなくデータ信号ＤＡＴＡを書込み信号ＷＥにて制御するものであるため、前述したような、誤ったデータを格納することがないためである。また、ワンチップマイクロコンピュータの外部から２種類の異なる周期のクロック信号を入力し、これを、モード指示信号ＨＳＰにて選択的にクロック信号ＣＬＫとして用いてもよい。この場合、外部端子数は増えるが、分周回路５が削除できるので、消費電力低減やワンチップマイクロコンピュータを構成する半導体チップの小型化に寄与することができる。
【００５５】
また、分周回路５も、常時動作するものではなく、モード指示信号ＨＳＰに応じて動作を制御するようにしてもよい。例えば、モード指示信号ＨＳＰの電位レベルがＬレベルの時には分周回路５の動作が禁止され、モード指示信号ＨＳＰの電位レベルがＨレベルの時には分周回路５の動作を行なわせるようにしてもよい。このようにすると、ワンチップマイクロコンピュータとしては、消費電力が低減できる。また、分周回路５にセレクタ７のような機能を持たせてもよい。
【００５６】
図２に戻り、本発明のデータ転送回路１の動作を説明する。なお、初期状態として、図３のような回路から出力されているモード指示信号ＨＳＰ、書込み信号ＷＥ、データ信号ＤＡＴＡはいずれも電位レベルがＬレベルであるとする。つまり、初期状態においては通常動作モードであるとしている。このため、信号Ｋ１、Ｋ３、Ｋ４、Ｋ５の電位レベルはいずれもＬレベルとなり、信号Ｋ２の電位レベルはＨレベルとなる。また、初期状態においては、出力信号ＯＵＴの電位レベルもＬレベルとする。
【００５７】
まず、クロック信号ＣＬＫに応じて生成される書込み信号ＷＥは、クロック信号ＣＬＫの立ち下がりからわずかに遅れた時刻ｔ０において、書込み信号ＷＥの電位レベルがＨレベルになり、この状態がクロック信号ＣＬＫの１周期分に相当する時刻ｔ１まで維持される。この書込み信号ＷＥの遅れは、例えば、クロック信号ＣＬＫと同期している書込み信号発生回路９の動作時間（書込み信号ＷＥを発生するまでの時間）によるものである。このため、信号ＷＣＬＫの電位レベルは、書込み信号ＷＥの電位レベルがＨレベルの間はクロック信号ＣＬＫの電位レベルに応じたものとなる。
【００５８】
この後、時刻ｔ０と時刻ｔ１との間のタイミングにて、データ信号ＤＡＴＡの電位レベルがＨレベルになり、この状態を時刻ｔ１を越えたところまで維持する。信号Ｋ３及び信号Ｋ５の電位レベルはデータ信号ＤＡＴＡの電位レベルに応じたものとなる。このため、時刻ｔ１における信号ＷＣＬＫの立ち下がりに応答して、保持回路４０は、信号Ｋ５の電位レベルに応じたＨレベルの出力信号ＯＵＴを出力し、それを保持する。時刻ｔ１から時刻ｔ２の間において、書込み信号ＷＥやデータ信号ＤＡＴＡの電位レベルがＬレベルになった後は、信号ＷＣＬＫに立ち下がりが発生しないので、出力信号ＯＵＴの電位レベルはＨレベルのまま維持される。
【００５９】
時刻ｔ２において、モード指示信号ＨＳＰの電位レベルがＬレベルからＨレベルになる。つまり、時刻ｔ２にて、データ転送回路１を内蔵するワンチップマイクロコンピュータが、通常動作モードから高速動作モードに切り換わったことになる。このため、クロック信号ＣＬＫは時刻ｔ２以前より短い周期（時刻ｔ２以前より１／２の周期）のクロック信号となる。また、信号Ｋ１の電位レベルはＨレベルに維持されるので、信号ＷＣＬＫの電位レベルはクロック信号ＣＬＫの電位レベルに応じたものとなり、信号Ｋ２は書込み信号ＷＥの電位レベルに応じたものとなるため、Ｌレベルとなる。このため、信号Ｋ３の電位レベルはＬレベルに維持され、信号Ｋ４の電位レベルは出力信号ＯＵＴの電位レベルに応じてＨレベルとなる。よって、信号Ｋ５の電位レベルもＨレベルとなる。
【００６０】
この後、モード指示信号ＨＳＰの電位レベルがＨレベルの間（時刻ｔ２から時刻ｔ５まで）は、信号Ｋ１の電位レベルがＨレベルに維持されるので、信号ＷＣＬＫの立ち下がり毎、つまり、クロック信号ＣＬＫの立ち下がりに応答して、保持回路４０はデータ端子Ｄに入力されるデータ（信号Ｋ５の電位レベル）を格納する動作を行なう。
【００６１】
ここで、時刻ｔ２から時刻ｔ３の間における信号ＷＣＬＫの立ち下がりにおいて、保持回路４０は信号Ｋ５の電位レベルを保持するように動作するが、この時点では信号Ｋ５の電位レベルはＨレベルのため、出力信号ＯＵＴの電位レベルはＨレベルのまま維持されている。
【００６２】
時刻ｔ３において、書込み信号ＷＥの電位レベルがＨレベルになり、この状態がクロック信号ＣＬＫの１周期分に相当する時刻ｔ４まで維持される。このため、信号Ｋ２の電位レベルは書込み信号ＷＥの電位レベルに応じてＨレベルとなる。
【００６３】
また、信号Ｋ２の電位レベルに応じて、信号Ｋ４の電位レベルはＬレベルに維持され、信号Ｋ３の電位レベルはデータ信号ＤＡＴＡの電位レベルに応じてＬレベルとなる。この結果、信号Ｋ５の電位レベルはＬレベルとなる。
【００６４】
時刻ｔ４において、信号ＷＣＬＫの立ち下がりに応答して、保持回路４０は信号Ｋ５の電位レベルを保持するように動作する。データ信号Ｄには電位レベルがＬレベルの信号Ｋ５が入力されているので、保持回路４０は、信号Ｋ５の電位レベルに応じたＬレベルの出力信号ＯＵＴを出力し、それを保持する。
【００６５】
時刻ｔ４からわずかに遅れて書込み信号ＷＥの電位レベルがＬレベルとなる。このため、信号Ｋ２の電位レベルはＬレベルとなり、信号Ｋ３の電位レベルはＬレベルに維持され、信号Ｋ４の電位レベルは出力信号ＯＵＴの電位レベルに応じてＬレベルとなる。よって、信号Ｋ５の電位レベルはＬレベルとなる。
【００６６】
この後、時刻ｔ５までにおける信号ＷＣＬＫの立ち下がりにおいて、保持回路４０は信号Ｋ５の電位レベルを保持するように動作するが、この時点では信号Ｋ５の電位レベルはＬレベルのため、出力信号ＯＵＴの電位レベルはＬレベルのまま維持されている。
【００６７】
時刻ｔ５において、モード指示信号ＨＳＰの電位レベルがＨレベルからＬレベルになる。つまり、時刻ｔ５にて、データ転送回路１を内蔵するワンチップマイクロコンピュータが、高速動作モードから通常動作モードに切り換わったことになる。このため、クロック信号ＣＬＫ、信号Ｋ１〜Ｋ５、信号ＷＣＬＫはいずれも初期状態と同様な電位レベルとなる。
【００６８】
時刻ｔ６おいて、各信号は時刻ｔ０と同様な状態であるので、時刻ｔ６におけるデータ転送回路１は、時刻ｔ０と同様な動作が行なわれることが、図２よりわかる。同様に、時刻ｔ７おいて、各信号は時刻ｔ１と同様な状態であるので、時刻ｔ７におけるデータ転送回路１は、時刻ｔ１と同様な動作が行なわれることが、図２よりわかる。
【００６９】
以上のように本発明のデータ転送回路１においては、データ転送回路としての機能を損なうことがないことや、高速動作化と低消費電力化を両立させることができる。また、図１に示すように、本発明のデータ転送回路１は論理回路で構成することができ、少ない構成要素にて実現させている。
【００７０】
なお、本発明のデータ転送回路１は図１の構成に限定されるものではない。例えば、図１のデータ転送回路１と同等の機能を実現できるのであれば、図１のＡＮＤゲートやＯＲゲートの代わりに他の論理ゲートを用いても構わない。図１は、本発明の課題を解決するデータ転送回路を実現するのに好適な構成を示したものである。
【００７１】
次に、本発明の第２の実施の形態におけるデータ転送回路についてを、図面を用いて以下に説明する。図４は、第２の実施の形態におけるデータ転送回路１１１の回路図である。説明を簡略化するため、図４において、図１と同じ構成要素については図１と同じ符号を付している。
【００７２】
図４において、制御回路１０及び第１の転送回路２０は図１と同様である。図４においては、複数のデータ信号ＤＡＴＡ０〜ＤＡＴＡ３が入力されている。これに伴って、複数の第２の転送回路１３０、２３０、３３０、４３０と複数の保持回路１４０、２４０、３４０、４４０が設けられている。図４においては、説明の簡略化のために、４つのデータ信号の場合を示している。
【００７３】
つまり、ワンチップマイクロコンピュータにて扱うデータとししては、複数ビットからなるものが多い。図４は、複数ビットから構成されたデータに対して用いるのに好適なデータ転送回路１１１を示している。
【００７４】
第２の転送回路１３０、２３０、３３０、４３０は、それぞれ図１の第２の転送回路３０と同様な構成である。図４の各第２の転送回路におけるＡＮＤゲート１３２、２３２、３３２、４３２は、図１のＡＮＤゲート３２に相当する。図４の各第２の転送回路におけるＡＮＤゲート１３４、２３４、３３４、４３４は、図１のＡＮＤゲート３４に相当する。図４の各第２の転送回路におけるＯＲゲート１３６、２３６、３３６、４３６は、図１のＯＲゲート３６に相当する。
【００７５】
つまり、ＡＮＤゲート１３２、２３２、３３２、４３２の一方の入力端子にはそれぞれ出力信号ＯＵＴ０、ＯＵＴ１、ＯＵＴ２、ＯＵＴ３が入力され、他方の入力端子には、制御回路１０から信号Ｋ２が、電位レベルを反転して、共通に入力されている。ＡＮＤゲート１３４、２３４、３３４、４３４の一方の入力端子にはそれぞれデータ信号ＤＡＴＡ０、ＤＡＴＡ１、ＤＡＴＡ２、ＤＡＴＡ３が入力され、他方の入力端子には、制御回路１０から信号Ｋ２が共通に入力されている。
【００７６】
ＯＲゲート１３６、２３６、３３６、４３６の一方の入力端子にはそれぞれＡＮＤゲート１３２、２３２、３３２、４３２の出力信号（それぞれが、図１における信号Ｋ４に相当）が入力され、他方の入力端子にはそれぞれＡＮＤゲート１３４、２３４、３３４、４３４の出力信号（それぞれが、図１における信号Ｋ３に相当）が入力されている。ＯＲゲート１３６、２３６、３３６、４３６の出力端子から出力される信号それぞれが、図１における信号Ｋ５に相当する。
【００７７】
保持回路１４０、２４０、３４０、４４０はそれぞれＤ型フリップフロップ回路から構成されている。保持回路１４０、２４０、３４０、４４０はそれぞれ、図１におけるＦＦ回路４０に相当する。
【００７８】
つまり、ＦＦ回路１４０、２４０、３４０、３４０はそれぞれデータ端子Ｄ、クロック端子、出力端子Ｑを有している。ＦＦ回路１４０、２４０、３４０、３４０のデータ端子Ｄには、それぞれＯＲゲート１３６、２３６、３３６、４３６の出力端子から出力される信号が入力される。ＦＦ回路１４０、２４０、３４０、３４０のクロック端子には、信号ＷＣＬＫが共通に入力される。ＦＦ回路１４０、２４０、３４０、３４０の出力端子Ｑからは、それぞれ出力信号ＯＵＴ０、ＯＵＴ１、ＯＵＴ２、ＯＵＴ３を出力する。
【００７９】
例えば、データ信号ＤＡＴＡ２に注目してみれば、制御回路１０、第１の転送回路２０、第２の転送回路３３０、ＦＦ回路３４０によりデータ信号ＤＡＴＡ２を格納するものであり、図１のデータ転送回路と同様な構成となる。また、他のデータ信号ＤＡＴＡ０、１、３についても同様に、それぞれ図１のデータ転送回路と同様な構成にて各々対応するデータ信号を格納するものとなる。
【００８０】
上記のことから、図２と同様な電位レベルのモード指示信号ＨＳＰや書込み信号ＷＥが入力されることで、データ信号ＤＡＴＡ０〜ＤＡＴＡ３として転送される、複数ビットからなるデータに対して、それぞれ図１の場合と同様にデータの転送制御することができる。よって、第１の実施の形態と同様な効果を得ることができる。
【００８１】
図４においては、各データ信号ＤＡＴＡ０〜ＤＡＴＡ３の格納のための構成に対して、制御回路１０と第１のデータ転送回路２０とを共有している。よって、本発明を用いた、複数ビットからなるデータに対するデータ転送回路としての構成要素の増加を極力低減できる。また、共有することで、各データ信号ＤＡＴＡ０〜ＤＡＴＡ３の格納処理のタイミングを同期させることができるので、各データ信号ＤＡＴＡ０〜ＤＡＴＡ３の格納処理のタイミングを精度よく行なうことができる。
【００８２】
なお、第２の実施の形態におけるデータ転送回路１１１は、４ビットのデータを例としたが、これに限定されるものではなく、２ビット以上の複数ビットのデータに対して適用可能である。
【００８３】
以上、本発明のデータ転送回路において、図面を用いて詳細に説明したが、本発明のデータ転送回路は上記のものに限定されるものでなく、本発明のデータ転送回路の機能を実現できるものであれば、種々の変更、改良が可能である。
【００８４】
【発明の効果】
以上のように、本発明のデータ転送回路によれば、書込み信号ＷＥのようなデータ信号の格納の制御に用いられる制御信号の遅延による誤ったデータ信号の格納を防止して、高速化と低消費電力化とを両立をさせたデータ転送回路を提供することができる。
【００８５】
また、本発明のデータ転送回路によれば、上記の効果を得るのに、機能が低減することなく、回路素子数の増加をも極力低減することで実現可能である。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態におけるデータ転送回路１の回路図である。
【図２】図１のデータ転送回路１の動作を説明するタイミングチャートである。
【図３】図１のデータ転送回路１に入力される信号を発生する構成の回路図である。
【図４】本発明の第２の実施の形態におけるデータ転送回路１１１の回路図である。
【符号の説明】
１、１１１    データ転送回路
３    レジスタ
５    分周回路
７    セレクタ
９    書込み信号発生回路
１０    制御回路
１２、１４、３６、１３６、２３６、３３６、４３６    ＯＲゲート
２０    ＡＮＤゲート（第１の転送回路）
３０、１３０、２３０、３３０、４３０    第２の転送回路
３２、３４、１３２、１３４、２３２、２３４、３３２、３３４、４３２、４３４    ＡＮＤゲート
４０、１４０、２４０、３４０、４４０    ＦＦ回路（保持回路）
【図１】
0003558564.tif 000002
【図２】
0003558564.tif 000003
【図３】
0003558564.tif 000004
【図４】
0003558564.tif 000005