在 Chisel 中表达式 ## 是什么意思?
What does the expression ## mean in Chisel?
我一直在网上寻找表达式 ## 在 chisel 中的含义,但无法在任何地方找到它。
例如在这段代码中:
val ways = Module(new BRAM(log2Up(conf.lines), conf.ways * line_size))
val din = Vec.fill(conf.ways) { Bits(width=line_size) }
if(conf.ways == 2) {
ways.io.din := din(1) ## din(0)
}
if 语句中使用 ## 表达式的行是做什么的?
谢谢!
由于您不能真正 google 用于 #
等符号字符,因此您需要以其他方式查找 ##
方法的文档。最简单的方法是将鼠标悬停在 IDE 中的 ##
上,让它显示 API 文档。如果这是不可能的,因为你的 IDE 没有这样做或者你没有下载 API 文档,你可以找到调用该方法的 class 的文档并且在那里看。
在这种情况下,您在 din(1)
上呼叫 ##
。由于 din
是 Bits
的向量,因此 din(1)
是 Bits
对象。所以我们可以在 Chisel API 文档中查找 Bits
class 并在 ##
上找到以下内容:
def ##(other: Bits): UInt
Returns this wire concatenated with other
, where this wire forms the most significant part and other
forms the least significant part.
The width of the output is sum of the inputs.
我一直在网上寻找表达式 ## 在 chisel 中的含义,但无法在任何地方找到它。
例如在这段代码中:
val ways = Module(new BRAM(log2Up(conf.lines), conf.ways * line_size))
val din = Vec.fill(conf.ways) { Bits(width=line_size) }
if(conf.ways == 2) {
ways.io.din := din(1) ## din(0)
}
if 语句中使用 ## 表达式的行是做什么的? 谢谢!
由于您不能真正 google 用于 #
等符号字符,因此您需要以其他方式查找 ##
方法的文档。最简单的方法是将鼠标悬停在 IDE 中的 ##
上,让它显示 API 文档。如果这是不可能的,因为你的 IDE 没有这样做或者你没有下载 API 文档,你可以找到调用该方法的 class 的文档并且在那里看。
在这种情况下,您在 din(1)
上呼叫 ##
。由于 din
是 Bits
的向量,因此 din(1)
是 Bits
对象。所以我们可以在 Chisel API 文档中查找 Bits
class 并在 ##
上找到以下内容:
def ##(other: Bits): UInt
Returns this wire concatenated with
other
, where this wire forms the most significant part andother
forms the least significant part.The width of the output is sum of the inputs.