0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

瑞萨RZT2M/N2L ETHSW Pattern Matcher模块功能说明和举例

瑞萨嵌入式小百科 来源:瑞萨MCU小百科 2025-06-03 14:54 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在实际应用中,工业网络设备可能会面对复杂的网络数据环境,比如复杂物理拓扑结构(网络中大量使用路由器/交换机,并且可能有外部设备接入),可能导致网络中出现大量的IP广播/多播,非目标IP包,这些包大量出现,就有可能把真正携带有效通信数据的包“淹没”掉。为了解决这些风险,T2M/N2L平台内置的ETHSW模块提供了广播/多播风暴抑制,数据帧过滤等硬件功能。

本文主要介绍用于数据帧过滤的“模式匹配 (Pattern Matcher)”功能,并举例T2M/N2L ETHSW模块提供的Receive Pattern Matcher功能,可以用来和PORT接收到的Frame的特定字段对比,在normal forwarding processing的基础上执行一些预定义的特定动作:如Discard, MGMTFWD,Force_Forward,从而在ETHSW的PORT端完成对特定数据帧的识别,减少通过ETHSW Management Port进入GMAC/CPU处理的数据帧数量,从而降低GMAC数据传输负载和CPU处理IP协议栈的软件负载,降低“丢帧”发生的风险;

ETHSW总共12个Pattern Matcher可用。

Pattern Matcher支持固定匹配模式和2字节匹配模式;最多可匹配到从数据帧源MAC地址字段之后最多偏移256字节处。

Pattern Matcher可以与集成的hub模块结合使用。允许实现当一个特定的帧被接收时,触发MAC传输。这允许在实现像Powerlink这样的协议时,节点设备被触发传输,是通过接收来自中央主节点的特定帧来控制的。

Pattern Matcher的4种模式:

MODE 1固定模式

固定比对Frame的SRC MAC地址域后开始的12字节,(第13th-24th字节)因为该范围包含了Type_Length字段(2字节),所以最多比对10 Bytes负载内容;

通过PTRN_CMP寄存器和PTRN_MSK寄存器配置数据帧中参与对比的每个字节的比较值和掩码,运行时根据掩码对Frame中相应字节作AND运算,对比PTRN_CMP中的比较值,相同即为Match,然后预定义的Action操作被触发。

MODE 2-4:flexible模式

Mode 2-4都是2字节比较,比较的具体方法描述如下,比较位置(offset值:0-256)从13 th byte开始计算偏移;

MODE 2:2 byte table look-up:Frame中Offset位置开始的2字节,和最多8个比较值作比较;

MODE 3:2 byte range compare with minimum and maximum range:Frame中Offset位置开始的2字节,判断其是否在预设的最小值(min)和最大值(max)范围内;Compare Match规则为:Min <= 2 byte Value <= Max

MODE 4:2 byte inverted 2-byte inverted range compare by using a minimum and maximum range:Frame中Offset位置开始的2字节,反向比较 ,Compare Match规则为:2byte value <= Min or  2 byte value >= Max;

Mode 2/3/4下比较值和寄存器配置的对应关系:

848b5e4e-3c42-11f0-b715-92fbcf53809c.png

举例:

在我们的PN例程中,为了解决测试和实际应用时,网络中出现ARP风暴,导致DCP连接出现故障的问题,因为ARP.request本身是广播帧,用广播风暴抑制不太合适(可能会把真正需要答复的ARP.request屏蔽掉),所以用Pattern Matcher 提取针对该Station IP地址的ARP.request;

实现该功能使用2个Pattern Matcher(编号0xa和 0xb),工作在Mode 3(2 byte range compare)下,对比ARP.request帧中的Target IP Address 域,每个Pattern Matcher对比2字节IP地址;

UM中MODE 3的意义为:

2-byte range compare by using a minimum and maximum range,at a programmable offset, with port and queue mask for frame triggering and optional Length/Type matching.

从Offset指定的位置,Frame中的2字节,如果这两字节的值落在定义的Min和Max值之间,则认为匹配成功;

Max/Min配置值与寄存器配置对应关系如下:

84a9dd42-3c42-11f0-b715-92fbcf53809c.png

代码如下:

84cc9602-3c42-11f0-b715-92fbcf53809c.png

这段代码可以看到:

action=MGMTFWD | MODE_2BYTE_RANGE| VLAN_SKIP | LEARNING_DIS | SWAP_BYTES |MATCH_LT| SET_PRIO;

其中比较重要的配置有:

MGMTFWD:定义为Compare Match的帧,提取到Management Port(ETHSW PORT 3),不再转发;

MODE_2BYTE_RANGE:定义Pattern Matcher 工作在MODE 3;

MATCH_LT:定义除了比较2 byte数据,还需要同时比较Length_Type域,该示例中为0x0806;

max_min:分别定义IP地址的高低2字节需要匹配的值,按照上面的对照表,写入到PTRN_CMP寄存器中;

offset:定义需要比较的2字节从数据帧MAC地址域后开始的位置;Target IP Address域的高低2字节的offset分别为26和28;

port_mask:表示在哪些PORT口上实施该Pattern Matcher;示例中port_mask = 3,即在3个PORT口上都实施;

函数ethsw_setup_mqprio_pattern_add()配置Pattern Matcher相关寄存器;这里不作详细说明,请参考UM(Section 28.3.15)和Source Code;

以上简单说明了ETHSW提供的Pattern Matcher的基本功能。T2M/N2L平台的ETHSW是功能强大的交换机,实现了较多Lay2级别的交换功能,后续文档会继续介绍如TDMA/HUB等亮点功能,敬请期待。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    147

    文章

    19285

    浏览量

    405439
  • 瑞萨
    +关注

    关注

    38

    文章

    22549

    浏览量

    91777
  • Mac
    Mac
    +关注

    关注

    0

    文章

    1133

    浏览量

    55738
  • 数据帧
    +关注

    关注

    0

    文章

    49

    浏览量

    7156
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    RA2L1入门学习】简介、环境搭建、工程测试

    RA2L1入门学习】简介、环境搭建、工程测试 本文介绍了 RA-Eco-RA2L1-4
    发表于 05-05 21:42

    RA2L1入门学习】+ RA-Eco-RA2L1-V2.0开发板概览、环境搭建与TTL串口烧录点灯

    入门指南.pdf | RA2L1数据手册.pdf | RA2L1硬件手册.pdf | RA2L1_E1_LQFP48 TOUCH.pdf | +---PPT | 使用J-Link烧写程序到
    发表于 05-01 22:37

    RA2L1入门学习】串口打印 Hello World

    上一篇完成了开发板点灯,说明:✅ 工程创建正常 ✅ GPIO 配置正常 ✅ 程序下载正常接下来继续学习最常用的功能之一:串口打印 本文记录如何在 RA
    发表于 04-28 17:23

    RA2L1入门学习】开箱 + 点亮LED灯

    宽电压工作范围** ,集成了电容触摸、高精度模拟和多种定时器资源。 收到开发板后,包装比较简洁,主要包括: RA2L1 开发板 二、开发环境准备 官方推荐使用: 1. 安装 e² studio
    发表于 04-28 15:24

    RA MCU众测宝典 | 串口之【RA-Eco-RA2L1】RTC日历及串口设置时间

    “RAMCU众测宝典”串口专题添硬核实操!开启宝典前言RAMCU众测宝典|串口之【RA2L1】开发板开箱及串口输出实现RAMCU众测宝典|PWM之【RA2L1】呼吸灯ADC/DAC
    的头像 发表于 04-21 18:07 7277次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b>RA MCU众测宝典 | 串口之【RA-Eco-RA<b class='flag-5'>2L</b>1】RTC日历及串口设置时间

    RA MCU众测宝典 | 环境搭建之【RA-Eco-RA4M2】搭建Keil开发环境

    “RAMCU众测宝典”环境搭建专题再添硬核实操!开启宝典概览电子RA4M232位微控制器(MCU)系列使用支持TrustZone的高
    的头像 发表于 04-03 17:59 7350次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b>RA MCU众测宝典 | 环境搭建之【RA-Eco-RA4<b class='flag-5'>M2</b>】搭建Keil开发环境

    RZ/N2L Group:高性能MPU的技术剖析与应用潜力

    RZ/N2L Group:高性能MPU的技术剖析与应用潜力 在当今电子科技飞速发展的时代,高性能微处理器单元(MPU)对于各种电子设备的性能提升起着至关重要的作用。RZ/N2L Group作为一款
    的头像 发表于 04-01 11:45 285次阅读

    RA2L1微控制器:架构特点及应用分析

    RA2L1微控制器:架构特点及应用分析 在当前电子设备不断追求低功耗与高性能的大趋势下,电子推出的RA
    的头像 发表于 04-01 11:20 271次阅读

    电子RA-Eco-RA4M2搭建Keil开发环境指南

    电子RA4M2 32位微控制器(MCU)系列使用支持TrustZone 的高性能Arm Cortex-M33内核。与片内的 Secure Crypto Engine (SCE)
    的头像 发表于 03-18 08:07 3369次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b>电子RA-Eco-RA4<b class='flag-5'>M2</b>搭建Keil开发环境指南

    电子RZ/T和RZ/N系列微处理器全面支持PROFINET

    应用设计的RZ/T2M MPU,同时适用于面向工业物联网网关应用(如远程IO或工业以太网设备)的RZ/N2L。使用搭载该软件协议栈的产品,可以简化客户设备的认证过程。
    的头像 发表于 01-27 09:44 883次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b>电子RZ/T和RZ/<b class='flag-5'>N</b>系列微处理器全面支持PROFINET

    Renesas RZ/N2L Starter Kit+:功能解析与使用指南

    Renesas RZ/N2L Starter Kit+:功能解析与使用指南 在工业网络领域,Renesas RZ/N2L Starter Kit+ 以其丰富的功能和出色的性能,为电子工
    的头像 发表于 12-29 16:25 1065次阅读

    RZ/N2L MPU:高性能与多功能的完美融合

    RZ/N2L MPU:高性能与多功能的完美融合 在电子工程师的世界里,不断寻找高性能、多功能且稳定可靠的微处理器单元(MPU)是一项持续的追求。今天,我们就来深入探讨一下
    的头像 发表于 12-29 16:15 532次阅读

    探索 RZ/N2L 工业网络 SOM 套件:工业以太网解决方案的理想之选

    探索 RZ/N2L 工业网络 SOM 套件:工业以太网解决方案的理想之选 作为电子工程师,我们一直在寻找高效、可靠且功能强大的解决方案,以满足工业应用中对网络连接和处理能力的严格要求。Renesas
    的头像 发表于 12-29 15:15 663次阅读

    基于64位MPU RZ/G2L进行32位应用软件开发

    本文主要介绍基于64位MPU RZ/G2L进行32位应用软件开发的介绍,用于解决客户32位软件移植相关问题,供客户参考。
    的头像 发表于 06-26 15:48 2346次阅读
    基于<b class='flag-5'>瑞</b><b class='flag-5'>萨</b>64位MPU RZ/G<b class='flag-5'>2L</b>进行32位应用软件开发

    Banana Pi 最新边缘 AI 系统模块 BPI-AI2N 采用电子 RZ/V2N

    的 RZ/V2N 构建:BPI-AI2N。 该公司在介绍其最新成果时表示:“Banana Pi BPI-AI2N 系统级模块 (SoM)
    的头像 发表于 06-25 19:01 2162次阅读
    Banana Pi 最新边缘 AI 系统<b class='flag-5'>模块</b> BPI-AI<b class='flag-5'>2N</b> 采用<b class='flag-5'>瑞</b><b class='flag-5'>萨</b>电子 RZ/V<b class='flag-5'>2N</b>