summaryrefslogtreecommitdiff
path: root/src/test/scala/chiselTests/FixedPointSpec.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/scala/chiselTests/FixedPointSpec.scala')
-rw-r--r--src/test/scala/chiselTests/FixedPointSpec.scala42
1 files changed, 25 insertions, 17 deletions
diff --git a/src/test/scala/chiselTests/FixedPointSpec.scala b/src/test/scala/chiselTests/FixedPointSpec.scala
index bfbb4e46..d0557e66 100644
--- a/src/test/scala/chiselTests/FixedPointSpec.scala
+++ b/src/test/scala/chiselTests/FixedPointSpec.scala
@@ -21,23 +21,31 @@ class FixedPointLiteralSpec extends FlatSpec with Matchers {
}
class FixedPointFromBitsTester extends BasicTester {
- val uint = 3.U(4.W)
- val sint = -3.S
- val fp = FixedPoint.fromDouble(3.0, width = 4, binaryPoint = 0)
- val fp_tpe = FixedPoint(4.W, 1.BP)
- val uint_result = FixedPoint.fromDouble(1.5, width = 4, binaryPoint = 1)
- val sint_result = FixedPoint.fromDouble(-1.5, width = 4, binaryPoint = 1)
- val fp_result = FixedPoint.fromDouble(1.5, width = 4, binaryPoint = 1)
-
- val uint2fp = fp_tpe.fromBits(uint)
- val sint2fp = fp_tpe.fromBits(sint)
- val fp2fp = fp_tpe.fromBits(fp)
-
- assert(uint2fp === uint_result)
- assert(sint2fp === sint_result)
- assert(fp2fp === fp_result)
-
- stop()
+ val uint = 3.U(4.W)
+ val sint = -3.S
+
+ val fp = FixedPoint.fromDouble(3.0, width = 4, binaryPoint = 0)
+ val fp_tpe = FixedPoint(4.W, 1.BP)
+ val uint_result = FixedPoint.fromDouble(1.5, width = 4, binaryPoint = 1)
+ val sint_result = FixedPoint.fromDouble(-1.5, width = 4, binaryPoint = 1)
+ val fp_result = FixedPoint.fromDouble(1.5, width = 4, binaryPoint = 1)
+
+ val uint2fp = fp_tpe.fromBits(uint)
+ val sint2fp = fp_tpe.fromBits(sint)
+ val fp2fp = fp_tpe.fromBits(fp)
+
+ val negativefp = -3.5.F(binaryPoint = 4)
+ val positivefp = 3.5.F(binaryPoint = 4)
+
+ assert(uint2fp === uint_result)
+ assert(sint2fp === sint_result)
+ assert(fp2fp === fp_result)
+
+ assert(positivefp.abs() === positivefp)
+ assert(negativefp.abs() === positivefp)
+ assert(negativefp.abs() =/= negativefp)
+
+ stop()
}
class SBP extends Module {