微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于Xilinx V5的DDR2数据解析功能实现

基于Xilinx V5的DDR2数据解析功能实现

时间:09-12 来源:互联网 点击:

四通道的脉冲个数,地址3h再为第一、二、三、四通道的脉冲周期…如此循环依次为脉冲周期、脉冲宽度和脉冲个数。

将图2所示的数据文件通过PCI桥芯片下发至FPGA,提供给底层模块使用。同时定义FPGA的复位寄存器和DDR2的工作寄存器,实现软件复位,完成DDR2的读写控制设置。两组DDR2控制子模块是调用的Xilinx的MIG IP核。配置如图3,由于含有两组DDR2,所以其中的Number of Controllers应选择2。

在完成DDR2的管脚定义后,需要参考DDR2的工作控制参考资料以实现DDR2的用户定义,完成相关部分的程序代码设计,其中app_af_cmd =3’h0时,DDR实现写的指令,app_af_cmd=3’h1时,DDR2实现读的指令。DDR2用到的时钟是固定的200 M时钟,此时同样需要用到晶振50 MHz时钟通过PLL倍频至200 MHz,以实现传输数据的有序控制,而不会产生时序上的混乱。

为了能够实现4个通道数据传输的互不干扰,可以在程序代码设计中使用状态机进行控制,部分程序代码如图4所示,相对应的数据传输操作状态转移如图5所示。同时只有正确接收到3个数据(脉冲周期、脉冲宽度、脉冲个数)时,脉冲才能正常的传输,所以需要用到两个寄存器,第1个寄存器作为缓冲器用来接收数据,当缓冲器接收完3个数据时,将其3个数据同时发送至第2个寄存器,以控制输出的脉冲波形。每接收到一个数据对其地址加1,以反过来读取下一个地址的数据。

3 系统验证结果与分析

在系统验证的过程中,一旦系统接收到发送脉冲波形的命令后,就将数据文件解析成的脉冲波形通过DDR2发送,运用Xilinx自带的Chipscope对发送出的脉冲波形进行监测,结果如图6所示。

从图6中可以看出4个通道的前3个脉冲个数分别为5,6,7,和图2参数文件中数据的一致。通过SMA接口将波形连接到示波器上进行观测,示波器上对应的1,2,3,4分别为第一、二、三、四通道的波形图,观测到的波形如图7所示,和Chipscope上抓取的数据保持一致。为了进一步的验证结果的正确性与否,我们以通道一为例,对其进行解释,通过示波器引出波形,进一步验证脉冲波形的周期和脉宽。以参数文件的00000090h:07D0h=2000d为例计算周期,2 000/100 M=20 μs,如图8所示。以000000A0h:C8h=200d为例计算脉宽,200/100 M=2μs如图9所示。

观测图形可看出通道1的周期为图中箭头部分的距离,为5μs×4=20μs,结果正确。

观测图形可看出通道1的脉宽为图中箭头部分的距离,为2μs,结果正确。

4 结论

文中没计并完成了一种基于Xilinx V5的DDR2的数据解析功能的实现,了解了CPCI总线与FPGA之间的通信协议过程,同时根据外部数据文件实现了对输出的脉冲波形进行控制,检测到的信号波形也准确无误,有效的控制了发射时间,在雷达应用领域中具有一定的参考价值。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top