This article is rated Start-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | |||||||||||
|
when I tried to implement a Kogge-Stone adder following the structure shown by this figure. I got totally wrong answers.
Assuming sparsity is 4, like the figure. Obviously, during the suming part, we need to use 4-bits Ripple-Carry Adder(RCA) to do the addition. RCA[0]=a[3:0]+b[3:0]+C0, RCA[1]=a[7:4]+b[7:4]+C1, ... . Those carries that we need are the carry from bit3 to bit4 (C[3]), the carry from bit7 to bit8 (C[7]), ... . However, according the figure, we can only get the final carry C[0], C[4], C[8] and C[12], definetely they are not what we need.
I used VHDL to implement it with C[3], C[7], C[11], C[15]. Seems it works correctly. â Preceding unsigned comment added by Herenvarno ( talk ⢠contribs) 20:30, 21 March 2015 (UTC)
Some Boolean equations or schematics made of normal gates would help a lot. The page in its current form just has a bunch of circles and squares of different colors, and I haven't yet figured out what they do. 200.125.115.82 ( talk) 21:51, 26 June 2009 (UTC)
Yes this is VERY unclear and I agree this page needs improvement 112.119.94.203 ( talk) 02:23, 10 July 2011 (UTC)
Han-Carlson needed to compare wide usage in industry. ` a5b ( talk) 02:22, 11 February 2010 (UTC)
"S[i] = P[i] xor C[i-1]" is misleading to the readers, as they may think here P[i] comes from the previous step according to the formulas written before, but actually it's from the first step (A[i] xor B[i]). âPreceding unsigned comment added by 88.64.32.96 ( talk) 22:40, 27 February 2011 (UTC)
Is there a way to give a carry-in to a kogge stone adder? -- 130.75.117.49 ( talk) 13:46, 25 May 2011 (UTC)
112.119.94.203 ( talk) 02:22, 10 July 2011 (UTC)
* P[i] = A[i] xor B[i] xor Cin * G[i] = (A[i] and B[i]) or (A[i] and Cin) or (B[i] and Cin)
Just letting the custodians know that the External Link does not seem to be available to the public any more. â Preceding unsigned comment added by 131.151.102.18 ( talk) 00:31, 29 October 2013 (UTC)
I could easily be in error but the S0,S1 terms I compute as:
S0 = (1 xor 1) xor 0 = 0 xor 0 =0 S1 = (0 xor 0) xor ( 1 and 1) = 0 xor 1 =1
whereas the expected sum 10101 has S1,S0 = 0,1.-- Billymac00 ( talk) 01:49, 21 April 2015 (UTC)
S[0] = 1 xor 0 = 1 (P[0] = 1, Cin = 0) S[1] = 0 xor 0 = 0 (P[1] = 0, C[0] = 0) S[2] = 1 xor 0 = 1 (P[2] = 1, C[1] = 0) S[3] = 0 xor 0 = 0 (P[3] = 0, C[2] = 0) S[4] = 0 xor 1 = 1 (P[4] = 0, C[3] = 1)
As noted above on this page, the description of carry-in (in the text) is incorrect. Simply XORing Cin with P0 will not work. Trivial example: Let A = 0 (0b0000), B = 1 (0b0001), and Cin = 1. Listing values at each stage as P/G pairs...
I'm still puzzling my way through what will work, although I think the anonymous editor with the small print is on the right track. But even if I do work it out, that's not good enough. My analysis is original research. We need to find some verifiable source that explains how to handle carry-in (preferably less densely than the original paper, which I confess I can't make much of at all).
Anyway, that's the text. The diagram does not address this at all (it flatly states Cin = 0 and only implicitly suggests the incorrect action), so it may or may not need fixing. -- Perey ( talk) 09:34, 5 July 2015 (UTC)
* P[i] = A[i] xor B[i] xor Cin * G[i] = (A[i] and B[i]) or (A[i] and Cin) or (B[i] and Cin)
This article is rated Start-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | |||||||||||
|
when I tried to implement a Kogge-Stone adder following the structure shown by this figure. I got totally wrong answers.
Assuming sparsity is 4, like the figure. Obviously, during the suming part, we need to use 4-bits Ripple-Carry Adder(RCA) to do the addition. RCA[0]=a[3:0]+b[3:0]+C0, RCA[1]=a[7:4]+b[7:4]+C1, ... . Those carries that we need are the carry from bit3 to bit4 (C[3]), the carry from bit7 to bit8 (C[7]), ... . However, according the figure, we can only get the final carry C[0], C[4], C[8] and C[12], definetely they are not what we need.
I used VHDL to implement it with C[3], C[7], C[11], C[15]. Seems it works correctly. â Preceding unsigned comment added by Herenvarno ( talk ⢠contribs) 20:30, 21 March 2015 (UTC)
Some Boolean equations or schematics made of normal gates would help a lot. The page in its current form just has a bunch of circles and squares of different colors, and I haven't yet figured out what they do. 200.125.115.82 ( talk) 21:51, 26 June 2009 (UTC)
Yes this is VERY unclear and I agree this page needs improvement 112.119.94.203 ( talk) 02:23, 10 July 2011 (UTC)
Han-Carlson needed to compare wide usage in industry. ` a5b ( talk) 02:22, 11 February 2010 (UTC)
"S[i] = P[i] xor C[i-1]" is misleading to the readers, as they may think here P[i] comes from the previous step according to the formulas written before, but actually it's from the first step (A[i] xor B[i]). âPreceding unsigned comment added by 88.64.32.96 ( talk) 22:40, 27 February 2011 (UTC)
Is there a way to give a carry-in to a kogge stone adder? -- 130.75.117.49 ( talk) 13:46, 25 May 2011 (UTC)
112.119.94.203 ( talk) 02:22, 10 July 2011 (UTC)
* P[i] = A[i] xor B[i] xor Cin * G[i] = (A[i] and B[i]) or (A[i] and Cin) or (B[i] and Cin)
Just letting the custodians know that the External Link does not seem to be available to the public any more. â Preceding unsigned comment added by 131.151.102.18 ( talk) 00:31, 29 October 2013 (UTC)
I could easily be in error but the S0,S1 terms I compute as:
S0 = (1 xor 1) xor 0 = 0 xor 0 =0 S1 = (0 xor 0) xor ( 1 and 1) = 0 xor 1 =1
whereas the expected sum 10101 has S1,S0 = 0,1.-- Billymac00 ( talk) 01:49, 21 April 2015 (UTC)
S[0] = 1 xor 0 = 1 (P[0] = 1, Cin = 0) S[1] = 0 xor 0 = 0 (P[1] = 0, C[0] = 0) S[2] = 1 xor 0 = 1 (P[2] = 1, C[1] = 0) S[3] = 0 xor 0 = 0 (P[3] = 0, C[2] = 0) S[4] = 0 xor 1 = 1 (P[4] = 0, C[3] = 1)
As noted above on this page, the description of carry-in (in the text) is incorrect. Simply XORing Cin with P0 will not work. Trivial example: Let A = 0 (0b0000), B = 1 (0b0001), and Cin = 1. Listing values at each stage as P/G pairs...
I'm still puzzling my way through what will work, although I think the anonymous editor with the small print is on the right track. But even if I do work it out, that's not good enough. My analysis is original research. We need to find some verifiable source that explains how to handle carry-in (preferably less densely than the original paper, which I confess I can't make much of at all).
Anyway, that's the text. The diagram does not address this at all (it flatly states Cin = 0 and only implicitly suggests the incorrect action), so it may or may not need fixing. -- Perey ( talk) 09:34, 5 July 2015 (UTC)
* P[i] = A[i] xor B[i] xor Cin * G[i] = (A[i] and B[i]) or (A[i] and Cin) or (B[i] and Cin)