fpga: lib: Add clock domain comments to interfaces
Original-commit: c64258e09b221d0bfeb55e01085a20e37c5b62ba
This commit is contained in:
committed by
Aaron Rossetto
parent
b7bd308e9c
commit
ab09eb9b09
@@ -45,18 +45,18 @@ module chdr_xport_adapter #(
|
||||
int NODE_INST = 0,
|
||||
bit ALLOW_DISC = 1
|
||||
)(
|
||||
// Device info
|
||||
// Device info (domain: eth_rx.clk)
|
||||
input logic [15:0] device_id,
|
||||
// Device addresses
|
||||
// Device addresses (domain: eth_rx.clk)
|
||||
input logic [47:0] my_mac,
|
||||
input logic [31:0] my_ip,
|
||||
input logic [15:0] my_udp_chdr_port,
|
||||
|
||||
// Ethernet
|
||||
// Ethernet (domain: eth_rx.clk)
|
||||
AxiStreamIf.slave eth_rx, // tUser={*not used*}
|
||||
AxiStreamIf.master eth_tx, // tUser={1'b0,trailing bytes}
|
||||
|
||||
// CHDR
|
||||
// CHDR (domain: eth_rx.clk)
|
||||
AxiStreamIf.slave v2e, // tUser={*not used*}
|
||||
AxiStreamIf.master e2v // tUser={*not used*}
|
||||
);
|
||||
|
||||
@@ -24,6 +24,8 @@ module eth_ipv4_add_udp #(
|
||||
logic [15:0] FLAG_FRAG = { 3'b010 /* don't fragment */, 13'h0 },
|
||||
logic [15:0] TTL_PROT = { 8'h10 /* TTL */, 8'h11 /* UDP */ }
|
||||
)(
|
||||
// Clock domain: i.clk (o_.clk is unused)
|
||||
|
||||
// Device addresses
|
||||
input logic [47:0] mac_src,
|
||||
input logic [31:0] ip_src,
|
||||
|
||||
@@ -25,7 +25,8 @@
|
||||
// - PREAMBLE_BYTES: Number of bytes of Preamble expected
|
||||
// - ADD_SOF: Add a SOF indication into the tuser field of the e2c path.
|
||||
// If false use TKEEP instead of USER.
|
||||
// - SYNC: Set if MAC is not the same as bus_clk
|
||||
// - SYNC: Set if the CPU clock domain (c2e, e2c) is not the same as the
|
||||
// Ethernet clock domain (eth_rx, eth_tx).
|
||||
// - ENET_W: Width of the link to the Ethernet MAC
|
||||
// - CPU_W: Width of the CPU interface
|
||||
// - CHDR_W: Width of the CHDR interface
|
||||
@@ -71,15 +72,19 @@ module eth_ipv4_chdr_adapter #(
|
||||
output logic chdr_dropped,
|
||||
output logic cpu_dropped,
|
||||
|
||||
// Ethernet MAC
|
||||
// Ethernet MAC (domain: eth_rx.clk)
|
||||
output logic eth_pause_req,
|
||||
AxiStreamIf.master eth_tx, // tUser = {1'b0,trailing bytes};
|
||||
AxiStreamIf.slave eth_rx, // tUser = {error,trailing bytes};
|
||||
// CHDR router interface
|
||||
|
||||
// CHDR router interface (eth_rx.clk)
|
||||
AxiStreamIf.master e2v, // tUser = {*not used*};
|
||||
AxiStreamIf.slave v2e, // tUser = {*not used*};
|
||||
|
||||
// CPU DMA
|
||||
// (domain: e2c.clk if SYNC=0, else eth_rx.clk)
|
||||
AxiStreamIf.master e2c, // tUser = {sof,trailing bytes};
|
||||
// (domain: c2e.clk if SYNC=0, else eth_rx.clk)
|
||||
AxiStreamIf.slave c2e // tUser = {1'b0,trailing bytes};
|
||||
|
||||
);
|
||||
|
||||
@@ -47,7 +47,8 @@ module eth_ipv4_chdr_dispatch #(
|
||||
bit DROP_MIN_PACKET = 0,
|
||||
int ENET_W = 64
|
||||
)(
|
||||
|
||||
// Clock domain: eth_rx.clk (other interface clocks are unused)
|
||||
|
||||
// AXI-Stream interfaces
|
||||
output logic eth_pause_req,
|
||||
AxiStreamIf.slave eth_rx, // tUser={error,trailing bytes};
|
||||
|
||||
@@ -19,7 +19,8 @@
|
||||
// - DROP_MIN_PACKET: Drop packets smaller than 64 bytes?
|
||||
// - PREAMBLE_BYTES: Number of bytes of Preamble expected
|
||||
// - ADD_SOF: Add a SOF indication into the tuser field of e2c
|
||||
// - SYNC: Set if MAC is not the same as bus_clk
|
||||
// - SYNC: Set if the CPU clock domain (c2e, e2c) is not the same as the
|
||||
// Ethernet clock domain (eth_rx, eth_tx).
|
||||
// - ENET_W: Width of the link to the Ethernet MAC
|
||||
// - CPU_W: Width of the CPU interface
|
||||
// - CHDR_W: Width of the CHDR interface
|
||||
@@ -63,15 +64,19 @@ module eth_ipv4_interface #(
|
||||
output logic [31:0] my_ip,
|
||||
output logic [15:0] my_udp_chdr_port,
|
||||
|
||||
// Ethernet MAC
|
||||
// Ethernet MAC (domain: eth_rx.clk)
|
||||
output logic eth_pause_req,
|
||||
AxiStreamIf.master eth_tx, // tUser = {1'b0,trailing bytes};
|
||||
AxiStreamIf.slave eth_rx, // tUser = {error,trailing bytes};
|
||||
// CHDR router interface
|
||||
|
||||
// CHDR router interface (domain: eth_rx.clk)
|
||||
AxiStreamIf.master e2v, // tUser = {*not used*};
|
||||
AxiStreamIf.slave v2e, // tUser = {*not used*};
|
||||
|
||||
// CPU DMA
|
||||
// (domain: e2c.clk if SYNC=0, else eth_rx.clk)
|
||||
AxiStreamIf.master e2c, // tUser = {sof,trailing bytes};
|
||||
// (domain: c2e.clk if SYNC=0, else eth_rx.clk)
|
||||
AxiStreamIf.slave c2e // tUser = {1'b0,trailing bytes};
|
||||
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user