/* 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