こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

VHDL ステートマシン

VHDLで記述したソースに対して、指摘を受けました。

『ステートマシンの状態をTYPEで宣言しているが、論理合成をしたときに、どのステートがどの値かが不明なため、実機デバッグをする際に、モニター出力した場合、ステートが確認できない。場合によっては、合成の都度、ステートのビット割付けが変わる。
ステートはconstant文を使って、設計者が値を割付けるべきである。』

ここでお聞きしたいのは、2点です。
(1)このご指摘は正しいのでしょうか。
(2)可能であれば、変更したくない(現状のままとしたい)のですが、どういった理由付けをすれば
  いいでしょうか。

投稿日時 - 2011-12-07 21:35:37

QNo.7177165

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

(1)合成ツールにもよりますが、多くの場合、ステートマシンの中味を変えない限りビット割付けは変わらないと思います。 ですが、合成ツールを変える可能性や、バージョンアップのある将来まで考えると、設計者が割り付けたほうが安全だと思います。
(2)手に入る限りの合成ツールで割付がどうなるか試してみて、割付が変わらないようであれば、説得力を持つかもしれませんが、調べる方が大変そうで、お金もかかるかもしれません。
また、ごく単純なステートマシンで、ステートマシンの入力・出力をモニターすれば、内部状態がわからなくても良いような場合は、合成に割付をまかせても良いとおもいますが。

投稿日時 - 2011-12-08 13:15:40

あなたにオススメの質問