Calculator Inputs
Example Data Table
| Scenario | Interrupt Count | Window | Effective Service Time | Rate | Interrupt CPU Load | Risk |
|---|---|---|---|---|---|---|
| Low-speed sensor polling | 1,200 | 10 s | 8 µs | 120 Hz | 0.10% | Low |
| Motor control loop | 12,000 | 10 s | 18.33 µs | 1,200 Hz | 2.20% | Low |
| High-rate communications | 180,000 | 60 s | 24 µs | 3,000 Hz | 7.20% | Moderate |
| Heavy burst acquisition | 75,000 | 5 s | 38 µs | 15,000 Hz | 57.00% | High |
These rows illustrate common engineering workloads and help benchmark expected interrupt pressure before using live project data.
Formula Used
Interrupt rate: Interrupt Rate = Interrupt Count ÷ Observation Window
Cycle-derived service time: Service Time from Cycles (µs) = ISR Cycles ÷ CPU Clock (MHz)
Effective service time: Conservative Service Time = max(Measured Service Time, Cycle-Derived Service Time)
Mean interval: Mean Interval (µs) = 1,000,000 ÷ Interrupt Rate
Interrupt CPU load: CPU Load (%) = (Interrupt Rate × Effective Service Time) ÷ 10,000
Peak interrupt rate: Peak Rate = Average Rate × Burst Factor
Peak interrupt CPU load: Peak CPU Load (%) = Interrupt CPU Load × Burst Factor
Maximum safe rate: Safe Rate = (Interrupt Budget % × 1,000,000) ÷ Effective Service Time ÷ 100
The calculator uses the larger of measured service time and cycle-derived service time so the estimate remains conservative for design reviews.
How to Use This Calculator
- Enter the total number of interrupts observed during a known measurement window.
- Choose the window unit so the tool converts time correctly.
- Provide measured interrupt service time, or enter CPU clock and ISR cycles to derive it.
- Add background CPU load, interrupt budget, and burst factor for capacity planning.
- Submit the form to view rate, interval, CPU demand, safe-rate margin, graph, and downloadable exports.
Frequently Asked Questions
1. What does interrupt rate mean?
Interrupt rate is the number of interrupt events arriving per second. It helps engineers estimate CPU demand, timing pressure, and available execution time for non-interrupt tasks.
2. Why does the calculator use a conservative service time?
Measured timing can miss worst-case conditions. Taking the larger of measured time and cycle-derived time gives a safer estimate for embedded design margins and review decisions.
3. What is a good interrupt CPU load target?
There is no universal limit, but many teams keep average interrupt load comfortably below the level that harms scheduling, background tasks, and burst handling. Your target should match system criticality.
4. Why is burst factor important?
Average rates can hide short high-density periods. Burst factor lets you stress the design with peak conditions and see whether timing slack and CPU margin still remain acceptable.
5. What does slack time show?
Slack time is the gap between average interrupt spacing and the time needed to service each interrupt. Low or negative slack suggests queuing, latency growth, or missed deadlines.
6. Can I use this for communication peripherals?
Yes. It is useful for UART, SPI, CAN, ADC, encoder, timer, and similar interrupt-driven sources whenever you know event counts, service cost, and expected bursts.
7. What if I only know ISR cycles?
Enter CPU clock frequency and ISR cycles. The tool converts them into microseconds and uses that value for service demand calculations and capacity checks.
8. Why export CSV or PDF?
Exports make it easy to document assumptions, compare revisions, share results with reviewers, and attach engineering evidence to design notes or verification records.