summaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorchick2016-06-06 15:03:36 -0700
committerchick2016-06-06 15:03:36 -0700
commite98f9656591925464c42db70641d3cfa501f108a (patch)
tree43b5f9464d9ccc19382b20dfff2a6d4b6ef6a826 /src/test
parentdc2175b0ebafbbb4b67bcb1e9b92b639b02b36bb (diff)
Changed deprecation warning for Data#toBits to recommend asUInt instead because the sole remaining use of toBits in chiselTests was to compare to Vectors declared differently but with same underlying bits.
Making at toBits was problematic because it did not support === method. Changed Vec and Bundle to both support toUInt() Note: If toBits is actually needed now, one can use toInt().toBits()
Diffstat (limited to 'src/test')
-rw-r--r--src/test/scala/chiselTests/BundleWire.scala28
-rw-r--r--src/test/scala/chiselTests/Vec.scala6
2 files changed, 31 insertions, 3 deletions
diff --git a/src/test/scala/chiselTests/BundleWire.scala b/src/test/scala/chiselTests/BundleWire.scala
index d2e42fa9..658f5bb9 100644
--- a/src/test/scala/chiselTests/BundleWire.scala
+++ b/src/test/scala/chiselTests/BundleWire.scala
@@ -23,6 +23,27 @@ class BundleWire(n: Int) extends Module {
}
}
+class BundleToUnitTester extends BasicTester {
+ val bundle1 = Wire(new Bundle {
+ val a = UInt(width = 4)
+ val b = UInt(width = 4)
+ })
+ val bundle2 = Wire(new Bundle {
+ val a = UInt(width = 2)
+ val b = UInt(width = 6)
+ })
+
+ // 0b00011011 split as 0001 1011 and as 00 011011
+ bundle1.a := 1.U
+ bundle1.b := 11.U
+ bundle2.a := 0.U
+ bundle2.b := 27.U
+
+ assert(bundle1.asUInt() === bundle2.asUInt())
+
+ stop()
+}
+
class BundleWireTester(n: Int, x: Int, y: Int) extends BasicTester {
val dut = Module(new BundleWire(n))
dut.io.in.x := UInt(x)
@@ -42,3 +63,10 @@ class BundleWireSpec extends ChiselPropSpec {
}
}
}
+
+class BundleToUIntSpec extends ChiselPropSpec {
+ property("Bundles with same data but different, underlying elements should compare as UInt") {
+ assertTesterPasses( new BundleToUnitTester )
+ }
+}
+
diff --git a/src/test/scala/chiselTests/Vec.scala b/src/test/scala/chiselTests/Vec.scala
index 943d9e4b..9ff8ed46 100644
--- a/src/test/scala/chiselTests/Vec.scala
+++ b/src/test/scala/chiselTests/Vec.scala
@@ -20,9 +20,9 @@ class TabulateTester(n: Int) extends BasicTester {
val x = Vec(Array.tabulate(n){ i => UInt(i * 2) })
val u = Vec.tabulate(n)(i => UInt(i*2))
- assert(v.toBits === x.toBits)
- assert(v.toBits === u.toBits)
- assert(x.toBits === u.toBits)
+ assert(v.asUInt() === x.asUInt())
+ assert(v.asUInt() === u.asUInt())
+ assert(x.asUInt() === u.asUInt())
stop()
}