diff options
| author | jackkoenig | 2016-09-20 16:12:59 -0700 |
|---|---|---|
| committer | jackkoenig | 2016-09-21 20:18:06 -0700 |
| commit | 7e5aef460e089b3dfd53ddd181f9384cc25145d7 (patch) | |
| tree | d4642495686b50476d6569ebbc522d2d10923a9e /src/test/scala/cookbook/VecOfBool2UInt.scala | |
| parent | b18e98ba2d058c7dd24f96f005486b70c856aeca (diff) | |
Add Cookbook tests
These tests are intended to be the examples in the Chisel3 Wiki Cookbook.
Diffstat (limited to 'src/test/scala/cookbook/VecOfBool2UInt.scala')
| -rw-r--r-- | src/test/scala/cookbook/VecOfBool2UInt.scala | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/test/scala/cookbook/VecOfBool2UInt.scala b/src/test/scala/cookbook/VecOfBool2UInt.scala new file mode 100644 index 00000000..5852120c --- /dev/null +++ b/src/test/scala/cookbook/VecOfBool2UInt.scala @@ -0,0 +1,28 @@ +// See LICENSE for license details. + +package cookbook + +import chisel3._ + +/* ### How do I create a UInt from a Vec of Bool? + * + * Use the builtin function asUInt + */ +class VecOfBool2UInt extends CookbookTester(0) { + // Example + val vec = Vec(Bool(true), Bool(false), Bool(true), Bool(true)) + val uint = vec.asUInt + printf(p"$uint") // 13 + + /* Test + * + * (remember leftmost Bool in Vec is low order bit) + */ + assert(UInt(0xd) === uint) +} + +class VecOfBool2UIntSpec extends CookbookSpec { + "VecOfBool2UInt" should "work" in { + assertTesterPasses { new VecOfBool2UInt } + } +} |
