基于FPGA的CCD视频波形发生器
张毅1,2, 张鸿飞1,2, 陈诚1,2, 唐琪杰1,2, 王坚1,2     
1. 中国科学技术大学近代物理系, 安徽 合肥 230026;
2. 核探测与核电子学国家重点实验室, 安徽 合肥 230026
摘要: 为了测试用于中国南极小望远镜阵的CCD控制器视频采样电路的性能并对其进行低温可靠性验证,设计了一款基于现场可编程门阵列的CCD视频波形发生器,它能产生CCD探测器输出的视频波形。上位机通过USB2.0接口与视频波形发生器进行指令通讯,可以改变波形的幅度、周期、上升沿时间以及叠加的噪声。通过设定不同参数的波形输入CCD控制器的视频采样电路,可以在不同温度下对电路的性能进行充分测试,不仅提高了测试效率而且有效地避免了安装CCD测试造成的风险。测试结果表明,CCD控制器的视频采样电路性能满足要求并可以在低至-80℃下稳定工作。
关键词: CCD视频波形发生器    真随机数发生器    现场可编程门阵列    性能测试    低温可靠性验证    
The Design of the CCD Video Waveform Generator Based on FPGA
Zhang Yi1,2, Zhang Hongfei1,2, Chen Cheng1,2, Tang Qijie1,2, Wang Jian1,2     
1. Department of Modern Physics, University of Science and Technology of China, Hefei 230026, China;
2. State Key Laboratory of Nuclear Detection and Nuclear Electronics, Hefei 230026, China
Abstract: In order to test the performance of the video sampling circuit of the CCD(Charge Coupled Device) controller for an Antarctic CSTAR (Chinese Small Telescope Array) and verify low temperature reliability, a CCD video waveform generator based on FPGA is designed for generating the video waveform output by CCD detector. A computer can communicate with the video waveform generator through the USB2.0 interface, which can change the amplitude, period, rising edge time and the superimposed noise of the waveform. The performance of the circuit can be fully tested at different temperatures by setting the waveform with different parameters and input to the video sampling circuit of the CCD controller, which not only improves test efficiency but also effectively avoids potential risks during installing the CCD test. The test results show that the performance of the video sampling circuit of the CCD controller meets the requirements and can work stably as low as -80℃.
Key words: CCD video waveform generator    True random number generator    FPGA    Performance test    Low-temperature reliability verification    

随着电子技术的快速发展,科学级CCD探测器由于在可见光波长下高达90%的量子效率、超低读出噪声、高分辨率、宽光谱响应范围等优点广泛应用于天文[1]观测领域。在天文观测中,观测台址的选择十分重要,在空间卫星上观测无疑是最佳的,开普勒(Kepler)空间卫星曾对天鹅座附近约100 deg2的天区进行了长达4年的观测,探测到了大量的系外行星、变星及恒星耀发事件[2]。然而空间卫星的建造极其昂贵,天文学家们继而把目光投向了南极这个具有低风、低湿度、大气平静的地点,同时南极没有大气污染、光污染,还具备长达数月的极夜[3],这些有利的观测条件驱使我国天文学家对南极的探索。2006年底,我国科学家提出在南极冰穹A建造首台天文仪器的计划,即中国南极小望远镜阵(Chinese Small Telescope Array, CSTAR),两年后中国南极小望远镜阵成功安装在南极内陆最高点DOME A,中国南极小望远镜阵是由4个10 cm的望远镜组成,望远镜固定地指向南天极,主要科学目标是进行变星监测,获得多波段、长时间的连续光变曲线,用于暂现天象如新星及超新星等观测,搜索系外行星等。同时,中国南极小望远镜阵的另一重要功能是天文台址测量,进行天光背景、云量和透明度的测量以及连续晴夜的统计[4]。虽然南极拥有诸多观测优势,但是其恶劣的条件也对望远镜系统的电子学及结构设计带来了极大的考验。根据中国南极小望远镜阵的观测要求以及低温可靠性的考虑,中国科学技术大学基于E2V公司的CCD47-20芯片设计了一款科学级CCD相机[5]图 1为CCD相机安装在中国南极小望远镜阵的测试现场图片。

图 1 CCD相机安装在中国南极小望远镜阵的测试图片 Fig. 1 The test picture of CCD camera installed in CSTAR telescope

CCD相机主要由真空腔体、快门、电源系统以及控制器组成。控制器提供CCD工作所需的时钟信号和偏压信号,并将CCD输出的视频信号进行放大采样等处理,同时还具备一定的自检功能。视频采样电路是控制器的关键部分,它直接决定了整个系统能否成像以及图像噪声的大小,因此需借助外部设备产生CCD视频波形输入到控制器进行系统测试。通常的做法是基于直接数字频率合成(Direct Digital Synthesizer, DDS)技术产生任意波形,并利用可编程逻辑器件对整个系统加以控制,从而输出满足需求的视频波形。如美国布鲁克海文国家实验室针对大型综合巡天望远镜(Large Synoptic Survey Telescope, LSST)上的CCD相机设计的CCD仿真器[6],使用12位数模转换器通过高带宽运放驱动后可输出1.23 MHz的CCD视频波形。该技术在国内也有多处应用,如基于现场可编程门阵列(Field-Programmable Gate Array, FPGA)设计的用于航天相机数据采集系统的TDI-CCD信号发生器[7],以及基于复杂可编程逻辑器件(Complex Programmable Logic Device, CPLD)设计的用于CCD相机的信号发生器[8]等。

本文针对中国南极小望远镜阵相机控制器视频采样电路的测试设计了一款CCD视频波形发生器。整个系统由Altera公司的Cyclone Ⅳ FPGA主控,可以模拟CCD输出的视频波形并叠加不同大小的随机噪声,通过上位机的简单设定可以快速对视频采样电路进行测试,不仅提高了测试效率,而且极大程度上降低了CCD探测器损坏的风险。

1 系统结构

整个CCD控制器以及视频波形发生器的系统框图如图 2。上位机通过两个控制软件分别控制CCD控制器和CCD视频波形发生器,命令通过两个USB接口分别下发。控制器控制软件可以根据视频波形发生器产生的CCD波形生成图像,通过感兴趣区(ROI)的选取可以自动计算出当前区域内的像素均值以及均方差,以便分析视频采样电路的功能及性能。

图 2 系统整体框图 Fig. 2 System overall block diagram

CCD视频波形发生器由现场可编程门阵列、USB2.0、视频波形产生电路、真随机数生成器(True Random Number Generator, TRNG)以及电源组成。整个系统由现场可编程门阵列主控,USB2.0用于下发指令参数、传输图像数据。视频波形产生电路可以根据上位机控制软件设定产生相应的CCD视频波形,也可以将一帧特定图像的像素值存入闪存(Flash),通过现场可编程门阵列逻辑算法将像素值逐个转换后由视频波形发生器还原相应的CCD视频波形。真随机数发生器基于现场可编程门阵列内部震荡环的抖动设计,通过现场可编程门阵列输出的使能信号控制整个随机源,产生的随机噪声用于模拟CCD芯片的读出噪声,随机噪声的大小可以通过视频波形发生器控制软件设定随机数的位宽调节。控制器的触发时钟通过插件连接至CCD视频波形发生器,产生的视频波形通过同轴电缆线输入视频采样电路输入端。

1.1 视频波形产生电路

通常科学级CCD输出的视频波形为3段台阶式波形,如图 3中Output信号,其中第1段台阶为复位电平,由R时钟上升沿触发;第2段台阶为参考电平,由R时钟下降沿触发;第3段台阶为像素电平,由R3时钟下降沿触发。当光子入射时,在CCD探测器内部MOS电容器的半导体材料中激发出电子,形成电势差,该电势差对应CCD视频波形参考电平与像素电平的差值,视频采样电路通过相关双采样[9]处理后得到有效像素值。为了使产生的视频波形的相位与实际CCD输出的视频波形一致,需要CCD控制器产生的R时钟和R3时钟触发视频波形的不同阶段,以便视频采样电路能够准确得到每个周期的有效像素值。控制器输出到视频波形发生器的R时钟,经过分压后进入比较器转换成LVTTL信号,通过分压电阻调节合适的比较器参考电压。受限于控制器的视频采样电路,目前读出速度最高支持到800 kPixel/s,本设计采用100 MHz的现场可编程门阵列时钟不断采样比较器的输出信号,从而判断触发时钟的电平变化。

图 3 CCD47-20视频输出信号 Fig. 3 Video output signal of CCD47-20

视频波形产生电路如图 4。由500MSPS高速数模转换器(max5888)、低通滤波模块和高速低噪声运放构成。由于输出的视频波形由R时钟和R3时钟触发,因此其频率与控制器设定的读出速度一致,最高为800 kHz,所选用的数模转换器足以满足设计需求。现场可编程门阵列通过16位LVDS数据和LVDS时钟控制数模转换器,数模转换器输出差分电压信号VpVn经过低通滤波模块后滤除高频噪声,高速低噪声运放将差分信号转换成单端信号输出。运放输出电压与数模转换器数据码之间的关系:

$ {V_{{\rm{out}}}} = \left( {2 \times \frac{{Dat{a_{{\rm{code}}}}}}{{{2^{16}}}} - 1} \right)V,$ (1)
图 4 视频波形产生电路 Fig. 4 Video waveform generation circuit

其中,Vout为运放输出的电压;Datacode为数模转换器的数据码。由于数模转换器的分辨率为16位,因此该视频波形产生电路输出的信号范围为-1~1 V。根据CCD47-20手册,输出响应率为4.5 μV/e-,满阱电子数约为10万个,因此,在过曝光情况下,CCD视频波形参考电平与像素电平之间的最大压差约为450 mV,所以该视频波形产生电路可以满足测试需求。

1.2 真随机数发生器

真随机数发生器基于现场可编程门阵列内部震荡环的抖动作为随机源设计,将产生的随机数同步叠加到数模转换器输出码上可以模拟CCD芯片的读出噪声,其框图如图 5。本设计在现场可编程门阵列内部使用25个反相器首尾相连,构成一个闭合回路作为一个震荡环,随机源由24路震荡环组成,通过使能信号控制产生高频震荡时钟,该时钟周期仅与反相器门延时有关,相比于用PLL或DLL等采取反抖动措施产生的时钟,具有更大的抖动[10]。随机源输出的高频时钟经过D触发器进行第1次采样,采样时钟为100 MHz。24位采样结果经过异或处理后,通过D触发器进行二次采样输出一位随机数,采样时钟为100 MHz。在不需要随机噪声的情况下可以通过控制软件关闭随机源,从而减少系统功耗。

图 5 真随机数发生器 Fig. 5 True random number generator

图 6为测试中使用SignalTap采样4 bit随机数的一段结果。

图 6 SignalTap采样4位随机数的结果 Fig. 6 Result of 4 bits random number sampled by SignalTap
2 现场可编程门阵列逻辑实现

视频波形发生器的现场可编程门阵列逻辑框图如图 7,包括USB通信模块、命令解析模块、随机数产生模块、数模转换器数据整合模块、闪存控制模块、图像数据处理模块以及数模转换器输出模块,各个模块由现场可编程门阵列控制协同工作。

图 7 现场可编程门阵列逻辑框图 Fig. 7 FPGA logic block diagram

USB通信模块负责接收上位机下发的数据,下发数据类型分为指令数据和图像数据。基本指令包括设定视频波形各个阶段电压值、设定视频波形上升沿/下降沿时间、设定真随机数发生器使能或失能以及设定随机数位宽,通过上位机设定参数后,视频波形发生器伴随触发时钟产生重复的周期性信号。图像数据为一帧特定图像的像素值,通过USB存入闪存中。当命令解析模块产生开始读出标志位后,闪存控制模块依次读出每个像素值并输出到图像数据处理模块。图像数据处理模块有两个功能:(1)在R时钟上升沿和下降沿触发下向数模转换器输出模块,输出复位电平和参考电压所对应的数模转换器数据码,默认情况下逻辑将复位电平设成100 mV,参考电平设成50 mV;(2)根据闪存控制模块输出的像素值以及视频采样电路增益计算出CCD视频波形中参考电平与像素电平之间的压差,并将此压差转换成数模转换器输出码,在R3时钟下降沿触发下输出给数模转换器输出模块。在还原一帧特定图像模式中,数模转换器输出模块以100 MHz的主频持续输出数据到数模转换器,当有图像数据处理模块触发时,输出当前数据,若无触发时,则输出上一时刻的数据直到下一次触发到来。

命令解析模块将指令解析后向后续相关模块传递参数及标志位。若产生随机数使能信号,随机数产生模块以100 MHz的主频输出相应位宽的真随机数到数模转换器数据整合模块。在上位机设定CCD波形的模式中,命令解析模块将CCD各阶段幅度值所对应的数模转换器数据码以及上升沿/下降沿时间输出到数模转换器数据整合模块。数模转换器数据整合模块有两个功能:(1)在数模转换器数据码上叠加真随机数,并将数据以100 MHz的主频传递给数模转换器输出模块;(2)在R和R3时钟触发到来时,根据上升沿/下降沿时间计算波形跳变阶段每个点所对应的数模转换器数据码,例如当上升沿设定为100 ns,复位电平和像素电平分别设定为100 mV和0 mV时,采样点将从0 mV每次增加10 mV在10个周期内达到复位电平幅度。在上位机设定波形模式下,数模转换器输出模块由数模转换器数据整合模块触发将产生的数据输出到数模转换器中,产生用户设定的CCD视频波形。其中数模转换器数据整合模块以及数模转换器输出模块的工作主频均为100 MHz,对于100 kHz的视频波形,一个周期内可还原1 000个采样点,足以满足测试需求。

3 测试结果

在测试过程中系统工作的流程如图 8。首先通过视频波形发生器控制软件设定波形幅度、上升沿/下降沿时间以及所叠加的噪声位宽。再通过控制器控制软件设定读出参数,包括读出速度、积分时间、前放增益高低选择。所有参数设置完毕后通过控制器控制软件下发开始曝光指令,视频波形发生器根据R时钟和R3时钟的变化输出实际的CCD视频波形,该波形进入视频采样电路采样后得到像素值,通过USB2.0接口传至上位机,在控制器控制软件上生成一帧图像,供用户分析。图 9是将特定像素值固化到闪存后,通过现场可编程门阵列控制产生的CCD视频波形以及还原得到的图像。整幅图像亮度从左到右依次减小,呈规律的条纹状,与预期一致。

图 8 测试流程图 Fig. 8 The picture of test flow
图 9 CCD视频波形及还原图像 Fig. 9 CCD video waveform and restored image

在视频采样电路的性能测试中,通过视频波形发生器控制软件设定产生一个均匀平场的CCD视频波形,其复位电平、参考电平以及像素电平分别固定为100 mV,50 mV,0 mV,上升沿/下降沿时间为100 ns,并通过控制器控制软件设定读出速率为100 kPixel/s。

在室温下将CCD视频波形分别叠加1到8位随机数噪声后,输入到CCD控制器的视频采样电路,通过实际叠加的噪声与视频采样电路测量的像素值均方差之间的关系,评估视频采样电路的性能。根据多次测试结果,当不叠加随机噪声时,视频采样电路测量100 000个采样点像素值的均方差大约为7.3ADUrms。参考电平和像素电平之间的差值:

$ F(\Delta \mathit{V}) = [\mathit{F}(\mathit{ref}) - \mathit{F}(\mathit{pix})] + [\mathit{F}(\mathit{nref}) - \mathit{F}(\mathit{npix})],$ (2)

其中,FV)为叠加随机噪声后参考电平和像素电平之间的差值;F(ref)和F(pix)分别为在不叠加随机噪声时参考电平值与像素电平值;F(nref)和F(npix)分别为在参考电平和像素电平上叠加的噪声值,FV)的均方差:

$ \sigma F(\Delta \mathit{V}) = \sqrt {{\sigma ^2}[\mathit{F}(\mathit{ref}) - \mathit{F}(\mathit{pix})]{\rm{ + }}{\sigma ^2}\mathit{F}(\mathit{nref}) + {\sigma ^2}\mathit{F}(\mathit{npix})} ,$ (3)

其中,σFV)为FV)的均方差;σ2F(ref)-F(pix)为参考电平与像素电平压差值的方差,即为7.3ADUrms2σ2F(nref)和σ2F(npix)分别为在参考电平和像素电平叠加随机噪声的方差。随机数可近似为在[0, 2n-1]区间内服从均匀分布,其方差计算为

$ {\sigma ^2}{R_{[0, {2^n} - 1]}} = \frac{{{{({2^n} - 1)}^2}}}{{12}},$ (4)

其中,n为随机数的位数;σ2R[0, 2n-1]n位随机数噪声的方差。因此,当不同的随机数噪声叠加到数模转换器输出码时,理论测量的像素值均方差与随机数位数的关系:

$ \sigma F(\Delta \mathit{V}) = \sqrt {\frac{1}{6} \times {{({2^n} - 1)}^2} + {{7.3}^2}} . $ (5)

图 10将视频采样电路实际测量像素值均方差的结果与理论值进行了对比,在叠加1到8位随机噪声后,通过(5)式计算得到的理论像素值的均方差如图 10中虚线STD2。视频采样电路实际测量100 000个采样点像素值的均方差如图 10实线STD1。根据测试结果,两条曲线基本重合,这说明控制器视频采样电路的性能满足要求。

图 10 像素值均方差与随机数位数的关系 Fig. 10 Relationship between pixel value Standard deviation and random number bit

此外,利用该视频波形发生器对控制器视频采样电路进行了长期的低温测试,测试结果表明,控制器在低至-80 ℃的温度下可以正常成像,说明视频采样电路满足南极的低温需求。

4 总结

本文设计了一款基于现场可编程门阵列的CCD视频波形发生器模拟CCD输出的视频波形,可以在不安装CCD芯片的情况下,通过上位机的简单设定快速有效地对CCD控制器进行测试,避免了安装CCD测试造成的风险。针对中国南极小望远镜阵相机控制器的视频采样电路做了详细测试,结果表明,视频采样电路的性能满足要求,也间接证明了控制器的时钟电路在低至-80 ℃的温度下可以正常工作。该视频波形发生器还可以应用于其它科学级CCD视频波形的仿真,对后续其它控制器的研发及测试提供了诸多便捷。

参考文献
[1] 陈建军, 李彬华, 张牛虎, 等. 一种天文用CCD相机的电路设计[J]. 天文研究与技术——国家天文台台刊, 2009, 6(2): 130–135
[2] 王松虎.基于CSTAR的系外行星探测及后续研究[D].南京: 南京大学, 2016. http://cdmd.cnki.com.cn/Article/CDMD-10284-1016142157.htm
[3] YANG H, KULESA C A, WALKER C K, et al. Exceptional terahertz transparency and stability above Dome A, Antarctica[J]. Publications of the Astronomical Society of the Pacific, 2010, 122: 490–494. DOI: 10.1086/652276
[4] 宗伟凯, 付建宁, 牛家树, 等. 2009年南极冰穹A的双色天光背景统计和分析[J]. 天文研究与技术——国家天文台台刊, 2013, 11(1): 89–94
[5] ZHANG H F, WANG J M, ZHANG Y, et al. Scientific CCD camera for CSTAR telescope in Antarctica[C]//Proceedings of SPIE. 2018.
[6] LU W, O'CONNOR P, FRIED J, et al. CCD emulator design for LSST camera[C]//High Energy, Optical, and Infrared Detectors for Astronomy Ⅶ International Society for Optics and Photonics. 2016. https://www.researchgate.net/publication/305686536_CCD_emulator_design_for_LSST_camera
[7] 宋小龙, 张犁, 石光明. 基于FPGA的高精度TDI-CCD信号发生器的设计[J]. 电子科技, 2007(4): 1–4
[8] 姜博, 阮锦. 基于CPLD的CCD信号发生器的研究[J]. 微计算机信息, 2009, 25(17): 267–269
[9] 许秀贞, 李自田, 薛利军. CCD噪声分析及处理技术[J]. 红外与激光工程, 2004, 33(4): 343–346, 357 DOI: 10.3969/j.issn.1007-2276.2004.04.003
[10] 张鸿飞, 王坚, 罗春丽, 等. 基于抖动的高速真随机数发生器的设计和实现[J]. 核技术, 2011, 34(7): 556–560
由中国科学院国家天文台主办。
0

文章信息

张毅, 张鸿飞, 陈诚, 唐琪杰, 王坚
Zhang Yi, Zhang Hongfei, Chen Cheng, Tang Qijie, Wang Jian
基于FPGA的CCD视频波形发生器
The Design of the CCD Video Waveform Generator Based on FPGA
天文研究与技术, 2019, 16(4): 447-454.
Astronomical Research and Technology, 2019, 16(4): 447-454.
收稿日期: 2019-03-29
修订日期: 2019-04-18

工作空间