《基于“矿板”低成本学习FPGA》移植OpenC906第三篇-跑仿真

原创 嵌入式Lee 2024-09-12 16:00

一. 前言

  前面我们移植了openc906到淘到的fpga板子上,生成了bit文件。打样的扩展板和器件还没准备好,趁着这个时间我们来跑一遍openc906的仿真,熟悉下。    

   这里开发环境基于win11+WSL2+Ubuntu24, wsl环境准备可以参考之前分享的文章。

.准备工作

2.1下载源码

git clone https://github.com/XUANTIE-RV/openc906.git

如果连接不上可以取消代理设置

git config --global --unset http.proxy

git config --global --unset https.proxy

2.2安装必备工具

sudo apt install make

sudo apt install gtkwave iverilog

2.3CSH配置

sudo su切换到root用户

2.3.1安装csh

sudo apt install csh

2.3.2切换bashcsh

sudo nano /etc/passwd

将最后的/bin/bash改为/bin/csh

Ctrl+x退出,提示是否保存修改,输入y回车修改后退出。

重新打开终端,sudo su切换到root用户,并echo $SHELL查看是否切换到了CSH

2.2.3配置环境

cd openc906/C906_RTL_FACTORY/

source setup/setup.csh

2.4编译工具链配置

2.4.1下载工具链

从以下地址下载

https://www.xrvm.cn/community/download?id=4352528597269942272

我这里下载的是Xuantie-900-gcc-elf-newlib-x86_64-V2.10.2-20240904.tar.gz

wget https://occ-oss-prod.oss-cn-hangzhou.aliyuncs.com/resource//1725611943439/Xuantie-900-gcc-elf-newlib-x86_64-V2.10.2-20240904.tar.gz

解压

tar -zxvf Xuantie-900-gcc-elf-newlib-x86_64-V2.10.2-20240904.tar.gz

2.4.2配置工具链路径

sudo nano openc906/smart_run/setup/example_setup.csh

设置工具链路径为setenv TOOL_EXTENSION /home/qinyunti/Xuantie-900-gcc-elf-newlib-x86_64-V2.10.2/bin

source openc906/smart_run/setup/example_setup.csh

提示语法错误

root@qinyunti:/home/qinyunti# source openc906/smart_run/setup/example_setup.csh
bash: /*Copyright: No such file or directory
bash: openc906/smart_run/setup/example_setup.csh: line 3: syntax error near unexpected token `('
bash: openc906/smart_run/setup/example_setup.csh: line 3: `Licensed under the Apache License, Version 2.0 (the "License");'

把前面的license部分注释掉

.编译

cd openc906/smart_run/

每次重新打开过终端后以下两条指令都需要执行

source ../C906_RTL_FACTORY/setup/setup.csh

source ./setup/example_setup.csh

make help可以查看命令

进行编译make compile,提示没有work目录需要手动创建

root@qinyunti:/home/qinyunti/openc906/smart_run# make compile
[THead-smart] Compiling smart now ...
[THead-smart] SIM = iverilog
/bin/sh: 1: cd: can't cd to ./work
make: *** [Makefile:65: compile] Error 2

创建work目录

mkdir work

在此编译提示以下错误

qinyunti% make compile
[THead-smart] Compiling smart now ...
[THead-smart] SIM = iverilog
iverilog: cannot open command file /gen_rtl/filelists/C906_asic_rtl.fl for reading.
make: *** [Makefile:65: compile] Error 1
qinyunti%

gen_rtl/filelists/C906_asic_rtl位于C906_RTL_FACTORY目录下而不是/目录下

查看Makefile文件

sudo nano Makefile

路径如下

ifeq ($(SIM), iverilog)
SIM_FILELIST := $(SIM_FILELIST) -f ${CODE_BASE_PATH}/gen_rtl/filelists/C906_asic_rtl.fl -f ${CODE_BASE_PATH}/gen_rtl/filelists/tdt>else
SIM_FILELIST := $(SIM_FILELIST) -f ../logical/filelists/sim.fl
endif
qinyunti% echo ${CODE_BASE_PATH}
/home/qinyunti/openc906/smart_run

看到目录对应不上

必须要位于openc906/C906_RTL_FACTORY下执行source ./setup/setup.csh

才会将${CODE_BASE_PATH}设置为openc906/C906_RTL_FACTORY路径才能对应上。

所以正确步骤如下,每一步的路径都要对。

假设当前位于 openc906外,

cd openc906/C906_RTL_FACTORY

source ./setup/setup.csh

然后

cd ../smart_run/

source ./setup/example_setup.csh

然后再make compile

如果还有提示

qinyunti% make compile
[THead-smart] Compiling smart now ...
[THead-smart] SIM = iverilog
xuantie_core.vvp: Permission denied
error: Code generator failure: -1
make: *** [Makefile:65: compile] Error 255

则使用注意要切换到root用户执行

.Runcase

work目录下生成了vvp文件

qinyunti# ls work
xuantie_core.vvp
qinyunti#

make showcase可以看到caselist

qinyunti# make showcase
Case lists:
ISA_THEAD
ISA_INT
ISA_LS
ISA_FP
coremark
MMU
interrupt
exception
debug
csr
cache
qinyunti#

执行coremark

make runcase CASE=coremark

提示如下错误

qinyunti# make runcase CASE=coremark
[THead-smart] Compiling smart now ...
[THead-smart] SIM = iverilog
Toolchain path: /home/qinyunti/Xuantie-900-gcc-elf-newlib-x86_64-V2.10.2/bin
/bin/sh: 1: Syntax error: Bad fd number
make[2]: *** [setup/smart_cfg.mk:61: coremark_build] Error 2
make[1]: *** [Makefile:101: buildcase] Error 2
make: *** [Makefile:125: runcase] Error 2
qinyunti#

先跳到/bin

cd /bin

cp bash ./sh

再回到smart_run目录下,重新runcase

还有错误

qinyunti# make runcase CASE=coremark
[THead-smart] Compiling smart now ...
[THead-smart] SIM = iverilog
Toolchain path: /home/qinyunti/Xuantie-900-gcc-elf-newlib-x86_64-V2.10.2/bin
make[2]: *** [setup/smart_cfg.mk:61: coremark_build] Error 2
make[1]: *** [Makefile:101: buildcase] Error 2
make: *** [Makefile:125: runcase] Error 2
qinyunti#

查看log

sudo nano work/coremark_build.case.log

看到如下错误

原来是Srec2vmem无可执行权限

添加可执行权限

sudo chmod a+x ./tests/bin/Srec2vmem

重新runcase

make runcase CASE=coremark DUMP=on

DUMP=on表示生成vcd文件。

coremark我电脑太慢了,换个简单点的跑

make runcase CASE=csr DUMP=on

这个很快就跑完了

五. 查看波形文件

波形文件位于work目录下

test.vcd

输入gtkwave回车,打开gtkwave

打开文件

此时可以双击左边的信号,查看波形

.总结

以上跑了一遍仿真,初步了解了整个流程,整个过程有如下几点需要注意

1.需要手动创建work目录

2.需要切换bashcsh,先要安装csh,使用root用户,避免后面权限问题, 注意需要修改root用户的bashcsh

3.设置环境,注意一定要在openc906/C906_RTL_FACTORYsource,否则目录不对找不到C906_asic_rtl.fl文件。

cd openc906/C906_RTL_FACTORY

source ./setup/setup.csh

4.设置编译器

cd ../smart_run/

source ./setup/example_setup.csh

example_setup.csh文件中前面使用了/**/ 注释不符合语法,改为#注释掉。

5.复制/bin/bash/bin/sh

cd /bin

cp bash ./sh

6.Srec2vmem文件添加可执行权限,sudo chmod a+x ./tests/bin/Srec2vmem












评论 (0)
  • 在消费金融的赛道上,马上消费曾是备受瞩目的明星企业。自2015年成立以来,它以年均 30% 的净利润增速一路狂奔,成为持牌消费金融公司的标杆,2023年更是斩获19.82亿元净利润,风光无限。然而,2024年却成了马上消费的一道分水岭。2024年上半年,其营收为77.38亿元,同比下降2.11%;净利润更是同比骤降20.66%,仅为10.68亿元,创下历史最大跌幅 。与此同时,不良贷款率攀升至2.5%,不良余额高达16.54亿元,核心资本充足率降至12.72%,融资
    用户1742991715177 2025-04-21 21:29 103浏览
  •   电磁兼容故障诊断系统平台深度解析   北京华盛恒辉电磁兼容(EMC)故障诊断系统平台是解决电子设备在复杂电磁环境下性能异常的核心工具。随着电子设备集成度提升与电磁环境复杂化,EMC 问题直接影响设备可靠性与安全性。以下从平台架构、核心功能、技术实现、应用场景及发展趋势展开全面剖析。   应用案例   目前,已有多个电磁兼容故障诊断系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润电磁兼容故障诊断系统。这些成功案例为电磁兼容故障诊断系统的推广和应用提供了有力支持。  
    华盛恒辉l58ll334744 2025-04-22 14:29 87浏览
  •   电磁兼容(EMC)故障诊断系统软件解析   北京华盛恒辉电磁兼容故障诊断系统软件是攻克电子设备电磁干扰难题的专业利器。在电子设备复杂度攀升、电磁兼容问题频发的背景下,该软件于研发、测试、生产全流程中占据关键地位。以下为其详细介绍:   应用案例   目前,已有多个电磁兼容故障诊断系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润电磁兼容故障诊断系统。这些成功案例为电磁兼容故障诊断系统的推广和应用提供了有力支持。   一、软件核心功能   干扰与敏感分析:深度剖析电磁干
    华盛恒辉l58ll334744 2025-04-22 14:53 84浏览
  • 引言:老龄化社会的健康守护需求随着全球老龄化进程加速,老年人的健康管理与生活质量成为社会焦点。记忆衰退、用药混乱、日程遗漏等问题频发,催生了智能健康设备的市场需求。WTR096录音语音芯片,凭借其高度集成的录放音、计时时钟与计划管理功能,为老年人量身打造了一站式健康管理方案,重新定义智能语音时钟的价值。功能亮点:1. 用药安全守护:多维度提醒,拒绝遗忘多时段精准提醒:支持一天内设置多个用药时间(如早、中、晚),适配复杂用药需求。个性化语音定制:家属可录制专属提醒语音(如“上午9点,请服用降压药”
    广州唯创电子 2025-04-22 08:41 96浏览
  •   北京华盛恒辉机场保障能力评估系统软件深度解析   在航空运输业快速发展的背景下,机场保障任务愈发复杂,传统人工评估方式已无法满足高效精准的管理需求。机场保障能力评估系统软件作为提升机场运行效率、保障飞行安全的关键工具,其重要性日益凸显。   应用案例   目前,已有多个机场保障能力评估系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润机场保障能力评估系统。这些成功案例为机场保障能力评估系统的推广和应用提供了有力支持。   一、系统功能模块   数据采集与整合模块  
    华盛恒辉l58ll334744 2025-04-22 10:28 89浏览
  • 引言:工业安全与智能化需求的双重驱动在工业安全、环境保护及家庭安防领域,气体泄漏引发的安全事故始终是重大隐患。随着传感器技术、物联网及语音交互的快速发展,气体检测报警器正朝着智能化、低成本、高可靠的方向演进。WT588F02B-8S语音芯片,以“离在线语音更换+多协议通信”为核心优势,为气体检测报警器提供了一套高效、灵活的低成本语音解决方案,助力开发者快速响应市场需求。产品功能与市场需求1. 核心功能:从监测到预警的全流程覆盖实时气体监测:支持一氧化碳、臭氧、硫化氢等多种气体浓度检测,精度可达p
    广州唯创电子 2025-04-22 09:14 68浏览
  •   电磁干扰抑制系统平台深度解析   一、系统概述   北京华盛恒辉电磁干扰抑制系统在电子技术快速发展、电磁环境愈发复杂的背景下,电磁干扰(EMI)严重影响电子设备性能、稳定性与安全性。电磁干扰抑制系统平台作为综合性解决方案,通过整合多元技术手段,实现对电磁干扰的高效抑制,确保电子设备稳定运行。   应用案例   目前,已有多个电磁干扰抑制系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润电磁干扰抑制系统。这些成功案例为电磁干扰抑制系统的推广和应用提供了有力支持。   二
    华盛恒辉l58ll334744 2025-04-22 15:27 87浏览
  • 4 月 19 日,“增长无界・智领未来” 第十六届牛商大会暨电子商务十大牛商成果报告会在深圳凤凰大厦盛大举行。河南业之峰科技股份有限公司总经理段利强——誉峰变频器强哥凭借在变频器领域的卓越成就,荣膺第十六届电子商务十大牛商,携誉峰变频器品牌惊艳亮相,以十几年如一日的深耕与创新,书写着行业传奇。图 1:誉峰变频器强哥在牛商大会领奖现场,荣耀时刻定格牛商大会现场,誉峰变频器强哥接受了多家媒体的专访。面对镜头,他从容分享了自己在变频器行业二十年的奋斗历程与心路感悟。谈及全域营销战略的成功,誉峰变频器强
    电子与消费 2025-04-22 13:22 100浏览
  • 近期,金融界消息称,江西万年芯微电子有限公司申请一项名为“基于预真空腔体注塑的芯片塑封方法及芯片”的专利。此项创新工艺的申请,标志着万年芯在高端芯片封装领域取得重要突破,为半导体产业链提升注入了新动能。专利摘要显示,本发明公开了一种基于预真空腔体注塑的芯片塑封方法,方法包括将待塑封的大尺寸芯片平铺于下模盒腔体内的基板并将大尺寸芯片的背向表面直接放置于基板上以进行基板吸附;将上模盒盖合于下模盒形成塑封腔,根据基板将塑封腔分为上型腔以及下型腔;将下型腔内壁与大尺寸芯片间的空隙进行树脂填充;通过设置于
    万年芯 2025-04-22 13:28 74浏览
  •   北京华盛恒辉基于GIS的电磁态势可视化系统软件是将地理空间信息与电磁态势数据相结合,通过图形化手段直观展示电磁环境态势的系统。这类软件在军事、通信、无线电管理等领域具有广泛应用,能够辅助用户进行电磁频谱分析、干扰监测、态势研判和决策支持。以下是关于此类系统的详细介绍:   应用案例   目前,已有多个电磁态势可视化系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润电磁态势可视化系统。这些成功案例为电磁态势可视化系统的推广和应用提供了有力支持。   一、系统功能   电磁
    华盛恒辉l58ll334744 2025-04-22 11:44 78浏览
  •   卫星通信效能评估系统平台全面解析   北京华盛恒辉卫星通信效能评估系统平台是衡量卫星通信系统性能、优化资源配置、保障通信服务质量的关键技术工具。随着卫星通信技术的快速发展,特别是低轨卫星星座、高通量卫星和软件定义卫星的广泛应用,效能评估系统平台的重要性日益凸显。以下从技术架构、评估指标、关键技术、应用场景及发展趋势五个维度进行全面解析。   应用案例   目前,已有多个卫星通信效能评估系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润卫星通信效能评估系统。这些成功案例为卫
    华盛恒辉l58ll334744 2025-04-22 16:34 75浏览
  • 据国际精益六西格玛研究所(ILSSI)成员大卫·哈钦斯(David Hutchins)的回忆,在“六西格玛”名称出现前,摩托罗拉组建了约100个质量改进团队,接受朱兰博士制作的16盘录像带培训,名为《朱兰论质量改进》(Juran on Quality Improvement),为了推广这种严谨的分析方法(朱兰博士视频中的核心内容),摩托罗拉前首席执行官鲍勃·加尔文创造了“六西格玛”这一标签,用以表彰这种“最顶尖"的方法。大卫·哈钦斯(David Hutchins)是朱兰博士的好友,也为他的工作做
    优思学院 2025-04-22 12:03 72浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦