Всем привет нужна помощь с программой:
module kfn (se1, se2, fout, clk,iout,registreout);
input wire se1;
input wire se2;
input clk;
output reg [0:0] fout;
reg [7:0] summa;
reg [7:0] registre;
output reg [7:0] registreout = 8'b00000000;
reg [7:0] i=0;
reg [7:0] K= 8'b00000100;
output reg [7:0] iout;
always @(posedge se2) begin
if (se1==1) begin
if(se2==0)
registre[i]=1;
end
else begin
registre[i]=0;
end
i=i+1;
iout=i;
if (i==8) begin
registreout=registre;
summa = registreout[0] + registreout[1] + registreout[2] + registreout[3] + registreout[4] + registreout[5] + registreout[6] + registreout[7];
if (summa >= K) begin
fout = 1;
end
end
end
endmodule
se1 и se2 - 2 кнопки. Когда нажимается se2 в i тую позицию registre вписывается "0", если в момент нажатия se2 нажата se1 то в i тую позицию записывается "1".
когда registre заполняет все свои позиции данными, все элементы суммируются и сумма сранивается с K. Если сумма оказывается больше или равна k, то fout = 1.
При компиляции выходят следующие предупреждения:
Warning (10230): Verilog HDL assignment warning at kfn.v(33): truncated value with size 32 to match size of target (8)
Warning (13410): Pin "fout[0]" is stuck at VCC
Warning (13410): Pin "registreout[0]" is stuck at GND
Warning (13410): Pin "registreout[1]" is stuck at GND
Warning (13410): Pin "registreout[2]" is stuck at GND
Warning (13410): Pin "registreout[3]" is stuck at GND
Warning (13410): Pin "registreout[4]" is stuck at GND
Warning (13410): Pin "registreout[5]" is stuck at GND
Warning (13410): Pin "registreout[6]" is stuck at GND
Warning (13410): Pin "registreout[7]" is stuck at GND
не могли бы вы подсказать, что мне сделать чтобы от них избавиться?
PS я понимаю что программа написано жутко коряво, но у меня почему то не получилось сделать чтобы каждая кнопка по отдельности давала 1 или 0, так что пришлось сделать так как есть. Буду рад любому совету. Всем добра.