X-OPM: Explainable Automatic Digital On-Chip Power Modeling for Enhanced Robustness
Organizations: Department of Electronic and Computer Engineering, The Hong Kong University of Science and Technology, Hong Kong · Huazhong Agricultural University, Wuhan, China
Abstract
Proactive power management systems reduce processor dynamic power through runtime power prediction and power-aware scheduling. Accurate, stable and low-overhead digital on-chip power meters (OPMs) are crucial for improving the prediction quality. Recent studies have explored various modeling methods, including using linear models, decision trees, and multi-layer perceptrons (MLPs) to construct OPMs. However, most current approaches train models end-to-end without analyzing the physical interpretability of features, affecting their ability to generalize to unseen workloads. Grounded in the design principles of synchronous digital VLSI circuits, X-OPM introduces a robust feature engineering framework that uses tree-based models to capture feature interactions and linear models for prediction. It also incorporates a human-in-the-loop workflow to balance model accuracy against modeling effort. Evaluated on a commercial C906 vector processor, X-OPM consistently achieves across all workloads with sampling window size set below cycles. In contrast, state-of-the-art methods including APOLLO, COBIT, and standard MLPs fail to generalize across all test cases. Layout with commercial EDA tools shows that X-OPM incurs an area overhead below , which is on par with lightweight tree-based and linear models, and significantly smaller than MLP-based models.
Figures & tables
| Category | Naming Convention | Post-processing * | Power Behavior |
| Control | *_busy *_stall *_clk_en | Split signals into single-bit and invert the one that is negatively correlated with power | Positively correlated with power |
| Config. | *_mode *_sel *_cfg | Decimal to one-hot | Non-linear and requires feature interaction |
| Data | *_data *_bus | Calculates Hamming distance ( ) between consecutive cycles | is positively correlated with power |
| * Binning can be applied to all categories. | |||
| Category | Verification Purpose | Example |
|---|---|---|
| Direct | Stimulate a target module or function to check its correctness | Issue one instruction to check the functional correctness of the processor |
| Random | Randomize simulation parameters to uncover corner-case bugs | Randomly issue instructions to check the in-order retirement of an out-of-order processor |
| Benchmark | Check the architectural model’s performance matches with the RTL implementation | CoreMark [ 25 ] for CPUs or a complete neural network inference for GPUs |