传说中的路过 发表于 2024-3-1 16:02:59

H750配置时,ETH中有一句话‘the eth can work only when ram is pointing at 0x24000000’请问是什么意

这句话的意思是 TX和RX的描述符要在0x2400 0000(AXI-SRAM)的地址吗

__ETH_DMADescTypeDefDMARxDscrTab;
__ETH_DMADescTypeDefDMATxDscrTab;

还是我在Lwip中调用recv send函数什么的时候,接收数组要在0x2400 0000地址内啊

如果我在SDRAM的地址0xC000 0000去使用 会存在问题吗 我看总线矩阵上是 ETH FMC AXI-SRAM SRAM123都是相连的

![微信截图_20240301161755.png](data/attachment/forum/202403/01/161808m595mq46zif2v4qa.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/300 "微信截图_20240301161755.png")

感谢各位大佬的帮助

传说中的路过 发表于 2024-3-15 16:28:10

FMC的外部存储器可以,验证过了,可以存放lwip的内存堆 内存池的内容。描述符没有验证FMC,但是描述符放在0x24000000或SRAM1-3地址内均可

xmshao 发表于 2024-3-1 17:15:07

先把跟以太网应用有关的内存安排在0x24000000开始的空间吧。它这样建议应该考虑到访问速率和可以访问性两方面。
比方DTCM的话,通用DMA肯定是访问不了的。


对于各个主设备可访问存储空间可以参考表格Bus-master-to-bus-slave interconnect。先跑起来,然后可以自行做些调整。


另外,使用H7系列,对存储空间做合适MPU往往是必要的,当然这些都可以先在cache关闭条件下功能调通后再来处理。

传说中的路过 发表于 2024-3-1 17:34:18

xmshao 发表于 2024-3-1 17:15
先把跟以太网应用有关的内存安排在0x24000000开始的空间吧。它这样建议应该考虑到访问速率和可以访问性两方 ...

实际上我看CubeMX生成的TX和RX的描述符,都定义在了0x3000 0000地址往后,所以我对定义在AXI-RAM这个事情抱有疑问,到底是和ETH相关的什么需要定义在AXI-RAM呢。

不能定义在DTCM我是理解的,毕竟总线上也没有交集

背影101 发表于 2024-3-6 08:26:17

页: [1]
查看完整版本: H750配置时,ETH中有一句话‘the eth can work only when ram is pointing at 0x24000000’请问是什么意