私は無限ループに自分自身を書いたようです.それまたはそのModelsimは、このwhileループの条件をどうするかを知りません:
i = 0;
while(i < 8'b01100100 && !(mem[i] == RC)) begin
i <= i + 1;
end
シミュレーションはこの while ループの条件行を通過できません。誰かが私が間違っていることを指摘できますか?
-編集: while ループを保持するコードの部分:
//if remove credential enable is high
if(RCE == 1'b1) begin
$display ("%d", RC);
$display ("%d", mem[i]);
$display ("%b", !(mem[i] == RC));
while(i < 8'b01100100 && mem[i] != RC) begin
i <= i + 1;
end
if(i < 8'b01100100) begin
mem[i] <= 24'b111111111111111111111111;
end else begin
//do nothing
end
i = 0;
end else begin
//do nothing
end
この部分は、posedge clk と posedge rst のセンシティビティ リストを含む always ブロック内にあります。