Download Errata Sheet NG for P11
Transcript
Errata Sheet Detailed Errata Description • • Writes to IMB SFRs (IMB_..., see table in chapter about Program Memory Control in User’s Manual), located in the last 256 bytes of segment FFH Writes to the internal Program Flash address range (mapped in segments C0H and higher), i.e. Flash Command Sequences may either not be executed at all (single cycle commands), or may be executed incorrectly (potentially resulting in a sequence error) A necessary condition for losing a write request is that the write request is followed by a particular read request that gets cancelled (e.g. operand read after mispredicted conditional jump, etc.). Read requests that potentially can cause this critical scenario are the following: • • • Operand reads from the internal Program Flash Operand reads from the PSRAM in segment E8H (with Flash access timing) Operand reads from the External Memory Area via the EBC in the lower 32 Kbytes of segment 0H, in segments 1H...1FH, and in segments 40H...BFH, excluding the I/O area (segments 20H...3FH) Instruction fetches from internal Program Flash or PSRAM, or operand reads from the I/O area (segments 20H...3FH, including USIC and CAN modules) can not trigger the problematic condition. Example 1 MOV [-R1], R12 ; write operand to PSRAM ; assumed: R1 points to PSRAM 2 JMPA+ cc_NN, label1 ; jump predicted taken but not taken ; assumed: R12 is negative 3 ... ... label1: n MOV R3, [R0] ; read operand from Flash ; assumed: R0 points to Flash When instruction n is cancelled due to the mispredicted jump 2 this will erroneously suppress the write to PSRAM by instruction 1. Note that other functions (besides the write) of this instruction 1 will be performed, e.g. the predecrement of R1 due to the addressing mode [-R1]. XC23xx 22 Rel. 1.5, 22.08.2008