diff --git a/rtl/pmd_io.v b/rtl/pmd_io.v index 89ae616..daef1f7 100644 --- a/rtl/pmd_io.v +++ b/rtl/pmd_io.v @@ -19,14 +19,14 @@ module pmd_io ( input rx_clk_125, input signal_detect, - input rx, - output reg tx, + input indicate_data, + output reg request_data, /* PMD */ output signal_status, - input pmd_data_tx, - output reg [1:0] pmd_data_rx, - output reg [1:0] pmd_data_rx_valid + input tx_data, + output reg [1:0] rx_data, + output reg [1:0] rx_data_valid ); reg [1:0] rx_p, rx_n; @@ -45,8 +45,8 @@ module pmd_io ( SB_IO #( .PIN_TYPE(`PIN_OUTPUT_NEVER | `PIN_INPUT_DDR), .IO_STANDARD("SB_LVDS_INPUT") - ) data_rx_pin ( - .PACKAGE_PIN(rx), + ) rx_data_pin ( + .PACKAGE_PIN(indicate_data), .INPUT_CLK(rx_clk_250), .D_IN_0(rx_p[0]), .D_IN_1(rx_n[0]) @@ -56,10 +56,10 @@ module pmd_io ( sd_delay[0] <= signal_detect; always @(posedge rx_clk_250) - rx_p[0] <= rx; + rx_p[0] <= indicate_data; always @(negedge rx_clk_250) - rx_n[0] <= rx; + rx_n[0] <= indicate_data; `endif /* @@ -116,7 +116,7 @@ module pmd_io ( initial state = A; reg valid, valid_next; initial valid = 0; - reg [1:0] pmd_data_rx_next, pmd_data_rx_valid_next; + reg [1:0] rx_data_next, rx_data_valid_next; reg [3:0] rx_r, rx_f; always @(*) begin @@ -152,51 +152,51 @@ module pmd_io ( valid_next = 0; end - pmd_data_rx_next[0] = rx_d[2]; - pmd_data_rx_valid_next = 1; + rx_data_next[0] = rx_d[2]; + rx_data_valid_next = 1; case (state_next) A: begin - pmd_data_rx_next[1] = rx_a[2]; + rx_data_next[1] = rx_a[2]; if (state == D) - pmd_data_rx_valid_next = 0; + rx_data_valid_next = 0; end B: begin - pmd_data_rx_next[1] = rx_b[2]; + rx_data_next[1] = rx_b[2]; end C: begin - pmd_data_rx_next[1] = rx_c[2]; + rx_data_next[1] = rx_c[2]; end D: begin - pmd_data_rx_next[1] = rx_d[2]; + rx_data_next[1] = rx_d[2]; if (state == A) begin - pmd_data_rx_next[1] = rx_a[2]; - pmd_data_rx_valid_next = 2; + rx_data_next[1] = rx_a[2]; + rx_data_valid_next = 2; end end endcase if (!valid_next) - pmd_data_rx_valid_next = 0; + rx_data_valid_next = 0; end always @(posedge rx_clk_125) begin state <= state_next; valid <= valid_next; - pmd_data_rx <= pmd_data_rx_next; - pmd_data_rx_valid <= pmd_data_rx_valid_next; + rx_data <= rx_data_next; + rx_data_valid <= rx_data_valid_next; end `ifdef SYNTHESIS SB_IO #( .PIN_TYPE(`PIN_OUTPUT_ALWAYS | `PIN_OUTPUT_REGISTERED), - ) data_txp_pin ( - .PACKAGE_PIN(tx), + ) tx_datap_pin ( + .PACKAGE_PIN(request_data), .OUTPUT_CLK(rx_clk_125), - .D_OUT_0(pmd_data_tx) + .D_OUT_0(tx_data) ); `else always @(posedge tx_clk) - tx <= pmd_data_tx; + request_data <= tx_data; `endif `ifndef SYNTHESIS diff --git a/tb/pmd_io.py b/tb/pmd_io.py index d2eee2b..2789aa6 100644 --- a/tb/pmd_io.py +++ b/tb/pmd_io.py @@ -41,7 +41,7 @@ async def test_rx(pmd, delays): await Timer(random.randrange(1, 8000), units='ps') pmd.signal_detect.value = 1 for i, delay in zip(ins, delays(len(ins))): - pmd.rx.value = i + pmd.indicate_data.value = i try: pmd.delay.value = delay except AttributeError: @@ -55,14 +55,14 @@ async def test_rx(pmd, delays): outs = [] while pmd.signal_status.value: await RisingEdge(pmd.rx_clk_125) - valid = pmd.pmd_data_rx_valid.value + valid = pmd.rx_data_valid.value if valid == 0: pass elif valid == 1: - outs.append(pmd.pmd_data_rx[1].value) + outs.append(pmd.rx_data[1].value) else: - outs.append(pmd.pmd_data_rx[1].value) - outs.append(pmd.pmd_data_rx[0].value) + outs.append(pmd.rx_data[1].value) + outs.append(pmd.rx_data[0].value) best_corr = -1 best_off = None