他们说 SYSTEM MEMORY 是什么意思

What do they mean saying SYSTEM MEMORY

我正在开发嵌入式应用程序。 尝试配置我遇到的 DMA 控制器:

You must provide an area of system memory to contain the channel control data structure

系统内存是什么意思?数据静态内存?代码 SRAM?其他地方?

您可以在此处 8.4.3 部分的开头找到该声明: http://www.silabs.com/support%20documents/technicaldocs/efm32wg-rm.pdf

DMA 意味着直接内存访问。这个想法是,像 ADC 这样的模块不会引发中断来要求 CPU 读取其新数据。相反,该模块直接写入 uController 的内存。这节省了 CPU 的执行时间。对于配置,您必须创建堆结构并将指针传递给模块。这允许模块直接更改内存内容。所以它是你的堆,它是你的 SRAM 的一部分。

我对它的理解是,系统内存是从片上 RAM 内存(图 3.1)分配的,而不是外部内存映射或闪存程序内存。 您在 Table 3.2 中看到它显示芯片具有闪存和内部 RAM。我会说系统内存是 RAM,而不是闪存。 3.2 节说了芯片的特点是芯片上有 32KB 的 RAM。 检查图 5.2 中的系统地址 Space。你需要分配你的 DMA_CTRLBASE 和 DMA_ALTCTRLBASE 在该区域内注册,0x20000000 - 0x20007fff 适当地适合控制结构。希望对您有所帮助。