aboutsummaryrefslogtreecommitdiff
path: root/VexRiscv/src/main/scala/vexriscv/demo/GenSmallestNoCsr.scala
diff options
context:
space:
mode:
authorFriedrich Beckmann <friedrich.beckmann@hs-augsburg.de>2022-07-25 17:55:39 +0200
committerFriedrich Beckmann <friedrich.beckmann@hs-augsburg.de>2022-07-25 17:55:39 +0200
commit3fff6023602822531efdae30bc8ebf862967f1ef (patch)
tree16028102b8d850f8ab3115d28a8539ca6bc5f51d /VexRiscv/src/main/scala/vexriscv/demo/GenSmallestNoCsr.scala
Initial Commit
Diffstat (limited to 'VexRiscv/src/main/scala/vexriscv/demo/GenSmallestNoCsr.scala')
-rw-r--r--VexRiscv/src/main/scala/vexriscv/demo/GenSmallestNoCsr.scala64
1 files changed, 64 insertions, 0 deletions
diff --git a/VexRiscv/src/main/scala/vexriscv/demo/GenSmallestNoCsr.scala b/VexRiscv/src/main/scala/vexriscv/demo/GenSmallestNoCsr.scala
new file mode 100644
index 0000000..cd1ee31
--- /dev/null
+++ b/VexRiscv/src/main/scala/vexriscv/demo/GenSmallestNoCsr.scala
@@ -0,0 +1,64 @@
+package vexriscv.demo
+
+import vexriscv.plugin._
+import vexriscv.{plugin, VexRiscv, VexRiscvConfig}
+import spinal.core._
+
+/**
+ * Created by spinalvm on 15.06.17.
+ */
+object GenSmallestNoCsr extends App{
+ def cpu() = new VexRiscv(
+ config = VexRiscvConfig(
+ plugins = List(
+// new PcManagerSimplePlugin(
+// resetVector = 0x00000000l,
+// relaxedPcCalculation = false
+// ),
+
+ new IBusSimplePlugin(
+ resetVector = 0x80000000l,
+ cmdForkOnSecondStage = false,
+ cmdForkPersistence = false,
+ prediction = NONE,
+ catchAccessFault = false,
+ compressedGen = false
+ ),
+ new DBusSimplePlugin(
+ catchAddressMisaligned = false,
+ catchAccessFault = false,
+ earlyInjection = false
+ ),
+ new DecoderSimplePlugin(
+ catchIllegalInstruction = false
+ ),
+ new RegFilePlugin(
+ regFileReadyKind = plugin.SYNC,
+ zeroBoot = false,
+ writeRfInMemoryStage = false
+ ),
+ new IntAluPlugin,
+ new SrcPlugin(
+ separatedAddSub = false,
+ executeInsertion = false
+ ),
+ new LightShifterPlugin,
+ new HazardSimplePlugin(
+ bypassExecute = false,
+ bypassMemory = false,
+ bypassWriteBack = false,
+ bypassWriteBackBuffer = false,
+ pessimisticUseSrc = false,
+ pessimisticWriteRegFile = false,
+ pessimisticAddressMatch = false
+ ),
+ new BranchPlugin(
+ earlyBranch = false,
+ catchAddressMisaligned = false
+ ),
+ new YamlPlugin("cpu0.yaml")
+ )
+ )
+ )
+ SpinalConfig(mergeAsyncProcess = false).generateVerilog(cpu())
+}