-1
私はテストベンチのSystemVerilogにバイナリファイルを書き込もうとしました。バイナリ書き込みSystemVerilog
int file = $fopen(path,"w");
if (!file) begin
$error("File could not be open: ", path);
return;
end
$fwrite(file, "%u", 32'h4D424D42);
$fclose(file);
そして、取得結果:私はQuestaSum 10.2cを使用 02 0C 02 0C
。 なぜこの結果が得られますか?ありがとう。
使用%hは、http://www.csee.umbc.edu/portal/help/VHDL/verilog/system.html –
何あなたが得ることを期待しないフォーマットの表示を確認してください?なぜこれが問題なのですか?どうやってファイルを読んでいるのですか? – toolic
%hを使用すると、データは "4D424D42"のテキストとしてファイルに出力されます。 $ fwriteデータ型を呼び出す前に、4状態データ型を2状態にキャストして、正しい結果を得ようとしました。 int tmp = int '(32'h4D424D42); $ fwrite(ファイル "%u"、tmp); –