当前位置: 首页 > news >正文

FPGA---UDP通信求助

项目场景:

使用UDP进行回环,网络调试助手,发送数据通过UDP接收模块接收,解析出数据,给到UDP发送模块,传回上位机。


问题描述

UDP接收模块中,接收到的CRC校验值与自己计算CRC校验值进行判断,相符后将数据解析给发送端,否则回到空闲状态。当加上CRC校验判断后,回环会有无法接收现象。去掉CRC判断,数据回环无误。

(1)现确定crc计算模块无误,crc_result为接收上位机的值,crc_sum为计算值。
在这里插入图片描述
(2)接收模块中均对目的mac,目的IP,udp端口,IP校验,进行验证均无误。
在这里插入图片描述

此代码用于判断接收CRC值与计算CRC值

always @ (posedge clk125m_o  or negedge reset_n)if(!reset_n)rx_done_check_ok <= 1'b0;else if(crc_result == crc_sum )   rx_done_check_ok <= 1'b1;elserx_done_check_ok <= 1'b0;   //改为1则认为crc值相等,即不判断

此代码用于判断CRC是否通过,通过产生结束信号,解析出数据,不通过则回到空闲状态。

RX_DONE:  beginif((cnt_rx_done >= 2'd2) && (rx_done_check_ok == 1'b0) )begincurr_state <= IDLE;cnt_rx_done <= 0;end	else if(cnt_rx_done >= 2'd3)beginGMII_RX_DONE <= 1;curr_state = IDLE;cnt_rx_done <= 0;endelse begincnt_rx_done <= cnt_rx_done + 1'b1;curr_state <= curr_state;	endend

仿真时没有问题:
在这里插入图片描述
不加CRC判断上板测试时数据传输无误:
在这里插入图片描述
加CRC校验时有时无法通过:
在这里插入图片描述
wireshark抓取也是:
在这里插入图片描述

【注:】

always @ (posedge clk125m_o  or negedge reset_n)if(!reset_n)rx_done_check_ok <= 1'b0;else if(crc_result == crc_sum )   rx_done_check_ok <= 1'b1;elserx_done_check_ok <= 1'b0;   //改为1测为不判断crc校验

还请各位大佬不吝赐教,不胜感激!!!
还请各位大佬不吝赐教,不胜感激!!!
还请各位大佬不吝赐教,不胜感激!!!
还请各位大佬不吝赐教,不胜感激!!!
还请各位大佬不吝赐教,不胜感激!!!
还请各位大佬不吝赐教,不胜感激!!!

【工程附件:】链接:https://pan.baidu.com/s/1Rw9Q0jhR82vSSx_FGYmquQ?pwd=2vvu
提取码:2vvu

http://www.lryc.cn/news/188627.html

相关文章:

  • RxJava介绍及基本原理
  • nginx目录穿越
  • stl String
  • java通过ffmpeg将wav音频文件转广播音频编码-G.711文件发送
  • 【Spring】Springmvc执行流程
  • 游戏软件开发与应用软件开发有什么不同呢?
  • 绥化市中心广场焕发新活力:OLED透明拼接屏的奇观展示
  • JavaScript(CSS)动画引擎汇总
  • 第九章-线程
  • UI设计师岗位的基本职责八篇
  • 【了解一下,单例模式的实现方法--Java】
  • C++实现enum反射,类似magic_enum,支持enum classes
  • 机器学习与模式识别作业----决策树属性划分计算
  • 爬虫破解:解决CSRF-Token反爬问题 - 上海市发展和改革委员会
  • 网络代理技术的威力:保障安全、保护隐私
  • 【STM32 中断】
  • TensorFlow入门(十二、分布式训练)
  • 在React中,什么是props(属性)?如何向组件传递props?
  • java 每种设计模式的作用,与应用场景
  • Appium问题及解决:打开Appium可视化界面,点击搜索按钮,提示inspectormoved
  • android 不同进程之间数据传递
  • 一个完整的初学者指南Django-part1
  • SpringBoot和Hibernate——如何提高数据库性能
  • 五分钟Win11安装安卓(Android)子系统
  • 基于LSTM-Adaboost的电力负荷预测的MATLAB程序
  • GLTF纹理贴图工具让模型更逼真
  • HttpServletResponse对象
  • 在SSL中进行交叉熵学习的步骤
  • 10月TIOBE榜Java跌出前三!要不我转回C#吧
  • 优盘中毒了怎么办?资料如何恢复