This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Jens、您好!
A15 NOR 闪存驱动程序在 SDK https://www.ti.com/tool/PROCESSOR-SDK-DRA7X 中提供。
您是否在尝试自己做之前先看了一下?
此致、
斯坦利
我们的驱动程序已经能够在 Cortex-M4 ( 配置了 MPU 的 DRA78x)上正常运行 多年。 问题不在于驱动程序本身、而在于当存储器区域在 MMU 中配置为"正常存储器"时、对闪存的存储器映射访问为什么不起作用。 当配置为"器件存储器"时、它可以正常工作、但我们无法选择这种情况、因为器件存储器不允许对齐进行访问、这是我们的软件所必需的! 并且、为存储器映射区域启用高速缓存有望提高性能、这也只有在将该区域配置为"正常存储器"时才可行。
SDK 中的 QSPI 驱动程序源不提供有关 MMU 是否可以与"正常存储器"配置一同使用的线索。 驱动程序似乎根本不使用未对齐的访问。
通过 QSPI 接口的 A15映射可能必须是器件(甚至更少的性能 StronglyOrped)。 来自 A15的普通非缓存存储器可以按照预期的存储器进行重新排序和访问大小转换、而不会产生任何副作用。 在这种情况下、Cortex-M4的引擎处于运行状态、因此其使用常规非缓存可能不会有任何问题。 器件和正常非缓存都流经合并的写缓冲区、因此需要刷新一些写缓冲区。 设备可以合并为相同元素大小的突发、其中正常可以有元素大小促销。
正确的做法是、在器件内存的硬件中没有针对正常内存类型进行对齐修复。 可以在 A15上启用严格的对齐检查并删除不正确的对齐依赖项。