シミュレーション用に以下の Verilog コードを作成しました。シミュレーション中は正常に動作しています。
module read_1(clk,reset);
input clk,reset;
reg [0:23]dataout;
reg htpv;
reg [0:23]e_data;
reg[1:24]data_out;
reg [25:0]cpv,cpv_round,e_av;
reg [0:23]data[0:0];
parameter threshold =8388608;
integer i,f1;
always @(negedge reset)
begin
i=0;
$readmemb("ppm_data.txt",data);
dataout=data[0];
e_data=24'b0;
end
always @(negedge clk)
begin
f1=$fopen("xxxx.txt","a");
if(i==0)
begin
data_out=dataout[(i*24)+:24];
e_av=(e_data[0:23])>>4;
e_data=e_data<<24;
cpv=data_out+e_av;
cpv_round=(cpv<threshold)?0:16777215;
htpv=(cpv_round==0)?1:0;
e_data[0:23]=cpv-cpv_round;
$fwrite(f1,"%b",htpv);
i=i+1;
end
$fclose(f1);
end
endmodule
現在、Lattice Diamond を使用して上記のコードを合成していますが、「Map Design」ステップでエラーが発生しています。エラーは以下のとおりです:-
ERROR - map: Design is empty.
ERROR - map: Errors found in users design. Output files not written.
これらのエラーが発生する理由と解決方法。