The MCPWM module consists of up to 3 complete PWM channel pairs with the following signal names:
- MCPWMx_1A
- MCPWMx_1B
- MCPWMx_2A
- MCPWMx_2B
- MCPWMx_3A
- MCPWMx_3B
Multiple MCPWM modules can exist on a single device, with each module denoted by a different value of "x".
Each MCPWM instance is identical with one exception. Some instances only include a single channel pair. Because of this, there are two types of MCPWM, 6-channel MCPWM (6CH) and 2-channel MCPWM (2CH). The MCPWM instances and the types are as follows:
| MCPWM Instance | Number of Channels |
|---|
| MCPWM1 | 6 |
| MCPWM3 | 2 |
Note that not all channels need to be used in either 6-channel or 2-channel MCPWM. For example, to use only 4 channels from a 6-channel MCPWM instance, simply configure the GPIO mux to avoid routing the remaining two channels to any device pin.
The MCPWM modules are chained together by way of a clock synchronization scheme that allows them to operate as a single system when required. Additionally, this synchronization scheme can be extended to the capture peripheral submodules (eCAP).
Each MCPWM module supports the following features:
- Dedicated 16-bit time-base counter with period and frequency control
- Up to 6 PWM outputs(3 channel pairs). Each channel pair can be used in the following configurations:
- Two independent PWM outputs with single-edge operation
- Two independent PWM outputs with dual-edge symmetric operation
- One independent PWM output with dual-edge asymmetric operation
- Asynchronous override control of PWM signals through software.
- Programmable phase-control support for lag or lead operation relative to other MCPWM modules.
- Hardware-locked (synchronized) phase relationship on a cycle-by-cycle basis.
- Dead-band generation with independent rising and falling edge delay control.
- Programmable trip zone allocation of both cycle-by-cycle trip and one-shot trip on fault conditions.
- A trip condition can force either high, low, or high-impedance state logic levels at PWM outputs.
- All events can trigger both CPU interrupts and ADC start of conversion (SOC)
- Programmable event prescaling minimizes CPU overhead on interrupts.
Each MCPWM module consists of 6 submodules and is
connected within a system by way of the signals shown in Figure 15-1.
Figure 15-2 shows more internal details of a single MCPWM module. The main signals used by
the MCPWM module are:
- MCPWM output signals (MCPWMx_yA and MCPWMx_yB): The MCPWM output signals are made available external to the device.
- Trip-zone signals (TZ1 to TZ8): These input signals alert the MCPWM module of fault conditions external to the MCPWM module. Each submodule on a device can be configured to either use or ignore any of the trip-zone signals. Each TZx signal is directly connected to the output of one of the 8 MCPWM X-BAR outputs.
- Time-base synchronization input (MCPWMxSYNCI),
output (MCPWMxSYNCO), and peripheral (MCPWMxSYNCPER) signals: For more
information, see Section 15.4.3.3.
Each MCPWM module also
generates another PWMSYNC signal called MCPWMxSYNCPER. MCPWMxSYNCPER goes to
the CMPSS for synchronization purposes. Functionality is configured using
the TBCTL register. For more information on how MCPWMxSYNCPER is used by the
CMPSS, see the Comparator Subsystem (CMPSS) chapter.
- ADC start-of-conversion signals: Each MCPWM module has four ADC start of conversion signals(SOCA, SOCB, SOCC, SOCD). Any MCPWM module can trigger a start of conversion. Whichever event triggers the start of conversion is configured in the event-trigger submodule of the MCPWM.
- Comparator output signals (COMPxOUT): Output signals from the comparator module can be fed through the MCPWM X-BAR to one or all of the 8 trip inputs to induce one-shot or cycle-by-cycle trip events. Refer to the Crossbar (X-BAR) chapter and the Trip-Zone submodule section of this chapter for more information.
- Peripheral bus: The peripheral bus is 32-bits wide and allows both 16-bit and 32-bit writes to the MCPWM register file.