公安局局长什么级别| 喉咙疼挂什么科| 培根肉是什么肉| 青蛙靠什么呼吸| 凉面用的是什么面条| 茹毛饮血什么意思| 一直打嗝不止是什么原因| 表姐的孩子叫我什么| 吃什么食物可以降尿酸| 体贴是什么意思| 爱情和面包是什么意思| 黄金发红是什么原因| 睡不醒是什么原因| pc是什么意思啊| 早上6点到7点是什么时辰| 节度使是什么意思| 挂钩疼挂什么科| 冠状动脉粥样硬化性心脏病吃什么药| 心字底的字与什么有关| 学五行属什么| 脑梗要注意什么| 布病吃什么药| 冰点是什么意思| 痛经什么感觉| 甲沟炎看什么科室| am是什么| 青年是什么意思| 绿茶女是什么意思| 过敏期间不能吃什么东西| 为什么身上会痒| 日生组成什么字| 乳腺结节不能吃什么食物| 小孩为什么发烧| 元帅相当于现在什么官| 牙龈萎缩是什么原因造成的| 什么雷声| s代表什么意思| 榕字五行属什么| 甲状腺是什么病啊| 守夜是什么意思| 肌无力挂什么科| 享受低保需要什么条件| 眉头长痘痘是因为什么原因引起的| 柿子是什么颜色| 前门大街有什么好玩的| 下眼皮肿是什么原因| 肤色暗黄适合穿什么颜色的衣服| 戌时右眼跳是什么预兆| 热疹子是什么症状图片| 为什么手心总是出汗| 婴儿什么时候开始认人| cc什么意思| 国家电网是什么单位| 哀鸿遍野是什么意思| 尿急尿频尿不尽吃什么药| 什么肠什么肚| 风疹病毒抗体阳性是什么意思| 金生水是什么意思| 火同念什么| 吃灵芝有什么好处| 冰袋里面装的是什么| 岁贡生是什么意思| 晕车喝什么| 11月25日是什么星座| 臭粉是什么东西| 孕妇胃痛可以吃什么药| 同位素是什么| 房性逸搏心律是什么意思| 台湾什么时候统一| 蝙蝠飞到家里是什么预兆| 什么牌子的大米好吃| 唇炎是什么原因造成的| 为什么抽烟| 扁平疣用什么药膏| 白痰多是什么原因造成的| 中性粒细胞低吃什么药| 羡煞旁人是什么意思| 华丽转身什么意思| 紫外线过敏什么症状| 发动机抖动是什么原因| 格林巴利综合症是什么病| 咆哮是什么意思| nuxe是什么牌子| 俄罗斯的国花是什么花| 教育基金是什么意思| 夏天喝什么茶最好| 胰腺检查做什么检查| 蜱虫最怕什么药| 嘴下面起痘是什么原因| 心肌损伤是什么意思| 检查生育能力挂什么科| 人为什么会得白血病| 人类的祖先是什么生肖| 外阴瘙痒擦什么药| 冬天可以干什么| 俄罗斯乌拉是什么意思| 九月二十五是什么星座| 关节发黑是什么原因| 鱼丸是什么做的| 什么是kpi| 91年是什么年| 扁平足为什么不能当兵| 气胸是什么原因引起的| 生化检查能查出什么病| 软开是什么| 送老师什么礼物最好| 姿态万千的意思是什么| 吃石斛有什么功效| 什么的口罩| 果糖胺是什么意思| 什么样的花朵| 什么叫高危性行为| 内退是什么意思| 洁面慕斯和洗面奶有什么区别| 产物是什么意思| 肝不好有什么症状| 单抗主要治疗什么| dw什么意思| 节节草有什么作用| 一路走好是什么意思| 智齿拔了有什么影响| 例假不能吃什么水果| 回民为什么不吃猪| 烂苹果气味的是什么病| 右边锁骨疼是什么原因| 孕期吃什么| 孩子晚上睡觉磨牙是什么原因| 天喜星是什么意思| 呋喃硫胺片治什么病| 生不如死什么意思| 意面是什么面| 家里进黄鼠狼是什么预兆| lake是什么意思| 青海省会城市叫什么| 美洲大蠊主治什么病| 酸梅汤不能和什么一起吃| 提手旁的字与什么有关| wt什么意思| 吃什么长个子最快| 许莫氏结节是什么意思| 崖柏是什么| 缺铁性贫血吃什么补得快| 奴才模样是什么生肖| 生肖牛和什么生肖最配| 至死不渝什么意思| 什么叫子宫肌瘤| 一米阳光是什么意思| 手术后吃什么营养品好| 螳螂是什么生肖| 孕妇有血窦要注意什么| 白细胞弱阳性是什么意思| 孩子流黄鼻涕吃什么药效果好| 吃冬瓜有什么好处| 尖酸刻薄什么意思| 五红汤什么时候喝最好| 饭后放屁多是什么原因| 痔瘘和痔疮有什么区别| 海绵肾是什么意思| 大连有什么特产| 梦见炖鱼预示什么| 多囊卵巢是什么原因造成的| 喝完酒头疼是什么原因| 175是什么尺码| 阴道壁是什么样的| 霍金什么时候去世| 肌肉抖动是什么原因| 什么干什么燥| 腹胀做什么检查效果好| cd4是什么意思| 老匹夫是什么意思| 客服是什么意思| 珠地棉是什么面料| 梦见雨伞是什么意思| 止吐吃什么药| 深藏不露是什么意思| 尿常规检查什么| 巾失念什么| 问诊是什么意思| 农历六月十四是什么日子| 梦见媳妇出轨什么预兆| 1110是什么星座| 哈库呐玛塔塔什么意思| 烟雾病是什么| 青春痘用什么药膏擦最好呢| 宫颈肥大有什么症状| 打嗝多是什么原因| 补肾吃什么| 什么是八爪鱼| 跑水是什么意思| 25羟维生素d测定是什么| 是什么有什么| 刘姥姥进大观园什么意思| 爱马仕是什么意思| 全身性疾病是什么意思| 桥本甲状腺炎是什么意思| 莲雾吃了有什么好处| 女性喝红茶有什么好处| 什么时间种白菜| 反复低烧是什么原因| 女人盗汗吃什么好得快| 老面是什么面| 2021年是属什么年| 糖尿病主食吃什么好| 聊胜于无什么意思| 苍蝇吃什么食物| 胎位roa是什么意思| 梦见自己儿子死了是什么意思| 一流是什么意思| 唐僧肉是什么意思| cf是什么| m倾向是什么意思| 色泽是什么意思| 富三代是什么意思| 咳嗽吃什么| 吃坏肚子吃什么药| 淋巴结发炎挂什么科| 青梅什么季节成熟| 脚麻木是什么原因| 10.5号是什么星座| 0mg是什么意思| 男孩过生日送什么礼物好| 女性安全期是什么时候| 大暑是什么时间| 丹宁蓝是什么颜色| 髂静脉在什么位置| 七月与安生讲的是什么| edo是什么意思| 小孩心跳快是什么原因| 腋臭是什么原因引起的| 甲状腺结节忌口什么| 声带息肉有什么危害| 苦瓜泡酒有什么功效和作用| 孕妇上火什么降火最快| 胃溃疡是什么原因导致的| 顺从是什么意思| 感冒吃什么药最快| 肺部硬结灶是什么意思| kda什么意思| 颇丰是什么意思| 最近天气为什么这么热| 十二月份的是什么星座| comeon什么意思| 爱无能是什么意思| 什么是走读生| 妙曼是什么意思| 黑五是什么时候| 衢是什么意思| 低脂牛奶适合什么人喝| trans什么意思| 身份证后面有个x是什么意思| 排尿少是什么原因| 河南属于什么气候| 句号是什么意思| eva是什么材料| 长裙配什么鞋子好看| da是什么单位| kenzo属于什么档次| 福州五行属什么| 1999年出生属什么生肖| ena是什么检查项目| 不适是什么意思| 心脏病人吃什么水果好| 男人喜欢什么样的女人做老婆| 善太息是什么意思| 百度
这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 ? 论坛首页 ? 活动中心 ? 板卡试用 ? 【分享开发笔记,赚取电动螺丝刀】【S32K3】Cache 接口代码解析

共4条 1/1 1 跳转至

【分享开发笔记,赚取电动螺丝刀】【S32K3】Cache 接口代码解析

高工
2025-08-04 09:04:42     打赏
百度 我们将迎来怎样的智能生活,人工智能和实体经济如何深度融合,哪些发展瓶颈亟待突破,都值得思考。

【简介】

S32K314 内部集成了8KB 的L1 DCACHE ,DCACHE  设计时参数为4-way 64-set cacheline size 32B, 32B(cacheline)*64(set)*4(way) =  8192B(8KB),S32K314  芯片为CORTEX-M7内核对应的架构为ARMV7-M。

对应DCACHE ICACHE 信息如下

I-Cache L1: 8 KB, 128 Sets, 32 Bytes/Line, 2-Way
D-Cache L1: 8 KB, 64 Sets, 32 Bytes/Line, 4-Way

image.png

【CACHE INIT】

以下接口为cache init 的代码内容

static INLINE void sys_m7_cache_init(void)
{     
#ifdef D_CACHE_ENABLE   
    uint32 ccsidr = 0U;
    uint32 sets = 0U;
    uint32 ways = 0U;

   
    /*init Data caches*/
    S32_SCB->CSSELR = 0U;                       /* select Level 1 data cache */
    ASM_KEYWORD("dsb");
    ccsidr = S32_SCB->CCSIDR;
    sets = (uint32)(CCSIDR_SETS(ccsidr));
    do {
      ways = (uint32)(CCSIDR_WAYS(ccsidr));
      do {
        S32_SCB->DCISW = (((sets << SCB_DCISW_SET_Pos) & SCB_DCISW_SET_Msk) |
                      ((ways << SCB_DCISW_WAY_Pos) & SCB_DCISW_WAY_Msk)  );  
        ASM_KEYWORD("dsb");
      } while (ways-- != 0U);
    } while(sets-- != 0U);
    ASM_KEYWORD("dsb");
    S32_SCB->CCR |=  (uint32)SCB_CCR_DC_Msk;  /* enable D-Cache */
    ASM_KEYWORD("dsb");
    ASM_KEYWORD("isb");
#endif /*D_CACHE_ENABLE*/

#ifdef I_CACHE_ENABLE  
    /*init Code caches*/
    ASM_KEYWORD("dsb");
    ASM_KEYWORD("isb");
    S32_SCB->ICIALLU = 0UL;                     /* invalidate I-Cache */
    ASM_KEYWORD("dsb");
    ASM_KEYWORD("isb");
    S32_SCB->CCR |=  (uint32)SCB_CCR_IC_Msk;  /* enable I-Cache */
    ASM_KEYWORD("dsb");
    ASM_KEYWORD("isb");
#endif /*I_CACHE_ENABLE*/

}

 对应如下代码选中要操作的CACHE 为L1 data cache 

    /*init Data caches*/
    S32_SCB->CSSELR = 0U;                       /* select Level 1 data cache */
    ASM_KEYWORD("dsb");

CSSELR 对应寄存器描述如下

image.png

    ccsidr = S32_SCB->CCSIDR;
    sets = (uint32)(CCSIDR_SETS(ccsidr));
    do {
      ways = (uint32)(CCSIDR_WAYS(ccsidr));
      do {
        S32_SCB->DCISW = (((sets << SCB_DCISW_SET_Pos) & SCB_DCISW_SET_Msk) |
                      ((ways << SCB_DCISW_WAY_Pos) & SCB_DCISW_WAY_Msk)  );  
        ASM_KEYWORD("dsb");
      } while (ways-- != 0U);
    } while(sets-- != 0U);
    ASM_KEYWORD("dsb");


image.png

上述代码根据芯片设计时的way/set 信息通过DCISW 寄存器invalue 对应的cache line

image.png

image.png

上述代码按照set 遍历将对应的way 中的set cache line 无效。

可以使用DCISW/DCCSW/DCCISW 寄存器来操作cache 

image.png

image.png

以下代码使能cache 

    S32_SCB->CCR |=  (uint32)SCB_CCR_DC_Msk;  /* enable D-Cache */
    ASM_KEYWORD("dsb");
    ASM_KEYWORD("isb");

image.png

image.png

以下是I CACHE 初始化处理,invalidate 后使能ICACHE 

#ifdef I_CACHE_ENABLE  
    /*init Code caches*/
    ASM_KEYWORD("dsb");
    ASM_KEYWORD("isb");
    S32_SCB->ICIALLU = 0UL;                     /* invalidate I-Cache */
    ASM_KEYWORD("dsb");
    ASM_KEYWORD("isb");
    S32_SCB->CCR |=  (uint32)SCB_CCR_IC_Msk;  /* enable I-Cache */
    ASM_KEYWORD("dsb");
    ASM_KEYWORD("isb");
#endif /*I_CACHE_ENABLE*/

 



专家
2025-08-04 18:28:27     打赏
2楼

好高深的东西,应用时是如何使用的呢?是自己觉得需要用CACHE时,应用它存储数据的吗? 


专家
2025-08-04 07:46:53     打赏
3楼

楼主,使用这个cache是为dma做准备吗?一般这个功能是如何使用?


工程师
2025-08-04 13:33:01     打赏
4楼

文章挺清楚的,如果能再罗列出来几个应用场景就更好了。 这个文章属于需要手动管理缓存的开发者。


共4条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]
头大是什么原因造成的 合疗和医保有什么区别 什么是窦性心律 属龙五行属什么 肛门下坠吃什么药
猴赛雷什么意思 spyder是什么品牌 并是什么意思 蹂躏是什么意思 无名指戴戒指是什么意思
贝珠是什么 鸡尾酒是什么意思 蠼螋对人有什么危害 盎司是什么意思 什么食物嘌呤含量高
衣钵是什么意思 办什么厂比较好 吃姜对身体有什么好处 杯葛是什么意思 尿毒症小便什么颜色
口加才是什么字hcv8jop3ns9r.cn 遇人不淑是什么意思fenrenren.com 关羽姓什么hcv8jop8ns7r.cn 健康管理是什么hcv9jop2ns4r.cn 陆地上最重的动物是什么dajiketang.com
苹果枸杞红枣煮水喝有什么功效helloaicloud.com 脚气用什么药最好beikeqingting.com 女人下嘴唇厚代表什么hcv9jop1ns1r.cn 贬值是什么意思hcv8jop8ns8r.cn 疫苗是什么hcv9jop6ns6r.cn
肺部占位性的病变指什么yanzhenzixun.com 恶露是什么颜色的hcv8jop6ns7r.cn 什么刺骨hcv7jop6ns5r.cn 从从容容的意思是什么hcv8jop4ns1r.cn 肺占位病变是什么意思hcv9jop6ns9r.cn
申时属什么生肖hcv9jop5ns3r.cn 八八年属什么hcv8jop0ns9r.cn 侧颜杀是什么意思hcv9jop5ns0r.cn 寄生虫吃什么药可以杀死hcv8jop7ns9r.cn 马来西亚属于什么国家hcv8jop2ns9r.cn
百度