Her zaman bir blok içinde bir döngü kullanmak için bir modül uygulamaya çalışıyorum Belirli bir zamanda alınan sinyal sayısını kaydetmek için 0 & 1 bir dizi kullanıyoruz.Verilog: Döngü içinde her zaman
ERROR:Xst:2636 - "Tourniquet.v" line 54: Loop has iterated 10000 times. Use "set -loop_iteration_limit XX" to iterate more.
döngü (n sıfırlamak gibi görünüyor değil) bir zaman bloğunun içinde izin verilmediğini görünüyor:
Ne yazık ki biz hata bu tür aldı. Çeşitli web sitelerine ve foruma baktım ama hiçbir çözüm bulamadım.module Tourniquet(
input t0,
input mvt,
input clk,
output init
);
reg initialisation;
reg [0:99] memoire;
reg count = 0;
reg compteur = 0;
reg n;
assign init = initialisation;
always @(posedge clk)
begin
if (count==99)
begin
if (mvt)
begin
memoire[count]=1;
count=0;
end
else
begin
memoire[count]=0;
count=0;
end
end
else
begin
if (mvt)
begin
memoire[count]=1;
count = count + 1;
end
else
begin
memoire[count]=0;
count = count + 1;
end
end
end
always @(posedge clk)
begin
initialisation = 0;
for (n=0; n<99; n=n+1) compteur = compteur + memoire[n];
if (compteur>10) initialisation = 1;
compteur = 0;
end
endmodule
Ben çözüm bulmak ne de sorun, herhangi bir ipucu veya yardım karşılandı ne olduğu emin olamaz:
İşte benim kodudur. Çok teşekkür ederim!
Teşekkürler, açıktı. Daha karmaşık bir şey düşünüyordum ... –