I have a function that assigns distance based off an ascii value. module assign_distance(clk, command_ready, distance, homesw, d, d_hex); input clk; input command_ready; input [7:0]distance; input homesw; output [7:0]d; output [6:0]d_hex; reg [7:0]d; reg [6:0]d_hex; initial begin d=8'b00000000; d_hex=7'b1000000; end always @(posedge clk) begin if (command_ready==1) begin if ((distance==8'b00110000)|(distance==0)) begin // ASCII for "0" d=8'b00000000; d_hex=7'b1000000; // 7-segment display "0" end else if (distance==8'b00110001) begin // ASCII for "1" d=8'b00000001; d_hex=7'b1111001; // 7-segment display "1" end else if (distance==8'b00110010) begin // ASCII for "2" d=8'b00000010; d_hex=7'b0100100; // 7-segment display "2" end else if (distance==8'b00110011) begin // ASCII for "3" d=8'b00000011; d_hex=7'b0110000; // 7-segment display "3" end else if (distance==8'b00110100) begin // ASCII for "4" d=8'b00000100; d_hex=7'b0011001; // 7-segment display "4" end else if (distance==8'b00110101) begin // ASCII for "5" d=8'b00000101; d_hex=7'b0010010; // 7-segment display "5" end else if (distance==8'b00110110) begin // ASCII for "6" d=8'b00000110; d_hex=7'b0000010; // 7-segment display "6" end else if (distance==8'b00110111) begin // ASCII for "7" d=8'b00000111; d_hex=7'b1011000; // 7-segment display "7" end else if (distance==8'b00111000) begin // ASCII for "8" d=8'b00001000; d_hex=7'b0000000; // 7-segment display "8" end else if (distance==8'b00111001) begin // ASCII for "9" d=8'b00001001; d_hex=7'b0010000; // 7-segment display "9" end else begin if (homesw) begin d=8'b00000000; d_hex=7'b1000000; end else begin d=8'b00101000; end end end end endmodule I am attempting to find a way for this to accept float/double values (2.2) and return the corresponding value. Does anyone know of a quick way to do this?
At least for fixed point there is a library from IEEE named fixed_pkg. Until now I did not hear of something similar for floating point. Although I must say, that I didn't look for it because fixed point is enough for me until now. I just saw that you dont write in VHDL, i asume it is verilog - I dont know if this libs work for verilog as well - sorry.
Please log in before posting. Registration is free and takes only a minute.
Existing account
Do you have a Google/GoogleMail account? No registration required!
Log in with Google account
Log in with Google account
No account? Register here.