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

Xilinx FPGA上电和配置

Xilinx FPGA上电和配置

  • ZYNQ系列上电和配置
    • 引脚说明
    • 芯片启动流程(Power-On Sequence)
      • 阶段1:电源上电与复位
      • 阶段2:PS(处理器系统)启动
      • 阶段3:PL(可编程逻辑)配置
      • 阶段4:系统运行
      • 为什么INIT_B和DONE拉高顺序很重要

ZYNQ系列上电和配置

引脚说明

1、INIT_B(初始化完成)

  • 开漏输出引脚,外部通常通过电阻上拉至BANK0电压3.3V
  • 低电平表示器件正在进行初始化
  • 高电平表示初始化完成,可以开始配置

2、PROGRAM_B(配置启动)

  • 输入引脚(有内部上拉),外部通常通过电阻上拉至BANK0电压3.3V
  • 低电平有效,强制器件重新配置
  • 上电时保持低电平会延迟配置过程

3、CFGBVS(配置电压选择)

  • 输入引脚,外部不接电阻直接接3.3V或2.5V
  • 决定配置接口的电压标准(3.3V或2.5V)
  • 必须根据VCCO_MIO0电压正确设置

4、DONE(配置完成)

  • 开漏双向引脚,外部通过470欧电阻上拉至BANK0电压3.3V
  • 配置完成后变高电平
  • 也用于多器件配置的菊花链控制

5、PS_POR_B(处理系统上电复位)

  • 输入引脚
  • 处理系统(PS)的全局复位信号
  • 低电平有效,复位整个PS

6、PS_SRST_B(处理系统软复位)

  • 输入引脚
  • PS的软复位信号
  • 仅复位PS部分,不影响PL配置

芯片启动流程(Power-On Sequence)

阶段1:电源上电与复位

1、电源稳定:

  • 所有电源轨(VCCPINT、VCCPAUX、VCC_PSDDR等)按Zynq时序要求上电。
  • 外部复位芯片保持 PS_POR_B = 0 和 PS_SRST_B = 0。

2、复位释放:

  • 电源稳定后,复位芯片拉高 PS_POR_B → 触发PS(处理器系统)启动。
  • PS_SRST_B 随后释放(通常与PS_POR_B同步或稍晚)。

这时候PROGRAM_B(输入)一直高;INIT_B(开漏输出)外部拉高;DONE(开漏输出)外部拉高。

阶段2:PS(处理器系统)启动

3、BootROM执行:

  • PS读取 MIO[5:0] 引脚状态决定启动模式(QSPI, SD, JTAG等)。
  • 初始化DDR、时钟、PLL等关键外设。

4、FSBL加载:

  • 从选定设备(如QSPI Flash)加载FSBL(First Stage Bootloader)。
  • FSBL初始化PS端外设和PL配置逻辑。

这时候PROGRAM_B(输入)一直高;INIT_B(开漏输出)外部拉高;DONE(开漏输出)外部拉高。

阶段3:PL(可编程逻辑)配置

5、上电/复位后(配置开始前)

  • INIT_B:为低电平。这表示PL配置逻辑正在进行清除内部配置内存和初始化,尚未准备好接收配置数据。
  • DONE:为低电平。这表示PL配置远未完成。

上电后,PL部分开始进行配置准备。此时,INIT_B被PL内部拉低(但因为是开漏,所以需要外部上拉,实际上外部上拉会试图保持高电平,但PL在配置开始前会将其拉低),表示PL正在初始化,尚未准备好接收配置数据。

6、PL初始化完成,准备就绪

  • INIT_B:从低电平变为高电平。这是第一个关键信号,表明PL内部的配置引擎已经准备就绪,可以开始接收比特流数据了。
  • DONE:保持低电平。

当PL初始化完成(例如,清理配置内存等)后,PL会释放INIT_B,由于外部上拉,INIT_B变为高电平。这表示PL已经准备好接收配置数据。

7、比特流加载与校验,配置数据开始通过PCAP(或其他接口)加载到PL中。

  • INIT_B:保持高电平。在整个比特流通过PCAP、SPI等接口传输到PL的过程中,INIT_B 会一直保持高电平,除非发生严重错误(如CRC校验失败)才会被拉低。
  • DONE:保持低电平。

8、配置成功完成

  • INIT_B:保持高电平。
  • DONE:从低电平变为高电平。这是第二个关键信号,表示比特流已全部加载完毕,并且CRC校验成功,PL的启动序列(如设置IO、释放内部复位)也已经完成。此时,PL进入用户模式,开始正常工作。

因此,在正常的配置流程中:首先,INIT_B从低变高(表示PL准备好接收配置数据)。然后,在配置数据加载并校验通过后,DONE从低变高。所以,INIT_B先拉高,然后DONE再拉高。INIT_B 的上升沿标志着“可以开始配置”,DONE 的上升沿标志着“配置已经结束”。

但是注意:如果配置过程中出现错误,INIT_B会被拉低(表示配置错误),然后PL会尝试重新配置(如果设置了重试机制)或者需要外部干预(例如重新触发PROGRAM_B)。

总结顺序为:

  • 上电后,INIT_B为低,DONE为低。
  • PL初始化完成,INIT_B被释放,由外部上拉拉高。
  • 配置数据加载开始。
  • 配置完成且校验通过,DONE被拉高。

在这里插入图片描述

阶段4:系统运行

9、用户代码执行:

  • PS启动操作系统或裸机程序。
  • PL进入用户定义的功能状态。

为什么INIT_B和DONE拉高顺序很重要

故障诊断:这是调试PL配置失败的最重要依据。

  • INIT_B 永远不拉高:说明PL基本初始化失败。可能原因:电源不正常、PROGRAM_B 被意外拉低、时钟问题、硬件故障。
  • INIT_B 拉高后,DONE 永远不拉高:说明比特流加载过程出错。可能原因:比特流数据损坏、配置时钟不稳定、Flash读取错误、CRC校验失败。

系统设计:某些系统逻辑可能需要监控这些信号来协调PS和PL的启动顺序。例如,PS端的软件可以轮询或中断监听 DONE 引脚,确认PL已就绪后,再向PL发送指令。

http://www.dtcms.com/a/424687.html

相关文章:

  • 网站制作百度cc在线代理
  • 深圳建设网站制作网站修改需要什么
  • 包头天亿网站建设公司北京专业做网站推广
  • Linux 缓冲区与glibc库
  • 网站建设公司怎么挣钱门户模板
  • YOLOv8 —— Anchor-Free 设计
  • 网站建设套餐128000网站设计方案怎么写
  • 唐山专业网站建设公司山西省建设局官方网站
  • 门户网站微信服务号建设wordpress合理使用cookie
  • 怎么建设大型商务网站网站seo博客
  • 网站曝光率申请网站空间是申请域名吗
  • 河南那家公司做家具行业网站好湘潭免费网站建设
  • 数据中心的技术困境与需求侧的演进压力
  • 建立网站需要多少钱经营y湖南岚鸿非常好了解网络营销相应的网站
  • UIUC 提出视频虚拟试穿生成方法 DressDance,可直接生成高质量的5 秒 24 帧 1152×720 分辨率的虚拟试穿视频。
  • 模仿muduo库——Eventloop
  • 住房和城市建设部网站网站界面设计规则
  • 搜狗网站推广重庆网站推广计划
  • 改进的自制 VNA
  • android 自定义Dialog多种方式
  • 微网站免费注册电子商务建设与网站规划
  • 快递网站怎么做的加盟招商网站建设方案
  • Spring框架面试问题及详细回答
  • 前端如何做响应式网站wordpress数据清理插件
  • 免费网站服务器安全中国查公司的网站
  • 电商带货视频:商用音乐素材网站选择与参考
  • 哈尔滨网站建设方案外包免费的编程软件下载
  • 九、kubernetes 1.29 之 service-Endpoint
  • centos 如何建立网站网站建设公司线下推广
  • JavaWeb--day13--SpringBoot原理