Electronics 14 01511
Electronics 14 01511
1 Robert Bosch Center for Cyber Physical Systems, Indian Institute of Science, Bengaluru 560012, India
2 Mercedes Benz Research and Development, Bengaluru 560066, India; [email protected]
3 Department of Electrical Communications Engineering, Indian Institute of Science, Bengaluru 560012, India;
[email protected]
4 Simyog Technology Pvt. Ltd., Bengaluru 560001, India
5 Christian Doppler Laboratory for EMC Aware Robust Electronic Systems, Institute of Electronics,
Inffeldgasse 12/I, A-8010 Graz, Austria; [email protected]
* Correspondence: [email protected]
instruction sets in the time domain. For a new program, individual instruction current
models are combined to obtain the resultant current waveform. These existing methods
use instruction set-based assembly-level programming to model microcontroller emissions.
Another approach for modeling IC emissions is proposed by Sicard [20]: a tool based on an
empirical method to compute the conducted emissions as a function of the IC technology
used, the number of gates switching due to the internal activity of the IC, etc. To utilize
these models, exact information on the ICs is needed, which is seldom available outside
IC manufacturers.
For a system integrator such as an automobile or an ECU supplier, specialized IC
boards designed for EMC-related measurements or information on internal IC properties
for die/packages is unavailable. When evaluating the conducted emission of an ECU,
with multiple components such as a microcontroller and power converters, transistor-level
detailed simulations become computationally large and prohibitive for practical purposes.
Since ECUs are programmed with high-level language for performing functional tasks, we
need to model the dependence of the conducted emissions on the higher-level program
configurations instead of the instruction-level programs. Given these constraints, we
aim to characterize the conducted emissions of a microcontroller using a measurement-
based stochastic model based on high-level program configurations. For an EMC engineer,
focusing solely on the worst-case emission scenarios of a switching device is neither
practical nor efficient, as such scenarios occur infrequently. Addressing them exclusively
may lead to the design of oversized components for filters chosen for the most extreme
cases. A more effective approach is to identify the more probable emission spectrum
generated by the microcontroller, enabling optimized design solutions. Furthermore, with
advancements in Over-The-Air (OTA) software update technologies, the prediction of
emission peaks becomes essential when a new program is executed on the microcontroller
core in order to validate its compliance with standard limits. To address these challenges,
we propose the following research objectives:
1. To obtain the upper and lower bounds within which microcontroller emissions are
expected to fall with 95% confidence.
2. To accurately obtain the emission peaks of a new program based on the emissions of a
set of known programs.
In our previous work [21], we modeled the conducted emissions of an STM32 general-
purpose microcontroller as a function of the percentage of RAM utilization by the program
running in its core, considering a fixed clock frequency. The research objectives mentioned
above were addressed by employing a linear decomposition of the emission space and
correlating the principal component coefficients with the RAM utilization. In this paper,
this approach is further extended by incorporating more program configurations, such
as variable clock frequencies, PLL circuit status (enabled/disabled), and the switching
of general-purpose input/output (GPIO) port pins using different timer settings. The
methodology developed previously in [21] was tailored for programs with a single clock
frequency and variable RAM utilization. However, extending this approach to scenarios
with varying clock frequencies requires the clustering of programs with the same clock
frequency. Additionally, the previous approach does not account for the effects of GPIO
switching, necessitating the development of a new methodology to accommodate such
cases. For the first research objective, objective 1, we use a statistical approach to estimate
the upper and lower bounds of the conducted emissions of an STM32 microcontroller, which
assumes the probability distribution function for the emission envelopes across various
configurations. We compute these bounds for a 95% confidence interval. These bounds
can further be used to select filter design components without requiring an analysis of the
Electronics 2025, 14, 1511 4 of 21
emissions of individual programs. The method also specifies the program combinations
that are used to accurately establish these bounds.
To estimate the conducted emissions of a new program running in the core, as outlined
in research objective 2, we use a machine learning approach. Traditional first-principle
models have inherent limitations in accurately modeling complex phenomena, while ma-
chine learning models chosen to capture complex patterns often lack interpretability and
the consideration of physical constraints. To bridge this gap, the recent literature proposes
frameworks such as the mixture of experts [22], Gaussian mixture models (GMMs) [23,24],
and conditional mixture models [25,26], which combine the interpretability of gray-box
models with the accuracy of black-box approaches. In this work, we employ the machine
learning-based conditional mixture model with linear regression to cluster the conducted
emission peaks of various programs and probabilistically predict the emissions of new
programs. While the conditional mixture model with linear regression is a well-established
technique, its application to conducted emissions prediction is novel. For an STM32 mi-
crocontroller, the model performs well, with an average prediction error of ±4dB, and it
also explains the statistical similarities between different program types and their emis-
sion peaks.
In a real vehicle environment, microcontroller emissions are influenced by interactions
with power converters, communication networks, and system-level coupling with wiring
harnesses and the metal chassis. We adopt a systematic approach based on the Electronic
Board Emission Model (EBEM) [27] to analyze these effects. This involves de-embedding
the test fixture effects to derive an equivalent source model of the microcontroller board as a
function of the program running in its core. Such models for individual noise sources, along
with coupling paths such as wiring harnesses, can be simulated using an electromagnetic
solver to assess overall electromagnetic interactions within the vehicle. The present work
serves as a precursor to developing equivalent microcontroller source models for integration
into realistic electromagnetic environments.
This paper is organized as follows: Section 2 outlines the design of experiments for
testing various program configurations of the microcontroller for conducted emissions.
Section 3 describes the conducted emission measurement setup. Section 4 introduces the
methodology for determining the emission bounds, as described in Section 4.1, and for
predicting the emissions of new programs using conditional mixture models, as detailed
in Section 4.2. The application of these methods to STM32 microcontroller emissions and
the results are discussed in Section 5, and concluding remarks, along with future work, are
provided in Section 6.
2. Design of Experiments
An STM32 microcontroller [28] is used as a device under test (DUT), and it consists of a
32-bit ARM Cortex-M0 Central Processing Unit (CPU). Its architectural layout is illustrated
in Figure 1. The controller operates with a High-Speed Internal (HSI) clock, with frequen-
cies of 8 MHz and 48 MHz, supplemented by a phase-locked loop (PLL) circuit multiplying
the frequencies up to a maximum frequency of 48 MHz. The microcontroller has 16 kB of
RAM and 128 kB of flash memory. It consists of 8 timers and supports various communi-
cation interfaces such as a Controller Area Network (CAN) and a Serial Peripheral Inter-
face (SPI), an Inter-Integrated Circuit (I2 C), and a Universal Synchronous/Asynchronous
Receiver/Transmitter (USART). The general-purpose input/output (GPIO) pins can be
configured using these timers for pulse-width modulation (PWM) signal generation.
Electronics 2025, 14, 1511 5 of 21
f clock
fs = (1)
Auto-Reload-Value
Further, the duty ratio of the PWM signal is controlled using the capture/compare
register (CCR) value, which specifies the fraction of the total period for which the pin
voltage is high. The duty ratio (D) can be expressed in terms of the CCR value and the
auto-reload value as follows:
CCR
D= (2)
Auto-Reload-Value
Tables 2 and 3 present the program configurations used for switching the GPIO
pins with varying frequencies and duty ratios, respectively. In Table 2, the duty ratio is
maintained constant at 80%, while the switching frequency varies according to Equation (1).
For further analysis and model building, the emission data are sampled at 1 MHz; hence,
the switching frequencies ( f s ) are set to 1 MHz, 2 MHz, and 4 MHz. TIM1 and TIM15 excite
a total of six pins; TIM1, TIM2, and TIM3 excite twelve pins; and when all timers are active,
seventeen pins are switched. During these experiments, the flash memory utilization is
maintained constant at 7–8%.
In Table 3, the clock frequency is set to 48 MHz, with an auto-reload value of 48,
resulting in a fixed switching frequency of 1 MHz. The duty ratio is varied in steps of 10%,
50%, and 80%, as calculated using Equation (2). These variations are tested across different
timer configurations and numbers of pins.
Together, Tables 2 and 3 describe 18 GPIO switching experiments. Combined with the
RAM utilization experiments, a total of 67 experiments are conducted involving both RAM
and GPIO switching programs.
Electronics 2025, 14, 1511 7 of 21
Auto-Reload Value Timer Frequency (MHz) Total Pins RAM Utilization (R%)
48 1 6 10.5
48 1 12 11
48 1 17 12.75
24 2 6 10.5
24 2 12 11
24 2 17 12.75
12 4 6 10.5
12 4 12 11
12 4 17 12.75
Auto-Reload Value CCR Duty Ratio (%) Total Pins RAM Utilization (R%)
48 5 10 6 10.55
48 5 10 12 11
48 5 10 17 12.75
48 24 50 6 10.55
48 24 50 12 11
48 24 50 17 12.75
48 38 80 6 10.55
48 38 80 12 11
48 38 80 17 12.75
3. Measurement Setup
The conducted emission measurement setup comprised the STM32 microcontroller
board as the device under test (DUT), powered by a constant 5 V DC supply from a Rigol
DP832 programmable DC power supply. Power and ground pins were connected to two
Line Impedance Stabilization Networks (LISNs) from Scientific. The conducted emissions
were measured at the LISN connected to the power supply line and observed using a
Rohde & Schwarz FPC1000 spectrum analyzer (Model: 102718/002), functioning as an
EMI receiver. The ground pin of the DUT was connected to the LISN, while the LISN’s
output port was terminated with a 50 Ω impedance. The setup followed the CISPR 25
standard [29], with some modifications. As per the standard, the cable between the DUT
and LISN was 20 cm in length, and the DUT was positioned 5 cm above a grounded metal
table using a Styrofoam sheet for insulation. The measurements were performed in a closed,
unshielded room. However, the measurement table was properly grounded to minimize
interference and ensure measurement consistency.
A logarithmic frequency sweep was performed using the spectrum analyzer from
1 MHz to 500 MHz. The resolution bandwidth (RBW) was set to 1 kHz to accurately capture
small emission peaks, and the total sweep duration was approximately 111.1 seconds. Our
analysis of the STM32 microcontroller showed no significant emissions above 500 MHz,
which is why this frequency was chosen as the upper limit for this study. The complete
laboratory setup is shown in Figure 2.
Electronics 2025, 14, 1511 8 of 21
Figures 3 and 4 show examples of the conducted emissions. Since the STM32 board’s
main microcontroller is the only switching source on the board, the emission signatures
observed on the spectrum analyzer originate solely from the microcontroller IC. Figure 3
displays the emission spectrum from a 9 × 9 matrix multiplication with an 8 MHz clock
frequency, zoomed in between 7 MHz and 500 MHz. The spectrum shows peaks at the
8 MHz clock frequency and its harmonics, as RAM operation occurs at the system clock
frequency. Some harmonics fall below the noise floor and are not visible—such small and
insignificant peaks are ignored in further analysis.
Similarly, Figure 4 shows the emission spectrum due to the GPIO switching program.
In this program, GPIO switching occurs at a 1 MHz frequency for a PWM signal of 80% duty
ratio on 12 pins of the microcontroller. In this figure, the emission spectrum is observed
from 7 MHz to 500 MHz. It shows peaks at the harmonics of 1 MHz due to GPIO switching,
along with peaks corresponding to the clock frequencies at 8 MHz.
4. Methodology
4.1. Estimation of Emission Bounds
In this section, we propose a method to determine the upper and lower emission
bounds (in dBµV) that define a 95% confidence interval for emission signatures across the
given set of measurements. For example, using the measurements from Section 2, this
method can identify the confidence bounds for emissions as a function of frequency for
the STM32 microcontroller board. For this analysis, we sample the emission spectrum at
1 MHz intervals, extract the emission peaks, and create emission envelopes by interpolating
between these peaks over a frequency range of 1–500 MHz. These envelopes are then used
for the calculation of the bounds.
In calculating the bounds, we first determine which programs should be considered
and how many of them are required. This is achieved by conducting a principal component
analysis [30] to identify the programs that primarily influence the variance in emissions.
Based on such programs, we create combinations of emission envelopes from the experi-
ments performed in Section 2 and compute the bounds. Combinations that conform to the
95% confidence interval are considered good samples for computing the emission bounds
for the microcontroller. This means that the test signal remains within the bounds 95% of
the time.
To identify the programs that contribute most to the variance in emissions, let Y be a
matrix representing the emission envelope such that Y ∈ R M× N , where M is the number of
frequency points, and N is the number of programs. The mean of the emissions due to all
N programs at any frequency point m is
N
1
ȳm =
N ∑ Ymn ∈ R M (3)
n =1
Let Ȳ be a mean-centered matrix, where each element is defined as ȳmn = ymn − ȳm .
The covariance matrix R of Y is given by
1
R= (Ȳ · Ȳ T ) ∈ R M× M (4)
N
Applying Singular Value Decomposition (SVD) [30], a technique used to decompose a
matrix into its singular values and vectors, we diagonalize the covariance matrix R, which
is a positive semi-definite matrix such that
R = U · Σ · UT (5)
Pk = [U : λ >= 1] ∈ R M (6)
Electronics 2025, 14, 1511 10 of 21
In Figure 5, from the emission envelopes measured for STM32, we select the first
four most significant principal components, P1:4 , as they collectively explain 85% of the
variance in the dataset. The programs are sequentially indexed along the X-axis (Program
1 to Program 67), with the Y-axis displaying the corresponding principal component
coefficients. The first 49 programs correspond to RAM utilization (Table 1), while the
remaining 18 involve GPIO switching (Tables 2 and 3). The principal component coefficients
show minimal variation for the RAM programs, whereas significant variation is observed
for the GPIO programs. To compute the upper and lower bounds of the emissions, we
use emission envelopes from both the RAM utilization and GPIO switching programs. To
better capture the larger variation in the GPIO programs, the combination includes a higher
proportion of them.
such that {i1 , i2 , ..., ik } ⊆ {1, 2, ..., r }, which represents k vectors chosen from the first r
emission vectors of the RAM programs. Similarly, we choose matrix B:
k+q
1
µm =
k+q ∑ Zmj for m = 1, ..., M (10)
j =1
v
u
u 1 k+q
σm = t
k+q ∑ (Zmj − µm )2 for m = 1, ..., M (11)
j =1
For the calculation of the emission bounds, we assume the combination of emissions to
be distributed using Student’s t-distribution [32], which is a suitable assumption for small-
sized samples. For Student’s t-distribution, for every frequency point in Z, characterized
by certain degrees of freedom and confidence intervals, the upper bound (lu ) and lower
bound (ll ) within which the emissions will lie are defined such that
√ M
lu = [µm + tα/2 · 1 + 1/n · σm ]m =1 (12)
√ M
ll = [µm − tα/2 · 1 + 1/n · σm ]m =1 (13)
where tα/2 is the t-value with (n−1) degrees of freedom and a (1−α) confidence level. To
validate the emission band computation, a test signal is chosen: ztest = Y(:,j) , where j is
chosen at random from {1, 2, ..(k + q)}. ztest is omitted from Y while computing ll and lu .
Later, ztest is compared with ll and lu to check the following:
All RAM and GPIO program combinations (k, q) that satisfy Equation (14) from the
matrix Z are considered good samples to estimate the upper and lower bounds. Further,
the lu and ll of these samples represent the upper and lower emission bounds with 95%
confidence for the microcontroller.
y = w⊤ ϕ + ϵ (15)
where ϕ represents the basis function in X, and w is a weight matrix such that w ∈ RP . In
our previous work [21], we modeled ϕ as a function that decomposes the emissions y into
basis vectors, with the weights w assumed to be proportional to the percentage of RAM
utilization, provided that all programs operated at a fixed clock frequency. When extending
this approach to accommodate multiple program configurations, X must be clustered into
groups with a constant clock frequency and variable RAM utilization. Basis vectors should
be derived for each group, and y is estimated accordingly. In each case, the relationship
between the weights w and RAM utilization percentage must be determined. For pro-
Electronics 2025, 14, 1511 12 of 21
y = w⊤ X + ϵ (16)
where w is a weight matrix such that w ∈ RP . The noise in the measurement is modeled
as a Gaussian variable ϵ of the form ϵ ∼ N (0, β−1 I), where β−1 is the variance in noise.
Assume that the model has K clusters. Each cluster is modeled using linear regression with
weights wk . The mixing coefficient for each cluster is denoted by πk . The model is required
to learn the following parameters:
1. The weight matrix w, such that w ∈ RP×K .
2. The mixing coefficients π, such that π ∈ RK .
3. The noise variance β−1 (also called a precision parameter and considered the same for
all clusters).
With the above parameters, the likelihood function is written as
where θ contains all the adaptive parameters. θ = {πk , wk , β−1 I}kK=1 . Further taking logs
on both sides,
N K
log p(y | θ) = ∑ log ∑ πk · N (yn | w⊤k Xn , β−1 I) (18)
n =1 k =1
To find the optimal values of the parameters in θ, we use the expectation maximization
(EM) algorithm. This algorithm maximizes the log-likelihood function from Equation (18).
For the initialization of θ, we assume a uniform distribution for π such that program emis-
sion peaks belong to each cluster with equal likelihood. Therefore, π = [1/k, 1/k, ...1/k ]
(K times). The weights, wk, are initialized randomly multiple times, and the weights that
lead to the smallest training error are chosen. Furthermore, the precision parameter β is
initialized to 1.
Electronics 2025, 14, 1511 13 of 21
In the expectation calculation (E) step, the likelihood of every emission peak yn
belonging to a cluster k is given by
p(yn | hk ) = N (yn | w⊤ −1
k Xn , β ) (19)
πk · N (yn | w⊤ −1
k Xn , β )
γnk = (20)
∑kK=1 πk · N (yn | w⊤ −1
k Xn , β )
For the maximization (M) step, the values of πk , wk and β are updated using a
closed-form solution to the EM algorithm such that the log-likelihood of Equation (18) is
maximized [26].
1 N
N n∑
πk = · γnk (21)
=1
w k = ( X ⊤ · R k · X ) −1 · X ⊤ · R k · y (22)
1 1 N K
N n∑ ∑ γnk · (yn − wk ⊤ Xn )2 .
= · (23)
β =1 k =1
K
ŷtest = ∑ πk · w⊤k · Xtest (24)
k =1
This procedure is repeated over all frequency points M to estimate the emission peaks
over the entire frequency spectrum. The metrics chosen to evaluate model performance
are the root mean squared error (RMSE) and the R2 score. The root mean squared error is
calculated as v
u1 M
u
M i∑
e=t (ytest,i − ŷtest,i )2 (25)
=1
Further, the R2 score is a measure of variance in the data explained by the model. Let
ȳtest be the mean, and let ŷtest be the estimated value of the test data ytest . Then, the R2
score for model testing is given by
∑ N × M (ytest − ŷtest )2
R2score, testing = 1 − (26)
∑ N × M (ytest − ytest )2
belonging to a cluster while it also increases the complexity of the model. To address this
trade-off, we use the Bayesian Information Criterion (BIC) [26], which rewards the increased
likelihood and penalizes the model complexity due to the addition in the number of clusters.
The overall BIC score, computed with the optimal parameters θopt , is expressed as
Figure 6. The green region represents samples that satisfy the criterion of the 95% confidence interval.
The region containing the suitable combinations (or good samples) of RAM and
GPIO programs, which ensure adherence to the 95% confidence criterion, is highlighted in
Figure 6. Any combination within the highlighted area can be used to randomly select the
corresponding number of RAM and GPIO programs and compute the emission bounds
with 95% confidence. For instance, in Figure 7, the emission bounds are calculated using
five RAM and sixteen GPIO programs. The test signal fits well within the computed
bounds across the entire frequency range. Based on the upper bound, we infer that the
microcontroller’s conducted emissions (CEs) remain at nearly 40 dBµV up to 40 MHz,
Electronics 2025, 14, 1511 15 of 21
decrease to 30 dBµV up to 200 MHz, and further drop to 20 dBµV up to 500 MHz, with
95% confidence, for any of the programs described in the design of experiments.
Figure 7. Upper and lower limit bands with test signal peaks from 1 to 500 MHz.
The optimal model is determined by the smallest BIC score, and, based on the observed
trend, K = 9 clusters are selected as the best model. Using K = 9, a conditional mixture
Electronics 2025, 14, 1511 16 of 21
model is created following Equations (17)–(23). The expectation (E) and maximization
(M) steps are repeated until the model converges. Upon convergence, the EM algorithm
maximizes the log-likelihood. Figure 9 illustrates the log-likelihood observed over eight
iterations for three frequency points (8 MHz, 40 MHz, and 120 MHz), showing stabilization
at a maximum value, which confirms the model convergence.
Figure 9. Log-likelihood values over iteration count for frequency points 8 MHz, 40 MHz, and
120 MHz.
For model building and validation, 80% of the total dataset is used for training the
model, while the remaining 20% of the data are used for testing the model. The train-
ing phase involves estimating the model parameters at each frequency point—wk , πk ,
and β—using Equations (19)–(23), as outlined in Section 4.2. Once trained, the emission
peaks of the test data are predicted using Equation (24). The performance of the model
is evaluated using two key metrics, namely, the 2-norm error and R2 score, computed
through Equations (25) and (26). During training, the model achieves a root mean squared
error of 3.35 dBµV and an R2 score of 0.79, indicating a good fit for the training data. For
testing, the root mean squared error increases slightly to 4.45 dBµV, with an R2 score of 0.66,
reflecting the model’s ability to generalize to unseen data or predict the emission peaks
of the configurations of a new program. Figure 10 presents a comparison of the predicted
emission peaks and the actual values (in dBµV) for both the training and testing datasets,
demonstrating the model’s predictive accuracy across the entire frequency range.
Figure 10. Predicted vs. actual emission peaks values in (a) training dataset and (b) testing dataset.
Electronics 2025, 14, 1511 17 of 21
Figure 11. Predicted vs. actual emission peaks of a RAM-based program from the testing dataset.
Figure 12. Predicted vs. actual emission peaks of a GPIO-based program from the testing dataset.
(a) For frequencies up to 200 MHz, (b) For frequencies beyond 200 MHz on a linear x-axis.
The conditional mixture model is also used to explain the presence of different clusters
in the input space. Figure 13a shows the emission peaks at 8 MHz for various programs
in the training dataset. Similarly, Figure 13b plots the likelihood function p(y|hk ) against
Electronics 2025, 14, 1511 18 of 21
the emission peaks y in dBµV at 8 MHz. Each curve in Figure 13b represents a probability
distribution for a different statistical cluster K, which, in reality, may correspond to distinct
sets of input variables or program configurations. The training dataset includes a mix of
RAM-based and GPIO-based programs. As indicated in Figure 5, RAM-based programs
generally produce emission peaks with minimal variation. Changes in clock frequency
or enabling the PLL has a smaller influence on emissions. However, GPIO parameters,
such as the switching frequency and duty ratio, have a larger effect on emission peaks.
In Figure 13a, we observe a cluster of emission peaks around 20 dB, forming a dense
data cloud likely attributed to the RAM-based programs. This is reflected in Figure 13b,
where four probability curves p(y|hk ) are centered around 20 dB with varying standard
deviations. In contrast, the emission peaks exceeding 30 dB in Figure 13a exhibit greater
scatter, indicating higher variance, likely due to the GPIO-based programs. These higher
emission peaks correspond to probability distributions with greater variance, forming five
distinct clusters. Each program’s emission can belong to one or more clusters with different
probabilities.
Figure 13. (a) Predicted vs. actual conducted emissions y at 8 MHz. (b) Probability distribution of y
for different clusters.
6. Conclusions
Microcontroller interactions are inherently complex, involving multiple power do-
mains, power rails, and high-frequency parasitic effects. Various functional blocks con-
tribute to emissions, and electromagnetic coupling between different power paths results
in a superposition of noise at the LISN voltage. Developing a deterministic, physics-
based model to capture these interactions for different programs is challenging. Therefore,
this paper presents a measurement-based stochastic approach to characterize conducted
emissions, represented by the LISN voltage of a programmable microcontroller. While
several inter-IC interactions influence emissions, certain effects remain consistent for sim-
ilar programs, and within the same IC, parasitic or power rail interactions exhibit the
same behavior. The proposed statistical model captures all such aspects and encodes the
effects as statistical features (weights and mixing coefficients) for a program configuration.
Consequently, the model parameters derived from these methods are specific to a given
board, IC, and frequency.
The proposed methodology is validated using an STM32 microcontroller, covering a
broad range of operating conditions. We vary RAM utilization and clock frequencies and
enable/disable the phase-locked loop (PLL) circuit. Additionally, we activate I/O ports by
inducing the state transitions of pins via timer programs and analyze their impact on the
conducted emissions.
To address the characterization of programmable devices in conducted emission tests,
we propose a procedure to compute the upper and lower emission bounds with 95%
confidence. These bounds are derived from emission envelopes corresponding to various
Electronics 2025, 14, 1511 19 of 21
program configurations. Importantly, the methodology identifies the minimal set of 20–25
programs required to compute these bounds for the STM32 device under test, avoiding
the need to test thousands of programs to account for all possible emission signatures.
Furthermore, we propose a machine learning framework called the conditional mixture
model, specifically chosen for the better explainability of new programs with specific
configurations. We predict the emission peaks of a new program up to 500 MHz with an
RMSE of ±4 dB. Considering that conducted emission measurements of the same device
across different labs can vary by 3–5 dB [33], this level of accuracy is highly practical. The
proposed model not only provides accurate predictions but also offers statistical insights
into the data clusters, which correspond to known program distinctions, such as RAM-
based versus GPIO-based programs. This dual capability of prediction and explainability
enhances the method’s utility.
Future work will explore additional program parameters beyond those considered
in this study. We also aim to validate this approach on a broader range of microcontroller
devices, including automotive-grade MCUs and different architectures, to confirm the
model’s generalizability and conduct extensive measurements to ensure consistent model
performance. While this study focuses on emissions up to 500 MHz, more powerful digital
ICs may exhibit significant emission peaks beyond this range under different operating con-
ditions. Notably, the proposed statistical methodology is frequency-independent, allowing
for its extension to a broader spectrum in future work. However, accurate techniques must
be carefully developed to ensure the reproducibility of conducted emission measurements
at higher frequencies (>500 MHz), where radiated emissions become more prominent. The
methodology could be applied to characterize the emissions of any device where varying
operating conditions influence emissions. While the influencing variables may differ across
devices, the approach remains generalizable.
In this study, we focus on characterizing the LISN voltage of a microcontroller PCB
based on program configurations. Future work will involve de-embedding the CE test
setup, including the cables and LISN, to derive the equivalent board-level source model,
the EBEM, between the power and the ground. Modeling an ECU requires an IC-level
representation of the microcontroller’s noise source between its power and ground pin(s).
To achieve this, we propose further de-embedding of PCB traces to obtain the ICEM-CE
source model. This IC-level model can then be integrated into any ECU board where the
microcontroller is deployed, capturing program-dependent emissions within a simulation
environment. Once the ECU board’s equivalent noise source model is established, it can be
combined with electromagnetic models of other electronic boards, such as power converters
and communication modules, enabling a comprehensive analysis of the electromagnetic
interactions within the vehicle environment.
Author Contributions: Conceptualization, A.G., J.H. and D.G.; methodology, A.G. and J.H.; software,
A.G. and J.H.; validation, A.G. and J.H.; formal analysis, A.G. and J.H.; investigation, A.G. and
J.H.; resources, D.G., J.H. and V.D.; data curation, A.G.; writing—original draft preparation, A.G.;
writing—review and editing, A.G., J.H. and D.G.; visualization, A.G.; supervision, J.H., D.G. and V.D.;
project administration, J.H. and D.G.; funding acquisition, V.D. All authors have read and agreed to
the published version of the manuscript.
Funding: This work was supported by Mercedes Benz Research and Development, India, and the
Indian Institute of Science, Bangalore, for research on method development for modeling automotive
electromagnetic emissions. We gratefully acknowledge the financial support from the Austrian
Federal Ministry for Digital and Economic Affairs, the National Foundation for Research, Technology
and Development, and the Christian Doppler Research Association.
Electronics 2025, 14, 1511 20 of 21
Data Availability Statement: The raw data supporting the conclusions of this article will be made
available by the authors on request.
Acknowledgments: We thank Tobias Leitgeb from Technical University, Graz, for input on mixture
model techniques.
Conflicts of Interest: Authors Aishwarya Gavai and Vivek Dhoot were employed by the company
Mercedes Benz Research and Development. Author Dipanjan Gope was employed by the company
Simyog Technology Pvt. Ltd. The remaining authors declare that the research was conducted in the
absence of any commercial or financial relationships that could be construed as a potential conflict
of interest.
References
1. Paul, C.R.; Scully, R.C.; Steffka, M.A. Introduction to Electromagnetic Compatibility; John Wiley & Sons: Hoboken, NJ, USA, 2022.
2. Kharanaq, F.A.; Emadi, A.; Bilgin, B. Modeling of conducted emissions for EMI analysis of power converters: State-of-the-art
review. IEEE Access 2020, 8, 189313–189325. [CrossRef]
3. Trinchero, R.; Stievano, I.S.; Canavero, F.G. Enhanced time-invariant linear model for the EMI prediction of switching circuits.
IEEE Trans. Electromagn. Compat. 2020, 62, 2294–2302. [CrossRef]
4. Stievano, I.S.; Rigazio, L.; Canavero, F.G.; Cunha, T.R.; Pedro, J.C.; Teixeira, H.M.; Girardi, A.; Izzi, R.; Vitale, F. Behavioral
modeling of IC memories from measured data. IEEE Trans. Instrum. Meas. 2011, 60, 3471–3479. [CrossRef]
5. Ghfiri, C.; Durier, A.; Marot, C.; Boyer, A.; Ben Dhia, S. Modeling the internal activity of an FPGA for conducted emission
prediction purpose. In Proceedings of the 2018 IEEE International Symposium on Electromagnetic Compatibility and 2018 IEEE
Asia-Pacific Symposium on Electromagnetic Compatibility (EMC/APEMC), Suntec City, Singapore, 14–18 May 2018; pp. 309–314.
6. IEC SC47A/WG9; Models of Integrated Circuits for EMI Behavioral Simulation. International Electrotechnical Commission (IEC):
Geneva, Switzerland, 1997.
7. Labussière-Dorgan, C.; Bendhia, S.; Sicard, E.; Tao, J.; Quaresma, H.J.; Lochot, C.; Vrignon, B. Modeling the electromagnetic
emission of a microcontroller using a single model. IEEE Trans. Electromagn. Compat. 2008, 50, 22–34. [CrossRef]
8. Leca, J.P.; Froidevaux, N.; Dupré, P.; Jacquemod, G.; Braquet, H. EMI measurements, modeling, and reduction of 32-Bit
high-performance microcontrollers. IEEE Trans. Electromagn. Compat. 2014, 56, 1035–1044. [CrossRef]
9. Serpaud, S.; Levant, J.L.; Poiré, Y.; Meyer, M.; Tran, S. ICEM-CE extraction methodology. In Proceedings of the EMC Compo,
Toulouse, France, 17–19 November 2009.
10. Yuan, S.Y.; Liao, S.S. Automatic conducted-EMI microcontroller model building. In Proceedings of the 2013 9th International
Workshop on Electromagnetic Compatibility of Integrated Circuits (EMC Compo), Nara, Japan, 15–18 December 2013; pp. 138–141.
11. Ghfiri, C.; Boyer, A.; Durier, A.; Dhia, S.B. A new methodology to build the internal activity block of ICEM-CE for complex
integrated circuits. IEEE Trans. Electromagn. Compat. 2017, 60, 1500–1509. [CrossRef]
12. Yuanhao, L.; Shuguo, X.; Yishu, C. A new methodology to build the ICEM-CE model for microcontroller units. In Proceedings
of the 2021 IEEE International Workshop on Electromagnetics: Applications and Student Innovation Competition (iWEM),
Guangzhou, China, 28–30 November 2021; pp. 1–3.
13. Ramdani, M.; Sicard, E.; Boyer, A.; Dhia, S.B.; Whalen, J.J.; Hubing, T.H.; Coenen, M.; Wada, O. The electromagnetic compatibility
of integrated circuits—Past, present, and future. IEEE Trans. Electromagn. Compat. 2009, 51, 78–100. [CrossRef]
14. Baharuddin, M.H.; Islam, M.T.; Yuwono, T.; Smartt, C.J.; Thomas, D.W. Impact of Mode of Operations on the Electromagnetic
Emissions of a Complex Electronic Device. In Proceedings of the 2020 IEEE International RF and Microwave Conference (RFM),
Kuala Lumpur, Malaysia, 14–16 December 2020; pp. 1–4.
15. Fiori, F.; Musolino, F. Analysis of EME produced by a microcontroller operation. In Proceedings of the Design, Automation and
Test in Europe, Conference and Exhibition 2001, Munich, Germany, 13–16 March 2001; pp. 341–345.
16. Yuan, S.Y.; Tang, Y.C.; Chen, C.C. Software-related EMI test pattern auto-generation for 2-stage pipeline microcontroller. In
Proceedings of the 2015 IEEE Symposium on Electromagnetic Compatibility and Signal Integrity, Santa Clara, CA, USA, 15–21
March 2015; pp. 306–309.
17. Chen, J.; Portillo, S.; Heileman, G.; Hadi, G.; Bilalic, R.; Martínez-Ramón, M.; Hemmady, S.; Schamiloglu, E. Time-varying
radiation impedance of microcontroller GPIO ports and their dependence on software instructions. IEEE Trans. Electromagn.
Compat. 2022, 64, 1147–1159. [CrossRef]
18. Wada, O.; Saito, Y.; Nomura, K.; Sugimoto, Y.; Matsushima, T. Power supply current analysis of micro-controller with considering
the program dependency. In Proceedings of the 2011 8th Workshop on Electromagnetic Compatibility of Integrated Circuits,
Dubrovnik, Croatia, 6–9 November 2011; pp. 93–98.
Electronics 2025, 14, 1511 21 of 21
19. Yuan, S.Y.; Chung, H.E.; Liao, S.S. A microcontroller instruction set simulator for EMI prediction. IEEE Trans. Electromagn.
Compat. 2009, 51, 692–699. [CrossRef]
20. Sicard, E.; Bouhouch, L. Using ICEM Model Expert to Predict TC1796 Conducted Emission. Available online: http://www.ic-
emc.org/appnotes/Ic-Emc-Application-Note-Tricore-v2.pdf (accessed on 7 April 2025).
21. Gavai, A.; Hansen, J.; Dhoot, V.; Gope, D. Stochastic modeling of microcontroller emission. In Proceedings of the 2023 IEEE 32nd
Conference on Electrical Performance of Electronic Packaging and Systems (EPEPS), Milpitas, CA, USA, 15–18 October 2023;
pp. 1–3.
22. Leoni, J.; Breschi, V.; Formentin, S.; Tanelli, M. Explainable data-driven modeling via mixture of experts: Towards effective
blending of gray and black-box models. Automatica 2025, 173, 112066. [CrossRef]
23. Mulwa, M.M.; Mwangi, R.W.; Mindila, A. GMM-LIME explainable machine learning model for interpreting sensor-based human
gait. Eng. Rep. 2024, 6, e12864. [CrossRef]
24. Alangari, N.; Menai, M.E.B.; Mathkour, H.; Almosallam, I. Intrinsically Interpretable Gaussian Mixture Model. Information 2023,
14, 164. [CrossRef]
25. Bishop, C.M. Mixture Models and the EM Algorithm; Microsoft Research: Cambridge, UK, 2006.
26. Bishop, C.M.; Nasrabadi, N.M. Pattern Recognition and Machine Learning; Springer: Berlin/Heidelberg, Germany, 2006; Volume 4.
27. Gavai, A.; Gope, D.; Dhoot, V.; Hansen, J. Electronic Board Emission Model and its Application for Microcontroller Emission.
In Proceedings of the 2024 IEEE Joint International Symposium on Electromagnetic Compatibility, Signal & Power Integrity:
EMC Japan/Asia-Pacific International Symposium on Electromagnetic Compatibility (EMC Japan/APEMC Okinawa), Okinawa,
Japan, 20–24 May 2024; pp. 587–590.
28. STMicroelectronics. Arm® -Based 32-Bit MCU, up to 128 KB Flash, Crystal-Less USB FS 2.0, CAN, 12 Timers, ADC, DAC &
comm. Interfaces, 2.0–3.6 V. Technical Report, STMicroelectronics, 2019. STM32F072x8/xB Datasheet, Rev 6. Available online:
https://www.st.com/resource/en/datasheet/stm32f072c8.pdf (accessed on 7 April 2025).
29. CISPR 25:2021; Vehicles, Boats, and Internal Combustion Engines—Radio Disturbance Characteristics—Limits and Methods of
Measurement for the Protection of on-Board Receivers Apparatus. International Electrotechnical Commission (IEC): Geneva,
Switzerland, 2021.
30. Lang, S. Introduction to Linear Algebra; Springer: Berlin/Heidelberg, Germany, 2012.
31. Dutta, S.; Gandomi, A.H. Design of experiments for uncertainty quantification based on polynomial chaos expansion metamodels.
In Handbook of Probabilistic Models; Elsevier: Amsterdam, The Netherlands, 2020; pp. 369–381.
32. Walpole, R.E.; Myers, R.H.; Myers, S.L.; Ye, K. Probability and Statistics for Engineers and Scientists; Macmillan: New York, NY, USA,
1993; Volume 5.
33. CISPR 16-4-2; Specification for Radio Disturbance and Immunity Measuring Apparatus and Methods—Part 4-2: Uncertainties,
Statistics and Limit Modeling—Measurement Instrumentation Uncertainty. International Electrotechnical Commission (IEC):
Geneva, Switzerland, 2011.
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual
author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to
people or property resulting from any ideas, methods, instructions or products referred to in the content.