Hello forum team,
it is highly recommended in Section 5.11.5 and 5.11.6 of TMS570LS4357 safety manual (SPNU574) to use "transaction ECC" and "transaction parity".
According to the answer to the previous question I asked, transaction parity is not covered by the CPU interconnect self test (described in TRM SPNU563, Section 3.3.2 "How to Initiate Self-test Sequence").
http://e2e.ti.com/support/microcontrollers/hercules/f/312/p/359048/1260592.aspx
Question 1: Is Transaction ECC tested by the CPU interconnect self test? If not, how to test this feature?
Question 2: I have started the transaction parity test by setting SCMCNTRL to 0x0A050505 as described in section 3.3.1 in the TRM. After the store instruction, I see that 4 flags in ESM are set: ESM1.52, ESM1.70, ESM2.7, ESM2.17. Why is ESM1.53 (Global parity error) not set?
Question 3: Extract from TRM section 3.3.1:
"The interconnect also output an inverted polarity for output control and address signals. Thus, master and slave IP connected to interconnect could potentially generate parity error as well. ... You should clear all parity error status bits residing in master IP, slave IP, or interconnect status registers."
How can I make sure that all master and slave status registers are cleared? Is it enough to check the status registers of the masters and slaves which are shown in the ESM flags? For example, ESM1.52 implies that I shall clear the status register SDC_STATUS, ESM1.70 ---> DMA, ESM2.7 --> L2RAMW, and ESM2.17 --> Flash. Is there any IPs which may store parity status but is not reflected in ESM flags? Usually a new error or error address can't be stored/flagged if an old error is not cleared. Therefore I must ensure all flags triggered by the transaction parity self test are cleared. That's the reason I ask this question.
Thank you and best regards,
Libo