4、读出电路(ROIC)基础:ROIC功能架构、积分方式(CTIA、SF)、像素级电路设计

好,咱们进入第四章。前面聊完了探测器怎么把光转成电信号,那这个微弱的电信号怎么才能被后端ADC(模数转换器)准确采集到?这就得靠读出电路,也就是ROIC了。

ROIC,说白了就是探测器芯片的“大脑”和“神经”。它负责把每个像素产生的光生电荷,高效、低噪声地搬运出来。我这些年调试过不少探测器,发现很多系统问题,比如图像有固定噪声、动态范围不够,根源往往不在焦平面阵列本身,而是ROIC的设计或配置没到位。

4.1 ROIC的功能架构

一个典型的ROIC,内部结构可以拆成几个核心模块。我习惯把它想象成一个“数据采集工厂”:

  • 像素阵列(Pixel Array):这是工厂的“生产线”,每个像素单元负责收集和存储光生电荷。
  • 行选与列选电路(Row/Column Decoder):相当于“传送带和分拣机”,按顺序把每个像素的信号引出来。
  • 读出通道(Readout Chain):包含采样保持、缓冲器、增益放大器等,这是“质检和包装”环节。
  • 时序控制器(Timing Controller):整个工厂的“总控台”,产生各种时钟和偏置电压。

核心要点:ROIC的设计目标,就是在给定的帧频下,把每个像素的电荷包,以最小的噪声和最大的线性度,转换成电压信号输出。

这里有个关键参数叫电荷处理容量,它决定了你能存多少电子。我见过一些初学者,只盯着像元尺寸,忽略了ROIC的电荷容量,结果在强光下图像直接饱和,一片白。

4.2 像素级电路设计:两种主流积分方式

像素级电路是ROIC的基础。目前非制冷探测器里,主流的积分方式就两种:CTIA(电容反馈跨阻放大器)和SF(源极跟随器)。它们各有各的脾气。

4.2.1 CTIA(电容反馈跨阻放大器)

CTIA结构,你可以把它理解成一个带积分电容的运算放大器。探测器电流进来,直接往电容Cint上充电,输出电压就是Vout = Q / Cint。

为什么CTIA这么受欢迎?

  • 线性度极好:运放的虚短特性保证了探测器偏压恒定,积分过程非常线性。
  • 注入效率高:输入阻抗极低,光生电流几乎100%流入积分电容。
  • 噪声低:配合相关双采样(CDS),可以很好地抑制复位噪声和1/f噪声。

我的经验:CTIA的功耗和面积是硬伤。在5μm以下的像元里,塞进一个高性能运放非常困难。我曾经在一个项目中,为了在极小的像元里实现CTIA,不得不牺牲了一些增益,换取了更低的功耗。

4.2.2 SF(源极跟随器)

SF结构就简单多了。它本质上是一个MOS管构成的缓冲器。光生电荷先存储在像素内的电容(通常是PN结电容或MOS电容)上,然后通过源极跟随器读出电压。

SF的优缺点很明显:

  • 优点:结构简单,填充系数高,功耗极低,非常适合做大面阵。
  • 缺点:线性度差,增益小于1(通常0.7~0.9),而且探测器偏压会随着积分过程变化,导致非线性。

避坑指南:我曾经用SF结构做一款低成本探测器,结果发现图像有严重的“拖影”。后来排查发现,是源极跟随器的建立时间不够,导致行与行之间串扰。解决办法是优化了像素内的偏置电流,并调整了读出时序。

4.3 CTIA vs SF:怎么选?

我把这两种结构的核心差异整理成了表格,方便你对比:

对比项 CTIA SF(源极跟随器)
线性度 极好(<0.1%) 一般(1%~5%)
输入阻抗 极低(虚短) 较高(Cgd耦合)
噪声性能 优秀(可CDS) 中等(KTC噪声大)
功耗 高(运放静态电流) 低(仅缓冲器)
像元面积 大(需要运放+电容) 小(3~4个MOS管)
典型应用 高灵敏度、科研级 低成本、大面阵

怎么选?我个人习惯是:如果追求极致性能,比如做气体泄漏检测或高温测量,我会毫不犹豫选CTIA。但如果做安防监控或车载夜视,对成本敏感,SF结构配合好的数字校正算法,完全够用。

4.4 像素级电路设计实例:一个简单的CTIA像素

咱们来看一个最基础的CTIA像素电路。它通常包含:一个运算放大器(OTA)、一个积分电容(Cint)、一个复位开关(RST),以及一个读出开关(SEL)。

// 像素级CTIA电路描述(Verilog-A行为级模型)
module ctia_pixel (Vdet, Vref, RST, SEL, Vout);
    input Vdet, Vref, RST, SEL;
    output Vout;
    electrical Vdet, Vref, RST, SEL, Vout;

    parameter real Cint = 1e-12; // 积分电容 1pF
    real Qint; // 积分电荷

    analog begin
        // 复位阶段:RST为高,电容短路
        if (V(RST) > 2.5) begin
            Qint = 0;
        end
        // 积分阶段:RST为低,电流对电容充电
        else begin
            // 假设探测器电流 I_det = (V(Vdet) - V(Vref)) / R_det
            // 这里简化处理,直接积分
            Qint = Qint + idt( I(Vdet) , 0 );
        end

        // 读出阶段:SEL为高,输出电压
        V(Vout) <+ transition( V(Vref) - Qint / Cint , 1e-9, 1e-9);
    end
endmodule

这段代码虽然简单,但把CTIA的核心行为说清楚了。复位时清空电荷,积分时累积,读出时转换成电压。实际芯片里,运放的增益、带宽、摆率都会影响最终性能。

4.5 知识结构图:ROIC核心逻辑

为了让你更直观地理解ROIC的架构和信号流向,我画了一张图:

ROIC功能架构与信号流 ROIC功能架构与信号流 像素阵列 (Pixel Array) M x N 个像素单元 CTIA 或 SF 结构 电荷存储与积分 行选电路 Row Decoder 列选电路 Column Decoder 读出通道 (Readout Chain) 采样保持 (S/H) 增益放大器 (PGA) 缓冲器 (Buffer) 时序控制器 (Timing Controller) 产生时钟、偏置、控制信号 模拟信号 行选通 列选通 控制总线 核心逻辑 像素阵列积分 -> 行/列选通 -> 读出通道放大 -> 输出至ADC

从这张图你可以看到,信号从像素阵列产生后,经过行选和列选的“调度”,进入读出通道进行调理,最终输出给ADC。整个过程由时序控制器统一协调。

4.6 小结与避坑

ROIC是连接探测器和后端图像处理的桥梁。选型时,我建议你重点关注三个参数:电荷处理容量、读出噪声和帧频。它们直接决定了你最终图像的信噪比和动态范围。

最后提醒一句:不要迷信仿真结果。ROIC的寄生参数、工艺偏差、温度漂移,都会让实际性能比仿真差一截。我习惯在流片前,多留一些可调偏置和增益的余量,这样回来调试时才有回旋余地。