https://mp.weixin.qq.com/s/bSrM-wLRn7O_75xYKeoaEQ

 
Chisel中的基本数据类型,不是Verilog中的Wire和Reg。Wire和Register只是数据的容器,而非数据本身。所以Chisel中的数据类型抽象层次更高一些,更关注数据的行为和组织形式的异同。
 
基本数据类型的类图如下:
其中:
1. 实线箭头为继承父类(extends);
2. 虚线箭头为实现接口(with);
3. 倾斜字体的类为抽象类(abstract);
4. 标注为叶子(leaf)的为最终类(final);
 
参考链接:
 
 
1. Data
 
所有数据类型的父类,包含了基本数据类型和复合数据类型的共同的属性和方法。
 
2. Element
 
基本数据类型的父类
 
3. ToBoolable
 
可以转换成布尔型的类型。在Verilog中wire和reg类型都可以作为真假判断条件。
 
4. Num
 
数字类型的接口。包含数字的基本运算和比较方法。
 
5. Bits
 
所有的数值,最终都要以二进制比特组的形式表达,Bits就代表这个比特序列。包含位选择和各种位操作。
 
6. UInt
 
无符号整型数。
 
7. SInt
 
有符号整型数
 
8. Bool
 
布尔型
 
9. FixedPoint
 
定点数。
 
10. Analog
 
Data type for representing bidirectional bitvectors of a given width.
 
Analog support is limited to allowing wiring up of Verilog BlackBoxes with bidirectional (inout)
pins. There is currently no support for reading or writing of Analog types within Chisel code.
 
 
 
 

Chisel3 - 基本数据类型的更多相关文章

  1. Chisel3 - 复合数据类型

    https://mp.weixin.qq.com/s/rXYqiZKuBpAYL8R94zxgRA   Chisel允许用户根据需要,把基本数据类型组合成为复合数据类型使用.如C语言里面的结构体,这样 ...

  2. Verilog缺少一个复合数据类型,如C语言中的结构体

    https://mp.weixin.qq.com/s/_9UsgUQv-MfLe8nS938cfQ Verilog中的数据类型(Data Type)是分散的,缺少一个复合数据类型:把多个wire, r ...

  3. Chisel3 - bind - Binding

    https://mp.weixin.qq.com/s/2318e6VJ4wFGpWwBOmTikA   Chisel数据类型(Data)与Module的绑定关系,根据Data的使用方式不同,而有多种绑 ...

  4. Chisel3 - util - Valid

    https://mp.weixin.qq.com/s/L5eAwv--WzZdr-CfW2-XNA   Chisel提供的Valid接口.如果valid为置1,则表明输出的bits有效:反之,则输出无 ...

  5. Chisel3 - 运算符和位宽推断

    https://mp.weixin.qq.com/s/rI-CJM6GyI6EUHPZ3uYiFg   如同Verilog中的众多运算符,Chisel也针对自身的数据类型,提供了很多运算符.   Ch ...

  6. Chisel3 - 字面量(literal)

    https://mp.weixin.qq.com/s/uiW4k4DeguvYsG8LhHk2Ug 介绍Chisel3中基本数据类型的字面量的写法,及其背后的实现机制,也就是Scala隐式规则.   ...

  7. Chisel3 - util - ReadyValid

    https://mp.weixin.qq.com/s/g7Q9ChxHbAQGkbMmOymh-g   ReadyValid通信接口.通信的双方为数据的生产者(Producer)和消费者(Consum ...

  8. Chisel3 - util - Pipe

    https://mp.weixin.qq.com/s/WeFesE8k0ORxlaNfLvDzgg   流水线,用于添加延迟.   参考链接: https://github.com/freechips ...

  9. JavaScript 中的数据类型

    Javascript中的数据类型有以下几种情况: 基本类型:string,number,boolean 特殊类型:undefined,null 引用类型:Object,Function,Date,Ar ...

随机推荐

  1. Matlab中 awgn 函数输入参数带有‘measured’ 时snr的含义

    MATLAB中awgn 函数可以为输入信号x 添加一定大小的噪声. out = awgn(in,snr,'measured');  是一种常见的使用方法,意思是在添加噪声前先测量一下输入信号的功率,再 ...

  2. [hdu1532]最大流

    裸最大流,求最大流一般步骤如下: (1)所有正向边权初始化为容量,反向边权初始化为0 (2)找增广路 (3)找到则进入(4),否则得到最大流并退出 (4) 增广路上所有边减去最小边权,相应的方向边加上 ...

  3. Golang遍历删除数组

    Golang 做数字切片 package main import "fmt" /*遍历删除数组示例*/ func main() { //定义一个数组 a1 := []int{1, ...

  4. linux --批量修改文件内容

    由于目前测试的BIOS有一个option 发生了改变,因此我们需要在之前写好的脚本上进行修改,将旧的option 改为新的选项,因此在此处用到了批量修改文件中的内容: 1. perl 命令替换: pe ...

  5. docker push的时候提示requested access to the resource is denied

    参考:http://blog.csdn.net/baidu_19473529/article/details/70156144 上面的信息显示是拒接访问,因为tag的名字斜线前面部分a10309076 ...

  6. 将微服务运行在docker上遇到的问题一

    按照类似这样的流程: 但是去访问本机的 localhost:92 localhost:80 都没有任何的内容..... 这是什么原因? 重新再来一次 新写了一个微服务demo jar包: 相应的Doc ...

  7. POI 导入excel数据自动封装成model对象--代码分析

    上完代码后,对代码进行主要的分析: 1.主要使用反射api将数数据注入javabean对象 2.代码中的日志信息级别为debug级别 3.获取ExcelImport对象后需要调用init()方法初始化 ...

  8. 题解 洛谷P2959 【[USACO09OCT]悠闲漫步The Leisurely Stroll】

    原题:洛谷P2959 不得不说这道题的图有点吓人,但实际上很多都没有用 通过题上说的“三岔路口”(对于每一个节点有三条连接,其中一条连接父节点,另外两条连接子节点)和数据,可以那些乱七八糟的路和牧场看 ...

  9. spark机器学习从0到1主成分分析-PCA (八)

      PCA 一.概念 主成分分析(Principal Component Analysis)是指将多个变量通过线性变换以选出较少数重要变量的一种多元统计分析方法,又称为主成分分析.在实际应用场合中,为 ...

  10. DRF路由组件和渲染器组件

    参考博客:https://www.cnblogs.com/wupeiqi/articles/7805382.html