6‐05 1層目のRAMアクセス(HDL)
●入力チャネル4つを切り替える信号
このタイムチャートのin1ChSelにより入力の4ch(RGB+Dummy)や係数ROMのアドレス・オフセットなどを切り替えます。その生成は図6‐31のように9サイクル毎に0,1,2,3とカウントアップさせます。in1ChSelは2ビットなので3の次は0に戻ります。したがって36サイクル、360nsで一周します。 |
図6‐31 90ns毎に0,1,2,3とカウントアップ。360nsで0に戻る(gts_timing.vhd)
●30x30画素なのでカーネルの動く範囲は28×28
このタイムチャートのCnnPixCount(CNNブロックの水平方向カウンタ)は図6‐32のように生成します。カウントアップのタイミングはcount9=8かつin1ChSel=3なので10ns
x 9 x 4 = 360nsになります。また27でクリアされて0になる「28進カウンタ」になっています。 |
図6‐32 0〜27、0〜27と繰り返すCnnPixCount(gts_timing.vhd)
●10.08us x 28 = 282.24us+休み時間で320us
CnnLineCount(CNNブロックの垂直方向カウンタ)は図6‐33のように生成します。カウントアップのタイミングはCnnPixCount=27なので360ns
x 28 = 10.08usになります。
カウンタは”27”でストップし、クリア信号を待ちます。VgaLineCountMod10=9すなわちVGAの水平同期が10個ぶん(320us)でクリアされます(このように休み時間37.76us発生)。 |
図6‐33 0〜27でストップしてクリアを待つCnnLineCount(gts_timing.vhd)
次のページへ
目次へ戻る
|