power-analysis

FPGA power estimation and optimization skill for low-power design

509 stars

Best use case

power-analysis is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

FPGA power estimation and optimization skill for low-power design

Teams using power-analysis should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/power-analysis/SKILL.md --create-dirs "https://raw.githubusercontent.com/a5c-ai/babysitter/main/library/specializations/fpga-programming/skills/power-analysis/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/power-analysis/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How power-analysis Compares

Feature / Agentpower-analysisStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

FPGA power estimation and optimization skill for low-power design

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Power Analysis Skill

## Overview

Expert skill for FPGA power estimation and optimization, enabling low-power design through analysis and targeted optimization techniques.

## Capabilities

- Run power estimation tools (Vivado Power Estimator)
- Analyze static and dynamic power
- Identify high-power consumption areas
- Apply clock gating and enable strategies
- Optimize switching activity
- Configure power domains
- Estimate power from simulation activity
- Generate power reports

## Target Processes

- power-analysis-optimization.js
- synthesis-optimization.js
- clock-network-design.js

## Usage Guidelines

### Power Components
- **Static Power**: Leakage, always present when powered
- **Dynamic Power**: Switching activity, proportional to frequency
- **I/O Power**: External interface drivers
- **Clock Network Power**: Distribution network switching

### Analysis Flow
1. Early estimation with Xilinx Power Estimator (XPE)
2. Post-synthesis power analysis
3. Simulation-based activity annotation (SAIF)
4. Post-implementation power analysis
5. Hardware measurement validation

### Optimization Techniques
- **Clock Gating**: Disable clocks to unused logic
- **Enable Gating**: Use clock enables vs. clock gating
- **Voltage Scaling**: Use lower voltage when possible
- **Frequency Scaling**: Reduce clock where margin exists
- **Logic Optimization**: Minimize switching activity

### Clock Enable Strategy
```verilog
always_ff @(posedge clk)
  if (enable)
    data_reg <= data_in;
```

### Activity Reduction
- Avoid unnecessary toggling
- Initialize registers to reduce X propagation
- Use Gray coding for counters
- Gate outputs of unused modules

### Thermal Considerations
- Identify thermal hotspots
- Plan for cooling requirements
- Consider ambient temperature range
- Design thermal margin

## Dependencies

- Power analysis tool integration
- Thermal analysis awareness
- Activity file generation (SAIF/VCD)

Related Skills

heatmap-analysis

509
from a5c-ai/babysitter

Analyze user interaction heatmaps for attention patterns and click behavior

static-analysis-runner

509
from a5c-ai/babysitter

Run static analysis tools including SonarQube, ESLint, and multi-language linters

Static Analysis Tools Skill

509
from a5c-ai/babysitter

Integration with security-focused static analysis tools

Smart Contract Analysis Skill

509
from a5c-ai/babysitter

Ethereum and blockchain smart contract security analysis

Network Protocol Analysis Skill

509
from a5c-ai/babysitter

Network protocol capture, analysis, and fuzzing capabilities

Code Coverage Analysis

509
from a5c-ai/babysitter

Multi-language code coverage analysis, reporting, and quality gate enforcement

memlab-analysis

509
from a5c-ai/babysitter

Expert skill for JavaScript memory leak detection using Facebook MemLab. Configure MemLab scenarios, execute memory leak detection runs, analyze heap snapshots, identify detached DOM elements, find event listener leaks, and integrate with CI pipelines.

gpu-memory-analysis

509
from a5c-ai/babysitter

Specialized skill for GPU memory hierarchy analysis and optimization. Analyze memory access patterns, detect bank conflicts, optimize cache utilization, profile global memory bandwidth, and generate optimized memory access code patterns.

cdc-analysis

509
from a5c-ai/babysitter

Specialized skill for clock domain crossing analysis and synchronizer design in FPGA designs

power-profiler

509
from a5c-ai/babysitter

Power consumption measurement and analysis expertise for embedded systems. Integrates with power analyzer tools to measure, profile, and optimize power consumption in battery-powered and energy-efficient designs.

misra-c-analysis

509
from a5c-ai/babysitter

MISRA C compliance checking and static analysis integration

memory-analysis

509
from a5c-ai/babysitter

Embedded memory analysis, optimization, and leak detection