Advertisement

ChiselTutorial(二)——关于chisel的数据类型说明

阅读量:

以下内容依据2015年7月10日版本的Chisel 2.2 Tutorial整理

Chisel 的数据类型

Chisel中所定义的数据类型主要用于标识在线路上传输的信号以及存储于状态单元内的数值类型,其对应于Verilog HDL中的线网型与寄存器型变量。尽管数字电路本质上均是对二进制向量进行处理,但引入一些抽象的数据类型,有助于提升设计表达的清晰度,并可进一步促进生成更高效优化的电路结构。具体而言,主要包括以下几种类型

名称 含义
Bits Bit的集合
SInt 有符号整数
UInt 无符号整数
Bool 布尔类型
Bundle 一些元素的集合,每个元素都有一个变量名,类似于C语言中的结构体
Vec 一些元素组成的向量,每个元素都有一个索引序号,类似于C语言中的数组

上述数据类型还对应相应的类,例如SInt类型对应的即是SInt类,当定义一个SInt变量时,需要使用SInt类的构造函数进行初始化,例如:

复制代码
    SInt(5)
    

构造函数所接收的参数可以是Scala语言中的整型数值或字符序列,例如:

复制代码
 UInt(1)          // 传入的是Scala中定义的一个整数1,宽度是1bit

    
 UInt(“ha”)       // 传入的是一个字符串,含

全部评论 (0)

还没有任何评论哟~