亲测 GD32 spi写gd flash速度和 spi dma速率几乎一样

[复制链接]
3205|17
 楼主| zhangyw40 发表于 2024-7-22 11:36 | 显示全部楼层 |阅读模式
如题,有哪位大佬研究过这个方向的技术吗?为什么在stm32芯片上两者速率能提升一倍了,但是在gd32上 用dma 速率提升几乎无效果呢?
gra22ce 发表于 2024-7-23 10:36 | 显示全部楼层
GD32 SPI写入GD Flash的速度与SPI DMA速率几乎一样,这可能是由于硬件限制
nuan11nuan 发表于 2024-7-23 11:42 | 显示全部楼层
GD32微控制器的SPI外设和DMA控制器可能具有相似的最大传输速率。如果SPI外设和DMA控制器的最高工作频率相同,那么它们在传输数据时的速度也会相近
hhdhy 发表于 2024-7-23 12:44 | 显示全部楼层
在使用SPI DMA时,虽然DMA可以减少CPU的负担,但在配置和启动DMA传输时仍然存在一定的软件开销。如果这个开销较大,可能会抵消DMA带来的性能提升
gongqijuns 发表于 2024-7-23 14:05 | 显示全部楼层
在SPI写入GD Flash的过程中,除了实际的数据传输时间外,还可能包括数据准备、命令发送、等待Flash响应等步骤。这些步骤的时间消耗可能会使得SPI和SPI DMA的总体传输时间相近
星星点点didi 发表于 2024-7-23 15:11 | 显示全部楼层
GD Flash芯片本身的写入速度可能有限制,即使使用SPI DMA,也可能无法超过Flash芯片的最大写入速度
suiziq 发表于 2024-7-23 16:22 | 显示全部楼层
SPI和DMA的工作频率依赖于系统时钟的配置。如果系统时钟配置不当,可能会导致SPI和DMA的实际工作频率低于预期,从而使得它们的传输速度相近
WoodData 发表于 2024-7-23 17:30 | 显示全部楼层
传输本来就是需要时间的,只是使用DMA减少了CPU的介入时间而已。
WoodData 发表于 2024-7-23 17:31 | 显示全部楼层
还要看你程序是怎么处理的。
twinkhahale 发表于 2024-7-23 17:38 | 显示全部楼层
在使用SPI DMA时,可能需要处理DMA传输完成的中断。如果中断处理的开销较大,可能会影响整体的传输效率
hight1light 发表于 2024-7-24 08:42 | 显示全部楼层
为了提高SPI写入GD Flash的速度,可以检查并优化SPI和DMA的配置,确保它们工作在最高效率状态
清芯芯清 发表于 2024-7-24 10:00 | 显示全部楼层
减少数据传输过程中的软件开销,例如减少中断处理次数。确保系统时钟配置正确,以支持更高的SPI和DMA工作频率
eleg34ance 发表于 2024-7-24 12:02 | 显示全部楼层
考虑使用更高速度的Flash芯片,或者优化Flash芯片的写入操作。如果需要进一步分析和优化,可以考虑使用示波器或逻辑分析仪来监测SPI信号和DMA传输过程,以便更准确地找出性能瓶颈
地瓜patch 发表于 2024-7-31 22:03 | 显示全部楼层
怎么测试的速度?用啥设备啊
亚瑟 发表于 2024-7-31 22:52 | 显示全部楼层
用dma速度还不快吗
小小蚂蚁举千斤 发表于 2024-7-31 23:14 | 显示全部楼层
这种情况就跟SPI的硬件有关系了
qn7a12 发表于 2024-8-31 11:28 | 显示全部楼层
检查 SPI 的配置,包括时钟频率、数据位宽、时钟极性和相位等。确保 SPI 时钟频率设置到最大值,并且与外部设备兼容。
qn7a12 发表于 2024-8-31 11:28 | 显示全部楼层
这个问题可能涉及几个方面,包括 DMA 配置、SPI 外设的特性以及硬件设计等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

4

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部