问题标签 [chisel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
chisel - What is the difference between using UInt, SInt Bits types in Chisel?
I know that SInt is for Signed numbers and UInt is for Unsigned numbers, so If I used SInt instead of UInt it will infer a sign extension for example?
Another thing I am confused with is the difference between Bits and UInt types. Can someone clarify this to me?
Is it safe to use UInt all the time while designing with Chisel?
chisel - 如何在 Chisel 中使用算术移位运算符
使用 << 或 >> 运算符实现逻辑移位很容易,但是算术右移(符号扩展)如何在 Chisel 中实现呢?
在 Chisel 备忘单中提到 >> 运算符用于算术右移,这与逻辑右移运算符相同。
chisel - chisel hdl 向量范围赋值
我是 Chisel HDL 的新手。我有一个关于 Vec 分配的问题。假设我有一个 Vec 有 n 个元素,每个元素都有 w 位 SInt,
如何分配一系列元素,假设我有两个 Vec: a = Vec(10, SInt(width=8))
,我有b = Vec(3, SInt(width=8))
,我该如何分配b := a(2:4)
?
我知道我可以在 for 循环中做到这一点,有没有更优雅的方法来做到这一点?我没有找到任何示例代码或材料
chisel - Chisel:Verilog 为 Sint 和 UInt 生成的代码
当使用 SInt 和 UInt 实现加法器时,我得到相同的 Verilog 代码,请参见下面的代码,
和
这将生成相同的 Verilog 代码,
当然,模块名称会有所不同。使用乘法运算符 (*) 在凿子中实现乘法器时
我将为 UInt 和 SInt 获得不同的 Verilog 代码,在 SInt 中代码看起来像,
添加$signed
到代码中。这是为什么?为什么在加法情况下我得到相同的 Verilog 代码,但在乘法情况下我得到为 UInt 和 SInt 生成的不同代码?
fixed-point - Chisel hdl 上的定点支持
我是 Chisel HDL 的新手,我发现 Chisel HDL 确实提供了定点表示。(我找到了这个链接: Chisel HDL 中的定点算术)
当我在凿子 hdl 中尝试它时,它实际上不起作用:
在我的 build.sbt 文件中,我通过以下方式选择最新版本的凿子:
chisel - 如何在一行中使用 Chisel 生成和进位?
是否可以在 Chisel 中生成 sum 并在一行中进行进位,类似于 Verilog 中的此代码?
我正在使用此代码
但是我认为如果有一个单行的话会更方便。
chisel - Chisel:为什么当 Mux 的输出是 SInt 类型时我会收到警告?
代码编译正确,但我收到警告:
给出警告的代码部分如下所示:
whereimme
和rs1
are 的类型SInt
。
scala - Chisel 中的 ## 表达是什么意思?
我一直在网上寻找 ## 在凿子中的含义,但在任何地方都找不到。
例如在这个代码片段中:
if 语句中使用## 表达式的行是什么?谢谢!
fifo - 凿子异步先进先出/多个时钟。
Chisel 是否支持设计中的多个时钟?如果我想实现一个异步 fifo,如何在 Chisel 中实现呢?
chisel - 关于 Chisel 的语法
我是新来的。
我对代码有一些疑问。
这些代码之间有什么不同:
val myVec = Vec(5){Fix(width= 23)}
和
val myVec = Vec.fill(5){SInt(width = 23)}
“填满”是什么意思?
谢谢