mac_pause_ctrl_rx

Diagram

MCF_PARAMS_SIZE PFC_ENABLE wire clk wire rst wire mcf_valid wire [47:0] mcf_eth_dst wire [47:0] mcf_eth_src wire [15:0] mcf_eth_type wire [15:0] mcf_opcode wire [MCF_PARAMS_SIZE*8-1:0] mcf_params wire rx_lfc_en wire rx_lfc_ack wire [7:0] rx_pfc_en wire [7:0] rx_pfc_ack wire [15:0] cfg_rx_lfc_opcode wire cfg_rx_lfc_en wire [15:0] cfg_rx_pfc_opcode wire cfg_rx_pfc_en wire [9:0] cfg_quanta_step wire cfg_quanta_clk_en wire rx_lfc_req wire [7:0] rx_pfc_req wire stat_rx_lfc_pkt wire stat_rx_lfc_xon wire stat_rx_lfc_xoff wire stat_rx_lfc_paused wire stat_rx_pfc_pkt wire [7:0] stat_rx_pfc_xon wire [7:0] stat_rx_pfc_xoff wire [7:0] stat_rx_pfc_paused

Description

Implementa la recepción y gestión de marcos de control MAC, incluyendo tanto el flujo de control a nivel de enlace (LFC), como el flujo de control de prioridad (PFC).

Generics

Generic name Type Value Description
MCF_PARAMS_SIZE 18 Tamaño de los parámetros del marco de control MAC
PFC_ENABLE 1 Habilitar PFC (Control de Flujo de Prioridad)

Ports

Port name Direction Type Description
clk input wire Señal de clock
rst input wire Señal de reset
mcf_valid input wire Validez del marco de control MAC
mcf_eth_dst input wire [47:0] Destino Ethernet del marco de control MAC
mcf_eth_src input wire [47:0] Origen Ethernet del marco de control MAC
mcf_eth_type input wire [15:0] Tipo Ethernet del marco de control MAC
mcf_opcode input wire [15:0] Código de operación del marco de control MAC
mcf_params input wire [MCF_PARAMS_SIZE*8-1:0] Parámetros del marco de control MAC
rx_lfc_en input wire Habilitar LFC (Control de Flujo a Nivel de Enlace)
rx_lfc_req output wire Solicitud de LFC (Control de Flujo a Nivel de Enlace)
rx_lfc_ack input wire Reconocimiento de LFC (Control de Flujo a Nivel de Enlace)
rx_pfc_en input wire [7:0] Habilitar PFC (Control de Flujo de Prioridad)
rx_pfc_req output wire [7:0] Solicitud de PFC (Control de Flujo de Prioridad)
rx_pfc_ack input wire [7:0] Reconocimiento de PFC (Control de Flujo de Prioridad)
cfg_rx_lfc_opcode input wire [15:0] Código de operación de LFC configurado
cfg_rx_lfc_en input wire Habilitar LFC configurado
cfg_rx_pfc_opcode input wire [15:0] Código de operación de PFC configurado
cfg_rx_pfc_en input wire Habilitar PFC configurado
cfg_quanta_step input wire [9:0] Paso de cuantum configurado
cfg_quanta_clk_en input wire Habilitar reloj de cuantum configurado
stat_rx_lfc_pkt output wire Paquete recibido de LFC
stat_rx_lfc_xon output wire XON recibido de LFC
stat_rx_lfc_xoff output wire XOFF recibido de LFC
stat_rx_lfc_paused output wire Estado pausado de LFC
stat_rx_pfc_pkt output wire Paquete recibido de PFC
stat_rx_pfc_xon output wire [7:0] XON recibido de PFC
stat_rx_pfc_xoff output wire [7:0] XOFF recibido de PFC
stat_rx_pfc_paused output wire [7:0] Estado pausado de PFC

Signals

Name Type Description
lfc_req_reg = 1'b0 reg Registro para solicitud de LFC (Control de Flujo a Nivel de Enlace)
lfc_req_next reg Registro para solicitud de LFC (Control de Flujo a Nivel de Enlace)
pfc_req_reg = 8'd0 reg [7:0] Registro para solicitud de PFC (Control de Flujo de Prioridad)
pfc_req_next reg [7:0] Registro para solicitud de PFC (Control de Flujo de Prioridad)
lfc_quanta_reg = 0 reg [16+QFB-1:0] Registro para cuantum de LFC
lfc_quanta_next reg [16+QFB-1:0] Registro para cuantum de LFC
pfc_quanta_reg[0:7] reg [16+QFB-1:0] Registros para cuantum de PFC para cada cola
pfc_quanta_next[0:7] reg [16+QFB-1:0] Registros para cuantum de PFC para cada cola
stat_rx_lfc_pkt_reg = 1'b0 reg Registro para indicar paquete recibido de LFC
stat_rx_lfc_pkt_next reg Registro para indicar paquete recibido de LFC
stat_rx_lfc_xon_reg = 1'b0 reg Registro para indicar XON recibido de LFC
stat_rx_lfc_xon_next reg Registro para indicar XON recibido de LFC
stat_rx_lfc_xoff_reg = 1'b0 reg Registro para indicar XOFF recibido de LFC
stat_rx_lfc_xoff_next reg Registro para indicar XOFF recibido de LFC
stat_rx_pfc_pkt_reg = 1'b0 reg Registro para indicar paquete recibido de PFC
stat_rx_pfc_pkt_next reg Registro para indicar paquete recibido de PFC
stat_rx_pfc_xon_reg = 8'd0 reg [7:0] Registro para indicar XON recibido de PFC
stat_rx_pfc_xon_next reg [7:0] Registro para indicar XON recibido de PFC
stat_rx_pfc_xoff_reg = 8'd0 reg [7:0] Registro para indicar XOFF recibido de PFC
stat_rx_pfc_xoff_next reg [7:0] Registro para indicar XOFF recibido de PFC
k integer

Constants

Name Type Value Description
QFB 8

Processes