SciTech-EECS-PHY+FW(Firmware): 物理层+固件 的软体 : PCIe上电:PCIe 的 PHY 的 firmware 加载
PCIe上电:PCIe PHY 的 firmware 加载
- 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加载时序图,

如图所示信号
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 时钟保持稳定


浙公网安备 33010602011771号