playground
playground copied to clipboard
Get error when generate verilog.
I use the following codes to generate verilog using this repository as template:
object myMultipierMain extends App {
val path = "~/project/CPU/playground/generated"
val firtoolOptions = Seq (
FirtoolOption("--disable-all-randomization"),
FirtoolOption("--lowering-options=disallowLocalVariables, locationInfoStyle=none"),
FirtoolOption("--lowering-options=locationInfoStyle=none")
)
emitVerilog(new TestOneHot(), Array("--target-dir", path), firtoolOptions)
}
but get error:
Exception in thread "main" java.util.ServiceConfigurationError: firrtl.options.RegisteredLibrary: Provider firrtl.passes.memlib.MemLibOptions not found
at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:593)
at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.nextProviderClass(ServiceLoader.java:1219)
at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNextService(ServiceLoader.java:1228)
at java.base/java.util.ServiceLoader$LazyClassPathLookupIterator.hasNext(ServiceLoader.java:1273)
at java.base/java.util.ServiceLoader$2.hasNext(ServiceLoader.java:1309)
at java.base/java.util.ServiceLoader$3.hasNext(ServiceLoader.java:1393)
at firrtl.options.Shell.registeredLibraries$lzycompute(Shell.scala:52)
at firrtl.options.Shell.registeredLibraries(Shell.scala:49)
at firrtl.options.Shell.parserSetup(Shell.scala:63)
at firrtl.options.BareShell.parse(Shell.scala:33)
at firrtl.options.Stage.execute(Stage.scala:56)
at chisel3.emitVerilog$.apply(verilog.scala:63)
at playground.myMultipierMain$.delayedEndpoint$playground$myMultipierMain$1(oneHot.scala:43)
at playground.myMultipierMain$delayedInit$body.apply(oneHot.scala:36)
at scala.Function0.apply$mcV$sp(Function0.scala:42)
at scala.Function0.apply$mcV$sp$(Function0.scala:42)
at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:17)
at scala.App.$anonfun$main$1(App.scala:98)
at scala.App.$anonfun$main$1$adapted(App.scala:98)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:576)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:574)
at scala.collection.AbstractIterable.foreach(Iterable.scala:933)
at scala.App.main(App.scala:98)
at scala.App.main$(App.scala:96)
at playground.myMultipierMain$.main(oneHot.scala:36)
at playground.myMultipierMain.main(oneHot.scala)
the same codes can generate verilog successfully under another project. Can anyone give me some advice?
After a painful examination, I find there is a value named lazymodule
in the object playground
of build.sc
. and Its initial value is freechips.rocketchip.system.ExampleRocketSystem
. I modify the value to the name of moudle(playground.TestOneHot
) that I want to get verilog, and then I run the mill playground.verilog
in shell, but still get error, I have no idea about this problem. Hope to get some advice.
Could not start a Mill server process.
This could be caused by too many already running Mill instances or by an unsupported platform.
Trying to run Mill in-process ...
Exception in thread "main" java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at mill.main.client.IsolatedMillMainLoader.runMain(IsolatedMillMainLoader.java:58)
at mill.main.client.MillClientMain.main(MillClientMain.java:83)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at mill.define.Module$Internal.$anonfun$reflect$4(Module.scala:70)
at scala.collection.ArrayOps$WithFilter.map(ArrayOps.scala:90)
at mill.define.Module$Internal.reflect(Module.scala:62)
at mill.define.Module$Internal.reflectSingle(Module.scala:75)
at mill.main.ResolveTasks$.endResolveLabel(ResolveTasks.scala:50)
at mill.main.Resolve.resolve(Resolve.scala:188)
at mill.main.Resolve.$anonfun$resolve$2(Resolve.scala:196)
at scala.collection.immutable.List.map(List.scala:246)
at scala.collection.immutable.List.map(List.scala:79)
at mill.main.Resolve.recurse$1(Resolve.scala:196)
at mill.main.Resolve.resolve(Resolve.scala:209)
at mill.main.RunScript$.$anonfun$resolveTasks$7(RunScript.scala:249)
at scala.util.Either.map(Either.scala:382)
at mill.main.RunScript$.$anonfun$resolveTasks$6(RunScript.scala:233)
at scala.collection.immutable.List.map(List.scala:246)
at scala.collection.immutable.List.map(List.scala:79)
at mill.main.RunScript$.$anonfun$resolveTasks$5(RunScript.scala:232)
at scala.util.Either.flatMap(Either.scala:352)
at mill.main.RunScript$.resolveTasks(RunScript.scala:229)
at mill.main.RunScript$.$anonfun$resolveTasks$2(RunScript.scala:202)
at scala.collection.immutable.List.map(List.scala:246)
at scala.collection.immutable.List.map(List.scala:79)
at mill.main.RunScript$.$anonfun$resolveTasks$1(RunScript.scala:201)
at scala.util.Either.flatMap(Either.scala:352)
at mill.main.RunScript$.resolveTasks(RunScript.scala:200)
at mill.main.RunScript$.evaluateTasks(RunScript.scala:312)
at mill.main.RunScript$.$anonfun$runScript$8(RunScript.scala:105)
at ammonite.util.Res$Success.flatMap(Res.scala:62)
at mill.main.RunScript$.runScript(RunScript.scala:104)
at mill.main.MainRunner.$anonfun$runScript$1(MainRunner.scala:119)
at mill.main.MainRunner.watchLoop2(MainRunner.scala:67)
at mill.main.MainRunner.runScript(MainRunner.scala:92)
at mill.MillMain$.main0(MillMain.scala:320)
at mill.MillMain$.main(MillMain.scala:52)
at mill.MillMain.main(MillMain.scala)
... 6 more
Caused by: java.util.NoSuchElementException: key not found: List(2.13.12)
at scala.collection.immutable.Map$Map1.apply(Map.scala:243)
at mill.define.Cross.apply(Cross.scala:86)
at ammonite.$file.dependencies.chisel.build$Chisel.macrosModule(build.sc:193)
at ammonite.$file.dependencies.chisel.build$Chisel.macrosModule(build.sc:184)
at ammonite.$file.dependencies.chisel.common$ChiselModule.moduleDeps(common.sc:148)
at ammonite.$file.dependencies.chisel.common$ChiselModule.moduleDeps$(common.sc:148)
at ammonite.$file.dependencies.chisel.build$Chisel.mill$scalalib$PublishModule$$super$moduleDeps(build.sc:184)
at mill.scalalib.PublishModule.moduleDeps(PublishModule.scala:16)
at mill.scalalib.PublishModule.moduleDeps$(PublishModule.scala:16)
at ammonite.$file.dependencies.chisel.build$Chisel.moduleDeps(build.sc:184)
at mill.scalalib.JavaModule.recursiveModuleDeps(JavaModule.scala:155)
at mill.scalalib.JavaModule.recursiveModuleDeps$(JavaModule.scala:154)
at ammonite.$file.dependencies.chisel.build$Chisel.recursiveModuleDeps(build.sc:184)
at mill.scalalib.JavaModule.transitiveModuleDeps(JavaModule.scala:160)
at mill.scalalib.JavaModule.transitiveModuleDeps$(JavaModule.scala:159)
at ammonite.$file.dependencies.chisel.build$Chisel.transitiveModuleDeps(build.sc:184)
at mill.scalalib.JavaModule.$anonfun$recursiveModuleDeps$1(JavaModule.scala:155)
at scala.collection.immutable.List.flatMap(List.scala:293)
at scala.collection.immutable.List.flatMap(List.scala:79)
at mill.scalalib.JavaModule.recursiveModuleDeps(JavaModule.scala:155)
at mill.scalalib.JavaModule.recursiveModuleDeps$(JavaModule.scala:154)
at ammonite.$file.build$playground$.recursiveModuleDeps(build.sc:123)
at mill.scalalib.JavaModule.$anonfun$upstreamCompileOutput$1(JavaModule.scala:183)
at scala.collection.mutable.HashMap.getOrElseUpdate(HashMap.scala:454)
at mill.moduledefs.Cacher.cachedTarget(Cacher.scala:10)
at mill.moduledefs.Cacher.cachedTarget$(Cacher.scala:9)
at mill.define.Module.cachedTarget(Module.scala:17)
at mill.scalalib.JavaModule.upstreamCompileOutput(JavaModule.scala:182)
at mill.scalalib.JavaModule.upstreamCompileOutput$(JavaModule.scala:182)
at ammonite.$file.build$playground$.upstreamCompileOutput(build.sc:123)
at mill.scalalib.ScalaModule.$anonfun$compile$1(ScalaModule.scala:208)
at scala.collection.mutable.HashMap.getOrElseUpdate(HashMap.scala:454)
at mill.moduledefs.Cacher.cachedTarget(Cacher.scala:10)
at mill.moduledefs.Cacher.cachedTarget$(Cacher.scala:9)
at mill.define.Module.cachedTarget(Module.scala:17)
at mill.scalalib.ScalaModule.compile(ScalaModule.scala:198)
at mill.scalalib.ScalaModule.compile$(ScalaModule.scala:198)
at ammonite.$file.build$playground$.compile(build.sc:123)
at mill.scalalib.JavaModule.$anonfun$finalMainClassOpt$1(JavaModule.scala:60)
at scala.collection.mutable.HashMap.getOrElseUpdate(HashMap.scala:454)
at mill.moduledefs.Cacher.cachedTarget(Cacher.scala:10)
at mill.moduledefs.Cacher.cachedTarget$(Cacher.scala:9)
at mill.define.Module.cachedTarget(Module.scala:17)
at mill.scalalib.JavaModule.finalMainClassOpt(JavaModule.scala:56)
at mill.scalalib.JavaModule.finalMainClassOpt$(JavaModule.scala:56)
at ammonite.$file.build$playground$.finalMainClassOpt(build.sc:123)
at mill.scalalib.JavaModule.$anonfun$finalMainClass$1(JavaModule.scala:73)
at scala.collection.mutable.HashMap.getOrElseUpdate(HashMap.scala:454)
at mill.moduledefs.Cacher.cachedTarget(Cacher.scala:10)
at mill.moduledefs.Cacher.cachedTarget$(Cacher.scala:9)
at mill.define.Module.cachedTarget(Module.scala:17)
at mill.scalalib.JavaModule.finalMainClass(JavaModule.scala:72)
at mill.scalalib.JavaModule.finalMainClass$(JavaModule.scala:72)
at ammonite.$file.build$playground$.finalMainClass(build.sc:123)
at ammonite.$file.build$playground$.$anonfun$elaborate$1(build.sc:140)
at scala.collection.mutable.HashMap.getOrElseUpdate(HashMap.scala:454)
at mill.moduledefs.Cacher.cachedTarget(Cacher.scala:10)
at mill.moduledefs.Cacher.cachedTarget$(Cacher.scala:9)
at mill.define.Module.cachedTarget(Module.scala:17)
at ammonite.$file.build$playground$.elaborate(build.sc:138)
at ammonite.$file.build$playground$.$anonfun$verilog$1(build.sc:156)
at scala.collection.mutable.HashMap.getOrElseUpdate(HashMap.scala:454)
at mill.moduledefs.Cacher.cachedTarget(Cacher.scala:10)
at mill.moduledefs.Cacher.cachedTarget$(Cacher.scala:9)
at mill.define.Module.cachedTarget(Module.scala:17)
at ammonite.$file.build$playground$.verilog(build.sc:154)
... 45 more
I run
./mill.sh resolve playground._
and get
Could not start a Mill server process.
This could be caused by too many already running Mill instances or by an unsupported platform.
Trying to run Mill in-process ...
[1/1] resolve
1 targets failed
resolve java.lang.reflect.InvocationTargetException
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
mill.define.Module$Internal.$anonfun$reflect$4(Module.scala:70)
scala.collection.ArrayOps$WithFilter.map(ArrayOps.scala:90)
mill.define.Module$Internal.reflect(Module.scala:62)
mill.define.Module$Internal.reflectAll(Module.scala:73)
mill.main.ResolveMetadata$.singleModuleMeta(ResolveMetadata.scala:11)
mill.main.ResolveMetadata$.direct$1(ResolveMetadata.scala:31)
mill.main.ResolveMetadata$.endResolveLabel(ResolveMetadata.scala:38)
mill.main.Resolve.resolve(Resolve.scala:188)
mill.main.Resolve.$anonfun$resolve$2(Resolve.scala:196)
scala.collection.immutable.List.map(List.scala:246)
scala.collection.immutable.List.map(List.scala:79)
mill.main.Resolve.recurse$1(Resolve.scala:196)
mill.main.Resolve.resolve(Resolve.scala:209)
mill.main.RunScript$.$anonfun$resolveTasks$7(RunScript.scala:249)
scala.util.Either.map(Either.scala:382)
mill.main.RunScript$.$anonfun$resolveTasks$6(RunScript.scala:233)
scala.collection.immutable.List.map(List.scala:246)
scala.collection.immutable.List.map(List.scala:79)
mill.main.RunScript$.$anonfun$resolveTasks$5(RunScript.scala:232)
scala.util.Either.flatMap(Either.scala:352)
mill.main.RunScript$.resolveTasks(RunScript.scala:229)
mill.main.RunScript$.$anonfun$resolveTasks$2(RunScript.scala:202)
scala.collection.immutable.List.map(List.scala:246)
scala.collection.immutable.List.map(List.scala:79)
mill.main.RunScript$.$anonfun$resolveTasks$1(RunScript.scala:201)
scala.util.Either.flatMap(Either.scala:352)
mill.main.RunScript$.resolveTasks(RunScript.scala:200)
mill.main.MainModule.$anonfun$resolve$1(MainModule.scala:105)
mill.define.Task$TraverseCtx.evaluate(Task.scala:380)
java.util.NoSuchElementException: key not found: List(2.13.12)
scala.collection.immutable.BitmapIndexedMapNode.apply(HashMap.scala:635)
scala.collection.immutable.HashMap.apply(HashMap.scala:132)
mill.define.Cross.apply(Cross.scala:86)
ammonite.$file.dependencies.chisel.build$Chisel.pluginModule(build.sc:197)
ammonite.$file.build$CommonModule.$anonfun$scalacOptions$1(build.sc:43)
scala.collection.mutable.HashMap.getOrElseUpdate(HashMap.scala:454)
mill.moduledefs.Cacher.cachedTarget(Cacher.scala:10)
mill.moduledefs.Cacher.cachedTarget$(Cacher.scala:9)
mill.define.Module.cachedTarget(Module.scala:17)
ammonite.$file.build$CommonModule.scalacOptions(build.sc:42)
ammonite.$file.build$CommonModule.scalacOptions$(build.sc:42)
ammonite.$file.build$playground$.scalacOptions(build.sc:123)
mill.scalalib.ScalaModule.$anonfun$allScalacOptions$1(ScalaModule.scala:134)
scala.collection.mutable.HashMap.getOrElseUpdate(HashMap.scala:454)
mill.moduledefs.Cacher.cachedTarget(Cacher.scala:10)
mill.moduledefs.Cacher.cachedTarget$(Cacher.scala:9)
mill.define.Module.cachedTarget(Module.scala:17)
mill.scalalib.ScalaModule.allScalacOptions(ScalaModule.scala:133)
mill.scalalib.ScalaModule.allScalacOptions$(ScalaModule.scala:133)
ammonite.$file.build$playground$.allScalacOptions(build.sc:123)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:498)
mill.define.Module$Internal.$anonfun$reflect$4(Module.scala:70)
scala.collection.ArrayOps$WithFilter.map(ArrayOps.scala:90)
mill.define.Module$Internal.reflect(Module.scala:62)
mill.define.Module$Internal.reflectAll(Module.scala:73)
mill.main.ResolveMetadata$.singleModuleMeta(ResolveMetadata.scala:11)
mill.main.ResolveMetadata$.direct$1(ResolveMetadata.scala:31)
mill.main.ResolveMetadata$.endResolveLabel(ResolveMetadata.scala:38)
mill.main.Resolve.resolve(Resolve.scala:188)
mill.main.Resolve.$anonfun$resolve$2(Resolve.scala:196)
scala.collection.immutable.List.map(List.scala:246)
scala.collection.immutable.List.map(List.scala:79)
mill.main.Resolve.recurse$1(Resolve.scala:196)
mill.main.Resolve.resolve(Resolve.scala:209)
mill.main.RunScript$.$anonfun$resolveTasks$7(RunScript.scala:249)
scala.util.Either.map(Either.scala:382)
mill.main.RunScript$.$anonfun$resolveTasks$6(RunScript.scala:233)
scala.collection.immutable.List.map(List.scala:246)
scala.collection.immutable.List.map(List.scala:79)
mill.main.RunScript$.$anonfun$resolveTasks$5(RunScript.scala:232)
scala.util.Either.flatMap(Either.scala:352)
mill.main.RunScript$.resolveTasks(RunScript.scala:229)
mill.main.RunScript$.$anonfun$resolveTasks$2(RunScript.scala:202)
scala.collection.immutable.List.map(List.scala:246)
scala.collection.immutable.List.map(List.scala:79)
mill.main.RunScript$.$anonfun$resolveTasks$1(RunScript.scala:201)
scala.util.Either.flatMap(Either.scala:352)
mill.main.RunScript$.resolveTasks(RunScript.scala:200)
mill.main.MainModule.$anonfun$resolve$1(MainModule.scala:105)
mill.define.Task$TraverseCtx.evaluate(Task.scala:380)