summaryrefslogtreecommitdiffhomepage
path: root/src/mac_rgmii.v
diff options
context:
space:
mode:
Diffstat (limited to 'src/mac_rgmii.v')
-rw-r--r--src/mac_rgmii.v17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/mac_rgmii.v b/src/mac_rgmii.v
index aa96705..b6ae629 100644
--- a/src/mac_rgmii.v
+++ b/src/mac_rgmii.v
@@ -20,7 +20,7 @@
*
*/
-module mac_rgmii(
+module mac_rgmii #(parameter PHY_NUM=0) (
input rstn,
input phy_resetn, // The external PHY has its reset signal asserted
input rx_clk, // rx_clk
@@ -42,7 +42,7 @@ module mac_rgmii(
input mle_if_oe,
output reg mle_if_we,
output reg mle_if_empty,
- output reg [8:0] mle_if_d_o,
+ output [8:0] mle_if_d_o,
// Line State
input fixed_speed, // 0 = 100 MBit, 1 = GigE
@@ -195,6 +195,7 @@ module mac_rgmii(
// ML Engine
reg [3:0] mle_if_cnt;
+ reg [8:0] mle_if_d;
// Metrics
reg [15:0] rx_pkt_cnt;
@@ -252,18 +253,20 @@ module mac_rgmii(
end
- // mle_if_d_o:
+ // mle_if_d:
always @(posedge tx_clk, negedge rstn)
if(!rstn)
- mle_if_d_o <= 'd0;
+ mle_if_d <= 'd0;
else if (mle_if_enable) begin
if (mle_if_cnt > 4'd1)
- mle_if_d_o <= mle_if_d_o + 1'b1;
+ mle_if_d <= mle_if_d + 1'b1;
else if (mle_if_cnt == 4'd1)
- mle_if_d_o <= (mle_if_d_o + 1'b1) | 9'h100;
+ mle_if_d <= (mle_if_d + 1'b1) | 9'h100;
else
- mle_if_d_o <= 'd0;
+ mle_if_d <= 'd0;
end
+
+ assign mle_if_d_o = mle_if_d + PHY_NUM;

Highly Recommended Verilog Books