第一范文网 - 专业文章范例文档资料分享平台

基于FPGA的PCIE接口设计

来源:用户分享 时间:2025/6/4 6:29:51 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

基于FPGA的PCIE接口设计

(2) 主要接口功能说明

? PCIE_USR_CLK PCIE模块的工作时钟 250MHz

? PCIE_FIFO_RST 由上位机控制的PCIE光纤卡的所有缓冲区复位 ? PCIE_RX_DOUT 上传给PC端上位机的处理过的数据 ? PCIE_RX_RD 数据缓冲区的读使能 ? DATA由上位机下发的参数

? DATA_VLD 下发参数有效信号

? DATA_ADDR 下发参数的地址,供RAM的写地址 ? ENB 双端口RAM写使能 ? PCIE_INT_OK 中断信号 ? PCIE_INT_MODE 中断信号模式说明 ? DATA_IN 上传参数 ? DATA_INVLD 上传参数有效位

4.1.5数据结构协议说明

(1)参数数据结构与存储说明

参数数据的基本结构:下发参数的数据位数为36位,其中的高4位为数据校验位,后32位为真正的参数数据。数据由PCIE传到FPGA板子上使用双端口RAM作为数据的缓存。

帧头:4bit 全为0或者全为1 总字节数: 32bit

(2)下发参数与双端口RAM的工作流程

使用双口RAM的B口,下发参数连接DIB,DATA_ADDR连接ADDRB,DATA_VLD连接ENB,当有参数下发时,ENB会置高并开始在RAM里写入数据

此时DOB会有数据输出,监测DOB的高4位,起始状态高4位为全0,当监测到高4位全变为1时说明数据写完可以读取了,此时ENB置低,同时ENA置高从而从DOA读出的数据即为下发的参数数据。

(3)上传参数与双端口RAM的工作流程

使用双口RAM的A口,上传参数连接DIA,地址线连接ADDRA,上传参数有效信号连接ENA,DATA_IN连接到DOB,当有参数上传时,ENA会置高并开始在RAM里写入数据

此时DOA会有数据输出,监测DOA的高4位,起始状态高4位为全0,当监测到高4位全变为1时说明数据写完可以读取了,此时ENA置低,同时ENB置高从而从DOB读出的数据即为上传的参数数据。

(4)中断控制信号的说明和中断控制流程

外部分别需要产生三个中断:(1)下发参数中断(2)上传参数中断(3)数据传输中断

中断信号使用PCIE_INT_OK和PCIE_INT_MODE来达到产生不同中断的目的,PCIE_INT_OK代表中断,1表示有中断,当PCIE_INT_OK跳变为1时PCIE模块会对CPU产生一个模块,同时会将PCIE_INT_MODE中的值传入一个寄存器中,上位机软件收到中断进入中断回调程序

17

基于FPGA的PCIE接口设计

后,会读取这个寄存器中的值,然后分别对应不同的模式进行不同的操作。

4.2内部的中断和工作流程图

4.2.1整体工作流程图

等待中断无中断有中断PCIE_INT_OK置1将PCIE_INT_MODE的值01传递给BAR0中的4C寄存器上位机收到中断信号,进入中断程序,关闭中断使能中断程序读取4C寄存器中的值检测此寄存器中的值判断是否等于001判断是否等于010判断是否等于100进入参数配置模式,由PC开始下发参数发送完成后,向BAR0寄存器48中写入10指示参数传输完毕跳出中断程序,打开中断使能进入参数上传模式,由PC开始读取参数跳出中断程序,打开中断使能N进入数据传输模式,开始向PC机传输数据跳出中断程序,打开中断使能等待下一次中断等待下一次中断等待下一次中断 图1 流程图

4.2.2 BAR寄存器地址映射关系及功能说明 BAR0地址 0X1C 0X28 0X2C 0X30 寄存器功能说明 DMA开始控制寄存器:写1 表示开始DMA传输 写0 表示结束DMA传输 中断总使能寄存器:写1 表示总使能中断开 写0 表示总使能中断关 屏蔽中断寄存器:不同位写1表示屏蔽不同的中断 不同位写0表示打开相应位的中断 回读中断使能位和中断屏蔽位状态的寄存器 18

基于FPGA的PCIE接口设计

通过回读的数据判断是否收到了中断以及收到的具体哪种中断 0X3C 0X74 0XFC 0X4C PC机下发DMA阀值寄存器 FPGA缓冲区数据计数寄存器: 上位机可以读取该寄存器的值 PC机下发控制命令寄存器:通过下发不同的数据达到控制FPGA的目的 中断模式标志寄存器: 通过读取该寄存器的值来判断收到的是何种中断,从而进入不同的模式 001代表参数配置模式 010代表上传模式 100代表数据传输模式 0X48 BAR1 PC机下发配置参数完成寄存器: 通过向该寄存器写入值来通知FPGA板参数下发完成,写10代表完成参数下发 作为参数的下发和上传使用

4.3ChipScope板上调试时序图

(1)参数下发板上时序图

测试条件: 由上位机向FPGA板下发32位线性数,BAR1中的0XF0寄存器作为数据寄存器 Bar1_we_addr 为地址寄存器 Bar1_we_data为寄存器中的数据 fig 为下发的参数,这里为线性数 fig_vld 为参数有效信号

19

基于FPGA的PCIE接口设计

20

搜索更多关于: 基于FPGA的PCIE接口设计 的文档
基于FPGA的PCIE接口设计.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c1vu0m5fwgb9nplx1m21m_6.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top