• 嵌入式Linux之Switch——88E6321/88E6320


    物理Switch 数据流:

      该设备接受以太网帧,或者丢弃它们,或者从Switch的端口中的一个或多个端口发送它们。

      ...

    物理接口:

      每个端口包含某种物理接口,以接收和发送端口到MAC的帧。

      一些端口支持许多不同的物理接口选项,而其他端口只支持一个。

      如果端口支持许多接口选项,则一次只能使用一个选项。

      每个端口支持的物理接口选项覆盖在每个部分的相应数据表的应用示例部分中。

      设备特性参照寄存器的控制特性。

      Switch设备中的寄存器被组织成称为端口的三组,全局1、全局2和全局3,另外一组用于访问PHY们,称为PHY。

      这些组支持32个16位寄存器,每个端口有属于自己的32个端口寄存器。

      一个组中的32个特定的寄存器可以用“偏移”来表示。

      举例:

        端口控制寄存器被引用为端口偏移0x4,它出现在寄存器地址0x4的端口设备地址空间中。

      

    Switch寄存器:

      通过MDIO_CPU与MDC_CPU访问寄存器,PHY设备支持IEEE 串口管理接口(SMI)或远程管理的以太网帧。

      设备支持2种SMI地址使用模型。

      1.使用32个可能的设备地址之一。(多片模式)

      2.使用所有32个可能的设备地址。(单片模式)

      使用的设备地址和模式为在复位后的ADDR[4:0]配置引脚。

      多片地址模式:

        当使用SMI接口的多片地址模式时,设备回应32个可能SMI设备地址的1个,且可以与多个设备共享SMI接口。使用的SMI地址由ADDR[4:0]配置脚决定。

        这种模式下,只有两种设备的寄存器是直接可访问的,SMI命令寄存器和SMI数据寄存器。

        这两个寄存器被用来间接地访问所有其他设备寄存器(以及任何可能附着在它上面的任何一个寄存器)

        通过设置SMI命令寄存器的DevAddr和RegAddr位来指向设备寄存器访问,从而实现对其他设备寄存器的间接访问。

        使用在单片寻址模式下为设备定义的DevAddr和RegAddr值。

        当ADDR 4:0配置引脚在RESETn的上升边缘具有非零值时,就启用了多芯片寻址模式。

        ADDR 4:0配置引脚也定义了该设备将响应的单个SMI地址。

        为了避免冲突,这要求在同一个SMI接口上的所有设备都使用唯一的ADDR 4:0值。

        在这种模式下,不支持0x00的SMI地址,因为ADDR 4:0引脚将这些设备放置到单片寻址模式中。

      自动加载EEPROM中配置:

        设备支持一个可选的外部串行EEPROM设备,用于编程内部寄存器。

        在复位之后,EEPROM数据将被一次性读取。

        2线的外部EEPROM设备被视为在16数据总线,总是同时读取一个奇数地址(作为上8位)和一个偶数地址(作为下8位)。

        无论使用何种设备,EEPROM设备都以相同的方式读取和处理:

        1。从EEPROM地址0x00开始

        2。在当前地址的16位数据中读取,这称为命令。

        3。如果所有的命令都是读取,则终止串行EEPROM的读取过程,跳到8。

        4、将地址增加1(到下一个地址)。如果命令不需要来自EEPROM的任何数据,则处理命令并转到步骤2。

        5、从下一地址读取16位数据,这称为ReGeDATA,并将地址增加1。

        6、将ReGeDATA写入先前命令所定义的位置或位置。

        7,转到2。

        8。在全局状态下设置EEInt位到一个(全局0x00)生成中断(如果启用的话)。

        9。完成。

        16位命令确定设备内的哪些寄存器或寄存器如下更新:

        10、位10:5(或9:5),设备向量,决定写入哪个设备地址或地址。设备向量的每个比特位决定哪一个设备地址被写入。

          位5控制端口0的写入(PHY地址0x00或Switch地址0x08)。

          位6控制端口1的写入(PHY地址0x01或Switch地址0x09)。

          位7控制Switch端口2

          位6的G位决定Switch全局寄存器的设置。

            当G=1时,设备地址0x0f的全局空间被写入。

            当G=0时,设备地址0x0e的全局2空间被写入。

          需要注意:确保预留寄存器没有写入。

        11.位4:0,寄存器地址,决定写入哪个SMI寄存器地址。

        12.2个特殊命令:暂停(结束EEPROM处理) 和 释放内部复位。

          释放内部复位用于允许包开始流动。(如果端口处于转发状态) 并且允许EEPROM加载ATU或VTU。

          因为这些部分在写之前需要内部释放复位。

        EEPROM命令的格式支持用一个命令或RegData对将相同的RegData写入所有Switch的MAC。

        命令/ReGeDATA列表可以短或长。

        可以按照使用不同数量的命令/ ReGATATE对,使用适合于大小的EEPROM。

        (24C支持31个命令/RegData对,24c02支持63个命令对,24C04支持127个命令对)

    未完待续....

      

      

  • 相关阅读:
    显示进度条
    LEAVE LIST-PROCESSING …
    博主心声
    sap设置权限
    快捷键大全
    VS快捷键
    vs中图片资源的横竖屏的影响
    error C4430: 缺少类型说明符
    cocos2dx3.3 使用cocos studio2.0 导出的.csb文件
    让cocos2d-x 3.0读取cocostudio中的csb文件
  • 原文地址:https://www.cnblogs.com/pokerface/p/9021955.html
Copyright © 2020-2023  润新知