Other Parts Discussed in Thread: HALCOGEN
Dear Hercules team,
My customer is facing the following questions with respect to the RM57L843.
They observe a behavior which seems to be close to the one described in the EMIF#3 Silicon Errata.
But, the difference they see is that an Abort is generated by a direct access to a memory cell (which is not acknowledged and times out). Doing afterwards a read access to the EMIF register (after the Abort got handled) is working without an Abort.
Their current workaround is to handle the Abort without additional specific actions. (An empty CCS and HalCoGen project is not doing/including this Abort-handling, so the Abort leads to hang-up the S/W).
Issue description in the Silicon Errata (SPNZ233B):
“Issue After an EMIF time-out error when an external asynchronous memory fails to respond, a read to an EMIF register generates data abort.“
In order to include also the above mentioned effect, the Errata entry should be:
“Issue An EMIF time-out error when an external asynchronous memory fails to respond, generates data abort.“
Can someone please clarify if/how the above described effect is related to the EMIF#3 errata?
The workaround of the EMIF#3 errata does not work for the above described effect.
The bits to set or mask the EMIF-interrupt events do not seem to show any effect.
Which of the 128 interrupts at the VIM should trigger the EMIF interrupt?
Why are the EMIF Interrupt settings not visible in HalCoGen (EMIF ==> General, SDRAM, ASYNC 1…3)?
The expectation would be to find there a possibility to parametrize the EMIF-interrupts (3 Bits in INTMSKSET respective INTMSKCLR) and to find the ISR there.
A timeout should be visible via an Abort, as it looks like to work right now. In order to prevent checking after each EMIF-register access if a timeout happened, a interrupt should be triggered in case a timeout happens. This interrupt-event is described in the EMIF chapter of the user guide. But there is not additional description to this event with respect to the Interrupt Controller VIM documentation nor in HalCoGen.
Please help to clarify this topics.
Thanks,
BR,
Matthias