Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Receives n-bit value 'A' and returns lg(n)+1 bit value indicating the number of sequential ones starting from the LSB. eg '01001011' yields '010'
- A3A2A1A0|S2S1S0
- 0 0 0 0 |0 0 0
- 0 0 0 1 |0 0 1
- 0 0 1 1 |0 1 0
- 0 0 1 0 |0 0 0
- 0 1 0 0 |0 0 0
- 0 1 0 1 |0 0 1
- 0 1 1 1 |0 1 1
- 0 1 1 0 |0 0 0
- 1 1 0 0 |0 0 0
- 1 1 0 1 |0 0 1
- 1 1 1 1 |1 0 0
- 1 1 1 0 |0 0 0
- 1 0 0 0 |0 0 0
- 1 0 0 1 |0 0 1
- 1 0 1 1 |0 1 1
- 1 0 1 0 |0 0 0
- A3A2\A1A0 00 01 11 10
- 00 0 0 0 0
- 01 0 0 0 0
- 11 0 0 1 0
- 10 0 0 0 0
- S2 =A3A2A1A0
- A3A2\A1A0 00 01 11 10
- 00 0 0 1 0
- 01 0 0 1 0
- 11 0 0 0 0
- 10 0 0 1 0
- S1 = A1A0(A3'+A2')
- A3A2\A1A0 00 01 11 10
- 00 0 1 0 0
- 01 0 1 1 0
- 11 0 1 0 0
- 10 0 1 1 0
- S0 = A1'A0+A3'A2A0
- In|Out
- 1 |1
- 2 |2
- 3 |2
- 4 |3
- 8 |4
- 16 |5
- 32 |6
- 64 |7
- \\\\\\\\\\\\\\\\
- 16 bit #
- 1000 0000 0000 0000 //location of left-most bit
- |---8---| |---8---|
- Bit 16 if left bank all ones and right bank all ones
- 0111 1111 1000 0000
- |---8---| |---8---|
- Bit 8 if left bank not all ones and right bank all ones
- 0111 1000 0111 1000
- |---8---| |---8---|
- Bit 4 if left bank not all ones and right bank all ones
- \\\\\\\\\\\\\\
- xxxx xxxx xxxx xxx0 00000 0
- xxxx xxxx xxxx xx01 00001 1
- xxxx xxxx xxxx x011 00010 2
- xxxx xxxx xxxx 0111 00011 3 xxx0
- xxxx xxxx xxx0 1111 00100 4
- xxxx xxxx xx01 1111 00101 5
- xxxx xxxx x011 1111 00110 6
- xxxx xxxx 0111 1111 00111 7 xx01
- xxxx xxx0 1111 1111 01000 8
- xxxx xx01 1111 1111 01001 9
- xxxx x011 1111 1111 01010 10
- xxxx 0111 1111 1111 01011 11 x011
- xxx0 1111 1111 1111 01100 12
- xx01 1111 1111 1111 01101 13
- x011 1111 1111 1111 01110 14
- 0111 1111 1111 1111 01111 15 0111
- 1111 1111 1111 1111 10000 16 1111
- Anding blocks of four bits yields the same pattern as a four subsequence.
- 1: Any sequential pair is 01 with all ones afterward
- ---------------------- Bit 1
- xxxx xxxx xxxx xx01 00001 1
- xxxx xxxx xxxx 0111 00011 3
- xxxx xxxx xx01 1111 00101 5
- xxxx xxxx 0111 1111 00111 7
- xxxx xx01 1111 1111 01001 9
- xxxx 0111 1111 1111 01011 11
- xx01 1111 1111 1111 01101 13
- 0111 1111 1111 1111 01111 15
- +++ Reduce via dc's
- dc\ba 00 01 11 10
- 00 0 a 0 0
- 01 0 a b 0
- 11 0 a 0 0
- 10 0 a 0 0
- ---------------------- Bit 2
- xxxx xxxx xxxx x011 00010 2
- xxxx xxxx xxxx 0111 00011 3
- xxxx xxxx x011 1111 00110 6
- xxxx xxxx 0111 1111 00111 7
- xxxx x011 1111 1111 01010 10
- xxxx 0111 1111 1111 01011 11
- x011 1111 1111 1111 01110 14
- 0111 1111 1111 1111 01111 15
- ---------------------- Bit 4
- xxxx xxxx xxx0 1111 00100 4
- xxxx xxxx xx01 1111 00101 5
- xxxx xxxx x011 1111 00110 6
- xxxx xxxx 0111 1111 00111 7
- xxx0 1111 1111 1111 01100 12
- xx01 1111 1111 1111 01101 13
- x011 1111 1111 1111 01110 14
- 0111 1111 1111 1111 01111 15
- ---------------------- Bit 8
- xxxx xxx0 1111 1111 01000 8
- xxxx xx01 1111 1111 01001 9
- xxxx x011 1111 1111 01010 10
- xxxx 0111 1111 1111 01011 11
- xxx0 1111 1111 1111 01100 12
- xx01 1111 1111 1111 01101 13
- x011 1111 1111 1111 01110 14
- 0111 1111 1111 1111 01111 15
- ---------------------- Bit 16
- 1111 1111 1111 1111 10000 16
- \\\\\ Solving the four case:
- xxx0 000 0
- xx01 001 1
- x011 010 2
- 0111 011 3 xxx0
- 1111 100
- A3A2A1A0 | S2S1S0
- 0 0 0 0 | 0 0 0
- 0 0 0 1 | 0 0 1
- 0 0 1 1 | 0 1 0
- 0 0 1 0 | 0 0 0
- 0 1 0 0 | 0 0 0
- 0 1 0 1 | 0 0 1
- 0 1 1 1 | 0 1 1
- 0 1 1 0 | 0 0 0
- 1 1 0 0 | 0 0 0
- 1 1 0 1 | 0 0 1
- 1 1 1 1 | 1 0 0
- 1 1 1 0 | 0 0 0
- 1 0 0 0 | 0 0 0
- 1 0 0 1 | 0 0 1
- 1 0 1 1 | 0 1 0
- 1 0 1 0 | 0 0 0
- A3A2\A1A0 00 01 11 10
- 00 0 0 0 0
- 01 0 0 0 0
- 11 0 0 1 0
- 10 0 0 0 0
- S2 =A3A2A1A0
- A3A2\A1A0 00 01 11 10
- 00 0 0 1 0
- 01 0 0 1 0
- 11 0 0 0 0
- 10 0 0 1 0
- S1 = A1A0(A3'+A2')
- = A1A0(A3A2)'
- = A3'A1A0+A2'A1A2
- A3A2\A1A0 00 01 11 10
- 00 0 1 0 0
- 01 0 1 1 0
- 11 0 1 0 0
- 10 0 1 0 0
- S0 = A1'A0+A3'A2A0
- = (A1'+A3'A2)A0
- A3A2\A1A0 00 01 11 10
- 00 0 0 1 0
- 01 0 0 0 0
- 11 0 0 1 0
- 10 0 0 0 0
- Feed S2 into the next layer to compute the next pair of output bit
- /////////////Modular Design Of Fast Leading Zeros Counting Circuit
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement