home *** CD-ROM | disk | FTP | other *** search
- {------------------------------------------------------------------------------
- 8 BIT BARREL SHIFTER
- -------------------------------------------------------------------------------
-
-
-
- This device takes its input on the D bus. The output (on the Y bus) is
- the input left shifted by the number of states specified on the S bus.
-
- ------------------------------------------------------------------------------}
-
-
-
- ! D0 = 1, D1 = 0, D2 = 0, D3 = 0, { input data }
- D4 = 0, D5 = 0, D6 = 0, D7 = 0;
-
- ! Y0, Y1, Y2, Y3, Y4, Y5, Y6, Y7; { output data }
-
- ! S0 = 0, S1 = 0, S2 = 0; { shift distance }
-
-
-
- Y0 = /S2./S1./S0 . D0
- + /S2./S1. S0 . D1
- + /S2. S1./S0 . D2
- + /S2. S1. S0 . D3
- + S2./S1./S0 . D4
- + S2./S1. S0 . D5
- + S2. S1./S0 . D6
- + S2. S1. S0 . D7 ;
-
- Y1 = /S2./S1./S0 . D1
- + /S2./S1. S0 . D2
- + /S2. S1./S0 . D3
- + /S2. S1. S0 . D4
- + S2./S1./S0 . D5
- + S2./S1. S0 . D6
- + S2. S1./S0 . D7
- + S2. S1. S0 . D0 ;
-
- Y2 = /S2./S1./S0 . D2
- + /S2./S1. S0 . D3
- + /S2. S1./S0 . D4
- + /S2. S1. S0 . D5
- + S2./S1./S0 . D6
- + S2./S1. S0 . D7
- + S2. S1./S0 . D0
- + S2. S1. S0 . D1 ;
-
- Y3 = /S2./S1./S0 . D3
- + /S2./S1. S0 . D4
- + /S2. S1./S0 . D5
- + /S2. S1. S0 . D6
- + S2./S1./S0 . D7
- + S2./S1. S0 . D0
- + S2. S1./S0 . D1
- + S2. S1. S0 . D2 ;
-
- Y4 = /S2./S1./S0 . D4
- + /S2./S1. S0 . D5
- + /S2. S1./S0 . D6
- + /S2. S1. S0 . D7
- + S2./S1./S0 . D0
- + S2./S1. S0 . D1
- + S2. S1./S0 . D2
- + S2. S1. S0 . D3 ;
-
- Y5 = /S2./S1./S0 . D5
- + /S2./S1. S0 . D6
- + /S2. S1./S0 . D7
- + /S2. S1. S0 . D0
- + S2./S1./S0 . D1
- + S2./S1. S0 . D2
- + S2. S1./S0 . D3
- + S2. S1. S0 . D4 ;
-
- Y6 = /S2./S1./S0 . D6
- + /S2./S1. S0 . D7
- + /S2. S1./S0 . D0
- + /S2. S1. S0 . D1
- + S2./S1./S0 . D2
- + S2./S1. S0 . D3
- + S2. S1./S0 . D4
- + S2. S1. S0 . D5 ;
-
- Y7 = /S2./S1./S0 . D7
- + /S2./S1. S0 . D0
- + /S2. S1./S0 . D1
- + /S2. S1. S0 . D2
- + S2./S1./S0 . D3
- + S2./S1. S0 . D4
- + S2. S1./S0 . D5
- + S2. S1. S0 . D6 ;
-
-