小编DDR*_*kar的帖子

如何在 Chisel 中正确定义输出 Reg

您可能知道 Verilog 中的“输出 reg”,这是非常有用的功能。
但是在 Chisel 中,我找不到如何做类似的事情。当我需要寄存器输出时,我应该这样做:

package filter

import chisel3._

class TestReg extends Module {
    val io = IO( new Bundle {
        val din  = Input(SInt(32.W))
        val ena  = Input(Bool())
        val dout = Output(SInt())
    })

    val dout = RegInit(0.S(32.W))
    when (io.ena) {
        dout := io.din + 77.S
    }
    io.dout <> dout
}
Run Code Online (Sandbox Code Playgroud)

是否有更“短”的方式来创建输出 reg?
我正在寻找的是在 IO 包中定义 Reg 并将其写入 register
类似这样的东西:

class TestReg extends Module {
    val io = IO( new Bundle {
        val din  = Input(SInt(32.W))
        val ena …
Run Code Online (Sandbox Code Playgroud)

hdl register-transfer-level chisel

2
推荐指数
1
解决办法
183
查看次数

标签 统计

chisel ×1

hdl ×1

register-transfer-level ×1