我在STM32H753上工作,目前在STM32H753I-EVAL2板上。我正在评估外部存储器的功能,特别是FMC SRAM和QSPI闪存。
我使用了来自STMicro (来自STM32CubeH7)的项目,并分别测量了从QSPI Flash和FMC SRAM读取1KB数据的持续时间。在这两种情况下,如果我理解正确的话,不同的时钟是以它们的最大速度配置的(没有升压,即。400 CPU的CPU时钟等等)。
我惊讶地注意到,在同时启用D-cache和I-cache的情况下,从QSPI闪存读取1KB的速度几乎是从FMC SRAM读取1KB的速度。我的预期正好相反,因为FMC是并行总线。
这是我第一次使用FMC内存。
你知道FMC和QSPI在STM32上的比较吗?
发布于 2020-01-17 19:47:30
虽然名称相同,但STM32外设在不同的家庭中表现不同。所以你的问题实际上是与家庭相关的。我将详细说明您的H7部分,但YMMV。
QSPI实际上也是一个并行接口,因为它同时通过4根线传输数据。更重要的是,QSPI是同步的,而且相当快(在某些电压范围内高达133 MHz ),大约是533Mbit/s的瞬时速度。
另一方面,FMC就没有那么快了。最大时钟为100 MHz,启动传输需要几个时钟,即使是突发传输也是如此。更重要的是,它也可以在异步模式下工作,在那里进行一次传输需要5-8个时钟。如果您的SRAM以异步模式连接到FMC,其速度将不会高于每秒15兆传输,这对于16位器件来说是240Mbit/s的瞬时速度。
大多数SRAM器件可以做得更好,但它需要一些FMC设置/调整,可能还需要一些胶水逻辑来在同步/突发模式下启动它。
https://stackoverflow.com/questions/57274543
复制相似问题