(57)【要約】【課題】ステートマシンのテストにおいて何らかの異常が発生した際には、高度な解析手法ではなく、どの遷移状態（ステート）で異常が発生したかを知ることができるステートマシンを提供する。【解決手段】ステートマシン３５は、あらかじめ決められた複数の状態を決められた条件に従って決められた順番で遷移してゆくステートマシンであり、ステートマシン３５の遷移状態を示す信号６０を出力する信号出力部３７と、信号出力部３７から外部へ出力する遷移状態を示す信号６０を保持する信号保持部３８と、を備える。【選択図】図１
2010218004.tif 000002
【特許請求の範囲】
【請求項１】
あらかじめ決められた複数の状態を決められた条件に従って決められた順番で遷移してゆくステートマシンにおいて、
前記ステートマシンの遷移状態を示す信号を出力する信号出力部と、
前記信号出力部から外部へ出力する前記遷移状態を示す信号を保持する信号保持部と、
を備えることを特徴とするステートマシン。
【請求項２】
前記遷移状態を示す信号は、外部表示器に前記遷移状態を表示させるための信号であることを特徴とする請求項１に記載のステートマシン。
【請求項３】
前記外部表示器に前記遷移状態を表示させるための信号は、７セグメントの発光素子を有する表示器を駆動して前記遷移状態を表示させる信号であることを特徴とする請求項２に記載のステートマシン。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ステートマシンに関し、特にあらかじめ決められた複数の状態を決められた条件に従って決められた順番で遷移してゆくステートマシンに関する。
【背景技術】
【０００２】
近年、ＬＳＩ（大規模集積回路）の一種であるＣＰＬＤ（Ｃｏｍｐｌｅｘ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｌｌｅｙ）等のプログラム可能な論理デバイスを利用したシステムＬＳＩが増えてきている。
【０００３】
これらの論理デバイスには論理プログラムを組み込んで性能試験を行うが、これらのデバイスの外部端子（ピン）の数が多いとはいえ限られた数であり、性能試験を行う際に、それらの外部端子へ入力される入力信号や、外部端子から外部へ出力される出力信号によって、論理デバイスの内部の状態を探るためには、入出力信号を解析する大掛かりな解析装置が必要であるし、解析装置を使いこなす相応のノウハウも必要である。
【０００４】
例えば、特許文献１には外部テスト装置３０が開示されており、この外部テスト装置３０には、ステートマシン１１に含むシステムＬＳＩ１０の異常状態を検出するための機能検証回路２０が設けられている。このステートマシン１１で異常が発生すると、機能検証回路２０がステートマシン１１の異常を検知して、その異常検知結果を外部のＬＳＩテスト装置３０へ出力する。
【０００５】
機能検証回路２０は、ハードウェアに変換可能なＨＤＬ（Ｈａｒｄｗａｒｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）等のハードウェア記述言語で記述され、かつ論理回路として合成されたものである。この機能検証回路２０は、内部の信号線１３の状態の履歴を保持する状態履歴保持部２１と、状態履歴保持部２１に保持された状態履歴に基づいて信号線１３に出力されるべき信号を生成する遷移チェック信号生成部２２と、遷移チェック信号生成部２２で生成された信号と信号線１３に出力された信号とを比較する比較部２３と、比較結果を出力する出力部２４を備えている。
【０００６】
このように、特許文献１に記載のシステムＬＳＩ１０は、本来の論理処理を行うステートマシン１１と組み合わせ回路１２に加えて、これらのステートマシン１１と組み合わせ回路１２の間の検証対象となる複数の信号線１３の状態を監視する機能検証回路２０を備えている。これにより、検証対象回路の内部の動作をチェックできる。
【０００７】
さらに、この機能検証回路２０は、ＲＴ（Ｒｅｇｉｓｔｅｒ  Ｔｒａｎｓｆｅｒ）レベルでの設計当初からステートマシン１１や組み合わせ回路１２と同じハードウェア記述言語で記述され、これらのステートマシン１１や組み合わせ回路１２と同時に論理回路として合成されたものである。従って、ＲＴレベルでのシミュレーションでは、シミュレータによる制約を受けずに、一般的なシミュレータを用いてシミュレーションを行うことができる。また、ネットリスト（構成要素であるトランジスタ等の部品とその部品間の接続関係を記述したもの）による論理回路への変換においても、ステートマシン１１や組み合わせ回路１２と同時に機能検証回路２０のネットリストが生成される。これにより、ネットリストを使用したシミュレーションにおいても、検証対象回路の内部の動作チェックが可能となっている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００８―１０７８７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ところが、上述したように、特許文献１に記載のシステムは複雑なテストが行える代わりに、そのテストのために複雑な専用回路である機能検証回路２０が必要になるということと、外部にＬＳＩテスト用の別のＬＳＩテスト装置３０が必要になるという欠点も併せ持っている。
【００１０】
また、一般的にステートマシンでは異常が発生すると、それ以上は処理が進まないようにシステムが停止してしまうために、思うような内部信号を取り出せずに、異常原因の分析が困難なことが多い。
【００１１】
そこで、本発明は、上記に鑑みてなされたものであり、その目的は、ステートマシンのテストにおいて何らかの異常が発生した際には、高度な解析手法ではなく、どの遷移状態（ステート）で異常が発生したかを知ることができるステートマシンを提供することである。
【課題を解決するための手段】
【００１２】
本発明のステートマシンは、あらかじめ決められた複数の状態を決められた条件に従って決められた順番で遷移してゆくステートマシンにおいて、前記ステートマシンの遷移状態を示す信号を出力する信号出力部と、前記信号出力部から外部へ出力する前記遷移状態を示す信号を保持する信号保持部と、を備えることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、ステートマシンのテストにおいて何らかの異常が発生した際には、高度な解析手法ではなく、どの遷移状態（ステート）で異常が発生したかを知ることができるステートマシンを提供することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明のステートマシンを含む好ましい実施形態を有するシステムＬＳＩを示すブロック図である。
【図２】図１に示すステートマシンの状態の遷移を示す図である。
【図３】図２に示すステートマシンにおける状態遷移を実現するためのフローチャートである。
【図４】図２に示すステートマシンにおける状態遷移を実現するためのフローチャートである。
【図５】図２に示すステートマシンにおける状態遷移を実現するためのフローチャートである。
【発明を実施するための形態】
【００１５】
本発明の実施形態について図面を参照して説明する。
【００１６】
図１は、本発明のステートマシンを含む好ましい実施形態を有するシステムＬＳＩを示すブロック図である。
【００１７】
図１に示すシステムＬＳＩ３０の中には、ステートマシン３５が含まれている。ステートマシン３５は、あらかじめ決められた複数の状態を、決められた条件に従って決められた順番で遷移してゆくディジタルデバイスあるいはディジタルデバイスを含む回路を備える。このステートマシン３５は、信号出力部３７とラッチ回路３８を備えている。
【００１８】
図１に示す信号出力部３７は、ステートマシン３５の遷移状態を示す信号６０をラッチ回路３８へ出力する。信号保持部としてのラッチ回路３８は、信号出力部３７からステートマシン３５の外部へ出力する遷移状態を示す信号６０を保持（ラッチ）する。
【００１９】
図１に示すように、クロック信号や制御信号等の外部からの入力信号類４０がシステムＬＳＩ３０に対して入力され、外部への出力信号類５０がシステムＬＳＩ３０から出力されるようになっている。入力信号類４０と出力信号類５０とは別に、外部表示器用駆動信号である遷移状態を示す信号６０が、ラッチ回路３８から外部表示器７０に出力されることで、外部表示器７０は、数字をディジタル表示できるようになっている。
【００２０】
この外部表示器７０は、具体的には例えば７セグメント形式のＬＥＤ（発光ダイオード）表示器であり、図１の例では、一例として数字の“３”を表示している。この表示されている数字の“３”は、ステートマシン３５が遷移状態“ＳＴ３”の状態にあることを表示している。
【００２１】
図２は、図１に示すステートマシン３５の状態の遷移の例を示す図であるが、それぞれの遷移状態へ遷移する条件については図示を省略している。
【００２２】
図１に示す外部表示器７０に表示される数字は、図２に例示するように、ステートマシン３５の遷移状態“ＳＴ１”から遷移状態“ＳＴ５”までの５種類である。すなわち、外部表示器７０は、遷移状態“ＳＴ１”の時には、外部表示器７０は数字の“１”を表示し、遷移状態“ＳＴ２”の時には、外部表示器７０は数字の“２”を表示し、遷移状態“ＳＴ３”の時には、外部表示器７０は数字の“３”を表示し、遷移状態“ＳＴ４”の時には、外部表示器７０は数字の“４”を表示し、そして遷移状態“ＳＴ５”の時には、外部表示器７０は数字の“５”を表示する。
【００２３】
図２においてまず初期状態では、遷移状態“ＳＴ１”になり、その遷移状態“ＳＴ１”において遷移状態“ＳＴ２”、または遷移状態“ＳＴ４”へ移行する条件が成立すれば状態が遷移し、遷移状態“ＳＴ２”または遷移状態“ＳＴ４”へ移行する。
【００２４】
図２において、遷移状態“ＳＴ２”の時に、遷移状態“ＳＴ１”、遷移状態“ＳＴ３”、遷移状態“ＳＴ４”、または遷移状態“ＳＴ５”へ移行する条件が成立すれば状態が遷移し、条件により遷移状態“ＳＴ１”、遷移状態“ＳＴ３”、遷移状態“ＳＴ４”または遷移状態“ＳＴ５”へ移行する。
【００２５】
図２において、遷移状態“ＳＴ３”の時に、遷移状態“ＳＴ２”、または遷移状態“ＳＴ５”へ移行する条件が成立すれば状態が遷移し、条件により遷移状態“ＳＴ２”または遷移状態“ＳＴ５”へ移行する。
【００２６】
図２において、遷移状態“ＳＴ４”の時に、遷移状態“ＳＴ１”、遷移状態“ＳＴ２”、または遷移状態“ＳＴ５”へ移行する条件が成立すれば状態が遷移し、条件により遷移状態“ＳＴ１”、遷移状態“ＳＴ２”、または遷移状態“ＳＴ５”へ移行する。
【００２７】
図２において、遷移状態“ＳＴ５”の時に、遷移状態“ＳＴ２”、遷移状態“ＳＴ３”、または遷移状態“ＳＴ４”へ移行する条件が成立すれば状態が遷移し、条件により遷移状態“ＳＴ２”、遷移状態“ＳＴ３”、または遷移状態“ＳＴ４”へ移行する。
【００２８】
図２では、ステートマシン３５が一例として遷移状態“ＳＴ３”であることを示すために、遷移状態“ＳＴ３”の外枠３６を、他の遷移状態の外枠に比べて太く記載している。そのために、図１において、外部表示器７０は、数字の“３”を表示し、ステートマシン３５が遷移状態“ＳＴ３”であることを示している。
【００２９】
次に、図３〜図５は、図２に示すステートマシン３５における状態の遷移を実現するためのフローチャートである。
【００３０】
まず、図３（Ａ）を参照すると、図３（Ａ）ではステップＳ１００〜ステップＳ１０３を示している。ステップＳ１００では、初期状態において遷移状態が“ＳＴ１”である条件が成立するまでは、図１の外部表示器７０は何も表示しない。通常であれば、図１に示すシステムＬＳＩ３０に対して電源が通じれば、状態遷移する条件が成立して無条件に遷移状態が“ＳＴ１”となる。ステップＳ１０１では、遷移状態が“ＳＴ１”となると、図１のラッチ回路３８から外部表示器７０には“１”表示信号が出力されて、数字“１”が表示される。
【００３１】
図２に示すように、遷移状態“ＳＴ１”の状態では、遷移状態“ＳＴ２”、または遷移状態“ＳＴ４”へ移行する条件が成立しているかどうかにより遷移状態は変わる。図３（Ａ）のステップＳ１０２とステップＳ１０３においてどちらの移行条件も不成立（Ｎｏ）であれば、そのまま遷移状態“ＳＴ１”を継続し、外部表示器７０には数字 “１”が表示されたままである。
【００３２】
図３（Ａ）のステップＳ１０２において、遷移状態“ＳＴ２”への移行条件が成立する場合（Ｙｅｓ）を，図３（Ｂ）のステップＳ１０４に示している。図３（Ｂ）のステップＳ１０４において、図１のステートマシン３５は遷移状態“ＳＴ１”から遷移状態“ＳＴ２”へ状態遷移して、図１の外部表示器７０には“２”表示信号が出力されて、数字“２”が表示される。
【００３３】
ステップＳ１０４で外部表示器７０には“２”表示信号が出力されて、数字“２”が表示された後に、図３（Ｂ）のステップＳ１０５では遷移状態“ＳＴ１”へ遷移する条件が不成立（Ｎｏ）で、ステップＳ１０６では遷移状態“ＳＴ３”へ遷移する条件が不成立（Ｎｏ）で、ステップＳ１０７では遷移状態“ＳＴ４”へ遷移する条件が不成立（Ｎｏ）で、そしてステップＳ１０８では遷移状態“ＳＴ５”へ遷移する条件が不成立（Ｎｏ）であれば、図３（Ｂ）のステップＳ１０４において，図１の外部表示器７０には“２”表示信号が出力されて、数字“２”が表示されるままである。
【００３４】
また、図３（Ｂ）のステップＳ１０５において、遷移状態“ＳＴ１”へ遷移する条件が成立（Ｙｅｓ）したら、図３（Ａ）のステップＳ１０１に戻り、図１のラッチ回路３８から外部表示器７０には“１”表示信号が出力されて、数字“１”が表示される。
【００３５】
図３（Ｂ）のステップＳ１０６において、遷移状態“ＳＴ３”へ遷移する条件が成立（Ｙｅｓ）したら、図４（Ａ）のステップＳ１０９に移り、図１のラッチ回路３８から外部表示器７０には“３”表示信号が出力されて、数字“３”が表示される。
【００３６】
図３（Ｂ）のステップＳ１０７において、遷移状態“ＳＴ４”へ遷移する条件が成立（Ｙｅｓ）したら、図４（Ｂ）のステップＳ１１２に移り、図１のラッチ回路３８から外部表示器７０には“４”表示信号が出力されて、数字“４”が表示される。
【００３７】
図３（Ｂ）のステップＳ１０８において、遷移状態“ＳＴ５”へ遷移する条件が成立（Ｙｅｓ）したら、図５のステップＳ１１６に移り、図１のラッチ回路３８から外部表示器７０には“５”表示信号が出力されて、数字“５”が表示される。
【００３８】
次に、図４（Ａ）のステップＳ１０９に移り、図１のラッチ回路３８から外部表示器７０には“３”表示信号が出力されて、数字“３”が表示された後に、ステップＳ１１０では遷移状態“ＳＴ２”へ遷移する条件が不成立（Ｎｏ）で、ステップＳ１１１では遷移状態“ＳＴ５”へ遷移する条件が不成立（Ｎｏ）であれば、図４（Ａ）のステップＳ１０４において図１の外部表示器７０には“３”表示信号が出力されて、数字“３”が表示されるままである。
【００３９】
図４（Ａ）のステップＳ１１０において遷移状態“ＳＴ２”へ遷移する条件が成立（Ｙｅｓ）したら、図３（Ａ）のステップＳ１０４に戻り、図１のラッチ回路３８から外部表示器７０には“２”表示信号が出力されて、数字“２”が表示される。
【００４０】
図４（Ａ）のステップＳ１１１において遷移状態“ＳＴ５”へ遷移する条件が成立（Ｙｅｓ）したら、図５のステップＳ１１６に進み、図１のラッチ回路３８から外部表示器７０には“５”表示信号が出力されて、数字“５”が表示される。
【００４１】
さらに、図４（Ｂ）のステップＳ１１２に移り、図１のラッチ回路３８から外部表示器７０には“４”表示信号が出力されて、数字“４”が表示された後に、ステップＳ１１３では遷移状態“ＳＴ１”へ遷移する条件が不成立（Ｎｏ）で、ステップＳ１１４では遷移状態“ＳＴ２”へ遷移する条件が不成立（Ｎｏ）で、そしてステップＳ１１５では遷移状態“ＳＴ５”へ遷移する条件が不成立（Ｎｏ）であれば、図４（Ｂ）のステップＳ１１２において図１の外部表示器７０には“４”表示信号が出力されて、数字“４”が表示されるままである。
【００４２】
図４（Ｂ）のステップＳ１１３において遷移状態“ＳＴ１”へ遷移する条件が成立（Ｙｅｓ）したら、図３（Ａ）のステップＳ１０１に戻り、図１のラッチ回路３８から外部表示器７０には“１”表示信号が出力されて、数字“１”が表示される。
【００４３】
図４（Ｂ）のステップＳ１１４において遷移状態“ＳＴ２”へ遷移する条件が成立（Ｙｅｓ）したら、図３（Ｂ）のステップＳ１０４に進み、図１のラッチ回路３８から外部表示器７０には“２”表示信号が出力されて、数字“２”が表示される。
【００４４】
図４（Ｂ）のステップＳ１１５において遷移状態“ＳＴ５”へ遷移する条件が成立（Ｙｅｓ）したら、図５のステップＳ１１６に進み、図１のラッチ回路３８から外部表示器７０には“５”表示信号が出力されて、数字“５”が表示される。
【００４５】
図５のステップＳ１１６では、図１のラッチ回路３８から外部表示器７０には“５”表示信号が出力されて、数字“５”が表示された後に、ステップＳ１１７では遷移状態“ＳＴ２”へ遷移する条件が不成立（Ｎｏ）で、ステップＳ１１８では遷移状態“ＳＴ３”へ遷移する条件が不成立（Ｎｏ）で、そしてステップＳ１１９では遷移状態“ＳＴ４”へ遷移する条件が不成立（Ｎｏ）であれば、図５のステップＳ１１６において図１の外部表示器７０には“５”表示信号が出力されて、数字“５”が表示されるままである。
【００４６】
図５のステップＳ１１７において遷移状態“ＳＴ２”へ遷移する条件が成立（Ｙｅｓ）したら、図３（Ｂ）のステップＳ１０４に戻り、図１のラッチ回路３８から外部表示器７０には“２”表示信号が出力されて、数字“２”が表示される。
【００４７】
図５のステップＳ１１８において遷移状態“ＳＴ３”へ遷移する条件が成立（Ｙｅｓ）したら、図４（Ａ）のステップＳ１０９に進み、図１のラッチ回路３８から外部表示器７０には“３”表示信号が出力されて、数字“３”が表示される。
【００４８】
図５のステップＳ１１９において遷移状態“ＳＴ４”へ遷移する条件が成立（Ｙｅｓ）したら、図４（Ｂ）のステップＳ１１２に進み、図１のラッチ回路３８から外部表示器７０には“４”表示信号が出力されて、数字“４”が表示される。
【００４９】
このように、遷移状態が変化した際に、外部表示器用駆動信号である遷移状態を示す信号６０が、ラッチ回路３８で一旦保持されて、このラッチ回路３８から外部表示器７０に出力されることで、外部表示器７０に表示する数字を変えて表示することができ、作業者はステートマシン３５の遷移状態が目視で確認できる。
【００５０】
以上説明したようなステートマシン３５は、何らかの異常が発生して回路が動作を停止しても、ラッチ回路３８異常が発生した遷移状態をラッチして外部表示器７０において表示したまま保持できるので、作業者がどの遷移状態にあるかを目視で確認できるので、異常発生原因を調査して分析する際に役に立つ。
【００５１】
本発明のステートマシンは、あらかじめ決められた複数の状態を決められた条件に従って決められた順番で遷移してゆくステートマシンにおいて、前記ステートマシンの遷移状態を示す信号を出力する信号出力部と、前記信号出力部から外部へ出力する前記遷移状態を示す信号を保持する信号保持部と、を備えることを特徴とする。これにより、ステートマシンのテストにおいて何らかの異常が発生した際には、高度な解析手法ではなく、どの遷移状態（ステート）で異常が発生したかを知ることができる。
【００５２】
従来技術では、ステートマシンの外部に専用回路を設けて、ステートマシンの動作監視を行うのに対して、本発明の実施形態のステートマシンでは、内部に遷移状態を示す信号を出力する信号出力(回路)部を備えており、ステートマシンの外部に特別な監視回路や装置を設ける必要がなく、簡易に監視できる。本発明の実施形態のステートマシンは、好ましくは産業機械のコントローラに搭載され、特にステートマシンに問題が発生した際にデバッグ効率の向上が図れる、
本発明のステートマシンでは、前記遷移状態を示す信号は、外部表示器に前記遷移状態を表示させるための信号であることを特徴とする。これにより、外部表示器は、ステートマシンの遷移状態を表示できる。
【００５３】
本発明のステートマシンでは、前記外部表示器に前記遷移状態を表示させるための信号は、７セグメントの発光素子を有する表示器を駆動して前記遷移状態を表示させる信号であることを特徴とする。これにより、７セグメントで示す数字により、ステートマシンの遷移状態を表示させることができる。
【００５４】
本発明は、上記実施形態に限定されず、種々の変形をおこなうことができる。
【００５５】
外部表示器７０は、具体的には例えば７セグメント形式のＬＥＤ（発光ダイオード）表示器に限らず、液晶表示装置や有機ＥＬ表示装置や蛍光表示装置等を採用できる。
【００５６】
さらに、本発明の実施の形態に開示されている複数の構成要素を適宜組み合わせることにより種々の発明を形成できる。例えば、本発明の実施の形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施の形態に亘る構成要素を適宜組み合わせてもよい。
【符号の説明】
【００５７】
３０          システムＬＳＩ
３５          ステートマシン
３７          信号出力部
３８          ラッチ回路
４０          外部からの入力信号類
５０          外部への出力信号類
６０          遷移状態を示す信号
【図１】
2010218004.tif 000003
【図２】
2010218004.tif 000004
【図３】
2010218004.tif 000005
【図４】
2010218004.tif 000006
【図５】
2010218004.tif 000007