当前位置: 首页 > wzjs >正文

长沙做网站街东莞企业网站推广

长沙做网站街,东莞企业网站推广,设计公司详情,网站怎么做透明导航MCU存储体系 1.SRAM 2.FLASH 3.TCM SRAM SRAM(Static Random-Access Memory):静态随机存取存储器. 特点:访问速度快、断电丢失、不 SRAM分类 1.系统SRAM:连接在系统总线上,所有外设和CPU都可访问 2.TCM SRAM&…

MCU存储体系

1.SRAM
2.FLASH
3.TCM

SRAM

SRAM(Static Random-Access Memory):静态随机存取存储器.
特点:访问速度快、断电丢失、不

SRAM分类

1.系统SRAM:连接在系统总线上,所有外设和CPU都可访问
2.TCM SRAM:紧耦合内存,专为CPU高速访问设计(如ARM的DTCM)
3.外设SRAM:某些外设专用的缓冲区(如USB、DMA等
在这里插入图片描述
128KB = 128 * 1024 byte = 0x20000
地址范围:0x2000_0000 ~ 0x2002_0000

SYS SRAM与TCM DRAM的区别

在这里插入图片描述

SYS SRAMTCM SRAM
共享资源:多主设备(CPU/DMA/外设)通过总线矩阵访问物理隔离:独立于总线矩阵的专用接口
缓存支持:通常配合Cache使用提升性能零等待状态:与CPU寄存器同级别的访问速度
动态分配:支持标准内存管理 “malloc”静态分配:需显式指定变量位置
SYS SRAM 和AP SRAM区别

在这里插入图片描述

SYS SRAM

mcu访问错误的sram地址可能会导致总线访问失败

TCM SRAM

ITCM Instruction Tightly Coupled Memory :指令紧耦合存储器,用于存储需要快速执行的代码(如中断处理程序、关键算法)

DTCM Data Tightly Coupled Memory :数据紧耦合存储器,用于存储需要快速访问的数据(如实时控制变量、DSP数据)

WIFI FW SRAM

在无线芯片(如WiFi/BT Combo芯片)的架构设计中,FW SRAM(固件SRAM)和SYS SRAM(系统SRAM)是两种不同的内存区域,它们在功能和使用方式上有显著差异
在这里插入图片描述

内存属性

内存区域通常被划分为缓存(Cacheable, C)、非缓存(Non-Cacheable, NC)、安全(Secure, S)和非安全(Non-Secure, NS)四种属性

C /NC

在嵌入式系统和MCU开发中,SRAM的缓存(Cacheable, C)和非缓存(Non-Cacheable, NC)区域是两种重要的内存配置方式
在这里插入图片描述
在这里插入图片描述

S /NS

SRAM的安全(Secure, S)和非安全(Non-Secure, NS)区域划分
在这里插入图片描述

调试指令

查看内存段指令
`arm-none-eabi-size -A -x your_elf_file.elf`

分配变量到不同SRAM区域

“ram_extra0_bss”
“tcm_data”

__attribute__((section(".ram_extra0_bss"))) 
static uint32_t system_ram_var;// 使用宏简化
#define SYS_RAM_VAR __attribute__((section(".ram_extra0_bss")))
SYS_RAM_VAR uint8_t buffer[1024];

ld文件指定SYS SRAM 和 TCM SRAM内存地址范围

MEMORY {/* 定义内存区域 */SRAM (rwx) : ORIGIN = 0x20000000, LENGTH = 512KTCM  (rwx) : ORIGIN = 0x10000000, LENGTH = 128K
}SECTIONS {/* 系统SRAM区域 */.ram_extra0_bss (NOLOAD) : {__ram_extra0_start__ = .;*(.ram_extra0_bss*). = ALIGN(4);__ram_extra0_end__ = .;} > SRAM/* TCM区域 */.tcm_section : {*(.tcm_data*)} > TCM
}

测试

#pragma once#ifdef __GNUC__
#define SYS_RAM_ALLOC(name) \__attribute__((section(#s(.ram_extra0_bss, __LINE__))) \__attribute__((aligned(4))) name#define TCM_ALLOC(name) \__attribute__((section(".tcm_data"))) \__attribute__((aligned(32))) name
#else
#error "Compiler not supported"
#endif// 使用示例
SYS_RAM_ALLOC(static uint32_t sys_var);  // 分配到系统SRAM
TCM_ALLOC(float32_t dsp_buffer[256]);   // 分配到TCM
http://www.dtcms.com/wzjs/454359.html

相关文章:

  • 梦幻创意晋城网站建设网站功能
  • 日本做的视频网站有哪些问题线上营销怎么推广
  • 赣州瑞金网站建设品牌推广的渠道有哪些
  • 济南微信网站建设百度网站提交入口网址
  • 温州网站建设定制友情手机站
  • 做购物网站能不能赚钱推广产品吸引人的句子
  • 深圳网站建设哪里好口碑营销的缺点
  • 岳阳手机网站建设信息推广平台有哪些
  • 贵阳网站建设哪家好石家庄网络推广平台
  • 网站验证码出不来培训方案模板
  • 榆社网站建设最近的新闻热点
  • 南开区网站建设谷歌搜索为什么用不了
  • 用java做网站后台怎么样公司宣传网页怎么做
  • wordpress+直接连接做seo用哪种建站程序最好
  • 导航网站前端模板阿里云域名注册入口官网
  • 数据库网站建设软件市场推广方案范文
  • 百度经验郑州专业seo首选
  • 政府类网站设计有什么要点今日热点事件
  • b2b商城网站建设seo视频教程
  • .net网站开发环境关键词搜索排名查询
  • 网站怎么做流程百度如何快速收录
  • 制作外贸型网站枸橼酸西地那非片是什么
  • 吐鲁番建设局网站湖南专业的关键词优化
  • 宿州网站开发做推广的软件有哪些
  • 网站建设是什么?百度推广后台登陆入口
  • 简单企业网站用什么seo电商运营是什么意思
  • 珠海网站建设咨询推广互联网营销
  • 3d视频制作公司单词优化和整站优化
  • dw 做简单静态网站小广告公司如何起步
  • wordpress字段插件seo关键词软件