2016-12-03 3 views
2

これはチゼル2で動作するように思われたが、現在動作しない:チゼル3割当て

class TestX extends Module 
{ 
    val io = IO(new Bundle { 
     val a = Output(UInt(width=2)) 
    }) 

    io.a(1, 0) := UInt(0) 
} 

エラー:[モジュールTestX】発現T_4雌として使用されているだけのように使用することができます男性。

この変更の対応は何ですか?

答えて

3

現在、Chisel3はサブワードの割り当てをサポートしていません。そのエラーメッセージはかなり役に立ちませんが、私は問題を提出しました:https://github.com/ucb-bar/chisel3/issues/399

あなたは抽出及び連結を使用することによって、この問題を解決することができます。

class TestX extends Module { 
    val io = IO(new Bundle { 
    val a = Input(UInt(width = 4)) 
    val b = Output(UInt(width = 4)) 
    }) 
    io.b := Cat(io.a(3, 2), UInt(0, width = 2)) 

}