易灵思的Riscv-Sapphire软核搭建及开发流程

2023-10-16 22:40

本文主要是介绍易灵思的Riscv-Sapphire软核搭建及开发流程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、首先生成Sapphire软核ip

二、创建Eclipse工程

三、配置Eclipse的编译环境

四、合并逻辑的hex和软核的bin的文件


一、首先生成Sapphire软核ip

通过软件Efinity的IP-Catalog功能生成Sapphire-riscv的IP核,我这里保持默认参数,如下图:

找到相应的目录,目录里的IP文件夹下会有生成的sapphire的目录,里边有两个demo,一个是第一代Trion的T20F324开发板的demo,另一个是第二代的钛金系列Ti60F225的demo;我这里采用的是T120F324的demo;

二、创建Eclipse工程

为了防止出现错误,我将T120F324_devkit文件夹demo单独考出来;通过运行SDK目录下的run_eclipse.bat文件,运行后选择输入1,启动Sapphire相关的配置:

Eclipse指向工作目录保持与CPU0.YAML文件保持在同一个文件夹下,然后点击“Launch”:

新建工程,将工程指向embedded_sw\my_sapphiresoc\software\standalone文件夹下各种demo,如果用户需要可以根据自己的需求进行相关的修改和调整,本次打开的是AXI4Demo:

三、配置Eclipse的编译环境

 创建Debug的配置参数:

添加Eclipse环境快速配置文件,添加C/C++的配置参数:

添加Run/Debug的相关参数配置:

 

 修改Debug配置参数:

 

 搭建Debug调试的配置环境:

 

 

 注释:*.elf的文件需要编译工程后才会生成;另外OpenOCD下边:default(红色选框)为Trion的Jtag口进行调试所选择的选项;default_ti(蓝色选框)为钛金Ti的Jtag口进行调试所选择的选项;default_softTap(黄色选框)为其他用户定义的GPIO进行调试所选择的选项;

Debug调试环境搭建:

注释:红色选框为调用的 OpenOCD调试配置文件;以及将${workspace_loc}替换为cpu0.yaml所在目录的绝对路径并将但斜杠("\"改为"\\")

四、合并逻辑的hex和软核的bin的文件

 注释:1、打开合并文件按键;2、选择合并的模式;3、更改输出.hex文件名字;4、选择用户逻辑的hex文件;5、选择用户APP编译后的bin文件;6、更改用户逻辑的起始地址;7、更改用户APP软件的起始地址(此处所用的是默认地址为0x380000);

至此完成软件的开发环境的搭建,下边我们一起来点击“Debug”进行调试,下边大家一起来感受一下吧^_^!

这篇关于易灵思的Riscv-Sapphire软核搭建及开发流程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/221251

相关文章

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

SpringBoot集成XXL-JOB实现任务管理全流程

《SpringBoot集成XXL-JOB实现任务管理全流程》XXL-JOB是一款轻量级分布式任务调度平台,功能丰富、界面简洁、易于扩展,本文介绍如何通过SpringBoot项目,使用RestTempl... 目录一、前言二、项目结构简述三、Maven 依赖四、Controller 代码详解五、Service

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

基于Java开发一个极简版敏感词检测工具

《基于Java开发一个极简版敏感词检测工具》这篇文章主要为大家详细介绍了如何基于Java开发一个极简版敏感词检测工具,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录你是否还在为敏感词检测头疼一、极简版Java敏感词检测工具的3大核心优势1.1 优势1:DFA算法驱动,效率提升10