Delta count overflow
A delta is the internal 'virtual time' step of the simulator, the propagation delay of every virtual gate. During simulation, an assignment to signal 's' leads to a delta delay before the simulator goes around updating every signal dependent upon 's'. After another delta, it does the same again for any signals dependent upon those ones and keeps going until no more signals are dependent upon the last ones updated.

So if, for example, you have two concurrent assignments that create a feedback loop:

a &lt;= b;
 b &lt;= a;

then the simulator gets stuck in a loop: updating a means b needs updating means a needs updating etc. To stop this, the simulator has a limit on the number of deltas of dependent logic it will process before it stops. In practical terms, this is the number of levels of logic gates feeding each other that it will support. By default, this is set to 5000.

If you have more than 5000 logic gates in a chain, you have to change the simulator default but, let's face it, you've got bigger problems anyway with your circuit...

In practice, ModelSim doesn't behave that gracefully with a continuous loop. I've occasionally written endless loops in testbenches by forgetting to put a 'wait' statements in a process. ModelSim doesn't stop after so many deltas, it just locks up. (Hope it's been fixed in newer versions.)

So you need to examine your design here and look for assignments that create a continuous feedback loop without a wait statement in their path.