[发明专利]一种FPGA与计算机之间的通信系统有效
申请号: | 201310556229.9 | 申请日: | 2013-11-11 |
公开(公告)号: | CN103559156A | 公开(公告)日: | 2014-02-05 |
发明(设计)人: | 王韬;龚健 | 申请(专利权)人: | 北京大学 |
主分类号: | G06F13/28 | 分类号: | G06F13/28;G06F13/38 |
代理公司: | 北京万象新悦知识产权代理事务所(普通合伙) 11360 | 代理人: | 朱红涛 |
地址: | 100871*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种FPGA与计算机之间的通信系统,包括:DMA引擎、PIO引擎、寄存器组、报文控制器、中断控制器和PCIe IP核。通过FPGA硬件中独立的发送和接收模块实现全双工、高吞吐率的DMA数据传输,通过发送或接收模块中对数据流和控制流的单独处理实现低延迟的数据传输,通过上述DMA数据传输,将FPGA和计算机连接在一起。利用本发明提供的技术方案,可以提高FPGA应用与计算机集成的效率,加快FPGA应用的研发、测试及推向市场速度,节省了FPGA应用与计算机集成所花费的时间与人力投入。 | ||
搜索关键词: | 一种 fpga 计算机 之间 通信 系统 | ||
【主权项】:
一种FPGA与计算机之间的通信系统,其特征是,所述通信系统包括:DMA引擎、PIO引擎、寄存器组、报文控制器、中断控制器和PCIe IP核;其中,(1)所述DMA引擎包括下行DMA控制模块、下行DMA数据处理模块、上行DMA控制模块、上行DMA数据处理模块,其中,(1.1)下行DMA控制模块用于对计算机到FPGA方向的DMA进行控制;(1.2)下行DMA数据处理模块用于对计算机到FPGA方向的DMA数据进行处理;(1.3)上行DMA控制模块用于对FPGA到计算机方向的DMA进行控制;(1.4)上行DMA数据处理模块用于对FPGA到计算机方向的DMA数据进行处理;(2)所述PIO引擎对PIO的请求进行处理,对于PIO读请求,PIO引擎将向寄存器组给出PIO读地址,当寄存器组返回读取的数据时,PIO引擎通过报文控制器和PCIe IP核向PCIe总线上回复读取到的数据;对于PIO写请求,PIO引擎向寄存器组给出PIO写地址和数据,以使数据被写入寄存器中;(3)所述寄存器组由一系列的状态与控制寄存器构成,用于对系统进行控制,包括DMA读开始寄存器、DMA写开始寄存器、DMA读操作描述符地址寄存器、DMA写操作描述符地址寄存器;(4)所述报文控制器通过PCIe IP核与PCIe总线连接,控制数据的发送和接收;(4.1)报文控制器将通过PCIe IP核接收到的不同类别的数据分发到PIO引擎或DMA引擎中的下行DMA控制模块、下行DMA数据处理模块、上行DMA控制模块、上行DMA数据处理模块中;(4.2)报文控制器从PIO引擎或DMA引擎中的下行DMA控制模块、下行DMA数据处理模块、上行DMA控制模块、上行DMA数据处理模块接收数据,并通过PCIe IP核将数据发送到PCIe总线;(5)所述中断控制器通过与PCIe IP核与PCIe总线连接,控制中断请求的发送;(5.1)中断控制器接收DMA引擎中下行DMA控制模块、上行DMA控制模块的中断请求,当DMA完成或出现错误时,中断控制器将收到DMA读或DMA写的完成或出错中断请求;(5.2)中断控制器通过PCIe IP核将中断请求发送到PCIe总线上,进而引发计算机系统中的中断过程;(6)所述PCIe IP核用于和PCIe总线进行交互,将PCIe总线信号中的数据提取出来。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310556229.9/,转载请声明来源钻瓜专利网。
- 上一篇:网页信息抽取方法和装置
- 下一篇:一种复合聚合型缓蚀阻垢剂及其制备方法