summaryrefslogtreecommitdiff
path: root/ntoa.sv
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--ntoa.sv9
1 files changed, 5 insertions, 4 deletions
diff --git a/ntoa.sv b/ntoa.sv
index 2a5c1ef..f8e9f43 100644
--- a/ntoa.sv
+++ b/ntoa.sv
@@ -1,5 +1,6 @@
1module ntoa 1module ntoa
2 #( BITS = 8 2 #( BITS = 8
3 , BASE = 10
3 ) 4 )
4 ( input bit clk 5 ( input bit clk
5 , input bit reset 6 , input bit reset
@@ -19,7 +20,7 @@ bit [b2b.DIGITS-1:0][b2b.BASE_BITS-1:0] bcd_data;
19 20
20bin2bcd 21bin2bcd
21 #( .BITS(BITS) 22 #( .BITS(BITS)
22 , .BASE(10) 23 , .BASE(BASE)
23 ) b2b 24 ) b2b
24 ( .clk(clk) 25 ( .clk(clk)
25 , .reset(reset) 26 , .reset(reset)
@@ -50,10 +51,10 @@ always_ff @(posedge clk) begin
50 // verilator lint_off WIDTH 51 // verilator lint_off WIDTH
51 work = b2b.DIGITS; 52 work = b2b.DIGITS;
52 // verilator lint_on WIDTH 53 // verilator lint_on WIDTH
53 for (int i = 0; i < b2b.DIGITS - 1; i = i + 1) begin 54 for (int i = 0; i < b2b.DIGITS - 1; ++i) begin
54 if (bcd_b_data[b2b.DIGITS-1] != 0) break; 55 if (bcd_b_data[b2b.DIGITS-1] != 0) break;
55 bcd_b_data = { bcd_b_data[b2b.DIGITS-2:0], {b2b.BASE_BITS{1'b0}} }; 56 bcd_b_data = { bcd_b_data[b2b.DIGITS-2:0], {b2b.BASE_BITS{1'b0}} };
56 work = work - 1; 57 --work;
57 end 58 end
58 end 59 end
59 60
@@ -68,7 +69,7 @@ always_ff @(posedge clk) begin
68 a_data = "a" + bcd_b_data[b2b.DIGITS-1] - 10; 69 a_data = "a" + bcd_b_data[b2b.DIGITS-1] - 10;
69 // verilator lint_off WIDTH 70 // verilator lint_off WIDTH
70 bcd_b_data = { bcd_b_data[b2b.DIGITS-2:0], {b2b.BASE_BITS{1'b0}} }; 71 bcd_b_data = { bcd_b_data[b2b.DIGITS-2:0], {b2b.BASE_BITS{1'b0}} };
71 work = work - 1; 72 --work;
72 end else begin 73 end else begin
73 a_valid = 1; 74 a_valid = 1;
74 a_data = ","; 75 a_data = ",";