NXP® Semiconductors | MSE9S12XDP512_0L40V |
Mask Set Errata | Rev. April 17, 2012 |
MC9S12XDP512, Mask 0L40V |
This errata sheet applies to the following devices: MC9S12XDP512 |
The mask set is identified by a 5-character code consisting of a version number, a letter, two numerical digits, and a letter, for example 1K79X. All standard devices are marked with a mask set number and a date code. |
Device markings indicate the week of manufacture and the mask set used. The date is coded as four
numerical digits where the first two digits indicate the year and the last two digits indicate the work week.
For instance, the date code "0201" indicates the first week of the year 2002. |
Some MCU samples and devices are marked with an SC, PC, or XC prefix. An SC prefix denotes special/custom device. A PC prefix indicates a prototype device which has undergone basic testing only. An XC prefix denotes that the device is tested but is not fully characterized or qualified over the full range of normal manufacturing process variations. After full characterization and qualification, devices will be marked with the MC or SC prefix. |
MUCtsXXXXX is the tracking number for device errata. It can be used with the mask set and date code to identify a specific erratum. |
Errata Number | Module affected | Brief Description | Work- around |
MUCts01262 | s12x_dbg | Multiple XGATE entries when tracing both CPU and XGATE in Loop1 mode | YES |
MUCts01281 | pit_24b4c | PIT registers mirrored in memory map | YES |
MUCts01283 | s12x_dbg | Read/Write qualification does not work in DBG outside range mode | YES |
MUCts01284 | s12x_dbg | DBGSR flags and trace buffer erroneously initialised by writing to DBGC1 | YES |
MUCts01292 | ipbi_9xdp512 | XGATE registers mirrored in memory map | NO |
MUCts01299 | pim_9xd | Pull devices may be disabled on SCI3 and re-routed SPI0 | YES |
MUCts01304 | xgate | Incorrect trace buffer entries when branching to a conditional branch | YES |
MUCts01306 | xgate | Erroneous trace buffer entry when leaving debug or freeze mode | YES |
MUCts01311 | sci | BKDIF flag may not be successfully cleared | YES |
MUCts01315 | s12x_bdm | Possible manipulation of return address when exiting BDM active mode | YES |
MUCts01332 | s12x_dbg | Range tagging requires both comparator tag bits set. | YES |
MUCts01349 | s12x_dbg | CPU tag hits may generate multiple state sequencer transitions | YES |
MUCts01353 | s12x_mmc | PRU register accesses by BDM hardware commands may be corrupted | YES |
MUCts01354 | s12x_dbg | Tags on CPU instructions can be missed when clock stretching is enabled. | YES |
MUCts01361 | s12x_dbg | Range tagging may miss triggers on last opcode executed in range | YES |
MUCts01365 | s12x_mmc | PRU register accesses by CPU may be corrupted by BDM activity | YES |
MUCts01373 | mscan | MSCAN: Message erroneously accepted if bus error in bit 6 of EOF | YES |
MUCts01377 | sci | Clearing BKDIF by disabling break detect feature is not implemented | YES |
MUCts01381 | s12x_dbg | Program counter read returns wrong value after TAGHI/TAGLO break to BDM | NO |
MUCts01382 | s12x_dbg | Single byte reads of trace buffer are not inhibited | YES |
MUCts01397 | s12x_mmc | CPU misaligned access corrupted if interrupted by XGATE PRU access | YES |
MUCts01449 | s12x_ebi | UDS and LDS do not assert on BDM access in Normal Expanded Mode | NO |
MUCts01450 | s12x_bdm | GO_UNTIL followed by "STOP" or "WAI" may cause loss of synchronisation | YES |
MUCts01466 | s12x_dbg | XGATE breakpoint may not occur | YES |
MUCts01470 | mcu_9s12xdp512 | Unsecure not possible if COP enabled out of reset & timeout period short | NO |
MUCts01504 | xgate | Potential double tag hit when tagging a software breakpoint instruction | YES |
MUCts01522 | s12x_cpu | Spurious interrupt may occur during CCR manipulation | YES |
MUCts01577 | ftx512k4 | ftx512k4 Security Key | NO |
MUCts01660 | s12x_dbg | Comparator matches fail on misaligned word accesses with data comparison | NO |
MUCts01662 | s12x_dbg | Incorrect Detail mode trace buffer entries of S12X peripheral accesses | NO |
MUCts02987 | xgate | XGATE: Carry-Flag may be falsely set by SSEM instruction | YES |
MUCts03123 | s12x_cpu | False tagged breakpoint hits may be reported by the DBG module | YES |
MUCts03391 | atd_10b8c | ATD: Abort of an A/D conversion sequence with write to ATDxCTL0/1/2/3 may not work | YES |
MUCts03414 | spi | SPI: Disabling slave SPI together with clearing CPHA while SS low locks transmit shift register for the next transmission | YES |
MUCts03471 | atd_10b16c | ATD: Abort of an A/D conversion sequence with write to ATDxCTL0/1/2/3 may not work | YES |
MUCts03566 | mscan | MSCAN: Corrupt ID may be sent in early-SOF condition | YES |
MUCts03686 | atd_10b8c | ADC: conversion does not start with 2 consecutive writes to ATDCTL5 | YES |
MUCts03688 | atd_10b16c | ADC: conversion does not start with 2 consecutive writes to ATDCTL5 | YES |
MUCts04072 | pwm_8b8c | PWM: Emergency shutdown input can be overruled | YES |
MUCts04103 | ect_16b8c | ECT: Channel 0 - 3 Input Capture interrupts inhibited when BUFEN=1, LATQ=0 and NOVWx=1 | YES |
MUCts04154 | ect_16b8c | ECT_16B8C: Output compare pulse is inaccurate | YES |
MUCts04200 | pwm_8b8c | PWM: Wrong output value after restart from stop or wait mode | YES |
MUCts04204 | pwm_8b8c | PWM: Wrong output level after shutdown restart in 16bit concatenated channel mode | NO |
MUCts04240 | ftx512k4 | FTX: Flash Command influenced by Backdoor Key write | YES |
MUCts04245 | sci | SCI: RXEDGIF occurs more times than expected in IR mode | YES |
Multiple XGATE entries when tracing both CPU and XGATE in Loop1 mode | MUCts01262 |
When tracing from both the CPU and the XGATE in Loop1 mode, multiple |
Use multiple tracing sessions to trace the XGATE and CPU activity and |
PIT registers mirrored in memory map | MUCts01281 |
The PIT registers between addresses $0340 and $0347 can also be accessed |
Do not access the reserved register space between addresses $0360 and |
Read/Write qualification does not work in DBG outside range mode | MUCts01283 |
Both the RW and the RWE bits in the DBGACTL and DBGCCTL registers have |
An outside range is equivalent to two inside ranges. If an outside range |
DBGSR flags and trace buffer erroneously initialised by writing to DBGC1 | MUCts01284 |
|
By configuring END alignment, the tracing session is immediately |
XGATE registers mirrored in memory map | MUCts01292 |
The XGATE registers between addresses $0380 and $03BF can also be |
Do not access the reserved register space between $03C0 and $03FF. |
Pull devices may be disabled on SCI3 and re-routed SPI0 | MUCts01299 |
Pull devices which are configured on the following pins are not enabled |
Set these pins to input using the data direction register when using |
Incorrect trace buffer entries when branching to a conditional branch | MUCts01304 |
If a jump/branch instruction to a conditional branch is executed while |
Avoid jumps/branches to conditional branch instructions. |
Erroneous trace buffer entry when leaving debug or freeze mode | MUCts01306 |
When the XGATE resumes program execution from debug or freeze mode, the |
BKDIF flag may not be successfully cleared | MUCts01311 |
The BKDIF flag in SCIASR1 register is set when the SCI receives a break |
If the fastest baud rate is selected, BKDIF will be cleared correctly. |
Possible manipulation of return address when exiting BDM active mode | MUCts01315 |
Upon leaving BDM active mode, the CPU return address is stored |
Avoid using the BGND instruction when the ENBDM bit in the BDMSTS |
Range tagging requires both comparator tag bits set. | MUCts01332 |
Debug block guide section 4.2.2 states "The comparator A and C bits are |
To tag in a range specified by ComparatorA and ComparatorB, both DBGACTL |
CPU tag hits may generate multiple state sequencer transitions | MUCts01349 |
CPU instructions that manipulate the stack can cause prolonged taghits. |
1) When tagging CPU instructions and using the state sequencer to |
PRU register accesses by BDM hardware commands may be corrupted | MUCts01353 |
All BDM read and write accesses to the Port Replacement Unit (PRU) |
Do not use hardware commands to access the PRU from the BDM module. |
Tags on CPU instructions can be missed when clock stretching is enabled. | MUCts01354 |
Tags to the CPU can be missed when clock stretching is enabled |
Only use CPU instruction tagging when clock stretching is disabled |
Range tagging may miss triggers on last opcode executed in range | MUCts01361 |
When using range tagging, both bytes of the word should be tagged. |
Avoid the use of very short subroutines that consist of only a single |
PRU register accesses by CPU may be corrupted by BDM activity | MUCts01365 |
Port Replacement Unit (PRU) read and write accesses from the CPU may be |
Do not use BDM hardware commands when the CPU is accessing the PRU |
MSCAN: Message erroneously accepted if bus error in bit 6 of EOF | MUCts01373 |
If a particular error condition occurs within the end of frame segment |
This erratum will not be an issue if the application software is |
Clearing BKDIF by disabling break detect feature is not implemented | MUCts01377 |
Section 5.3.2.8, "BKDIF Description" in the SCI block user guide (v5.00) |
Clear the BKDIF flag manually by writing "1" to the BKDIF flag bit. |
Program counter read returns wrong value after TAGHI/TAGLO break to BDM | MUCts01381 |
A taghit from the TAGHI/TAGLO inputs can lead to double breakpoint |
None. |
Single byte reads of trace buffer are not inhibited | MUCts01382 |
Single byte reads of the trace buffer registers DBGTBH/DBGTBL increment |
Always read the trace buffer registers DBGTBH/DBGTBL using 16-bit word |
CPU misaligned access corrupted if interrupted by XGATE PRU access | MUCts01397 |
CPU accesses to all misaligned memory locations will fail when accessing |
Do not access PRU registers from the XGATE module while performing |
UDS and LDS do not assert on BDM access in Normal Expanded Mode | MUCts01449 |
In Normal Expanded Mode the data select signals /UDS and /LDS always |
None. |
GO_UNTIL followed by "STOP" or "WAI" may cause loss of synchronisation | MUCts01450 |
The BDM module behaves incorrectly if the BDM handshake feature is |
Two workarounds are available: |
XGATE breakpoint may not occur | MUCts01466 |
When tracing using a begin or mid aligned trigger, the tracing session |
If XGATE breakpoints do not occur when expected, using the configuration |
Unsecure not possible if COP enabled out of reset & timeout period short | MUCts01470 |
This issue occurs due to a specification issue. |
There is no workaround if the above conditions have been met. However, |
Potential double tag hit when tagging a software breakpoint instruction | MUCts01504 |
When tagging an XGATE software breakpoint instruction (BRK), there is a |
Do not set XGATE hardware breakpoints at the same location as software |
Spurious interrupt may occur during CCR manipulation | MUCts01522 |
The spurious interrupt vector may be fetched and the associated service |
Do not use the PULCW instruction if an interrupt is pending. |
ftx512k4 Security Key | MUCts01577 |
$0000 and $FFFF are allowed as the first Flash backdoor security key. |
None. |
Comparator matches fail on misaligned word accesses with data comparison | MUCts01660 |
The comparator A and C databus compare feature does not generate a match |
None. |
Incorrect Detail mode trace buffer entries of S12X peripheral accesses | MUCts01662 |
When the module is configured for Detail mode tracing, the trace buffer |
None. |
XGATE: Carry-Flag may be falsely set by SSEM instruction | MUCts02987 |
If the S12X_CPU and the XGATE attempt to lock a semaphore at the same |
Execute two consecutive "SSEM" instructions to set a semaphore. Ignore |
False tagged breakpoint hits may be reported by the DBG module | MUCts03123 |
If the device executes the BACKGROUND command (received over BDM) in the |
If the DBG module indicates a tagged breakpoint hit after the BACKGROUND |
ATD: Abort of an A/D conversion sequence with write to ATDxCTL0/1/2/3 may not work | MUCts03391 |
Starting a conversion with a write to ATDxCTL5 or on an external |
Only write to ATDxCTL4 to abort an ongoing conversion sequence. |
SPI: Disabling slave SPI together with clearing CPHA while SS low locks transmit shift register for the next transmission | MUCts03414 |
With the SPI configured as a slave, clearing the SPE bit (to disable |
When disabling the slave SPI, CPHA should not be cleared at the same time. |
ATD: Abort of an A/D conversion sequence with write to ATDxCTL0/1/2/3 may not work | MUCts03471 |
Starting a conversion with a write to ATDxCTL5 or on an external trigger |
Only write to ATDxCTL4 to abort an ongoing conversion sequence. |
MSCAN: Corrupt ID may be sent in early-SOF condition | MUCts03566 |
The initial eight ID bits will be corrupted if a message is set up for |
Due to increased oscillator tolerance a transmission start in the third |
ADC: conversion does not start with 2 consecutive writes to ATDCTL5 | MUCts03686 |
When the ATD is started with write to ATDCTL5 |
Only write once to ATDCTL5 when starting a conversion. |
ADC: conversion does not start with 2 consecutive writes to ATDCTL5 | MUCts03688 |
When the ATD is started with write to ATDCTL5 |
Only write once to ATDCTL5 when starting a conversion. |
PWM: Emergency shutdown input can be overruled | MUCts04072 |
If the PWM emergency shutdown feature is enabled (PWM7ENA=1) and PWM |
When using the PWM emergency shutdown feature the GPIO function on the |
ECT: Channel 0 - 3 Input Capture interrupts inhibited when BUFEN=1, LATQ=0 and NOVWx=1 | MUCts04103 |
Channel 0 3 Input Capture interrupts are inhibited when BUFEN=1, |
A simple workaround exists for this errata: |
ECT_16B8C: Output compare pulse is inaccurate | MUCts04154 |
The pulse width of an output compare (which resets the free running |
The specification has been updated. Please refer to revision 02.05 (04 |
PWM: Wrong output value after restart from stop or wait mode | MUCts04200 |
In low power modes (stop/p-stop/wait PSWAI=1) and during PWM PP7 |
None. |
PWM: Wrong output level after shutdown restart in 16bit concatenated channel mode | MUCts04204 |
When the PWM is used in 16-bit (concatenation) channel and the emergency |
None. |
FTX: Flash Command influenced by Backdoor Key write | MUCts04240 |
When executing a flash erase verify (0x05) command sequence to a flash |
Write 0x30 to FSTAT register (ACCERR = 1, PVIOL = 1) prior to |
SCI: RXEDGIF occurs more times than expected in IR mode | MUCts04245 |
Configured for Infrared Receive mode, the SCI may incorrectly set the |
Case 1 and case 2 may occurs at same time. To avoid those unexpected |