学习riscv(1)安装tinyriscv的工具链

这篇具有很好参考价值的文章主要介绍了学习riscv(1)安装tinyriscv的工具链。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  因为毕设是CPU的低功耗设计,所以开始看cpu,打算还是先从这个tinyriscv学起,昨天把环境下好了,第一步是用git去clone代码,这个首先要下载git,然后在目标文件夹鼠标右键,选择“open git bush here”,再输入项目的url,就可以了。方法不难。b站有详细教程

  接下来是安装工具,我用的是windows,就按照以下步骤,唯一有一个地方有出入的是,安装GNU工具链的时候,工具路径不是他这样的,是散开的,为了考虑周全,我自己又建了一个“gnu-mcu-eclipse-riscv-none-gcc-8.2.0-2.2-20190521-0004-win64”的文件夹,然后又在这个文件夹里解压了(后面测试指令的时候也没有报错)

  make和python比较特殊,需要加入环境变量,具体操作是“右键电脑——属性——高级系统设计——环境变量”,在用户变量里双击“path”,会发现里面有很多路径,直接新建一个路径然后加进去就行了(我是这样做的,后面测试也没有问题)

学习riscv(1)安装tinyriscv的工具链

 

学习riscv(1)安装tinyriscv的工具链

   安装好之后就开始测试了,这里懒得放截图了,然后就是运行c程序,就是这一步,具体来说也就是在cmd里面输入指令,我的运行是没有错误的,关于如何在cmd中更换路径,这个可以看我这篇文章:如何在cmd中转入其他文件夹。

学习riscv(1)安装tinyriscv的工具链

 

学习riscv(1)安装tinyriscv的工具链

   关于这个测试c程序,我昨天问了师兄,师兄说这个“python .\sim_new_nowave.py ..\tests\example\simple\simple.bin inst.data”就是一个python脚本,原因是机器肯定是不能直接理解c语言的,需要转换成机器所能理解的指令,因此先转成bin文件,但是bin文件又不能说是直接打开,所以又转换成了一个inst.data文件(所以在走完这个步骤之后,会发现sim文件夹里多出来了一个名字叫inst.data的文件,如下图所示)

学习riscv(1)安装tinyriscv的工具链

   关于这个inst.data,打开之后发现是一堆16进制的数字,这里面的每一行实际上就对应的是一条指令。

学习riscv(1)安装tinyriscv的工具链




  以上就是,配置环境和测试的内容,还有一些问题,师兄做了解答:

  1.为什么装了很多东西,比如iverilog、GNU、make,结果在测试的时候看起来没用到?实际上虽然这里只是说执行了一条指令,但实际上他们内部是相互调用的,c程序之所以能够翻译成机器所理解的,原因还是因为上面的工具起作用,例如GNU里面的gcc(也不能说是程序,只能是一个类似“包工头的玩意”)实现了c的编译器,具体的可以参考这篇文章:编译工具链

  2.这个c程序测试是做什么的?实际上,他这个测试就是说,比如1+1=2,那么在实际测试中,就是把运算结果,从寄存器取出来,然后人为的比对一下,如果一样,就说明测试成功

  3.我能自己写一个c吗?好像不行。。原因记不太清了。。。

  4.接下来我应该做什么:不要看那个tinyriscv的配套文档,那个只是针对这个cpu写的,直接去看计组的书或者网课文章来源地址https://www.toymoban.com/news/detail-749878.html

到了这里,关于学习riscv(1)安装tinyriscv的工具链的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数字IC设计之——低功耗设计

    目录 概述 背景 为什么需要低功耗设计 CMOS IC功耗分析 基本概念 功耗的分类 功耗相关构成 不同层次低功耗设计方法 芯片中的功耗分布以及对应的低功耗方案 低功耗方案 系统算法级的低功耗技术 编码阶段的低功耗技术 门控时钟 Clock Gating 物理实施的低功耗技术 操作数分离

    2023年04月18日
    浏览(81)
  • IOT低功耗设计思路

    IOT低功耗设备设计大致为3个方面的设计: 器件选型、电路设计、软件设计、续航寿命估算 单片机 1.选择具备多种低功耗工作模式的MCU,如MCU支持5种低功耗模式(Sleep,Stop0,Stop2,Standby,VBat),开启带有RTC唤醒的Stop模式可让功耗尽可能低;低功耗MCU的选型:总功耗可以分为

    2024年03月25日
    浏览(37)
  • 手机中的功耗设计介绍(一)

    最近在找新工作,对某大厂的功耗工程师的职位比较感兴趣。于是整理一下网络上查到的和之前基带工作中与功耗相关的知识。 不同的公司可能会有不同的责任划分,上份工作,硬件部分的功耗是由基带负责。主要接触到的是整机的关机漏电流,待机底电流,其他场景下的电

    2024年02月10日
    浏览(40)
  • 芯片低功耗设计之UPF简介

    可以把芯片设计粗略分为三个部分:功能、时序和电源,它们分别对应RTL、SDC和UPF三种设计文件。 前端工程师对RTL和SDC肯定是非常熟悉的,但是UPF(SNPS叫UPF,Cadence叫CPF)更多地是跟后端相关,所以前端不一定了解。这里简单介绍一下UPF的原理。   首先要明白几个概念。 1、

    2024年02月03日
    浏览(35)
  • STC15单片机-低功耗设计

    STC15省电模式(数据手册有介绍) STC15系列单片机可以运行3种省电模式以降低功耗,它们分别是: 低速模式 , 空闲模式 和 掉电模式 。 正常工作模式下,STC15系列单片机的典型功耗是2.7mA ~7mA,而掉电模式下的典型功耗是0.1uA,空闲模式下的典型功耗是1.8mA 低速模式由时钟分

    2024年02月05日
    浏览(80)
  • FreeRTOS 低功耗模式设计 STM32平台

    1.2 STM32中文参考手册有介绍STM32 低功耗模式的介绍 ① 当运行空闲任务( IDLE任务)的时候就进入低功耗模式 ② 在合适的时机,通过中断或者外部事件再唤醒MCU,退出低功耗模式 ③ 对于STM32 系列单片机而言,systick 时间片如果设置的是1 ms,那么每隔1 ms 会将产生一个系统中断

    2024年02月15日
    浏览(36)
  • STM32 低功耗学习

    电源系统:VDDA供电区域、VDD供电区域、1.8V供电区域、后备供电区域。 器件的工作电压(VDD)2.0~3.6V 为了提高转换精度,给模拟外设独立供电。 电压调节器为1.8V供电区域供电,且1.8V供电区域是电源系统中最主要的部分。 两种供电方式:VBAT和VDD。主要电源被切断,该区域还

    2024年02月14日
    浏览(38)
  • FPGA设计中提高工作频率及降低功耗题目合集

    提高工作频率的本质就是减少寄存器到寄存器的时延,简言之,降低各种延时 电路延迟主要包括三个: 寄存器延迟Tco(时延是由器件物理特性决定)、走线延迟和组合逻辑延迟。 走线延迟: 1、加入时钟约束(一般以加5%裕量较为合适) 2、将相关的逻辑的布线时尽量靠近,

    2024年02月05日
    浏览(38)
  • 手把手教你移植 tinyriscv 到FPGA上

    我是 雪天鱼 ,一名FPGA爱好者,研究方向是FPGA架构探索和数字IC设计。 关注公众号【集成电路设计教程】,获取更多学习资料,并拉你进“ IC设计交流群 ”。 QQ IC设计交流群 群号: 866169462 。 所用开发板:正点原子达芬奇FPGA开发板 芯片型号:Xilinx Artix-7 35T tinyriscv 官方库链

    2023年04月17日
    浏览(44)
  • 基于低功耗蓝牙和微信小程序的门禁系统(FPGA课设设计)

    本次FPGA课程设计基于Cyclone IV的 EP4CE6F17C8。使用的是AX301开发板(正点原子的新起点也是用同一种芯片,只是要修改引脚)。 本系统能够实现通过蓝牙发送密码给FPGA,并在开发板的数码管上显示密码,密码正确,则手机端(微信小程序)接收到开门信号,并显示开门。其余时候

    2024年02月08日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包