■出力画像の書き込み
●読み出し→演算→書き込み
図8-54は3層目をVHDL化した際のブロック図です。「画像ROM」にはあらかじめパディングを施された16×16の画素データが入っています。
そして画像ROMのリードアドレスを図8-53にならって生成すれば、im2col関数と同じ順番で画素が出てきます。そうして得られた画素データと重み係数との積和演算(乗算はビットシフトで)を行います。
その後はバイアス加算→Reluと施し、最後に演算結果を「画像RAM」に書き込んで畳み込み3層目は終了です。 |
図8-54 ROMから読んで演算してRAMに書いて終わり
●パディングを施した状態でRAMに書いておくと次の層で楽
X_WR_DATAからは14×14の画素値が出てきますが、これらをパディングを施した状態で画像RAMに書き込んでおくと後々の層で便利になります。
図8-55の白の部分は14×14の画像、灰色の枠はそれにパディングを施して18×18の画像にしたものです。出力パディングの幅は2であることに注意しましょう。
白の画像には0〜195まで番号が付けられています。この番号をn番地と呼ぶことにします。
また灰色の画像には0〜323まで番号が付けられており、この番号をm番地と呼ぶことにします。 |
図8-55 出力のパディングの幅は2なので18x18になる
mとnの関係は同図のように、m = 18V + 38 + H となります。ここでVとは縦方向14進カウンタ(VCO14)の値、Hは横方向14進カウンタ(HCO14)の値です。
したがって図8-56のような回路で画像RAMの書き込みアドレスを生成できます。 |
図8-56 書き込みアドレス生成回路
最初のページへ
目次へ戻る |