In another thread, I was asked about the sources of noise in CMOS image sensors. There are several kinds of noise involved: read noise, photon or shot noise, and pixel response nonuniformity (PRNU). This post attempts to give a non-quantitative listing of the sources of read noise.
In CMOS image sensors, read noise refers to the uncertainty or variation introduced when converting and extracting photo-generated charge from each pixel into a digital value. Unlike shot noise (which is signal-dependent), read noise is signal-independent and represents the floor of detectability for low-light imaging.
Modern CMOS sensors usually use column-parallel analog-to-digital converters (ADCs) to increase speed and reduce power. These architectures introduce unique read noise contributors, both shared and per-column.
Here’s a simplified signal path for a modern CMOS sensor:
Photodiode → Floating Diffusion → Source Follower → Multiplexer → Column Line → Sample-and-Hold → ADC
Let’s look at the noise sources at each stage:
Thermal (kTC) Reset Noise. When the floating diffusion node (FD) is reset before signal integration, it stores a charge with some thermal uncertainty. This is random from frame to frame and is typically removed using correlated double sampling (CDS). I’m not going to cover CDS here.
Source Follower Noise. Each pixel usually has a source follower transistor (current amplifier) to buffer the charge on the FD node.
The source follower contributes a) 1/f (flicker) noise, which is more prominent at low frequencies and can be mitigated with layout and process optimization, and b) Thermal noise, which is due to channel resistance in the MOSFET. This noise scales with transistor size and bias current.
Column Line Noise (Charge Injection, Cap Loading)
The shared column bus introduces noise due to
Column ADC Noise. In column-parallel architectures, each column has its own ADC. These contribute:
In CMOS image sensors, read noise refers to the uncertainty or variation introduced when converting and extracting photo-generated charge from each pixel into a digital value. Unlike shot noise (which is signal-dependent), read noise is signal-independent and represents the floor of detectability for low-light imaging.
Modern CMOS sensors usually use column-parallel analog-to-digital converters (ADCs) to increase speed and reduce power. These architectures introduce unique read noise contributors, both shared and per-column.
Here’s a simplified signal path for a modern CMOS sensor:
Photodiode → Floating Diffusion → Source Follower → Multiplexer → Column Line → Sample-and-Hold → ADC
Let’s look at the noise sources at each stage:
Thermal (kTC) Reset Noise. When the floating diffusion node (FD) is reset before signal integration, it stores a charge with some thermal uncertainty. This is random from frame to frame and is typically removed using correlated double sampling (CDS). I’m not going to cover CDS here.
Source Follower Noise. Each pixel usually has a source follower transistor (current amplifier) to buffer the charge on the FD node.
The source follower contributes a) 1/f (flicker) noise, which is more prominent at low frequencies and can be mitigated with layout and process optimization, and b) Thermal noise, which is due to channel resistance in the MOSFET. This noise scales with transistor size and bias current.
Column Line Noise (Charge Injection, Cap Loading)
The shared column bus introduces noise due to
- Multiplexing errors, crosstalk/charge injection from control signals
- Coupling to parasitic capacitances
- Sample-and-hold circuits
Column ADC Noise. In column-parallel architectures, each column has its own ADC. These contribute:
- Quantization noise:
- Thermal and comparator noise
- Reference voltage fluctuations
- Mismatch between ADCs across columns
- Reference voltage noise
- Analog power rail noise
- Bias line noise
- Crosstalk between columns
- Clock feedthrough into sensitive analog nodes
Last edited: