URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Go to most recent revision |
Show entire file |
Details |
Blame |
View Log
Rev 997 |
Rev 1319 |
Line 64... |
Line 64... |
SCHED_ADD(tick_job, 0, runtime.sim.cycles + (ttmr & SPR_TTMR_PERIOD) - ttcr);
|
SCHED_ADD(tick_job, 0, runtime.sim.cycles + (ttmr & SPR_TTMR_PERIOD) - ttcr);
|
}
|
}
|
case 2:
|
case 2:
|
if (ttmr & SPR_TTMR_IE) {
|
if (ttmr & SPR_TTMR_IE) {
|
setsprbits(SPR_TTMR, SPR_TTMR_IP, 1);
|
setsprbits(SPR_TTMR, SPR_TTMR_IP, 1);
|
if ((mfspr(SPR_SR) & SPR_SR_TEE) == SPR_SR_TEE)
|
/* be sure not to issue timer exception if an exception occured before it */
|
|
if (((mfspr(SPR_SR) & SPR_SR_TEE) == SPR_SR_TEE) && (!pending.valid))
|
except_handle(EXCEPT_TICK, mfspr(SPR_EEAR_BASE));
|
except_handle(EXCEPT_TICK, mfspr(SPR_EEAR_BASE));
|
else
|
else
|
/* If TEE is currently not set we have to pend tick exception
|
/* If TEE is currently not set we have to pend tick exception
|
by rescheduling. */
|
by rescheduling. */
|
SCHED_ADD(tick_job, 1, runtime.sim.cycles + 1);
|
SCHED_ADD(tick_job, 1, runtime.sim.cycles + 1);
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.