Wujian SoC 平台_开发流程|学习笔记

简介: 快速学习 Wujian SoC 平台_开发流程

开发者学堂课程【高校精品课-南京航空航天大学-数字集成电路设计技术:Wujian SoC 平台_开发流程】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/14/detail/15885


Wujian SoC 平台_开发流程

 

内容介绍

一、 预先准备

二、 下载 C/C++Compiler

三、 准备开源 EDA 工具

四、 进行代码仿真

五、 如何制作 FPGA bit 文件

六、 调试环境

七、 SDK 介绍

八、 SDK 目录结构

九、 SDK 调试过程

 

一、 预先准备

1. 首先准备一个项目工作目录,如‘Project’

2. 进入 Project 目录

3. 从 github 获取平台代码:

git clone https://github.com/T-head-Semi/wujian100_open.git

git clone git@github.com:T-head-Semi/wujian100_open.git


二、 下载 C/C++Compiler

1. 准备工具链安装目录

‘riscv_toolchain'//使用 c shell 命令,如‘mkdir riscv_toolchain’

2. 从下载页面下载工具链

3. 解压工具链到 riscv_toolchain 目录下

 

三、 准备开源 EDA 工具

centos7/rhel7: sudo yum iverilog verilator gtwave

ubuntu/debian:sudo apt-get iverilog verilator gtkwave

 

四、 进行代码仿真

1. 进入 wujian100_open/tools 目录下

2. 打开 setup.csh 文件,如果有 vcs 的 license,请设置 vcs 相关的路径和 license

3. 执行 source setup.csh 命令设置环境变量

4. 环境变量设置完成后,进入 wujian100_open/workdir 目录开始仿真

5. 目前环境中支持 iverilog 和 vcs 两种工具仿真。

以 timer 测试 case 为例:

如果想要使用 iverilog 进行仿真,则在 workdir 目录下执行命令‘../tools/run case- sim_tool iverilog../case/timer/timer test.c',如果想要使用 vcs 进行仿真,则在 workdir 目录下执行命令‘../tools/run _case -sim_tool vcs../case/timer/timer test.c’

6. 等待仿真结束,仿真结束会打印“TestPass”表明本次仿真测试通过

 

五、 如何制作 FPGA bit 文件

1. 首先确保环境中有 synplify 和 vivado 工具的 license

2. 进入 wujian100_open/fpga/synplify 目

3. 打开 synplify 工具,同时加载 wujian100_open_200t_3b.prj 文件导入项目工程

4. 在 synplify console 窗口输入命令‘sdc2fdc’,将 sdc 文件转换生成 fdc 文件

5. 点击 RUN 开始 synplify 综合,等待网表生成

6. 在  synplify 生成网表完成后,打开 vivado 工具,开始 P&R 和 bit 文件生成

7. 进入 wujian100_open/fpga/vivado 目录

8. 在 vivodo 工具中导入'wujian100_open_200t_3b_prj.tcl'文件执行 run tcl,等待 bit 文件生成

9. 在 bit 文件生成后, 将 bit 文件下载到 FPGA 开发板上

10. 开始在 FPGA 上进行调试和软件应用开发

 

六、 调试环境

1. 调试工具:DebugServer 和 CSkyDebugServer-V5.8.6

2. 如何获取 IDE 开发工具 CDK:cdk-windows-V1.18.10-20191018

 

七、 SDK 介绍

wujian100_open SDK 是 wujian100_open 的软件开发工具包,软件遵循 CSI 接口规范。通过该 SDK 用户可以快速对 wujian100_open 进行测试与评估,同时用户可以参考 SDK 中集成的各种常用组件以及示例程序进行应用开发,快速形成产品方案。

 

八、 SDK 目录结构

1. |--csi_core //基于 E902定义了 CPU 及与 CPU 紧耦合外设的标准接口规范以及实现

2. l--csi dirver //定义外围设备驱动的标准接口规范,以及相关外围接口的实现

3. l--csi_kernel//定义了实时操作系统标准接口规范,以及 Rhino、FreeRTOSv8.2.3、uCos-III 等实时操作系统的对接示例代码。

4. |--libs //存放通用的库实现

5. |--projects//存放各种参考示例,包括 benchmark 测试程序、驱动示例程序、rtos 示例程序等。同时包括了相关的工程项目文

件。

1. |--utilites//存放项目配置文件


九、 SDK 调试过程

1. 下载和安装 CDK 工具

2. 使用 CDK 工具打开项目工程,如打开 hello world 项目工程:projects/examples/hello_world/CDK/wj100-open-hello_world.cdkproj

3. 编译工程

在工具栏窗口点击‘project’,选择‘build all’

4. 开始调试:

在工具栏窗口点击‘Debug',选择‘Start/Stop Debugger’

相关文章
|
Ubuntu Linux Shell
Windows-下学习阿里平头哥-RISC-V-芯片开发平台-wujian100
上个月,在第六届互联网大会上,阿里的平头哥,对,就是那个人狠话不多的公司!他们宣布开源了 wujian100 这个芯片设计平台。搭载基于 RISC-V 架构的玄铁 902 处理器。
Windows-下学习阿里平头哥-RISC-V-芯片开发平台-wujian100
|
Linux Docker 容器
到底什么是镜像(概念)
镜像到底是什么?镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码、运行时、库、环境变量和配置文件。 1.UnionFS(联合文件系统):Union文件系统(UnionFS)是一种分层、轻量级并且高性能的文件系统,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem)。
21455 0
|
存储 测试技术 开发工具
Wujian SoC 平台_介绍|学习笔记
快速学习 Wujian SoC 平台_介绍
488 0
Wujian SoC 平台_介绍|学习笔记
|
机器学习/深度学习 并行计算 PyTorch
GPU 加速与 PyTorch:最大化硬件性能提升训练速度
【8月更文第29天】GPU(图形处理单元)因其并行计算能力而成为深度学习领域的重要组成部分。本文将介绍如何利用PyTorch来高效地利用GPU进行深度学习模型的训练,从而最大化训练速度。我们将讨论如何配置环境、选择合适的硬件、编写高效的代码以及利用高级特性来提高性能。
2051 1
|
存储 安全 前端开发
|
存储 Cloud Native 数据挖掘
MinIO作为一种开源的对象存储系统,具有以下核心特点
MinIO作为一种开源的对象存储系统,具有以下核心特点
722 0
|
编解码 C++
UVC调用过程部分细节分析
UVC调用过程部分细节分析
824 0
|
存储 安全 物联网
玄铁RISC-V处理器入门与实战-平头哥玄铁CPU IP-面向低功耗领域CPU
玄铁RISC-V处理器入门与实战-平头哥玄铁CPU IP-
3626 0
|
存储 人工智能 边缘计算
|
弹性计算 算法 Serverless
《阿里云云原生 Serverless 案例集》——典型案例——广告传媒-分众传媒
《阿里云云原生 Serverless 案例集》——典型案例——广告传媒-分众传媒
286 0