4

VGA アプリケーションを実装する FPGA プログラミング用の Verilog コードをコンパイルしようとしています。QuartusII とアルテラを使用しています。ピクセルごとに画像を取得するために readmemh を適切に使用しようとしています。

今のところ、matlab を使用して画像を RGB テキストに変換しました。それぞれの形式は次のとおりです (例): 03 A0 15 B7 ...

現時点では構文エラーは発生していませんが、それぞれ 50x50 = 2500 ビットのレジスタを 3 つ定義する必要があり、コンパイルが非常に遅くなり、「タイミング要件が満たされていません」という警告が表示されます。

より良い解像度のファイルを使用したい場合 (640x480 は素晴らしいですが、制限がないようです)、それはかなり悪いです。200x200 ピクセルの画像を取得するのに 15 分かかり、.sof ファイルは約 6MB です。

大きな入力に readmemh を使用する方法はありませんか?

それが私が読むためにしたことです

...
reg [7:0] mem_R[0:2499];
reg [7:0] mem_G[0:2499];
reg [7:0] mem_B[0:2499];

initial begin

...

$readmemh("menuR.txt", mem_R);
$readmemh("menuG.txt", mem_G);
$readmemh("menuB.txt", mem_B);

end

そして、私は次のようにアクセスします

if( mem_R[total_current-127510] > 0)
begin
menu_red   = 1;
end

50x50 ピクセルのコンパイル レポート

4

1 に答える 1