15.3 Functional Description
An overview of the PRS module is shown in
Figure 15.1 PRS Overview on page 421
. The PRS contains 12 Reflex channels. All chan-
nels can select any Reflex signal offered by the producers. The consumers can choose which PRS channel to listen to and perform
actions based on the Reflex signals routed through that channel. The Reflex signals can be both edge signals and level signals.
APB Interface
Reg
SIGSEL[2:0]
EDSEL[1:0]
APB bus
Signals from
producer
peripherals
Signals to
consumer
peripherals
SWPULSE[n]
SWLEVEL[n]
SOURCESEL[5:0]
Figure 15.1. PRS Overview
15.3.1 Channel Functions
Different functions can be applied to a Reflex signal within the PRS. Each channel includes an edge detector to enable generation of
pulse signals from level signals. The PRS channels can also be manually triggered by writing to PRS_SWPULSE or PRS_SWLEVEL.
SWLEVEL[n] is a programmable level for each channel and holds the value it is programmed to. Setting SWPULSE[n] will cause the
PRS channel to output a high pulse that is one HFCLK cycle wide. The SWLEVEL[n] and SWPULSE[n] signals are then XOR'ed with
the selected input from the producers to form the output signal sent to the consumers listening to the channel. For example, when
SWLEVEL[n] is set, if a producer produces a signal of 1, this will cause a channel output of 0.
15.3.1.1 Operational Mode
Reflex channels can operate in two modes, synchronous or asynchronous. In synchronous mode Reflex signals are clocked on the
HFCLK, and can be used by any Reflex consumer. However, this will not work in EM2/EM3, since the HFCLK will be turned off.
Asynchronous Reflex channels are not clocked on HFCLK, and can be used even in EM2/EM3. However, the asynchronous mode can
only be used by a subset of the Reflex consumers.
The asynchronous Reflex signals generated by the producers are indicated in the SIGSEL field of PRS_CHx_CTRL register. The con-
sumers capable of utilizing asynchronous Reflex signals include the LEUART and the PCNT. The USART can also utilize some particu-
lar asynchronous signals. Refer to the respective modules for details on how to configure them to use the PRS.
Note:
If a Reflex channel with ASYNC field of PRS_CHx_CTRL register set to '1' is used in a consumer not supporting asynchronous
reflexes, the behaviour is undefined
Reference Manual
PRS - Peripheral Reflex System
silabs.com
| Building a more connected world.
Rev. 1.1 | 421