C6678-缓存和内存

news2025/1/12 18:19:58

C6678-缓存和内存

  • 全局内存映射
  • 扩展内存控制器(XMC)-MPAX内存保护与地址扩展
  • 使用例程
  • 缓存

全局内存映射

在这里插入图片描述

扩展内存控制器(XMC)-MPAX内存保护与地址扩展

在这里插入图片描述
每个C66x核心都具有相同大小的L1和L2缓存,并且可配置为普通内存使用。
每个核心也都有独立的MPAX(隶属于XMC),主要功能如下:
a) 将32bit逻辑地址映射到36bit物理地址上
b) 提供内存保护功能
c) 支持16个可配置映射段如下。

在这里插入图片描述
注意:复位后Segment0映射起始地址为00000H,但内部CGEM配置空间不可映射,因此实际上只映射了4MB共享内存。
应用实例:
这是一个单镜像的多核应用实例,每个核心共享代码段,因此代码段物理地址相同,数据段通过MPAX分别映射到不同的物理地址空间,但实际上对于每个核心的应用程序而言,所访问数据段的逻辑地址相同。

在这里插入图片描述

MPAX的段寄存器,分别对应16个段。

在这里插入图片描述

在这里插入图片描述
映射逻辑地址/物理地址的第12位均为0,也就是说映射最小单位为4KB。

使用例程

本例程采用单镜像加载,Core0映射4MB的共享空间,进行映射确认;Core3和Core4分别映射1MB的共享空间到0x0_0c000000和0x0_0c100000的物理内存,分别向各自的共享内存起始地址写100个数据。
通过Core0观察0x0c000000和0x0c100000分别可见其他2个核心写入的不同数据。
程序代码:《c6678内存映射示例工程下载》

部分应用程序代码:

/* CSL Header file */
#include <ti/csl/csl_pscAux.h>
#include <ti/csl/csl_xmcAux.h>
#include <c6x.h>

#define MPAX_SEG_1M_Size 0x13
#define MPAX_SEG_4M_Size 0x13+2
/****************************************************
 * 注意:逻辑地址:logicAddr只保留高20bit,
 * 物理地址:phyAddr,只保留高24bit。
 */
void mpax_map(Uint32 segment,Uint32 logicAddr,Uint32 phyAddr,Uint32 segSize)
{
    CSL_XMC_XMPAXH mpaxh;
    CSL_XMC_XMPAXL mpaxl;
    mpaxh.segSize = segSize;
    mpaxh.bAddr = logicAddr; //逻辑地址
    mpaxl.ux = 1;
    mpaxl.uw = 1;
    mpaxl.ur = 1;
    mpaxl.sx = 1;
    mpaxl.sw = 1;
    mpaxl.sr = 1;
    mpaxl.rAddr = phyAddr;//物理地址
    CSL_XMC_setXMPAXH (segment, &mpaxh);
    CSL_XMC_setXMPAXL (segment, &mpaxl);
}
int main(void)
{
    Uint32  Core_ID;
    Uint32 *test;
    psc_init();
    Uint32 i;
    // Get the Current Core ID
    Core_ID = DNUM; // c6x.h
    if (Core_ID == 0)
    {
        mpax_map(0, 0x0c000, 0x00c000, MPAX_SEG_4M_Size);
    }
    if (Core_ID == 3)
    {
        mpax_map(0,0x0c000,0x00c000,MPAX_SEG_1M_Size);
        test = (Uint32 *)0x0c000000;
        for (i=0;i<100;i++)
            *test++ = 0xA0A0A0A0;
    }
    if (Core_ID == 4)
    {
        mpax_map(0,0x0c000,0x00c100,MPAX_SEG_1M_Size);
        test = (Uint32 *)0x0c000000;
        for (i=0;i<100;i++)
            *test++ = 0x11111111;
    }
    while(1);
}

缓存

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/436116.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【微信小程序-原生开发】实用教程21 - 分包

分包的流程 当微信小程序主包大小超过2M时&#xff0c;则需要对微信小程序进行分包&#xff0c;方法如下&#xff1a; 1. 转移页面文件 在项目根目录下&#xff0c;新建文件夹 package1 &#xff08;即自定义的分包名为 package1 &#xff09;文件夹 package1 内新建文件夹 p…

C嘎嘎~~【初识C++ 中篇】

初识C 中篇 1.缺省参数2.函数重载2.1函数重载的概念2.2函数重载的原理 3.auto关键字3.1类型别名思考&#xff08;typedef&#xff09;3.2auto的简介3.3auto的使用规则3.4 auto不能推导的场景 4.基于范围的for循环4.1范围for的语法4.2范围for的使用条件 1.缺省参数 缺省参数是 声…

02_2440soc_内存地址映射和选择,寄存器地址的选择

大多数arm芯片从0开始启动 nand_flash控制器外接nand_flash 256M cpu直接接nor_flash 2M nor_flash启动时候 nor_flash上面烧了bin文件 nor_flash基地址为0 cpu直接读nor上的第一个指令(前4字节),执行 cpu继续读取其他指令 执行 如果使用nor启动,片内的sram的地址就是 0x4000…

实战:内存分配与回收策略

java技术体系的自动内存管理&#xff0c;最根本的目标是自动化地解决两个问题&#xff1a;自动给对象分配内存以及自动回收分配给对象的内存。 1 前置知识 1.1 Minor GC 与Full GC Minor GC: 新生代GC&#xff0c;是指发生新生代的垃圾收集动作。Minor GC非常频繁&#xff0…

mac m1安装stable-diffusion

安装stable-diffusion 安装Homebrew安装python及其他依赖下载model安装Stable-Diffusion-WebUI执行./webui.sh作图http://127.0.0.1:7860 安装Homebrew 查询是否安装 brew -v安装 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.…

14.网络爬虫—selenium详讲

网络爬虫—selenium详讲 一selenium简介Selenium 的优点 二安装模块三设置浏览器驱动确认版本&#xff1a;查找对应驱动下载驱动 四使用模块selenium选取元素方法selenium嵌套页面元素定位selenium网页下拉selenium下拉表选择selenium行为链selenium等待 五错误解决方案六结束语…

[oeasy]python0135_python_语义分析_ast_抽象语法树_abstract_syntax_tree

语义分析_抽象语法树_反汇编 回忆 上次回顾了一下历史 python 是如何从无到有的看到 Guido 长期的坚持和努力 python究竟是如何理解 print(“hello”)的&#xff1f;这些ascii字母如何被组织起来执行&#xff1f; 纯文本 首先编写Guido的简历 print("1982------Gui…

LeetCode刷题集(五)(LeetCode1.两数之和)

学习目标&#xff1a; 掌握LeetCode第一题两数之和 学习内容&#xff1a; LeetCode第一题两数之和 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会…

ASEMI代理AD9951YSVZ原装ADI车规级AD9951YSVZ

编辑&#xff1a;ll ASEMI代理AD9951YSVZ原装ADI车规级AD9951YSVZ 型号&#xff1a;AD9951YSVZ 品牌&#xff1a;ADI/亚德诺 封装&#xff1a;HTQFP-48 批号&#xff1a;2023 引脚数量&#xff1a;48 安装类型&#xff1a;表面贴装型 AD9951YSVZ汽车芯片 特征 400 MS…

shell编程实例 — 实现4G开机自动运行,实时监测,断线自动重拨》

shell编程实例 — 实现4G开机自动运行&#xff0c;实时监测&#xff0c;断线自动重拨》 往事只能回味味道 于 2021-11-20 02:30:53 发布831 收藏 1 分类专栏&#xff1a; shell 文章标签&#xff1a; ubuntu linux udp 版权 ​编辑shell专栏收录该内容 3 篇文章0 订阅 订阅…

Mysql日志系统-InnoDB引擎层

一、redo log日志 接下来的两个日志&#xff0c;是innodb为解决不同问题而引出的两类日志文件。 redo log&#xff08;重做日志&#xff09;的设计主要是为了防止因系统崩溃而导致的数据丢失&#xff0c;其实解决因系统崩溃导致数据丢失的思路如下&#xff1a; 1、每次提交事务…

SpringBoot解决用户重复提交订单(方式二:通过Redis实现)

文章目录 前言1、方案实践1.1、引入Redis依赖1.2、添加Redis环境配置1.3、编写获取请求唯一ID的接口&#xff0c;同时将唯一ID存入redis 1.4、编写服务验证逻辑&#xff0c;通过 aop 代理方式实现1.5、在相关的业务接口上&#xff0c;增加SubmitToken注解即可 2、小结 前言 在…

华润数科、京东科技、京彩未来携手共进,求解“科技×产业”最大值

4月18日&#xff0c;华润数科、京东科技、京彩未来三方代表在中国深圳签署三方合作协议。面向产业数字化的市场机遇&#xff0c;华润数科物联网事业部总经理刘楚明先生表示&#xff0c;华润数科作为华润集团重点培育的数字科技业务单元&#xff0c;基于技术优势及资源整合能力&…

在SAP中使用QUERY

在SAP中使用QUERY 一、SAP query介绍 ​ QUERY是SAP提供的方便无编程基础用户的报表工具&#xff0c;使用图形化的界面&#xff0c;让用户托托拽拽就能轻松完成报表编写。我们可以将Query理解成QuickView的高级版本&#xff0c;它在QuickView的基础上增加的功能有&#xff1a…

一、摄影基础课

目录 第一章 控制曝光1. 曝光及曝光三要素1.1 曝光1.2 光圈1.3 快门1.4 感光度&#xff08;ISO&#xff09;1.5 曝光三要素之间的关系 2. 曝光模式3. 测光模式4. 曝光补偿 第二章 控制对焦1. 对焦区域2. 对焦模式 第三章 控制色彩 第一章 控制曝光 1. 曝光及曝光三要素 1.1 曝…

尚硅谷大数据技术Zookeeper教程-笔记01【Zookeeper(入门、本地安装、集群操作)】

视频地址&#xff1a;【尚硅谷】大数据技术之Zookeeper 3.5.7版本教程_哔哩哔哩_bilibili 尚硅谷大数据技术Zookeeper教程-笔记01【Zookeeper(入门、本地安装、集群操作)】尚硅谷大数据技术Zookeeper教程-笔记02【服务器动态上下线监听案例、ZooKeeper分布式锁案例、企业面试真…

外包干了4年,直接废了···

有一说一&#xff0c;外包没有给很高的薪资&#xff0c;是真不能干呀&#xff01; 先说一下自己的情况&#xff0c;大专生&#xff0c;19年通过校招进入湖南某软件公司&#xff0c;干了接近4年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0…

[java/初学者]java常用API(1)——包装类

前言 在学习本课题之前&#xff0c;我们首先需要知道什么是API。 API&#xff0c;即Application Programming Interface&#xff0c;中文名称是“应用程序接口"&#xff0c; 这些接口就是"jdk所提供"给我们使用的类&#xff0c;我们不需要去深究它是如何实现…

STM32+EC20实现4G无线通信

EC20是一款集成度非常高的4G无线通信模块&#xff0c;支持多种常见通信频段&#xff0c;能满足几乎所有的M2M(MachinetoMachine)应用需求。模块支持TCP/UDP/FTP等一众网络协议&#xff0c;内置多星座高精度定位GNSS接收机&#xff0c;快速提供准确的经纬度信息&#xff0c;UART…

vscode java环境扩展

下载安装jdk: Java Downloads | Oracle 下载安装maven: Maven – Download Apache Maven windows系统选择 Binary zip archive maven目录中的conf文件中有一个settins.xml文件 镜像&#xff08;mirrors&#xff09;二选一 <mirror><id>nexus-aliyun</…