\XtoCVerification{RateLimiter Float32 CPU dsPIC33EP256MC502}
\begin{tabular}{l l}
\textbf{Date of Test} & 2026-06-19 \\
\textbf{Target controller} & dsPIC33EP256MC502 \\
\end{tabular}
\vspace{1ex}
\XtoCTestCase{Inport test}{1}
Inport test for General block RateLimiter.

\vspace{1em}
\begin{tblr}{width=\textwidth, colspec={|c|c|c|X[c]|c|}}
\hline
\SetRow{lightgray} \SetCell[c=5]{l} \textbf{Test results} \\ \hline
\textbf{Time step} & 1 & 2 & ... & 213 \\ \hline
\textbf{CPU cycles} & 71 & 71 & ... & 809 \\ \hline
\SetRow{lightgray!50} \SetCell[c=5]{l} \textit{Inputs} \\ \hline
\textbf{In (DSP)} & 0 & -1 & ... & -0.8 \\ \hline
\textbf{Init (DSP)} & 0 & 0.3 & ... & 0.3 \\ \hline
\textbf{Enable (DSP)} & 0 & 0 & ... & 1 \\ \hline
\textbf{In} & 0 & -1 & ... & -0.8 \\ \hline
\textbf{Init} & 0 & 0.3 & ... & 0.3 \\ \hline
\textbf{Enable} & 0 & 0 & ... & 1 \\ \hline
\SetRow{lightgray!50} \SetCell[c=5]{l} \textit{Parameters} \\ \hline
\textbf{Tr} & \SetCell[c=4]{c}0.01 \\ \hline
\textbf{Tf} & \SetCell[c=4]{c}0.03 \\ \hline
\textbf{ts\_fact} & \SetCell[c=4]{c}1 \\ \hline
\SetRow{lightgray!50} \SetCell[c=5]{l} \textit{Outputs} \\ \hline
\textbf{Out} & 0 & -1 & ... & 0.423 \\ \hline
\textbf{Exp. Out} & 0 & -1 & ... & 0.423 \\ \hline
\textbf{Out (DSP)} & 0 & -1 & ... & 0.423 \\ \hline
\textbf{Exp. Out (DSP)} & 0 & -1 & ... & 0.423 \\ \hline
\end{tblr}
\vspace{1ex}

\begin{XtoCtabular}{Test settings}
Tolerance Out & $\pm$1,9558e-07 ($\pm$420 LSB) \\ \hline
\end{XtoCtabular}

\begin{XtoCtabular}{Test statistics}
Min CPU cycles & 71 \\ \hline
Max CPU cycles & 849 \\ \hline
Avg CPU cycles & 545 \\ \hline
\end{XtoCtabular}
\XtoCTestCase{Conversion test}{1}
Conversion test for General block RateLimiter.

\vspace{1em}
\begin{tblr}{width=\textwidth, colspec={|c|c|c|X[c]|c|}}
\hline
\SetRow{lightgray} \SetCell[c=5]{l} \textbf{Test results} \\ \hline
\textbf{Time step} & 1 & 2 & ... & 37 \\ \hline
\SetRow{lightgray!50} \SetCell[c=5]{l} \textit{Mask parameters} \\ \hline
\textbf{Tr} & -10 & -9.444 & ... & 10 \\ \hline
\textbf{Tf} & -9 & -8.5 & ... & 9 \\ \hline
\textbf{ts\_fact} & 3 & 3 & ... & 3 \\ \hline
\SetRow{lightgray!50} \SetCell[c=5]{l} \textit{Controller parameters} \\ \hline
\textbf{RateUp} & 1 & 1 & ... & 0 \\ \hline
\textbf{RateDown} & 1 & 1 & ... & 0 \\ \hline
\textbf{Exp. RateUp} & 1 & 1 & ... & 0 \\ \hline
\textbf{Exp. RateDown} & 1 & 1 & ... & 0 \\ \hline
\end{tblr}
\vspace{1ex}

\begin{XtoCtabular}{Test settings}
Tolerance RateUp & $\pm$0,0000e+00 \\ \hline
Tolerance RateDown & $\pm$0,0000e+00 \\ \hline
\end{XtoCtabular}
\XtoCTestCase{Conversion-on-Target test}{1}
Conversion-on-Target test for General block RateLimiter.

\vspace{1em}
\begin{tblr}{width=\textwidth, colspec={|c|c|c|X[c]|c|}}
\hline
\SetRow{lightgray} \SetCell[c=5]{l} \textbf{Test results} \\ \hline
\textbf{Time step} & 1 & 2 & ... & 37 \\ \hline
\SetRow{lightgray!50} \SetCell[c=5]{l} \textit{Mask parameters} \\ \hline
\textbf{Tr} & -10 & -9.444 & ... & 10 \\ \hline
\textbf{Tf} & -9 & -8.5 & ... & 9 \\ \hline
\textbf{ts\_fact} & 3 & 3 & ... & 3 \\ \hline
\SetRow{lightgray!50} \SetCell[c=5]{l} \textit{Controller parameters} \\ \hline
\textbf{RateUp} & 1 & 1 & ... & 0 \\ \hline
\textbf{RateDown} & 1 & 1 & ... & 0 \\ \hline
\textbf{Exp. RateUp} & 1 & 1 & ... & 0 \\ \hline
\textbf{Exp. RateDown} & 1 & 1 & ... & 0 \\ \hline
\end{tblr}
\vspace{1ex}

\begin{XtoCtabular}{Test settings}
Tolerance RateUp & $\pm$3,0000e-09 \\ \hline
Tolerance RateDown & $\pm$3,0000e-09 \\ \hline
\end{XtoCtabular}

\begin{XtoCtabular}{Test statistics}
Min CPU cycles & 3463 \\ \hline
Max CPU cycles & 4224 \\ \hline
Avg CPU cycles & 4149 \\ \hline
\end{XtoCtabular}
