Counter File 32bit x 256
DPRAMを記憶要素に用いて構成したカウンタファイルです。32ビット長のバイナリカウンタを256本収容
しています。RAMのI/O部にはマルチプレクサ・デマルチプレクサが存在するため、フリップフロップで
構成したカウンタ群と違い、複数のカウンタを同時監視・同時更新することはできませんが、使用する
フリップフロップやLUTは比べ物にならないほど少なく済むという利点があります。
使い方はRAMと同様で、更新したいカウンタを256本の中から選択して更新(カウントアップ、または
クリア)、そしてそれとは別に、読み出したいカウンタを256本の中から選択してリードするというもの
です。カウンタの更新と読み出しは別のポートから独立して実行可能なため、更新はハードロジックで、
読み出しはプロセッサ(ソフトウェア)で行うという使い方も可能です。
通信上の受信データを種類別に分類して計数するだけの統計情報カウンタや、ステートマシンの各ステート
における滞在クロック数をステートごとに計数するダイアグ用カウンタなど、機能上、脇役的なカウンタ
で、回路をあまり消費したくない、RAMが余っているといったケースで役に立つでしょう。
しています。RAMのI/O部にはマルチプレクサ・デマルチプレクサが存在するため、フリップフロップで
構成したカウンタ群と違い、複数のカウンタを同時監視・同時更新することはできませんが、使用する
フリップフロップやLUTは比べ物にならないほど少なく済むという利点があります。
使い方はRAMと同様で、更新したいカウンタを256本の中から選択して更新(カウントアップ、または
クリア)、そしてそれとは別に、読み出したいカウンタを256本の中から選択してリードするというもの
です。カウンタの更新と読み出しは別のポートから独立して実行可能なため、更新はハードロジックで、
読み出しはプロセッサ(ソフトウェア)で行うという使い方も可能です。
通信上の受信データを種類別に分類して計数するだけの統計情報カウンタや、ステートマシンの各ステート
における滞在クロック数をステートごとに計数するダイアグ用カウンタなど、機能上、脇役的なカウンタ
で、回路をあまり消費したくない、RAMが余っているといったケースで役に立つでしょう。
※特に注記のない限り、信号は全て正論理です。
本ソースコードはVHDL版とVerilog版となっております。
詳細は下記の資料ダウンロードをクリックください。
詳細は下記の資料ダウンロードをクリックください。