第三章:CMOS 像素、读出链与模数转换
上一章的像素把电子转成电压,RAW 文件却要保存整数。假设一个码值对应四个电子, 个电子就会落在黑电平上方约 25 码处;提高模拟增益后,同一信号可以占据更多 码级,也会更早到达 ADC 上限。浮动扩散节点、列电路和模数转换器的增益与噪声 共同决定量化精度,以及信号在哪一级达到上限。
3.1 一个可计算的读出模型
模数转换器(analog-to-digital converter, ADC)把电压变成数字码值,常以DN (digital number)记码值刻度。先采用线性、未饱和的单通道模型,黑电平校正前 数字输出写成
其中 的单位为 DN, 是模拟增益取一时的电荷到码值转换系数,单位为 DN/e; 是 ADC 前的无量纲模拟增益。 表示增益前电压噪声按固定 ADC 电压刻度换算出的 DN 等效值, 表示增益后噪声的 DN 等效值, 是 DN 单位的量化误差。因而右端各项单位相同。这里未再计入 ADC 后数字乘法。把所有 增益合并为 ,并折算到电子域,可写成
式 (3.2) 把各级读出与量化误差合并为输入等效噪声 。改变模拟增益、读出速度、 温度或转换增益模式后,需要重新确定这一项。
图 3.1 噪声必须按其注入位置折算回输入电子域。增益之前的噪声会随信号一起 放大;增益之后的固定电压噪声可被前置模拟增益压低其输入等效值。
定义 3.1(系统增益). 在线性区内,黑电平校正后的平均 DN 对平均信号电子数 的斜率称为系统增益:
有些资料把其倒数 称为 conversion gain,单位 。阅读规格时 必须连单位一起读,不能只看“gain”名称。
FD 复位本身还受电容热噪声约束。若电容 在温度 下经电阻性开关达到热平衡, 以平衡电压为零点,电容储能为 。经典能量均分给每个二次型自由度平均能量 ,于是 ,得到
第二式把电压噪声通过 折算为电子。相关双采样能消去同一次复位在前后 样本中共有的随机偏置,但不能消去转移后新引入的源跟随器白噪声、列噪声和两次 采样之间不相关的噪声。式 (3.3) 因而是电容节点的起始模型,不是最终相机读噪公式。
3.2 列并行读出与 ADC
CMOS 像素通常按行选择,每列拥有采样和 ADC 资源。列并行结构允许许多列同时转换, 帧时间主要由行数、每行转换时间和附加消隐决定。常见单斜坡 ADC 把像素电压与线性 斜坡比较,并用计数器记录交叉时刻;其面积效率适合高列数,但转换时间随目标位数 增长。以理想单斜坡结构为例,令斜坡电压为 ,计数时钟频率为 。输入电压 与斜坡相等时,计数约为 ;一个计数对应电压 。 若全量程逐码扫描, bit 转换最多需要约 个时钟周期,因此在相同时钟下 增加两位会把最坏转换时间增到约四倍。实际电路可用粗细两段转换、更多并行资源或 其他 ADC 架构改变这项权衡。
定义 3.2(理想量化步长). 满量程电压范围 的 bit 均匀 ADC 具有步长
这里 使用电压单位。若输入相对于量化格足够平滑,舍入误差的电压表示可近似为 ,于是
证明. 均值为零,并且
式 (3.1) 中的 则以 DN 表示:若一个 DN 对应电压 ,有 , 所以相应方差为 DN。电压误差与码值误差要先换到同一尺度才能合成。 均匀的单次误差分布也不保证不同样本互不相关;把量化进一步近似为独立白噪声, 需要信号或抖动使量化格内的相位充分变化。信号几乎不跨码或出现确定性条纹时, 这个近似会失效。真实 ADC 还存在微分非线性、积分非线性和列间偏置。
先选“暗部:100 e⁻”,在上图看ADC前增益怎样细分输入电子刻度; 再选“高光:40,000 e⁻”,到下图看提前截顶。 两预设的位深不同,若只比较增益,请固定在一个预设内拖动“增益”,同时看噪声读数和白点位置。
图 3.2 位深给出码格数量,系统增益决定每一格对应多少电子。若模拟噪声远小于 一格且没有抖动,均匀独立的量化噪声模型并不成立。
演示把同一电荷分别送入两条链路:一条在 ADC 前增加增益,另一条先量化再作等倍 数字乘法。暗部阶梯统一换回电子尺度,因而数字乘法不会使已合并的码格重新分开。 选取高光输入时,还能看到前增益通道更早到达 ADC 上限。增益改变前后的满阱保持 相同;噪声读数只计算声明的读出与量化模型,未把光子噪声混入其中。
输入电荷控件用于取样:它移动竖线和读数,不改变两条响应曲线。上图放大暗部, 下图固定显示0…64000 e⁻的全范围;高光取样超出上图时,可在下图看到裁切位置。
单斜坡的扫描与锁存
把输入电压在转换期间保持不变,单斜坡ADC便可把电压差变成时间。令下端为零, 量程跨度为 ,计数时钟为 , ;用 个周期扫完量程时,
对 ,比较器交叉时刻为 。若约定在交叉时锁存已经过去的整周期数, 则输出码为 ,其中 。 恰在时钟边沿交叉时取新计数;计数到最大码后保持,完成最后一个码区间再结束扫描。 负输入输出零,达到或超过满量程则输出 。这些是本例明确采用的理想锁存与 截顶约定;真实电路还需处理比较器延迟和时钟边沿附近的亚稳态。
取8 bit、1 V量程和10 MHz时钟,完整扫描用256周期,即25.6 µs。输入0.375 V 在9.6 µs交叉,锁存96 DN;另一列若为0.750 V,须等到19.2 µs。前一列完成后, 公共斜坡仍需继续服务其他列。只把位深增加到10 bit,完整扫描变为102.4 µs, 电压步长则从约3.906 mV缩为约0.977 mV。
起始扫描只走完四分之一,A尚未交叉。 按“A交叉时刻”定位,再播放到结束,看A、B依次锁存而C越界。 最后在8 bit和10 bit预设间切换:同为10 MHz时,扫描时间变为四倍,不能只比较码数增加了多少。
互动示意:斜坡扫到60%时,A已锁存,B仍等待,超过量程的C没有交叉。下图展开 交叉附近的7个时钟周期,标出交叉时刻与整数计数;扫描时间和动画回放速度分别显示。
演示同时用交叉时间公式和逐个电压区间搜索核对最终码。未越界时,把码重建为 ,误差不超过半个步长;输入越界后,不再用这个界限描述截顶损失。 这项扫描时间比较只适用于声明的单斜坡结构,整帧速度还包括行数、采样、复位与 数据传输;粗细两段或其他ADC架构可以改变时间关系。
3.3 位深、有效位数与电子刻度
假设线性可用范围从黑电平后 到 DN,系统增益为 ,则数字白点对应
若像素线性满阱只有 ,则先发生电荷饱和;若满阱为 ,则当前增益下 ADC 先剪切。改变模拟增益会改变二者相对位置。
例子 3.3(14 bit 不等于 14 档). 14 bit 提供 个码。若黑电平噪声 标准差为 DN,可分辨下端不可能按一个码计算;若可用白点为 DN,按 一倍 rms 噪声作下端,数字域比值为 ,即
若改用 SNR 或固定图样噪声也计入,下端还会提高。位深只给出编码容器的理论 上限。
定义 3.4(有效位数). 对满量程正弦测试,工程上常用信噪失真比换算 ADC 的 有效位数(ENOB)。它是 ADC 测试指标,不等于相机可记录的摄影动态范围;后者还受 光子噪声、像素饱和和图像处理影响。
这个换算来自理想均匀量化器。峰峰值为 的正弦波,其均方信号为 ;量化误差均方为 。两者功率比为 ,因此理想量化 SNR 为 dB。实测时把噪声和谐波失真一起计入分母,得到 SINAD,工程上 用
例如 SINAD 为 74 dB 时,ENOB 约为 12.0,即使输出字长是 14 bit。这里比较的是 满量程交流正弦与噪声失真功率;第四章的摄影动态范围比较饱和信号和低端噪声, 信号形态与判据不同。
贯穿算例:电子数与量化码值
固定参数给出 32,000 e⁻ 对应 1 V,故每电子 信号跨度为 31.25 μV。3101.02 e⁻ 对应约 0.09691 V;在增益一、黑电平零的 14 bit 均值流程中,系统增益为 DN/e⁻,取整码为 DN。
本例采用两端点相配的 16,384 个量化级,码格间距为输入跨度除以 16,383; 这是序章演示的明确映射。实际 ADC 的区间宽度和过载阈值须按其传输函数确定。
这里与§3.2的单斜坡采用不同的量化约定。若把输入跨度归一化为1,2 bit区间 量化按 截到0…3,区间宽为 ;端点量化按 ,重建值为0、1/3、2/3、1。例如 在前者输出0, 在后者输出1。比较码宽和误差时,应先选定传输规则,再使用 或 。
一个码格约对应 e⁻。采用高分辨率、无过载的均匀量化误差近似时, 输入等效量化 rms 约为 e⁻,比本例 4 e⁻ 的读噪小。 1588是平均输入经取整得到的码。实际曝光逐次波动,取整后的码均值一般不等于 平均输入的取整码,分析时需区分这两个量。
3.4 模拟增益与输入等效噪声
把式 (3.1) 中信号归一化回输入端。若 零均值、互不相关,并且它们在比较的 增益范围内具有不变的注入端方差,忽略量化误差后,读出噪声方差为
其中 ,两项都已折算到电子数的平方。
若两级噪声相关,还要加上 ;切换电路模式后,原来的方差参数也需重测。
提高 ADC 前模拟增益 不改变已经存在的光子散粒噪声,也不改变增益前噪声 ;它能压低增益后噪声折算到输入电子域的贡献,并让微弱信号跨越更多 ADC 码。 当第二项已经很小后,继续提高增益的读噪收益趋近于零,高光却仍可能更早剪切。
例如,固定 ADC 刻度为 ,像素转换增益为 ,则 。模拟增益为一时, 一个 DN 对应四个电子,理想量化 rms 为 ;增益为四 时,一个 DN 对应一个电子,量化 rms 降到约 。若可用跨度固定为 16,000 DN,电子域剪切点却从 64,000 降到 16,000。这两个变化来自同一次增益调整。
这正是“ISO 不增加光”和“提高 ISO 有时能降低 RAW 输入等效读噪”可以同时成立的 原因。前者说的是光子与电子计数,后者说的是读出链中增益的位置。
3.5 黑电平、坏点与固定图样
相机通常保留光学黑区或遮光像素来估计黑电平。RAW 中的零码不必表示零电子; 负噪声摆动也需要由正的黑电平容纳。处理器减去每通道黑电平后才得到近似线性信号。
像素响应非均匀性(PRNU)可用乘性模型表示:
是像素/列偏置, 是响应偏差。暗场能估计加性固定图样,均匀平场能 估计乘性固定图样。相机可能在 RAW 写入前已经做坏点替换、列校正或黑电平跟踪, 所以 RAW 不应被定义为“未经任何处理”。
暗场校正通常先把固定偏置视为可直接相减的常数。若列ADC的响应随输入电平弯曲, 同一电压偏置就不再对应固定的码差,需要进一步检查整段响应。
列偏置遇到非线性斜坡
若各列比较器前都有固定电压偏置,同一均匀输入也会给出不同的码。这是加性的 列图样,不是每次转换重新抽取的随机读噪。在线性斜坡下,输入端加一段固定电压 大致对应固定码差;斜坡弯曲后,这个码差还会随信号电平改变。
取归一化扫描时间 ,声明一条端点不变的教学斜坡
其导数为 ,所以每个量程内 输入都只有一次交叉。 个等时间区间对应阈值 。以固定零点与满量程直线为参考, 理想步长仍为 ,本例定义
第一式对相邻阈值作差,第二式直接减去理想阈值即可得到。这里的INL采用阈值与 固定端点参考,不是对码中心重新作最佳直线拟合;读实际规格时应核对参考约定。 所有码宽均为正,当前模型没有缺码。曲率为0.45、8 bit时,最大阈值INL为 LSB。这里把曲率取得较大,便于观察码宽变化。
令 为这组阈值的量化输出, 为已知电压基座, 为列偏置。 对同一列精确减去无噪声暗场码,结果为 。暂不量化、未截顶时,把连续码函数记为 , 小偏置造成的残差一阶为
它来自两处的一阶Taylor展开,要求 、 及其偏置邻域都在量程内部。 线性斜坡的两个导数相同;非线性时一般不同。实际整码相减还叠加量化,因而即使 线性斜坡,任意非整码偏置也可能留下不超过量化尺度的残差。
先选“只看列偏置”,记录各列减暗场后的残差; 再固定偏置、只把“斜坡曲率 a”调到0.6。 看亮处残差怎样出现,并用选中列的局部码阶解释原因。 “减暗场仍有残差”是亮信号的综合例子,不能与前一预设直接当作单变量比较。
互动示意:1 V量程、10 MHz时钟、8 bit,电压基座为16个理想LSB;固定12列 偏置图样的幅度为2 LSB。灰度表示列间DN差,不是均匀场景的真实亮度。 阈值搜索、交叉根和DNL/INL解析式分别核对;回放显示当前斜坡与锁存状态。
“电压偏置归零”使用已知生成参数,提供理想对照;“减暗场码”只做码域相减。 两者都不是从有限噪声暗场拟合出的校准算法。随机校准误差见第四章;比较器延迟、 亚稳态和列增益差需另加模型。
列码差的二维条带
只有一行码差时,很难判断它在画面中形成什么结构。下面把同一组12列电压偏置 横向重复4次,每列沿32行保持固定;场景可选均匀平场或纵向渐变。无偏置输出为 ,带偏置输出为 ,两者共用斜坡、 电压基座和显示灰阶,行、列下标均从0起。它们之差是码域误差,不是场景中的明暗细节。
校准器只接收信号为 的均匀校准帧 ,按列求均值,再减去 指定参考列的均值。本例的第8、20、32、44列定义为零偏置,因而得到
校准后的误差为 ,单位DN。 无偏置图只用于评价,不进入上述估计。指定稳定参考列是本实验的条件;若所有列 都有未知偏置,单幅均匀图不能另外确定共同零点。
按“线性斜坡 · 整码偏置”与“弯曲斜坡”的顺序比较:场景和偏置不动,只改变斜坡。 先看误差图中的竖条,再看校准残差; 随后选“改用亮平场校准”,检查残差是否只在靠近校准亮度的位置减小。
互动示意:48×32像素共用固定列偏置。无偏置与带偏置输出并列,校准前后误差均用 −8…+8 DN线性灰阶;逐行回放只移动核对位置,不重新生成图像。默认弯曲斜坡下, 全图RMS由约2.542 DN降为0.738 DN,残差仍随信号电平变化。
线性斜坡、整码偏置且未截顶时,各列固定码差可以完全扣除。斜坡弯曲后,同一列 在不同亮度处会留下不同残差;改用亮平场校准改变的是校准信号电平,不能校正整条 非线性响应。把输入设为均匀且等于校准信号时,当前无噪声 模型的残差应为零,这也是可直接核对的端点。
这里报告 ,没有先减残差均值。 误差图超出显示范围的像素另计,RMS仍使用原始码差。输入剪切也单独计数, 减列码差无法恢复剪切数据。有限张、含噪声校准帧的随机误差留给第四章;改变位深 时,本实验仍以16个理想LSB指定电压基座,列偏置幅度也按LSB给定,并非保持绝对 电压偏置不变。
3.6 读出速度的代价
提高帧率通常要求更短的行时间、更高 ADC 并行度、更高接口带宽或降低位深。电路 带宽增加会使积分噪声上升,较短转换时间也限制多重采样。具体传感器可通过更多列 ADC、堆栈逻辑和片上缓存缓解这种权衡,但收益取决于电路实现。比较高速与慢速 模式时,应核对同一传感器的位深、增益、采样方式和实测噪声。
更精确地说,若某节点的双边电压噪声功率谱密度为 ,从该节点到采样值的 等效线性传递函数为 ,则该节点贡献的方差为
相关双采样是这一积分的具体例子。若两次采样间隔为 ,每次采样具有相同的 孔径滤波响应 ,差分的响应为
第二式由 得到。在零频附近,差分因子趋于零, 解释了缓慢变化的共同偏置为何能被压低;较高频率的非相关噪声仍会进入结果。行时间 改变时,采样间隔和采样孔径也可能改变,读噪因此要结合整个频率响应计算。
采样间隔与差分频率响应
把两次采样的波形叠在一起,能直接看出差分为何有时抵消、有时相加。每次采样取 宽度 的矩形时间平均,则 ,此处 。若输入由互相独立、初相位均匀分布的有限条正弦 组成,第 条的时间方差为 ,式 (3.6a) 给出
同一个结果也可从两次平均样本 得到: 。 两次采样若相隔整周期,该频率抵消;相隔半周期则反相,差分振幅达到单次平均的 两倍。CDS 因而是频率选择性的滤波,不能把所有噪声都按固定比例压低。
先比较“50 kHz · 半周期”和“50 kHz · 整周期”,观察两采样点的相位和差分RMS; 再选“窗口平均一个周期”,看单次平均也会抑制该频率。 回到混合谱后,零间隔相减虽能消掉共同噪声,却也没有完成两个不同时刻的信号取样。
互动示意:32条10—320 kHz谱线、输入RMS 30 μV;采样间隔10 μs、孔径2 μs。 频率加权、样本协方差与一个公共周期内的时域方差并列核对。
50 kHz单频的周期为20 μs,半周期差分与整周期差分因而得到不同结果;有限采样 孔径还会先对每一次读数作平均。混合谱使用有限随机相位谱线,低频加权选项也有明确上下限;实际器件 需要测得的功率谱密度和电路带宽,再按式 (3.6) 积分。第2章的4T时序说明信号在 何时取样,这里补上两次取样之间的噪声相关性。
分开检验电荷、扫描阈值与列校准
读图时可按三个条件比较:先在读出链固定电子输入,只改变模拟或数字增益;再在 斜坡时序固定电压,观察交叉时刻与锁存边沿;最后保留固定列偏置,比较线性和弯曲 斜坡下的暗场码相减。三组实验分别检查电子到电压、时间到码、偏置到校准残差。
当前斜坡单调,因此码宽虽会变化,所有码仍能出现;列偏置则在各帧间保持固定。 比较器延迟、时钟抖动和亚稳态需要相应的时间分布及锁存规则,才能继续计算它们对 误差的影响。
练习
练习 3.1. 一个 12 bit ADC 满量程为 。计算量化步长和白噪声 模型下的量化噪声 rms。
练习 3.2. 某 RAW 黑电平为 512 DN,白点为 15,360 DN,系统增益 。计算可用数字跨度对应的电子数。若满阱为 ,哪一端先限制?
练习 3.3. 式 (3.5) 中 , 。分别计算 时输入等效读噪。
练习 3.4. 对 K、 fF 的复位节点,按式 (3.3) 计算复位电压 噪声 rms 和等效电子噪声。说明为何该结果不能直接当作 CDS 后相机读噪。
练习 3.5. 单一50 kHz噪声的输入RMS为30 μV,每次采用2 μs矩形平均。 分别计算两次采样间隔10 μs、20 μs时的差分RMS,说明为何前者可以超过单次噪声。