次にVBA ProjectからModule2をダブルクリックします。すると図2‐42のようにSub margeTextW1から始まるVBAマクロが現れます。


  図2‐42 Molule2はmargeTextW1()


 マクロ実行ボタン(三角マーク)をクリックします。すると図2‐43のようなダイアログが現れます。


  図2-43 VBAマクロを実行するとVHDLファイルが生成される

 するとVHDLファイルが50個生成されます。最初のROM_W1_00.vhdを開くと図2-44のようになっています。

  図2‐44 VBAマクロが吐き出したVHDLファイル

●画像データも必要

 EXCELの最初のシートのx_in行は画像データですが、これもVHDLファイルに落とす必要があります。VBA ProjectからModule3をダブルクリックするとSub makeTextPixから始まるVBAマクロが現れ、それを実行するとdataPix.txtが生成されます。ファイルは1個だけなので、これは手作業でVHDLにコピペします。

  図2‐45 VBAが吐き出した画像データ。手作業でコピペ

●バイアスも必要

 EXCELの最初のシートの
b1行はバイアスですが、これもVHDLファイルに落とす必要があります。VBA ProjectからModule4をダブルクリックするとSub makeTextB1から始まるVBAマクロが現れ、それを実行するとdataOffset.txtが生成されます。ファイルは1個だけなので、手作業でVHDLにコピペします。

  図2‐46 VBAが吐き出したバイアス。手作業でコピペ

●2層目と3層目も必要

 以上の操作でニューラルネットワーク1層目の重み行列、画像データ、バイアスをVHDLファイルに落とすことができます。
2層目、3層目は次のVBAマクロで生成します。

・2層目
Module5 : 重み行列W2用のテキストファイルを100個生成する
Module6 : 重み行列W2のVHDLファイルを100個生成する
Module7 : バイアスB2用のテキストファイルを1個生成する

・3層目
Module8 : 重み行列W3用のテキストファイルを10個生成する
Module9 : 重み行列W3のVHDLファイルを10個生成する
Module10 : バイアスB3用のテキストファイルを1個生成する


最初のページへ


目次へ戻る