首页 > 其他分享 >为什么GD32F303代码运行在flash比sram更快?

为什么GD32F303代码运行在flash比sram更快?

时间:2024-06-02 13:28:54浏览次数:25  
标签:sram flash GD32F303 访问 MCU 等待

我们知道一般MCU的flash有等待周期,随主频提升需要插入flash读取的等待周期,以stm32f103为例,主频在72M时需要插入2个等待周期,故而代码效率无法达到最大时钟频率。

所以STM32F103将代码加载到sram运行速度更快。

但使用GD32F303时将代码加载到SRAM后速度反而下降了一些,这是为什么呢?

我们前面了解过GD32F303 flash的code area区是零等待的,GD32F系列MCU片上Flash中Code区和Data区使用解密-CSDN博客

零等待访问理论上就应该和在sram运行速度一样,那么为何会比sram更快一些呢?

通过查阅GD32F303用户手册系统架构章节我们可以知道,访问flash时可以直接通过ibus和sbus专用总线进行访问,而访问sram时通过AHB主机接口通过System BUS进行访问,AHB主机接口下更还有挂载有其他主机和外设总线,共享总线带宽。

所以GD32F303的代码运行在code area零等待区时,效率会比常规加载sram的方式更高。

GD32MCU技术交流群:859440462

更多GD32 MCU相关咨询:单片机开发板_国产mcu视频_GD32 - 苏州聚沃电子科技有限公司

 

标签:sram,flash,GD32F303,访问,MCU,等待
From: https://blog.csdn.net/weixin_45254847/article/details/139390317

相关文章

  • 【GD32F303红枫派使用手册】第六节 PMU-低功耗实验
    6.1实验内容通过本实验主要学习以下内容:PMU原理;低功耗的进入以及退出操作;6.2实验原理6.2.1PMU结构原理PMU即电源管理单元,其内部结构下图所示,由该图可知,GD32F303系列MCU具有三个电源域,包括VDD/VDDA电源域、1.2V电源域以及电池备份域,其中,VDD/VDDA域由电源直接供电。在......
  • stm32 f4 SRAM
        备用SRAM是很好的临时数据保存单元,一些需要掉电后保存的数据建议使用备用SRAM保存,只有需要永久保存的数据再用FLASH进行保存。SRAM地址范围电源与复位相关的库文件(备用域的电池管理)#ifndefBKPSRAM_BKPSRAM_H_#defineBKPSRAM_BKPSRAM_H_#include"stm32......
  • STM32WB55 BLE双核flash擦写程序深度解析
    简介STM32WB55的flash擦除有两种机制,一种是只有单核运行下的flash擦除,这种模式下,flash擦除的步骤同其他STM32的flash擦除一样,直接调用HAL库中flash擦除的库函数即可;另一种是双核运行下的flash擦除,这种模式下,因为两颗CPU内核都会访问地址总线,可能会有访问冲突,为了解决这个问题,ST引......
  • GD32 使用ST-Link进行调试出现Error:Flash Download Failed-“Cortex-M3“ 解决方案
    项目场景:原来一直使用STM32,最近有个项目发项工程师打板采用的是GD32,外部引脚是一一对应的,STM32的各种下载工具和方法也是基本相同的。问题描述`前期就是库函数和芯片包要改成GD32的。前期工作都完成了,剩下最后一公里,就是下载程序。在MDK5中,采用STLINK,选好芯片型号,准备下载,但出现了Error:FlashDow......
  • [Paper Reading] FlashOcc: Fast and Memory-Efficient Occupancy Prediction via Cha
    FlashOcc:FastandMemory-EfficientOccupancyPredictionviaChannel-to-HeightPluginlink时间:23.11机构:houmo.ai后摩智能TL;DR当时比较流行的OCC方案内存与计算复杂度较高,本文提出一种称为FlashOcc的方法,仅使用2D卷积将特征由二维空间lift到3D空间。MethodImageEn......
  • flash-attn安装失败
    安装大模型相关环境时,碰到了flash-attn无法安装的问题,看来看去,原来是系统的gcc、g++版本过低。通过以下链接升级centos默认的gcc版本到9:CentOS升级gcc到高版本(全部版本详细过程)。yum-yinstallcentos-release-sclyum-yinstalldevtoolset-9-gccdevtoolset-9-gcc-c++......
  • 【GD32F303红枫派使用手册】第二节 GPIO-流水灯实验
    2.1实验内容通过本实验主要学习以下内容:GPIO结构及原理;GPIO输出功能实现;LED驱动原理。2.2实验原理2.2.1GPIO外设原理GD32F303系列MCU最多可支持112个通用I/O引脚(GPIO),分别为PA0~PA15,PB0~PB15,PC0~PC15,PD0~PD15,PE0~PE15,PF0~PF15和PG0~PG15,各......
  • STM32_HAL_FLASH 模拟 EEPROM
    1.STM32FLASH简介STM32F407ZGT6的FLASH容量为1024K字节,STM32F40xx/41xx的闪存模块组织如图STM32F4的闪存模块由主存储器、系统存储器、OPT区域和选项字节等4部分组成。        主存储器,该部分用来存放代码和数据常数(如const类型的数据)。分为12个......
  • stm32f103c8t6对flash进行操作,Hal库,擦除1页数据大小,写入128字节大小,读取指定地址128字
    参考这篇:STM32IAP应用开发——自制BootLoader-CSDN博客把工程转到HAL库使用的函数,用HAL自带的HAL_FLASHEx_EraseHAL_FLASH_Program 串口显示结果 验证没问题flash在hal库使用的驱动程序#include"flash.h"externvoidFLASH_PageErase(uint32_tPageAddress);//......
  • Digital SRAM-CIM for MAC
    An8TSRAMBasedDigitalCompute-In-MemoryMacroForMultiply-And-AccumulateAcceleratingintroduction相比模拟counterparts,数字CIM具有灵活的可编程性、推理精度等优势。然而,先前的工作采用复杂的SRAMbit-cells和计算部件,导致了较大的面积负担。本文提出了一种8TSRAMb......