Aurix Tc3xx GETH - OverView(1)
OverView
下期预告 Aurix Tc3xx GETH - feature description
GETH 基础架构
以太网MAC 模块总览
DWC_ether_qos 描述
DWC代表DesignWare Cores,是一个由Synopsys公司提供的IP库.QoS代表Quality of Service.
QoS 可以确保网络带宽和延迟等级的最优化配置,从而实现更高效、可靠的数据传输。DWC_ether_qos可支持多种以太网标准,如 10/100/1000 Mbps 以太网、千兆位 ENET、千兆位 SGMII 等
在这里面DWC_ether_qos enable一个主机通多以太网遵循IEEE 802.3-2008进行接收和发送数据.
- MCU通过AHB总线与GETH的DMA arbiter连接。
- 每一个DMA channel 都有自己的控制寄存器 和 状态寄存器。来管理着数据的接收和发送,维护描述符以及中断处理。
DWC_ether_qos 接口
这里接口可以分为两类对内与对外
- AHB interface
○ MCU通过AHB进行数据读写访问
○ MCU通过AHB对DMA等状态寄存器,控制仅存去访问
- PHY interface
○ MII (Media Independent Interface)接口,这是一种较老的标准接口,可用于连接10/100 Mbps以太网。
○ RMII (Reduced Media Independent Interface)接口,这是一种较新的接口,可用于连接10/100 Mbps以太网。
○ RGMII (Reduced Gigabit Media Independent Interface)接口,这是一种用于连接1 Gbps以太网的接口。
○ SGMII (Serial Gigabit Media Independent Interface)接口,这是一种用于连接1 Gbps以太网的串行接口,可以提供更高的数据传输速率。
○ XGMII (10 Gigabit Media Independent Interface)接口,这是一种用于连接10 Gbps以太网的高速接口,可以提供更高的数据传输速率。
DWC_ether_qos 特性
MAC 特性
MAC 的一般收发特性
- 从应用层使用的角度分开了发送,接收,控制接口
- 可配置收发数据的大小端
- 支持10,100,1000M PTH 接口RGMII,RMII
- 半双工 与 全双工
- 应用层提供64bit 数据传输接口
- 统计RMON 或者 MIB 计数
- 在接收和发送数据包提供时间戳。
- 灵活控制PPS 以及 PPS 对外输出专用引脚
- 支持MDIO master接口 控制PHY, switch等外部设备
- 可编程清除中断状态
- 可编程控制CSR 地址空间
MAC 发送特性
- 应用层针对每一个发送包的32位状态
- 针对每一个发送包的CRC
- 可编程的数据包长度,支持标准长度和Jumbo长度达到9kb
- 可编程的IPG (40-96 bit times 间距8)
○ IFG(Interframe Gap),帧间距,以太网相邻两帧之间的时间断;以太网发送方式是一个帧一个帧发送的,帧与帧之间需要间隙,即帧间距IFG也可称其为IPG (Interpacket Gap)。IFG指的是一段时间,不是距离,单位通常用微秒(μs)或纳秒(ns)。如下图所示:
- IEEE 802.3x Flow Control automatic transmission of zero-quanta Pause packet when flow control input transitions from assertion to de-assertion (in full-duplex mode)
- Option to transmit packets with reduced preamble size in full-duplex mode
- Insert, replace, or delete queue/channel-based VLAN tags
MAC 接收特性
- 自动添加,剥离 CRC
- 可选择不激活自动检测CRC
- 112 或者 118 状态位
- 可编程看门狗超时限制
- 灵活的地址过滤模式
- VLAN
- IEEE 802.1Q VLAN tag detection and option to delete the VLAN tags in received packets
- Optional module to detect remote wake-up packets and AMD magic packets
- Optional forwarding of received Pause packets to the application (in full-duplex mode)
- Optional Receive module for Layer 3/Layer 4 checksum offload for received packets
- Optional stripping of up to two VLAN Tags and providing the tags in the status
传输层 MTL 特性
传输层包含了Tx FIFO 和 Rx FIFO。 其中Tx 4k, Rx 8k.
FIFO空间被多个queues共享。可以配置为每一个queue (最大4个tx, 4个 rx) 的大小为256bytes 的整数倍。
MTL TX 和 RX 的一般特性
- 32-bit的传输层空间
- 数据传输使用普通的FIFO机制
- 同步所有的使用 Rx Tx Application。
- 优化数据传输通过packets elimiters
- 两个 dule-port RAM-based 同步FIFO 控制器
- 可编程的burst长度。最大到 Rx 或者 Tx queue大小的一半
- Programmable threshold capability for each queue (default of 64 bytes)
- Optional Debug and slave mode operation on Queue 0 (default queue)
MTL TX 特性
- FIFO 大小可以设置为256bytes,512bytes,1kb,2kb,4kb
- 多个queue可以配置,最大到4个。注意最大的FIFO size 为 4k.
- 对于MAC层 使用存-发 或者临界值触发机制
- 半双工模式自动重发机制
- 对于帧延迟,冲突等条件下进行丢弃
- 低电压下关闭RAM chip-select
- 可选择插入checksum
- 可编程中断
- Statistics by generating pulses for packets dropped (because of underflow) in the Tx FIFO
- Optional statistics related to bandwidth consumption by each queue of up to 16 blocks over a 125 µ's period
- Option to support dropping of Tx Status to improve the Transmit throughput
MTL RX 特性
- FIFO 大小可以设置为256bytes,512bytes,1kb,2kb,4kb,8kb
- 多个queue可以配置,最大到4个.
- 可编程的Rx queue 临界值。在Threhold 模式下使用
- 选择过滤所有错误报文不向上发送。在store-and-follow模式下使用
- 统计生成脉冲当Rx FIFO 丢报文时候
- 自动生成Pause控制或者backpressure 信号到MAC层 base on Tx Queue fill level
- Arbitration among queues when multiple queues are present. The following arbitration schemes are supported:– Weighted Round Robin (WRR)– Weighted Strict priority (WSP)– Strict Priority (SP)
DMA 特性
这里面的DMA主要作用是把MTL层的数据 和 MCU系统内存进行搬运。MCU可以通过DMA 的控制寄存器来控制DMA 的操作。下面是DMA 的主要特性
- 32-bit 数据传输
- 对通道收发引擎。 最大4个发送,4个接收
- 独立的DMA 通道传输路径到MTL层的queue
- 优化数据包DMA传输
- Byte-Aligned
- 双向buffer 描述符
- Descriptor architecture to allow large blocks of data transfer with minimum CPU intervention (each descriptor can transfer up to 32 KB of data)
- 正常操作与传输错误综合状态上报
- 独立配变成burst 长度 为Tx Rx DMA
- 可编程的中断选择
- 每一帧报文收发完成中断控制 (这里指的是完成)
- Round-robin 或者是固定优先级 仲裁机制
- 开关
- 可编程的tx 描述符来提高通过率
- • Separate ports for host CSR access and host data interface
- Routing of received packets to the DMA channels based on the DA or VLAN Priority in multi-channel DMA configurations
- Option to split the packet header (Layer 3 and Layer 4) and payload in a different buffers
- Time-sensitive conditional packet transmission by comparing the Slot Time information provided in the descriptor (useful for AV applications)
文章转载自公众号:汽车与基础软件