MIPI CSI-2 Bandwidth
Size a MIPI CSI-2 camera link: from resolution, frame rate and pixel format get the required data rate and check whether the D-PHY lanes can carry it. Demonstrative tool.
1 · Sensor
2 · D-PHY interface
Optional overhead: 0 = net data rate. The term that matters is blanking, (1+bh)(1+bv) − 1, typically 20–30% — packetization is worth 0.1–0.9%.
Result
dataRate = width · height · fps · bits/pixel. Capacity = lanes · lane rate. Demonstrative tool — bandwidth sizing only, does not validate timing, clock training or ISP.
How is the bandwidth computed?
The required bandwidth is the product of pixels per second and bits per pixel: dataRate = width · height · fps · bits/pixel. Capacity is lanes · lane rate and utilization is util% = dataRate / capacity · 100. The 80% threshold is not a MIPI requirement: utilization is computed on the average rate, while the link has to carry the peak of the active line, and 80% corresponds to a peak-to-average ratio of 1.25 — roughly 12% blanking per axis.
The raw video stream from a sensor is a continuous jet of pixels. The required bandwidth is the product of how many pixels per second and how many bits each pixel weighs:
If util% < 80% there is headroom, between 80% and 100% it is tight, above 100% the lanes cannot carry the stream: you need more lanes, a higher lane rate or a lighter format. The 80% comes from the peak-to-average ratio: util% is computed on the average rate, the link has to carry the peak during the active line, and 1/0.80 = 1.25 covers about 12% blanking per axis. With the sensor’s real blanking in the overhead field the threshold can be raised.
What are D-PHY lanes and lane rate?
On D-PHY data travels over one or more differential lanes in parallel, typically 1, 2 or 4, each at a given lane rate (for example 800, 1500 or 2500 Mbps). The total capacity is the sum of the lanes: doubling the lanes or the lane rate doubles the available bandwidth.
On D-PHY data travels over one or more differential lanes in parallel (typically 1, 2 or 4), each at a given lane rate (e.g. 800, 1500, 2500 Mbps). The total capacity is the sum of the lanes. Doubling the lanes or the lane rate doubles the available bandwidth.
Pixel formats and bits/pixel
| Format | bit/pixel | Notes |
|---|---|---|
| RAW8 / 10 / 12 / 14 | 8 / 10 / 12 / 14 | sensor Bayer output (pre-ISP) |
| YUV422 | 16 | luma + subsampled chroma |
| RGB888 | 24 | full RGB (post-ISP) |
Which overhead counts, blanking or packets?
Two different mechanisms. Packetization (packet header and footer, line and frame sync, ECC) is a per-line constant on a payload of thousands of bytes: it is worth 0.1–0.9% on real formats. Blanking, instead, adds no bytes — it squeezes the same bytes into the active line, and the link must carry the instantaneous rate: (1+bh)(1+bv) − 1, typically 20–30%. That is the number to put in the field.
Real CSI-2 throughput is slightly higher than the pure pixel data rate: each packet carries a header/footer, plus line/frame start-end markers and ECC. The tool exposes the net figure and, if you set an overhead, the effective one on which lane utilization is based.
What are the tool’s limitations?
It is a bandwidth calculation: it tells whether the stream fits in the lanes, but it does not validate timing, clock training, skew or equalization. The net data rate uses the active area only: blanking is not inferred from the format, it goes in the overhead field taken from the sensor datasheet — (1+bh)(1+bv) − 1 from line_length_pck and frame_length_lines. It does not model the ISP or compression. It assumes symmetric D-PHY lanes and covers neither C-PHY nor multi-virtual-channel cases. Demonstrative tool: real sizing needs the datasheets and the MIPI specification.
- It is a bandwidth calculation: it tells whether the stream fits in the lanes, it does not validate timing, clock training, skew, equalization or continuous/discontinuous clock.
- It does not model the ISP, compression (e.g. non-byte-aligned RAW packing), nor horizontal/vertical blanking (only the active area is used here).
- It assumes symmetric D-PHY lanes; it does not cover C-PHY (trio/symbol) nor multi-virtual-channel cases.
- Demonstrative tool: real camera-link sizing requires the sensor and SoC datasheets and the MIPI specification.
References
- MIPI Alliance — mipi.org (CSI-2 and D-PHY specifications).