【发布时间】:2016-07-20 09:07:04
【问题描述】:
我的问题是:微控制器中的内存是如何组织和管理的? (它没有任何操作系统,即没有 MMU)。
我正在使用 zynq 7000 (ZC702) FPGA,它有独立的 arm 内核和独立的 DDR 内存,通过 axi 互连连接在一起。
我用十进制写了 11 1111 1111 到 DDR(10 1's),读完后它给了我同样的结果。 当我将十进制的 111 1111 1111 写入 DDR(11 个 1)时,它给了我 -1。
这里消耗了整个物理内存。当我使用任何微控制器时都不会出现这种情况。 谁来管理微控制器中的内存?
【问题讨论】:
-
请注意,MMU 和 OS 是不同的概念。你可能有一个没有另一个。
-
现在 SoC 和微控制器是不同的术语。你的问题很不清楚。既没有单一的 SoC 类型,也没有单一的微控制器。基于 FPGA 的 SoC 更加灵活。你应该多了解一些基础知识,你似乎很困惑(没有冒犯)。
-
微控制器差异很大,你必须阅读他们的手册。我的意思是,由于您没有操作系统来处理不同的架构,因此您必须自己做。看看制造商是否提供一些开发套件。
-
@AUS :你的意思是在微控制器上它可以在制造商级别完成。我可以说,在 ARM startup.s 中也会这样做吗????
-
不知道。但是当我在嵌入式系统(ARM)上工作时,我从制造商那里得到了工具链。然后我就能够为它正确交叉编译一个操作系统。
标签: c memory microcontroller memory-address