[发明专利]一种基于FPGA的数据传输板之间进行高速传输的方法有效
申请号: | 201410226473.3 | 申请日: | 2014-05-27 |
公开(公告)号: | CN104008078B | 公开(公告)日: | 2017-02-15 |
发明(设计)人: | 徐强;王飞;王俊 | 申请(专利权)人: | 安徽中兴继远信息技术股份有限公司 |
主分类号: | G06F13/38 | 分类号: | G06F13/38;G06F5/06;H04L1/00 |
代理公司: | 合肥天明专利事务所34115 | 代理人: | 张祥骞,奚华保 |
地址: | 230031 安*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种基于FPGA的数据传输板之间进行高速传输的方法,与现有技术相比解决了数据传输板之间数据通信速率低的缺陷。本发明包括以下步骤监听空闲标志位;对发送FIFO写数据;数据组帧;数据编码;差分传送;差分转换;同步接收;数据解码;数据解析;数据读取。本发明可以更快的实现数据传输板之间的数据传输。 | ||
搜索关键词: | 一种 基于 fpga 数据传输 之间 进行 高速 传输 方法 | ||
【主权项】:
一种基于FPGA的数据传输板之间进行高速传输的方法,主数据传输板包括主CPU(2)和主FPGA(1),从数据传输板包括从CPU(4)和从FPGA(3);主FPGA(1)包括与主CPU(2)相连的主总线控制逻辑模块(11),主总线控制逻辑模块(11)通过发送FIFO(12)与发送帧处理模块(13)相连,发送帧处理模块(13)通过编码模块(14)与并串转换模块(15)相连,并串转换模块(15)与差分输出模块(16)相连;差分输入模块(31)通过同步模块(32)与解码模块(33)相连,解码模块(33)通过接收帧处理模块(34)与接收FIFO(35)相连,接收FIFO(35)通过从总线控制逻辑模块(36)与从CPU(4)相连;差分输出模块(16)与差分输入模块(31)相连,其特征在于,传输方法包括以下步骤:10)监听空闲标志位,检测并串转换模块(15)中的空闲标志位是否处于空闲状态,若处于繁忙状态则继续等待空闲状态,若处于空闲状态,主CPU(2)将发送数据写入主总线控制逻辑模块(11),并置位于主总线控制逻辑模块(11)中的发送标志位;11)对发送FIFO写数据,主总线控制逻辑模块(11)接收到发送标志位的消息后,将数据写入发送FIFO(12);12)数据组帧,发送帧处理模块(13)检测到发送FIFO(12)中有数据后,将数据读出并组帧发送给编码模块(14);所述的数据组帧包括以下步骤:121)发送帧处理模块(13)监测发送FIFO(12)中的数据字节接口;122)若检测到发送FIFO(12)中的字节数不为零,则不停地轮询发送FIFO(12)中的字节信号;123)若字节数超过10个则将数据依次读出,发送FIFO(12)进入读数据状态,发送FIFO(12)读取一个字节的数据后进行计算校验和,判断处理的数据个数是否等于待发送字节数,若是则进入组帧状态,加上帧头、信息位和校验位并将数据传给编码模块(14);若数据个数小于待发送字节数,则继续发送FIFO(12)的数据,直到处理的字节数等于待发送字节数为止;124)若发送FIFO(12)的轮询时间大于超时时间,发送FIFO(12)进入数据状态,发送FIFO(12)读取一个字节的数据后进行计算校验和,判断处理的数据个数是否等于待发送字节数,若是则进入组帧状态,加上帧头、信息位和校验位并将数据传给编码模块(14);若数据个数小于待发送字节数,则继续发送FIFO(12)的数据,直到处理的字节数等于待发送字节数为止;13)数据编码,编码模块(14)接收到数据后,将数据的每个字节通过8B/10B编码器编成10bit的数据,发送至并串转换模块(15);14)差分传送,并串转换模块(15)接收到编码模块(14)的10bit数据后将其转换成1bit数据,通过差分输出模块(16)将单端信号转化为差分信号传出去,并置并串转换模块(15)的空闲标志位为空闲状态;15)差分转换,差分输入模块(31)接收差分输出模块(16)发送的数据并转换成单端信号后发送给同步模块(32);16)同步接收,同步模块(32)通过位同步形成数据采集时钟,通过字节同步得到10bit数据后发送给解码模块(33);17)数据解码,解码模块(33)通过8B/10B解码器将10bit数据转换成8bit数据并发送给接收帧处理模块(34);18)数据解析,接收帧处理模块(34)将数据根据帧定义进行解析,并将解析后的数据存入接收FIFO(35);其包括以下步骤:181)接收帧处理模块(34)在未收到字节使能信号前处于空闲状态,探测到字节使能信号后,接收帧处理模块(34)进入帧头状态;182)判断帧头状态中收到的数据是否是帧头,如果是则等下一个字节使能信号到来进入读帧字节数状态,如果不是,则返回空闲状态;183)读取数据并转入计算校验状态,在计算校验状态中计算校验和并累加读取字节数,当读取字节数小于帧字节数时,返回读取数据状态;当读取字节数等于帧字节数时,进入读取校验位状态;184)在读取校验位状态中,判断校验和是否正确,如果正确则进入写数据到接收FIFO(35)的状态,如果不正确则返回空闲状态;在写数据到接收FIFO状态(35)中,连续将等于帧字节数个数的数据都存入接收FIFO(35)中,存完转入空闲状态,重新等待新数据帧的到来;19)数据读取,从总线控制逻辑模块(36)监控接收FIFO(35)中的数据字节数信号N,如果N=20,则产生中断并通知从CPU(4),从CPU(4)通过数据总线读取数据。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安徽中兴继远信息技术股份有限公司,未经安徽中兴继远信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410226473.3/,转载请声明来源钻瓜专利网。
- 上一篇:舰载光电设备智能充电管理器
- 下一篇:一种复合电源超级电容实时电量管理方法