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


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