6-07 VHDLを書いたり自動生成したり

 回路図を描いたら、それを見ながらVHDLを書きます。ただしROM関係(画像ROM、フィルタ係数ROM)はEXCEL+VBAでVHDLを自動生成させます。


●リードアドレス生成回路

 リスト6-01はこの回路図のCO9とHCO28の部分です。
 CO9はCLKの周期(10ns)でカウントアップし、8まで行くと0に戻ります。カウンタが一周するのに90nsかかります。

 HCO28はCO9=8のときだけカウントアップするのでその周期は90nsになります。27まで行くと0に戻ります。カウンタが一周するのに2.52usかかります。

  リスト6-01 CO9とHCO28の部分

 リスト6-02はVCO28とOFFSETの部分です。
 VCO28はHCO28=27のときだけカウントアップするのでその周期は2.52usになります。27まで行くと0に戻ります。カウンタが一周するのに70.56usかかります。

  リスト6-02 VCO28とOFFSETの部分

 この回路図のOffsetの部分はリスト6-02のように記述します。この値とHCO28を加算し、さらにVCO28を30倍したものと足し込みます。

 VCO28を30倍する際は乗算器を使いません。同リストのように32倍したものから2倍したものを差し引いて30倍を達成します。乗算の一方が定数のときはこのような工夫をして
乗算器を節約することが良くあります。


次のページへ


目次へ戻る