2. 中国科学院大学, 北京 100039
针对地基大型望远镜数字通信系统信号种类杂、传输距离长、相互干扰强、实时性要求高等特点,在已有的硬件平台上,建立了基于现场可编程门阵列的数字通信软件系统. 该系统主要具有基于光纤的实时通信、数据的解码、同步存储、大容量数据的融合与转换等功能. 经实验验证,该系统最多可实现256路RS422数据和256路TTL电平信号同时在单根光纤上传输,最大发送延时约为2.4 μs;可同时生成7种不同频率的同步信号,最大延时不超过10 μs;时间空间对齐技术中,时间精度为10 μs,空间读取延时约为114 μs. 整个数字通信软件系统通信稳定可靠,符合实时性要求,满足地基大型望远镜的工作需求.
2. University of Chinese Academy of Sciences, Beijing 100039, China
For the characteristics such as data classes' variety, transmitting long distance, strong disturbed and strict real-time of the ground-based high resolution photoelectric imaging telescope communication, a communication software system based on field programmable gate arraywas built on the existed hardware platform. According to the telescope, the software system must have functionsas real-time signal processing based on fiber transmission, code and decode of data, synchronous memory, data fusion and transformation. Experiment indicates that the system can transfer 256 channels of RS422 and 256 transistor transistor logicsignals through fiber in one time, longest delay is 35 μs; the system also can generate 7 synchronous signals, longest delay is less than 10 μs; during the spatial and time information align, time delay is 10 μs, spatial delay is 114 μs. The whole communication software system has right logic, safe transmission, high real-time characteristic, fits the large ground-based high resolution photoelectric-imaging telescope well.
地基大型高分辨率成像望远镜具有系统结构复杂、系统载荷种类和数量多、分系统之间相距远,以及信号种类繁杂、传输距离长、相互干扰强、实时性要求高等特点,对其数字通信系统提出了较高要求.
传统地基望远镜由于其主镜口径小、系统体积小、子系统间数据流简单,故而通信系统多采用基于串口卡和通用计算机的设计方案. 常用多串口MOXA,它支持RS232、RS422和RS4853种串口类型,波特率在9 600~230 400 bit/s之间,单路吞吐率最大0.02 MB/s. 虽然串口卡模式的通信系统技术成熟,构架稳定,但配线繁杂,传输距离受限(10~30 m),信号间干扰强. 随着望远镜口径的增大,图像跟踪处理技术的发展,基于串口卡和通用计算机的通信系统无法完成望远镜的诸多需求,如多路数据和脉冲的对齐、大容量数据的实时处理等,专门用于大容量数据实时处理的高集成度数字通信系统应运而生.
近年来,现场可编程门阵列(FPGA,field programmable gate array)技术以其高集成度、高可靠性、并行处理等特点,使其备受通信领域设计者的青睐[1, 2, 3]. 笔者提出并设计了一种基于FPGA的数字通信软件系统,采用基于Verilog硬件描述语言进行编程设计[4]. 同时,对所使用的硬件平台进行简单介绍,对软件设计进行了详细说明. 经实验验证,所设计的软件系统逻辑正确,稳定性好,且满足系统实时性要求.
1 系统方案设计数字通信系统主要包括机上和机下两部分,机上机下由单根光纤进行数据传输. 其中机上、机下连接的分系统与成像终端的种类和数量如图 1所示.
依据地基大型高分辨率成像望远镜的工作需求,结合上述系统方案设计,对所设计的数字通信软件系统提出6项要求:
1) 系统上电自检. 数字通信系统联合主控计算机系统和各子系统完成自检,主要分为启动系统自检、发送自检命令和回传自检结果3部分.
2) 数据解码. 此功能主要针对编码器. 在已知同步时钟的情况下对编码器进行读写控制、数据接收和零点设置.
3) 提供系统同步工作脉冲和实现同步存储. 利用1 Hz秒脉冲信号作为基频,产生多种频率的同步信号,用作成像终端的触发脉冲.
4) 锁存曝光中心时刻时空信息. 采集相机曝光脉冲的上升沿,在上升沿to时刻开始计数,当计数到曝光时间tp一半时刻处锁存该时刻对应的编码器信息以及时统数据.
5) 数据融合和接口转换. 实现不同帧格式、不同传输频率数据之间的转换,并整合为统一标准信号,以便检测和系统互联.
6) 上述5项中,远距离传输部分共用一根光纤.
2 软件设计系统软件设计流程如图 2(a)所示. 数字通信系统主要工作原理从整体可以分为两方面:对数据的转发和在同步脉冲下的工作流程,具体分为时钟域、数据接收域、数据发送域. 每部分的具体工作内容如图 2(b)所示. 时钟域部分的实现是整个软件系统的难点,其内容多、操作复杂,而且整个时钟域的时序逻辑更需要重点设计. 图 2(c)给出了所设计的数字通信软件系统在同步脉冲下的主要工作流程.
2.1 基于光纤的实时通信数字通信主板核心芯片内置的点对点链路层协议Aurora对Rocket I/O GTP收发器进行了封装,其特点是可使用多个串行链路构成高速的通道. 图 3给出了光纤传输中几个重要信号的时序图,可简要解释传输原理[5].
其中USER_CLK为用户时钟,上升沿有效;TX_SRC_RDY为发送端数据标识信号,低有效;TX_DST_RDY为链路准备信号,低有效,时钟补偿时为高;TX_D为发送端数据;RX_SRC_RDY为接收端数据标识信号,低有效;RX_D为接收端数据.
在上述系统方案设计中,大容量数据的实时通信是本文的难点,为降低系统通信延时和提高传输效率,除在硬件设计上采用高速的光纤通信方式外,软件方面设计了大容量数据快速传输算法,结合图 3所示时序图,算法主要包括数据编解码、脉冲编解码和光纤转换核. 其设计思想为,打破传统的以数据帧为单位的数字处理方式,改成以字节为单位,同时结合自定义编解码方法,完成接收端的数据识别.
1) 数据编解码、脉冲编解码. 光纤传输位宽16 bit,低8 bit命名数据字节,用以存储数据;高8 bit命名标识字节,用以存储包含数据/脉冲标识、数据融合标识、数据源头、数据目的端等信息的编码标识字符. 其中,脉冲信号的数据字节写入具有表示上升/下降沿意义的特殊字符. 根据该编码特点最多可实现256路串口数据和256路TTL电平信号同时传输.
2) 光纤转换核. 其核心部分为通道检测模块,可以实现系统智能选取时分复用方案的功能. 此功能优点为,对于并行传输的数据转光纤串行发送后,传输延时短;同时,将串并交替传输对FPGA并行处理优势的削弱达到最小.
2.2 数据解码绝对式编码器作为一种融合数字技术的精密测角装置,其输出位置值与电动机轴的位置一一对应,便于记忆和保存,且可实现快速、及时、准确的位置检测与控制[6]. 基于上述优点与地基大型望远镜的工作需要,设计了基于大规模集成电路的绝对式编码器解码系统. 接口协议EnDat2.2读取无附加信息位置值的典型时序图见文献[6],依据时序图设计了编码器解码系统,具体流程如下.
1) 接收外部输入的读取编码器位置值信号,使能模式指令发送模块,将RS485编解码芯片置为发送状态,输出系统时钟和模式指令.
2) 发送结束后将RS485编解码芯片改为接收状态,等待编码器输出的上升沿.
3) 检测到数据开始位后,检测F1、F2错误位,若发生错误,系统时钟置高,返回步骤1),重新发送模式指令;若无错误,使能串并转换模块,接收位置值和5位循环冗余校验(CRC,cyclic redundancy check)码,结束后将系统时钟置为高电平.
4) 使能CRC模块,若结果正确,输出接收到的编码器位置值;若错误,输出CRC错误标识,丢弃接收到的位置值.
5) 在接到零点修正指示后,读取存储的编码器零点信息,处理编码器当前值,存储结果等待数据融合.
2.3 同步存储地基大型高分辨率成像望远镜除应具备成像功能以外,同时还应具有测量功能. 测量数据主要来源于高精度的编码器和时间统一系统. 为提高测量数据的精度,数字通信系统需提供同步存储.
1) 多个成像终端的同步存储. 数字通信系统以时统秒脉冲信号作为基频,以100 kHz计数器将其细分产生25~1 000 Hz多种不同频率同步信号,作为系统和成像终端工作脉冲. 其中成像终端为外触发工作模式. 在通信系统收到主控计算机同步存储命令后,发送同步存储脉冲到各系统以实现同步存储. 根据上述工作原理,可知多种同步信号与基频之间延时不超过10 μs. 时序图如图 4(a)所示.
2) 曝光中心时刻时空信息. 数字通信系统需将望远镜成像中心曝光时刻的位置信息和时间信息严格对齐,将数据打包、存储并发送. 时序图如图 4(b)所示. 具体流程如下.
① 时间信息. 数字通信系统首先对比特流形式的时统数据串转并处理,而后进行帧检测提取时间信息,存储并每秒更新.
② 毫秒信息. 基础信号为频率1 Hz占空比小于0.5的脉冲信号,上升沿有效,数字通信系统在检测到上升沿后启动100 kHz计数器,在系统检测到曝光中心时刻时停止计数,输出精度10 μs的毫秒信息.
③ 位置信息. 依据2.2节中编码器解码原理,1 000 Hz采样编码器当前位置值并存储.
④ 同步存储. 数字通信接收上位机发送的曝光时长,在检测到曝光信号上升沿时开始计时,到1/2曝光时长处停止,同时产生同步存储命令读取当前时刻的时间信息、毫秒信息、位置信息,打包发送.
2.4 大容量数据融合与转换数字通信系统将接收到不同系统的数据,拆包提取有用信息,进行数据分类,再根据不同系统要求打包为相应格式,并通过规定频率发送到相应系统.
针对系统上电自检部分规定了特定流程:
1) 全系统上电稳定后,由主控计算机给数字通信系统下达系统自检命令,开启系统自检;
2) 数字通信系统收到主控计算机下达的系统自检命令后,对各子系统以及主控计算机同时下达自检通知;
3) 各子系统收到自检通知后,开启各子系统的自检,并将自检结果回传至数字通信系统;
4) 数字通信系统将各子系统的自检结果分别传送至系统状态信息显示面板和主控计算机,用于显示和对故障诊断信息的处理.
3 实验结果与分析 3.1 实验硬件平台所使用的硬件平台分为机上数字通信系统和机下数字通信系统两部分. 二者内部结构均由通用的数字通信主板外接接口扩展板、显示测试面板3部分构成. 整个硬件平台系统最多可负载60个RS422、4个RS232、10个RS485、32个TTL信号同时传输,最多可显示132路电平信号状态,测试60位比特数据. 文献[7]中详细描述了实验所使用的硬件平台,与本文联系紧密,但其应用范围更为广泛.
3.2 实验验证对上述软件关键技术中基于光纤的实时通信部分设计实验进行验证. 设计4路信号同时发送,其中TTL脉冲2种,频率分别为1 kHz、500 Hz;串口数据2种,波特率为230 400 bit/s. 图 5为光纤数据发送时逻辑分析仪实测的信号波形图.
图 5(a)中data1_tx、data2_tx为光纤发送端数据,data1_rx、data2_rx为光纤接收端数据. 实验测得光纤发送延时约为2.4 μs,对于波特率为230 400 bit/s的串口数据,发送1字节数据约需35 μs,远大于光纤发送延时,即满足实时性要求.
图 5(b)中TTL1_tx、TTL2_tx为光纤编码发送前的TTL脉冲,TTL1_rx、TTL2_rx为光纤接收端解码重构的TTL脉冲,频率分别为1 kHz、500 Hz. 实验测得光纤发送延时约为527.5 ns,对于1 kHz脉冲,周期为1 ms,远大于光纤发送延时,即满足实时性要求.
对上述软件关键技术中基于Endat2.2接口的绝对式编码器解码部分设计实验验证. 输出给编码器的系统时钟为500 kHz,读取编码器位置值信号使能周期为1 kHz. 图 6(a)为实测编码器位置值按角度换算公式计算得到的角度值,图 6(b)为图 6(a)中角度值做差分得到的速度值,图 6(c)为测得的读取编码器位置值使能信号与接收端部分数据位的时序图,可知读取延时约为114 μs.
对上述软件关键技术中时空对齐技术部分设计实验进行验证.图 6(d)为相机曝光信号与系统计算得出中心时刻脉冲信号示波器实测图.
4 结束语设计并实现了一种适用于地基大型望远镜数字通信的软件系统,简述了系统硬件平台,详细说明了软件设计,并设计实验验证. 结果表明,软件系统逻辑正确,稳定性好,满足系统实时性要求. 现已成功应用于项目中,且本软件系统运转可靠稳定.
[1] | 张达, 徐抒岩. 高速CCD图像数据光纤传输系统[J]. 光学精密工程, 2009, 17(3): 670-675. Zhang Da, Xu Shuyan. High-speed CCD image data fiber transmission system[J]. Optics and Precision Engineering, 2009, 17(3): 670-675.[引用本文:1] |
[2] | 孙科林, 周维超, 吴钦章. 高速实时光纤图像传输系统的实现[J]. 光学精密工程, 2011, 19(9): 2229-2234. Sun Kelin, Zhou Weichao, Wu Qinzhang. Realization of high-speed real-time optical fiber image transmission system [J]. Optics and Precision Engineering, 2005, 13(Sup): 30-33.[引用本文:1] |
[3] | 韩红霞, 郭劲, 曹立华, 等. 利用光纤进行多路数据与视频图像信息混合传输[J]. 光学精密工程, 2005, 13(增): 30-33. Han Hongxia, Guo Jin, Cao Lihua, et al. Design of mixed transmission of multi-channel low-speed digital signals and high-speed video signals using optical fiber [J]. Optics and Precision Engineering, 2015, 13(Sup): 30-33.[引用本文:1] |
[4] | 夏宇闻. Verilog数字系统设计[M]. 北京: 北京航空航天大学出版社, 2008.[引用本文:1] |
[5] | Xilinx. Rocket IO transceiver user guide [Z]. 2004.[引用本文:1] |
[6] | Heidenhain. Endat 2.2 position encoder bi-directional interface[M]. Germany: Heidenhain Company, 2011.[引用本文:2] |
[7] | 贾建禄, 王昊京, 杨轻云, 等. 地基大型望远镜数字通信系统的设计[J]. 红外与激光工程, 2015, 44(2): 596-600. Jia Jianlu, Wang Haojing, Yang Qingyun, et al. The communication system for large ground-based high resolution EO imaging telescope design [J]. Infrared and Laser Engineering, 2015, 44(2): 596-600.[引用本文:1] |