FC2カウンター FPGAの部屋 2つのクロックドメインがある時の同期リセットの入れ方
fc2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

2つのクロックドメインがある時の同期リセットの入れ方

今作製しているキャラクタ生成コントローラは、65MHzと150MHzの2つのクロックドメインを持つ。ステートマシンやフリップフロップなどは、同期リセットを使用している。その場合に、リセットは1系統、例えば、スイッチからチャタリング除去回路(無い場合もあるけど)を通って、そのままFFなどのリセットに入れたのでは、本当はまずいのではないだろうか?
今まで、仕事では非同期リセットのみだったので、あまり考えなかったが、リセットをそれぞれのクロックで2段に同期化して、それぞれのクロックドメインのリセット信号としてみようと思う。
CORE Generator で作った同期FIFOはそのクロックドメインのリセット信号を与えれば良いが、非同期FIFOはどうだろうか?早速、Fifo Generator を起動してみてみた。
async_fifo_reset_1_100124.png

Enable Reset Synchronization というオプションがあった。これで、それぞれのクロックの同期化しているようだ。これだとリセット端子はRST1本だが、Enable Reset Synchronizationのチェックを外すとWR_RST, RD_RSTの2つに分離する。
async_fifo_reset_2_100124.png
WR_RST, RD_RSTの2つに分離した状態で、それぞれのクロックドメインのリセット信号を入れてやってみよう。
  1. 2010年01月24日 05:34 |
  2. FPGAのリセットについて
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/1363-aa58fa56
この記事にトラックバックする(FC2ブログユーザー)