当前位置: 首页 > news >正文

【PCIe 总线及设备入门学习专栏 5.3.4 -- PCIe PHY Firmware 固件加载流程】

文章目录

    • Overview
      • PCIe PHY Firmware
      • Firmware 加载流程
      • PERSN# 与 Firmware 加载
      • 代码流程示例

Overview

主流的 PCIe PHY内部均实现了一个简单的 CPU 用于执行 Firmware 固件进程,用于完成 PCIe 建链过程,例如速率切换,完成均衡算法等等。在 PCIe PHY 开始建链之前,需要将Firmware写入到PHY中,本质是写入到存储固件代码的存储模块中。

PCIe PHY Firmware

PCIe PHY(Physical Layer)firmware 是指用于控制和管理PCI Express(PCIe)物理层功能的固件。PHY内部有很多配置和状态寄存器,firmware固件通过读取状态寄存器和读写配置寄存器完成物理层数据流的处理。firmware完成的工作包容如下内容:

  • PCIe速率切换(gen1–>gen3等等)
  • 编解码方式切换(8b10b切换到128b130b)
  • 判断 CRD 是否lock

简单来说,firmware就是一套配置文件,决定了在特定的时刻给控制类寄存器写入合适的数值以完成物理层的电路功能。

常见设计中,firmware的数据容量较大(有些PHY需要的firmware容量为96KB),因此 firmware存储在rom中,PCIe PHY 会预留一组接口用于写入firmware,在PHY上电后通过接口将rom中的的firmware写入PHY内部的ram中,此过程称之为firmwa

http://www.xdnf.cn/news/1201411.html

相关文章:

  • Android启动时间优化大全
  • 通信名词解释:I2C、USART、SPI、RS232、RS485、CAN、TCP/IP、SOCKET、modbus等
  • Window 部署 coze-stdio(coze 开发平台)
  • vue3.6更新哪些内容
  • 电子电路设计学习
  • MySQL - 索引(B+树)
  • Python Pandas.cut函数解析与实战教程
  • 力扣热题100----------41.缺少的第一个正数
  • C++算法竞赛篇(五)循环嵌套题型讲解
  • JavaScript手录07-数组
  • JavaScript核心概念全解析
  • 创建属于自己的github Page主页
  • 【Python系列】Flask 应用中的主动垃圾回收
  • 安装redis
  • 生成式召回-TIGER范式
  • Vim 编辑器工作模式及操作指南
  • 抗辐照芯片在低轨卫星星座CAN总线通讯及供电系统的应用探讨
  • 比特币运行机制全解析:区块链、共识算法与数字黄金的未来挑战
  • rapidocr v3.3.0发布了
  • OpenLayers 综合案例-轨迹回放
  • Torchv Unstrustured 文档解析库
  • C语言:函数
  • C/C++核心知识点详解
  • Qt C++ GUI 函数参数速查手册:基础与布局
  • RK3568 Linux驱动学习——Linux驱动开发准备工作
  • 【科研绘图系列】R语言绘制边际云雨图散点图
  • 基于大模型的预训练、量化、微调等完整流程解析
  • rust-模块树中引用项的路径
  • 1439-素数环2
  • 扩展组件(uni-ui)之uni-group