1 Silicon Errata Summary

Table 1-1. Errata Summary
ModuleFeatureIssue SummaryAffected Revisions
PIC32CX1012BZ25048/WBZ451/WBZ451HPIC32CX1012BZ24032/WBZ450
A0A2A2
Supply Voltage and Power ModeGPIO Output Configuration in Deep Sleep and Extreme Deep Sleep

In Deep Sleep and Extreme Deep Sleep modes, GPIO must not be set to the output state of pin HIGH.

Configuring the GPIO state to pin High during Deep Sleep and Extreme Deep Sleep modes will cause leakage current and potential reliability issues on the Silicon.

This issue is only applicable when the system is in Deep Sleep/Extreme Deep Sleep mode and when GPIO is configured as output state pin HIGH.

X
POR Rearm EventThe POR event is not getting triggered even when the voltage is going below 1.45V.XXX

Analog-to-Digital Converter (ADC)

Level TriggerThe ADC level trigger does not perform burst conversions in Debug mode.XXX
Scan

The Scan list conversions defined in the ADCCSS1 register will restart without finishing the current scan list and do not generate an EOSRDY bit (ADCCON2[29]) end of scan interrupt status if a new trigger event from the STRGSRC[4:0] bits (ADCCON1[20:16]) trigger source occurs before the scan list completion on the shared ADC2 core.

XXX
Wrong VDD33/2 for ADC Internal Input Channel AN11

The ADC internal input channel, AN11, is connected with VDD33/2, but the observed input voltage is

not equal to VDD/2.

X
Analog Comparator (AC)Disabling Analog ComparatorAnalog Comparator output (AC_CMPx) will not be disabled by setting either COMPCTRLx.ENABLE = 0 or PMD1.ACMD = 1.XXX
Incorrect VDD Scaler Reference for AC_CMP0AC_CMP0 is supposed to use a fixed VDD/2 reference when VDD scaler option is used. But the observed reference voltage is not equal to VDD/2.X
Wrong VDD Scaler Reference with CMP0 and CMP1 Enabled ConcurrentlyIncorrect VDD scaler reference voltage is observed when AC_CMP0 and AC_CMP1 are enabled concurrently with the VDD scaler as a reference for both the comparators. Both the comparators will see the same VDD scaler reference.X

Clock Reset Unit (CRU)

Peripheral Bus ClocksThe Power-on Reset (POR) value of the PB3 clock is not correct.XXX

Configurable Custom Logic (CCL)

Enable Protected RegistersThe SEQCTRLx and LUCTRLx registers are enable-protected by the CTRL.ENABLE bit; however, they should be enable-protected by the LUTCTRLx.ENABLE bits.XXX
Output Logic is Stuck when Enabling a LUT with Sequential Logic after the CCL is EnabledWhen the LUT is disabled (LUTCTRL0.ENABLE=0 or LUTCTRL2.ENABLE=0) to clear the flip-flop/latch output and enabled again, the sequential logic is kept under Reset.XXX
PAC Error when Writing CCL.CTRL.SWRST BitWriting the Software Reset bit in the Control A register (CTRLA.SWRST) will trigger a PAC protection error.XXX
Sequential LogicLUT output is corrupted after enabling CCL when sequential logic is used.XXX
DeviceVIL Input Low VoltageThere is degraded VIL/VIH performance when the GPIO pull-up/pull-down resistors are enabled on PB0, PB1, PB2, PB3,PB4, PB5, PB6, PB8 or PB9. These pins may not be able to recognize a logic low level if the pull-up on that pad is enabled.X
VDD min for A0 device is 2.1VSome A0 devices may not operate below 2.1V. X

Device Service Unit (DSU)

Programming or DebuggingDevice debugging and programming is not supported when the device’s supply voltage is greater than 3.0V and the device is operating outside of room temperature.X
CRC32DSU CRC32 will not complete when targeting NVM memory space while the NVM cache is disabled.XXX

Direct Memory Access Controller (DMAC)

DMAC in Debug ModeIn debug mode, DMAC does not restart after a debug halt when DBGCTRL.DBGRUN = 0. XXX
DMA Writeback Descriptor Corruption Issue

Aborting or disabling a DMA channel could lead to a corruption issue in the writeback descriptor of an active channel where there are ongoing transfers.

XXX
Occurrence of Fetch Error

When at least one channel using linked descriptors is already active, a channel Fetch Error (FERR) may occur on enabling a channel with no linked descriptor or when one of the already active channels using linked descriptors may fetch the enabled second descriptor (index 1) of the channel.

These errors can occur when a channel is enabled during the link request of another channel and if the channel number of the enabled channel is lower than the already active channel.

XXX

External Interrupt Controller (EIC)

Edge DetectionWhen enabling EIC, SYNCBUSY.ENABLE is released before EIC is fully enabled. Edge detection can be done only after three cycles of the selected GCLK (GCLK_EIC or CLK_ULP32K).XXX
Asynchronous Edge DetectionWhen the asynchronous edge detection is enabled and the system is in Standby mode, only the first edge will be detected. The following edges are ignored until the system wakes up.XXX
Asynchronous Edge Detection

When the asynchronous edge detection is enabled (without debouncer) and the system is in the Standby Sleep mode, only the first edge will generate an event. The edges following the first edge of the waveform do not generate events until the system wakes up.

XXX

Event System (EVSYS)

Software Event

BUSYCH flag never resets upon software events in synchronous/resynchronized path modes with event detection on falling edges.

If a software event occurs when the EVSYS is set in synchronous/resynchronized path modes (CHANNELn.PATH=0x0/0x1) with event detection set on falling edges (CHANNELn.EDGSEL=0x2), the CHSTATUS.BUSYCHn flag will be set but will never come back to 0. It is, then, impossible to know if the event user for this channel is ready to accept new events or not.

XXX
Spurious Overrun

Overrun interrupt flag may be incorrectly set upon software events in synchronous/resynchronized path modes with event detection on both rising and falling edges.

If a software event occurs when the EVSYS is set in synchronous/resynchronized path modes (CHANNELn.PATH=0x0/0x1) with event detection set on both rising and falling edges (CHANNELn.EDGSEL=0x3), spurious overrun interrupts may occur (INTFLAG.OVRn).

XXX
Spurious Overrun

In the Synchronous mode, spurious overrun interrupts can happen when the generic clock for a channel is always CHANNEL.ONDEMAND=0.

XXX
Flash Controller ModuleSYS Reset Not Getting Released when Asserted Post-Erase Retry

After the Erase Retry operation (using NVMCON2.VREAD1=1), all the operations work as expected until a SYS Reset is asserted. When the SYS Reset is asserted post-Erase Retry, the Reset is stuck and not getting released.

XXX
DMA in Sleep ModeFlash read/write by DMA not working in Standby Sleep mode if Flash power down is enabled.X
Frequency Meter (FREQM)Measurement Clock Stalls

During a measurement slot, the measurement clock stalls (or is very slow), the STATUS.BUSY will never de-assert and the DONE interrupt will not be raised.

XXX
I2CSCL/SDA Transition Time

SCL/SDA minimum transition time is not met in Fast-mode plus (1 MHz).

XXX

Peripheral Access Controller (PAC)

PAC Protection Error in FREQMFREQM reads on the Control B register (FREQM.CTRLB) generate a PAC protection error.XXX
PAC Protection Error in CCLWriting the Software Reset bit in the Control A register (CTRLASWRST) will trigger a PAC protection error.XXX
Prefetch CacheCPU Hang Configuration SwitchCHECON.ADRWS is not hard wired to ‘0’ and is configurable to 1 or 0, with reset/default value as 1. CPU hangs when CHECON.ADRWS configuration switches from 1 to 0 and a Flash read access. While CHECON.ADRWS is switching to ‘0’ (default is ‘1’), the ADRWS will be latched at next clock, and if a Flash read access happens at the same clock, the system hangs waiting for an internal ack due to the PFM cache miss.X
Quad I/O Serial Peripheral Interface (QSPI)QSPI Status Register Bits Not Updated when PB-Bridge-B (PB2_CLK) is Not Equal to System Clock (SYS_CLK)If PB2_CLK is not equal to System Clock (sys_clk), the QSPI Status register bits are not updated.XXX

RAM Error Correction Code (ECC)

ERRADDR Register may Read as ‘0’ when PB-Bridge-B (PB2_CLK) is Not Equal to System Clock (SYS_CLK)If PB2_CLK is not equal to System Clock (sys_clk), ERRADDR register read will not return the failing address (caused by Single Bit Error/Dual Bit Error), instead it may return ‘0’.XXX

Real-Time Counter (RTC)

False Tamper DetectionFalse tamper detections may occur when configuring the RTC INn and OUTn pins.XXX
Incorrect Periodic Daily Event at 23:59:58Periodic Delay Event must be asserted at the end of the prescaler period to be generated on the last second of the day. As the prescaler overflow does not qualify the Periodic Delay Event, the event is generated at the beginning of the prescaler period, hence, one second earlier than specified.XXX
Reset of General Purpose Registers on Tamper DetectionGeneral Purpose Registers n (GPn) are Reset on tamper detection even if GPTRST = 0.XXX
Reset of INTFLAG.TAMPER Bit Fails

When DMA is enabled (CTRLB.DMAEN=1), the INTFLAG.TAMPER bit is not reset by reading the TIMESTAMP register.

XXX
RTC SYNCBUSY Register Bits Not Cleared

Entering the Deep Sleep mode without waiting for SYNCBUSY.ENABLE and SYNCBUSY.COUNTSYNC synchronization completion may freeze these bits statuses.

XXX
Timestamp is Updated Even Tamper Flag is Not ClearedWhen the tamper happens, DMA is triggered and DMA captures TIMESTAMP and TAMPID. INTFLAG.TAMPER flag is not cleared after reading TIMESTAMP.XXX
Timestamp Register is Cleared After Debug Read

The read of the RTC timestamp register in Debug mode will clear the DMA request flag and unlock the TIMESTAMP register, although a debug read does not alter the TIMESTAMP value. Further read of timestamp register by DMA or CPU will return 0x00 because the TIMESTAMP is an RTC core register and can be read only when locked after a capture.

XXX
Write CorruptionAn 8-bit or 16-bit write access for a 32-bit register, or 8-bit write access for a 16-bit register, can fail for the following registers:
  • The COUNT register in COUNT32 mode
  • The COUNT register in COUNT16 mode
  • The CLOCK register in CLOCK mode
XXX
COUNTSYNCWhen COUNTSYNC is enabled, the first COUNT value is not correctly synchronized and, therefore, it is a wrong value.XXX
Tamper Input FilterMajority debouncing, as part of RTC tamper detection, does not work when enabled by setting the Debouncer Majority Enable bit CTRLB.DEBMAJ.XXX
Tamper DetectionUpon enabling the RTC, a false tamper detection could be reported by the RTC. XXX
Tamper Detection TimestampIf an external reset occurs during a tamper detection, the TIMESTAMP register will not be updated when the next tamper detection is triggered.XXX
Unwanted Event and Interrupt Generation

When CTRLA.PRESCALER is set to OFF and either CTRLB.RTCOUT is set or one of the TAMCTRL.DEBNCn bits is set, the RTC prescaler behaves like CTRLA.PRESCALER = DIV1. The periodic events and periodic interrupts will be generated.

XXX

Serial Communication Interface (SERCOM)

Two Stop Bits Mode is Not Supported in SERCOM USART LIN Host ModeTwo stop bits mode (CTRLB.SBMODE=0x1) is not supported in SERCOM USART LIN Host mode (CTRLA.FORM=0x2) in the case where break, sync and identifier fields are automatically transmitted when DATA is written with the identifier (CTRLB.LINCMD=0x2). Only one stop bit mode is supported.XXX
SERCOM LIN Adding Additional Delay Between Break and Sync Bits

In SERCOM USART LIN Host mode (CTRLA.FORM=0x2), in the case where break, sync and identifier fields are automatically transmitted when DATA is written with the identifier (CTRLB.LINCMD=0x2), the LIN Host Header delay between the sync and the ID transmission fields is not correct for the following cases:

CTRLC.HDRDLY=0x2, where the delay between sync and ID transmission fields is 8-bit time instead of 4-bit time.

CTRLC.HDRDLY=0x3, where the delay between sync and ID transmission fields is 14-bit time instead of 4-bit time.

XXX
SERCOM-USART: INTFLAG.TXC being Set Incorrectly

When the USART is used in the 32-bit mode with hardware handshaking (CTS/RTS), the TXC flag may be set before transmission has completed. TXC may incorrectly be set regardless of whether Data Length Enable (LENGTH.LENEN) is set to ‘0’ or ‘1’.

XXX
SERCOM-USART: Overconsumption in Standby Mode

When the SERCOM USART configured as CTRLA.RUNSTDBY = 0 and the receiver is disabled (CTRLB.RXEN = 0), the clock request to the SERCOM generic clock generator feeding the SERCOM will stay asserted during the Standby Sleep mode, leading to unexpected over consumption.

XXX
SERCOM-USART: Flow Control in 32-bit Extension Mode

When the USART is used in the 32-bit mode with hardware handshaking (CTS/RTS), the TXC flag may be set before transmission has completed. TXC may incorrectly be set regardless of whether Data Length Enable (LENGTH.LENEN) is set to ‘0’ or ‘1’.

XXX
SERCOM-USART: Auto-Baud ModeIn USART Auto-Baud mode, missing stop bits are not recognized as inconsistent sync (ISF) or framing (FERR) errors.XXX
SERCOM-USART: Collision DetectionIn USART operating mode with Collision Detection enabled (CTRLB.COLDEN=1), the SERCOM will not abort the current transfer as expected if a collision is detected and if the SERCOM APB Clock is lower than the SERCOM Generic Clock.XXX
SERCOM-USART: SERCOM USART in TX Mode Only

When the SERCOM USART is configured as CTRLA.RUNSTDBY=0 and the Receiver is disabled (CTRLB.RXEN=0), the clock request to the SERCOM generic clock generator feeding the SERCOM will stay asserted during the Standby Sleep mode, leading to unexpected overconsumption.

XXX
SERCOM-USART: Debug ModeIn USART operating mode, if DBGCTRL.DBGSTOP=1, data transmission is not halted after entering Debug mode.XXX
SERCOM-USART: Error Interrupts

The SERCOM USART does not wake from the Standby Sleep mode for ERROR interrupts FERR and PERR.

XXX
SERCOM-USART: 32-bit Extension ModeWhen 32-bit Extension mode is enabled and data to be sent are not in multiples of 4 bytes (which means the length counter must be enabled), additional bytes will be sent over the line.XXX
SERCOM-UART: TXINV and RXINV BitsThe TXINV and RXINV bits in the CTRLA register have inverted functionality.XXX
STATUS.CLKHOLD Bit in Host and Client ModesThe STATUS.CLKHOLD bit in host and client modes can be written; however, it is a read-only status bit.XXX
SERCOM-I2C: Automatic Acknowledge Feature Not UsableThe I2C client AACKEN feature is not usable when doing a repeated start.XXX
SERCOM-I2C: Error Interrupt after Unexpected STOP

When an unexpected STOP occurs on the I2C bus, the STATUS.BUSERR and INTFLAG.ERROR bits are set but may not wake the system from the Standby Sleep mode. An unexpected START will not produce this issue.

XXX
SERCOM-I2C: Repeated Start Not Issued Correctly

For the Host Write operations (excluding the High-Speed mode), in 10-bit addressing mode, writing CTRLB.CMD = 0x1 does not issue a Repeated Start command correctly.

XXX
SERCOM-I2C: I2C in Client ModeIn I2C mode, LENERR, SEXTOUT, LOWTOUT, COLL and BUSERR bits are not cleared when INTFLAG.AMATCH is cleared.XXX
SERCOM-I2C: Client Mode with DMAIn I2C Client Transmitter mode, at the reception of a NACK, if there is still data to be sent in the DMA buffer, the DMA will push a data to the DATA register.XXX
SERCOM-I2C: I2C Client in DATA32B ModeWhen SERCOM is configured as an I2C client in 32-bit Data Mode (DATA32B=1) and the I2C host reads from the I2C client (client transmitter) and outputs its NACK (indicating no more data is needed), the I2C client still receives a DRDY interrupt.XXX
SERCOM-I2C: 10-Bit Addressing ModeThe 10-bit addressing in I2C Client mode is not functional.XXX
SERCOM-I2C: Repeated StartWhen the quick command is enabled (CTRLB.QCEN=1), the software can issue a repeated start by writing either CTRLB.CMD or ADDR.ADDR bit fields. If, in these conditions, SCL Stretch mode is CTRLA.SCLSM=1, a bus error will be generated.XXX
SERCOM-SPI: Data PreloadIn SPI Client mode and with Client Data Preload Enabled (CTRLB.PLOADEN=1), the first data sent from the client will be a dummy byte if the host cannot keep the Client Select (SS) line low until the end of transmission.XXX
SERCOM-SPI: Client Data Preload

Preloading a new SPI data (CTRLB.PLOADEN=1) before going into Standby Sleep mode may lead to extra power consumption.

XXX
SERCOM-SPI: Hardware Client Select ControlWhen Hardware Client Select Control is enabled (CTRLB.MSSEN=1), the Client Select (SS) pin goes high after.XXX
System BusBus Error Address ChecksWhen accessing peripherals on the PB-PIC® bus, an access beyond the implemented memory region 0x4401_FFFF will cause the CPU to hang, waiting for a bus error signal.X

System Configuration Registers

CFGCON0 RegistersCFGCON0.SWOEN is non-functional, which makes the PB7 function SWO during debugging only.X
System Bus QoSThe Power-on Reset values of the CFGPGQOS register sets all bus host QoS values to zero (Background) instead of the required Power-on Reset values.XXX

Timer/Counter for Control Applications (TCC)

Counting-down Mode Not Supported in RAMP2

The Timer/Counter counting-down mode (CTRLBCLR.DIR = CTRLBSET.DIR = 1) is not supported in RAMP2 operations (RAMP2, RAMP2A, RAMP2C, RAMP2CS).

XXX
ALOCK FeatureThe ALOCK feature is not functional.XXX
Hi-resolution in 2RAMP ModeIn 2RAMP mode with Hi-resolution, multiple restarts can be observed when a fault occurs.XXX
LUPD in Descendent Mode

When the TCC is used in the Down-Counting mode, transfer of the PERBUF register value to the PER

register is delayed by one counter cycle, and, therefore, the LUPD feature must not be used with the

PER register.

XXX
Re-trigger in RAMP2 Operations

Re-trigger in RAMP2 operations (RAMP2, RAMP2A, RAMP2C) is not supported if a prescaler is used (CTRLA.PRESCALER ! = 0) and the re-trig of the counter is done on the next GCLK (CTRLA.PRESCSYNC = GCLK or CTRLA.PRESCSYNC = RESYNC).

XXX
Re-trigger

If a Re-trigger event (EVCTRL.EVACTn = 0x1, RETRIGGER) occurs at the Channel Compare Match [n] time, the next Waveform Output [n] is corrupted.

XXX
TCC in Dithering Mode

Using the TCC in the Dithering mode with external retrigger events can lead to an unexpected stretch of right-aligned pulses or shrink of left-aligned pulses.

XXX
TCC in SYNC or RESYNC ModeThe TCC peripheral is not compatible with an EVSYS channel in the SYNC or RESYNC mode.XXX
TCC OutputsTCC0/TCC1 output not working as expected with PPS, output signals not visible on output pins via PPS even though the TCC is working correctly. TCC2 cannot be used to drive external pins.X
MCx Interrupt Status Flag is Not Cleared Automatically

In the capture operation, MC0/MC1 interrupt status flags (INTFLAG.MC0/INTFLAG.MC1) are not automatically cleared when the CC0/CC1 registers are read.

XXX
DMA Request is Not Set on Overflow Condition in One-shot DMA Trigger Mode of RAMP2C OperationTCC Overflow (OVF) will not trigger a DMA request in One-shot DMA trigger (DMAOS) mode of RAMP2C operation.XXX

Timer/Counter (TC)

Issues After Clearing STATUS.PERBUFV/STATUS.CCBUFx flag

When clearing the STATUS.PERBUFV/STATUS.CCBUFx flag, the SYNCBUSY flag is released before the PERBUF/CCBUFx register is restored to its appropriate value.

XXX
Re-trigger

If a Re-trigger event (EVCTRL.EVACTn=0x1, RETRIGGER) occurs at the Channel Compare Match [n] time, the next Waveform Output [n] is corrupted.

XXX
MCx Interrupt Status Flag is Not Cleared Automatically

In a capture operation, MC0/MC1 interrupt status flags (INTFLAG.MC0/INTFLAG.MC1) are not automatically cleared when CC0/CC1 registers are read.

XXX
TC.PER not updated properlyIn the 8-bit mode, the PER register updates using the DMA are not possible in the Standby mode.XXX
TC OutputsTC0/1/2/3 output not working as expected with PPS, output signals are not visible on output pins via PPS even though the TC is working correctly.X
ALOCK FeatureALOCK feature is not functional.XXX

Watchdog Timer (WDT)

Watchdog Counter

When the interval between clearing the watchdog timer (in other words, clearing the Run mode watchdog counter) and the sleep instruction is less than 1 WDT clock cycle, the “Run Mode” watchdog counter is not cleared.

XXX
Note:
  • Cells with ‘X’ indicate the issue is present in this revision of the silicon.
  • Cells with ‘—’ indicate this silicon revision does not exist for this issue.
  • The blank cell indicates the issue was corrected or does not exist in this revision of the silicon.