www.pudn.com > x86.rar > shift64Arith.v, change:2007-12-05,size:5739b


module shift64Arith(shiftOut, shiftIn, count); 
input [63:0] shiftIn; 
input [7:0] count; 
output [63:0] shiftOut; 
reg [63:0] shiftOut; 
 
always@(shiftIn or count) 
 begin 
  case(count) 
   8'd1: 
    begin 
     shiftOut = {shiftIn[63], shiftIn[63:1]}; 
    end 
 
   8'd2: 
    begin 
     shiftOut = {{2{shiftIn[63]}}, shiftIn[63:2]}; 
    end 
 
   8'd3: 
    begin 
     shiftOut = {{3{shiftIn[63]}}, shiftIn[63:3]}; 
    end 
 
   8'd4: 
    begin 
     shiftOut = {{4{shiftIn[63]}}, shiftIn[63:4]}; 
    end 
 
   8'd5: 
    begin 
     shiftOut = {{5{shiftIn[63]}}, shiftIn[63:5]}; 
    end 
 
   8'd6: 
    begin 
     shiftOut = {{6{shiftIn[63]}}, shiftIn[63:6]}; 
    end 
 
   8'd7: 
    begin 
     shiftOut = {{7{shiftIn[63]}}, shiftIn[63:7]}; 
    end 
 
   8'd8: 
    begin 
     shiftOut = {{8{shiftIn[63]}}, shiftIn[63:8]}; 
    end 
 
   8'd9: 
    begin 
     shiftOut = {{9{shiftIn[63]}}, shiftIn[63:9]}; 
    end 
 
   8'd10: 
    begin 
     shiftOut = {{10{shiftIn[63]}}, shiftIn[63:10]}; 
    end 
 
   8'd11: 
    begin 
     shiftOut = {{11{shiftIn[63]}}, shiftIn[63:11]}; 
    end 
 
   8'd12: 
    begin 
     shiftOut = {{12{shiftIn[63]}}, shiftIn[63:12]}; 
    end 
 
   8'd13: 
    begin 
     shiftOut = {{13{shiftIn[63]}}, shiftIn[63:13]}; 
    end 
 
   8'd14: 
    begin 
     shiftOut = {{14{shiftIn[63]}}, shiftIn[63:14]}; 
    end 
 
   8'd15: 
    begin 
     shiftOut = {{15{shiftIn[63]}}, shiftIn[63:15]}; 
    end 
 
   8'd16: 
    begin 
     shiftOut = {{16{shiftIn[63]}}, shiftIn[63:16]}; 
    end 
 
   8'd17: 
    begin 
     shiftOut = {{17{shiftIn[63]}}, shiftIn[63:17]}; 
    end 
 
   8'd18: 
    begin 
     shiftOut = {{18{shiftIn[63]}}, shiftIn[63:18]}; 
    end 
 
   8'd19: 
    begin 
     shiftOut = {{19{shiftIn[63]}}, shiftIn[63:19]}; 
    end 
 
   8'd20: 
    begin 
     shiftOut = {{20{shiftIn[63]}}, shiftIn[63:20]}; 
    end 
 
   8'd21: 
    begin 
     shiftOut = {{21{shiftIn[63]}}, shiftIn[63:21]}; 
    end 
 
   8'd22: 
    begin 
     shiftOut = {{22{shiftIn[63]}}, shiftIn[63:22]}; 
    end 
 
   8'd23: 
    begin 
     shiftOut = {{23{shiftIn[63]}}, shiftIn[63:23]}; 
    end 
 
   8'd24: 
    begin 
     shiftOut = {{24{shiftIn[63]}}, shiftIn[63:24]}; 
    end 
 
   8'd25: 
    begin 
     shiftOut = {{25{shiftIn[63]}}, shiftIn[63:25]}; 
    end 
 
   8'd26: 
    begin 
     shiftOut = {{26{shiftIn[63]}}, shiftIn[63:26]}; 
    end 
 
   8'd27: 
    begin 
     shiftOut = {{27{shiftIn[63]}}, shiftIn[63:27]}; 
    end 
 
   8'd28: 
    begin 
     shiftOut = {{28{shiftIn[63]}}, shiftIn[63:28]}; 
    end 
 
   8'd29: 
    begin 
     shiftOut = {{29{shiftIn[63]}}, shiftIn[63:29]}; 
    end 
 
   8'd30: 
    begin 
     shiftOut = {{30{shiftIn[63]}}, shiftIn[63:30]}; 
    end 
 
   8'd31: 
    begin 
     shiftOut = {{31{shiftIn[63]}}, shiftIn[63:31]}; 
    end 
 
   8'd32: 
    begin 
     shiftOut = {{32{shiftIn[63]}}, shiftIn[63:32]}; 
    end 
 
   8'd33: 
    begin 
     shiftOut = {{33{shiftIn[63]}}, shiftIn[63:33]}; 
    end 
 
   8'd34: 
    begin 
     shiftOut = {{34{shiftIn[63]}}, shiftIn[63:34]}; 
    end 
 
   8'd35: 
    begin 
     shiftOut = {{35{shiftIn[63]}}, shiftIn[63:35]}; 
    end 
 
   8'd36: 
    begin 
     shiftOut = {{36{shiftIn[63]}}, shiftIn[63:36]}; 
    end 
 
   8'd37: 
    begin 
     shiftOut = {{37{shiftIn[63]}}, shiftIn[63:37]}; 
    end 
 
   8'd38: 
    begin 
     shiftOut = {{38{shiftIn[63]}}, shiftIn[63:38]}; 
    end 
 
   8'd39: 
    begin 
     shiftOut = {{39{shiftIn[63]}}, shiftIn[63:39]}; 
    end 
 
   8'd40: 
    begin 
     shiftOut = {{40{shiftIn[63]}}, shiftIn[63:40]}; 
    end 
 
   8'd41: 
    begin 
     shiftOut = {{41{shiftIn[63]}}, shiftIn[63:41]}; 
    end 
 
   8'd42: 
    begin 
     shiftOut = {{42{shiftIn[63]}}, shiftIn[63:42]}; 
    end 
 
   8'd43: 
    begin 
     shiftOut = {{43{shiftIn[63]}}, shiftIn[63:43]}; 
    end 
 
   8'd44: 
    begin 
     shiftOut = {{44{shiftIn[63]}}, shiftIn[63:44]}; 
    end 
 
   8'd45: 
    begin 
     shiftOut = {{45{shiftIn[63]}}, shiftIn[63:45]}; 
    end 
 
   8'd46: 
    begin 
     shiftOut = {{46{shiftIn[63]}}, shiftIn[63:46]}; 
    end 
 
   8'd47: 
    begin 
     shiftOut = {{47{shiftIn[63]}}, shiftIn[63:47]}; 
    end 
 
   8'd48: 
    begin 
     shiftOut = {{48{shiftIn[63]}}, shiftIn[63:48]}; 
    end 
 
   8'd49: 
    begin 
     shiftOut = {{49{shiftIn[63]}}, shiftIn[63:49]}; 
    end 
 
   8'd50: 
    begin 
     shiftOut = {{50{shiftIn[63]}}, shiftIn[63:50]}; 
    end 
   8'd51: 
    begin 
     shiftOut = {{51{shiftIn[63]}}, shiftIn[63:51]}; 
    end 
 
   8'd52: 
    begin 
     shiftOut = {{52{shiftIn[63]}}, shiftIn[63:52]}; 
    end 
 
   8'd53: 
    begin 
     shiftOut = {{53{shiftIn[63]}}, shiftIn[63:53]}; 
    end 
 
   8'd54: 
    begin 
     shiftOut = {{54{shiftIn[63]}}, shiftIn[63:54]}; 
    end 
 
   8'd55: 
    begin 
     shiftOut = {{55{shiftIn[63]}}, shiftIn[63:55]}; 
    end 
 
   8'd56: 
    begin 
     shiftOut = {{56{shiftIn[63]}}, shiftIn[63:56]}; 
    end 
 
   8'd57: 
    begin 
     shiftOut = {{57{shiftIn[63]}}, shiftIn[63:57]}; 
    end 
 
   8'd58: 
    begin 
     shiftOut = {{58{shiftIn[63]}}, shiftIn[63:58]}; 
    end 
 
   8'd59: 
    begin 
     shiftOut = {{59{shiftIn[63]}}, shiftIn[63:59]}; 
    end 
 
   8'd60: 
    begin 
     shiftOut = {{60{shiftIn[63]}}, shiftIn[63:60]}; 
    end 
 
   8'd61: 
    begin 
     shiftOut = {{61{shiftIn[63]}}, shiftIn[63:61]}; 
    end 
 
   8'd62: 
    begin 
     shiftOut = {{62{shiftIn[63]}}, shiftIn[63:62]}; 
    end 
 
   8'd63: 
    begin 
     shiftOut = {{63{shiftIn[63]}}, shiftIn[63]}; 
    end 
 
   
 
   default: 
     begin 
       shiftOut = shiftIn; 
     end 
  endcase 
 
 end 
endmodule