extra comments in byte_reverse function
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Sun, 21 Feb 2021 15:27:40 +0000 (15:27 +0000)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Sun, 21 Feb 2021 15:27:40 +0000 (15:27 +0000)
src/nmutil/byterev.py

index a6cb4fa96c0860ab1f4b4b35ba916fc98850e968..7dad4508ac12584056d5c8837fa6d043234d21e8 100644 (file)
@@ -6,7 +6,7 @@
 
 from nmigen import Signal, Cat
 
-# TODO: turn this into a module
+# TODO: turn this into a module?
 def byte_reverse(m, name, data, length):
     """byte_reverse: unlike nmigen word_select this takes a dynamic length
 
@@ -16,6 +16,7 @@ def byte_reverse(m, name, data, length):
     comb = m.d.comb
     data_r = Signal.like(data, name=name)
 
+    # if length is a static integer, we do not require a Case statement
     if isinstance(length, int):
         j = length
         rev = []
@@ -25,6 +26,7 @@ def byte_reverse(m, name, data, length):
         comb += data_r.eq(Cat(*rev))
         return data_r
 
+    # Switch statement needed: dynamic length had better be = 1,2,4 or 8
     with m.Switch(length):
         for j in [1,2,4,8]:
             with m.Case(j):
@@ -34,4 +36,3 @@ def byte_reverse(m, name, data, length):
                 comb += data_r.eq(Cat(*rev))
     return data_r
 
-