SciTech-EECS-PHY+FW(Firmware): 物理层+固件 的软体 : PCIe上电:PCIe 的 PHY 的 firmware 加载

PCIe上电:PCIe PHY 的 firmware 加载

  1. PHY Firmware是什么?
    PHY(Physical Layer)Firmware 是指:
    用于控制和管理 PHY(物理层)功能Firmware
  • 复杂的电子设备、模块(板卡), 都有超大规模的电路,如显卡、GPU、NPU、超算等,
    为使这些复杂电子电路设备正常工作,就要层级化的 设计软件系统。
  • PHY有很多Config(配置寄存器)和 Registers(状态寄存器),要有专用Firmware系统管理。
    BIOS调用每个设备的POST自检和CONFIG,就会调用对应复杂设备的firmware,配置设备的Registers,
    决定了在特定的时刻,给控制类寄存器写入合适的数值以完成PHY电路管理功能
  • 复杂设备的PHY常见设计:
    • Firmware 容量和存储规划(PHY 的):
      firmware存储ROM(升级要换ROM芯片)Falsh(可多次烧录不需要换芯片).
      PHY firmware 存储容量有足够富余,先进PHY都要 firmware 存储为128KB以上,

    • Interfere 和 Protocol 规划(PHY 的):
      PHY设计要预留一组Interfere(pins)Protocol (如UART、I2C、SPI等)以更新FW.。

    • Firmware Loading:
      在PHY上电后, 通过接口PHY ROM的firmware 写入 PHY RAM过程
      1000069728

    • Firmware Runtime:
      Firmware 读取 Registers和Configs 完成 PHY(物理层)数据流的处理
      注意: 此用"数据流"代表Firmware Runtime 会通过 PHY Interfere 传送双向数据流:
      在 Loading成功后,在 Shutdown之前,Firmware将会持续运行. 处理Interfere传入数据,并传出return数据。

  • 举例,以 PCIe 的 PHY Firmware完成的工作包容如下内容:
    • PCIe速率切换( gen1 -> gen3 等)
    • 编解码方式切换( 8b10b 切换到 128b130b)
    • 能源效率切换(PowerSaving Mode 切换到 Performance Mode)
    • 判断CRD 是否lock

PHY Firmware Loading 与电路的 Sequencing(时序控制)

Firmware Loading需要根据PHY的要求进行设计,
Firmware Loading常要求 有关"复位" 处于"释放"状态,并且工作时钟保持稳定后才能开始以保证数据有效写入。


下图为Firmware Loading加载时序图,
1000069730


如图所示信号
HSS_PMLD_WR_I 表示firmware写有效信号,1表示存在数据写入,
HSS_PMLD_DATA_I[7:0]表示写数据,每个时钟周期写入1Byte的数据。
Firmware Loading 的写入需要在以下前提条件:

  • HSS_POR_N_I 复位信号释放
  • HSS_CPU_RESET_I 复位信号处于复位状态,
  • HSS_CPU_CLK_I 时钟保持稳定
posted @ 2025-08-05 19:27  abaelhe  阅读(30)  评论(0)    收藏  举报