(no commit message)
authorlkcl <lkcl@web>
Fri, 19 Feb 2021 19:49:52 +0000 (19:49 +0000)
committerIkiWiki <ikiwiki.info>
Fri, 19 Feb 2021 19:49:52 +0000 (19:49 +0000)
openpower/sv/vector_ops.mdwn

index 05d6fa680d434de158d8f84221ec478e016a439e..6d0f7ffbe2a54e73180e5641eebfa3ef811b331a 100644 (file)
@@ -266,18 +266,21 @@ used not just for carry lookahead, also a special type of predication mask opera
   `((P|G)+G)^P`
 * <https://en.m.wikipedia.org/wiki/Carry-lookahead_adder>
 
+```
      P = (A | B) & Ci
      G = (A & B)
+```
 
 Stackoverflow algorithm `((P|G)+G)^P` works on the cumulated bits of P and G from associated vector units (P and G are integers here).  The result of the algorithm is the new carry-in which already includes ripple, one bit of carry per element.
 
+```
     At each id, compute C[id] = A[id]+B[id]+0
     Get G[id] = C[id] > radix -1
     Get P[id] = C[id] == radix-1
     Join all P[id] together, likewise G[id]
     Compute newC = ((P|G)+G)^P << 1
     result[id] = (C[id] + newC[id]) % radix
-    
+```   
 
 two versions: scalar int version and CR based version.