説明

クロック分周回路、クロック分周方法及びプログラム

【課題】クロック分周回路において動作電圧を低下させて消費電力を削減すること。
【解決手段】クロック分周回路は、入力クロック信号をカウントしてD進カウント値とするカウンタと、出力クロック信号をカウントしてN進カウント値とするカウンタと、出力クロック信号と出力クロックの最小周期と出力クロックの半周期精度差分とD進カウント値とN進カウント値とから立ち上がり及び立ち下がりトグルイネーブル信号を求めるトグル位置解析部と、入力クロック信号の立ち上がりエッジにおいて立ち上がりトグルイネーブル信号に応じてトグルする第1のフリップフロップと、入力クロック信号の立ち下がりエッジにおいて立ち下がりトグルイネーブル信号に応じてトグルする第2のフリップフロップと、第1及び第2のフリップフロップの出力の間における排他的論理和を求めて出力クロックする排他的論理和回路と、を備えている。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、クロック分周回路、クロック分周方法及びプログラムに関し、特に、半導体回路におけるクロック分周回路、クロック分周方法及びプログラムに関する。
【背景技術】
【0002】
従前のモバイル機器においては、最高の処理負荷を要する動作が問題なく行われるクロック周波数にまで動作周波数を高くして、すべての動作処理を行っていた。
【0003】
しかし、今日では、電池の稼動時間を延ばすために低消費電力化の要求が高まっている。低消費電力化の要求に応える方法の1つとして、CPU信号処理量又はシステムバス使用帯域に応じて動作周波数及び電源電圧を制御する方法がある。例えば、携帯電話に搭載されるアプリケーションチップにおいては、待ち受け状態、音楽再生状態、動画再生状態等に応じて、必要なデータ処理量及び転送量が変動することから、これらの状態に連動して動作周波数を適切な値に調整することが好ましい。
【0004】
これを実現する技術としてPLL(Phase−Locked Loop)を用いた分周回路が挙げられる。しかし、PLLによると、周波数を変更する際に一時的にアイドルさせる時間が必要とされ、システム制御が複雑となり、素早い周波数変更に対応することができない。そこで、短い変更時間で最適な分周比に切り替えられる分周回路が望まれている。
【0005】
特許文献1に、クロック信号を任意の分周比率で分周し、所望の周波数のクロック信号を発生させるクロック分周回路が記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2006−148807号公報(第6〜11頁、図1、2)
【発明の概要】
【発明が解決しようとする課題】
【0007】
以下の分析は、本発明者によってなされたものである。
【0008】
特許文献1に記載されたクロック分周回路は、入力クロック信号を任意の有理数で分周して出力クロック信号を生成する場合に、入力クロック信号を取捨選択する方式を採用している。このとき、分周精度は入力クロック信号の一周期の精度となるため、CPU処理速度及びバス使用帯域と連動したクロック周波数制御に伴う電源電圧制御ができず、消費電力を低減することができない。
【0009】
特許文献1に記載された回路構成によると、入力クロック信号のパルスを出力するか停止するかの制御で出力クロックの生成をするため、入力クロック信号のハイレベルのパルス幅と同一のパルス幅の信号が出力クロックに出力される。具体的には、分周比設定値を加減算して生成したイネーブル信号によって、入力クロック信号のハイレベルのパルス幅の信号がD回入力される期間にN回のハイレベルのパルス幅の信号を出力することでD/N分周の出力クロックの生成をしている。したがって、どのような分周比の設定においても、必ず入力クロック信号のハイレベルのパルス幅と同一のパルス幅の信号が出力クロックに出力される。
【0010】
特許文献1に記載されたクロック分周回路によると、出力クロックのハイレベルのパルス幅は、入力クロック信号のハイレベルのパルス幅と同一となるため、立ち上がりエッジと立ち下がりエッジ間のセットアップタイミングは、分周前と同じになり、動作電圧を下げた場合に内部回路素子の遅延が増加することでセットアップタイミングを満足できない可能性がある。
【0011】
そこで、クロック分周回路において、動作電圧を低下させて消費電力を削減することが課題となる。本発明の目的は、かかる課題を解決するクロック分周回路、クロック分周方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0012】
本発明の第1の視点に係るクロック分周回路は、
入力クロック信号を分周して出力クロック信号として出力するクロック分周回路において、
前記入力クロック信号をカウントしてD進カウント値として出力するD進カウンタと、
前記出力クロック信号をカウントしてN進カウント値として出力するN進カウンタと、
前記出力クロック信号と前記出力クロックの最小周期と前記出力クロックの半周期精度差分と前記D進カウント値と前記N進カウント値とに基づいて、立ち上がりトグルイネーブル信号及び立ち下がりトグルイネーブル信号を求めて出力するトグル位置解析部と、
前記入力クロック信号の立ち上がりエッジにおいて前記立ち上がりトグルイネーブル信号に応じてトグルする第1のフリップフロップと、
前記入力クロック信号の立ち下がりエッジにおいて前記立ち下がりトグルイネーブル信号に応じてトグルする第2のフリップフロップと、
前記第1のフリップフロップの出力と前記第2のフリップフロップの出力との間における排他的論理和を前記出力クロックとして出力する排他的論理和回路と、を備えている。
【0013】
本発明の第2の視点に係るクロック分周方法は、
コンピュータが、入力クロック周期設定値と出力クロック周期設定値から最小周期と半周期精度差分を算出する工程と、
前記最小周期と前記半周期精度差分から出力クロック周期を算出する工程と、
前記出力クロック周期から、ハイレベル信号に対する第1の幅とロウレベル信号に対する第2の幅とを算出する工程と、
入力クロック信号の立ち上がりエッジと立ち下がりエッジをカウントし、前記第1の幅のカウント値の期間だけハイレベルの信号を出力し、前記第2の幅のカウント値の期間だけロウレベル信号を出力する工程と、を含む。
【0014】
本発明の第3の視点に係るプログラムは、
入力クロック周期設定値と出力クロック周期設定値から最小周期と半周期精度差分を算出する処理と、
前記最小周期と前記半周期精度差分から出力クロック周期を算出する処理と、
前記出力クロック周期から、ハイレベル信号に対する第1の幅とロウレベル信号に対する第2の幅とを算出する処理と、
入力クロック信号の立ち上がりエッジと立ち下がりエッジをカウントし、前記第1の幅のカウント値の期間だけハイレベルの信号を出力し、前記第2の幅のカウント値の期間だけロウレベル信号を出力する処理と、をコンピュータに実行させる。
【発明の効果】
【0015】
本発明に係るクロック分周回路及びクロック分周方法によると、クロック分周回路において、動作電圧を低下させて消費電力を削減することができる。
【図面の簡単な説明】
【0016】
【図1】本発明の第1の実施形態に係るクロック分周回路の構成を示す回路図である。
【図2】本発明の第1の実施形態に係るクロック分周回路の動作を示すタイミング図である。
【図3】本発明の第2の実施形態に係るクロック分周回路の構成を示す回路図である。
【図4】本発明の第2の実施形態に係るクロック分周回路の動作を示すタイミング図である。
【図5】本発明の第3の実施形態に係るクロック分周方法を示すフロー図である。
【発明を実施するための形態】
【0017】
本発明の第1の展開形態によると、上記第1の視点に係るクロック分周回路が提供される。
【0018】
本発明の第2の展開形態によると、前記トグル位置解析部は、前記N進カウント値と前記出力クロック信号の最小周期と前記出力クロック信号の半周期精度差分とに基づいて前記出力クロックの半周期精度差分を均等に分配した出力クロック周期を求め、該出力クロック周期と前記出力クロック信号のレベルとに基づいて出力クロック半周期を求め、該出力クロック半周期に基づいて出力クロックのトグルポイントを求め、該トグルポイントと前記D進カウント値とに基づいて前記立ち上がりトグルイネーブル信号及び前記立ち下がりトグルイネーブル信号を求める、クロック分周回路が提供される。
【0019】
本発明の第3の展開形態によると、入力クロック周期設定値及び出力クロック周期設定値を参照し、前記出力クロックの最小周期を求める最小周期算出部をさらに備えている、クロック分周回路が提供される。
【0020】
本発明の第4の展開形態によると、入力クロック周期設定値及び出力クロック周期設定値を参照し、前記出力クロックの半周期精度差分を求める半周期精度差分算出部をさらに備えている、クロック分周回路が提供される。
【0021】
本発明の第5の展開形態によると、上記第2の視点に係るクロック分周方法が提供される。
【0022】
本発明の第6の展開形態によると、上記第3の視点に係るプログラムが提供される。
【0023】
本発明の第7の展開形態によると、上記プログラムを記録したコンピュータ読み取り可能な記録媒体が提供される。
【0024】
本発明に係るクロック分周回路、クロック分周方法及びプログラムによると、出力クロックのパルス幅を入力クロック信号のパルス幅と比較して広くすることができる。したがって、立ち上がりエッジと立ち下がりエッジ間のセットアップタイミングが緩和でき、動作電圧を下げることができ、結果として電源電圧制御による消費電力の低減が可能となる。
【0025】
(実施形態1)
本発明の第1の実施形態に係るクロック分周回路について、図面を参照して説明する。図1は、本実施形態に係るクロック分周回路の構成を示す回路図である。図1を参照すると、クロック分周回路は、設定値解析部150、D進カウンタ200、N進カウンタ300、トグル位置解析部400、立ち上がりトグルFF500、立ち下がりトグルFF600及び排他的論理和回路700を有する。
【0026】
設定値解析部150は、最小周期算出部160と半周期精度差分算出部170を含む。
【0027】
最小周期算出部160は、入力クロック周期設定値Dと出力クロック周期設定値Nから、最小周期MIN_CYCを算出して、トグル位置解析部400に出力する。
【0028】
半周期精度差分算出部170は、入力クロック周期設定値Dと出力クロック周期設定値Nから、半周期精度差分DEF_SYNCを算出して、トグル位置解析部400に出力する。
【0029】
D進カウンタ200は、入力クロック周期設定値Dを入力とし、その値に応じた入力クロック信号周期数をカウントし、D進カウント値D_COUNTとしてトグル位置解析部400に出力する。
【0030】
N進カウンタ300は、出力クロック周期設定値Nを入力とし、その値に応じた出力クロック信号周期数をカウントし、N進カウント値N_COUNTとしてトグル位置解析部400に出力する。
【0031】
トグル位置解析部400は、最小周期算出部160から出力される最小周期MIN_CYCと、半周期精度差分算出部170から出力される半周期精度差分DEF_SYNCと、D進カウンタ200から出力されるD進カウント値D_COUNTと、N進カウンタ300から出力されるN進カウント値N_COUNTと、出力クロックとに基づいて、出力クロック信号のトグルポイントを算出し、立ち上がりトグルFF500のトグルイネーブル端子に立ち上がりのトグルイネーブル信号Enable_Pを出力し、立ち下がりトグルFF600のトグルイネーブル端子に立ち下がりのトグルイネーブル信号Enable_Nを出力する。
【0032】
立ち上がりトグルFF500は、トグルイネーブル機能付トグルFFであり、トグル位置解析部400からの立ち上がりのトグルイネーブル信号Enable_Pをトグルイネーブル入力とし、トグルイネーブル状態に応じて入力クロック信号の立ち上がりに同期してトグル動作し、立ち上がり同期トグルクロック信号TFF_Pを排他的論理和回路700に出力する。
【0033】
立ち下がりトグルFF600は、トグルイネーブル機能付トグルFFであり、トグル位置解析部400からの立ち下がりのトグルイネーブル信号Enable_Nをトグルイネーブル入力とし、トグルイネーブル状態に応じて入力クロック信号の立ち下がりに同期してトグル動作し、立ち下がり同期トグルクロック信号TFF_Nを排他的論理和回路700に出力する。
【0034】
排他的論理和回路700は、立ち上がりトグルFF500の立ち上がり同期トグルクロック信号TFF_Pと、立ち下がりトグルFF600の立ち下がり同期トグルクロック信号TFF_Nとを入力とし、これらの排他的論理和を求めて出力クロック信号として出力する。
【0035】
また、リセット信号は、D進カウンタ200、N進カウンタ300、トグル位置解析部400、立ち上がりトグルFF500及び立ち下がりトグルFF600に入力され、リセット信号が0の場合、各部を初期化する。
【0036】
図2は、本実施形態に係るクロック分周回路の動作を示すタイミング図である。図1の回路図と図2のタイミングチャートを参照して、7/3分周(入力クロック周期設定値Dが7、出力クロック周期設定値Nが3)の場合の動作について説明する。
【0037】
時刻T0では、リセット信号に0が入力される。入力クロック周期設定値Dと出力クロック周期設定値Nが入力される。
【0038】
最小周期算出部160は、入力クロック周期設定値Dと出力クロック周期設定値Nから、式(1)に基づいて最小周期MIN_CYCを算出する。
MIN_CYC=INT(D*2/N)・・・(1)
ここで、式(1)におけるINT()は小数点以下を切り捨てる関数である。
【0039】
入力クロック周期設定値Dが7であり、出力クロック周期設定値Nが3である場合には、最小周期MIN_CYCは4となる。最小周期算出部160は、この値を最小周期MIN_CYCとしてトグル位置解析部400に出力する。
【0040】
半周期精度差分算出部170は、入力クロック周期設定値Dと出力クロック周期設定値Nから、式(2)により半周期精度差分DEF_SYNCを算出する。
DEF_SYNC=D*2−INT(D*2/N)*N・・・(2)
【0041】
入力クロック周期設定値Dが7であり、出力クロック周期設定値Nが3である場合には、半周期精度差分DEF_SYNCは2となる。半周期精度差分算出部170は、この値を半周期精度差分DEF_SYNCとしてトグル位置解析部400に出力する。D進カウンタ200は、リセットされD進カウンタD_COUNTに初期値0が設定される。N進カウンタ300は、リセットされN進カウンタN_COUNTに初期値0が設定される。
【0042】
トグル位置解析部400は、N進カウント値N_COUNTと半周期精度差分DEF_SYNCと最小周期MIN_CYCから式(3)及び式(4)により出力クロック周期CYCLEを算出する。
N進カウント値N_COUNT<半周期精度差分DEF_SYNCの場合には、
出力クロック周期CYCLE=最小周期MIN_CYC+1・・・(3)
一方、N進カウント値N_COUNT≧半周期精度差分DEF_SYNCの場合には、
出力クロック周期CYCLE=最小周期MIN_CYC・・・(4)
【0043】
ここでは、N進カウント値N_COUNT=0、半周期精度差分DEF_SYNC=2であるため、N進カウント値N_COUNT<半周期精度差分DEF_SYNCの条件を満たし、式(3)より出力クロック周期CYCLEは最小周期MIN_CYC+1、すなわち5となる。
【0044】
トグル位置解析部400は、出力クロック周期CYCLEから式(5)及び式(6)により半周期HALFを算出する。
出力クロック信号が0である場合には、
半周期HALF=出力クロック周期CYCLE−INT(出力クロック周期CYCLE/2)・・・(5)
一方、出力クロック信号が1である場合には、
半周期HALF=INT(出力クロック周期CYCLE/2)・・・式(6)
【0045】
ここでは、出力クロック信号が0であるため、式(5)により半周期HALFは3となる。
【0046】
トグル位置解析部400は、D進カウント値D_COUNTから式(7)より偶数D進カウンタ値D_COUNT_TPPを算出する。
D_COUNT_TPP=D_COUNT*2・・・(7)
【0047】
トグル位置解析部400は、D進カウント値D_COUNTから式(8)より奇数D進カウンタ値D_COUNT_TPNを算出する。
D_COUNT_TPN=D_COUNT*2+1・・・(8)
【0048】
ここでは、D進カウント値D_COUNT=0であるため、D_COUNT_TPPは0となり、D_COUNT_TPNは1となる。
【0049】
トグルポイントTP_Pは、リセットにより初期値0が設定される。トグルポイントTP_Nは、リセットにより初期値0が設定される。
【0050】
トグル位置解析部400は、偶数D進カウンタ値D_COUNT_TPPとトグルポイントTP_Nから式(9−1)及び式(9−2)よりトグルイネーブル信号Enable_Pを算出する。
偶数D進カウンタ値D_COUNT_TPP=トグルポイントTP_Nである場合には、
Enable_P=1・・・(9−1)
一方、偶数D進カウンタ値D_COUNT_TPP≠トグルポイントTP_Nである場合には、
Enable_P=0・・・(9−2)
【0051】
ここでは、トグルポイントTP_Pの基準タイミングとなる偶数D進カウンタ値D_COUNT_TPP=0とトグルポイントTP_N=0が一致するため、トグルイネーブル信号Enable_Pは1に設定される。
【0052】
トグル位置解析部400は、奇数D進カウンタ値D_COUNT_TPNとトグルポイントTP_Pから式(10−1)及び式(10−2)よりトグルイネーブル信号Enable_Nを算出する。
奇数D進カウンタ値D_COUNT_TPN=トグルポイントTP_Pである場合には、
Enable_N=1・・・(10−1)
一方、奇数D進カウンタ値D_COUNT_TPN≠トグルポイントTP_Pである場合には、
Enable_N=0・・・(10−2)
【0053】
ここでは、トグルポイントTP_Nの基準タイミングとなる奇数D進カウンタ値D_COUNT_TPN=1とトグルポイントTP_P=0とが不一致であるため、トグルイネーブル信号Enable_Nは、0に設定される。
【0054】
立ち上がりトグルFF500は、リセットにより出力TFF_Pは初期値0に設定される。立ち下がりトグルFF600は、リセットにより出力TFF_Nは初期値0に設定される。排他的論理和回路700は、立ち上がりトグルFF500の出力TFF_Pが0と立ち下がりトグルFF600の出力TFF_Nが0から出力クロック信号として0が出力される。
【0055】
時刻T1では、リセット信号が0から1に変化する。
【0056】
時刻T2では、入力クロック信号が0から1に立ち上がる。立ち上がりトグルFF500は、入力クロック信号の立ち上がり時にトグルイネーブル信号Enable_Pが1のため出力TFF_Pは1に変化する。排他的論理和回路700は、立ち上がりトグルFF500の出力TFF_Pが1と立ち下がりトグルFF600の出力TFF_Nが0により出力クロック信号として1が出力される。トグル位置解析部400では、出力クロック信号が1であるため、式(6)により半周期HALFは、2となる。
偶数D進カウンタ値D_COUNT_TPPが0とトグルポイントTP_Nが0から式(9−1)により、トグルイネーブル信号Enable_Pは、1に設定される。
奇数D進カウンタ値D_COUNT_TPNが1とトグルポイントTP_Pが0から式(10−2)により、トグルイネーブル信号Enable_Nは、0に設定される。
【0057】
トグルポイントTP_Pは、入力クロック信号の立が上がりで、式(11)、式(12)又は式(13)より設定される。
トグルイネーブル信号Enable_Pが1の場合において、
入力クロック周期設定D*2>トグルポイントTP_N+半周期HALFである場合には、
トグルポイントTP_P=トグルポイントTP_N+半周期HALF ・・・(11)
入力クロック周期設定D*2≦トグルポイントTP_N+半周期HALFである場合には、
トグルポイントTP_P=0・・・(12)
一方、トグルイネーブル信号Enable_Pが0である場合には、
トグルポイントTP_P=トグルポイントTP_N・・・(13)
【0058】
ここでは、トグルイネーブル信号Enable_Pが1で、入力クロック周期設定Dが7とトグルポイントTP_Nが0と半周期HALFが2から入力クロック周期設定D*2>トグルポイントTP_N+半周期HALFの条件を満たすため、式(11)よりトグルポイントTP_Pは3となる。
【0059】
時刻T3では、入力クロック信号が1から0に立ち下がる。D進カウンタ200は、入力クロック信号の立ち下がりでカウントアップし、D_COUNTは1になる。立ち下がりトグルFF600は、入力クロック信号の立ち下がりでトグルイネーブル信号Enable_Nが0で出力TFF_Nは0が保持される。トグル位置解析部400では、D進カウント値D_COUNT=1から式(7)より偶数D進カウンタ値D_COUNT_TPPは、2となる。D進カウント値D_COUNT=1から式(8)より奇数D進カウンタ値D_COUNT_TPNは、3となる。
【0060】
トグルポイントTP_Nは、入力クロック信号の立ち下がりで、式(14)、式(15)又は式(16)により設定される。
トグルイネーブル信号Enable_Nが1の場合において、
入力クロック周期設定D*2>トグルポイントTP_P+半周期HALFである場合には、
トグルポイントTP_N=トグルポイントTP_P+半周期HALF・・・(14)
入力クロック周期設定D*2≦トグルポイントTP_P+半周期HALFである場合には、
トグルポイントTP_N=0・・・(15)
一方、トグルイネーブル信号Enable_Nが0の場合には、
トグルポイントTP_N=トグルポイントTP_P・・・(16)
【0061】
ここでは、トグルイネーブル信号Enable_Nが0の条件を満たすため、式(16)よりトグルポイントTP_Nは3となる。
偶数D進カウンタ値D_COUNT_TPPが2とトグルポイントTP_Nが3から、式(9−2)により、トグルイネーブル信号Enable_Pは、0に設定される。
奇数D進カウンタ値D_COUNT_TPNが3とトグルポイントTP_Pが3から、式(10−1)により、トグルイネーブル信号Enable_Nは、1に設定される。
【0062】
時刻T4では、入力クロック信号が0から1に立ち上がる。立ち上がりトグルFF500は、入力クロック信号の立ち上がり時にトグルイネーブル信号Enable_Pが0のため出力TFF_Pは1が保持される。トグル位置解析部400では、偶数D進カウンタ値D_COUNT_TPPが2とトグルポイントTP_Nが3から式(9−2)により、トグルイネーブル信号Enable_Pは、0に設定される。奇数D進カウンタ値D_COUNT_TPNが3とトグルポイントTP_Pが3から式(10−1)により、トグルイネーブル信号Enable_Nは、1に設定される。トグルイネーブル信号Enable_Pが0の条件を満たすため、式(13)よりトグルポイントTP_Pは3になる。
【0063】
時刻T5では、入力クロック信号が1から0に立ち下がる。D進カウンタ200は、入力クロック信号の立ち下がりでカウントアップし、D_COUNTは2になる。立ち下がりトグルFF600は、入力クロック信号の立ち下がりでトグルイネーブル信号Enable_Nが1で出力TFF_Nは1に変化する。排他的論理和回路700は、立ち上がりトグルFF500の出力TFF_Pが1と立ち下がりトグルFF600の出力TFF_Nが1から出力クロック信号として0が出力される。N進カウンタ300は、出力クロック信号の立ち下がりでカウントアップし、N_COUNTは1になる。トグル位置解析部400では、N進カウント値N_COUNT=1と半周期精度差分DEF_SYNC=2であるため、N進カウント値N_COUNT<半周期精度差分DEF_SYNCの条件を満たし、最小周期MIN_CYC=4から式(3)より出力クロック周期CYCLEは、5となる。出力クロック信号が0であるため、式(5)により半周期HALFは、3となる。D進カウント値D_COUNT=2から式(7)より偶数D進カウンタ値D_COUNT_TPPは、4となる。D進カウント値D_COUNT=2から式(8)より奇数D進カウンタ値D_COUNT_TPNは、5となる。トグルイネーブル信号Enable_Nが1で、入力クロック周期設定Dが7とトグルポイントTP_Pが3と半周期HALFが2から入力クロック周期設定D*2>トグルポイントTP_P+半周期HALFの条件を満たすため、式(14)よりトグルポイントTP_Nは5となる。偶数D進カウンタ値D_COUNT_TPPが4とトグルポイントTP_Nが5から式(9−2)により、トグルイネーブル信号Enable_Pは、0に設定される。奇数D進カウンタ値D_COUNT_TPNが5とトグルポイントTP_Pが3から式(10−2)により、トグルイネーブル信号Enable_Nは、0に設定される。
【0064】
時刻T6では、入力クロック信号が0から1に立ち上がる。立ち上がりトグルFF500は、入力クロック信号の立ち上がり時にトグルイネーブル信号Enable_Pが0で出力TFF_Pは1が保持される。トグル位置解析部400では、偶数D進カウンタ値D_COUNT_TPPが4とトグルポイントTP_Nが5から式(9−2)により、トグルイネーブル信号Enable_Pは、0に設定される。奇数D進カウンタ値D_COUNT_TPNが5とトグルポイントTP_Pが5から式(10−1)により、トグルイネーブル信号Enable_Nは、1に設定される。トグルイネーブル信号Enable_Pが0の条件を満たすため、式(13)よりトグルポイントTP_Pは5になる。
【0065】
時刻T7では、入力クロック信号が1から0に立ち下がる。D進カウンタ200は、入力クロック信号の立ち下がりでカウントアップし、D_COUNTは3になる。立ち下がりトグルFF600は、入力クロック信号の立ち下がりでトグルイネーブル信号Enable_Nが1で出力TFF_Nは0に変化する。排他的論理和回路700は、立ち上がりトグルFF500の出力TFF_Pが1と立ち下がりトグルFF600の出力TFF_Nが0から出力クロック信号として1が出力される。トグル位置解析部400では、N進カウント値N_COUNT=1と半周期精度差分DEF_SYNC=2であるため、N進カウント値N_COUNT<半周期精度差分DEF_SYNCの条件を満たし、最小周期MIN_CYC=4から式(3)より出力クロック周期CYCLEは、5となる。出力クロック信号が1であるため、式(6)により半周期HALFは、2となる。D進カウント値D_COUNT=3から式(7)より偶数D進カウンタ値D_COUNT_TPPは、6となる。D進カウント値D_COUNT=3から式(8)より奇数D進カウンタ値D_COUNT_TPNは、7となる。トグルイネーブル信号Enable_Nが1で、入力クロック周期設定Dが7とトグルポイントTP_Pが5と半周期HALFが3から入力クロック周期設定D*2>トグルポイントTP_P+半周期HALFの条件を満たすため、式(14)よりトグルポイントTP_Nは8となる。偶数D進カウンタ値D_COUNT_TPPが6とトグルポイントTP_Nが8から式(9−2)により、トグルイネーブル信号Enable_Pは、0に設定される。奇数D進カウンタ値D_COUNT_TPNが7とトグルポイントTP_Pが5から式(10−2)により、トグルイネーブル信号Enable_Nは、0に設定される。
【0066】
時刻T8では、入力クロック信号が0から1に立ち上がる。立ち上がりトグルFF500は、入力クロック信号の立ち上がり時にトグルイネーブル信号Enable_Pが0で出力TFF_Pは1が保持される。トグル位置解析部400では、偶数D進カウンタ値D_COUNT_TPPが6とトグルポイントTP_Nが8から式(9−2)により、トグルイネーブル信号Enable_Pは、0に設定される。奇数D進カウンタ値D_COUNT_TPNが7とトグルポイントTP_Pが8から式(10−2)により、トグルイネーブル信号Enable_Nは、0に設定される。トグルイネーブル信号Enable_Nは、0に設定される。トグルイネーブル信号Enable_Pが0の条件を満たすため、式(13)よりトグルポイントTP_Pは8になる。
【0067】
時刻T9では、入力クロック信号が1から0に立ち下がる。D進カウンタ200は、入力クロック信号の立ち下がりでカウントアップし、D_COUNTは4になる。立ち下がりトグルFF600は、入力クロック信号の立ち下がりでトグルイネーブル信号Enable_Nが0で出力TFF_Nは0が保持される。トグル位置解析部400では、N進カウント値N_COUNT=1と半周期精度差分DEF_SYNC=2であるため、N進カウント値N_COUNT<半周期精度差分DEF_SYNCの条件を満たし、最小周期MIN_CYC=4から式(3)より出力クロック周期CYCLEは、5となる。出力クロック信号が1であるため、式(6)により半周期HALFは、2となる。D進カウント値D_COUNT=4から式(7)より偶数D進カウンタ値D_COUNT_TPPは、8となる。D進カウント値D_COUNT=4から式(8)より奇数D進カウンタ値D_COUNT_TPNは、9となる。トグルイネーブル信号Enable_Nが0の条件を満たすため、式(16)よりトグルポイントTP_Nは8となる。偶数D進カウンタ値D_COUNT_TPPが8とトグルポイントTP_Nが8から式(9−1)により、トグルイネーブル信号Enable_Pは、1に設定される。奇数D進カウンタ値D_COUNT_TPNが9とトグルポイントTP_Pが8から式(10−2)により、トグルイネーブル信号Enable_Nは、0に設定される。
【0068】
時刻T10では、入力クロック信号が0から1に立ち上がる。立ち上がりトグルFF500は、入力クロック信号の立ち上がり時にトグルイネーブル信号Enable_Pが1で出力TFF_Pは0に変化する。排他的論理和回路700は、立ち上がりトグルFF500の出力TFF_Pが0と立ち下がりトグルFF600の出力TFF_Nが0から出力クロック信号として0が出力される。N進カウンタ300は、出力クロック信号の立ち下がりでカウントアップし、N_COUNTは2になる。トグル位置解析部400では、N進カウント値N_COUNT=2と半周期精度差分DEF_SYNC=2であるため、N進カウント値N_COUNT≧半周期精度差分DEF_SYNCの条件を満たし、最小周期MIN_CYC=4から式(4)より出力クロック周期CYCLEは、4となる。出力クロック信号が0であるため、式(5)により半周期HALFは、2となる。偶数D進カウンタ値D_COUNT_TPPが8とトグルポイントTP_Nが8から式(9−1)により、トグルイネーブル信号Enable_Pは、1に設定される。奇数D進カウンタ値D_COUNT_TPNが9とトグルポイントTP_Pが8から式(10−2)により、トグルイネーブル信号Enable_Nは、0に設定される。トグルイネーブル信号Enable_Pが1で入力クロック周期設定Dが7とトグルポイントTP_Nが8と半周期HALFが2から入力クロック周期設定D*2>トグルポイントTP_N+半周期HALFの条件を満たすため、式(11)よりトグルポイントTP_Pは10になる。
【0069】
時刻T11では、入力クロック信号が1から0に立ち下がる。D進カウンタ200は、入力クロック信号の立ち下がりでカウントアップし、D_COUNTは5になる。立ち下がりトグルFF600は、入力クロック信号の立ち下がりでトグルイネーブル信号Enable_Nが0で出力TFF_Nは0が保持される。トグル位置解析部400では、N進カウント値N_COUNT=2と半周期精度差分DEF_SYNC=2であるため、N進カウント値N_COUNT≧半周期精度差分DEF_SYNCの条件を満たし、最小周期MIN_CYC=4から式(4)より出力クロック周期CYCLEは、4となる。出力クロック信号が0であるため、式(5)により半周期HALFは、2となる。D進カウント値D_COUNT=5から式(7)より偶数D進カウンタ値D_COUNT_TPPは、10となる。D進カウント値D_COUNT=5から式(8)より奇数D進カウンタ値D_COUNT_TPNは、11となる。トグルイネーブル信号Enable_Nが0の条件を満たすため、式(16)よりトグルポイントTP_Nは10となる。偶数D進カウンタ値D_COUNT_TPPが10とトグルポイントTP_Nが10から式(9−1)により、トグルイネーブル信号Enable_Pは、1に設定される。奇数D進カウンタ値D_COUNT_TPNが11とトグルポイントTP_Pが10から式(10−2)により、トグルイネーブル信号Enable_Nは、0に設定される。
【0070】
時刻T12では、入力クロック信号が0から1に立ち上がる。立ち上がりトグルFF500は、入力クロック信号の立ち上がり時にトグルイネーブル信号Enable_Pが1で出力TFF_Pは1に変化する。排他的論理和回路700は、立ち上がりトグルFF500の出力TFF_Pが1と立ち下がりトグルFF600の出力TFF_Nが0から出力クロック信号として1が出力される。トグル位置解析部400では、N進カウント値N_COUNT=2と半周期精度差分DEF_SYNC=2であるため、N進カウント値N_COUNT≧半周期精度差分DEF_SYNCの条件を満たし、最小周期MIN_CYC=4から式(4)より出力クロック周期CYCLEは、4となる。出力クロック信号が1であるため、式(6)により半周期HALFは、2となる。偶数D進カウンタ値D_COUNT_TPPが10とトグルポイントTP_Nが10から式(9−1)により、トグルイネーブル信号Enable_Pは、1に設定される。奇数D進カウンタ値D_COUNT_TPNが11とトグルポイントTP_Pが12から式(10−2)により、トグルイネーブル信号Enable_Nは、0に設定される。トグルイネーブル信号Enable_Pが1で入力クロック周期設定Dが7とトグルポイントTP_Nが10と半周期HALFが2から入力クロック周期設定D*2>トグルポイントTP_N+半周期HALFの条件を満たすため、式(11)よりトグルポイントTP_Pは12になる。
【0071】
時刻T13では、入力クロック信号が1から0に立ち下がる。D進カウンタ200は、入力クロック信号の立ち下がりでカウントアップし、D_COUNTは6になる。立ち下がりトグルFF600は、入力クロック信号の立ち下がりでトグルイネーブル信号Enable_Nが0で出力TFF_Nは0が保持される。トグル位置解析部400では、N進カウント値N_COUNT=2と半周期精度差分DEF_SYNC=2であるため、N進カウント値N_COUNT≧半周期精度差分DEF_SYNCの条件を満たし、最小周期MIN_CYC=4から式(4)より出力クロック周期CYCLEは、4となる。出力クロック信号が1であるため、式(6)により半周期HALFは、2となる。D進カウント値D_COUNT=6から式(7)より偶数D進カウンタ値D_COUNT_TPPは、12となる。D進カウント値D_COUNT=6から式(8)より奇数D進カウンタ値D_COUNT_TPNは、13となる。トグルイネーブル信号Enable_Nが0の条件を満たすため、式(16)よりトグルポイントTP_Nは12となる。偶数D進カウンタ値D_COUNT_TPPが12とトグルポイントTP_Nが12から式(9−1)により、トグルイネーブル信号Enable_Pは、1に設定される。奇数D進カウンタ値D_COUNT_TPNが13とトグルポイントTP_Pが12から式(10−2)により、トグルイネーブル信号Enable_Nは、0に設定される。
【0072】
時刻T14では、入力クロック信号が0から1に立ち上がる。立ち上がりトグルFF500は、入力クロック信号の立ち上がりでトグルイネーブル信号Enable_Pが1で出力TFF_Pは0に変化する。排他的論理和回路700は、立ち上がりトグルFF500の出力TFF_Pが0と立ち下がりトグルFF600の出力TFF_Nが0から、出力クロック信号として0が出力される。N進カウンタ300は、出力クロック信号の立ち下がりでカウントアップし、N_COUNTは0になる。トグル位置解析部400では、N進カウント値N_COUNT=0と半周期精度差分DEF_SYNC=2であるため、N進カウント値N_COUNT<半周期精度差分DEF_SYNCの条件を満たし、最小周期MIN_CYC=4から式(3)より出力クロック周期CYCLEは、5となる。出力クロック信号が0であるため、式(5)により半周期HALFは、3となる。偶数D進カウンタ値D_COUNT_TPPが12とトグルポイントTP_Nが12から式(9−1)により、トグルイネーブル信号Enable_Pは、1に設定される。奇数D進カウンタ値D_COUNT_TPNが13とトグルポイントTP_Pが12から式(10−2)により、トグルイネーブル信号Enable_Nは、0に設定される。トグルイネーブル信号Enable_Pが1で入力クロック周期設定Dが7とトグルポイントTP_Nが12と半周期HALFが3から入力クロック周期設定D*2≦トグルポイントTP_N+半周期HALFの条件を満たすため、式(12)よりトグルポイントTP_Pは0になる。
【0073】
時刻T15では、入力クロック信号が1から0に立ち下がる。D進カウンタ200は、入力クロック信号の立ち下がりでカウントアップし、D_COUNTは0になる。立ち下がりトグルFF600は、入力クロック信号の立ち下がりでトグルイネーブル信号Enable_Nが0で出力TFF_Nは0が保持される。トグル位置解析部400では、N進カウント値N_COUNT=0と半周期精度差分DEF_SYNC=2であるため、N進カウント値N_COUNT<半周期精度差分DEF_SYNCの条件を満たし、最小周期MIN_CYC=4から式(3)より出力クロック周期CYCLEは、3となる。出力クロック信号が0であるため、式(5)により半周期HALFは、3となる。D進カウント値D_COUNT=0から式(7)より偶数D進カウンタ値D_COUNT_TPPは、0となる。D進カウント値D_COUNT=0から式(8)より奇数D進カウンタ値D_COUNT_TPNは、1となる。トグルイネーブル信号Enable_Nが0の条件を満たすため、式(16)よりトグルポイントTP_Nは0となる。偶数D進カウンタ値D_COUNT_TPPが0とトグルポイントTP_Nが0から式(9−1)により、トグルイネーブル信号Enable_Pは、1に設定される。奇数D進カウンタ値D_COUNT_TPNが1とトグルポイントTP_Pが0から式(10−2)により、トグルイネーブル信号Enable_Nは、0に設定される。
【0074】
時刻T16以降は、時刻T2から時刻T15の動作を繰り返す。
【0075】
以上より、本実施形態のクロック分周回路は、入力クロック信号を7/3分周して、出力クロック信号とする。
【0076】
本実施形態のクロック分周回路は、半導体回路に搭載されるクロック分周回路であって、
入力クロックのサイクルをカウントするD進カウンタと、
出力クロックのサイクルをカウントするN進カウンタと、
入力クロック周期設定値と出力クロック周期設定値から出力クロックの最小周期を求める最小周期算出部と、
入力クロック周期設定値と出力クロック周期設定値から出力クロックの半周期精度差分を求める半周期精度差分算出部と、
出力クロックのサイクルカウンタと出力クロックの最小周期と出力クロックの半周期精度差分から出力クロックの半周期精度差分を均等に分配した出力クロック周期を求めて、求めた出力クロック周期と出力クロックのレベルから出力クロック半周期を求めて、さらに求めた出力クロック半周期から出力クロックのトグルポイントを求めるトグル位置解析部と、
入力クロック信号のサイクルカウンタと求めたトグルポイントから入力クロックの立ち上がりと立ち下がりに同期してトグルするフリップフロップと、
入力クロック信号の立ち上がりと立ち下がりに同期してトグルするフリップフロップの出力を入力とする排他的論理和回路と、を有する。
【0077】
したがって、本実施形態のクロック分周回路によると、出力クロック信号のハイレベルのパルス幅とロウレベルのパルス幅を同じ幅、あるいは、出力クロック信号のハイレベルのパルス幅とロウレベルのパルス幅の差分を入力クロックの半周期にすることができる。このとき、立ち上がりエッジと立ち下がりエッジ間のセットアップタイミングが緩和でき、動作電圧を下げることが可能となるため、電源電圧制御による省電力化が可能となる。
【0078】
本実施形態の回路構成(図1)によると、出力クロックのサイクルカウンタと出力クロックの最小周期と出力クロックの半周期精度差分から、出力クロックの半周期精度差分を均等に分配した出力クロック周期と、出力クロックの出力レベルから求めた出力クロック半周期から出力クロックのトグルポイントを求めることができるので、出力クロック信号のハイレベルのパルス幅とロウレベルのパルス幅を同一の幅とし、又は、出力クロック信号のハイレベルのパルス幅とロウレベルのパルス幅の差分を入力クロック信号の半周期にすることができる。
【0079】
入力クロック信号を100MHzとし、デューティ比(Duty Ratio)50%で、分周比が7/3分周の出力クロックを出力する場合には、特許文献1に記載されたクロック分周回路によると、出力クロックの最小パルス幅は5nsとなる。一方、本実施形態のクロック分周回路によると、出力クロックの最小パルス幅は10nsとなり、セットアップタイミングの緩和により、動作電圧を下げることができるため、電源電圧制御による消費電力の低減が可能となる。
【0080】
(実施形態2)
本発明の第2の実施形態に係るクロック分周回路について、図面を参照して説明する。図3は、本実施形態に係るクロック分周回路の構成を示す回路図である。
【0081】
図3を参照すると、クロック分周回路は、D進カウンタ200、N進カウンタ300、トグル位置解析部400、立ち上がりトグルFF500、立ち下がりトグルFF600、及び、排他的論理和回路700を有する。
【0082】
図4は、本実施形態に係るクロック分周回路の動作を示すタイミング図である。
【0083】
実施形態1では、設定値解析部150が、入力クロック周期設定値Dと出力クロック周期設定値Nから最小周期MIN_CYCと半周期精度差分DEF_SYNCを算出している。
【0084】
一方、本実施形態では、最小周期MIN_CYCと半周期精度差分DEF_SYNCを予めCPU等で算出しておくことにより、設定値解析部150が省略されている。トグル位置解析部400は、予め算出しておいた、最小周期MIN_CYCと半周期精度差分DEF_SYNCと
を入力とする。
【0085】
本実施形態のクロック分周回路の動作は、最小周期MIN_CYCと半周期精度差分DEF_SYNCとが入力信号として与えられる以外、第1の実施形態のクロック分周回路の動作と同様である。
【0086】
本実施形態のクロック分周回路によると、実施形態1のクロック分周回路よりも回路構成を小さくすることができる。
【0087】
(実施形態3)
本発明の第3の実施形態に係るクロック分周方法について、図面を参照して説明する。図5は、本実施形態に係るクロック分周方法を示すフロー図である。
【0088】
図5を参照すると、入力クロック周期設定値Dと出力クロック周期設定値Nを設定する(ステップS30)。
【0089】
入力クロック周期設定値Dと出力クロック周期設定値Nから、式(17)、式(18)により、最小周期MIN_CYCと半周期精度差分DEF_SYNCを算出する(ステップS31)。
MIN_CYC=INT(D*2/N)・・・(17)
DEF_SYNC=D*2−INT(D*2/N)*N・・・(18)
【0090】
変数mと半周期精度変数HAIF_VALに初期値を設定 式(19)、式(20)する(ステップS32)。
m=1・・・(19)
半周期精度変数HAIF_VAL=半周期精度差分DFE_SYNC・・・(20)
【0091】
半周期精度変数HAIF_VAL=0かを判定する(ステップS33)。
【0092】
半周期精度変数HAIF_VAL=0である場合には(ステップS33のYes)、最小周期MIN_CYCから、式(21)により周期を算出する(ステップS34)。
周期CYC=最小周期MIN_CYC・・・(21)
【0093】
一方、半周期精度変数HAIF_VAL≠0でない場合には(ステップS33のNo)、最小周期MIN_CYCから、式(22)により周期CYCを算出し、半周期精度変数HAIF_VALを式(23)により減算する(ステップS35)。
周期CYC=最小周期MIN_CYC+1・・・(22)
半周期精度変数HAIF_VAL=半周期精度変数HAIF_VAL−1・・・(23)
【0094】
周期CYCから式(24)、式(25)より、出力クロック信号のハイレベル幅HIGH_Pとロウレベル幅LOW_Pを算出する(ステップS36)。
ハイレベル幅HIGH_P=INT(周期CYC/2)・・・(24)
ロウレベル幅LOW_P=周期CYC−INT(周期CYC/2)・・・(25)
【0095】
入力クロック信号の両エッジを使いステップS36で求めたハイレベル幅HIGH_Pをカウントし、カウント中は、ハイレベル信号Hiを出力する。次にステップS36で求めたロウレベル幅LOW_Pをカウントし、カウント中は、ロウレベル信号Lowを出力する(ステップS37)。
【0096】
次に、変数mを式(26)によりカウントアップする(ステップS38)。
m=m+1・・・(26)
【0097】
次に、m>Nか否かを判定する(ステップS39)。
【0098】
m>Nである場合には(ステップS39のYes)、ステップS31に進む。一方、m≦Nである場合には(ステップS39のNo)、ステップS33に進む。
【0099】
本実施形態によると、クロック分周処理をソフト的に行うことにより、小さい回路規模で実現することができる。
【0100】
上記実施形態に係るクロック分周回路によって、以下の効果がもたらされる。
【0101】
第1の効果として電源電圧制御による省電力化がある。出力クロックのサイクルカウンタと出力クロックの最小周期と出力クロックの半周期精度差分から出力クロックの半周期精度差分を均等に分配した出力クロック周期と出力クロックの出力レベルから求めた出力クロック半周期から出力クロックのトグルポイントを求めることができる。したがって、出力クロック信号のハイレベルのパルス幅とロウレベルのパルス幅をできるだけ同じにすることにより、立ち上がりエッジと立ち下がりエッジ間のセットアップタイミングが緩和でき、動作電圧を下げることが可能となるため、結果として電源電圧制御による省電力化が可能となるからである。
【0102】
第2の効果として、出力クロック信号にグリッジノイズを出さないようにすることができる。出力クロック信号を出力が、排他的論理和回路で構成され、その排他的論理和回路の入力が入力クロック信号の立ち上がりで動作するイネーブル機能付トグルFFと入力クロック信号の立ち下がりで動作するイネーブル機能付トグルFFで構成されているからである。
【0103】
なお、上記の特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【符号の説明】
【0104】
150 設定値解析部
160 最小周期算出部
170 半周期精度差分算出部
200 D進カウンタ
300 N進カウンタ
400 トグル位置解析部
500 立ち上がりトグルFF
600 立ち下がりトグルFF
700 排他的論理和回路
CYC 周期
CYCLE 出力クロック周期
D 入力クロック周期設定値
DEF_SYNC 半周期精度差分
D_COUNT D進カウント値
D_COUNT_TPP 偶数D進カウンタ値
D_COUNT_TPN 奇数D進カウンタ値
Enable_N 立ち下がりトグルイネーブル信号
Eneble_P 立ち上がりトグルイネーブル信号
HALF 半周期
HAIF_VAL 半周期精度変数
HIGH_P ハイレベル幅
LOW_P ロウレベル幅
MIN_CYC 最小周期
N 出力クロック周期設定値
N_COUNT N進カウント値
TFF_N 立ち下がり同期トグルクロック信号
TFF_P 立ち上がり同期トグルクロック信号
TP_N、TP_P トグルポイント

【特許請求の範囲】
【請求項1】
入力クロック信号を分周して出力クロック信号として出力するクロック分周回路において、
前記入力クロック信号をカウントしてD進カウント値として出力するD進カウンタと、
前記出力クロック信号をカウントしてN進カウント値として出力するN進カウンタと、
前記出力クロック信号と前記出力クロックの最小周期と前記出力クロックの半周期精度差分と前記D進カウント値と前記N進カウント値とに基づいて、立ち上がりトグルイネーブル信号及び立ち下がりトグルイネーブル信号を求めて出力するトグル位置解析部と、
前記入力クロック信号の立ち上がりエッジにおいて前記立ち上がりトグルイネーブル信号に応じてトグルする第1のフリップフロップと、
前記入力クロック信号の立ち下がりエッジにおいて前記立ち下がりトグルイネーブル信号に応じてトグルする第2のフリップフロップと、
前記第1のフリップフロップの出力と前記第2のフリップフロップの出力との間における排他的論理和を前記出力クロックとして出力する排他的論理和回路と、を備えていることを特徴とするクロック分周回路。
【請求項2】
前記トグル位置解析部は、前記N進カウント値と前記出力クロック信号の最小周期と前記出力クロック信号の半周期精度差分とに基づいて前記出力クロックの半周期精度差分を均等に分配した出力クロック周期を求め、該出力クロック周期と前記出力クロック信号のレベルとに基づいて出力クロック半周期を求め、該出力クロック半周期に基づいて出力クロックのトグルポイントを求め、該トグルポイントと前記D進カウント値とに基づいて前記立ち上がりトグルイネーブル信号及び前記立ち下がりトグルイネーブル信号を求めることを特徴とする、請求項1に記載のクロック分周回路。
【請求項3】
入力クロック周期設定値及び出力クロック周期設定値を参照し、前記出力クロックの最小周期を求める最小周期算出部をさらに備えていることを特徴とする、請求項1又は2に記載のクロック分周回路。
【請求項4】
入力クロック周期設定値及び出力クロック周期設定値を参照し、前記出力クロックの半周期精度差分を求める半周期精度差分算出部をさらに備えていることを特徴とする、請求項1乃至3のいずれか1項に記載のクロック分周回路。
【請求項5】
コンピュータが、入力クロック周期設定値と出力クロック周期設定値から最小周期と半周期精度差分を算出する工程と、
前記最小周期と前記半周期精度差分から出力クロック周期を算出する工程と、
前記出力クロック周期から、ハイレベル信号に対する第1の幅とロウレベル信号に対する第2の幅とを算出する工程と、
入力クロック信号の立ち上がりエッジと立ち下がりエッジをカウントし、前記第1の幅のカウント値の期間だけハイレベルの信号を出力し、前記第2の幅のカウント値の期間だけロウレベル信号を出力する工程と、を含むことを特徴とするクロック分周方法。
【請求項6】
入力クロック周期設定値と出力クロック周期設定値から最小周期と半周期精度差分を算出する処理と、
前記最小周期と前記半周期精度差分から出力クロック周期を算出する処理と、
前記出力クロック周期から、ハイレベル信号に対する第1の幅とロウレベル信号に対する第2の幅とを算出する処理と、
入力クロック信号の立ち上がりエッジと立ち下がりエッジをカウントし、前記第1の幅のカウント値の期間だけハイレベルの信号を出力し、前記第2の幅のカウント値の期間だけロウレベル信号を出力する処理と、をコンピュータに実行させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2011−188026(P2011−188026A)
【公開日】平成23年9月22日(2011.9.22)
【国際特許分類】
【出願番号】特願2010−48124(P2010−48124)
【出願日】平成22年3月4日(2010.3.4)
【出願人】(302062931)ルネサスエレクトロニクス株式会社 (8,021)
【Fターム(参考)】