(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-11
(45)【発行日】2024-10-22
(54)【発明の名称】多ビットグレイコード生成回路
(51)【国際特許分類】
H03K 23/40 20060101AFI20241015BHJP
H03K 23/00 20060101ALI20241015BHJP
H03K 23/42 20060101ALI20241015BHJP
H03K 21/10 20060101ALI20241015BHJP
H03M 7/16 20060101ALI20241015BHJP
【FI】
H03K23/40
H03K23/00 Z
H03K23/42
H03K21/10
H03M7/16
(21)【出願番号】P 2020195431
(22)【出願日】2020-11-25
【審査請求日】2023-09-20
(73)【特許権者】
【識別番号】319006047
【氏名又は名称】シャープセミコンダクターイノベーション株式会社
(74)【代理人】
【識別番号】110000338
【氏名又は名称】弁理士法人 HARAKENZO WORLD PATENT & TRADEMARK
(72)【発明者】
【氏名】森川 佳直
【審査官】福田 正悟
(56)【参考文献】
【文献】特開2003-037504(JP,A)
【文献】米国特許第04618849(US,A)
【文献】特開昭52-120734(JP,A)
【文献】特開2002-111482(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H03K 23/40
H03K 23/00
H03K 23/42
H03K 21/10
H03M 7/16
(57)【特許請求の範囲】
【請求項1】
多ビットのグレイコードのビット0に対応するグレイコードを生成する第0グレイコード生成回路と、
前記多ビットのグレイコードのビット0より上位の各ビットに対応したグレイコードを生成する複数のグレイコード生成回路とを備え、
前記複数のグレイコード生成回路のそれぞれは、複数のフリップフロップ回路によって構成され、
前段のフリップフロップ回路の出力が次段のフリップフロップ回路に入力され、
最終段のフリップフロップ回路の出力が初段のフリップフロップ回路で反転されて保持され、
前記複数のフリップフロップ回路のいずれかの出力を各ビットに対応したグレイコードとして出力
し、
前記第0グレイコード生成回路と、前記複数のグレイコード生成回路とが、クロック信号の半周期分だけずれて動作する、多ビットグレイコード生成回路。
【請求項2】
前記第0グレイコード生成回路は、クロック信号に同期して出力を反転した値を保持し、当該出力をグレイコードのビット0として出力する第1のフリップフロップ回路を含む、請求項
1に記載の多ビットグレイコード生成回路。
【請求項3】
前記複数のグレイコード生成回路は、クロック信号に同期して入力を反転した値を保持して出力する第2のフリップフロップ回路と、
前記クロック信号に同期して前記第2のフリップフロップ回路の出力の値を保持して前記第2のフリップフロップ回路に出力し、当該出力をグレイコードのビット1とする第3のフリップフロップ回路とを含む第1グレイコード生成回路を備える、請求項1
または2に記載の多ビットグレイコード生成回路。
【請求項4】
前記複数のグレイコード生成回路はさらに、クロック信号に同期して入力を反転した値を保持して出力する第4のフリップフロップ回路と、
前記クロック信号に同期して前記第4のフリップフロップ回路の出力の値を保持して出力する第5のフリップフロップ回路と、
前記クロック信号に同期して前記第5のフリップフロップ回路の出力の値を保持して出力し、当該出力をグレイコードのビット2とする第6のフリップフロップ回路と、
前記クロック信号に同期して前記第6のフリップフロップ回路の出力の値を保持して前記第4のフリップフロップ回路に出力する第7のフリップフロップ回路とを含む第2グレイコード生成回路を備える、請求項
3に記載の多ビットグレイコード生成回路。
【請求項5】
前記複数のグレイコード生成回路はさらに、クロック信号に同期して入力を反転した値を保持して出力する第8のフリップフロップ回路と、
前記クロック信号に同期して前記第8のフリップフロップ回路の出力の値を保持して出力する第9のフリップフロップ回路と、
前記クロック信号に同期して前記第9のフリップフロップ回路の出力の値を保持して出力する第10のフリップフロップ回路と、
前記クロック信号に同期して前記第10のフリップフロップ回路の出力の値を保持して出力する第11のフリップフロップ回路と、
前記クロック信号に同期して前記第11のフリップフロップ回路の出力の値を保持して出力し、当該出力をグレイコードのビット3とする第12のフリップフロップ回路と、
前記クロック信号に同期して前記第12のフリップフロップ回路の出力の値を保持して出力する第13のフリップフロップ回路と、
前記クロック信号に同期して前記第13のフリップフロップ回路の出力の値を保持して出力する第14のフリップフロップ回路と、
前記クロック信号に同期して前記第14のフリップフロップ回路の出力の値を保持して前記第8のフリップフロップ回路に出力する第15のフリップフロップ回路とを含む第3グレイコード生成回路を備える、請求項
4に記載の多ビットグレイコード生成回路。
【請求項6】
前記多ビットグレイコード生成回路はさらに、グレイコードのビット4を生成する第4グレイコード生成回路と、
前記第3グレイコード生成回路からの出力の値と、前記第3グレイコード生成回路からの出力を反転した値とを選択的に出力する第1の選択回路と、
前記第4グレイコード生成回路からの出力の値と、前記第4グレイコード生成回路からの出力を反転した値とを選択的に出力する第2の選択回路とを備える、請求項
5に記載の多ビットグレイコード生成回路。
【請求項7】
前記多ビットグレイコード生成回路はさらに、グレイコードのビット4を生成する第4グレイコード生成回路と、
前記クロック信号に同期して前記第1グレイコード生成回路の出力の値を保持して出力する第16のフリップフロップ回路と、
前記クロック信号に同期して前記第2グレイコード生成回路の前記第7のフリップフロップ回路の出力の値を保持して出力する第17のフリップフロップ回路と、
前記クロック信号に同期して前記第3グレイコード生成回路の前記第15のフリップフロップ回路の出力の値を保持して出力する第18のフリップフロップ回路と、
前記第0グレイコード生成回路からの出力と、前記クロック信号とを選択的に出力する第3の選択回路と、
前記第1グレイコード生成回路からの出力と、前記第0グレイコード生成回路からの出力とを選択的に出力する第4の選択回路と、
前記第2グレイコード生成回路からの出力と、前記第16のフリップフロップ回路からの出力とを選択的に出力する第5の選択回路と、
前記第3グレイコード生成回路からの出力と、前記第17のフリップフロップ回路からの出力とを選択的に出力する第6の選択回路と、
前記第4グレイコード生成回路からの出力と、前記第18のフリップフロップ回路からの出力とを選択的に出力する第7の選択回路とを備える、請求項
5に記載の多ビットグレイコード生成回路。
【請求項8】
前記多ビットグレイコード生成回路はさらに、リセット解除から所定のクロック数後にクロック信号の出力を開始するクロック遅延回路を備える、請求項1~
7のいずれか1項に記載の多ビットグレイコード生成回路。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、多ビットのグレイコードを生成して出力する多ビットグレイコード生成回路に関する。
【背景技術】
【0002】
従来、多ビットのグレイコードを生成するための技術が種々開発されている。これに関連する技術として、下記の特許文献1に開示された発明がある。
【0003】
特許文献1は、パルス信号を計数し、計数値に応じたグレイコードを出力する多数ビットグレイコードカウンタに関する。この多数ビットグレイコードカウンタは、アップダウン機能を有したNビットのグレイコードアップ/ダウンカウンタと、Mビットのグレイコードカウンタとを備える。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
上述の特許文献1に開示された多数ビットグレイコードカウンタにおいては、グレイコードカウンタを構成するフリップフロップ(以下、FFと略す。)回路の間に、FF回路以外の多数の論理回路が接続されている。FF回路に入力されるクロック信号の駆動周波数は、前段のFF回路の遅延時間、論理回路の遅延時間、および次段のFF回路のセットアップ時間で決定される。
【0006】
すなわち、FF回路の間に多数の論理回路が存在すれば遅延時間が大きくなり、FF回路に入力されるクロック信号の駆動周波数を高速にすることができず、グレイコードカウンタから出力されるグレイコードの周波数も高速にすることができない。
【0007】
本発明の一態様は、グレイコードを高い周波数で出力することが可能な多ビットグレイコード生成回路を実現することを目的とする。
【課題を解決するための手段】
【0008】
上記の課題を解決するために、本発明の一態様に係る多ビットグレイコード生成回路は、多ビットのグレイコードのビット0に対応するグレイコードを生成する第0グレイコード生成回路と、多ビットのグレイコードのビット0より上位の各ビットに対応したグレイコードを生成する複数のグレイコード生成回路とを備え、複数のグレイコード生成回路のそれぞれは、複数のフリップフロップ回路によって構成され、前段のフリップフロップ回路の出力が次段のフリップフロップ回路に入力され、最終段のフリップフロップ回路の出力が初段のフリップフロップ回路で反転されて保持され、複数のフリップフロップ回路のいずれかの出力を各ビットに対応したグレイコードとして出力する。
【発明の効果】
【0009】
本発明の一態様によれば、グレイコードを高い周波数で出力することが可能な多ビットグレイコード生成回路を提供することができる。
【図面の簡単な説明】
【0010】
【
図1】本発明の実施形態1に係る多ビットグレイコード生成回路の概略構成を示すブロック図である。
【
図2】本発明の実施形態1に係る多ビットグレイコード生成回路の動作の概略を説明するためのタイミングチャートである。
【
図3】クロック遅延回路の回路構成を示す図である。
【
図4】クロック遅延回路の動作を説明するためのタイミングチャートである。
【
図5】Bit0グレイコード生成回路の回路構成を示す図である。
【
図6】Bit0グレイコード生成回路の動作を説明するためのタイミングチャートである。
【
図7】Bit1グレイコード生成回路の回路構成を示す図である。
【
図8】Bit1グレイコード生成回路の動作を説明するためのタイミングチャートである。
【
図9】Bit2グレイコード生成回路の回路構成を示す図である。
【
図10】Bit2グレイコード生成回路の動作を説明するためのタイミングチャートである。
【
図11】Bit3グレイコード生成回路の回路構成を示す図である。
【
図12】Bit3グレイコード生成回路の動作を説明するためのタイミングチャートである。
【
図13】本発明の実施形態1に係る多ビットグレイコード生成回路の動作の詳細を説明するためのタイミングチャートである。
【
図14】本発明の実施形態2に係る多ビットグレイコード生成回路の概略構成を示すブロック図である。
【
図15】本発明の実施形態2に係る多ビットグレイコード生成回路において、SEL信号が“0”の場合の動作を説明するためのタイミングチャートである。
【
図16】本発明の実施形態2に係る多ビットグレイコード生成回路において、SEL信号が“1”の場合の動作を説明するためのタイミングチャートである。
【
図17】本発明の実施形態3に係る多ビットグレイコード生成回路の概略構成を示すブロック図である。
【
図18】本発明の実施形態3に係る多ビットグレイコード生成回路において、SEL信号が“0”の場合の動作を説明するためのタイミングチャートである。
【
図19】本発明の実施形態3に係る多ビットグレイコード生成回路において、SEL信号が“1”の場合の動作を説明するためのタイミングチャートである。
【発明を実施するための形態】
【0011】
〔実施形態1〕
以下、本発明の一実施形態について、詳細に説明する。なお、説明の便宜上、同一の部材には同一の符号を付し、それらの名称および機能も同一である。したがって、それらの詳細な説明は繰り返さない。
【0012】
<グレイコード生成回路100の構成および動作>
図1は、本発明の実施形態1に係る多ビットグレイコード生成回路100の概略構成を示すブロック図である。グレイコード生成回路100は、クロック遅延回路1と、Bit0グレイコード生成回路(第0グレイコード生成回路とも呼ぶ。)2と、Bit1グレイコード生成回路(第1グレイコード生成回路とも呼ぶ。)3と、Bit2グレイコード生成回路(第2グレイコード生成回路とも呼ぶ。)4と、Bit3グレイコード生成回路(第3グレイコード生成回路とも呼ぶ。)5と、Bit4グレイコード生成回路(第4グレイコード生成回路とも呼ぶ。)6とを含む。
【0013】
クロック遅延回路1は、リセット信号XRSTがロウレベル(以下、“0”と略す。)からハイレベル(以下、“1”と略す。)になった後、数クロック後にクロック信号CK0の出力を開始する。
【0014】
Bit0グレイコード生成回路2、Bit1グレイコード生成回路3、Bit2グレイコード生成回路4、Bit3グレイコード生成回路5、およびBit4グレイコード生成回路6は、クロック遅延回路1から出力されるクロック信号CK0に同期して、それぞれ対応するビットのグレイコードを出力する。各ビットに対応するグレイコード生成回路2~6の詳細は、後述する。
【0015】
図2は、本発明の実施形態1に係る多ビットグレイコード生成回路100の動作の概略を説明するためのタイミングチャートである。タイミングT1において、リセット信号XRSTが“1”となる。その数クロック後のT2において、クロック遅延回路1は、クロック信号CK0の出力を開始する。そして、その数クロック後のT3において、各ビットに対応するグレイコード生成回路2~6は、グレイコードD<4:0>の出力を開始する。
【0016】
<クロック遅延回路1の構成および動作>
図3は、クロック遅延回路1の回路構成を示す図である。クロック遅延回路1は、FF回路11~13と、ラッチ回路14と、AND回路15とを含む。FF回路11~13およびラッチ回路14には、同じクロック信号CKが接続される。また、FF回路11~13には同じリセット信号XRSTが接続される。
【0017】
FF回路11~13は、XRST信号が“0”のときにリセットされ、XRST信号が“1”のときにCK信号の立ち上がりで入力端子Dに入力される値を保持して出力端子Qに出力する。
【0018】
なお、FF回路11~13は、クロック信号の立ち上がりで動作するが、クロック信号の立ち下がりで動作するようにしてもよい。したがって、FF回路11~13は、クロック信号の立ち上がりおよび立ち下がりのどちらで動作してもよいため、クロック信号に同期して動作すると記載することもできる。
【0019】
ラッチ回路14は、CK信号の立ち上がりで端子Dに入力される値を保持して端子Qに出力し、CK信号が“1”の間、その状態を維持する。そして、CK信号が“0”のときに、端子Dに入力される値をそのまま端子Qに出力(スルー)する。
【0020】
図4は、クロック遅延回路1の動作を説明するためのタイミングチャートである。タイミングT1において、リセット信号XRSTが“1”となる。T2において、FF回路11の出力信号n0が“0”から“1”に変化する。T3において、FF回路12の出力信号n1が“0”から“1”に変化する。T4において、FF回路13の出力信号n2が“0”から“1”に変化する。
【0021】
T5において、ラッチ回路14の出力信号n3が“0”から“1”に変化する。T6において、AND回路15は、クロック信号CK0の出力を開始する。
【0022】
<Bit0グレイコード生成回路2の構成および動作>
図5は、Bit0グレイコード生成回路2の回路構成を示す図である。Bit0グレイコード生成回路2は、FF回路21を含む。FF回路21には、クロック遅延回路1から出力されるクロック信号CK0およびリセット信号XRSTが接続される。
【0023】
FF回路21は、XRST信号が“0”のときにリセットされ、XRST信号が“1”のときにCK0信号の立ち下がりで端子XDの値を保持し、端子Qに出力する。XD端子は、端子Qから出力される値を反転して入力するため、CK0信号の立ち下がりごとに端子Qから出力される値を反転して出力することになる。このFF回路21の出力端子Qに出力される値がビット0のグレイコードD0となる。
【0024】
なお、FF回路21は、クロック信号の立ち下がりで動作するが、クロック信号の立ち上がりで動作するようにしてもよい。したがって、FF回路21は、クロック信号の立ち上がりおよび立ち下がりのどちらで動作してもよいため、クロック信号に同期して動作すると記載することもできる。
【0025】
図6は、Bit0グレイコード生成回路2の動作を説明するためのタイミングチャートである。タイミングT1において、クロック遅延回路1からのクロック信号CK0の出力が開始されるが、FF回路21の出力信号D0は“0”となっている。T2において、CK0信号の立ち下がりでFF回路21の出力信号D0が“0”から“1”に変化する。T3において、FF回路21の出力信号D0は“1”が保持される。T4において、FF回路21の出力信号D0が“1”から“0”に変化する。
【0026】
T5において、FF回路21の出力信号D0は“0”が保持される。T6において、FF回路21の出力信号D0が“0”から“1”に変化する。T7において、FF回路21の出力信号D0は“1”が保持される。以降、同様の動作が行われる。
【0027】
<Bit1グレイコード生成回路3の構成および動作>
図7は、Bit1グレイコード生成回路3の回路構成を示す図である。Bit1グレイコード生成回路3は、FF回路31および32を含む。FF回路31および32には、クロック遅延回路1から出力されるクロック信号CK0およびリセット信号XRSTが接続される。
【0028】
FF回路31は、XRST信号が“0”のときにリセットされ、XRST信号が“1”のときにCK0信号の立ち上がりで端子XDの値を保持し、端子Qに出力する。XD端子は、FF回路32の出力端子Qから出力される値を反転して入力するため、CK0信号の立ち上がりごとにFF回路32の出力端子Qから出力される値を反転して出力することになる。
【0029】
FF回路32は、XRST信号が“0”のときにリセットされ、XRST信号が“1”のときにCK0信号の立ち上がりで端子Dの値を保持し、端子Qに出力する。このFF回路32の出力端子Qに出力される値がビット1のグレイコードD1となる。
【0030】
なお、FF回路31および32は、クロック信号の立ち上がりで動作するが、クロック信号の立ち下がりで動作するようにしてもよい。したがって、FF回路31および32は、クロック信号の立ち上がりおよび立ち下がりのどちらで動作してもよいため、クロック信号に同期して動作すると記載することもできる。
【0031】
図8は、Bit1グレイコード生成回路3の動作を説明するためのタイミングチャートである。タイミングT1において、クロック遅延回路1からのクロック信号CK0の出力が開始され、FF回路31の出力端子Qの値(n0)が“0”から“1”に変化する。T2において、FF回路31の出力信号n0は“1”が保持される。T3において、FF回路32の出力端子Qの値(D1)が“0”から“1”に変化する。T4において、FF回路31および32の出力信号n0およびD1は“1”が保持される。
【0032】
T5において、FF回路31の出力信号n0が“1”から“0”に変化する。T6において、FF回路31の出力信号n0は“0”が保持され、FF回路32の出力信号D1は“1”が保持される。T7において、FF回路32の出力信号D1が“1”から“0”に変化する。T8において、FF回路31および32の出力信号n0およびD1は“0”が保持される。以降、同様の動作が行われる。
【0033】
<Bit2グレイコード生成回路4の構成および動作>
図9は、Bit2グレイコード生成回路4の回路構成を示す図である。Bit2グレイコード生成回路4は、FF回路41~44を含む。FF回路41~44には、クロック遅延回路1から出力されるクロック信号CK0およびリセット信号XRSTが接続される。
【0034】
FF回路41は、XRST信号が“0”のときにリセットされ、XRST信号が“1”のときにCK0信号の立ち上がりで端子XDの値を保持し、端子Qに出力する。XD端子は、FF回路44の出力端子Qから出力される値を反転して入力するため、CK0信号の立ち上がりごとにFF回路44の出力端子Qから出力される値を反転して出力することになる。
【0035】
FF回路42~44は、XRST信号が“0”のときにリセットされ、XRST信号が“1”のときにCK0信号の立ち上がりで端子Dの値を保持し、端子Qに出力する。FF回路43の出力端子Qに出力される値がビット2のグレイコードD2となる。
【0036】
なお、FF回路41~44は、クロック信号の立ち上がりで動作するが、クロック信号の立ち下がりで動作するようにしてもよい。したがって、FF回路41~44は、クロック信号の立ち上がりおよび立ち下がりのどちらで動作してもよいため、クロック信号に同期して動作すると記載することもできる。
【0037】
図10は、Bit2グレイコード生成回路4の動作を説明するためのタイミングチャートである。タイミングT1において、クロック遅延回路1からのクロック信号CK0の出力が開始され、FF回路41の出力端子Qの値(n0)が“0”から“1”に変化する。T2において、FF回路41の出力信号n0は“1”が保持される。T3において、FF回路42の出力端子Qの値(n1)が“0”から“1”に変化する。T4において、FF回路41および42の出力信号n0およびn1は“1”が保持される。
【0038】
T5において、FF回路43の出力信号D2が“0”から“1”に変化する。T6において、FF回路41~43の出力信号n0、n1およびD2は“1”が保持される。T7において、FF回路44の出力信号n2が“0”から“1”に変化する。T8において、FF回路41~44の出力信号n0、n1、D2およびn2は“1”が保持される。
【0039】
T9において、FF回路41の出力信号n0が“1”から“0”に変化する。T10において、FF回路41~44は、同じ値を保持する。T11において、FF回路42の出力信号n1が“1”から“0”に変化する。T12において、FF回路41~44は、同じ値を保持する。T13において、FF回路43の出力信号D2が“1”から“0”に変化する。以降、同様の動作が行われる。
【0040】
<Bit3グレイコード生成回路5の構成および動作>
図11は、Bit3グレイコード生成回路5の回路構成を示す図である。Bit3グレイコード生成回路5は、FF回路51~58を含む。FF回路51~58には、クロック遅延回路1から出力されるクロック信号CK0およびリセット信号XRSTが接続される。
【0041】
FF回路51は、XRST信号が“0”のときにリセットされ、XRST信号が“1”のときにCK0信号の立ち上がりで端子XDの値を保持し、端子Qに出力する。XD端子は、FF回路58の出力端子Qから出力される値を反転して入力するため、CK0信号の立ち上がりごとにFF回路58の出力端子Qから出力される値を反転して出力することになる。
【0042】
FF回路52~58は、XRST信号が“0”のときにリセットされ、XRST信号が“1”のときにCK0信号の立ち上がりで端子Dの値を保持し、端子Qに出力する。FF回路55の出力端子Qに出力される値がビット3のグレイコードD3となる。
【0043】
なお、FF回路51~58は、クロック信号の立ち上がりで動作するが、クロック信号の立ち下がりで動作するようにしてもよい。したがって、FF回路51~58は、クロック信号の立ち上がりおよび立ち下がりのどちらで動作してもよいため、クロック信号に同期して動作すると記載することもできる。
【0044】
図12は、Bit3グレイコード生成回路5の動作を説明するためのタイミングチャートである。タイミングT1において、クロック遅延回路1からのクロック信号CK0の出力が開始され、FF回路51の出力端子Qの値(n0)が“0”から“1”に変化する。T2において、FF回路51の出力信号n0は“1”が保持される。T3において、FF回路52の出力端子Qの値(n1)が“0”から“1”に変化する。T4において、FF回路51および52の出力信号n0およびn1は“1”が保持される。
【0045】
T5において、FF回路53の出力信号n2が“0”から“1”に変化する。T6において、FF回路51~53の出力信号n0、n1およびn2は“1”が保持される。T7において、FF回路54の出力信号n3が“0”から“1”に変化する。T8において、FF回路51~54の出力信号n0、n1、n2およびn3は“1”が保持される。
【0046】
T9において、FF回路55の出力信号D3が“0”から“1”に変化する。T10において、FF回路51~58は、同じ値を保持する。T11において、FF回路56の出力信号n4が“0”から“1”に変化する。T12において、FF回路51~58は、同じ値を保持する。T13において、FF回路57の出力信号n5が“0”から“1”に変化する。
【0047】
T14において、FF回路51~58は、同じ値を保持する。T15において、FF回路58の出力信号n6が“0”から“1”に変化する。同様の動作を繰り返し、T16において、FF回路55の出力信号D3が“1”から“0”に変化する。
【0048】
なお、Bit4グレイコード生成回路6の構成および動作についての詳細な説明は行わない。しかしながら、ビット3よりも上位のビットについても、当業者であれば、Bit0グレイコード生成回路2~Bit3グレイコード生成回路5の構成および動作を参照して、容易に類推することが可能であろう。
【0049】
<多ビットグレイコード生成回路100の動作>
図13は、多ビットグレイコード生成回路100の動作を詳細に説明するためのタイミングチャートである。タイミングT1において、クロック遅延回路1からのクロック信号CK0の出力が開始されるが、Bit0グレイコード生成回路2の出力信号D0は“0”となっている。このとき、多ビットグレイコードは、10進数表記で“0”となる。
【0050】
タイミングT2において、Bit0グレイコード生成回路2の出力信号D0が“1”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“1”となる。
【0051】
タイミングT3において、Bit1グレイコード生成回路3の出力信号D1が“1”となり、他のグレイコード生成回路2および4~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“3”となる。
【0052】
タイミングT4において、Bit0グレイコード生成回路2の出力信号D0が“0”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“2”となる。
【0053】
タイミングT5において、Bit2グレイコード生成回路4の出力信号D2が“1”となり、他のグレイコード生成回路2,3,5および6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“6”となる。
【0054】
タイミングT6において、Bit0グレイコード生成回路2の出力信号D0が“1”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“7”となる。
【0055】
タイミングT7において、Bit1グレイコード生成回路3の出力信号D1が“0”となり、他のグレイコード生成回路2および4~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“5”となる。
【0056】
タイミングT8において、Bit0グレイコード生成回路2の出力信号D0が“0”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“4”となる。
【0057】
タイミングT9において、Bit3グレイコード生成回路5の出力信号D3が“1”となり、他のグレイコード生成回路2~4および6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“12”となる。
【0058】
タイミングT10において、Bit0グレイコード生成回路2の出力信号D0が“1”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“13”となる。
【0059】
タイミングT11において、Bit1グレイコード生成回路3の出力信号D1が“1”となり、他のグレイコード生成回路2および4~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“15”となる。
【0060】
タイミングT12において、Bit0グレイコード生成回路2の出力信号D0が“0”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“14”となる。
【0061】
タイミングT13において、Bit2グレイコード生成回路4の出力信号D2が“0”となり、他のグレイコード生成回路2,3,5および6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“10”となる。
【0062】
タイミングT14において、Bit0グレイコード生成回路2の出力信号D0が“1”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“11”となる。
【0063】
タイミングT15において、Bit1グレイコード生成回路3の出力信号D1が“0”となり、他のグレイコード生成回路2および4~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“9”となる。
【0064】
タイミングT16において、Bit0グレイコード生成回路2の出力信号D0が“0”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“8”となる。
【0065】
タイミングT17において、Bit4グレイコード生成回路6の出力信号D4が“1”となり、他のグレイコード生成回路2~5の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“24”となる。以降、同様の動作が行われる。
【0066】
以上説明したように、本実施形態に係る多ビットグレイコード生成回路100においては、Bit1グレイコード生成回路3~Bit3グレイコード生成回路5の回路構成が以下の構成を有する。すなわち、前段のFF回路の出力が次段のFF回路に入力され、最終段のFF回路の出力が初段のFF回路で反転されて保持される、いわゆる複数のFF回路がループ状に接続される構成を有している。そして、複数のFF回路のいずれかの出力を各ビットに対応したグレイコードとする。
【0067】
このような構成にすることにより、FF回路の間に論理回路が存在せず、遅延時間が小さくなり、FF回路に入力されるクロック信号の駆動周波数を高速にすることができる。したがって、多ビットグレイコード生成回路100から出力されるグレイコードの周波数も高速にすることが可能となった。
【0068】
また、Bit0グレイコード生成回路2と、他のグレイコード生成回路3~6とが、クロック信号の半周期分だけずれて動作するので、全体としてクロック信号の半周期で動作させることができる。したがって、多ビットグレイコード生成回路100から出力されるグレイコードの周波数をさらに高速にすることが可能となった。
【0069】
また、クロック遅延回路1は、リセット信号XRSTによるリセット解除から、所定のクロック数後にクロック信号の出力を開始するようにしたので、任意のタイミングで多ビットグレイコードの出力を開始することが可能となった。
【0070】
〔実施形態2〕
本発明の他の実施形態について、以下に説明する。なお、説明の便宜上、上記実施形態1において説明した部材と同じ機能を有する部材については、同じ符号を付記し、その詳細な説明を繰り返さない。
【0071】
<グレイコード生成回路100aの構成および動作>
図14は、本発明の実施形態2に係る多ビットグレイコード生成回路100aの概略構成を示すブロック図である。
図1に示す実施形態1に係る多ビットグレイコード生成回路100と比較して、バッファ61~63、インバータ(反転回路)64~65およびセレクタ(選択回路)66~67が追加されている点のみが異なる。
【0072】
バッファ61~63は、Bit0グレイコード生成回路2~Bit2グレイコード生成回路4からの出力信号D0~D2の値をそのまま、SD0~SD2として出力する。このバッファ61~63は、特になくても構わない。
【0073】
インバータ64は、Bit3グレイコード生成回路5からの出力信号D3の値を反転して出力する。セレクタ66は、SEL信号が“0”のときに、Bit3グレイコード生成回路5からの出力信号D3の値を選択し、SD3として出力する。また、セレクタ66は、SEL信号が“1”のときに、インバータ64によってD3が反転された値を選択し、SD3として出力する。
【0074】
インバータ65は、Bit4グレイコード生成回路6からの出力信号D4の値を反転して出力する。セレクタ67は、SEL信号が“0”のときに、Bit4グレイコード生成回路6からの出力信号D4の値を選択し、SD4として出力する。また、セレクタ67は、SEL信号が“1”のときに、インバータ65によってD4が反転された値を選択し、SD4として出力する。
【0075】
図15は、本発明の実施形態2に係る多ビットグレイコード生成回路100aにおいて、SEL信号が“0”の場合の動作を説明するためのタイミングチャートである。このタイミングチャートは、
図13に示すタイミングチャートと同様である。したがって、詳細な説明は繰り返さない。
【0076】
図16は、本発明の実施形態2に係る多ビットグレイコード生成回路100aにおいて、SEL信号が“1”の場合の動作を説明するためのタイミングチャートである。タイミングT1において、クロック遅延回路1からのクロック信号CK0の出力が開始されるが、Bit0グレイコード生成回路2~Bit2グレイコード生成回路4の出力信号D0~D2は“0”であり、SD0~SD3は“0”となる。また、Bit3グレイコード生成回路5およびBit4グレイコード生成回路6の出力信号D3およびD4は“0”であり、SD3~SD4は“1”となる。このとき、多ビットグレイコードは、10進数表記で“24”となる。
【0077】
タイミングT2において、Bit0グレイコード生成回路2の出力信号D0が“1”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“25”となる。
【0078】
タイミングT3において、Bit1グレイコード生成回路3の出力信号D1が“1”となり、他のグレイコード生成回路2および4~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“27”となる。
【0079】
タイミングT4において、Bit0グレイコード生成回路2の出力信号D0が“0”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“26”となる。
【0080】
タイミングT5において、Bit2グレイコード生成回路4の出力信号D2が“1”となり、他のグレイコード生成回路2,3,5および6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“30”となる。
【0081】
タイミングT6において、Bit0グレイコード生成回路2の出力信号D0が“1”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“31”となる。
【0082】
タイミングT7において、Bit1グレイコード生成回路3の出力信号D1が“0”となり、他のグレイコード生成回路2および4~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“29”となる。
【0083】
タイミングT8において、Bit0グレイコード生成回路2の出力信号D0が“0”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“28”となる。
【0084】
タイミングT9において、Bit3グレイコード生成回路5の出力信号D3が“1”となり、SD3は“0”となる。他のグレイコード生成回路2~4および6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“20”となる。
【0085】
タイミングT10において、Bit0グレイコード生成回路2の出力信号D0が“1”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“21”となる。
【0086】
タイミングT11において、Bit1グレイコード生成回路3の出力信号D1が“1”となり、他のグレイコード生成回路2および4~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“23”となる。
【0087】
タイミングT12において、Bit0グレイコード生成回路2の出力信号D0が“0”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“22”となる。
【0088】
タイミングT13において、Bit2グレイコード生成回路4の出力信号D2が“0”となり、他のグレイコード生成回路2,3,5および6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“18”となる。
【0089】
タイミングT14において、Bit0グレイコード生成回路2の出力信号D0が“1”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“19”となる。
【0090】
タイミングT15において、Bit1グレイコード生成回路3の出力信号D1が“0”となり、他のグレイコード生成回路2および4~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“17”となる。
【0091】
タイミングT16において、Bit0グレイコード生成回路2の出力信号D0が“0”となり、他のグレイコード生成回路3~6の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“16”となる。
【0092】
タイミングT17において、Bit4グレイコード生成回路6の出力信号D4が“1”となり、SD4は“0”となる。他のグレイコード生成回路2~5の出力信号は変化しない。このとき、多ビットグレイコードは、10進数表記で“0”となる。以降、同様の動作が行われる。
【0093】
以上説明したように、本実施形態に係る多ビットグレイコード生成回路100aにおいては、セレクタ66および67が、SEL信号が“0”のときに、Bit3グレイコード生成回路5およびBit4グレイコード生成回路6からの出力信号D3およびD4の値を選択し、SD3およびSD4として出力する。また、セレクタ66および67は、SEL信号が“1”のときに、インバータ64および65によってD3およびD4が反転された値を選択し、SD3およびSD4として出力する。
【0094】
したがって、SEL信号を“0”から“1”に変更することにより、グレイコードのスタートコードを10進数表記で“0”から“24”に変更することができ、汎用性が高い多ビットグレイコード生成回路を提供することが可能となった。
【0095】
〔実施形態3〕
本発明の他の実施形態について、以下に説明する。なお、説明の便宜上、上記実施形態1において説明した部材と同じ機能を有する部材については、同じ符号を付記し、その詳細な説明を繰り返さない。
【0096】
<グレイコード生成回路100bの構成および動作>
図17は、本発明の実施形態3に係る多ビットグレイコード生成回路100bの概略構成を示すブロック図である。
図1に示す実施形態1に係る多ビットグレイコード生成回路100と比較して、FF回路71~73およびセレクタ(選択回路)74~78が追加されている点のみが異なる。
【0097】
FF回路71~73は、XRST信号が“0”のときにリセットされ、XRST信号が“1”のときにCK0信号の立ち下がりで端子Dの値を保持し、端子Qに出力する。
【0098】
セレクタ74は、SEL信号が“0”のときに、Bit0グレイコード生成回路2からの出力信号D0を選択し、GB_D0として出力する。また、セレクタ74は、SEL信号が“1”のときに、クロック信号CK0を選択し、GB_D0として出力する。
【0099】
セレクタ75は、SEL信号が“0”のときに、Bit1グレイコード生成回路3からの出力信号D1を選択し、GB_D1として出力する。また、セレクタ75は、SEL信号が“1”のときに、Bit0グレイコード生成回路2からの出力信号D0を選択し、GB_D1として出力する。
【0100】
FF回路71は、XRST信号が“1”のときにCK0信号の立ち下がりでBit1グレイコード生成回路3からの出力信号D1の値を保持し、セレクタ76に出力する。セレクタ76は、SEL信号が“0”のときに、Bit2グレイコード生成回路4からの出力信号D2を選択し、GB_D2として出力する。また、セレクタ76は、SEL信号が“1”のときに、FF回路71からの出力信号を選択し、GB_D2として出力する。
【0101】
FF回路72は、XRST信号が“1”のときにCK0信号の立ち下がりでBit2グレイコード生成回路4の出力信号n2の値を保持し、セレクタ77に出力する。セレクタ77は、SEL信号が“0”のときに、Bit3グレイコード生成回路5からの出力信号D3を選択し、GB_D3として出力する。また、セレクタ77は、SEL信号が“1”のときに、FF回路72からの出力信号を選択し、GB_D3として出力する。
【0102】
FF回路73は、XRST信号が“1”のときにCK0信号の立ち下がりでBit3グレイコード生成回路5の出力信号n6の値を保持し、セレクタ78に出力する。セレクタ78は、SEL信号が“0”のときに、Bit4グレイコード生成回路6からの出力信号D4を選択し、GB_D4として出力する。また、セレクタ78は、SEL信号が“1”のときに、FF回路73からの出力信号を選択し、GB_D4として出力する。
【0103】
以下、セレクタ74~78の出力信号GB_D0~GB_D4をバイナリコードと呼ぶことにする。
【0104】
図18は、本発明の実施形態3に係る多ビットグレイコード生成回路100bにおいて、SEL信号が“0”の場合の動作を説明するためのタイミングチャートである。このタイミングチャートは、
図13に示すタイミングチャートと同様である。したがって、詳細な説明は繰り返さない。
【0105】
図19は、本発明の実施形態3に係る多ビットグレイコード生成回路100bにおいて、SEL信号が“1”の場合の動作を説明するためのタイミングチャートである。タイミングT1において、セレクタ74~78の出力信号GB_D0~GB_D4が全て“0”となる。このとき、バイナリコードは、10進数表記で“0”となる。
【0106】
タイミングT2において、クロック遅延回路1からのクロック信号CK0の出力が開始され、セレクタ74は、クロック信号CK0を選択し、GB_D0として出力する。このとき、バイナリコードは、10進数表記で“1”となる。以降、セレクタ74は、クロック信号CK0と同じタイミング波形をGB_D0に出力する。
【0107】
タイミングT3において、Bit0グレイコード生成回路2の出力信号D0が“1”となり、セレクタ75は、GB_D1に“1”を出力する。このとき、バイナリコードは、10進数表記で“2”となる。
【0108】
タイミングT4において、Bit1グレイコード生成回路3の出力信号D1が“1”となるが、FF回路71の出力端子Qの出力は“0”のままである。このとき、バイナリコードは、10進数表記で“3”となる。
【0109】
タイミングT5において、Bit0グレイコード生成回路2の出力信号D0が“0”となり、セレクタ75は、GB_D1に“0”を出力する。また、FF回路71は、Bit1グレイコード生成回路3の出力信号D1の値“1”を保持し、セレクタ76に出力する。セレクタ76は、FF回路71が保持する値“1”を選択して、GB_D2として出力する。このとき、バイナリコードは、10進数表記で“4”となる。
【0110】
タイミングT6において、セレクタ75~78の出力GB_D1~GB_D4の値は変化しない。このとき、バイナリコードは、10進数表記で“5”となる。
【0111】
タイミングT7において、Bit0グレイコード生成回路2の出力信号D0が“1”となり、セレクタ75は、GB_D1に“1”を出力する。このとき、バイナリコードは、10進数表記で“6”となる。
【0112】
タイミングT8において、セレクタ75~78の出力GB_D1~GB_D4の値は変化しない。このとき、バイナリコードは、10進数表記で“7”となる。
【0113】
タイミングT9において、FF回路71は、Bit1グレイコード生成回路3の出力信号D1の値“0”を保持し、セレクタ76に出力する。セレクタ76は、FF回路71が保持する値“0”を選択して、GB_D2として出力する。また、FF回路72は、Bit2グレイコード生成回路4の出力信号n2の値“1”を保持し、セレクタ77に出力する。セレクタ77は、FF回路72が保持する値“1”を選択して、GB_D3として出力する。このとき、バイナリコードは、10進数表記で“8”となる。
【0114】
タイミングT10において、セレクタ75~78の出力GB_D1~GB_D4の値は変化しない。このとき、バイナリコードは、10進数表記で“9”となる。
【0115】
タイミングT11において、Bit0グレイコード生成回路2の出力信号D0が“1”となり、セレクタ75は、GB_D1に“1”を出力する。このとき、バイナリコードは、10進数表記で“10”となる。
【0116】
タイミングT12において、セレクタ75~78の出力GB_D1~GB_D4の値は変化しない。このとき、バイナリコードは、10進数表記で“11”となる。
【0117】
タイミングT13において、Bit0グレイコード生成回路2の出力信号D0が“0”となり、セレクタ75は、GB_D1に“0”を出力する。また、FF回路71は、Bit1グレイコード生成回路3の出力信号D1の値“1”を保持し、セレクタ76に出力する。セレクタ76は、FF回路71が保持する値“1”を選択して、GB_D2として出力する。このとき、バイナリコードは、10進数表記で“12”となる。
【0118】
タイミングT14において、セレクタ75~78の出力GB_D1~GB_D4の値は変化しない。このとき、バイナリコードは、10進数表記で“13”となる。
【0119】
タイミングT15において、Bit0グレイコード生成回路2の出力信号D0が“1”となり、セレクタ75は、GB_D1に“1”を出力する。このとき、バイナリコードは、10進数表記で“14”となる。
【0120】
タイミングT16において、セレクタ75~78の出力GB_D1~GB_D4の値は変化しない。このとき、バイナリコードは、10進数表記で“15”となる。
【0121】
タイミングT17において、FF回路71は、Bit1グレイコード生成回路3の出力信号D1の値“0”を保持し、セレクタ76に出力する。セレクタ76は、FF回路71が保持する値“0”を選択して、GB_D2として出力する。また、FF回路72は、Bit2グレイコード生成回路4の出力信号n2の値“0”を保持し、セレクタ77に出力する。セレクタ77は、FF回路72が保持する値“0”を選択して、GB_D3として出力する。また、FF回路73は、Bit3グレイコード生成回路5の出力信号n6の値“1”を保持し、セレクタ78に出力する。セレクタ78は、FF回路73が保持する値“1”を選択して、GB_D4として出力する。このとき、バイナリコードは、10進数表記で“16”となる。
【0122】
以上説明したように、本実施形態における多ビットグレイコード生成回路100bによれば、SEL信号が“1”のときに、セレクタ74が、クロック信号CK0を選択して出力するようにした。また、セレクタ75が、Bit0グレイコード生成回路2からの出力信号D0を選択して出力するようにした。また、セレクタ76~78が、FF回路71~73からの出力信号を選択して出力するようにした。この構成によって、多ビットグレイコード生成回路100bは、5ビットのグレイコードを5ビットのバイナリコードに変換することが可能となった。
【0123】
<まとめ>
本発明の態様1に係る多ビットグレイコード生成回路は、多ビットのグレイコードのビット0に対応するグレイコードを生成する第0グレイコード生成回路と、多ビットのグレイコードのビット0より上位の各ビットに対応したグレイコードを生成する複数のグレイコード生成回路とを備え、複数のグレイコード生成回路のそれぞれは、複数のフリップフロップ回路によって構成され、前段のフリップフロップ回路の出力が次段のフリップフロップ回路に入力され、最終段のフリップフロップ回路の出力が初段のフリップフロップ回路で反転されて保持され、複数のフリップフロップ回路のいずれかの出力を各ビットに対応したグレイコードとして出力する。
【0124】
上記の構成によれば、フリップフロップ回路の間に論理回路が存在せず、遅延時間が小さくなり、フリップフロップ回路に入力されるクロック信号の駆動周波数を高速にすることができる。したがって、多ビットグレイコード生成回路から出力されるグレイコードの周波数も高速にすることが可能となる。
【0125】
本発明の態様2に係る多ビットグレイコード生成回路は、上記態様1において、第0グレイコード生成回路と、複数のグレイコード生成回路とが、クロック信号の半周期分だけずれて動作する。
【0126】
上記の構成によれば、多ビットグレイコード生成回路から出力されるグレイコードの周波数をさらに高速にすることが可能となる。
【0127】
本発明の態様3に係る多ビットグレイコード生成回路は、上記態様1または2において、第0グレイコード生成回路は、クロック信号に同期して出力を反転した値を保持し、当該出力をグレイコードのビット0として出力する第1のフリップフロップ回路を含む。
【0128】
上記の構成によれば、フリップフロップ回路に入力されるクロック信号の駆動周波数を高速にすることができる。
【0129】
本発明の態様4に係る多ビットグレイコード生成回路は、上記態様1~3のいずれかにおいて、複数のグレイコード生成回路は、クロック信号に同期して入力を反転した値を保持して出力する第2のフリップフロップ回路と、クロック信号に同期して第2のフリップフロップ回路の出力の値を保持して第2のフリップフロップ回路に出力し、当該出力をグレイコードのビット1とする第3のフリップフロップ回路とを含む第1グレイコード生成回路を備える。
【0130】
上記の構成によれば、フリップフロップ回路の間に論理回路が存在せず、遅延時間が小さくなり、フリップフロップ回路に入力されるクロック信号の駆動周波数を高速にすることができる。
【0131】
本発明の態様5に係る多ビットグレイコード生成回路は、上記態様4において、複数のグレイコード生成回路はさらに、クロック信号に同期して入力を反転した値を保持して出力する第4のフリップフロップ回路と、クロック信号に同期して第4のフリップフロップ回路の出力の値を保持して出力する第5のフリップフロップ回路と、クロック信号に同期して第5のフリップフロップ回路の出力の値を保持して出力し、当該出力をグレイコードのビット2とする第6のフリップフロップ回路と、クロック信号に同期して第6のフリップフロップ回路の出力の値を保持して第4のフリップフロップ回路に出力する第7のフリップフロップ回路とを含む第2グレイコード生成回路を備える。
【0132】
上記の構成によれば、フリップフロップ回路の間に論理回路が存在せず、遅延時間が小さくなり、フリップフロップ回路に入力されるクロック信号の駆動周波数を高速にすることができる。
【0133】
本発明の態様6に係る多ビットグレイコード生成回路は、上記態様5において、複数のグレイコード生成回路はさらに、クロック信号に同期して入力を反転した値を保持して出力する第8のフリップフロップ回路と、クロック信号に同期して第8のフリップフロップ回路の出力の値を保持して出力する第9のフリップフロップ回路と、クロック信号に同期して第9のフリップフロップ回路の出力の値を保持して出力する第10のフリップフロップ回路と、クロック信号に同期して第10のフリップフロップ回路の出力の値を保持して出力する第11のフリップフロップ回路と、クロック信号に同期して第11のフリップフロップ回路の出力の値を保持して出力し、当該出力をグレイコードのビット3とする第12のフリップフロップ回路と、クロック信号に同期して第12のフリップフロップ回路の出力の値を保持して出力する第13のフリップフロップ回路と、クロック信号に同期して第13のフリップフロップ回路の出力の値を保持して出力する第14のフリップフロップ回路と、クロック信号に同期して第14のフリップフロップ回路の出力の値を保持して第8のフリップフロップ回路に出力する第15のフリップフロップ回路とを含む第3グレイコード生成回路を備える。
【0134】
上記の構成によれば、フリップフロップ回路の間に論理回路が存在せず、遅延時間が小さくなり、フリップフロップ回路に入力されるクロック信号の駆動周波数を高速にすることができる。
【0135】
本発明の態様7に係る多ビットグレイコード生成回路は、上記態様6において、多ビットグレイコード生成回路はさらに、グレイコードのビット4を生成する第4グレイコード生成回路と、第3グレイコード生成回路からの出力の値と、第3グレイコード生成回路からの出力を反転した値とを選択的に出力する第1の選択回路と、第4グレイコード生成回路からの出力の値と、第4グレイコード生成回路からの出力を反転した値とを選択的に出力する第2の選択回路とを備える。
【0136】
上記の構成によれば、グレイコードのスタートコードを変更することができ、汎用性が高い多ビットグレイコード生成回路を提供することが可能となる。
【0137】
本発明の態様8に係る多ビットグレイコード生成回路は、上記態様6において、多ビットグレイコード生成回路はさらに、グレイコードのビット4を生成する第4グレイコード生成回路と、クロック信号に同期して第1グレイコード生成回路の出力の値を保持して出力する第16のフリップフロップ回路と、クロック信号に同期して第2グレイコード生成回路の第7フリップフロップ回路の出力の値を保持して出力する第17のフリップフロップ回路と、クロック信号に同期して第3グレイコード生成回路の第15のフリップフロップ回路の出力の値を保持して出力する第18のフリップフロップ回路と、第0グレイコード生成回路からの出力と、クロック信号とを選択的に出力する第3の選択回路と、第1グレイコード生成回路からの出力と、第0グレイコード生成回路からの出力とを選択的に出力する第4の選択回路と、第2グレイコード生成回路からの出力と、第16のフリップフロップ回路からの出力とを選択的に出力する第5の選択回路と、第3グレイコード生成回路からの出力と、第17のフリップフロップ回路からの出力とを選択的に出力する第6の選択回路と、第4グレイコード生成回路からの出力と、第18のフリップフロップ回路からの出力とを選択的に出力する第7の選択回路とを備える。
【0138】
上記の構成によれば、多ビットグレイコード生成回路は、グレイコードをバイナリコードに変換することが可能となる。
【0139】
本発明の態様9に係る多ビットグレイコード生成回路は、上記態様1~8のいずれかにおいて、多ビットグレイコード生成回路はさらに、リセット解除から所定のクロック数後にクロック信号の出力を開始するクロック遅延回路を備える。
【0140】
上記の構成によれば、多ビットグレイコード生成回路は、任意のタイミングで多ビットグレイコードの出力を開始することが可能となる。
【0141】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成することができる。
【符号の説明】
【0142】
1 クロック遅延回路
2 Bit0グレイコード生成回路
3 Bit1グレイコード生成回路
4 Bit2グレイコード生成回路
5 Bit3グレイコード生成回路
6 Bit4グレイコード生成回路
11~13,21,31,32,41~44,51~58,71~73 フリップフロップ回路
14 ラッチ回路
15 AND回路
61~63 バッファ
64,65 インバータ(反転回路)
66,67,74~78 セレクタ(選択回路)
100,100a,100b 多ビットグレイコード生成回路