Navigation

    全志在线开发者论坛

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • 在线文档
    • 社区主页

    【FAQ】全志 F系列/R系列/V系列 RTOS平台cache操作接口介绍

    其它全志芯片讨论区
    1
    1
    1375
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • q1215200171
      budbool LV 9 last edited by

      1.主题

      全志 F系列/R系列/V系列 RTOS平台cache操作接口介绍

      2.问题背景

      全志F系列/R系列/V系列所采用的RTOS,提供了一些关于 Cache 操作的接口,用于当不同 master 在内存上读写传递时使用,以下是 Cache 操作接口的使用介绍。

      • hal_dcache_clean
        函数原型:void hal_dcache_clean(unsigned long addr, int len);
        函数作用:将[addr, addr + len]地址在 dcache 上对应的数据刷回内存,其在dcache 上数据依旧有效。
        使用场景:提供数据给外设时,需要将停留在 dcache 上的数据写回内存,以让外设可以直接访问内存获取该笔数据(外设访问不会经过 dcache)。

      • hal_dcache_invalidate
        函数原型:void hal_dcache_invalidate(unsigned long addr, int len);
        函数作用:将[addr, addr + len]地址在 dcache 上对应的数据无效。
        使用场景:外设修改数据后,CPU需要将 dcache 上的数据无效,以让CPU可以获取到经过外设修改后的数据。

      • hal_dcache_clean_all
        函数原型:void hal_dcache_clean_all(void);
        函数作用:将所有的dcache 数据全部刷回。
        使用场景:较少使用,一般在动态关闭Dcache 的场景下去使用。

      • hal_dcache_invalidate_all
        函数原型:void hal_dcache_invalidate_all(void);
        函数作用:将所有的dcache 数据全部无效。
        使用场景:除了使能 dcache 的场景外,绝对不允许使用。

      • hal_icache_invalidate
        函数原型:void hal_icache_invalidate(unsigned long addr, int len);
        函数作用:将[addr, addr + len]地址在 icache 上对应的数据无效。
        使用场景:自修改代码指令时,需要无效icache。

      • hal_icache_invalidate_all
        函数原型:void hal_icache_invalidate_all(void);
        函数作用:将所有的dcache 数据全部无效。
        使用场景:自修改代码指令时,需要无效icache。

      1 Reply Last reply Reply Quote Share 2
      • Referenced by  q1215200171 q1215200171 
      • Referenced by  q1215200171 q1215200171 
      • Referenced by  q1215200171 q1215200171 
      • Referenced by  q1215200171 q1215200171 
      • Referenced by  q1215200171 q1215200171 
      • Referenced by  q1215200171 q1215200171 
      • Referenced by  q1215200171 q1215200171 
      • Referenced by  q1215200171 q1215200171 
      • Referenced by  q1215200171 q1215200171 
      • Referenced by  q1215200171 q1215200171 
      • 1 / 1
      • First post
        Last post

      Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号

      行为准则 | 用户协议 | 隐私权政策