root.sr中的Connector_EXU_1的疑问

摘抄了一段root.sr的内容

{
“FormatVersion”: “1.00”,
“DataVersion”: “1.00”,
“Unit”: {
“Type”: “Root”,
“Name”: “RootBoard”
},
“ManagementTopology”: {
“Anchor”: {
“Buses”: [
“I2c_1”,

“I2c_11”,
“Jtag_1”,
“JtagOverLocalBus_1”,
“Hisport_0”,

“Hisport_21”,
“Gpio_31”,
“Gpio_56”,
“Gpio_74”
]
},
“I2c_2”: {
“Connectors”: [
“Connector_EXU_1”
]
},
“Gpio_31”: {
“Chips”: [
“Chip_Gpio_31”
]
},
“Gpio_56”: {
“Chips”: [
“Chip_Gpio_56”
]
},
“Gpio_74”: {
“Chips”: [
“Chip_Gpio_74”
]
}
},
“Objects”: {
“I2c_1”: {
“Id”: 1
},
“I2c_2”: {
“Id”: 2
},
“Connector_EXU_1”: {
“Bom”: “14100513”,
“Slot”: 1,
“Position”: 1,
“Presence”: 1,
“Id”: “”,
“AuxId”: “”,
“Buses”: [
“I2c_1”,

“I2c_11”,
“Jtag_1”,
“JtagOverLocalBus_1”,
“Hisport_0”,

“Hisport_21”
],
“SystemId”: 1,
“ManagerId”: “1”,
“ChassisId”: “1”,
“SilkText”: “J6023”,
“IdentifyMode”: 3,
“Type”: “ExpandBoard”
},

想请教一下前辈,

“I2c_2”: {
“Connectors”: [
“Connector_EXU_1”
]
},

BMC的I2c_2 连接的是EXU的EEPROM还是说连接的是EXU的CPLD? 假如采用下面这种非天池架构的,EXU应该就是主板吧

1.从这个代码看不出连的是eeprom还是cpld,这个得看i2c中chip的配置

  80     "I2c_2": {
  81       "Chips": [
  82         "Eeprom_EXU",
  83         "Chip_IPMB"
  84       ],
  85       "Connectors": [
  86         "Connector_PowerSupply_1",
  87         "Connector_PowerSupply_2"
  88       ] 
  89     }, 

2.对,这种情况主板就是EXU

1 个赞

可以先看一下,下面三个文档,对Connector类是做什么的和硬件板卡自发现有一个概念,Connector只是一个逻辑上的概念,具体还是看其后面加载的是什么

  1. 如果BMC I2C_2连到主板的CPLD上,是不是BMC要通过主板的CPLD进行获取主板上所有的硬件信息(风扇,温度,电压),这时的CSR文件在BMC固件中(用于硬件自发现加载)。
  2. 如果BMC I2C_2连到主板的eeprom, 是不是这个eeprom要烧录进去csr文件,这个csr文件包含了主板上硬件架构的描述内容(硬件自发现加载)

非天池架构不支持这种用法

答案内容由AI生成,仅供参考:
根据您提供的 root.sr 配置片段以及知识库中的信息,以下是针对您问题的详细解答。

1. BMC的 I2c_2 连接的是EXU的EEPROM还是CPLD?

结论:从 root.sr 的配置无法直接判断,需要查看 I2c_2 总线下的 Chips 配置才能确定。

  • 原因分析:在 root.sr 文件的 ManagementTopology 部分,I2c_2 的配置仅指定了它连接到了 Connector_EXU_1。但这仅代表总线连接到了该连接器,并不意味着直接连接到了连接器上的某一个具体芯片(如EEPROM或CPLD)。
  • 如何确定:根据社区开发者 livein2ndworld 的解答,要判断 I2c_2 连接的是哪个芯片,关键在于查看 I2c_2Chips 属性列表。例如,一个更完整的配置可能如下所示:
    "I2c_2": {
      "Chips": [
        "Eeprom_EXU",   // 这表明I2c_2直接连接到了Eeprom_EXU芯片
        "Chip_IPMB"
      ],
      "Connectors": [
        "Connector_EXU_1",
        "Connector_PowerSupply_1",
        "Connector_PowerSupply_2"
      ]
    }
    
  • 知识库佐证:知识库中的关系数据也证实了这一逻辑。Eeprom_EXU 确实被定义为连接在 I2c_2 总线上,用于与BMC进行数据交换。
    • Eeprom_EXU 的描述明确指出:“Eeprom_EXU is connected to the I2c_2 bus for data exchange with the BMC.”
    • 关系数据也指出:“Eeprom_EXU is connected to the I2c_2 bus…”
    • 因此,在典型的Tianchi架构中,I2c_2 确实连接到了 Eeprom_EXU

2. 非天池架构下,EXU是否就是主板?

结论:是的,在非天池的模块化架构中,EXU(Expansion Unit,扩展单元)可视为整个主板。

  • 解释EXU 在Tianchi架构中是一个扩展板卡,但在其他模块化项目中,它被理解为一个更顶层的硬件容器。
  • 知识库定义EXU 的描述中提到:“EXU refers to an expansion board in an integrated system, which can be considered as the entire motherboard in modular projects.
  • 社区确认:社区用户 livein2ndworld 也对相关提问给出了肯定答复:“对,这种情况主板就是EXU”。

总结

  1. I2c_2的连接目标:仅从您提供的 root.sr 片段无法判断。需要查看 I2c_2 配置中的 Chips 列表。根据典型配置,它很可能连接到了 Eeprom_EXU,而非CPLD。
  2. EXU的角色:在非天池的模块化架构中,EXU 代表的就是主板
点击此处查看详细分析解答

根据您提供的 root.sr 配置片段以及知识库中的信息,以下是针对您问题的详细解答。

1. BMC的 I2c_2 连接的是EXU的EEPROM还是CPLD?

结论:从 root.sr 的配置无法直接判断,需要查看 I2c_2 总线下的 Chips 配置才能确定。

  • 原因分析:在 root.sr 文件的 ManagementTopology 部分,I2c_2 的配置仅指定了它连接到了 Connector_EXU_1。但这仅代表总线连接到了该连接器,并不意味着直接连接到了连接器上的某一个具体芯片(如EEPROM或CPLD)。
  • 如何确定:根据社区开发者 livein2ndworld 的解答,要判断 I2c_2 连接的是哪个芯片,关键在于查看 I2c_2Chips 属性列表。例如,一个更完整的配置可能如下所示:
    "I2c_2": {
      "Chips": [
        "Eeprom_EXU",   // 这表明I2c_2直接连接到了Eeprom_EXU芯片
        "Chip_IPMB"
      ],
      "Connectors": [
        "Connector_EXU_1",
        "Connector_PowerSupply_1",
        "Connector_PowerSupply_2"
      ]
    }
    
  • 知识库佐证:知识库中的关系数据也证实了这一逻辑。Eeprom_EXU 确实被定义为连接在 I2c_2 总线上,用于与BMC进行数据交换。
    • Eeprom_EXU 的描述明确指出:“Eeprom_EXU is connected to the I2c_2 bus for data exchange with the BMC.”
    • 关系数据也指出:“Eeprom_EXU is connected to the I2c_2 bus…”
    • 因此,在典型的Tianchi架构中,I2c_2 确实连接到了 Eeprom_EXU

2. 非天池架构下,EXU是否就是主板?

结论:是的,在非天池的模块化架构中,EXU(Expansion Unit,扩展单元)可视为整个主板。

  • 解释EXU 在Tianchi架构中是一个扩展板卡,但在其他模块化项目中,它被理解为一个更顶层的硬件容器。
  • 知识库定义EXU 的描述中提到:“EXU refers to an expansion board in an integrated system, which can be considered as the entire motherboard in modular projects.
  • 社区确认:社区用户 livein2ndworld 也对相关提问给出了肯定答复:“对,这种情况主板就是EXU”。

总结

  1. I2c_2的连接目标:仅从您提供的 root.sr 片段无法判断。需要查看 I2c_2 配置中的 Chips 列表。根据典型配置,它很可能连接到了 Eeprom_EXU,而非CPLD。
  2. EXU的角色:在非天池的模块化架构中,EXU 代表的就是主板
1 个赞

这里的I2c_2是访问的通道,具体通信还需要地址,地址是配在下挂的Chips中的。当前天池架构下 BMC和EXU的CPLD是通过SMC协议交互的,Smc_ExpBoardSMC对象可以看到Address配置的是96,所以与CPLD交互就是通过I2c_2去访问地址是96的寄存器;同理Eeprom对象可以看到Address配置的是174,所以读Eeprom就是通过I2c_2去访问地址是174的寄存器。具体的拓扑关系在一键收集里也会体现,在appDump/hwproxy/topology.txt里。

1 个赞

1.对
2.可以那么用,不过那种用法应该只能在天池架构上实施