基于FPGA的USB2.0虚拟逻辑分析仪的设计与实现
扫描二维码
随时随地手机看文章
使用并行触发方式,可以选择最多八级的并行触发。在进行触发设置时,除设置触发方式(选择并行触发)和进行频率选择以外,还需要进行触发字、屏蔽位和并行深度的设置。其Verilog HDL算法源程序如下:
if ((({dbuf4[0],dbuf3[0], dbuf2[0],dbuf1[0]}^ TrigWord [dcount] )&enbit[0] ) == 4‘h0)
begin
if(dcount[2:0]==control[4:2])
begin
TrigFlag=2‘b01; Trigpoint[6:0] <= MemABus_Wr[6:0];
dcount="3"‘b000; end
dcount = dcount+3‘b001;
end
其中,dbuf4、dbuf3、dbuf2、dbuf1分别为采样通道4、3、2、1的数据缓存;TrigWord[dcount]为触发字;dcount为触发深度计数器;control[4:2]为设定的触发
深度;enbit[0]为屏敝字;Trigpoint为触发位置寄存器。
USB2.0接口设计
本设计选用符合USB2.0规范的CP2102芯片构建系统与PC的通信接口。
CP2102是USB-UART桥接芯片。该电路内置USB2.0全速功能控制器、USB收发器、晶体振荡器、EEPROM及异步串行数据总 线,支持调制解调器全功能信号,无需任何外部的USB器件。其功能强大,采用MLP-28封装,尺寸仅为5mm×5mm,占用空间非常小,非常适合大数据 量处理与传输电路系统的设计与应用。
实际应用中,系统只需使用CP2102基本的输入/输出数据线与复位信号线。其接口原理如图2所示。
系统启动时, 单片机RB1端口发送一低电平至CP2102复位端,芯片复位,然后保持复位端高电平,CP2102正常工作。
图3 系统面板
实验操作
采用LabView7.1开发的虚拟操作平台,可以方便实现仪器的操作控制。实验开始前,首先选择通信端口,建立PC与本系统的通信;设置触发 电平,设置采样频率(外部、内部或其他)、触发方式、触发字、屏蔽字并点击“发送触发命令”按钮,完成相关设置,开启数据采集和触发进程。点击“读取采样 数据”可读出采集到的数据,并在PC上显示。
结语
在综合考虑应用需要和成本的前提下,本设计采用4个高速采样通道,最高可达75MHz采样率,存储深度达512KB,最多可采集220个测试 点。触发电平由10位串行数模转换器TLC5615产生,电平误差小于5mV。高速USB2.0通信接口配合LabView7.1开发的虚拟操作平台,可 实现数据在PC上的实时显示。本设计的成本还不到市场上同性能产品的1/2,更适用于教学等对产品数量要求较多,性能要求中等的单位采用。