summaryrefslogtreecommitdiff
path: root/src/test/scala/examples/ImplicitStateVendingMachine.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/scala/examples/ImplicitStateVendingMachine.scala')
-rw-r--r--src/test/scala/examples/ImplicitStateVendingMachine.scala31
1 files changed, 0 insertions, 31 deletions
diff --git a/src/test/scala/examples/ImplicitStateVendingMachine.scala b/src/test/scala/examples/ImplicitStateVendingMachine.scala
deleted file mode 100644
index 36ac82ab..00000000
--- a/src/test/scala/examples/ImplicitStateVendingMachine.scala
+++ /dev/null
@@ -1,31 +0,0 @@
-// SPDX-License-Identifier: Apache-2.0
-
-package examples
-
-import chiselTests.ChiselFlatSpec
-import chisel3._
-
-// Vending machine implemented with an implicit state machine
-class ImplicitStateVendingMachine extends SimpleVendingMachine {
- // We let the value of nickel be 1 and dime be 2 for efficiency reasons
- val value = RegInit(0.asUInt(3.W))
- val incValue = WireDefault(0.asUInt(3.W))
- val doDispense = value >= 4.U // 4 * nickel as 1 == $0.20
-
- when(doDispense) {
- value := 0.U // No change given
- }.otherwise {
- value := value + incValue
- }
-
- when(io.nickel) { incValue := 1.U }
- when(io.dime) { incValue := 2.U }
-
- io.dispense := doDispense
-}
-
-class ImplicitStateVendingMachineSpec extends ChiselFlatSpec {
- "An vending machine implemented with implicit state" should "work" in {
- assertTesterPasses { new SimpleVendingMachineTester(new ImplicitStateVendingMachine) }
- }
-}