●積和演算の部分
図2‐05の回路図をVHDLで記述するとリスト2‐03のようになります(積和演算)。
画像ROMからの出力X_RD_DATAと、重みROMからの出力MatRomDataが乗算されます(mulout)。なおこの際、X_RD_DATAの最上位に符号ビットが追加され、PixRomDataになります(MatRomDataが符号付きなのでそれに合わせる)。
乗算器は遅延が大きくなるので、乗算後いったんラッチし、遅延の伝搬を断ち切ります(mulout_dly)。
mulout_dlyは累積器の出力(addout_dly)と加算されます(addout)。
addoutは遅延器で遅延されaddout_dlyとなり、それは加算器にフィードバックされます。これにより「累積器」が構成されます。
addoutはaddout_dly_clrのタイミングでラッチされ、MATMUOUTが取り出されます。これが積和演算の結果になります。 |