AXI4-Stream 控制端口和状态端口 - 4.1 简体中文

10G/25G High Speed Ethernet Subsystem 产品指南 (PG210)

Document ID
PG210
Release Date
2023-05-10
Version
4.1 简体中文
表 1. AXI4‑Stream 接口 - TX 路径控制信号和状态信号
名称 I/O 描述 时钟域
ctl_tx_custom_preamble_enable 输入 此信号断言有效时,支持使用 tx_preamblein 作为自定义前导码,而不是插入标准前导码。 tx_clk_out
tx_preamblein [55:0] 输入

此信号为定制前导码,它应为独立输入端口,而不是与数据保持一致。

包起始期间,此信号应有效。

tx_clk_out
ctl_tx_ipg_value[3:0] 输入 此信号为可选。ctl_tx_ipg_value 用于定义在 AXI4‑Stream 包之间插入的目标平均最小包间间隔(IPG,以字节为单位)。有效值范围为 8 到 12。ctl_tx_ipg_value 可编程为范围介于 0 到 7 之间的值,但在此情况下,它解释为 8(最小有效值)。 tx_clk_out
ctl_tx_enable 输入 TX 使能(启用)。此信号采样为 1 时用于启用数据发射。当此信号采样为 0 时,核仅发射空闲信号。仅当数据发射到的接收器(即其他器件中的接收器)完全同步并且已准备好接收数据(即,其他器件当前未发送远端故障状况)后,此输入才应设置为 1。否则,可能发生数据丢失。如果发射数据包时此信号设置为 0,那么当前数据包发射完成后,核将停止发射任何其他数据包。 tx_clk_out
ctl_tx_send_rfi 输入 发射远端故障指示 (RFI) 代码字。如果此输入采样为 1,那么 TX 路径仅发射远端故障 (Remote Fault) 代码字。此输入应设置为 1,直至 RX 路径已完全同步并且已准备好接受来自链路伙伴的数据为止。 tx_clk_out
ctl_tx_send_lfi 输入 发射本地故障指示 (LFI) 代码字。优先于远端故障指示 (RFI)。 tx_clk_out
ctl_tx_send_idle 输入 发射空闲代码字。如果此输入采样为 1,那么 TX 路径仅发射空闲 (Idle) 代码字。当伙伴器件正在发送 RFI 代码字时,此输入应设置为 1。 tx_clk_out
ctl_tx_fcs_ins_enable 输入 启用由 TX 核执行 FCS 插入。如果该位设为 0,该核不会将 FCS 添加到包中。如果该位设为 1,那么该核会计算 FCS 并将 FCS 添加到包中。在不同数据包之间不得动态更改此输入。 tx_clk_out
ctl_tx_ignore_fcs 输入 启用由 TX 核在 AXI4‑Stream 接口上执行 FCS 纠错。仅当 ctl_tx_fcs_ins_enable 为低电平时,此输入才有效。如果此输入为低电平,并且发射的数据包中含有无效 FCS,则不会将其作为有效包丢弃。如果此输入为高电平,则含无效 FCS 的包将被作为有效包丢弃。

在 stat_tx_bad_fcs 和 stomped_fcs 信号上会标记此错误,并且此数据包将作为已接收的包进行发射。

注释: 报告的统计数据中显示不含 FCS 错误。
tx_clk_out
ctl_tx_parity_err_response 输入 TX 核发出奇偶校验错误响应。如果该位设为 0,那么检测到任何奇偶校验错误时,该核都不会执行任何操作。如果该位设为 1,那么该核会给传出的 FCS 添加 stomp 标记(即按位反转)并断言 stat_tx_bad_fcs 有效。当检测到奇偶校验错误时,stat_tx_bad_parity 输出即断言有效,与 ctl_tx_parity_err_response 配置无关。 tx_clk_out
表 2. AXI4‑Stream 接口 - RX 路径控制信号和状态信号
名称 I/O 描述 时钟域
rx_preambleout [55:0] 输出 这是前导码,原先在前版本中与数据保持一致,当前版本中则改为独立输出。 rx_core_clk
ctl_rx_enable 输入 RX 使能(启用)。在正常操作期间,此输入必须设置为 1。当此输入设置为 0 时,RX 完成接收当前包(如果有)之后,就会停止接收包并阻止 PCS 继续对传入数据进行解码。在此模式下不报告任何统计数据,并且 AXI4‑Stream 接口处于空闲状态。 rx_clk_out
ctl_rx_check_preamble 输入 此输入断言有效时,会使 MAC 检查接收到的帧的前导码。 rx_clk_out
ctl_rx_check_sfd 输入 此输入断言有效时,会使 MAC 检查接收到的帧的帧起始定界符。 rx_clk_out
ctl_rx_force_resync 输入 RX 强制再同步输入。此信号用于强制 RX 路径进行复位和再同步。值为 1 即强制执行复位操作。值为 0 允许正常操作。请注意,此输入通常应为低电平 (Low) 并且应只能对此输入进行脉冲(单周期最小脉冲)。 rx_clk_out
ctl_rx_delete_fcs 输入 启用由 RX 核执行 FCS 移除。如果此位设置为 0,则该核不会移除传入包的 FCS。如果此位设置为 1,则该核将会删除接收包的 FCS。请注意,针对长度小于等于 8 字节的包,不删除 FCS。仅当对应的复位输入断言有效时,才应更改此输入。 rx_clk_out
ctl_rx_ignore_fcs 输入 启用由 RX 核在 AXI4‑Stream 接口上执行 FCS 纠错。如果此位设置为 0,对于接收到的含 FCS 错误的包,将随在上一次传输期间(rx_axis_tuser 和 rx_axis_tlast 均采样为 1)断言有效的 rx_axis_tuser 管脚一起发送。如果此位设置为 1,则该核不会在 AXI4‑Stream 接口处标记 FCS 错误。
注释: 报告的统计数据中显示此数据包有效。但 stat_rx_bad_fcs 信号则会报告错误。
rx_clk_out
ctl_rx_max_packet_len[14:0] 输入 长度超过该值的任何包都将被视为大小过大。如果包的大小大于该值,则该包将被截位至该值,并且 rx_axis_tuser 信号随 rx_axis_tlast 信号一起断言有效。小于 4 字节的包将被丢弃。

ctl_rx_max_packet_len[14] 保留并且必须设置为 0。

rx_clk_out
ctl_rx_min_packet_len[7:0] 输入

长度小于该值的任何包都将被视为大小过小。如果包的大小小于该值,则在 rx_axis_tlast 断言有效的周期内,rx_axis_tuser 信号将断言有效。小于 4 字节的包将被丢弃。

ctl_rx_min_packet_len[7:0] 值应 >=64B。

rx_clk_out
stat_rx_framing_err[1:0] 输出 RX 同步报头位成帧错误属于总线,用于指示接收到的同步报头错误数量。仅当 stat_rx_framing_err_valid 设置为 1 时,该总线的值才有效。这些值可随时更新,且旨在作为递增值以供同步报头错误计数器使用。 rx_clk_out
stat_rx_framing_err_valid 输出 stat_rx_framing_err 的有效性指示符。当此信号采样为 1 时,stat_rx_framing_err 上的值有效。 rx_clk_out
stat_rx_local_fault 输出 当 stat_rx_internal_local_fault 或 stat_rx_received_local_fault 断言有效时,此输出为高电平 (High)。此输出对电平敏感。 rx_clk_out
stat_rx_status 输出 此信号表示链路的当前状态。 rx_clk_out
stat_rx_block_lock 输出 块锁定状态。值为 1 表示已根据第 49.2.14 条和 MDIO 寄存器 3.32.0 的定义达成块锁定。此输出对电平敏感。 rx_clk_out
stat_rx_remote_fault 输出 远端故障指示状态。如果该位采样为 1,则表示检测到远端故障状况。如果该位采样为 0,则表示不存在远端故障状况。此输出对电平敏感。 rx_clk_out
stat_rx_bad_fcs[1:0] 输出 无效 FCS 指示符。该总线上的值用于指示在单一周期内,接收到的包带有无效 FCS,但不带有含 stomp 标记的 FCS。含 stomp 标记的 FCS 定义为期望的有效 FCS 的按位反转。此输出将脉冲 1 个时钟周期,以指示错误状况。请注意,脉冲可在不间断的连续周期内发生。 rx_clk_out
stat_rx_stomped_fcs[1:0] 输出 含 stomp 标记的 FCS 指示符。该总线上的值用于指示接收到的包带有含 stomp 标记的 FCS。含 stomp 标记的 FCS 定义为期望的有效 FCS 的按位反转。此输出将脉冲 1 个时钟周期,以指示含 stomp 标记。请注意,脉冲可在连续周期内发生。 rx_clk_out
stat_rx_truncated 输出 包截位指示符。值为 1 表示当前进行中的包因长度超过 ctl_rx_max_packet_len[14:0] 而被截位。此输出将脉冲 1 个时钟周期,以指示截位状况。请注意,脉冲可在连续周期内发生。 rx_clk_out
stat_rx_internal_local_fault 输出 当由于以下任一操作导致生成内部本地故障时,此信号转为高电平 (High):测试模式生成或误码率过高。请注意,只要故障状况仍然存在,此信号就会保持高电平 (High)。 rx_clk_out
stat_rx_received_local_fault 输出 当接收到来自链路伙伴的本地故障字数足以触发 IEEE 故障状态机所指定的故障条件时,此信号转为高电平 (High)。只要故障状况仍然存在,此信号就会保持高电平 (High)。 rx_clk_out
stat_rx_hi_ber 输出 误码率 (BER) 过高指示符。设置为 1 时,BER 过高(根据 IEEE 802.3 标准的定义)。对应于第 49.2.14 条中所定义的 MDIO 寄存器位 3.32.1。此输出对电平敏感。 rx_clk_out
ctl_rx_custom_preamble_enable 输入 当此信号断言有效时,会导致 AXI4‑Stream 上存在的数据包边带在线路上显示为前导码。 rx_clk_out