Chisel实验笔记(一)

2023-11-16

最近在学习Risc-v,其中伯克利大学开源了一款兼容Risc-v指令集的处理器Rocket,而Rocket处理器是采用Chisel编写的,所以要学习Chisel,Chisel的简单介绍如下:

Chisel (Constructing Hardware In a Scala Embedded Language).

Chisel is a hardware construction language embedded in the high-level programming language Scala

可以认为与VHDL、Verilog HDL功能相同,都是用来编写实现硬件电路的,但是Chisel由于基于Scala,所以具有Scale的一些特性,可能便于开发。采用Chisel编写的代码,会被编译为verilog文件,还有C++文件,其中后者可以直接进行模拟。


本文主要以一个实验说明Chisel的使用步骤,实验平台是Ubuntu14.04(64位)。

(1)安装sbt

http://www.scala-sbt.org/下载sbt0.13.8,解压到一个路径下,比如/home/riscv/riscv/sbt,将其中的bin路径添加到环境变量

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Chisel实验笔记(一) 的相关文章

  • Chisel基础之Scala

    前言 Scala is yet another programming language which supports common programming paradigms We chose to use it for several
  • 数字电路设计之Leon系列处理器结构

    LEON处理器核心是一个与SPARCV8兼容的整数处理单元IU Integer Unit LEON2 是 5 级流水线 LEON3 是 7 级流水线 LEON 包含整数硬件乘法和除法单元 双协处理器 接口 FPU 浮点处理单元和Co pro
  • chisel相比verilog优势之一:复用特性

    0 绪论 世界由于人这个最大的无厘头变量 还是比技术本身复杂难懂很多 各种技术的兴起与发展总是有其背后的理由的 这篇文章是这个系列的第三篇文章 主要来说明Chisel比Verilog在某些方面具有优势的理由 换句话说 为什么要用Chisel
  • 沁恒CH32V307以及CH32VF103中断只能进一次的解决方法

    文章背景 笔者最近使用沁恒CH32V307处理器进行应用开发 基于RT Thread实时操作系统和LWIP做TCP和CAN的透传 因为官方BSP并没有适配RT Thread的CAN驱动 暂时将RT Thread作为普通实时系统使用 先不对C
  • chisel-book-chinese

    chisel book chinese 蓝奏云地址 https wwu lanzoue com isdim08x8x5i
  • ESP32-C3入门教程 基础篇(一、ADC采样)

    经过前面的折腾 设计好了自己的测试开发板 搭建好了开发环境 然后正式开始进行功能测试了 测试顺序先从简单的开始吧 一步一步来 目录 前言 1 ADC采样示例测试 1 1 DMA连续采样 1 2 单次采样 1 3 测试源码 2 ESP32 C
  • 单周期RISC-V架构CPU的设计---设计篇

    目录 一 模块设计 1 pc reg v 1 1 功能说明 1 2 整体框图 1 3 接口列表 1 4 内部信号说明 1 5 关键电路 2 id v 2 1 功能说明 2 2 整体框图 2 3 接口列表 2 4 内部信号说明 2 5 关键电
  • FLAGS标志寄存器

    标志寄存器 Flags Register FR 又称程序状态字 Program Status Word PSW 这是一个存放条件标志 控制标志寄存器 主要用于反映处理器的状态和运算结果的某些特征及控制指令的执行 CF Carry Flag
  • 多处理器编程的艺术(二)-并行程序设计

    当处理器的性能的发展受到各方面因素的限制的时候 计算机产业开始用多处理器结构实现并行计算来提高计算的效率 我们使用多处理器共享存储器的方式实现了多处理器编程 也就是多核编程 当然在这样的系统结构下我们面临着各种各样的挑战 例如如何协调各个处
  • 世界芯中国芯RISC-V相关资源及进展

    目录 1 RISC V介绍 RISC V为何会在最近两年迅速崛起 RISC V处理器生态 RISC V商业模式 2 RISC V发展历程 3 RISC V国际协会 4 中国RISC V产业联盟 5 RISC V相关资源 1 指令集规范 2
  • RISC-V:PC 绝对值与 PC 相对值

    我是 RISC V 新手 我无法理解何时写入 PC 程序计数器 相对指令以及何时写入 PC 绝对指令 例如 一条指令lui其次是jalr考虑指令PC 绝对 以及一条指令auipc其次是jalr考虑指令相对于PC 据我了解 所有指令都将由 P
  • 了解用于函数调用的 auipc+jalr 序列

    我试图阅读RISC V生成的程序集gcc我发现gcc创建序列auipc jalr对于某些函数调用 我不明白它是如何工作的 这是一个简单的例子 考虑以下C源文件 unsigned long id unsigned long x return
  • 如何生成异步复位verilog总是阻塞凿子

    Chisel 始终生成敏感度列表中仅包含时钟的块 always posedge clk begin end 是否可以将模块配置为使用异步重置并生成这样的始终块 always posedge clk or posedge reset begi
  • RISC-V 中 JAL 和 JALR 指令的偏移地址

    在 RISC V 规范中 JAL 和 JALR 指令中的立即数被转换为跳转偏移量 如下所示 将给定立即数符号扩展为 XLEN 位 将 LSB 设置为零 我对此有几个问题 问题1 对于 JAL 这给出了一个范围 000000000000 to
  • 使用 Clang 为 RISC-V 进行编译

    我正在尝试使用构建一个 hello world 程序Clang 版本 12 0 1 适用于 RISC V 架构 我已经安装了它LLVM 版本 12 0 1 具有以下设置 cmake G Unix Makefiles DLLVM ENABLE
  • RISC-V 使用 LUI 和 ADDI 构建 32 位常量

    LUI 加载立即数 用于构建32位常量并使用U型格式 LUI 将 U 立即数放入目标寄存器 rd 的高 20 位 并用零填充最低 12 位 我在手册中找到了这个 但是如果我想将 0xffffffff 移动到寄存器 我需要的所有代码是 LUI
  • RISC-V指令集中的FENCE指令是什么意思?

    在浏览 RISC V ISA 时 我在内存模型部分看到了一条指令 FENCE 指令 它到底是什么意思 RISC V ISA 使用宽松的内存模型 其中一个线程执行的加载和存储的顺序在另一个线程看到时可能不同 这样做是为了启用提高内存系统性能的
  • RISC-V 调用约定的 ABI 寄存器名称

    我对 RISC V ABI 寄存器名称感到困惑 例如 第 85 页的 RISC V 指令集手册 第一卷 用户级 ISA 版本 2 0 中的表 18 2 指定堆栈指针sp正在注册x14 然而 指令 addi sp zero 0 由 riscv
  • RISC-V 规范引用了“hart”一词 - “hart”是什么意思?

    我找到了参考文献hart在第 35 页RISC V 2 1 规范 https content riscv org wp content uploads 2016 06 riscv spec v2 1 pdf 但是 我找不到它的定义hart在
  • 为什么 RISC-V S-B 和 U-J 指令类型以这种方式编码?

    我正在读一本书 计算机组织与设计RISC V版 我遇到了 S B 和 U J 指令类型的编码 我上面提到的那些类型有奇怪的编码立即字段 S B 类型将直接字段分为两部分 这是有道理的 因为所有指令编码都必须相似 但我无法理解为什么立即字段以

随机推荐

  • 拼多多电商玩家快速采集平台数据

    作为电商卖家 选款是一件很重要的事情 所以我们在选款上面需要下大功夫分析数据 如何第一时间知晓同类商品及其价格 如何实时采集到新款 爆款 及其价格 下面我对比两种方法 看看哪种方式更适合我们普通电商从业人员 目标 抓取拼多多某类商品的列表页
  • 学习Python数据分析有什么用?

    在当今信息爆炸的时代 数据成为了各行各业中不可或缺的资源 而Python作为一种高级编程语言 拥有强大的数据分析能力 本文将详细介绍学习Python数据分析的重要性以及它在实际应用中的用途 帮助读者更好地了解并学习Python数据分析 一
  • 基于ARIMA-CNN-LSTM预测模型研究(Python代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 1 1 A IMA 模型 1 2 CNN LSTM 模型 2 运行结果 3 参考文献 4 Python代码
  • 使用SDWAN构建安全的混合WAN

    使用SD WAN构建安全的混合WAN SDWAN的爆炸已成为头条新闻了一年多 企业正在以惊人的速度采取SDWAN 不但可以为分支机构提供更灵活的连接和利用程序性能 而且可以跨全部网络提供 远程 超级用户 依托SDWAN 通过将小型台式机装备
  • 博途 V15.1安装步骤

    温馨提醒 安装此软件电脑配置至少应满足以下要求 处理器 CoreTM i5 3320M 3 3 GHz 或相当 内存 至少8G 硬盘 300 GB SSD 显示器 15 6 宽屏显示 1920 x 1080 1 双击打开 Siemens v
  • 小程序代码提审用户隐私保护协议修改指引

    为规范开发者的用户个人信息处理行为 保障用户合法权益 小程序涉及处理用户个人信息的开发者 均需补充相应用户隐私保护指引 微信会根据小程序版本隐私接口调用情况展示必填项 开发者可自主勾选其他项目 一 代码提审版本用户隐私保护指引填写入口 管理
  • 用c99 写的简单线程池类

    include
  • [培训-DSP快速入门-6]:C54x DSP开发中C语言库函数的使用

    作者主页 文火冰糖的硅基工坊 https blog csdn net HiWangWenBing 本文网址 https blog csdn net HiWangWenBing article details 119010855 目录 第1章
  • 14 代码分割之lazy:Suspense与路由懒加载

    lazy内置方法 Suspense内置组件 lazy是React提供的懒 动态 加载组件的方法 React lazy 能减少打包体积 延迟加载首屏不需要渲染的组件 依赖内置组件Suspense 给lazy加上loading指示器组件的一个容
  • 【面试题】前端开发中如何高效渲染大数据量?

    前端面试题库 面试必备 推荐 地址 前端面试题库 国庆头像 国庆爱国 程序员头像 总有一款适合你 在日常工作中 较少的能遇到一次性往页面中插入大量数据的场景 数栈的离线开发 以下简称离线 产品中 就有类似的场景 本文将分享一个实际场景中的前
  • 一大波 Android 刘海屏来袭,全网最全适配技巧!

    一 序 Hi 大家好 我是承香墨影 Apple 一直在引领设计的潮流 自从 iPhone X 发布之后 刘海屏 就一直存在争议 不过不管你怎样 Android 也要跻入 刘海屏 的行列 尤其是 Android P 发布之后 也从系统级支持顶
  • mysql auto connect_Mysql autoReconnect 的问题

    MySQL官方不推荐使用autoReconnect true 参见 http bugs mysql com bug php id 5020 需要另外找别的办法来解决超过8小时 链接断开的问题 由于问题产生的根本原因在于服务到数据库的连接长时
  • mysql的workbench在哪_MySQL Workbench的使用方法(图文)

    MySQLWorkbench 是 MySQL AB 最近释放的可视数据库设计工具 这个工具是设计 MySQL数据库的专用工具 MySQLWorkbench 拥有很多的功能和特性 这篇由DjoniDarmawikarta 写的文章通过一个示例
  • JavaScript将一层级对象数组转为children嵌套的三层级树状对象数组(多级树状分类)

    有时候后端返回的数据不适合前端 我们就需要进行转换 比如我想用elementUI的级联选择器 而这个组件对数据格式有要求 本篇文章将介绍如何将一层级对象数组数据格式转为三层级嵌套children数组 JavaScript Vue 小程序等都
  • 信息学奥赛一本通 1240:查找最接近的元素

    题目链接 http ybt ssoier cn 8088 problem show php pid 1240 include
  • 数据库相关知识和进阶知识

    目录 MySQL与Orcale EXPLAIN介绍 EXPLAIN 可以分析慢查询原因 查看MySQL存储空间大小 MySQL事务锁不执行严格的校验
  • Retrofit实现文件上传和下载【二】

    概述 通过前一篇的博客介绍 我们已经对Retrofit的使用有了一个大概的了解 今天来讲讲利用Retrofit进行文件的上传和下载 文件上传 服务器使用的是SSH框架 因此这里是以struts2的方式来获取数据的 我这里定义了三个字段用来接
  • Java发送手机短信验证码

    本次使用的是阿里云的短信服务 1 添加短信签名 签名名称要用的 在阿里云产品中搜 短信服务 gt 免费开通 gt 国内消息 2 添加短信模板 模版CODE需要用的 就在添加签名的旁边 3 创建用户 用户令牌和密码需要用的 然后选择 开始使用
  • bug复刻,解决方案---在改变div层级关系时,导致传参失败

    问题描述 在优化页面时 为了实现网页顶部遮挡效果 内容滚动 顶部导航栏不随着一起滚动 并且覆盖 做法是将内容都放在一个div里面 为这个新的div设置样式 margin top width heigh等 网页效果的确实现了 但是出现的新的问
  • Chisel实验笔记(一)

    最近在学习Risc v 其中伯克利大学开源了一款兼容Risc v指令集的处理器Rocket 而Rocket处理器是采用Chisel编写的 所以要学习Chisel Chisel的简单介绍如下 Chisel Constructing Hardw