In reply to Guozhu He:
while() begin
if(getToken())
break;
end
Does getToken() have any blocking statements in it? Otherwise, this may lock up your simulator.
Forever begin
if()
freeToken();
end
Why do you have a blank if() statement? I’m having trouble understanding the intent of your code. Could you post the freeToken and getToken methods?