【经验笔记】CCD专用模数转换器AD9845B自学笔记
0赞嘿嘿,最近这几次每次更新博客的时候都有股子冲动想说“好久没更新了”这句话呢,大概是断断续续更新的缘故吧,最近一段时间也是各种事情耽搁,总之没有以前写的流畅了,手下和脑子都略显生疏了,让人不禁想起那句话“老纪老矣,尚能写否”(咳咳,自己杜撰了下),哈哈,这里还是坚定一下信念吧,革命尚未成功,怎能轻言放弃,开源这条路很难走,但我还是希望自己在工作之前把开源的精神带动起来(工作之后签了卖身契可能会身不由己了,毕竟给人家打工开源人家的东西可是犯法的了,呵呵),所以还想什么,go on吧...
因为自己课题需要,最近一直在研究CCD成像相关资料(所以Kinetis相关研究暂时放下了,不过不会太久,过段时间就会继续更新Kinetis了),这里把自己对即将用到的一款CCD专用AD AD9845B所作的一些研究体会说一说(包括网上搜集的和自己的体会)以资共赏,哎,给Freescale做完广告继续给ADI做广告了(可不是我故意的哈,呵呵),我看了下貌似ADI还没有对这款片子有什么中文应用笔记之类的,一色儿的E文datasheet(估计是ADI的片子太多了,他的攻城狮们可没时间挨个折腾啊),所以我觉着我可以像ADI要点劳务费了,哈哈,玩笑开大了,下面进入正题吧(本篇的针对性较窄,所以用不到CCD相关技术的可以跳过了):
1.首先介绍下AD9845B吧,可能对一些工程师的选型有所帮助:
AD9845B,ADI公司的一款增强型CCD专用AD信号处理器(之所以说是增强型是相对于老款片子AD9845A,有兴趣的可以对比一下),12位转换精度,30MHz采样频率,集相关双采样、像素增益放大、可变增益放大、低噪声箝位等CCD专用功能于一身的完整的AFE(模拟前端,Analog-Front-End),下面见见它的“庐山真面目”吧,上图瞅瞅它的内部结构图,呵呵:
2.上面我们看了下结构框图,接下来说说AD9845B的主要特性(捡特色的说了):
(1)管脚完全兼容AD9845A,所以使用老片子的用户有福了;
(2)内含12位高精度、30MHz采样频率的AD转换器,核心参数了,选型主要考虑因素;
(3)30MSPS 相关双采样模块,CCD专用术语,具体原理下面再介绍,CCD图像转换的必备的前端模拟功能之一;
(4)4dB+-6dB的6位像素增益放大器(PxGA);
(5)2dB~36dB可变增益放大器(VGA);
(6)低噪声箝位电路;
(7)模拟视频信号的预息影功能;
(8)辅助的可变增益及箝位输入电路;
(9)3线串行可编程数字接口,其实是兼容SPI接口的,只不过省掉一根MISO这条线即对单片机的SPI接口来说只输出数据不用接收数据;
(10)3v单电源工作电压,供电范围是2.7~3.6v,所以无敌的3.3,你懂的,呵呵;
(11)低功耗特性,在3v供电情况下,正常工作模式下功耗为153mW;
(12)最后说下它的封装,48pin LQFP封装。
3.下面说说看E文datasheet比较难理解的几个概念(部分摘自dp网易博客),以下图CCD模式下的结构框图为例:
(1)直流重建(DC-Restore):直流重建的目的是实现直流电平箝位,由于CCD的输出信号包含了一个较大的直流成分,这个直流量很容易造成放大器的饱和或者引起共模效应。因此,CCD的输出信号往往不能直接加到后续放大器的输入端。直流重建电路的功能是从信号中恢复出优化的信号直流分量,即将叠加在CCD像素上的直流电平恢复到一个希望的值。前面是理论,转到实际电路设计中时,就是将CCD输出信号经过一个0.1uF的耦合电容连接到AD9845B的CCD信号输入引脚CCDIN,在耦合电容端产生一个理想的直流偏置电压,可以将CCD信号的直流电平箝位在1.5V左右(如上图)。
(2)相关双采样(CDS):这是CCD中很重要的一个概念,它是根据CCD输出信号和噪声信号的特点而设计,它能消除复位噪声的干扰,对低频噪声也有抑制作用,可以显著改善信噪比,提高信号检测精度。由于CCD每个像元的输出信号中既包含有光敏信号,也包含有复位脉冲电压信号,若在光电信号的积分开始时刻和积分结束时刻,分别对输出信号采样(在一个信号输出周期内,产生两个采样脉冲,分别采样输出信号的两个电平,即一次是对复位电平进行采样,另一次是对信号电平进行采样),并且把握好两次采样时间间隔,这样两次采样的噪声电压相差无几,将两次采样值相减,就基本消除了复位噪声的干扰,得到信号电平的实际有效幅值,具体原理如下图(每次AD对CCD信号的采集都是在SHP和SHD的上升沿开始的;数据输出时钟放在SHD的上升沿和下一个SHP的下降沿读取):
(3)输入箝位:输入箝位的目的是去除CCD的黑电平偏移,一些面阵CCD信号有很大的黑电平偏移电压,如果不及时将这个偏移量去除,将会对芯片内部VGA电路的可用放大空间有很大的影响。与其它模拟前端芯片的结构不同,AD9845B在CCD信号进入芯片后就去除了这个偏移电平,这样做有两个好处:其一是减小对芯片采集通道中的黑电平箝位模块的影响,其二是确保VGA有更大的电压放大的空间。
经CDS处理的CCD信号送至下一个电路。箝位电路用来消除信号链中的残留偏压,并且跟踪CCD暗像素的频率成份,错误的信号将被过滤掉,所以噪声 降低,去掉偏压还可减小对增益改变的影响。箝位信号包括CLPDM和CLPOB,其中在黑电平的时候驱动CLPDM脉冲(脉冲宽度必须保证最少4个像素时钟周期),采样黑电平,与CLPOB相配合使用。
(4)可编程像素增益(PXGA):PxGA顾名思义就是针对单个像素的增益,它可以通过一个可编程的增益放大器同时产生四种不同的增益值(配置GAIN0~GAIN3),实现对像素的“多元化”增益。这样输出电压较低的像素可以通过PxGA适当的放大配合输出电压较高的像素。PxGA有的时候也用在彩色面阵CCD的色彩白平衡,这四种像素增益值可以通过色彩控制电路(color steering)进行选择(由于我采用的是黑白色CCD传感器所以就没用到色彩控制电路),另外对配置GAIN0~GAIN3还是没理解明白,如果有明白的高手希望能下面留言帮忙解释一下,谢谢。
4.呼呼,如果能理解上面几个概念,那下面的就好办了,为了驱动AD9845B完成CCD信号的转换,我们还需要给它同步提供6个时钟信号(之所以说同步,是因为这几个时钟是需要跟CCD图像传感器的驱动时钟同步的)包括数据读出时钟DATACLK,预息影数据时钟PBLK,黑电平箝位时钟CLPOB,相关双采样采集参考电平时钟SHP,相关双采样采集数据信号电平时钟SHD,以及输入箝位时钟CLPDM,有了这几个时钟的配合就可以按部就班的让AD9845B正常采集CCD传过来的信号了,下图给出了一种采用AD9845B的CCD图像采集方案(跟它不同,我的方案是所有驱动时钟都由FPGA提供,哎,工程浩大啊):
喝口水先...这次写的有点多估计够时间消化的了,呵呵,其实还有很多细节上的东西,这里就不再写出来了,太累了,有问题可以下面留言一块儿探讨。真是好久没写东西手生了,花了一晚上才慢慢写完,字字斟酌,哎,继续找感觉,呵呵,未完待续~