37. High-Resolution Timer (HRTIM)

37.1 Introduction

The high-resolution timer can generate up to 10 digital signals with highly accurate timings. It is primarily intended to drive power conversion systems such as switch mode power supplies or lighting systems, but can be of general purpose usage, whenever a very fine timing resolution is expected.

Its modular architecture allows to generate either independent or coupled waveforms. The wave-shape is defined by self-contained timings (using counters and compare units) and a broad range of external events, such as analog or digital feedbacks and synchronization signals. This allows to produce a large variety of control signal (PWM, phase-shifted, constant Ton,...) and address most of conversion topologies.

For control and monitoring purposes, the timer has also timing measure capabilities and links to built-in ADC and DAC converters. Last, it features light-load management mode and is able to handle various fault schemes for safe shut-down purposes.

37.2 Main features

37.3 Functional description

37.3.1 General description

The HRTIM can be partitioned into several sub entities:

The master timer is based on a 16-bit up counter. It can set/reset any of the 10 outputs via 4 compare units and it provides synchronization signals to the 5 timer units. Its main purpose is to have the timer units controlled by a unique source. An interleaved buck converter is a typical application example where the master timer manages the phase-shifts between the multiple units.

The timer units are working either independently or coupled with the other timers including the master timer. Each timer contains the controls for two outputs. The outputs set/reset events are triggered either by the timing units compare registers or by events coming from the master timer, from the other timers or from external events.

The output stage has several duties

The burst mode controller can take over the control of one or multiple timers in case of light-load operation. The burst length and period can be programmed, as well as the idle state of the outputs.

The external event and fault signal conditioning logic includes:

The system interface allows the HRTIM to interact with the rest of the MCU:

The HRTIM registers are split into 7 groups:

Note: As a writing convention, references to the 5 timing units in the text and in registers are generalized using the “x” letter, where x can be any value from A to E.

The block diagram of the timer is shown in Figure 281 .

Figure 281. High-resolution timer block diagram

High-resolution timer block diagram showing internal components and external connections.

The block diagram illustrates the internal architecture of the High-Resolution Timer (HRTIM). At the top, external signals hrtim_upd_en[3:1] , hrtim_bm_trg , and hrtim_bm_ck are inputs. The hrtim_in_sync[3:1] and hrtim_out_sync[3:1] signals connect to the Master Timer. The APB bus connects to the APB and peripheral interface and the DMA burst controller. External signals hrtim_adc_trg[4:1] , hrtim_dac_trg[3:1] , hrtim_mst_it[7:1] , and hrtim_dma[6:1] are also connected to the APB and peripheral interface. The Master Timer is connected to five timing units: TIMER A, TIMER B, TIMER C, TIMER D, and TIMER E. Each timer has a Reset input and an Events output. A cross-timer counter reset bus connects the Master Timer to all five timers. The Events outputs of the timers are connected to a Set/Reset crossbar, which has two outputs. The Set/Reset crossbar is connected to the Burst mode controller and the Output stage. The Burst mode controller is connected to the Run/Idle inputs of the Output stage. The Output stage has eight outputs: HRTIM_CHA1 , HRTIM_CHA2 , HRTIM_CHB1 , HRTIM_CHB2 , HRTIM_CHC1 , HRTIM_CHC2 , HRTIM_CHD1 , HRTIM_CHD2 , HRTIM_CHE1 , and HRTIM_CHE2 . The External Events conditioning block receives hrtim_ker_ck , hrtim_pclk , hrtim_evt1[4:1] , and hrtim_evt10[4:1] signals. The Fault conditioning block receives HRTIM_FLT[5:1] , hrtim_in_flt[5:1] , and hrtim_sys_flt signals. The External Events conditioning and Fault conditioning blocks are connected to the Output stage. The diagram is labeled MSv41958V5.

High-resolution timer block diagram showing internal components and external connections.

37.3.2 HRTIM pins and internal signals

The table here below summarizes the HRTIM inputs and outputs, both on-chip and off-chip.

Table 303. HRTIM Input/output summary

Signal nameSignal typeDescription
HRTIM_CHA1,
HRTIM_CHA2,
HRTIM_CHB1,
HRTIM_CHB2,
HRTIM_CHC1,
HRTIM_CHC2,
HRTIM_CHD1,
HRTIM_CHD2,
HRTIM_CHE1,
HRTIM_CHE2
OutputsMain HRTIM timer outputs. They can be coupled by pairs (HRTIM_CHx1 & HRTIM_CHx2) with deadtime insertion or work independently.
HRTIM_FLT[5:1],
hrtim_in_flt[5:1]
Digital inputFault inputs: immediately disable the HRTIM outputs when asserted (5 on-chip inputs and 5 off-chip HRTIM_FLTx inputs).
hrtim_sys_fltDigital inputSystem fault gathering MCU internal fault events (Clock security system, SRAM parity error, Cortex ® -M7 lockup (HardFault), PVD output).
hrtim_in_sync[3:1]Digital InputSynchronization inputs to synchronize the whole HRTIM with other internal or external timer resources:
hrtim_in_sync1: reserved
hrtim_in_sync2: the source is a regular TIMx timer (via on-chip interconnect)
hrtim_in_sync3: the source is an external HRTIM (via the HRTIM_SCIN input pins)
hrtim_out_sync[2:1]Digital outputThe purpose of this output is to cascade or synchronize several HRTIM instances, either on-chip or off-chip:
hrtim_out_sync1: reserved
hrtim_out_sync2: the destination is an off-chip HRTIM or peripheral (via HRTIM_SCOUT output pins)
hrtim_evt1[4:1]Digital inputExternal events. Each of the 10 events can be selected among 4 sources, either on-chip (from other built-in peripherals: comparator, ADC analog watchdog, TIMx timers, trigger outputs) or off-chip (HRTIM_EEVx input pins)
hrtim_evt2[4:1]
hrtim_evt3[4:1]
hrtim_evt4[4:1]
hrtim_evt5[4:1]
hrtim_evt6[4:1]
hrtim_evt7[4:1]
hrtim_evt8[4:1]
hrtim_evt9[4:1]
hrtim_evt10[4:1]
hrtim_upd_en[3:1]Digital inputHRTIM register update enable inputs (on-chip interconnect) trigger the transfer from shadow to active registers

Table 303. HRTIM Input/output summary (continued)

Signal nameSignal typeDescription
hrtim_bm_trgDigital inputBurst mode trigger event (on-chip interconnect)
hrtim_bm_ck[4:1]Digital inputBurst mode clock (on-chip interconnect)
hrtim_adc_trg[4:1]Digital outputADC start of conversion triggers
hrtim_dac_trg[3:1]Digital outputDAC conversion update triggers
hrtim_mst_it[7:1]Digital outputInterrupt requests
hrtim_dma[6:1]Digital outputDMA requests
hrtim_pclkDigital inputAPB clock
hrtim_ker_ckDigital inputHRTIM kernel clock (hereafter mentioned as \( f_{HRTIM} \) ).

37.3.3 Clocks

The HRTIM must be supplied by the \( t_{HRTIM} \) system clock to offer a full resolution. All clocks present in the HRTIM are derived from this reference clock.

Definition of terms

\( f_{HRTIM} \) : main HRTIM clock (hrtim_ker_ck). All subsequent clocks are derived and synchronous with this source.

\( f_{DTG} \) : deadtime generator clock. For convenience, only the \( t_{DTG} \) period ( \( t_{DTG} = 1/f_{DTG} \) ) is used in this document.

\( f_{CHPFRQ} \) : chopper stage clock source.

\( f_{1STPW} \) : clock source defining the length of the initial pulse in chopper mode. For convenience, only the \( t_{1STPW} \) period ( \( t_{1STPW} = 1/f_{1STPW} \) ) is used in this document.

\( f_{BRST} \) : burst mode controller counter clock.

\( f_{SAMPLING} \) : clock needed to sample the fault or the external events inputs.

\( f_{FLTS} \) : clock derived from \( f_{HRTIM} \) which is used as a source for \( f_{SAMPLING} \) to filter fault events.

\( f_{EEVS} \) : clock derived from \( f_{HRTIM} \) which is used as a source for \( f_{SAMPLING} \) to filter external events.

\( f_{pclk} \) (hrtim_pclk): APB bus clock, needed for register read/write accesses

Timer clock and prescaler

Each timer in the HRTIM has its own individual clock prescaler, which allows you to adjust the timer resolution. (See Table 304 ).

Table 304. Timer resolution and min. PWM frequency for \( f_{HRTIM} = 400 \) MHz

CKPSC[2:0] (1)Prescaling ratio\( f_{COUNTER} \)ResolutionMin PWM frequency
1011400 MHz2.5 ns6.1 kHz
1102400/2 MHz = 200 MHz5 ns3.05 kHz
1114400/4 MHz = 100 MHz10 ns1.5 kHz

1. CKPSC[2:0] values from 000 to 100 are reserved.

The Full-resolution is available for edge positioning, PWM period adjustment and externally triggered pulse duration.

Initialization

At start-up, it is mandatory to initialize first the prescaler bitfields before writing the compare and period registers. Once the timer is enabled (MCEN or TxCEN bit set in the HRTIM_MCR register), the prescaler cannot be modified.

When multiple timers are enabled, the prescalers are synchronized with the prescaler of the timer that was started first.


Warning: It is possible to have different prescaling ratios in the master and TIMA..E timers only if the counter and output behavior does not depend on other timers' information and signals. It is mandatory to configure identical prescaling ratios in these timers when one of the following events is propagated from one timing unit (or master timer) to another: output set/reset event, counter reset event, update event, external event filter or capture triggers. Prescaler factors not equal will yield to unpredictable results.


Deadtime generator clock

The deadtime prescaler is supplied by \( f_{HRTIM} / 8 / 2^{(DTPRSC[2:0])} \) , programmed with DTPRSC[2:0] bits in the HRTIM_DTxR register.

\( t_{DTG} \) ranges from 2.5 ns to 20 ns for \( f_{HRTIM} = 400 \) MHz.

Chopper stage clock

The chopper stage clock source \( f_{\text{CHPFRQ}} \) is derived from \( f_{\text{HRTIM}} \) with a division factor ranging from 16 to 256, so that \( 1.56 \text{ MHz} \leq f_{\text{CHPFRQ}} \leq 25 \text{ MHz} \) for \( f_{\text{HRTIM}} = 400 \text{ MHz} \) .

\( t_{1\text{STPW}} \) is the length of the initial pulse in chopper mode, programmed with the STRPW[3:0] bits in the HRTIM_CHPxR register, as follows:

\[ t_{1\text{STPW}} = (\text{STRPW}[3:0] + 1) \times 16 \times t_{\text{HRTIM}} \]

It uses \( f_{\text{HRTIM}} / 16 \) as clock source (25 MHz for \( f_{\text{HRTIM}} = 400 \text{ MHz} \) ).

Burst Mode Prescaler

The burst mode controller counter clock \( f_{\text{BRST}} \) can be supplied by several sources, among which one is derived from \( f_{\text{HRTIM}} \) .

In this case, \( f_{\text{BRST}} \) ranges from \( f_{\text{HRTIM}} \) to \( f_{\text{HRTIM}} / 32768 \) (12.2 kHz for \( f_{\text{HRTIM}} = 400 \text{ MHz} \) ).

Fault input sampling clock

The fault input noise rejection filter has a time constant defined with \( f_{\text{SAMPLING}} \) which can be either \( f_{\text{HRTIM}} \) or \( f_{\text{FLTS}} \) .

\( f_{\text{FLTS}} \) is derived from \( f_{\text{HRTIM}} \) and ranges from 400 MHz to 50 MHz for \( f_{\text{HRTIM}} = 400 \text{ MHz} \) .

External Event input sampling clock

The fault input noise rejection filter has a time constant defined with \( f_{\text{SAMPLING}} \) which can be either \( f_{\text{HRTIM}} \) or \( f_{\text{EEVS}} \) .

\( f_{\text{EEVS}} \) is derived from \( f_{\text{HRTIM}} \) and ranges from 400 MHz to 50 MHz for \( f_{\text{HRTIM}} = 400 \text{ MHz} \) .

37.3.4 Timer A..E timing units

The HRTIM embeds 5 identical timing units made of a 16-bit up-counter with an auto-reload mechanism to define the counting period, 4 compare and 2 capture units, as per Figure 282. Each unit includes all control features for 2 outputs, so that it can operate as a standalone timer.

Figure 282. Timer A..E overview

Figure 282. Timer A..E overview block diagram showing the internal architecture of a timing unit. It includes a Prescaler, Counter, Period, Half, Autodelay, Compare 1-4, Capture 1-2, Repetition, Master timer, Other timing units, Set/reset crossbar, Push-pull and deadtime management, Events Blanking and windowing, and external events conditioning. The diagram shows signal flow and control connections between these components.

The diagram illustrates the internal architecture of a Timer A..E timing unit. At the core is a Counter block. It receives input from a Prescaler (driven by \( f_{HRTIM} \) ) and a Reset Management block (RST). The Counter is connected to Capture 1 and Capture 2 blocks, which generate CPT1 and CPT2 interrupt/DMA requests. The Counter also feeds into a Period block, which generates a REP interrupt/DMA request. The Period block is connected to a Counter block, which in turn feeds into a Repetition block. The Counter also feeds into four Compare blocks: Compare 1 , Compare 2 , Compare 3 , and Compare 4 . These compare blocks generate CMP1 , CMP2 , CMP3 , and CMP4 interrupt/DMA requests. Compare 1 is connected to a Half block, Compare 2 to an Autodelay block, Compare 3 to another Autodelay block, and Compare 4 to a third Autodelay block. The Half , Autodelay , and Repetition blocks all feed into a Set / reset crossbar (2 outputs) block. This crossbar block also receives inputs from a Master timer (6 lines) and Other timing units (9 lines). It generates Out 1 and Out 2 signals to the output stage. The crossbar block is connected to a Push-pull and deadtime management block, which also receives inputs from CMP1 , CMP2 , CMP3 , CMP4 , and an Update signal. This management block is connected to an Events Blanking and windowing block, which receives inputs from From external events conditioning (10 lines). A legend indicates that a Register (represented by a double box) denotes a register with preload, and a jagged arrow represents an Interrupt / DMA request . The diagram is labeled MS32258V1.

Figure 282. Timer A..E overview block diagram showing the internal architecture of a timing unit. It includes a Prescaler, Counter, Period, Half, Autodelay, Compare 1-4, Capture 1-2, Repetition, Master timer, Other timing units, Set/reset crossbar, Push-pull and deadtime management, Events Blanking and windowing, and external events conditioning. The diagram shows signal flow and control connections between these components.

The period and compare values must be within a lower and an upper limit related to the high-resolution implementation and listed in Table 305:

Table 305. Period and Compare registers min and max values

CKPSC[2:0] value (1)MinMax
≥ 50x00030xFFFD

1. CKPSC[2:0] values < 5 are reserved.

Note: A compare value greater than the period register value will not generate a compare match event.

Counter operating mode

Timer A..E can operate in continuous (free-running) mode or in single-shot manner where counting is started by a reset event, using the CONT bit in the HRTIM_TIMxCR control register. An additional RETRIG bit allows you to select whether the single-shot operation is retriggerable or non-retriggerable. Details of operation are summarized on Table 306 and on Figure 283 and Figure 284 .

Table 306. Timer operating modes

CONTRETRIGOperating modeStart / Stop conditions
Clocking and event generation
00Single-shot
Non-retriggerable
Setting the TxEN bit enables the timer but does not start the counter.
A first reset event starts the counting and any subsequent reset is ignored until the counter reaches the PER value.
The PER event is then generated and the counter is stopped.
A reset event re-starts the counting operation from 0x0000.
01Single-shot
Retriggerable
Setting the TxEN bit enables the timer but does not start the counter.
A reset event starts the counting if the counter is stopped, otherwise it clears the counter. When the counter reaches the PER value, the PER event is generated and the counter is stopped.
A reset event re-starts the counting operation from 0x0000.
1XContinuous
mode
Setting the TxEN bit enables the timer and starts the counter simultaneously.
When the counter reaches the PER value, it rolls-over to 0x0000 and resumes counting.
The counter can be reset at any time.

The TxEN bit can be cleared at any time to disable the timer and stop the counting.

Figure 283. Continuous timer operation

Timing diagram showing continuous timer operation. The diagram displays four waveforms over time: PER (dashed line), Counter (solid line), Reset (solid line), and Enable (solid line). The Counter waveform shows a sawtooth pattern, starting at 0x0000 and increasing linearly until it reaches the PER value, at which point it rolls over to 0x0000. The Reset signal is shown as a series of pulses. The Enable signal is shown as a single pulse that starts the counter. The text 'Continuous mode (CONT = 1, RETRIG = X)' is displayed at the bottom. The identifier 'MS32259V1' is in the bottom right corner.

Continuous mode (CONT = 1, RETRIG = X)

MS32259V1

Timing diagram showing continuous timer operation. The diagram displays four waveforms over time: PER (dashed line), Counter (solid line), Reset (solid line), and Enable (solid line). The Counter waveform shows a sawtooth pattern, starting at 0x0000 and increasing linearly until it reaches the PER value, at which point it rolls over to 0x0000. The Reset signal is shown as a series of pulses. The Enable signal is shown as a single pulse that starts the counter. The text 'Continuous mode (CONT = 1, RETRIG = X)' is displayed at the bottom. The identifier 'MS32259V1' is in the bottom right corner.

Figure 284. Single-shot timer operation

Timing diagrams for single-shot timer operation in non-retriggerable and retriggerable modes.

The figure consists of two timing diagrams illustrating single-shot timer operation. Both diagrams show four signals over time: PER (Period), Counter, Reset*, and Enable.

Top Diagram: Single-shot mode, non-retriggerable (CONT = 0, RETRIG = 0)

Bottom Diagram: Single-shot mode, retriggerable (CONT = 0, RETRIG = 1)

* Legend:

MS32260V1

Timing diagrams for single-shot timer operation in non-retriggerable and retriggerable modes.

Roll-over event

A counter roll-over event is generated when the counter goes back to 0 after having reached the period value set in the HRTIM_PERxR register in continuous mode.

This event is used for multiple purposes in the HRTIM:

If the initial counter value is above the period value when the timer is started, or if a new period is set while the counter is already above this value, the counter is not reset: it will overflow at the maximum period value and the repetition counter will not decrement.

Timer reset

The reset of the timing unit counter can be triggered by up to 30 events that can be selected simultaneously in the HRTIM_RSTxR register, among the following sources:

Several events can be selected simultaneously to handle multiple reset sources. In this case, the multiple reset requests are ORed. When 2 counter reset events are generated within the same \( f_{HRTIM} \) clock cycle, the last counter reset is taken into account.

Additionally, it is possible to do a software reset of the counter using the TxRST bits in the HRTIM_CR2 register. These control bits are grouped into a single register to allow the simultaneous reset of several counters.

The reset requests are taken into account only once the related counters are enabled (TxCEN bit set).

When the \( f_{HRTIM} \) clock prescaling ratio is above 1, the counter reset event is delayed to the next active edge of the prescaled clock. This allows to maintain a jitterless waveform generation when an output transition is synchronized to the reset event (typically a constant \( T_{on} \) time converter).

Figure 285 shows how the reset is handled for a clock prescaling ratio of 4 ( \( f_{HRTIM} \) divided by 4).

Figure 285. Timer reset resynchronization (prescaling ratio above 32)

Timing diagram showing the resynchronization of a timer reset event. The signals shown are: f_HRTIM (high speed clock), Prescaled clock (f_HRTIM/4), Reset event (asynchronous pulse), Counter (showing values 5, 1, 2, 0, 1), Counter (PER=5) waveform, and TA1 output. The diagram illustrates that although the Reset event occurs asynchronously, the counter only resets to 0 on the next rising edge of the Prescaled clock. TA1 is set high by the reset event and cleared when the counter reaches Compare 1 = 2.

TA1: Set on Timer A reset event, Reset on Compare 1 = 2

MS32261V1

Timing diagram showing the resynchronization of a timer reset event. The signals shown are: f_HRTIM (high speed clock), Prescaled clock (f_HRTIM/4), Reset event (asynchronous pulse), Counter (showing values 5, 1, 2, 0, 1), Counter (PER=5) waveform, and TA1 output. The diagram illustrates that although the Reset event occurs asynchronously, the counter only resets to 0 on the next rising edge of the Prescaled clock. TA1 is set high by the reset event and cleared when the counter reaches Compare 1 = 2.

Repetition counter

A common software practice is to have an interrupt generated when the period value is reached, so that the maximum amount of time is left for processing before the next period begins. The main purpose of the repetition counter is to adjust the period interrupt rate and off-load the CPU by decoupling the switching frequency and the interrupt frequency.

The timing units have a repetition counter. This counter cannot be read, but solely programmed with an auto-reload value in the HRTIM_REPxR register.

The repetition counter is initialized with the content of the HRTIM_REPxR register when the timer is enabled (TXCEN bit set). Once the timer has been enabled, any time the counter is cleared, either due to a reset event or due to a counter roll-over, the repetition counter is decreased. When it reaches zero, a REP interrupt or a DMA request is issued if enabled (REPIE and REPDE bits in the HRTIM_DIER register).

If the HRTIM_REPxR register is set to 0, an interrupt is generated for each and every period. For any value above 0, a REP interrupt is generated after (HRTIM_REPxR + 1) periods. Figure 286 presents the repetition counter operation for various values, in continuous mode.

Figure 286. Repetition rate vs HRTIM_REPxR content in continuous mode

Timing diagram showing the relationship between the Period (PER), Counter, and Repetition Counter (HRTIM_REPxR) for different values of HRTIM_REPxR (0, 1, and 2).

The diagram illustrates the operation of the repetition counter in continuous mode. The top section shows the Period (PER) signal as a dashed line and the Counter as a sawtooth ramp. Below this, three rows show the internal values of the repetition counter for different HRTIM_REPxR settings:

* denotes repetition counter internal values (not readable, for explanation purpose only)

MS32262V1

Timing diagram showing the relationship between the Period (PER), Counter, and Repetition Counter (HRTIM_REPxR) for different values of HRTIM_REPxR (0, 1, and 2).

The repetition counter can also be used when the counter is reset before reaching the period value (variable frequency operation) either in continuous or in single-shot mode (Figure 287 here-below). The reset causes the repetition counter to be decremented, at the exception of the very first start following counter enable (TxCEN bit set).

Figure 287. Repetition counter behavior in single-shot mode

Timing diagram showing the repetition counter behavior in single-shot mode. The diagram includes three horizontal lines: PER (Period), Counter, and Reset. The PER line is a dashed line representing the period threshold. The Counter line shows a sawtooth-like waveform that increases linearly until it reaches the PER level or is reset. The Reset line shows vertical pulses indicating reset events. Below the Reset line, a sequence of internal repetition counter values is shown in hexagonal boxes: 2*, 1*, 0*, 2*, 1*, 0*. An arrow points from the transition to the first 0* value, labeled 'REP event'. A note at the bottom left states: '* denotes repetition counter internal values (not readable, for explanation purpose only)'. A code MS32263V1 is in the bottom right.
Timing diagram showing the repetition counter behavior in single-shot mode. The diagram includes three horizontal lines: PER (Period), Counter, and Reset. The PER line is a dashed line representing the period threshold. The Counter line shows a sawtooth-like waveform that increases linearly until it reaches the PER level or is reset. The Reset line shows vertical pulses indicating reset events. Below the Reset line, a sequence of internal repetition counter values is shown in hexagonal boxes: 2*, 1*, 0*, 2*, 1*, 0*. An arrow points from the transition to the first 0* value, labeled 'REP event'. A note at the bottom left states: '* denotes repetition counter internal values (not readable, for explanation purpose only)'. A code MS32263V1 is in the bottom right.

A reset or start event from the hrtim_in_sync[3:1] source causes the repetition to be decremented as any other reset. However, in SYNCIN-started single-shot mode (SYNCSTRTx bit set in the HRTIM_TIMxCR register), the repetition counter will be decremented only on the 1st reset event following the period. Any subsequent reset will not alter the repetition counter until the counter is re-started by a new request on hrtim_in_sync[3:1] inputs.

Set / reset crossbar

A “set” event correspond to a transition to the output active state, while a “reset” event corresponds to a transition to the output inactive state.

The polarity of the waveform is defined in the output stage to accommodate positive or negative logic external components: an active level corresponds to a logic level 1 for a positive polarity (POLx = 0), and to a logic level 0 for a negative polarity (POLx = 1).

Each of the timing units handles the set/reset crossbar for two outputs. These 2 outputs can be set, reset or toggled by up to 32 events that can be selected among the following sources:

The event sources are ORed and multiple events can be simultaneously selected.

Each output is controlled by two 32-bit registers, one coding for the set (HRTIM_SETxyR) and another one for the reset (HRTIM_RSTxyR), where x stands for the timing unit: A..E and y stands for the output 1or 2 (e.g. HRTIM_SETA1R, HRTIM_RSTC2R,...).

If the same event is selected for both set and reset, it will toggle the output. It is not possible to toggle the output state more than one time per \( t_{\text{HRTIM}} \) period: in case of two consecutive toggling events within the same cycle, only the first one is considered.

The set and reset requests are taken into account only once the counter is enabled (TxCEN bit set), except if the software is forcing a request to allow the prepositioning of the outputs at timer start-up.

Table 307 summarizes the events from other timing units that can be used to set and reset the outputs. The number corresponds to the timer events (such as TIMEVNTx) listed in the register, and empty locations are indicating non-available events.

For instance, Timer A outputs can be set or reset by the following events: Timer B Compare1, 2 and 4, Timer C Compare 2 and 3,... and Timer E Compare 3 will be listed as TIMEVNT8 in HRTIM_SETA1R.

Table 307. Events mapping across Timer A to E

SourceTimer ATimer BTimer CTimer DTimer E
CMP1CMP2CMP3CMP4CMP1CMP2CMP3CMP4CMP1CMP2CMP3CMP4CMP1CMP2CMP3CMP4CMP1CMP2CMP3CMP4
DestinationTimer A----12-3-45-67----89
Timer B12-3------45--6789--
Timer C-12--34------5-6-789
Timer D1--2-3-45-67----8--9
Timer E--12--3456--78-9----

Figure 288 represents how a PWM signal is generated using two compare events.

Figure 288. Compare events action on outputs: set on compare 1, reset on compare 2

Timing diagram showing fHRTIM Clock, Counter (0-11), CMP registers (HRTIM_CMP1AR = 0x0000 0004, HRTIM_CMP2AR = 0x0000 0011), and TA1 Output. The diagram shows the counter rolling over and the output TA1 being set at compare 1 and reset at compare 2. Register settings: HRTIM_SETA1R = 0x0000 0008, HRTIM_RSTA1R = 0x0000 0010.

The figure is a timing diagram illustrating the generation of a PWM signal on the TA1 output using two compare events. The top row shows the fHRTIM Clock as a periodic square wave. The second row shows the Counter values from 0 to 11, which roll over from 11 back to 0. The third row shows the CMP registers, with HRTIM_CMP1AR set to 0x0000 0004 and HRTIM_CMP2AR set to 0x0000 0011. The bottom row shows the TA1 Output, which is set high at the compare event for CMP1 (counter value 4) and reset low at the compare event for CMP2 (counter value 11). The register settings for this configuration are HRTIM_SETA1R = 0x0000 0008 and HRTIM_RSTA1R = 0x0000 0010.

Timing diagram showing fHRTIM Clock, Counter (0-11), CMP registers (HRTIM_CMP1AR = 0x0000 0004, HRTIM_CMP2AR = 0x0000 0011), and TA1 Output. The diagram shows the counter rolling over and the output TA1 being set at compare 1 and reset at compare 2. Register settings: HRTIM_SETA1R = 0x0000 0008, HRTIM_RSTA1R = 0x0000 0010.

Set/Reset on Update events

Half mode

This mode aims at generating square signal with fixed 50% duty cycle and variable frequency (typically for converters using resonant topologies). It allows to have the duty cycle automatically forced to half of the period value when a new period is programmed.

This mode is enabled by writing HALF bit to 1 in the HRTIM_TIMxCR register. When the HRTIM_PERxR register is written, it causes an automatic update of the Compare 1 value with HRTIM_PERxR/2 value.

The output on which a square wave is generated must be programmed to have one transition on CMP1 event, and one transition on the period event, as follows:

The HALF mode overrides the content of the HRTIM_CMP1xR register. The access to the HRTIM_PERxR register only causes Compare 1 internal register to be updated. The user-accessible HRTIM_CMP1xR register is not updated with the HRTIM_PERxR / 2 value.

When the preload is enabled (PREEN = 1, MUDIS, TxUDIS), Compare 1 active register is refreshed on the Update event. If the preload is disabled (PREEN= 0), Compare 1 active register is updated as soon as HRTIM_PERxR is written.

The period must be greater than or equal to 6 periods of the \( f_{HRTIM} \) clock when the HALF mode is enabled.

Capture

The timing unit has the capability to capture the counter value, triggered by internal and external events. The purpose is to:

The capture is done with \( f_{HRTIM} \) resolution.

The timer has 2 capture registers: HRTIM_CPT1xR and HRTIM_CPT2xR. The capture triggers are programmed in the HRTIM_CPT1xCR and HRTIM_CPT2xCR registers.

The capture of the timing unit counter can be triggered by up to 28 events that can be selected simultaneously in the HRTIM_CPT1xCR and HRTIM_CPT2xCR registers, among the following sources:

Several events can be selected simultaneously to handle multiple capture triggers. In this case, the concurrent trigger requests are ORed. The capture can generate an interrupt or a DMA request when CPTxE and CPTxDE bits are set in the HRTIM_TIMxDIER register.

Over-capture is not prevented by the circuitry: a new capture is triggered even if the previous value was not read, or if the capture flag was not cleared.

Figure 289. Timing unit capture circuitry

Figure 289. Timing unit capture circuitry diagram showing the logic for capturing Timer A counter values based on various trigger sources.

The diagram illustrates the timing unit capture circuitry. On the left, multiple input signals are shown entering a block labeled Capture 1 Trigger selection (OR) :

The output of the selection block generates a CPT1 (IRQ & DMA) signal and triggers the Capture block. The Capture block transfers the current value of the Timer A counter into the Capture 1 register . The Timer A counter is driven by a Prescaler , which is clocked by \( f_{HRTIM} \) . A small note in the bottom right corner of the diagram area reads MS32265V1.

Figure 289. Timing unit capture circuitry diagram showing the logic for capturing Timer A counter values based on various trigger sources.

Auto-delayed mode

This mode allows to have compare events generated relatively to capture events, so that for instance an output change can happen with a programmed timing following a capture. In this case, the compare match occurs independently from the timer counter value. It enables the generation of waveforms with timings synchronized to external events without the need of software computation and interrupt servicing.

As long as no capture is triggered, the content of the HRTIM_CMPxR register is ignored (no compare event is generated when the counter value matches the Compare value). Once the capture is triggered, the compare value programmed in HRTIM_CMPxR is summed with the captured counter value in HRTIM_CPTxyR, and it updates the internal auto-delayed compare register, as seen on Figure 290. The auto-delayed compare register is internal to the timing unit and cannot be read. The HRTIM_CMPxR preload register is not modified after the calculation.

This feature is available only for Compare 2 and Compare 4 registers. Compare 2 is associated with capture 1, while Compare 4 is associated with capture 2. HRTIM_CMP2xR and HRTIM_CMP4xR Compares cannot be programmed with a value below 3 \( f_{HRTIM} \) clock periods, as in the regular mode.

Figure 290. Auto-delayed overview (Compare 2 only)

Block diagram of the auto-delayed overview for Compare 2 in the HRTIM. The diagram shows a Counter connected to Capture 1, Compare 2, Compare 1, and Compare 3. Capture 1 is connected to an Adder. The Adder also receives inputs from Compare 2 and a 'Timeout feature if DELCMP2[1..0] = 1x'. The output of the Adder is connected to the 'Autodelayed Compare 2' block. The 'Autodelayed Compare 2' block is connected to a multiplexer (MUX) labeled 'DELCMP2[1..0]'. The MUX has inputs '00' and '100' from the Counter, and its output is connected to Compare 2. The MUX also has inputs '10' and '11' from Compare 1 and Compare 3 respectively. The 'Timeout feature if DELCMP2[1..0] = 1x' is connected to the MUX. The diagram is labeled 'MS32266V1' in the bottom right corner.

The diagram illustrates the internal architecture of the HRTIM for the auto-delayed mode. At the top, a 'Capture 1' block receives a signal from the 'Counter'. The 'Counter' also feeds into a multiplexer (MUX) labeled 'DELCMP2[1..0]'. The MUX selects between '00' and '100' based on the counter value. The output of the MUX is connected to the 'Autodelayed Compare 2' block. The 'Autodelayed Compare 2' block also receives inputs from the 'Add' block and the 'Timeout feature if DELCMP2[1..0] = 1x'. The 'Add' block receives inputs from 'Capture 1', 'Compare 2', and the 'Timeout feature'. The output of the 'Add' block is connected to the 'Autodelayed Compare 2' block. The 'Autodelayed Compare 2' block is connected to a second MUX labeled 'DELCMP2[1..0]'. This MUX selects between '10' and '11' based on the output of the 'Autodelayed Compare 2' block. The output of this MUX is connected to 'Compare 2'. 'Compare 1' and 'Compare 3' are also connected to this MUX. The 'Timeout feature if DELCMP2[1..0] = 1x' is connected to the 'Add' block and the second MUX. The diagram is labeled 'MS32266V1' in the bottom right corner.

Block diagram of the auto-delayed overview for Compare 2 in the HRTIM. The diagram shows a Counter connected to Capture 1, Compare 2, Compare 1, and Compare 3. Capture 1 is connected to an Adder. The Adder also receives inputs from Compare 2 and a 'Timeout feature if DELCMP2[1..0] = 1x'. The output of the Adder is connected to the 'Autodelayed Compare 2' block. The 'Autodelayed Compare 2' block is connected to a multiplexer (MUX) labeled 'DELCMP2[1..0]'. The MUX has inputs '00' and '100' from the Counter, and its output is connected to Compare 2. The MUX also has inputs '10' and '11' from Compare 1 and Compare 3 respectively. The 'Timeout feature if DELCMP2[1..0] = 1x' is connected to the MUX. The diagram is labeled 'MS32266V1' in the bottom right corner.

The auto-delayed Compare is only valid from the capture up to the period event: once the counter has reached the period value, the system is re-armed with Compare disabled until a capture occurs.

DELCMP2[1:0] and DELCMP4[1:0] bits in HRTIM_TIMxCR register allow to configure the auto-delayed mode as follows:

When the capture occurs, the comparison is done with the \( (HRTIM\_CMP2/4xR + HRTIM\_CPT1/2xR) \) value. If no capture is triggered within the period, the behavior depends on the \( DELCMPx[1:0] \) value:

The captures are enabled again at the beginning of the next PWM period.

If the result of the auto-delayed summation is above 0xFFFF (overflow), the value is ignored and no compare event will be generated until a new period is started.

Note: \( DELCMPx[1:0] \) bitfield must be reset when reprogrammed from one value to the other to re-initialize properly the auto-delayed mechanism, for instance:

As an example, Figure 291 shows how the following signal can be generated:

Note: To simplify the figure, the external event signal is shown without any resynchronization delay: practically, there is a delay of 1 to 2 \( f_{HRTIM} \) clock periods between the falling edge and the capture event due to an internal resynchronization stage which is necessary to process external input signals.

Figure 291. Auto-delayed compare

Timing diagram for Figure 291. Auto-delayed compare. The diagram shows the relationship between a Counter, HRTIM_CPT1xR, HRTIM_CMP2xR, HRTIM_CMP1xR, External event, and Output over time. The Counter starts at 0 and increments to 18 before an Update event resets it to 0. HRTIM_CPT1xR holds a 'Previous' value, then captures '7' at the falling edge of the External event. HRTIM_CMP2xR has a preload/active value of 4, which updates to 12 (4+8) after the capture. HRTIM_CMP1xR holds values 3 and 5. The Output is set high when the Counter matches HRTIM_CMP1xR (value 3). It is reset low 4 cycles after the falling edge of the External event (which occurs at counter=7, so reset at counter=11).
Timing diagram for Figure 291. Auto-delayed compare. The diagram shows the relationship between a Counter, HRTIM_CPT1xR, HRTIM_CMP2xR, HRTIM_CMP1xR, External event, and Output over time. The Counter starts at 0 and increments to 18 before an Update event resets it to 0. HRTIM_CPT1xR holds a 'Previous' value, then captures '7' at the falling edge of the External event. HRTIM_CMP2xR has a preload/active value of 4, which updates to 12 (4+8) after the capture. HRTIM_CMP1xR holds values 3 and 5. The Output is set high when the Counter matches HRTIM_CMP1xR (value 3). It is reset low 4 cycles after the falling edge of the External event (which occurs at counter=7, so reset at counter=11).

A regular compare channel (e.g. Compare 1) is used for the output set: as soon as the counter matches the content of the compare register, the output goes to its active state.

A delayed compare is used for the output reset: the compare event can be generated only if a capture event has occurred. No event is generated when the counter matches the delayed compare value (counter = 4). Once the capture event has been triggered by the external event, the content of the capture register is summed to the delayed compare value to have the new compare value. In the example, the auto-delayed value 4 is summed to the capture equal to 7 to give a value of 12 in the auto-delayed compare register. From this time on, the compare event can be generated and will happen when the counter is equal to 12, causing the output to be reset.

Overcapture management in auto-delayed mode

Overcapture is prevented when the auto-delayed mode is enabled (DEL CMPx[1:0] = 01, 10, 11).

When multiple capture requests occur within the same counting period, only the first capture is taken into account to compute the auto-delayed compare value. A new capture is possible only:

Changing auto-delayed compare values

When the auto-delayed compare value is preloaded (PREEN bit set), the new compare value is taken into account on the next coming update event (for instance on the period event), regardless of when the compare register was written and if the capture occurred (see Figure 291 , where the delay is changed when the counter rolls over).

When the preload is disabled (PREEN bit reset), the new compare value is taken into account immediately, even if it is modified after the capture event has occurred, as per the example below:

  1. 1. At t1, DEL CMP2 = 1.
  2. 2. At t2, CMP2_act = 0x40 => comparison disabled
  3. 3. At t3, a capture event occurs capturing the value CPTR1 = 0x20. => comparison enabled, compare value = 0x60
  4. 4. At t4, CMP2_act = 0x100 (before the counter reached value CPTR1 + 0x40) => comparison still enabled, new compare value = 0x120
  5. 5. At t5, the counter reaches the period value => comparison disabled, cmp2_act = 0x100

Similarly, if the CMP1(CMP3) value changes while DEL CMPx = 10 or 11, and preload is disabled:

  1. 1. At t1, DEL CMP2 = 2.
  2. 2. At t2, CMP2_act = 0x40 => comparison disabled
  3. 3. At t3, CMP3 event occurs - CMP3_act = 0x50 before capture 1 event occurs => comparison enabled, compare value = 0x90
  4. 4. At t4, CMP3_act = 0x100 (before the counter reached value 0x90) => comparison still enabled, Compare 2 event will occur at = 0x140

Push-pull mode

This mode primarily aims at driving converters using push-pull topologies. It also needs to be enabled when the delayed idle protection is required, typically for resonant converters (refer to Section 37.3.9: Delayed Protection ).

The push-pull mode is enabled by setting PSHPLL bit in the HRTIM_TIMxCR register.

It applies the signals generated by the crossbar to output 1 and output 2 alternatively, on the period basis, maintaining the other output to its inactive state. The redirection rate (push-pull frequency) is defined by the timer's period event, as shown on Figure 292 . The push-pull period is twice the timer counting period.

Figure 292. Push-pull mode block diagram

Figure 292. Push-pull mode block diagram. The diagram shows two inputs, 'Out 1 (from crossbar)' and 'Out 2 (from crossbar)', entering a 'Push-Pull logic' block. The logic block is controlled by 'Roll-over events' and a 'PSHPLL' bit. The outputs of the logic block are connected to two multiplexers. Each multiplexer has two inputs: 'Inactive' (0) and the output of the logic block (1). The outputs of the multiplexers are labeled 'Out 1' and 'Out 2', and they are connected 'To the output stage'. The diagram is labeled MS32268V1.
Figure 292. Push-pull mode block diagram. The diagram shows two inputs, 'Out 1 (from crossbar)' and 'Out 2 (from crossbar)', entering a 'Push-Pull logic' block. The logic block is controlled by 'Roll-over events' and a 'PSHPLL' bit. The outputs of the logic block are connected to two multiplexers. Each multiplexer has two inputs: 'Inactive' (0) and the output of the logic block (1). The outputs of the multiplexers are labeled 'Out 1' and 'Out 2', and they are connected 'To the output stage'. The diagram is labeled MS32268V1.

The push-pull mode is only available when the timer operates in continuous mode: the counter must not be reset once it has been enabled (TxCEN bit set). It is necessary to disable the timer to stop a push-pull operation and to reset the counter before re-enabling it.

The signal shape is defined using HRTIM_SETxyR and HRTIM_RSTxyR for both outputs. It is necessary to have HRTIM_SETx1R = HRTIM_SETx2R and HRTIM_RSTx1R = HRTIM_RSTx2R to have both outputs with identical waveforms and to achieve a balanced operation. Still, it is possible to have different programming on both outputs for other uses.

Note: The push-pull operation cannot be used when a deadtime is enabled (mutually exclusive functions).

The CPPSAT status bit in HRTIM_TIMxISR indicates on which output the signal is currently active. CPPSTAT is reset when the push-pull mode is disabled.

In the example given on Figure 293 , the timer internal waveform is defined as follows:

Figure 293. Push-pull mode example

Timing diagram for push-pull mode example showing Period, Counter, Compare 1, Roll-over events, Push-Pull logic, Crossbar output, Output 1, and Output 2 waveforms.

This timing diagram illustrates the push-pull mode operation. It shows the following signals over time:

MS32269V1

Timing diagram for push-pull mode example showing Period, Counter, Compare 1, Roll-over events, Push-Pull logic, Crossbar output, Output 1, and Output 2 waveforms.

Deadtime

A deadtime insertion unit allows to generate a couple of complementary signals from a single reference waveform, with programmable delays between active state transitions. This is commonly used for topologies using half-bridges or full bridges. It simplifies the software: only 1 waveform is programmed and controlled to drive two outputs.

The Dead time insertion is enabled by setting DTEN bit in HRTIM_OUTxR register. The complementary signals are built based on the reference waveform defined for output 1, using HRTIM_SETx1R and HRTIM_RSTx1R registers: HRTIM_SETx2R and HRTIM_RSTx2R registers are not significant when DTEN bit is set.

Note: The deadtime cannot be used simultaneously with the push-pull mode.

Two deadtimes can be defined in relationship with the rising edge and the falling edge of the reference waveform, as in Figure 294.

Figure 294. Complementary outputs with deadtime insertion

Timing diagram for complementary outputs with deadtime insertion showing Counter, Compare, Crossbar output 1, Deadtime rising, Output 1, and Output 2 waveforms.

This timing diagram illustrates the operation with deadtime insertion. It shows the following signals over time:

MS32270V1

Timing diagram for complementary outputs with deadtime insertion showing Counter, Compare, Crossbar output 1, Deadtime rising, Output 1, and Output 2 waveforms.

Negative deadtime values can be defined when some control overlap is required. This is done using the deadtime sign bits (SDTFx and SDTRx bits in HRTIM_DTxR register). Figure 295 shows complementary signal waveforms depending on respective signs.

Figure 295. Deadtime insertion vs deadtime sign (1 indicates negative deadtime)

Timing diagram showing Out 1 (from crossbar) and SDTRx/SDTFx signal waveforms for different deadtime settings. The diagram illustrates four cases: 1) SDTRx=0, SDTFx=0 (no deadtime); 2) SDTRx=1, SDTFx=1 (negative deadtime); 3) SDTRx=0, SDTFx=1 (negative deadtime); 4) SDTRx=1, SDTFx=0 (positive deadtime). Arrows indicate the deadtime rising and falling intervals.

The figure shows four sets of signal waveforms for Out 1 (from crossbar) and SDTRx/SDTFx bits. The top waveform shows Out 1 (from crossbar) with deadtime rising and falling intervals indicated by arrows. The subsequent waveforms show the SDTRx and SDTFx bit settings for different deadtime insertion scenarios:

MS32271V1

Timing diagram showing Out 1 (from crossbar) and SDTRx/SDTFx signal waveforms for different deadtime settings. The diagram illustrates four cases: 1) SDTRx=0, SDTFx=0 (no deadtime); 2) SDTRx=1, SDTFx=1 (negative deadtime); 3) SDTRx=0, SDTFx=1 (negative deadtime); 4) SDTRx=1, SDTFx=0 (positive deadtime). Arrows indicate the deadtime rising and falling intervals.

The deadtime values are defined with DTFx[8:0] and DTRx[8:0] bitfields and based on a specific clock prescaled according to DTPRSC[2:0] bits, as follows:

\[ t_{DTx} = \pm DTx[8:0] \times t_{DTG} \]

where x is either R or F and \( t_{DTG} = (2^{(DTPRSC[2:0])}) \times t_{HRTIM} \) .

Table 308 gives the resolution and maximum absolute values depending on the prescaler value.

Table 308. Deadtime resolution and max absolute values

DTPRSC[2:0] (1)\( t_{DTG} \)\( t_{DTx} \max \)\( f_{HRTIM} = 400 \text{ MHz} \)
\( t_{DTG} \text{ (ns)} \)\( |t_{DTx}| \max \text{ (}\mu\text{s)} \)
011\( t_{HRTIM} \)\( 511 \times t_{DTG} \)2.51.28
100\( 2 \times t_{HRTIM} \)52.56
101\( 4 \times t_{HRTIM} \)105.11
110\( 8 \times t_{HRTIM} \)2010.22
111\( 16 \times t_{HRTIM} \)4020.44

1. DTPRSC[2:0] values 000, 001, 010 are reserved.

Figure 296 to Figure 299 present how the deadtime generator behaves for reference waveforms with pulsewidth below the deadtime values, for all deadtime configurations.

Figure 296. Complementary outputs for low pulse width (SDTRx = SDTFx = 0)

Timing diagram for Figure 296 showing complementary outputs for low pulse width with SDTRx = SDTFx = 0. The diagram shows three waveforms: Ref., TA1, and TA2. The Ref. waveform has two pulses. The TA1 and TA2 waveforms are complementary outputs. The deadtime rising and falling are skipped. The diagram is labeled MS32272V1.

Timing diagram showing complementary outputs (TA1, TA2) for low pulse width (SDTRx = SDTFx = 0). The reference waveform (Ref.) has a pulse width below the deadtime values. The deadtime rising and falling are skipped. The diagram is labeled MS32272V1.

Timing diagram for Figure 296 showing complementary outputs for low pulse width with SDTRx = SDTFx = 0. The diagram shows three waveforms: Ref., TA1, and TA2. The Ref. waveform has two pulses. The TA1 and TA2 waveforms are complementary outputs. The deadtime rising and falling are skipped. The diagram is labeled MS32272V1.

Figure 297. Complementary outputs for low pulse width (SDTRx = SDTFx = 1)

Timing diagram for Figure 297 showing complementary outputs for low pulse width with SDTRx = SDTFx = 1. The diagram shows three waveforms: Ref., TA1, and TA2. The Ref. waveform has two pulses. The TA1 and TA2 waveforms are complementary outputs. The deadtime rising and falling are skipped. The diagram is labeled MS32273V1.

Timing diagram showing complementary outputs (TA1, TA2) for low pulse width (SDTRx = SDTFx = 1). The reference waveform (Ref.) has a pulse width below the deadtime values. The deadtime rising and falling are skipped. The diagram is labeled MS32273V1.

Timing diagram for Figure 297 showing complementary outputs for low pulse width with SDTRx = SDTFx = 1. The diagram shows three waveforms: Ref., TA1, and TA2. The Ref. waveform has two pulses. The TA1 and TA2 waveforms are complementary outputs. The deadtime rising and falling are skipped. The diagram is labeled MS32273V1.

Figure 298. Complementary outputs for low pulse width (SDTRx = 0, SDTFx = 1)

Timing diagram for Figure 298 showing complementary outputs for low pulse width with SDTRx = 0, SDTFx = 1. The diagram shows three waveforms: Ref., HRTIM_CHx1, and HRTIM_CHx2. The Ref. waveform has two pulses. The HRTIM_CHx1 and HRTIM_CHx2 waveforms are complementary outputs. The deadtime falling and rising are skipped. The diagram is labeled MS32274V3.

Timing diagram showing complementary outputs (HRTIM_CHx1, HRTIM_CHx2) for low pulse width (SDTRx = 0, SDTFx = 1). The reference waveform (Ref.) has a pulse width below the deadtime values. The deadtime falling and rising are skipped. The diagram is labeled MS32274V3.

Timing diagram for Figure 298 showing complementary outputs for low pulse width with SDTRx = 0, SDTFx = 1. The diagram shows three waveforms: Ref., HRTIM_CHx1, and HRTIM_CHx2. The Ref. waveform has two pulses. The HRTIM_CHx1 and HRTIM_CHx2 waveforms are complementary outputs. The deadtime falling and rising are skipped. The diagram is labeled MS32274V3.

Figure 299. Complementary outputs for low pulse width (SDTRx = 1, SDTFx=0)

Timing diagram showing three waveforms: Ref., TA1, and TA2. The Ref. signal is a periodic square wave. TA1 and TA2 are complementary outputs. The diagram illustrates two instances where the falling edge of Ref. occurs while TA2 is high. In these cases, the falling edge of Ref. is ignored (skipped) for the purpose of generating the deadtime, and the rising edge of Ref. is used instead. This results in a shorter pulse width for TA1 and a longer pulse width for TA2. The text 'Deadtime Falling and rising skipped' is placed below each instance. The diagram is labeled MS32275V1.
Timing diagram showing three waveforms: Ref., TA1, and TA2. The Ref. signal is a periodic square wave. TA1 and TA2 are complementary outputs. The diagram illustrates two instances where the falling edge of Ref. occurs while TA2 is high. In these cases, the falling edge of Ref. is ignored (skipped) for the purpose of generating the deadtime, and the rising edge of Ref. is used instead. This results in a shorter pulse width for TA1 and a longer pulse width for TA2. The text 'Deadtime Falling and rising skipped' is placed below each instance. The diagram is labeled MS32275V1.

For safety purposes, it is possible to prevent any spurious write into the deadtime registers by locking the sign and/or the value of the deadtime using DTFLKx, DTRLKx, DTFSLKx and DTRSLKx. Once these bits are set, the related bits and bitfields are becoming read only until the next system reset.

Caution: DTEN bit must not be changed in the following cases:

    • - When the timer is enabled (TxEN bit set)
    • - When the timer outputs are set/reset by another timer (while TxEN is reset)
  1. Otherwise, an unpredictable behavior would result.

It is therefore necessary to disable the timer (TxCEN bit reset) and have the corresponding outputs disabled.

For the particular case where DTEN must be set while the burst mode is enabled with a deadtime upon entry (BME = 1, DIDL = 1, IDLEM = 1), it is necessary to force the two outputs in their IDLES state by software commands (SST, RST bits) before setting DTEN bit. This is to avoid any side effect resulting from a burst mode entry that would happen immediately before a deadtime enable.

37.3.5 Master timer

The main purpose of the master timer is to provide common signals to the 5 timing units, either for synchronization purpose or to set/reset outputs. It does not have direct control over any outputs, but still can be used indirectly by the set/reset crossbars.

Figure 300 provides an overview of the master timer.

Figure 300. Master timer overview

Figure 300. Master timer overview diagram showing the internal architecture of the master timer. The diagram includes a Prescaler receiving f_HRTIM, an External Synchronization Unit providing SYNC and Reset signals, a Counter with Start and Reset inputs, a Repetition unit providing REP signals, a Period unit, a Half unit, four Compare units (Compare 1 to 4) with CMP1 to CMP4 outputs, and a Register. The Counter is connected to the Prescaler, External Synchronization Unit, Repetition unit, Period unit, and Compare units. The Period unit is connected to the Counter, Half unit, and To Timer A..E crossbars. The Half unit is connected to the Counter, Period unit, and Compare units. The Compare units are connected to the Counter, Half unit, and To Timer A..E crossbars. The Register is connected to the Counter and Compare units. A legend indicates that a double box around a component denotes a register with preload, and a jagged arrow indicates an interrupt / DMA request.

MS32276V1

Figure 300. Master timer overview diagram showing the internal architecture of the master timer. The diagram includes a Prescaler receiving f_HRTIM, an External Synchronization Unit providing SYNC and Reset signals, a Counter with Start and Reset inputs, a Repetition unit providing REP signals, a Period unit, a Half unit, four Compare units (Compare 1 to 4) with CMP1 to CMP4 outputs, and a Register. The Counter is connected to the Prescaler, External Synchronization Unit, Repetition unit, Period unit, and Compare units. The Period unit is connected to the Counter, Half unit, and To Timer A..E crossbars. The Half unit is connected to the Counter, Period unit, and Compare units. The Compare units are connected to the Counter, Half unit, and To Timer A..E crossbars. The Register is connected to the Counter and Compare units. A legend indicates that a double box around a component denotes a register with preload, and a jagged arrow indicates an interrupt / DMA request.

The master timer is based on the very same architecture as the timing units, with the following differences:

The master timer control register includes all the timer enable bits, for the master and Timer A..E timing units. This allows to have all timer synchronously started with a single write access.

It also handles the external synchronization for the whole HRTIM timer (see Section 37.3.17: Synchronizing the HRTIM with other timers or HRTIM instances ), with both MCU internal and external (inputs/outputs) resources.

Master timer control registers are mapped with the same offset as the timing units' registers.

37.3.6 Set/reset events priorities and narrow pulses management

This section describes how the output waveform is generated when several set and/or reset requests are occurring within 3 consecutive \( t_{HRTIM} \) periods.

An arbitration is performed during each \( t_{HRTIM} \) period, in 2 steps:

  1. 1. For each active event, the desired output transition is determined (set, reset or toggle).
  2. 2. A predefined arbitration is performed among the active events (from highest to lowest priority \( CMP4 \rightarrow CMP3 \rightarrow CMP2 \rightarrow CMP1 \rightarrow PER \) , see Concurrent set request / Concurrent reset requests ).

When set and reset requests from two different sources are simultaneous, the reset action has the highest priority.

Concurrent set request / Concurrent reset requests

When multiple sources are selected for a set event, an arbitration is performed when the set requests occur within the same \( f_{HRTIM} \) clock period.

In case of multiple requests from adjacent timers (TIMEVNT1..9), the request which occurs first is taken into account. The arbitration is done in 2 steps, depending on the source (from the highest to the lowest priority): \( CMP4 \rightarrow CMP3 \rightarrow CMP2 \rightarrow CMP1 \) .

If multiple requests from the master timer occur within the same \( f_{HRTIM} \) clock period, a predefined arbitration is applied and a single request will be taken into account (from the highest to the lowest priority):

\( MSTCMP4 \rightarrow MSTCMP3 \rightarrow MSTCMP2 \rightarrow MSTCMP1 \rightarrow MSTCMPER \)

When multiple requests internal to the timer occur within the same \( f_{HRTIM} \) clock period, a predefined arbitration is applied and the requests are taken with the following priority, whatever the effective timing (from highest to lowest):

\( CMP4 \rightarrow CMP3 \rightarrow CMP2 \rightarrow CMP1 \rightarrow PER \)

Note: Practically, this is of a primary importance only when using auto-delayed Compare 2 and Compare 4 simultaneously (i.e. when the effective set/reset cannot be determined a priori because it is related to an external event). In this case, the highest priority signal must be affected to the CMP4 event.

Last, the highest priority is given to non timing-related: EXTEVNT1..10, RESYNC (coming from SYNC event if SYNCIRSTx or SYNCSTRTx is set or from a software reset), update and software set (SST).

As a summary, in case of simultaneous events, the effective set (reset) event will be arbitrated between:

The same arbitration principle applies for concurrent reset requests. In this case, the reset request has the highest priority.

A set or reset event occurring within the prescaler clock cycle is delayed to the next active edge of the prescaled clock (as for a counter reset), even if the arbitration is still performed every \( t_{\text{HRTIM}} \) cycle.

If a reset event is followed by a set event within the same prescaler clock cycle, the latest event will be considered.

37.3.7 External events global conditioning

The HRTIM timer can handle events not generated within the timer, referred to as “external event”. These external events come from multiple sources, either on-chip or off-chip:

The external events conditioning circuitry allows to select the signal source for a given channel (with a 4:1 multiplexer) and to convert it into an information that can be processed by the crossbar unit (for instance, to have an output reset triggered by a falling edge detection on an external event channel).

Up to 10 external event channels can be conditioned and are available simultaneously for any of the 5 timers. This conditioning is common to all timers, since this is usually dictated by external components (such as a zero-crossing detector) and environmental conditions (typically the filter set-up will be related to the applications noise level and signature).

Figure 301 presents an overview of the conditioning logic for a single channel.

Figure 301. External event conditioning overview (1 channel represented)

Figure 301. External event conditioning overview (1 channel represented). The diagram shows the signal flow for an external event (hrtim_evtX) through various conditioning stages. It starts with source selection (EExSRC[1:0]) from four possible sources (hrtim_evtX[1] to [4]). This is followed by edge and polarity selection (EExPOL, EExSNS[1:0]) using multiplexers and inverters. Then, a filtering stage (Digital Filter and Prescaler) is applied, controlled by EExF[3:0] and EExVSD[1:0] bits. Finally, the signal is split into a synchronous path (EExFAST = 0) and a fast asynchronous path (EExFAST = 1) leading to the Timer A.E and Output stage. The diagram is divided into four functional blocks: Source selection, Edge and polarity, Filtering (hrtim_evt6..10 only), and Fast path (hrtim_evt1..5 only).

The diagram illustrates the external event conditioning for a single channel. It shows the following components and signal paths:

The diagram is divided into four functional blocks: Source selection, Edge and polarity, Filtering (hrtim_evt6..10 only), and Fast path (hrtim_evt1..5 only). The signal flow is from left to right, starting with the external event signals and ending at the Timer A.E and Output stage.

Figure 301. External event conditioning overview (1 channel represented). The diagram shows the signal flow for an external event (hrtim_evtX) through various conditioning stages. It starts with source selection (EExSRC[1:0]) from four possible sources (hrtim_evtX[1] to [4]). This is followed by edge and polarity selection (EExPOL, EExSNS[1:0]) using multiplexers and inverters. Then, a filtering stage (Digital Filter and Prescaler) is applied, controlled by EExF[3:0] and EExVSD[1:0] bits. Finally, the signal is split into a synchronous path (EExFAST = 0) and a fast asynchronous path (EExFAST = 1) leading to the Timer A.E and Output stage. The diagram is divided into four functional blocks: Source selection, Edge and polarity, Filtering (hrtim_evt6..10 only), and Fast path (hrtim_evt1..5 only).

The 10 external events are initialized using the HRTIM_EECR1 and HRTIM_EECR2 registers:

Note: The external events used as triggers for reset, capture, burst mode, ADC triggers and delayed protection are edge-sensitive even if EExSNS bit is reset (level-sensitive selection): if POL = 0 the trigger is active on external event rising edge, while if POL = 1 the trigger is active on external event falling edge.

The external events are discarded as long as the counters are disabled (TxCEN bit reset) to prevent any output state change and counter reset, except if they are used as ADC triggers.

Additionally, it is possible to enable digital noise filters, for external events 6 to 10, using EExF[3:0] bits in the HRTIM_EECR3 register.

A digital filter is made of a counter in which a number N of valid samples is needed to validate a transition on the output. If the input value changes before the counter has

reached the value N, the counter is reset and the transition is discarded (considered as a spurious event). If the counter reaches N, the transition is considered as valid and transmitted as a correct external event. Consequently, the digital filter adds a latency to the external events being filtered, depending on the sampling clock and on the filter length (number of valid samples expected).

The sampling clock is either the \( f_{HRTIM} \) clock or a specific prescaled clock \( f_{EEV_{S}} \) derived from \( f_{HRTIM} \) , defined with EEVSD[1:0] bits in HRTIM_EECR3 register.

Table 309 summarizes the available sources and features associated with each of the 10 external events channels.

Table 309. External events mapping and associated features

External event channelFast modeDigital filterBalanced fault timer A,B,CBalanced fault timer D,ESrc1Src 2Src3Src4
1Yes---PC10COMP1TIM1_TRGOADC1_AWD1
2Yes---PC12COMP2TIM2_TRGOADC1_AWD2
3Yes---PD5-TIM3_TRGOADC1_AWD3
4Yes---PG11OPAMP1 (1)TIM7_TRGOADC2_AWD1
5Yes---PG12-LPTIM1 OUTADC2_AWD2
6-YesYes-PB4COMP1TIM6_TRGOADC2_AWD3
7-YesYes-PB5COMP2TIM7_TRGO-
8-Yes-YesPB6-TIM6_TRGOTTCAN_TMP
9-Yes-YesPB7OPAMP1 (1)TIM15_TRGOTTCAN_RTP
10-Yes--PG13-LPTIM2 OUTTTCAN_SOC
  1. 1. OPAMP1_VOUT can be used as High-resolution timer internal event source. In this case, OPAMP1_VOUT (PC4) pin must be configured in input mode. The data from the GPIO pin is redirect to the HRTIM external events through the pin Schmitt trigger. If OPAMP1 is disabled, PC4 pin, configured in input mode, can be used as HRTIM external events.

Latency to external events

The external event conditioning gives the possibility to adjust the external event processing time (and associated latency) depending on performance expectations:

EExFAST bits in the HRTIM_EECR1 register allow to define the operating for channels 1 to 5. This influences the latency and the jitter present on the output pulses, as summarized in the table below.

Table 310. Output set/reset latency and jitter vs external event operating mode
EExFASTResponse time latencyResponse time jitterJitter on output pulse (counter reset by ext. event)
05 to 6 cycles of \( f_{\text{HRTIM}} \) clock1 cycles of \( f_{\text{HRTIM}} \) clockNo jitter, pulse width maintained with high-resolution
1Minimal latency (depends whether the comparator or digital input is used)Minimal jitter1 cycle of \( f_{\text{HRTIM}} \) clock jitter pulse width resolution down to \( t_{\text{HRTIM}} \)

The EExFAST mode is only available with level-sensitive programming (EExSNS[1:0] = 00); the edge-sensitivity cannot be programmed.

It is possible to apply event filtering to external events (both blanking and windowing with EExFLTR[3:0] != 0000, see Section 37.3.8 ). In this case, EExLTCHx bit must be reset: the postponed mode is not supported, neither the windowing timeout feature.

Note: The external event configuration (source and polarity) must not be modified once the related EExFAST bit is set.

A fast external event cannot be used to toggle an output: it must be enabled either in HRTIM_SETxyR or HRTIM_RSTxyR registers, not in both.

When a set and a reset event - from 2 independent fast external events - occur simultaneously, the reset has the highest priority in the crossbar and the output becomes inactive.

When EExFAST bit is set, the output cannot be changed during the 11 \( f_{\text{HRTIM}} \) clock periods following the external event.

Figure 302 and Figure 303 give practical examples of the reaction time to external events, for output set/reset and counter reset.

Figure 302. Latency to external events falling edge (counter reset and output set)

Timing diagram for Figure 302 showing latency to external events falling edge. It includes signals for fHRTIM clock, External Event, External Event after internal re-synchronisation, HRTIMER counter, HRTIMER output EExFAST = 0, and HRTIMER output EExFAST = 1. The diagram illustrates delays and jitter for counter reset and output set operations.

The diagram shows the timing relationship between an external event and the HRTIMER counter and outputs. The f HRTIM clock is a periodic square wave. The External Event is a signal with a falling edge. The External Event after internal re-synchronisation is the event after it has been processed by the timer's internal logic. The HRTIMER counter shows a sequence of values: 1099, 1100, 1101, 1102, 1103, 1104, followed by a reset to 0, 1, 2, 3, 4, 5, 6. The HRTIMER output EExFAST = 0 is set at the counter reset and reset at counter value 5. The HRTIMER output EExFAST = 1 is set at the counter reset and reset at counter value 5. The diagram indicates a 2-3 cycles delay from the external event to the re-synchronised event. A Counter reset occurs at the re-synchronised event. A 3 cycles delay is shown from the counter reset to the output set. A 5-6 cycles delay total latency is indicated from the external event to the output set. A Jitter-less pulse is shown for EExFAST = 0, set at counter reset and reset at 5. Minimal latency (asynchronous path) and 1 cycle pulse length jitter are indicated for EExFAST = 1, set at counter reset and reset at 5. The identifier MSV39608V1 is present in the bottom right corner.

Timing diagram for Figure 302 showing latency to external events falling edge. It includes signals for fHRTIM clock, External Event, External Event after internal re-synchronisation, HRTIMER counter, HRTIMER output EExFAST = 0, and HRTIMER output EExFAST = 1. The diagram illustrates delays and jitter for counter reset and output set operations.

Figure 303. Latency to external events (output reset on external event)

Timing diagram for Figure 303 showing latency to external events (output reset on external event). It includes signals for fHRTIM clock, External Event, External Event after internal re-synchronisation, HRTIMER output EExFAST = 0, and HRTIMER output EExFAST = 1. The diagram illustrates delays and jitter for output reset operations.

The diagram shows the timing relationship between an external event and the HRTIMER outputs. The f HRTIM clock is a periodic square wave. The External Event is a signal with a falling edge. The External Event after internal re-synchronisation is the event after it has been processed by the timer's internal logic. The HRTIMER output EExFAST = 0 is reset on the external event. The HRTIMER output EExFAST = 1 is reset on the external event. The diagram indicates a 2-3 cycles delay from the external event to the re-synchronised event. A 5-6 cycles delay total is indicated from the external event to the output reset. Minimal latency (asynchronous path) is indicated for EExFAST = 1. The identifier MS32293V1 is present in the bottom right corner.

Timing diagram for Figure 303 showing latency to external events (output reset on external event). It includes signals for fHRTIM clock, External Event, External Event after internal re-synchronisation, HRTIMER output EExFAST = 0, and HRTIMER output EExFAST = 1. The diagram illustrates delays and jitter for output reset operations.

37.3.8 External event filtering in timing units

Once conditioned, the 10 external events are available for all timing units.

They can be used directly and are active as soon as the timing unit counter is enabled (TxCEN bit set).

They can also be filtered to have an action limited in time, usually related to the counting period. Two operations can be performed:

These modes are enabled using HRTIM_EExFLTR[3:0] bits in the HRTIM_EEFxR1 and HRTIM_EEFxR2 registers. Each of the 5 TimerA..E timing units has its own programmable filter settings for the 10 external events.

Blanking mode

In event blanking mode (see Figure 304 ), the external event is ignored if it happens during a given blanking period. This is convenient, for instance, to avoid a current limit to trip on switching noise at the beginning of a PWM period. This mode is active for EExFLTR[3:0] bitfield values ranging from 0001 to 1100.

Figure 304. Event blanking mode

Figure 304: Event blanking mode diagram

The diagram illustrates the event blanking mode. On the left, two inputs, 'Ext./int. event' and 'Blanking', are shown entering an AND gate. The output of the AND gate is labeled 'Resulting event'. To the right, three timing diagrams are shown. The 'External event' line shows a pulse that occurs while the 'Blanking source' line is high. The 'Resulting event' line shows that this pulse is ignored (remains low) during the blanking period. Once the blanking source goes low, a subsequent external event pulse is reflected as a pulse on the resulting event line. A small note 'MS32294V1' is in the bottom right corner.

Figure 304: Event blanking mode diagram

In event postpone mode, the external event is not taken into account immediately but is memorized (latched) and generated as soon as the blanking period is completed, as shown on Figure 305 . This mode is enabled by setting EExLTCH bit in HRTIM_EEFxR1 and HRTIM_EEFxR2 registers.

Figure 305. Event postpone mode

Figure 305: Event postpone mode diagram

The diagram illustrates the event postpone mode. On the left, the 'Ext./int. event' input first passes through a 'Latch' block, and then its output and the 'Blanking' input enter an AND gate. The output of the AND gate is labeled 'Resulting event'. To the right, three timing diagrams are shown. The 'External event' line shows a pulse that occurs while the 'Blanking source' line is high. The 'Resulting event' line remains low during the blanking period but transitions to high immediately when the blanking source goes low, reflecting the state of the latched external event. A small note 'MS32295V1' is in the bottom right corner.

Figure 305: Event postpone mode diagram

The blanking signal comes from several sources:

The EExFLTR[3:0] configurations from 0101 to 1100 are referred to as TIMFLTR1 to TIMFLTR8 in the bit description, and differ from one timing unit to the other. Table 311 gives the 8 available options per timer: CMPx refers to blanking from counter reset to compare match, Tx2 refers to the timing unit TIMx output 2 waveform defined with HRTIM_SETx2 and HRTIM_RSTx2 registers. For instance, Timer B (TIMFLTR6) is Timer C output 2 waveform.

Table 311. Filtering signals mapping per time

SourceTimer ATimer BTimer CTimer DTimer E
CMP 1CMP 2CMP 4TA2CMP 1CMP 2CMP 4TB2CMP 1CMP 2CMP 4TC2CMP 1CMP 2CMP 4TD2CMP 1CMP 2CMP 4TE2
DestinationTimer A----1-234-567----8--
Timer B1-23----45-6-7--8---
Timer C-1--2-34----5-67--8-
Timer D1----2--34-5----6-78
Timer E-1--2---3-456-78----

Figure 306 and Figure 307 give an example of external event blanking for all edge and level sensitivities, in regular and postponed modes.

Figure 306. External trigger blanking with edge-sensitive trigger

Timing diagram for edge-sensitive external trigger blanking. It shows the Counter, Compare 1, Blanking window, External event, and two EExLTCH signal states (0 and 1) with corresponding edge-sensitive triggers. A legend defines EExSNS[1:0] settings: 01 (rising edge), 10 (falling edge), and 11 (both edges). An internal event is shown generated after the blanking window.

Counter

Compare 1

Blanking window

External event

EExLTCH = 0

EExLTCH = 1

▲ EExSNS[1:0] = 01    ▼ EExSNS[1:0] = 10    ▲▼ EExSNS[1:0] = 11

─┐ Internal event generated after blanking

MS32296V1

Timing diagram for edge-sensitive external trigger blanking. It shows the Counter, Compare 1, Blanking window, External event, and two EExLTCH signal states (0 and 1) with corresponding edge-sensitive triggers. A legend defines EExSNS[1:0] settings: 01 (rising edge), 10 (falling edge), and 11 (both edges). An internal event is shown generated after the blanking window.

Figure 307. External trigger blanking, level sensitive triggering

Timing diagram for level-sensitive external trigger blanking. It shows the Counter, Compare 1, and Blanking window. Below are four rows for POL and LTCH settings (0 or 1). The POL signal is labeled POL = EExPOL and the LTCH signal is labeled LTCH = EExLTCH. A note indicates that a high level denotes a continuous event generation after blanking. A 'latched' label points to a signal transition.

Counter

Compare 1

Blanking window

External event

POL = 0 (H), LTCH = 0 *

POL = 1 (L), LTCH = 0 *

POL = 0 (H), LTCH = 1 *

POL = 1 (L), LTCH = 1 *

POL = EExPOL      LTCH = EExLTCH

* A high level denotes a continuous event generation after blanking

latched

MS32297V1

Timing diagram for level-sensitive external trigger blanking. It shows the Counter, Compare 1, and Blanking window. Below are four rows for POL and LTCH settings (0 or 1). The POL signal is labeled POL = EExPOL and the LTCH signal is labeled LTCH = EExLTCH. A note indicates that a high level denotes a continuous event generation after blanking. A 'latched' label points to a signal transition.

Windowing mode

In event windowing mode, the event is taken into account only if it occurs within a given time window, otherwise it is ignored. This mode is active for EExFLTR[3:0] ranging from 1101 to 1111.

Figure 308. Event windowing mode

Figure 308. Event windowing mode diagram. On the left, a logic diagram shows 'Ext./int. event' and 'Windowing' inputs to an AND gate, with an 'Output' arrow. On the right, a timing diagram shows three signals: 'External event' (a pulse with a cross), 'Blanking source' (a rectangular pulse), and 'Resulting event' (a pulse that occurs only when the external event is within the blanking source window). The label 'MS32298V1' is in the bottom right corner.
Figure 308. Event windowing mode diagram. On the left, a logic diagram shows 'Ext./int. event' and 'Windowing' inputs to an AND gate, with an 'Output' arrow. On the right, a timing diagram shows three signals: 'External event' (a pulse with a cross), 'Blanking source' (a rectangular pulse), and 'Resulting event' (a pulse that occurs only when the external event is within the blanking source window). The label 'MS32298V1' is in the bottom right corner.

EExLTCH bit in EEFxR1 and EEFxR2 registers allows to latch the signal, if set to 1: in this case, an event is accepted if it occurs during the window but is delayed at the end of it.

A use case of the windowing mode is to filter synchronization signals. The timeout generation allows to force a default synchronization event, when the expected synchronization event is lacking (for instance during a converter start-up).

There are 3 sources for each external event windowing, coded as follows:

Table 312. Windowing signals mapping per timer (EEFLTR[3:0] = 1111)

DestinationTimer ATimer BTimer CTimer DTimer E
TIMWIN (source)Timer B
CMP2
Timer A
CMP2
Timer D
CMP2
Timer C
CMP2
Timer D
CMP2

Note: The timeout event generation is not supported if the external event is programmed in fast mode.

Figure 309 and Figure 310 present how the events are generated for the various edge and level sensitivities, as well as depending on EExLTCH bit setting. Timeout events are specifically mentioned for clarity reasons.

Figure 309. External trigger windowing with edge-sensitive trigger

Timing diagram for Figure 309 showing Counter, Compare 1, Window, External event, and EExLTCH signals. It illustrates edge-sensitive triggering with EExSNS[1:0] settings 01, 10, and 11. The diagram shows how the external event is filtered through a window to generate an internal event. MS32299V1

The diagram shows the following signals over time:

Legend for EExSNS[1:0]:

MS32299V1

Timing diagram for Figure 309 showing Counter, Compare 1, Window, External event, and EExLTCH signals. It illustrates edge-sensitive triggering with EExSNS[1:0] settings 01, 10, and 11. The diagram shows how the external event is filtered through a window to generate an internal event. MS32299V1

Figure 310. External trigger windowing, level sensitive triggering

Timing diagram for Figure 310 showing Counter, Compare 1, window, External event, and POL/LTCH signals. It illustrates level-sensitive triggering with POL = EExPOL and LTCH = EExLTCH settings. MS32330V1

The diagram shows the following signals over time:

Labels at the bottom:

* A high level denotes continuous event generation after windowing

MS32330V1

Timing diagram for Figure 310 showing Counter, Compare 1, window, External event, and POL/LTCH signals. It illustrates level-sensitive triggering with POL = EExPOL and LTCH = EExLTCH settings. MS32330V1

37.3.9 Delayed Protection

The HRTIM features specific protection schemes, typically for resonant converters when it is necessary to shut down the PWM outputs in a delayed manner, either once the active pulse is completed or once a push-pull period is completed. These features are enabled with DLYPRTEN bit in the HRTIM_OUTxR register, and are using specific external event channels.

Delayed Idle

In this mode, the active pulse is completed before the protection is activated. The selected external event causes the output to enter in idle mode at the end of the active pulse (defined by an output reset event in HRTIM_RSTx1R or HRTIM_RSTx2R).

Once the protection is triggered, the idle mode is permanently maintained but the counter continues to run, until the output is re-enabled. Tx1OEN and Tx2OEN bits are not affected by the delayed idle entry. To exit from delayed idle and resume operation, it is necessary to overwrite Tx1OEN and Tx2OEN bits to 1. The output state will change on the first transition to an active state following the output enable command.

Note: The delayed idle mode cannot be exited immediately after having been entered, before the active pulse is completed: it is mandatory to make sure that the outputs are in idle state before resuming the run mode. This can be done by waiting up to the next period, for instance, or by polling the O1CPY and/or O2CPY status bits in the TIMxISR register.

The delayed idle mode can be applied to a single output (DLYPRT[2:0] = x00 or x01) or to both outputs (DLYPRT[2:0] = x10).

An interrupt or a DMA request can be generated in response to a Delayed Idle mode entry. The DLYPRT flag in HRTIM_TIMxISR is set as soon as the external event arrives, independently from the end of the active pulse on output.

When the Delayed Idle mode is triggered, the output states can be determined using O1STAT and O2STAT in HRTIM_TIMxISR. Both status bits are updated even if the delayed idle is applied to a single output. When the push-pull mode is enabled, the IPPSTAT flag in HRTIM_TIMxISR indicates during which period the delayed protection request occurred.

This mode is available whatever the timer operating mode (regular, push-pull, deadtime). It is available with 2 external events only:

The delayed protection mode can be triggered only when the counter is enabled (TxCEN bit set). It remains active even if the TxEN bit is reset, until the TxyOEN bits are set.

Figure 311. Delayed Idle mode entry

Timing diagram Figure 311 showing three scenarios for Delayed Idle mode entry. Scenario 1: Both A1 and A2 enter idle mode (O1STAT=1, O2STAT=0) after a delay DLYPRT following an External Event. Scenario 2: A1 and A2 enter idle mode independently (O1STAT=1, O2STAT=1) after an External Event and delay DLYPRT. Scenario 3: Only A2 enters idle mode after a delay DLYPRT following an External Event, while A1 remains in run mode.

Delayed Idle mode for both outputs

Scenario 1 labels

External Event

A1

A2

DLYPRT

Run mode

Idle mode
(O1STAT = 1, O2STAT = 0)

Scenario 2 labels

External Event

A1

A2

DLYPRT

A1 Run mode

A1 Idle mode

A2 Run mode

A2 Idle mode
(O1STAT = 1, O2STAT = 1)

Scenario 3 labels

Delayed Idle mode for A2 output only

External Event

A1

A2

DLYPRT

A2 Run mode

A2 Idle mode

MS32331V1

Timing diagram Figure 311 showing three scenarios for Delayed Idle mode entry. Scenario 1: Both A1 and A2 enter idle mode (O1STAT=1, O2STAT=0) after a delay DLYPRT following an External Event. Scenario 2: A1 and A2 enter idle mode independently (O1STAT=1, O2STAT=1) after an External Event and delay DLYPRT. Scenario 3: Only A2 enters idle mode after a delay DLYPRT following an External Event, while A1 remains in run mode.

The delayed idle mode has a higher priority than the burst mode: any burst mode exit request is discarded once the delayed idle protection has been triggered. On the contrary, If the delayed protection is exited while the burst mode is active, the burst mode will be resumed normally and the output will be maintained in the idle state until the burst mode exits. Figure 312 gives an overview of these different scenarios.

Figure 312. Burst mode and delayed protection priorities (DIDL = 0)

Timing diagram showing Output and State over time for two scenarios. The top scenario shows burst entry, delayed protection entry (discarded), delayed protection exit (discarded), and burst exit. The bottom scenario shows delayed protection entry, burst entry, burst exit (discarded), and delayed protection exit. States are RUN, IDLE, and RUN.

The figure consists of two timing diagrams illustrating the interaction between burst mode and delayed protection in the HRTIM. Both diagrams show the 'Output' signal and the 'State' over time.

Top Diagram:

Bottom Diagram:

MS32280V1

Timing diagram showing Output and State over time for two scenarios. The top scenario shows burst entry, delayed protection entry (discarded), delayed protection exit (discarded), and burst exit. The bottom scenario shows delayed protection entry, burst entry, burst exit (discarded), and delayed protection exit. States are RUN, IDLE, and RUN.

The same priorities are applied when the delayed burst mode entry is enabled (DIDL bit set), as shown on Figure 313 below.

Figure 313. Burst mode and delayed protection priorities (DIDL = 1)

Figure 313: Burst mode and delayed protection priorities (DIDL = 1). The figure contains two timing diagrams. The top diagram shows a 'Crossbar output' and an 'Output' signal. The 'Output' signal is high when the 'Crossbar output' is high, but it goes to an 'IDLES level' when a 'Delayed protection' event occurs. The 'Crossbar output' goes low when a 'Burst entry' event occurs. The 'Output' signal returns to high when a 'Burst exit' event occurs. A 'Deadtime' interval is indicated between the 'Crossbar output' and 'Output' signals. The bottom diagram shows a similar scenario but with a 'Burst entry' event occurring while the 'Output' signal is already in the 'IDLES level'. The 'Output' signal returns to high when the 'Burst exit' event occurs. A 'Deadtime' interval is indicated between the 'Crossbar output' and 'Output' signals. Both diagrams include labels for 'Delayed protection', 'Burst entry', 'Burst exit', 'Delayed protection exit', 'Crossbar output', 'Output', 'IDLES level', and 'Deadtime'. The reference 'MS32281V1' is shown in the bottom right corner.
Figure 313: Burst mode and delayed protection priorities (DIDL = 1). The figure contains two timing diagrams. The top diagram shows a 'Crossbar output' and an 'Output' signal. The 'Output' signal is high when the 'Crossbar output' is high, but it goes to an 'IDLES level' when a 'Delayed protection' event occurs. The 'Crossbar output' goes low when a 'Burst entry' event occurs. The 'Output' signal returns to high when a 'Burst exit' event occurs. A 'Deadtime' interval is indicated between the 'Crossbar output' and 'Output' signals. The bottom diagram shows a similar scenario but with a 'Burst entry' event occurring while the 'Output' signal is already in the 'IDLES level'. The 'Output' signal returns to high when the 'Burst exit' event occurs. A 'Deadtime' interval is indicated between the 'Crossbar output' and 'Output' signals. Both diagrams include labels for 'Delayed protection', 'Burst entry', 'Burst exit', 'Delayed protection exit', 'Crossbar output', 'Output', 'IDLES level', and 'Deadtime'. The reference 'MS32281V1' is shown in the bottom right corner.

Balanced Idle

Only available in push-pull mode, it allows to have balanced pulsemode on the two outputs when one of the active pulse is shortened due to a protection. The pulsemode, which was terminated earlier than programmed, is copied on the alternate output and the two outputs are then put in idle state, until the normal operation is resumed by software. This mode is enabled by writing x11 in DLYPRT[2:0] bitfield in HRTIM_OUTxR.

This mode is available with 2 external events only:

Figure 314. Balanced Idle protection example

Timing diagram for Figure 314. Balanced Idle protection example. The diagram shows the relationship between the HRTIM counter (PER), compare register (CMP1), internal Taref signal, and output pins TA1 and TA2. It is divided into two phases: 'A1 and A2 Run mode' and 'A1 and A2 Idle mode'. In the Run mode, TA1 and TA2 are set by external events (EEV) and their pulse lengths are copied. In the Idle mode, the push-pull is maintained for one additional period. The diagram also shows the state of CPPSTAT and IPPSTAT registers.

The timing diagram illustrates the 'Balanced Idle protection example' for the HRTIM. It shows the following signals and states:

MS32332V2

Timing diagram for Figure 314. Balanced Idle protection example. The diagram shows the relationship between the HRTIM counter (PER), compare register (CMP1), internal Taref signal, and output pins TA1 and TA2. It is divided into two phases: 'A1 and A2 Run mode' and 'A1 and A2 Idle mode'. In the Run mode, TA1 and TA2 are set by external events (EEV) and their pulse lengths are copied. In the Idle mode, the push-pull is maintained for one additional period. The diagram also shows the state of CPPSTAT and IPPSTAT registers.

When the balanced Idle mode is enabled, the selected external event triggers a capture of the counter value into the Compare 4 active register (this value is not user-accessible). The push-pull is maintained for one additional period so that the shorten pulse can be repeated: a new output reset event is generated while the regular output set event is maintained.

The Idle mode is then entered and the output takes the level defined by IDLESx bits in the HRTIM_OUTxR register. The balanced idle mode entry is indicated by the DLYPRT flag, while the IPPSTAT flag indicates during which period the external event occurred, to determine the sequence of shorten pulses (HRTIM_CHA1 then HRTIM_CHA2 or vice versa).

The timer operation is not interrupted (the counter continues to run).

To enable the balanced idle mode, it is necessary to have the following initialization:

Note: The HRTIM_CMP4xR register must not be written during a balanced idle operation. The CMP4 event is reserved and cannot be used for another purpose.

In balanced idle mode, it is recommended to avoid multiple external events or software-based reset events causing an output reset. If such an event arrives before a balanced idle request within the same period, it will cause the output pulses to be unbalanced (1st pulse length defined by the external event or software reset, while the 2nd pulse is defined by the balanced idle mode entry).

The minimum pulselength that can be handled in balanced idle mode is 4 f HRTIM clock periods.

If the capture occurs before the counter has reached this minimum value, the current pulse is extended up to 4 f HRTIM clock periods before being copied into the secondary output. In any case, the pulselengths are always balanced.

Tx1OEN and Tx2OEN bits are not affected by the balanced idle entry. To exit from balanced idle and resume the operation, it is necessary to overwrite Tx1OEN and Tx2OEN bits to 1 simultaneously. The output state will change on the first active transition following the output enable.

It is possible to resume operation similarly to the delayed idle entry. For instance, if the external event arrives while output 1 is active (delayed idle effective after output 2 pulse), the re-start sequence can be initiated for output 1 first. To do so, it is necessary to poll CPPSTAT bit in the HRTIM_TIMxISR register. Using the above example (IPPSTAT flag equal to 0), the operation will be resumed when CPPSTAT bit is 0.

In order to have a specific re-start sequence, it is possible to poll the CPPSTAT to know which output will be active first. This allows, for instance, to re-start with the same sequence as the idle entry sequence: if EEV arrives during output 1 active, the re-start sequence will be initiated when the output 1 is active (CPPSTAT = 0).

Note: The balanced idle mode must not be disabled while a pulse balancing sequence is ongoing. It is necessary to wait until the CMP4 flag is set, thus indicating that the sequence is completed, to reset the DLYPRTEN bit.

The balanced idle protection mode can be triggered only when the counter is enabled (TxCEN bit set). It remains active even if the TxCEN bit is reset, until TxyOEN bits are set.

Balanced idle can be used together with the burst mode under the following conditions:

The balanced idle mode has a higher priority than the burst mode: any burst mode exit request is discarded once the balanced idle protection has been triggered. On the contrary, if the delayed protection is exited while the burst mode is active, the burst mode will be resumed normally.

Note: Although the output state is frozen in idle mode, a number of events are still generated on the auxiliary outputs (see Section 37.3.16 ) during the idle period following the delayed protection:

37.3.10 Register preload and update management

Most of HRTIM registers are buffered and can be preloaded if needed. Typically, this allows to prevent the waveforms from being altered by a register update not synchronized with the active events (set/reset).

When the preload mode is enabled, accessed registers are shadow registers. Their content is transferred into the active register after an update request, either software or synchronized with an event.

By default, PREEN bits in HRTIM_MCR and HRTIM_TIMxCR registers are reset and the registers are not preloaded: any write directly updates the active registers. If PREEN bit is reset while the timer is running and preload was enabled, the content of the preload registers is directly transferred into the active registers.

Each timing unit and the master timer have their own PREEN bit. If PRREN is set, the preload registers are enabled and transferred to the active register only upon an update event.

There are two options to initialize the timer when the preload feature is needed:

Table 313 lists the registers which can be preloaded, together with a summary of available update events.

Table 313. HRTIM preloadable control registers and associated update sources

TimerPreloadable registersPreload enableUpdate sources
Master TimerHRTIM_DIER
HRTIM_MPER
HRTIM_MREP
HRTIM_MCMP1R
HRTIM_MCMP2R
HRTIM_MCMP3R
HRTIM_MCMP4R
PREEN bit in HRTIM_MCRSoftware
Repetition event
Burst DMA event
Repetition event following a burst DMA event
Timer x
x = A..E
HRTIM_TIMxDIER
HRTIM_TIMxPER
HRTIM_TIMxREP
HRTIM_TIMxCMP1R
HRTIM_TIMxCMP1CR
HRTIM_TIMxCMP2R
HRTIM_TIMxCMP3R
HRTIM_TIMxCMP4R
HRTIM_DTxR
HRTIM_SETx1R
HRTIM_RSTx1R
HRTIM_SETx2R
HRTIM_RSTx2R
HRTIM_RSTxR
PREEN bit in HRTIM_TIMxCRSoftware
TIMx Repetition event
TIMx Reset Event
Burst DMA event
Update event from other timers (TIMy, Master)
Update event following a burst DMA event
Update enable input 1..3
Update event following an update enable input 1..3
HRTIM CommonHRTIM_ADC1R
HRTIM_ADC2R
HRTIM_ADC3R
HRTIM_ADC4R
TIMx or Master timer Update, depending on ADxUSRC[2:0] bits in HRTIM_CR1, if PREEN = 1 in the selected timer

The master timer has 4 update options:

  1. 1. Software: writing 1 into MSWU bit in HRTIM_CR2 forces an immediate update of the registers. In this case, any pending hardware update request is cancelled.
  2. 2. Update done when the master counter rolls over and the master repetition counter is equal to 0. This is enabled when MREPU bit is set in HRTIM_MCR.
  3. 3. Update done once Burst DMA is completed (see Section 37.3.21 for details). This is enabled when BRSTDMA[1:0] = 01 in HRTIM_MCR. It is possible to have both MREPU=1 and BRSTDMA=01.

Note: The update can take place immediately after the end of the burst sequence if SWU bit is set (i.e. forced update mode). If SWU bit is reset, the update will be done on the next update event following the end of the burst sequence.

  1. 4. Update done when the master counter rolls over following a Burst DMA completion. This is enabled when BRSTDMA[1:0] = 10 in HRTIM_MCR.

An interrupt or a DMA request can be generated by the master update event.

Each timer (TIMA..E) can also have the update done as follows:

The update enable inputs 1..3 allow to have an update event synchronized with on-chip events coming from the general-purpose timers. These inputs are rising-edge sensitive.

Table 314 lists the connections between update enable inputs and the on-chip sources.

Table 314. Update enable inputs and sources

Update enable inputUpdate source
Update enable input 1TIM16_OC
Update enable input 2TIM17_OC
Update enable input 3TIM6_TRGO

This allows to synchronize low frequency update requests with high-frequency signals (for instance an update on the counter roll-over of a 100 kHz PWM that has to be done at a 100 Hz rate).

Note: The update events are synchronized to the prescaler clock when CKPSC[2:0] > 5.

An interrupt or a DMA request can be generated by the Timx update event.

MUDIS and TxUDIS bits in the HRTIM_CR1 register allow to temporarily disable the transfer from preload to active registers, whatever the selected update event. This allows to modify several registers in multiple timers. The regular update event takes place once these bits are reset.

MUDIS and TxUDIS bits are all grouped in the same register. This allows the update of multiple timers (not necessarily synchronized) to be disabled and resumed simultaneously.

The following example is a practical use case. A first power converter is controlled with the master, TIMB and TIMC. TIMB and TIMC must be updated simultaneously with the master timer repetition event. A second converter works in parallel with TIMA, TIMD and TIME, and TIMD, TIME must be updated with TIMA repetition event.

First converter

In HRTIM_MCR, MREPU bit is set: the update will occur at the end of the master timer counter repetition period. In HRTIM_TIMBCR and HRTIM_TIMCCR, MSTU bits are set to have TIMB and TIMC timers updated simultaneously with the master timer.

When the power converter set-point has to be adjusted by software, MUDIS, TBUDIS and TCUDIS bits of the HRTIM_CR register must be set prior to write accessing registers to update the values (for instance the compare values). From this time on, any hardware update request is ignored and the preload registers can be accessed without any risk to have them transferred into the active registers. Once the software processing is over, MUDIS, TBUDIS and TCUDIS bits must be reset. The transfer from preload to active registers will be done as soon as the master repetition event occurs.

Second converter

In HRTIM_TIMACR, TAREPU bit is set: the update will occur at the end of the Timer A counter repetition period. In HRTIM_TIMDCR and HRTIM_TIMECR, TAU bits are set to have TIMD and TIME timers updated simultaneously with Timer A.

When the power converter set-point has to be adjusted by software, TAUDIS, TDUDIS and TEUDIS bits of the HRTIM_CR register must be set prior to write accessing the registers to update the values (for instance the compare values). From this time on, any hardware update request is ignored and the preload registers can be accessed without any risk to have them transferred into the active registers. Once the software processing is over, TAUDIS, TDUDIS and TEUDIS bits can be reset: the transfer from preload to active registers will be done as soon as the Timer A repetition event occurs.

37.3.11 Events propagation within or across multiple timers

The HRTIM offers many possibilities for cascading events or sharing them across multiple timing units, including the master timer, to get full benefits from its modular architecture. These are key features for converters requiring multiple synchronized outputs.

This section summarizes the various options and specifies whether and how an event is propagated within the HRTIM.

TIMx update triggered by the Master timer update

The sources listed in Table 315 are generating a master timer update. The table indicates if the source event can be used to trigger a simultaneous update in any of TIMx timing units.

Operating condition: MSTU bit is set in HRTIM_TIMxCR register.

Table 315. Master timer update event propagation
SourceConditionPropagationComment
Burst DMA endBRSTDMA[1:0] = 01NoMust be done in TIMxCR (UPDGAT[3:0] = 0001)
Roll-over event following a Burst DMA endBRSTDMA[1:0] = 10Yes-
Repetition event caused by a counter roll-overMREPU = 1Yes-
Repetition event caused by a counter reset (from HRTIM_SCIN or software)No-
Software updateMSWU = 1NoAll software update bits (TxSWU) are grouped in the HRTIM_CR2 register and can be used for a simultaneous update

TIMx update triggered by the TIMy update

The sources listed in Table 316 are generating a TIMy update. The table indicates if the given event can be used to trigger a simultaneous update in another or multiple TIMx timers.

Operating condition: TyU bit set in HRTIM_TIMxCR register (source = TIMy and destination = TIMx).

Table 316. TIMx update event propagation
SourceConditionPropagationComment
Burst DMA endUPDGAT[3:0] = 0001NoMust be done directly in HRTIM_TIMxCR (UPDGAT[3:0] = 0001)
Update caused by the update enable inputUPDGAT[3:0] = 0011, 0100, 0101NoMust be done directly in HRTIM_TIMxCR (UPDGAT[3:0] = 0011, 0100, 0101)
Master updateMSTU = 1 in HRTIM_TIMyCRNoMust be done with MSTU = 1 in HRTIM_TIMxCR
Another TIMx update (TIMz>TIMy>TIMx)TzU=1 in HRTIM_TIMyCR
TyU=1 in TIMxCR
NoMust be done with TzU=1 in HRTIM_TIMxCR
TzU=1 in HRTIM_TIMyCR
Repetition event caused by a counter roll-overTyREPU = 1Yes-
Repetition event caused by a counter resetTyREPU = 1-Refer to counter reset cases below
Counter roll-overTyRSTU = 1Yes-
Counter software resetTyRST=1 in HRTIM_CR2NoCan be done simultaneously with update in HRTIM_CR2 register
Counter reset caused by a TIMz compareTIMzCMPn in HRTIM_RSTyRNoMust be done using TIMzCMPn in HRTIM_RSTxR
Counter reset caused by external eventsEXTEVNTn in HRTIM_RSTyRYes-
Table 316. TIMx update event propagation (continued)
SourceConditionPropagationComment
Counter reset caused by a master compare or a master periodMSTCMPn or MSTPER in HRTIM_RSTyRNo-
Counter reset caused by a TIMy compareCMPn in HRTIM_RSTyRYes-
Counter reset caused by an updateUPDT in HRTIM_RSTyRNoPropagation would result in a lock-up situation (update causing reset causing update)
Counter reset caused by HRTIM_SCINSYNCRSTy in HRTIM_TIMyCRNo-
Software updateTySWU = 1NoAll software update bits (TxSWU) are grouped in the HRTIM_CR2 register and can be used for a simultaneous update

TIMx Counter reset causing a TIMx update

Table 317 lists the counter reset sources and indicates whether they can be used to generate an update.

Operating condition: TxRSTU bit in HRTIM_TIMxCR register.

Table 317. Reset events able to generate an update
SourceConditionPropagationComment
Counter roll-overYes
Update eventUPDT in HRTIM_RSTxRNoPropagation would result in a lock-up situation (update causing a reset causing an update)
External EventEXTEVNTn in HRTIM_RSTxRYes-
TIMy compareTIMyCMPn in HRTIM_RSTxRYes-
Master compareMSTCMPn in HRTIM_RSTxRYes-
Master periodMSTPER in HRTIM_RSTxRYes-
Compare 2 and 4CMPn in HRTIM_RSTxRYes-
SoftwareTxRST=1 in HRTIM_CR2Yes-
HRTIM_SCINSYNCRSTx in HRTIM_TIMxCRYes-

TIMx update causing a TIMx counter reset

Table 318 lists the update event sources and indicates whether they can be used to generate a counter reset.

Operating condition: UPDT bit set in HRTIM_RSTxR.

Table 318. Update event propagation for a timer reset

SourceConditionPropagationComment
Burst DMA endUPDGAT[3:0] = 0001Yes-
Update caused by the update enable inputUPDGAT[3:0] = 0011, 0100, 0101Yes-
Master update caused by a roll-over after a Burst DMAMSTU = 1 in HRTIM_TIMxCR
BRSTDMA[1:0] = 10 in HRTIM_MCR
Yes-
Master update caused by a repetition event following a roll-overMSTU = 1 in HRTIM_TIMxCR
MREPU = 1 in HRTIM_MCR
Yes-
Master update caused by a repetition event following a counter reset (software or due to HRTIM_SCIN)No-
Software triggered master timer updateMSTU = 1 in HRTIM_TIMxCR
MSWU = 1 in HRTIM_CR2
NoAll software update bits (TxSWU) are grouped in the HRTIM_CR2 register and can be used for a simultaneous update
TIMy update caused by a TIMy counter roll-overTyU = 1 in HRTIM_TIMxCR
TyRSTU = 1 in HRTIM_TIMyCR
Yes-
TIMy update caused by a TIMy repetition eventTyU = 1 in HRTIM_TIMxCR
TyREPU = 1 in HRTIM_TIMyCR
Yes-
TIMy update caused by an external event or a TIMy compare (through a TIMy reset)TyU = 1 in HRTIM_TIMxCR
TyRSTU = 1 in HRTIM_TIMyCR
EXTEVNTn or CMP4/2 in HRTIM_RSTyCR
Yes-
TIMy update caused by sources other than those listed aboveTyU = 1 in HRTIM_TIMxCRNo-
Table 318. Update event propagation for a timer reset (continued)
SourceConditionPropagationComment
Repetition event following a roll-overTxREPU = 1 in HRTIM_TIMxCRYes-
Repetition event following a counter resetNo-
Timer resetTxRSTU = 1 in HRTIM_TIMxCRNoPropagation would result in a lock-up situation (reset causing an update causing a reset)
SoftwareTxSWU in HRTIM_CR2No-

37.3.12 Output management

Each timing unit controls a pair of outputs. The outputs have three operating states:

The output status is indicated by TxyOEN bit in HRTIM_OENR register and TxyODS bit in HRTIM_ODSR register, as in Table 319 .

Table 319. Output state programming, x= A..E, y = 1 or 2
TxyOEN (control/status)
(set by software,
cleared by hardware)
TxyODS (status)Output operating state
1xRUN
00IDLE
01FAULT

TxyOEN bit is both a control and a status bit: it must be set by software to have the output in RUN mode. It is cleared by hardware when the output goes back in IDLE or FAULT mode. When TxyOEN bit is cleared, TxyODS bit indicates whether the output is in the IDLE or FAULT state. A third bit in the HRTIM_ODISR register allows to disable the output by software.

Figure 315. Output management overview

Figure 315. Output management overview diagram showing the internal logic of the HRTIM output stage. A Timing Unit connects to a Chopper (input CPHx). The Chopper output is connected to a multiplexer. The multiplexer has three inputs: RUN (from Chopper), IDLE (from IDLE State Active / Inactive block), and FAULT (from FAULT State Active / Inactive / Hi-Z block). The multiplexer is controlled by a Status: OEN/ODS register. The output of the multiplexer is connected to an inverter and then to the HRTIM_CHxy pin. The inverter is controlled by POLx. The IDLE State and FAULT State blocks are controlled by IDLESx and FAULTx[1:0] inputs. The RUN entry is controlled by Software (OEN bit set). The IDLE entry is controlled by Software (ODIS bit set) or Hardware: Burst / Delayed protection. The FAULT entry is controlled by Hardware (FAULTx inputs) or breakpoint. MS32282V2
Figure 315. Output management overview diagram showing the internal logic of the HRTIM output stage. A Timing Unit connects to a Chopper (input CPHx). The Chopper output is connected to a multiplexer. The multiplexer has three inputs: RUN (from Chopper), IDLE (from IDLE State Active / Inactive block), and FAULT (from FAULT State Active / Inactive / Hi-Z block). The multiplexer is controlled by a Status: OEN/ODS register. The output of the multiplexer is connected to an inverter and then to the HRTIM_CHxy pin. The inverter is controlled by POLx. The IDLE State and FAULT State blocks are controlled by IDLESx and FAULTx[1:0] inputs. The RUN entry is controlled by Software (OEN bit set). The IDLE entry is controlled by Software (ODIS bit set) or Hardware: Burst / Delayed protection. The FAULT entry is controlled by Hardware (FAULTx inputs) or breakpoint. MS32282V2

Figure 316 summarizes the bit values for the three states and how the transitions are triggered. Faults can be triggered by any external or internal fault source, as listed in Section 37.3.15 , while the Idle state can be entered when the burst mode or delayed protections are active.

Figure 316. HRTIM output states and transitions

Figure 316. HRTIM output states and transitions state transition diagram. It shows three states: IDLE State (OEN = 0, ODS = 0), RUN State (OEN = 1, ODS = X), and FAULT State (OEN = 0, ODS = 1). Transitions are: IDLE to RUN (OEN bit set), RUN to IDLE (ODIS bit set), IDLE to FAULT ((Fault or breakpoint* & (FAULTx[1:0] > 0) & OEN = 1), FAULT to IDLE (ODIS bit set), RUN to FAULT (Fault (if FAULTx > 0) or breakpoint*), and FAULT to RUN (OEN bit set). A note indicates that Breakpoint* is valid only if DBG_HRTIM_STOP = 1. Another note states that the Txy prefix is omitted for clarity: (OEN = TxyOEN, ODIS = TxyODIS, ODS = TxyODS). MS32333V1
Figure 316. HRTIM output states and transitions state transition diagram. It shows three states: IDLE State (OEN = 0, ODS = 0), RUN State (OEN = 1, ODS = X), and FAULT State (OEN = 0, ODS = 1). Transitions are: IDLE to RUN (OEN bit set), RUN to IDLE (ODIS bit set), IDLE to FAULT ((Fault or breakpoint* & (FAULTx[1:0] > 0) & OEN = 1), FAULT to IDLE (ODIS bit set), RUN to FAULT (Fault (if FAULTx > 0) or breakpoint*), and FAULT to RUN (OEN bit set). A note indicates that Breakpoint* is valid only if DBG_HRTIM_STOP = 1. Another note states that the Txy prefix is omitted for clarity: (OEN = TxyOEN, ODIS = TxyODIS, ODS = TxyODS). MS32333V1

The FAULT and IDLE levels are defined as active or inactive. Active (or inactive) refers to the level on the timer output that causes a power switch to be closed (or opened for an inactive state).

The IDLE state has the highest priority: the transition FAULT → IDLE is possible even if the FAULT condition is still valid, triggered by ODIS bit set.

The FAULT state has priority over the RUN state: if TxyOEN bit is set simultaneously with a Fault event, the FAULT state will be entered. The condition is given on the transition IDLE →

FAULT, as in Figure 316 : fault protection needs to be enabled (FAULTx[1:0] bits = 01, 10, 11) and the Txy OEN bit set with a fault active (or during a breakpoint if DBG_HRTIM_STOP = 1).

The output polarity is programmed using POLx bits in HRTIM_OUTxR. When POLx = 0, the polarity is positive (output active high), while it is active low in case of a negative polarity (POLx = 1). Practically, the polarity is defined depending on the power switch to be driven (PMOS vs. NMOS) or on a gate driver polarity.

The output level in the FAULT state is configured using FAULTx[1:0] bits in HRTIM_OUTxR, for each output, as follows:

Note: FAULTx[1:0] bits must not be changed as long as the outputs are in FAULT state.

The level of the output in IDLE state is configured using IDLESx bit in HRTIM_OUTxR, as follows:

When TxyOEN bit is set to enter the RUN state, the output is immediately connected to the crossbar output. If the timer clock is stopped, the level will either be inactive (after an HRTIM reset) or correspond to the RUN level (when the timer was stopped and the output disabled).

During the HRTIM initialization, the output level can be prepositioned prior to have it in RUN mode, using the software forced output set and reset in the HRTIM_SETx1R and HRTIM_RSTx1R registers.

37.3.13 Burst mode controller

The burst mode controller allows to have the outputs alternatively in IDLE and RUN state, by hardware, so as to skip some switching periods with a programmable periodicity and duty cycle.

Burst mode operation is of common use in power converters when operating under light loads. It can significantly increase the efficiency of the converter by reducing the number of transitions on the outputs and the associated switching losses.

When operating in burst mode, one or a few pulses are outputs followed by an idle period equal to several counting periods, typically, where no output pulses are produced, as shown in the example on Figure 317 .

Figure 317. Burst mode operation example

Timing diagram for burst mode operation. It shows five waveforms: Counter (sawtooth), Output (PWM), Output state (RUN/IDLE), Burst clock, and Burst counter. A 'Burst Trigger' starts the burst. The Output state alternates between RUN and IDLE. The Burst counter counts from 0 to 7, then resets to 0. HRTIM_BMCOMP = 4 and HRTIM_BMPER = 7 are indicated.

The diagram illustrates the burst mode operation. The 'Counter' shows a sawtooth waveform. The 'Output' shows a PWM signal. The 'Output state' is divided into 'RUN' and 'IDLE' periods. The 'Burst clock' is a periodic signal. The 'Burst counter' counts from 0 to 7, then resets to 0. The 'Burst Trigger' initiates the burst. The values HRTIM_BMCOMP = 4 and HRTIM_BMPER = 7 are shown.

Timing diagram for burst mode operation. It shows five waveforms: Counter (sawtooth), Output (PWM), Output state (RUN/IDLE), Burst clock, and Burst counter. A 'Burst Trigger' starts the burst. The Output state alternates between RUN and IDLE. The Burst counter counts from 0 to 7, then resets to 0. HRTIM_BMCOMP = 4 and HRTIM_BMPER = 7 are indicated.

The burst mode controller consists of:

The burst mode controller is able to take over the control of any of the 10 PWM outputs. The state of each output during a burst mode operation is programmed using IDLESx and IDLEMx bits in the HRTIM_OUTxR register, as in Table 320 .

Table 320. Timer output programming for burst mode

IDLEMxIDLESxOutput state during burst mode
0XNo action: the output is not affected by the burst mode operation.
10Output inactive during the burst
11Output active during the burst

Note: IDLEMx bit must not be changed while the burst mode is active.

The burst mode controller only acts on the output stage. A number of events are still generated during the idle period:

During the burst mode, neither start nor reset events are generated on the HRTIM_SCOUT output, even if TxBM bit is set.

Operating mode

It is necessary to have the counter enabled (TxCEN bit set) before using the burst mode on a given timing unit. The burst mode is enabled with BME bit in the HRTIM_BMCR register.

It can operate in continuous or single-shot mode, using BMOM bit in the HRTIM_BMCR register. The continuous mode is enabled when BMOM = 1. The Burst operation is maintained until BMSTAT bit in HRTIM_BMCR is reset to terminate it.

In single-shot mode (BMOM = 0), the idle sequence is executed once, following the burst mode trigger, and the normal timer operation is resumed immediately after.

The duration of the idle and run periods is defined with a burst mode counter and 2 registers. The HRTIM_BMCMR register defines the number of counts during which the selected timer(s) are in an idle state (idle period). HRTIM_BMPER defines the overall burst mode period (sum of the idle and run periods). Once the initial burst mode trigger has occurred, the idle period length is HRTIM_BMCMR+1, the overall burst period is HRTIM_BMPER+1.

Note: The burst mode period must not be less than or equal to the deadtime duration defined with DTRx[8:0] and DTFx[8:0] bitfields.

The counters of the timing units and the master timer can be stopped and reset during the burst mode operation. HRTIM_BMCR holds 6 control bits for this purpose: MTBM (master) and TABM..TEBM for Timer A..E.

When MTBM or TxBM bit is reset, the counter clock is maintained. This allows to keep a phase relationship with other timers in multiphase systems, for instance.

When MTBM or TxBM bit is set, the corresponding counter is stopped and maintained in reset state during the burst idle period. This allows to have the timer restarting a full period when exiting from idle. If SYNCSRC[1:0] = 00 or 10 (synchronization output on the master start or timer A start), a pulse is sent on the HRTIM_SCOUT output when exiting the burst mode.

Note: TxBM bit must not be set when the balanced idle mode is active (DLYPRT[1:0] = 0x11).

Burst mode clock

The burst mode controller counter can be clocked by several sources, selected with BMCLK[3:0] bits in the HRTIM_BMCR register:

Table 321. Burst mode clock sources from general purpose timer
BMCLK[3:0]Clock source
0110hrtim_bm_ck1: TIM16 OC
0111hrtim_bm_ck2: TIM17 OC
1000hrtim_bm_ck3: TIM7 TRGO
1001hrtim_bm_ck4: Reserved

The pulsewidth on TIMxx OC output must be at least \( N_{f_{HRTIM}} \) clock cycles long to be detected by the HRTIM burst mode controller.

Burst mode triggers

To trigger the burst operation, 32 sources are available and are selected using the HRTIM_BMTRGR register:

These sources can be combined to have multiple concurrent triggers.

Burst mode is not re-triggerable. In continuous mode, new triggers are ignored until the burst mode is terminated, while in single-shot mode, the triggers are ignored until the current burst completion including run periods (HRTIM_BMPER+1 cycles). This is also valid for software trigger (the software bit is reset by hardware even if it is discarded).

Figure 318 shows how the burst mode is started in response to an external event, either immediately or on the timer period following the event.

Figure 318. Burst mode trigger on external event Timing diagram showing burst mode trigger on external event. The diagram illustrates two scenarios: 'Trigger on external event' and 'Trigger on timer period following external event'. Both show the Counter (sawtooth wave), Output (square wave), and Output state (RUN, IDLE, RUN) over time. An external event is shown as a falling edge. In the first scenario, the burst starts immediately upon the event. In the second scenario, the burst starts on the next timer period following the event. The diagram is labeled MS32284V1.

The figure is a timing diagram illustrating the burst mode trigger on an external event. It is divided into two horizontal sections. The top section, labeled 'Trigger on external event', shows an 'External event' line with a falling edge. Below it, the 'Counter' is shown as a sawtooth wave. The 'Output' is a square wave that goes high immediately after the falling edge of the external event. The 'Output state' is shown as a sequence of RUN, IDLE, and RUN periods. The bottom section, labeled 'Trigger on timer period following external event', shows the same 'External event' line. The 'Counter' is shown as a sawtooth wave. The 'Output' is a square wave that goes high on the next rising edge of the counter. The 'Output state' is shown as a sequence of RUN, IDLE, and RUN periods. The diagram is labeled MS32284V1.

Timing diagram showing burst mode trigger on external event. The diagram illustrates two scenarios: 'Trigger on external event' and 'Trigger on timer period following external event'. Both show the Counter (sawtooth wave), Output (square wave), and Output state (RUN, IDLE, RUN) over time. An external event is shown as a falling edge. In the first scenario, the burst starts immediately upon the event. In the second scenario, the burst starts on the next timer period following the event. The diagram is labeled MS32284V1.

For TAEEV7 and TDEEV8 combined triggers (trigger on a Timer period following an external event), the external event detection is always active, regardless of the burst mode programming and the on-going burst operation:

Note: TAEEV7 and TDEEV8 triggers are valid only after a period event. If the counter is reset before the period event, the pending hrtim_evt7/8 event is discarded.

Burst mode delayed entry

By default, the outputs are taking their idle level (as per IDLES1 and IDLES2 setting) immediately after the burst mode trigger.

It is also possible to delay the burst mode entry and force the output to an inactive state during a programmable period before the output takes its idle state. This is useful when driving two complementary outputs, one of them having an active idle state, to avoid a deadtime violation as shown on Figure 319 . This prevents any risk of shoot through current in half-bridges, but causes a delayed response to the burst mode entry.

Figure 319. Delayed burst mode entry with deadtime enabled and IDLESx = 1

Timing diagram showing delayed burst mode entry with deadtime enabled and IDLESx = 1. The diagram illustrates the output state transitions from RUN to IDLE for two outputs (Output 1 and Output 2) under two conditions: when deadtime is disabled (DIDL1=0, DIDL2=0) and when deadtime is enabled (DIDL1=1, DIDL2=1).

The figure is a timing diagram illustrating the behavior of HRTIM outputs during a burst mode entry. A 'Burst Trigger' signal is shown at the top, indicating the start of the burst. The 'Output State' is divided into 'RUN' and 'IDLE' phases. Below this, two sets of output waveforms are shown. The first set, for 'DIDL1 = 0' and 'DIDL2 = 0', shows 'Output 1' (IDLES1 = 1) and 'Output 2' (IDLES2 = 0). A 'Deadtime violation' is indicated at the transition point. The second set, for 'DIDL1 = 1' and 'DIDL2 = 1', shows 'Output 1' (IDLES1 = 1) and 'Output 2' (IDLES2 = 0). A 'Delayed idle state' is indicated at the transition point, showing a delay before the output reaches its idle state.

Timing diagram showing delayed burst mode entry with deadtime enabled and IDLESx = 1. The diagram illustrates the output state transitions from RUN to IDLE for two outputs (Output 1 and Output 2) under two conditions: when deadtime is disabled (DIDL1=0, DIDL2=0) and when deadtime is enabled (DIDL1=1, DIDL2=1).

The delayed burst entry mode is enabled with DIDLx bit in the HRTIM_OUTxR register (one enable bit per output). It forces a deadtime insertion before the output takes its idle state. Each TIMx output has its own deadtime value:

DIDLx bits can be set only if one of the outputs has an active idle level during the burst mode (IDLES = 1) and only when positive deadtimes are used (SDTR/SDTF set to 0).

Note: The delayed burst entry mode uses deadtime generator resources. Consequently, when any of the 2 DIDLx bits is set and the corresponding timing unit uses the deadtime insertion (DTEN bit set in HRTIM_OUTxR), it is not possible to use the timerx output 2 as a filter for external events (Tx2 filtering signal is not available).

When durations defined by DTRx[8:0] and DTFx[8:0] are lower than 3 f HRTIM clock cycle periods, the limitations related to the narrow pulse management listed in Section 37.3.6 must be applied.

When the burst mode entry arrives during the regular deadtime, it is aborted and a new deadtime is re-started corresponding to the inactive period, as on Figure 320 .

Figure 320. Delayed Burst mode entry during deadtime

Timing diagram showing delayed burst mode entry during deadtime for outputs Tx1 and Tx2. The diagram illustrates the transition from active to idle states and the handling of deadtime (DT) when a burst mode entry occurs during the deadtime period.

The diagram shows two output waveforms, Tx1 and Tx2. Tx1 starts high and goes low at a certain point. Tx2 starts low and goes high at the same point. A vertical dashed line indicates the 'Burst mode entry' point. At this point, both outputs are in their deadtime (DT) period. The 'Regular deadtime (aborted when burst is triggered)' is shown as a box labeled 'DT'. The 'Delayed Burst mode entry deadtime' is shown as another box labeled 'DT' below the first one. After the burst mode entry, both outputs go to their 'IDLES' state. The diagram is labeled with 'MS32286V1' in the bottom right corner.

Timing diagram showing delayed burst mode entry during deadtime for outputs Tx1 and Tx2. The diagram illustrates the transition from active to idle states and the handling of deadtime (DT) when a burst mode entry occurs during the deadtime period.

Burst mode exit

The burst mode exit is either forced by software (in continuous mode) or once the idle period is elapsed (in single-shot mode). In both cases, the counter is re-started immediately (if it was hold in a reset state with MTBM or TxBM bit = 1), but the effective output state transition from the idle to active mode only happens after the programmed set/reset event.

A burst period interrupt is generated in single-shot and continuous modes when BMPERIE enable bit is set in the HRTIM_IER register. This interrupt can be used to synchronize the burst mode exit with a burst period in continuous burst mode.

Figure 321 shows how a normal operation is resumed when the deadtime is enabled. Although the burst mode exit is immediate, this is only effective on the first set event on any of the complementary outputs.

Two different cases are presented:

  1. 1. The burst mode ends while the signal is inactive on the crossbar output waveform. The active state is resumed on Tx1 and Tx2 on the set event for the Tx1 output, and the Tx2 output does not take the complementary level on burst exit.
  2. 2. The burst mode ends while the crossbar output waveform is active: the activity is resumed on the set event of Tx2 output, and Tx1 does not take the active level immediately on burst exit.

Figure 321. Burst mode exit when the deadtime generator is enabled

Timing diagram showing burst mode exit with deadtime generator enabled. The diagram illustrates the relationship between the Timx counter, Out1 crossbar waveform, Burst state, and two output signals, Tx1 and Tx2. The Timx counter is a sawtooth waveform. The Out1 crossbar waveform is a square wave. The Burst state transitions from IDLE to RUN. The Tx1 and Tx2 signals show transitions that occur after the burst mode exit, indicating the effect of the deadtime generator.

The figure is a timing diagram with the following signals and states:

The diagram illustrates that when the deadtime generator is enabled, the output signals (Tx1 and Tx2) do not immediately reflect the burst mode exit. Instead, they continue to transition according to the programmed deadtime and pulse widths after the burst mode has already exited the IDLE state.

MS32287V1

Timing diagram showing burst mode exit with deadtime generator enabled. The diagram illustrates the relationship between the Timx counter, Out1 crossbar waveform, Burst state, and two output signals, Tx1 and Tx2. The Timx counter is a sawtooth waveform. The Out1 crossbar waveform is a square wave. The Burst state transitions from IDLE to RUN. The Tx1 and Tx2 signals show transitions that occur after the burst mode exit, indicating the effect of the deadtime generator.

The behavior described above is slightly different when the push-pull mode is enabled. The push-pull mode forces an output reset at the beginning of the period if the output is inactive, or symmetrically forces an active level if the output was high during the preceding period.

Consequently, an output with an active idle state can be reset at the time the burst mode is exited even if no transition is explicitly programmed. For symmetrical reasons, an output can be set at the time the burst mode is exited even if no transition is explicitly programmed, in case it was active when it entered in idle state.

Burst mode registers preloading and update

BMPREN bit (Burst mode Preload Enable) allows to have the burst mode compare and period registers preloaded (HRTIM_BMCMP and HRTIM_BMPER).

When BMPREN is set, the transfer from preload to active register happens:

A write into the HRTIM_BMPER period register disables the update temporarily, until the HRTIM_BMCMP compare register is written, to ensure the consistency of the two registers when they are modified.

If the compare register only needs to be changed, a single write is necessary. If the period only needs to be changed, it is also necessary to re-write the compare to have the new values taken into account.

When BMPREN bits is reset, the write access into BMCMR and BMPER directly updates the active register. In this case, it is necessary to consider when the update is done during the overall burst period, for the 2 cases below:

a) Compare register update

If the new compare value is above the current burst mode counter value, the new compare is taken into account in the current period.

If the new compare value is below the current burst mode counter value, the new compare is taken into account in the next burst period in continuous mode, and ignored in single-shot mode (no compare match will occur and the idle state will last until the end of the idle period).

b) Period register update

If the new period value is above the current burst mode counter value, the change is taken into account in the current period.

Note: If the new period value is below the current burst mode counter value, the new period will not be taken into account, the burst mode counter will overflow (at 0xFFFF) and the change will be effective in the next period. In single-shot mode, the counter will roll over at 0xFFFF and the burst mode will re-start for another period up to the new programmed value.

Burst mode emulation using a compound register

The burst mode controller only controls one or a set of timers for a single converter. When the burst mode is necessary for multiple independent timers, it is possible to emulate a simple burst mode controller using the DMA and the HRTIM_CMP1CxR compound register, which holds aliases of both the repetition and the Compare 1 registers.

This is applicable to a converter which only requires a simple PWM (typically a buck converter), where the duty cycle only needs to be updated. In this case, the CMP1 register is used to reset the output (and define the duty cycle), while it is set on the period event.

In this case, a single 32-bit write access in CMP1CxR is sufficient to define the duty cycle (with the CMP1 value) and the number of periods during which this duty cycle is maintained (with the repetition value). To implement a burst mode, it is then only necessary to transfer by DMA (upon repetition event) two 32-bit data in continuous mode, organized as follows:

CMP1CxR = {REP_Run; CMP1 = Duty_Cycle}, {REP_Idle; CMP1 = 0}

For instance, the values:

{0x0003 0000}: CMP1 = 0 for 3 periods

{0x0001 0800}: CMP1 = 0x0800 for 1 period

will provide a burst mode with 2 periods active every 6 PWM periods, as shown on Figure 322 .

Figure 322. Burst mode emulation example

Timing diagram for burst mode emulation showing Counter, CMPC1xR, and Output signals over time.

The diagram illustrates burst mode emulation. The Counter shows a sawtooth waveform. Vertical dashed lines indicate REP DMA request events. Below the counter, the CMPC1xR register values are shown in segments: 0x0001 0800 , 0x0003 0000 , and 0x0001 0800 . The Output signal is a pulse train. At the bottom, three operational periods are labeled: RUN , IDLE (emulated) , and RUN . Configuration values are provided for each period:

Timing diagram for burst mode emulation showing Counter, CMPC1xR, and Output signals over time.

37.3.14 Chopper

A high-frequency carrier can be added on top of the timing unit output signals to drive isolation transformers. This is done in the output stage before the polarity insertion, as shown on Figure 323 , using CHP1 and CHP2 bits in the HRTIM_OUTxR register, to enable chopper on outputs 1 and 2, respectively.

Figure 323. Carrier frequency signal insertion

Block diagram of carrier frequency signal insertion (Chopper) showing internal components and output stages.

The diagram shows the internal architecture for carrier frequency insertion. A Chopper block contains two Carrier generation units. The first unit takes \( f_{HRTIM} \) (divided by 16) and a Sync signal to generate a carrier for CHP1 . The second unit does the same for CHP2 . The main output signals x1 and x2 are ANDed with their respective carrier signals (CHP1 and CHP2). These ANDed signals pass through a Fault / Idle block, which also receives input from Fault / Idle sources . The signals then pass through an inverter and a Polarity selection block to produce the final outputs HRTIM_CHx1 and HRTIM_CHx2 .

Block diagram of carrier frequency signal insertion (Chopper) showing internal components and output stages.

The chopper parameters can be adjusted using the HRIM_CHPxR register, with the possibility to define a specific pulsewidth at the beginning of the pulse, to be followed by a carrier frequency with programmable frequency and duty cycle, as in Figure 324 .

CARFRQ[3:0] bits define the frequency, ranging from 156 MHz to 25 MHz (for \( f_{HRTIM} = 400 \) MHz) following the formula \( F_{CHPFRQ} = f_{HRTIM} / (16 \times (CARFRQ[3:0]+1)) \) .

The duty cycle can be adjusted by 1/8 step with CARDTY[2:0], from 0/8 up to 7/8 duty cycle. When CARDTY[2:0] = 000 (duty cycle = 0/8), the output waveform only contains the starting pulse following the rising edge of the reference waveform, without any added carrier.

The pulsewidth of the initial pulse is defined using the STRPW[3:0] bitfield as follows: \( t_{1STPW} = (STRPW[3:0]+1) \times 16 \times t_{HRTIM} \) and ranges from 40 ns to 0.63 µs (for \( f_{HRTIM}=400 \) MHz).

The carrier frequency parameters are defined based on the \( f_{HRTIM} \) frequency, and are not dependent from the CKPSC[2:0] setting.

In chopper mode, the carrier frequency and the initial pulsewidth are combined with the reference waveform using an AND function. A synchronization is performed at the end of the initial pulse to have a repetitive signal shape.

The chopping signal is stopped at the end of the output waveform active state, without waiting for the current carrier period to be completed. It can thus contain shorter pulses than programmed.

Figure 324. HRTIM outputs with Chopper mode enabled

Timing diagram showing three waveforms: A1, Carrier, and TA1. A1 is a long pulse. Carrier is a high-frequency square wave. TA1 is the output, which is the AND of A1 and Carrier. The diagram shows the 'Start' of the Carrier signal coinciding with the rising edge of A1. The 'Start pulsewidth' is the duration of the initial pulse of TA1. The 'Carrier period' is the period of the Carrier signal. The diagram is labeled MS32335V1.
Timing diagram showing three waveforms: A1, Carrier, and TA1. A1 is a long pulse. Carrier is a high-frequency square wave. TA1 is the output, which is the AND of A1 and Carrier. The diagram shows the 'Start' of the Carrier signal coinciding with the rising edge of A1. The 'Start pulsewidth' is the duration of the initial pulse of TA1. The 'Carrier period' is the period of the Carrier signal. The diagram is labeled MS32335V1.

Note: CHP1 and CHP2 bits must be set prior to the output enable done with TxyOEN bits in the HRTIM_OENR register.

CARFRQ[2:0], CARDTY[2:0] and STRPW[3:0] bitfields cannot be modified while the chopper mode is active (at least one of the two CHPx bits is set).

37.3.15 Fault protection

The HRTIMER has a versatile fault protection circuitry to disable the outputs in case of an abnormal operation. Once a fault has been triggered, the outputs take a predefined safe state. This state is maintained until the output is re-enabled by software. In case of a permanent fault request, the output will remain in its fault state, even if the software attempts to re-enable them, until the fault source disappears.

The HRTIM has 5 FAULT input channels; all of them are available and can be combined for each of the 5 timing units, as shown on Figure 325 .

Figure 325. Fault protection circuitry (FAULT1 fully represented, FAULT2..5 partially)

Figure 325: Fault protection circuitry diagram. The diagram shows a 'Timer x' block connected to 'HRTIM_CHx1' and 'HRTIM_CHx2' outputs through inverters controlled by 'FAULT1[1:0]' and 'FAULT2[1:0]'. Below, 'HRTIM_FLT[1]' is connected to a multiplexer controlled by 'FLT1SRC'. The output goes through a 'Polarity' block (with an inverter option) and a 'Filter' block controlled by 'FLT1F[3:0]'. The filtered signal is ANDed with 'FLT1E' and 'SYSFLT' (from 'hrtim_sys_flt'). This is followed by a series of OR gates for 'Fault2', 'Fault3', 'Fault4', and 'Fault5', each enabled by 'FLT2EN', 'FLT3EN', 'FLT1EN', and another 'FLT1EN' respectively. A dashed box labeled 'Available for some FAULT channels only' contains a 'COMPin' comparator with a 'Ref.' input. The diagram is labeled 'MSv40433V3'.
Figure 325: Fault protection circuitry diagram. The diagram shows a 'Timer x' block connected to 'HRTIM_CHx1' and 'HRTIM_CHx2' outputs through inverters controlled by 'FAULT1[1:0]' and 'FAULT2[1:0]'. Below, 'HRTIM_FLT[1]' is connected to a multiplexer controlled by 'FLT1SRC'. The output goes through a 'Polarity' block (with an inverter option) and a 'Filter' block controlled by 'FLT1F[3:0]'. The filtered signal is ANDed with 'FLT1E' and 'SYSFLT' (from 'hrtim_sys_flt'). This is followed by a series of OR gates for 'Fault2', 'Fault3', 'Fault4', and 'Fault5', each enabled by 'FLT2EN', 'FLT3EN', 'FLT1EN', and another 'FLT1EN' respectively. A dashed box labeled 'Available for some FAULT channels only' contains a 'COMPin' comparator with a 'Ref.' input. The diagram is labeled 'MSv40433V3'.

Each fault channel is fully configurable using HRTIM_FLTINR1 and HRTIM_FLTINR2 registers before being routed to the timing units. FLTxSRC bit selects the source of the Fault signal, that can be either a digital input or an internal event (built-in comparator output).

Table 322 summarizes the available sources for each of the 10 faults channels:

Table 322. Fault inputs

Fault channelExternal Input (FLTxSRC = 0)On-chip source (FLTxSRC = 1)
FAULT 1PA15COMP1
FAULT 2PC11COMP2
FAULT 3PD4NC
FAULT 4PB3NC
FAULT 5PG10NC

The polarity of the signal can be selected to define the active level, using the FLTxP polarity bit in HRTIM_FLTINRx registers. If FLTxP = 0, the signal is active at low level; if FLTxP = 1, it is active when high.

The fault information can be filtered after the polarity setting. If FLTxF[3:0] bitfield is set to 0000, the signal is not filtered and will act asynchronously, independently from the \( f_{HRTIM} \) clock. For all other FLTxF[3:0] bitfield values, the signal is digitally filtered. The digital filter is made of a counter in which a number N of valid samples is needed to validate a transition on the output. If the input value changes before the counter has reached the value N, the counter is reset and the transition is discarded (considered as a spurious event). If the counter reaches N, the transition is considered as valid and transmitted as a correct external

event. Consequently, the digital filter adds a latency to the external events being filtered, depending on the sampling clock and on the filter length (number of valid samples expected). Figure 326 shows how a spurious fault signal is filtered.

Timing diagram showing fault signal filtering. The top section shows a continuous high-frequency clock (f_HRTIM) and a fault input that goes high and then low. The filter counter counts up to 4 while the input is high, then resets to 0 when it goes low. The filtered signal goes high when the counter reaches 4 and stays high until the counter resets. The bottom section shows a similar scenario but with a different fault input pattern, where the input goes high, then low, then high again. The filter counter counts up to 4 during the second high pulse, and the filtered signal goes high at that point.

Figure 326. Fault signal filtering (FLTxF[3:0]= 0010: \( f_{\text{SAMPLING}} = f_{\text{HRTIM}} \) , N = 4)

The figure illustrates the digital filtering of a fault signal. The top part shows a continuous high-frequency clock ( \( f_{\text{HRTIM}} \) ) and a fault input that goes high and then low. The filter counter counts up to 4 while the input is high, then resets to 0 when it goes low. The filtered signal goes high when the counter reaches 4 and stays high until the counter resets. The bottom part shows a similar scenario but with a different fault input pattern, where the input goes high, then low, then high again. The filter counter counts up to 4 during the second high pulse, and the filtered signal goes high at that point.

Timing diagram showing fault signal filtering. The top section shows a continuous high-frequency clock (f_HRTIM) and a fault input that goes high and then low. The filter counter counts up to 4 while the input is high, then resets to 0 when it goes low. The filtered signal goes high when the counter reaches 4 and stays high until the counter resets. The bottom section shows a similar scenario but with a different fault input pattern, where the input goes high, then low, then high again. The filter counter counts up to 4 during the second high pulse, and the filtered signal goes high at that point.

The filtering period ranges from 2 cycles of the \( f_{\text{HRTIM}} \) clock up to 8 cycles of the \( f_{\text{FLTS}} \) clock divided by 32. \( f_{\text{FLTS}} \) is defined using FLTSD[1:0] bits in the HRTIM_FLTINR2 register.

Table 323 summarizes the sampling rate and the filter length. A jitter of 1 sampling clock period must be subtracted from the filter length to take into account the uncertainty due to the sampling and have the effective filtering.

Table 323. Sampling rate and filter length vs FLTxF[3:0] and clock setting

FLTxF[3:0]\( f_{\text{FLTS}} \) vs FLTSD[1:0]Filter length for \( f_{\text{HRTIM}} = 400 \text{ MHz} \)
00011011MinMax
0001,0010,0011\( f_{\text{HRTIM}} \)\( f_{\text{HRTIM}} \)\( f_{\text{HRTIM}} \)\( f_{\text{HRTIM}} \)\( f_{\text{HRTIM}} \) , N = 2
5 ns
\( f_{\text{HRTIM}} \) , N = 8
20 ns
0100, 0101\( f_{\text{HRTIM}} / 2 \)\( f_{\text{HRTIM}} / 4 \)\( f_{\text{HRTIM}} / 8 \)\( f_{\text{HRTIM}} / 16 \)\( f_{\text{HRTIM}} / 2 \) , N = 6
30 ns
\( f_{\text{HRTIM}} / 16 \) , N = 8
320 ns
0110, 0111\( f_{\text{HRTIM}} / 4 \)\( f_{\text{HRTIM}} / 8 \)\( f_{\text{HRTIM}} / 16 \)\( f_{\text{HRTIM}} / 32 \)\( f_{\text{HRTIM}} / 4 \) , N = 6
60 ns
\( f_{\text{HRTIM}} / 32 \) , N = 8
640 ns
1000, 1001\( f_{\text{HRTIM}} / 8 \)\( f_{\text{HRTIM}} / 16 \)\( f_{\text{HRTIM}} / 32 \)\( f_{\text{HRTIM}} / 64 \)\( f_{\text{HRTIM}} / 8 \) , N = 6
120 ns
\( f_{\text{HRTIM}} / 64 \) , N = 8
1.28 \( \mu\text{s} \)

Table 323. Sampling rate and filter length vs FLTFxF[3:0] and clock setting (continued)

FLTFxF[3:0]\( f_{\text{FLTS}} \) vs FLTSD[1:0]Filter length for \( f_{\text{HRTIM}} = 400 \text{ MHz} \)
00011011MinMax
1010, 1011, 1100\( f_{\text{HRTIM}} / 16 \)\( f_{\text{HRTIM}} / 32 \)\( f_{\text{HRTIM}} / 64 \)\( f_{\text{HRTIM}} / 128 \)\( f_{\text{HRTIM}} / 16 \) , N = 5
200 ns
\( f_{\text{HRTIM}} / 128 \) , N = 8
2.56 \( \mu\text{s} \)
1101, 1110, 1111\( f_{\text{HRTIM}} / 32 \)\( f_{\text{HRTIM}} / 64 \)\( f_{\text{HRTIM}} / 128 \)\( f_{\text{HRTIM}} / 256 \)\( f_{\text{HRTIM}} / 32 \) , N = 5
400 ns
\( f_{\text{HRTIM}} / 256 \) , N = 8
5.12 \( \mu\text{s} \)

System fault input (hrtim_sys_flt)

This fault is provided by the MCU Class B circuitry (see the System configuration controller (SYSCFG) section for details) and corresponds to a system fault coming from:

This input overrides the FAULT inputs and disables all outputs having FAULTy[1:0] = 01, 10, 11.

For each FAULT channel, a write-once FLTxLOCK bit in the HRTIM_FLTxR register allows to lock FLTxEN, FLTxP, FLTxSRC, FLTFxF[3:0] bits (it renders them read-only), for functional safety purpose. If enabled, the fault conditioning set-up is frozen until the next HRTIM or system reset.

Once the fault signal is conditioned as explained above, it is routed to the timing units. For any of them, the 5 fault channels are enabled using bits FLT1EN to FLT5EN in the HRTIM_FLTxR register, and they can be selected simultaneously (the sysfault is automatically enabled as long as the output is protected by the fault mechanism). This allows to have, for instance:

A write-once FLTLCK bit in the HRTIM_FLTxR register allows to lock FLTxEN bits (it renders them read-only) until the next reset, for functional safety purpose. If enabled, the timing unit fault-related set-up is frozen until the next HRTIM or system reset.

For each of the timers, the output state during a fault is defined with FAULT1[1:0] and FAULT2[1:0] bits in the HRTIM_OUTxR register (see Section 37.3.12 ).

37.3.16 Auxiliary outputs

Timer A to E have auxiliary outputs in parallel with the regular outputs going to the output stage. They provide the following internal status, events and signals:

The auxiliary outputs are taken either before or after the burst mode controller, depending on the HRTIM operating mode. An overview is given on Figure 327 .

Figure 327. Auxiliary outputs

Figure 327: Auxiliary outputs block diagram. The diagram shows the signal flow from the 'Set / reset crossbar with events ORing' block through 'Push-pull or deadtime insertion' blocks to a 'Burst mode controller' and 'Auxiliary output circuitry'. The main outputs 'Out 1' and 'Out 2' are shown going to the output stage. The auxiliary output circuitry provides feedback signals: SETxy / RSTxy flags, Interrupts and DMA requests, Capture triggers, and External event filtering (Out 2 channel only).

The diagram illustrates the internal architecture of the HRTIM auxiliary outputs. On the left, a block labeled 'Set / reset crossbar with events ORing' has two output lines, 'Out 1' and 'Out 2'. These lines pass through 'Push-pull or deadtime insertion' blocks. The signals then split: one path goes to a 'Burst mode controller' block, and the other goes to an 'Auxiliary output circuitry' block. The 'Burst mode controller' has two output lines, 'Out 1' and 'Out 2', which lead to 'To the output stage'. The 'Auxiliary output circuitry' block has four output lines pointing to the left, labeled 'SETxy / RSTxy flags', 'Interrupts and DMA requests', 'Capture triggers', and 'External event filtering (Out 2 channel only)'. A small text 'MS32290V1' is in the bottom right corner of the diagram.

Figure 327: Auxiliary outputs block diagram. The diagram shows the signal flow from the 'Set / reset crossbar with events ORing' block through 'Push-pull or deadtime insertion' blocks to a 'Burst mode controller' and 'Auxiliary output circuitry'. The main outputs 'Out 1' and 'Out 2' are shown going to the output stage. The auxiliary output circuitry provides feedback signals: SETxy / RSTxy flags, Interrupts and DMA requests, Capture triggers, and External event filtering (Out 2 channel only).

By default, the auxiliary outputs are copies of outputs Tx1 and Tx2. The exceptions are:

Figure 328. Auxiliary and main outputs during burst mode (DIDLx = 0)

Timing diagram showing auxiliary and main outputs during burst mode. The diagram illustrates the state of four outputs (Auxiliary output1, Auxiliary output2, Output Tx1, Output Tx2) over time. Burst mode entry and exit are marked. During burst mode, the main outputs (Tx1, Tx2) are forced to an IDLES level. Upon exit, the IDLES level is continued until a transition to the opposite level occurs. The auxiliary outputs continue their normal switching. MS32291V1
Timing diagram showing auxiliary and main outputs during burst mode. The diagram illustrates the state of four outputs (Auxiliary output1, Auxiliary output2, Output Tx1, Output Tx2) over time. Burst mode entry and exit are marked. During burst mode, the main outputs (Tx1, Tx2) are forced to an IDLES level. Upon exit, the IDLES level is continued until a transition to the opposite level occurs. The auxiliary outputs continue their normal switching. MS32291V1

The signal on the auxiliary output can be slightly distorted when exiting from the burst mode or when re-enabling the outputs after a delayed protection, if this happens during a deadtime. In this case, the deadtime applied to the auxiliary outputs is extended so that the deadtime on the main outputs is respected. Figure 329 gives some examples.

Figure 329. Deadtime distortion on auxiliary output when exiting burst mode

Timing diagram illustrating deadtime distortion on auxiliary outputs when exiting burst mode. It shows two cases. Case 1: Transition request to the same level as IDLES. The programmed deadtime is maintained for both main and auxiliary outputs. Case 2: Transition request to a level opposite to IDLES. The deadtime on the auxiliary output is extended to match the programmed deadtime of the main output. The diagram includes signals for Out1 reset request, Burst exit, Auxiliary output1, Auxiliary output2, Output Tx1, and Output Tx2, with IDLES levels indicated. MS32292V1
Timing diagram illustrating deadtime distortion on auxiliary outputs when exiting burst mode. It shows two cases. Case 1: Transition request to the same level as IDLES. The programmed deadtime is maintained for both main and auxiliary outputs. Case 2: Transition request to a level opposite to IDLES. The deadtime on the auxiliary output is extended to match the programmed deadtime of the main output. The diagram includes signals for Out1 reset request, Burst exit, Auxiliary output1, Auxiliary output2, Output Tx1, and Output Tx2, with IDLES levels indicated. MS32292V1

37.3.17 Synchronizing the HRTIM with other timers or HRTIM instances

The HRTIM provides options for synchronizing multiple HRTIM instances, as a master unit (generating a synchronization signal) or as a slave (waiting for a trigger to be synchronized). This feature can also be used to synchronize the HRTIM with other timers, either external or on-chip. The synchronization circuitry is controlled inside the master timer.

Synchronization output

This section explains how the HRTIM must be configured to synchronize external resources and act as a master unit.

Four events can be selected as the source to be sent to the synchronization output. This is done using SYNCSRC[1:0] bits in the HRTIM_MCR register, as follows:

SYNCOUT[1:0] bits in the HRTIM_MCR register specify how the synchronization event is generated.

The synchronization pulses are generated on the HRTIM_SCOUT output pin, with SYNCOUT[1:0] = 1x. SYNCOUT[0] bit specifies the polarity of the synchronization signal. If SYNCOUT[0] = 0, the HRTIM_SCOUT pin has a low idle level and issues a positive pulse of \( 16 f_{\text{HRTIM}} \) clock cycles length for the synchronization). If SYNCOUT[0] = 1, the idle level is high and a negative pulse is generated.

Note: The synchronization pulse is followed by an idle level of \( 16 f_{\text{HRTIM}} \) clock cycles during which any new synchronization request is discarded. Consequently, the maximum synchronization frequency is \( f_{\text{HRTIM}}/32 \) .

The idle level on the HRTIM_SCOUT pin is applied as soon as the SYNCOUT[1:0] bits are enabled (i.e. the bitfield value is different from 00).

The synchronization output initialization procedure must be done prior to the configuration of the MCU outputs and counter enable, in the following order:

  1. 1. SYNCOUT[1:0] and SYNCSRC[1:0] bitfield configuration in HRTIM_MCR
  2. 2. HRTIM_SCOUT pin configuration (see the General-purpose I/Os section)
  3. 3. Master or Timer A counter enable (MCEN or TACEN bit set)

When the synchronization input mode is enabled and starts the counter (using SYNCSTRM/SYNCSTRTx bits) simultaneously with the synchronization output mode (SYNCSRC[1:0] = 00 or 10), the output pulse is generated only when the counter is starting or is reset while running. Any reset request clearing the counter without causing it to start will not affect the synchronization output.

Synchronization input

The HRTIM can be synchronized by external sources, as per the programming of the SYNCIN[1:0] bits in the HRTIM_MCR register:

This bitfield cannot be changed once the destination timer (master timer or timing unit) is enabled (MCEN and/or TxCEN bit set).

The HRTIM_SCIN input is rising-edge sensitive. The timer behavior is defined with the following bits present in HRTIM_MCR and HRTIM_TIMxCR registers (see Table 324 for details):

The synchronization events are taken into account only once the related counters are enabled (MCEN or TxCEN bit set). A synchronization request triggers a SYNC interrupt.

Note: A synchronized start event resets the counter if the current counter value is above the active period value.

The effect of the synchronization event depends on the timer operating mode, as summarized in Table 324 .

Table 324. Effect of sync event vs timer operating modes

Operating modeSYNC RSTxSYNC STRTxBehavior following a SYNC reset or start event
Single-shot non-retriggerable01Start events are taken into account when the counter is stopped and:
– once the MCEN or TxCEN bits are set
– once the period has been reached.
A start occurring when the counter is stopped at the period value resets the counter. A reset request clears the counter but does not start it (the counter can solely be re-started with the synchronization). Any reset occurring during the counting is ignored (as during regular non-retriggerable mode).
1XReset events are starting the timer counting. They are taken into account only if the counter is stopped and:
– once the MCEN or TxCEN bits are set
– once the period has been reached.
When multiple reset requests are selected (from HRTIM_SCIN and from internal events), only the first arriving request is taken into account.

Table 324. Effect of sync event vs timer operating modes (continued)

Operating modeSYNC
RSTx
SYNC
STRTx
Behavior following a SYNC reset or start event
Single-shot
retriggerable
01The counter start is effective only if the counter is not started or period is elapsed. Any synchronization event occurring after counter start has no effect.
A start occurring when the counter is stopped at the period value resets the counter. A reset request clears the counter but does not start it (the counter can solely be started by the synchronization). A reset occurring during counting is taken into account (as during regular retriggerable mode).
1XThe reset from HRTIM_SCIN is taken into account as any HRTIM counter reset from internal events and is starting or re-starting the timer counting. When multiple reset requests are selected, the first arriving request is taken into account.
Continuous
mode
01The timer is enabled (MCEN or TxCEN bit set) and is waiting for the synchronization event to start the counter. Any synchronization event occurring after the counter start has no effect (the counter can solely be started by the synchronization). A reset request clears the counter but does not start it.
1XThe reset from HRTIM_SCIN is taken into account as any HRTIM counter reset from internal events and is starting or re-starting the timer counting. When multiple reset requests are selected, the first arriving request is taken into account.

Figure 330 presents how the synchronized start is done in single-shot mode.

Figure 330. Counter behavior in synchronized start mode

Figure 330 shows two timing diagrams illustrating counter behavior in synchronized start mode. The top diagram shows 'SYNCSTRT, Single-shot mode, non-retriggerable' where the counter starts on a rising edge of hrtim_in_sync[x] and stops on a falling edge of the PER signal. The bottom diagram shows 'SYNCSTRT, Single-shot mode, retriggerable' where the counter restarts on subsequent rising edges of hrtim_in_sync[x] while the PER signal is still high. Both diagrams show the PER signal, Counter value, hrtim_in_sync[x] signal, and Internal reset request signal. A note 'Counter initialized by software' points to the initial counter value in both cases. The bottom diagram is labeled MSV45308V1.

Figure 330 displays two timing diagrams illustrating the counter behavior in synchronized start mode. Both diagrams show the relationship between the PER (Period) signal, the Counter value, the hrtim_in_sync[x] signal, and the Internal reset request signal.

Top Diagram: SYNCSTRT, Single-shot mode, non-retriggerable

Bottom Diagram: SYNCSTRT, Single-shot mode, retriggerable

MSV45308V1

Figure 330 shows two timing diagrams illustrating counter behavior in synchronized start mode. The top diagram shows 'SYNCSTRT, Single-shot mode, non-retriggerable' where the counter starts on a rising edge of hrtim_in_sync[x] and stops on a falling edge of the PER signal. The bottom diagram shows 'SYNCSTRT, Single-shot mode, retriggerable' where the counter restarts on subsequent rising edges of hrtim_in_sync[x] while the PER signal is still high. Both diagrams show the PER signal, Counter value, hrtim_in_sync[x] signal, and Internal reset request signal. A note 'Counter initialized by software' points to the initial counter value in both cases. The bottom diagram is labeled MSV45308V1.

37.3.18 ADC triggers

The ADCs can be triggered by the master and the 5 timing units.

4 independent triggers are available to start both the regular and the injected sequencers of the 2 ADCs. Up to 32 events can be combined (ORed) for each trigger output, in registers HRTIM_ADC1R to HRTIM_ADC4R, as shown on Figure 331 . Triggers 1/3 and 2/4 are using the same source set.

The external events can be used as a trigger. They are taken right after the conditioning defined in HRTIM_EECRx registers, and are not depending on EEFxR1 and EEFxR2 register settings.

Multiple triggering is possible within a single switching period by selecting several sources simultaneously. A typical use case is for a non-overlapping multiphase converter, where all phases can be sampled in a row using a single ADC trigger output.

Figure 331. ADC trigger selection overview

Figure 331. ADC trigger selection overview. This diagram illustrates the internal architecture for selecting ADC triggers in the HRTIM. It shows four ADC blocks (ADC 1, 2, 3, and 4) and their respective trigger inputs. Each ADC has two trigger inputs: ADC 1 and 3 use 'Trigger 1 & Trigger 3', while ADC 2 and 4 use 'Trigger 2 & Trigger 4'. Below the ADCs, there are two 3-to-8 line multiplexers. The left multiplexer is controlled by the AD1USRC[2:0] register and selects from seven sources: Master update, Timer A update, Timer B update, Timer C update, Timer D update, Timer E update, and an 'Oring of same sources'. The right multiplexer is controlled by the AD2USRC[2:0], AD3USRC[2:0], and AD4USRC[2:0] registers and performs similar selection for the other ADCs. Above the multiplexers, various signal sources are shown, including Master Cmp1..4 + PER, External Events (1..5 and 6..10), and various Timer (A-E) compare and capture/period/reset signals. These signals are connected to the multiplexers and the ADCs via a network of lines and switches. The diagram is labeled MS32338V2 in the bottom right corner.
Figure 331. ADC trigger selection overview. This diagram illustrates the internal architecture for selecting ADC triggers in the HRTIM. It shows four ADC blocks (ADC 1, 2, 3, and 4) and their respective trigger inputs. Each ADC has two trigger inputs: ADC 1 and 3 use 'Trigger 1 & Trigger 3', while ADC 2 and 4 use 'Trigger 2 & Trigger 4'. Below the ADCs, there are two 3-to-8 line multiplexers. The left multiplexer is controlled by the AD1USRC[2:0] register and selects from seven sources: Master update, Timer A update, Timer B update, Timer C update, Timer D update, Timer E update, and an 'Oring of same sources'. The right multiplexer is controlled by the AD2USRC[2:0], AD3USRC[2:0], and AD4USRC[2:0] registers and performs similar selection for the other ADCs. Above the multiplexers, various signal sources are shown, including Master Cmp1..4 + PER, External Events (1..5 and 6..10), and various Timer (A-E) compare and capture/period/reset signals. These signals are connected to the multiplexers and the ADCs via a network of lines and switches. The diagram is labeled MS32338V2 in the bottom right corner.

HRTIM_ADC1R to HRTIM_ADC4R registers are preloaded and can be updated synchronously with the timer they are related to. The update source is defined with ADxUSRC[2:0] bits in the HRTIM_CR1 register.

For instance, if ADC trigger 1 outputs Timer A CMP2 events (HRTIM_ADC1R = 0x0000 0400), HRTIM_ADC1R will be typically updated simultaneously with Timer A (AD1USRC[2:0] = 001).

When the preload is disabled (PREEN bit reset) in the source timer, the HRTIM_ADCxR registers are not preloaded either: a write access will result in an immediate update of the trigger source.

37.3.19 DAC triggers

The HRTIMER allows to have the embedded DACs updated synchronously with the timer updates.

The update events from the master timer and the timer units can generate DAC update triggers on any of the 3 hrtim_dac_trgx outputs.

Note: Each timer has its own DAC-related control register.

DACSYNC[1:0] bits of the HRTIM_MCR and HRTIM_TIMxCR registers are programmed as follows:

An output pulse of 1 \( f_{\text{HRTIM}} \) clock periods is generated on the hrtim_dac_trgx output.

When DACSYNC[1:0] bits are enabled in multiple timers, the hrtim_dac_trgx output will consist of an OR of all timers' update events. For instance, if DACSYNC = 1 in timer A and in timer B, the update event in timer A will be ORed with the update event in timer B to generate a DAC update trigger on the corresponding hrtim_dac_trgx output, as shown on Figure 332 .

Figure 332. Combining several updates on a single hrtim_dac_trgx output

Timing diagram showing the combination of Timer A and Timer B update events on the hrtim_dac_trgx output.

The diagram illustrates the timing relationship between two timers, Timer A and Timer B, and their combined output on the hrtim_dac_trgx line. The top two waveforms show the sawtooth-like behavior of the Timer A counter and Timer B counter. Below these, the 'Timer A Compare 2 register' shows values 0x0000 1000, 0x0000 1001, and 0x0000 1002, with 'TA update' events occurring at each overflow. The 'Timer B Compare 4 register' shows values 0x0000 1500, 0x0000 1510, and 0x0000 1520, with 'TB update' events occurring at each overflow. The bottom waveform shows the hrtim_dac_trgx output, which is a series of pulses. Each pulse occurs whenever either a 'TA update' or a 'TB update' event happens, demonstrating that the output is the OR of both timer update events. The diagram is labeled MSv41959V1 in the bottom right corner.

Timing diagram showing the combination of Timer A and Timer B update events on the hrtim_dac_trgx output.

hrtim_dac_trgx pins are connected to the DACs as follows:

37.3.20 HRTIM Interrupts

7 interrupts can be generated by the master timer:

14 interrupts can be generated by each timing unit:

8 global interrupts are generated for the whole HRTIM:

The interrupt requests are grouped in 7 vectors as follows:

Table 325 is a summary of the interrupt requests, their mapping and associated control, and status bits.

Table 325. HRTIM interrupt summary

Interrupt vectorInterrupt eventEvent flagEnable control bitFlag clearing bit
hrtim_mst_itBurst mode period completedBMPERBMPERIEBMPERC
Master timer registers updateMUPDMUPDIEMUPDC
Synchronization event receivedSYNCSYNCIESYNCC
Master timer repetition eventMREPMREPIEMREPC
Master Compare 1 to 4 eventMCMP1MCMP1IEMCP1C
MCMP2MCMP2IEMCP2C
MCMP3MCMP3IEMCP3C
MCMP4MCMP4IEMCP4C
hrtim_tima_it
hrtim_timb_it
hrtim_timc_it
hrtim_timd_it
hrtim_time_it
Delayed protection triggeredDLYPRTDLYPRTIEDLYPRTC
Counter reset or roll-over eventRSTRSTIERSTC
Output 1 and output 2 reset (transition active to inactive)RSTx1RSTx1IERSTx1C
RSTx2RSTx2IERSTx2C
Output 1 and output 2 set (transition inactive to active)SETx1SETx1IESETx1C
SETx2SETx2IESETx2C
Capture 1 and 2 eventsCPT1CPT1IECPT1C
CPT2CPT2IECPT2C
Timing unit registers updateUPDUPDIEUPDC
Repetition eventREPREPIEREPC
Compare 1 to 4 eventCMP1CMP1IECMP1C
CMP2CMP2IECMP2C
CMP3CMP3IECMP3C
CMP4CMP4IECMP4C
hrtim_fault_itSystem faultSYSFLTSYSFLTIESYSFLTC
Fault 1 to 5FLT1FLT1IEFLT1C
FLT2FLT2IEFLT2C
FLT3FLT3IEFLT3C
FLT4FLT4IEFLT4C
FLT5FLT5IEFLT5C

37.3.21 DMA

Most of the events able to generate an interrupt can also generate a DMA request, even both simultaneously. Each timer (master, TIMA...E) has its own DMA enable register.

The individual DMA requests are ORed into 6 channels as follows:

Note: Before disabling a DMA channel (DMA enable bit reset in TIMxDIER), it is necessary to disable first the DMA controller.

Table 326 is a summary of the events with their associated DMA enable bits.

Table 326. HRTIM DMA request summary

DMA ChannelEventDMA capableDMA enable bit
hrtim_dma1
(Master timer)
Burst mode period completedNoN/A
Master timer registers updateYesMUPDDE
Synchronization event receivedYesSYNCDE
Master timer repetition eventYesMREPDE
Master Compare 1 to 4 eventYesMCMP1DE
YesMCMP2DE
YesMCMP3DE
YesMCMP4DE
hrtim_dma2 (Timer A)
hrtim_dma3 (Timer B)
hrtim_dma4 (Timer C)
hrtim_dma5 (Timer D)
hrtim_dma6 (Timer E)
Delayed protection triggeredYesDLYPRTDE
Counter reset or roll-over eventYesRSTDE
Output 1 and output 2 reset (transition active to inactive)YesRSTx1DE
YesRSTx2DE
Output 1 and output 2 set (transition inactive to active)YesSETx1DE
YesSETx2DE
Capture 1 and 2 eventsYesCPT1DE
YesCPT2DE
Timing unit registers updateYesUPDDE
Repetition eventYesREPDE
Compare 1 to 4 eventYesCMP1DE
YesCMP2DE
YesCMP3DE
YesCMP4DE
N/ASystem faultNoN/A
Fault 1 to 5NoN/A
Burst mode period completedNoN/A

Burst DMA transfers

In addition to the standard DMA requests, the HRTIM features a DMA burst controller to have multiple registers updated with a single DMA request. This allows to:

The burst DMA feature is only available for one DMA channel, but any of the 6 channels can be selected for burst DMA transfers.

The principle is to program which registers are to be written by DMA. The master timer and TIMA..E have the burst DMA update register, where most of their control and data registers are associated with a selection bit: HRTIM_BDMUPR, HRTIM_BDTAUPR to HRTIM_BDTUUPR (this is applicable only for registers with write accesses). A redirection mechanism allows to forward the DMA write accesses to the HRTIM registers automatically, as shown on Figure 333 .

Figure 333. DMA burst overview

Figure 333. DMA burst overview diagram showing the interaction between the DMA controller, DMA burst controller, and HRTIM registers.

The diagram illustrates the DMA burst overview. On the left, a 'DMA controller' block is connected to a 'DMA burst controller' block via 'DMA requests'. The 'DMA burst controller' block has a 'Registers parsing' output pointing to a group of six registers: HRTIM_BDTUPR, HRTIM_BDTBUPR, HRTIM_BDTAUPR, HRTIM_BDMUPR, HRTIM_BDTAUPR, and HRTIM_BDTUUPR. These registers are collectively labeled 'DMA burst update registers (6 registers)'. Below this group is the 'HRTIM_BDMADR' register, labeled 'DMA unique destination'. The 'DMA controller' is also connected to the 'HRTIM_BDMADR' register. To the right, a 'Re-direction demultiplexer' block is connected to a group of eight registers: HRTIM_PERBR, HRTIM_REPBR, HRTIM_CMP1BR, HRTIM_CMP1BCR, HRTIM_CMP2BR, HRTIM_CMP3BR, HRTIM_CMP4BR, and HRTIM_BDMUPR. The 'Re-direction demultiplexer' receives input from the 'HRTIM_BDMADR' register and has an output pointing to the 'HRTIM_BDMADR' register. The diagram is labeled 'MS32340V1' in the bottom right corner.

Figure 333. DMA burst overview diagram showing the interaction between the DMA controller, DMA burst controller, and HRTIM registers.

When the DMA trigger occurs, the HRTIM generates multiple 32-bit DMA requests and parses the update register. If the control bit is set, the write access is redirected to the associated register. If the bit is reset, the register update is skipped and the register parsing is resumed until a new bit set is detected, to trigger a new request. Once the 6 update registers (HRTIM_BDMUPR, 5x HRTIM_BDTxUPR) are parsed, the burst is completed and the system is ready for another DMA trigger (see the flowchart on Figure 334 ).

Note: Any trigger occurring while the burst is on-going is discarded, except if it occurs during the very last data transfer.

The burst DMA mode is permanently enabled (there is no enable bit). A burst DMA operation is started by the first write access into the HRTIM_BDMADR register.

It is only necessary to have the DMA controller pointing to the HRTIM_BDMADR register as the destination, in the memory, to the peripheral configuration with the peripheral increment mode disabled (the HRTIM handles internally the data re-routing to the final destination register).

To re-initialize the burst DMA mode if it was interrupted during a transaction, it is necessary to write at least to one of the 6 update registers.

Figure 334. Burst DMA operation flowchart

Figure 334. Burst DMA operation flowchart. A flowchart showing the logic for parsing DMA burst data into various HRTIM registers based on bit settings in update registers (BDMUPR, BDTAUPR, BDTEUPR).
    graph TD
        Start([Write access to HRTIM_BDMADR]) --> P1[Parse HRTIM_BDMUPR]
        
        subgraph Master_Timer_Parsing
        P1 --> D1{MCR bit set?}
        D1 -- Yes --> W1[Write data into HRTIM_MCR]
        D1 -- No --> D2{MCIR bit set?}
        W1 --> D2
        D2 -- Yes --> W2[Write data into HRTIM_MICR]
        D2 -- No --> D3{MCMP4 bit set?}
        W2 --> D3
        D3 -- Yes --> W3[Write data into HRTIM_MCMP4]
        D3 -- No --> P2[Parse HRTIM_BDTAUPR]
        W3 --> P2
        end

        subgraph Timer_A_Parsing
        P2 --> D4{TIMACR bit set?}
        D4 -- Yes --> W4[Write data into HRTIM_TIMACR]
        D4 -- No --> D5{TIMAICR bit set?}
        W4 --> D5
        D5 -- Yes --> W5[Write data into HRTIM_TIMAICR]
        D5 -- No --> D6{TIMAFLTR bit set?}
        W5 --> D6
        D6 -- Yes --> W6[Write data into HRTIM_FLTAR]
        D6 -- No --> P3[Parse HRTIM_BDTEUPR]
        W6 --> P3
        end

        subgraph Timer_E_Parsing
        P3 --> D7{TIMECR bit set?}
        D7 -- Yes --> W7[Write data into HRTIM_TIMECR]
        D7 -- No --> D8{TIMEICR bit set?}
        W7 --> D8
        D8 -- Yes --> W8[Write data into HRTIM_TIMEICR]
        D8 -- No --> D9{TIMEFLTR bit set?}
        W8 --> D9
        D9 -- Yes --> W9[Write data into HRTIM_FLTER]
        D9 -- No --> End([End of DMA burst])
        W9 --> End
        end
    
Figure 334. Burst DMA operation flowchart. A flowchart showing the logic for parsing DMA burst data into various HRTIM registers based on bit settings in update registers (BDMUPR, BDTAUPR, BDTEUPR).

MS32341V1

Several options are available once the DMA burst is completed, depending on the register update strategy.

If the PREEN bit is reset (preload disabled), the value written by the DMA is immediately transferred into the active register and the registers are updated sequentially, following the DMA transaction pace.

When the preload is enabled (PREEN bit set), there are 3 use cases:

  1. 1. The update is done independently from DMA burst transfers (UPDGAT[3:0] = 0000 in HRTIM_TIMxCR and BRSTDMA[1:0] = 00 in HRTIM_MCR). In this case, and if it is necessary to have all transferred data taken into account simultaneously, the user must check that the DMA burst is completed before the update event takes place. On the contrary, if the update event happens while the DMA transfer is on-going, only part of the registers will be loaded and the complete register update will require 2 consecutive update events.
  2. 2. The update is done when the DMA burst transfer is completed (UPDGAT[3:0] = 0000 in HRTIM_TIMxCR and BRSTDMA[1:0] = 01 in HRTIM_MCR). This mode guarantees that all new register values are transferred simultaneously. This is done independently

from the counter value and can be combined with regular update events, if necessary (for instance, an update on a counter reset when TxRSTU is set).

  1. 3. The update is done on the update event following the DMA burst transfer completion (UPDGAT[3:0] = 0010 in HRTIM_TIMxCR and BRSTDMA[1:0] = 10 in HRTIM_MCR). This mode guarantees both a coherent update of all transferred data and the synchronization with regular update events, with the timer counter. In this case, if a regular update request occurs while the transfer is on-going, it will be discarded and the effective update will happen on the next coming update request.

The chronogram on Figure 335 presents the active register content for 3 cases: PREEN=0, UPDGAT[3:0] = 0001 and UPDGAT[3:0] = 0001 (when PREEN = 1).

Figure 335. Registers update following DMA burst transfer

Figure 335: Registers update following DMA burst transfer. This timing diagram illustrates the sequence of events for updating HRTIM registers via a DMA burst. It shows the Timer A Counter, DMA requests, DMA controller write accesses to BDMADR, and the resulting register content changes for two cases: PREEN=0 and PREEN=1. The diagram highlights that updates occur at the end of the DMA burst transfer, either immediately (Option 1) or upon the next update event (Option 2).

The diagram shows the following sequence of events:

MS32342V1

Figure 335: Registers update following DMA burst transfer. This timing diagram illustrates the sequence of events for updating HRTIM registers via a DMA burst. It shows the Timer A Counter, DMA requests, DMA controller write accesses to BDMADR, and the resulting register content changes for two cases: PREEN=0 and PREEN=1. The diagram highlights that updates occur at the end of the DMA burst transfer, either immediately (Option 1) or upon the next update event (Option 2).

37.3.22 HRTIM initialization

This section describes the recommended HRTIM initialization procedure, including other related MCU peripherals.

The HRTIM clock source must be enabled in the Reset and Clock control unit (RCC).

The HRTIM control registers can be initialized as per the power converter topology and the timing units use case. All inputs have to be configured (source, polarity, edge-sensitivity).

The HRTIM outputs must be set up eventually, with the following sequence:

The HRTIM outputs are ready to be connected to the MCU I/Os. In the GPIO controller, the selected HRTIM I/Os have to be configured as per the alternate function mapping table in the product datasheet.

From this point on, the HRTIM controls the outputs, which are in the IDLE state.

The outputs are configured in RUN mode by setting TxyOEN bits in the HRTIM_OENR register. The 2 outputs are in the inactive state until the first valid set/reset event in RUN mode. Any output set/reset event (except software requests using SST, SRT) are ignored as long as TxCEN bit is reset, as well as burst mode requests (IDLEM bit value is ignored). Similarly, any counter reset request coming from the burst mode controller is ignored (if TxBM bit is set).

Note: When the deadtime insertion is enabled (DTEN bit set), it is necessary to force the output state by software, using SST and RST bits, to have the outputs in a complementary state as soon as the RUN mode is entered.

The HRTIM operation can eventually be started by setting TxCEN or MCEN bits in HRTIM_MCR.

If the HRTIM peripheral is reset with the Reset and Clock Controller, the HRTIM outputs are put in IDLE mode with a low level. It is recommended to first disconnect the HRTIMER from the outputs (using the GPIO controller) before performing a peripheral reset.

37.3.23 Debug

When a microcontroller enters the debug mode (Cortex ® -M7 core halted), the TIMx counter either continues to work normally or stops, depending on DBG_HRTIM_STOP configuration bit in DBG module:

Timer behavior during MCU halt when DBG_HRTIM_STOP = 1

The set/reset crossbar, the dead-time and push-pull unit, the idle/balanced fault detection and all the logic driving the normal output in RUN mode are not affected by debug. The output will keep on toggling internally, so as to retrieve regular signals of the outputs when TxyOEN will be set again (during or after the MCU halt). Associated triggers and filters are also following internal waveforms when the outputs are disabled.

FAULT inputs and events (any source) are enabled during the MCU halt.

Fault status bits can be set and TxyOEN bits reset during the MCU halt if a fault occurs at that time (TxyOEN and TxyODS are not affected by DBG_HRTIM_STOP bit state).

Synchronization, counter reset, start and reset-start events are discarded in debug mode, as well as capture events. This is to keep all related registers stable as long as the MCU is halted.

The counter stops counting when a breakpoint is reached. However, the counter enable signal is not reset; consequently no start event will be emitted when exiting from debug. All counter reset and capture triggers are disabled, as well as external events (ignored as long as the MCU is halted). The outputs SET and RST flags are frozen, except in case of forced software set/reset. A level-sensitive event is masked during the debug but will be active again as soon as the debug will be exited. For edge-sensitive events, if the signal is maintained active during the MCU halt, a new edge is not generated when exiting from debug.

The update events are discarded. This prevents any update trigger on hrtim_upd_en[3:1] inputs. DMA triggers are disabled. The burst mode circuit is frozen: the triggers are ignored and the burst mode counter stopped.

37.4 Application use cases

37.4.1 Buck converter

Buck converters are of common use as step-down converters. The HRTIM can control up to 10 buck converters with 6 independent switching frequencies.

The converter usually operates at a fixed frequency and the \( V_{in}/V_{out} \) ratio depends on the duty cycle \( D \) applied to the power switch:

\[ V_{out} = D \times V_{in} \]

The topology is given on Figure 336 with the connection to the ADC for voltage reading.

Figure 336. Buck converter topology

Circuit diagram of a buck converter topology. It shows an input voltage VIN connected to a switching node. This node is connected to a MOSFET (labeled HRTIM_CHA1) and a diode. The MOSFET's source is connected to ground, and its drain is connected to the switching node. The switching node is also connected to an inductor. The other end of the inductor is connected to an output node VOUT. This output node is connected to a capacitor and a resistor. The resistor is connected to ground, and the capacitor is also connected to ground. An ADC is connected to the output node VOUT to measure the voltage. The diagram is labeled MS32343V3 in the bottom right corner.
Circuit diagram of a buck converter topology. It shows an input voltage VIN connected to a switching node. This node is connected to a MOSFET (labeled HRTIM_CHA1) and a diode. The MOSFET's source is connected to ground, and its drain is connected to the switching node. The switching node is also connected to an inductor. The other end of the inductor is connected to an output node VOUT. This output node is connected to a capacitor and a resistor. The resistor is connected to ground, and the capacitor is also connected to ground. An ADC is connected to the output node VOUT to measure the voltage. The diagram is labeled MS32343V3 in the bottom right corner.

Figure 337 presents the management of two converters with identical frequency PWM signals. The outputs are defined as follows:

The ADC is triggered twice per period, precisely in the middle of the ON time, using CMP2 and CMP4 events.

Figure 337. Dual Buck converter management

Timing diagram for Dual Buck converter management. The top section shows the TIMA counter with a sawtooth waveform. The bottom section shows the TIMA outputs: HRTIM_CHA1 (BUCK 1) and HRTIM_CHA2 (BUCK 2). The diagram illustrates the relationship between the counter, comparators (CMP1, CMP2, CMP3, CMP4), and ADC conversions. The HRTIM_CHA1 output is a high-frequency PWM signal, while the HRTIM_CHA2 output is a lower-frequency PWM signal. The ADC conversions are triggered by the counter's overflow and compare events.
Timing diagram for Dual Buck converter management. The top section shows the TIMA counter with a sawtooth waveform. The bottom section shows the TIMA outputs: HRTIM_CHA1 (BUCK 1) and HRTIM_CHA2 (BUCK 2). The diagram illustrates the relationship between the counter, comparators (CMP1, CMP2, CMP3, CMP4), and ADC conversions. The HRTIM_CHA1 output is a high-frequency PWM signal, while the HRTIM_CHA2 output is a lower-frequency PWM signal. The ADC conversions are triggered by the counter's overflow and compare events.

Timers A..E provide either 10 buck converters coupled by pairs (both with identical switching frequencies) or 6 completely independent converters (each of them having a different switching frequency), using the master timer as the 6 th time base.

37.4.2 Buck converter with synchronous rectification

Synchronous rectification allows to minimize losses in buck converters, by means of a FET replacing the freewheeling diode. Synchronous rectification can be turned on or off on the fly depending on the output current level, as shown on Figure 338.

Figure 338. Synchronous rectification depending on output current

Circuit diagram of a buck converter with synchronous rectification. The input voltage V_IN is connected to a switching node. The high-side switch is controlled by HRTIM_CHA1 and the low-side switch (synchronous rectifier) is controlled by HRTIM_CHA2. The output is filtered by an inductor and a capacitor to produce V_OUT. A resistor is connected across the output, and an ADC is connected to it to measure the output current.
Circuit diagram of a buck converter with synchronous rectification. The input voltage V_IN is connected to a switching node. The high-side switch is controlled by HRTIM_CHA1 and the low-side switch (synchronous rectifier) is controlled by HRTIM_CHA2. The output is filtered by an inductor and a capacitor to produce V_OUT. A resistor is connected across the output, and an ADC is connected to it to measure the output current.

The main difference vs. a single-switch buck converter is the addition of a deadtime for an almost complementary waveform generation on HRTIM_CHA2, based on the reference waveform on HRTIM_CHA1 (see Figure 339).

Figure 339. Buck with synchronous rectification

Timing diagram for a buck converter with synchronous rectification. The diagram shows the TIMA counter (PER, CMP2, CMP1) and TIMA outputs (HRTIM_CHA1, HRTIM_CHA2) over time. The TIMA counter is a sawtooth wave. The TIMA outputs are square waves. The diagram is divided into two regions: 'Synchronous Rectification (SR) active' and 'SR disabled'. The 'SR active' region shows the TIMA outputs toggling between high and low states. The 'SR disabled' region shows the TIMA outputs held at a low state. ADC triggers are shown at the end of each TIMA counter period.

The figure is a timing diagram illustrating the operation of a buck converter with synchronous rectification. It features three main horizontal axes representing different signals over time:

Small text "MS32346V2" is visible in the bottom right corner of the diagram area.

Timing diagram for a buck converter with synchronous rectification. The diagram shows the TIMA counter (PER, CMP2, CMP1) and TIMA outputs (HRTIM_CHA1, HRTIM_CHA2) over time. The TIMA counter is a sawtooth wave. The TIMA outputs are square waves. The diagram is divided into two regions: 'Synchronous Rectification (SR) active' and 'SR disabled'. The 'SR active' region shows the TIMA outputs toggling between high and low states. The 'SR disabled' region shows the TIMA outputs held at a low state. ADC triggers are shown at the end of each TIMA counter period.

37.4.3 Multiphase converters

Multiphase techniques can be applied to multiple power conversion topologies (buck, flyback). Their main benefits are:

The HRTIM is able to manage multiple converters. The number of converters that can be controlled depends on the topologies and resources used (including the ADC triggers):

Figure 341 presents the topology of a 3-phase interleaved buck converter.

Figure 340. 3-phase interleaved buck converter

Circuit diagram of a 3-phase interleaved buck converter. The diagram shows three parallel buck converter phases. Each phase consists of a high-side MOSFET, a diode, and an inductor. The high-side MOSFETs are controlled by HRTIM_CHA1, HRTIM_CHB1, and HRTIM_CHC1. The input voltage is labeled VIN and the output voltage is labeled VOUT. The output of each phase is connected to a common output capacitor. The diagram is labeled MS32347V3 in the bottom right corner.

The diagram illustrates a 3-phase interleaved buck converter. It features three parallel converter stages. Each stage includes a high-side MOSFET, a freewheeling diode, and an output inductor. The high-side MOSFETs are controlled by HRTIM_CHA1, HRTIM_CHB1, and HRTIM_CHC1. The input voltage \( V_{IN} \) is applied to the high-side MOSFETs. The output of each phase is connected to a common output capacitor, which provides the output voltage \( V_{OUT} \) . The diagram is labeled MS32347V3 in the bottom right corner.

Circuit diagram of a 3-phase interleaved buck converter. The diagram shows three parallel buck converter phases. Each phase consists of a high-side MOSFET, a diode, and an inductor. The high-side MOSFETs are controlled by HRTIM_CHA1, HRTIM_CHB1, and HRTIM_CHC1. The input voltage is labeled VIN and the output voltage is labeled VOUT. The output of each phase is connected to a common output capacitor. The diagram is labeled MS32347V3 in the bottom right corner.

The master timer is responsible for the phase management: it defines the phase relationship between the converters by resetting the timers periodically. The phase-shift is \( 360^\circ \) divided by the number of phases, \( 120^\circ \) in the given example.

The duty cycle is then programmed into each of the timers. The outputs are defined as follows:

The ADC trigger can be generated on TxCMP2 compare event. Since all ADC trigger sources are phase-shifted because of the converter topology, it is possible to have all of them combined into a single ADC trigger to save ADC resources (for instance 1 ADC regular channel for the full multi-phase converter).

Figure 341. 3-phase interleaved buck converter control

Timing diagram for a 3-phase interleaved buck converter control. The diagram shows the relationship between a Master counter, three TIM counters (TIMA, TIMB, TIMC), and three HRTIM channels (CHA1, CHB1, CHC1). The Master counter has two comparators, CMP2 and CMP1. The TIM counters each have one comparator, CMP1. The HRTIM channels are shown as square waves. The Master counter is reset by the TIMA, TIMB, and TIMC counters. The TIMA, TIMB, and TIMC counters are reset by the Master counter. The HRTIM channels are generated by the TIMA, TIMB, and TIMC counters. The diagram shows three phases, each with a 120-degree phase shift. The Master counter is shown as a sawtooth wave. The TIMA, TIMB, and TIMC counters are shown as sawtooth waves. The HRTIM channels are shown as square waves. The diagram is labeled MS32348V2.
Timing diagram for a 3-phase interleaved buck converter control. The diagram shows the relationship between a Master counter, three TIM counters (TIMA, TIMB, TIMC), and three HRTIM channels (CHA1, CHB1, CHC1). The Master counter has two comparators, CMP2 and CMP1. The TIM counters each have one comparator, CMP1. The HRTIM channels are shown as square waves. The Master counter is reset by the TIMA, TIMB, and TIMC counters. The TIMA, TIMB, and TIMC counters are reset by the Master counter. The HRTIM channels are generated by the TIMA, TIMB, and TIMC counters. The diagram shows three phases, each with a 120-degree phase shift. The Master counter is shown as a sawtooth wave. The TIMA, TIMB, and TIMC counters are shown as sawtooth waves. The HRTIM channels are shown as square waves. The diagram is labeled MS32348V2.

37.4.4 Transition mode Power Factor Correction

The basic operating principle is to build up current into an inductor during a fixed \( T_{on} \) time. This current will then decay during the \( T_{off} \) time, and the period will be re-started when it becomes null. This is detected using a Zero Crossing Detection circuitry (ZCD), as shown on Figure 342. With a constant \( T_{on} \) time, the peak current value in the inductor is proportional to the rectified AC input voltage, which provides the power factor correction.

Figure 342. Transition mode PFC

Circuit diagram of a transition mode Power Factor Correction (PFC) converter. It shows an AC input (VIN) connected to a boost converter. The boost converter consists of an inductor, a MOSFET, a diode, and an output capacitor. The MOSFET is controlled by HRTIM_CHA2. The ZCD (Zero Crossing Detection) circuit is connected to the inductor. The OC (Over Current) circuit is connected to the MOSFET. The ADC (Analog-to-Digital Converter) is connected to the output capacitor. The output voltage is VOUT. The diagram is labeled MS32349V3.
Circuit diagram of a transition mode Power Factor Correction (PFC) converter. It shows an AC input (VIN) connected to a boost converter. The boost converter consists of an inductor, a MOSFET, a diode, and an output capacitor. The MOSFET is controlled by HRTIM_CHA2. The ZCD (Zero Crossing Detection) circuit is connected to the inductor. The OC (Over Current) circuit is connected to the MOSFET. The ADC (Analog-to-Digital Converter) is connected to the output capacitor. The output voltage is VOUT. The diagram is labeled MS32349V3.

This converter is operating with a constant \( T_{on} \) time and a variable frequency due the \( T_{off} \) time variation (depending on the input voltage). It must also include some features to operate when no zero-crossing is detected, or to limit the \( T_{on} \) time in case of over-current (OC). The OC feedback is usually conditioned with the built-in comparator and routed onto an external event input.

Figure 343 presents the waveform during the various operating modes, with the following parameters defined:

Both \( T_{off} \) values are auto-delayed since the value must be relative to the output falling edge.

Figure 343. Transition mode PFC waveforms

Timing diagram showing waveforms for CMP4, CMP1, Zero Current Detection (ZCD), ZCD blanking, OverCurrent (OC), OC blanking, and HRTIM_CHA1. The diagram illustrates Normal operation, Over Current, Toff Min, and Toff Max phases. Capture events (C) are marked on the ZCD signal.

The figure is a timing diagram showing the relationship between several signals over time. The signals are: CMP4 (top), CMP1, Zero Current Detection (ZCD), ZCD blanking, OverCurrent (OC), OC blanking, and HRTIM_CHA1 (bottom). The ZCD signal has 'Capture event' (C) markers at its falling edges. The diagram is divided into five phases: 'Normal operation', 'Over Current', 'Toff Min', 'Toff Max', and 'Normal operation'. The HRTIM_CHA1 signal shows pulses that correspond to the ZCD signal, with some pulses being masked by the OC blanking signal during the 'Over Current' phase. The CMP1 and CMP4 signals are sawtooth-like waveforms that define the timing limits for the HRTIM_CHA1 signal.

Timing diagram showing waveforms for CMP4, CMP1, Zero Current Detection (ZCD), ZCD blanking, OverCurrent (OC), OC blanking, and HRTIM_CHA1. The diagram illustrates Normal operation, Over Current, Toff Min, and Toff Max phases. Capture events (C) are marked on the ZCD signal.

MS32350V2

37.5 HRTIM registers

37.5.1 HRTIM Master Timer Control Register (HRTIM_MCR)

Address offset: 0x0000h

Reset value: 0x0000 0000

31302928272625242322212019181716
BRSTDMA[1:0]MREPURes.PREENDACSYNC[1:0]Res.Res.Res.TECENTDCENTCCENTBCENTACENMCEN
rwrwrwrwrwrwrwrwrwrwrwrw

1514131211109876543210
SYNCSRC[1:0]SYNCOUT[1:0]SYNCS
TRTM
SYNCR
STM
SYNCIN[1:0]Res.Res.HALFRETRI
G
CONTCKPSC[2:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:30 BRSTDMA[1:0]: Burst DMA Update

These bits define how the update occurs relatively to a burst DMA transaction.

Bit 29 MREPU: Master Timer Repetition update

This bit defines whether an update occurs when the master timer repetition period is completed (either due to roll-over or reset events). MREPU can be set only if BRSTDMA[1:0] = 00 or 01.

Bit 28 Reserved, must be kept at reset value.

Bit 27 PREEN: Preload enable

This bit enables the registers preload mechanism and defines whether the write accesses to the memory mapped registers are done into HRTIM active or preload registers.

Bits 26:25 DACSYNC[1:0] DAC Synchronization

A DAC synchronization event can be enabled and generated when the master timer update occurs.

These bits are defining on which output the DAC synchronization is sent (refer to Section 37.3.19: DAC triggers for connections details).

Bits 24:22 Reserved, must be kept at reset value.

Bit 21 TECEN: Timer E counter enable

This bit starts the Timer E counter.

Note: This bit must not be changed within a minimum of 8 cycles of f HRTIM clock.

Bit 20 TDCEN : Timer D counter enable

This bit starts the Timer D counter.

0: Timer D counter disabled

1: Timer D counter enabled

Note: This bit must not be changed within a minimum of 8 cycles of \( f_{HRTIM} \) clock.

Bit 19 TCCEN : Timer C counter enable

This bit starts the Timer C counter.

0: Timer C counter disabled

1: Timer C counter enabled

Note: This bit must not be changed within a minimum of 8 cycles of \( f_{HRTIM} \) clock.

Bit 18 TBCEN : Timer B counter enable

This bit starts the Timer B counter.

0: Timer B counter disabled

1: Timer B counter enabled

Note: This bit must not be changed within a minimum of 8 cycles of \( f_{HRTIM} \) clock.

Bit 17 TACEN : Timer A counter enable

This bit starts the Timer A counter.

0: Timer A counter disabled

1: Timer A counter enabled

Note: This bit must not be changed within a minimum of 8 cycles of \( f_{HRTIM} \) clock.

Bit 16 MCEN : Master timer counter enable

This bit starts the Master timer counter.

0: Master counter disabled

1: Master counter enabled

Note: This bit must not be changed within a minimum of 8 cycles of \( f_{HRTIM} \) clock.

Bits 15:14 SYNCSRC[1:0] : Synchronization source

These bits define the source and event to be sent on the synchronization outputs SYNCOUT[2:1]

00: Master timer Start

01: Master timer Compare 1 event

10: Timer A start/reset

11: Timer A Compare 1 event

Bits 13:12 SYNCOUT[1:0] : Synchronization output

These bits define the routing and conditioning of the synchronization output event.

00: disabled

01: Reserved.

10: Positive pulse on HRTIM_SCOUT output (16x \( f_{HRTIM} \) clock cycles)

11: Negative pulse on HRTIM_SCOUT output (16x \( f_{HRTIM} \) clock cycles)

Note: This bitfield must not be modified once the counter is enabled (TxCEN bit set)

Bit 11 SYNCSTRM : Synchronization Starts Master

This bit enables the Master timer start when receiving a synchronization input event:

0: No effect on the Master timer

1: A synchronization input event starts the Master timer

Bit 10 SYNCRSTM : Synchronization Resets Master

This bit enables the Master timer reset when receiving a synchronization input event:

0: No effect on the Master timer

1: A synchronization input event resets the Master timer

Bits 9:8 SYNCIN[1:0] Synchronization input

These bits are defining the synchronization input source.

00: disabled. HRTIM is not synchronized and runs in standalone mode.

01: Reserved.

10: Internal event: the HRTIM is synchronized with the on-chip timer (see Synchronization input ).

11: External event (input pin). A positive pulse on HRTIM_SCIN input triggers the HRTIM.

Note: This parameter cannot be changed once the impacted timers are enabled.

Bits 7:6 Reserved, must be kept at reset value.

Bit 5 HALF Half mode

This bit enables the half duty-cycle mode: the HRTIM_MCMP1xR active register is automatically updated with HRTIM_MPER/2 value when HRTIM_MPER register is written.

0: Half mode disabled

1: Half mode enabled

Bit 4 RETRIG Re-triggerable mode

This bit defines the behavior of the master timer counter in single-shot mode.

0: The timer is not re-triggerable: a counter reset can be done only if the counter is stopped (period elapsed)

1: The timer is re-triggerable: a counter reset is done whatever the counter state (running or stopped)

Bit 3 CONT Continuous mode

0: The timer operates in single-shot mode and stops when it reaches the MPER value

1: The timer operates in continuous (free-running) mode and rolls over to zero when it reaches the MPER value

Bits 2:0 CKPSC[2:0] Clock prescaler

These bits define the master timer clock prescaler ratio.

The counter clock equivalent frequency ( \( f_{COUNTER} \) ) is equal to \( f_{HRCK} / 2^{(CKPSC[2:0]-5)} \) .

The prescaling ratio cannot be modified once the timer is enabled.

000: Reserved

001: Reserved

010: Reserved

011: Reserved

100: Reserved

101: \( f_{COUNTER} = f_{HRTIM} \)

110: \( f_{COUNTER} = f_{HRTIM} / 2 \)

111: \( f_{COUNTER} = f_{HRTIM} / 4 \)

37.5.2 HRTIM Master Timer Interrupt Status Register (HRTIM_MISR)

Address offset: 0x0004h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.MUPDSYNCMREPMCMP4MCMP3MCMP2MCMP1
rrrrrrr

Bits 31:7 Reserved, must be kept at reset value.

Bit 6 MUPD : Master Update Interrupt Flag

This bit is set by hardware when the Master timer registers are updated.

0: No Master Update interrupt occurred

1: Master Update interrupt occurred

Bit 5 SYNC : Sync Input Interrupt Flag

This bit is set by hardware when a synchronization input event is received.

0: No Sync input interrupt occurred

1: Sync input interrupt occurred

Bit 4 MREP : Master Repetition Interrupt Flag

This bit is set by hardware when the Master timer repetition period has elapsed.

0: No Master Repetition interrupt occurred

1: Master Repetition interrupt occurred

Bit 3 MCMP4 : Master Compare 4 Interrupt Flag

Refer to MCMP1 description

Bit 2 MCMP3 : Master Compare 3 Interrupt Flag

Refer to MCMP1 description

Bit 1 MCMP2 : Master Compare 2 Interrupt Flag

Refer to MCMP1 description

Bit 0 MCMP1 : Master Compare 1 Interrupt Flag

This bit is set by hardware when the Master timer counter matches the value programmed in the master Compare 1 register.

0: No Master Compare 1 interrupt occurred

1: Master Compare 1 interrupt occurred

37.5.3 HRTIM Master Timer Interrupt Clear Register (HRTIM_MICR)

Address offset: 0x0008h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.MUPDCSYNCCMREPCMCMP4CMCMP3CMCMP2CMCMP1C
wwwwwww

Bits 31:7 Reserved, must be kept at reset value.

Bit 6 MUPDC : Master update Interrupt flag clear

Writing 1 to this bit clears the MUPDC flag in HRTIM_MISR register

Bit 5 SYNCC : Sync Input Interrupt flag clear

Writing 1 to this bit clears the SYNC flag in HRTIM_MISR register

Bit 4 MREPC : Repetition Interrupt flag clear

Writing 1 to this bit clears the MREP flag in HRTIM_MISR register

Bit 3 MCMP4C : Master Compare 4 Interrupt flag clear

Writing 1 to this bit clears the MCMP4 flag in HRTIM_MISR register

Bit 2 MCMP3C : Master Compare 3 Interrupt flag clear

Writing 1 to this bit clears the MCMP3 flag in HRTIM_MISR register

Bit 1 MCMP2C : Master Compare 2 Interrupt flag clear

Writing 1 to this bit clears the MCMP2 flag in HRTIM_MISR register

Bit 0 MCMP1C : Master Compare 1 Interrupt flag clear

Writing 1 to this bit clears the MCMP1 flag in HRTIM_MISR register

37.5.4 HRTIM Master Timer DMA / Interrupt Enable Register (HRTIM_MDIER)

Address offset: 0x000Ch

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.MUPD
DE
SYNCD
E
MREP
DE
MCMP
4DE
MCMP
3DE
MCMP
2DE
MCMP
1DE
rwrwrwrwrwrwrw
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.MUPDI
E
SYNCI
E
MREPI
E
MCMP
4IE
MCMP
3IE
MCMP
2IE
MCMP
1IE
rwrwrwrwrwrwrw

Bits 31:23 Reserved, must be kept at reset value.

Bit 22 MUPDDE : Master Update DMA request Enable

This bit is set and cleared by software to enable/disable the Master update DMA requests.

0: Master update DMA request disabled

1: Master update DMA request enabled

Bit 21 SYNCDE : Sync Input DMA request Enable

This bit is set and cleared by software to enable/disable the Sync input DMA requests.

0: Sync input DMA request disabled

1: Sync input DMA request enabled

Bit 20 MREPDE : Master Repetition DMA request Enable

This bit is set and cleared by software to enable/disable the Master timer repetition DMA requests.

0: Repetition DMA request disabled

1: Repetition DMA request enabled

Bit 19 MCMP4DE : Master Compare 4 DMA request Enable

Refer to MCMP1DE description

Bit 18 MCMP3DE : Master Compare 3 DMA request Enable

Refer to MCMP1DE description

Bit 17 MCMP2DE : Master Compare 2 DMA request Enable

Refer to MCMP1DE description

Bit 16 MCMP1DE : Master Compare 1 DMA request Enable

This bit is set and cleared by software to enable/disable the Master timer Compare 1 DMA requests.

0: Compare 1 DMA request disabled

1: Compare 1 DMA request enabled

Bits 15:6 Reserved, must be kept at reset value.

Bit 6 MUPDIE : Master Update Interrupt Enable

This bit is set and cleared by software to enable/disable the Master timer registers update interrupts

0: Master update interrupts disabled

1: Master update interrupts enabled

Bit 5 SYNCIE : Sync Input Interrupt Enable

This bit is set and cleared by software to enable/disable the Sync input interrupts

0: Sync input interrupts disabled

1: Sync input interrupts enabled

Bit 4 MREPIE : Master Repetition Interrupt Enable

This bit is set and cleared by software to enable/disable the Master timer repetition interrupts

0: Master repetition interrupt disabled

1: Master repetition interrupt enabled

Bit 3 MCMP4IE : Master Compare 4 Interrupt Enable

Refer to MCMP1IE description

Bit 2 MCMP3IE : Master Compare 3 Interrupt Enable

Refer to MCMP1IE description

Bit 1 MCMP2IE : Master Compare 2 Interrupt Enable

Refer to MCMP1IE description

Bit 0 MCMP1IE : Master Compare 1 Interrupt Enable

This bit is set and cleared by software to enable/disable the Master timer Compare 1 interrupt

0: Compare 1 interrupt disabled

1: Compare 1 interrupt enabled

37.5.5 HRTIM Master Timer Counter Register (HRTIM_MCNTR)

Address offset: 0x0010h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
MCNT[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 MCNT[15:0] : Counter value

Holds the master timer counter value. This register can only be written when the master timer is stopped (MCEN = 0 in HRTIM_MCR).

Note: The timer behavior is not guaranteed if the counter value is set above the HRTIM_MPER register value.

37.5.6 HRTIM Master Timer Period Register (HRTIM_MPER)

Address offset: 0x0014h

Reset value: 0x0000 FFDF

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
MPER[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 MPER[15:0] : Master Timer Period value

This register defines the counter overflow value.

The period value must be above or equal to 3 periods of the \( f_{\text{HRTIM}} \) clock.

The maximum value is 0x0000 FFDF.

37.5.7 HRTIM Master Timer Repetition Register (HRTIM_MREP)

Address offset: 0x0018h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.MREP[7:0]
rwrwrwrwrwrwrwrw

Bits 31:8 Reserved, must be kept at reset value.

Bits 7:0 MREP[7:0] : Master Timer Repetition period value

This register holds the repetition period value for the master counter. It is either the preload register or the active register if preload is disabled.

37.5.8 HRTIM Master Timer Compare 1 Register (HRTIM_MCMP1R)

Address offset: 0x001Ch

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
MCMP1[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 MCMP1[15:0] : Master Timer Compare 1 value

This register holds the master timer Compare 1 value. It is either the preload register or the active register if preload is disabled.

The compare value must be above or equal to 3 periods of the \( f_{HRTIM} \) clock.

37.5.9 HRTIM Master Timer Compare 2 Register (HRTIM_MCMP2R)

Address offset: 0x0024h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
MCMP2[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 MCMP2[15:0] : Master Timer Compare 2 value

This register holds the master timer Compare 2 value. It is either the preload register or the active register if preload is disabled.

The compare value must be above or equal to 3 periods of the \( f_{HRTIM} \) clock.

37.5.10 HRTIM Master Timer Compare 3 Register (HRTIM_MCMP3R)

Address offset: 0x0028h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
MCMP3[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 MCMP3[15:0] : Master Timer Compare 3 value

This register holds the master timer Compare 3 value. It is either the preload register or the active register if preload is disabled.

The compare value must be above or equal to 3 periods of the \( f_{HRTIM} \) clock.

37.5.11 HRTIM Master Timer Compare 4 Register (HRTIM_MCMP4R)

Address offset: 0x002Ch

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
MCMP4[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 MCMP4[15:0] : Master Timer Compare 4 value

This register holds the master timer Compare 4 value. It is either the preload register or the active register if preload is disabled.

The compare value must be above or equal to 3 periods of the \( f_{HRTIM} \) clock.

37.5.12 HRTIM Timerx Control Register (HRTIM_TIMxCR)

Address offset: 0x0000h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
UPDGAT[3:0]PREENDACSYNC[1:0]MSTUTEUTDUTCUTBURes.TxRST
U
TxREP
U
Res.
rwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
DELCMP4[1:0]DELCMP2[1:0]SYNCS
TRTx
SYNCR
STx
Res.Res.Res.PSHPL
L
HALFRETRI
G
CONTCKPSCx[2:0]
rwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:28 UPDGAT[3:0]: Update Gating

These bits define how the update occurs relatively to the burst DMA transaction and the external update request on update enable inputs 1 to 3 (see Table 314: Update enable inputs and sources ). The update events, as mentioned below, can be: MSTU, TEU, TDU, TCU, TBU, TAU, TxRSTU, TxREPU.

0000: the update occurs independently from the DMA burst transfer

0001: the update occurs when the DMA burst transfer is completed

0010: the update occurs on the update event following the DMA burst transfer completion

0011: the update occurs on a rising edge of HRTIM update enable input 1 (hrtim_upd_en1)

0100: the update occurs on a rising edge of HRTIM update enable input 2 (hrtim_upd_en2)

0101: the update occurs on a rising edge of HRTIM update enable input 3 (hrtim_upd_en3)

0110: the update occurs on the update event following a rising edge of HRTIM update enable input 1 (hrtim_upd_en1)

0111: the update occurs on the update event following a rising edge of HRTIM update enable input 2 (hrtim_upd_en2)

1000: the update occurs on the update event following a rising edge of HRTIM update enable input 3 (hrtim_upd_en3)

Other codes: reserved

Note: This bitfield must be reset before programming a new value.

For UPDGAT[3:0] values equal to 0001, 0011, 0100, 0101, it is possible to have multiple concurrent update source (for instance RSTU and DMA burst).

Bit 27 PREEN: Preload enable

This bit enables the registers preload mechanism and defines whether a write access into a preloadable register is done into the active or the preload register.

0: Preload disabled: the write access is directly done into the active register

1: Preload enabled: the write access is done into the preload register

Bits 26:25 DACSYNC[1:0]: DAC Synchronization

A DAC synchronization event is generated when the timer update occurs. These bits are defining on which output the DAC synchronization is sent (refer to Section 37.3.19: DAC triggers for connections details).

00: No DAC trigger generated

01: Trigger generated on hrtim_dac_trg1

10: Trigger generated on hrtim_dac_trg2

11: Trigger generated on hrtim_dac_trg3

Bit 24 MSTU: Master Timer update

Register update is triggered by the master timer update.

0: Update by master timer disabled

1: Update by master timer enabled

Bit 23 In HRTIM_TIMACR, HRTIM_TIMBCR, HRTIM_TIMCCR, HRTIM_TIMDCR:

TEU: Timer E update

Register update is triggered by the timer E update

0: Update by timer E disabled

1: Update by timer E enabled

In HRTIM_TIMECR:

Reserved, must be kept at reset value

Bit 22 In HRTIM_TIMACR, HRTIM_TIMBCR, HRTIM_TIMCCR, HRTIM_TIMECR:

TDU: Timer D update

Register update is triggered by the timer D update

0: Update by timer D disabled

1: Update by timer D enabled

In HRTIM_TIMDCR:

Reserved, must be kept at reset value

Bit 21 In HRTIM_TIMACR, HRTIM_TIMBCR, HRTIM_TIMDCR, HRTIM_TIMECR:

TCU: Timer C update

Register update is triggered by the timer C update

0: Update by timer C disabled

1: Update by timer C enabled

In HRTIM_TIMCCR:

Reserved, must be kept at reset value

Bit 20 In HRTIM_TIMACR, HRTIM_TIMCCR, HRTIM_TIMDCR, HRTIM_TIMECR:

TBU: Timer B update

Register update is triggered by the timer B update

0: Update by timer B disabled

1: Update by timer B enabled

In HRTIM_TIMBCR:

Reserved, must be kept at reset value

Bit 19 In HRTIM_TIMBCR, HRTIM_TIMCCR, HRTIM_TIMDCR, HRTIM_TIMECR:

TAU: Timer A update

Register update is triggered by the timer A update

0: Update by timer A disabled

1: Update by timer A enabled

In HRTIM_TIMACR:

Reserved, must be kept at reset value

Bit 18 TxRSTU : Timerx reset update

Register update is triggered by Timerx counter reset or roll-over to 0 after reaching the period value in continuous mode.

0: Update by timer x reset / roll-over disabled

1: Update by timer x reset / roll-over enabled

Bit 17 TxREPU : Timer x Repetition update

Register update is triggered when the counter rolls over and HRTIM_REPx = 0

0: Update on repetition disabled

1: Update on repetition enabled

Bit 16 Reserved, must be kept at reset value.

Bits 15:14 DEL CMP4[1:0] : CMP4 auto-delayed mode

This bitfield defines whether the compare register is behaving in standard mode (compare match issued as soon as counter equal compare), or in auto-delayed mode (see Auto-delayed mode ).

00: CMP4 register is always active (standard compare mode)

01: CMP4 value is recomputed and is active following a capture 2 event

10: CMP4 value is recomputed and is active following a capture 2 event, or is recomputed and active after Compare 1 match (timeout function if capture 2 event is missing)

11: CMP4 value is recomputed and is active following a capture event, or is recomputed and active after Compare 3 match (timeout function if capture event is missing)

Note: This bitfield must not be modified once the counter is enabled (TxCEN bit set)

Bits 13:12 DEL CMP2[1:0] : CMP2 auto-delayed mode

This bitfield defines whether the compare register is behaving in standard mode (compare match issued as soon as counter equal compare), or in auto-delayed mode (see Auto-delayed mode ).

00: CMP2 register is always active (standard compare mode)

01: CMP2 value is recomputed and is active following a capture 1 event

10: CMP2 value is recomputed and is active following a capture 1 event, or is recomputed and active after Compare 1 match (timeout function if capture event is missing)

11: CMP2 value is recomputed and is active following a capture 1 event, or is recomputed and active after Compare 3 match (timeout function if capture event is missing)

Note: This bitfield must not be modified once the counter is enabled (TxCEN bit set)

Bit 11 SYNC STRTx : Synchronization Starts Timer x

This bit defines the Timer x behavior following the synchronization event:

0: No effect on Timer x

1: A synchronization input event starts the Timer x

Bit 10 SYNCRSTx : Synchronization Resets Timer x

This bit defines the Timer x behavior following the synchronization event:

0: No effect on Timer x

1: A synchronization input event resets the Timer x

Bits 9:7 Reserved, must be kept at reset value.

Bit 6 PSHPLL : Push-Pull mode enable

This bit enables the push-pull mode.

0: Push-Pull mode disabled

1: Push-Pull mode enabled

Note: This bitfield must not be modified once the counter is enabled (TxCEN bit set)

Bit 5 HALF : Half mode enable

This bit enables the half duty-cycle mode: the HRTIM_CMP1xR active register is automatically updated with HRTIM_PERxR/2 value when HRTIM_PERxR register is written.

0: Half mode disabled

1: Half mode enabled

Bit 4 RETRIG : Re-triggerable mode

This bit defines the counter behavior in single shot mode.

0: The timer is not re-triggerable: a counter reset is done if the counter is stopped (period elapsed in single-shot mode or counter stopped in continuous mode)

1: The timer is re-triggerable: a counter reset is done whatever the counter state.

Bit 3 CONT : Continuous mode

This bit defines the timer operating mode.

0: The timer operates in single-shot mode and stops when it reaches TIMxPER value

1: The timer operates in continuous mode and rolls over to zero when it reaches TIMxPER value

Bits 2:0 CKPSCx[2:0] : HRTIM Timer x Clock prescaler

These bits define the master timer clock prescaler ratio.

The counter clock equivalent frequency ( \( f_{COUNTER} \) ) is equal to \( f_{HRCK} / 2^{(CKPSC[2:0]-5)} \) .

The prescaling ratio cannot be modified once the timer is enabled.

000: Reserved

001: Reserved

010: Reserved

011: Reserved

100: Reserved

101: \( f_{COUNTER} = f_{HRTIM} \)

110: \( f_{COUNTER} = f_{HRTIM} / 2 \)

111: \( f_{COUNTER} = f_{HRTIM} / 4 \)

37.5.13 HRTIM Timerx Interrupt Status Register (HRTIM_TIMxISR)

Address offset: 0x0004h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.O2CPYO1CPYO2STA
T
O1STA
T
IPPSTA
T
CPPST
AT
rrrrrr
1514131211109876543210
Res.DLYPR
T
RSTRSTx2SETx2RSTx1SETx1CPT2CPT1UPDRes.REPCMP4CMP3CMP2CMP1
rrrrrrrrrrrrrr

Bits 31:22 Reserved, must be kept at reset value.

Bit 21 O2CPY: Output 2 Copy

This status bit is a raw copy of the output 2 state, before the output stage (chopper, polarity). It allows to check the current output state before re-enabling the output after a delayed protection.

0: Output 2 is inactive

1: Output 2 is active

Bit 20 O1CPY: Output 1 Copy

This status bit is a raw copy of the output 1 state, before the output stage (chopper, polarity). It allows to check the current output state before re-enabling the output after a delayed protection.

0: Output 1 is inactive

1: Output 1 is active

Bit 19 O2STAT: Output 2 Status

This status bit indicates the output 2 state when the delayed idle protection was triggered. This bit is updated upon any new delayed protection entry. This bit is not updated in balanced idle.

0: Output 2 was inactive

1: Output 2 was active

Bit 18 O1STAT: Output 1 Status

This status bit indicates the output 1 state when the delayed idle protection was triggered. This bit is updated upon any new delayed protection entry. This bit is not updated in balanced idle.

0: Output 1 was inactive

1: Output 1 was active

Bit 17 IPPSTAT: Idle Push Pull Status

This status bit indicates on which output the signal was applied, in push-pull mode balanced fault mode or delayed idle mode, when the protection was triggered (whatever the output state, active or inactive).

0: Protection occurred when the output 1 was active and output 2 forced inactive

1: Protection occurred when the output 2 was active and output 1 forced inactive

Bit 16 CPPSTAT: Current Push Pull Status

This status bit indicates on which output the signal is currently applied, in push-pull mode. It is only significant in this configuration.

0: Signal applied on output 1 and output 2 forced inactive

1: Signal applied on output 2 and output 1 forced inactive

Bit 15 Reserved

Bit 14 DLYPRT: Delayed Protection Flag

This bit indicates delayed idle or the balanced idle mode entry.

  1. Bit 13 RST : Reset and/or roll-over Interrupt Flag
    This bit is set by hardware when the timer x counter is reset or rolls over in continuous mode.
    0: No TIMx counter reset/roll-over interrupt occurred
    1: TIMx counter reset/roll-over interrupt occurred
  2. Bit 12 RSTx2 : Output 2 Reset Interrupt Flag
    Refer to RSTx1 description
  3. Bit 11 SETx2 : Output 2 Set Interrupt Flag
    Refer to SETx1 description
  4. Bit 10 RSTx1 : Output 1 Reset Interrupt Flag
    This bit is set by hardware when the Tx1 output is reset (goes from active to inactive mode).
    0: No Tx1 output reset interrupt occurred
    1: Tx1 output reset interrupt occurred
  5. Bit 9 SETx1 : Output 1 Set Interrupt Flag
    This bit is set by hardware when the Tx1 output is set (goes from inactive to active mode).
    0: No Tx1 output set interrupt occurred
    1: Tx1 output set interrupt occurred
  6. Bit 8 CPT2 : Capture2 Interrupt Flag
    Refer to CPT1 description
  7. Bit 7 CPT1 : Capture1 Interrupt Flag
    This bit is set by hardware when the timer x capture 1 event occurs.
    0: No timer x Capture 1 reset interrupt occurred
    1: Timer x output 1 reset interrupt occurred
  8. Bit 6 UPD : Update Interrupt Flag
    This bit is set by hardware when the timer x update event occurs.
    0: No timer x update interrupt occurred
    1: Timer x update interrupt occurred
  9. Bit 5 Reserved, must be kept at reset value.
  10. Bit 4 REP : Repetition Interrupt Flag
    This bit is set by hardware when the timer x repetition period has elapsed.
    0: No timer x repetition interrupt occurred
    1: Timer x repetition interrupt occurred
  11. Bit 3 CMP4 : Compare 4 Interrupt Flag
    Refer to CMP1 description
  12. Bit 2 CMP3 : Compare 3 Interrupt Flag
    Refer to CMP1 description
  13. Bit 1 CMP2 : Compare 2 Interrupt Flag
    Refer to CMP1 description
  14. Bit 0 CMP1 : Compare 1 Interrupt Flag
    This bit is set by hardware when the timer x counter matches the value programmed in the Compare 1 register.
    0: No Compare 1 interrupt occurred
    1: Compare 1 interrupt occurred

37.5.14 HRTIM Timerx Interrupt Clear Register (HRTIM_TIMxICR)

Address offset: 0x0008h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.DLYPRTCRSTCRSTx2CSET2xCRSTx1CSET1xCCPT2CCPT1CUPDCRes.REPCCMP4CCMP3CCMP2CCMP1C
wwwwwwwwwwwwwww

Bits 31:15 Reserved, must be kept at reset value.

Bit 14 DLYPRTC : Delayed Protection Flag Clear

Writing 1 to this bit clears the DLYPRT flag in HRTIM_TIMxISR register

Bit 13 RSTC : Reset Interrupt flag Clear

Writing 1 to this bit clears the RST flag in HRTIM_TIMxISR register

Bit 12 RSTx2C : Output 2 Reset flag Clear

Writing 1 to this bit clears the RSTx2 flag in HRTIM_TIMxISR register

Bit 11 SETx2C : Output 2 Set flag Clear

Writing 1 to this bit clears the SETx2 flag in HRTIM_TIMxISR register

Bit 10 RSTx1C : Output 1 Reset flag Clear

Writing 1 to this bit clears the RSTx1 flag in HRTIM_TIMxISR register

Bit 9 SETx1C : Output 1 Set flag Clear

Writing 1 to this bit clears the SETx1 flag in HRTIM_TIMxISR register

Bit 8 CPT2C : Capture2 Interrupt flag Clear

Writing 1 to this bit clears the CPT2 flag in HRTIM_TIMxISR register

Bit 7 CPT1C : Capture1 Interrupt flag Clear

Writing 1 to this bit clears the CPT1 flag in HRTIM_TIMxISR register

Bit 6 UPDC : Update Interrupt flag Clear

Writing 1 to this bit clears the UPD flag in HRTIM_TIMxISR register

Bit 5 Reserved, must be kept at reset value.

Bit 4 REPC : Repetition Interrupt flag Clear

Writing 1 to this bit clears the REP flag in HRTIM_TIMxISR register

Bit 3 CMP4C : Compare 4 Interrupt flag Clear

Writing 1 to this bit clears the CMP4 flag in HRTIM_TIMxISR register

Bit 2 CMP3C : Compare 3 Interrupt flag Clear

Writing 1 to this bit clears the CMP3 flag in HRTIM_TIMxISR register

Bit 1 CMP2C : Compare 2 Interrupt flag Clear

Writing 1 to this bit clears the CMP2 flag in HRTIM_TIMxISR register

Bit 0 CMP1C : Compare 1 Interrupt flag Clear

Writing 1 to this bit clears the CMP1 flag in HRTIM_TIMxISR register

37.5.15 HRTIM Timerx DMA / Interrupt Enable Register (HRTIM_TIMxDIER)

Address offset: 0x000Ch (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.DLYPR
TDE
RSTDERSTx2
DE
SETx2
DE
RSTx1
DE
SETx1
DE
CPT2D
E
CPT1D
E
UPDDERes.REPDECMP4D
E
CMP3D
E
CMP2D
E
CMP1D
E
rwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
Res.DLYPR
TIE
RSTIERSTx2I
E
SETx2I
E
RSTx1I
E
SETx1I
E
CPT2IECPT1IEUPDIERes.REPIECMP4I
E
CMP3I
E
CMP2I
E
CMP1I
E
rwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bit 31 Reserved

Bit 30 DLYPRTDE : Delayed Protection DMA request Enable

This bit is set and cleared by software to enable/disable DMA requests on delayed protection.

0: Delayed protection DMA request disabled

1: Delayed protection DMA request enabled

Bit 29 RSTDE : Reset/roll-over DMA request Enable

This bit is set and cleared by software to enable/disable DMA requests on timer x counter reset or roll-over in continuous mode.

0: Timer x counter reset/roll-over DMA request disabled

1: Timer x counter reset/roll-over DMA request enabled

Bit 28 RSTx2DE : Output 2 Reset DMA request Enable

Refer to RSTx1DE description

Bit 27 SETx2DE : Output 2 Set DMA request Enable

Refer to SETx1DE description

Bit 26 RSTx1DE : Output 1 Reset DMA request Enable

This bit is set and cleared by software to enable/disable Tx1 output reset DMA requests.

0: Tx1 output reset DMA request disabled

1: Tx1 output reset DMA request enabled

Bit 25 SETx1DE : Output 1 Set DMA request Enable

This bit is set and cleared by software to enable/disable Tx1 output set DMA requests.

0: Tx1 output set DMA request disabled

1: Tx1 output set DMA request enabled

Bit 24 CPT2DE : Capture 2 DMA request Enable

Refer to CPT1DE description

Bit 23 CPT1DE : Capture 1 DMA request Enable

This bit is set and cleared by software to enable/disable Capture 1 DMA requests.

0: Capture 1 DMA request disabled

1: Capture 1 DMA request enabled

Bit 22 UPDDE : Update DMA request Enable

This bit is set and cleared by software to enable/disable DMA requests on update event.

0: Update DMA request disabled

1: Update DMA request enabled

  1. Bit 21 Reserved, must be kept at reset value.
  2. Bit 20 REPDE : Repetition DMA request Enable
    This bit is set and cleared by software to enable/disable DMA requests on repetition event.
    0: Repetition DMA request disabled
    1: Repetition DMA request enabled
  3. Bit 19 CMP4DE : Compare 4 DMA request Enable
    Refer to CMP1DE description
  4. Bit 18 CMP3DE : Compare 3 DMA request Enable
    Refer to CMP1DE description
  5. Bit 17 CMP2DE : Compare 2 DMA request Enable
    Refer to CMP1DE description
  6. Bit 16 CMP1DE : Compare 1 DMA request Enable
    This bit is set and cleared by software to enable/disable the Compare 1 DMA requests.
    0: Compare 1 DMA request disabled
    1: Compare 1 DMA request enabled
  7. Bit 15 Reserved
  8. Bit 14 DLYPRTIE : Delayed Protection Interrupt Enable
    This bit is set and cleared by software to enable/disable interrupts on delayed protection.
    0: Delayed protection interrupts disabled
    1: Delayed protection interrupts enabled
  9. Bit 13 RSTIE : Reset/roll-over Interrupt Enable
    This bit is set and cleared by software to enable/disable interrupts on timer x counter reset or roll-over in continuous mode.
    0: Timer x counter reset/roll-over interrupt disabled
    1: Timer x counter reset/roll-over interrupt enabled
  10. Bit 12 RSTx2IE : Output 2 Reset Interrupt Enable
    Refer to RSTx1IE description
  11. Bit 11 SETx2IE : Output 2 Set Interrupt Enable
    Refer to SETx1IE description
  12. Bit 10 RSTx1IE : Output 1 Reset Interrupt Enable
    This bit is set and cleared by software to enable/disable Tx1 output reset interrupts.
    0: Tx1 output reset interrupts disabled
    1: Tx1 output reset interrupts enabled
  13. Bit 9 SETx1IE : Output 1 Set Interrupt Enable
    This bit is set and cleared by software to enable/disable Tx1 output set interrupts.
    0: Tx1 output set interrupts disabled
    1: Tx1 output set interrupts enabled
  14. Bit 8 CPT2IE : Capture Interrupt Enable
    Refer to CPT1IE description
  15. Bit 7 CPT1IE : Capture Interrupt Enable
    This bit is set and cleared by software to enable/disable Capture 1 interrupts.
    0: Capture 1 interrupts disabled
    1: Capture 1 interrupts enabled
Bit 6 UPDIE : Update Interrupt Enable

This bit is set and cleared by software to enable/disable update event interrupts.

0: Update interrupts disabled

1: Update interrupts enabled

Bit 5 Reserved, must be kept at reset value.

Bit 4 REPIE : Repetition Interrupt Enable

This bit is set and cleared by software to enable/disable repetition event interrupts.

0: Repetition interrupts disabled

1: Repetition interrupts enabled

Bit 3 CMP4IE : Compare 4 Interrupt Enable

Refer to CMP1IE description

Bit 2 CMP3IE : Compare 3 Interrupt Enable

Refer to CMP1IE description

Bit 1 CMP2IE : Compare 2 Interrupt Enable

Refer to CMP1IE description

Bit 0 CMP1IE : Compare 1 Interrupt Enable

This bit is set and cleared by software to enable/disable the Compare 1 interrupts.

0: Compare 1 interrupt disabled

1: Compare 1 interrupt enabled

37.5.16 HRTIM Timerx Counter Register (HRTIM_CNTxR)

Address offset: 0x0010h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
CNTx[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 CNTx[15:0] : Timerx Counter value

This register holds the Timerx counter value. It can only be written when the timer is stopped (TxCEN = 0 in HRTIM_TIMxCR).

Note: The timer behavior is not guaranteed if the counter value is above the HRTIM_PERxR register value.

37.5.17 HRTIM Timerx Period Register (HRTIM_PERxR)

Address offset: 0x14h (this offset address is relative to timer x base address)

Reset value: 0x0000 FFDF

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
PERx[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 PERx[15:0] : Timerx Period value

This register holds timer x period value.

This register holds either the content of the preload register or the content of the active register if preload is disabled.

The period value must be above or equal to 3 periods of the \( f_{HRTIM} \) clock.

The maximum value is 0x0000 FFDF.

37.5.18 HRTIM Timerx Repetition Register (HRTIM_REPxR)

Address offset: 0x18h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.REP x [7:0]
rwrwrwrwrwrwrwrw

Bits 31:8 Reserved, must be kept at reset value.

Bits 7:0 REP x [7:0] : Timerx Repetition period value

This register holds the repetition period value.

This register holds either the content of the preload register or the content of the active register if preload is disabled.

37.5.19 HRTIM Timerx Compare 1 Register (HRTIM_CMP1xR)

Address offset: 0x1Ch (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
CMP1 x [15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 CMP1 x [15:0] : Timerx Compare 1 value

This register holds the compare 1 value.

This register holds either the content of the preload register or the content of the active register if preload is disabled.

The compare value must be above or equal to 3 periods of the f HRTIM clock.

37.5.20 HRTIM Timerx Compare 1 Compound Register (HRTIM_CMP1CxR)

Address offset: 0x20h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.REPx[7:0]
rwrwrwrwrwrwrwrw
1514131211109876543210
CMP1x[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:24 Reserved, must be kept at reset value.

Bits 23:16 REPx[7:0] : Timerx Repetition value (aliased from HRTIM_REPx register)

This bitfield is an alias from the REPx[7:0] bitfield in the HRTIMx_REPxR register.

Bits 15:0 CMP1x[15:0] : Timerx Compare 1 value

This bitfield is an alias from the CMP1x[15:0] bitfield in the HRTIMx_CMP1xR register.

37.5.21 HRTIM Timerx Compare 2 Register (HRTIM_CMP2xR)

Address offset: 0x24h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
CMP2x[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 CMP2x[15:0] : Timerx Compare 2 value

This register holds the Compare 2 value.

This register holds either the content of the preload register or the content of the active register if preload is disabled.

The compare value must be above or equal to 3 periods of the \( f_{HRTIM} \) clock.

This register can behave as an auto-delayed compare register, if enabled with DELCMP2[1:0] bits in HRTIM_TIMxCR.

37.5.22 HRTIM Timerx Compare 3 Register (HRTIM_CMP3xR)

Address offset: 0x28h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
CMP3x[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 CMP3x[15:0] : Timerx Compare 3 value

This register holds the Compare 3 value.

This register holds either the content of the preload register or the content of the active register if preload is disabled.

The compare value must be above or equal to 3 periods of the \( f_{HRTIM} \) clock.

37.5.23 HRTIM Timerx Compare 4 Register (HRTIM_CMP4xR)

Address offset: 0x2Ch (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
CMP4x[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 CMP4x[15:0] : Timerx Compare 4 value

This register holds the Compare 4 value.

This register holds either the content of the preload register or the content of the active register if preload is disabled.

The compare value must be above or equal to 3 periods of the \( f_{HRTIM} \) clock.

This register can behave as an auto-delayed compare register, if enabled with DELCMP4[1:0] bits in HRTIM_TIMxCR.

37.5.24 HRTIM Timerx Capture 1 Register (HRTIM_CPT1xR)

Address offset: 0x30h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
CPT1x[15:0]
rrrrrrrrrrrrrrrr

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 CPT1x[15:0] : Timerx Capture 1 value

This register holds the counter value when the capture 1 event occurred.

37.5.25 HRTIM Timerx Capture 2 Register (HRTIM_CPT2xR)

Address offset: 0x34h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
CPT2x[15:0]
rrrrrrrrrrrrrrrr

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 CPT2x[15:0] : Timerx Capture 2 value

This register holds the counter value when the capture 2 event occurred.

37.5.26 HRTIM Timerx Deadtime Register (HRTIM_DTxR)

Address offset: 0x38h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
DTFLKxDTFSLKxRes.Res.Res.Res.SDTFxDTFx[8:0]
rworworwrwrwrwrwrwrwrwrwrw
1514131211109876543210
DTRLKxDTRSLKxRes.DTPRSC[1:0]SDTRxDTRx[8:0]
rworworwrwrwrwrwrwrwrwrwrwrwrwrw

Bit 31 DTFLKx: Deadtime Falling Lock

This write-once bit prevents the deadtime (sign and value) to be modified, if enabled.
0: Deadtime falling value and sign is writable
1: Deadtime falling value and sign is read-only
Note: This bit is not preloaded

Bit 30 DTFSLKx: Deadtime Falling Sign Lock

This write-once bit prevents the sign of falling deadtime to be modified, if enabled.
0: Deadtime falling sign is writable
1: Deadtime falling sign is read-only
Note: This bit is not preloaded

Bits 29:26 Reserved, must be kept at reset value.

Bit 25 SDTFx: Sign Deadtime Falling value

This register determines whether the deadtime is positive (signals not overlapping) or negative (signals overlapping).
0: Positive deadtime on falling edge
1: Negative deadtime on falling edge

Bits 24:16 DTFx[8:0]: Deadtime Falling value

This register holds the value of the deadtime following a falling edge of reference PWM signal.

\[ t_{DTF} = DTFx[8:0] \times t_{DTG} \]

Bit 15 DTRLKx: Deadtime Rising Lock

This write-once bit prevents the deadtime (sign and value) to be modified, if enabled
0: Deadtime rising value and sign is writable
1: Deadtime rising value and sign is read-only
Note: This bit is not preloaded

Bit 14 DTRSLKx: Deadtime Rising Sign Lock

This write-once bit prevents the sign of deadtime to be modified, if enabled
0: Deadtime rising sign is writable
1: Deadtime rising sign is read-only
Note: This bit is not preloaded

Bit 13 Reserved, must be kept at reset value.

Bits 12:10 DTPRSC[2:0] : Deadtime Prescaler

This register holds the value of the deadtime clock prescaler.

\[ t_{DTG} = (2^{(DTPRSC[2:0]-3)}) \times t_{HRTIM} \]

000: Reserved

001: Reserved

010: Reserved

011: \( t_{DTG} = t_{HRTIM} \)

100: \( t_{DTG} = t_{HRTIM} \times 2 \)

101: \( t_{DTG} = t_{HRTIM} \times 4 \)

110: \( t_{DTG} = t_{HRTIM} \times 8 \)

111: \( t_{DTG} = t_{HRTIM} \times 16 \)

This bitfield is read-only as soon as any of the lock bit is enabled (DTFLKs, DTFSLKx, DTRLKx, DTRSLKx).

Bit 9 SDTRx : Sign Deadtime Rising value

This register determines whether the deadtime is positive or negative (overlapping signals)

0: Positive deadtime on rising edge

1: Negative deadtime on rising edge

Bits 8:0 DTRx[8:0] : Deadtime Rising value

This register holds the value of the deadtime following a rising edge of reference PWM signal.

\[ t_{DTR} = DTRx[8:0] \times t_{DTG} \]

37.5.27 HRTIM Timerx Output1 Set Register (HRTIM_SETx1R)

Address offset: 0x3Ch (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
UPDAT
E
EXT
EVNT1
0
EXT
EVNT9
EXT
EVNT8
EXT
EVNT7
EXT
EVNT6
EXT
EVNT5
EXT
EVNT4
EXT
EVNT3
EXT
EVNT2
EXT
EVNT1
TIM
EVNT9
TIM
EVNT8
TIM
EVNT7
TIM
EVNT6
TIM
EVNT5
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
TIM
EVNT4
TIM
EVNT3
TIM
EVNT2
TIM
EVNT1
MST
CMP4
MST
CMP3
MST
CMP2
MST
CMP1
MST
PER
CMP4CMP3CMP2CMP1PERRESYNCSST
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bit 31 UPDATE : Registers update (transfer preload to active)

Register update event forces the output to its active state.

Bit 30 EXTEVNT10 : External Event 10

Refer to EXTEVNT1 description

Bit 29 EXTEVNT9 : External Event 9

Refer to EXTEVNT1 description

Bit 28 EXTEVNT8 : External Event 8

Refer to EXTEVNT1 description

Bit 27 EXTEVNT7 : External Event 7

Refer to EXTEVNT1 description

Bit 26 EXTEVNT6 : External Event 6

Refer to EXTEVNT1 description

Bit 25 EXTEVNT5 : External Event 5

Refer to EXTEVNT1 description

Bit 24 EXTEVNT4 : External Event 4

Refer to EXTEVNT1 description

Bit 23 EXTEVNT3 : External Event 3

Refer to EXTEVNT1 description

Bit 22 EXTEVNT2 : External Event 2

Refer to EXTEVNT1 description

Bit 21 EXTEVNT1 : External Event 1

External event 1 forces the output to its active state.

Bit 20 TIMEVNT9 : Timer Event 9

Refer to TIMEVNT1 description

Bit 19 TIMEVNT8 : Timer Event 8

Refer to TIMEVNT1 description

Bit 18 TIMEVNT7 : Timer Event 7

Refer to TIMEVNT1 description

Bit 17 TIMEVNT6 : Timer Event 6

Refer to TIMEVNT1 description

  1. Bit 16 TIMEVNT5 : Timer Event 5
    Refer to TIMEVNT1 description
  2. Bit 15 TIMEVNT4 : Timer Event 4
    Refer to TIMEVNT1 description
  3. Bit 14 TIMEVNT3 : Timer Event 3
    Refer to TIMEVNT1 description
  4. Bit 13 TIMEVNT2 : Timer Event 2
    Refer to TIMEVNT1 description
  5. Bit 12 TIMEVNT1 : Timer Event 1
    Timers event 1 forces the output to its active state (refer to Table 307 for Timer Events assignments)
  6. Bit 11 MSTCMP4 : Master Compare 4
    Master Timer Compare 4 event forces the output to its active state.
  7. Bit 10 MSTCMP3 : Master Compare 3
    Master Timer Compare 3 event forces the output to its active state.
  8. Bit 9 MSTCMP2 : Master Compare 2
    Master Timer Compare 2 event forces the output to its active state.
  9. Bit 8 MSTCMP1 : Master Compare 1
    Master Timer compare 1 event forces the output to its active state.
  10. Bit 7 MSTPER : Master Period
    The master timer counter roll-over in continuous mode, or to the master timer reset in single-shot mode forces the output to its active state.
  11. Bit 6 CMP4 : Timer x Compare 4
    Timer A compare 4 event forces the output to its active state.
  12. Bit 5 CMP3 : Timer x Compare 3
    Timer A compare 3 event forces the output to its active state.
  13. Bit 4 CMP2 : Timer x Compare 2
    Timer A compare 2 event forces the output to its active state.
  14. Bit 3 CMP1 : Timer x Compare 1
    Timer A compare 1 event forces the output to its active state.
  15. Bit 2 PER : Timer x Period
    Timer A Period event forces the output to its active state.
  16. Bit 1 RESYNC : Timer A resynchronization
    Timer A reset event coming solely from software or SYNC input forces the output to its active state.
    Note: Other timer reset are not affecting the output when RESYNC=1
  17. Bit 0 SST : Software Set trigger
    This bit forces the output to its active state. This bit can only be set by software and is reset by hardware.
    Note: This bit is not preloaded

37.5.28 HRTIM_Timerx Output1 Reset Register (HRTIM_RSTx1R)

Address offset: 0x40h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
UPDAT
E
EXT
EVNT1
0
EXT
EVNT9
EXT
EVNT8
EXT
EVNT7
EXT
EVNT6
EXT
EVNT5
EXT
EVNT4
EXT
EVNT3
EXT
EVNT2
EXT
EVNT1
TIM
EVNT9
TIM
EVNT8
TIM
EVNT7
TIM
EVNT6
TIM
EVNT5
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

1514131211109876543210
TIM
EVNT4
TIM
EVNT3
TIM
EVNT2
TIM
EVNT1
MST
CMP4
MST
CMP3
MST
CMP2
MST
CMP1
MST
PER
CMP4CMP3CMP2CMP1PERRESYN
C
SRT
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:0 Refer to HRTIM_SETx1R bits description.

These bits are defining the source which can force the Tx1 output to its inactive state.

37.5.29 HRTIM_Timerx Output2 Set Register (HRTIM_SETx2R)

Address offset: 0x44h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
UPDAT
E
EXT
EVNT1
0
EXT
EVNT9
EXT
EVNT8
EXT
EVNT7
EXT
EVNT6
EXT
EVNT5
EXT
EVNT4
EXT
EVNT3
EXT
EVNT2
EXT
EVNT1
TIM
EVNT9
TIM
EVNT8
TIM
EVNT7
TIM
EVNT6
TIM
EVNT5
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

1514131211109876543210
TIM
EVNT4
TIM
EVNT3
TIM
EVNT2
TIM
EVNT1
MST
CMP4
MST
CMP3
MST
CMP2
MST
CMP1
MST
PER
CMP4CMP3CMP2CMP1PERRESYN
C
SST
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:0 Refer to HRTIM_SETx1R bits description.

These bits are defining the source which can force the Tx2 output to its active state.

37.5.30 HRTIM Timerx Output2 Reset Register (HRTIM_RSTx2R)

Address offset: 0x48h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
UPDATEEXT EVNT10EXT EVNT9EXT EVNT8EXT EVNT7EXT EVNT6EXT EVNT5EXT EVNT4EXT EVNT3EXT EVNT2EXT EVNT1TIM EVNT9TIM EVNT8TIM EVNT7TIM EVNT6TIM EVNT5
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

1514131211109876543210
TIM EVNT4TIM EVNT3TIM EVNT2TIM EVNT1MST CMP4MST CMP3MST CMP2MST CMP1MST PERCMP4CMP3CMP2CMP1PERRESYNCSRT
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:0 Refer to HRTIM_SETx1R bits description.

These bits are defining the source which can force the Tx2 output to its inactive state.

37.5.31 HRTIM Timerx External Event Filtering Register 1 (HRTIM_EEFxR1)

Address offset: 0x4Ch (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.EE5FLTR[3:0]EE5LTCHRes.EE4FLTR[3:0]EE4LTCHRes.EE3FLTR[3]
rwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
EE3FLTR[2:0]EE3LTCHRes.EE2FLTR[3:0]EE2LTCHRes.EE1FLTR[3:0]EE1LTCH
rwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:29 Reserved, must be kept at reset value.

Bits 28:25 EE5FLTR[3:0] : External Event 5 filter
Refer to EE1FLTR[3:0] description

Bit 24 EE5LTCH : External Event 5 latch
Refer to EE1LTCH description

Bit 23 Reserved, must be kept at reset value.

Bits 22:19 EE4FLTR[3:0] : External Event 4 filter
Refer to EE1FLTR[3:0] description

Bit 18 EE4LTCH : External Event 4 latch
Refer to EE1LTCH description

Bit 17 Reserved, must be kept at reset value.

Bits 16:13 EE3FLTR[3:0] : External Event 3 filter
Refer to EE1FLTR[3:0] description

Bit 12 EE3LTCH : External Event 3 latch
Refer to EE1LTCH description

Bit 11 Reserved, must be kept at reset value.

Bits 10:7 EE2FLTR[3:0] : External Event 2 filter
Refer to EE1FLTR[3:0] description

Bit 6 EE2LTCH : External Event 2 latch
Refer to EE1LTCH description

Bit 5 Reserved, must be kept at reset value.

Bits 4:1 EE1FLTR[3:0] : External Event 1 filter

0000: No filtering

0001: Blanking from counter reset/roll-over to Compare 1

0010: Blanking from counter reset/roll-over to Compare 2

0011: Blanking from counter reset/roll-over to Compare 3

0100: Blanking from counter reset/roll-over to Compare 4

0101: Blanking from another timing unit: TIMFLTR1 source (see Table 311 for details)

0110: Blanking from another timing unit: TIMFLTR2 source (see Table 311 for details)

0111: Blanking from another timing unit: TIMFLTR3 source (see Table 311 for details)

1000: Blanking from another timing unit: TIMFLTR4 source (see Table 311 for details)

1001: Blanking from another timing unit: TIMFLTR5 source (see Table 311 for details)

1010: Blanking from another timing unit: TIMFLTR6 source (see Table 311 for details)

1011: Blanking from another timing unit: TIMFLTR7 source (see Table 311 for details)

1100: Blanking from another timing unit: TIMFLTR8 source (see Table 311 for details)

1101: Windowing from counter reset/roll-over to Compare 2

1110: Windowing from counter reset/roll-over to Compare 3

1111: Windowing from another timing unit: TIMWIN source (see Table 312 for details)

Note: Whenever a compare register is used for filtering, the value must be strictly above 0.

This bitfield must not be modified once the counter is enabled (TxCEN bit set)

Bit 0 EE1LTCH : External Event 1 latch

0: Event 1 is ignored if it happens during a blank, or passed through during a window.

1: Event 1 is latched and delayed till the end of the blanking or windowing period.

Note: A timeout event is generated in window mode (EE1FLTR[3:0]=1101, 1110, 1111) if EE1LTCH = 0, except if the External event is programmed in fast mode (EExFAST = 1).

This bitfield must not be modified once the counter is enabled (TxCEN bit set)

37.5.32 HRTIM Timerx External Event Filtering Register 2 (HRTIM_EEFxR2)

Address offset: 0x50h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.EE10FLTR[3:0]EE10LTCHRes.EE9FLTR[3:0]EE9LTCHRes.EE8FLTR[3]
rwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
EE8FLTR[2:0]EE8LTCHRes.EE7FLTR[3:0]EE7LTCHRes.EE6FLTR[3:0]EE6LTCH
rwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:29 Reserved, must be kept at reset value.

Bits 28:25 EE10FLTR[3:0] : External Event 10 filter

Refer to EE1FLTR[3:0] description

Bit 24 EE10LTCH : External Event 10 latch

Refer to EE1LTCH description

Bit 23 Reserved, must be kept at reset value.

Bits 22:19 EE9FLTR[3:0] : External Event 9 filter

Refer to EE1FLTR[3:0] description

Bit 18 EE9LTCH : External Event 9 latch

Refer to EE1LTCH description

Bit 17 Reserved, must be kept at reset value.

Bits 16:13 EE8FLTR[3:0] : External Event 8 filter

Refer to EE1FLTR[3:0] description

Bit 12 EE8LTCH : External Event 8 latch

Refer to EE1LTCH description

Bit 11 Reserved, must be kept at reset value.

Bits 10:7 EE7FLTR[3:0] : External Event 7 filter

Refer to EE1FLTR[3:0] description

Bit 6 EE7LTCH : External Event 7 latch

Refer to EE1LTCH description

Bit 5 Reserved, must be kept at reset value.

Bits 4:1 EE6FLTR[3:0] : External Event 6 filter

Refer to EE1FLTR[3:0] description

Bit 0 EE6LTCH : External Event 6 latch

Refer to EE1LTCH description

37.5.33 HRTIM Timerx Reset Register (HRTIM_RSTxR)

HRTIM TimerA Reset Register (HRTIM_RSTAR)

Address offset: 0xD4h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.TIME
CMP4
TIME
CMP2
TIME
CMP1
TIMD
CMP4
TIMD
CMP2
TIMD
CMP1
TIMC
CMP4
TIMC
CMP2
TIMC
CMP1
TIMB
CMP4
TIMB
CMP2
TIMB
CMP1
EXTEV
NT10
EXTEV
NT9
EXTEV
NT8
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

1514131211109876543210
EXTEV
NT7
EXTEV
NT6
EXTEV
NT5
EXTEV
NT4
EXTEV
NT3
EXTEV
NT2
EXTEV
NT1
MSTC
MP4
MSTC
MP3
MSTC
MP2
MSTC
MP1
MSTPE
R
CMP4CMP2UPDTRes.
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bit 31 Reserved, must be kept at reset value.

Bit 30 TECPM4 : Timer E Compare 4

The timer A counter is reset upon timer E Compare 4 event.

Bit 29 TECMP2 : Timer E Compare 2

The timer A counter is reset upon timer E Compare 2 event.

Bit 28 TECMP1 : Timer E Compare 1

The timer A counter is reset upon timer E Compare 1 event.

Bit 27 TDCMP4 : Timer D Compare 4

The timer A counter is reset upon timer D Compare 4 event.

Bit 26 TDCMP2 : Timer D Compare 2

The timer A counter is reset upon timer D Compare 2 event.

Bit 25 TDCMP1 : Timer D Compare 1

The timer A counter is reset upon timer D Compare 1 event.

Bit 24 TCCMP4 : Timer C Compare 4

The timer A counter is reset upon timer C Compare 4 event.

Bit 23 TCCMP2 : Timer C Compare 2

The timer A counter is reset upon timer C Compare 2 event.

Bit 22 TCCMP1 : Timer C Compare 1

The timer A counter is reset upon timer C Compare 1 event.

Bit 21 TBCMP4 : Timer B Compare 4

The timer A counter is reset upon timer B Compare 4 event.

Bit 20 TBCMP2 : Timer B Compare 2

The timer A counter is reset upon timer B Compare 2 event.

Bit 19 TBCMP1 : Timer B Compare 1

The timer A counter is reset upon timer B Compare 1 event.

Bit 18 EXTEVNT10 : External Event

The timer A counter is reset upon external event 10.

Bit 17 EXTEVNT9 : External Event 9

The timer A counter is reset upon external event 9.

  1. Bit 16 EXTEVNT8 : External Event 8
    The timer A counter is reset upon external event 8.
  2. Bit 15 EXTEVNT7 : External Event 7
    The timer A counter is reset upon external event 7.
  3. Bit 14 EXTEVNT6 : External Event 6
    The timer A counter is reset upon external event 6.
  4. Bit 13 EXTEVNT5 : External Event 5
    The timer A counter is reset upon external event 5.
  5. Bit 12 EXTEVNT4 : External Event 4
    The timer A counter is reset upon external event 4.
  6. Bit 11 EXTEVNT3 : External Event 3
    The timer A counter is reset upon external event 3.
  7. Bit 10 EXTEVNT2 : External Event 2
    The timer A counter is reset upon external event 2.
  8. Bit 9 EXTEVNT1 : External Event 1
    The timer A counter is reset upon external event 1.
  9. Bit 8 MSTCMP4 : Master compare 4
    The timer A counter is reset upon master timer Compare 4 event.
  10. Bit 7 MSTCMP3 : Master compare 3
    The timer A counter is reset upon master timer Compare 3 event.
  11. Bit 6 MSTCMP2 : Master compare 2
    The timer A counter is reset upon master timer Compare 2 event.
  12. Bit 5 MSTCMP1 : Master compare 1
    The timer A counter is reset upon master timer Compare 1 event.
  13. Bit 4 MSTPER : Master timer Period
    The timer A counter is reset upon master timer period event.
  14. Bit 3 CMP4 : Timer A compare 4 reset
    The timer A counter is reset upon Timer A Compare 4 event.
  15. Bit 2 CMP2 : Timer A compare 2 reset
    The timer A counter is reset upon Timer A Compare 2 event.
  16. Bit 1 UPDT : Timer A Update reset
    The timer A counter is reset upon update event.
  17. Bit 0 Reserved, must be kept at reset value.
HRTIM TimerB Reset Register (HRTIM_RSTBR)

Address offset: 0x154h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.TIME
CMP4
TIME
CMP2
TIME
CMP1
TIMD
CMP4
TIMD
CMP2
TIMD
CMP1
TIMC
CMP4
TIMC
CMP2
TIMC
CMP1
TIMA
CMP4
TIMA
CMP2
TIMA
CMP1
EXTEV
NT10
EXTEV
NT9
EXTEV
NT8
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
EXTEV
NT7
EXTEV
NT6
EXTEV
NT5
EXTEV
NT4
EXTEV
NT3
EXTEV
NT2
EXTEV
NT1
MSTC
MP4
MSTC
MP3
MSTC
MP2
MSTC
MP1
MSTPE
R
CMP4CMP2UPDTRes.
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 30:1 Refer to HRTIM_RSTAR bits description.

Bits 30:19 differ (reset signals come from TIMA, TIMC, TIMD and TIME)

HRTIM TimerC Reset Register (HRTIM_RSTCR)

Address offset: 0x1D4h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.TIME
CMP4
TIME
CMP2
TIME
CMP1
TIMD
CMP4
TIMD
CMP2
TIMD
CMP1
TIMB
CMP4
TIMB
CMP2
TIMB
CMP1
TIMA
CMP4
TIMA
CMP2
TIMA
CMP1
EXTEV
NT10
EXTEV
NT9
EXTEV
NT8
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
EXTEV
NT7
EXTEV
NT6
EXTEV
NT5
EXTEV
NT4
EXTEV
NT3
EXTEV
NT2
EXTEV
NT1
MSTC
MP4
MSTC
MP3
MSTC
MP2
MSTC
MP1
MSTPE
R
CMP4CMP2UPDTRes.
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 30:1 Refer to HRTIM_RSTAR bits description.

Bits 30:19 differ (reset signals come from TIMA, TIMB, TIMD and TIME)

HRTIM TimerD Reset Register (HRTIM_RSTDR)

Address offset: 0x254h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.TIME
CMP4
TIME
CMP2
TIME
CMP1
TIMC
CMP4
TIMC
CMP2
TIMC
CMP1
TIMB
CMP4
TIMB
CMP2
TIMB
CMP1
TIMA
CMP4
TIMA
CMP2
TIMA
CMP1
EXTEV
NT10
EXTEV
NT9
EXTEV
NT8
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
EXTEV
NT7
EXTEV
NT6
EXTEV
NT5
EXTEV
NT4
EXTEV
NT3
EXTEV
NT2
EXTEV
NT1
MSTC
MP4
MSTC
MP3
MSTC
MP2
MSTC
MP1
MSTPE
R
CMP4CMP2UPDTRes.
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 30:1 Refer to HRTIM_RSTAR bits description.

Bits 30:19 differ (reset signals come from TIMA, TIMB, TIMC and TIME)

HRTIM Timerx Reset Register (HRTIM_RSTER)

Address offset: 0x2D4h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.TIMD
CMP4
TIMD
CMP2
TIMD
CMP1
TIMC
CMP4
TIMC
CMP2
TIMC
CMP1
TIMB
CMP4
TIMB
CMP2
TIMB
CMP1
TIMA
CMP4
TIMA
CMP2
TIMA
CMP1
EXTEV
NT10
EXTEV
NT9
EXTEV
NT8
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
EXTEV
NT7
EXTEV
NT6
EXTEV
NT5
EXTEV
NT4
EXTEV
NT3
EXTEV
NT2
EXTEV
NT1
MSTC
MP4
MSTC
MP3
MSTC
MP2
MSTC
MP1
MSTPE
R
CMP4CMP2UPDTRes.
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 30:1 Refer to HRTIM_RSTAR bits description.

Bits 30:19 differ (reset signals come from TIMA, TIMB, TIMC and TIMD)

37.5.34 HRTIM Timerx Chopper Register (HRTIM_CHPxR)

Address offset: 0x58h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.STRTPW[3:0]CARDTY[2:0]CARFRQ[3:0]
rwrwrwrwrwrwrwrwrwrwrw

Bits 31:11 Reserved, must be kept at reset value.

Bits 10:7 STRPW[3:0] : Timerx start pulsemask

This register defines the initial pulsemask following a rising edge on output signal.

This bitfield cannot be modified when one of the CHPx bits is set.

\[ t_{1\text{STPW}} = (\text{STRPW}[3:0]+1) \times 16 \times t_{\text{HRTIM}} \]

0000: 40 ns (1/25 MHz)

...

1111: 640 ns (16/25 MHz)

Bits 6:4 CARDTY[2:0] : Timerx chopper duty cycle value

This register defines the duty cycle of the carrier signal. This bitfield cannot be modified when one of the CHPx bits is set.

000: 0/8 (i.e. only 1st pulse is present)

...

111: 7/8

Bits 3:0 CARFRQ[3:0] : Timerx carrier frequency value

This register defines the carrier frequency \( F_{\text{CHPFRQ}} = f_{\text{HRTIM}} / (16 \times (\text{CARFRQ}[3:0]+1)) \) .

This bitfield cannot be modified when one of the CHPx bits is set.

0000: 25 MHz ( \( f_{\text{HRTIM}} / 16 \) )

...

1111: 1.56 MHz ( \( f_{\text{HRTIM}} / 256 \) )

37.5.35 HRTIM Timerx Capture 1 Control Register (HRTIM_CPT1xCR)

Address offset: 0x5Ch (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Reserved (for TIME only)Reserved (for TIMD only)Reserved (for TIMC only)Reserved (for TIMB only)
TECMP
2
TECMP
1
TE1RS
T
TE1SE
T
TDCM
P2
TDCM
P1
TD1RS
T
TD1SE
T
TCCM
P2
TCCM
P1
TC1RS
T
TC1SE
T
TBCMP
2
TBCMP
1
TB1RS
T
TB1SE
T
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
Reserved (for TIMA only)EXEV1
0CPT
EXEV9
CPT
EXEV8
CPT
EXEV7
CPT
EXEV6
CPT
EXEV5
CPT
EXEV4
CPT
EXEV3
CPT
EXEV2
CPT
EXEV1
CPT
UPDCP
T
SWCP
T
TACMP
2
TACMP
1
TA1RS
T
TA1SE
T
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:0 Refer to HRTIM_CPT2xCR bit description

37.5.36 HRTIM Timerx Capture 2 Control Register (HRTIM_CPT2xCR)

Address offset: 0x60h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Reserved (for TIME only)Reserved (for TIMD only)Reserved (for TIMC only)Reserved (for TIMB only)
TECMP2TECMP1TE1RS
T
TE1SE
T
TDCMP2TDCMP1TD1RS
T
TD1SE
T
TCCMP2TCCMP1TC1RS
T
TC1SE
T
TBCMP2TBCMP1TB1RS
T
TB1SE
T
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
Reserved (for TIMA only)EXEV1
0CPT
EXEV9
CPT
EXEV8
CPT
EXEV7
CPT
EXEV6
CPT
EXEV5
CPT
EXEV4
CPT
EXEV3
CPT
EXEV2
CPT
EXEV1
CPT
UPDCP
T
SWCP
T
TACMP2TACMP1TA1RS
T
TA1SE
T
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bit 31 TECMP2 : Timer E Compare 2

Refer to TACMP1 description

Note: This bit is reserved for Timer E

Bit 30 TECMP1 : Timer E Compare 1

Refer to TACMP1 description

Note: This bit is reserved for Timer E

Bit 29 TE1RST : Timer E output 1 Reset

Refer to TA1RST description

Note: This bit is reserved for Timer E

Bit 28 TE1SET : Timer E output 1 Set

Refer to TA1SET description

Note: This bit is reserved for Timer E

Bit 27 TDCMP2 : Timer D Compare 2

Refer to TACMP1 description

Note: This bit is reserved for Timer D

Bit 26 TDCMP1 : Timer D Compare 1

Refer to TACMP1 description

Note: This bit is reserved for Timer D

Bit 25 TD1RST : Timer D output 1 Reset

Refer to TA1RST description

Note: This bit is reserved for Timer D

Bit 24 TD1SET : Timer D output 1 Set

Refer to TA1SET description

Note: This bit is reserved for Timer D

Bit 23 TCCMP2 : Timer C Compare 2

Refer to TACMP1 description

Note: This bit is reserved for Timer C

  1. Bit 22 TCCMP1 : Timer C Compare 1
    Refer to TACMP1 description
    Note: This bit is reserved for Timer C
  2. Bit 21 TC1RST : Timer C output 1 Reset
    Refer to TA1RST description
    Note: This bit is reserved for Timer C
  3. Bit 20 TC1SET : Timer C output 1 Set
    Refer to TA1SET description
    Note: This bit is reserved for Timer C
  4. Bit 19 TBCMP2 : Timer B Compare 2
    Refer to TACMP1 description
    Note: This bit is reserved for Timer B
  5. Bit 18 TBCMP1 : Timer B Compare 1
    Refer to TACMP1 description
    Note: This bit is reserved for Timer B
  6. Bit 17 TB1RST : Timer B output 1 Reset
    Refer to TA1RST description
    Note: This bit is reserved for Timer B
  7. Bit 16 TB1SET : Timer B output 1 Set
    Refer to TA1SET description
    Note: This bit is reserved for Timer B
  8. Bit 15 TACMP2 : Timer A Compare 2
    Timer A Compare 2 triggers Capture 2.
    Note: This bit is reserved for Timer A
  9. Bit 14 TACMP1 : Timer A Compare 1
    Timer A Compare 1 triggers Capture 2.
    Note: This bit is reserved for Timer A
  10. Bit 13 TA1RST : Timer B output 1 Reset
    Capture 2 is triggered by HRTIM_CHA1 output active to inactive transition.
    Note: This bit is reserved for Timer A
  11. Bit 12 TA1SET : Timer B output 1 Set
    Capture 2 is triggered by HRTIM_CHA1 output inactive to active transition.
    Note: This bit is reserved for Timer A
  12. Bit 11 EXEV10CPT : External Event 10 Capture
    Refer to EXEV1CPT description
  13. Bit 10 EXEV9CPT : External Event 9 Capture
    Refer to EXEV1CPT description
  14. Bit 9 EXEV8CPT : External Event 8 Capture
    Refer to EXEV1CPT description
  15. Bit 8 EXEV7CPT : External Event 7 Capture
    Refer to EXEV1CPT description
  16. Bit 7 EXEV6CPT : External Event 6 Capture
    Refer to EXEV1CPT description
  1. Bit 6 EXEV5CPT : External Event 5 Capture
    Refer to EXEV1CPT description
  2. Bit 5 EXEV4CPT : External Event 4 Capture
    Refer to EXEV1CPT description
  3. Bit 4 EXEV3CPT : External Event 3 Capture
    Refer to EXEV1CPT description
  4. Bit 3 EXEV2CPT : External Event 2 Capture
    Refer to EXEV1CPT description
  5. Bit 2 EXEV1CPT : External Event 1 Capture
    The External event 1 triggers the Capture 2.
  6. Bit 1 UPDCPT : Update Capture
    The update event triggers the Capture 2.
  7. Bit 0 SWCPT : Software Capture
    This bit forces the Capture 2 by software. This bit is set only, reset by hardware

37.5.37 HRTIM Timerx Output Register (HRTIM_OUTxR)

Address offset: 0x64h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.DIDL2CHP2FAULT2[1:0]IDLES2IDLEM 2POL2Res.
rwrwrwrwrwrwrw

1514131211109876543210
Res.Res.Res.DLYPRT[2:0]DLYPR
TEN
DTENDIDL1CHP1FAULT1[1:0]IDLES1IDLEM 1Res.
rwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:24 Reserved, must be kept at reset value.

Bit 23 DIDL2 : Output 2 Deadtime upon burst mode Idle entry

This bit can delay the idle mode entry by forcing a deadtime insertion before switching the outputs to their idle state. This setting only applies when entering in idle state during a burst mode operation.

0: The programmed Idle state is applied immediately to the Output 2

1: Deadtime (inactive level) is inserted on output 2 before entering the idle mode. The deadtime value is set by DTFx[8:0].

Note: This parameter cannot be changed once the timer x is enabled.

DIDL=1 can be set only if one of the outputs is active during the burst mode (IDLES=1), and with positive deadtimes (SDTR/SDTF set to 0).

Bit 22 CHP2 : Output 2 Chopper enable

This bit enables the chopper on output 2

0: Output signal is not altered

1: Output signal is chopped by a carrier signal

Note: This parameter cannot be changed once the timer x is enabled.

Bits 21:20 FAULT2[1:0] : Output 2 Fault state

These bits select the output 2 state after a fault event

00: No action: the output is not affected by the fault input and stays in run mode.

01: Active

10: Inactive

11: High-Z

Note: This parameter cannot be changed once the timer x is enabled (TxCEN bit set), if FLTENx bit is set or if the output is in FAULT state.

Bit 19 IDLES2 : Output 2 Idle State

This bit selects the output 2 idle state

0: Inactive

1: Active

Note: This parameter must be set prior to have the HRTIM controlling the outputs.

Bit 18 IDLEM2 : Output 2 Idle mode

This bit selects the output 2 idle mode

0: No action: the output is not affected by the burst mode operation

1: The output is in idle state when requested by the burst mode controller.

Note: This bit is preloaded and can be changed during run-time, but must not be changed while the burst mode is active.

Bit 17 POL2 : Output 2 polarity

This bit selects the output 2 polarity

0: positive polarity (output active high)

1: negative polarity (output active low)

Note: This parameter cannot be changed once the timer x is enabled.

Bits 16:12 Reserved, must be kept at reset value.

Bits 12:10 DLYPRT[2:0] : Delayed Protection

These bits define the source and outputs on which the delayed protection schemes are applied.

In HRTIM_OUTAR, HRTIM_OUTBR, HRTIM_OUTCR:

000: Output 1 delayed Idle on external Event 6

001: Output 2 delayed Idle on external Event 6

010: Output 1 and output 2 delayed Idle on external Event 6

011: Balanced Idle on external Event 6

100: Output 1 delayed Idle on external Event 7

101: Output 2 delayed Idle on external Event 7

110: Output 1 and output 2 delayed Idle on external Event 7

111: Balanced Idle on external Event 7

In HRTIM_OUTDR, HRTIM_OUTER:

000: Output 1 delayed Idle on external Event 8

001: Output 2 delayed Idle on external Event 8

010: Output 1 and output 2 delayed Idle on external Event 8

011: Balanced Idle on external Event 8

100: Output 1 delayed Idle on external Event 9

101: Output 2 delayed Idle on external Event 9

110: Output 1 and output 2 delayed Idle on external Event 9

111: Balanced Idle on external Event 9

Note: This bitfield must not be modified once the delayed protection is enabled (DLYPRTEN bit set)

Bit 9 DLYPRTEN : Delayed Protection Enable

This bit enables the delayed protection scheme

0: No action

1: Delayed protection is enabled, as per DLYPRT[2:0] bits

Note: This parameter cannot be changed once the timer x is enabled (TxEN bit set).

Bit 8 DTEN : Deadtime enable

This bit enables the deadtime insertion on output 1 and output 2

0: Output 1 and output 2 signals are independent.

1: Deadtime is inserted between output 1 and output 2 (reference signal is output 1 signal generator)

Note: This parameter cannot be changed once the timer is operating (TxEN bit set) or if its outputs are enabled and set/reset by another timer.

Bit 7 DIDL1 : Output 1 Deadtime upon burst mode Idle entry

This bit can delay the idle mode entry by forcing a deadtime insertion before switching the outputs to their idle state. This setting only applies when entering the idle state during a burst mode operation.

0: The programmed Idle state is applied immediately to the Output 1

1: Deadtime (inactive level) is inserted on output 1 before entering the idle mode. The deadtime value is set by DTRx[8:0].

Note: This parameter cannot be changed once the timer x is enabled.

DIDL=1 can be set only if one of the outputs is active during the burst mode (IDLES=1), and with positive deadtimes (SDTR/SDTF set to 0).

Bit 6 CHP1 : Output 1 Chopper enable

This bit enables the chopper on output 1

0: Output signal is not altered

1: Output signal is chopped by a carrier signal

Note: This parameter cannot be changed once the timer x is enabled.

Bits 5:4 FAULT1[1:0] : Output 1 Fault state

These bits select the output 1 state after a fault event

00: No action: the output is not affected by the fault input and stays in run mode.

01: Active

10: Inactive

11: High-Z

Note: This parameter cannot be changed once the timer x is enabled (TxCEN bit set), if FLTENx bit is set or if the output is in FAULT state.

Bit 3 IDLES1 : Output 1 Idle State

This bit selects the output 1 idle state

0: Inactive

1: Active

Note: This parameter must be set prior to HRTIM controlling the outputs.

Bit 2 IDLEM1 : Output 1 Idle mode

This bit selects the output 1 idle mode

0: No action: the output is not affected by the burst mode operation

1: The output is in idle state when requested by the burst mode controller.

Note: This bit is preloaded and can be changed during runtime, but must not be changed while burst mode is active.

Bit 1 POL1 : Output 1 polarity

This bit selects the output 1 polarity

0: positive polarity (output active high)

1: negative polarity (output active low)

Note: This parameter cannot be changed once the timer x is enabled.

Bit 0 Reserved

37.5.38 HRTIM Timerx Fault Register (HRTIM_FLTxR)

Address offset: 0x68h (this offset address is relative to timer x base address)

Reset value: 0x0000 0000

31302928272625242322212019181716
FLTLC
K
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
rwo
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.FLT5E
N
FLT4E
N
FLT3E
N
FLT2E
N
FLT1E
N
rwrwrwrwrw

Bit 31 FLTLOCK : Fault sources Lock

0: FLT1EN..FLT5EN bits are read/write

1: FLT1EN..FLT5EN bits are read only

The FLTLOCK bit is write-once. Once it has been set, it cannot be modified till the next system reset.

Bits 30:5 Reserved, must be kept at reset value.

Bit 4 FLT5EN : Fault 5 enable

0: Fault 5 input ignored

1: Fault 5 input is active and can disable HRTIM outputs.

Bit 3 FLT4EN : Fault 4 enable

0: Fault 4 input ignored

1: Fault 4 input is active and can disable HRTIM outputs.

Bit 2 FLT3EN : Fault 3 enable

0: Fault 3 input ignored

1: Fault 3 input is active and can disable HRTIM outputs.

Bit 1 FLT2EN : Fault 2 enable

0: Fault 2 input ignored

1: Fault 2 input is active and can disable HRTIM outputs.

Bit 0 FLT1EN : Fault 1 enable

0: Fault 1 input ignored

1: Fault 1 input is active and can disable HRTIM outputs.

37.5.39 HRTIM Control Register 1 (HRTIM_CR1)

Address offset: 0x380h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.AD4USRC[2:0]AD3USRC[2:0]AD2USRC[2:0]AD1USRC[2:0]
rwrwrwrwrwrwrwrwrwrwrwrw

1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.TEUDISTDUDISTCUDISTBUDISTAUDISMUDIS
rwrwrwrwrwrw

Bits 31:28 Reserved, must be kept at reset value.

Bits 27:25 AD4USRC[2:0] : ADC Trigger 4 Update Source
Refer to AD1USRC[2:0] description

Bits 24:22 AD3USRC[2:0] : ADC Trigger 3 Update Source
Refer to AD1USRC[2:0] description

Bits 21:19 AD2USRC[2:0] : ADC Trigger 2 Update Source
Refer to AD1USRC[2:0] description

Bits 18:16 AD1USRC[2:0] : ADC Trigger 1 Update Source

These bits define the source which will trigger the update of the HRTIM_ADC1R register (transfer from preload to active register). It only defines the source timer. The precise condition is defined within the timer itself, in HRTIM_MCR or HRTIM_TIMxCR.

000: Master Timer

001: Timer A

010: Timer B

011: Timer C

100: Timer D

101: Timer E

110, 111: Reserved

Bits 15:6 Reserved, must be kept at reset value.

Bit 5 TEUDIS : Timer E Update Disable
Refer to TAUDIS description

Bit 4 TDUDIS : Timer D Update Disable
Refer to TAUDIS description

Bit 3 TCUDIS : Timer C Update Disable
Refer to TAUDIS description

Bit 2 TBUDIS : Timer B Update Disable

Refer to TAUDIS description

Bit 1 TAUDIS : Timer A Update Disable

This bit is set and cleared by software to enable/disable an update event generation temporarily on Timer A.

0: update enabled. The update occurs upon generation of the selected source.

1: update disabled. The updates are temporarily disabled to allow the software to write multiple registers that have to be simultaneously taken into account.

Bit 0 MUDIS : Master Update Disable

This bit is set and cleared by software to enable/disable an update event generation temporarily.

0: update enabled.

1: update disabled. The updates are temporarily disabled to allow the software to write multiple registers that have to be simultaneously taken into account.

37.5.40 HRTIM Control Register 2 (HRTIM_CR2)

Address offset: 0x384h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.TERSTTDRSTTCRSTTBRSTTARSTMRSTRes.Res.TESW
U
TDSW
U
TCSW
U
TBSW
U
TASWUMSWU
rwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:14 Reserved, must be kept at reset value.

Bit 13 TERST : Timer E counter software reset
Refer to TARST description

Bit 12 TDRST : Timer D counter software reset
Refer to TARST description

Bit 11 TCRST : Timer C counter software reset
Refer to TARST description

Bit 10 TBRST : Timer B counter software reset
Refer to TARST description

Bit 9 TARST : Timer A counter software reset
Setting this bit resets the TimerA counter.
The bit is automatically reset by hardware.

Bit 8 MRST : Master Counter software reset
Setting this bit resets the Master timer counter.
The bit is automatically reset by hardware.

Bits 7:6 Reserved, must be kept at reset value.

Bit 5 TESWU : Timer E Software Update
Refer to TASWU description

Bit 4 TDSWU : Timer D Software Update
Refer to TASWU description

Bit 3 TCSWU : Timer C Software Update
Refer to TASWU description

Bit 2 TBSWU : Timer B Software Update
Refer to TASWU description

Bit 1 TASWU : Timer A Software update
This bit is set by software and automatically reset by hardware. It forces an immediate transfer from the preload to the active register and any pending update request is cancelled.

Bit 0 MSWU : Master Timer Software update
This bit is set by software and automatically reset by hardware. It forces an immediate transfer from the preload to the active register in the master timer and any pending update request is cancelled.

37.5.41 HRTIM Interrupt Status Register (HRTIM_ISR)

Address offset: 0x388h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.BMPERRes.
r
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.SYSFLTFLT5FLT4FLT3FLT2FLT1
rrrrr

Bits 31:18 Reserved, must be kept at reset value.

Bit 17 BMPER : Burst mode Period Interrupt Flag

This bit is set by hardware when a single-shot burst mode operation is completed or at the end of a burst mode period in continuous mode. It is cleared by software writing it at 1.

0: No Burst mode period interrupt occurred

1: Burst mode period interrupt occurred

Bits 16:6 Reserved, must be kept at reset value.

Bit 5 SYSFLT : System Fault Interrupt Flag

Refer to FLT1 description

Bit 4 FLT5 : Fault 5 Interrupt Flag

Refer to FLT1 description

Bit 3 FLT4 : Fault 4 Interrupt Flag

Refer to FLT1 description

Bit 2 FLT3 : Fault 3 Interrupt Flag

Refer to FLT1 description

Bit 1 FLT2 : Fault 2 Interrupt Flag

Refer to FLT1 description

Bit 0 FLT1 : Fault 1 Interrupt Flag

This bit is set by hardware when Fault 1 event occurs. It is cleared by software writing it at 1.

0: No Fault 1 interrupt occurred

1: Fault 1 interrupt occurred

37.5.42 HRTIM Interrupt Clear Register (HRTIM_ICR)

Address offset: 0x38Ch

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.BMPERCRes.
w
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.SYSFLTCFLT5CFLT4CFLT3CFLT2CFLT1C
wwwww

Bits 31:18 Reserved, must be kept at reset value.

Bit 17 BMPERC : Burst mode period flag Clear

Writing 1 to this bit clears the BMPER flag in HRTIM_ISR register.

Bits 16:6 Reserved, must be kept at reset value.

Bit 5 SYSFLTC : System Fault Interrupt Flag Clear

Writing 1 to this bit clears the SYSFLT flag in HRTIM_ISR register.

Bit 4 FLT5C : Fault 5 Interrupt Flag Clear

Writing 1 to this bit clears the FLT5 flag in HRTIM_ISR register.

Bit 3 FLT4C : Fault 4 Interrupt Flag Clear

Writing 1 to this bit clears the FLT4 flag in HRTIM_ISR register.

Bit 2 FLT3C : Fault 3 Interrupt Flag Clear

Writing 1 to this bit clears the FLT3 flag in HRTIM_ISR register.

Bit 1 FLT2C : Fault 2 Interrupt Flag Clear

Writing 1 to this bit clears the FLT2 flag in HRTIM_ISR register.

Bit 0 FLT1C : Fault 1 Interrupt Flag Clear

Writing 1 to this bit clears the FLT1 flag in HRTIM_ISR register.

37.5.43 HRTIM Interrupt Enable Register (HRTIM_IER)

Address offset: 0x390h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.BMPERIERes.
rw
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.SYSFLTIEFLT5IEFLT4IEFLT3IEFLT2IEFLT1IE
rwrwrwrwrw

Bits 31:18 Reserved, must be kept at reset value.

Bit 17 BMPERIE : Burst mode period Interrupt Enable

This bit is set and cleared by software to enable/disable the Burst mode period interrupt.

0: Burst mode period interrupt disabled

1: Burst mode period interrupt enabled

Bits 16:6 Reserved, must be kept at reset value.

Bit 5 SYSFLTIE : System Fault Interrupt Enable

Refer to FLT1IE description

Bit 4 FLT5IE : Fault 5 Interrupt Enable

Refer to FLT1IE description

Bit 3 FLT4IE : Fault 4 Interrupt Enable

Refer to FLT1IE description

Bit 2 FLT3IE : Fault 3 Interrupt Enable

Refer to FLT1IE description

Bit 1 FLT2IE : Fault 2 Interrupt Enable

Refer to FLT1IE description

Bit 0 FLT1IE : Fault 1 Interrupt Enable

This bit is set and cleared by software to enable/disable the Fault 1 interrupt.

0: Fault 1 interrupt disabled

1: Fault 1 interrupt enabled

37.5.44 HRTIM Output Enable Register (HRTIM_OENR)

Address offset: 0x394h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.TE2O ENTE1O ENTD2O ENTD1O ENTC2O ENTC1O ENTB2O ENTB1O ENTA2O ENTA1O EN
rsrsrsrsrsrsrsrsrsrs

Bits 31:10 Reserved, must be kept at reset value.

Bit 9 TE2OEN : Timer E Output 2 Enable

Refer to TA1OEN description

Bit 8 TE1OEN : Timer E Output 1 Enable

Refer to TA1OEN description

Bit 7 TD2OEN : Timer D Output 2 Enable

Refer to TA1OEN description

Bit 6 TD1OEN : Timer D Output 1 Enable

Refer to TA1OEN description

Bit 5 TC2OEN : Timer C Output 2 Enable

Refer to TA1OEN description

Bit 4 TC1OEN : Timer C Output 1 Enable

Refer to TA1OEN description

Bit 3 TB2OEN : Timer B Output 2 Enable

Refer to TA1OEN description

Bit 2 TB1OEN : Timer B Output 1 Enable

Refer to TA1OEN description

Bit 1 TA2OEN : Timer A Output 2 Enable

Refer to TA1OEN description

Bit 0 TA1OEN : Timer A Output 1 (HRTIM_CHA1) Enable

Setting this bit enables the Timer A output 1. Writing “0” has no effect.

Reading the bit returns the output enable/disable status.

This bit is cleared asynchronously by hardware as soon as the timer-related fault input(s) is (are) active.

0: output HRTIM_CHA1 disabled. The output is either in Fault or Idle state.

1: output HRTIM_CHA1 enabled

Note: The disable status corresponds to both idle and fault states. The output disable status is given by TA1ODS bit in the HRTIM_ODSR register.

37.5.45 HRTIM Output Disable Register (HRTIM_ODISR)

Address offset: 0x398h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.TE2OD
IS
TE1OD
IS
TD2OD
IS
TD1OD
IS
TC2OD
IS
TC1OD
IS
TB2OD
IS
TB1OD
IS
TA2OD
IS
TA1OD
IS
wwwwwwwwww

Bits 31:10 Reserved, must be kept at reset value.

Bit 9 TE2ODIS : Timer E Output 2 disable

Refer to TA1ODIS description

Bit 8 TE1ODIS : Timer E Output 1 disable

Refer to TA1ODIS description

Bit 7 TD2ODIS : Timer D Output 2 disable

Refer to TA1ODIS description

Bit 6 TD1ODIS : Timer D Output 1 disable

Refer to TA1ODIS description

Bit 5 TC2ODIS : Timer C Output 2 disable

Refer to TA1ODIS description

Bit 4 TC1ODIS : Timer C Output 1 disable

Refer to TA1ODIS description

Bit 3 TB2ODIS : Timer B Output 2 disable

Refer to TA1ODIS description

Bit 2 TB1ODIS : Timer B Output 1 disable

Refer to TA1ODIS description

Bit 1 TA2ODIS : Timer A Output 2 disable

Refer to TA1ODIS description

Bit 0 TA1ODIS : Timer A Output 1 (HRTIM_CHA1) disable

Setting this bit disables the Timer A output 1. The output enters the idle state, either from the run state or from the fault state.

Writing “0” has no effect.

37.5.46 HRTIM Output Disable Status Register (HRTIM_ODSR)

Address offset: 0x39Ch

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.TE2OD STE1OD STD2OD STD1OD STC2OD STC1OD STB2OD STB1OD STA2OD STA1OD S
rrrrrrrrrr

Bits 31:10 Reserved, must be kept at reset value.

Bit 9 TE2ODS : Timer E Output 2 disable status

Refer to TA1ODS description

Bit 8 TE1ODS : Timer E Output 1 disable status

Refer to TA1ODS description

Bit 7 TD2ODS : Timer D Output 2 disable status

Refer to TA1ODS description

Bit 6 TD1ODS : Timer D Output 1 disable status

Refer to TA1ODS description

Bit 5 TC2ODS : Timer C Output 2 disable status

Refer to TA1ODS description

Bit 4 TC1ODS : Timer C Output 1 disable status

Refer to TA1ODS description

Bit 3 TB2ODS : Timer B Output 2 disable status

Refer to TA1ODS description

Bit 2 TB1ODS : Timer B Output 1 disable status

Refer to TA1ODS description

Bit 1 TA2ODS : Timer A Output 2 disable status

Refer to TA1ODS description

Bit 0 TA1ODS : Timer A Output 1 disable status

Reading the bit returns the output disable status. It is not significant when the output is active (Tx1OEN or Tx2OEN = 1).

0: output HRTIM_CHA1 disabled, in Idle state.

1: output HRTIM_CHA1 disabled, in Fault state.

37.5.47 HRTIM Burst Mode Control Register (HRTIM_BMCR)

Address offset: 0x3A0h

Reset value: 0x0000 0000

31302928272625242322212019181716
BMSTATRes.Res.Res.Res.Res.Res.Res.Res.Res.TEBMTDBMTCBMTBBMTABMMTBM
rc_w0rwrwrwrwrwrw
1514131211109876543210
Res.Res.Res.Res.Res.BMPR ENBMPRSC[3:0]BMCLK[3:0]BMOMBME
rwrwrwrwrwrwrwrwrwrwrw

Bit 31 BMSTAT : Burst Mode Status

This bit gives the current operating state.

0: Normal operation

1: Burst operation on-going. Writing this bit to 0 causes a burst mode early termination.

Bits 30:22 Reserved, must be kept at reset value.

Bit 21 TEBM : Timer E Burst Mode

Refer to TABM description

Bit 20 TDBM : Timer D Burst Mode

Refer to TABM description

Bit 19 TCBM : Timer C Burst Mode

Refer to TABM description

Bit 18 TBBM : Timer B Burst Mode

Refer to TABM description

Bit 17 TABM : Timer A Burst Mode

This bit defines how the timer behaves during a burst mode operation. This bitfield cannot be changed while the burst mode is enabled.

0: Timer A counter clock is maintained and the timer operates normally

1: Timer A counter clock is stopped and the counter is reset

Note: This bit must not be set when the balanced idle mode is active (DLYPRT[2:0] = 0x11)

Bit 16 MTBM : Master Timer Burst Mode

This bit defines how the timer behaves during a burst mode operation. This bitfield cannot be changed while the burst mode is enabled.

0: Master Timer counter clock is maintained and the timer operates normally

1: Master Timer counter clock is stopped and the counter is reset

Bits 15:11 Reserved, must be kept at reset value.

Bit 10 BMPREN : Burst Mode Preload Enable

This bit enables the registers preload mechanism and defines whether a write access into a preloadable register (HRTIM_BMCMPR, HRTIM_BMPER) is done into the active or the preload register.

0: Preload disabled: the write access is directly done into active registers

1: Preload enabled: the write access is done into preload registers

Bits 9:6 BMPRSC[3:0] : Burst Mode Prescaler

Defines the prescaling ratio of the \( f_{HRTIM} \) clock for the burst mode controller. This bitfield cannot be changed while the burst mode is enabled.

0000: Clock not divided

0001: Division by 2

0010: Division by 4

0011: Division by 8

0100: Division by 16

0101: Division by 32

0110: Division by 64

0111: Division by 128

1000: Division by 256

1001: Division by 512

1010: Division by 1024

1011: Division by 2048

1100: Division by 4096

1101: Division by 8192

1110: Division by 16384

1111: Division by 32768

Bits 5:2 BMCLK[3:0] : Burst Mode Clock source

This bitfield defines the clock source for the burst mode counter. It cannot be changed while the burst mode is enabled (refer to Table 321 for on-chip events 1..4 connections details).

0000: Master timer counter reset/roll-over

0001: Timer A counter reset/roll-over

0010: Timer B counter reset/roll-over

0011: Timer C counter reset/roll-over

0100: Timer D counter reset/roll-over

0101: Timer E counter reset/roll-over

0110: On-chip Event 1 (hrtim_bm_ck1), acting as a burst mode counter clock

0111: On-chip Event 2 (hrtim_bm_ck2) acting as a burst mode counter clock

1000: On-chip Event 3 (hrtim_bm_ck3) acting as a burst mode counter clock

1001: On-chip Event 4 (hrtim_bm_ck4) acting as a burst mode counter clock

1010: Prescaled \( f_{HRTIM} \) clock (as per BMPRSC[3:0] setting)

Other codes reserved

Bit 1 BMOM : Burst Mode operating mode

This bit defines if the burst mode is entered once or if it is continuously operating.

0: Single-shot mode

1: Continuous operation

Bit 0 BME : Burst Mode enable

This bit starts the burst mode controller which becomes ready to receive the start trigger.

Writing this bit to 0 causes a burst mode early termination.

0: Burst mode disabled

1: Burst mode enabled

37.5.48 HRTIM Burst Mode Trigger Register (HRTIM_BMTRGR)

Address offset: 0x3A4h

Reset value: 0x0000 0000

31302928272625242322212019181716
OCHPEVEEV8EEV7TDEEV8TAEEV7TECMP2TECMP1TEREPTERSTTDCMP2TDCMP1TDREPTDRSTTCCMP2TCCMP1TCREP
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
TCRSTTBCMP2TBCMP1TBREPTBRSTTACMP2TACMP1TAREPTARSTMSTCMP4MSTCMP3MSTCMP2MSTCMP1MSTREPMSTRSTSW
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bit 31 OCHPEV : On-chip Event

A rising edge on an on-chip Event (see Section : Burst mode triggers ) triggers a burst mode entry.

Bit 30 EEV8 : External Event 8 (TIMD filters applied)

The external event 8 conditioned by TIMD filters is starting the burst mode operation.

Bit 29 EEV7 : External Event 7 (TIMA filters applied)

The external event 7 conditioned by TIMA filters is starting the burst mode operation.

Bit 28 TDEEV8 : Timer D period following External Event 8

The timer D period following an external event 8 (conditioned by TIMD filters) is starting the burst mode operation.

Bit 27 TAEEV7 : Timer A period following External Event 7

The timer A period following an external event 7 (conditioned by TIMA filters) is starting the burst mode operation.

Bit 26 TECMP2 : Timer E Compare 2 event

Refer to TACMP1 description

Bit 25 TECMP1 : Timer E Compare 1 event

Refer to TACMP1 description

Bit 24 TEREP : Timer E repetition

Refer to TAREP description

Bit 23 TERST : Timer E counter reset or roll-over

Refer to TARST description

Bit 22 TDCMP2 : Timer D Compare 2 event

Refer to TACMP1 description

Bit 21 TDCMP1 : Timer D Compare 1 event

Refer to TACMP1 description

Bit 20 TDREP : Timer D repetition

Refer to TAREP description

Bit 19 TDRST : Timer D reset or roll-over

Refer to TARST description

Bit 18 TCCMP2 : Timer C Compare 2 event

Refer to TACMP1 description

  1. Bit 17 TCCMP1 : Timer C Compare 1 event
    Refer to TACMP1 description
  2. Bit 16 TCREP : Timer C repetition
    Refer to TAREP description
  3. Bit 15 TCRST : Timer C reset or roll-over
    Refer to TARST description
  4. Bit 14 TBCMP2 : Timer B Compare 2 event
    Refer to TACMP1 description
  5. Bit 13 TBCMP1 : Timer B Compare 1 event
    Refer to TACMP1 description
  6. Bit 12 TBREP : Timer B repetition
    Refer to TAREP description
  7. Bit 11 TBRST : Timer B reset or roll-over
    Refer to TARST description
  8. Bit 10 TACMP2 : Timer A Compare 2 event
    Refer to TACMP1 description
  9. Bit 9 TACMP1 : Timer A Compare 1 event
    The timer A compare 1 event is starting the burst mode operation.
  10. Bit 8 TAREP : Timer A repetition
    The Timer A repetition event is starting the burst mode operation.
  11. Bit 7 TARST : Timer A reset or roll-over
    The Timer A reset or roll-over event is starting the burst mode operation.
  12. Bit 6 MSTCMP4 : Master Compare 4
    Refer to MSTCMP1 description
  13. Bit 5 MSTCMP3 : Master Compare 3
    Refer to MSTCMP1 description
  14. Bit 4 MSTCMP2 : Master Compare 2
    Refer to MSTCMP1 description
  15. Bit 3 MSTCMP1 : Master Compare 1
    The master timer Compare 1 event is starting the burst mode operation.
  16. Bit 2 MSTREP : Master repetition
    The master timer repetition event is starting the burst mode operation.
  17. Bit 1 MSTRST : Master reset or roll-over
    The master timer reset and roll-over event is starting the burst mode operation.
  18. Bit 0 SW : Software start
    This bit is set by software and automatically reset by hardware.
    When set, It starts the burst mode operation immediately.
    This bit is not active if the burst mode is not enabled (BME bit is reset).

37.5.49 HRTIM Burst Mode Compare Register (HRTIM_BMCMR)

Address offset: 0x3A8h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
BMCMP[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 BMCMP[15:0] : Burst mode compare value

Defines the number of periods during which the selected timers are in idle state.

This register holds either the content of the preload register or the content of the active register if the preload is disabled.

Note: BMCMP[15:0] cannot be set to 0x0000 when using the f HRTIM clock without a prescaler as the burst mode clock source (BMCLK[3:0] = 1010 and BMPRESC[3:0] = 0000).

37.5.50 HRTIM Burst Mode Period Register (HRTIM_BMPER)

Address offset: 0x3ACh

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
BMPER[15:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:16 Reserved, must be kept at reset value.

Bits 15:0 BMPER[15:0] : Burst mode Period

Defines the burst mode repetition period.

This register holds either the content of the preload register or the content of the active register if preload is disabled.

Note: The BMPER[15:0] must not be null when the burst mode is enabled.

37.5.51 HRTIM Timer External Event Control Register 1 (HRTIM_EECR1)

Address offset: 0x3B0h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.EE5FAST
ST
EE5SNS[1:0]EE5POL
L
EE5SRC[1:0]EE4FAST
ST
EE4SNS[1:0]EE4POL
L
EE4SRC[1:0]EE3FAST
ST
EE3SNS[1]
rwrwrwrwrwrwrwrwrwrwrwrwrwrw

1514131211109876543210
EE3SNS[0]EE3POL
L
EE3SRC[1:0]EE2FAST
ST
EE2SNS[1:0]EE2POL
L
EE2SRC[1:0]EE1FAST
ST
EE1SNS[1:0]EE1POL
L
EE1SRC[1:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:30 Reserved, must be kept at reset value.

Bit 29 EE5FAST : External Event 5 Fast mode

Refer to EE1FAST description

Bits 28:27 EE5SNS[1:0] : External Event 5 Sensitivity

Refer to EE1SNS[1:0] description

Bit 26 EE5POL : External Event 5 Polarity

Refer to EE1POL description

Bits 25:24 EE5SRC[1:0] : External Event 5 Source

Refer to EE1SRC[1:0] description

Bit 23 EE4FAST : External Event 4 Fast mode

Refer to EE1FAST description

Bits 22:21 EE4SNS[1:0] : External Event 4 Sensitivity

Refer to EE1SNS[1:0] description

Bit 20 EE4POL : External Event 4 Polarity

Refer to EE1POL description

Bits 19:18 EE4SRC[1:0] : External Event 4 Source

Refer to EE1SRC[1:0] description

Bit 17 EE3FAST : External Event 3 Fast mode

Refer to EE1FAST description

Bits 16:15 EE3SNS[1:0] : External Event 3 Sensitivity

Refer to EE1SNS[1:0] description

Bit 14 EE3POL : External Event 3 Polarity

Refer to EE1POL description

Bits 13:12 EE3SRC[1:0] : External Event 3 Source

Refer to EE1SRC[1:0] description

Bit 11 EE2FAST : External Event 2 Fast mode

Refer to EE1FAST description

Bits 10:9 EE2SNS[1:0] : External Event 2 Sensitivity

Refer to EE1SNS[1:0] description

Bit 8 EE2POL : External Event 2 Polarity

Refer to EE1POL description

Bits 7:6 EE2SRC[1:0] : External Event 2 Source

Refer to EE1SRC[1:0] description

Bit 5 EE1FAST : External Event 1 Fast mode

0: External Event 1 is re-synchronized by the HRTIM logic before acting on outputs, which adds a \( f_{HRTIM} \) clock-related latency
1: External Event 1 is acting asynchronously on outputs (low latency mode)

Note: This bit must not be modified once the counter in which the event is used is enabled (TxCEN bit set)

Bits 4:3 EE1SNS[1:0] : External Event 1 Sensitivity

00: On active level defined by EE1POL bit
01: Rising edge, whatever EE1POL bit value
10: Falling edge, whatever EE1POL bit value
11: Both edges, whatever EE1POL bit value

Bit 2 EE1POL : External Event 1 Polarity

This bit is only significant if EE1SNS[1:0] = 00.
0: External event is active high
1: External event is active low

Note: This parameter cannot be changed once the timer x is enabled. It must be configured prior to setting EE1FAST bit.

Bits 1:0 EE1SRC[1:0] : External Event 1 Source

00: hrtim_evt11
01: hrtim_evt12
10: hrtim_evt13
11: hrtim_evt14

Note: This parameter cannot be changed once the timer x is enabled. It must be configured prior to setting EE1FAST bit.

37.5.52 HRTIM Timer External Event Control Register 2 (HRTIM_EECR2)

Address offset: 0x3B4h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.EE10SNS[1:0]EE10POLEE10SRC[1:0]Res.EE9SNS[1:0]EE9POLEE9SRC[1:0]Res.EE8SNS[1]
1514131211109876543210
EE8SNS[0]EE8POLEE8SRC[1:0]Res.EE7SNS[1:0]EE7POLEE7SRC[1:0]Res.EE6SNS[1:0]EE6POLEE6SRC[1:0]
rwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:29 Reserved, must be kept at reset value.

Bits 28:27 EE10SNS[1:0] : External Event 10 Sensitivity

Refer to EE1SNS[1:0] description

Bit 26 EE10POL : External Event 10 Polarity

Refer to EE1POL description

Bits 25:24 EE10SRC[1:0] : External Event 10 Source

Refer to EE1SRC[1:0] description

Bit 23 Reserved, must be kept at reset value.

Bits 22:21 EE9SNS[1:0] : External Event 9 Sensitivity

Refer to EE1SNS[1:0] description

Bit 20 EE9POL : External Event 9 Polarity

Refer to EE1POL description

Bits 19:18 EE9SRC[1:0] : External Event 9 Source

Refer to EE1SRC[1:0] description

Bit 17 Reserved, must be kept at reset value.

Bits 16:15 EE8SNS[1:0] : External Event 8 Sensitivity

Refer to EE1SNS[1:0] description

Bit 14 EE8POL : External Event 8 Polarity

Refer to EE1POL description

Bits 13:12 EE8SRC[1:0] : External Event 8 Source

Refer to EE1SRC[1:0] description

Bit 11 Reserved, must be kept at reset value.

Bits 10:9 EE7SNS[1:0] : External Event 7 Sensitivity

Refer to EE1SNS[1:0] description

Bit 8 EE7POL : External Event 7 Polarity

Refer to EE1POL description

Bits 7:6 EE7SRC[1:0] : External Event 7 Source

Refer to EE1SRC[1:0] description

Bit 5 Reserved, must be kept at reset value.

Bits 4:3 EE6SNS[1:0] : External Event 6 Sensitivity
Refer to EE1SNS[1:0] description

Bit 2 EE6POL : External Event 6 Polarity
Refer to EE1POL description

Bits 1:0 EE6SRC[1:0] : External Event 6 Source
Refer to EE1SRC[1:0] description

37.5.53 HRTIM Timer External Event Control Register 3 (HRTIM_EECR3)

Address offset: 0x3B8h

Reset value: 0x0000 0000

31302928272625242322212019181716
EEVSD[1:0]Res.Res.EE10F[3:0]Res.Res.EE9F[3:0]Res.Res.
rwrwrwrwrwrwrwrwrwrw
1514131211109876543210
EE8F[3:0]Res.Res.EE7F[3:0]Res.Res.EE6F[3:0]
rwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:30 EEVSD[1:0] : External Event Sampling clock division

This bitfield indicates the division ratio between the timer clock frequency ( \( f_{HRTIM} \) ) and the External Event signal sampling clock ( \( f_{EEVS} \) ) used by the digital filters.

Bits 29:28 Reserved, must be kept at reset value.

Bits 27:24 EE10F[3:0] : External Event 10 filter
Refer to EE6F[3:0] description

Bits 23:22 Reserved, must be kept at reset value.

Bits 21:18 EE9F[3:0] : External Event 9 filter
Refer to EE6F[3:0] description

Bits 17:16 Reserved, must be kept at reset value.

Bits 15:12 EE8F[3:0] : External Event 8 filter
Refer to EE6F[3:0] description

Bits 11:10 Reserved, must be kept at reset value.

Bits 9:6 EE7F[3:0] : External Event 7 filter

Refer to EE6F[3:0] description

Bits 4:5 Reserved, must be kept at reset value.

Bits 3:0 EE6F[3:0] : External Event 6 filter

This bitfield defines the frequency used to sample External Event 6 input and the length of the digital filter applied to hrtim_evt6. The digital filter is made of a counter in which N valid samples are needed to validate a transition on the output.

0000: Filter disabled

0001: \( f_{\text{SAMPLING}} = f_{\text{HRTIM}} \) , N=2

0010: \( f_{\text{SAMPLING}} = f_{\text{HRTIM}} \) , N=4

0011: \( f_{\text{SAMPLING}} = f_{\text{HRTIM}} \) , N=8

0100: \( f_{\text{SAMPLING}} = f_{\text{EEVS}}/2 \) , N=6

0101: \( f_{\text{SAMPLING}} = f_{\text{EEVS}}/2 \) , N=8

0110: \( f_{\text{SAMPLING}} = f_{\text{EEVS}}/4 \) , N=6

0111: \( f_{\text{SAMPLING}} = f_{\text{EEVS}}/4 \) , N=8

1000: \( f_{\text{SAMPLING}} = f_{\text{EEVS}}/8 \) , N=6

1001: \( f_{\text{SAMPLING}} = f_{\text{EEVS}}/8 \) , N=8

1010: \( f_{\text{SAMPLING}} = f_{\text{EEVS}}/16 \) , N=5

1011: \( f_{\text{SAMPLING}} = f_{\text{EEVS}}/16 \) , N=6

1100: \( f_{\text{SAMPLING}} = f_{\text{EEVS}}/16 \) , N=8

1101: \( f_{\text{SAMPLING}} = f_{\text{EEVS}}/32 \) , N=5

1110: \( f_{\text{SAMPLING}} = f_{\text{EEVS}}/32 \) , N=6

1111: \( f_{\text{SAMPLING}} = f_{\text{EEVS}}/32 \) , N=8

37.5.54 HRTIM ADC Trigger 1 Register (HRTIM_ADC1R)

Address offset: 0x3BCh

Reset value: 0x0000 0000

31302928272625242322212019181716
AD1TE
PER
AD1TE
C4
AD1TE
C3
AD1TE
C2
AD1TD
PER
AD1TD
C4
AD1TD
C3
AD1TD
C2
AD1TC
PER
AD1TC
C4
AD1TC
C3
AD1TC
C2
AD1TB
RST
AD1TB
PER
AD1TB
C4
AD1TB
C3
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
AD1TB
C2
AD1TA
RST
AD1TA
PER
AD1TA
C4
AD1TA
C3
AD1TA
C2
AD1EE
V5
AD1EE
V4
AD1EE
V3
AD1EE
V2
AD1EE
V1
AD1MP
ER
AD1MC
4
AD1MC
3
AD1MC
2
AD1MC
1
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:0 These bits select the trigger source for the ADC Trigger 1 output (hrtim_adc_trg1). Refer to HRTIM_ADC3R bits description for details

37.5.55 HRTIM ADC Trigger 2 Register (HRTIM_ADC2R)

Address offset: 0x3C0h

Reset value: 0x0000 0000

31302928272625242322212019181716
AD2TE
RST
AD2TE
C4
AD2TE
C3
AD2TE
C2
AD2TD
RST
AD2TD
PER
AD2TD
C4
AD2TD
C3
AD2TD
C2
AD2TC
RST
AD2TC
PER
AD2TC
C4
AD2TC
C3
AD2TC
C2
AD2TB
PER
AD2TB
C4
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
AD2TB
C3
AD2TB
C2
AD2TA
PER
AD2TA
C4
AD2TA
C3
AD2TA
C2
AD2EE
V10
AD2EE
V9
AD2EE
V8
AD2EE
V7
AD2EE
V6
AD2MP
ER
AD2MC
4
AD2MC
3
AD2MC
2
AD2MC
1
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:0 These bits select the trigger source for the ADC Trigger 2 output (hrtim_adc_trg2). Refer to HRTIM_ADC4R bits description for details

37.5.56 HRTIM ADC Trigger 3 Register (HRTIM_ADC3R)

Address offset: 0x3C4h

Reset value: 0x0000 0000

31302928272625242322212019181716
ADC3
TEPER
ADC3T
EC4
ADC3T
EC3
ADC3T
EC2
ADC3T
DPER
ADC3T
DC4
ADC3T
DC3
ADC3T
DC2
ADC3T
CPER
ADC3T
CC4
ADC3T
CC3
ADC3T
CC2
ADC3T
BRST
ADC3T
BPER
ADC3T
BC4
ADC3T
BC3
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
ADC3T
BC2
ADC3T
ARST
ADC3T
APER
ADC3T
AC4
ADC3T
AC3
ADC3T
AC2
ADC3E
EV5
ADC3E
EV4
ADC3E
EV3
ADC3E
EV2
ADC3E
EV1
ADC3M
PER
ADC3M
C4
ADC3M
C3
ADC3M
C2
ADC3M
C1
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bit 31 ADC3TEPER : ADC trigger 3 on Timer E Period

Refer to ADC3TAPER description

Bit 30 ADC3TEC4 : ADC trigger 3 on Timer E Compare 4

Refer to ADC3TAC2 description

Bit 29 ADC3TEC3 : ADC trigger 3 on Timer E Compare 3

Refer to ADC3TAC2 description

Bit 28 ADC3TEC2 : ADC trigger 3 on Timer E Compare 2

Refer to ADC3TAC2 description

Bit 27 ADC3TDPER : ADC trigger 3 on Timer D Period

Refer to ADC3TAPER description

Bit 26 ADC3TDC4 : ADC trigger 3 on Timer D Compare 4

Refer to ADC3TAC2 description

Bit 25 ADC3TDC3 : ADC trigger 3 on Timer D Compare 3

Refer to ADC3TAC2 description

Bit 24 ADC3TDC2 : ADC trigger 3 on Timer D Compare 2

Refer to ADC3TAC2 description

Bit 23 ADC3TCPER : ADC trigger 3 on Timer C Period

Refer to ADC3TAPER description

Bit 22 ADC3TCC4 : ADC trigger 3 on Timer C Compare 4

Refer to ADC3TAC2 description

Bit 21 ADC3TCC3 : ADC trigger 3 on Timer C Compare 3

Refer to ADC3TAC2 description

Bit 20 ADC3TCC2 : ADC trigger 3 on Timer C Compare 2

Refer to ADC3TAC2 description

Bit 19 ADC3TBRST : ADC trigger 3 on Timer B Reset and counter roll-over

Refer to ADC3TBRST description

Bit 18 ADC3TBPER : ADC trigger 3 on Timer B Period

Refer to ADC3TAPER description

Bit 17 ADC3TBC4 : ADC trigger 3 on Timer B Compare 4

Refer to ADC3TAC2 description

  1. Bit 16 ADC3TBC3 : ADC trigger 3 on Timer B Compare 3
    Refer to ADC3TAC2 description
  2. Bit 15 ADC3TBC2 : ADC trigger 3 on Timer B Compare 2
    Refer to ADC3TAC2 description
  3. Bit 14 ADC3TARST : ADC trigger 3 on Timer A Reset and counter roll-over
    This bit enables the generation of an ADC Trigger upon Timer A reset and roll-over event, on ADC Trigger 1 output.
  4. Bit 13 ADC3TAPER : ADC trigger 3 on Timer A Period
    This bit enables the generation of an ADC Trigger upon Timer A period event, on ADC Trigger 3 output (hrtim_adc_trg3).
  5. Bit 12 ADC3TAC4 : ADC trigger 3 on Timer A Compare 4
    Refer to ADC3TAC2 description
  6. Bit 11 ADC3TAC3 : ADC trigger 3 on Timer A Compare 3
    Refer to ADC3TAC2 description
  7. Bit 10 ADC3TAC2 : ADC trigger 3 on Timer A Compare 2
    This bit enables the generation of an ADC Trigger upon Timer A Compare 2 event, on ADC Trigger 3 output (hrtim_adc_trg3).
  8. Bit 9 ADC3EEV5 : ADC trigger 3 on External Event 5
    Refer to ADC3EEV1 description
  9. Bit 8 ADC3EEV4 : ADC trigger 3 on External Event 4
    Refer to ADC3EEV1 description
  10. Bit 7 ADC3EEV3 : ADC trigger 3 on External Event 3
    Refer to ADC3EEV1 description
  11. Bit 6 ADC3EEV2 : ADC trigger 3 on External Event 2
    Refer to ADC3EEV1 description
  12. Bit 5 ADC3EEV1 : ADC trigger 3 on External Event 1
    This bit enables the generation of an ADC Trigger upon External event 1, on ADC Trigger 3 output (hrtim_adc_trg3).
  13. Bit 4 ADC3MPER : ADC trigger 3 on Master Period
    This bit enables the generation of an ADC Trigger upon Master timer period event, on ADC Trigger 3 output (hrtim_adc_trg3).
  14. Bit 3 ADC3MC4 : ADC trigger 3 on Master Compare 4
    Refer to ADC3MC1 description
  15. Bit 2 ADC3MC3 : ADC trigger 3 on Master Compare 3
    Refer to ADC3MC1 description
  16. Bit 1 ADC3MC2 : ADC trigger 3 on Master Compare 2
    Refer to ADC3MC1 description
  17. Bit 0 ADC3MC1 : ADC trigger 3 on Master Compare 1
    This bit enables the generation of an ADC Trigger upon Master Compare 1 event, on ADC Trigger 3 output (hrtim_adc_trg3).

37.5.57 HRTIM ADC Trigger 4 Register (HRTIM_ADC4R)

Address offset: 0x3C8h

Reset value: 0x0000 0000

31302928272625242322212019181716
ADC4TERSTADC4TEC4ADC4TEC3ADC4TEC2ADC4TDRSTADC4TDPERADC4TDC4ADC4TDC3ADC4TDC2ADC4TCRSTADC4TCPERADC4TCC4ADC4TCC3ADC4TCC2ADC4TBPERADC4TBC4
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

1514131211109876543210
ADC4TBC3ADC4TBC2ADC4TAPERADC4TAC4ADC4TAC3ADC4TAC2ADC4EVI10ADC4EVI9ADC4EVI8ADC4EVI7ADC4EVI6ADC4MPERADC4MC4ADC4MC3ADC4MC2ADC4MC1
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bit 31 ADC4TERST : ADC trigger 4 on Timer E Reset and counter roll-over (1)

Refer to ADC4TCRST description

Bit 30 ADC4TEC4 : ADC trigger 4 on Timer E Compare 4

Refer to ADC4TAC2 description

Bit 29 ADC4TEC3 : ADC trigger 4 on Timer E Compare 3

Refer to ADC4TAC2 description

Bit 28 ADC4TEC2 : ADC trigger 4 on Timer E Compare 2

Refer to ADC4TAC2 description

Bit 27 ADC4TDRST : ADC trigger 4 on Timer D Reset and counter roll-over (1)

Refer to ADC4TCRST description

Bit 26 ADC4TDPER : ADC trigger 4 on Timer D Period

Refer to ADC4TAPER description

Bit 25 ADC4TDC4 : ADC trigger 4 on Timer D Compare 4

Refer to ADC4TAC2 description

Bit 24 ADC4TDC3 : ADC trigger 4 on Timer D Compare 3

Refer to ADC4TAC2 description

Bit 23 ADC4TDC2 : ADC trigger 2 on Timer D Compare 2

Refer to ADC4TAC2 description

Bit 22 ADC4TCRST : ADC trigger 4 on Timer C Reset and counter roll-over (1)

This bit enables the generation of an ADC Trigger upon Timer C reset and roll-over event, on ADC Trigger 4 output (hrtim_adc_trg4).

Bit 21 ADC4TCPER : ADC trigger 4 on Timer C Period

Refer to ADC4TAPER description

Bit 20 ADC4TCC4 : ADC trigger 4 on Timer C Compare 4

Refer to ADC4TAC2 description

Bit 19 ADC4TCC3 : ADC trigger 4 on Timer C Compare 3

Refer to ADC4TAC2 description

Bit 18 ADC4TCC2 : ADC trigger 4 on Timer C Compare 2

Refer to ADC4TAC2 description

  1. Bit 17 ADC4TBPER : ADC trigger 4 on Timer B Period
    Refer to ADC4TAPER description
  2. Bit 16 ADC4TBC4 : ADC trigger 4 on Timer B Compare 4
    Refer to ADC4TAC2 description
  3. Bit 15 ADC4TBC3 : ADC trigger 4 on Timer B Compare 3
    Refer to ADC4TAC2 description
  4. Bit 14 ADC4TBC2 : ADC trigger 4 on Timer B Compare 2
    Refer to ADC4TAC2 description
  5. Bit 13 ADC4TAPER : ADC trigger 4 on Timer A Period
    This bit enables the generation of an ADC Trigger upon Timer A event, on ADC Trigger 4 output (hrtim_adc_trg4).
  6. Bit 12 ADC4TAC4 : ADC trigger 4 on Timer A Compare 4
    Refer to ADC4TAC2 description
  7. Bit 11 ADC4TAC3 : ADC trigger 4 on Timer A Compare 3
    Refer to ADC4TAC2 description
  8. Bit 10 ADC4TAC2 : ADC trigger 4 on Timer A Compare 2
    This bit enables the generation of an ADC Trigger upon Timer A Compare 2, on ADC Trigger 4 output (hrtim_adc_trg4).
  9. Bit 9 ADC4EEV10 : ADC trigger 4 on External Event 10 (1)
    Refer to ADC4EEV6 description
  10. Bit 8 ADC4EEV9 : ADC trigger 4 on External Event 9 (1)
    Refer to ADC4EEV6 description
  11. Bit 7 ADC4EEV8 : ADC trigger 4 on External Event 8 (1)
    Refer to ADC4EEV6 description
  12. Bit 6 ADC4EEV7 : ADC trigger 4 on External Event 7 (1)
    Refer to ADC4EEV6 description
  13. Bit 5 ADC4EEV6 : ADC trigger 4 on External Event 6 (1)
    This bit enables the generation of an ADC Trigger upon external event 6, on ADC Trigger 4 output (hrtim_adc_trg4).
  14. Bit 4 ADC4MPER : ADC trigger 4 on Master Period
    This bit enables the generation of an ADC Trigger upon Master period event, on ADC Trigger 4 output (hrtim_adc_trg4).
  15. Bit 3 ADC4MC4 : ADC trigger 4 on Master Compare 4
    Refer to ADC4MC1 description
  16. Bit 2 ADC4MC3 : ADC trigger 4 on Master Compare 3
    Refer to ADC4MC1 description
  17. Bit 1 ADC4MC2 : ADC trigger 4 on Master Compare 2
    Refer to ADC4MC1 description
  18. Bit 0 ADC4MC1 : ADC trigger 4 on Master Compare 1
    This bit enables the generation of an ADC Trigger upon Master Compare 1 event, on ADC Trigger 4 output (hrtim_adc_trg4).
  1. 1. These triggers are differing from HRTIM_ADC1R/HRTIM_ADC3R to HRTIM_ADC2R/HRTIM_ADC4R.

37.5.58 HRTIM Fault Input Register 1 (HRTIM_FLTINR1)

Address offset: 0x3D0h

Reset value: 0x0000 0000

31302928272625242322212019181716
FLT4L
CK
FLT4F[3:0]FLT4S
RC
FLT4PFLT4EFLT3L
CK
FLT3F[3:0]FLT3S
RC
FLT3PFLT3E
rworwrwrwrwrwrwrwrwrwrwrwrwrwrwrw
1514131211109876543210
FLT2L
CK
FLT2F[3:0]FLT2S
RC
FLT2PFLT2EFLT1L
CK
FLT1F[3:0]FLT1S
RC
FLT1PFLT1E
rworwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bit 31 FLT4LCK : Fault 4 Lock

Refer to FLT5LCK description in HRTIM_FLTINR2 register

Bits 30:27 FLT4F[3:0] : Fault 4 filter

Refer to FLT5F[3:0] description in HRTIM_FLTINR2 register

Bit 26 FLT4SRC : Fault 4 source

Refer to FLT5SRC description in HRTIM_FLTINR2 register

Bit 25 FLT4P : Fault 4 polarity

Refer to FLT5P description in HRTIM_FLTINR2 register

Bit 24 FLT4E : Fault 4 enable

Refer to FLT5E description in HRTIM_FLTINR2 register

Bit 23 FLT3LCK : Fault 3 Lock

Refer to FLT5LCK description in HRTIM_FLTINR2 register

Bits 22:19 FLT3F[3:0] : Fault 3 filter

Refer to FLT5F[3:0] description in HRTIM_FLTINR2 register

Bit 18 FLT3SRC : Fault 3 source

Refer to FLT5SRC description in HRTIM_FLTINR2 register

Bit 17 FLT3P : Fault 3 polarity

Refer to FLT5P description in HRTIM_FLTINR2 register

Bit 16 FLT3E : Fault 3 enable

Refer to FLT5E description in HRTIM_FLTINR2 register

Bit 15 FLT2LCK : Fault 2 Lock

Refer to FLT5LCK description in HRTIM_FLTINR2 register

Bits 14:11 FLT2F[3:0] : Fault 2 filter

Refer to FLT5F[3:0] description in HRTIM_FLTINR2 register

Bit 10 FLT2SRC : Fault 2 source

Refer to FLT5SRC description in HRTIM_FLTINR2 register

Bit 9 FLT2P : Fault 2 polarity

Refer to FLT2P description in HRTIM_FLTINR2 register

Bit 8 FLT2E : Fault 2 enable

Refer to FLT5E description in HRTIM_FLTINR2 register

37.5.59 HRTIM Fault Input Register 2 (HRTIM_FLTINR2)

Address offset: 0x3D4h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.FLTSD[1:0]Res.Res.Res.Res.Res.Res.Res.Res.
rwrw
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.FLT5LCKFLT5F[3:0]FLT5SRCFLT5PFLT5E
rworwrwrwrwrwrwrw

Bits 31:26 Reserved, must be kept at reset value.

Bits 25:24 FLTSD[1:0] : Fault Sampling clock division

This bitfield indicates the division ratio between the timer clock frequency ( \( f_{HRTIM} \) ) and the fault signal sampling clock ( \( f_{FLTS} \) ) used by the digital filters.

00: \( f_{FLTS}=f_{HRTIM} \)

01: \( f_{FLTS}=f_{HRTIM} / 2 \)

10: \( f_{FLTS}=f_{HRTIM} / 4 \)

11: \( f_{FLTS}=f_{HRTIM} / 8 \)

Note: This bitfield must be written prior to any of the FLTxE enable bits.

Bits 23:8 Reserved, must be kept at reset value.

Bit 7 FLT5LCK : Fault 5 Lock

The FLT5LCK bit modifies the write attributes of the fault programming bit, so that they can be protected against spurious write accesses.

This bit is write-once. Once it has been set, it cannot be modified till the next system reset.

0: FLT5E, FLT5P, FLT5SRC, FLT5F[3:0] bits are read/write.

1: FLT5E, FLT5P, FLT5SRC, FLT5F[3:0] bits can no longer be written (read-only mode)

Bits 6:3 FLT5F[3:0] : Fault 5 filter

This bitfield defines the frequency used to sample FLT5 input and the length of the digital filter applied to FLT5. The digital filter is made of an event counter in which N events are needed to validate a transition on the output:

0000: No filter, FLT5 acts asynchronously

0001: \( f_{\text{SAMPLING}} = f_{\text{HRTIM}}, N = 2 \)

0010: \( f_{\text{SAMPLING}} = f_{\text{HRTIM}}, N = 4 \)

0011: \( f_{\text{SAMPLING}} = f_{\text{HRTIM}}, N = 8 \)

0100: \( f_{\text{SAMPLING}} = f_{\text{FLT5}}/2, N = 6 \)

0101: \( f_{\text{SAMPLING}} = f_{\text{FLT5}}/2, N = 8 \)

0110: \( f_{\text{SAMPLING}} = f_{\text{FLT5}}/4, N = 6 \)

0111: \( f_{\text{SAMPLING}} = f_{\text{FLT5}}/4, N = 8 \)

1000: \( f_{\text{SAMPLING}} = f_{\text{FLT5}}/8, N = 6 \)

1001: \( f_{\text{SAMPLING}} = f_{\text{FLT5}}/8, N = 8 \)

1010: \( f_{\text{SAMPLING}} = f_{\text{FLT5}}/16, N = 5 \)

1011: \( f_{\text{SAMPLING}} = f_{\text{FLT5}}/16, N = 6 \)

1100: \( f_{\text{SAMPLING}} = f_{\text{FLT5}}/16, N = 8 \)

1101: \( f_{\text{SAMPLING}} = f_{\text{FLT5}}/32, N = 5 \)

1110: \( f_{\text{SAMPLING}} = f_{\text{FLT5}}/32, N = 6 \)

1111: \( f_{\text{SAMPLING}} = f_{\text{FLT5}}/32, N = 8 \)

Note: This bitfield can be written only when FLT5E enable bit is reset.

This bitfield cannot be modified when FLT5LOCK has been programmed.

Bit 2 FLT5SRC : Fault 5 source

This bit selects the FAULT5 input source (refer to Table 322 for connection details).

0: Fault 1 input is HRTIM_FLT5 input pin

1: Fault 1 input is hrtim_in_flt5 signal

Note: This bitfield can be written only when FLT5E enable bit is reset

Bit 1 FLT5P : Fault 5 polarity

This bit selects the FAULT5 input polarity.

0: Fault 5 input is active low

1: Fault 5 input is active high

Note: This bitfield can be written only when FLT5E enable bit is reset

Bit 0 FLT5E : Fault 5 enable

This bit enables the global FAULT5 input circuitry.

0: Fault 5 input disabled

1: Fault 5 input enabled

37.5.60 HRTIM Burst DMA Master timer update Register (HRTIM_BDMUPR)

Address offset: 0x3D8h

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.MCMP4MCMP3MCMP2MCMP1MREPMPERMCNTMDIERMICRMCR
rwrwrwrwrwrwrwrwrwrw

Bits 31:10 Reserved, must be kept at reset value.

Bit 9 MCMP4 : MCMP4R register update enable

Refer to MCR description

Bit 8 MCMP3 : MCMP3R register update enable

Refer to MCR description

Bit 7 MCMP2 : MCMP2R register update enable

Refer to MCR description

Bit 6 MCMP1 : MCMP1R register update enable

Refer to MCR description

Bit 5 MREP : MREP register update enable

Refer to MCR description

Bit 4 MPER : MPER register update enable

Refer to MCR description

Bit 3 MCNT : MCNTR register update enable

Refer to MCR description

Bit 2 MDIER : MDIER register update enable

Refer to MCR description

Bit 1 MICR : MICR register update enable

Refer to MCR description

Bit 0 MCR : MCR register update enable

This bit defines if the master timer MCR register is part of the list of registers to be updated by the Burst DMA.

0: MCR register is not updated by Burst DMA accesses

1: MCR register is updated by Burst DMA accesses

37.5.61 HRTIM Burst DMA Timerx update Register (HRTIM_BDTxUPR)

Address offset: 0x3DCh-0x3ECh

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.TIMxFLTRTIMxOUTRTIMxCHPRTIMxRSTRTIMxE EFR2
rwrwrwrwrw
1514131211109876543210
TIMxE EFR1TIMxR ST2RTIMxS ET2RTIMxR ST1RTIMxS ET1RTIMxD TxRTIMxC MP4TIMxC MP3TIMxC MP2TIMxC MP1TIMxR EPTIMxP ERTIMxC NTTIMxDI ERTIMxIC RTIMxC R
rwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrw

Bits 31:21 Reserved, must be kept at reset value.

Bit 20 TIMxFLTR : HRTIM_FLTxR register update enable

Refer to TIMxCR description

Bit 19 TIMxOUTR : HRTIM_OUTxR register update enable

Refer to TIMxCR description

Bit 18 TIMxCHPR : HRTIM_CHPxR register update enable

Refer to TIMxCR description

Bit 17 TIMxRSTR : HRTIM_RSTxR register update enable

Refer to TIMxCR description

Bit 16 TIMxE EFR2 : HRTIM_EEFxR2 register update enable

Refer to TIMxCR description

Bit 15 TIMxE EFR1 : HRTIM_EEFxR1 register update enable

Refer to TIMxCR description

Bit 14 TIMxRST2R : HRTIM_RST2xR register update enable

Refer to TIMxCR description

Bit 13 TIMxSET2R : HRTIM_SET2xR register update enable

Refer to TIMxCR description

Bit 12 TIMxRST1R : HRTIM_RST1xR register update enable

Refer to TIMxCR description

Bit 11 TIMxSET1R : HRTIM_SET1xR register update enable

Refer to TIMxCR description

Bit 10 TIMxDTR : HRTIM_DTxR register update enable

Refer to TIMxCR description

Bit 9 TIMxCMP4 : HRTIM_CMP4xR register update enable

Refer to TIMxCR description

Bit 8 TIMxCMP3 : HRTIM_CMP3xR register update enable

Refer to TIMxCR description

Bit 7 TIMxCMP2 : HRTIM_CMP2xR register update enable

Refer to TIMxCR description

  1. Bit 6 TIMxCMP1 : HRTIM_CMP1xR register update enable
    Refer to TIMxCR description
  2. Bit 5 TIMxREP : HRTIM_REPxR register update enable
    Refer to TIMxCR description
  3. Bit 4 TIMxPER : HRTIM_PERxR register update enable
    Refer to TIMxCR description
  4. Bit 3 TIMxCNT : HRTIM_CNTxR register update enable
    Refer to TIMxCR description
  5. Bit 2 TIMxDIER : HRTIM_TIMxDIER register update enable
    Refer to TIMxCR description
  6. Bit 1 TIMxICR : HRTIM_TIMxICR register update enable
    Refer to TIMxCR description
  7. Bit 0 TIMxCR : HRTIM_TIMxCR register update enable
    This bit defines if the master timer MCR register is part of the list of registers to be updated by the Burst DMA.
    0: HRTIM_TIMxCR register is not updated by Burst DMA accesses
    1: HRTIM_TIMxCR register is updated by Burst DMA accesses

37.5.62 HRTIM Burst DMA Data Register (HRTIM_BDMADR)

Address offset: 0x3F0h

Reset value: 0x0000 0000

31302928272625242322212019181716
BDMADR[31:16]
wowowowowowowowowowowowowowowowo
1514131211109876543210
BDMADR[15:0]
wowowowowowowowowowowowowowowowo

Bits 31:0 BDMADR[31:0] : Burst DMA Data register

Write accesses to this register triggers:

37.5.63 HRTIM register map

The tables below summarize the HRTIM registers mapping. The address offsets in Table 328 and Table 329 are referred to in the base address offsets given in Table 327 .

Table 327. HRTIM global register map

Base address offsetRegister
0x000 - 0x07FMaster timer
0x080 - 0x0FFTimer A
0x100 - 0x17FTimer B
0x180 - 0x1FFTimer C
0x200 - 0x27FTimer D
0x280 - 0x2FFTimer E
0x300 - 0x37FReserved
0x380 - 0x3FFCommon registers

Table 328. HRTIM Register map and reset values: Master timer

OffsetRegister name313029282726252423222120191817161514131211109876543210
0x0000HRTIM_MCRBRSTDMA[1:0]MREPURes.PREENDACSYNC[1:0]Res.Res.Res.TECENTDCENTCCENTBCENTACENMCENSYNCSRC[1:0]SYNCOUT[1:0]SYNCSTRMSYNCRSTSYNCIN[1:0]Res.Res.Res.HALFRETRIGCONTCKPSC[2:0]
Reset value00000000000000000000000000
0x0004HRTIM_MISRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.MUPDSYNCMREPMCMP4MCMP3MCMP2MCMP1
Reset value0000000
0x0008HRTIM_MICRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.MUPDCSYNCCMREPCMCMP4CMCMP3CMCMP2CMCMP1C
Reset value0000000
0x000CHRTIM_MDIER (1)Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.MUPDDESYNCCDEMREPDEMCMP4DEMCMP3DEMCMP2DEMCMP1DERes.Res.Res.Res.Res.Res.Res.Res.MUPDIESYNCIEMREPIEMCMP4IEMCMP3IEMCMP2IEMCMP1IE
Reset value00000000000000
0x0010HRTIM_MCNTRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.MCNT[15:0]
Reset value0000000000000000

Table 328. HRTIM Register map and reset values: Master timer (continued)

OffsetRegister name313029282726252423222120191817161514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
0x0014HRTIM_MPER (1)MPER[15:0]
Reset value1111111111101111
0x0018HRTIM_MREP (1)MREP[7:0]
Reset value00000
0x001CHRTIM_MCMP1R (1)MCMP1[15:0]
Reset value000000000000000
0x0020ReservedRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
Reset value
0x0024HRTIM_MCMP2R (1)MCMP2[15:0]
Reset value000000000000000
0x0028HRTIM_MCMP3R (1)MCMP3[15:0]
Reset value000000000000000
0x002CHRTIM_MCMP4R (1)MCMP4[15:0]
Reset value000000000000000

1. This register can be preloaded (see Table 313 on page 1396).

Table 329. HRTIM Register map and reset values: TIMx (x= A..E)

OffsetRegister name313029282726252423222120191817161514131211109876543210
0x0000HRTIM_TIMxCRUPDGAT
[3:0]
PREENDACSYNC[1:0]MSTUTEUTDUTCUTBURes.TxRSTUTxREPURes.DELCMP4[1:0]DELCMP2[1:0]SYNCSTRTxSYNCRSTxRes.Res.PSHPLLHALFRETRIGCONTCKPSCx[2:0]
00000000000000000000000000000000
0x0004HRTIM_TIMxISRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.O2CPYO1CPYO2STATO1STATIPPSTATCPPSTATRes.DLYPRTRSTRSTx2SETx2SETx1CPT2CPT1UPDRes.REPCMP4CMP3CMP2CMP1
0000000000000000000
0x0008HRTIM_TIMxICRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.DLYPRTCRSTCRSTx2CSETx2CRSTx1CSETx1CCPT2CCPT1CUPDCRes.REPCCMP4CCMP3CCMP2CCMP1C
00000000000000
0x000CHRTIM_TIMxDIER (1)Res.DLYPRTDERSTDERST2DESETx2DERSTx1DESETx1DECPT2DECPT1DEUPDDERes.REPDECMP4DECMP3DECMP2DECMP1DERes.DLYPRTIERSTIERSTx2IESETx2IERSTx1IESETx1IECPT2IECPT1IEUPDIERes.REPIECMP4IECMP3IECMP2IECMP1IE
0000000000000000000000000000
0x0010HRTIM_CNTxRRes.CNTx[15:0]
0000000000000000
0x0014HRTIM_PERxR (1)Res.PERx[15:0]
1111111111101111
0x0018HRTIM_REPxR (1)Res.REPx[7:0]
00000000
0x001CHRTIM_CMP1xR (1)Res.CMP1x[15:0]
0000000000000000
0x0020HRTIM_CMP1CxR (1)Res.REPx[7:0]CMP1x[15:0]
000000000000000000000000
0x0024HRTIM_CMP2xR (1)Res.CMP2x[15:0]
0000000000000000
0x0028HRTIM_CMP3xR (1)Res.CMP3x[15:0]
0000000000000000
0x002CHRTIM_CMP4xR (1)Res.CMP4x[15:0]
0000000000000000
0x0030HRTIM_CPT1xRRes.CPT1x[15:0]
0000000000000000

Table 329. HRTIM Register map and reset values: TIMx (x= A..E) (continued)

OffsetRegister name313029282726252423222120191817161514131211109876543210
0x0034HRTIM_CPT2xRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.CPT2x[15:0]
Reset value0000000000000000
0x0038HRTIM_DTxR (1)DTFLKxDTFSLKxRes.Res.Res.Res.SDTFxDTFx[8:0]DTRLKxDTRSLKxRes.DTPRSC[2:0]SDTRxDTRx[8:0]
Reset value000000000000000000000000000
0x003CHRTIM_SETx1R (1)UPDATEEXTEVNT10EXTEVNT9EXTEVNT8EXTEVNT7EXTEVNT6EXTEVNT5EXTEVNT4EXTEVNT3EXTEVNT2EXTEVNT1TIMEVNT9TIMEVNT8TIMEVNT7TIMEVNT6TIMEVNT5TIMEVNT4TIMEVNT3TIMEVNT2TIMEVNT1MSTCMP4MSTCMP3MSTCMP2MSTCMP1MSTPERCMP4CMP3CMP2CMP1PERRESYNCSST
Reset value00000000000000000000000000000000
0x0040HRTIM_RSTx1R (1)UPDATEEXTEVNT10EXTEVNT9EXTEVNT8EXTEVNT7EXTEVNT6EXTEVNT5EXTEVNT4EXTEVNT3EXTEVNT2EXTEVNT1TIMEVNT9TIMEVNT8TIMEVNT7TIMEVNT6TIMEVNT5TIMEVNT4TIMEVNT3TIMEVNT2TIMEVNT1MSTCMP4MSTCMP3MSTCMP2MSTCMP1MSTPERCMP4CMP3CMP2CMP1PERRESYNCSRT
Reset value00000000000000000000000000000000
0x0044HRTIM_SETx2R (1)UPDATEEXTEVNT10EXTEVNT9EXTEVNT8EXTEVNT7EXTEVNT6EXTEVNT5EXTEVNT4EXTEVNT3EXTEVNT2EXTEVNT1TIMEVNT9TIMEVNT8TIMEVNT7TIMEVNT6TIMEVNT5TIMEVNT4TIMEVNT3TIMEVNT2TIMEVNT1MSTCMP4MSTCMP3MSTCMP2MSTCMP1MSTPERCMP4CMP3CMP2CMP1PERRESYNCSST
Reset value00000000000000000000000000000000
0x0048HRTIM_RSTx2R (1)UPDATEEXTEVNT10EXTEVNT9EXTEVNT8EXTEVNT7EXTEVNT6EXTEVNT5EXTEVNT4EXTEVNT3EXTEVNT2EXTEVNT1TIMEVNT9TIMEVNT8TIMEVNT7TIMEVNT6TIMEVNT5TIMEVNT4TIMEVNT3TIMEVNT2TIMEVNT1MSTCMP4MSTCMP3MSTCMP2MSTCMP1MSTPERCMP4CMP3CMP2CMP1PERRESYNCSRT
Reset value00000000000000000000000000000000
0x004CHRTIM_EEFxR1Res.Res.Res.EE5FLTR[3:0]EE5LTCHRes.EE4FLTR[3:0]EE4LTCHRes.EE3FLTR[3:0]EE3LTCHRes.EE2FLTR[3:0]EE2LTCHRes.EE1FLTR[3:0]EE1LTCH
Reset value0000000000000000000000000
0x0050HRTIM_EEFxR2Res.Res.Res.EE10FLTR[3:0]EE10LTCHRes.EE9FLTR[3:0]EE9LTCHRes.EE8FLTR[3:0]EE8LTCHRes.EE7FLTR[3:0]EE7LTCHRes.EE6FLTR[3:0]EE6LTCH
Reset value0000000000000000000000000
0x0054HRTIM_RSTAR (1)Res.TIMECMP4TIMECMP2TIMECMP1TIMDCMP4TIMDCMP2TIMDCMP1TIMCCMP4TIMCCMP2TIMCCMP1TIMBCMP4TIMBCMP2TIMBCMP1EXTEVNT10EXTEVNT9EXTEVNT8EXTEVNT7EXTEVNT6EXTEVNT5EXTEVNT4EXTEVNT3EXTEVNT2EXTEVNT1MSTCMP4MSTCMP3MSTCMP2MSTCMP1MSTPERCMP4CMP2UPDTRes.
Reset value000000000000000000000000000000

Table 329. HRTIM Register map and reset values: TIMx (x= A..E) (continued)

OffsetRegister name313029282726252423222120191817161514131211109876543210
0x0054HRTIM_RSTBR (1)Res.TIMECMP4TIMECMP2TIMECMP1TIMDCMP4TIMDCMP2TIMDCMP1TIMBCMP4TIMBCMP2TIMBCMP1TIMACMP4TIMACMP2TIMACMP1EXTEVTN10EXTEVTN9EXTEVTN8EXTEVTN7EXTEVTN6EXTEVTN5EXTEVTN4EXTEVTN3EXTEVTN2EXTEVTN1MSTCMP4MSTCMP3MSTCMP2MSTCMP1MSTPERCMP4CMP2UPDTRes.
Reset value0000000000000000000000000000000
0x0054HRTIM_RSTCR (1)Res.TIMECMP4TIMECMP2TIMECMP1TIMDCMP4TIMDCMP2TIMDCMP1TIMBCMP4TIMBCMP2TIMBCMP1TIMACMP4TIMACMP2TIMACMP1EXTEVTN10EXTEVTN9EXTEVTN8EXTEVTN7EXTEVTN6EXTEVTN5EXTEVTN4EXTEVTN3EXTEVTN2EXTEVTN1MSTCMP4MSTCMP3MSTCMP2MSTCMP1MSTPERCMP4CMP2UPDTRes.
Reset value0000000000000000000000000000000
0x0054HRTIM_RSTDR (1)Res.TIMECMP4TIMECMP2TIMECMP1TIMDCMP4TIMDCMP2TIMDCMP1TIMBCMP4TIMBCMP2TIMBCMP1TIMACMP4TIMACMP2TIMACMP1EXTEVTN10EXTEVTN9EXTEVTN8EXTEVTN7EXTEVTN6EXTEVTN5EXTEVTN4EXTEVTN3EXTEVTN2EXTEVTN1MSTCMP4MSTCMP3MSTCMP2MSTCMP1MSTPERCMP4CMP2UPDTRes.
Reset value0000000000000000000000000000000
0x0054HRTIM_RSTER (1)Res.TIMDCMP4TIMDCMP2TIMDCMP1TIMCCMP4TIMCCMP2TIMCCMP1TIMBCMP4TIMBCMP2TIMBCMP1TIMACMP4TIMACMP2TIMACMP1EXTEVTN10EXTEVTN9EXTEVTN8EXTEVTN7EXTEVTN6EXTEVTN5EXTEVTN4EXTEVTN3EXTEVTN2EXTEVTN1MSTCMP4MSTCMP3MSTCMP2MSTCMP1MSTPERCMP4CMP2UPDTRes.
Reset value0000000000000000000000000000000
0x0058HRTIM_CHPxRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.STRTPW [3:0]CARDTY [2:0]CARFRQ [3:0]
Reset value000000000
0x005CHRTIM_CPT1ACRTECMP2TECMP1TE1RSTTE1SETTDCMP2TDCMP1TD1RSTTD1SETTCCMP2TCCMP1TC1RSTTC1SETTBCMP2TBCMP1TB1RSTTB1SETRes.Res.Res.Res.EXEV10CPTEXEV9CPTEXEV8CPTEXEV7CPTEXEV6CPTEXEV5CPTEXEV4CPTEXEV3CPTEXEV2CPTEXEV1CPTUPDCPTSWCPT
Reset value00000000000000000000000000000000
0x005CHRTIM_CPT1BCRTECMP2TECMP1TE1RSTTE1SETTDCMP2TDCMP1TD1RSTTD1SETTCCMP2TCCMP1TC1RSTTC1SETRes.Res.Res.Res.TACMP2TACMP1TA1RSTTA1SETEXEV10CPTEXEV9CPTEXEV8CPTEXEV7CPTEXEV6CPTEXEV5CPTEXEV4CPTEXEV3CPTEXEV2CPTEXEV1CPTUPDCPTSWCPT
Reset value00000000000000000000000000000000
0x005CHRTIM_CPT1CCRTECMP2TECMP1TE1RSTTE1SETTDCMP2TDCMP1TD1RSTTD1SETRes.Res.Res.Res.TBCMP2TBCMP1TB1RSTTB1SETTACMP2TACMP1TA1RSTTA1SETEXEV10CPTEXEV9CPTEXEV8CPTEXEV7CPTEXEV6CPTEXEV5CPTEXEV4CPTEXEV3CPTEXEV2CPTEXEV1CPTUPDCPTSWCPT
Reset value00000000000000000000000000000000
0x005CHRTIM_CPT1DCRTECMP2TECMP1TE1RSTTE1SETRes.Res.Res.Res.TCCMP2TCCMP1TC1RSTTC1SETTBCMP2TBCMP1TB1RSTTB1SETTACMP2TACMP1TA1RSTTA1SETEXEV10CPTEXEV9CPTEXEV8CPTEXEV7CPTEXEV6CPTEXEV5CPTEXEV4CPTEXEV3CPTEXEV2CPTEXEV1CPTUPDCPTSWCPT
Reset value00000000000000000000000000000000

Table 329. HRTIM Register map and reset values: TIMx (x= A..E) (continued)

OffsetRegister name313029282726252423222120191817161514131211109876543210
Res.Res.Res.Res.TDCMP2TDCMP1TD1RSTTD1SETTCCMP2TCCMP1TC1RSTTC1SETTBCMP2TBCMP1TB1RSTTB1SETTACMP2TACMP1TA1RSTTA1SETEXEV10CPTEXEV9CPTEXEV8CPTEXEV7CPTEXEV6CPTEXEV5CPTEXEV4CPTEXEV3CPTEXEV2CPTEXEV1CPTUPDCPTSWCPT
0x005CHRTIM_CPT1ECR
Reset value0000000000000000000000000000
0x0060HRTIM_CPT2ACRTECMP2TECMP1TE1RSTTE1SETTDCMP2TDCMP1TD1RSTTD1SETTCCMP2TCCMP1TC1RSTTC1SETTBCMP2TBCMP1TB1RSTTB1SETRes.Res.Res.Res.EXEV10CPTEXEV9CPTEXEV8CPTEXEV7CPTEXEV6CPTEXEV5CPTEXEV4CPTEXEV3CPTEXEV2CPTEXEV1CPTUPDCPTSWCPT
Reset value0000000000000000000000000000
0x0060HRTIM_CPT2BCRTECMP2TECMP1TE1RSTTE1SETTDCMP2TDCMP1TD1RSTTD1SETTCCMP2TCCMP1TC1RSTTC1SETRes.Res.Res.Res.TACMP2TACMP1TA1RSTTA1SETEXEV10CPTEXEV9CPTEXEV8CPTEXEV7CPTEXEV6CPTEXEV5CPTEXEV4CPTEXEV3CPTEXEV2CPTEXEV1CPTUPDCPTSWCPT
Reset value0000000000000000000000000000
0x0060HRTIM_CPT2CCRTECMP2TECMP1TE1RSTTE1SETTDCMP2TDCMP1TD1RSTTD1SETRes.Res.Res.Res.TBCMP2TBCMP1TB1RSTTB1SETTACMP2TACMP1TA1RSTTA1SETEXEV10CPTEXEV9CPTEXEV8CPTEXEV7CPTEXEV6CPTEXEV5CPTEXEV4CPTEXEV3CPTEXEV2CPTEXEV1CPTUPDCPTSWCPT
Reset value0000000000000000000000000000
0x0060HRTIM_CPT2DCRTECMP2TECMP1TE1RSTTE1SETRes.Res.Res.Res.TCCMP2TCCMP1TC1RSTTC1SETTBCMP2TBCMP1TB1RSTTB1SETTACMP2TACMP1TA1RSTTA1SETEXEV10CPTEXEV9CPTEXEV8CPTEXEV7CPTEXEV6CPTEXEV5CPTEXEV4CPTEXEV3CPTEXEV2CPTEXEV1CPTUPDCPTSWCPT
Reset value0000000000000000000000000000
0x0060HRTIM_CPT2ECRRes.Res.Res.Res.TDCMP2TDCMP1TD1RSTTD1SETTCCMP2TCCMP1TC1RSTTC1SETTBCMP2TBCMP1TB1RSTTB1SETTACMP2TACMP1TA1RSTTA1SETEXEV10CPTEXEV9CPTEXEV8CPTEXEV7CPTEXEV6CPTEXEV5CPTEXEV4CPTEXEV3CPTEXEV2CPTEXEV1CPTUPDCPTSWCPT
Reset value0000000000000000000000000000
0x0064HRTIM_OUTxRRes.Res.Res.Res.Res.Res.Res.Res.DIDL2CHP2FAULT2[1:0]IDLES2IDLEM2POL2Res.Res.Res.Res.Res.Res.DLYPRT[2:0]DLYPRTENDTENDIDL1CHP1FAULT1[1:0]IDLES1IDLEM1POL1Res.
Reset value000000000000000
0x0068HRTIM_FLTxRFLTLOCKRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.FLT5ENFLT4ENFLT3ENFLT2ENFLT1EN
Reset value000000

1. This register can be preloaded (see Table 313 on page 1396).

Table 330. HRTIM Register map and reset values: Common functions

OffsetRegister name313029282726252423222120191817161514131211109876543210
0x0000HRTIM_CR1Res.Res.Res.Res.Res.AD4USRC[2:0]AD3USRC[2:0]AD2USRC[2:0]AD1USRC[2:0]Res.Res.Res.Res.Res.Res.Res.Res.TEUDISTDUDISTCUDISTBUDISTAUDISMUDIS
Reset value000000000000000000
0x0004HRTIM_CR2Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.TERSTTDRSTTCRSTTBRSTTARSTMRSTRes.Res.TESWUTDSWUTCSWUTBSWUTASWUMSWU
Reset value000000000000
0x0008HRTIM_ISRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.BMPERRes.Res.Res.Res.Res.Res.Res.Res.Res.SYSFLTFLT5FLT4FLT3FLT2FLT1
Reset value0000000
0x000CHRTIM_ICRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.BMPERCRes.Res.Res.Res.Res.Res.Res.Res.Res.SYSFLTCFLT5CFLT4CFLT3CFLT2CFLT1C
Reset value0000000
0x0010HRTIM_IERRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.BMPERIERes.Res.Res.Res.Res.Res.Res.Res.Res.SYSFLTIEFLT5IEFLT4IEFLT3IEFLT2IEFLT1IE
Reset value0000000
0x0014HRTIM_OENRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.TE2OENTE1OENTD2OENTD1OENTC2OENTC1OENTB2OENTB1OENTA2OENTA1OEN
Reset value0000000000
0x0018HRTIM_DISRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.TE2ODISTE1ODISTD2ODISTD1ODISTC2ODISTC1ODISTB2ODISTB1ODISTA2ODISTA1ODIS
Reset value0000000000
0x001CHRTIM_ODSRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.TE2ODSTE1ODSTD2ODSTD1ODSTC2ODSTC1ODSTB2ODSTB1ODSTA2ODSTA1ODS
Reset value0000000000
0x0020HRTIM_BMCRBMSTATRes.Res.Res.Res.Res.Res.Res.Res.TEBMTDBMTCBMTBBMTABMMTBMRes.Res.Res.Res.Res.BMPRENBMPRSC[3:0]BMCLK[3:0]BMOMBME
Reset value000000000000000000
0x0024HRTIM_BMTRGOCHPEVRes.Res.Res.Res.TECMP2TECMP1TEREPTERSTTDCMP2TDCMP1TDREPTDRSTTCCMP2TCCMP1TCREPTCRSTTBCMP2TBCMP1TBREPTBRSTTACMP2TACMP1TAREPTARSTMSTCMP4MSTCMP3MSTCMP2MSTCMP1MSTREPMSTRSTSW
Reset value0000000000000000000000000000
0x0028HRTIM_BMCMPR (1)Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.BMCMP[15:0]
Reset value0000000000000000

Table 330. HRTIM Register map and reset values: Common functions (continued)

OffsetRegister name313029282726252423222120191817161514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
0x002CHRTIM_BMPER (1)Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.BMPER[15:0]
Reset value0000000000000000
0x0030HRTIM_EECR1Res.Res.EE5FASTEE5SNS[1:0]Res.EE5POLEE5SRC[1:0]Res.EE4FASTEE4SNS[1:0]Res.EE4POLEE4SRC[1:0]Res.EE3FASTEE3SNS[1:0]Res.EE3POLEE3SRC[1:0]Res.EE2FASTEE2SNS[1:0]Res.EE2POLEE2SRC[1:0]Res.EE1FASTEE1SNS[1:0]Res.EE1POLEE1SRC[1:0]
Reset value000000000000000000000000000000
0x0034HRTIM_EECR2Res.Res.Res.EE10SNS[1:0]Res.EE10POLEE10SRC[1:0]Res.Res.EE9SNS[1:0]Res.EE9POLEE9SRC[1:0]Res.Res.EE8SNS[1:0]Res.EE8POLEE8SRC[1:0]Res.Res.EE7SNS[1:0]Res.EE7POLEE7SRC[1:0]Res.Res.Res.EE6SNS[1:0]Res.EE6POLEE6SRC[1:0]
Reset value0000000000000000000000000
0x0038HRTIM_EECR3Res.Res.Res.EE10SNS[1:0]Res.EE10POLEE10SRC[1:0]Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.EE6SRC[1:0]
Reset value0000000
0x003CHRTIM_ADC1R (1)AD1TEPERAD1TEC4AD1TEC3AD1TEC2AD1TDPERAD1TDC4AD1TDC3AD1TDC2AD1TCPERAD1TCC4AD1TCC3AD1TCC2AD1TBRSTAD1TBERAD1TBC4AD1TBC3AD1TBC2AD1TARSTAD1TAPERAD1TAC4AD1TAC3AD1TAC2AD1EEV5AD1EEV4AD1EEV3AD1EEV2AD1EEV1AD1MPERAD1MC4AD1MC3AD1MC2AD1MC1
Reset value00000000000000000000000000000000
0x0040HRTIM_ADC2R (1)AD2TERSTAD2TEC4AD2TEC3AD2TEC2AD2TDRSTAD2TDPERAD2TDC4AD2TDC3AD2TDC2AD2TCRSTAD2TCPERAD2TCC4AD2TCC3AD2TCC2AD2TBPERAD2TBC4AD2TBC3AD2TBC2AD2TAPERAD2TAC4AD2TAC3AD2TAC2AD2EEV10AD2EEV9AD2EEV8AD2EEV7AD2EEV6AD2MPERAD2MC4AD2MC3AD2MC2AD2MC1
Reset value00000000000000000000000000000000
0x0044HRTIM_ADC3R (1)AD3TEPERAD3TEC4AD3TEC3AD3TEC2AD3TDPERAD3TDC4AD3TDC3AD3TDC2AD3TCPERAD3TCC4AD3TCC3AD3TCC2AD3TBRSTAD3TBERAD3TBC4AD3TBC3AD3TBC2AD3TARSTAD3TAPERAD3TAC4AD3TAC3AD3TAC2AD3EEV5AD3EEV4AD3EEV3AD3EEV2AD3EEV1AD3MPERAD3MC4AD3MC3AD3MC2AD3MC1
Reset value00000000000000000000000000000000
0x0048HRTIM_ADC4R (1)AD4TERSTAD4TEC4AD4TEC3AD4TEC2AD4TDRSTAD4TDPERAD4TDC4AD4TDC3AD4TDC2AD4TCRSTAD4TCPERAD4TCC4AD4TCC3AD4TCC2AD4TBPERAD4TBC4AD4TBC3AD4TBC2AD4TAPERAD4TAC4AD4TAC3AD4TAC2AD4EEV10AD4EEV9AD4EEV8AD4EEV7AD4EEV6AD4MPERAD4MC4AD4MC3AD4MC2AD4MC1
Reset value00000000000000000000000000000000
0x004CReservedRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
0x0050HRTIM_FLTINxR1FLT4LCKFLT4F[3:0]FLT4SRCFLT4PFLT4EFLT3LCKFLT3F[3:0]FLT3SRCFLT3PFLT3EFLT2LCKFLT2F[3:0]FLT2SRCFLT2PFLT2EFLT1LCKFLT1F[3:0]FLT1SRCFLT1PFLT1E
Reset value00000000000000000000000000000000

Table 330. HRTIM Register map and reset values: Common functions (continued)

OffsetRegister name313029282726252423222120191817161514131211109876543210
0x0054HRTIM_FLTINxR2Res.Res.Res.Res.Res.Res.Res.FLTS 1 [1:0]Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.FLT5LCKFLT5F[3:0]FLT5SRCFLT5PFLT5E
Reset value00000000
0x0058HRTIM_BDMUPDRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.MCMP4MCMP3MCMP2MCMP1MREPMPERMCNTMDIERMICRMCR
Reset value0000000000
0x005CHRTIM_BDTAUPRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.TIMAFLTRTIMAOUTRTIMACHPRTIMARSTRTIMAEFFR2TIMAEFFR1TIMARST2RTIMASET2RTIMARST1RTIMASET1RTIMADTxRTIMACMP4TIMACMP3TIMACMP2TIMACMP1TIMAREPTIMAPERTIMACNTTIMADIERTIMACRTIMACR
Reset value00000000000000000000
0x0060HRTIM_BDTUPRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.TIMBFLTRTIMBOUTRTIMBCHPRTIMBRSTRTIMBEEFR2TIMBEEFR1TIMBRST2RTIMBSET2RTIMBRST1RTIMBSET1RTIMBDTxRTIMBCMP4TIMBCMP3TIMBCMP2TIMBCMP1TIMBREPTIMBPERTIMBCNTTIMBDIERTIMBICRTIMBCR
Reset value00000000000000000000
0x0064HRTIM_BDTCUPRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.TIMCFLTRTIMCOUTRTIMCCHPRTIMCRSTRTIMCEFFR2TIMCEFFR1TIMCRST2RTIMCSET2RTIMCRST1RTIMCSET1RTIMCDTxRTIMCCMP4TIMCCMP3TIMCCMP2TIMCCMP1TIMCREPTIMCPERTIMCCNTTIMCDIERTIMCICRTIMCCR
Reset value00000000000000000000
0x0068HRTIM_BDTDUPRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.TIMDFLTRTIMDOUTrTIMDCHPRTIMDRSTRTIMDEFFR2TIMDEFFR1TIMDRST2RTIMDSET2RTIMDRST1RTIMDSET1RTIMDDTxRTIMDCMP4TIMDCMP3TIMDCMP2TIMDCMP1TIMDREPTIMDPERTIMDCNTTIMDDIERTIMDICRTIMDCR
Reset value00000000000000000000
0x006CHRTIM_BDTEUPRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.TIMEFLTRTIMEOUTRTIMECHPRTIMERSTRTIMEEFFR2TIMEEFFR1TIMERST2RTIMESET2RTIMERST1RTIMESET1RTIMEDTxRTIMECMP4TIMECMP3TIMECMP2TIMECMP1TIMEREPTIMEPERTIMECNTTIMEDIERTIMEICRTIMECR
Reset value00000000000000000000
0x0070HRTIM_BDMADRBDMADR[31:0]
Reset value00000000000000000000000000000000

1. This register can be preloaded (see Table 313 on page 1396 ).

Refer to Section 2.3 on page 129 for the register boundary addresses.