-
由第1节所述,处理器采用子母板结构设计,可以实现四通道同时采样。模拟子板和数字母板分别设计了板载时钟,子板时钟用来提供ADC采样和同步时钟,母板时钟则用来实现母板的系统运行以及与DAQ通信等功能。子板所用12 V电源由母板通过FMC接口提供,子板ADC和时钟也通过FMC接口由母板FPGA配置。处理器整体结构框图如图2所示。
-
模拟信号采集模块主要用来实现输入信号的波形数字化,同时提供触发接口、用户自定义接口和外接时钟接口。采用四通道输入,通过运放实现信号的单端转差分,还可以通过改变增益对输入信号的幅值进行调整以最大化地利用ADC的输入动态范围。另外还为外接触发信号和用户自定义信号设计了缓冲器(buffer)来提高其驱动能力。
ADC前端模拟电路中运放的性能好坏对系统的性能有直接的影响。运放的谐波性能应好于ADC指标,运放的带宽和压摆率也需要高于应用需求。设计中选用了TI公司生产的高速、高带宽、低噪声全差分放大器LMH5401,因其具有优秀的谐波失真,在输入正弦波频率500 MHz、,输出电压Vo=2 V情况下,二次谐波失真(HD2)典型值为–75 dBc,三次谐波失真(HD3)为–75 dBc,同时其输入电流噪声和输入电压噪声都很低,其中输入电压噪声为1.25 nV/
$ \sqrt{\rm{Hz}} $ ,输入电流噪声为3.5 pA/$ \sqrt{\rm{Hz}} $ ,压摆率为17 500 V/μs,可以满足实际需求。采样时钟质量是决定数据采集系统性能的关键因素之一,采样时钟的抖动会导致孔径误差,进而影响ADC信噪比,导致系统性能下降[4]。模拟信号采集模块时钟可选择由板载晶振产生或者外部输入,提供给ADC作为采样时钟和同步时钟,以及用于FPGA高速串行收发器的同步与解串。处理器采用1 Gsps、16 bit的高速高分辨率ADC,对采样时钟质量的要求很高。LMK04832是TI(Texas Instruments)公司生产的一款时钟发生芯片,可以提供多路时钟输出,其时钟抖动只有几十fs,还支持JESD204B协议的同步时钟输出,可以满足设计需求。此外,其还可以通过配置实现输入时钟选择功能,无需再设计外部时钟选择器,简化了系统复杂度[5]。时钟结构如图3所示。
电源质量的好坏对系统性能也有很大影响。模拟信号采集模块采用12 V供电,电源由数字处理模块通过FMC接口提供。ADC的供电电压有四种,分别是模拟1.9 V电压、数字 1.9 V电压、模拟3.0 V电压和数字1.15 V电压,考虑到数字信号传输速率很快,为了避免影响模拟信号质量,采取对上述四种电压分别供电的办法。此外,时钟芯片需要3.3 V电源,运放需要+4.5 V和–0.5 V电源供电,用于驱动触发信号和自定义信号的驱动器需要3.3 V电源供电。电源芯片采用了开关电源(DC-DC)和线性稳压电源(LDO)结合的方式,由开关电源先把12 V降至芯片所需电压值附近来提高电源效率,再通过LDO提供芯片所需的电压值。供电电源示意图如图4所示。
-
处理模块FPGA采用了ZYNQ ultrascale+架构,不仅提供了64位处理器可扩展性,同时还将实时控制和软硬件引擎相结合,包含了处理系统(Processing System, PS)和可编程逻辑(Programmable Logic, PL)两部分,可为复杂的多任务设计提供高度的灵活性[6]。
处理模块设计了连接PS端的DDR4用来作为LINUX系统的运行内存,同时也可以通过DMA (Direct Memory Access,直接存储器访问) 的方式向其中直接存储数据,其采用SO-DIMM (small outline dual in-line memory module)封装的形式,可以使用商用的笔记本内存,降低了维护的难度和成本。此外还有连接在PL端的DDR4,采用了两片4 GB大小的32 bit内存并联,可以实现64 bit并行数据的存储,用于实时数据的缓存。此外还有用于系统启动的SD Card(Secure Digital Memory Card)储存和Flash闪存,系统启动模式可以通过拨码开关进行选择。
处理模块的时钟主要由TI公司的时钟发生芯片LMK04828提供,其具有多个输出通道,小于100 fs的时钟抖动,时钟发生芯片的时钟主要用来提供光口、千兆网口、串口、USB(Universal Serial Bus)接口等所需的时钟,同时提供两路供FPGA内部逻辑编程使用。还有板载50 MHz单端晶振用来提供给FPGA PS端CPU启动使用,另外还设计了125 MHz差分板载晶振用来为可编程逻辑部分提供启动支持。
处理模块还包含了丰富的接口,其中包括与模拟信号模块相连接的接口,为了满足后续的升级与更新,该接口采用了最新的FMC+标准,其拥有560个引脚,包括32个高速引脚,最高可以达到28 Gbps的数据率,可以与模拟信号模块的FMC标准兼容。考虑到未来可能需要的定时功能,处理模块还预留了与定时模块相连接的FMC接口。此外还有用来与数据获取系统进行通信的串口、千兆以太网接口、SFP(Small Form-factor Pluggable)光纤接口等。还设计了用户自定义输入或输出的外设模块接口。其中光纤接口采用了MOLEX公司的74441-0010芯片,支持高达10 Gb/s的数据传输速率。以太网接口则通过FPGA内部千兆以太网控制器+外置物理层芯片的方式实现。另外采用了CP2108串口转USB(Universal Serial Bus)芯片,支持USB2.0协议,使得串口通信可以通过标准USB接口完成。
处理模块采用了12 V直流电源供电,通过DC-DC开关电源转换为FPGA以及其他芯片所需电源,其中时钟芯片和FPGA GTH Bank对电源质量要求较高,所以通过线性稳压电源LDO转换后再进行供电。由于FPGA对上电顺序有要求,故选用了TI公司的TPS3808芯片进行上电顺序控制,具体上电顺序与处理模块供电电源结构图[7]见图5。
-
为了验证处理器的功能,还编写了基于FPGA的高速数据读出逻辑,FPGA逻辑的整体结构框图如图6所示。框图的上下两部分分别对应Zynq MPSoC的PS和PL端。PS端片外有千兆以太网口、DDR4存储器和串口,PL端片外有两个SFP接口、DDR4存储,并接收ADC输出的JESD204B协议的高速数据。从ADC采样数据的流向来看,首先由两个JESD204 IP Core分别接收两片ADC输出的数据,由子板上的时钟发生芯片LMK04832向ADC提供采样时钟和同步(SYSREF)时钟,同时还会向PL端提供CORE 时钟和SYSREF时钟。JESD204 IP Core主要包括物理层和链路层两部分,由物理层实现对高速串行数据进行解串,再由链路层实现同步。IP Core的输出即是AXI4-Stream(Advanced extensible interface 4-Stream)协议的并行数据。之后将采样数据转成AXI4-Stream格式的高速并行数据流。接下来由数据打包逻辑对这两个高速数据流分别进行同步和数据重组,并通过触发使能控制来实现多种触发模式。经过使能控制的数据流首先在FIFO中进行缓存,再通过DMA(Direct Memory Access)转换成带有地址的AXI4协议的数据。然后再经过PS与PL之间的HP端口,数据通过PS内部集成的DDR控制器写入到PS侧的DDR存储器中。在完成了一次采集之后,通过RJ45千兆网口或SFP光口将数据发送出去以便后台数据储存与处理显示。
ADC与FPGA之间的通信采用了JESD204B协议,JESD204B标准是一种分层规范,其包含了应用层、传输层、数据链路层和物理层。应用层用来完成用户配置,ADC和FPGA的配置必须相同才可以实现正确的数据传输。以下是需要配置的主要参数:
M: 每个转换器器件的转换器数量;
S: 每个转换器每帧发送的样本数;
L: 通道数量,需要根据链路能传输的最大数据速率进行设置;
F: 每帧所发送的字节数量。
传输层则是根据应用层定义好的链路配置参数来对ADC数据进行包装,将ADC采样数据信息补充控制位和结束位产生半字节组,并将其组装成帧的格式。数据链路层则负责接受来自传输层的并行帧数据,并进行8B/10B数据转换,转换后的数据将送入物理层中进行串并转换[8]。此外数据链路层要进行链路的建立,共分为代码组同步(CGS)、初始通道对齐序列(ILAS)、数据传输三个过程[9]。
处理器最大采样率达1 Gsps,ADC的分辨率为16位,共有两个通道,经过8B/10B数据转换后[10],产生的数据流高达40 Gbps。ADC和FPGA 的JESD204B参数设置如下,ADC选择8通道输出(L=8),单通道数据率为5 Gbps。
$N'\text{是}$ JESD204B的字大小,对于本设计,$N'=16$ ,而F和S的关系由下面的公式决定:$$ F=\left(M \times S \times N^{\prime}\right) /(8 \times L), $$ (1) 对于处理器所用ADC,M也就是转换器数量[11]为2,L=8,每个转换器每帧发送的样本数S设置为2,则每帧所发送的字节数F也等于2。
为了实现与上位机的通信,还进行了基于FPGA ARM核的应用软件开发。下位机软件运行于LINUX操作系统之上,主要实现两个功能。其一是对PL端逻辑的配置,实现对模拟前端电路的控制和高速数据流的传输;其二是调用Socket,实现与上位机之间的TCP/IP协议的数据传输。
-
摘要: 为了实现对高重频硬X射线自由电子激光装置(SHINE)条带型BPM(Beam Position Monitor)系统信号的数字化采样和处理,研制了高重频束流采集处理器原型样机。处理器拥有四通道输入,最高达1 GSps的采样率,16 bit采样位数,采用XILINX公司带有嵌入式CPU(Central Processing Unit)的ZYNQ系列FPGA(Field Programmable Gate Array),可以运行Linux系统,同时可以实现高速采样数据的缓存与读出。处理器采用子母板结构设计,子板为ADC(Analog To Digital Converter)采样板,母板为FPGA数字处理板,子母板通过FMC(FPGA Mezzanine Card)接口进行数据传输。ADC采用JESD204B协议进行数据传输,子母板间通过16对差分信号连接通道,最大总传输速率达到80 Gbps。ADC采样数据传入数字母板后,经过FIFO和DDR的缓存,最后通过TCP/IP协议由RJ45接口传输到上位机进行处理和分析,RJ45接口的数据传输速率约为900 Mbps。经过测试,ADC采集子板的带宽高于480 MHz,且在480 MHz带宽内有效位高于10位。FPGA数字母板运行经Petalinux编译的Linux系统,可以实现对连续或者触发模式下,四通道一百万个采样点的存储与数据传输。整个设计可以满足设计要求。Abstract: In order to sample and process the signal of the Shanghai High Repetition Rate XFEL and Extreme Light Facility (SHINE) strip-line BPM system, a prototype of High-Repetition-Rate Beam Sampling Processor was developed. The processor has four channel input, 1 GSps maximum sampling rate and 16 bit resolution. It adopts Xilinx Zynq series FPGA with embedded ARM core, which can run Linux operating system and realize readout of high-speed sampled-data and data buffering. The processor adopts the structure of mother board and daughter board. The daughter board with ADC is for data sampling, and the mother board with FPGA is used to process the digital data. The daughter board and the mother board transmit data through the FMC interface. The ADC uses JESD204B protocol to transmit data, and the maximum total data rate is 80 Gbps through 16 pairs of differential channels. First the ADC data is transmitted to the digital motherboard. Then it is buffered by FIFO and DDR and finally transmitted to the upper computer for processing and analysis through the RJ45 interface with TCP/IP protocol. The data rate of RJ45 interface is about 900 Mbps. After testing, the bandwidth of ADC daughter board is higher than 480 MHz, and the ENOB(effective number of bits) is higher than 10-bit in 480 MHz bandwidth. The FPGA digital mother board runs Linux compiled by Petalinux, which can realize the data storage and transmission of 1 M sampling points of four channels in continuous or trigger mode. The processor can meet the design requirements.
-
Key words:
- SHINE /
- ZYNQ /
- High-speed data acquisition /
- waveform digitization
-
[1] LAI Longwei, LENG Yongbin, YI Xing, et al. Nuclear Science and Techniques, 2011, 22(3): 129. doi: 10.13538/j.1001-8042/nst.22.129-133 [2] 冷用斌, 周伟民, 袁任贤, 等. 核技术, 2010, 33(6): 401. doi: CNKI:SUN:HJSU.0.2010-06-002 LENG Yongbin, ZHOU Weimin, YUAN Renxian, et al. Nuclear Techniques, 2010, 33(6): 401. (in Chinese) doi: CNKI:SUN:HJSU.0.2010-06-002 [3] 冷用斌, 易星, 赖龙伟, 等. 核技术, 2011, 34(5): 326. doi: CNKI:SUN:HJSU.0.2011-05-004 LENG Yongbin, YI Xing, LAI Longwei, et al. Nuclear Techniques, 2011, 34(5): 326. (in Chinese) doi: CNKI:SUN:HJSU.0.2011-05-004 [4] 张雪萍, 童子权, 任丽军, 等. 国外电子测量技术期刊, 2006, 25(9): 12. ZHANG Xueping, TONG Ziquan, REN Lijun, et al. Foreign Electronic Measurement Technology, 2006, 25(9): 12. (in Chinese) [5] Texas Instruments. LMK04832 Datasheet[EB/OL]. [2021-03-20]. www.ti.com.cn/cn/lit/ds/symlink/lmk04832.pdf. [6] Xilinx. Zynq UltraScale+ MPSoC Technical Reference Manual(UG1085) [EB/OL]. [2021-03-20]. www.xilinx.com/support/documentation/data_sheets/ds925-zynq-ultrascale-plus.pdf. [7] Xilinx. DC and AC Switching Characteristics(DS925)[EB/OL]. [2021-03-20]. www.xilinx.com/support/documentation/data_sheets/ds925-zynq-ultrascale-plus.pdf. [8] 石蕾. TD-LTE基站中数字中频系统的设计及FPGA实现[D]. 武汉: 武汉科技大学, 2015. SHI Lei. Design and FPGA Implementation of Digital Intermediate Frequency System in TD-LTE Base Station[D]. Wuhan: Wuhan University Of Science And Technology, 2015. (in Chinese) [9] 樊周华. 基于JESD204B标准的高速串行接口设计与实现[D]. 西安: 西安电子科技大学, 2015. FAN Zhouhua. A Study of High-speed Serial Interface Based on JESD204B Standard[D]. Xi’an: Xidian University, 2015. (in Chinese) [10] Xilinx. JESD204 PHY v2.0 LogiCORE IP Product Guide (PG198)[EB/OL]. [2021-03-20]. http://www.xilinx.com/support/documentation/ip_documentation/jesd204_phy/v3_0/pg198-jesd204-phy.pdf. [11] Xilinx. JESD204 v6.1 LogiCORE IP Product Guide (PG066) [EB/OL]. [2021-03-20]. http://www.xilinx.com/support/documentation/ip_documentation/jesd204/v6_2/pg066-jesd204.pdf.