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

SYS/BIOS 开发教程: 创建自定义平台

目录

  • SYS/BIOS 开发教程: 创建自定义平台
    • 创建自定义平台
    • 新建工程并指定自定义平台
    • 修改现有工程使用自定义平台

参考: TI SYS/BIOS v6.35 Real-time Operating System User’s Guide 6.2节

本示例基于 EVMC6678L 开发板, 创建自定义平台, 并将代码段的位置指定到C6678器件内部的共享内存(MSMCSRAM)中.

SYS/BIOS 开发教程: 创建自定义平台

platform(平台) 决定了可执行程序如何映射到存储空间(包括芯片内部的存储空间, 和片外的DDR3). 当创建 SYS/BIOS 应用程序时, 需要在 RTSC配置页面指定使用的平台. 芯片内部存储器和外部存储器的内存映射由该平台确定。该平台还可以设置时钟速度并指定内存段的位置.

平台可以在创建 SYS/BIOS 工程时指定, 也可以点击工程, 右键选择"Properties(属性)"进行修改.

  • 创建工程时指定平台.
    在这里插入图片描述
  • 在工程属性对话框中修改使用的平台.

在这里插入图片描述

对于C6678芯片的开发, 在大多数情况下, 我们可以使用 “ti.platforms.evm6678” 预设平台. 此平台的时钟频率为 1000 MHz, L1DSRAM 和 L1PSRAM 作为 Cache 使用. 代码段, 数据段 和 堆栈段 都分配到 L2SRAM 中. 如下图所示:

在这里插入图片描述
以下情况我们需要创建自定义平台:

  • 将代码段, 数据段 或 堆栈段 指定到其他存储位置;
  • 芯片的时钟频率不是 1000MHz;
  • 使用不同于预设的Cache 设置.

创建自定义平台

本示例演示如何创建自定义平台"evm6678_sharecode", 并将代码段的位置指定到C6678器件内部的共享内存(MSMCSRAM)中.

  • 选择菜单: “File|New|Project”, 打开 New Project(新建工程向导)
    在这里插入图片描述

  • 选择 RTSC 下的 New RTSC Platform(新建 RTSC 平台), 点击 Next.
    在这里插入图片描述

  • 设置 平台名称, 平台存储位置, 器件型号, 点击 Next.( 此处将存储位置设置为 工作空间下的 platforms 目录.)
    在这里插入图片描述

  • 点击 import(导入) 按钮, 导入预设平台"ti.platforms.evm6678".

在这里插入图片描述

  • 修改 **Code Memory(代码段)**的存储位置为 “MSMCSRAM”, 点击 Finish.

在这里插入图片描述

新建工程并指定自定义平台

  • 新建 CCS Project, 设置 Project name, 选择 Device为 “TMS320C6678”, 工程模板选择 “SYS/BIOS|Typical”, 点击 Next.
    在这里插入图片描述

  • 点击 Products and Repositories(产品和仓库) 页中的 Add… 按钮, 选择 Select repository from file-system, 将路径设置为 自定义平台的存储路径. 点击 OK.
    在这里插入图片描述

  • 点击 Platform 右侧的下拉按钮, 选择新建的自定义平台"evm6678_sharecode", 点击 Finish.
    在这里插入图片描述

  • 编译工程, 打开工程编译目录下的".map"文件, 查看 代码段(.text) 是否映射到 “MSMCSRAM” 中.

在这里插入图片描述

修改现有工程使用自定义平台

  • 选择现有工程, 右键选择 Properties(属性).
  • 选择 General | RTSC页.
  • 接下来的步骤同上, 不再赘述.
    在这里插入图片描述
http://www.lryc.cn/news/205328.html

相关文章:

  • 【Qt样式(qss)-5】qss局部渲染混乱,错乱,不生效的一种原因
  • 最新基于机器学习模型单图换脸离线版软件包及使用方法,本地离线版本模型一键运行(免费下载)
  • 通过VScode连接远程 Linux 服务器修改vue代码
  • Pytorch实现深度学习常见问题
  • ICMP权限许可和访问控制漏洞处理(CVE-1999-0524)
  • Java生成优惠券兑换码并确保唯一性最终添加到数据库
  • 【Linux/脚本/芯片学习】Perl学习
  • 嵌入式实时操作系统的设计与开发(信号量学习)
  • python环境安装教程
  • 【学习笔记】CF1784F Minimums or Medians
  • 如何系列 如何玩转远程调用之OpenFegin+SpringBoot(非Cloud)
  • Python学习第2天-安装pycharm
  • 等电位连接器行业应用综合方案
  • 内裤洗衣机有用吗?最好用的四款内衣洗衣机测评
  • 足底筋膜炎能自愈吗
  • 牛客网刷题-(3)
  • Centos7 安装 Etcd
  • powerjob基于springboot2.1.6.RELEASE版本的问题研究
  • 【AI视野·今日CV 计算机视觉论文速览 第270期】Wed, 18 Oct 2023
  • uni-app小程序,uview-ui组件样式无法穿透修改的解决办法
  • Codeforces Round 515
  • Linux shell编程学习笔记15:定义数组、获取数组元素值和长度
  • k8s部署kafka,并使用zookeeper做注册中心
  • 关于Nginx缓存
  • 为什么Open3D可视化TensorFlow张量速度超慢
  • 使用element-UI Cascader组件,实现第一级单选选,第二级,第三级,子级可以多选
  • 防止消息丢失与消息重复——Kafka可靠性分析及优化实践
  • 【Linux】Linux中Crontab(定时任务)命令详解及使用教程
  • 计算机毕设 flink大数据淘宝用户行为数据实时分析与可视化
  • 8.2 矢量图层点要素单一符号使用一