上层软件和硬件发送数据

zhuoxuan216 2013-04-02 02:48:27
vc上层程序将数据下发到硬件部分(fpga),这些数据是已经产生好的周期性的数据,现在发送的时候,可以发送很小的量(比如几千个点),现在想实现大数据量的发送(几百M)。
1.怎么控制这个周期数据的循环,比如每一次发送2048个数据,怎么实现全部的循环,并且一个周期结束之后,怎么从头继续重复发送该文件。
2.发送大数据量的数据,必然会有效率的问题。怎么才能解决几十M数据就要很长时间的问题,想要将大数据量的数据,在瞬间发送完成。
...全文
189 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
hdg3707 2013-04-07
  • 打赏
  • 举报
回复
映射文件并不复杂,网上有代码,主要是就是虚拟一个内存,避免了读文件频繁访问IO造成的速度慢的问题。
zhuoxuan216 2013-04-07
  • 打赏
  • 举报
回复
引用 10 楼 hdg3707 的回复:
你数据量如此之大,用数组可能会溢出的,这时你得用映射文件了,这个速度快。至少想传送速度快,你得在硬件上支持才行,硬件不支持根本就做不到。 DMA不支持,就用100M的网络通信,这个得硬件支持才行,而且就是硬件支持了处理也不会太快的
我也是感觉数组不好,但是映射文件怎么用呀,能够 实现下发文件中的数据么
schlafenhamster 2013-04-03
  • 打赏
  • 举报
回复
你 是不是 使用 DMA ?
zhuoxuan216 2013-04-03
  • 打赏
  • 举报
回复
1.我现在用的数组暂时存放数据,处理之后数据要存进一个txt文件。有些数据源周期很大,用数组会不会影响这个响应时间? 2.想要实现快速的下发,就是读文件,下发。怎么提高这个效率?
hdg3707 2013-04-03
  • 打赏
  • 举报
回复
你数据量如此之大,用数组可能会溢出的,这时你得用映射文件了,这个速度快。至少想传送速度快,你得在硬件上支持才行,硬件不支持根本就做不到。 DMA不支持,就用100M的网络通信,这个得硬件支持才行,而且就是硬件支持了处理也不会太快的
schlafenhamster 2013-04-02
  • 打赏
  • 举报
回复
我还是不太明白。
zhuoxuan216 2013-04-02
  • 打赏
  • 举报
回复
引用 5 楼 schlafenhamster 的回复:
“数据存在一个文件中。” 几百M文件 ?
一个周期的数据
schlafenhamster 2013-04-02
  • 打赏
  • 举报
回复
“数据存在一个文件中。” 几百M文件 ?
zhuoxuan216 2013-04-02
  • 打赏
  • 举报
回复
引用 2 楼 g6785654 的回复:
周期性数据几百M?什么意思,是指下发完这几百M再一次性处理,还是指都是重复的数据,只是在某一时间内完成那么大量的发送。
几百M Byte,不同的数据源周期不相同(PRB9和PRB11周期不同),上层产生的数据,是一个周期的(大约几KB),数据存在一个文件中。硬件部分需要几百M的,所以就需要重复的遍历文件下发。下发后,就是硬件部分接收并处理啦
zhuoxuan216 2013-04-02
  • 打赏
  • 举报
回复
引用 1 楼 schlafenhamster 的回复:
"将数据下发到硬件部分" 关键是 通过什么 ? 1.串口 慢 2.USB 快 3.DMA 最快
DMA
Ginie 2013-04-02
  • 打赏
  • 举报
回复
周期性数据几百M?什么意思,是指下发完这几百M再一次性处理,还是指都是重复的数据,只是在某一时间内完成那么大量的发送。
schlafenhamster 2013-04-02
  • 打赏
  • 举报
回复
"将数据下发到硬件部分" 关键是 通过什么 ? 1.串口 慢 2.USB 快 3.DMA 最快

2,640

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 硬件/系统
社区管理员
  • 硬件/系统社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧