首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在X86平台上,从根复合体到端点的单一Memwr (BAR ACCESS)的最大大小是什么?

在X86平台上,从根复合体到端点的单一Memwr (BAR ACCESS)的最大大小是什么?
EN

Stack Overflow用户
提问于 2013-07-02 16:12:03
回答 1查看 383关注 0票数 0

在X86平台上,从根复合体到端点的单一Memwr (BAR ACCESS)的最大大小是什么?

我的系统的设置是有一个PCIe端点设备插入到X86 PC上,这个设备的bar0大小是1 MBytes,这个内存范围已经映射到用户空间。

如果我将数据复制到内存的一部分,就可以在端点端获得bar访问(MemWr)。但是,如果我做一个大拷贝,例如1 MBytes, Memwr 请求总是将拆分成非常小的Memwr TLP(8字节或4字节),这与128 bytes的最大有效负载大小相距甚远。

为什么根comlex分裂请求?这与X86平台有关吗?在X86平台上,Memwr从根复合体到端点的最大大小是什么?

谢谢。

C

EN

回答 1

Stack Overflow用户

发布于 2013-07-03 18:44:00

在链接上使用的最大有效载荷大小( MPS )是EPs、MPS和RCs MPS之间的最小值。在你的例子中,似乎这里的限制数字是RC的数字。

发生这种情况的另一个原因是,如果您没有足够的流量控制信用( FCC ),那么您的驱动程序可以自主地选择拆分MWr,而不是等待FCC达到所需的值,如果它们能够到达的话。

干杯纳达夫。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17430529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档