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页.
  • 接下来的步骤同上, 不再赘述.
    在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【网络安全 --- 任意文件下载漏洞(1)】任意文件下载漏洞

一,环境,工具准备 1-1 VMVare 16 虚拟机及下载安装(资源) 请参考以下博客安装(特详细):【网络安全 --- 工具安装】VMware 16.0 详细安装过程(提供资源)-CSDN博客【网络安…

前后端交互系统:在Node.js中运行JavaScript

在Node.js中运行JavaScript,您需要编写适用于服务器端的代码,而不是浏览器端的代码。以下是一些示例代码,用于在Node.js中创建一个简单的HTTP服务器并在浏览器中访问它: // 引入Node.js内置的http模块 const http require(http);…

使用Vscode创建一个C_Hello程序

Vscode用来学习C语言语法确实很方便。问题是安装好了,不会用,或编译失败,也是常有的事情,其中一个原因就是不会创建工作区。下面介绍使用Vscode创建一个C语言工作区。有时候看着很简单,时间久了,我竟然忘记…

对企业数字化转型有哪些建议?

对于希望在当今快速变化的商业环境中保持竞争力和相关性的企业来说,数字化转型是一个关键过程。以下是成功数字化转型的一些建议: 1.定义明确的目标:首先为数字化转型定义具体、可衡量且现实的目标。这些目标应与您的业务战略保持一致并解决…

spark获取hadoop服务token

spark 作业一直卡在accepted 问题现象问题排查1.查看yarn app日志2.问题分析与原因 问题现象 通过yarn-cluster模式提交spark作业,客户端日志一直卡在submit app,没有运行 问题排查 1.查看yarn app日志 appid已生成,通过yarn查看app状态为…

一起学数据结构(12)——归并排序的实现

1. 归并排序原理: 归并排序的大概原理如下图所示: 从图中可以看出,归并排序的整体思路就是把已给数组不断分成左右两个区间,当这个区间中的数据数量到达一定数值时,便返回去进行排序,整体的结构类似二叉树…

如何查询MAC 的本地IP出口

Terminnal 内执行 curl ip.gs

UE5场景逐渐变亮问题

1、显示 -- 关闭眼部适应 2、项目设置 -- 关闭自动曝光 参考: 虚幻5/UE5 场景亮度逐渐变亮完美解决方法 - 哔哩哔哩

记一次fineBI的增量删除更新BUG

官方文档链接是https://help.fanruan.com/finebi/doc-view-1663.html 按照官方文档,增量删除不能使用select * ,且需要指定分区建 但实际指定分区键有时候也会报错,因为表设置的字段有时候会比数据源少,此时会报错,提…

JS小数运算精度丢失的问题

工作中会不会经常会碰到一些数据指标的计算,比如百分比转化,保留几位小数等,就会出现计算不准确,数据精度丢失的情况。通过这篇分享借助第三方库能够轻松解决数据精度丢失的问题。 一、场景复现 JS数字精度丢失的一些常见问题 /…

微信小程序开发-01-入门

文章目录 一、微信开发者工具介绍基础文件介绍具体文件介绍JSON配置文件的作用wxmlwxssjs 二、宿主环境介绍通信模型运行机制组件视图容器基础内容其他常用组件 API 三、操作流程基本操作流程新建小程序页面 修改项目首页后续 四、协同工作和发布权限管理需求项目成员的组织结构…

Selenium获取百度百科旅游景点的InfoBox消息盒

前面我讲述过如何通过BeautifulSoup获取维基百科的消息盒,同样可以通过Spider获取网站内容,最近学习了SeleniumPhantomjs后,准备利用它们获取百度百科的旅游景点消息盒(InfoBox),这也是毕业设计实体对齐和属…

工厂干洗店洗鞋店系统,校园洗护小程序来了

洗鞋店小程序,干洗店软件,洗护行业小程序,上门取衣小程序,预约干洗小程序,校园干洗店小程序,工厂干洗店小程序,干洗店小程序开发,成品软件开发 洗衣工厂软件、功能强大! 包含以下主要功能: * 用户选择洗护用品&#x…

二十、设计模式之迭代器模式

目录 二十、设计模式之迭代器模式能帮我们干什么?主要解决什么问题?优缺点优点缺点: 使用的场景角色 实现迭代器模式定义迭代器容器实现可迭代接口迭代器实现使用 总结 二十、设计模式之迭代器模式 所属类型定义行为型提供一种方法顺序访问一…

2023/10/23 mysql学习

数据库修改 show databases; 展示所有数据库 create database 数据库名; 创建数据库 create database if not exists 数据库名; 如果未创建过当前数据库名则创建 drop database 数据库名; drop database if exists 数据库名;用法和创建类似 删除数据库 use 数据库名; 跳…

Android View拖拽/拖放DragAndDrop自定义View.DragShadowBuilder,Kotlin(2)

Android View拖拽/拖放DragAndDrop自定义View.DragShadowBuilder,Kotlin(2) import android.graphics.Canvas import android.graphics.Point import android.graphics.drawable.ColorDrawable import android.os.Bundle import android.util…

第19章 Dubbo

本文中所有的原理及流程都是针对Dubbo3.0.2.1版本 19.1 谈谈你对Dubbo的理解 难度:★★★★ 重点:★★ 白话解析 1、背景:参考18.13题,这里不在赘述。 2、简介:Dubbo在3.x版本之前都只是一个高性能的RPC框架,但是在3.x版本之后,官网的描述变了,Dubbo已经升级成一个等…

【网络协议】聊聊UDP协议

前面的几篇文章讲述了链路层和IP层,主要的话其实就是MAC地址,以及通过IP地址求MAC地址的ARP协议。PING的底层协议 ICMP 。动态分配IP协议 DHCP等。而从今天开始我们开始讲述传输层协议,传输层主要就是UDP和TCP。 TCP 和 UDP 有哪些区别&…

计算机视觉-数学基础*变换域表示

被研究最多的图像(或任何序列数据)变换域表示是通过傅 里叶分析 。所谓的傅里叶表示就是使用 正弦函数的线性组合来表示信号。对于一个给定的图像I(n1,n2) ,可以用如下方式分解它(即逆傅里叶变换): 其中&a…

Spring Boot和XXL-Job:高效定时任务管理

Spring Boot和XXL-Job:高效定时任务管理 前言第一:XXL-Job简介什么是XXL-job对比别的任务调度 第二: springboot整合XXL-job配置XXL-Job Admin拉取XXL-Job代码修改拉取的配置 配置执行器自己的项目如何整合maven依赖properties文件配置执行器…