/* this module takes a 16 hex digits and converts them to the ascii equivalent for the LCD 16 hex = 64 bits 1 hex = 8bit ascii 16 hex = 128 bit total (ascii) */ module hex_to_ascii(in,out); input wire [63:0] in; output wire [127:0] out; wire [7:0] lut[15:0]; assign lut[0]=8'h30; // ascii 0 assign lut[1]=8'h31; // ascii 1 assign lut[2]=8'h32; // ascii 2 assign lut[3]=8'h33; // ascii 3 assign lut[4]=8'h34; // ascii 4 assign lut[5]=8'h35; // ascii 5 assign lut[6]=8'h36; // ascii 6 assign lut[7]=8'h37; // ascii 7 assign lut[8]=8'h38; // ascii 8 assign lut[9]=8'h39; // ascii 9 assign lut[10]=8'h41; // ascii A assign lut[11]=8'h42; // ascii B assign lut[12]=8'h43; // ascii C assign lut[13]=8'h44; // ascii D assign lut[14]=8'h45; // ascii E assign lut[15]=8'h46; // ascii F assign out = {lut[in[63:60]],lut[in[59:56]],lut[in[55:52]],lut[in[51:48]], lut[in[47:44]],lut[in[43:40]],lut[in[39:36]],lut[in[35:32]], lut[in[31:28]],lut[in[27:24]],lut[in[23:20]],lut[in[19:16]], lut[in[15:12]],lut[in[11:8]],lut[in[7:4]],lut[in[3:0]]}; endmodule // hex_to_ascii