Github からSodor Processor Collection (RISC-V)をセットアップしようとしています。私の主な目標は、自分のチゼル プロジェクトで 1 ステージ プロセッサをセットアップして、それを変更し、場合によってはスカラ テストベンチを作成することです。
現在、私は次のことを行っています:
chiselテンプレート プロジェクトをローカル マシンに複製する
ルートフォルダーで「sbt eclipse」を実行します(このツールを使用)。Eclipseにインポートできるようにするため
プロジェクト テンプレートを Eclipse Luna にインポートする
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個…