0

100 MHz 信号から 10 クロック サイクルしか持続しないクロックを作成しようとしています。クロックはパルス信号から有効になります。

- パルス信号が 1 になるたびに、clock2 は 100 MHz の clock1 に 10 サイクル追従します。

  • 私はVHDLで作業しています
4

1 に答える 1

0

100 MHzのクロックが入力として与えられているということですか?

そうだとすれば、小さなステートマシンとカウンターがこれにアプローチする良い方法でしょう。ステートマシンには、アイドルカウントの2つの状態があります。次の状態ロジックは、パルス信号がハイの場合、状態をアイドルからカウントに変更します。カウント状態にある間、カウンターはインクリメントし、カウンターが10に達すると、状態はアイドル状態に戻ります。カウント状態のとき、出力ロジックはクロック信号を出力に転送します。アイドル状態のとき、出力は「0」になります。

ステートマシンの作成の詳細については、VHDLでステートマシンを実装する方法を参照してください。

カウンタの作成の詳細については、VHDLのカウンタを参照してください。

clock_inputは入力である100MHzクロックであり、clock_generatedは出力です。

出力ロジックにはマルチプレクサが含まれます。

clock_generated <= clock_input when state=count else '0';
于 2012-09-20T22:52:21.853 に答える