Ich habe einen Block, der wie folgt aussieht:Seltsames Verhalten innerhalb Gabelblock
fork
begin
$display("before repeat");
repeat (delay_before_rsp2data) #1ps;
$display("after repeat");
$display("some information");
`ovm_do_on_with("do some stuff");
end
join_none
In fast allen Fällen ist es gut funktioniert, aber in einem Fall (die ich gefunden), nach dem `ovm_do_on_with Linie, es springt zurück zur Wiederholungslinie und von dort fortfahren. Ich weiß, dass dies geschieht, weil das, was angezeigt wird, ist:
before repeat
after repeat
some information
[all the displays from the `ovm_do_on_with part]
after repeat
some information
[all the displays from the `ovm_do_on_with part]
Ich habe versucht, im Innern eines die ganze ‚Repeat‘ Linie setzen, bevor Endblock, mit einem for-Schleife wechseln, und ein paar mehr Kombinationen wie die , aber immer das gleiche Verhalten.
Irgendeine Idee, was könnte das verursachen?
Vielleicht sollten Sie eine [MCVE] Post (http://stackoverflow.com/help/mcve). Ich kann das Problem nicht sehen, aber vielleicht müssen Sie Ihre Semikolons überprüfen. Es sollte eins nach den ersten beiden $ Display's geben. –
es ist nicht wirklich verifizierbar, da es nur auf einem bestimmten Seed zu einer bestimmten Zeit passiert, die es in den Block eintritt, ich weiß nicht, ob es weitere Informationen gibt, die ich geben kann. –