非常に大きなCMOSカメラ画像コードのごく一部であるVerilogモジュールに問題があります。モジュールはclkを取り込み、入力としてリセットし、hsync、vsync、pixclk、およびピクセルデータを吐き出します。コードは画像を読み取り、それをメモリに保存してから、次のようなifelseステートメントを実行します。
if (row_count<NUM_ROWS-1) && (col_count< NUM_COLS)
begin
vsync <=1;
hsync <=1 ;
pixe_data <= mem[row_count*NUM_ROWS+col_count];
end
else if
......
これまで、画像のサイズはNUM_COLSとNUM_ROWSを使用してハードコーディングされていましたが、コードが受信画像の行と列をその場でカウントするようにこれを変更しようとしています。$ fscanf、$ fgets、$ Sscanfなどを使用しようとしましたが、正しい結果が得られません。実際、まったく結果が得られません。シミュレーションがスタックするか、メモリ不足またはfdがnullファイル記述子であると表示されます。また、NUM_ROWSとNUM_COLSを変数に変換すると、定数演算のオペランドが不正であるというエラーが発生します。
この問題に取り組むための別の方法についての洞察を得ることができれば幸いです。
ここに記載されている情報が不十分または不明確な場合は、事前にお詫び申し上げます。
ありがとうSK