导言
本文提出了一种根据PCI Express总线接口的、具有可扩展功用、并可大容量存储数据的收集体系。该体系的最高采样速率可达80 MHz,运用核算机并经过PCI Express总线和收集卡、Raid磁盘阵列相连后,便可经过主机软件界面完结对硬件设备的操控。
1 体系结构
计划总体上分为三个部分:高速信号收集卡、主机、Raid磁盘阵列,他们之间可经过PCIExpress总线衔接。其体系结构如图1所示。
本体系的高速信号收集卡首要由信号调制电路、数据收集模块、收集时钟操控模块、数据缓存和逻辑操控模块、PCI Express总线接口操控等部分组成。其间逻辑操控模块担任接纳来自PCIExpress接口的主机操控信息以及采样时钟频率的操控信号,并向体系的其它部分发送相关的操控指令。在进行数据收集时,A/D转化芯片的输出在经过信号处理后,可在数据缓存模块的操控下存入FPGA内部FIFO中;然后再经过PCI Express总线经过主机内存转存到Raid磁盘阵列。
2 体系完结
2.1 数据收集
本体系中的数据转化芯片选用ADI公司出产的AD9430流水型转化器。它是一种单片低功耗12位高速ADC器材,选用3.3 V单一电源供电,具有最大的高速转化率(能够到达210 MSPS),并在较宽的频带范围内依然具有较好的动态特性。别的,片内还集成了高功用的采样坚持放大器、参阅电压源和数据时钟输出信号。可为体系供给愈加简捷的处理计划。
AD9430有两种数据输出接口形式,即3.3VCOMS输出和LVDS输出。AD9430正常作业后,每个时钟周期进行一次A/D转化,当经过内部缓冲采样坚持器和编码之后,可将转化成果锁存到输出寄存器。
一般高速数据收集都是建立在高速高精度采样的根底之上,而高速采样有必要得到高质量时钟信号的保证。采样时钟发生电路是高速AD采样的根底模块。本体系选用可程控时钟源SY89429AZC来发生AD9430的采样时钟,并经过对SY89429AZC芯片S_CLOCK、S_DATA、S_LOAD三个引脚信号线的操控,来程控输出40MHz~200MHz准确采样时钟。图2所示是SY89429AZC的三线操控时序图。
TTL引脚S_DATA为装备串行移位寄存器的输入端,串行寄存器可在每一个S_CLOCK信号的上升沿对S_DATA信号进行取值。还有一装备锁存器可在S_LOAD信号为高电平时锁存串行移位寄存器的内容。这样,经过设置S_DATA信号的值(即T2…T0,N1,N0,M8…M0的数值)以及三信号线的时序,便可操控SY89429AZC时钟芯片输出准确的采样时钟。
2.2 FPGA逻辑操控
逻辑操控模块要完结的首要功用是解析上位机操控信息并发送操控指令,一起要程控采样时钟频率,还要对收集数据流进行处理和传输。其间数据流逻辑操控模块中的功用组成直接关系到高速收集信号能否实时牢靠的传输。图3所示为数据流的逻辑操控结构框图。
本规划选用Cyclone II系列芯片EP2C5Q208。此芯片为208脚PQFP封装,用户可用I/O资源高达158个,差分通道数为58个,其内部逻辑资源、M4K存储资源、内部PLL数量彻底能够满意本体系规划的需求。
因为AD转化芯片AD94301的采样精度为12位,而PEX8311接口芯片可支撑8位、16位、32位数据位。因而,为了愈加有用的前进数据传输的功率,一起也为了使数据收集速率取得相对提高,规划中的PEX8311选用32位数据位形式进行数据传输。这样,在本计划的FPGA数据流逻辑操控中,不只要进行数据的缓存以及数据传输逻辑的操控,还要进行数据位的改换扩展,即由12位数据扩展为32位数据。为了完结数据位由12位到32位的转化,应先把解串后的12位采样数据进行数据分流模块,以把12位数据替换存储到两个FIFO中缓存。图4所示是经数据分流模块替换发生12位数据的仿真示意图。
高速数据收集体系中的数据传输速率与A/D转化器的收集速度很难坚持共同。为了和谐数据收集与数据传输之间的速度差异,一般都在两者之间参加数据缓存器进行缓冲,使前端的数据收集与数据传输能够异步作业。一般的做法是在A/D转化后将数据送至外置的FIFO或双口RAM中进行缓存。但这样无疑会添加布线密度,一起下降数据传输的牢靠性。EP2C5Q208 Cyclone II系列FPGA供给了多达26块的M4K RAM,并且PCI Ex-press总线的传输速率也大于数据收集速率,所以,可在FPGA内部设置FIFO空间来完结对数据的缓存。这样,从FIFO读出的两组12位数据经过符号位扩展模块后,即可扩展改换为32位数据并由FPGA并行输出到PCI Express接口模块。
2.3 PCI Express接口操控
因为数据收集速率跟着芯片技能的前进而不断前进,而很多的数据有必要传输至主机进行处理。这些传输都由那些将设备衔接到主机内存的数据总线完结。因而,数据总线传输的速率常常成为整个数据收集体系的瓶颈,这也是许多仪器带有贵重板载内存的首要原因之一。而PCI Ex-press的呈现,可使丈量设至极主机内存的数据传输速率到达一个史无前例的高度。
PCI Express又称3GIO,即第三代输入/输出接口的意思。串行数据传输可使数据传输速率到达惊人的2.5 Gbps (PCI Express 1.0标准),且选用全双工数据传输,并可扩展为×1、×4、×8、×16通道形式。
以PCI Express×1来核算,扣除数据校验冗余8 bit10 bit,有用数据传输率能够到达200 Mbyte,理论上能够供给100 MHz采样速率和双字节以内的采样精度的传输带宽。
现在,完结PCI Express总线接口操控的办法有两种:一种是选用FPGA/CPLD来完结。现在,Altera等专业FPGA公司都供给了多种PCI Express总线接口完结计划,并供给了相应的MegaCore。可是这种计划规划难度大,调试困难;另一种是选用专用接口芯片,如运用PLX公司的PEX8311来完结部分总线与PCI Express总线的衔接。现在,不管从技能仍是本钱来看,第二种计划都是比较抱负的挑选。
PEX8311芯片契合PCI Express 1.0根本标准,它支撑主形式、从形式以及DMA三种数据传输方法。PEX8311芯片的首要特性如下:
◇集成有单通道、全双工2.5 Gbit/s传输的PCI Express端口;
◇可装备部分总线宽度,支撑8位、16位和32位的总线方法;
◇支撑数据总线、地址总线独立和复用总线操作形式;
◇双通道高功用的DMA数据传输可支撑数据块形式、涣散/会集形式、硬连线数据传输形式和指令形式;
◇支撑PCI Express标准中的端点和根复合体形式;
◇芯片小型封装,合适紧凑的电路板规划。
本计划中首要运用DMA方法中的指令形式。在指令形式下,能够经过一对硬连线“DREQ”和“DACK”来操控传输,每一个DMA通道都有一对这样的信号。当FIFO在被写满或读空时,指令形式将暂停操作。而当FIFO状况改动今后,又可继续跋涉数据传输。
2.4 Raid磁盘阵列
从存储容量、读写速度和单位本钱等方面归纳考虑,能够考虑运用多个硬盘组成Raid磁盘阵列来作为长时高速收集体系的存储载体。即把多块容量、功用、品牌共同的硬盘组合起来构成一个硬盘组,然后供给比单个硬盘更高的读写速率,以处理数据存储容量的速度问题。该方法的磁盘容量能够到达惊人的T字节等级,可充沛满意体系长期高速收集的需求。本体系选用Raid磁盘阵列操控卡,最高可衔接8块SATA II硬盘,本体系挂接了4块西数500GSATAⅡ硬盘。用硬盘读写速度测验软件IOmeter能够测得:在256KByte块传输形式下,磁盘写入速度能够达400MB/s以上,而这也契合体系DMA方法的数据传输形式,所以,在磁盘写入速度方面,该方法彻底能够满意体系使用需求。
3 功用测验
PLX SDK是由PLX公司供给的专门针对该公司出产的PCI Express接口芯片的软件开发工具包。当安装完PLXSDK软件后,再把PEX8311开发板刺进PCI Express插槽中,就能够用PLXMon对PEX8311的DMA形式下的数据传输进行设置和剖析。图5所示是本体系的功用测验界面图。
4 结束语
根据PCI Express总线技能和Raid磁盘技能研发的高速大容量数据存储体系,其最高采样速率可达210MHz,存储容量为2TB。假如要扩展存储容量,只需替换Raid磁盘阵列操控卡并添加硬盘数量即可。经过实际运用标明,该体系能够在50MHz采样率下安稳、牢靠、继续不间断的完结数据的收集和存储,并且操作便利,扩展性强,具有必定的工程使用价值和参阅价值。