0

Github からSodor Processor Collection (RISC-V)をセットアップしようとしています。私の主な目標は、自分のチゼル プロジェクトで 1 ステージ プロセッサをセットアップして、それを変更し、場合によってはスカラ テストベンチを作成することです。

現在、私は次のことを行っています:

  1. chiselテンプレート プロジェクトをローカル マシンに複製する

  2. ルートフォルダーで「sbt eclipse」を実行します(このツールを使用)。Eclipseにインポートできるようにするため

  3. プロジェクト テンプレートを Eclipse Luna にインポートする

  4. project-templates src/ フォルダー内の Sodor Projects src/フォルダーからcommon/およびrv32_1stage/フォルダーをコピーします。

次に、次のようになります。

ここに画像の説明を入力

ただし、Eclipse には 72 個のエラーが表示されます。

    not found: object Node  configurations.scala    /riscv-sodor-own/src/main/scala/common  line 4  Scala Problem
    not found: object Node  consts.scala    /riscv-sodor-own/src/main/scala/rv32_1stage line 13 Scala Problem
    not found: object Node  core.scala  /riscv-sodor-own/src/main/scala/rv32_1stage line 21 Scala Problem
    not found: object Node  cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 11 Scala Problem
    not found: object Node  csr.scala   /riscv-sodor-own/src/main/scala/common  line 13 Scala Problem
    not found: object Node  decode.scala    /riscv-sodor-own/src/main/scala/common  line 4  Scala Problem
    not found: object Node  dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 12 Scala Problem
    not found: object Node  htif.scala  /riscv-sodor-own/src/main/scala/common  line 4  Scala Problem
    not found: object Node  instructions.scala  /riscv-sodor-own/src/main/scala/common  line 6  Scala Problem
    not found: object Node  memory.scala    /riscv-sodor-own/src/main/scala/common  line 21 Scala Problem
    not found: object Node  tile.scala  /riscv-sodor-own/src/main/scala/rv32_1stage line 10 Scala Problem
    not found: object Node  top.scala   /riscv-sodor-own/src/main/scala/rv32_1stage line 4  Scala Problem
    not found: object Node  util.scala  /riscv-sodor-own/src/main/scala/common  line 9  Scala Problem
    not found: value Lit    decode.scala    /riscv-sodor-own/src/main/scala/common  line 20 Scala Problem
    not found: value Lit    decode.scala    /riscv-sodor-own/src/main/scala/common  line 20 Scala Problem
    not found: value Lit    util.scala  /riscv-sodor-own/src/main/scala/common  line 131    Scala Problem
    not found: value Literal    decode.scala    /riscv-sodor-own/src/main/scala/common  line 11 Scala Problem
    overloaded method value apply with alternatives:   (x: String,radix: Int)scala.math.BigInt <and>   (numbits: Int,rnd: scala.util.Random)scala.math.BigInt <and>   (signum: Int,magnitude: Array[Byte])scala.math.BigInt  cannot be applied to (Any, Int)    decode.scala    /riscv-sodor-own/src/main/scala/common  line 12 Scala Problem
    overloaded method value apply with alternatives:   (x: String,radix: Int)scala.math.BigInt <and>   (numbits: Int,rnd: scala.util.Random)scala.math.BigInt <and>   (signum: Int,magnitude: Array[Byte])scala.math.BigInt  cannot be applied to (Any, Int)    decode.scala    /riscv-sodor-own/src/main/scala/common  line 12 Scala Problem
    overloaded method value apply with alternatives:   [T <: chisel3.core.Data](size: Int, t: T)chisel3.core.Mem[T] <and>   [T <: chisel3.core.Data](t: T, size: Int)chisel3.core.Mem[T]  cannot be applied to (chisel3.core.UInt, Int, seqRead: Boolean)   memory.scala    /riscv-sodor-own/src/main/scala/common  line 86 Scala Problem
    overloaded method value apply with alternatives:   [T <: chisel3.core.Data](size: Int, t: T)chisel3.core.Mem[T] <and>   [T <: chisel3.core.Data](t: T, size: Int)chisel3.core.Mem[T]  cannot be applied to (chisel3.core.UInt, Int, seqRead: Boolean)   memory.scala    /riscv-sodor-own/src/main/scala/common  line 87 Scala Problem
    type mismatch;  found   : Any  required: chisel3.core.Data  cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 139    Scala Problem
    type mismatch;  found   : Any  required: chisel3.core.Data  cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 140    Scala Problem
    type mismatch;  found   : Any  required: chisel3.core.Data  cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 141    Scala Problem
    type mismatch;  found   : Any  required: chisel3.core.Data  cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 142    Scala Problem
    type mismatch;  found   : Any  required: chisel3.core.Data  cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 158    Scala Problem
    type mismatch;  found   : Any  required: chisel3.core.Data  cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 159    Scala Problem
    type mismatch;  found   : Any  required: chisel3.core.Data  cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 181    Scala Problem
    type mismatch;  found   : Array[(chisel3.core.UInt, List[chisel3.core.UInt])]  required: Array[(chisel3.util.BitPat, List[?])]  cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 52 Scala Problem
    type mismatch;  found   : chisel3.core.Bool  required: Int  dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 104    Scala Problem
    type mismatch;  found   : chisel3.core.Bool  required: Int  dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 105    Scala Problem
    type mismatch;  found   : chisel3.core.Bool  required: Int  dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 106    Scala Problem
    type mismatch;  found   : chisel3.core.Bool  required: Int  dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 108    Scala Problem
    type mismatch;  found   : chisel3.core.Bool  required: Int  dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 227    Scala Problem
    type mismatch;  found   : chisel3.core.SInt  required: chisel3.core.UInt    csr.scala   /riscv-sodor-own/src/main/scala/common  line 240    Scala Problem
    type mismatch;  found   : chisel3.core.UInt  required: Int  dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 101    Scala Problem
    type mismatch;  found   : chisel3.core.UInt  required: Int  dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 107    Scala Problem
    type mismatch;  found   : Int(11)  required: chisel3.UInt     (which expands to)  chisel3.core.UInt dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 108    Scala Problem
    type mismatch;  found   : Int(12)  required: chisel3.UInt     (which expands to)  chisel3.core.UInt dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 107    Scala Problem
    type mismatch;  found   : Int(19)  required: chisel3.UInt     (which expands to)  chisel3.core.UInt dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 106    Scala Problem
    type mismatch;  found   : Int(20)  required: chisel3.UInt     (which expands to)  chisel3.core.UInt dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 104    Scala Problem
    type mismatch;  found   : Int(20)  required: chisel3.UInt     (which expands to)  chisel3.core.UInt dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 105    Scala Problem
    type mismatch;  found   : Int(27)  required: chisel3.UInt     (which expands to)  chisel3.core.UInt dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 101    Scala Problem
    type mismatch;  found   : Int(32)  required: chisel3.UInt     (which expands to)  chisel3.core.UInt dpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 227    Scala Problem
    value & is not a member of Chisel.Bits  decode.scala    /riscv-sodor-own/src/main/scala/common  line 20 Scala Problem
    value & is not a member of Chisel.Bits  util.scala  /riscv-sodor-own/src/main/scala/common  line 31 Scala Problem
    value & is not a member of Chisel.Bits  util.scala  /riscv-sodor-own/src/main/scala/common  line 41 Scala Problem
    value === is not a member of Any    cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 123    Scala Problem
    value === is not a member of Any    cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 124    Scala Problem
    value === is not a member of Any    cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 125    Scala Problem
    value === is not a member of Any    cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 126    Scala Problem
    value === is not a member of Any    cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 127    Scala Problem
    value === is not a member of Any    cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 128    Scala Problem
    value === is not a member of Any    cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 129    Scala Problem
    value === is not a member of Any    cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 130    Scala Problem
    value === is not a member of Any    cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 131    Scala Problem
    value === is not a member of Any    cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 147    Scala Problem
    value === is not a member of Any    cpath.scala /riscv-sodor-own/src/main/scala/rv32_1stage line 147    Scala Problem
    value === is not a member of Chisel.Bits    decode.scala    /riscv-sodor-own/src/main/scala/common  line 20 Scala Problem
    value === is not a member of Chisel.Bits    memory.scala    /riscv-sodor-own/src/main/scala/common  line 182    Scala Problem
    value === is not a member of Chisel.Bits    memory.scala    /riscv-sodor-own/src/main/scala/common  line 182    Scala Problem
    value === is not a member of Chisel.Bits    memory.scala    /riscv-sodor-own/src/main/scala/common  line 183    Scala Problem
    value === is not a member of Chisel.Bits    memory.scala    /riscv-sodor-own/src/main/scala/common  line 183    Scala Problem
    value === is not a member of Chisel.Bits    memory.scala    /riscv-sodor-own/src/main/scala/common  line 184    Scala Problem
    value === is not a member of Chisel.Bits    memory.scala    /riscv-sodor-own/src/main/scala/common  line 184    Scala Problem
    value === is not a member of Chisel.Bits    memory.scala    /riscv-sodor-own/src/main/scala/common  line 211    Scala Problem
    value === is not a member of Chisel.Bits    memory.scala    /riscv-sodor-own/src/main/scala/common  line 212    Scala Problem
    value === is not a member of Chisel.Bits    memory.scala    /riscv-sodor-own/src/main/scala/common  line 213    Scala Problem
    value === is not a member of Chisel.Bits    memory.scala    /riscv-sodor-own/src/main/scala/common  line 214    Scala Problem
    value litOf is not a member of Chisel.Bits  decode.scala    /riscv-sodor-own/src/main/scala/common  line 9  Scala Problem
    value litOf is not a member of Chisel.Bits  decode.scala    /riscv-sodor-own/src/main/scala/common  line 38 Scala Problem
    value litOf is not a member of Chisel.Bits  decode.scala    /riscv-sodor-own/src/main/scala/common  line 38 Scala Problem

複製した Sodor Processor Collection プロジェクトを github から Eclipse に直接インポートすると、エラーは表示されませ。しかし、私が理解している限り、そこにscalaテストベンチを書くことはできません。

src/main/scala/test/ フォルダーを作成し、ソドー プロセッサ コレクションのscala テストベンチを作成することさえ可能かどうかを知りたいです。

私の最善の推測は、build.sbt ファイルを正しく構成する必要があるということですが、その方法がわかりません。(この設定で完全に間違っているか、何かを見逃しているか教えてください。)

要するに

- Eclipse の Sodor プロセッサ コレクション?

- Sodor Processor Collection の Scala テストベンチ?

- 上記で「はい」の場合、エラーを解決するにはどうすればよいですか?

編集

いくつかの調査の後、主な問題はのみのバージョンの互換性にあると思います。Chisel3 対 Chisel 2を見つけて、これを見ました。

the Node class and object no longer exist (the class should have been private in Chisel2)

不要なimport Node._行をすべて削除することで、13 個のエラーを排除しました。でも残り59個…

4

0 に答える 0