Windows 下TSI721数据采集软件
文章目录
- Windows 下TSI721数据采集软件
- 前言
- 一、FPGA SRIO控制器介绍
- 二、TSI721 采集驱动软件设计
- 1.软件流程步骤:
- 2.测试结果
- 总结
前言
我在文章 [《Windows 下TSI721驱动软件使用》](https://blog.csdn.net/weixin_51894432/article/details/114711812)介绍了TSI721软件工具包,现在我们利用该工具包开发一款数据采集软件,下位机是xilinx K7325T 开发板,RapidIO 端口速率是3.125Gbps ,链路是4X。经过测试可以在满带宽1024MB/s的情况下不丢包。一、FPGA SRIO控制器介绍
FPGA控制器首先需要接收TSI721发过来的信息,包括起始映射地址和包长度,例如有128个1MB的连续地址空间。通过VIO可以用NWRITE_R + 门铃的方式循环往TSI721发送数据。
Mode_1x:=0 表示当前速率是4x,=1表示4x变成1x,硬件连接有问题。
Packet_gap :控制发送间隔,决定了发送速率可调。
Packet_num :指定发送数据包的个数。
Start :设置Active-high button 点击 启动发送;
Link_Initlized:当用户调用开始传输函数,或者按start命令,这里就会显示1;否则不能点击Start;
Mode[1:0]:等于2 表示连续发送;等于1 表示单次发送;
Packet_len:指定发送数据包的字节大小;Packet_num*Packet_len 就是总数据量。
Stop :设置Active-high button 点击 停止发送;

二、TSI721 采集驱动软件设计
1.软件流程步骤:
1) 打开TSI721设备; 2) 配置TSI721和K7之间的路由; 3) 映射8个窗口共计128MB地址空间,每个16MB;我发现单个窗口映射最大32MB,我8个窗口连续开,就只能按每个16MB开。 4) 环形队列初始化,开256MB大小; 5) 数据接收处理线程是用户获取缓冲区数据,并且根据前后两次包32位累加数判断是否连续? 6) 开启打印状态线程,每隔一秒打印 实时速率和丢包个数; 7) tsi721_db_start_thread 开启门铃接收线程,每收到一个门铃,将对应映射空间的数据拷贝到缓冲区。 8) s 命令用来启动数据传输 9) e 命令 停止数据传输 10)o 命令退出软件; 11) 关闭TSI721设备和相关处理。2.测试结果
测试结果如下图,可以实现3.125Gbps 4X满带宽1GB/s吞吐量,且不丢包。

总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了Windows下TSI721数据采集软件的功能和使用,有意愿合作的可以下方留言或者联系QQ:2384399038。










