JP3189875B2 - ステートマシン - Google Patents

ステートマシン

Info

Publication number
JP3189875B2
JP3189875B2 JP14673497A JP14673497A JP3189875B2 JP 3189875 B2 JP3189875 B2 JP 3189875B2 JP 14673497 A JP14673497 A JP 14673497A JP 14673497 A JP14673497 A JP 14673497A JP 3189875 B2 JP3189875 B2 JP 3189875B2
Authority
JP
Japan
Prior art keywords
state
current state
register
holding
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP14673497A
Other languages
English (en)
Other versions
JPH10333881A (ja
Inventor
満 藤井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP14673497A priority Critical patent/JP3189875B2/ja
Publication of JPH10333881A publication Critical patent/JPH10333881A/ja
Application granted granted Critical
Publication of JP3189875B2 publication Critical patent/JP3189875B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は現在の各出力端子の
状態が、その時の各入力端子の状態と過去の出力及び入
力の状態とその順序によって決まるステートマシンに関
するものである。
【0002】
【従来の技術】ディジタル回路や装置で構成されたシス
テムで、現在の各出力端子の状態が、その時の各入力端
子の状態だけでなく、過去の出力と入力の状態とその順
序によって決るとき、これをステートマシンと呼ぶ。
【0003】多くの機能を備えたLSIは各機能毎にブ
ロック化されており、各機能ブロックはそれぞれ独自の
ステートマシンを備えている。ここで、ステートマシン
を有する個々の機能ブロックに対して外部から入力され
る全ての入力信号をプライマリ入力と呼び、個々の機能
ブロックから外部に対して出力される全ての出力信号を
プライマリ出力と呼ぶ。
【0004】ステートマシンは、回路の現在の状態(以
下、現ステートと称す)を保持する現ステート保持レジ
スタと、現ステートから次の状態(以下、次ステートと
称す)を算出する次ステートロジック回路とによって構
成される。現ステート保持レジスタには一般にDフリッ
プフロップ(以下、D−F/Fと称す)が用いられる。
ステートマシンでは、複数のD−F/Fの出力端子の状
態”0”、”1”に対応してそれぞれステートが定義さ
れ、現在の各D−F/Fの出力端子の状態が何であるか
によって回路全体のステートが決定される。なお、N個
のステートを持つステートマシンには最低log2 N個
のD−F/Fが必要になる。
【0005】図5は従来のステートマシンの構成を示す
ブロック図である。
【0006】図5において、ステートマシンは、現ステ
ート及びプライマリ入力にしたがって次ステートを算出
する次ステートロジック部11と、現ステートを保持す
るための少なくとも1つの現ステート保持レジスタから
なり、次ステートロジック部11から出力された次ステ
ートを、クロックに同期して新たな現ステートとして保
持する現ステート保持部12とによって構成されてい
る。また、現ステート保持部12の出力には現ステート
及びプライマリ入力にしたがって動作する出力ブロック
部13が接続されている。なお、現ステート保持部12
及び出力ブロック部13はそれぞれクロックCLKに同
期して動作する。
【0007】このような構成において、次に図5に示し
たステートマシンの動作について説明する。
【0008】次ステートロジック部11には現ステート
とプライマリ入力とが入力され、それらのデータから所
定の関数にしたがって次ステートを算出し、現ステート
保持部12へ送出する。
【0009】現ステート保持部12は入力された次ステ
ートをクロックの次の周期で新たな現ステートとして保
存し、次ステートロジック部11と出力ブロック部13
とに現ステートとしてそれぞれ送出する。
【0010】出力ブロック部13は、現ステート保持部
12から出力される現ステート及びプライマリ入力にし
たがって動作し、プライマリ出力を生成する。
【0011】ところで、ステートマシンは、回路のステ
ートを何個のD−F/Fを用いて表わすかで2種類の構
成になることが知られている。一つは現ステート保持レ
ジスタであるD−F/Fの出力をデコードして出力する
デコード型であり、もう一つは次ステートロジック部1
1からデコードされたステートを出力させるOne−H
ot型である。
【0012】デコード型のステートマシンの特徴は、現
ステート保持レジスタの個数を最小限に抑え、現ステー
ト保持レジスタ後段に接続されるデコード回路の出力に
よって現ステートを決定する。
【0013】一方、One−Hot型のステートマシン
の特徴は、現ステート保持部12でステート毎にそれぞ
れ現ステート保持レジスタを備え、現ステートはどの現
ステート保持レジスタから”1”が出力されているかに
よって決定される。
【0014】例えば、図6に示すような、S0〜S7の
8つの状態を持つステートマシンを構成する場合、デコ
ード型のステートマシンでは図7に示すような回路構成
になり、3個のD−F/F14とデコード回路15とを
用いるだけで全ての状態を表わすことができる。一方、
One−Hot型のステートマシンは図8に示すような
回路構成になり、8個のD−F/F16が必要になる。
【0015】この2種類のステートマシンにはそれぞれ
長所と短所があり、デコード型のステートマシンはレジ
スタの数が少ない反面、動作速度が遅くなり、One−
Hot型のステートマシンはデコード回路が不要なため
動作速度が速くなるがレジスタの数が増加する。どちら
のステートマシン用いるかは、ステートマシンを使用す
る回路に要求される仕様によって決定される。
【0016】
【発明が解決しようとする課題】通常、D−F/Fは図
9に示すような回路から構成される。図9に示した回路
では、入力信号Dの状態が”0”、”1”のいずれであ
ってもクロックCLKの立ち上がり時及び立ち下がり時
にANDゲート及びORゲートがそれぞれONになり、
電源から接地電位へ貫通電流が流れる。この貫通電流は
D−F/Fの入力信号Dの変化に関係なくクロックの立
ち上がり及び立ち下がり毎に発生する。
【0017】通常、ステートマシンでは同一状態を繰り
返す待機状態が頻繁に生じるため、上記したような従来
のステートマシンでは、現ステートと次ステートが同一
の場合も、現ステート保持レジスタに対するクロック入
力によって貫通電流が流れ、不要な電力が消費される問
題があった。
【0018】また、出力ブロック部が有するレジスタに
対してもクロックが常に供給されているため、待機状態
にある現ステートに対応するレジスタについても、この
貫通電流によって電力が消費される問題があった。
【0019】本発明は上記したような従来の技術が有す
る問題点を解決するためになされたものであり、レジス
タによる不要な電力消費を抑制したステートマシンを提
供することを目的とする。
【0020】
【課題を解決するための手段】上記目的を達成するため
本発明のステートマシンは、現在の状態である現ステー
トから次の状態である次ステートを算出する次ステート
ロジック部と、前記現ステートを保持するための少なく
とも1つの現ステート保持レジスタを備え、前記次ステ
ートロジック部から出力される次ステートをクロックに
同期して新たな現ステートとして保持する現ステート保
持部と、を有するステートマシンにおいて、前記現ステ
ートと前記次ステートとを比較し、該現ステートと該次
ステートとが一致したとき、前記現ステート保持部レジ
スタに対する前記クロックの供給を停止する比較部を有
することを特徴とする。
【0021】このとき、クロック出力を停止可能に制御
する停止手段と、前記現ステート保持レジスタに対応し
て設けられ、前記停止手段を介してクロックが独立して
与えられるレジスタと、を備えた出力ブロック部を有
し、前記現ステート保持部は、前記次ステートと前記
ステートとが一致したとき、該現ステートを保持する現
ステート保持レジスタに対応する前記レジスタに対する
クロックの供給を前記停止手段に停止させるためのイネ
ーブル信号を出力してもよい。
【0022】上記のように構成されたステートマシン
は、比較部によって現ステートと次ステートとが比較さ
れ、現ステートと次ステートとが一致したとき、現ステ
ート保持部に対するクロックの供給を停止させること
で、次ステートが現ステートから変化しないときは現ス
テート保持レジスタにクロックが供給されなくなる。し
たがって、現ステート保持レジスタを構成する各Dフリ
ップフロップに流れる不要な貫通電流がなくなる。
【0023】また、現ステート保持部が、次ステートと
現ステートとが一致したとき、現ステートを保持する現
ステート保持レジスタに対応する出力ブロック部のレジ
スタに対するクロックの供給を停止させるイネーブル信
号を出力することで、出力ブロック部のレジスタには停
止手段によってクロックが供給されなくなる。したがっ
て、出力ブロック部のレジスタを構成する各Dフリップ
フロップに流れる不要な貫通電流がなくなる。
【0024】
【発明の実施の形態】次に本発明について図面を参照し
て説明する。
【0025】本発明のステートマシンは、従来のステー
トマシンに次ステートと現ステートを比較するための比
較部を追加し、現ステート保持部及び出力ブロック部に
対するクロックの供給を比較部の比較結果によって制御
する。また、出力ブロック部には各ステート毎に独立し
てそれぞれクロックが与えられる。
【0026】図1は本発明のステートマシンの構成を示
すブロック図である。また、図2は図1に示した出力ブ
ロック部の構成を示すブロック図である。
【0027】図1において、本発明のステートマシン
は、現ステート及びプライマリ入力にしたがって次ステ
ートを算出する次ステートロジック部1と、現ステート
を保持するための少なくとも1つの現ステート保持レジ
スタからなり、次ステートロジック部1から出力された
次ステートを、クロックに同期して新たな現ステートと
して保持する現ステート保持部2と、次ステート及び現
ステートを比較し、現ステート保持部に対するクロッ
クの供給を制御する比較部とによって構成されてい
る。また、現ステート保持部2の出力には現ステート及
びプライマリ入力にしたがって動作する出力ブロック部
3が接続されている。なお、現ステート保持部及び出
力ブロック部3はそれぞれクロックCLKに同期して動
作する。図2において、出力ブロック部3は、現ステー
トを一時的に保持する少なくとも1つのレジスタ5と、
各レジスタ5に対応してそれぞれ設けられたANDゲー
ト6とによって構成され、クロックCLKはANDゲー
ト6を介してレジスタ5に入力されている。また、AN
Dゲート6には現ステート保持部2から出力されるクロ
ックイネーブル信号CEが入力され、クロックイネーブ
ル信号CEによって、現在動作している現ステート保持
レジスタに対応するレジスタ5にのみクロックCLKが
供給される。
【0028】このような構成において、次に本発明のス
テートマシンの動作について説明する。
【0029】次ステートロジック部1には現ステートと
プライマリ入力とが入力され、それらのデータから所定
の関数にしたがって次ステートを算出し、現ステート保
持部2へ送出する。現ステート保持部2は入力された次
ステートをクロックの次の周期で新たな現ステートとし
て保存し、次ステートロジック部1と出力ブロック部3
とに現ステートとしてそれぞれ送出する。出力ブロック
部3は、現ステート保持部2から出力される現ステート
及びプライマリ入力にしたがって動作し、プライマリ出
力を生成する。
【0030】比較部は次ステートと現ステートとを比
較し、次ステートと現ステートとが一致しないときは現
ステート保持部の現ステート保持レジスタにそれぞれ
クロックCLKを供給する。また、次ステートと現ステ
ートとが一致したときは現ステート保持部の現ステー
ト保持レジスタに対するクロックCLKの供給を停止す
る。
【0031】これにより、次ステートが現ステートから
変化するときのみ現ステート保持部の現ステート保持
レジスタにクロックが供給され、現ステート保持レジス
タで消費される電力を必要最小限に抑制することができ
る。
【0032】また、図2に示すように、出力ブロック部
の各レジスタ5にそれぞれ独立してクロックCLKを
供給し、現在動作している現ステート保持レジスタに対
応するレジスタ5のみアクティブになるように現ステー
ト保持部からクロックイネーブル信号CEを与える。
これにより、出力ブロック部3の各レジスタ5のうち、
現ステートで使用するレジスタ5以外で消費する余分な
電力を抑制することができる。
【0033】したがって、現ステート保持部の各現ス
テート保持レジスタ及び出力ブロック部の各レジスタ
5には必要時以外にクロックが供給されないため、レジ
スタを構成するD−F/Fで発生する貫通電流が抑制さ
れ、回路全体の消費電力を低減することができる。
【0034】なお、本発明の構成は、デコーダ型のステ
ートマシンよりもOne−Hot型のステートマシンの
方がより適している。すなわち、デコーダ型ではクロッ
クイネーブル信号CEを発生させるためのデコード回路
が必要になるが、One−Hot型では現ステート保持
の現ステート保持レジスタの出力をそのままクロッ
クイネーブル信号CEとして使用することができるから
である。
【0035】また、One−Hot型はデコーダ型より
も現ステート保持レジスタの数が多いため、同じ状態を
繰り返すことによる不要な電力消費も大きく、その点で
も本発明による電力消費低減の効果が大きい。
【0036】
【実施例】次に本発明のステートマシンの実施例につい
て図面を参照して説明する。
【0037】図3は本発明のステートマシンの実施例を
示す図であり、図1に示した比較部の構成を示す回路図
である。また、図4は図1に示したステートマシンの動
作の様子を示すタイミングチャートである。
【0038】図3において、本実施例の比較部は、入力
される次ステートと現ステート保持レジスタ7から出力
される現ステートとを比較するコンパレータ8と、コン
パレータ8から出力される比較結果を一時的に保持する
Dフリップフロップ9と、現ステート保持レジスタ7に
対するクロックCLKの供給を制御するANDゲート1
0とによって構成されている。なお、図3では1つの現
ステート保持レジスタ7に対する比較部の回路構成のみ
を示しているが、現ステート保持部が複数の現ステート
保持レジスタ7から構成される場合は、コンパレータ
8、Dフリップフロップ9、及びANDゲート10が各
現ステート保持レジスタ毎に設けられる。このような構
成において、次に図3に示した比較部を備えたステート
マシンの動作について図4を参照して説明する。
【0039】図4において、まず、現ステートがS0か
らS1に変化するとき、コンパレータ8からは”H”論
理の信号が出力され、Dフリップフロップ9からはMa
sk信号として”H”論理信号が出力される。このと
き、ANDゲート10からはクロックCLK(Mask
CLK)がそのまま出力される。
【0040】現ステートがS0からS1に変化した後、
クロックCLKの次の周期では、S1の状態に変化がな
いため、コンパレータ8からは”L”論理の信号が出力
され、Dフリップフロップ9からはMask信号とし
て”L”論理信号が出力される。このとき、ANDゲー
ト10からはクロックCLKが出力されない。
【0041】続いて、現ステートがS1からS2に変化
するとき、コンパレータ8からは”H”論理の信号が出
力され、Dフリップフロップ9からはMask信号とし
て”H”論理の信号が出力される。このとき、ANDゲ
ート10からはクロックCLKが再び出力される。
【0042】同様に現ステートがS2からS7に変化す
るとき、ANDゲート10からはクロックCLKがその
まま出力され、S7ではクロックCLKが出力されない
(クロックCLKで2周期)。
【0043】したがって、次ステートが現ステートから
変化するときのみ現ステート保持レジスタ7に対してク
ロックCLKが供給され、次ステートが現ステートから
変化しないときは現ステート保持レジスタ7にクロック
CLKが供給されない。よって、現ステート保持レジス
タ7を構成するD−F/Fに流れる不要な貫通電流がな
くなり、現ステート保持レジスタ7で消費される電力を
必要最小限に抑制することができる。
【0044】
【発明の効果】本発明は以上説明したように構成されて
いるので、以下に記載する効果を奏する。
【0045】現ステートと次ステートとを比較し、現ス
テートと次ステートとが一致したとき、現ステート保持
部に対するクロックの供給を停止する比較部を有するこ
とで、現ステート保持レジスタで消費される電力を必要
最小限に抑制することができる。
【0046】また、現ステート保持部が、次ステートと
現ステートとが一致したとき、現ステートを保持する現
ステート保持レジスタに対応する出力ブロック部のレジ
スタに対するクロックの供給を停止手段に停止させるイ
ネーブル信号を出力することで、出力ブロック部のレジ
スタで消費される電力を必要最小限に抑制することがで
きる。
【図面の簡単な説明】
【図1】本発明のステートマシンの構成を示すブロック
図である。
【図2】図1に示した出力ブロック部の構成を示すブロ
ック図である。
【図3】本発明のステートマシンの実施例を示す図であ
り、図1に示した比較部の構成を示す回路図である。
【図4】図1に示したステートマシンの動作の様子を示
すタイミングチャートである。
【図5】従来のステートマシンの構成を示すブロック図
である。
【図6】ステートマシンの状態遷移例を示すステートダ
イアグラムである。
【図7】デコード型ステートマシンの構成例を示すブロ
ック図である。
【図8】One−Hot型ステートマシンの構成例を示
すブロック図である。
【図9】Dフリップフロップの構成を示す回路図であ
る。
【符号の説明】
1 次ステートロジック部 2 現ステート保持部 3 出力ブロック部 4 比較部 5 レジスタ 6、10 ANDゲート 7 現ステート保持レジスタ 8 コンパレータ 9 Dフリップフロップ

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 現在の状態である現ステートから次の状
    態である次ステートを算出する次ステートロジック部
    と、 前記現ステートを保持するための少なくとも1つの現ス
    テート保持レジスタを備え、前記次ステートロジック部
    から出力される次ステートをクロックに同期して新たな
    現ステートとして保持する現ステート保持部と、 を有するステートマシンにおいて、 前記現ステートと前記次ステートとを比較し、該現ステ
    ートと該次ステートとが一致したとき、前記現ステート
    保持部レジスタに対する前記クロックの供給を停止する
    比較部を有することを特徴とするステートマシン。
  2. 【請求項2】 請求項1に記載のステートマシンにおい
    て、 クロック出力を停止可能に制御する停止手段と、前記 現ステート保持レジスタに対応して設けられ、前記
    停止手段を介してクロックが独立して与えられるレジス
    タと、 を備えた出力ブロック部を有し、前記 現ステート保持部は、前記 次ステートと前記現ステートとが一致したとき、該
    現ステートを保持する現ステート保持レジスタに対応す
    る前記レジスタに対するクロックの供給を前記停止手段
    に停止させるためのイネーブル信号を出力することを特
    徴とするステートマシン。
JP14673497A 1997-06-04 1997-06-04 ステートマシン Expired - Fee Related JP3189875B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14673497A JP3189875B2 (ja) 1997-06-04 1997-06-04 ステートマシン

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14673497A JP3189875B2 (ja) 1997-06-04 1997-06-04 ステートマシン

Publications (2)

Publication Number Publication Date
JPH10333881A JPH10333881A (ja) 1998-12-18
JP3189875B2 true JP3189875B2 (ja) 2001-07-16

Family

ID=15414389

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14673497A Expired - Fee Related JP3189875B2 (ja) 1997-06-04 1997-06-04 ステートマシン

Country Status (1)

Country Link
JP (1) JP3189875B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4717983B2 (ja) * 2000-06-14 2011-07-06 株式会社日立製作所 省消費電力型メモリモジュール及び計算機システム
JP4325261B2 (ja) * 2003-04-17 2009-09-02 ソニー株式会社 電子機器および半導体集積回路の制御方法

Also Published As

Publication number Publication date
JPH10333881A (ja) 1998-12-18

Similar Documents

Publication Publication Date Title
KR100231605B1 (ko) 반도체 메모리 소자의 전력소모 방지 장치
JP3155971B2 (ja) Atmメモリ用プログラマブル・データ・ポート
KR20030009032A (ko) 입출력 인터페이스 및 반도체 집적 회로
KR100337722B1 (ko) 플립플롭의리셋회로
US6754740B2 (en) Interface apparatus for connecting devices operating at different clock rates, and a method of operating the interface
JP3189875B2 (ja) ステートマシン
KR100291126B1 (ko) 복수개의서브-회로및클럭신호재생회로를구비하는회로장치
JPH10208485A (ja) 同期型半導体装置の内部クロック発生回路
KR100266691B1 (ko) 홀드/리셋 모드 선택 카운터 및 그 실행방법
US20050235069A1 (en) Microcontroller
JP2002279792A (ja) 半導体集積回路装置
US6552590B2 (en) Clocking scheme for ASIC
JP2002333976A (ja) マイクロプロセッサ
JP2000029560A (ja) 電子装置
KR0163889B1 (ko) 슬립모드 제어회로
JPS60167521A (ja) 集積回路
JP2002132375A (ja) クロック信号制御回路
JPH09145803A (ja) テストモード設定回路
JPH10290142A (ja) 半導体集積回路のフリップフロップ回路とそのクロック制御回路
KR20030083233A (ko) 지연 동기 루프의 지연 라인 제어 회로
JPH11220366A (ja) 内部クロック信号生成回路
JPH11274905A (ja) クロック用ゲート回路及びクロックゲーティング回路
JPH09105771A (ja) 半導体集積回路
JPH04251312A (ja) クロツク供給方式
JP2004164182A (ja) 半導体集積回路

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees