aboutsummaryrefslogtreecommitdiff
path: root/test/passes/jacktest/LFSR16.fir
diff options
context:
space:
mode:
authorjackbackrack2015-05-20 03:52:53 -0700
committerjackbackrack2015-05-20 03:52:53 -0700
commit994fc58aa9a65eb4a5e287e121ee2e77d91db403 (patch)
tree5a75bfd8f4bd0040e577e20c928d2ee5bc56924b /test/passes/jacktest/LFSR16.fir
parentf98ef93a1562357412fd1fce4b1f453f8a33572a (diff)
parent92e7da031a14df41ee0cab13a4a63b472fbdb5e1 (diff)
merge
Diffstat (limited to 'test/passes/jacktest/LFSR16.fir')
-rw-r--r--test/passes/jacktest/LFSR16.fir21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/passes/jacktest/LFSR16.fir b/test/passes/jacktest/LFSR16.fir
new file mode 100644
index 00000000..f45002f5
--- /dev/null
+++ b/test/passes/jacktest/LFSR16.fir
@@ -0,0 +1,21 @@
+; RUN: firrtl -i %s -o %s.flo -X flo -p c | tee %s.out | FileCheck %s
+;CHECK: Done!
+circuit LFSR16 :
+ module LFSR16 :
+ output out : UInt<16>
+ input inc : UInt<1>
+
+ reg res : UInt<16>
+ on-reset res := UInt<16>(1)
+ when inc :
+ node T_16 = bit(res, 0)
+ node T_17 = bit(res, 2)
+ node T_18 = bit-xor(T_16, T_17)
+ node T_19 = bit(res, 3)
+ node T_20 = bit-xor(T_18, T_19)
+ node T_21 = bit(res, 5)
+ node T_22 = bit-xor(T_20, T_21)
+ node T_23 = bits(res, 15, 1)
+ node T_24 = cat(T_22, T_23)
+ res := T_24
+ out := res