引言
客户反应 STM32L4R9 同 QSPI Flash 通讯,测出来的读取速率为 10MB/s, 和理论值相差较大。
问题分析
按照客户的时钟配置和 STM32L4R9 的数据手册中的数据,OSPI 读数速率为 10MB/s肯定存在问题。
问题解决
从客户测试波形上看,由于是 4 条数据线,因此 8 个 clock 正好是 4bytes,也就是32bits 数据。怀疑 STM32L4R9 QSPI 在 DMA 通讯中,读到一个 word(32bits)数据后需要在内部做一定的数据处理,造成时间延迟。
小结
对 32 位系统来说,使用 byte 的数据传输在一些情况下会降低效率,建议对 32bits 系统使用 32bits 的数据传输方式。
阅读全文