4. CCD 与 CMOS 性能对比:灵敏度、噪声、动态范围、功耗、速度
好,咱们进入正题。前面聊了那么多像素结构,现在该真刀真枪比比性能了。CCD 和 CMOS 到底谁强谁弱?说实话,没有的王者,只有最合适的方案。我做了十几年图像传感器,见过太多人一上来就问“哪个更好”,其实这是个伪命题。
咱们从五个核心维度来拆:灵敏度、噪声、动态范围、功耗、速度。这五个参数基本决定了你的摄像头能拍出什么水平的画面。
4.1 灵敏度:谁更“看得见”暗光?
灵敏度说白了就是传感器把光转成电信号的能力。单位是 V/lux·s 或者 e⁻/lux·s。数值越高,暗光下画面越亮。
CCD 的优势:CCD 的像素内没有放大器,填充因子(Fill Factor)天然高。什么意思?就是感光面积占像素总面积的比例大。我记得早期做 CCD 项目时,一个 5.6μm 的像素,填充因子能做到 70% 以上。CMOS 呢?因为有 3-4 个晶体管占地方,填充因子往往只有 40%-60%。
CMOS 的逆袭:但别急。CMOS 后来搞出了 微透镜(Microlens) 和 背照式(BSI) 技术。微透镜把光汇聚到感光区,BSI 直接把电路层翻到背面去。这样一来,CMOS 的量子效率(QE)反而超过了 CCD。我去年测过一款 Sony 的 IMX 系列 CMOS,QE 峰值干到了 85% 以上,CCD 一般也就 60%-70%。
| 参数 | CCD | CMOS(前照式) | CMOS(背照式) |
|---|---|---|---|
| 填充因子 | 60%-80% | 40%-60% | 70%-90% |
| 量子效率(峰值) | 60%-70% | 50%-65% | 80%-95% |
| 暗光表现 | 优秀 | 一般 | 优秀 |
4.2 噪声:画面干不干净,全看它
噪声是图像质量的死敌。咱们主要看三种:读出噪声、暗电流噪声、1/f 噪声。
CCD 的读出噪声:CCD 的读出结构很巧妙——所有像素的电荷通过同一个输出放大器读出。这意味着放大器只需要一个,可以做得很大、很精密。CCD 的读出噪声可以低到 2-3 e⁻ rms。我曾经调试过一个科学级 CCD,读出噪声只有 1.5 e⁻,那画面干净得让人感动。
CMOS 的读出噪声:CMOS 每个像素都有自己的放大器(Source Follower)。这导致两个问题:一是放大器尺寸受限,噪声大;二是像素之间增益不一致,产生 固定模式噪声(FPN)。早期 CMOS 的读出噪声动辄 10-20 e⁻,画面全是噪点。
但 CMOS 后来搞出了 相关双采样(CDS) 技术。简单说就是先读一次复位电平,再读一次信号电平,相减消掉大部分噪声。现在的 CMOS 读出噪声已经能压到 3-5 e⁻,跟 CCD 差距不大了。
4.3 动态范围:亮部和暗部都能看清
动态范围(DR)是传感器能同时记录的最亮和最暗信号的比值。单位是 dB。公式很简单:
DR = 20 * log10(满阱容量 / 读出噪声)
CCD 的满阱容量:CCD 的像素结构简单,可以做得很大。一个 10μm 的 CCD 像素,满阱容量能做到 100,000 e⁻ 以上。配合低读出噪声,动态范围轻松达到 70-80 dB。
CMOS 的满阱容量:CMOS 像素内有晶体管,占用了体积,满阱容量天然小。同样 10μm 像素,CMOS 可能只有 40,000-60,000 e⁻。动态范围一般在 60-70 dB。
但 CMOS 也有绝招——双增益(Dual Gain) 和 多帧合成(HDR)。双增益就是同时用高增益和低增益读两遍,然后合成一张高动态范围的图。现在的手机 CMOS 通过多帧合成,动态范围能飙到 120 dB 以上,CCD 望尘莫及。
4.4 功耗:电池杀手还是省电王?
这个维度没什么悬念。CCD 是出了名的电老虎。
CCD 的功耗为什么高?CCD 需要多路高压时钟驱动(通常 5V-15V),而且所有像素的电荷都要通过一个输出放大器读出,这个放大器必须一直开着。一个 500 万像素的 CCD,功耗轻松 500 mW - 1 W。你想想看,手机要是用 CCD,拍 10 分钟就没电了。
CMOS 的功耗优势:CMOS 只需要单电源(通常 1.8V-3.3V),而且可以只读取感兴趣的区域(ROI)。待机时几乎不耗电。一个同分辨率的 CMOS,功耗只有 100-200 mW。我做过一个电池供电的工业相机项目,用 CMOS 方案,一节 18650 电池能跑 8 小时。换成 CCD?2 小时就歇菜。
| 分辨率 | CCD 典型功耗 | CMOS 典型功耗 | 功耗比 |
|---|---|---|---|
| VGA (640x480) | 150-300 mW | 50-100 mW | 3:1 |
| 2 MP (1920x1080) | 400-700 mW | 100-200 mW | 3.5:1 |
| 5 MP (2592x1944) | 600-1000 mW | 150-300 mW | 4:1 |
| 12 MP (4000x3000) | 1.5-3 W | 200-500 mW | 6:1 |
4.5 速度:拍得快不快?
速度看两个指标:帧率(fps) 和 读出时间。
CCD 的速度瓶颈:CCD 是串行读出——所有像素的电荷一行一行地移出来。分辨率越高,读出时间越长。一个 1000 万像素的 CCD,全分辨率下能跑到 10-15 fps 就算不错了。而且 CCD 不支持窗口读出,你想只读中间一小块区域?不行,必须全读。
CMOS 的速度优势:CMOS 是随机访问——每个像素都可以独立寻址。你可以只读一个 100x100 的窗口,帧率瞬间飙到几千 fps。而且 CMOS 可以并行读出(多通道),现在的高速 CMOS 传感器,全分辨率下跑 60-120 fps 很轻松。我见过一款 400 万像素的 CMOS,用 8 通道读出,帧率干到了 1000 fps。
4.6 综合对比表
最后给一张全家福,方便你快速决策:
| 性能维度 | CCD | CMOS | 胜出方 |
|---|---|---|---|
| 灵敏度(暗光) | 优秀(填充因子高) | 优秀(BSI 加持后) | 平手 |
| 读出噪声 | 极低(2-3 e⁻) | 较低(3-5 e⁻,CDS 后) | CCD 略优 |
| 动态范围(单帧) | 70-80 dB | 60-70 dB | CCD 优 |
| 动态范围(多帧) | 不支持 | 100-120 dB | CMOS 碾压 |
| 功耗 | 高(500 mW - 3 W) | 低(50-500 mW) | CMOS 碾压 |
| 速度(全分辨率) | 10-30 fps | 30-120 fps | CMOS 碾压 |
| 速度(窗口模式) | 不支持 | 支持,可达数千 fps | CMOS 碾压 |
| 集成度 | 低(需要外部驱动、ADC) | 高(片上集成 ADC、ISP) | CMOS 碾压 |
| 成本 | 高(工艺特殊) | 低(标准 CMOS 工艺) | CMOS 碾压 |
嗯,这五个维度讲完了。你可能会问:那到底什么时候用 CCD?我的经验是——当你的应用对 单帧画质 有极致要求,而且 不差电、不差钱、不差体积 的时候。比如天文 CCD、科研级显微镜、高端工业检测。其他场景?CMOS 基本都能搞定,而且更好用。