FPGA的PCI-E X4 ROOT连接X1设备的带宽问题

[复制链接]
3244|6
 楼主| ysdx 发表于 2012-11-26 10:58 | 显示全部楼层 |阅读模式
大家好!有一个问题困惑了又一段时间了。请教大家。
我的问题是:一个FPGA通过PCI-E X4 root IP硬核连接一个switch,转换成4个PCI-E X1的接口。连接4个PCI-E X1设备A B C D.switch与FPGA通过X4连接。我想用FPGA通过DMA方式启动4个DMA,向ABCD4个设备发送数据,或者接收数据。一般来说,FPGA里面root IP和用户逻辑是通过一个64bit 125MHZ的总线相连。我现在比较困惑的是,当4个DMA都启动的时候,这个总线的时序该是如何的啊?
我的初步设想:这里面肯定有一个仲裁的问题。同时只有一个设备占用总线。如果是这样的话,占用总线时间分配机制是如何的呢?是否可以理解为一个TLP为时间单位呢?谁的TLP来了就谁占用。这样的话,FPGA时间还是跑X4的带宽?
 楼主| ysdx 发表于 2012-11-26 11:25 | 显示全部楼层
由于DMA过程,写存储器采用posted方式,读存储器取采用non-posted方式。感觉non-posted方式的时候就只有X1的带宽了。
sleepybear 发表于 2012-11-26 16:01 | 显示全部楼层
没搞过RC,帮顶。
leafing 发表于 2012-11-26 18:05 | 显示全部楼层
这跟桥片有关,按理上是可以达到X4的速率
GoldSunMonkey 发表于 2012-11-26 20:07 | 显示全部楼层
这个物理链接速度没有问题,我觉得主要问题在于是不是驱动能调动开相关资源。
sleepybear 发表于 2012-11-28 10:36 | 显示全部楼层
顶起。
在RC端,应该是看到4个X1的设备。RC端是不是应该看到的都是一些数据请求?难道IP还要用户自己去做仲裁不成?
 楼主| ysdx 发表于 2012-11-30 12:02 | 显示全部楼层
看了几天的PCI-E资料。明白了。带宽是能够到X4的。这个过程需要用户自己通过VC来实现。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:新手死于追涨,老手死于抄底,高手死于杠杆,价值投资死于满仓死杠!

338

主题

1056

帖子

21

粉丝
快速回复 在线客服 返回列表 返回顶部