高速同步串行通信方案设计(10Mbps)

JinxLeader 2015-05-07 10:01:18
小弟需要实现一个10Mbps以上的同步串行通信,系统的总体方案是FPGA发送,一台工控机接收。我负责工控机接收部分,具体的通信协议可以由我确定。
我想咨询诸位大侠,我这个需求有没有成熟的解决方案可以借鉴,或者有没有可靠硬件高速板卡提供,我只需要对其进行软件实现就可以满足要求;
如果没有现成的解决方案,能否提供一个解决思路,包含硬件、软件和协议这三方面的内容。
希望大家!
...全文
417 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
shinerise 2015-05-19
  • 打赏
  • 举报
回复
你搜索HDLC转IP转化模块,看有没有你需要的吧。
shinerise 2015-05-19
  • 打赏
  • 举报
回复
HDLC,也就是用以太网来传递数据吧?没听过用高速串口可上10M的。232是异步的,10M时钟根本不可靠,485好像最高能上10M,但估计此时通信距离非常受限。 以太网卡的最底层不就是HDLC协议吗?只是要求你基于对网卡的HDLC芯片层进行编程了吧。你说的Read那种,都是层3以上的函数了。你需要的是层2以下的调用接口。
JinxLeader 2015-05-18
  • 打赏
  • 举报
回复
之所以方案设计定在高速串口,是因为数据发送方是FPGA实现的,所以用串口比较方便。
真我锋采 2015-05-18
  • 打赏
  • 举报
回复
10Mbps不算高,用USB2.0协议来做呗,软硬件都很成熟,加上都是国际标准,通用性很强,而且电脑都支持,一般USB芯片的硬件商都会有驱动免费给你,你不用自己去写驱动程序,很方便。
9527 2015-05-17
  • 打赏
  • 举报
回复
串行不代表一定是串口啊,提醒楼上大家注意。现在的SATA协议也是串行协议。目前串行是大行其道的。 不过我也不知道怎么办可以达到楼主的要求,既然是高速板卡可以找板卡提供商要方案。10Mbps不算高,实在不行楼主就去啃sata去
JinxLeader 2015-05-16
  • 打赏
  • 举报
回复
自己顶一下。
JinxLeader 2015-05-16
  • 打赏
  • 举报
回复
你好,我使用的是一款高速板卡,经测试可以满足需求速率。现在发现瓶颈是在线程这一块。
hyz_cs 2015-05-16
  • 打赏
  • 举报
回复
引用 5 楼 JinxLeader 的回复:
[quote=引用 4 楼 hyz_cs 的回复:] 串口上10Mbps,太高了吧. 可以考虑用网口.
你好,如果我有两块硬盘呢,可否解决这个问题? 如果不行,请问怎么实现线程常驻? 亦或者,我应该如何优化现有程序,使线程切换更快捷,从而达到提高收发速率的目的。[/quote] 网口轻松就上千兆,比你要的速度高100倍了. 10mbps = 1MB 多点,这速度什么硬盘都没问题吧.
fxworld 2015-05-16
  • 打赏
  • 举报
回复
串口硬件传输就达不到10mbps, 不知道楼主怎么想的?
JinxLeader 2015-05-16
  • 打赏
  • 举报
回复
引用 4 楼 hyz_cs 的回复:
串口上10Mbps,太高了吧. 可以考虑用网口.
你好,如果我有两块硬盘呢,可否解决这个问题? 如果不行,请问怎么实现线程常驻? 亦或者,我应该如何优化现有程序,使线程切换更快捷,从而达到提高收发速率的目的。
hyz_cs 2015-05-16
  • 打赏
  • 举报
回复
串口上10Mbps,太高了吧. 可以考虑用网口.
JinxLeader 2015-05-08
  • 打赏
  • 举报
回复
现在硬件协议使用的是HDLC,无地址模式。 我想请教软件层的设计。假设我现在已经接收到10Mbps 的数据到FIFO。应该如何实时读取FIFO中的数据。 我可以使用的函数是 read(char* buff , unsigned size)
CCED136 2015-05-08
  • 打赏
  • 举报
回复
串行通信,是串口么? 用于通讯的可用协议太多了

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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