理論グループのミーティングの報告

日時: 98/10/20
場所: 齋藤理一郎助教授教官室 西5-517

山岡は行列の積を行なう VHDL ソース、またこれに付随する内積計算のアルゴリズムを説明し、沼さんはUPボードにおいてのVGA機能を検証するために作成した LED ボードについて説明した。

山岡

(前回のコメントに対する結果)
コメント 1.
前回まではFPGA内部に配列を "array" で作成し、実際に動作させることを試みたが、論理合成できず、文献などにもより、多次元配列は論理合成出来ないことが分かった。このことにより、まずはメモリを動作させることを目指し、これを計算システムに組み込まなければならない。
コメント 3.
メモリの動作を検証したところ、1 クロック毎にメモリからデータを取り出せることが確認でき、前回指摘された内積計算のアルゴリズム(前回のコメント3と方針参照)が実現可能と考える。

メモリを使用して計算を行なうため、以下のVHDLを作成した。

<行列の積>multi7.vhd (component:mult_add.vhd, mem_ctrl.vhd)

(ソース説明)
前回のソースとほぼ同様の動作を記述しているが、内積計算のアルゴリズムを前回指摘されたものに変更した。
積和器にデータを入力するタイミングは 1 CLK 毎にし、これにより 1 CLK 毎に加算器からの出力をフィードバックした。データをすべて入力したら下図の MUX に信号を与え、偶数番と奇数番の計算結果を加算する。最後のデータを入力してから計算結果を得るための待ち時間としては乗算器 2 CLK 、加算器 2 CLK 、偶数番と奇数番の加算 2 CLK の計 6 CLK である。
現在、動作検証中。
(齋藤先生のコメント)
メモリと効率的に通信できる、データのメモリ格納の方法を考えていくよう勧められた。
以上 山岡 98/10/20/12:20 ------------------------------------------------------

<VGA出力のLEDによる確認>
UP1ボードのVGA出力について、実際に出力できているかを確認するために、VGAのメスコネクタから信号を取り出して、それをLEDで光らせるボードを作成した。VGAの信号は1Vと小さいので、LEDは点灯しない。そのため、途中にアンプを挿入することで信号を増幅させて、LEDを光らせるようにした。

(齋藤先生のコメント)
今回作ったボードを用いて、実際にVGA信号が出力されているかを確認するよう勧められた。
(今後の方針)
シミュレーションでの動作はうまくいっているが、実際にFPGAにダウンロードしても、VGA出力中にデバイスにリセットがかかる。そこで、出力する時間を1万倍にして、UP1ボード上のLEDディスプレイでステートマシンの状態を表示できるようにしたところ、水平同期サイクルに移ったところで、デバイスにリセットがかかることがわかった。
UP1ボードの出力ピンの動作に問題があると思えるので、プログラムにデバイスのリセットがかかるような記述があると言える。だから、LEDボードで出力をしながら、リセットの原因を調べる予定。
以上 沼 98/10/21/16:15